web_api.php 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415
  1. <?php
  2. /**
  3. * 前台模块编辑(首页)
  4. *
  5. *
  6. *
  7. ***/
  8. defined('InShopNC') or exit('Access Invalid!');
  9. class web_apiControl extends SystemControl {
  10. public function __construct() {
  11. parent::__construct();
  12. if (strtoupper(CHARSET) == 'GBK') {
  13. $_GET = Language::getGBK($_GET);
  14. $_POST = Language::getGBK($_POST);
  15. }
  16. Language::read('web_config');
  17. }
  18. /**
  19. * 头部切换图设置
  20. */
  21. public function focus_editOp() {
  22. $model_web_config = Model('web_config');
  23. $web_id = '101';
  24. $code_list = $model_web_config->getCodeList(array('web_id'=> $web_id));
  25. if(is_array($code_list) && !empty($code_list)) {
  26. foreach ($code_list as $key => $val) {//将变量输出到页面
  27. $var_name = $val['var_name'];
  28. $code_info = $val['code_info'];
  29. $code_type = $val['code_type'];
  30. $val['code_info'] = $model_web_config->get_array($code_info,$code_type);
  31. Tpl::output('code_'.$var_name,$val);
  32. }
  33. }
  34. $screen_adv_list = $model_web_config->getAdvList("screen");//焦点大图广告数据
  35. Tpl::output('screen_adv_list',$screen_adv_list);
  36. $focus_adv_list = $model_web_config->getAdvList("focus");//三张联动区广告数据
  37. Tpl::output('focus_adv_list',$focus_adv_list);
  38. Tpl::showpage('web_focus.edit');
  39. }
  40. /**
  41. * 更新html内容
  42. */
  43. public function html_updateOp() {
  44. $model_web_config = Model('web_config');
  45. $web_id = intval($_GET["web_id"]);
  46. $web_list = $model_web_config->getWebList(array('web_id'=> $web_id));
  47. $web_array = $web_list[0];
  48. if(!empty($web_array) && is_array($web_array)) {
  49. $model_web_config->updateWebHtml($web_id);
  50. showMessage(Language::get('nc_common_op_succ'));
  51. } else {
  52. showMessage(Language::get('nc_common_op_fail'));
  53. }
  54. }
  55. /**
  56. * 头部促销区
  57. */
  58. public function sale_editOp()
  59. {
  60. $model_web_config = Model('web_config');
  61. $use = $_GET['use'];
  62. Tpl::output('use', $use);
  63. if ($use === 'web') {
  64. $web_id = '121';
  65. } else {
  66. $web_id = '122';
  67. }
  68. $code_list = $model_web_config->getCodeList(array('web_id'=> $web_id));
  69. if(is_array($code_list) && !empty($code_list)) {
  70. $model_class = Model('goods_class');
  71. $goods_class = $model_class->getTreeClassList(1);//第一级商品分类
  72. Tpl::output('goods_class',$goods_class);
  73. foreach ($code_list as $key => $val) {//将变量输出到页面
  74. $var_name = $val['var_name'];
  75. $code_info = $val['code_info'];
  76. $code_type = $val['code_type'];
  77. $val['code_info'] = $model_web_config->get_array($code_info,$code_type);
  78. Tpl::output('code_'.$var_name,$val);
  79. }
  80. }
  81. Tpl::showpage('web_sale.edit');
  82. }
  83. /**
  84. * 商品分类
  85. */
  86. public function category_listOp() {
  87. $model_class = Model('goods_class');
  88. $gc_parent_id = intval($_GET['id']);
  89. $goods_class = $model_class->getGoodsClassListByParentId($gc_parent_id);
  90. Tpl::output('goods_class',$goods_class);
  91. Tpl::showpage('web_goods_class','null_layout');
  92. }
  93. /**
  94. * 商品推荐
  95. */
  96. public function recommend_listOp() {
  97. $model_web_config = Model('web_config');
  98. $condition = array();
  99. $gc_id = intval($_GET['id']);
  100. if ($gc_id > 0) {
  101. $condition['gc_id'] = $gc_id;
  102. }
  103. $goods_name = trim($_GET['goods_name']);
  104. if (!empty($goods_name)) {
  105. $condition['goods_name'] = array('like','%'.$goods_name.'%');
  106. }
  107. $goods_list = $model_web_config->getGoodsList($condition,'goods_id desc',6);
  108. Tpl::output('show_page',$model_web_config->showpage(2));
  109. Tpl::output('goods_list',$goods_list);
  110. Tpl::showpage('web_goods.list','null_layout');
  111. }
  112. /**
  113. * 商品排序查询
  114. */
  115. public function goods_listOp() {
  116. $model_web_config = Model('web_config');
  117. $condition = array();
  118. $order = 'goods_salenum desc,goods_id desc';//销售数量
  119. $goods_order = trim($_GET['goods_order']);
  120. if (!empty($goods_order)) {
  121. $order = $goods_order.' desc,goods_id desc';
  122. }
  123. $gc_id = intval($_GET['id']);
  124. if ($gc_id > 0) {
  125. $condition['gc_id'] = $gc_id;
  126. }
  127. $goods_name = trim($_GET['goods_name']);
  128. if (!empty($goods_name)) {
  129. $condition['goods_name'] = array('like','%'.$goods_name.'%');
  130. }
  131. $goods_list = $model_web_config->getGoodsList($condition,$order,6);
  132. Tpl::output('show_page',$model_web_config->showpage(2));
  133. Tpl::output('goods_list',$goods_list);
  134. Tpl::showpage('web_goods_order','null_layout');
  135. }
  136. /**
  137. * 品牌
  138. */
  139. public function brand_listOp() {
  140. $model_brand = Model('brand');
  141. /**
  142. * 检索条件
  143. */
  144. $condition = array();
  145. if (!empty($_GET['brand_name'])) {
  146. $condition['brand_name'] = array('like', '%' . trim($_GET['brand_name']) . '%');
  147. }
  148. $brand_list = $model_brand->getBrandPassedList($condition, '*', 6);
  149. Tpl::output('show_page',$model_brand->showpage());
  150. Tpl::output('brand_list',$brand_list);
  151. Tpl::showpage('web_brand.list','null_layout');
  152. }
  153. /**
  154. * 保存设置
  155. */
  156. public function code_updateOp() {
  157. $code_id = intval($_POST['code_id']);
  158. $web_id = intval($_POST['web_id']);
  159. $model_web_config = Model('web_config');
  160. $code = $model_web_config->getCodeRow($code_id,$web_id);
  161. if (!empty($code)) {
  162. $code_type = $code['code_type'];
  163. $var_name = $code['var_name'];
  164. $code_info = $_POST[$var_name];
  165. $code_info = $model_web_config->get_str($code_info,$code_type);
  166. $state = $model_web_config->updateCode(array('code_id'=> $code_id),array('code_info'=> $code_info));
  167. }
  168. if($state) {
  169. echo '1';exit;
  170. } else {
  171. echo '0';exit;
  172. }
  173. }
  174. /**
  175. * 保存图片
  176. */
  177. public function upload_picOp() {
  178. $code_id = intval($_POST['code_id']);
  179. $web_id = intval($_POST['web_id']);
  180. $model_web_config = Model('web_config');
  181. $code = $model_web_config->getCodeRow($code_id,$web_id);
  182. if (!empty($code)) {
  183. $code_type = $code['code_type'];
  184. $var_name = $code['var_name'];
  185. $code_info = $_POST[$var_name];
  186. $file_name = 'web-'.$web_id.'-'.$code_id;
  187. $pic_name = $this->_upload_pic($file_name);//上传图片
  188. if (!empty($pic_name)) {
  189. $code_info['pic'] = $pic_name;
  190. }
  191. Tpl::output('var_name',$var_name);
  192. Tpl::output('pic',$code_info['pic']);
  193. Tpl::output('type',$code_info['type']);
  194. Tpl::output('ap_id',$code_info['ap_id']);
  195. $code_info = $model_web_config->get_str($code_info,$code_type);
  196. $state = $model_web_config->updateCode(array('code_id'=> $code_id),array('code_info'=> $code_info));
  197. Tpl::showpage('web_upload_pic','null_layout');
  198. }
  199. }
  200. /**
  201. * 中部推荐图片
  202. */
  203. public function recommend_picOp() {
  204. $code_id = intval($_POST['code_id']);
  205. $web_id = intval($_POST['web_id']);
  206. $model_web_config = Model('web_config');
  207. $code = $model_web_config->getCodeRow($code_id,$web_id);
  208. $key_id = intval($_POST['key_id']);
  209. $pic_id = intval($_POST['pic_id']);
  210. if (!empty($code) && $key_id > 0 && $pic_id > 1) {
  211. $code_info = $code['code_info'];
  212. $code_type = $code['code_type'];
  213. $code_info = $model_web_config->get_array($code_info,$code_type);//原数组
  214. $var_name = "pic_list";
  215. $pic_info = $_POST[$var_name];
  216. $pic_info['pic_id'] = $pic_id;
  217. if (!empty($code_info[$key_id]['pic_list'][$pic_id]['pic_img'])) {//原图片
  218. $pic_info['pic_img'] = $code_info[$key_id]['pic_list'][$pic_id]['pic_img'];
  219. }
  220. $file_name = 'web-'.$web_id.'-'.$code_id.'-'.$key_id.'-'.$pic_id;
  221. $pic_name = $this->_upload_pic($file_name);//上传图片
  222. if (!empty($pic_name)) {
  223. $pic_info['pic_img'] = $pic_name;
  224. }
  225. $recommend_list = array();
  226. $recommend_list = $_POST['recommend_list'];
  227. $recommend_list['pic_list'] = $code_info[$key_id]['pic_list'];
  228. $code_info[$key_id] = $recommend_list;
  229. $code_info[$key_id]['pic_list'][$pic_id] = $pic_info;
  230. Tpl::output('pic',$pic_info);
  231. $code_info = $model_web_config->get_str($code_info,$code_type);
  232. $state = $model_web_config->updateCode(array('code_id'=> $code_id),array('code_info'=> $code_info));
  233. Tpl::showpage('web_recommend_pic','null_layout');
  234. }
  235. }
  236. /**
  237. * 保存切换图片
  238. */
  239. public function slide_advOp() {
  240. $code_id = intval($_POST['code_id']);
  241. $web_id = intval($_POST['web_id']);
  242. $model_web_config = Model('web_config');
  243. $code = $model_web_config->getCodeRow($code_id,$web_id);
  244. if (!empty($code)) {
  245. $code_type = $code['code_type'];
  246. $var_name = $code['var_name'];
  247. $code_info = $_POST[$var_name];
  248. $pic_id = intval($_POST['slide_id']);
  249. if ($pic_id > 0) {
  250. $var_name = "slide_pic";
  251. $pic_info = $_POST[$var_name];
  252. $pic_info['pic_id'] = $pic_id;
  253. if (!empty($code_info[$pic_id]['pic_img'])) {//原图片
  254. $pic_info['pic_img'] = $code_info[$pic_id]['pic_img'];
  255. }
  256. $file_name = 'web-'.$web_id.'-'.$code_id.'-'.$pic_id;
  257. $pic_name = $this->_upload_pic($file_name);//上传图片
  258. if (!empty($pic_name)) {
  259. $pic_info['pic_img'] = $pic_name;
  260. }
  261. $code_info[$pic_id] = $pic_info;
  262. Tpl::output('pic',$pic_info);
  263. }
  264. $code_info = $model_web_config->get_str($code_info,$code_type);
  265. $model_web_config->updateCode(array('code_id'=> $code_id),array('code_info'=> $code_info));
  266. Tpl::showpage('web_upload_slide','null_layout');
  267. }
  268. }
  269. /**
  270. * 保存焦点区切换大图
  271. */
  272. public function screen_picOp() {
  273. $code_id = intval($_POST['code_id']);
  274. $web_id = intval($_POST['web_id']);
  275. $model_web_config = Model('web_config');
  276. $code = $model_web_config->getCodeRow($code_id,$web_id);
  277. if (!empty($code)) {
  278. $code_type = $code['code_type'];
  279. $var_name = $code['var_name'];
  280. $code_info = $_POST[$var_name];
  281. $key = intval($_POST['key']);
  282. $ap_pic_id = intval($_POST['ap_pic_id']);
  283. if ($ap_pic_id > 0 && $ap_pic_id == $key) {
  284. $ap_color = $_POST['ap_color'];
  285. $code_info[$ap_pic_id]['color'] = $ap_color;
  286. Tpl::output('ap_pic_id',$ap_pic_id);
  287. Tpl::output('ap_color',$ap_color);
  288. }
  289. $pic_id = intval($_POST['screen_id']);
  290. if ($pic_id > 0 && $pic_id == $key) {
  291. $var_name = "screen_pic";
  292. $pic_info = $_POST[$var_name];
  293. $pic_info['pic_id'] = $pic_id;
  294. if (!empty($code_info[$pic_id]['pic_img'])) {//原图片
  295. $pic_info['pic_img'] = $code_info[$pic_id]['pic_img'];
  296. }
  297. $file_name = 'web-'.$web_id.'-'.$code_id.'-'.$pic_id;
  298. $pic_name = $this->_upload_pic($file_name);//上传图片
  299. if (!empty($pic_name)) {
  300. $pic_info['pic_img'] = $pic_name;
  301. }
  302. $code_info[$pic_id] = $pic_info;
  303. Tpl::output('pic',$pic_info);
  304. }
  305. $code_info = $model_web_config->get_str($code_info,$code_type);
  306. $model_web_config->updateCode(array('code_id'=> $code_id),array('code_info'=> $code_info));
  307. Tpl::showpage('web_upload_screen','null_layout');
  308. }
  309. }
  310. /**
  311. * 保存焦点区切换小图
  312. */
  313. public function focus_picOp() {
  314. $code_id = intval($_POST['code_id']);
  315. $web_id = intval($_POST['web_id']);
  316. $model_web_config = Model('web_config');
  317. $code = $model_web_config->getCodeRow($code_id,$web_id);
  318. if (!empty($code)) {
  319. $code_type = $code['code_type'];
  320. $var_name = $code['var_name'];
  321. $code_info = $_POST[$var_name];
  322. $key = intval($_POST['key']);
  323. $slide_id = intval($_POST['slide_id']);
  324. $pic_id = intval($_POST['pic_id']);
  325. if ($pic_id > 0 && $slide_id == $key) {
  326. $var_name = "focus_pic";
  327. $pic_info = $_POST[$var_name];
  328. $pic_info['pic_id'] = $pic_id;
  329. if (!empty($code_info[$slide_id]['pic_list'][$pic_id]['pic_img'])) {//原图片
  330. $pic_info['pic_img'] = $code_info[$slide_id]['pic_list'][$pic_id]['pic_img'];
  331. }
  332. $file_name = 'web-'.$web_id.'-'.$code_id.'-'.$slide_id.'-'.$pic_id;
  333. $pic_name = $this->_upload_pic($file_name);//上传图片
  334. if (!empty($pic_name)) {
  335. $pic_info['pic_img'] = $pic_name;
  336. }
  337. $code_info[$slide_id]['pic_list'][$pic_id] = $pic_info;
  338. Tpl::output('pic',$pic_info);
  339. }
  340. $code_info = $model_web_config->get_str($code_info,$code_type);
  341. $model_web_config->updateCode(array('code_id'=> $code_id),array('code_info'=> $code_info));
  342. Tpl::showpage('web_upload_focus','null_layout');
  343. }
  344. }
  345. /**
  346. * 上传图片
  347. */
  348. private function _upload_pic($file_name)
  349. {
  350. $pic_name = '';
  351. if (!empty($file_name)) {
  352. if (!empty($_FILES['pic']['name'])) {//上传图片
  353. $upload = new UploadFile();
  354. $filename_tmparr = explode('.', $_FILES['pic']['name']);
  355. $ext = end($filename_tmparr);
  356. $upload->set('default_dir', ATTACH_EDITOR);
  357. $upload->set('file_name', $file_name . "." . $ext);
  358. $result = $upload->upfile('pic');
  359. if ($result) {
  360. $pic_name = ATTACH_EDITOR . DS . $upload->file_name . '?' . mt_rand(100, 999);//加随机数防止浏览器缓存图片
  361. }
  362. }
  363. }
  364. return $pic_name;
  365. }
  366. public function sale_image_uploadOp() {
  367. $origin_file_name = $_POST['origin_file_name'];
  368. if(!empty($origin_file_name)){
  369. $this->_del_pic(basename($origin_file_name, substr($origin_file_name,-4)));
  370. }
  371. $file_name = $_POST['file_name'];
  372. $pic_name = $this->_upload_pic($file_name);
  373. Tpl::output('pic_name', $pic_name);
  374. Tpl::showpage('web_upload_sale','null_layout');
  375. }
  376. private function _del_pic($file_name){
  377. $file_name = BASE_UPLOAD_PATH . DS. ATTACH_EDITOR . DS. $file_name;
  378. if(file_exists($file_name)){
  379. @unlink($file_name);
  380. }
  381. }
  382. }