Completed
Push — 1.10.x ( 320abc...039d05 )
by José
151:51 queued 109:10
created
main/inc/ajax/course_home.ajax.php 1 patch
Indentation   +21 added lines, -21 removed lines patch added patch discarded remove patch
@@ -63,12 +63,12 @@  discard block
 block discarded – undo
63 63
             echo json_encode($response_data);
64 64
         }
65 65
         break;
66
-	case 'show_course_information' :
67
-		require_once '../global.inc.php';
66
+    case 'show_course_information' :
67
+        require_once '../global.inc.php';
68 68
 
69
-		// Get the name of the database course.
70
-		$tbl_course_description = Database::get_course_table(TABLE_COURSE_DESCRIPTION);
71
-		$course_info = api_get_course_info($_GET['code']);
69
+        // Get the name of the database course.
70
+        $tbl_course_description = Database::get_course_table(TABLE_COURSE_DESCRIPTION);
71
+        $course_info = api_get_course_info($_GET['code']);
72 72
 
73 73
         if (
74 74
             api_get_setting('course_catalog_hide_private') === 'true' &&
@@ -78,24 +78,24 @@  discard block
 block discarded – undo
78 78
             break;
79 79
         }
80 80
 
81
-		$sql = "SELECT * FROM $tbl_course_description
81
+        $sql = "SELECT * FROM $tbl_course_description
82 82
 		        WHERE c_id = ".$course_info['real_id']." AND session_id = 0
83 83
 		        ORDER BY id";
84
-		$result = Database::query($sql);
85
-		if (Database::num_rows($result) > 0 ) {
86
-		    while ($description = Database::fetch_object($result)) {
87
-			    $descriptions[$description->id] = $description;
88
-		    }
84
+        $result = Database::query($sql);
85
+        if (Database::num_rows($result) > 0 ) {
86
+            while ($description = Database::fetch_object($result)) {
87
+                $descriptions[$description->id] = $description;
88
+            }
89 89
             // Function that displays the details of the course description in html.
90
-		    echo CourseManager::get_details_course_description_html(
90
+            echo CourseManager::get_details_course_description_html(
91 91
                 $descriptions,
92 92
                 api_get_system_encoding(),
93 93
                 false
94 94
             );
95
-		} else {
96
-		    echo get_lang('NoDescription');
97
-		}
98
-	    break;
95
+        } else {
96
+            echo get_lang('NoDescription');
97
+        }
98
+        break;
99 99
     case 'session_courses_lp_default':
100 100
         /**
101 101
          * @todo this functions need to belong to a class or a special
@@ -110,7 +110,7 @@  discard block
 block discarded – undo
110 110
         $sidx  = isset($_REQUEST['sidx']) && !empty($_REQUEST['sidx']) ? $_REQUEST['sidx'] : 'id';
111 111
         $sord  = $_REQUEST['sord'];    //asc or desc
112 112
         if (!in_array($sord, array('asc','desc'))) {
113
-        	$sord = 'desc';
113
+            $sord = 'desc';
114 114
         }
115 115
         $session_id  = intval($_REQUEST['session_id']);
116 116
         $course_id   = intval($_REQUEST['course_id']);
@@ -124,7 +124,7 @@  discard block
 block discarded – undo
124 124
                     $my_session_list[] = $item['id_session'];
125 125
             }
126 126
             if (!in_array($session_id, $my_session_list)) {
127
-            	break;
127
+                break;
128 128
             }
129 129
         }
130 130
 
@@ -445,7 +445,7 @@  discard block
 block discarded – undo
445 445
                     $date = '-';
446 446
                 }
447 447
 
448
-                 //Checking LP publicated and expired_on dates
448
+                    //Checking LP publicated and expired_on dates
449 449
                 if (!empty($lp_item['publicated_on']) && $lp_item['publicated_on'] != '0000-00-00 00:00:00') {
450 450
                     if ($now < api_strtotime($lp_item['publicated_on'], 'UTC')) {
451 451
                         continue;
@@ -499,7 +499,7 @@  discard block
 block discarded – undo
499 499
 
500 500
         echo json_encode($response);
501 501
         break;
502
-	default:
503
-		echo '';
502
+    default:
503
+        echo '';
504 504
 }
505 505
 exit;
Please login to merge, or discard this patch.
main/exercice/hotspot.class.php 1 patch
Indentation   +99 added lines, -99 removed lines patch added patch discarded remove patch
@@ -12,31 +12,31 @@  discard block
 block discarded – undo
12 12
  **/
13 13
 class HotSpot extends Question
14 14
 {
15
-	public static $typePicture = 'hotspot.png';
16
-	public static $explanationLangVar = 'HotSpot';
15
+    public static $typePicture = 'hotspot.png';
16
+    public static $explanationLangVar = 'HotSpot';
17 17
 
18 18
     /**
19 19
      * HotSpot constructor.
20 20
      */
21
-	public function __construct()
22
-	{
23
-		parent::__construct();
24
-		$this -> type = HOT_SPOT;
25
-	}
26
-
27
-	public function display()
28
-	{
29
-	}
30
-
31
-	/**
32
-	 * @param FormValidator $form
33
-	 * @param int $fck_config
34
-	 */
35
-	public function createForm (&$form, $fck_config=0)
36
-	{
37
-		parent::createForm($form, $fck_config);
38
-
39
-		if (!isset($_GET['editQuestion'])) {
21
+    public function __construct()
22
+    {
23
+        parent::__construct();
24
+        $this -> type = HOT_SPOT;
25
+    }
26
+
27
+    public function display()
28
+    {
29
+    }
30
+
31
+    /**
32
+     * @param FormValidator $form
33
+     * @param int $fck_config
34
+     */
35
+    public function createForm (&$form, $fck_config=0)
36
+    {
37
+        parent::createForm($form, $fck_config);
38
+
39
+        if (!isset($_GET['editQuestion'])) {
40 40
             $form->addElement(
41 41
                 'file',
42 42
                 'imageUpload',
@@ -46,54 +46,54 @@  discard block
 block discarded – undo
46 46
                 )
47 47
             );
48 48
 
49
-			// setting the save button here and not in the question class.php
50
-			// Saving a question
51
-			$form->addButtonSave(get_lang('GoToQuestion'), 'submitQuestion');
52
-			//$form->addButtonSave(get_lang('GoToQuestion'), 'submitQuestion');
53
-			$form->addRule('imageUpload', get_lang('OnlyImagesAllowed'), 'filetype', array ('jpg', 'jpeg', 'png', 'gif'));
54
-			$form->addRule('imageUpload', get_lang('NoImage'), 'uploadedfile');
55
-		} else {
56
-			// setting the save button here and not in the question class.php
57
-			// Editing a question
58
-			$form->addButtonUpdate(get_lang('ModifyExercise'), 'submitQuestion');
59
-		}
60
-	}
61
-
62
-	/**
63
-	 * @param FormValidator $form
64
-	 * @param null $objExercise
65
-	 * @return null|false
66
-	 */
67
-	public function processCreation($form, $objExercise = null)
68
-	{
69
-		$file_info = $form->getSubmitValue('imageUpload');
70
-		$_course = api_get_course_info();
71
-		parent::processCreation($form, $objExercise);
72
-
73
-		if(!empty($file_info['tmp_name'])) {
74
-			$this->uploadPicture($file_info['tmp_name'], $file_info['name']);
75
-			$documentPath  = api_get_path(SYS_COURSE_PATH).$_course['path'].'/document';
76
-			$picturePath   = $documentPath.'/images';
77
-
78
-			// fixed width ang height
79
-			if (file_exists($picturePath.'/'.$this->picture)) {
80
-				$this->resizePicture('width', 800);
81
-				$this->save();
82
-			} else {
83
-				return false;
84
-			}
85
-		}
86
-	}
87
-
88
-	function createAnswersForm($form)
89
-	{
90
-		// nothing
91
-	}
92
-
93
-	function processAnswersCreation($form)
94
-	{
95
-		// nothing
96
-	}
49
+            // setting the save button here and not in the question class.php
50
+            // Saving a question
51
+            $form->addButtonSave(get_lang('GoToQuestion'), 'submitQuestion');
52
+            //$form->addButtonSave(get_lang('GoToQuestion'), 'submitQuestion');
53
+            $form->addRule('imageUpload', get_lang('OnlyImagesAllowed'), 'filetype', array ('jpg', 'jpeg', 'png', 'gif'));
54
+            $form->addRule('imageUpload', get_lang('NoImage'), 'uploadedfile');
55
+        } else {
56
+            // setting the save button here and not in the question class.php
57
+            // Editing a question
58
+            $form->addButtonUpdate(get_lang('ModifyExercise'), 'submitQuestion');
59
+        }
60
+    }
61
+
62
+    /**
63
+     * @param FormValidator $form
64
+     * @param null $objExercise
65
+     * @return null|false
66
+     */
67
+    public function processCreation($form, $objExercise = null)
68
+    {
69
+        $file_info = $form->getSubmitValue('imageUpload');
70
+        $_course = api_get_course_info();
71
+        parent::processCreation($form, $objExercise);
72
+
73
+        if(!empty($file_info['tmp_name'])) {
74
+            $this->uploadPicture($file_info['tmp_name'], $file_info['name']);
75
+            $documentPath  = api_get_path(SYS_COURSE_PATH).$_course['path'].'/document';
76
+            $picturePath   = $documentPath.'/images';
77
+
78
+            // fixed width ang height
79
+            if (file_exists($picturePath.'/'.$this->picture)) {
80
+                $this->resizePicture('width', 800);
81
+                $this->save();
82
+            } else {
83
+                return false;
84
+            }
85
+        }
86
+    }
87
+
88
+    function createAnswersForm($form)
89
+    {
90
+        // nothing
91
+    }
92
+
93
+    function processAnswersCreation($form)
94
+    {
95
+        // nothing
96
+    }
97 97
 }
98 98
 
99 99
 /**
@@ -101,35 +101,35 @@  discard block
 block discarded – undo
101 101
  */
102 102
 class HotSpotDelineation extends HotSpot
103 103
 {
104
-	static $typePicture = 'hotspot-delineation.png';
105
-	static $explanationLangVar = 'HotspotDelineation';
106
-
107
-	function __construct()
108
-	{
109
-		parent::__construct();
110
-		$this -> type = HOT_SPOT_DELINEATION;
111
-
112
-	}
113
-
114
-	function createForm (&$form, $fck_config=0)
115
-	{
116
-		parent::createForm ($form, $fck_config);
117
-	}
118
-
119
-	function processCreation ($form, $objExercise = null)
120
-	{
121
-		$file_info = $form -> getSubmitValue('imageUpload');
122
-		parent::processCreation ($form, $objExercise);
123
-	}
124
-
125
-	function createAnswersForm ($form)
126
-	{
127
-		parent::createAnswersForm ($form);
128
-	}
129
-
130
-	function processAnswersCreation ($form)
131
-	{
132
-		parent::processAnswersCreation ($form);
133
-	}
104
+    static $typePicture = 'hotspot-delineation.png';
105
+    static $explanationLangVar = 'HotspotDelineation';
106
+
107
+    function __construct()
108
+    {
109
+        parent::__construct();
110
+        $this -> type = HOT_SPOT_DELINEATION;
111
+
112
+    }
113
+
114
+    function createForm (&$form, $fck_config=0)
115
+    {
116
+        parent::createForm ($form, $fck_config);
117
+    }
118
+
119
+    function processCreation ($form, $objExercise = null)
120
+    {
121
+        $file_info = $form -> getSubmitValue('imageUpload');
122
+        parent::processCreation ($form, $objExercise);
123
+    }
124
+
125
+    function createAnswersForm ($form)
126
+    {
127
+        parent::createAnswersForm ($form);
128
+    }
129
+
130
+    function processAnswersCreation ($form)
131
+    {
132
+        parent::processAnswersCreation ($form);
133
+    }
134 134
 }
135 135
 
Please login to merge, or discard this patch.
main/exercice/hotpotatoes_exercise_result.class.php 1 patch
Indentation   +137 added lines, -137 removed lines patch added patch discarded remove patch
@@ -14,15 +14,15 @@  discard block
 block discarded – undo
14 14
     //stores the results
15 15
     private $results = array();
16 16
 
17
-	/**
18
-	 * Gets the results of all students (or just one student if access is limited)
19
-	 * @param	string		The document path (for HotPotatoes retrieval)
20
-	 * @param	integer		User ID. Optional. If no user ID is provided, we take all the results. Defauts to null
21
-	 * @param string $document_path
22
-	 */
23
-	public function getExercisesReporting($document_path, $hotpotato_name)
17
+    /**
18
+     * Gets the results of all students (or just one student if access is limited)
19
+     * @param	string		The document path (for HotPotatoes retrieval)
20
+     * @param	integer		User ID. Optional. If no user ID is provided, we take all the results. Defauts to null
21
+     * @param string $document_path
22
+     */
23
+    public function getExercisesReporting($document_path, $hotpotato_name)
24 24
     {
25
-		$return = array();
25
+        $return = array();
26 26
         $TBL_USER = Database::get_main_table(TABLE_MAIN_USER);
27 27
         $TBL_TRACK_HOTPOTATOES	= Database::get_main_table(TABLE_STATISTIC_TRACK_E_HOTPOTATOES);
28 28
 
@@ -34,7 +34,7 @@  discard block
 block discarded – undo
34 34
         $hotpotato_name  = Database::escape_string($hotpotato_name);
35 35
 
36 36
         if (!empty($exercise_id)) {
37
-          $session_id_and .= " AND exe_exo_id = $exercise_id ";
37
+            $session_id_and .= " AND exe_exo_id = $exercise_id ";
38 38
         }
39 39
 
40 40
         if (empty($user_id)) {
@@ -111,25 +111,25 @@  discard block
 block discarded – undo
111 111
         $this->results = $return;
112 112
 
113 113
         return true;
114
-	}
114
+    }
115 115
 
116 116
 
117
-	/**
118
-	 * Exports the complete report as a CSV file
119
-	 * @param	string		Document path inside the document tool
120
-	 * @param	integer		Optional user ID
121
-	 * @param	boolean		Whether to include user fields or not
122
-	 * @return	boolean		False on error
123
-	 */
124
-	public function exportCompleteReportCSV($document_path = '', $hotpotato_name)
117
+    /**
118
+     * Exports the complete report as a CSV file
119
+     * @param	string		Document path inside the document tool
120
+     * @param	integer		Optional user ID
121
+     * @param	boolean		Whether to include user fields or not
122
+     * @return	boolean		False on error
123
+     */
124
+    public function exportCompleteReportCSV($document_path = '', $hotpotato_name)
125 125
     {
126
-		global $charset;
127
-		$this->getExercisesReporting($document_path, $hotpotato_name);
128
-		$filename = 'exercise_results_'.date('YmdGis').'.csv';
129
-		if (!empty($user_id)) {
130
-			$filename = 'exercise_results_user_'.$user_id.'_'.date('YmdGis').'.csv';
131
-		}
132
-		$data = '';
126
+        global $charset;
127
+        $this->getExercisesReporting($document_path, $hotpotato_name);
128
+        $filename = 'exercise_results_'.date('YmdGis').'.csv';
129
+        if (!empty($user_id)) {
130
+            $filename = 'exercise_results_user_'.$user_id.'_'.date('YmdGis').'.csv';
131
+        }
132
+        $data = '';
133 133
 
134 134
         if (api_is_western_name_order()) {
135 135
             if(!empty($this->results[0]['first_name'])) {
@@ -148,7 +148,7 @@  discard block
 block discarded – undo
148 148
         }
149 149
         $data .= get_lang('Email').';';
150 150
 
151
-		/*if ($export_user_fields) {
151
+        /*if ($export_user_fields) {
152 152
 			//show user fields section with a big th colspan that spans over all fields
153 153
 			$extra_user_fields = UserManager::get_extra_fields(0,1000,5,'ASC',false, 1);
154 154
 			$num = count($extra_user_fields);
@@ -157,25 +157,25 @@  discard block
 block discarded – undo
157 157
 			}
158 158
 		}*/
159 159
 
160
-		$data .= get_lang('Title').';';
161
-		$data .= get_lang('StartDate').';';
162
-		$data .= get_lang('Score').';';
163
-		$data .= get_lang('Total').';';
164
-		$data .= "\n";
160
+        $data .= get_lang('Title').';';
161
+        $data .= get_lang('StartDate').';';
162
+        $data .= get_lang('Score').';';
163
+        $data .= get_lang('Total').';';
164
+        $data .= "\n";
165 165
 
166
-		//results
167
-		foreach($this->results as $row) {
166
+        //results
167
+        foreach($this->results as $row) {
168 168
             if (api_is_western_name_order()) {
169
-              $data .= str_replace("\r\n",'  ',api_html_entity_decode(strip_tags($row['first_name']), ENT_QUOTES, $charset)).';';
170
-              $data .= str_replace("\r\n",'  ',api_html_entity_decode(strip_tags($row['last_name']), ENT_QUOTES, $charset)).';';
169
+                $data .= str_replace("\r\n",'  ',api_html_entity_decode(strip_tags($row['first_name']), ENT_QUOTES, $charset)).';';
170
+                $data .= str_replace("\r\n",'  ',api_html_entity_decode(strip_tags($row['last_name']), ENT_QUOTES, $charset)).';';
171 171
             } else {
172
-              $data .= str_replace("\r\n",'  ',api_html_entity_decode(strip_tags($row['last_name']), ENT_QUOTES, $charset)).';';
173
-              $data .= str_replace("\r\n",'  ',api_html_entity_decode(strip_tags($row['first_name']), ENT_QUOTES, $charset)).';';
172
+                $data .= str_replace("\r\n",'  ',api_html_entity_decode(strip_tags($row['last_name']), ENT_QUOTES, $charset)).';';
173
+                $data .= str_replace("\r\n",'  ',api_html_entity_decode(strip_tags($row['first_name']), ENT_QUOTES, $charset)).';';
174 174
             }
175 175
 
176 176
             $data .= str_replace("\r\n",'  ',api_html_entity_decode(strip_tags($row['email']), ENT_QUOTES, $charset)).';';
177 177
 
178
-			/*if ($export_user_fields) {
178
+            /*if ($export_user_fields) {
179 179
 				//show user fields data, if any, for this user
180 180
 				$user_fields_values = UserManager::get_extra_user_data($row['user_id'],false,false, false, true);
181 181
 				foreach($user_fields_values as $value) {
@@ -183,40 +183,40 @@  discard block
 block discarded – undo
183 183
 				}
184 184
 			}*/
185 185
 
186
-			$data .= str_replace("\r\n",'  ',api_html_entity_decode(strip_tags($row['title']), ENT_QUOTES, $charset)).';';
187
-			$data .= str_replace("\r\n",'  ',$row['exe_date']).';';
188
-			$data .= str_replace("\r\n",'  ',$row['result']).';';
189
-			$data .= str_replace("\r\n",'  ',$row['max']).';';
190
-			$data .= "\n";
191
-		}
192
-
193
-		//output the results
194
-		$len = strlen($data);
195
-		header('Content-type: application/octet-stream');
196
-		header('Content-Type: application/force-download');
197
-		header('Content-length: '.$len);
198
-		if (preg_match("/MSIE 5.5/", $_SERVER['HTTP_USER_AGENT'])) {
199
-			header('Content-Disposition: filename= '.$filename);
200
-		} else {
201
-			header('Content-Disposition: attachment; filename= '.$filename);
202
-		}
203
-		if (strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE')) {
204
-			header('Pragma: ');
205
-			header('Cache-Control: ');
206
-			header('Cache-Control: public'); // IE cannot download from sessions without a cache
207
-		}
208
-		header('Content-Description: '.$filename);
209
-		header('Content-transfer-encoding: binary');
210
-		// @todo add this utf-8 header for all csv files
211
-		echo "\xEF\xBB\xBF";  // force utf-8 header of csv file
212
-		echo $data;
213
-		return true;
214
-	}
215
-
216
-	/**
217
-	 * Exports the complete report as an XLS file
218
-	 * @return	boolean		False on error
219
-	 */
186
+            $data .= str_replace("\r\n",'  ',api_html_entity_decode(strip_tags($row['title']), ENT_QUOTES, $charset)).';';
187
+            $data .= str_replace("\r\n",'  ',$row['exe_date']).';';
188
+            $data .= str_replace("\r\n",'  ',$row['result']).';';
189
+            $data .= str_replace("\r\n",'  ',$row['max']).';';
190
+            $data .= "\n";
191
+        }
192
+
193
+        //output the results
194
+        $len = strlen($data);
195
+        header('Content-type: application/octet-stream');
196
+        header('Content-Type: application/force-download');
197
+        header('Content-length: '.$len);
198
+        if (preg_match("/MSIE 5.5/", $_SERVER['HTTP_USER_AGENT'])) {
199
+            header('Content-Disposition: filename= '.$filename);
200
+        } else {
201
+            header('Content-Disposition: attachment; filename= '.$filename);
202
+        }
203
+        if (strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE')) {
204
+            header('Pragma: ');
205
+            header('Cache-Control: ');
206
+            header('Cache-Control: public'); // IE cannot download from sessions without a cache
207
+        }
208
+        header('Content-Description: '.$filename);
209
+        header('Content-transfer-encoding: binary');
210
+        // @todo add this utf-8 header for all csv files
211
+        echo "\xEF\xBB\xBF";  // force utf-8 header of csv file
212
+        echo $data;
213
+        return true;
214
+    }
215
+
216
+    /**
217
+     * Exports the complete report as an XLS file
218
+     * @return	boolean		False on error
219
+     */
220 220
     public function exportCompleteReportXLS(
221 221
         $document_path = '',
222 222
         $user_id = null,
@@ -225,37 +225,37 @@  discard block
 block discarded – undo
225 225
         $exercise_id = 0,
226 226
         $hotpotato_name = null
227 227
     ) {
228
-		global $charset;
229
-		$this->getExercisesReporting($document_path, $user_id, $export_filter, $exercise_id, $hotpotato_name);
230
-		$filename = 'exercise_results_'.api_get_local_time().'.xls';
231
-		if (!empty($user_id)) {
232
-			$filename = 'exercise_results_user_'.$user_id.'_'.api_get_local_time().'.xls';
233
-		}
228
+        global $charset;
229
+        $this->getExercisesReporting($document_path, $user_id, $export_filter, $exercise_id, $hotpotato_name);
230
+        $filename = 'exercise_results_'.api_get_local_time().'.xls';
231
+        if (!empty($user_id)) {
232
+            $filename = 'exercise_results_user_'.$user_id.'_'.api_get_local_time().'.xls';
233
+        }
234 234
 
235 235
         $spreadsheet = new PHPExcel();
236 236
         $spreadsheet->setActiveSheetIndex(0);
237 237
         $worksheet = $spreadsheet->getActiveSheet();
238 238
 
239 239
 
240
-		$line = 0;
241
-		$column = 0; //skip the first column (row titles)
240
+        $line = 0;
241
+        $column = 0; //skip the first column (row titles)
242 242
 
243
-		// check if exists column 'user'
244
-		$with_column_user = false;
245
-		foreach ($this->results as $result) {
246
-			if (!empty($result['last_name']) && !empty($result['first_name'])) {
247
-				$with_column_user = true;
248
-				break;
249
-			}
250
-		}
243
+        // check if exists column 'user'
244
+        $with_column_user = false;
245
+        foreach ($this->results as $result) {
246
+            if (!empty($result['last_name']) && !empty($result['first_name'])) {
247
+                $with_column_user = true;
248
+                break;
249
+            }
250
+        }
251 251
 
252
-		if ($with_column_user) {
253
-		    $worksheet->SetCellValueByColumnAndRow($line,$column,get_lang('Email'));
254
-		    $column++;
252
+        if ($with_column_user) {
253
+            $worksheet->SetCellValueByColumnAndRow($line,$column,get_lang('Email'));
254
+            $column++;
255 255
 
256 256
             if (api_is_western_name_order()) {
257
-    			$worksheet->SetCellValueByColumnAndRow($line,$column,get_lang('FirstName'));
258
-    			$column++;
257
+                $worksheet->SetCellValueByColumnAndRow($line,$column,get_lang('FirstName'));
258
+                $column++;
259 259
                 $worksheet->SetCellValueByColumnAndRow($line,$column,get_lang('LastName'));
260 260
                 $column++;
261 261
             } else {
@@ -264,36 +264,36 @@  discard block
 block discarded – undo
264 264
                 $worksheet->SetCellValueByColumnAndRow($line,$column,get_lang('FirstName'));
265 265
                 $column++;
266 266
             }
267
-		}
267
+        }
268 268
 
269
-		if ($export_user_fields) {
270
-			//show user fields section with a big th colspan that spans over all fields
271
-			$extra_user_fields = UserManager::get_extra_fields(0,1000,5,'ASC',false, 1);
269
+        if ($export_user_fields) {
270
+            //show user fields section with a big th colspan that spans over all fields
271
+            $extra_user_fields = UserManager::get_extra_fields(0,1000,5,'ASC',false, 1);
272 272
 
273
-			//show the fields names for user fields
274
-			foreach ($extra_user_fields as $field) {
275
-				$worksheet->SetCellValueByColumnAndRow($line, $column, api_html_entity_decode(strip_tags($field[3]), ENT_QUOTES, $charset));
276
-				$column++;
277
-			}
278
-		}
273
+            //show the fields names for user fields
274
+            foreach ($extra_user_fields as $field) {
275
+                $worksheet->SetCellValueByColumnAndRow($line, $column, api_html_entity_decode(strip_tags($field[3]), ENT_QUOTES, $charset));
276
+                $column++;
277
+            }
278
+        }
279 279
 
280
-		$worksheet->SetCellValueByColumnAndRow($line,$column, get_lang('Title'));
281
-		$column++;
282
-		$worksheet->SetCellValueByColumnAndRow($line,$column, get_lang('StartDate'));
280
+        $worksheet->SetCellValueByColumnAndRow($line,$column, get_lang('Title'));
281
+        $column++;
282
+        $worksheet->SetCellValueByColumnAndRow($line,$column, get_lang('StartDate'));
283 283
         $column++;
284 284
         $worksheet->SetCellValueByColumnAndRow($line,$column, get_lang('EndDate'));
285 285
         $column++;
286 286
         $worksheet->SetCellValueByColumnAndRow($line,$column, get_lang('Duration').' ('.get_lang('MinMinutes').')');
287
-		$column++;
288
-		$worksheet->SetCellValueByColumnAndRow($line,$column, get_lang('Score'));
289
-		$column++;
290
-		$worksheet->SetCellValueByColumnAndRow($line,$column, get_lang('Total'));
291
-		$column++;
287
+        $column++;
288
+        $worksheet->SetCellValueByColumnAndRow($line,$column, get_lang('Score'));
289
+        $column++;
290
+        $worksheet->SetCellValueByColumnAndRow($line,$column, get_lang('Total'));
291
+        $column++;
292 292
         $worksheet->SetCellValueByColumnAndRow($line,$column, get_lang('Status'));
293
-		$line++;
293
+        $line++;
294 294
 
295
-		foreach ($this->results as $row) {
296
-			$column = 0;
295
+        foreach ($this->results as $row) {
296
+            $column = 0;
297 297
 
298 298
             if ($with_column_user) {
299 299
                 $worksheet->SetCellValueByColumnAndRow($line,$column,api_html_entity_decode(strip_tags($row['email']), ENT_QUOTES, $charset));
@@ -310,38 +310,38 @@  discard block
 block discarded – undo
310 310
                     $worksheet->SetCellValueByColumnAndRow($line,$column,api_html_entity_decode(strip_tags($row['first_name']), ENT_QUOTES, $charset));
311 311
                     $column++;
312 312
                 }
313
-			}
313
+            }
314 314
 
315
-			if ($export_user_fields) {
316
-				//show user fields data, if any, for this user
317
-				$user_fields_values = UserManager::get_extra_user_data($row['user_id'],false,false, false, true);
318
-				foreach($user_fields_values as $value) {
319
-					$worksheet->SetCellValueByColumnAndRow($line,$column, api_html_entity_decode(strip_tags($value), ENT_QUOTES, $charset));
320
-					$column++;
321
-				}
322
-			}
315
+            if ($export_user_fields) {
316
+                //show user fields data, if any, for this user
317
+                $user_fields_values = UserManager::get_extra_user_data($row['user_id'],false,false, false, true);
318
+                foreach($user_fields_values as $value) {
319
+                    $worksheet->SetCellValueByColumnAndRow($line,$column, api_html_entity_decode(strip_tags($value), ENT_QUOTES, $charset));
320
+                    $column++;
321
+                }
322
+            }
323 323
 
324
-			$worksheet->SetCellValueByColumnAndRow($line,$column,api_html_entity_decode(strip_tags($row['title']), ENT_QUOTES, $charset));
325
-			$column++;
326
-			$worksheet->SetCellValueByColumnAndRow($line,$column,$row['start_date']);
324
+            $worksheet->SetCellValueByColumnAndRow($line,$column,api_html_entity_decode(strip_tags($row['title']), ENT_QUOTES, $charset));
325
+            $column++;
326
+            $worksheet->SetCellValueByColumnAndRow($line,$column,$row['start_date']);
327 327
             $column++;
328
-			$worksheet->SetCellValueByColumnAndRow($line,$column,$row['end_date']);
328
+            $worksheet->SetCellValueByColumnAndRow($line,$column,$row['end_date']);
329
+            $column++;
330
+            $worksheet->SetCellValueByColumnAndRow($line,$column,$row['duration']);
331
+            $column++;
332
+            $worksheet->SetCellValueByColumnAndRow($line,$column,$row['result']);
333
+            $column++;
334
+            $worksheet->SetCellValueByColumnAndRow($line,$column,$row['max']);
329 335
             $column++;
330
-			$worksheet->SetCellValueByColumnAndRow($line,$column,$row['duration']);
331
-			$column++;
332
-			$worksheet->SetCellValueByColumnAndRow($line,$column,$row['result']);
333
-			$column++;
334
-			$worksheet->SetCellValueByColumnAndRow($line,$column,$row['max']);
335
-			$column++;
336 336
             $worksheet->SetCellValueByColumnAndRow($line,$column,$row['status']);
337
-			$line++;
338
-		}
337
+            $line++;
338
+        }
339 339
 
340 340
         $file = api_get_path(SYS_ARCHIVE_PATH).api_replace_dangerous_char($filename);
341 341
         $writer = new PHPExcel_Writer_Excel2007($spreadsheet);
342 342
         $writer->save($file);
343 343
         DocumentManager::file_send_for_download($file, true, $filename);
344 344
 
345
-		return true;
346
-	}
345
+        return true;
346
+    }
347 347
 }
Please login to merge, or discard this patch.
main/exercice/addlimits.php 1 patch
Indentation   +21 added lines, -21 removed lines patch added patch discarded remove patch
@@ -54,11 +54,11 @@  discard block
 block discarded – undo
54 54
 $is_allowedToEdit=$is_courseAdmin;
55 55
 
56 56
 if (isset($_SESSION['gradebook'])){
57
-	$gradebook=	$_SESSION['gradebook'];
57
+    $gradebook=	$_SESSION['gradebook'];
58 58
 }
59 59
 
