public function get_published_column($condition = '') { include_once ROOT_PATH . 'lib/class/publishconfig.class.php'; $publish_server = new publishconfig(); return $publish_server->get_column('*', $condition); }
/** * 更新扩展数据 */ public function updateExtra() { $id = intval($this->input['id']); $app_id = intval($this->input['app_id']); if ($id <= 0 || $app_id <= 0) { $this->errorOutput(PARAM_WRONG); } //验证APP是否存在 $queryData = array('id' => $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' => $app_id)); if (!$appModule_info) { $this->errorOutput(PARAM_WRONG); } $data = array('ui_id' => intval($this->input['uiId']), 'column_ids' => isset($this->input['columnIds']) ? $this->input['columnIds'] : '', 'type' => isset($this->input['type']) ? implode(',', (array) $this->input['type']) : '', 'site_id' => intval($this->input['siteId']), 'is_sub' => intval($this->input['is_sub']), 'icon_bg' => trim(urldecode($this->input['iconBackground'])), 'webview_id' => intval($this->input['webviewId']), 'webview_url' => trim(urldecode($this->input['webviewUrl'])), 'solidify_id' => intval($this->input['solidifyId'])); $validate = array(); 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; $validate['column_ids'] = ''; $validate['type'] = ''; $validate['solidify_id'] = 0; } else { if ($data['ui_id'] > 0 && $appModule_info['ui_id'] != $data['ui_id']) { $validate['ui_id'] = $data['ui_id']; } if ($data['solidify_id'] > 0 && $appModule_info['solidify_id'] != $data['solidify_id']) { $validate['solidify_id'] = $data['solidify_id']; $validate['column_ids'] = ''; $validate['type'] = ''; } else { if ($data['column_ids'] && $data['site_id']) { $publish = new publishconfig(); $where = ' AND site_id = ' . $data['site_id'] . ' AND id IN (' . $data['column_ids'] . ')'; $column_info = $publish->get_column('*', $where); if (!$column_info) { $this->errorOutput(PARAM_WRONG); } $column_arr = array(); foreach ($column_info as $column) { $column_arr[$column['id']] = $column['name']; } if ($column_arr) { $data['column_ids'] = serialize($column_arr); } } unset($data['site_id']); if ($appModule_info['column_ids'] != $data['column_ids']) { $validate['column_ids'] = $data['column_ids']; } if ($appModule_info['type'] != $data['type']) { $validate['type'] = $data['type']; } $validate['solidify_id'] = 0; } $validate['web_view'] = 0; $validate['web_url'] = ''; } 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 ($validate) { $result = $this->api->update('app_module', $validate, array('id' => $id)); } else { $result = true; } $this->addItem($result); $this->output(); }