3
* This is a controller. It links the views related to the codeviewer together with the model, which holds
 
 
6
* Function names equals path. Example: codeviewer/show in the url calls the function show in the controller
 
 
7
* codeviewer (this file below).
 
 
9
* The params after the url equals the input arguments of the function. Function show() has 3 arguments
 
 
10
* and therefore requires 3 arguments to be given in the url, like so: codeviewer/show/courseid/exampleid/pageid
 
 
12
class Codeviewer extends CI_Controller {
 
 
15
        * This shows the codeviewer page
 
 
17
        public function show($cid, $category, $subcategory, $example){
 
 
18
                $headTagData['cssFiles'] = array('headTag', 'header', 'codeviewer');
 
 
19
                $headTagData['jsFiles'] = array('ace/ace', 'header');
 
 
21
                $this->load->model('codeviewer/Codeviewer_model');
 
 
23
                $editorHTML = $this->Codeviewer_model->getCode($cid, $category, $subcategory, $example);
 
 
25
                $this->load->model('user');
 
 
28
                        'userType' => $this->user->getUserType(),
 
 
29
                        'userName' => $this->user->getUserName()
 
 
32
                $this->load->helper('form');
 
 
34
                // $doc = $this->Codeviewer_model->getDoc($cid, $category, $subcategory, $example);
 
 
36
                // This loads the view. It's stored in application/views/codeviewer/codeviewer.php
 
 
37
                // Do note that application/views should not be in the first argument of view()
 
 
38
                // The second argument is data to be shown in the view. "editors" => "test" would
 
 
39
                // generate an $editors variable in the view containing "test"
 
 
40
                $this->load->view('headTag', array('headTagData' => $headTagData));
 
 
41
                $this->load->view('header', $userInfo);
 
 
42
                $this->load->view('codeviewer/codeviewer', array("editors" => $editorHTML));