60 60
 if (!empty($gradebook) && $gradebook=='view') {
61
-	$interbreadcrumb[]= array (
61
+    $interbreadcrumb[]= array (
62 62
         'url' => '../gradebook/'.Security::remove_XSS($_SESSION['gradebook_dest']),
63 63
         'name' => get_lang('ToolGradebook')
64 64
     );
@@ -71,8 +71,8 @@  discard block
 block discarded – undo
71 71
 Display::display_header($nameTools,"Exercises");
72 72
 
73 73
 if (isset($_POST['ok'])) {
74
-	$message = get_lang('TestLimitsAdded');
75
-	Display::display_normal_message($message);
74
+    $message = get_lang('TestLimitsAdded');
75
+    Display::display_normal_message($message);
76 76
 }
77 77
 ?>
78 78
 <script type="text/javascript">
@@ -139,22 +139,22 @@  discard block
 block discarded – undo
139 139
  * @todo shouldn't this be moved to the part above (around line 111: action handling)
140 140
  */
141 141
 if (isset($_POST['ok'])) {
142
-	$exercise_id = intval($_POST['exe_id']);
143
-	if ($_POST['limit']==1) {
144
-		$minutes = intval($_POST['minutes']);
145
-		$query = "UPDATE ".$TBL_EXERCISES." SET ques_time_limit= $minutes WHERE id= $exercise_id";
146
-		Database::query($query);
147
-	} else {
148
-		$query = "UPDATE ".$TBL_EXERCISES." SET ques_time_limit= 0 WHERE id= $exercise_id";
149
-		Database::query($query);
150
-	}
142
+    $exercise_id = intval($_POST['exe_id']);
143
+    if ($_POST['limit']==1) {
144
+        $minutes = intval($_POST['minutes']);
145
+        $query = "UPDATE ".$TBL_EXERCISES." SET ques_time_limit= $minutes WHERE id= $exercise_id";
146
+        Database::query($query);
147
+    } else {
148
+        $query = "UPDATE ".$TBL_EXERCISES." SET ques_time_limit= 0 WHERE id= $exercise_id";
149
+        Database::query($query);
150
+    }
151 151
 
152
-	if ($_POST['attempt']==1) {
153
-		$attempts = intval($_POST['attempts']);
154
-		$query = "UPDATE ".$TBL_EXERCISES." SET num_attempts = $attempts WHERE id= $exercise_id";
155
-		Database::query($query);
156
-	} else {
157
-		$query = "UPDATE ".$TBL_EXERCISES." SET num_attempts = 0 WHERE id= $exercise_id";
158
-		Database::query($query);
159
-	}
152
+    if ($_POST['attempt']==1) {
153
+        $attempts = intval($_POST['attempts']);
154
+        $query = "UPDATE ".$TBL_EXERCISES." SET num_attempts = $attempts WHERE id= $exercise_id";
155
+        Database::query($query);
156
+    } else {
157
+        $query = "UPDATE ".$TBL_EXERCISES." SET num_attempts = 0 WHERE id= $exercise_id";
158
+        Database::query($query);
159
+    }
160 160
 }
Please login to merge, or discard this patch.
main/upload/upload.document.php 1 patch
Indentation   +21 added lines, -21 removed lines patch added patch discarded remove patch
@@ -47,9 +47,9 @@  discard block
 block discarded – undo
47 47
  */
48 48
 //user has submitted a file
49 49
 if (isset($_FILES['user_upload'])) {
50
-	$upload_ok = process_uploaded_file($_FILES['user_upload']);
51
-	if ($upload_ok) {
52
-		//file got on the server without problems, now process it
50
+    $upload_ok = process_uploaded_file($_FILES['user_upload']);
51
+    if ($upload_ok) {
52
+        //file got on the server without problems, now process it
53 53
         $new_path = handle_uploaded_document(
54 54
             $_course,
55 55
             $_FILES['user_upload'],
@@ -61,21 +61,21 @@  discard block
 block discarded – undo
61 61
             $_POST['unzip'],
62 62
             $_POST['if_exists']
63 63
         );
64
-    	$new_comment = isset($_POST['comment']) ? Database::escape_string(trim($_POST['comment'])) : '';
65
-    	$new_title = isset($_POST['title']) ? Database::escape_string(trim($_POST['title'])) : '';
64
+        $new_comment = isset($_POST['comment']) ? Database::escape_string(trim($_POST['comment'])) : '';
65
+        $new_title = isset($_POST['title']) ? Database::escape_string(trim($_POST['title'])) : '';
66 66
 
67
-    	if ($new_path && ($new_comment || $new_title))
68
-    	if (($docid = DocumentManager::get_document_id($_course, $new_path))) {
69
-        	$table_document = Database::get_course_table(TABLE_DOCUMENT);
70
-        	$ct = '';
67
+        if ($new_path && ($new_comment || $new_title))
68
+        if (($docid = DocumentManager::get_document_id($_course, $new_path))) {
69
+            $table_document = Database::get_course_table(TABLE_DOCUMENT);
70
+            $ct = '';
71 71
             if ($new_comment) {
72 72
                 $ct .= ", comment='$new_comment'";
73 73
             }
74 74
             if ($new_title) {
75 75
                 $ct .= ", title='$new_title'";
76 76
             }
77
-        	Database::query("UPDATE $table_document SET" . substr($ct, 1) ." WHERE id = '$docid'");
78
-    	}
77
+            Database::query("UPDATE $table_document SET" . substr($ct, 1) ." WHERE id = '$docid'");
78
+        }
79 79
         //check for missing images in html files
80 80
         $missing_files = check_for_missing_files($base_work_dir.$_POST['curdirpath'].$new_path);
81 81
         if ($missing_files) {
@@ -133,7 +133,7 @@  discard block
 block discarded – undo
133 133
 //they want to create a directory
134 134
 if (isset($_POST['create_dir']) && $_POST['dirname']!='') {
135 135
     $added_slash = $path == '/' ? '' : '/';
136
-	$dir_name = $path.$added_slash.api_replace_dangerous_char($_POST['dirname']);
136
+    $dir_name = $path.$added_slash.api_replace_dangerous_char($_POST['dirname']);
137 137
     $created_dir = create_unexisting_directory(
138 138
         $_course,
139 139
         api_get_user_id(),
@@ -153,15 +153,15 @@  discard block
 block discarded – undo
153 153
 }
154 154
 
155 155
 if (isset($_GET['createdir'])) {
156
-	//create the form that asks for the directory name
157
-	$new_folder_text = '<form action="'.api_get_self().'" method="POST">';
158
-	$new_folder_text .= '<input type="hidden" name="curdirpath" value="'.$path.'"/>';
159
-	$new_folder_text .= get_lang('NewDir') .' ';
160
-	$new_folder_text .= '<input type="text" name="dirname"/>';
161
-	$new_folder_text .= '<input type="submit" name="create_dir" value="'.get_lang('Ok').'"/>';
162
-	$new_folder_text .= '</form>';
163
-	//show the form
164
-	Display::display_normal_message($new_folder_text);
156
+    //create the form that asks for the directory name
157
+    $new_folder_text = '<form action="'.api_get_self().'" method="POST">';
158
+    $new_folder_text .= '<input type="hidden" name="curdirpath" value="'.$path.'"/>';
159
+    $new_folder_text .= get_lang('NewDir') .' ';
160
+    $new_folder_text .= '<input type="text" name="dirname"/>';
161
+    $new_folder_text .= '<input type="submit" name="create_dir" value="'.get_lang('Ok').'"/>';
162
+    $new_folder_text .= '</form>';
163
+    //show the form
164
+    Display::display_normal_message($new_folder_text);
165 165
 } else {	//give them a link to create a directory
166 166
 ?>
167 167
 	<p>
Please login to merge, or discard this patch.
main/resourcelinker/resourcelinker.inc.php 1 patch
Indentation   +1387 added lines, -1387 removed lines patch added patch discarded remove patch
@@ -24,10 +24,10 @@  discard block
 block discarded – undo
24 24
 */
25 25
 
26 26
 function unset_session_resources() {
27
-	$_SESSION['addedresource']='';
28
-	$_SESSION['addedresourceid']='';
29
-	Session::erase('addedresource');
30
-	Session::erase('addedresourceid');
27
+    $_SESSION['addedresource']='';
28
+    $_SESSION['addedresourceid']='';
29
+    Session::erase('addedresource');
30
+    Session::erase('addedresourceid');
31 31
 }
32 32
 
33 33
 /**
@@ -35,24 +35,24 @@  discard block
 block discarded – undo
35 35
  */
36 36
 function show_folder_up()
37 37
 {
38
-	global $folder;
39
-	global $source_id, $action, $learnpath_id, $chapter_id, $originalresource;
40
-
41
-	$level = get_levels($folder);
42
-
43
-	if ($level == 1)
44
-	{
45
-		echo "<a href='".api_get_self()."?content=Document&amp;source_forum=".$_GET['source_forum']."&amp;source_id=$source_id&amp;action=$action&amp;learnpath_id=$learnpath_id&amp;chapter_id=$chapter_id&amp;originalresource=no'><img src='../img/folder_up.gif' border='0' />".get_lang('LevelUp')."</a>";
46
-	}
47
-	if ($level and $level != 0 and $level != 1)
48
-	{
49
-		$folder_up=$folder;
50
-		$folder_temp=explode('/',$folder);
51
-		$last=count($folder_temp)-1;
52
-		unset($folder_temp[$last]);
53
-		$folder_up=implode('/',$folder_temp);
54
-		echo "<a href='".api_get_self()."?content=Document&amp;source_forum=".$_GET['source_forum']."&amp;folder=$folder_up&amp;source_id=$source_id&amp;action=$action&amp;learnpath_id=$learnpath_id&amp;chapter_id=$chapter_id&amp;originalresource=no'><img src='../img/folder_up.gif' border='0' />".get_lang('LevelUp')."</a>";
55
-	}
38
+    global $folder;
39
+    global $source_id, $action, $learnpath_id, $chapter_id, $originalresource;
40
+
41
+    $level = get_levels($folder);
42
+
43
+    if ($level == 1)
44
+    {
45
+        echo "<a href='".api_get_self()."?content=Document&amp;source_forum=".$_GET['source_forum']."&amp;source_id=$source_id&amp;action=$action&amp;learnpath_id=$learnpath_id&amp;chapter_id=$chapter_id&amp;originalresource=no'><img src='../img/folder_up.gif' border='0' />".get_lang('LevelUp')."</a>";
46
+    }
47
+    if ($level and $level != 0 and $level != 1)
48
+    {
49
+        $folder_up=$folder;
50
+        $folder_temp=explode('/',$folder);
51
+        $last=count($folder_temp)-1;
52
+        unset($folder_temp[$last]);
53
+        $folder_up=implode('/',$folder_temp);
54
+        echo "<a href='".api_get_self()."?content=Document&amp;source_forum=".$_GET['source_forum']."&amp;folder=$folder_up&amp;source_id=$source_id&amp;action=$action&amp;learnpath_id=$learnpath_id&amp;chapter_id=$chapter_id&amp;originalresource=no'><img src='../img/folder_up.gif' border='0' />".get_lang('LevelUp')."</a>";
55
+    }
56 56
 }
57 57
 
58 58
 /**
@@ -61,23 +61,23 @@  discard block
 block discarded – undo
61 61
  */
62 62
 function show_documents($folder)
63 63
 {
64
-	global $_course;
65
-	global $source_id, $action, $learnpath_id, $chapter_id, $originalresource;
66
-
67
-	// documents are a special case: the teacher can add an invisible document (it will be viewable by the user)
68
-	// other tools do not have this feature. This only counts
69
-	if (api_is_allowed_to_edit())
70
-	{
71
-		$visibility="ip.visibility<>'2'";
72
-	}
73
-	else
74
-	{
75
-		$visibility="ip.visibility='1'";
76
-	}
77
-
78
-	$item_property_table = Database::get_course_table(TABLE_ITEM_PROPERTY);
79
-	$document_table = Database::get_course_table(TABLE_DOCUMENT);
80
-	$sql = "SELECT * from $document_table docs, $item_property_table ip
64
+    global $_course;
65
+    global $source_id, $action, $learnpath_id, $chapter_id, $originalresource;
66
+
67
+    // documents are a special case: the teacher can add an invisible document (it will be viewable by the user)
68
+    // other tools do not have this feature. This only counts
69
+    if (api_is_allowed_to_edit())
70
+    {
71
+        $visibility="ip.visibility<>'2'";
72
+    }
73
+    else
74
+    {
75
+        $visibility="ip.visibility='1'";
76
+    }
77
+
78
+    $item_property_table = Database::get_course_table(TABLE_ITEM_PROPERTY);
79
+    $document_table = Database::get_course_table(TABLE_DOCUMENT);
80
+    $sql = "SELECT * from $document_table docs, $item_property_table ip
81 81
 			WHERE
82 82
 			    docs.id=ip.ref AND
83 83
 			    ip.tool = '".TOOL_DOCUMENT."' AND
@@ -85,104 +85,104 @@  discard block
 block discarded – undo
85 85
 			    (ip.to_group_id = 0 OR i.to_group_id IS NULL) AND
86 86
 			    ip.to_user_id IS NULL
87 87
 			ORDER BY docs.path ASC";
88
-	$result=Database::query($sql);
89
-	while ($row=Database::fetch_array($result))
90
-	{
91
-		if (!$folder)
92
-		{
93
-			if (get_levels($row['path'])-1==1)
94
-			{
95
-				// showing the right icon
96
-				if (file_or_folder($row['path']))
97
-				{
98
-						echo '<img src="../img/file.gif" align="middle" />';
99
-				}
100
-				else
101
-				{
102
-					$image = choose_image($row['path']);
103
-					echo "<img src=\"../img/$image\" align=\"middle\" />";
104
-				}
105
-
106
-				// folders should be clickable
107
-				if (file_or_folder($row['path']))
108
-				{
109
-					echo "<a href='".api_get_self()."?content=Document";
110
-					echo "&amp;folder=".substr($row['path'],1)."&amp;source_id=$source_id&amp;source_forum=".$_GET['source_forum']."&amp;action=$action&amp;learnpath_id=$learnpath_id&amp;chapter_id=$chapter_id&amp;originalresource=no'>".substr($row['path'],1).'</a><br />';
111
-				}
112
-				else
113
-				{
114
-					echo substr($row['path'],1).' ';
115
-					echo showorhide_addresourcelink('Document',$row['id']);
116
-					echo '<br />';
117
-				}
118
-			}
119
-		}
120
-		else
121
-		{
122
-			// we calculate the level we are in by using the $folder in the url
123
-			// we put +1 because it does not start with an / and in the database it does
124
-			$level=get_levels($folder)+1;
125
-
126
-			// we calculate each level of the database entry
127
-			$file_level=get_levels($row['path'])-1;
128
-			// if the level of the database entry is equal to the level we ar in, we put it into an array
129
-			// as this is a potential good entry
130
-			if ($file_level==$level)
131
-			{
132
-				$good_paths[]=$row['path'];
133
-				$good_ids[]=$row['id'];
134
-			}
135
-			//$haystack=$row['path'];
136
-			//$conform_folder=strstr($haystack, $folder);
137
-			//if (str_replace($folder.'/','',$conform_folder)!==$folder)
138
-			//	{
139
-			//	$good_folders[]=$row['path'];
140
-				//echo str_replace($folder.'/','',$conform_folder);
141
-			//	echo '<br />';
142
-			//	}// if (str_replace($folder.'/','',$conform_folder)!==$folder)
143
-		} // else (if (!$folder))
144
-	} //while ($row=Database::fetch_array($result))
145
-
146
-	// this is code for the case that we are in a subfolder
147
-	if ($good_paths)
148
-	{
149
-		// we have all the potential good database entries, the good ones are those that start with $folder
150
-		foreach ($good_paths as $path)
151
-		{
152
-			if (strstr($path,$folder))
153
-			{
154
-				$good_key=key($good_paths);
155
-				// showing the right icon
156
-				if (file_or_folder($path))
157
-				{
158
-					echo '<img src="../img/file.gif" align="middle" />';
159
-				}
160
-				else
161
-				{
162
-					$image = choose_image($path);
163
-					echo "<img src=\"../img/$image\" align=\"middle\" />";
164
-				}
165
-
166
-				// folders should be clickable
167
-				if (file_or_folder($path))
168
-				{
169
-					$path=substr($path,1); // remove the first / in folder_up
170
-					$uri=str_replace($folder,$path,$_SERVER['REQUEST_URI']);
171
-					$newuri=str_replace('add=','addnot=',$uri);
172
-					//using the correct name of the folder
173
-					$folder_name=str_replace($folder.'/','',$path);
174
-					echo "<a href='$newuri'>".$folder_name.'</a><br />';
175
-				}
176
-				else
177
-				{
178
-					echo str_replace("/$folder/", '',$path).' ';
179
-					echo showorhide_addresourcelink('Document',$good_ids[$good_key]);
180
-					echo '<br />';
181
-				}
182
-			}
183
-			next($good_paths);
184
-		}
185
-	}
88
+    $result=Database::query($sql);
89
+    while ($row=Database::fetch_array($result))
90
+    {
91
+        if (!$folder)
92
+        {
93
+            if (get_levels($row['path'])-1==1)
94
+            {
95
+                // showing the right icon
96
+                if (file_or_folder($row['path']))
97
+                {
98
+                        echo '<img src="../img/file.gif" align="middle" />';
99
+                }
100
+                else
101
+                {
102
+                    $image = choose_image($row['path']);
103
+                    echo "<img src=\"../img/$image\" align=\"middle\" />";
104
+                }
105
+
106
+                // folders should be clickable
107
+                if (file_or_folder($row['path']))
108
+                {
109
+                    echo "<a href='".api_get_self()."?content=Document";
110
+                    echo "&amp;folder=".substr($row['path'],1)."&amp;source_id=$source_id&amp;source_forum=".$_GET['source_forum']."&amp;action=$action&amp;learnpath_id=$learnpath_id&amp;chapter_id=$chapter_id&amp;originalresource=no'>".substr($row['path'],1).'</a><br />';
111
+                }
112
+                else
113
+                {
114
+                    echo substr($row['path'],1).' ';
115
+                    echo showorhide_addresourcelink('Document',$row['id']);
116
+                    echo '<br />';
117
+                }
118
+            }
119
+        }
120
+        else
121
+        {
122
+            // we calculate the level we are in by using the $folder in the url
123
+            // we put +1 because it does not start with an / and in the database it does
124
+            $level=get_levels($folder)+1;
125
+
126
+            // we calculate each level of the database entry
127
+            $file_level=get_levels($row['path'])-1;
128
+            // if the level of the database entry is equal to the level we ar in, we put it into an array
129
+            // as this is a potential good entry
130
+            if ($file_level==$level)
131
+            {
132
+                $good_paths[]=$row['path'];
133
+                $good_ids[]=$row['id'];
134
+            }
135
+            //$haystack=$row['path'];
136
+            //$conform_folder=strstr($haystack, $folder);
137
+            //if (str_replace($folder.'/','',$conform_folder)!==$folder)
138
+            //	{
139
+            //	$good_folders[]=$row['path'];
140
+                //echo str_replace($folder.'/','',$conform_folder);
141
+            //	echo '<br />';
142
+            //	}// if (str_replace($folder.'/','',$conform_folder)!==$folder)
143
+        } // else (if (!$folder))
144
+    } //while ($row=Database::fetch_array($result))
145
+
146
+    // this is code for the case that we are in a subfolder
147
+    if ($good_paths)
148
+    {
149
+        // we have all the potential good database entries, the good ones are those that start with $folder
150
+        foreach ($good_paths as $path)
151
+        {
152
+            if (strstr($path,$folder))
153
+            {
154
+                $good_key=key($good_paths);
155
+                // showing the right icon
156
+                if (file_or_folder($path))
157
+                {
158
+                    echo '<img src="../img/file.gif" align="middle" />';
159
+                }
160
+                else
161
+                {
162
+                    $image = choose_image($path);
163
+                    echo "<img src=\"../img/$image\" align=\"middle\" />";
164
+                }
165
+
166
+                // folders should be clickable
167
+                if (file_or_folder($path))
168
+                {
169
+                    $path=substr($path,1); // remove the first / in folder_up
170
+                    $uri=str_replace($folder,$path,$_SERVER['REQUEST_URI']);
171
+                    $newuri=str_replace('add=','addnot=',$uri);
172
+                    //using the correct name of the folder
173
+                    $folder_name=str_replace($folder.'/','',$path);
174
+                    echo "<a href='$newuri'>".$folder_name.'</a><br />';
175
+                }
176
+                else
177
+                {
178
+                    echo str_replace("/$folder/", '',$path).' ';
179
+                    echo showorhide_addresourcelink('Document',$good_ids[$good_key]);
180
+                    echo '<br />';
181
+                }
182
+            }
183
+            next($good_paths);
184
+        }
185
+    }
186 186
 }
187 187
 
188 188
 /**
@@ -193,13 +193,13 @@  discard block
 block discarded – undo
193 193
  */
194 194
 function file_or_folder($filefolder)
195 195
 {
196
-	global $_course;
197
-	global $baseServDir;
196
+    global $_course;
197
+    global $baseServDir;
198 198
 
199
-	$courseDir   = $_course['path'].'/document';
200
-	$baseWorkDir = api_get_path(SYS_COURSE_PATH).$courseDir;
199
+    $courseDir   = $_course['path'].'/document';
200
+    $baseWorkDir = api_get_path(SYS_COURSE_PATH).$courseDir;
201 201
 
202
-	return (is_dir($baseWorkDir.$filefolder) ? 1 : 0);
202
+    return (is_dir($baseWorkDir.$filefolder) ? 1 : 0);
203 203
 }
204 204
 
205 205
 /**
@@ -210,23 +210,23 @@  discard block
 block discarded – undo
210 210
  */
211 211
 function store_resources($source_type, $source_id)
212 212
 {
213
-	global $_course;
214
-	$resource_table = Database::get_course_table(TABLE_LINKED_RESOURCES);
215
-
216
-	$addedresource = $_SESSION['addedresource'];
217
-	$addedresourceid = $_SESSION['addedresourceid'];
218
-	if ($_SESSION['addedresource'])
219
-	{
220
-		foreach ($addedresource as $resource_type)
221
-		{
222
-			$sql="INSERT INTO $resource_table (source_type, source_id, resource_type, resource_id) VALUES ('$source_type', '$source_id', '$resource_type', '".$addedresourceid[key($addedresource)]."')";
223
-			Database::query($sql);
224
-			$i=key($addedresource);
225
-			next($addedresource);
226
-		}
227
-		$_SESSION['addedresource']='';
228
-		$_SESSION['addedresourceid']='';
229
-	}
213
+    global $_course;
214
+    $resource_table = Database::get_course_table(TABLE_LINKED_RESOURCES);
215
+
216
+    $addedresource = $_SESSION['addedresource'];
217
+    $addedresourceid = $_SESSION['addedresourceid'];
218
+    if ($_SESSION['addedresource'])
219
+    {
220
+        foreach ($addedresource as $resource_type)
221
+        {
222
+            $sql="INSERT INTO $resource_table (source_type, source_id, resource_type, resource_id) VALUES ('$source_type', '$source_id', '$resource_type', '".$addedresourceid[key($addedresource)]."')";
223
+            Database::query($sql);
224
+            $i=key($addedresource);
225
+            next($addedresource);
226
+        }
227
+        $_SESSION['addedresource']='';
228
+        $_SESSION['addedresourceid']='';
229
+    }
230 230
 }
231 231
 
232 232
 /**
@@ -240,87 +240,87 @@  discard block
 block discarded – undo
240 240
  */
241 241
 function display_addedresource_link($type, $id, $style='')
242 242
 {
243
-	global $_course;
243
+    global $_course;
244 244
 
245
-	// styling the link of the added resource
246
-	if ($style <> '')
247
-	{
248
-		$styling = ' class="'.$style.'"';
249
-	}
245
+    // styling the link of the added resource
246
+    if ($style <> '')
247
+    {
248
+        $styling = ' class="'.$style.'"';
249
+    }
250 250
 
251 251
     $course_id = api_get_course_int_id();
252 252
 
253
-	switch ($type)
254
-	{
255
-		case 'Agenda':
256
-			$TABLEAGENDA = Database::get_course_table(TABLE_AGENDA);
257
-			$result = Database::query("SELECT * FROM $TABLEAGENDA WHERE c_id = $course_id AND id=$id");
258
-			$myrow = Database::fetch_array($result);
259
-			echo '<img src="../img/agenda.gif" align="middle" /> <a href="../calendar/agenda.php"'.$styling.'>'.$myrow['title']."</a><br />\n";
260
-			break;
261
-		case 'Ad_Valvas':
262
-			$tbl_announcement = Database::get_course_table(TABLE_ANNOUNCEMENT);
263
-			$result = Database::query("SELECT * FROM $tbl_announcement WHERE c_id = $course_id AND id=$id");
264
-			$myrow = Database::fetch_array($result);
265
-			echo '<img src="../img/valves.gif" align="middle" /> <a href="../announcements/announcements.php"'.$styling.'>'.$myrow['title']."</a><br />\n";
266
-			break;
267
-		case 'Link':Database::get_course_table(TABLE_LINK);
268
-			$result = Database::query("SELECT * FROM $TABLETOOLLINK WHERE c_id = $course_id AND id=$id");
269
-			$myrow = Database::fetch_array($result);
270
-			echo '<img src="../img/links.gif" align="middle" /> <a href="#" onclick="javascript:window.open(\'../link/link_goto.php?link_id='.$myrow['id'].'&amp;link_url='.urlencode($myrow['url'])."','MyWindow','width=500,height=400,top='+((screen.height-400)/2)+',left='+((screen.width-500)/2)+',scrollbars=1,resizable=1,menubar=1'); return false;\"".$styling.'>'.$myrow['title']."</a><br />\n";
271
-			break;
272
-		case 'Exercise':
273
-			$TBL_EXERCICES = Database::get_course_table(TABLE_QUIZ_TEST);
274
-			$result = Database::query("SELECT * FROM $TBL_EXERCICES WHERE c_id = $course_id AND  id=$id");
275
-			$myrow = Database::fetch_array($result);
276
-			echo '<img src="../img/quiz.gif" align="middle" /> <a href="../exercice/exercise_submit.php?exerciseId='.$myrow['id'].'"'.$styling.'>'.$myrow['title']."</a><br />\n";
277
-			break;
278
-		case 'Forum':
279
-			$TBL_FORUMS = Database::get_course_table(TABLE_FORUM);
280
-			$result = Database::query("SELECT * FROM $TBL_FORUMS WHERE c_id = $course_id AND forum_id=$id");
281
-			$myrow = Database::fetch_array($result);
282
-			echo '<img src="../img/forum.gif" align="middle" /> <a href="../phpbb/viewforum.php?forum='.$myrow['forum_id'].'&amp;md5='.$myrow['md5'].'"'.$styling.'>'.$myrow['forum_name']."</a><br />\n";
283
-			break;
284
-		case 'Thread':  //=topics
253
+    switch ($type)
254
+    {
255
+        case 'Agenda':
256
+            $TABLEAGENDA = Database::get_course_table(TABLE_AGENDA);
257
+            $result = Database::query("SELECT * FROM $TABLEAGENDA WHERE c_id = $course_id AND id=$id");
258
+            $myrow = Database::fetch_array($result);
259
+            echo '<img src="../img/agenda.gif" align="middle" /> <a href="../calendar/agenda.php"'.$styling.'>'.$myrow['title']."</a><br />\n";
260
+            break;
261
+        case 'Ad_Valvas':
262
+            $tbl_announcement = Database::get_course_table(TABLE_ANNOUNCEMENT);
263
+            $result = Database::query("SELECT * FROM $tbl_announcement WHERE c_id = $course_id AND id=$id");
264
+            $myrow = Database::fetch_array($result);
265
+            echo '<img src="../img/valves.gif" align="middle" /> <a href="../announcements/announcements.php"'.$styling.'>'.$myrow['title']."</a><br />\n";
266
+            break;
267
+        case 'Link':Database::get_course_table(TABLE_LINK);
268
+            $result = Database::query("SELECT * FROM $TABLETOOLLINK WHERE c_id = $course_id AND id=$id");
269
+            $myrow = Database::fetch_array($result);
270
+            echo '<img src="../img/links.gif" align="middle" /> <a href="#" onclick="javascript:window.open(\'../link/link_goto.php?link_id='.$myrow['id'].'&amp;link_url='.urlencode($myrow['url'])."','MyWindow','width=500,height=400,top='+((screen.height-400)/2)+',left='+((screen.width-500)/2)+',scrollbars=1,resizable=1,menubar=1'); return false;\"".$styling.'>'.$myrow['title']."</a><br />\n";
271
+            break;
272
+        case 'Exercise':
273
+            $TBL_EXERCICES = Database::get_course_table(TABLE_QUIZ_TEST);
274
+            $result = Database::query("SELECT * FROM $TBL_EXERCICES WHERE c_id = $course_id AND  id=$id");
275
+            $myrow = Database::fetch_array($result);
276
+            echo '<img src="../img/quiz.gif" align="middle" /> <a href="../exercice/exercise_submit.php?exerciseId='.$myrow['id'].'"'.$styling.'>'.$myrow['title']."</a><br />\n";
277
+            break;
278
+        case 'Forum':
279
+            $TBL_FORUMS = Database::get_course_table(TABLE_FORUM);
280
+            $result = Database::query("SELECT * FROM $TBL_FORUMS WHERE c_id = $course_id AND forum_id=$id");
281
+            $myrow = Database::fetch_array($result);
282
+            echo '<img src="../img/forum.gif" align="middle" /> <a href="../phpbb/viewforum.php?forum='.$myrow['forum_id'].'&amp;md5='.$myrow['md5'].'"'.$styling.'>'.$myrow['forum_name']."</a><br />\n";
283
+            break;
284
+        case 'Thread':  //=topics
285 285
         //deprecated
286
-			$tbl_posts		= $_course['dbNameGlu'].'bb_posts';
287
-			$tbl_posts_text	= $_course['dbNameGlu'].'bb_posts_text';
288
-			$TBL_FORUMS		= $_course['dbNameGlu'].'bb_forums';
289
-			$result = Database::query("SELECT * FROM $tbl_posts posts, $TBL_FORUMS forum WHERE forum.forum_id=posts.forum_id and post_id=$id");
290
-			$myrow = Database::fetch_array($result);
291
-			// grabbing the title of the post
292
-			$sql_title = "SELECT * FROM $tbl_posts_text WHERE post_id=".$myrow["post_id"];
293
-			$result_title = Database::query($sql_title);
294
-			$myrow_title = Database::fetch_array($result_title);
295
-			echo '<img src="../img/forum.gif" align="middle" /> <a href="../phpbb/viewtopic.php?topic='.$myrow['topic_id'].'&amp;forum='.$myrow['forum_id'].'&amp;md5='.$myrow['md5'].'"'.$styling.'>'.$myrow_title['post_title']."</a><br />\n";
296
-			break;
297
-		case 'Post':
286
+            $tbl_posts		= $_course['dbNameGlu'].'bb_posts';
287
+            $tbl_posts_text	= $_course['dbNameGlu'].'bb_posts_text';
288
+            $TBL_FORUMS		= $_course['dbNameGlu'].'bb_forums';
289
+            $result = Database::query("SELECT * FROM $tbl_posts posts, $TBL_FORUMS forum WHERE forum.forum_id=posts.forum_id and post_id=$id");
290
+            $myrow = Database::fetch_array($result);
291
+            // grabbing the title of the post
292
+            $sql_title = "SELECT * FROM $tbl_posts_text WHERE post_id=".$myrow["post_id"];
293
+            $result_title = Database::query($sql_title);
294
+            $myrow_title = Database::fetch_array($result_title);
295
+            echo '<img src="../img/forum.gif" align="middle" /> <a href="../phpbb/viewtopic.php?topic='.$myrow['topic_id'].'&amp;forum='.$myrow['forum_id'].'&amp;md5='.$myrow['md5'].'"'.$styling.'>'.$myrow_title['post_title']."</a><br />\n";
296
+            break;
297
+        case 'Post':
298 298
         //deprecated
299
-			$tbl_post = Database::get_course_table(TABLE_FORUM_POST);
300
-			$tbl_post_text = Database::get_course_table(TOOL_FORUM_POST_TEXT_TABLE);
301
-			$sql = "SELECT * FROM $tbl_post p, $tbl_post_text t WHERE p.post_id = t.post_id AND p.post_id = $id";
302
-			$result = Database::query($sql);
303
-			$post = Database::fetch_object($result);
304
-			echo '<img src="../img/forum.gif" align="middle" /> <a href="../phpbb/viewtopic.php?topic='.$post->topic_id.'&amp;forum='.$post->forum_id.'"'.$styling.'>'.$post->post_title."</a><br />\n";
305
-			break;
306
-		case 'Document':
307
-			$dbTable = Database::get_course_table(TABLE_DOCUMENT);
308
-			$result = Database::query("SELECT * FROM $dbTable WHERE c_id = $course_id AND id=$id");
309
-			$myrow = Database::fetch_array($result);
310
-			$pathname = explode('/',$myrow['path']); // making a correct name for the link
311
-			$last = count($pathname) - 1;  // making a correct name for the link
312
-			$filename = $pathname[$last];  // making a correct name for the link
313
-			$image = choose_image($filename);
314
-			$ext = explode('.',$filename);
315
-			$ext = strtolower($ext[sizeof($ext)-1]);
316
-			$myrow['path'] = rawurlencode($myrow['path']);
317
-			$in_frames = in_array($ext, array('htm','html','gif','jpg','jpeg','png'));
318
-			echo '<img src="../img/'.$image.'" align="middle" /> <a href="../document/'.($in_frames ? 'showinframes.php?file=' : 'download.php?doc_url=').$myrow['path'].'"'.$styling.'>'.$filename."</a><br />\n";
319
-			break;
320
-		case 'Externallink':
321
-			echo '<img src="../img/links.gif" align="middle" /> <a href="'.$id.'"'.$styling.'>'.$id."</a><br />\n";
322
-			break;
323
-	}
299
+            $tbl_post = Database::get_course_table(TABLE_FORUM_POST);
300
+            $tbl_post_text = Database::get_course_table(TOOL_FORUM_POST_TEXT_TABLE);
301
+            $sql = "SELECT * FROM $tbl_post p, $tbl_post_text t WHERE p.post_id = t.post_id AND p.post_id = $id";
302
+            $result = Database::query($sql);
303
+            $post = Database::fetch_object($result);
304
+            echo '<img src="../img/forum.gif" align="middle" /> <a href="../phpbb/viewtopic.php?topic='.$post->topic_id.'&amp;forum='.$post->forum_id.'"'.$styling.'>'.$post->post_title."</a><br />\n";
305
+            break;
306
+        case 'Document':
307
+            $dbTable = Database::get_course_table(TABLE_DOCUMENT);
308
+            $result = Database::query("SELECT * FROM $dbTable WHERE c_id = $course_id AND id=$id");
309
+            $myrow = Database::fetch_array($result);
310
+            $pathname = explode('/',$myrow['path']); // making a correct name for the link
311
+            $last = count($pathname) - 1;  // making a correct name for the link
312
+            $filename = $pathname[$last];  // making a correct name for the link
313
+            $image = choose_image($filename);
314
+            $ext = explode('.',$filename);
315
+            $ext = strtolower($ext[sizeof($ext)-1]);
316
+            $myrow['path'] = rawurlencode($myrow['path']);
317
+            $in_frames = in_array($ext, array('htm','html','gif','jpg','jpeg','png'));
318
+            echo '<img src="../img/'.$image.'" align="middle" /> <a href="../document/'.($in_frames ? 'showinframes.php?file=' : 'download.php?doc_url=').$myrow['path'].'"'.$styling.'>'.$filename."</a><br />\n";
319
+            break;
320
+        case 'Externallink':
321
+            echo '<img src="../img/links.gif" align="middle" /> <a href="'.$id.'"'.$styling.'>'.$id."</a><br />\n";
322
+            break;
323
+    }
324 324
 }
325 325
 
326 326
 /**
@@ -342,766 +342,766 @@  discard block
 block discarded – undo
342 342
 */
343 343
 function display_addedresource_link_in_learnpath($type, $id, $completed, $id_in_path, $builder, $icon, $level = 0)
344 344
 {
345
-	global $learnpath_id, $tbl_learnpath_item, $items;
346
-	global $_course, $curDirPath, $_configuration, $enableDocumentParsing, $_user, $_cid;
347
-
348
-	$hyperlink_target_parameter = ''; //or e.g. 'target="_blank"'
349
-
350
-	$length = ((($builder == 'builder') and ($icon == 'nolink')) ? 65 : 32);
351
-
352
-	if ($builder != 'builder') $origin = 'learnpath';	//origin = learnpath in student view
353
-	$linktype = $type;
354
-	if (($type == 'Link _self') or ($type == 'Link _blank')) $type = 'Link';
355
-
356
-	switch ($type)
357
-	{
358
-		case "Agenda":
359
-			$TABLEAGENDA 		= Database::get_course_table(TABLE_AGENDA);
360
-			$result = Database::query("SELECT * FROM $TABLEAGENDA WHERE id=$id");
361
-			$myrow=Database::fetch_array($result);
362
-
363
-			$sql="select * from $tbl_learnpath_item where id=$id_in_path";
364
-			$result=Database::query($sql);	$row=Database::fetch_array($result);
365
-			if ($row['title'] != '') { $myrow["title"]=$row['title']; }
366
-			$desc=$row['description'];
367
-			$agenda_id=$row['item_id'];
368
-			echo str_repeat("&nbsp;&gt;",$level);
369
-			if (($builder != 'builder') and ($icon != 'wrap')) { echo "<td>"; }
370
-			if ($icon != 'nolink')
371
-			{
372
-				if ($completed=='completed') {
373
-					echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on'>";
374
-				}	else {
375
-					echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on' style='visibility: hidden'>";
376
-					//echo "&nbsp;";
377
-				}
378
-			}
379
-			if (($builder != 'builder') and ($icon != 'wrap')) { echo "</td><td>"; }
380
-
381
-			if ($myrow["title"]=='') { echo "<span class='messagesmall'>".get_lang('StepDeleted1')." $type ".get_lang('StepDeleted2')."</span>"; return(true); }
382
-
383
-			if ($icon == 'nolink') { return(shorten($myrow["title"],$length)); }
384
-			if ($icon == 'icon') { echo "<img src='../img/agenda.gif' align=\"absmiddle\" alt='agenda'>"; }
385
-			if ($builder != 'builder')
386
-			{
387
-				echo "<a href=\"".api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Agenda&origin=$origin&agenda_id=$agenda_id#$id_in_path\" class='$completed'>".shorten($myrow["title"],($length-3*$level))."</a>";
388
-        		$items[]=api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Agenda&origin=$origin&agenda_id=$agenda_id#$id_in_path";
389
-				if ($desc != '')
390
-				{
391
-					if ($icon != 'wrap')
392
-					{
393
-						echo "</tr><tr><td></td><td></td><td><div class='description'>&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div></td></tr>";
394
-					}
395
-					else
396
-					{
397
-						echo "<div class='description'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div>";
398
-					}
399
-				}
400
-			}
401
-			else
402
-			{
403
-				echo "<a href=\"../calendar/agenda.php?origin=$origin&agenda_id=$agenda_id\" class='$completed' target='_blank'>".shorten($myrow["title"],($length-3*$level))."</a>";
404
-			}
405
-			break;
406
-
407
-		case "Ad_Valvas":
408
-			$tbl_announcement = Database::get_course_table(TABLE_ANNOUNCEMENT);
409
-			$result = Database::query("SELECT * FROM $tbl_announcement WHERE id=$id");
410
-			$myrow=Database::fetch_array($result);
411
-
412
-			$sql="select * from $tbl_learnpath_item where id=$id_in_path";
413
-			$result=Database::query($sql);	$row=Database::fetch_array($result);
414
-			if ($row['title'] != '') { $myrow["content"]=$row['title']; }
415
-			$desc=$row['description'];
416
-			$ann_id=$row['item_id'];
417
-			echo str_repeat("&nbsp;&gt;",$level);
418
-
419
-			// the title and the text are in the content field and we only want to display the title
420
-			list($title, $text)=split('<br>',$myrow['content']);
421
-			if ($title=='') { $title=$myrow['content']; }
422
-			$title=$myrow['title'];
423
-			$text=$myrow['content'];
424
-			if (($builder != 'builder') and ($icon != 'wrap')) { echo "<td>"; }
425
-			if ($icon != 'nolink')
426
-			{
427
-				if ($completed=='completed') {
428
-					echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on'>";
429
-				}	else {
430
-					echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on' style='visibility: hidden'>";
431
-					//echo "&nbsp;";
432
-				}
433
-			}
434
-			if (($builder != 'builder') and ($icon != 'wrap')) { echo "</td><td>"; }
435
-
436
-			if ($title=='') {
437
-				$type="Announcement";
438
-				echo "<span class='messagesmall'>".get_lang('StepDeleted1')." $type ".get_lang('StepDeleted2')."</span>";
439
-				return(true);
440
-			}
441
-
442
-			if ($icon == 'nolink') { return(shorten($title,$length)); }
443
-			if ($icon == 'icon') { echo "<img src='../img/valves.gif' align=\"absmiddle\" alt='ad valvas'>"; }
444
-			if ($builder != 'builder')
445
-			{
446
-				echo "<a href=\"".api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Ad_Valvas&origin=$origin&ann_id=$ann_id#$id_in_path\" class='$completed'>".shorten($title,($length-3*$level))."</a>";
447
-				$items[]=api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Ad_Valvas&origin=$origin&ann_id=$ann_id#$id_in_path";
448
-				if ($desc != '')
449
-				{
450
-					if ($icon != 'wrap')
451
-					{
452
-						echo "</tr><tr><td></td><td></td><td><div class='description'>&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div></td></tr>";
453
-					}
454
-					else
455
-					{
456
-						echo "<div class='description'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div>";
457
-					}
458
-				}
459
-			}
460
-			else
461
-			{
462
-				echo "<a href=\"../announcements/announcements.php?origin=$origin&ann_id=$ann_id\" class='$completed' target='_blank'>".shorten($title,($length-3*$level))."</a>";
463
-			}
464
-			break;
465
-
466
-		case "Link" :
467
-			$TABLETOOLLINK	= Database::get_course_table(TABLE_LINK);
468
-			$result= Database::query("SELECT * FROM $TABLETOOLLINK WHERE id=$id");
469
-			$myrow=Database::fetch_array($result);
470
-
471
-			$sql="select * from $tbl_learnpath_item where id=$id_in_path";
472
-			$result=Database::query($sql);	$row=Database::fetch_array($result);
473
-			if ($row['title'] != '') { $myrow["title"]=$row['title']; }
474
-			$desc=$row['description'];
475
-			echo str_repeat("&nbsp;&gt;",$level);
476
-
477
-			if (($builder != 'builder') and ($icon != 'wrap')) { echo "<td>"; }
478
-			if ($icon != 'nolink')
479
-			{
480
-				if ($completed=='completed') {
481
-					echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on'>";
482
-				}	else {
483
-					echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on' style='visibility: hidden'>";
484
-					//echo "&nbsp;";
485
-				}
486
-			}
487
-			if (($builder != 'builder') and ($icon != 'wrap')) { echo "</td><td>"; }
488
-
489
-			if ($myrow["title"]=='')
490
-			{
491
-				echo "<span class='messagesmall'>".get_lang('StepDeleted1')." $type ".get_lang('StepDeleted2')."</span>";
492
-				return(true);
493
-			}
494
-
495
-			if ($icon == 'nolink') { return(shorten($myrow["title"],$length)); }
496
-			if ($icon == 'icon')
497
-			{
498
-				if ($linktype=='Link _self') { echo "<img src='../img/links.gif' align=\"absmiddle\" alt='links'>"; }
499
-				   else { echo "<img src='../img/link_blank.gif' align=\"absmiddle\" alt='blank links'>"; }
500
-			}
501
-			$thelink=$myrow["url"];
502
-			if ($builder != 'builder')
503
-			{
504
-				echo "<a href=\"".api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=$linktype&origin=$origin&thelink=$thelink#$id_in_path\" class='$completed'>".shorten($myrow["title"],($length-3*$level))."</a>";
505
-				$items[]=api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=$linktype&origin=$origin&thelink=$thelink#$id_in_path";
506
-				if ($desc != '')
507
-				{
508
-					if ($icon != 'wrap')
509
-					{
510
-						echo "</tr><tr><td></td><td></td><td><div class='description'>&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div></td></tr>";
511
-					}
512
-					else
513
-					{
514
-						echo "<div class='description'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div>";
515
-					}
516
-				}
517
-			}
518
-			else
519
-			{
520
-				echo "<a href=\"$thelink\" class='$completed' target='_blank'>".shorten($myrow["title"],($length-3*$level))."</a>";
521
-			}
522
-			break;
523
-
524
-		case "Exercise":
525
-			$TBL_EXERCICES  = Database::get_course_table(TABLE_QUIZ_TEST);
526
-			$result= Database::query("SELECT * FROM $TBL_EXERCICES WHERE id=$id");
527
-			$myrow=Database::fetch_array($result);
528
-
529
-			if ($builder=='builder') { $origin='builder'; }
530
-			  //this is needed for the exercise_submit.php can delete the session info about tests
531
-
532
-			$sql="select * from $tbl_learnpath_item where id=$id_in_path";
533
-			$result=Database::query($sql);	$row=Database::fetch_array($result);
534
-			if ($row['title'] != '') { $myrow["title"]=$row['title']; }
535
-			$desc=$row['description'];
536
-			echo str_repeat("&nbsp;&gt;",$level);
537
-
538
-			if (($builder != 'builder') and ($icon != 'wrap')) { echo "<td>"; }
539
-			if ($icon != 'nolink')
540
-			{
541
-				if ($completed=='completed') {
542
-					echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on'>";
543
-				}	else {
544
-					echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on' style='visibility: hidden'>";
545
-					//echo "&nbsp;";
546
-				}
547
-			}
548
-			if (($builder != 'builder') and ($icon != 'wrap')) { echo "</td><td>"; }
549
-
550
-			if ($myrow["title"]=='') {
551
-				echo "<span class='messagesmall'>".get_lang('StepDeleted1')." $type ".get_lang('StepDeleted2')."</span>";
552
-				return(true);
553
-			}
554
-
555
-			if ($icon == 'nolink') { return(shorten($myrow["title"],$length)); }
556
-			if ($icon == 'icon') { echo "<img src='../img/quiz.gif' align=\"absmiddle\" alt='quizz'>"; }
557
-			if ($builder != 'builder')
558
-			{
559
-				echo "<a href=\"".api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Exercise&origin=$origin&exerciseId=".$myrow["id"]."#$id_in_path\" class='$completed'>".shorten($myrow["title"],($length-3*$level))."</a>";
560
-				$items[]=api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Exercise&origin=$origin&exerciseId=".$myrow["id"]."#$id_in_path";
561
-				if ($desc != '')
562
-				{
563
-					if ($icon != 'wrap')
564
-					{
565
-						echo "</tr><tr><td></td><td></td><td><div class='description'>&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div></td></tr>";
566
-					}
567
-					else
568
-					{
569
-						echo "<div class='description'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div>";
570
-					}
571
-				}
572
-			}
573
-			else
574
-			{
575
-				echo "<a href=\"../exercice/exercise_submit.php?origin=$origin&exerciseId=".$myrow["id"]."\" class='$completed' target='_blank'>".shorten($myrow["title"],($length-3*$level))."</a>";
576
-			}
577
-			break;
578
-
579
-		case "HotPotatoes":
580
-			$TBL_DOCUMENT  = Database::get_course_table(TABLE_DOCUMENT);
581
-			$documentPath=api_get_path(SYS_COURSE_PATH).$_course['path'].'/document';
582
-			$result = Database::query("SELECT * FROM ".$TBL_DOCUMENT." WHERE id=$id");
583
-			$myrow= Database::fetch_array($result);
584
-			$path=$myrow["path"];
585
-			$name=GetQuizName($path,$documentPath);
586
-
587
-			if ($builder=='builder') { $origin='builder'; }
588
-			  //this is needed for the exercise_submit.php can delete the session info about tests
589
-
590
-			$sql="select * from $tbl_learnpath_item where id=$id_in_path";
591
-			$result=Database::query($sql);	$row=Database::fetch_array($result);
592
-			if ($row['title'] != '') { $name=$row['title']; }
593
-			$desc=$row['description'];
594
-			echo str_repeat("&nbsp;&gt;",$level);
595
-
596
-			if (($builder != 'builder') and ($icon != 'wrap')) { echo "<td>"; }
597
-			if ($icon != 'nolink')
598
-			{
599
-				if ($completed=='completed') {
600
-					echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on'>";
601
-				}	else {
602
-					echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on' style='visibility: hidden'>";
603
-					//echo "&nbsp;";
604
-				}
605
-			}
606
-			if (($builder != 'builder') and ($icon != 'wrap')) { echo "</td><td>"; }
607
-
608
-			if ($name=='') { echo "<span class='messagesmall'>".get_lang('StepDeleted1')." $type ".get_lang('StepDeleted2')."</span>"; return(true); }
609
-
610
-			if ($icon == 'nolink') { return(shorten($name,$length)); }
611
-			if ($icon == 'icon') { echo "<img src='../img/jqz.gif' align=\"absmiddle\" alt='hot potatoes'>"; }
612
-
613
-			$cid = $_course['official_code'];
614
-
615
-			if ($builder != 'builder')
616
-			{
617
-				echo "<a href=\"".api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=HotPotatoes&origin=$origin&id=$id#$id_in_path\" class='$completed'>".shorten($name,($length-3*$level))."</a>";
618
-				$items[]=api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=HotPotatoes&origin=$origin&id=$id#$id_in_path";
619
-				if ($desc != '')
620
-				{
621
-					if ($icon != 'wrap')
622
-					{
623
-						echo "</tr><tr><td></td><td></td><td><div class='description'>&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div></td></tr>";
624
-					}
625
-					else
626
-					{
627
-						echo "<div class='description'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div>";
628
-					}
629
-				}
630
-			}
631
-			else
632
-			{
633
-				echo "&nbsp;<a href=\"../exercice/showinframes.php?file=$path&cid=$cid&uid=".$_user['user_id']."\" class='$completed' target='_blank'>".shorten($name,($length-3*$level))."</a>";
634
-			}
635
-			break;
636
-
637
-		case "Forum":
638
-			$TBL_FORUMS = Database::get_course_table(TABLE_FORUM);
639
-			$result= Database::query("SELECT * FROM $TBL_FORUMS WHERE forum_id=$id");
640
-			$myrow=Database::fetch_array($result);
641
-
642
-			$sql="select * from $tbl_learnpath_item where id=$id_in_path";
643
-			$result=Database::query($sql);	$row=Database::fetch_array($result);
644
-			if ($row['title'] != '') { $myrow["forum_name"]=$row['title']; }
645
-			$desc=$row['description'];
646
-			echo str_repeat("&nbsp;&gt;",$level);
647
-
648
-			if (($builder != 'builder') and ($icon != 'wrap')) { echo "<td>"; }
649
-			if ($icon != 'nolink')
650
-			{
651
-				if ($completed=='completed') {
652
-					echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on'>";
653
-				}	else {
654
-					echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on' style='visibility: hidden'>";
655
-					//echo "&nbsp;";
656
-				}
657
-			}
658
-			if (($builder != 'builder') and ($icon != 'wrap')) { echo "</td><td>"; }
659
-
660
-			if ($myrow["forum_name"]=='') { $type="Forum"; echo "<span class='messagesmall'>".get_lang('StepDeleted1')." $type ".get_lang('StepDeleted2')."</span>"; return(true); }
661
-
662
-			if ($icon == 'nolink') { return(shorten($myrow["forum_name"],$length)); }
663
-			if ($icon == 'icon') { echo "<img src='../img/forum.gif' align=\"absmiddle\" alt='forum'>"; }
664
-			$forumparameters="forum=".$myrow["forum_id"]."&md5=".$myrow["md5"];
665
-			if ($builder != 'builder')
666
-			{
667
-				echo "<a href=\"".api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Forum&origin=$origin&forumparameters=$forumparameters#$id_in_path\" class='$completed'>".shorten($myrow["forum_name"],($length-3*$level))."</a>";
668
-				$items[]=api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Forum&origin=$origin&forumparameters=$forumparameters#$id_in_path";
669
-				if ($desc != '')
670
-				{
671
-					if ($icon != 'wrap')
672
-					{
673
-						echo "</tr><tr><td></td><td></td><td><div class='description'>&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div></td></tr>";
674
-					}
675
-					else
676
-					{
677
-						echo "<div class='description'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div>";
678
-					}
679
-				}
680
-			}
681
-			else
682
-			{
683
-				echo "<a href=\"../phpbb/viewforum.php?$forumparameters\" class='$completed' target='_blank'>".shorten($myrow["forum_name"],($length-3*$level))."</a>";
684
-			}
685
-			break;
686
-
687
-		case "Thread":  //forum post
345
+    global $learnpath_id, $tbl_learnpath_item, $items;
346
+    global $_course, $curDirPath, $_configuration, $enableDocumentParsing, $_user, $_cid;
347
+
348
+    $hyperlink_target_parameter = ''; //or e.g. 'target="_blank"'
349
+
350
+    $length = ((($builder == 'builder') and ($icon == 'nolink')) ? 65 : 32);
351
+
352
+    if ($builder != 'builder') $origin = 'learnpath';	//origin = learnpath in student view
353
+    $linktype = $type;
354
+    if (($type == 'Link _self') or ($type == 'Link _blank')) $type = 'Link';
355
+
356
+    switch ($type)
357
+    {
358
+        case "Agenda":
359
+            $TABLEAGENDA 		= Database::get_course_table(TABLE_AGENDA);
360
+            $result = Database::query("SELECT * FROM $TABLEAGENDA WHERE id=$id");
361
+            $myrow=Database::fetch_array($result);
362
+
363
+            $sql="select * from $tbl_learnpath_item where id=$id_in_path";
364
+            $result=Database::query($sql);	$row=Database::fetch_array($result);
365
+            if ($row['title'] != '') { $myrow["title"]=$row['title']; }
366
+            $desc=$row['description'];
367
+            $agenda_id=$row['item_id'];
368
+            echo str_repeat("&nbsp;&gt;",$level);
369
+            if (($builder != 'builder') and ($icon != 'wrap')) { echo "<td>"; }
370
+            if ($icon != 'nolink')
371
+            {
372
+                if ($completed=='completed') {
373
+                    echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on'>";
374
+                }	else {
375
+                    echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on' style='visibility: hidden'>";
376
+                    //echo "&nbsp;";
377
+                }
378
+            }
379
+            if (($builder != 'builder') and ($icon != 'wrap')) { echo "</td><td>"; }
380
+
381
+            if ($myrow["title"]=='') { echo "<span class='messagesmall'>".get_lang('StepDeleted1')." $type ".get_lang('StepDeleted2')."</span>"; return(true); }
382
+
383
+            if ($icon == 'nolink') { return(shorten($myrow["title"],$length)); }
384
+            if ($icon == 'icon') { echo "<img src='../img/agenda.gif' align=\"absmiddle\" alt='agenda'>"; }
385
+            if ($builder != 'builder')
386
+            {
387
+                echo "<a href=\"".api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Agenda&origin=$origin&agenda_id=$agenda_id#$id_in_path\" class='$completed'>".shorten($myrow["title"],($length-3*$level))."</a>";
388
+                $items[]=api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Agenda&origin=$origin&agenda_id=$agenda_id#$id_in_path";
389
+                if ($desc != '')
390
+                {
391
+                    if ($icon != 'wrap')
392
+                    {
393
+                        echo "</tr><tr><td></td><td></td><td><div class='description'>&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div></td></tr>";
394
+                    }
395
+                    else
396
+                    {
397
+                        echo "<div class='description'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div>";
398
+                    }
399
+                }
400
+            }
401
+            else
402
+            {
403
+                echo "<a href=\"../calendar/agenda.php?origin=$origin&agenda_id=$agenda_id\" class='$completed' target='_blank'>".shorten($myrow["title"],($length-3*$level))."</a>";
404
+            }
405
+            break;
406
+
407
+        case "Ad_Valvas":
408
+            $tbl_announcement = Database::get_course_table(TABLE_ANNOUNCEMENT);
409
+            $result = Database::query("SELECT * FROM $tbl_announcement WHERE id=$id");
410
+            $myrow=Database::fetch_array($result);
411
+
412
+            $sql="select * from $tbl_learnpath_item where id=$id_in_path";
413
+            $result=Database::query($sql);	$row=Database::fetch_array($result);
414
+            if ($row['title'] != '') { $myrow["content"]=$row['title']; }
415
+            $desc=$row['description'];
416
+            $ann_id=$row['item_id'];
417
+            echo str_repeat("&nbsp;&gt;",$level);
418
+
419
+            // the title and the text are in the content field and we only want to display the title
420
+            list($title, $text)=split('<br>',$myrow['content']);
421
+            if ($title=='') { $title=$myrow['content']; }
422
+            $title=$myrow['title'];
423
+            $text=$myrow['content'];
424
+            if (($builder != 'builder') and ($icon != 'wrap')) { echo "<td>"; }
425
+            if ($icon != 'nolink')
426
+            {
427
+                if ($completed=='completed') {
428
+                    echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on'>";
429
+                }	else {
430
+                    echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on' style='visibility: hidden'>";
431
+                    //echo "&nbsp;";
432
+                }
433
+            }
434
+            if (($builder != 'builder') and ($icon != 'wrap')) { echo "</td><td>"; }
435
+
436
+            if ($title=='') {
437
+                $type="Announcement";
438
+                echo "<span class='messagesmall'>".get_lang('StepDeleted1')." $type ".get_lang('StepDeleted2')."</span>";
439
+                return(true);
440
+            }
441
+
442
+            if ($icon == 'nolink') { return(shorten($title,$length)); }
443
+            if ($icon == 'icon') { echo "<img src='../img/valves.gif' align=\"absmiddle\" alt='ad valvas'>"; }
444
+            if ($builder != 'builder')
445
+            {
446
+                echo "<a href=\"".api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Ad_Valvas&origin=$origin&ann_id=$ann_id#$id_in_path\" class='$completed'>".shorten($title,($length-3*$level))."</a>";
447
+                $items[]=api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Ad_Valvas&origin=$origin&ann_id=$ann_id#$id_in_path";
448
+                if ($desc != '')
449
+                {
450
+                    if ($icon != 'wrap')
451
+                    {
452
+                        echo "</tr><tr><td></td><td></td><td><div class='description'>&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div></td></tr>";
453
+                    }
454
+                    else
455
+                    {
456
+                        echo "<div class='description'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div>";
457
+                    }
458
+                }
459
+            }
460
+            else
461
+            {
462
+                echo "<a href=\"../announcements/announcements.php?origin=$origin&ann_id=$ann_id\" class='$completed' target='_blank'>".shorten($title,($length-3*$level))."</a>";
463
+            }
464
+            break;
465
+
466
+        case "Link" :
467
+            $TABLETOOLLINK	= Database::get_course_table(TABLE_LINK);
468
+            $result= Database::query("SELECT * FROM $TABLETOOLLINK WHERE id=$id");
469
+            $myrow=Database::fetch_array($result);
470
+
471
+            $sql="select * from $tbl_learnpath_item where id=$id_in_path";
472
+            $result=Database::query($sql);	$row=Database::fetch_array($result);
473
+            if ($row['title'] != '') { $myrow["title"]=$row['title']; }
474
+            $desc=$row['description'];
475
+            echo str_repeat("&nbsp;&gt;",$level);
476
+
477
+            if (($builder != 'builder') and ($icon != 'wrap')) { echo "<td>"; }
478
+            if ($icon != 'nolink')
479
+            {
480
+                if ($completed=='completed') {
481
+                    echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on'>";
482
+                }	else {
483
+                    echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on' style='visibility: hidden'>";
484
+                    //echo "&nbsp;";
485
+                }
486
+            }
487
+            if (($builder != 'builder') and ($icon != 'wrap')) { echo "</td><td>"; }
488
+
489
+            if ($myrow["title"]=='')
490
+            {
491
+                echo "<span class='messagesmall'>".get_lang('StepDeleted1')." $type ".get_lang('StepDeleted2')."</span>";
492
+                return(true);
493
+            }
494
+
495
+            if ($icon == 'nolink') { return(shorten($myrow["title"],$length)); }
496
+            if ($icon == 'icon')
497
+            {
498
+                if ($linktype=='Link _self') { echo "<img src='../img/links.gif' align=\"absmiddle\" alt='links'>"; }
499
+                    else { echo "<img src='../img/link_blank.gif' align=\"absmiddle\" alt='blank links'>"; }
500
+            }
501
+            $thelink=$myrow["url"];
502
+            if ($builder != 'builder')
503
+            {
504
+                echo "<a href=\"".api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=$linktype&origin=$origin&thelink=$thelink#$id_in_path\" class='$completed'>".shorten($myrow["title"],($length-3*$level))."</a>";
505
+                $items[]=api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=$linktype&origin=$origin&thelink=$thelink#$id_in_path";
506
+                if ($desc != '')
507
+                {
508
+                    if ($icon != 'wrap')
509
+                    {
510
+                        echo "</tr><tr><td></td><td></td><td><div class='description'>&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div></td></tr>";
511
+                    }
512
+                    else
513
+                    {
514
+                        echo "<div class='description'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div>";
515
+                    }
516
+                }
517
+            }
518
+            else
519
+            {
520
+                echo "<a href=\"$thelink\" class='$completed' target='_blank'>".shorten($myrow["title"],($length-3*$level))."</a>";
521
+            }
522
+            break;
523
+
524
+        case "Exercise":
525
+            $TBL_EXERCICES  = Database::get_course_table(TABLE_QUIZ_TEST);
526
+            $result= Database::query("SELECT * FROM $TBL_EXERCICES WHERE id=$id");
527
+            $myrow=Database::fetch_array($result);
528
+
529
+            if ($builder=='builder') { $origin='builder'; }
530
+                //this is needed for the exercise_submit.php can delete the session info about tests
531
+
532
+            $sql="select * from $tbl_learnpath_item where id=$id_in_path";
533
+            $result=Database::query($sql);	$row=Database::fetch_array($result);
534
+            if ($row['title'] != '') { $myrow["title"]=$row['title']; }
535
+            $desc=$row['description'];
536
+            echo str_repeat("&nbsp;&gt;",$level);
537
+
538
+            if (($builder != 'builder') and ($icon != 'wrap')) { echo "<td>"; }
539
+            if ($icon != 'nolink')
540
+            {
541
+                if ($completed=='completed') {
542
+                    echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on'>";
543
+                }	else {
544
+                    echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on' style='visibility: hidden'>";
545
+                    //echo "&nbsp;";
546
+                }
547
+            }
548
+            if (($builder != 'builder') and ($icon != 'wrap')) { echo "</td><td>"; }
549
+
550
+            if ($myrow["title"]=='') {
551
+                echo "<span class='messagesmall'>".get_lang('StepDeleted1')." $type ".get_lang('StepDeleted2')."</span>";
552
+                return(true);
553
+            }
554
+
555
+            if ($icon == 'nolink') { return(shorten($myrow["title"],$length)); }
556
+            if ($icon == 'icon') { echo "<img src='../img/quiz.gif' align=\"absmiddle\" alt='quizz'>"; }
557
+            if ($builder != 'builder')
558
+            {
559
+                echo "<a href=\"".api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Exercise&origin=$origin&exerciseId=".$myrow["id"]."#$id_in_path\" class='$completed'>".shorten($myrow["title"],($length-3*$level))."</a>";
560
+                $items[]=api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Exercise&origin=$origin&exerciseId=".$myrow["id"]."#$id_in_path";
561
+                if ($desc != '')
562
+                {
563
+                    if ($icon != 'wrap')
564
+                    {
565
+                        echo "</tr><tr><td></td><td></td><td><div class='description'>&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div></td></tr>";
566
+                    }
567
+                    else
568
+                    {
569
+                        echo "<div class='description'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div>";
570
+                    }
571
+                }
572
+            }
573
+            else
574
+            {
575
+                echo "<a href=\"../exercice/exercise_submit.php?origin=$origin&exerciseId=".$myrow["id"]."\" class='$completed' target='_blank'>".shorten($myrow["title"],($length-3*$level))."</a>";
576
+            }
577
+            break;
578
+
579
+        case "HotPotatoes":
580
+            $TBL_DOCUMENT  = Database::get_course_table(TABLE_DOCUMENT);
581
+            $documentPath=api_get_path(SYS_COURSE_PATH).$_course['path'].'/document';
582
+            $result = Database::query("SELECT * FROM ".$TBL_DOCUMENT." WHERE id=$id");
583
+            $myrow= Database::fetch_array($result);
584
+            $path=$myrow["path"];
585
+            $name=GetQuizName($path,$documentPath);
586
+
587
+            if ($builder=='builder') { $origin='builder'; }
588
+                //this is needed for the exercise_submit.php can delete the session info about tests
589
+
590
+            $sql="select * from $tbl_learnpath_item where id=$id_in_path";
591
+            $result=Database::query($sql);	$row=Database::fetch_array($result);
592
+            if ($row['title'] != '') { $name=$row['title']; }
593
+            $desc=$row['description'];
594
+            echo str_repeat("&nbsp;&gt;",$level);
595
+
596
+            if (($builder != 'builder') and ($icon != 'wrap')) { echo "<td>"; }
597
+            if ($icon != 'nolink')
598
+            {
599
+                if ($completed=='completed') {
600
+                    echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on'>";
601
+                }	else {
602
+                    echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on' style='visibility: hidden'>";
603
+                    //echo "&nbsp;";
604
+                }
605
+            }
606
+            if (($builder != 'builder') and ($icon != 'wrap')) { echo "</td><td>"; }
607
+
608
+            if ($name=='') { echo "<span class='messagesmall'>".get_lang('StepDeleted1')." $type ".get_lang('StepDeleted2')."</span>"; return(true); }
609
+
610
+            if ($icon == 'nolink') { return(shorten($name,$length)); }
611
+            if ($icon == 'icon') { echo "<img src='../img/jqz.gif' align=\"absmiddle\" alt='hot potatoes'>"; }
612
+
613
+            $cid = $_course['official_code'];
614
+
615
+            if ($builder != 'builder')
616
+            {
617
+                echo "<a href=\"".api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=HotPotatoes&origin=$origin&id=$id#$id_in_path\" class='$completed'>".shorten($name,($length-3*$level))."</a>";
618
+                $items[]=api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=HotPotatoes&origin=$origin&id=$id#$id_in_path";
619
+                if ($desc != '')
620
+                {
621
+                    if ($icon != 'wrap')
622
+                    {
623
+                        echo "</tr><tr><td></td><td></td><td><div class='description'>&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div></td></tr>";
624
+                    }
625
+                    else
626
+                    {
627
+                        echo "<div class='description'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div>";
628
+                    }
629
+                }
630
+            }
631
+            else
632
+            {
633
+                echo "&nbsp;<a href=\"../exercice/showinframes.php?file=$path&cid=$cid&uid=".$_user['user_id']."\" class='$completed' target='_blank'>".shorten($name,($length-3*$level))."</a>";
634
+            }
635
+            break;
636
+
637
+        case "Forum":
638
+            $TBL_FORUMS = Database::get_course_table(TABLE_FORUM);
639
+            $result= Database::query("SELECT * FROM $TBL_FORUMS WHERE forum_id=$id");
640
+            $myrow=Database::fetch_array($result);
641
+
642
+            $sql="select * from $tbl_learnpath_item where id=$id_in_path";
643
+            $result=Database::query($sql);	$row=Database::fetch_array($result);
644
+            if ($row['title'] != '') { $myrow["forum_name"]=$row['title']; }
645
+            $desc=$row['description'];
646
+            echo str_repeat("&nbsp;&gt;",$level);
647
+
648
+            if (($builder != 'builder') and ($icon != 'wrap')) { echo "<td>"; }
649
+            if ($icon != 'nolink')
650
+            {
651
+                if ($completed=='completed') {
652
+                    echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on'>";
653
+                }	else {
654
+                    echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on' style='visibility: hidden'>";
655
+                    //echo "&nbsp;";
656
+                }
657
+            }
658
+            if (($builder != 'builder') and ($icon != 'wrap')) { echo "</td><td>"; }
659
+
660
+            if ($myrow["forum_name"]=='') { $type="Forum"; echo "<span class='messagesmall'>".get_lang('StepDeleted1')." $type ".get_lang('StepDeleted2')."</span>"; return(true); }
661
+
662
+            if ($icon == 'nolink') { return(shorten($myrow["forum_name"],$length)); }
663
+            if ($icon == 'icon') { echo "<img src='../img/forum.gif' align=\"absmiddle\" alt='forum'>"; }
664
+            $forumparameters="forum=".$myrow["forum_id"]."&md5=".$myrow["md5"];
665
+            if ($builder != 'builder')
666
+            {
667
+                echo "<a href=\"".api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Forum&origin=$origin&forumparameters=$forumparameters#$id_in_path\" class='$completed'>".shorten($myrow["forum_name"],($length-3*$level))."</a>";
668
+                $items[]=api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Forum&origin=$origin&forumparameters=$forumparameters#$id_in_path";
669
+                if ($desc != '')
670
+                {
671
+                    if ($icon != 'wrap')
672
+                    {
673
+                        echo "</tr><tr><td></td><td></td><td><div class='description'>&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div></td></tr>";
674
+                    }
675
+                    else
676
+                    {
677
+                        echo "<div class='description'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div>";
678
+                    }
679
+                }
680
+            }
681
+            else
682
+            {
683
+                echo "<a href=\"../phpbb/viewforum.php?$forumparameters\" class='$completed' target='_blank'>".shorten($myrow["forum_name"],($length-3*$level))."</a>";
684
+            }
685
+            break;
686
+
687
+        case "Thread":  //forum post
688 688
         //deprecated
689
-			$tbl_topics      = $_course['dbNameGlu'].'bb_topics';
690
-			$tbl_posts		 = $_course['dbNameGlu'].'bb_posts';
691
-			$TBL_FORUMS = $_course['dbNameGlu']."bb_forums";
692
-			$sql="SELECT * FROM $tbl_topics where topic_id=$id";
693
-			$result= Database::query($sql);
694
-			$myrow=Database::fetch_array($result);
695
-
696
-			$sql="select * from $tbl_learnpath_item where id=$id_in_path";
697
-			$result=Database::query($sql);	$row=Database::fetch_array($result);
698
-			if ($row['title'] != '') { $myrow["topic_title"]=$row['title']; }
699
-			$desc=$row['description'];
700
-			echo str_repeat("&nbsp;&gt;",$level);
701
-
702
-			if (($builder != 'builder') and ($icon != 'wrap')) { echo "<td>"; }
703
-			if ($icon != 'nolink')
704
-			{
705
-				if ($completed=='completed') {
706
-					echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on'>";
707
-				}	else {
708
-					echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on' style='visibility: hidden'>";
709
-					//echo "&nbsp;";
710
-				}
711
-			}
712
-			if (($builder != 'builder') and ($icon != 'wrap')) { echo "</td><td>"; }
713
-
714
-			if ($myrow["topic_title"]=='') { $type="Forum Post"; echo "<span class='messagesmall'>".get_lang('StepDeleted1')." $type ".get_lang('StepDeleted2')."</span>"; return(true); }
715
-
716
-			if ($icon == 'nolink') { return(shorten($myrow["topic_title"],$length)); }
717
-			if ($icon == 'icon') { echo "<img src='../img/forum.gif' align=\"absmiddle\" alt='forum'>"; }
718
-			if ($builder != 'builder')
719
-			{
720
-				echo "<a href=\"".api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Thread&origin=$origin&topic=".$myrow["topic_id"]."&forum=".$myrow["forum_id"]."&md5=".$myrow["md5"]."#$id_in_path\" class='$completed'>".shorten($myrow["topic_title"],($length-3*$level))."</a>";
721
-				$items[]=api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Thread&origin=$origin&topic=".$myrow["topic_id"]."&forum=".$myrow["forum_id"]."&md5=".$myrow["md5"]."#$id_in_path";
722
-				if ($desc != '')
723
-				{
724
-					if ($icon != 'wrap')
725
-					{
726
-						echo "</tr><tr><td></td><td></td><td><div class='description'>&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div></td></tr>";
727
-					}
728
-					else
729
-					{
730
-						echo "<div class='description'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div>";
731
-					}
732
-				}
733
-			}
734
-			else
735
-			{
736
-				echo "<a href=\"../phpbb/viewtopic.php?topic=".$myrow["topic_id"]."&forum=".$myrow["forum_id"]."&md5=".$myrow["md5"]."\" class='$completed' target='_blank'>".shorten($myrow["topic_title"],($length-3*$level))."</a>";
737
-			}
738
-			break;
739
-
740
-		case "Post":
689
+            $tbl_topics      = $_course['dbNameGlu'].'bb_topics';
690
+            $tbl_posts		 = $_course['dbNameGlu'].'bb_posts';
691
+            $TBL_FORUMS = $_course['dbNameGlu']."bb_forums";
692
+            $sql="SELECT * FROM $tbl_topics where topic_id=$id";
693
+            $result= Database::query($sql);
694
+            $myrow=Database::fetch_array($result);
695
+
696
+            $sql="select * from $tbl_learnpath_item where id=$id_in_path";
697
+            $result=Database::query($sql);	$row=Database::fetch_array($result);
698
+            if ($row['title'] != '') { $myrow["topic_title"]=$row['title']; }
699
+            $desc=$row['description'];
700
+            echo str_repeat("&nbsp;&gt;",$level);
701
+
702
+            if (($builder != 'builder') and ($icon != 'wrap')) { echo "<td>"; }
703
+            if ($icon != 'nolink')
704
+            {
705
+                if ($completed=='completed') {
706
+                    echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on'>";
707
+                }	else {
708
+                    echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on' style='visibility: hidden'>";
709
+                    //echo "&nbsp;";
710
+                }
711
+            }
712
+            if (($builder != 'builder') and ($icon != 'wrap')) { echo "</td><td>"; }
713
+
714
+            if ($myrow["topic_title"]=='') { $type="Forum Post"; echo "<span class='messagesmall'>".get_lang('StepDeleted1')." $type ".get_lang('StepDeleted2')."</span>"; return(true); }
715
+
716
+            if ($icon == 'nolink') { return(shorten($myrow["topic_title"],$length)); }
717
+            if ($icon == 'icon') { echo "<img src='../img/forum.gif' align=\"absmiddle\" alt='forum'>"; }
718
+            if ($builder != 'builder')
719
+            {
720
+                echo "<a href=\"".api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Thread&origin=$origin&topic=".$myrow["topic_id"]."&forum=".$myrow["forum_id"]."&md5=".$myrow["md5"]."#$id_in_path\" class='$completed'>".shorten($myrow["topic_title"],($length-3*$level))."</a>";
721
+                $items[]=api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Thread&origin=$origin&topic=".$myrow["topic_id"]."&forum=".$myrow["forum_id"]."&md5=".$myrow["md5"]."#$id_in_path";
722
+                if ($desc != '')
723
+                {
724
+                    if ($icon != 'wrap')
725
+                    {
726
+                        echo "</tr><tr><td></td><td></td><td><div class='description'>&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div></td></tr>";
727
+                    }
728
+                    else
729
+                    {
730
+                        echo "<div class='description'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div>";
731
+                    }
732
+                }
733
+            }
734
+            else
735
+            {
736
+                echo "<a href=\"../phpbb/viewtopic.php?topic=".$myrow["topic_id"]."&forum=".$myrow["forum_id"]."&md5=".$myrow["md5"]."\" class='$completed' target='_blank'>".shorten($myrow["topic_title"],($length-3*$level))."</a>";
737
+            }
738
+            break;
739
+
740
+        case "Post":
741 741
         //deprecated
742
-			$tbl_posts       = $_course['dbNameGlu'].'bb_posts';
743
-			$tbl_posts_text  = $_course['dbNameGlu'].'bb_posts_text';
744
-			$TBL_FORUMS = $_course['dbNameGlu']."bb_forums";
745
-			$result= Database::query("SELECT * FROM $tbl_posts where post_id=$id");
746
-			$myrow=Database::fetch_array($result);
747
-			// grabbing the title of the post
748
-			$sql_titel="SELECT * FROM $tbl_posts_text WHERE post_id=".$myrow["post_id"];
749
-			$result_titel=Database::query($sql_titel);
750
-			$myrow_titel=Database::fetch_array($result_titel);
751
-
752
-			$sql="select * from $tbl_learnpath_item where id=$id_in_path";
753
-			$result=Database::query($sql);	$row=Database::fetch_array($result);
754
-			if ($row['title'] != '') { $myrow_titel["post_title"]=$row['title']; }
755
-			$desc=$row['description'];
756
-			echo str_repeat("&nbsp;&gt;",$level);
757
-
758
-			$posternom=$myrow['nom'];				$posterprenom=$myrow['prenom'];
759
-			$posttime=$myrow['post_time'];			$posttext=$myrow_titel['post_text'];
760
-			$posttitle=$myrow_titel['post_title'];
761
-			$posttext = str_replace('"',"'",$posttext);
762
-
763
-			if (($builder != 'builder') and ($icon != 'wrap')) { echo "<td>"; }
764
-			if ($icon != 'nolink')
765
-			{
766
-				if ($completed=='completed') {
767
-					echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on'>";
768
-				}	else {
769
-					echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on' style='visibility: hidden'>";
770
-					//echo "&nbsp;";
771
-				}
772
-			}
773
-			if (($builder != 'builder') and ($icon != 'wrap')) { echo "</td><td>"; }
774
-
775
-			if ($myrow_titel["post_title"]=='')
776
-			{
777
-				$type="Forum";
778
-				echo "<span class='messagesmall'>".get_lang('StepDeleted1')." $type ".get_lang('StepDeleted2')."</span>"; return(true);
779
-			}
780
-
781
-			if ($icon == 'nolink') { return(shorten($myrow_titel["post_title"],$length)); }
782
-			if ($icon == 'icon') { echo "<img src='../img/forum.gif' align=\"absmiddle\" alt='forum'>"; }
783
-			if ($builder != 'builder')
784
-			{
785
-				echo "<a href=\"".api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Post&origin=$origin&posternom=$posternom&posterprenom=$posterprenom&posttime=$posttime&posttext=$posttext&posttitle=$posttitle#$id_in_path\" class='$completed'>".shorten($myrow_titel["post_title"],($length-3*$level))."</a>"; $items[]=api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Post&origin=$origin&posternom=$posternom&posterprenom=$posterprenom&posttime=$posttime&posttext=$posttext&posttitle=$posttitle#$id_in_path";
786
-				if ($desc != '')
787
-				{
788
-					if ($icon != 'wrap')
789
-					{
790
-						echo "</tr><tr><td></td><td></td><td><div class='description'>&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div></td></tr>";
791
-					}
792
-					else
793
-					{
794
-						echo "<div class='description'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div>";
795
-					}
796
-				}
797
-			}
798
-			else
799
-			{
800
-				echo "<a href=\"../phpbb/viewtopic.php?topic=".$myrow["topic_id"]."&forum=".$myrow["forum_id"]."&md5=".$myrow["md5"]."\" class='$completed' target='_blank'>".shorten($myrow_titel["post_title"],($length-3*$level))."</a>";
801
-			}
802
-			break;
803
-
804
-		case "Document":
805
-			$dbTable  = Database::get_course_table(TABLE_DOCUMENT);
806
-			$result=Database::query("SELECT * FROM $dbTable WHERE id=$id");
807
-			$myrow=Database::fetch_array($result);
808
-
809
-			$pathname=explode("/",$myrow["path"]); // making a correct name for the link
810
-			$last=count($pathname)-1;  // making a correct name for the link
811
-			$filename=$pathname[$last];  // making a correct name for the link
812
-			if (($builder != 'builder') and ($icon != 'wrap')) { echo "<td>"; }
813
-
814
-			echo str_repeat("&nbsp;&gt;",$level);
815
-
816
-			if ($icon != 'nolink') {
817
-				if ($completed=='completed') {
818
-					echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on'>";
819
-				}	else {
820
-					echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on' style='visibility: hidden'>";
821
-					//echo "&nbsp;";
822
-				}
823
-			}
824
-			if (($builder != 'builder') and ($icon != 'wrap')) { echo "</td><td>"; }
825
-			$image=choose_image($filename);
826
-
827
-			$sql="select * from $tbl_learnpath_item where id=$id_in_path";
828
-			$result=Database::query($sql);	$row=Database::fetch_array($result);
829
-			if ($row['title'] != '') { $filename=$row['title']; }
830
-			$desc=$row['description'];
831
-
832
-			if (($myrow["path"]=='') and ($filename=='')) {
833
-				echo "<span class='messagesmall'>".get_lang('StepDeleted1')." $type ".get_lang('StepDeleted2')."</span>";
834
-				return(true);
835
-			}
836
-
837
-			if ($icon == 'nolink') { return(shorten($filename,$length)); }
838
-			if ($icon == 'icon') { echo "<img src='../img/$image' align=\"absmiddle\" alt='$image'>"; }
839
-			if ($builder != 'builder')
840
-			{
841
-				echo "<a href=\"".api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Document&origin=$origin&docurl=".$myrow["path"]."#$id_in_path\" class='$completed'>".shorten($filename,($length-3*$level))."</a>";
842
-				if ($desc != '')
843
-				{
844
-					if ($icon != 'wrap')
845
-					{
846
-						echo "</tr><tr><td></td><td></td><td><div class='description'>&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div></td></tr>";
847
-					}
848
-					else
849
-					{
850
-						echo "<div class='description'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div>";
851
-					}
852
-				} $items[]=api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Document&origin=$origin&docurl=".$myrow["path"]."#$id_in_path";
853
-			}
854
-			else
855
-			{
856
-				$enableDocumentParsing='yes';
857
-				if (!$enableDocumentParsing)
858
-				{ //this is the solution for the non-parsing version in the builder
859
-					$file=urlencode($myrow["path"]);
860
-					echo "<a href='../document/showinframes.php?file=$file' class='$completed' $hyperlink_target_parameter>".shorten($filename,($length-3*$level))."</a>";
861
-				}
862
-				else
863
-				{
864
-					echo "<a href=\"../document/download.php?doc_url=".$myrow["path"]."\" class='$completed' $hyperlink_target_parameter>".shorten($filename,($length-3*$level))."</a>";
865
-				}
866
-			}
867
-			break;
868
-
869
-		case "Assignments":
870
-			$name=get_lang('Assignments');
871
-			$sql="select * from $tbl_learnpath_item where id=$id_in_path";
872
-			$result=Database::query($sql);	$row=Database::fetch_array($result);
873
-			if ($row['title'] != '') { $name=$row['title']; }
874
-			$desc=$row['description'];
875
-			echo str_repeat("&nbsp;&gt;",$level);
876
-
877
-			if (($builder != 'builder') and ($icon != 'wrap')) { echo "<td>"; }
878
-			if ($icon != 'nolink')
879
-			{
880
-				if ($completed=='completed') {
881
-					echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on'>";
882
-				}	else {
883
-					echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on' style='visibility: hidden'>";
884
-					//echo "&nbsp;";
885
-				}
886
-			}
887
-			if (($builder != 'builder') and ($icon != 'wrap')) { echo "</td><td>"; }
888
-
889
-			if ($name=='')
890
-			{
891
-				echo "<span class='messagesmall'>".get_lang('StepDeleted1')." $type ".get_lang('StepDeleted2')."</span>"; return(true);
892
-			}
893
-
894
-			if ($icon == 'nolink') { return(shorten($name,$length)); }
895
-			if ($icon == 'icon') { echo "<img src='../img/works.gif' align=\"absmiddle\">"; }
896
-			if ($builder != 'builder')
897
-			{
898
-				echo "<a href=\"".api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Assignments&origin=$origin#$id_in_path\" class='$completed'>".shorten($name,($length-3*$level))."</a>"; $items[]=api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Assignments&origin=$origin#$id_in_path";
899
-				if ($desc != '')
900
-				{
901
-					if ($icon != 'wrap')
902
-					{
903
-						echo "</tr><tr><td></td><td></td><td><div class='description'>&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div></td></tr>";
904
-					}
905
-					else
906
-					{
907
-						echo "<div class='description'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div>";
908
-					}
909
-				}
910
-			}
911
-			else
912
-			{
913
-				echo "<a href=\"../work/work.php\" class='$completed' target='_blank'>".shorten($name,($length-3*$level))."</a>";
914
-			}
915
-			break;
916
-		case "Dropbox":
917
-			$name=get_lang('Dropbox');
918
-			$sql="select * from $tbl_learnpath_item where id=$id_in_path";
919
-			$result=Database::query($sql);	$row=Database::fetch_array($result);
920
-			if ($row['title'] != '') { $name=$row['title']; }
921
-			$desc=$row['description'];
922
-			echo str_repeat("&nbsp;&gt;",$level);
923
-
924
-			if (($builder != 'builder') and ($icon != 'wrap')) { echo "<td>"; }
925
-			if ($icon != 'nolink') {
926
-				if ($completed=='completed') {
927
-					echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on'>";
928
-				}	else {
929
-					echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on' style='visibility: hidden'>";
930
-					//echo "&nbsp;";
931
-				}
932
-			}
933
-			if (($builder != 'builder') and ($icon != 'wrap')) { echo "</td><td>"; }
934
-
935
-			if ($name=='') { echo "<span class='messagesmall'>".get_lang('StepDeleted1')." $type ".get_lang('StepDeleted2')."</span>"; return(true); }
936
-
937
-			if ($icon == 'nolink') { return(shorten($name,$length)); }
938
-			if ($icon == 'icon') { echo "<img src='../img/dropbox.gif' align=\"absmiddle\">"; }
939
-
940
-			if ($builder != 'builder')
941
-			{
942
-				echo "<a href=\"".api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Dropbox&origin=$origin#$id_in_path\" class='$completed'>".shorten($name,($length-3*$level))."</a>"; $items[]=api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Dropbox&origin=$origin#$id_in_path";
943
-				if ($desc != '') {
944
-					if ($icon != 'wrap') {
945
-						echo "</tr><tr><td></td><td></td><td><div class='description'>&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div></td></tr>"; }
946
-					else {
947
-						echo "<div class='description'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div>"; }
948
-				}
949
-			} else {
950
-				echo "<a href=\"../dropbox/index.php\" class='$completed' target='_blank'>".shorten($name,($length-3*$level))."</a>";
951
-			}
952
-			break;
953
-		case "Introduction_text":
954
-			$name=get_lang('IntroductionText');
955
-			$sql="select * from $tbl_learnpath_item where id=$id_in_path";
956
-			$result=Database::query($sql);	$row=Database::fetch_array($result);
957
-			if ($row['title'] != '') { $name=$row['title']; }
958
-			$desc=$row['description'];
959
-			echo str_repeat("&nbsp;&gt;",$level);
960
-
961
-			if (($builder != 'builder') and ($icon != 'wrap')) { echo "<td>"; }
962
-			if ($icon != 'nolink') {
963
-				if ($completed=='completed') {
964
-					echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on'>";
965
-				}	else {
966
-					echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on' style='visibility: hidden'>";
967
-					//echo "&nbsp;";
968
-				}
969
-			}
970
-			if (($builder != 'builder') and ($icon != 'wrap')) { echo "</td><td>"; }
971
-
972
-			if ($name=='') { echo "<span class='messagesmall'>".get_lang('StepDeleted1')." $type ".get_lang('StepDeleted2')."</span>"; return(true); }
973
-
974
-			if ($icon == 'nolink') { return(shorten($name,$length)); }
975
-			if ($icon == 'icon') { echo "<img src='../img/introduction.gif' align=\"absmiddle\" alt='introduction'>"; }
976
-
977
-			if ($builder != 'builder')
978
-			{
979
-				echo "<a href=\"".api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Introduction_text&origin=$origin#$id_in_path\" class='$completed'>".shorten($name,($length-3*$level))."</a>";
980
-				$items[]=api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Introduction_text&origin=$origin#$id_in_path";
981
-				if ($desc != '') {
982
-					if ($icon != 'wrap') {
983
-						echo "</tr><tr><td></td><td></td><td><div class='description'>&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div></td></tr>"; }
984
-					else {
985
-						echo "<div class='description'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div>"; }
986
-				}
987
-			} else {
988
-				$s = api_get_path(WEB_COURSE_PATH)."$_cid/index.php?intro_cmdEdit=1";
989
-				echo "<a href=\"$s\" class='$completed' target='_blank'>".shorten($name,($length-3*$level))."</a>";
990
-			}
991
-			break;
992
-		case "Course_description":
993
-			$name=get_lang('CourseDescription');
994
-			$sql="select * from $tbl_learnpath_item where id=$id_in_path";
995
-			$result=Database::query($sql);	$row=Database::fetch_array($result);
996
-			if ($row['title'] != '') { $name=$row['title']; }
997
-			$desc=$row['description'];
998
-			echo str_repeat("&nbsp;&gt;",$level);
999
-
1000
-			if (($builder != 'builder') and ($icon != 'wrap')) { echo "<td>"; }
1001
-			if ($icon != 'nolink') {
1002
-				if ($completed=='completed') {
1003
-					echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on'>";
1004
-				}	else {
1005
-					echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on' style='visibility: hidden'>";
1006
-					//echo "&nbsp;";
1007
-				}
1008
-			}
1009
-			if (($builder != 'builder') and ($icon != 'wrap')) { echo "</td><td>"; }
1010
-
1011
-			if ($name=='') { echo "<span class='messagesmall'>".get_lang('StepDeleted1')." $type ".get_lang('StepDeleted2')."</span>"; return(true); }
1012
-
1013
-			if ($icon == 'nolink') { return(shorten($name,$length)); }
1014
-			if ($icon == 'icon') { echo "<img src='../img/info.gif' align=\"absmiddle\" alt='info'>"; }
1015
-
1016
-			if ($builder != 'builder')
1017
-			{
1018
-				echo "<a href=\"".api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Course_description&origin=$origin#$id_in_path\" class='$completed'>".shorten($name,($length-3*$level))."</a>"; $items[]=api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Course_description&origin=$origin#$id_in_path";
1019
-				if ($desc != '') {
1020
-					if ($icon != 'wrap') {
1021
-						echo "</tr><tr><td></td><td></td><td><div class='description'>&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div></td></tr>"; }
1022
-					else {
1023
-						echo "<div class='description'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div>"; }
1024
-				}
1025
-			} else {
1026
-				$s=api_get_path(WEB_CODE_PATH)."course_description";
1027
-				echo "<a href=\"$s\" class='$completed' target='_blank'>".shorten($name,($length-3*$level))."</a>";
1028
-			}
1029
-			break;
1030
-		case "Groups":
1031
-			$name=get_lang('Groups');
1032
-			$sql="select * from $tbl_learnpath_item where id=$id_in_path";
1033
-			$result=Database::query($sql);	$row=Database::fetch_array($result);
1034
-			if ($row['title'] != '') { $name=$row['title']; }
1035
-			$desc=$row['description'];
1036
-			echo str_repeat("&nbsp;&gt;",$level);
1037
-
1038
-			if (($builder != 'builder') and ($icon != 'wrap')) { echo "<td>"; }
1039
-			if ($icon != 'nolink') {
1040
-				if ($completed=='completed') {
1041
-					echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on'>";
1042
-				}	else {
1043
-					echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on' style='visibility: hidden'>";
1044
-					//echo "&nbsp;";
1045
-				}
1046
-			}
1047
-			if (($builder != 'builder') and ($icon != 'wrap')) { echo "</td><td>"; }
1048
-
1049
-			if ($name=='') { echo "<span class='messagesmall'>".get_lang('StepDeleted1')." $type ".get_lang('StepDeleted2')."</span>"; return(true); }
1050
-
1051
-			if ($icon == 'nolink') { return(shorten($name,$length)); }
1052
-			if ($icon == 'icon') { echo "<img src='../img/group.gif' align=\"absmiddle\" alt='group'>"; }
1053
-
1054
-			if ($builder != 'builder')
1055
-			{
1056
-				echo "<a href=\"".api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Groups&origin=$origin#$id_in_path\" class='$completed'>".shorten($name,($length-3*$level))."</a>"; $items[]=api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Groups&origin=$origin#$id_in_path";
1057
-				if ($desc != '') {
1058
-					if ($icon != 'wrap') {
1059
-						echo "</tr><tr><td></td><td></td><td><div class='description'>&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div></td></tr>"; }
1060
-					else {
1061
-						echo "<div class='description'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div>"; }
1062
-				}
1063
-			} else {
1064
-				echo "<a href=\"../group/group.php?origin=$origin\" class='$completed' target='_blank'>".shorten($name,($length-3*$level))."</a>";
1065
-			}
1066
-			break;
1067
-		case "Users":
1068
-			$name=get_lang('Users');
1069
-			$sql="select * from $tbl_learnpath_item where id=$id_in_path";
1070
-			$result=Database::query($sql);	$row=Database::fetch_array($result);
1071
-			if ($row['title'] != '') { $name=$row['title']; }
1072
-			$desc=$row['description'];
1073
-			echo str_repeat("&nbsp;&gt;",$level);
1074
-
1075
-			if (($builder != 'builder') and ($icon != 'wrap')) { echo "<td>"; }
1076
-			if ($icon != 'nolink') {
1077
-				if ($completed=='completed') {
1078
-					echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on'>";
1079
-				}	else {
1080
-					echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on' style='visibility: hidden'>";
1081
-					//echo "&nbsp;";
1082
-				}
1083
-			}
1084
-			if (($builder != 'builder') and ($icon != 'wrap')) { echo "</td><td>"; }
1085
-
1086
-			if ($name=='') { echo "<span class='messagesmall'>".get_lang('StepDeleted1')." $type ".get_lang('StepDeleted2')."</span>"; return(true); }
1087
-
1088
-			if ($icon == 'nolink') { return(shorten($name,$length)); }
1089
-			if ($icon == 'icon') { echo "<img src='../img/members.gif' align=\"absmiddle\" alt='members'>"; }
1090
-
1091
-			if ($builder != 'builder')
1092
-			{
1093
-				echo "<a href=\"".api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Users&origin=$origin#$id_in_path\" class='$completed'>".shorten($name,($length-3*$level))."</a>"; $items[]=api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Users&origin=$origin#$id_in_path";
1094
-				if ($desc != '') {
1095
-					if ($icon != 'wrap') {
1096
-						echo "</tr><tr><td></td><td></td><td><div class='description'>&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div></td></tr>"; }
1097
-					else {
1098
-						echo "<div class='description'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div>"; }
1099
-				}
1100
-			} else {
1101
-				echo "<a href=\"../user/user.php?origin=$origin\" class='$completed' target='_blank'>".shorten($name,($length-3*$level))."</a>";
1102
-			}
1103
-			break;
1104
-	}//end huge switch-statement
742
+            $tbl_posts       = $_course['dbNameGlu'].'bb_posts';
743
+            $tbl_posts_text  = $_course['dbNameGlu'].'bb_posts_text';
744
+            $TBL_FORUMS = $_course['dbNameGlu']."bb_forums";
745
+            $result= Database::query("SELECT * FROM $tbl_posts where post_id=$id");
746
+            $myrow=Database::fetch_array($result);
747
+            // grabbing the title of the post
748
+            $sql_titel="SELECT * FROM $tbl_posts_text WHERE post_id=".$myrow["post_id"];
749
+            $result_titel=Database::query($sql_titel);
750
+            $myrow_titel=Database::fetch_array($result_titel);
751
+
752
+            $sql="select * from $tbl_learnpath_item where id=$id_in_path";
753
+            $result=Database::query($sql);	$row=Database::fetch_array($result);
754
+            if ($row['title'] != '') { $myrow_titel["post_title"]=$row['title']; }
755
+            $desc=$row['description'];
756
+            echo str_repeat("&nbsp;&gt;",$level);
757
+
758
+            $posternom=$myrow['nom'];				$posterprenom=$myrow['prenom'];
759
+            $posttime=$myrow['post_time'];			$posttext=$myrow_titel['post_text'];
760
+            $posttitle=$myrow_titel['post_title'];
761
+            $posttext = str_replace('"',"'",$posttext);
762
+
763
+            if (($builder != 'builder') and ($icon != 'wrap')) { echo "<td>"; }
764
+            if ($icon != 'nolink')
765
+            {
766
+                if ($completed=='completed') {
767
+                    echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on'>";
768
+                }	else {
769
+                    echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on' style='visibility: hidden'>";
770
+                    //echo "&nbsp;";
771
+                }
772
+            }
773
+            if (($builder != 'builder') and ($icon != 'wrap')) { echo "</td><td>"; }
774
+
775
+            if ($myrow_titel["post_title"]=='')
776
+            {
777
+                $type="Forum";
778
+                echo "<span class='messagesmall'>".get_lang('StepDeleted1')." $type ".get_lang('StepDeleted2')."</span>"; return(true);
779
+            }
780
+
781
+            if ($icon == 'nolink') { return(shorten($myrow_titel["post_title"],$length)); }
782
+            if ($icon == 'icon') { echo "<img src='../img/forum.gif' align=\"absmiddle\" alt='forum'>"; }
783
+            if ($builder != 'builder')
784
+            {
785
+                echo "<a href=\"".api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Post&origin=$origin&posternom=$posternom&posterprenom=$posterprenom&posttime=$posttime&posttext=$posttext&posttitle=$posttitle#$id_in_path\" class='$completed'>".shorten($myrow_titel["post_title"],($length-3*$level))."</a>"; $items[]=api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Post&origin=$origin&posternom=$posternom&posterprenom=$posterprenom&posttime=$posttime&posttext=$posttext&posttitle=$posttitle#$id_in_path";
786
+                if ($desc != '')
787
+                {
788
+                    if ($icon != 'wrap')
789
+                    {
790
+                        echo "</tr><tr><td></td><td></td><td><div class='description'>&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div></td></tr>";
791
+                    }
792
+                    else
793
+                    {
794
+                        echo "<div class='description'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div>";
795
+                    }
796
+                }
797
+            }
798
+            else
799
+            {
800
+                echo "<a href=\"../phpbb/viewtopic.php?topic=".$myrow["topic_id"]."&forum=".$myrow["forum_id"]."&md5=".$myrow["md5"]."\" class='$completed' target='_blank'>".shorten($myrow_titel["post_title"],($length-3*$level))."</a>";
801
+            }
802
+            break;
803
+
804
+        case "Document":
805
+            $dbTable  = Database::get_course_table(TABLE_DOCUMENT);
806
+            $result=Database::query("SELECT * FROM $dbTable WHERE id=$id");
807
+            $myrow=Database::fetch_array($result);
808
+
809
+            $pathname=explode("/",$myrow["path"]); // making a correct name for the link
810
+            $last=count($pathname)-1;  // making a correct name for the link
811
+            $filename=$pathname[$last];  // making a correct name for the link
812
+            if (($builder != 'builder') and ($icon != 'wrap')) { echo "<td>"; }
813
+
814
+            echo str_repeat("&nbsp;&gt;",$level);
815
+
816
+            if ($icon != 'nolink') {
817
+                if ($completed=='completed') {
818
+                    echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on'>";
819
+                }	else {
820
+                    echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on' style='visibility: hidden'>";
821
+                    //echo "&nbsp;";
822
+                }
823
+            }
824
+            if (($builder != 'builder') and ($icon != 'wrap')) { echo "</td><td>"; }
825
+            $image=choose_image($filename);
826
+
827
+            $sql="select * from $tbl_learnpath_item where id=$id_in_path";
828
+            $result=Database::query($sql);	$row=Database::fetch_array($result);
829
+            if ($row['title'] != '') { $filename=$row['title']; }
830
+            $desc=$row['description'];
831
+
832
+            if (($myrow["path"]=='') and ($filename=='')) {
833
+                echo "<span class='messagesmall'>".get_lang('StepDeleted1')." $type ".get_lang('StepDeleted2')."</span>";
834
+                return(true);
835
+            }
836
+
837
+            if ($icon == 'nolink') { return(shorten($filename,$length)); }
838
+            if ($icon == 'icon') { echo "<img src='../img/$image' align=\"absmiddle\" alt='$image'>"; }
839
+            if ($builder != 'builder')
840
+            {
841
+                echo "<a href=\"".api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Document&origin=$origin&docurl=".$myrow["path"]."#$id_in_path\" class='$completed'>".shorten($filename,($length-3*$level))."</a>";
842
+                if ($desc != '')
843
+                {
844
+                    if ($icon != 'wrap')
845
+                    {
846
+                        echo "</tr><tr><td></td><td></td><td><div class='description'>&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div></td></tr>";
847
+                    }
848
+                    else
849
+                    {
850
+                        echo "<div class='description'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div>";
851
+                    }
852
+                } $items[]=api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Document&origin=$origin&docurl=".$myrow["path"]."#$id_in_path";
853
+            }
854
+            else
855
+            {
856
+                $enableDocumentParsing='yes';
857
+                if (!$enableDocumentParsing)
858
+                { //this is the solution for the non-parsing version in the builder
859
+                    $file=urlencode($myrow["path"]);
860
+                    echo "<a href='../document/showinframes.php?file=$file' class='$completed' $hyperlink_target_parameter>".shorten($filename,($length-3*$level))."</a>";
861
+                }
862
+                else
863
+                {
864
+                    echo "<a href=\"../document/download.php?doc_url=".$myrow["path"]."\" class='$completed' $hyperlink_target_parameter>".shorten($filename,($length-3*$level))."</a>";
865
+                }
866
+            }
867
+            break;
868
+
869
+        case "Assignments":
870
+            $name=get_lang('Assignments');
871
+            $sql="select * from $tbl_learnpath_item where id=$id_in_path";
872
+            $result=Database::query($sql);	$row=Database::fetch_array($result);
873
+            if ($row['title'] != '') { $name=$row['title']; }
874
+            $desc=$row['description'];
875
+            echo str_repeat("&nbsp;&gt;",$level);
876
+
877
+            if (($builder != 'builder') and ($icon != 'wrap')) { echo "<td>"; }
878
+            if ($icon != 'nolink')
879
+            {
880
+                if ($completed=='completed') {
881
+                    echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on'>";
882
+                }	else {
883
+                    echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on' style='visibility: hidden'>";
884
+                    //echo "&nbsp;";
885
+                }
886
+            }
887
+            if (($builder != 'builder') and ($icon != 'wrap')) { echo "</td><td>"; }
888
+
889
+            if ($name=='')
890
+            {
891
+                echo "<span class='messagesmall'>".get_lang('StepDeleted1')." $type ".get_lang('StepDeleted2')."</span>"; return(true);
892
+            }
893
+
894
+            if ($icon == 'nolink') { return(shorten($name,$length)); }
895
+            if ($icon == 'icon') { echo "<img src='../img/works.gif' align=\"absmiddle\">"; }
896
+            if ($builder != 'builder')
897
+            {
898
+                echo "<a href=\"".api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Assignments&origin=$origin#$id_in_path\" class='$completed'>".shorten($name,($length-3*$level))."</a>"; $items[]=api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Assignments&origin=$origin#$id_in_path";
899
+                if ($desc != '')
900
+                {
901
+                    if ($icon != 'wrap')
902
+                    {
903
+                        echo "</tr><tr><td></td><td></td><td><div class='description'>&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div></td></tr>";
904
+                    }
905
+                    else
906
+                    {
907
+                        echo "<div class='description'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div>";
908
+                    }
909
+                }
910
+            }
911
+            else
912
+            {
913
+                echo "<a href=\"../work/work.php\" class='$completed' target='_blank'>".shorten($name,($length-3*$level))."</a>";
914
+            }
915
+            break;
916
+        case "Dropbox":
917
+            $name=get_lang('Dropbox');
918
+            $sql="select * from $tbl_learnpath_item where id=$id_in_path";
919
+            $result=Database::query($sql);	$row=Database::fetch_array($result);
920
+            if ($row['title'] != '') { $name=$row['title']; }
921
+            $desc=$row['description'];
922
+            echo str_repeat("&nbsp;&gt;",$level);
923
+
924
+            if (($builder != 'builder') and ($icon != 'wrap')) { echo "<td>"; }
925
+            if ($icon != 'nolink') {
926
+                if ($completed=='completed') {
927
+                    echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on'>";
928
+                }	else {
929
+                    echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on' style='visibility: hidden'>";
930
+                    //echo "&nbsp;";
931
+                }
932
+            }
933
+            if (($builder != 'builder') and ($icon != 'wrap')) { echo "</td><td>"; }
934
+
935
+            if ($name=='') { echo "<span class='messagesmall'>".get_lang('StepDeleted1')." $type ".get_lang('StepDeleted2')."</span>"; return(true); }
936
+
937
+            if ($icon == 'nolink') { return(shorten($name,$length)); }
938
+            if ($icon == 'icon') { echo "<img src='../img/dropbox.gif' align=\"absmiddle\">"; }
939
+
940
+            if ($builder != 'builder')
941
+            {
942
+                echo "<a href=\"".api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Dropbox&origin=$origin#$id_in_path\" class='$completed'>".shorten($name,($length-3*$level))."</a>"; $items[]=api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Dropbox&origin=$origin#$id_in_path";
943
+                if ($desc != '') {
944
+                    if ($icon != 'wrap') {
945
+                        echo "</tr><tr><td></td><td></td><td><div class='description'>&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div></td></tr>"; }
946
+                    else {
947
+                        echo "<div class='description'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div>"; }
948
+                }
949
+            } else {
950
+                echo "<a href=\"../dropbox/index.php\" class='$completed' target='_blank'>".shorten($name,($length-3*$level))."</a>";
951
+            }
952
+            break;
953
+        case "Introduction_text":
954
+            $name=get_lang('IntroductionText');
955
+            $sql="select * from $tbl_learnpath_item where id=$id_in_path";
956
+            $result=Database::query($sql);	$row=Database::fetch_array($result);
957
+            if ($row['title'] != '') { $name=$row['title']; }
958
+            $desc=$row['description'];
959
+            echo str_repeat("&nbsp;&gt;",$level);
960
+
961
+            if (($builder != 'builder') and ($icon != 'wrap')) { echo "<td>"; }
962
+            if ($icon != 'nolink') {
963
+                if ($completed=='completed') {
964
+                    echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on'>";
965
+                }	else {
966
+                    echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on' style='visibility: hidden'>";
967
+                    //echo "&nbsp;";
968
+                }
969
+            }
970
+            if (($builder != 'builder') and ($icon != 'wrap')) { echo "</td><td>"; }
971
+
972
+            if ($name=='') { echo "<span class='messagesmall'>".get_lang('StepDeleted1')." $type ".get_lang('StepDeleted2')."</span>"; return(true); }
973
+
974
+            if ($icon == 'nolink') { return(shorten($name,$length)); }
975
+            if ($icon == 'icon') { echo "<img src='../img/introduction.gif' align=\"absmiddle\" alt='introduction'>"; }
976
+
977
+            if ($builder != 'builder')
978
+            {
979
+                echo "<a href=\"".api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Introduction_text&origin=$origin#$id_in_path\" class='$completed'>".shorten($name,($length-3*$level))."</a>";
980
+                $items[]=api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Introduction_text&origin=$origin#$id_in_path";
981
+                if ($desc != '') {
982
+                    if ($icon != 'wrap') {
983
+                        echo "</tr><tr><td></td><td></td><td><div class='description'>&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div></td></tr>"; }
984
+                    else {
985
+                        echo "<div class='description'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div>"; }
986
+                }
987
+            } else {
988
+                $s = api_get_path(WEB_COURSE_PATH)."$_cid/index.php?intro_cmdEdit=1";
989
+                echo "<a href=\"$s\" class='$completed' target='_blank'>".shorten($name,($length-3*$level))."</a>";
990
+            }
991
+            break;
992
+        case "Course_description":
993
+            $name=get_lang('CourseDescription');
994
+            $sql="select * from $tbl_learnpath_item where id=$id_in_path";
995
+            $result=Database::query($sql);	$row=Database::fetch_array($result);
996
+            if ($row['title'] != '') { $name=$row['title']; }
997
+            $desc=$row['description'];
998
+            echo str_repeat("&nbsp;&gt;",$level);
999
+
1000
+            if (($builder != 'builder') and ($icon != 'wrap')) { echo "<td>"; }
1001
+            if ($icon != 'nolink') {
1002
+                if ($completed=='completed') {
1003
+                    echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on'>";
1004
+                }	else {
1005
+                    echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on' style='visibility: hidden'>";
1006
+                    //echo "&nbsp;";
1007
+                }
1008
+            }
1009
+            if (($builder != 'builder') and ($icon != 'wrap')) { echo "</td><td>"; }
1010
+
1011
+            if ($name=='') { echo "<span class='messagesmall'>".get_lang('StepDeleted1')." $type ".get_lang('StepDeleted2')."</span>"; return(true); }
1012
+
1013
+            if ($icon == 'nolink') { return(shorten($name,$length)); }
1014
+            if ($icon == 'icon') { echo "<img src='../img/info.gif' align=\"absmiddle\" alt='info'>"; }
1015
+
1016
+            if ($builder != 'builder')
1017
+            {
1018
+                echo "<a href=\"".api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Course_description&origin=$origin#$id_in_path\" class='$completed'>".shorten($name,($length-3*$level))."</a>"; $items[]=api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Course_description&origin=$origin#$id_in_path";
1019
+                if ($desc != '') {
1020
+                    if ($icon != 'wrap') {
1021
+                        echo "</tr><tr><td></td><td></td><td><div class='description'>&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div></td></tr>"; }
1022
+                    else {
1023
+                        echo "<div class='description'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div>"; }
1024
+                }
1025
+            } else {
1026
+                $s=api_get_path(WEB_CODE_PATH)."course_description";
1027
+                echo "<a href=\"$s\" class='$completed' target='_blank'>".shorten($name,($length-3*$level))."</a>";
1028
+            }
1029
+            break;
1030
+        case "Groups":
1031
+            $name=get_lang('Groups');
1032
+            $sql="select * from $tbl_learnpath_item where id=$id_in_path";
1033
+            $result=Database::query($sql);	$row=Database::fetch_array($result);
1034
+            if ($row['title'] != '') { $name=$row['title']; }
1035
+            $desc=$row['description'];
1036
+            echo str_repeat("&nbsp;&gt;",$level);
1037
+
1038
+            if (($builder != 'builder') and ($icon != 'wrap')) { echo "<td>"; }
1039
+            if ($icon != 'nolink') {
1040
+                if ($completed=='completed') {
1041
+                    echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on'>";
1042
+                }	else {
1043
+                    echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on' style='visibility: hidden'>";
1044
+                    //echo "&nbsp;";
1045
+                }
1046
+            }
1047
+            if (($builder != 'builder') and ($icon != 'wrap')) { echo "</td><td>"; }
1048
+
1049
+            if ($name=='') { echo "<span class='messagesmall'>".get_lang('StepDeleted1')." $type ".get_lang('StepDeleted2')."</span>"; return(true); }
1050
+
1051
+            if ($icon == 'nolink') { return(shorten($name,$length)); }
1052
+            if ($icon == 'icon') { echo "<img src='../img/group.gif' align=\"absmiddle\" alt='group'>"; }
1053
+
1054
+            if ($builder != 'builder')
1055
+            {
1056
+                echo "<a href=\"".api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Groups&origin=$origin#$id_in_path\" class='$completed'>".shorten($name,($length-3*$level))."</a>"; $items[]=api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Groups&origin=$origin#$id_in_path";
1057
+                if ($desc != '') {
1058
+                    if ($icon != 'wrap') {
1059
+                        echo "</tr><tr><td></td><td></td><td><div class='description'>&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div></td></tr>"; }
1060
+                    else {
1061
+                        echo "<div class='description'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div>"; }
1062
+                }
1063
+            } else {
1064
+                echo "<a href=\"../group/group.php?origin=$origin\" class='$completed' target='_blank'>".shorten($name,($length-3*$level))."</a>";
1065
+            }
1066
+            break;
1067
+        case "Users":
1068
+            $name=get_lang('Users');
1069
+            $sql="select * from $tbl_learnpath_item where id=$id_in_path";
1070
+            $result=Database::query($sql);	$row=Database::fetch_array($result);
1071
+            if ($row['title'] != '') { $name=$row['title']; }
1072
+            $desc=$row['description'];
1073
+            echo str_repeat("&nbsp;&gt;",$level);
1074
+
1075
+            if (($builder != 'builder') and ($icon != 'wrap')) { echo "<td>"; }
1076
+            if ($icon != 'nolink') {
1077
+                if ($completed=='completed') {
1078
+                    echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on'>";
1079
+                }	else {
1080
+                    echo "<img src='../img/checkbox_on2.gif' border='0' width='13' height='11' alt='on' style='visibility: hidden'>";
1081
+                    //echo "&nbsp;";
1082
+                }
1083
+            }
1084
+            if (($builder != 'builder') and ($icon != 'wrap')) { echo "</td><td>"; }
1085
+
1086
+            if ($name=='') { echo "<span class='messagesmall'>".get_lang('StepDeleted1')." $type ".get_lang('StepDeleted2')."</span>"; return(true); }
1087
+
1088
+            if ($icon == 'nolink') { return(shorten($name,$length)); }
1089
+            if ($icon == 'icon') { echo "<img src='../img/members.gif' align=\"absmiddle\" alt='members'>"; }
1090
+
1091
+            if ($builder != 'builder')
1092
+            {
1093
+                echo "<a href=\"".api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Users&origin=$origin#$id_in_path\" class='$completed'>".shorten($name,($length-3*$level))."</a>"; $items[]=api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Users&origin=$origin#$id_in_path";
1094
+                if ($desc != '') {
1095
+                    if ($icon != 'wrap') {
1096
+                        echo "</tr><tr><td></td><td></td><td><div class='description'>&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div></td></tr>"; }
1097
+                    else {
1098
+                        echo "<div class='description'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;".shorten($desc,($length-3*$level))."</div>"; }
1099
+                }
1100
+            } else {
1101
+                echo "<a href=\"../user/user.php?origin=$origin\" class='$completed' target='_blank'>".shorten($name,($length-3*$level))."</a>";
1102
+            }
1103
+            break;
1104
+    }//end huge switch-statement
1105 1105
 }
1106 1106
 
1107 1107
 /**
@@ -1116,253 +1116,253 @@  discard block
 block discarded – undo
1116 1116
 */
1117 1117
 function get_addedresource_link_in_learnpath($type, $id, $id_in_path)
1118 1118
 {
1119
-	global $_course, $learnpath_id, $tbl_learnpath_item, $items;
1120
-	global $curDirPath, $_configuration, $enableDocumentParsing, $_user , $_cid;
1121
-
1122
-	$hyperlink_target_parameter = ""; //or e.g. target='_blank'
1123
- $builder = 'player';
1124
-	$origin='learnpath';
1125
-
1126
-	$linktype=$type;
1127
-	if (($type=="Link _self") or ($type=="Link _blank")) { $type="Link"; }
1128
-
1129
- $link = '';
1130
-
1131
-	switch ($type)
1132
-	{
1133
-		case "Agenda":
1134
-			$TABLEAGENDA 		= Database::get_course_table(TABLE_AGENDA);;
1135
-			$result = Database::query("SELECT * FROM $TABLEAGENDA WHERE id=$id");
1136
-			$myrow=Database::fetch_array($result);
1137
-
1138
-			$sql="select * from $tbl_learnpath_item where id=$id_in_path";
1139
-			$result=Database::query($sql);	$row=Database::fetch_array($result);
1140
-			if ($row['title'] != '') { $myrow["title"]=$row['title']; }
1141
-			$desc=$row['description'];
1142
-			$agenda_id=$row['item_id'];
1143
-
1144
-			if ($builder != 'builder')
1145
-			{
1146
-				$link .= api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Agenda&origin=$origin&agenda_id=$agenda_id#$id_in_path";
1147
-			}
1148
-			else
1149
-			{
1150
-				$link .= "../calendar/agenda.php?origin=$origin&agenda_id=$agenda_id";
1151
-			}
1152
-			break;
1153
-
1154
-		case "Ad_Valvas":
1155
-			$tbl_announcement = Database::get_course_table(TABLE_ANNOUNCEMENT);
1156
-			$result = Database::query("SELECT * FROM $tbl_announcement WHERE id=$id");
1157
-			$myrow=Database::fetch_array($result);
1158
-
1159
-			if ($builder != 'builder')
1160
-			{
1161
-				$link .= api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Ad_Valvas&origin=$origin&ann_id=$id#$id_in_path";
1162
-			}
1163
-			else
1164
-			{
1165
-				$link .= "../announcements/announcements.php?origin=$origin&ann_id=$id";
1166
-			}
1167
-			break;
1168
-
1169
-		case "Link" :
1170
-			$TABLETOOLLINK	= Database::get_course_table(TABLE_LINK);
1171
-			$result= Database::query("SELECT * FROM $TABLETOOLLINK WHERE id=$id");
1172
-			$myrow=Database::fetch_array($result);
1173
-
1174
-			$sql="select * from $tbl_learnpath_item where id=$id_in_path";
1175
-			$result=Database::query($sql);	$row=Database::fetch_array($result);
1176
-
1177
-			$thelink=$myrow["url"];
1178
-			if ($builder != 'builder')
1179
-			{
1180
-				$link .= api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=$linktype&origin=$origin&thelink=$thelink#$id_in_path";
1181
-			}
1182
-			else
1183
-			{
1184
-				$link .= $thelink;
1185
-			}
1186
-			break;
1187
-
1188
-		case "Exercise":
1189
-			$TBL_EXERCICES  = Database::get_course_table(TABLE_QUIZ_TEST);
1190
-			$result= Database::query("SELECT * FROM $TBL_EXERCICES WHERE id=$id");
1191
-			$myrow=Database::fetch_array($result);
1192
-
1193
-			if ($builder=='builder') { $origin='builder'; }
1194
-			  //this is needed for the exercise_submit.php can delete the session info about tests
1195
-
1196
-			$sql="select * from $tbl_learnpath_item where id=$id_in_path";
1197
-			$result=Database::query($sql);	$row=Database::fetch_array($result);
1198
-			if ($row['title'] != '') { $myrow["title"]=$row['title']; }
1199
-
1200
-			if ($builder != 'builder')
1201
-			{
1202
-				$link .= api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Exercise&origin=$origin&exerciseId=".$myrow["id"]."#$id_in_path";
1203
-			}
1204
-			else
1205
-			{
1206
-				$link .= "../exercice/exercise_submit.php?origin=$origin&exerciseId=".$myrow["id"];
1207
-			}
1208
-			break;
1209
-
1210
-		case "HotPotatoes":
1211
-	  	    $TBL_DOCUMENT  = Database::get_course_table(TABLE_DOCUMENT);
1212
-		    $documentPath=api_get_path(SYS_COURSE_PATH).$_course['path'].'/document';
1213
-			$result = Database::query("SELECT * FROM ".$TBL_DOCUMENT." WHERE id=$id");
1214
-		    $myrow= Database::fetch_array($result);
1215
-		    $path=$myrow["path"];
1216
-		  	$name=GetQuizName($path,$documentPath);
1217
-
1218
-			if ($builder=='builder') { $origin='builder'; }
1219
-
1220
-			$cid = $_course['official_code'];
1221
-
1222
-			if ($builder != 'builder')
1223
-			{
1224
-				$link .= api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=HotPotatoes&origin=$origin&id=$id#$id_in_path";
1225
-			}
1226
-			else
1227
-			{
1228
-				$link .= "../exercice/showinframes.php?file=$path&cid=$cid&uid=".$_user['user_id']."";
1229
-			}
1230
-			break;
1231
-
1232
-		case "Forum":
1119
+    global $_course, $learnpath_id, $tbl_learnpath_item, $items;
1120
+    global $curDirPath, $_configuration, $enableDocumentParsing, $_user , $_cid;
1121
+
1122
+    $hyperlink_target_parameter = ""; //or e.g. target='_blank'
1123
+    $builder = 'player';
1124
+    $origin='learnpath';
1125
+
1126
+    $linktype=$type;
1127
+    if (($type=="Link _self") or ($type=="Link _blank")) { $type="Link"; }
1128
+
1129
+    $link = '';
1130
+
1131
+    switch ($type)
1132
+    {
1133
+        case "Agenda":
1134
+            $TABLEAGENDA 		= Database::get_course_table(TABLE_AGENDA);;
1135
+            $result = Database::query("SELECT * FROM $TABLEAGENDA WHERE id=$id");
1136
+            $myrow=Database::fetch_array($result);
1137
+
1138
+            $sql="select * from $tbl_learnpath_item where id=$id_in_path";
1139
+            $result=Database::query($sql);	$row=Database::fetch_array($result);
1140
+            if ($row['title'] != '') { $myrow["title"]=$row['title']; }
1141
+            $desc=$row['description'];
1142
+            $agenda_id=$row['item_id'];
1143
+
1144
+            if ($builder != 'builder')
1145
+            {
1146
+                $link .= api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Agenda&origin=$origin&agenda_id=$agenda_id#$id_in_path";
1147
+            }
1148
+            else
1149
+            {
1150
+                $link .= "../calendar/agenda.php?origin=$origin&agenda_id=$agenda_id";
1151
+            }
1152
+            break;
1153
+
1154
+        case "Ad_Valvas":
1155
+            $tbl_announcement = Database::get_course_table(TABLE_ANNOUNCEMENT);
1156
+            $result = Database::query("SELECT * FROM $tbl_announcement WHERE id=$id");
1157
+            $myrow=Database::fetch_array($result);
1158
+
1159
+            if ($builder != 'builder')
1160
+            {
1161
+                $link .= api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Ad_Valvas&origin=$origin&ann_id=$id#$id_in_path";
1162
+            }
1163
+            else
1164
+            {
1165
+                $link .= "../announcements/announcements.php?origin=$origin&ann_id=$id";
1166
+            }
1167
+            break;
1168
+
1169
+        case "Link" :
1170
+            $TABLETOOLLINK	= Database::get_course_table(TABLE_LINK);
1171
+            $result= Database::query("SELECT * FROM $TABLETOOLLINK WHERE id=$id");
1172
+            $myrow=Database::fetch_array($result);
1173
+
1174
+            $sql="select * from $tbl_learnpath_item where id=$id_in_path";
1175
+            $result=Database::query($sql);	$row=Database::fetch_array($result);
1176
+
1177
+            $thelink=$myrow["url"];
1178
+            if ($builder != 'builder')
1179
+            {
1180
+                $link .= api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=$linktype&origin=$origin&thelink=$thelink#$id_in_path";
1181
+            }
1182
+            else
1183
+            {
1184
+                $link .= $thelink;
1185
+            }
1186
+            break;
1187
+
1188
+        case "Exercise":
1189
+            $TBL_EXERCICES  = Database::get_course_table(TABLE_QUIZ_TEST);
1190
+            $result= Database::query("SELECT * FROM $TBL_EXERCICES WHERE id=$id");
1191
+            $myrow=Database::fetch_array($result);
1192
+
1193
+            if ($builder=='builder') { $origin='builder'; }
1194
+                //this is needed for the exercise_submit.php can delete the session info about tests
1195
+
1196
+            $sql="select * from $tbl_learnpath_item where id=$id_in_path";
1197
+            $result=Database::query($sql);	$row=Database::fetch_array($result);
1198
+            if ($row['title'] != '') { $myrow["title"]=$row['title']; }
1199
+
1200
+            if ($builder != 'builder')
1201
+            {
1202
+                $link .= api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Exercise&origin=$origin&exerciseId=".$myrow["id"]."#$id_in_path";
1203
+            }
1204
+            else
1205
+            {
1206
+                $link .= "../exercice/exercise_submit.php?origin=$origin&exerciseId=".$myrow["id"];
1207
+            }
1208
+            break;
1209
+
1210
+        case "HotPotatoes":
1211
+              $TBL_DOCUMENT  = Database::get_course_table(TABLE_DOCUMENT);
1212
+            $documentPath=api_get_path(SYS_COURSE_PATH).$_course['path'].'/document';
1213
+            $result = Database::query("SELECT * FROM ".$TBL_DOCUMENT." WHERE id=$id");
1214
+            $myrow= Database::fetch_array($result);
1215
+            $path=$myrow["path"];
1216
+                $name=GetQuizName($path,$documentPath);
1217
+
1218
+            if ($builder=='builder') { $origin='builder'; }
1219
+
1220
+            $cid = $_course['official_code'];
1221
+
1222
+            if ($builder != 'builder')
1223
+            {
1224
+                $link .= api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=HotPotatoes&origin=$origin&id=$id#$id_in_path";
1225
+            }
1226
+            else
1227
+            {
1228
+                $link .= "../exercice/showinframes.php?file=$path&cid=$cid&uid=".$_user['user_id']."";
1229
+            }
1230
+            break;
1231
+
1232
+        case "Forum":
1233 1233
         //deprecated
1234
-			$TBL_FORUMS = Database::get_course_table(TABLE_FORUM);
1235
-			$result= Database::query("SELECT * FROM $TBL_FORUMS WHERE forum_id=$id");
1236
-			$myrow=Database::fetch_array($result);
1237
-
1238
-			if ($builder=='builder') { $origin='builder'; }
1239
-
1240
-			$sql="select * from $tbl_learnpath_item where id=$id_in_path";
1241
-			$result=Database::query($sql);	$row=Database::fetch_array($result);
1242
-			if ($row['title'] != '') { $myrow["forum_name"]=$row['title']; }
1243
-
1244
-			if ($myrow["forum_name"]=='') { $type="Forum"; }
1245
-
1246
-			$forumparameters="forum=".$myrow["forum_id"]."&md5=".$myrow["md5"];
1247
-			if ($builder != 'builder')
1248
-			{
1249
-				$link .= api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Forum&origin=$origin&forumparameters=$forumparameters#$id_in_path";
1250
-			}
1251
-			else
1252
-			{
1253
-				$link .= "../phpbb/viewforum.php?$forumparameters";
1254
-			}
1255
-			break;
1256
-
1257
-		case "Thread":  //forum post
1234
+            $TBL_FORUMS = Database::get_course_table(TABLE_FORUM);
1235
+            $result= Database::query("SELECT * FROM $TBL_FORUMS WHERE forum_id=$id");
1236
+            $myrow=Database::fetch_array($result);
1237
+
1238
+            if ($builder=='builder') { $origin='builder'; }
1239
+
1240
+            $sql="select * from $tbl_learnpath_item where id=$id_in_path";
1241
+            $result=Database::query($sql);	$row=Database::fetch_array($result);
1242
+            if ($row['title'] != '') { $myrow["forum_name"]=$row['title']; }
1243
+
1244
+            if ($myrow["forum_name"]=='') { $type="Forum"; }
1245
+
1246
+            $forumparameters="forum=".$myrow["forum_id"]."&md5=".$myrow["md5"];
1247
+            if ($builder != 'builder')
1248
+            {
1249
+                $link .= api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Forum&origin=$origin&forumparameters=$forumparameters#$id_in_path";
1250
+            }
1251
+            else
1252
+            {
1253
+                $link .= "../phpbb/viewforum.php?$forumparameters";
1254
+            }
1255
+            break;
1256
+
1257
+        case "Thread":  //forum post
1258 1258
         //deprecated
1259
-			$tbl_topics      = $_course['dbNameGlu'].'bb_topics';
1260
-			$tbl_posts		 = $_course['dbNameGlu'].'bb_posts';
1261
-			$TBL_FORUMS = $_course['dbNameGlu']."bb_forums";
1262
-			$sql="SELECT * FROM $tbl_topics where topic_id=$id";
1263
-			$result= Database::query($sql);
1264
-			$myrow=Database::fetch_array($result);
1265
-
1266
-			$sql="select * from $tbl_learnpath_item where id=$id_in_path";
1267
-			$result=Database::query($sql);	$row=Database::fetch_array($result);
1268
-
1269
-			if ($builder != 'builder')
1270
-			{
1271
-				$link .= api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Thread&origin=$origin&topic=".$myrow["topic_id"]."&forum=".$myrow["forum_id"]."&md5=".$myrow["md5"]."#$id_in_path";
1272
-			}
1273
-			else
1274
-			{
1275
-				$link .= "../phpbb/viewtopic.php?topic=".$myrow["topic_id"]."&forum=".$myrow["forum_id"]."&md5=".$myrow["md5"];
1276
-			}
1277
-			break;
1278
-		case "Post":
1279
-			break;
1280
-		case "Document":
1281
-			$dbTable  = Database::get_course_table(TABLE_DOCUMENT);
1282
-			$result=Database::query("SELECT * FROM $dbTable WHERE id=$id",__FILE__,__LINE);
1283
-			$myrow=Database::fetch_array($result);
1284
-
1285
-			$pathname=explode("/",$myrow["path"]); // making a correct name for the link
1286
-			$last=count($pathname)-1;  // making a correct name for the link
1287
-			$filename=$pathname[$last];  // making a correct name for the link
1288
-
1289
-			$sql="select * from $tbl_learnpath_item where id=$id_in_path";
1290
-			$result=Database::query($sql);	$row=Database::fetch_array($result);
1291
-
1292
-			if ($builder != 'builder')
1293
-			{
1294
-				$link .= api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Document&origin=$origin&docurl=".$myrow["path"]."#$id_in_path";
1295
-
1296
-			}
1297
-			else
1298
-			{
1299
-				$enableDocumentParsing='yes';
1300
-				if (!$enableDocumentParsing)
1301
-				{ //this is the solution for the non-parsing version in the builder
1302
-					$file=urlencode($myrow["path"]);
1303
-					$link .= "../document/showinframes.php?file=$file";
1304
-				}
1305
-				else
1306
-				{
1307
-					$link .= "../document/download.php?doc_url=".$myrow["path"];
1308
-				}
1309
-			}
1310
-			break;
1311
-
1312
-		case "Assignments":
1313
-			if ($builder != 'builder')
1314
-			{
1315
-				$link .= api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Assignments&origin=$origin#$id_in_path";
1316
-			}
1317
-			else
1318
-			{
1319
-				$link .= "../work/work.php";
1320
-			}
1321
-			break;
1322
-		case "Dropbox":
1323
-			if ($builder != 'builder')
1324
-			{
1325
-				$link .= api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Dropbox&origin=$origin#$id_in_path";
1326
-			} else {
1327
-				$link .= "../dropbox/index.php";
1328
-			}
1329
-			break;
1330
-		case "Introduction_text":
1331
-			if ($builder != 'builder')
1332
-			{
1333
-				$link .= api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Introduction_text&origin=$origin#$id_in_path";
1334
-			} else {
1335
-				$s = api_get_path(WEB_COURSE_PATH)."$_cid/index.php?intro_cmdEdit=1";
1336
-				$link .= $s;
1337
-			}
1338
-			break;
1339
-		case "Course_description":
1340
-			if ($builder != 'builder')
1341
-			{
1342
-				$link .= api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Course_description&origin=$origin#$id_in_path";
1343
-			} else {
1344
-				$s=api_get_path(WEB_CODE_PATH)."course_description";
1345
-				$link .= $s;
1346
-			}
1347
-			break;
1348
-		case "Groups":
1349
-
1350
-			if ($builder != 'builder')
1351
-			{
1352
-				$link .= api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Groups&origin=$origin#$id_in_path";
1353
-			} else {
1354
-				$link .= "../group/group.php?origin=$origin";
1355
-			}
1356
-			break;
1357
-		case "Users":
1358
-			if ($builder != 'builder')
1359
-			{
1360
-				$link .= api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Users&origin=$origin#$id_in_path";
1361
-			} else {
1362
-				$link .= "../user/user.php?origin=$origin";
1363
-			}
1364
-			break;
1365
-	}//end huge switch-statement
1259
+            $tbl_topics      = $_course['dbNameGlu'].'bb_topics';
1260
+            $tbl_posts		 = $_course['dbNameGlu'].'bb_posts';
1261
+            $TBL_FORUMS = $_course['dbNameGlu']."bb_forums";
1262
+            $sql="SELECT * FROM $tbl_topics where topic_id=$id";
1263
+            $result= Database::query($sql);
1264
+            $myrow=Database::fetch_array($result);
1265
+
1266
+            $sql="select * from $tbl_learnpath_item where id=$id_in_path";
1267
+            $result=Database::query($sql);	$row=Database::fetch_array($result);
1268
+
1269
+            if ($builder != 'builder')
1270
+            {
1271
+                $link .= api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Thread&origin=$origin&topic=".$myrow["topic_id"]."&forum=".$myrow["forum_id"]."&md5=".$myrow["md5"]."#$id_in_path";
1272
+            }
1273
+            else
1274
+            {
1275
+                $link .= "../phpbb/viewtopic.php?topic=".$myrow["topic_id"]."&forum=".$myrow["forum_id"]."&md5=".$myrow["md5"];
1276
+            }
1277
+            break;
1278
+        case "Post":
1279
+            break;
1280
+        case "Document":
1281
+            $dbTable  = Database::get_course_table(TABLE_DOCUMENT);
1282
+            $result=Database::query("SELECT * FROM $dbTable WHERE id=$id",__FILE__,__LINE);
1283
+            $myrow=Database::fetch_array($result);
1284
+
1285
+            $pathname=explode("/",$myrow["path"]); // making a correct name for the link
1286
+            $last=count($pathname)-1;  // making a correct name for the link
1287
+            $filename=$pathname[$last];  // making a correct name for the link
1288
+
1289
+            $sql="select * from $tbl_learnpath_item where id=$id_in_path";
1290
+            $result=Database::query($sql);	$row=Database::fetch_array($result);
1291
+
1292
+            if ($builder != 'builder')
1293
+            {
1294
+                $link .= api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Document&origin=$origin&docurl=".$myrow["path"]."#$id_in_path";
1295
+
1296
+            }
1297
+            else
1298
+            {
1299
+                $enableDocumentParsing='yes';
1300
+                if (!$enableDocumentParsing)
1301
+                { //this is the solution for the non-parsing version in the builder
1302
+                    $file=urlencode($myrow["path"]);
1303
+                    $link .= "../document/showinframes.php?file=$file";
1304
+                }
1305
+                else
1306
+                {
1307
+                    $link .= "../document/download.php?doc_url=".$myrow["path"];
1308
+                }
1309
+            }
1310
+            break;
1311
+
1312
+        case "Assignments":
1313
+            if ($builder != 'builder')
1314
+            {
1315
+                $link .= api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Assignments&origin=$origin#$id_in_path";
1316
+            }
1317
+            else
1318
+            {
1319
+                $link .= "../work/work.php";
1320
+            }
1321
+            break;
1322
+        case "Dropbox":
1323
+            if ($builder != 'builder')
1324
+            {
1325
+                $link .= api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Dropbox&origin=$origin#$id_in_path";
1326
+            } else {
1327
+                $link .= "../dropbox/index.php";
1328
+            }
1329
+            break;
1330
+        case "Introduction_text":
1331
+            if ($builder != 'builder')
1332
+            {
1333
+                $link .= api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Introduction_text&origin=$origin#$id_in_path";
1334
+            } else {
1335
+                $s = api_get_path(WEB_COURSE_PATH)."$_cid/index.php?intro_cmdEdit=1";
1336
+                $link .= $s;
1337
+            }
1338
+            break;
1339
+        case "Course_description":
1340
+            if ($builder != 'builder')
1341
+            {
1342
+                $link .= api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Course_description&origin=$origin#$id_in_path";
1343
+            } else {
1344
+                $s=api_get_path(WEB_CODE_PATH)."course_description";
1345
+                $link .= $s;
1346
+            }
1347
+            break;
1348
+        case "Groups":
1349
+
1350
+            if ($builder != 'builder')
1351
+            {
1352
+                $link .= api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Groups&origin=$origin#$id_in_path";
1353
+            } else {
1354
+                $link .= "../group/group.php?origin=$origin";
1355
+            }
1356
+            break;
1357
+        case "Users":
1358
+            if ($builder != 'builder')
1359
+            {
1360
+                $link .= api_get_self()."?action=closelesson&source_forum=".$_GET['source_forum']."&how=complete&id_in_path=$id_in_path&learnpath_id=$learnpath_id&type=Users&origin=$origin#$id_in_path";
1361
+            } else {
1362
+                $link .= "../user/user.php?origin=$origin";
1363
+            }
1364
+            break;
1365
+    }//end huge switch-statement
1366 1366
     return $link;
1367 1367
 }
1368 1368
 
@@ -1371,12 +1371,12 @@  discard block
 block discarded – undo
1371 1371
 */
1372 1372
 function remove_resource($resource_key)
1373 1373
 {
1374
-	$addedresource = $_SESSION['addedresource'];
1375
-	$addedresourceid = $_SESSION['addedresourceid'];
1376
-	unset($addedresource[$resource_key]);
1377
-	unset($addedresourceid[$resource_key]);
1378
-	$_SESSION['addedresource']=$addedresource;
1379
-	$_SESSION['addedresourceid']=$addedresourceid ;
1374
+    $addedresource = $_SESSION['addedresource'];
1375
+    $addedresourceid = $_SESSION['addedresourceid'];
1376
+    unset($addedresource[$resource_key]);
1377
+    unset($addedresourceid[$resource_key]);
1378
+    $_SESSION['addedresource']=$addedresource;
1379
+    $_SESSION['addedresourceid']=$addedresourceid ;
1380 1380
 }
1381 1381
 
1382 1382
 /**
@@ -1385,8 +1385,8 @@  discard block
 block discarded – undo
1385 1385
 */
1386 1386
 function show_addresource_button($additionalparameters = '')
1387 1387
 {
1388
-	global $charset;
1389
-	echo '<label for="addresources"><img src="../img/attachment.gif" /></label><input class="link_alike" type="submit" name="addresources" id="addresources" value="'.api_htmlentities(get_lang('Attachment'), ENT_QUOTES, $charset).'" '.$additionalparameters.' />';
1388
+    global $charset;
1389
+    echo '<label for="addresources"><img src="../img/attachment.gif" /></label><input class="link_alike" type="submit" name="addresources" id="addresources" value="'.api_htmlentities(get_lang('Attachment'), ENT_QUOTES, $charset).'" '.$additionalparameters.' />';
1390 1390
 }
1391 1391
 
1392 1392
 /**
@@ -1408,11 +1408,11 @@  discard block
 block discarded – undo
1408 1408
 */
1409 1409
 function delete_added_resource($type, $id)
1410 1410
 {
1411
-	global $_course;
1412
-	$TABLERESOURCE 		= Database::get_course_table(TABLE_LINKED_RESOURCES);
1411
+    global $_course;
1412
+    $TABLERESOURCE 		= Database::get_course_table(TABLE_LINKED_RESOURCES);
1413 1413
 
1414
-	$sql="DELETE FROM $TABLERESOURCE WHERE source_type='$type' and source_id='$id'";
1415
-	Database::query($sql);
1414
+    $sql="DELETE FROM $TABLERESOURCE WHERE source_type='$type' and source_id='$id'";
1415
+    Database::query($sql);
1416 1416
 }
1417 1417
 
1418 1418
 /**
@@ -1421,12 +1421,12 @@  discard block
 block discarded – undo
1421 1421
 */
1422 1422
 function delete_all_resources_type($type)
1423 1423
 {
1424
-  global $_course;
1425
-  $TABLERESOURCE 		= Database::get_course_table(TABLE_LINKED_RESOURCES);
1424
+    global $_course;
1425
+    $TABLERESOURCE 		= Database::get_course_table(TABLE_LINKED_RESOURCES);
1426 1426
 
1427
-  $sql="DELETE FROM $TABLERESOURCE WHERE source_type='$type'";
1427
+    $sql="DELETE FROM $TABLERESOURCE WHERE source_type='$type'";
1428 1428
 
1429
-  Database::query($sql);
1429
+    Database::query($sql);
1430 1430
 }
1431 1431
 
1432 1432
 /**
@@ -1434,15 +1434,15 @@  discard block
 block discarded – undo
1434 1434
 */
1435 1435
 function check_added_resources($type, $id)
1436 1436
 {
1437
-	global $_course, $origin;
1438
-	$TABLERESOURCE 		= Database::get_course_table(TABLE_LINKED_RESOURCES);
1439
-	$sql="SELECT * FROM $TABLERESOURCE WHERE source_type='$type' and source_id='$id'";
1440
-	$result=Database::query($sql);
1441
-	$number_added=Database::num_rows($result);
1442
-	if ($number_added<>0)
1443
-		return true;
1444
-	else
1445
-		return false;
1437
+    global $_course, $origin;
1438
+    $TABLERESOURCE 		= Database::get_course_table(TABLE_LINKED_RESOURCES);
1439
+    $sql="SELECT * FROM $TABLERESOURCE WHERE source_type='$type' and source_id='$id'";
1440
+    $result=Database::query($sql);
1441
+    $number_added=Database::num_rows($result);
1442
+    if ($number_added<>0)
1443
+        return true;
1444
+    else
1445
+        return false;
1446 1446
 }
1447 1447
 
1448 1448
 
@@ -1452,18 +1452,18 @@  discard block
 block discarded – undo
1452 1452
 */
1453 1453
 function edit_added_resources($type, $id)
1454 1454
 {
1455
-	$TABLERESOURCE 		= Database::get_course_table(TABLE_LINKED_RESOURCES);
1455
+    $TABLERESOURCE 		= Database::get_course_table(TABLE_LINKED_RESOURCES);
1456 1456
     $course_id = api_get_course_int_id();
1457 1457
     $id = intval($id);
1458 1458
     $type = Database::escape_string($type);
1459
-	$sql="SELECT * FROM $TABLERESOURCE WHERE c_id = $course_id AND source_type='$type' and source_id=$id";
1460
-	$result=Database::query($sql);
1461
-	while ($row=Database::fetch_array($result))	{
1462
-		$addedresource[]=$row["resource_type"];
1463
-		$addedresourceid[]=$row["resource_id"];
1464
-	}
1465
-	$_SESSION['addedresource']=$addedresource;
1466
-	$_SESSION['addedresourceid']=$addedresourceid;
1459
+    $sql="SELECT * FROM $TABLERESOURCE WHERE c_id = $course_id AND source_type='$type' and source_id=$id";
1460
+    $result=Database::query($sql);
1461
+    while ($row=Database::fetch_array($result))	{
1462
+        $addedresource[]=$row["resource_type"];
1463
+        $addedresourceid[]=$row["resource_id"];
1464
+    }
1465
+    $_SESSION['addedresource']=$addedresource;
1466
+    $_SESSION['addedresourceid']=$addedresourceid;
1467 1467
 }
1468 1468
 
1469 1469
 /**
@@ -1473,20 +1473,20 @@  discard block
 block discarded – undo
1473 1473
 */
1474 1474
 function update_added_resources($type, $id)
1475 1475
 {
1476
-	$TABLERESOURCE 		= Database::get_course_table(TABLE_LINKED_RESOURCES);
1476
+    $TABLERESOURCE 		= Database::get_course_table(TABLE_LINKED_RESOURCES);
1477 1477
     $course_id = api_get_course_int_id();
1478 1478
     $id = intval($id);
1479 1479
     $type = Database::escape_string($type);
1480
-	// delete all the added resources for this item in the database;
1481
-	$sql="DELETE FROM $TABLERESOURCE WHERE c_id = $course_id AND source_type='$type' AND source_id='$id'";
1482
-	//echo $sql;
1483
-	Database::query($sql);
1480
+    // delete all the added resources for this item in the database;
1481
+    $sql="DELETE FROM $TABLERESOURCE WHERE c_id = $course_id AND source_type='$type' AND source_id='$id'";
1482
+    //echo $sql;
1483
+    Database::query($sql);
1484 1484
 
1485
-	// store the resources from the session into the database
1486
-	store_resources($type, $id);
1485
+    // store the resources from the session into the database
1486
+    store_resources($type, $id);
1487 1487
 
1488
-	//delete_added_resource_($type, $id);
1489
-	unset_session_resources();
1488
+    //delete_added_resource_($type, $id);
1489
+    unset_session_resources();
1490 1490
 }
1491 1491
 
1492 1492
 /**
@@ -1494,25 +1494,25 @@  discard block
 block discarded – undo
1494 1494
 */
1495 1495
 function display_added_resources($type, $id, $style='')
1496 1496
 {
1497
-	// the array containing the icons
1498
-	$arr_icons=array('Agenda'=>'../img/agenda.gif', 'Ad Valvas'=>'../img/valves.gif', 'Link'=>'../img/links.gif', 'Exercise'=>'../img/quiz.gif' );
1499
-
1500
-	global $_course, $origin;
1501
-	$TABLERESOURCE 		= Database::get_course_table(TABLE_LINKED_RESOURCES);
1502
-
1503
-	$sql="SELECT * FROM $TABLERESOURCE WHERE source_type='$type' and source_id='$id'";
1504
-	$result=Database::query($sql);
1505
-	while ($row=Database::fetch_array($result))
1506
-	{
1507
-		if ($origin != 'learnpath')
1508
-		{
1509
-			display_addedresource_link($row['resource_type'], $row['resource_id'], $style) ;
1510
-		}
1511
-		else
1512
-		{
1513
-			display_addedresource_link_in_learnpath($row['resource_type'], $row['resource_id'],'agendaitems','','builder','icon') ; echo "<br>";
1514
-		}
1515
-	}
1497
+    // the array containing the icons
1498
+    $arr_icons=array('Agenda'=>'../img/agenda.gif', 'Ad Valvas'=>'../img/valves.gif', 'Link'=>'../img/links.gif', 'Exercise'=>'../img/quiz.gif' );
1499
+
1500
+    global $_course, $origin;
1501
+    $TABLERESOURCE 		= Database::get_course_table(TABLE_LINKED_RESOURCES);
1502
+
1503
+    $sql="SELECT * FROM $TABLERESOURCE WHERE source_type='$type' and source_id='$id'";
1504
+    $result=Database::query($sql);
1505
+    while ($row=Database::fetch_array($result))
1506
+    {
1507
+        if ($origin != 'learnpath')
1508
+        {
1509
+            display_addedresource_link($row['resource_type'], $row['resource_id'], $style) ;
1510
+        }
1511
+        else
1512
+        {
1513
+            display_addedresource_link_in_learnpath($row['resource_type'], $row['resource_id'],'agendaitems','','builder','icon') ; echo "<br>";
1514
+        }
1515
+    }
1516 1516
 }
1517 1517
 
1518 1518
 
@@ -1523,15 +1523,15 @@  discard block
 block discarded – undo
1523 1523
 */
1524 1524
 function display_resources($showdeleteimg)
1525 1525
 {
1526
-	global $action;
1527
-	global $resourceaction;
1528
-	global $id;
1529
-	global $locationkey;
1530
-	global $source_id, $action, $learnpath_id, $chapter_id, $originalresource;
1531
-
1532
-	if ($resourceaction=="removeresource")
1533
-	{
1534
-		/* unneccessary because when editing we delete all the added resources from the
1526
+    global $action;
1527
+    global $resourceaction;
1528
+    global $id;
1529
+    global $locationkey;
1530
+    global $source_id, $action, $learnpath_id, $chapter_id, $originalresource;
1531
+
1532
+    if ($resourceaction=="removeresource")
1533
+    {
1534
+        /* unneccessary because when editing we delete all the added resources from the
1535 1535
 		database and add all these from the session
1536 1536
 		if ($action=="edit") // we have an edit and thus we delete from the database and from the session
1537 1537
 		{
@@ -1547,41 +1547,41 @@  discard block
 block discarded – undo
1547 1547
 		}
1548 1548
 		else // we remove from the session
1549 1549
 		{*/
1550
-		//echo "remove from session";
1551
-		remove_resource($locationkey);
1552
-	}
1553
-	$addedresource=$_SESSION['addedresource'];
1554
-	$addedresourceid=$_SESSION['addedresourceid'];
1555
-	if (is_array($addedresource))
1556
-	{
1557
-		echo '<table>';
1558
-		foreach ($addedresource as $resource)
1559
-		{
1560
-			//echo $resource.":".$addedresourceid[key($addedresource)];
1561
-			echo '<tr><td>';
1562
-			display_addedresource_link($resource,$addedresourceid[key($addedresource)]);
1563
-			echo '</td><td width="30">';
1564
-
1565
-			// if $_SERVER['REQUEST_URI'] contains and ?id=xx we have an edit and the url for deleting a session added resource
1566
-			// should also contain this id.
1567
-			$test=parse_url($_SERVER['REQUEST_URI']);
1568
-			$output = array();
1569
-			parse_str($test['query'],$output);
1570
-
1571
-			if ($showdeleteimg==1)
1572
-			{
1573
-				echo "<a href=".api_get_self()."?showresources=true&amp;source_forum=".$_GET['source_forum']."&amp;resourceaction=removeresource&amp;locationkey=".key($addedresource)."&amp;source_id=$source_id&amp;action=$action&amp;learnpath_id=$learnpath_id&amp;chapter_id=$chapter_id&amp;originalresource=no><img src='../img/delete.gif' border='0' alt='resource ".get_lang('Delete')."' /></a><br />";
1574
-			}
1575
-			echo '</td></tr>';
1576
-			next($addedresource);
1577
-			//$_SESSION['edit']=='';
1578
-		}
1579
-		echo '</table>';
1580
-	}
1581
-	else // it is a string
1582
-	{
1583
-		echo '';
1584
-	}
1550
+        //echo "remove from session";
1551
+        remove_resource($locationkey);
1552
+    }
1553
+    $addedresource=$_SESSION['addedresource'];
1554
+    $addedresourceid=$_SESSION['addedresourceid'];
1555
+    if (is_array($addedresource))
1556
+    {
1557
+        echo '<table>';
1558
+        foreach ($addedresource as $resource)
1559
+        {
1560
+            //echo $resource.":".$addedresourceid[key($addedresource)];
1561
+            echo '<tr><td>';
1562
+            display_addedresource_link($resource,$addedresourceid[key($addedresource)]);
1563
+            echo '</td><td width="30">';
1564
+
1565
+            // if $_SERVER['REQUEST_URI'] contains and ?id=xx we have an edit and the url for deleting a session added resource
1566
+            // should also contain this id.
1567
+            $test=parse_url($_SERVER['REQUEST_URI']);
1568
+            $output = array();
1569
+            parse_str($test['query'],$output);
1570
+
1571
+            if ($showdeleteimg==1)
1572
+            {
1573
+                echo "<a href=".api_get_self()."?showresources=true&amp;source_forum=".$_GET['source_forum']."&amp;resourceaction=removeresource&amp;locationkey=".key($addedresource)."&amp;source_id=$source_id&amp;action=$action&amp;learnpath_id=$learnpath_id&amp;chapter_id=$chapter_id&amp;originalresource=no><img src='../img/delete.gif' border='0' alt='resource ".get_lang('Delete')."' /></a><br />";
1574
+            }
1575
+            echo '</td></tr>';
1576
+            next($addedresource);
1577
+            //$_SESSION['edit']=='';
1578
+        }
1579
+        echo '</table>';
1580
+    }
1581
+    else // it is a string
1582
+    {
1583
+        echo '';
1584
+    }
1585 1585
 } // end of the display_resources function
1586 1586
 
1587 1587
 
@@ -1593,49 +1593,49 @@  discard block
 block discarded – undo
1593 1593
 */
1594 1594
 function showorhide_addresourcelink($type, $id)
1595 1595
 {
1596
-	global $from_learnpath, $source_id, $action, $learnpath_id, $chapter_id, $originalresource, $folder, $content, $target;
1597
-	//global $_SESSION['addresource'];
1598
-	//global $_SESSION['addresourceid'];
1599
-	$addedresource=$_SESSION['addedresource'];
1600
-	$addedresourceid=$_SESSION['addedresourceid'];
1601
-
1602
-	if (is_array($_SESSION['addedresource']))
1603
-	{
1604
-		foreach ($addedresource as $toolcompare)
1605
-		{
1606
-			//echo $toolcompare;
1607
-			//echo "/".$type."/".$id."****";
1608
-			//$key=key($addedresource);
1609
-			//echo $addedresourceid[$key];
1610
-			//print_r($addedresourceid);
1611
-			//echo "<br>";
1612
-
1613
-			if ($toolcompare==$type and $addedresourceid[key($addedresource)]==$id)
1614
-			{
1615
-				$show=0;
1616
-			}
1617
-			next($addedresource);
1618
-		}
1619
-		if ($from_learnpath) { $lang_add_it_or_resource=get_lang('AddIt'); } else { $lang_add_it_or_resource=get_lang('AddResource'); }
1620
-		if ($show!==0)
1621
-		{
1622
-			if ($type=="Document")
1623
-			{
1624
-				echo "<a href=".api_get_self()."?content=".$type."&folder=".$folder."&source_forum=".$_GET['source_forum']."&add=".$id."&source_id=$source_id&action=$action&learnpath_id=$learnpath_id&chapter_id=$chapter_id&originalresource=no>".$lang_add_it_or_resource."</a>";
1625
-			}
1626
-			else
1627
-			{
1628
-				echo "<a href='".api_get_self()."?content=".$type."&source_forum=".$_GET['source_forum']."&add=".$id."&source_id=$source_id&action=$action&learnpath_id=$learnpath_id&chapter_id=$chapter_id&originalresource=no&target=$target'>".$lang_add_it_or_resource."</a>";
1629
-			}
1630
-		}
1631
-	}
1632
-	else // if it is not an array, it is a string
1633
-	{
1634
-		if ($_SESSION['addedresource']!==$type or $_SESSION['addedresourceid']!==$id)
1635
-		{
1636
-			if ($from_learnpath) { $lang_add_it_or_resource=get_lang('AddIt'); } else { $lang_add_it_or_resource=get_lang('AddResource'); }
1637
-			echo "<a href='".api_get_self()."?content=".$type."&folder=".$folder."&source_forum=".$_GET['source_forum']."&add=".$id."&source_id=$source_id&action=$action&learnpath_id=$learnpath_id&chapter_id=$chapter_id&originalresource=no&target=$target'>".$lang_add_it_or_resource."</a>";
1638
-		}
1639
-	}
1596
+    global $from_learnpath, $source_id, $action, $learnpath_id, $chapter_id, $originalresource, $folder, $content, $target;
1597
+    //global $_SESSION['addresource'];
1598
+    //global $_SESSION['addresourceid'];
1599
+    $addedresource=$_SESSION['addedresource'];
1600
+    $addedresourceid=$_SESSION['addedresourceid'];
1601
+
1602
+    if (is_array($_SESSION['addedresource']))
1603
+    {
1604
+        foreach ($addedresource as $toolcompare)
1605
+        {
1606
+            //echo $toolcompare;
1607
+            //echo "/".$type."/".$id."****";
1608
+            //$key=key($addedresource);
1609
+            //echo $addedresourceid[$key];
1610
+            //print_r($addedresourceid);
1611
+            //echo "<br>";
1612
+
1613
+            if ($toolcompare==$type and $addedresourceid[key($addedresource)]==$id)
1614
+            {
1615
+                $show=0;
1616
+            }
1617
+            next($addedresource);
1618
+        }
1619
+        if ($from_learnpath) { $lang_add_it_or_resource=get_lang('AddIt'); } else { $lang_add_it_or_resource=get_lang('AddResource'); }
1620
+        if ($show!==0)
1621
+        {
1622
+            if ($type=="Document")
1623
+            {
1624
+                echo "<a href=".api_get_self()."?content=".$type."&folder=".$folder."&source_forum=".$_GET['source_forum']."&add=".$id."&source_id=$source_id&action=$action&learnpath_id=$learnpath_id&chapter_id=$chapter_id&originalresource=no>".$lang_add_it_or_resource."</a>";
1625
+            }
1626
+            else
1627
+            {
1628
+                echo "<a href='".api_get_self()."?content=".$type."&source_forum=".$_GET['source_forum']."&add=".$id."&source_id=$source_id&action=$action&learnpath_id=$learnpath_id&chapter_id=$chapter_id&originalresource=no&target=$target'>".$lang_add_it_or_resource."</a>";
1629
+            }
1630
+        }
1631
+    }
1632
+    else // if it is not an array, it is a string
1633
+    {
1634
+        if ($_SESSION['addedresource']!==$type or $_SESSION['addedresourceid']!==$id)
1635
+        {
1636
+            if ($from_learnpath) { $lang_add_it_or_resource=get_lang('AddIt'); } else { $lang_add_it_or_resource=get_lang('AddResource'); }
1637
+            echo "<a href='".api_get_self()."?content=".$type."&folder=".$folder."&source_forum=".$_GET['source_forum']."&add=".$id."&source_id=$source_id&action=$action&learnpath_id=$learnpath_id&chapter_id=$chapter_id&originalresource=no&target=$target'>".$lang_add_it_or_resource."</a>";
1638
+        }
1639
+    }
1640 1640
 }
1641 1641
 ?>
Please login to merge, or discard this patch.
main/admin/ldap_users_list.php 1 patch
Indentation   +132 added lines, -132 removed lines patch added patch discarded remove patch
@@ -20,7 +20,7 @@  discard block
 block discarded – undo
20 20
 // Login as ...
21 21
 if ($action == "login_as" && !empty ($login_as_user_id))
22 22
 {
23
-	login_user($login_as_user_id);
23
+    login_user($login_as_user_id);
24 24
 }
25 25
 
26 26
 //if we already have a session id and a user...
@@ -37,150 +37,150 @@  discard block
 block discarded – undo
37 37
 
38 38
 if (isset ($_GET['action']))
39 39
 {
40
-	$check = Security::check_token('get');
41
-	if($check)
42
-	{
43
-		switch ($_GET['action'])
44
-		{
45
-			case 'show_message' :
46
-				Display :: display_header($tool_name);
47
-				Display :: display_normal_message($_GET['message']);
48
-				break;
49
-			case 'delete_user' :
50
-				Display :: display_header($tool_name);
51
-				if ($user_id != $_user['user_id'] && UserManager :: delete_user($_GET['user_id']))
52
-				{
53
-					Display :: display_normal_message(get_lang('UserDeleted'));
54
-				}
55
-				else
56
-				{
57
-					Display :: display_error_message(get_lang('CannotDeleteUser'));
58
-				}
59
-				break;
60
-			case 'lock' :
61
-				Display :: display_header($tool_name);
62
-				$message=lock_unlock_user('lock',$_GET['user_id']);
63
-				Display :: display_normal_message($message);
64
-				break;
65
-			case 'unlock';
66
-				Display :: display_header($tool_name);
67
-				$message=lock_unlock_user('unlock',$_GET['user_id']);
68
-				Display :: display_normal_message($message);
69
-				break;
70
-			case 'add_user';
71
-				$id=$_GET['id'];
72
-				$UserList=array();
73
-				$userid_match_login = array();
74
-				foreach ($id as $user_id) {
75
-					$tmp = ldap_add_user($user_id);
76
-					$UserList[]= $tmp;
77
-					$userid_match_login[$tmp] = $user_id;
78
-				}
79
-				if (isset($_GET['id_session']) && ($_GET['id_session'] == strval(intval($_GET['id_session']))) && ($_GET['id_session']>0)) {
80
-					ldap_add_user_to_session($UserList, $_GET['id_session']);
81
-					header('Location: resume_session.php?id_session='.intval($_GET['id_session']));
82
-				} else {
83
-					Display :: display_header($tool_name);
84
-					if(count($userid_match_login)>0)
85
-					{
86
-						$message=get_lang('LDAPUsersAddedOrUpdated').':<br />';
87
-						foreach($userid_match_login as $user_id => $login)
88
-						{
89
-							$message .= '- '.$login.'<br />';
90
-						}
91
-					}
92
-					else
93
-					{
94
-						$message=get_lang('NoUserAdded');
95
-					}
96
-					Display :: display_normal_message($message,false);
97
-				}
98
-				break;
99
-			default :
100
-				Display :: display_header($tool_name);
101
-		}
102
-		Security::clear_token();
103
-	}
104
-	else
105
-	{
106
-		Display::display_header($tool_name);
107
-	}
40
+    $check = Security::check_token('get');
41
+    if($check)
42
+    {
43
+        switch ($_GET['action'])
44
+        {
45
+            case 'show_message' :
46
+                Display :: display_header($tool_name);
47
+                Display :: display_normal_message($_GET['message']);
48
+                break;
49
+            case 'delete_user' :
50
+                Display :: display_header($tool_name);
51
+                if ($user_id != $_user['user_id'] && UserManager :: delete_user($_GET['user_id']))
52
+                {
53
+                    Display :: display_normal_message(get_lang('UserDeleted'));
54
+                }
55
+                else
56
+                {
57
+                    Display :: display_error_message(get_lang('CannotDeleteUser'));
58
+                }
59
+                break;
60
+            case 'lock' :
61
+                Display :: display_header($tool_name);
62
+                $message=lock_unlock_user('lock',$_GET['user_id']);
63
+                Display :: display_normal_message($message);
64
+                break;
65
+            case 'unlock';
66
+                Display :: display_header($tool_name);
67
+                $message=lock_unlock_user('unlock',$_GET['user_id']);
68
+                Display :: display_normal_message($message);
69
+                break;
70
+            case 'add_user';
71
+                $id=$_GET['id'];
72
+                $UserList=array();
73
+                $userid_match_login = array();
74
+                foreach ($id as $user_id) {
75
+                    $tmp = ldap_add_user($user_id);
76
+                    $UserList[]= $tmp;
77
+                    $userid_match_login[$tmp] = $user_id;
78
+                }
79
+                if (isset($_GET['id_session']) && ($_GET['id_session'] == strval(intval($_GET['id_session']))) && ($_GET['id_session']>0)) {
80
+                    ldap_add_user_to_session($UserList, $_GET['id_session']);
81
+                    header('Location: resume_session.php?id_session='.intval($_GET['id_session']));
82
+                } else {
83
+                    Display :: display_header($tool_name);
84
+                    if(count($userid_match_login)>0)
85
+                    {
86
+                        $message=get_lang('LDAPUsersAddedOrUpdated').':<br />';
87
+                        foreach($userid_match_login as $user_id => $login)
88
+                        {
89
+                            $message .= '- '.$login.'<br />';
90
+                        }
91
+                    }
92
+                    else
93
+                    {
94
+                        $message=get_lang('NoUserAdded');
95
+                    }
96
+                    Display :: display_normal_message($message,false);
97
+                }
98
+                break;
99
+            default :
100
+                Display :: display_header($tool_name);
101
+        }
102
+        Security::clear_token();
103
+    }
104
+    else
105
+    {
106
+        Display::display_header($tool_name);
107
+    }
108 108
 }
109 109
 else
110 110
 {
111
-	Display::display_header($tool_name);
111
+    Display::display_header($tool_name);
112 112
 }
113 113
 if (isset ($_POST['action']))
114 114
 {
115
-	$check = Security::check_token('get');
116
-	if($check)
117
-	{
118
-		switch ($_POST['action'])
119
-		{
120
-			case 'delete' :
121
-				$number_of_selected_users = count($_POST['id']);
122
-				$number_of_deleted_users = 0;
123
-				foreach ($_POST['id'] as $index => $user_id)
124
-				{
125
-					if($user_id != $_user['user_id'])
126
-					{
127
-						if(UserManager :: delete_user($user_id))
128
-						{
129
-							$number_of_deleted_users++;
130
-						}
131
-					}
132
-				}
133
-				if($number_of_selected_users == $number_of_deleted_users)
134
-				{
135
-					Display :: display_normal_message(get_lang('SelectedUsersDeleted'));
136
-				}
137
-				else
138
-				{
139
-					Display :: display_error_message(get_lang('SomeUsersNotDeleted'));
140
-				}
141
-				break;
142
-			case 'add_user' :
143
-				$number_of_selected_users = count($_POST['id']);
144
-				$number_of_added_users = 0;
145
-				$UserList=array();
146
-				foreach ($_POST['id'] as $index => $user_id)
147
-				{
148
-					if($user_id != $_user['user_id'])
149
-					{
150
-						$UserList[] = ldap_add_user($user_id);
151
-					}
152
-				}
153
-				if (isset($_GET['id_session']) && (trim($_GET['id_session'])!=""))
154
-					addUserToSession($UserList, $_GET['id_session']);
155
-				if(count($UserList)>0)
156
-				{
157
-					Display :: display_normal_message(count($UserList)." ".get_lang('LDAPUsersAdded'));
158
-				}
159
-				else
160
-				{
161
-					Display :: display_normal_message(get_lang('NoUserAdded'));
162
-				}
163
-				break;
115
+    $check = Security::check_token('get');
116
+    if($check)
117
+    {
118
+        switch ($_POST['action'])
119
+        {
120
+            case 'delete' :
121
+                $number_of_selected_users = count($_POST['id']);
122
+                $number_of_deleted_users = 0;
123
+                foreach ($_POST['id'] as $index => $user_id)
124
+                {
125
+                    if($user_id != $_user['user_id'])
126
+                    {
127
+                        if(UserManager :: delete_user($user_id))
128
+                        {
129
+                            $number_of_deleted_users++;
130
+                        }
131
+                    }
132
+                }
133
+                if($number_of_selected_users == $number_of_deleted_users)
134
+                {
135
+                    Display :: display_normal_message(get_lang('SelectedUsersDeleted'));
136
+                }
137
+                else
138
+                {
139
+                    Display :: display_error_message(get_lang('SomeUsersNotDeleted'));
140
+                }
141
+                break;
142
+            case 'add_user' :
143
+                $number_of_selected_users = count($_POST['id']);
144
+                $number_of_added_users = 0;
145
+                $UserList=array();
146
+                foreach ($_POST['id'] as $index => $user_id)
147
+                {
148
+                    if($user_id != $_user['user_id'])
149
+                    {
150
+                        $UserList[] = ldap_add_user($user_id);
151
+                    }
152
+                }
153
+                if (isset($_GET['id_session']) && (trim($_GET['id_session'])!=""))
154
+                    addUserToSession($UserList, $_GET['id_session']);
155
+                if(count($UserList)>0)
156
+                {
157
+                    Display :: display_normal_message(count($UserList)." ".get_lang('LDAPUsersAdded'));
158
+                }
159
+                else
160
+                {
161
+                    Display :: display_normal_message(get_lang('NoUserAdded'));
162
+                }
163
+                break;
164 164
 
165
-		}
166
-		Security::clear_token();
167
-	}
165
+        }
166
+        Security::clear_token();
167
+    }
168 168
 }
169 169
 
170 170
 $form = new FormValidator('advanced_search','get');
171 171
 $form->addText('keyword_username',get_lang('LoginName'),false);
172 172
 if (api_is_western_name_order())
173 173
 {
174
-	$form->addText('keyword_firstname', get_lang('FirstName'), false);
175
-	$form->addText('keyword_lastname', get_lang('LastName'), false);
174
+    $form->addText('keyword_firstname', get_lang('FirstName'), false);
175
+    $form->addText('keyword_lastname', get_lang('LastName'), false);
176 176
 }
177 177
 else
178 178
 {
179
-	$form->addText('keyword_lastname',get_lang('LastName'),false);
180
-	$form->addText('keyword_firstname',get_lang('FirstName'),false);
179
+    $form->addText('keyword_lastname',get_lang('LastName'),false);
180
+    $form->addText('keyword_firstname',get_lang('FirstName'),false);
181 181
 }
182 182
 if (isset($_GET['id_session']))
183
-	$form->addElement('hidden','id_session',$_GET['id_session']);
183
+    $form->addElement('hidden','id_session',$_GET['id_session']);
184 184
 
185 185
 $type = array();
186 186
 $type["all"] = get_lang('All');
@@ -202,7 +202,7 @@  discard block
 block discarded – undo
202 202
 $parameters['keyword_lastname'] = @$_GET['keyword_lastname'] ?: null;
203 203
 $parameters['keyword_email'] = @$_GET['keyword_email'] ?: null;
204 204
 if (isset($_GET['id_session']))
205
-	$parameters['id_session'] = $_GET['id_session'];
205
+    $parameters['id_session'] = $_GET['id_session'];
206 206
 // Create a sortable table with user-data
207 207
 
208 208
 $parameters['sec_token'] = Security::get_token();
@@ -212,13 +212,13 @@  discard block
 block discarded – undo
212 212
 $table->set_header(1, get_lang('LoginName'));
213 213
 if (api_is_western_name_order())
214 214
 {
215
-	$table->set_header(2, get_lang('FirstName'));
216
-	$table->set_header(3, get_lang('LastName'));
215
+    $table->set_header(2, get_lang('FirstName'));
216
+    $table->set_header(3, get_lang('LastName'));
217 217
 }
218 218
 else
219 219
 {
220
-	$table->set_header(2, get_lang('LastName'));
221
-	$table->set_header(3, get_lang('FirstName'));
220
+    $table->set_header(2, get_lang('LastName'));
221
+    $table->set_header(3, get_lang('FirstName'));
222 222
 }
223 223
 $table->set_header(4, get_lang('Email'));
224 224
 $table->set_header(5, get_lang('Actions'));
Please login to merge, or discard this patch.
main/inc/lib/system_announcements.lib.php 1 patch
Indentation   +430 added lines, -430 removed lines patch added patch discarded remove patch
@@ -10,17 +10,17 @@  discard block
 block discarded – undo
10 10
     CONST VISIBLE_STUDENT = 2;
11 11
     CONST VISIBLE_TEACHER = 3;
12 12
 
13
-	/**
14
-	 * Displays all announcements
15
-	 * @param int $visible VISIBLE_GUEST, VISIBLE_STUDENT or VISIBLE_TEACHER
16
-	 * @param int $id The identifier of the announcement to display
17
-	 */
18
-	public static function display_announcements($visible, $id = -1)
13
+    /**
14
+     * Displays all announcements
15
+     * @param int $visible VISIBLE_GUEST, VISIBLE_STUDENT or VISIBLE_TEACHER
16
+     * @param int $id The identifier of the announcement to display
17
+     */
18
+    public static function display_announcements($visible, $id = -1)
19 19
     {
20
-		$user_selected_language = api_get_interface_language();
21
-		$db_table = Database :: get_main_table(TABLE_MAIN_SYSTEM_ANNOUNCEMENTS);
20
+        $user_selected_language = api_get_interface_language();
21
+        $db_table = Database :: get_main_table(TABLE_MAIN_SYSTEM_ANNOUNCEMENTS);
22 22
         $tbl_announcement_group = Database :: get_main_table(TABLE_MAIN_SYSTEM_ANNOUNCEMENTS_GROUPS);
23
-		$userGroup = new UserGroup();
23
+        $userGroup = new UserGroup();
24 24
 
25 25
         $temp_user_groups = $userGroup->get_groups_by_user(api_get_user_id(),0);
26 26
         $groups = array();
@@ -55,47 +55,47 @@  discard block
 block discarded – undo
55 55
                         WHERE group_id in $groups_string
56 56
                     ) ";
57 57
         }
58
-		$current_access_url_id = 1;
59
-		if (api_is_multiple_url_enabled()) {
60
-			$current_access_url_id = api_get_current_access_url_id();
61
-		}
62
-		$sql .= " AND access_url_id = '$current_access_url_id' ";
63
-		$sql .= " ORDER BY date_start DESC LIMIT 0,7";
64
-
65
-		$announcements = Database::query($sql);
66
-		if (Database::num_rows($announcements) > 0) {
67
-			$query_string = ereg_replace('announcement=[1-9]+', '', $_SERVER['QUERY_STRING']);
68
-			$query_string = ereg_replace('&$', '', $query_string);
69
-			$url = api_get_self();
70
-			echo '<div class="system_announcements">';
71
-			echo '<h3>'.get_lang('SystemAnnouncements').'</h3>';
72
-			echo '<div style="margin:10px;text-align:right;"><a href="news_list.php">'.get_lang('More').'</a></div>';
73
-
74
-			while ($announcement = Database::fetch_object($announcements)) {
75
-				if ($id != $announcement->id) {
76
-					if (strlen($query_string) > 0) {
77
-						$show_url = 'news_list.php#'.$announcement->id;
78
-					} else {
79
-						$show_url = 'news_list.php#'.$announcement->id;
80
-					}
81
-			        $display_date = api_convert_and_format_date($announcement->display_date, DATE_FORMAT_LONG);
82
-					echo '<a name="'.$announcement->id.'"></a>
58
+        $current_access_url_id = 1;
59
+        if (api_is_multiple_url_enabled()) {
60
+            $current_access_url_id = api_get_current_access_url_id();
61
+        }
62
+        $sql .= " AND access_url_id = '$current_access_url_id' ";
63
+        $sql .= " ORDER BY date_start DESC LIMIT 0,7";
64
+
65
+        $announcements = Database::query($sql);
66
+        if (Database::num_rows($announcements) > 0) {
67
+            $query_string = ereg_replace('announcement=[1-9]+', '', $_SERVER['QUERY_STRING']);
68
+            $query_string = ereg_replace('&$', '', $query_string);
69
+            $url = api_get_self();
70
+            echo '<div class="system_announcements">';
71
+            echo '<h3>'.get_lang('SystemAnnouncements').'</h3>';
72
+            echo '<div style="margin:10px;text-align:right;"><a href="news_list.php">'.get_lang('More').'</a></div>';
73
+
74
+            while ($announcement = Database::fetch_object($announcements)) {
75
+                if ($id != $announcement->id) {
76
+                    if (strlen($query_string) > 0) {
77
+                        $show_url = 'news_list.php#'.$announcement->id;
78
+                    } else {
79
+                        $show_url = 'news_list.php#'.$announcement->id;
80
+                    }
81
+                    $display_date = api_convert_and_format_date($announcement->display_date, DATE_FORMAT_LONG);
82
+                    echo '<a name="'.$announcement->id.'"></a>
83 83
 						<div class="system_announcement">
84 84
 							<div class="system_announcement_title"><a name="ann'.$announcement->id.'" href="'.$show_url.'">'.$announcement->title.'</a></div><div class="system_announcement_date">'.$display_date.'</div>
85 85
 					  	</div>';
86
-				} else {
87
-					echo '<div class="system_announcement">
86
+                } else {
87
+                    echo '<div class="system_announcement">
88 88
 							<div class="system_announcement_title">'
89
-								.$announcement->display_date.'
89
+                                .$announcement->display_date.'
90 90
 								<a name="ann'.$announcement->id.'" href="'.$url.'?'.$query_string.'#ann'.$announcement->id.'">'.$announcement->title.'</a>
91 91
 							</div>';
92
-				}
93
-				echo '<br />';
94
-			}
95
-			echo '</div>';
96
-		}
97
-		return;
98
-	}
92
+                }
93
+                echo '<br />';
94
+            }
95
+            echo '</div>';
96
+        }
97
+        return;
98
+    }
99 99
 
100 100
     /**
101 101
      * @param $visible
@@ -106,100 +106,100 @@  discard block
 block discarded – undo
106 106
      */
107 107
     public static function display_all_announcements($visible, $id = -1, $start = 0,$user_id='')
108 108
     {
109
-		$user_selected_language = api_get_interface_language();
110
-		$start	= intval($start);
109
+        $user_selected_language = api_get_interface_language();
110
+        $start	= intval($start);
111 111
         $userGroup = new UserGroup();
112
-	    $tbl_announcement_group = Database :: get_main_table(TABLE_MAIN_SYSTEM_ANNOUNCEMENTS_GROUPS);
113
-	    $temp_user_groups = $userGroup->get_groups_by_user(api_get_user_id(),0);
112
+        $tbl_announcement_group = Database :: get_main_table(TABLE_MAIN_SYSTEM_ANNOUNCEMENTS_GROUPS);
113
+        $temp_user_groups = $userGroup->get_groups_by_user(api_get_user_id(),0);
114 114
         $groups = array();
115
-	    foreach ($temp_user_groups as $user_group) {
116
-	        $groups = array_merge($groups, array($user_group['id']));
117
-	        $groups = array_merge($groups, $userGroup->get_parent_groups($user_group['id']));
118
-	    }
115
+        foreach ($temp_user_groups as $user_group) {
116
+            $groups = array_merge($groups, array($user_group['id']));
117
+            $groups = array_merge($groups, $userGroup->get_parent_groups($user_group['id']));
118
+        }
119 119
 
120
-	    // Checks if tables exists to not break platform not updated
121
-	    $groups_string = '('.implode($groups,',').')';
120
+        // Checks if tables exists to not break platform not updated
121
+        $groups_string = '('.implode($groups,',').')';
122 122
 
123
-		$db_table = Database :: get_main_table(TABLE_MAIN_SYSTEM_ANNOUNCEMENTS);
124
-		$now  = api_get_utc_datetime();
123
+        $db_table = Database :: get_main_table(TABLE_MAIN_SYSTEM_ANNOUNCEMENTS);
124
+        $now  = api_get_utc_datetime();
125 125
 
126
-		$sql = "SELECT * FROM ".$db_table."
126
+        $sql = "SELECT * FROM ".$db_table."
127 127
 				WHERE
128 128
 				    (lang = '$user_selected_language' OR lang IS NULL) AND
129 129
 				    ( '$now' >= date_start AND '$now' <= date_end) ";
130 130
 
131
-		switch ($visible) {
132
-			case self::VISIBLE_GUEST :
133
-				$sql .= " AND visible_guest = 1 ";
134
-				break;
135
-			case self::VISIBLE_STUDENT :
136
-				$sql .= " AND visible_student = 1 ";
137
-				break;
138
-			case self::VISIBLE_TEACHER :
139
-				$sql .= " AND visible_teacher = 1 ";
140
-				break;
141
-		}
142
-
143
-	    if (count($groups) > 0) {
131
+        switch ($visible) {
132
+            case self::VISIBLE_GUEST :
133
+                $sql .= " AND visible_guest = 1 ";
134
+                break;
135
+            case self::VISIBLE_STUDENT :
136
+                $sql .= " AND visible_student = 1 ";
137
+                break;
138
+            case self::VISIBLE_TEACHER :
139
+                $sql .= " AND visible_teacher = 1 ";
140
+                break;
141
+        }
142
+
143
+        if (count($groups) > 0) {
144 144
             $sql .= " OR id IN (
145 145
                     SELECT announcement_id FROM $tbl_announcement_group
146 146
                     WHERE group_id in $groups_string
147 147
                     ) ";
148
-	    }
148
+        }
149 149
 
150
-		if (api_is_multiple_url_enabled()) {
151
-			$current_access_url_id = api_get_current_access_url_id();
150
+        if (api_is_multiple_url_enabled()) {
151
+            $current_access_url_id = api_get_current_access_url_id();
152 152
             $sql .= " AND access_url_id IN ('1', '$current_access_url_id')";
153
-		}
154
-
155
-		if(!isset($_GET['start']) || $_GET['start'] == 0) {
156
-			$sql .= " ORDER BY date_start DESC LIMIT ".$start.",20";
157
-		} else {
158
-			$sql .= " ORDER BY date_start DESC LIMIT ".($start+1).",20";
159
-		}
160
-		$announcements = Database::query($sql);
161
-		$content = '';
162
-		if (Database::num_rows($announcements) > 0) {
163
-			$query_string = ereg_replace('announcement=[1-9]+', '', $_SERVER['QUERY_STRING']);
164
-			$query_string = ereg_replace('&$', '', $query_string);
165
-			$url = api_get_self();
166
-			$content .= '<div class="system_announcements">';
167
-			$content .= '<h3>'.get_lang('SystemAnnouncements').'</h3>';
168
-			$content .= '<table align="center">';
169
-				$content .= '<tr>';
170
-					$content .= '<td>';
171
-						$content .= SystemAnnouncementManager :: display_arrow($user_id);
172
-					$content .= '</td>';
173
-				$content .= '</tr>';
174
-			$content .= '</table>';
175
-			$content .= '<table align="center" border="0" width="900px">';
176
-			while ($announcement = Database::fetch_object($announcements)) {
177
-				$display_date = api_convert_and_format_date($announcement->display_date, DATE_FORMAT_LONG);
178
-				$content .= '<tr><td>';
179
-				$content .= '<a name="'.$announcement->id.'"></a>
153
+        }
154
+
155
+        if(!isset($_GET['start']) || $_GET['start'] == 0) {
156
+            $sql .= " ORDER BY date_start DESC LIMIT ".$start.",20";
157
+        } else {
158
+            $sql .= " ORDER BY date_start DESC LIMIT ".($start+1).",20";
159
+        }
160
+        $announcements = Database::query($sql);
161
+        $content = '';
162
+        if (Database::num_rows($announcements) > 0) {
163
+            $query_string = ereg_replace('announcement=[1-9]+', '', $_SERVER['QUERY_STRING']);
164
+            $query_string = ereg_replace('&$', '', $query_string);
165
+            $url = api_get_self();
166
+            $content .= '<div class="system_announcements">';
167
+            $content .= '<h3>'.get_lang('SystemAnnouncements').'</h3>';
168
+            $content .= '<table align="center">';
169
+                $content .= '<tr>';
170
+                    $content .= '<td>';
171
+                        $content .= SystemAnnouncementManager :: display_arrow($user_id);
172
+                    $content .= '</td>';
173
+                $content .= '</tr>';
174
+            $content .= '</table>';
175
+            $content .= '<table align="center" border="0" width="900px">';
176
+            while ($announcement = Database::fetch_object($announcements)) {
177
+                $display_date = api_convert_and_format_date($announcement->display_date, DATE_FORMAT_LONG);
178
+                $content .= '<tr><td>';
179
+                $content .= '<a name="'.$announcement->id.'"></a>
180 180
 						<div class="system_announcement">
181 181
 						<h2>'.$announcement->title.'</h2><div class="system_announcement_date">'.$display_date.'</div>
182 182
 						<br />
183 183
 					  	<div class="system_announcement_content">'
184
-					  			.$announcement->content.'
184
+                                    .$announcement->content.'
185 185
 						</div>
186 186
 					  </div><br />';
187
-				$content .= '</tr></td>';
188
-			}
189
-			$content .= '</table>';
190
-
191
-			$content .= '<table align="center">';
192
-				$content .= '<tr>';
193
-					$content .= '<td>';
194
-						$content .= SystemAnnouncementManager :: display_arrow($user_id);
195
-					$content .= '</td>';
196
-				$content .= '</tr>';
197
-			$content .= '</table>';
198
-			$content .= '</div>';
199
-		}
200
-
201
-		return $content;
202
-	}
187
+                $content .= '</tr></td>';
188
+            }
189
+            $content .= '</table>';
190
+
191
+            $content .= '<table align="center">';
192
+                $content .= '<tr>';
193
+                    $content .= '<td>';
194
+                        $content .= SystemAnnouncementManager :: display_arrow($user_id);
195
+                    $content .= '</td>';
196
+                $content .= '</tr>';
197
+            $content .= '</table>';
198
+            $content .= '</div>';
199
+        }
200
+
201
+        return $content;
202
+    }
203 203
 
204 204
     /**
205 205
      * @param int $user_id
@@ -207,23 +207,23 @@  discard block
 block discarded – undo
207 207
      */
208 208
     public static function display_arrow($user_id)
209 209
     {
210
-		$start = (int)$_GET['start'];
211
-		$nb_announcement = SystemAnnouncementManager :: count_nb_announcement($start,$user_id);
212
-		$next = ((int)$_GET['start']+19);
213
-		$prev = ((int)$_GET['start']-19);
214
-		$content = '';
215
-		if(!isset($_GET['start']) || $_GET['start'] == 0) {
216
-			if($nb_announcement > 20) {
217
-				$content .= '<a href="news_list.php?start='.$next.'">'.get_lang('NextBis').' >> </a>';
218
-			}
219
-		} else {
220
-			echo '<a href="news_list.php?start='.$prev.'"> << '.get_lang('Prev').'</a>';
221
-			if ($nb_announcement > 20) {
222
-				$content .= '<a href="news_list.php?start='.$next.'">'.get_lang('NextBis').' >> </a>';
223
-			}
224
-		}
225
-		return $content;
226
-	}
210
+        $start = (int)$_GET['start'];
211
+        $nb_announcement = SystemAnnouncementManager :: count_nb_announcement($start,$user_id);
212
+        $next = ((int)$_GET['start']+19);
213
+        $prev = ((int)$_GET['start']-19);
214
+        $content = '';
215
+        if(!isset($_GET['start']) || $_GET['start'] == 0) {
216
+            if($nb_announcement > 20) {
217
+                $content .= '<a href="news_list.php?start='.$next.'">'.get_lang('NextBis').' >> </a>';
218
+            }
219
+        } else {
220
+            echo '<a href="news_list.php?start='.$prev.'"> << '.get_lang('Prev').'</a>';
221
+            if ($nb_announcement > 20) {
222
+                $content .= '<a href="news_list.php?start='.$next.'">'.get_lang('NextBis').' >> </a>';
223
+            }
224
+        }
225
+        return $content;
226
+    }
227 227
 
228 228
     /**
229 229
      * @param int $start
@@ -232,82 +232,82 @@  discard block
 block discarded – undo
232 232
      */
233 233
     public static function count_nb_announcement($start = 0, $user_id = '')
234 234
     {
235
-		$start = intval($start);
236
-		$visibility = api_is_allowed_to_create_course() ? self::VISIBLE_TEACHER : self::VISIBLE_STUDENT;
237
-		$user_selected_language = api_get_interface_language();
238
-		$db_table = Database :: get_main_table(TABLE_MAIN_SYSTEM_ANNOUNCEMENTS);
239
-		$sql = 'SELECT id FROM '.$db_table.'
235
+        $start = intval($start);
236
+        $visibility = api_is_allowed_to_create_course() ? self::VISIBLE_TEACHER : self::VISIBLE_STUDENT;
237
+        $user_selected_language = api_get_interface_language();
238
+        $db_table = Database :: get_main_table(TABLE_MAIN_SYSTEM_ANNOUNCEMENTS);
239
+        $sql = 'SELECT id FROM '.$db_table.'
240 240
 		        WHERE (lang="'.$user_selected_language.'" OR lang IS NULL) ';
241
-		if (isset($user_id)) {
242
-			switch ($visibility) {
243
-				case self::VISIBLE_GUEST :
244
-					$sql .= " AND visible_guest = 1 ";
245
-					break;
246
-				case self::VISIBLE_STUDENT :
247
-					$sql .= " AND visible_student = 1 ";
248
-					break;
249
-				case self::VISIBLE_TEACHER :
250
-					$sql .= " AND visible_teacher = 1 ";
251
-					break;
252
-			}
253
- 		}
254
-
255
-		$current_access_url_id = 1;
256
-		if (api_is_multiple_url_enabled()) {
257
-			$current_access_url_id = api_get_current_access_url_id();
258
-		}
259
-		$sql .= " AND access_url_id = '$current_access_url_id' ";
260
-
261
-
262
-		$sql .= 'LIMIT '.$start.', 21';
263
-		$announcements = Database::query($sql);
264
-		$i = 0;
265
-		while ($rows = Database::fetch_array($announcements)) {
266
-			$i++;
267
-		}
268
-		return $i;
269
-	}
270
-
271
-	/**
272
-	 * Get all announcements
273
-	 * @return array An array with all available system announcements (as php
274
-	 * objects)
275
-	 */
276
-	public static function get_all_announcements()
241
+        if (isset($user_id)) {
242
+            switch ($visibility) {
243
+                case self::VISIBLE_GUEST :
244
+                    $sql .= " AND visible_guest = 1 ";
245
+                    break;
246
+                case self::VISIBLE_STUDENT :
247
+                    $sql .= " AND visible_student = 1 ";
248
+                    break;
249
+                case self::VISIBLE_TEACHER :
250
+                    $sql .= " AND visible_teacher = 1 ";
251
+                    break;
252
+            }
253
+            }
254
+
255
+        $current_access_url_id = 1;
256
+        if (api_is_multiple_url_enabled()) {
257
+            $current_access_url_id = api_get_current_access_url_id();
258
+        }
259
+        $sql .= " AND access_url_id = '$current_access_url_id' ";
260
+
261
+
262
+        $sql .= 'LIMIT '.$start.', 21';
263
+        $announcements = Database::query($sql);
264
+        $i = 0;
265
+        while ($rows = Database::fetch_array($announcements)) {
266
+            $i++;
267
+        }
268
+        return $i;
269
+    }
270
+
271
+    /**
272
+     * Get all announcements
273
+     * @return array An array with all available system announcements (as php
274
+     * objects)
275
+     */
276
+    public static function get_all_announcements()
277 277
     {
278
-		$table = Database :: get_main_table(TABLE_MAIN_SYSTEM_ANNOUNCEMENTS);
279
-		$now = api_get_utc_datetime();
280
-		$sql = "SELECT *, IF ( '$now'  >= date_start AND '$now' <= date_end, '1', '0') AS visible
278
+        $table = Database :: get_main_table(TABLE_MAIN_SYSTEM_ANNOUNCEMENTS);
279
+        $now = api_get_utc_datetime();
280
+        $sql = "SELECT *, IF ( '$now'  >= date_start AND '$now' <= date_end, '1', '0') AS visible
281 281
 				FROM $table";
282 282
 
283
-		$current_access_url_id = 1;
284
-		if (api_is_multiple_url_enabled()) {
285
-			$current_access_url_id = api_get_current_access_url_id();
286
-		}
287
-		$sql .= " WHERE access_url_id = '$current_access_url_id' ";
288
-		$sql .= " ORDER BY date_start ASC";
289
-
290
-		$announcements = Database::query($sql);
291
-		$all_announcements = array();
292
-		while ($announcement = Database::fetch_object($announcements)) {
293
-			$all_announcements[] = $announcement;
294
-		}
295
-		return $all_announcements;
296
-	}
297
-
298
-	/**
299
-	 * Adds an announcement to the database
300
-	 * @param string Title of the announcement
301
-	 * @param string Content of the announcement
302
-	 * @param string Start date (YYYY-MM-DD HH:II: SS)
303
-	 * @param string End date (YYYY-MM-DD HH:II: SS)
304
-	 * @param int    Whether the announcement should be visible to teachers (1) or not (0)
305
-	 * @param int    Whether the announcement should be visible to students (1) or not (0)
306
-	 * @param int    Whether the announcement should be visible to anonymous users (1) or not (0)
307
-	 * @param string The language for which the announvement should be shown. Leave null for all langages
308
-	 * @param int    Whether to send an e-mail to all users (1) or not (0)
309
-	 * @return mixed  insert_id on success, false on failure
310
-	 */
283
+        $current_access_url_id = 1;
284
+        if (api_is_multiple_url_enabled()) {
285
+            $current_access_url_id = api_get_current_access_url_id();
286
+        }
287
+        $sql .= " WHERE access_url_id = '$current_access_url_id' ";
288
+        $sql .= " ORDER BY date_start ASC";
289
+
290
+        $announcements = Database::query($sql);
291
+        $all_announcements = array();
292
+        while ($announcement = Database::fetch_object($announcements)) {
293
+            $all_announcements[] = $announcement;
294
+        }
295
+        return $all_announcements;
296
+    }
297
+
298
+    /**
299
+     * Adds an announcement to the database
300
+     * @param string Title of the announcement
301
+     * @param string Content of the announcement
302
+     * @param string Start date (YYYY-MM-DD HH:II: SS)
303
+     * @param string End date (YYYY-MM-DD HH:II: SS)
304
+     * @param int    Whether the announcement should be visible to teachers (1) or not (0)
305
+     * @param int    Whether the announcement should be visible to students (1) or not (0)
306
+     * @param int    Whether the announcement should be visible to anonymous users (1) or not (0)
307
+     * @param string The language for which the announvement should be shown. Leave null for all langages
308
+     * @param int    Whether to send an e-mail to all users (1) or not (0)
309
+     * @return mixed  insert_id on success, false on failure
310
+     */
311 311
     public static function add_announcement(
312 312
         $title,
313 313
         $content,
@@ -321,113 +321,113 @@  discard block
 block discarded – undo
321 321
         $add_to_calendar = false,
322 322
         $sendEmailTest = false
323 323
     ) {
324
-		$original_content = $content;
325
-		$a_dateS = explode(' ',$date_start);
326
-		$a_arraySD = explode('-',$a_dateS[0]);
327
-		$a_arraySH = explode(':',$a_dateS[1]);
328
-		$date_start_to_compare = array_merge($a_arraySD,$a_arraySH);
324
+        $original_content = $content;
325
+        $a_dateS = explode(' ',$date_start);
326
+        $a_arraySD = explode('-',$a_dateS[0]);
327
+        $a_arraySH = explode(':',$a_dateS[1]);
328
+        $date_start_to_compare = array_merge($a_arraySD,$a_arraySH);
329 329
 
330
-		$a_dateE = explode(' ',$date_end);
331
-		$a_arrayED = explode('-',$a_dateE[0]);
332
-		$a_arrayEH = explode(':',$a_dateE[1]);
333
-		$date_end_to_compare = array_merge($a_arrayED,$a_arrayEH);
330
+        $a_dateE = explode(' ',$date_end);
331
+        $a_arrayED = explode('-',$a_dateE[0]);
332
+        $a_arrayEH = explode(':',$a_dateE[1]);
333
+        $date_end_to_compare = array_merge($a_arrayED,$a_arrayEH);
334 334
 
335
-		$db_table = Database :: get_main_table(TABLE_MAIN_SYSTEM_ANNOUNCEMENTS);
335
+        $db_table = Database :: get_main_table(TABLE_MAIN_SYSTEM_ANNOUNCEMENTS);
336 336
 
337
-		if (!checkdate($date_start_to_compare[1], $date_start_to_compare[2], $date_start_to_compare[0])) {
338
-			Display :: display_normal_message(get_lang('InvalidStartDate'));
339
-			return false;
340
-		}
337
+        if (!checkdate($date_start_to_compare[1], $date_start_to_compare[2], $date_start_to_compare[0])) {
338
+            Display :: display_normal_message(get_lang('InvalidStartDate'));
339
+            return false;
340
+        }
341 341
 
342
-		if (($date_end_to_compare[1] ||
342
+        if (($date_end_to_compare[1] ||
343 343
             $date_end_to_compare[2] ||
344 344
             $date_end_to_compare[0]) &&
345 345
             !checkdate($date_end_to_compare[1], $date_end_to_compare[2], $date_end_to_compare[0])
346 346
         ) {
347
-			Display :: display_normal_message(get_lang('InvalidEndDate'));
348
-			return false;
349
-		}
347
+            Display :: display_normal_message(get_lang('InvalidEndDate'));
348
+            return false;
349
+        }
350 350
 
351
-		if (strlen(trim($title)) == 0) {
352
-			Display::display_normal_message(get_lang('InvalidTitle'));
351
+        if (strlen(trim($title)) == 0) {
352
+            Display::display_normal_message(get_lang('InvalidTitle'));
353 353
 
354
-			return false;
355
-		}
354
+            return false;
355
+        }
356 356
 
357
-		$start = api_get_utc_datetime($date_start);
357
+        $start = api_get_utc_datetime($date_start);
358 358
         $end = api_get_utc_datetime($date_end);
359 359
 
360
-		// Fixing urls that are sent by email
361
-		$content = str_replace('src=\"/home/', 'src=\"'.api_get_path(WEB_PATH).'home/', $content);
362
-		$content = str_replace('file=/home/', 'file='.api_get_path(WEB_PATH).'home/', $content);
360
+        // Fixing urls that are sent by email
361
+        $content = str_replace('src=\"/home/', 'src=\"'.api_get_path(WEB_PATH).'home/', $content);
362
+        $content = str_replace('file=/home/', 'file='.api_get_path(WEB_PATH).'home/', $content);
363 363
 
364 364
         $lang = is_null($lang) ? '' : $lang;
365 365
 
366
-		$current_access_url_id = 1;
367
-		if (api_is_multiple_url_enabled()) {
368
-			$current_access_url_id = api_get_current_access_url_id();
369
-		}
370
-
371
-		$params = [
372
-			'title' => $title,
373
-			'content' => $content,
374
-			'date_start' => $start,
375
-			'date_end' => $end,
376
-			'visible_teacher' => $visible_teacher,
377
-			'visible_student' => $visible_student,
378
-			'visible_guest' => $visible_guest,
379
-			'lang' => $lang,
380
-			'access_url_id' => $current_access_url_id,
381
-		];
382
-
383
-		$resultId = Database::insert($db_table, $params);
384
-
385
-		if ($resultId) {
386
-			if ($sendEmailTest) {
387
-				SystemAnnouncementManager::send_system_announcement_by_email(
388
-					$title,
389
-					$content,
390
-					$visible_teacher,
391
-					$visible_student,
392
-					$lang,
393
-					true
394
-				);
395
-			} else {
396
-				if ($send_mail == 1) {
397
-					SystemAnnouncementManager::send_system_announcement_by_email(
398
-						$title,
399
-						$content,
400
-						$visible_teacher,
401
-						$visible_student,
402
-						$lang
403
-					);
404
-				}
405
-			}
406
-
407
-			if ($add_to_calendar) {
408
-				$agenda = new Agenda();
409
-				$agenda->setType('admin');
410
-				$agenda->addEvent(
411
-					$date_start,
412
-					$date_end,
413
-					false,
414
-					$title,
415
-					$original_content
416
-				);
417
-			}
418
-
419
-			return $resultId;
420
-
421
-		}
422
-
423
-		return false;
424
-	}
366
+        $current_access_url_id = 1;
367
+        if (api_is_multiple_url_enabled()) {
368
+            $current_access_url_id = api_get_current_access_url_id();
369
+        }
370
+
371
+        $params = [
372
+            'title' => $title,
373
+            'content' => $content,
374
+            'date_start' => $start,
375
+            'date_end' => $end,
376
+            'visible_teacher' => $visible_teacher,
377
+            'visible_student' => $visible_student,
378
+            'visible_guest' => $visible_guest,
379
+            'lang' => $lang,
380
+            'access_url_id' => $current_access_url_id,
381
+        ];
382
+
383
+        $resultId = Database::insert($db_table, $params);
384
+
385
+        if ($resultId) {
386
+            if ($sendEmailTest) {
387
+                SystemAnnouncementManager::send_system_announcement_by_email(
388
+                    $title,
389
+                    $content,
390
+                    $visible_teacher,
391
+                    $visible_student,
392
+                    $lang,
393
+                    true
394
+                );
395
+            } else {
396
+                if ($send_mail == 1) {
397
+                    SystemAnnouncementManager::send_system_announcement_by_email(
398
+                        $title,
399
+                        $content,
400
+                        $visible_teacher,
401
+                        $visible_student,
402
+                        $lang
403
+                    );
404
+                }
405
+            }
406
+
407
+            if ($add_to_calendar) {
408
+                $agenda = new Agenda();
409
+                $agenda->setType('admin');
410
+                $agenda->addEvent(
411
+                    $date_start,
412
+                    $date_end,
413
+                    false,
414
+                    $title,
415
+                    $original_content
416
+                );
417
+            }
418
+
419
+            return $resultId;
420
+
421
+        }
422
+
423
+        return false;
424
+    }
425 425
 
