/** * 更新模块 * * @access public * @param $app_id:应用的id * * @return array */ public function update() { $id = intval($this->input['id']); if ($id <= 0) { $this->errorOutput(NOID); } $data = $this->filter_data(); //验证APP是否存在 $queryData = array('id' => $data['app_id'], 'user_id' => $this->user['user_id'], 'del' => 0); $app_info = $this->api->detail('app_info', $queryData); if (!$app_info) { $this->errorOutput(APP_NOT_EXISTS); } $appModule_info = $this->api->detail('app_module', array('id' => $id, 'app_id' => $data['app_id'])); if (!$appModule_info) { $this->errorOutput(MODULE_NOT_EXISTS); } $validate = array(); if (isset($data['name']) && $appModule_info['name'] != $data['name']) { /* //是否重名 $check = $this->api->verify(array('name' => $data['name'], 'app_id' => $data['app_id'])); if ($check > 0) $this->errorOutput(NAME_EXISTS); */ $validate['name'] = $data['name']; //编辑栏目 $userInfo = $this->getSite(); if (!$userInfo) { $this->errorOutput(NO_USER_ID); } $publish = new publishconfig(); $column_data = array('fast_add_column' => 1, 'column_name' => $data['name'], 'site_id' => $userInfo['s_id'], 'column_id' => $appModule_info['column_id']); $column_id = $publish->edit_column($column_data); if (!$column_id) { $this->errorOutput(FAILED); } } if (isset($data['status'])) { $validate['status'] = $data['status']; } if (isset($data['english_name']) && $appModule_info['english_name'] != $data['english_name']) { /* //是否重名 $check = $this->api->verify(array('english_name' => $data['english_name'], 'app_id' => $data['app_id'])); if ($check > 0) $this->errorOutput(ENGLISH_EXISTS); */ $validate['english_name'] = $data['english_name']; } if ($this->input['pic_url']) { $pic_url = trim(urldecode($this->input['pic_url'])); if ($appModule_info['pic'] != $pic_url) { $validate['pic'] = $pic_url; $validate['press_pic'] = str_replace('/normal/', '/press/', $pic_url); } } if (isset($this->input['pic_id'])) { $pic_id = intval($this->input['pic_id']); //$pic_info = $this->material->get_material_by_ids($pic_id); $pic_info = $this->_upYunOp->getPicInfoById('', " AND id IN (" . $pic_id . ") AND user_id = '" . $this->user['user_id'] . "' "); if (!$pic_info || !isset($pic_info[0]) || !$pic_info[0]) { $pic_info = $this->material->get_material_by_ids($pic_id); if (!$pic_info || !isset($pic_info[0]) || !$pic_info[0]) { $this->errorOutput(PIC_NOT_EXISTS); } } $pic_info = serialize($pic_info[0]); if ($appModule_info['pic'] != $pic_info) { $validate['pic'] = $pic_info; } } if (isset($this->input['press_id'])) { $press_id = intval($this->input['press_id']); //$press_pic = $this->material->get_material_by_ids($press_id); $press_pic = $this->_upYunOp->getPicInfoById('', " AND id IN (" . $press_id . ") AND user_id = '" . $this->user['user_id'] . "' "); if (!$press_pic || !isset($press_pic[0]) || !$press_pic[0]) { $press_pic = $this->material->get_material_by_ids($press_id); if (!$press_pic || !isset($press_pic[0]) || !$press_pic[0]) { $this->errorOutput(PIC_NOT_EXISTS); } } $press_pic = serialize($press_pic[0]); if ($appModule_info['press_pic'] != $press_pic) { $validate['press_pic'] = $press_pic; } } if ($data['body_tpl_id'] && $appModule_info['body_tpl_id'] != $data['body_tpl_id']) { $validate['body_tpl_id'] = $data['body_tpl_id']; } if (isset($data['is_sub']) && $appModule_info['is_sub'] != $data['is_sub']) { $validate['is_sub'] = $data['is_sub']; } if (isset($data['normal_color']) && $appModule_info['normal_color'] != $data['normal_color']) { $validate['normal_color'] = $data['normal_color']; } if (isset($data['normal_alpha']) && $appModule_info['normal_alpha'] != $data['normal_alpha']) { $validate['normal_alpha'] = $data['normal_alpha']; } if (isset($data['press_color']) && $appModule_info['press_color'] != $data['press_color']) { $validate['press_color'] = $data['press_color']; } if (isset($data['press_alpha']) && $appModule_info['press_alpha'] != $data['press_alpha']) { $validate['press_alpha'] = $data['press_alpha']; } if ($data['webview_id'] > 0 || $data['webview_url']) { if ($data['webview_id'] > 0 && $appModule_info['web_view'] != $data['webview_id']) { $webview_info = $this->api->detail('app_webview', array('id' => $data['webview_id'])); if (!$webview_info) { $this->errorOutput(WEBVIEW_NOT_EXISTS); } $validate['web_view'] = $data['webview_id']; $validate['web_url'] = $webview_info['url']; } elseif ($data['webview_url'] && $appModule_info['web_url'] != $data['webview_url']) { //判断url // if (!filter_var($data['webview_url'], FILTER_VALIDATE_URL)) // { // $this->errorOutput(URL_NOT_VALID); // } $validate['web_url'] = $data['webview_url']; $validate['web_view'] = -1; } $validate['ui_id'] = 0; $validate['solidify_id'] = 0; } elseif ($data['solidify_id'] > 0 && $appModule_info['solidify_id'] != $data['solidify_id']) { $_soli_info = $this->soli_mode->detail('solidify_module', array('id' => $data['solidify_id'])); if (!$_soli_info) { $this->errorOutput(SOLID_NOT_EXISTS); } if ($_soli_info['mark'] == 'im') { //判断是否在黑名单 $blackInfo = $this->_im->check_black($data['app_id']); if ($blackInfo['is_black']) { $this->errorOutput(IM_IS_BLACK); } //获取融云的 production_app_key //如果固话模块是即时通信的,需要验证该应用有没有容云key $rcAppKey = $this->_im->get_rckey($data['app_id']); if (!$rcAppKey) { $this->addItem('YOU_SHOULD_CREATE_TEAM'); $this->output(); //$this->errorOutput(YOU_SHOULD_CREATE_TEAM); } } //微社区 if (strpos($_soli_info['mark'], 'seekhelp') !== FALSE) { //限制绑定一个微社区 $cond = " AND app_id = '" . $data['app_id'] . "' AND user_id = '" . $this->user['user_id'] . "' "; $ModulesData = $this->api->getModulesData($cond); foreach ($ModulesData as $k => $v) { $solidify_id_arr[$v['id']] = $v['solidify_id']; } foreach ($solidify_id_arr as $k => $v) { $old_soli_info = $this->soli_mode->detail('solidify_module', array('id' => $v)); if (strpos($old_soli_info['mark'], 'seekhelp') !== FALSE && $k != $this->input['id']) { $this->errorOutput(HAS_SEEKHELP); } } //判断是否在黑名单 $blackInfo = $this->seekhelp->check_black($data['app_id']); if ($blackInfo['is_black']) { $this->errorOutput(SEEKHELP_IS_BLACK); } //判断老用户 if (!$app_info['seekhelp_sort_id']) { //判断新用户 $newSeekhelp = $this->seekhelpApi->community_operate(array('a' => 'getSortByappId', 'app_id' => $app_info['id'])); if (!$newSeekhelp) { $this->errorOutput('YOU_SHOULD_CREATE_COMMUNITY_FIRST'); } } } $validate['solidify_id'] = $data['solidify_id']; $validate['web_view'] = 0; $validate['web_url'] = ''; $validate['ui_id'] = 0; } elseif ($data['ui_id'] > 0 && $appModule_info['ui_id'] != $data['ui_id']) { $validate['ui_id'] = $data['ui_id']; $validate['web_view'] = 0; $validate['web_url'] = ''; $validate['solidify_id'] = 0; } //后加的一些属性 $validate['text_nor_bg'] = $data['text_nor_bg']; $validate['text_pre_bg'] = $data['text_pre_bg']; $validate['layout_pre_bg'] = $data['layout_pre_bg']; $validate['layout_pre_alpha'] = $data['layout_pre_alpha']; $validate['layout_nor_bg'] = $data['layout_nor_bg']; $validate['layout_nor_alpha'] = $data['layout_nor_alpha']; $validate['ui_bg'] = $data['ui_bg']; $validate['main_color'] = $data['main_color']; if ($data['navbar'] && is_array($data['navbar'])) { $validate['navbar'] = addslashes(serialize($data['navbar'])); //导航栏设置 } $validate['ui_padding_bottom'] = $data['ui_padding_bottom']; if ($validate) { $result = $this->api->update('app_module', $validate, array('id' => $id)); } else { $result = true; } $this->addItem($result); $this->output(); }
/** * 更新模块 * * @access public * @param $app_id:应用的id * * @return array */ public function update() { $id = intval($this->input['id']); if ($id <= 0) { $this->errorOutput(NOID); } $data = $this->filter_data(); //验证APP是否存在 $queryData = array('id' => $data['app_id'], 'user_id' => $this->user['user_id'], 'del' => 0); $app_info = $this->api->detail('app_info', $queryData); if (!$app_info) { $this->errorOutput(APP_NOT_EXISTS); } $appModule_info = $this->api->detail('app_module', array('id' => $id, 'app_id' => $data['app_id'])); if (!$appModule_info) { $this->errorOutput(MODULE_NOT_EXISTS); } $validate = array(); if (isset($data['name']) && $appModule_info['name'] != $data['name']) { /* //是否重名 $check = $this->api->verify(array('name' => $data['name'], 'app_id' => $data['app_id'])); if ($check > 0) $this->errorOutput(NAME_EXISTS); */ $validate['name'] = $data['name']; //编辑栏目 $userInfo = $this->getSite(); if (!$userInfo) { $this->errorOutput(NO_USER_ID); } $publish = new publishconfig(); $column_data = array('fast_add_column' => 1, 'column_name' => $data['name'], 'site_id' => $userInfo['s_id'], 'column_id' => $appModule_info['column_id']); $column_id = $publish->edit_column($column_data); if (!$column_id) { $this->errorOutput(FAILED); } } if (isset($data['english_name']) && $appModule_info['english_name'] != $data['english_name']) { /* //是否重名 $check = $this->api->verify(array('english_name' => $data['english_name'], 'app_id' => $data['app_id'])); if ($check > 0) $this->errorOutput(ENGLISH_EXISTS); */ $validate['english_name'] = $data['english_name']; } if ($this->input['pic_url']) { $pic_url = trim(urldecode($this->input['pic_url'])); if ($appModule_info['pic'] != $pic_url) { $validate['pic'] = $pic_url; $validate['press_pic'] = str_replace('/normal/', '/press/', $pic_url); } } if (isset($this->input['pic_id'])) { $pic_id = intval($this->input['pic_id']); //$pic_info = $this->material->get_material_by_ids($pic_id); $pic_info = $this->_upYunOp->getPicInfoById($pic_id); if (!$pic_info || !isset($pic_info[0]) || !$pic_info[0]) { $pic_info = $this->material->get_material_by_ids($pic_id); if (!$pic_info || !isset($pic_info[0]) || !$pic_info[0]) { $this->errorOutput(PIC_NOT_EXISTS); } } $pic_info = serialize($pic_info[0]); if ($appModule_info['pic'] != $pic_info) { $validate['pic'] = $pic_info; } } if (isset($this->input['press_id'])) { $press_id = intval($this->input['press_id']); //$press_pic = $this->material->get_material_by_ids($press_id); $press_pic = $this->_upYunOp->getPicInfoById($press_id); if (!$press_pic || !isset($press_pic[0]) || !$press_pic[0]) { $press_pic = $this->material->get_material_by_ids($press_id); if (!$press_pic || !isset($press_pic[0]) || !$press_pic[0]) { $this->errorOutput(PIC_NOT_EXISTS); } } $press_pic = serialize($press_pic[0]); if ($appModule_info['press_pic'] != $press_pic) { $validate['press_pic'] = $press_pic; } } if ($data['body_tpl_id'] && $appModule_info['body_tpl_id'] != $data['body_tpl_id']) { $validate['body_tpl_id'] = $data['body_tpl_id']; } if (isset($data['is_sub']) && $appModule_info['is_sub'] != $data['is_sub']) { $validate['is_sub'] = $data['is_sub']; } if (isset($data['normal_color']) && $appModule_info['normal_color'] != $data['normal_color']) { $validate['normal_color'] = $data['normal_color']; } if (isset($data['normal_alpha']) && $appModule_info['normal_alpha'] != $data['normal_alpha']) { $validate['normal_alpha'] = $data['normal_alpha']; } if (isset($data['press_color']) && $appModule_info['press_color'] != $data['press_color']) { $validate['press_color'] = $data['press_color']; } if (isset($data['press_alpha']) && $appModule_info['press_alpha'] != $data['press_alpha']) { $validate['press_alpha'] = $data['press_alpha']; } if ($data['webview_id'] > 0 || $data['webview_url']) { if ($data['webview_id'] > 0 && $appModule_info['web_view'] != $data['webview_id']) { $webview_info = $this->api->detail('app_webview', array('id' => $data['webview_id'])); if (!$webview_info) { $this->errorOutput(WEBVIEW_NOT_EXISTS); } $validate['web_view'] = $data['webview_id']; $validate['web_url'] = $webview_info['url']; } elseif ($data['webview_url'] && $appModule_info['web_url'] != $data['webview_url']) { //判断url if (!filter_var($data['webview_url'], FILTER_VALIDATE_URL)) { $this->errorOutput(URL_NOT_VALID); } $validate['web_url'] = $data['webview_url']; $validate['web_view'] = -1; } $validate['ui_id'] = 0; $validate['solidify_id'] = 0; } elseif ($data['solidify_id'] > 0 && $appModule_info['solidify_id'] != $data['solidify_id']) { $validate['solidify_id'] = $data['solidify_id']; $validate['web_view'] = 0; $validate['web_url'] = ''; $validate['ui_id'] = 0; } elseif ($data['ui_id'] > 0 && $appModule_info['ui_id'] != $data['ui_id']) { $validate['ui_id'] = $data['ui_id']; $validate['web_view'] = 0; $validate['web_url'] = ''; $validate['solidify_id'] = 0; } if ($validate) { $result = $this->api->update('app_module', $validate, array('id' => $id)); } else { $result = true; } $this->addItem($result); $this->output(); }
/** * 更新数据 */ public function update() { $id = intval($this->input['id']); if ($id <= 0) { $this->errorOutput(PARAM_WRONG); } $data = $this->filter_data(); //验证APP是否存在 $queryData = array('id' => $data['app_id'], 'user_id' => $this->user['user_id'], 'del' => 0); $app_info = $this->api->detail('app_info', $queryData); if (!$app_info) { $this->errorOutput(NO_APPID); } $appModule_info = $this->api->detail('app_module', array('id' => $id, 'app_id' => $data['app_id'])); if (!$appModule_info) { $this->errorOutput(PARAM_WRONG); } $validate = array(); if ($appModule_info['name'] != $data['name']) { /* //是否重名 $check = $this->api->verify(array('name' => $data['name'], 'app_id' => $data['app_id'])); if ($check > 0) $this->errorOutput(NAME_EXISTS); */ $validate['name'] = $data['name']; //编辑栏目 $userInfo = $this->getSite(); if (!$userInfo) { $this->errorOutput(NO_USER_ID); } $publish = new publishconfig(); $column_data = array('fast_add_column' => 1, 'column_name' => $data['name'], 'site_id' => $userInfo['s_id'], 'column_id' => $appModule_info['column_id']); $column_id = $publish->edit_column($column_data); if (!$column_id) { $this->errorOutput(FAILED); } } if ($data['english_name'] && $appModule_info['english_name'] != $data['english_name']) { /* //是否重名 $check = $this->api->verify(array('english_name' => $data['english_name'], 'app_id' => $data['app_id'])); if ($check > 0) $this->errorOutput(ENGLISH_EXISTS); */ $validate['english_name'] = $data['english_name']; } if (isset($this->input['pic_id'])) { $pic_id = intval($this->input['pic_id']); $pic_info = $this->material->get_material_by_ids($pic_id); if (!$pic_info[0]) { $this->errorOutput(PARAM_WRONG); } $pic_info = serialize($pic_info[0]); if ($appModule_info['pic'] != $pic_info) { $validate['pic'] = $pic_info; } } if ($appModule_info['sign'] != $data['sign']) { $validate['sign'] = $data['sign']; } if ($appModule_info['is_sub'] != $data['is_sub']) { $validate['is_sub'] = $data['is_sub']; } if ($appModule_info['icon_bg'] != $data['icon_bg']) { if ($data['icon_bg'] && checkColor($data['icon_bg']) === false) { $this->errorOutput(COLOR_ERROR); } $validate['icon_bg'] = $data['icon_bg']; } if ($data['webview_id'] > 0 || $data['webview_url']) { if ($data['webview_id'] > 0 && $appModule_info['web_view'] != $data['webview_id']) { $webview_info = $this->api->detail('app_webview', array('id' => $data['webview_id'])); if (!$webview_info) { $this->errorOutput(PARAM_WRONG); } $validate['web_view'] = $data['webview_id']; $validate['web_url'] = $webview_info['url']; } elseif ($data['webview_url'] && $appModule_info['web_url'] != $data['webview_url']) { //判断url if (!filter_var($data['webview_url'], FILTER_VALIDATE_URL)) { $this->errorOutput(URL_NOT_VALID); } $validate['web_url'] = $data['webview_url']; $validate['web_view'] = -1; } $validate['ui_id'] = 0; } else { if ($data['ui_id'] > 0 && $appModule_info['ui_id'] != $data['ui_id']) { $validate['ui_id'] = $data['ui_id']; } $validate['web_view'] = 0; $validate['web_url'] = ''; } if ($validate) { $result = $this->api->update('app_module', $validate, array('id' => $id)); } else { $result = true; } $this->addItem($result); $this->output(); }