web_api.php 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389
  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. $model_web_config = Model('web_config');
  60. $web_id = '121';
  61. $code_list = $model_web_config->getCodeList(array('web_id'=> $web_id));
  62. if(is_array($code_list) && !empty($code_list)) {
  63. $model_class = Model('goods_class');
  64. $goods_class = $model_class->getTreeClassList(1);//第一级商品分类
  65. Tpl::output('goods_class',$goods_class);
  66. foreach ($code_list as $key => $val) {//将变量输出到页面
  67. $var_name = $val['var_name'];
  68. $code_info = $val['code_info'];
  69. $code_type = $val['code_type'];
  70. $val['code_info'] = $model_web_config->get_array($code_info,$code_type);
  71. Tpl::output('code_'.$var_name,$val);
  72. }
  73. }
  74. Tpl::showpage('web_sale.edit');
  75. }
  76. /**
  77. * 商品分类
  78. */
  79. public function category_listOp() {
  80. $model_class = Model('goods_class');
  81. $gc_parent_id = intval($_GET['id']);
  82. $goods_class = $model_class->getGoodsClassListByParentId($gc_parent_id);
  83. Tpl::output('goods_class',$goods_class);
  84. Tpl::showpage('web_goods_class','null_layout');
  85. }
  86. /**
  87. * 商品推荐
  88. */
  89. public function recommend_listOp() {
  90. $model_web_config = Model('web_config');
  91. $condition = array();
  92. $gc_id = intval($_GET['id']);
  93. if ($gc_id > 0) {
  94. $condition['gc_id'] = $gc_id;
  95. }
  96. $goods_name = trim($_GET['goods_name']);
  97. if (!empty($goods_name)) {
  98. $condition['goods_name'] = array('like','%'.$goods_name.'%');
  99. }
  100. $goods_list = $model_web_config->getGoodsList($condition,'goods_id desc',6);
  101. Tpl::output('show_page',$model_web_config->showpage(2));
  102. Tpl::output('goods_list',$goods_list);
  103. Tpl::showpage('web_goods.list','null_layout');
  104. }
  105. /**
  106. * 商品排序查询
  107. */
  108. public function goods_listOp() {
  109. $model_web_config = Model('web_config');
  110. $condition = array();
  111. $order = 'goods_salenum desc,goods_id desc';//销售数量
  112. $goods_order = trim($_GET['goods_order']);
  113. if (!empty($goods_order)) {
  114. $order = $goods_order.' desc,goods_id desc';
  115. }
  116. $gc_id = intval($_GET['id']);
  117. if ($gc_id > 0) {
  118. $condition['gc_id'] = $gc_id;
  119. }
  120. $goods_name = trim($_GET['goods_name']);
  121. if (!empty($goods_name)) {
  122. $condition['goods_name'] = array('like','%'.$goods_name.'%');
  123. }
  124. $goods_list = $model_web_config->getGoodsList($condition,$order,6);
  125. Tpl::output('show_page',$model_web_config->showpage(2));
  126. Tpl::output('goods_list',$goods_list);
  127. Tpl::showpage('web_goods_order','null_layout');
  128. }
  129. /**
  130. * 品牌
  131. */
  132. public function brand_listOp() {
  133. $model_brand = Model('brand');
  134. /**
  135. * 检索条件
  136. */
  137. $condition = array();
  138. if (!empty($_GET['brand_name'])) {
  139. $condition['brand_name'] = array('like', '%' . trim($_GET['brand_name']) . '%');
  140. }
  141. $brand_list = $model_brand->getBrandPassedList($condition, '*', 6);
  142. Tpl::output('show_page',$model_brand->showpage());
  143. Tpl::output('brand_list',$brand_list);
  144. Tpl::showpage('web_brand.list','null_layout');
  145. }
  146. /**
  147. * 保存设置
  148. */
  149. public function code_updateOp() {
  150. $code_id = intval($_POST['code_id']);
  151. $web_id = intval($_POST['web_id']);
  152. $model_web_config = Model('web_config');
  153. $code = $model_web_config->getCodeRow($code_id,$web_id);
  154. if (!empty($code)) {
  155. $code_type = $code['code_type'];
  156. $var_name = $code['var_name'];
  157. $code_info = $_POST[$var_name];
  158. $code_info = $model_web_config->get_str($code_info,$code_type);
  159. $state = $model_web_config->updateCode(array('code_id'=> $code_id),array('code_info'=> $code_info));
  160. }
  161. if($state) {
  162. echo '1';exit;
  163. } else {
  164. echo '0';exit;
  165. }
  166. }
  167. /**
  168. * 保存图片
  169. */
  170. public function upload_picOp() {
  171. $code_id = intval($_POST['code_id']);
  172. $web_id = intval($_POST['web_id']);
  173. $model_web_config = Model('web_config');
  174. $code = $model_web_config->getCodeRow($code_id,$web_id);
  175. if (!empty($code)) {
  176. $code_type = $code['code_type'];
  177. $var_name = $code['var_name'];
  178. $code_info = $_POST[$var_name];
  179. $file_name = 'web-'.$web_id.'-'.$code_id;
  180. $pic_name = $this->_upload_pic($file_name);//上传图片
  181. if (!empty($pic_name)) {
  182. $code_info['pic'] = $pic_name;
  183. }
  184. Tpl::output('var_name',$var_name);
  185. Tpl::output('pic',$code_info['pic']);
  186. Tpl::output('type',$code_info['type']);
  187. Tpl::output('ap_id',$code_info['ap_id']);
  188. $code_info = $model_web_config->get_str($code_info,$code_type);
  189. $state = $model_web_config->updateCode(array('code_id'=> $code_id),array('code_info'=> $code_info));
  190. Tpl::showpage('web_upload_pic','null_layout');
  191. }
  192. }
  193. /**
  194. * 中部推荐图片
  195. */
  196. public function recommend_picOp() {
  197. $code_id = intval($_POST['code_id']);
  198. $web_id = intval($_POST['web_id']);
  199. $model_web_config = Model('web_config');
  200. $code = $model_web_config->getCodeRow($code_id,$web_id);
  201. $key_id = intval($_POST['key_id']);
  202. $pic_id = intval($_POST['pic_id']);
  203. if (!empty($code) && $key_id > 0 && $pic_id > 1) {
  204. $code_info = $code['code_info'];
  205. $code_type = $code['code_type'];
  206. $code_info = $model_web_config->get_array($code_info,$code_type);//原数组
  207. $var_name = "pic_list";
  208. $pic_info = $_POST[$var_name];
  209. $pic_info['pic_id'] = $pic_id;
  210. if (!empty($code_info[$key_id]['pic_list'][$pic_id]['pic_img'])) {//原图片
  211. $pic_info['pic_img'] = $code_info[$key_id]['pic_list'][$pic_id]['pic_img'];
  212. }
  213. $file_name = 'web-'.$web_id.'-'.$code_id.'-'.$key_id.'-'.$pic_id;
  214. $pic_name = $this->_upload_pic($file_name);//上传图片
  215. if (!empty($pic_name)) {
  216. $pic_info['pic_img'] = $pic_name;
  217. }
  218. $recommend_list = array();
  219. $recommend_list = $_POST['recommend_list'];
  220. $recommend_list['pic_list'] = $code_info[$key_id]['pic_list'];
  221. $code_info[$key_id] = $recommend_list;
  222. $code_info[$key_id]['pic_list'][$pic_id] = $pic_info;
  223. Tpl::output('pic',$pic_info);
  224. $code_info = $model_web_config->get_str($code_info,$code_type);
  225. $state = $model_web_config->updateCode(array('code_id'=> $code_id),array('code_info'=> $code_info));
  226. Tpl::showpage('web_recommend_pic','null_layout');
  227. }
  228. }
  229. /**
  230. * 保存切换图片
  231. */
  232. public function slide_advOp() {
  233. $code_id = intval($_POST['code_id']);
  234. $web_id = intval($_POST['web_id']);
  235. $model_web_config = Model('web_config');
  236. $code = $model_web_config->getCodeRow($code_id,$web_id);
  237. if (!empty($code)) {
  238. $code_type = $code['code_type'];
  239. $var_name = $code['var_name'];
  240. $code_info = $_POST[$var_name];
  241. $pic_id = intval($_POST['slide_id']);
  242. if ($pic_id > 0) {
  243. $var_name = "slide_pic";
  244. $pic_info = $_POST[$var_name];
  245. $pic_info['pic_id'] = $pic_id;
  246. if (!empty($code_info[$pic_id]['pic_img'])) {//原图片
  247. $pic_info['pic_img'] = $code_info[$pic_id]['pic_img'];
  248. }
  249. $file_name = 'web-'.$web_id.'-'.$code_id.'-'.$pic_id;
  250. $pic_name = $this->_upload_pic($file_name);//上传图片
  251. if (!empty($pic_name)) {
  252. $pic_info['pic_img'] = $pic_name;
  253. }
  254. $code_info[$pic_id] = $pic_info;
  255. Tpl::output('pic',$pic_info);
  256. }
  257. $code_info = $model_web_config->get_str($code_info,$code_type);
  258. $model_web_config->updateCode(array('code_id'=> $code_id),array('code_info'=> $code_info));
  259. Tpl::showpage('web_upload_slide','null_layout');
  260. }
  261. }
  262. /**
  263. * 保存焦点区切换大图
  264. */
  265. public function screen_picOp() {
  266. $code_id = intval($_POST['code_id']);
  267. $web_id = intval($_POST['web_id']);
  268. $model_web_config = Model('web_config');
  269. $code = $model_web_config->getCodeRow($code_id,$web_id);
  270. if (!empty($code)) {
  271. $code_type = $code['code_type'];
  272. $var_name = $code['var_name'];
  273. $code_info = $_POST[$var_name];
  274. $key = intval($_POST['key']);
  275. $ap_pic_id = intval($_POST['ap_pic_id']);
  276. if ($ap_pic_id > 0 && $ap_pic_id == $key) {
  277. $ap_color = $_POST['ap_color'];
  278. $code_info[$ap_pic_id]['color'] = $ap_color;
  279. Tpl::output('ap_pic_id',$ap_pic_id);
  280. Tpl::output('ap_color',$ap_color);
  281. }
  282. $pic_id = intval($_POST['screen_id']);
  283. if ($pic_id > 0 && $pic_id == $key) {
  284. $var_name = "screen_pic";
  285. $pic_info = $_POST[$var_name];
  286. $pic_info['pic_id'] = $pic_id;
  287. if (!empty($code_info[$pic_id]['pic_img'])) {//原图片
  288. $pic_info['pic_img'] = $code_info[$pic_id]['pic_img'];
  289. }
  290. $file_name = 'web-'.$web_id.'-'.$code_id.'-'.$pic_id;
  291. $pic_name = $this->_upload_pic($file_name);//上传图片
  292. if (!empty($pic_name)) {
  293. $pic_info['pic_img'] = $pic_name;
  294. }
  295. $code_info[$pic_id] = $pic_info;
  296. Tpl::output('pic',$pic_info);
  297. }
  298. $code_info = $model_web_config->get_str($code_info,$code_type);
  299. $model_web_config->updateCode(array('code_id'=> $code_id),array('code_info'=> $code_info));
  300. Tpl::showpage('web_upload_screen','null_layout');
  301. }
  302. }
  303. /**
  304. * 保存焦点区切换小图
  305. */
  306. public function focus_picOp() {
  307. $code_id = intval($_POST['code_id']);
  308. $web_id = intval($_POST['web_id']);
  309. $model_web_config = Model('web_config');
  310. $code = $model_web_config->getCodeRow($code_id,$web_id);
  311. if (!empty($code)) {
  312. $code_type = $code['code_type'];
  313. $var_name = $code['var_name'];
  314. $code_info = $_POST[$var_name];
  315. $key = intval($_POST['key']);
  316. $slide_id = intval($_POST['slide_id']);
  317. $pic_id = intval($_POST['pic_id']);
  318. if ($pic_id > 0 && $slide_id == $key) {
  319. $var_name = "focus_pic";
  320. $pic_info = $_POST[$var_name];
  321. $pic_info['pic_id'] = $pic_id;
  322. if (!empty($code_info[$slide_id]['pic_list'][$pic_id]['pic_img'])) {//原图片
  323. $pic_info['pic_img'] = $code_info[$slide_id]['pic_list'][$pic_id]['pic_img'];
  324. }
  325. $file_name = 'web-'.$web_id.'-'.$code_id.'-'.$slide_id.'-'.$pic_id;
  326. $pic_name = $this->_upload_pic($file_name);//上传图片
  327. if (!empty($pic_name)) {
  328. $pic_info['pic_img'] = $pic_name;
  329. }
  330. $code_info[$slide_id]['pic_list'][$pic_id] = $pic_info;
  331. Tpl::output('pic',$pic_info);
  332. }
  333. $code_info = $model_web_config->get_str($code_info,$code_type);
  334. $model_web_config->updateCode(array('code_id'=> $code_id),array('code_info'=> $code_info));
  335. Tpl::showpage('web_upload_focus','null_layout');
  336. }
  337. }
  338. /**
  339. * 上传图片
  340. */
  341. private function _upload_pic($file_name) {
  342. $pic_name = '';
  343. if (!empty($file_name)) {
  344. if (!empty($_FILES['pic']['name'])) {//上传图片
  345. $upload = new UploadFile();
  346. $filename_tmparr = explode('.', $_FILES['pic']['name']);
  347. $ext = end($filename_tmparr);
  348. $upload->set('default_dir',ATTACH_EDITOR);
  349. $upload->set('file_name',$file_name.".".$ext);
  350. $result = $upload->upfile('pic');
  351. if ($result) {
  352. $pic_name = ATTACH_EDITOR."/".$upload->file_name.'?'.mt_rand(100,999);//加随机数防止浏览器缓存图片
  353. }
  354. }
  355. }
  356. return $pic_name;
  357. }
  358. }