426 426
     /**
427
-    * Makes the announcement id visible only for groups in groups_array
428
-    * @param int announcement id
429
-    * @param array array of group id
430
-    **/
427
+     * Makes the announcement id visible only for groups in groups_array
428
+     * @param int announcement id
429
+     * @param array array of group id
430
+     **/
431 431
     public static function announcement_for_groups($announcement_id, $group_array)
432 432
     {
433 433
         $tbl_announcement_group = Database:: get_main_table(
@@ -461,10 +461,10 @@  discard block
 block discarded – undo
461 461
     }
462 462
 
463 463
     /**
464
-    * Gets the groups of this announce
465
-    * @param int announcement id
466
-    * @return array array of group id
467
-    **/
464
+     * Gets the groups of this announce
465
+     * @param int announcement id
466
+     * @return array array of group id
467
+     **/
468 468
     public static function get_announcement_groups($announcement_id)
469 469
     {
470 470
         $tbl_announcement_group = Database :: get_main_table(TABLE_MAIN_SYSTEM_ANNOUNCEMENTS_GROUPS);
@@ -483,15 +483,15 @@  discard block
 block discarded – undo
483 483
         return $groups;
484 484
     }
485 485
 
486
-	/**
487
-	 * Updates an announcement to the database
488
-	 * @param integer $id      : id of the announcement
489
-	 * @param string  $title   : title of the announcement
490
-	 * @param string  $content : content of the announcement
491
-	 * @param array $date_start: start date of announcement (0 => day ; 1 => month ; 2 => year ; 3 => hour ; 4 => minute)
492
-	 * @param array $date_end : end date of announcement (0 => day ; 1 => month ; 2 => year ; 3 => hour ; 4 => minute)
493
-	 * @return	bool	True on success, false on failure
494
-	 */
486
+    /**
487
+     * Updates an announcement to the database
488
+     * @param integer $id      : id of the announcement
489
+     * @param string  $title   : title of the announcement
490
+     * @param string  $content : content of the announcement
491
+     * @param array $date_start: start date of announcement (0 => day ; 1 => month ; 2 => year ; 3 => hour ; 4 => minute)
492
+     * @param array $date_end : end date of announcement (0 => day ; 1 => month ; 2 => year ; 3 => hour ; 4 => minute)
493
+     * @return	bool	True on success, false on failure
494
+     */
495 495
     public static function update_announcement(
496 496
         $id,
497 497
         $title,
@@ -506,53 +506,53 @@  discard block
 block discarded – undo
506 506
         $sendEmailTest = false
507 507
     ) {
508 508
         $em = Database::getManager();
509
-		$announcement = $em->find('ChamiloCoreBundle:SysAnnouncement', $id);
509
+        $announcement = $em->find('ChamiloCoreBundle:SysAnnouncement', $id);
510 510
 
511
-		if (!$announcement) {
511
+        if (!$announcement) {
512 512
 
513
-			return false;
514
-		}
513
+            return false;
514
+        }
515 515
 
516
-		$a_dateS = explode(' ',$date_start);
517
-		$a_arraySD = explode('-',$a_dateS[0]);
518
-		$a_arraySH = explode(':',$a_dateS[1]);
519
-		$date_start_to_compare = array_merge($a_arraySD,$a_arraySH);
516
+        $a_dateS = explode(' ',$date_start);
517
+        $a_arraySD = explode('-',$a_dateS[0]);
518
+        $a_arraySH = explode(':',$a_dateS[1]);
519
+        $date_start_to_compare = array_merge($a_arraySD,$a_arraySH);
520 520
 
521
-		$a_dateE = explode(' ',$date_end);
522
-		$a_arrayED = explode('-',$a_dateE[0]);
523
-		$a_arrayEH = explode(':',$a_dateE[1]);
524
-		$date_end_to_compare = array_merge($a_arrayED,$a_arrayEH);
521
+        $a_dateE = explode(' ',$date_end);
522
+        $a_arrayED = explode('-',$a_dateE[0]);
523
+        $a_arrayEH = explode(':',$a_dateE[1]);
524
+        $date_end_to_compare = array_merge($a_arrayED,$a_arrayEH);
525 525
 
526 526
         $lang = is_null($lang) ? '' : $lang;
527 527
 
528
-		if (!checkdate($date_start_to_compare[1], $date_start_to_compare[2], $date_start_to_compare[0])) {
529
-			Display :: display_normal_message(get_lang('InvalidStartDate'));
528
+        if (!checkdate($date_start_to_compare[1], $date_start_to_compare[2], $date_start_to_compare[0])) {
529
+            Display :: display_normal_message(get_lang('InvalidStartDate'));
530 530
 
531
-			return false;
532
-		}
531
+            return false;
532
+        }
533 533
 
534
-		if (($date_end_to_compare[1] ||
534
+        if (($date_end_to_compare[1] ||
535 535
             $date_end_to_compare[2] ||
536 536
             $date_end_to_compare[0]) &&
537 537
             !checkdate($date_end_to_compare[1], $date_end_to_compare[2], $date_end_to_compare[0])
538 538
         ) {
539
-			Display :: display_normal_message(get_lang('InvalidEndDate'));
539
+            Display :: display_normal_message(get_lang('InvalidEndDate'));
540 540
 
541
-			return false;
542
-		}
541
+            return false;
542
+        }
543 543
 
544
-		if (strlen(trim($title)) == 0) {
545
-			Display::display_normal_message(get_lang('InvalidTitle'));
544
+        if (strlen(trim($title)) == 0) {
545
+            Display::display_normal_message(get_lang('InvalidTitle'));
546 546
 
547
-			return false;
548
-		}
547
+            return false;
548
+        }
549 549
 
550
-		$start = api_get_utc_datetime($date_start);
550
+        $start = api_get_utc_datetime($date_start);
551 551
         $end = api_get_utc_datetime($date_end);
552 552
 
553
-		// Fixing urls that are sent by email
554
-		$content = str_replace('src=\"/home/', 'src=\"'.api_get_path(WEB_PATH).'home/', $content);
555
-		$content = str_replace('file=/home/', 'file='.api_get_path(WEB_PATH).'home/', $content);
553
+        // Fixing urls that are sent by email
554
+        $content = str_replace('src=\"/home/', 'src=\"'.api_get_path(WEB_PATH).'home/', $content);
555
+        $content = str_replace('file=/home/', 'file='.api_get_path(WEB_PATH).'home/', $content);
556 556
 
557 557
         if ($sendEmailTest) {
558 558
             SystemAnnouncementManager::send_system_announcement_by_email(
@@ -592,90 +592,90 @@  discard block
 block discarded – undo
592 592
         $em->merge($announcement);
593 593
         $em->flush();
594 594
 
595
-		return true;
596
-	}
595
+        return true;
596
+    }
597 597
 
598
-	/**
599
-	 * Deletes an announcement
600
-	 * @param 	int $id The identifier of the announcement that should be
601
-	 * @return	bool	True on success, false on failure
602
-	 */
603
-	public static function delete_announcement($id)
598
+    /**
599
+     * Deletes an announcement
600
+     * @param 	int $id The identifier of the announcement that should be
601
+     * @return	bool	True on success, false on failure
602
+     */
603
+    public static function delete_announcement($id)
604 604
     {
605
-		$db_table = Database :: get_main_table(TABLE_MAIN_SYSTEM_ANNOUNCEMENTS);
606
-		$id = intval($id);
607
-		$sql = "DELETE FROM ".$db_table." WHERE id =".$id;
608
-		$res = Database::query($sql);
609
-		if ($res === false) {
610
-
611
-			return false;
612
-		}
613
-		return true;
614
-	}
615
-
616
-	/**
617
-	 * Gets an announcement
618
-	 * @param 	int		$id The identifier of the announcement that should be
619
-	 * @return	object	Object of class StdClass or the required class, containing the query result row
620
-	 */
621
-	public static function get_announcement($id)
605
+        $db_table = Database :: get_main_table(TABLE_MAIN_SYSTEM_ANNOUNCEMENTS);
606
+        $id = intval($id);
607
+        $sql = "DELETE FROM ".$db_table." WHERE id =".$id;
608
+        $res = Database::query($sql);
609
+        if ($res === false) {
610
+
611
+            return false;
612
+        }
613
+        return true;
614
+    }
615
+
616
+    /**
617
+     * Gets an announcement
618
+     * @param 	int		$id The identifier of the announcement that should be
619
+     * @return	object	Object of class StdClass or the required class, containing the query result row
620
+     */
621
+    public static function get_announcement($id)
622 622
     {
623
-		$db_table = Database :: get_main_table(TABLE_MAIN_SYSTEM_ANNOUNCEMENTS);
624
-		$id = intval($id);
625
-		$sql = "SELECT * FROM ".$db_table." WHERE id = ".$id;
626
-		$announcement = Database::fetch_object(Database::query($sql));
627
-
628
-		return $announcement;
629
-	}
630
-
631
-	/**
632
-	 * Change the visibility of an announcement
633
-	 * @param 	int $announcement_id
634
-	 * @param 	int $user For who should the visibility be changed
623
+        $db_table = Database :: get_main_table(TABLE_MAIN_SYSTEM_ANNOUNCEMENTS);
624
+        $id = intval($id);
625
+        $sql = "SELECT * FROM ".$db_table." WHERE id = ".$id;
626
+        $announcement = Database::fetch_object(Database::query($sql));
627
+
628
+        return $announcement;
629
+    }
630
+
631
+    /**
632
+     * Change the visibility of an announcement
633
+     * @param 	int $announcement_id
634
+     * @param 	int $user For who should the visibility be changed
635 635
      * (possible values are VISIBLE_TEACHER, VISIBLE_STUDENT, VISIBLE_GUEST)
636
-	 * @return 	bool	True on success, false on failure
637
-	 */
638
-	public static function set_visibility($announcement_id, $user, $visible)
636
+     * @return 	bool	True on success, false on failure
637
+     */
638
+    public static function set_visibility($announcement_id, $user, $visible)
639 639
     {
640
-		$db_table = Database::get_main_table(TABLE_MAIN_SYSTEM_ANNOUNCEMENTS);
641
-		$visible = intval($visible);
642
-		$announcement_id = intval($announcement_id);
640
+        $db_table = Database::get_main_table(TABLE_MAIN_SYSTEM_ANNOUNCEMENTS);
641
+        $visible = intval($visible);
642
+        $announcement_id = intval($announcement_id);
643 643
 
644 644
         if (!in_array($user, array(self::VISIBLE_GUEST, self::VISIBLE_STUDENT, self::VISIBLE_TEACHER))) {
645 645
             return false;
646 646
         }
647 647
 
648
-		$field = ($user == self::VISIBLE_TEACHER ? 'visible_teacher' : ($user == self::VISIBLE_STUDENT ? 'visible_student' : 'visible_guest'));
648
+        $field = ($user == self::VISIBLE_TEACHER ? 'visible_teacher' : ($user == self::VISIBLE_STUDENT ? 'visible_student' : 'visible_guest'));
649 649
 
650
-		$sql = "UPDATE ".$db_table." SET ".$field." = '".$visible."'
650
+        $sql = "UPDATE ".$db_table." SET ".$field." = '".$visible."'
651 651
 		        WHERE id='".$announcement_id."'";
652
-		$res = Database::query($sql);
653
-
654
-		if ($res === false) {
655
-			return false;
656
-		}
657
-
658
-		return true;
659
-	}
660
-
661
-	/**
662
-	 * Send a system announcement by e-mail to all teachers/students depending on parameters
663
-	 * @param	string	$title
664
-	 * @param	string	$content
665
-	 * @param	int		$teacher Whether to send to all teachers (1) or not (0)
666
-	 * @param	int		$student Whether to send to all students (1) or not (0)
667
-	 * @param	string	$language Language (optional, considered for all languages if left empty)
652
+        $res = Database::query($sql);
653
+
654
+        if ($res === false) {
655
+            return false;
656
+        }
657
+
658
+        return true;
659
+    }
660
+
661
+    /**
662
+     * Send a system announcement by e-mail to all teachers/students depending on parameters
663
+     * @param	string	$title
664
+     * @param	string	$content
665
+     * @param	int		$teacher Whether to send to all teachers (1) or not (0)
666
+     * @param	int		$student Whether to send to all students (1) or not (0)
667
+     * @param	string	$language Language (optional, considered for all languages if left empty)
668 668
      * @param	bool	$sendEmailTest
669
-	 * @return  bool    True if the message was sent or there was no destination matching. False on database or e-mail sending error.
670
-	 */
671
-	public static function send_system_announcement_by_email(
672
-		$title,
673
-		$content,
674
-		$teacher,
675
-		$student,
676
-		$language = null,
677
-		$sendEmailTest = false
678
-	) {
669
+     * @return  bool    True if the message was sent or there was no destination matching. False on database or e-mail sending error.
670
+     */
671
+    public static function send_system_announcement_by_email(
672
+        $title,
673
+        $content,
674
+        $teacher,
675
+        $student,
676
+        $language = null,
677
+        $sendEmailTest = false
678
+    ) {
679 679
         $content = str_replace(array('\r\n', '\n', '\r'),'', $content);
680 680
         $now = api_get_utc_datetime();
681 681
 
@@ -693,26 +693,26 @@  discard block
 block discarded – undo
693 693
         }
694 694
 
695 695
         if ($teacher <> 0 && $student == 0) {
696
-			$sql = "SELECT DISTINCT u.user_id FROM $user_table u $url_condition 
696
+            $sql = "SELECT DISTINCT u.user_id FROM $user_table u $url_condition 
697 697
 					WHERE status = '1' ";
698
-		}
698
+        }
699 699
 
700
-		if ($teacher == 0 && $student <> 0) {
701
-			$sql = "SELECT DISTINCT u.user_id FROM $user_table u $url_condition 
700
+        if ($teacher == 0 && $student <> 0) {
701
+            $sql = "SELECT DISTINCT u.user_id FROM $user_table u $url_condition 
702 702
 					WHERE status = '5' ";
703
-		}
703
+        }
704 704
 
705
-		if ($teacher<> 0 && $student <> 0) {
706
-			$sql = "SELECT DISTINCT u.user_id FROM $user_table u $url_condition 
705
+        if ($teacher<> 0 && $student <> 0) {
706
+            $sql = "SELECT DISTINCT u.user_id FROM $user_table u $url_condition 
707 707
 					WHERE 1 = 1 ";
708
-		}
708
+        }
709 709
 
710
-		if (!empty($language)) {
711
-			//special condition because language was already treated for SQL insert before
712
-			$sql .= " AND language = '".Database::escape_string($language)."' ";
713
-		}
710
+        if (!empty($language)) {
711
+            //special condition because language was already treated for SQL insert before
712
+            $sql .= " AND language = '".Database::escape_string($language)."' ";
713
+        }
714 714
 
715
-		if (api_is_multiple_url_enabled()) {
715
+        if (api_is_multiple_url_enabled()) {
716 716
             $sql .= " AND access_url_id = '".$current_access_url_id."' ";
717 717
         }
718 718
 
@@ -722,27 +722,27 @@  discard block
 block discarded – undo
722 722
         // Expiration date
723 723
         $sql .= " AND (expiration_date = '' OR expiration_date IS NULL OR expiration_date > '$now') ";
724 724
 
725
-		if ((empty($teacher) || $teacher == '0') && (empty($student) || $student == '0')) {
725
+        if ((empty($teacher) || $teacher == '0') && (empty($student) || $student == '0')) {
726 726
 
727 727
             return true;
728
-		}
728
+        }
729 729
 
730
-		$result = Database::query($sql);
731
-		if ($result === false) {
730
+        $result = Database::query($sql);
731
+        if ($result === false) {
732 732
 
733 733
             return false;
734
-		}
734
+        }
735 735
 
736 736
         $message_sent = false;
737
-		while ($row = Database::fetch_array($result,'ASSOC')) {
737
+        while ($row = Database::fetch_array($result,'ASSOC')) {
738 738
             MessageManager::send_message_simple($row['user_id'], $title, $content);
739 739
             $message_sent = true;
740
-		}
740
+        }
741 741
 
742
-		return $message_sent; //true if at least one e-mail was sent
743
-	}
742
+        return $message_sent; //true if at least one e-mail was sent
743
+    }
744 744
 
745
-	/**
745
+    /**
746 746
      * Displays announcements as an slideshow
747 747
      * @param int $visible VISIBLE_GUEST, VISIBLE_STUDENT or VISIBLE_TEACHER
748 748
      * @param int $id The identifier of the announcement to display
Please login to merge, or discard this patch.
main/exercice/answer.class.php 1 patch
Indentation   +299 added lines, -299 removed lines patch added patch discarded remove patch
@@ -157,12 +157,12 @@  discard block
 block discarded – undo
157 157
         return [];
158 158
     }
159 159
 
160
-     /**
161
-     * returns all answer ids from this question Id
162
-     *
163
-     * @author Yoselyn Castillo
164
-     * @return array - $id (answer ids)
165
-     */
160
+        /**
161
+         * returns all answer ids from this question Id
162
+         *
163
+         * @author Yoselyn Castillo
164
+         * @return array - $id (answer ids)
165
+         */
166 166
     public function selectAnswerId()
167 167
     {
168 168
         $TBL_ANSWER = Database::get_course_table(TABLE_QUIZ_ANSWER);
@@ -182,7 +182,7 @@  discard block
 block discarded – undo
182 182
         }
183 183
 
184 184
         return $id;
185
-	}
185
+    }
186 186
 
