31
function getExamples($cid) {
32
$query = $this->db->get_where('Examples', array("courseID" => $cid));
33
return $query->result();
36
function addExample($cid, $example, $description){
33
$courses = $this->db->get("Courses");
34
foreach ($courses->result() as $course) {
35
$menu[$course->name] = array();
36
$menu[$course->name]['CID'] = $course->courseID;
37
$categories = $this->db->get_where("Categories", array("courseID" => $course->courseID));
39
foreach($categories->result() as $category){
40
$menu[$course->name][$category->categoryName] = array();
42
$subcategories = $this->db->get_where("SubCategories", array("courseID" => $course->courseID, "categoryName" => $category->categoryName));
44
foreach($subcategories->result() as $subcategory){
45
$menu[$course->name][$category->categoryName][$subcategory->subCategoryName] = array();
55
function getCategories($cid) {
56
$query = $this->db->get_where('Categories', array("courseID" => $cid));
57
return $query->result();
60
function addCategory($cid, $categoryName){
61
$this->db->select_max("orderNr");
62
$query = $this->db->get_where('Categories', array("courseID" => $cid));
64
$result = $query->result();
67
'categoryName' => $categoryName,
68
'orderNr' => $result[0]->orderNr+1
71
$this->db->insert('Categories', $data);
72
mkdir("../courses/".$cid."/".$categoryName);
76
function getSubCategories($cid, $categoryName) {
77
$query = $this->db->get_where('SubCategories', array("courseID" => $cid, "categoryName" => $categoryName));
78
return $query->result();
81
function addSubCategory($cid, $categoryName, $subCategoryName){
82
$this->db->select_max("orderNr");
83
$query = $this->db->get_where('SubCategories', array("courseID" => $cid, "categoryName" => $categoryName));
85
$result = $query->result();
88
'subCategoryName' => $subCategoryName,
89
'categoryName' => $categoryName,
90
'orderNr' => $result[0]->orderNr+1
93
$this->db->insert('SubCategories', $data);
94
mkdir("../courses/".$cid."/".$categoryName."/".$subCategoryName);
98
function getExamples($cid, $categoryName, $subCategoryName) {
99
$query = $this->db->get_where('Examples', array("courseID" => $cid, "categoryName" => $categoryName, "subCategoryName" => $subCategoryName));
100
return $query->result();
103
function getQuizzes($cid, $categoryName, $subCategoryName) {
104
$query = $this->db->get_where('Quizzes', array("courseID" => $cid, "categoryName" => $categoryName, "subCategoryName" => $subCategoryName));
105
return $query->result();
108
function addExample($cid, $categoryName, $subCategoryName, $example, $description){
109
$this->db->select_max("orderNr");
110
$query = $this->db->get_where('Examples', array("courseID" => $cid, "categoryName" => $categoryName, "subCategoryName" => $subCategoryName));
111
$result = $query->result();
38
113
'courseID' => $cid ,
39
114
'exampleName' => $example,
40
'description' => $description
115
'description' => $description,
116
'categoryName' => $categoryName,
117
'subCategoryName' => $subCategoryName,
118
'orderNr' => $result[0]->orderNr+1
43
121
$this->db->insert('Examples', $data);
44
mkdir("../courses/".$cid."/".$example);
48
function getPages($cid, $example) {
49
$query = $this->db->get_where('Pages', array("courseID" => $cid, "exampleName" => $example));
50
return $query->result();
53
function addPage($cid, $example, $page){
56
'exampleName' => $example,
60
$this->db->insert('Pages', $data);
61
mkdir("../courses/".$cid."/".$example."/".$page);
64
'fileName' => $cid."/".$example."/".$page."/documentation",
65
'codeLanguage' => $file->lang,
66
'fileType' => $file->type,
124
'fileName' => $cid."/".$categoryName."/".$subCategoryName."/".$example."/documentation",
125
'codeLanguage' => "text",
126
'fileType' => "text",
70
130
$this->db->insert('Files', $data);
73
'fileName' => $cid."/".$example."/".$page."/documentation" ,
133
'fileName' => $cid."/".$categoryName."/".$subCategoryName."/".$example."/documentation",
134
'categoryName' => $categoryName,
135
'subCategoryName' => $subCategoryName,
75
136
'exampleName' => $example,
79
$this->db->insert('PageFiles', $data);
142
$this->db->insert('Containers', $data);
143
mkdir("../courses/".$cid."/".$categoryName."/".$subCategoryName."/".$example);
83
function updatePage($cid, $example, $page, $documentation, $files){
147
function updateExample($cid, $categoryName, $subCategoryName, $example, $documentation, $files){
85
149
$filearr = json_decode($files);
87
151
foreach ($filearr as $file) {
89
$handle = @fopen("../courses/".$cid."/".$example."/".$page."/".$file->filename, "r");
153
$handle = @fopen("../courses/".$cid."/".$categoryName."/".$subCategoryName."/".$example."/".$file->filename, "r");
92
156
while (($buffer = fgets($handle, 4096)) !== false) {
113
177
$this->db->insert('Files', $data);
179
$this->db->select_max("orderNr");
180
$query = $this->db->get_where('Containers', array("courseID" => $cid, "categoryName" => $categoryName, "subCategoryName" => $subCategoryName, "exampleName" => $example, "columnNr" => $file->columnNr));
181
$result = $query->result();
116
'fileName' => $file->filename ,
184
'fileName' => $cid."/".$categoryName."/".$subCategoryName."/".$example."/".$file->filename ,
185
'categoryName' => $categoryName,
186
'subCategoryName' => $subCategoryName,
118
187
'exampleName' => $example,
189
'columnNr' => $file->columnNr,
190
'orderNr' => $result[0]->orderNr+1
122
$this->db->insert('PageFiles', $data);
193
$this->db->insert('Containers', $data);
126
197
'dataBlob' => $documentation
129
$this->db->where("fileName",$cid."/".$example."/".$page."/"."documentation" );
200
$this->db->where("fileName",$cid."/".$categoryName."/".$subCategoryName."/".$example."/documentation");
130
201
$this->db->update('Files', $data);
135
function uploadFile($files, $cid, $example, $page){
136
if(move_uploaded_file($files['tmp_name'], "../courses/".$cid."/".$example."/".$page."/".$files['name'])){
206
function uploadFile($files, $cid, $categoryName, $subCategoryName, $example){
207
if(move_uploaded_file($files['tmp_name'], "../courses/".$cid."/".$categoryName."/".$subCategoryName."/".$example."/".$files['name'])){
137
208
echo json_encode(array('status'=>'File was uploaded successfuly!'));