/** * 学校列表 */ public function listAction() { //当前页码 $page_id = (int) $this->request->getQuery('page'); $page_id = $page_id < 1 ? 1 : $page_id; //省份code $pro_code = (int) $this->request->getQuery('pro_code'); //城市code $city_code = (int) $this->request->getQuery('city_code'); //区县code $area_code = (int) $this->request->getQuery('area_code'); //学校类型 $sch_type = (int) $this->request->getQuery('sch_type'); //关键字 $keyword = preg_replace('/[^\\da-z\\x{4e00}-\\x{9fa5}]/iu', '', mb_substr($this->request->getQuery('keyword'), 0, 10, 'utf-8')); //关键字长度小于10,并且只能是字符数字中文 //每页显示条数 $limit = 20; //省市区县 $site = new \Site(); $provinces = $site->getProvince(); //省 $cities = $site->getCity($pro_code); //城市 $areas = $site->getArea($city_code); //区县 //查询数据 $school = new \School(); $list = $school->getList($page_id, $limit, $pro_code, $city_code, $area_code, $sch_type, $keyword); //数据 $page_html = $this->pageHtml($list['page']); //分页html //加载js $this->assets->addJs('backend/mt-js/school-list.js'); $this->view->setVars(['pro_code' => $pro_code, 'city_code' => $city_code, 'area_code' => $area_code, 'sch_type' => $sch_type, 'keyword' => $keyword, 'provinces' => $provinces, 'cities' => $cities, 'areas' => $areas, 'list' => $list, 'page_html' => $page_html]); }
public function student() { function isEmpty($value) { return strlen('' . $value) == 0; } //if ($this->user->firstname == 'fred'){ //echo 'user->school_id ♦ '.$this->user->school_id.'<br>'; //echo (int)empty($this->request->get('school')).'<br>'; //echo $this->request->get('school', 0).'<br>'; //echo 'empty(user->school_id) ♦ '.(int)isEmpty($this->user->school_id).'<br>'; //} $school_id = !isEmpty($this->user->school_id) ? $this->user->school_id : 1; //if ($this->user->firstname == 'fred') echo '$school_id ♦ '.$school_id.'<br>'; $school_id = !empty($this->request->get('school')) ? $this->request->get('school') : $school_id; //if ($this->user->firstname == 'fred') echo '$school_id ♦ '.$school_id.'<br>'; $schools = ''; if ($this->user->isRole('admin') or $this->user->isRole('pdt')) { $schools = School::getList('SELECT * FROM school ORDER BY name DESC'); } $where = ''; $where = 'AND school_id=' . $school_id; if ($this->user->isRole('admin')) { $where = 'AND school_id=' . $school_id; } if ($this->user->isRole('pdt')) { $where = 'AND school_id=' . $school_id; } if ($this->user->isRole('dir')) { //$school_id = $this->user->school_id; $where = 'AND school_id=' . $school_id; } if ($this->user->isRole('prof')) { $where = 'AND school_id=' . $school_id; } $promos = Promotion::getList('SELECT * FROM session WHERE true ' . $where . ' ORDER BY date_start DESC'); function currentPromo_id($promos) { $now = date('Y-m-d'); foreach ($promos as $index => $promo) { if ($now >= $promo->date_start and $now <= $promo->date_end) { return $promo->id; } } if (!empty($promo[0])) { return $promo[0]->id; } else { return '0'; } } $promo_id = $this->request->get('promo', 0); if ($promo_id == 0) { $promo_id = currentPromo_id($promos); } $students = Student::getList('SELECT s.*, CONCAT(s.firstname," ",s.lastname)as fullname FROM student as s, session as p WHERE p.id=s.session_id AND p.id=' . $promo_id); $edit_url = $this->user->canDo('student_update') ? ROOT_HTTP . 'admin/student/update' : ''; $delete_url = $this->user->canDo('student_delete') ? ROOT_HTTP . 'admin/student/delete' : ''; $tableStudents = new Table('data-table', 'student', $students, ['id', 'fullname', 'email'], $edit_url, $delete_url); //if ($this->user->firstname == 'fred') echo '$school_id ♦ '.$school_id.'<br>'; $vars = ['canAddStudent' => $this->user->canDo('student_create'), 'schools' => $schools, 'school_id' => $school_id, 'promos' => $promos, 'promo_id' => $promo_id, 'table' => $tableStudents->render()]; $this->render('admin/student', $vars); }