187 187
     /**
188 188
      * Reads answer information from the data base ordered by parameter
@@ -193,23 +193,23 @@  discard block
 block discarded – undo
193 193
      */
194 194
     public function readOrderedBy($field, $order='ASC')
195 195
     {
196
-		$field = Database::escape_string($field);
197
-		if (empty($field)) {
198
-			$field = 'position';
199
-		}
196
+        $field = Database::escape_string($field);
197
+        if (empty($field)) {
198
+            $field = 'position';
199
+        }
200 200
 
201
-		if ($order != 'ASC' && $order!='DESC') {
202
-			$order = 'ASC';
203
-		}
201
+        if ($order != 'ASC' && $order!='DESC') {
202
+            $order = 'ASC';
203
+        }
204 204
 
205
-		$TBL_ANSWER = Database::get_course_table(TABLE_QUIZ_ANSWER);
206
-		$TBL_QUIZ = Database::get_course_table(TABLE_QUIZ_QUESTION);
207
-		$questionId = intval($this->questionId);
205
+        $TBL_ANSWER = Database::get_course_table(TABLE_QUIZ_ANSWER);
206
+        $TBL_QUIZ = Database::get_course_table(TABLE_QUIZ_QUESTION);
207
+        $questionId = intval($this->questionId);
208 208
 
209
-		$sql = "SELECT type FROM $TBL_QUIZ
209
+        $sql = "SELECT type FROM $TBL_QUIZ
210 210
 		        WHERE c_id = {$this->course_id} AND id = $questionId";
211
-		$result_question = Database::query($sql);
212
-		$questionType = Database::fetch_array($result_question);
211
+        $result_question = Database::query($sql);
212
+        $questionType = Database::fetch_array($result_question);
213 213
 
214 214
         if ($questionType['type'] == DRAGGABLE) {
215 215
             // Random is done by submit.js.tpl
@@ -218,7 +218,7 @@  discard block
 block discarded – undo
218 218
             return true;
219 219
         }
220 220
 
221
-		$sql = "SELECT
221
+        $sql = "SELECT
222 222
 		            answer,
223 223
 		            correct,
224 224
 		            comment,
@@ -234,16 +234,16 @@  discard block
 block discarded – undo
234 234
                     c_id = {$this->course_id} AND
235 235
                     question_id='".$questionId."'
236 236
                 ORDER BY $field $order";
237
-		$result=Database::query($sql);
238
-
239
-		$i = 1;
240
-		// while a record is found
241
-		$doubt_data = null;
242
-		while ($object = Database::fetch_object($result)) {
243
-		    if ($questionType['type'] == UNIQUE_ANSWER_NO_OPTION && $object->position == 666) {
244
-		        $doubt_data = $object;
237
+        $result=Database::query($sql);
238
+
239
+        $i = 1;
240
+        // while a record is found
241
+        $doubt_data = null;
242
+        while ($object = Database::fetch_object($result)) {
243
+            if ($questionType['type'] == UNIQUE_ANSWER_NO_OPTION && $object->position == 666) {
244
+                $doubt_data = $object;
245 245
                 continue;
246
-		    }
246
+            }
247 247
             $this->answer[$i] = $object->answer;
248 248
             $this->correct[$i] = $object->correct;
249 249
             $this->comment[$i] = $object->comment;
@@ -255,9 +255,9 @@  discard block
 block discarded – undo
255 255
             $this->autoId[$i] = $object->id_auto;
256 256
             $this->iid[$i] = $object->iid;
257 257
             $i++;
258
-		}
258
+        }
259 259
 
260
-		if ($questionType['type'] == UNIQUE_ANSWER_NO_OPTION && !empty($doubt_data)) {
260
+        if ($questionType['type'] == UNIQUE_ANSWER_NO_OPTION && !empty($doubt_data)) {
261 261
             $this->answer[$i] = $doubt_data->answer;
262 262
             $this->correct[$i] = $doubt_data->correct;
263 263
             $this->comment[$i] = $doubt_data->comment;
@@ -269,88 +269,88 @@  discard block
 block discarded – undo
269 269
             $this->autoId[$i] = $doubt_data->id_auto;
270 270
             $this->iid[$i] = $doubt_data->iid;
271 271
             $i++;
272
-	    }
272
+        }
273 273
         $this->nbrAnswers = $i-1;
274
-	}
275
-
276
-	/**
277
-	 * returns the autoincrement id identificator
278
-	 *
279
-	 * @author Juan Carlos Ra�a
280
-	 * @return integer - answer num
281
-	 */
274
+    }
275
+
276
+    /**
277
+     * returns the autoincrement id identificator
278
+     *
279
+     * @author Juan Carlos Ra�a
280
+     * @return integer - answer num
281
+     */
282 282
     public function selectAutoId($id)
