/lenasys/trunk

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/lenasys/trunk

« back to all changes in this revision

Viewing changes to codeigniter/application/controllers/ManageCourses.php

  • Committer: a11timgu
  • Date: 2013-05-30 08:52:01 UTC
  • mfrom: (125 lenasys_b)
  • mto: This revision was merged to the branch mainline in revision 127.
  • Revision ID: a11timgu@student.his.se-20130530085201-vzvlcuxzljq5m2zh
sdasdawd:

Show diffs side-by-side

added added

removed removed

Lines of Context:
2
2
 
3
3
class ManageCourses extends CI_Controller {
4
4
 
 
5
        /* 
 
6
         * tempLogin and tempLogout are temporary functions to debug user validation functionality
 
7
         * They should be removed when lenasys is complete
 
8
         */
 
9
 
 
10
        public function tempLogin() {
 
11
                $this->load->model('user');
 
12
                $loginDetails = array(
 
13
                        'username' => 'tempTeacher',
 
14
                        'name' => 'tempFoo',
 
15
                        'usertype' => 'Teacher',
 
16
                        'ssn' => '0000');
 
17
                $this->session->set_userdata('authenticated', $loginDetails);
 
18
                redirect('/ManageCourses');
 
19
        }
 
20
 
 
21
        public function tempLogout() {
 
22
                $this->load->model('user');
 
23
                $this->session->unset_userdata('authenticated');
 
24
                redirect('/ManageCourses');
 
25
        }
 
26
 
 
27
 
 
28
        /*
 
29
         *      Manage courses index page
 
30
         *  RESTRICTED-LEVEL: Teacher
 
31
         */
5
32
        public function index()
6
33
        {
 
34
                /* Loads used models */
 
35
                $this->load->model('user');
 
36
                $this->load->model('admin/admin_model');
 
37
 
7
38
                $this->load->library('session');
8
39
                $this->load->helper('form');
9
 
 
10
 
                /* Loads used models */
11
 
                $this->load->model('user');
12
 
                $this->load->model('admin/admin_model');
13
 
                $this->load->model('ExamplesModel');
14
40
                
15
41
                // Arrays
16
42
                $headTagData = array(
17
 
                        'cssFiles' => array('header', 'examplesMenu', 'manageCoursesBody'),
18
 
                        'jsFiles' => array('header', 'examplesMenu', 'examplesBody', 'userControls', 'manageCourses')
 
43
                        'cssFiles' => array('manageCoursesBody', 'popup'),
 
44
                        'jsFiles' => array('examplesBody', 'userControls', 'manageCourses')
19
45
                );
 
46
 
20
47
                $userInfo = array(
21
48
                        'userType' => $this->user->getUserType(), // Loads different header for teacher/student
22
49
                        'userName' => $this->user->getUserName()
23
50
                );
24
 
                $allTitles = array();
25
 
                $allCourses = array();
26
 
                
27
 
                /* Loads categorydata into $allTitles */
28
 
                $query = $this->ExamplesModel->getTitles($userInfo['userName']);
29
 
                foreach ($query as $category)
30
 
                {
31
 
                        // Category
32
 
                        $query2 = $this->ExamplesModel->getBody($category->categoryName);
33
 
                        $allTitles[$category->categoryName.",".$category->courseID] = array();
34
 
                //      $allTitles[$category->categoryName] = array();
35
 
                //      $allTitles[$category->courseID] = array();
36
 
                                                foreach ($query2 as $subCategory)
37
 
                        {
38
 
                                // Subcategory
39
 
                                $query3 = $this->ExamplesModel->getExamples($subCategory->subCategoryName);
40
 
                                $allTitles[$category->categoryName][$subCategory->subCategoryName] = array();
41
 
                                foreach ($query3 as $examples)
42
 
                                {
43
 
                                        //Examples
44
 
                                        $allTitles[$category->categoryName][$subCategory->subCategoryName][] = $examples->exampleName;
45
 
                                }
46
 
 
47
 
                        }
 
51
 
 
52
                // Loads head views, supplying CSS and JS data
 
53
                $this->load->view('headTag', array('headTagData' => $headTagData));
 
54
                //$this->load->view('bannermenu', $userInfo);
 
55
 
 
56
                // Check user login and display message if not logged in
 
57
                if(!$this->user->isLoggedIn() || $this->user->getUserType() != "Teacher") {
 
58
                        $this->load->view('manageCoursesMessage', array('message' => 'You do not have access to this page'));
 
59
                        return;
48
60
                }
49
61
 
50
 
                /* Loads coursedata into $allCourses */
 
62
                // Loads data into $courses
51
63
                $courses = $this->admin_model->getCourses();
52
64
 
53
 
                /* Loads views */
54
 
                $this->load->view('headTag', array('headTagData' => $headTagData));
55
 
                $this->load->view('header', $userInfo);
56
 
                $this->load->view('examplesMenu', array('titles' => $allTitles));       
 
65
                // Loads manageCourses view with $courses
57
66
                $this->load->view('manageCoursesBody', array("courses" => $courses));   
58
67
 
59
68
        }
60
 
        public function add_Course(){
61
 
                // FIXA H�R     
62
 
                if($this->input->post('cid')){
 
69
 
 
70
 
 
71
        /*
 
72
         *      Add course page - handles form submission from index page 
 
73
         *  RESTRICTED-LEVEL: Teacher
 
74
         */
 
75
        public function addCourse(){
 
76
                $this->load->model('user');
 
77
 
 
78
                // User has to be logged in and usertype has to be Tea
 
79
                if(!$this->user->isLoggedIn() || $this->user->getUserType() != "Teacher") {
 
80
                        $this->load->view('manageCoursesMessage', array('message' => 'You do not have access to this page'));
 
81
                        return;
 
82
                }
 
83
 
 
84
                if($this->input->post('addCourseID')){
63
85
                        $this->load->model('admin/admin_model');
64
 
                        $this->admin_model->addCourse($_POST['cid'], $_POST['name'], $_POST['courseData']);
 
86
                        $this->admin_model->addCourse($this->input->post("addCourseID"), $this->input->post("addCourseName"), $this->input->post("addCourseData"));
65
87
                        redirect("/ManageCourses");
66
88
                }
67
89
                else{
68
90
                        redirect("/ManageCourses");
69
91
                }
 
92
        }       
 
93
 
 
94
        /*
 
95
         *      Edit course page - handles form submission from index page 
 
96
         *  RESTRICTED-LEVEL: Teacher
 
97
         */
 
98
        function editCourse() {
 
99
                $this->load->model('user');
 
100
                // User has to be logged in and usertype has to be Teacher
 
101
                if(!$this->user->isLoggedIn() || $this->user->getUserType() != "Teacher") {
 
102
                        $this->load->view('manageCoursesMessage', array('message' => 'You do not have access to this page'));
 
103
                        return;
 
104
                }
 
105
 
 
106
                if($this->input->post('editCourseID')) {
 
107
                        $this->load->model('admin/admin_model');
 
108
                        $this->admin_model->editCourse($this->input->post('editCourseID'), $this->input->post('editCourseName'), $this->input->post('editCourseData'));
 
109
                        redirect('/ManageCourses');
 
110
                } else {
 
111
                        echo "Something went wrong";
 
112
                }
70
113
        }
71
114
        
72
115
        public function validate() {
93
136
                        }
94
137
                }
95
138
        }
 
139
 
 
140
        public function manageCourse($cid) {
 
141
                $cid = urldecode($cid);
 
142
                $this->load->model('admin/Admin_model');
 
143
                $categories = $this->Admin_model->getCategories($cid);
 
144
                $this->load->view('admin/header', array("title" => "Manage course - ".$cid));
 
145
                $menu = $this->Admin_model->getMenu();
 
146
                $this->load->view('admin/menu', array("menu" => $menu));
 
147
                $this->load->view('admin/manage_course', array("categories" => $categories, "cid" => $cid));
 
148
        }
96
149
        
97
150
}
98
151