/** * 更新模型 */ public function action() { $model = \Model\Model::findModel($_POST['model_id']); $result = \Model\Model::updateModel(); if ($result['status'] == false) { $this->error($result['mes']); } //更新菜单 $this->db('menu')->where('menu_name = :old_name')->update(array('menu_name' => $this->p('display_name'), 'noset' => array('old_name' => $model['lang_key']))); $this->success($GLOBALS['_LANG']['MODEL']['UPDATE_MODEL_SUCCESS'], $this->url('Team-Model-index')); }
public function __init() { parent::__init(); $this->table = strtolower(MODULE); $this->fieldPrefix = $this->table . "_"; $this->model = \Model\Model::findModel($this->table, 'model_name'); if (empty($this->model)) { $this->error($GLOBALS['_LANG']['MODEL']['NOT_EXIST_MODEL']); } $this->assign('fieldPrefix', $this->fieldPrefix); $this->theme = \Model\Option::findOption('theme'); }
/** * 删除字段 */ public function fieldAction() { $id = $this->isG('id', $GLOBALS['_LANG']['COMMON']['DELETE_ID']); $field = \Model\Field::findField($id); if (empty($field)) { $this->error($GLOBALS['_LANG']['MODEL']['NOT_EXIST_FIELD']); } $removeFieldResult = \Model\Field::removeField($id); if (empty($removeFieldResult)) { $this->error($GLOBALS['_LANG']['COMMON']['DELETE_ERROR']); } $model = \Model\Model::findModel($field['model_id']); $alertTableFieldResult = \Model\Field::alertTableField($model['model_name'], $field['field_name']); if (empty($alertTableFieldResult)) { $log = new \Expand\Log(); $failLog = "Delete Field: " . strtolower($model['model_name']) . "_{$field['field_name']}, Model:{$model['model_name']} " . date("Y-m-d H:i:s"); $log->creatLog('fieldError', $failLog); $this->error($GLOBALS['_LANG']['MODEL']['ALERT_TABLE_FIELD_ERROR']); } $this->success($GLOBALS['_LANG']['COMMON']['DELETE_SUCCESS']); }
/** * 字段添加/编辑 */ public function fieldAction() { $fieldId = $this->g('id'); $modelId = $this->isG('model', $GLOBALS['_LANG']['MODEL']['SELECT_MODEL_ID']); $model = \Model\Model::findModel($modelId); if (empty($fieldId)) { $this->assign('method', 'POST'); $this->assign('title', $GLOBALS['_LANG']['MODEL']['FIELD_ADD'] . " - {$model['lang_key']}"); } else { $field = \Model\Field::findField($fieldId); if (empty($field)) { $this->error($GLOBALS['_LANG']['MODEL']['NOT_EXIST_FIELD']); } $this->assign($field); $this->assign('method', 'PUT'); $this->assign('title', "{$GLOBALS['_LANG']['MODEL']['FIELD_EDIT']} - {$model['lang_key']}"); } $fieldTypeOption = \Model\Option::findOption('fieldType'); $this->assign('fieldTypeList', json_decode($fieldTypeOption['value'], true)); $this->assign('modelId', $modelId); $this->layout(); }
/** * 基础表单 */ public static function baseForm() { if (!($data['model_id'] = self::isP('model_id'))) { return self::error($GLOBALS['_LANG']['MODEL']['LOST_MODEL_ID']); } if (!(self::$model = \Model\Model::findModel($data['model_id']))) { return self::error($GLOBALS['_LANG']['MODEL']['NOT_EXIST_MODEL']); } if (self::p('method') == 'PUT') { if (!($data['noset']['field_id'] = self::isP('field_id'))) { return self::error($GLOBALS['_LANG']['MODEL']['LOST_FIELD_ID']); } if (!self::findField($data['noset']['field_id'])) { return self::error($GLOBALS['_LANG']['MODEL']['NOT_EXIST_FIELD']); } } else { if (!($data['field_type'] = self::isP('field_type'))) { return self::error($GLOBALS['_LANG']['MODEL']['SELECT_FIELD_TYPE']); } if (!($data['field_name'] = self::isP('field_name'))) { return self::error($GLOBALS['_LANG']['MODEL']['ENTER_FIELD_NAME']); } } if (!($data['display_name'] = self::isP('display_name'))) { return self::error($GLOBALS['_LANG']['MODEL']['ENTER_DISPLAY_NAME']); } if (!($data['field_option'] = self::splitOption())) { self::error($GLOBALS['_LANG']['MODEL']['SPLIT_OPTION_ERROR']); } if (!($data['field_required'] = self::isP('field_required')) && !is_numeric($data['field_required'])) { return self::error($GLOBALS['_LANG']['MODEL']['SELECT_REQUIRED']); } if (!($data['field_status'] = self::isP('field_status')) && !is_numeric($data['field_status'])) { return self::error($GLOBALS['_LANG']['MODEL']['SELECT_FIELD_STATUS']); } $data['field_default'] = self::p('field_default'); $data['field_listsort'] = self::p('field_listsort'); return self::success($data); }
/** * 基础表单 */ public static function baseFrom() { self::$table = strtolower(MODULE); self::$fieldPrefix = self::$table . "_"; self::$model = \Model\Model::findModel(self::$table, 'model_name'); $field = \Model\Field::fieldList(self::$model['model_id'], '1'); if (self::p('method') == 'PUT') { if (!($data['noset'][self::$fieldPrefix . 'id'] = self::isP('id'))) { return self::error($GLOBALS['_LANG']['MODEL']['LOST_MODEL_ID']); } if (!self::findContent(self::$table, $data['noset'][self::$fieldPrefix . 'id'], self::$fieldPrefix . 'id')) { return self::error($GLOBALS['_LANG']['MODEL']['NOT_EXIST_MODEL']); } } foreach ($field as $value) { /** * 判断提交的字段是否为数组 */ if (is_array($_POST[$value['field_name']])) { $_POST[$value['field_name']] = (string) implode(',', $_POST[$value['field_name']]); } /** * 时间转换为时间戳 */ if ($value['field_type'] == 'date') { $_POST[$value['field_name']] = (string) strtotime($_POST[$value['field_name']]); } if ($value['field_required'] == '1') { if (!($data[self::$fieldPrefix . $value['field_name']] = self::isP($value['field_name'])) && !is_numeric($data[self::$fieldPrefix . $value['field_name']])) { return self::error($value['display_name'] . $GLOBALS['_LANG']['COMMON']['REQUIRED']); } } else { if (!($data[self::$fieldPrefix . $value['field_name']] = self::p($value['field_name']))) { $data[self::$fieldPrefix . $value['field_name']] = $value['field_default']; } } } return self::success($data); }
/** * 菜单基础表单 */ public static function baseFrom() { $fieldPrefix = "user_"; $model = \Model\Model::findModel('user', 'model_name'); $field = \Model\Field::fieldList($model['model_id'], '1'); if (self::p('method') == 'PUT') { if (!($data['noset']['user_id'] = self::isP('user_id'))) { return self::error($GLOBALS['_LANG']['USER']['LOST_USER_ID']); } if (!self::findUser($data['noset']['user_id'])) { return self::error($GLOBALS['_LANG']['USER']['NOT_EXITS_USER']); } } elseif (self::p('method') == 'POST') { $data['user_createtime'] = time(); } foreach ($field as $value) { /** * 判断提交的字段是否为数组 */ if (is_array($_POST[$value['field_name']])) { $_POST[$fieldPrefix . $value['field_name']] = implode(',', $_POST[$fieldPrefix . $value['field_name']]); } /** * 时间转换为时间戳 */ if ($value['field_type'] == 'date') { $_POST[$fieldPrefix . $value['field_name']] = strtotime($_POST[$fieldPrefix . $value['field_name']]); } if ($value['field_required'] == '1') { if (!($data[$fieldPrefix . $value['field_name']] = self::isP($fieldPrefix . $value['field_name'])) && !is_numeric($data[$fieldPrefix . $value['field_name']])) { return self::error($value['display_name'] . $GLOBALS['_LANG']['COMMON']['REQUIRED']); } } else { if (!($data[$fieldPrefix . $value['field_name']] = self::p($fieldPrefix . $value['field_name']))) { $data[$fieldPrefix . $value['field_name']] = $value['field_default']; } } } /** * 先移除密码 */ unset($data['user_password']); if (self::p('user_password')) { $password = self::p('user_password'); if ($password != self::p('confirm_password')) { return self::error($GLOBALS['_LANG']['USER']['CONFIRM_PASSWORD_ERROR']); } $data['user_password'] = \Core\Func\CoreFunc::generatePwd($data['user_account'] . $password, 'PRIVATE_KEY'); } elseif (self::p('method') == 'POST' && !self::p('user_password')) { return self::error($GLOBALS['_LANG']['USER']['ENTER_PASSWORD']); } return self::success($data); }