283 283
     {
284
-		return isset($this->autoId[$id]) ? $this->autoId[$id] : 0;
285
-	}
286
-
287
-	/**
288
-	 * returns the number of answers in this question
289
-	 *
290
-	 * @author Olivier Brouckaert
291
-	 * @return integer - number of answers
292
-	 */
293
-	public function selectNbrAnswers()
284
+        return isset($this->autoId[$id]) ? $this->autoId[$id] : 0;
285
+    }
286
+
287
+    /**
288
+     * returns the number of answers in this question
289
+     *
290
+     * @author Olivier Brouckaert
291
+     * @return integer - number of answers
292
+     */
293
+    public function selectNbrAnswers()
294 294
     {
295
-		return $this->nbrAnswers;
296
-	}
297
-
298
-	/**
299
-	 * returns the question ID which the answers belong to
300
-	 *
301
-	 * @author Olivier Brouckaert
302
-	 * @return integer - the question ID
303
-	 */
304
-	public function selectQuestionId()
295
+        return $this->nbrAnswers;
296
+    }
297
+
298
+    /**
299
+     * returns the question ID which the answers belong to
300
+     *
301
+     * @author Olivier Brouckaert
302
+     * @return integer - the question ID
303
+     */
304
+    public function selectQuestionId()
305
+    {
306
+        return $this->questionId;
307
+    }
308
+
309
+    /**
310
+     * returns the question ID of the destination question
311
+     *
312
+     * @author Julio Montoya
313
+     * @param integer $id
314
+     * @return integer - the question ID
315
+     */
316
+    public function selectDestination($id)
305 317
     {
306
-		return $this->questionId;
307
-	}
308
-
309
-	/**
310
-	 * returns the question ID of the destination question
311
-	 *
312
-	 * @author Julio Montoya
313
-	 * @param integer $id
314
-	 * @return integer - the question ID
315
-	 */
316
-	public function selectDestination($id)
318
+        return isset($this->destination[$id]) ? $this->destination[$id] : null;
319
+    }
320
+
321
+    /**
322
+     * returns the answer title
323
+     *
324
+     * @author Olivier Brouckaert
325
+     * @param - integer $id - answer ID
326
+     * @return string - answer title
327
+     */
328
+    public function selectAnswer($id)
317 329
     {
318
-		return isset($this->destination[$id]) ? $this->destination[$id] : null;
319
-	}
330
+        return isset($this->answer[$id]) ? $this->answer[$id] : null;
331
+    }
320 332
 
