Skip to content
Snippets Groups Projects
AdmTeachers.php 5.35 KiB
Newer Older
<?php defined('SYSPATH') or die('No direct script access.');

class Controller_Handler_AdmTeachers extends Controller_Handler {
        
        public function before() {
                    // ->rule('firstName', 'alpha_dash', array(':value', TRUE))
                    // ->rule('secondName', 'alpha_dash', array(':value', TRUE))
                    // ->rule('lastName', 'alpha_dash', array(':value', TRUE))
                    ->rule('jobPositionID', 'not_empty')
                    ->rule('jobPositionID', 'digit')
                    ->rule('departmentID', 'not_empty')
                    ->rule('departmentID', 'digit');
            if($this->post->offsetGet('jobPositionID') == 0)
            {
                $this->post->error('jobPositionID', 'not_empty');
                $response['success'] = false;
            }
            if($this->post->offsetGet('departmentID') == 0)
            {
                $this->post->error('departmentID', 'not_empty');
                $response['success'] = false;
            }
            if($this->post->check())
            {
                        $this->post->offsetGet('lastName'),
                        $this->post->offsetGet('firstName'),
                        $this->post->offsetGet('secondName'),
                        $this->post->offsetGet('jobPositionID'),
                        $this->post->offsetGet('departmentID'));
                if($code != -1)
                {
                    $response['success'] = true;
                    $response['messages'][1] = 'Всё ОК! Вот код активации: '.$code;
                }
                else {
                    $response['success'] = false;
                    $response['messages'][1] = 'Неверные входные данные.';
                }
            }
            else
            {
                $response['success'] = false;
                $response['messages'] = $this->post->errors();
            }
            $this->response->body(json_encode($response));
        }
        
        protected function _createTeacher($firstName, $secondName, $lastName, $degreeID, $departamentID)
        {
            $activationCode = Account::instance()->createTeacher($firstName, $secondName, $lastName, $degreeID, $departamentID);
            return $activationCode;
        }
        
        public function action_getTeachersList()
        {
            $departmentID = $this->post->offsetGet('departmentID');
            $facultyID = $this->post->offsetGet('facultyID');
            $teachersHandled = array();
            if($departmentID != 0)
            {
                $teachers = $this->model->getTeachersByDepartment($departmentID);
                $i = 0;
                foreach($teachers as $row)
                {
                    $i++;
                    $teachersHandled[$i]['ID'] = $row['TeacherID'];
                    $teachersHandled[$i]['FirstName'] = $row['TeacherFirst'];
                    $teachersHandled[$i]['SecondName'] = $row['TeacherSecond'];
                    $teachersHandled[$i]['LastName'] = $row['TeacherLast'];
                    $teachersHandled[$i]['JobPositionName'] = $row['JobPositionName'];
                    $teachersHandled[$i]['DepartmentName'] = $row['DepName'];
                }
                
            }
            elseif($facultyID != 0)
            {
                $teachers = $this->model->getTeachersByFaculty($facultyID);
                $i = 0;
                foreach($teachers as $row)
                {
                    $i++;
                    $teachersHandled[$i]['ID'] = $row['TeacherID'];
                    $teachersHandled[$i]['FirstName'] = $row['TeacherFirst'];
                    $teachersHandled[$i]['SecondName'] = $row['TeacherSecond'];
                    $teachersHandled[$i]['LastName'] = $row['TeacherLast'];
                    $teachersHandled[$i]['JobPositionName'] = $row['JobPositionName'];
                    $teachersHandled[$i]['DepartmentID'] = $row['DepID'];
                    $teachersHandled[$i]['DepartmentName'] = $row['DepName'];
                }                
            }
            $twig = Twig::factory('admin/teachers/handler/listOutput');
            $twig->List = $teachersHandled;
            $this->response->body($twig);
        }
        
        public function action_getDepartmentsList()
        {
            $facultyID = $this->post->offsetGet('facultyID');
            if($facultyID != 0)
            {
                $departaments = $this->model->getDepartmentsByFaculty($facultyID);
                $departamentsHandled = array(); $i = 0;
                foreach($departaments as $row)
                {
                    $i++;
                    $departamentsHandled[$i]['ID'] = $row['DepID'];
                    $departamentsHandled[$i]['Name'] = $row['DepName'];
                }
                $this->response->body(json_encode($departamentsHandled));
            }
        }