protected function _check($data, $ID = null) { if (isset($data['title']) || !$ID) { if (empty($data['title'])) { $this->err->add('导航菜单标题不能为空', 401); return false; } } if (isset($data['parent_id']) || !$ID) { if ($pid = intval($data['parent_id'])) { if (!($parent = K::M('module/view')->module($pid))) { $this->err->add('指定的父级菜单不存在', 402); return false; } else { if ($parent['module'] == 'module') { $this->err->add('指定的父级菜不能为控制模型', 403); return false; } } $data['level'] = 2; $data['module'] = 'menu'; $data['parent_id'] = $pid; } else { $data['level'] = 1; $data['module'] = 'top'; $data['parent_id'] = 0; } } if (isset($data['orderby'])) { $data['orderby'] = intval($data['orderby']); } return parent::_check($data); }
protected function _check($data, $ID = null) { //check title if (isset($data['title']) || !$ID) { if (empty($data['title'])) { $this->err->add('控制模块的标题不能为空', 401); return false; } } //check ctl if (isset($data['ctl']) || !$ID) { if (!preg_match('/^[\\w\\/]+$/i', $data['ctl'])) { $this->err->add("控制器输入不合法", 402); return false; } /* $file = __APP_DIR."controllers/{$data['ctl']}.ctl.php"; if(!is_string($data['ctl']) || !file_eists($file)){ $this->err->add("要添加的控制器不存在,请确定文件:{$file}存在",402); return false; } */ } //check act if (isset($data['act']) || !$ID) { if (!preg_match('/^[a-z\\_]\\w+$/i', $data['act'])) { $this->err->add("Action的名称不合法", 403); return false; } } //check parent if (isset($data['parent_id']) || !$ID) { if ($pid = intval($data['parent_id'])) { if (!($parent = K::M('module/view')->module($pid))) { $this->err->add('指定的父级菜单不存在', 404); return false; } else { if ($parent['module'] != 'menu') { $this->err->add('控制模块只能添加在Menu下', 405); return false; } } } } if (isset($data['orderby'])) { $data['orderby'] = intval($data['orderby']); } if (isset($data['visible']) || !$ID) { $data['visible'] = $data['visible'] ? 1 : 0; } return parent::_check($data); }