321 333
     /**
322
-	 * returns the answer title
323
-	 *
324
-	 * @author Olivier Brouckaert
325
-	 * @param - integer $id - answer ID
326
-	 * @return string - answer title
327
-	 */
328
-	public function selectAnswer($id)
329
-	{
330
-		return isset($this->answer[$id]) ? $this->answer[$id] : null;
331
-	}
332
-
333
-	/**
334
-	 * return array answer by id else return a bool
335
-	 * @param integer $auto_id
336
-	 */
337
-	public function selectAnswerByAutoId($auto_id)
338
-	{
339
-		$TBL_ANSWER = Database::get_course_table(TABLE_QUIZ_ANSWER);
340
-
341
-		$auto_id = intval($auto_id);
342
-		$sql = "SELECT id, answer, id_auto FROM $TBL_ANSWER
334
+     * return array answer by id else return a bool
335
+     * @param integer $auto_id
336
+     */
337
+    public function selectAnswerByAutoId($auto_id)
338
+    {
339
+        $TBL_ANSWER = Database::get_course_table(TABLE_QUIZ_ANSWER);
340
+
341
+        $auto_id = intval($auto_id);
342
+        $sql = "SELECT id, answer, id_auto FROM $TBL_ANSWER
343 343
 				WHERE c_id = {$this->course_id} AND id_auto='$auto_id'";
344
-		$rs = Database::query($sql);
344
+        $rs = Database::query($sql);
345 345
 
346
-		if (Database::num_rows($rs) > 0) {
347
-			$row = Database::fetch_array($rs, 'ASSOC');
346
+        if (Database::num_rows($rs) > 0) {
347
+            $row = Database::fetch_array($rs, 'ASSOC');
348 348
 
349
-			return $row;
350
-		}
349
+            return $row;
350
+        }
351 351
 
352
-		return false;
353
-	}
352
+        return false;
353
+    }
354 354
 
355 355
     /**
356 356
      * returns the answer title from an answer's position
@@ -359,18 +359,18 @@  discard block
 block discarded – undo
359 359
      * @param - integer $id - answer ID
360 360
      * @return bool - answer title
361 361
      */
362
-	public function selectAnswerIdByPosition($pos)
363
-	{
364
-		foreach ($this->position as $k => $v) {
365
-			if ($v != $pos) {
366
-				continue;
367
-			}
362
+    public function selectAnswerIdByPosition($pos)
363
+    {
364
+        foreach ($this->position as $k => $v) {
365
+            if ($v != $pos) {
366
+                continue;
367
+            }
368 368
 
369
-			return $k;
370
-		}
369
+            return $k;
370
+        }
371 371
 
372
-		return false;
373
-	}
372
+        return false;
373
+    }
374 374
 
375 375
     /**
376 376
      * Returns a list of answers
@@ -379,18 +379,18 @@  discard block
 block discarded – undo
379 379
      * of (id, answer, comment, grade) and grade=weighting
380 380
      */
381 381
     public function getAnswersList($decode = false)
382
-     {
383
-	 	$list = array();
384
-         for ($i = 1; $i <= $this->nbrAnswers; $i++) {
385
-             if (!empty($this->answer[$i])) {
386
-
387
-	 			//Avoid problems when parsing elements with accents
388
-	 			if ($decode) {
389
-	        		$this->answer[$i] 	= api_html_entity_decode($this->answer[$i], ENT_QUOTES, api_get_system_encoding());
390
-	        		$this->comment[$i]	= api_html_entity_decode($this->comment[$i], ENT_QUOTES, api_get_system_encoding());
391
-	 			}
392
-
393
-	 			$list[] = array(
382
+        {
383
+            $list = array();
384
+            for ($i = 1; $i <= $this->nbrAnswers; $i++) {
385
+                if (!empty($this->answer[$i])) {
386
+
387
+                    //Avoid problems when parsing elements with accents
388
+                    if ($decode) {
389
+                    $this->answer[$i] 	= api_html_entity_decode($this->answer[$i], ENT_QUOTES, api_get_system_encoding());
390
+                    $this->comment[$i]	= api_html_entity_decode($this->comment[$i], ENT_QUOTES, api_get_system_encoding());
391
+                    }
392
+
393
+                    $list[] = array(
394 394
                     'id' => $i,
395 395
                     'answer' => $this->answer[$i],
396 396
                     'comment' => $this->comment[$i],
@@ -399,137 +399,137 @@  discard block
 block discarded – undo
399 399
                     'hotspot_type' => $this->hotspot_type[$i],
400 400
                     'correct' => $this->correct[$i],
401 401
                     'destination' => $this->destination[$i]
402
-				);
402
+                );
403
+            }
403 404
             }
404
-	 	}
405 405
 
406
-	 	return $list;
407
-	 }
406
+            return $list;
407
+        }
408 408
 
409
-	/**
410
-	 * Returns a list of grades
411
-	 * @author Yannick Warnier <[email protected]>
412
-	 * @return array	List of grades where grade=weighting (?)
413
-	 */
409
+    /**
410
+     * Returns a list of grades
411
+     * @author Yannick Warnier <[email protected]>
412
+     * @return array	List of grades where grade=weighting (?)
413
+     */
414 414
     public function getGradesList()
415
-     {
416
-	 	$list = array();
417
-	 	for ($i = 0; $i<$this->nbrAnswers;$i++){
418
-	 		if(!empty($this->answer[$i])){
419
-	 			$list[$i] = $this->weighting[$i];
420
-	 		}
421
-	 	}
422
-	 	return $list;
423
-	 }
424
-
425
-	 /**
426
-	  * Returns the question type
427
-	  * @author	Yannick Warnier <[email protected]>
428
-	  * @return	integer	The type of the question this answer is bound to
429
-	  */
415
+        {
416
+            $list = array();
417
+            for ($i = 0; $i<$this->nbrAnswers;$i++){
418
+                if(!empty($this->answer[$i])){
419
+                    $list[$i] = $this->weighting[$i];
420
+                }
421
+            }
422
+            return $list;
423
+        }
424
+
425
+        /**
426
+         * Returns the question type
427
+         * @author	Yannick Warnier <[email protected]>
428
+         * @return	integer	The type of the question this answer is bound to
429
+         */
430 430
     public function getQuestionType()
431
-     {
432
-	 	$TBL_QUESTIONS = Database::get_course_table(TABLE_QUIZ_QUESTION);
433
-	 	$sql = "SELECT type FROM $TBL_QUESTIONS
431
+        {
432
+            $TBL_QUESTIONS = Database::get_course_table(TABLE_QUIZ_QUESTION);
433
+            $sql = "SELECT type FROM $TBL_QUESTIONS
434 434
 	 	        WHERE c_id = {$this->course_id} AND id = '".$this->questionId."'";
435
-	 	$res = Database::query($sql);
436
-	 	if (Database::num_rows($res)<=0){
437
-	 		return null;
438
-	 	}
439
-	 	$row = Database::fetch_array($res);
440
-
441
-	 	return $row['type'];
442
-	 }
443
-
444
-
445
-	/**
446
-	 * tells if answer is correct or not
447
-	 *
448
-	 * @author Olivier Brouckaert
449
-	 * @param - integer $id - answer ID
450
-	 * @return integer - 0 if bad answer, not 0 if good answer
451
-	 */
435
+            $res = Database::query($sql);
436
+            if (Database::num_rows($res)<=0){
437
+                return null;
438
+            }
439
+            $row = Database::fetch_array($res);
440
+
441
+            return $row['type'];
442
+        }
443
+
444
+
445
+    /**
446
+     * tells if answer is correct or not
447
+     *
448
+     * @author Olivier Brouckaert
449
+     * @param - integer $id - answer ID
450
+     * @return integer - 0 if bad answer, not 0 if good answer
451
+     */
452 452
     public function isCorrect($id)
453
-	{
454
-		return isset($this->correct[$id]) ? $this->correct[$id] : null;
455
-	}
456
-
457
-	/**
458
-	 * returns answer comment
459
-	 *
460
-	 * @author Olivier Brouckaert
461
-	 * @param - integer $id - answer ID
462
-	 * @return string - answer comment
463
-	 */
453
+    {
454
+        return isset($this->correct[$id]) ? $this->correct[$id] : null;
455
+    }
456
+
457
+    /**
458
+     * returns answer comment
459
+     *
460
+     * @author Olivier Brouckaert
461
+     * @param - integer $id - answer ID
462
+     * @return string - answer comment
463
+     */
464 464
     public function selectComment($id)
465
-	{
465
+    {
466 466
         return isset($this->comment[$id]) ? $this->comment[$id] : null;
467
-	}
468
-
469
-	/**
470
-	 * returns answer weighting
471
-	 *
472
-	 * @author Olivier Brouckaert
473
-	 * @param - integer $id - answer ID
474
-	 * @param integer $id
475
-	 * @return integer - answer weighting
476
-	 */
467
+    }
468
+
469
+    /**
470
+     * returns answer weighting
471
+     *
472
+     * @author Olivier Brouckaert
473
+     * @param - integer $id - answer ID
474
+     * @param integer $id
475
+     * @return integer - answer weighting
476
+     */
477 477
     public function selectWeighting($id)
478
-	{
479
-		return isset($this->weighting[$id]) ? $this->weighting[$id] : null;
480
-	}
481
-
482
-	/**
483
-	 * returns answer position
484
-	 *
485
-	 * @author Olivier Brouckaert
486
-	 * @param - integer $id - answer ID
487
-	 * @return integer - answer position
488
-	 */
489
-	function selectPosition($id)
490
-	{
491
-		return isset($this->position[$id]) ? $this->position[$id] : null;
492
-	}
493
-
494
-	/**
495
-	 * returns answer hotspot coordinates
496
-	 *
497
-	 * @author	Olivier Brouckaert
498
-	 * @param	integer	Answer ID
499
-	 * @param integer $id
500
-	 * @return	integer	Answer position
501
-	 */
478
+    {
479
+        return isset($this->weighting[$id]) ? $this->weighting[$id] : null;
480
+    }
481
+
482
+    /**
483
+     * returns answer position
484
+     *
485
+     * @author Olivier Brouckaert
486
+     * @param - integer $id - answer ID
487
+     * @return integer - answer position
488
+     */
489
+    function selectPosition($id)
490
+    {
491
+        return isset($this->position[$id]) ? $this->position[$id] : null;
492
+    }
493
+
494
+    /**
495
+     * returns answer hotspot coordinates
496
+     *
497
+     * @author	Olivier Brouckaert
498
+     * @param	integer	Answer ID
499
+     * @param integer $id
500
+     * @return	integer	Answer position
501
+     */
502 502
     public function selectHotspotCoordinates($id)
503
-	{
504
-		return isset($this->hotspot_coordinates[$id]) ? $this->hotspot_coordinates[$id] : null;
505
-	}
506
-
507
-	/**
508
-	 * returns answer hotspot type
509
-	 *
510
-	 * @author	Toon Keppens
511
-	 * @param	integer		Answer ID
512
-	 * @param integer $id
513
-	 * @return	integer		Answer position
514
-	 */
503
+    {
504
+        return isset($this->hotspot_coordinates[$id]) ? $this->hotspot_coordinates[$id] : null;
505
+    }
506
+
507
+    /**
508
+     * returns answer hotspot type
509
+     *
510
+     * @author	Toon Keppens
511
+     * @param	integer		Answer ID
512
+     * @param integer $id
513
+     * @return	integer		Answer position
514
+     */
515 515
     public function selectHotspotType($id)
516
-	{
517
-		return isset($this->hotspot_type[$id]) ? $this->hotspot_type[$id] : null;
518
-	}
519
-
520
-	/**
521
-	 * Creates a new answer
522
-	 *
523
-	 * @author Olivier Brouckaert
524
-	 * @param string 	$answer answer title
525
-	 * @param integer 	$correct 0 if bad answer, not 0 if good answer
526
-	 * @param string 	$comment answer comment
527
-	 * @param integer 	$weighting answer weighting
528
-	 * @param integer 	$position answer position
529
-	 * @param array    $new_hotspot_coordinates Coordinates for hotspot exercises (optional)
530
-	 * @param integer	$new_hotspot_type Type for hotspot exercises (optional)
516
+    {
517
+        return isset($this->hotspot_type[$id]) ? $this->hotspot_type[$id] : null;
518
+    }
519
+
520
+    /**
521
+     * Creates a new answer
522
+     *
523
+     * @author Olivier Brouckaert
524
+     * @param string 	$answer answer title
525
+     * @param integer 	$correct 0 if bad answer, not 0 if good answer
526
+     * @param string 	$comment answer comment
527
+     * @param integer 	$weighting answer weighting
528
+     * @param integer 	$position answer position
529
+     * @param array    $new_hotspot_coordinates Coordinates for hotspot exercises (optional)
530
+     * @param integer	$new_hotspot_type Type for hotspot exercises (optional)
531 531
      * @param string   $destination
532
-	 */
532
+     */
533 533
     public function createAnswer(
534 534
         $answer,
535 535
         $correct,
@@ -540,7 +540,7 @@  discard block
 block discarded – undo
540 540
         $new_hotspot_type = null,
541 541
         $destination = ''
542 542
     ) {
543
-		$this->new_nbrAnswers++;
543
+        $this->new_nbrAnswers++;
544 544
         $id = $this->new_nbrAnswers;
545 545
         $this->new_answer[$id] = $answer;
546 546
         $this->new_correct[$id] = $correct;
@@ -550,7 +550,7 @@  discard block
 block discarded – undo
550 550
         $this->new_hotspot_coordinates[$id] = $new_hotspot_coordinates;
551 551
         $this->new_hotspot_type[$id] = $new_hotspot_type;
552 552
         $this->new_destination[$id] = $destination;
553
-	}
553
+    }
554 554
 
555 555
     /**
556 556
      * Updates an answer
@@ -591,31 +591,31 @@  discard block
 block discarded – undo
591 591
         ];
592 592
 
593 593
         Database::update($answerTable, $params, ['iid = ?' => intval($iid)]);
594
-	}
594
+    }
595 595
 
596
-	/**
597
-	 * Records answers into the data base
598
-	 *
599
-	 * @author Olivier Brouckaert
600
-	 */
596
+    /**
597
+     * Records answers into the data base
598
+     *
599
+     * @author Olivier Brouckaert
600
+     */
601 601
     public function save()
602 602
     {
603
-		$answerTable = Database::get_course_table(TABLE_QUIZ_ANSWER);
604
-		$questionId = intval($this->questionId);
603
+        $answerTable = Database::get_course_table(TABLE_QUIZ_ANSWER);
604
+        $questionId = intval($this->questionId);
605 605
 
606
-		$c_id = $this->course['real_id'];
606
+        $c_id = $this->course['real_id'];
607 607
         $correctList = [];
608 608
         $answerList = [];
609 609
 
610
-		for ($i=1; $i <= $this->new_nbrAnswers; $i++) {
611
-			$answer = $this->new_answer[$i];
612
-			$correct = isset($this->new_correct[$i]) ? $this->new_correct[$i] : '';
613
-			$comment = isset($this->new_comment[$i]) ? $this->new_comment[$i] : '';
614
-			$weighting = isset($this->new_weighting[$i]) ? $this->new_weighting[$i] : '';
615
-			$position = isset($this->new_position[$i]) ? $this->new_position[$i] : '';
616
-			$hotspot_coordinates = isset($this->new_hotspot_coordinates[$i]) ? $this->new_hotspot_coordinates[$i] : '';
617
-			$hotspot_type = isset($this->new_hotspot_type[$i]) ? $this->new_hotspot_type[$i] : '';
618
-			$destination = isset($this->new_destination[$i]) ? $this->new_destination[$i] : '';
610
+        for ($i=1; $i <= $this->new_nbrAnswers; $i++) {
611
+            $answer = $this->new_answer[$i];
612
+            $correct = isset($this->new_correct[$i]) ? $this->new_correct[$i] : '';
613
+            $comment = isset($this->new_comment[$i]) ? $this->new_comment[$i] : '';
614
+            $weighting = isset($this->new_weighting[$i]) ? $this->new_weighting[$i] : '';
615
+            $position = isset($this->new_position[$i]) ? $this->new_position[$i] : '';
616
+            $hotspot_coordinates = isset($this->new_hotspot_coordinates[$i]) ? $this->new_hotspot_coordinates[$i] : '';
617
+            $hotspot_type = isset($this->new_hotspot_type[$i]) ? $this->new_hotspot_type[$i] : '';
618
+            $destination = isset($this->new_destination[$i]) ? $this->new_destination[$i] : '';
619 619
             $autoId = $this->selectAutoId($i);
620 620
             $iid = isset($this->iid[$i]) ? $this->iid[$i] : 0;
621 621
 
@@ -714,35 +714,35 @@  discard block
 block discarded – undo
714 714
             }
715 715
         }
716 716
 
717
-		// moves $new_* arrays
718
-		$this->answer = $this->new_answer;
719
-		$this->correct = $this->new_correct;
720
-		$this->comment = $this->new_comment;
721
-		$this->weighting = $this->new_weighting;
722
-		$this->position = $this->new_position;
723
-		$this->hotspot_coordinates = $this->new_hotspot_coordinates;
724
-		$this->hotspot_type = $this->new_hotspot_type;
725
-		$this->nbrAnswers = $this->new_nbrAnswers;
726
-		$this->destination = $this->new_destination;
727
-
728
-		$this->cancel();
729
-	}
730
-
731
-	/**
732
-	 * Duplicates answers by copying them into another question
733
-	 *
734
-	 * @author Olivier Brouckaert
735
-	 * @param  int question id
717
+        // moves $new_* arrays
718
+        $this->answer = $this->new_answer;
719
+        $this->correct = $this->new_correct;
720
+        $this->comment = $this->new_comment;
721
+        $this->weighting = $this->new_weighting;
722
+        $this->position = $this->new_position;
723
+        $this->hotspot_coordinates = $this->new_hotspot_coordinates;
724
+        $this->hotspot_type = $this->new_hotspot_type;
725
+        $this->nbrAnswers = $this->new_nbrAnswers;
726
+        $this->destination = $this->new_destination;
727
+
728
+        $this->cancel();
729
+    }
730
+
731
+    /**
732
+     * Duplicates answers by copying them into another question
733
+     *
734
+     * @author Olivier Brouckaert
735
+     * @param  int question id
736 736
      * @param  array destination course info (result of the function api_get_course_info() )
737 737
      * @param string $newQuestionId
738
-	 */
738
+     */
739 739
     public function duplicate($newQuestionId, $course_info = null)
740 740
     {
741 741
         if (empty($course_info)) {
742 742
             $course_info = $this->course;
743 743
         }
744 744
 
745
-		$TBL_REPONSES = Database :: get_course_table(TABLE_QUIZ_ANSWER);
745
+        $TBL_REPONSES = Database :: get_course_table(TABLE_QUIZ_ANSWER);
746 746
         $fixed_list = array();
747 747
 
748 748
         if (self::getQuestionType() == MULTIPLE_ANSWER_TRUE_FALSE ||
@@ -756,7 +756,7 @@  discard block
 block discarded – undo
756 756
 
757 757
             if (!empty($origin_options)) {
758 758
                 foreach ($origin_options as $item) {
759
-            	   $new_option_list[] = $item['id'];
759
+                    $new_option_list[] = $item['id'];
760 760
                 }
761 761
             }
762 762
 
@@ -770,12 +770,12 @@  discard block
 block discarded – undo
770 770
             }
771 771
         }
772 772
 
773
-		// if at least one answer
774
-		if ($this->nbrAnswers) {
775
-			// inserts new answers into data base
776
-			$c_id = $course_info['real_id'];
773
+        // if at least one answer
774
+        if ($this->nbrAnswers) {
775
+            // inserts new answers into data base
776
+            $c_id = $course_info['real_id'];
777 777
 
778
-			for ($i=1;$i <= $this->nbrAnswers;$i++) {
778
+            for ($i=1;$i <= $this->nbrAnswers;$i++) {
779 779
                 if ($this->course['id'] != $course_info['id']) {
780 780
                     $this->answer[$i] = DocumentManager::replace_urls_inside_content_html_from_copy_course(
781 781
                         $this->answer[$i],
@@ -789,8 +789,8 @@  discard block
 block discarded – undo
789 789
                     );
790 790
                 }
791 791
 
792
-				$answer = $this->answer[$i];
793
-				$correct = $this->correct[$i];
792
+                $answer = $this->answer[$i];
793
+                $correct = $this->correct[$i];
794 794
 
795 795
                 if (self::getQuestionType() == MULTIPLE_ANSWER_TRUE_FALSE ||
796 796
                     self::getQuestionType() == MULTIPLE_ANSWER_TRUE_FALSE
@@ -798,12 +798,12 @@  discard block
 block discarded – undo
798 798
                     $correct = $fixed_list[intval($correct)];
799 799
                 }
800 800
 
801
-				$comment = $this->comment[$i];
802
-				$weighting = $this->weighting[$i];
803
-				$position = $this->position[$i];
804
-				$hotspot_coordinates = $this->hotspot_coordinates[$i];
805
-				$hotspot_type = $this->hotspot_type[$i];
806
-				$destination = $this->destination[$i];
801
+                $comment = $this->comment[$i];
802
+                $weighting = $this->weighting[$i];
803
+                $position = $this->position[$i];
804
+                $hotspot_coordinates = $this->hotspot_coordinates[$i];
805
+                $hotspot_type = $this->hotspot_type[$i];
806
+                $destination = $this->destination[$i];
807 807
 
808 808
                 $params = [
809 809
                     'c_id' => $c_id,
@@ -823,9 +823,9 @@  discard block
 block discarded – undo
823 823
                     $sql = "UPDATE $TBL_REPONSES SET id = iid, id_auto = iid WHERE iid = $id";
824 824
                     Database::query($sql);
825 825
                 }
826
-			}
826
+            }
827 827
         }
828
-	}
828
+    }
829 829
 
830 830
     /**
831 831
      * Get the necessary JavaScript for some answers
Please login to merge, or discard this patch.