@@ -144,7 +144,10 @@ |
||
| 144 | 144 | echo '</div>'; |
| 145 | 145 | ?> |
| 146 | 146 | |
| 147 | -<form name="formulaire" method="post" action="<?php echo api_get_self(); ?>?id=<?php echo $id; if(!empty($_GET['add'])) echo '&add=true' ; ?>" style="margin:0px;" <?php if($ajax_search){echo ' onsubmit="valide();"';}?>> |
|
| 147 | +<form name="formulaire" method="post" action="<?php echo api_get_self(); ?>?id=<?php echo $id; if(!empty($_GET['add'])) { |
|
| 148 | + echo '&add=true' ; |
|
| 149 | +} |
|
| 150 | +?>" style="margin:0px;" <?php if($ajax_search){echo ' onsubmit="valide();"';}?>> |
|
| 148 | 151 | <?php echo '<legend>'.$tool_name.' '.$promotion_data['name'].'</legend>'; |
| 149 | 152 | |
| 150 | 153 | if ($add_type=='multiple') { |
@@ -144,7 +144,10 @@ |
||
| 144 | 144 | echo '</div>'; |
| 145 | 145 | ?> |
| 146 | 146 | |
| 147 | -<form name="formulaire" method="post" action="<?php echo api_get_self(); ?>?id=<?php echo $id; if(!empty($_GET['add'])) echo '&add=true' ; ?>" style="margin:0px;" <?php if($ajax_search){echo ' onsubmit="valide();"';}?>> |
|
| 147 | +<form name="formulaire" method="post" action="<?php echo api_get_self(); ?>?id=<?php echo $id; if(!empty($_GET['add'])) { |
|
| 148 | + echo '&add=true' ; |
|
| 149 | +} |
|
| 150 | +?>" style="margin:0px;" <?php if($ajax_search){echo ' onsubmit="valide();"';}?>> |
|
| 148 | 151 | <?php echo '<legend>'.$tool_name.' '.$promotion_data['name'].'</legend>'; |
| 149 | 152 | |
| 150 | 153 | if ($add_type=='multiple') { |
@@ -76,7 +76,9 @@ |
||
| 76 | 76 | |
| 77 | 77 | foreach($this->getItems() as $item) { |
| 78 | 78 | /** @var $item MenuItemInterface */ |
| 79 | - if($item->isActive()) return $item; |
|
| 79 | + if($item->isActive()) { |
|
| 80 | + return $item; |
|
| 81 | + } |
|
| 80 | 82 | } |
| 81 | 83 | return null; |
| 82 | 84 | } |
@@ -250,8 +250,7 @@ |
||
| 250 | 250 | case RESULT_DISABLE_SHOW_SCORE_ONLY: |
| 251 | 251 | if ($objExercise->feedback_type != EXERCISE_FEEDBACK_TYPE_END) { |
| 252 | 252 | $header_names = array(get_lang('Attempt'), get_lang('StartDate'), get_lang('IP'), get_lang('Score')); |
| 253 | - } |
|
| 254 | - else { |
|
| 253 | + } else { |
|
| 255 | 254 | $header_names = array(get_lang('Attempt'), get_lang('StartDate'), get_lang('IP'), get_lang('Score'), get_lang('Details')); |
| 256 | 255 | } |
| 257 | 256 | break; |
@@ -454,7 +454,10 @@ |
||
| 454 | 454 | <blockquote> |
| 455 | 455 | <pre> |
| 456 | 456 | <b>UserName</b>;LastName;FirstName;Email;NewUserName;Password;AuthSource;OfficialCode;PhoneNumber;Status;ExpiryDate;Active;Language;Courses;ClassId; |
| 457 | - xxx;xxx;xxx;xxx;xxx;xxx;xxx;xxx;xxx;user/teacher/drh;0000-00-00 00:00:00;0/1;xxx;<span style="color:red;"><?php if (count($list_reponse) > 0) echo implode(';', $list_reponse).';'; ?></span>xxx1|xxx2|xxx3;1;<br /> |
|
| 457 | + xxx;xxx;xxx;xxx;xxx;xxx;xxx;xxx;xxx;user/teacher/drh;0000-00-00 00:00:00;0/1;xxx;<span style="color:red;"><?php if (count($list_reponse) > 0) { |
|
| 458 | + echo implode(';', $list_reponse).';'; |
|
| 459 | +} |
|
| 460 | +?></span>xxx1|xxx2|xxx3;1;<br /> |
|
| 458 | 461 | </pre> |
| 459 | 462 | </blockquote> |
| 460 | 463 | <p><?php |
@@ -434,8 +434,7 @@ |
||
| 434 | 434 | } else { |
| 435 | 435 | echo $question->options[2]; |
| 436 | 436 | } |
| 437 | - } |
|
| 438 | - else { |
|
| 437 | + } else { |
|
| 439 | 438 | echo '-'; |
| 440 | 439 | } |
| 441 | 440 | ?> |
@@ -15,9 +15,10 @@ discard block |
||
| 15 | 15 | // load templates |
| 16 | 16 | function reports_loadTemplates() { |
| 17 | 17 | global $reports_enabled_templates, $reports_template; |
| 18 | - foreach ($reports_enabled_templates as $t) |
|
| 19 | - require_once 'templates/'.$t.'.reports.php'; |
|
| 20 | -} |
|
| 18 | + foreach ($reports_enabled_templates as $t) { |
|
| 19 | + require_once 'templates/'.$t.'.reports.php'; |
|
| 20 | + } |
|
| 21 | + } |
|
| 21 | 22 | |
| 22 | 23 | |
| 23 | 24 | // clear all reporting data |
@@ -150,11 +151,12 @@ discard block |
||
| 150 | 151 | // return tools ID (parametre is a constant from main_api |
| 151 | 152 | function reports_getToolId($tool) { |
| 152 | 153 | $tools = array_flip(api_get_tools_lists()); |
| 153 | - if (array_key_exists($tool, $tools)) |
|
| 154 | - return $tools[$tool]; |
|
| 155 | - else |
|
| 156 | - return null; |
|
| 157 | -} |
|
| 154 | + if (array_key_exists($tool, $tools)) { |
|
| 155 | + return $tools[$tool]; |
|
| 156 | + } else { |
|
| 157 | + return null; |
|
| 158 | + } |
|
| 159 | + } |
|
| 158 | 160 | |
| 159 | 161 | // return a sql clause returning triplet of (course, $session, $uid) the |
| 160 | 162 | // current user is authorized to reed |
@@ -65,8 +65,10 @@ discard block |
||
| 65 | 65 | $bords = array_fill(0, $bord_lenght, array()); // building this array |
| 66 | 66 | |
| 67 | 67 | /* adding the first point of the polygone */ |
| 68 | - if (is_array($bords[$poly[0]['y']])) //avoid warning |
|
| 68 | + if (is_array($bords[$poly[0]['y']])) { |
|
| 69 | + //avoid warning |
|
| 69 | 70 | array_push($bords[$poly[0]['y']], $poly[0]['x']); |
| 71 | + } |
|
| 70 | 72 | |
| 71 | 73 | $i = 1; // we re-use $i and $old_pente bellow the loop |
| 72 | 74 | $old_pente=0; |
@@ -75,11 +77,14 @@ discard block |
||
| 75 | 77 | |
| 76 | 78 | /* special cases */ |
| 77 | 79 | if ($poly[$i-1]['y'] == $poly[$i]['y']) { |
| 78 | - if ($poly[$i-1]['x'] == $poly[$i]['x']) |
|
| 79 | - continue; // twice the same point |
|
| 80 | + if ($poly[$i-1]['x'] == $poly[$i]['x']) { |
|
| 81 | + continue; |
|
| 82 | + } |
|
| 83 | + // twice the same point |
|
| 80 | 84 | else { // infinite elevation of the edge |
| 81 | - if (is_array($bords[$poly[$i]['y']])) |
|
| 82 | - array_push($bords[$poly[$i]['y']],$poly[$i]['x']); |
|
| 85 | + if (is_array($bords[$poly[$i]['y']])) { |
|
| 86 | + array_push($bords[$poly[$i]['y']],$poly[$i]['x']); |
|
| 87 | + } |
|
| 83 | 88 | $old_pente=0; |
| 84 | 89 | continue; |
| 85 | 90 | } |
@@ -87,9 +92,13 @@ discard block |
||
| 87 | 92 | |
| 88 | 93 | //echo 'point:'.$poly[$i]['y']; bug here |
| 89 | 94 | // adding the point as a part of an edge |
| 90 | - if (is_array($bords[$poly[$i]['y']])) //avoid warning |
|
| 95 | + if (is_array($bords[$poly[$i]['y']])) { |
|
| 96 | + //avoid warning |
|
| 91 | 97 | array_push($bords[$poly[$i]['y']], $poly[$i]['x']); |
| 92 | - if (DEBUG) echo '('.$poly[$i]['x'].';'.$poly[$i]['y'].') '; |
|
| 98 | + } |
|
| 99 | + if (DEBUG) { |
|
| 100 | + echo '('.$poly[$i]['x'].';'.$poly[$i]['y'].') '; |
|
| 101 | + } |
|
| 93 | 102 | |
| 94 | 103 | /* computing the elevation of the edge going */ |
| 95 | 104 | // from $poly[$i-1] to $poly[$i] |
@@ -99,15 +108,17 @@ discard block |
||
| 99 | 108 | // if the sign of the elevation change from the one of the |
| 100 | 109 | // previous edge, the point must be added a second time inside |
| 101 | 110 | // $bords |
| 102 | - if ($i>1) |
|
| 103 | - if (($old_pente<0 && $pente>0) |
|
| 111 | + if ($i>1) { |
|
| 112 | + if (($old_pente<0 && $pente>0) |
|
| 104 | 113 | || ($old_pente>0 && $pente<0)) { |
| 105 | 114 | if (is_array($bords[$poly[$i]['y']])) //avoid warning |
| 106 | 115 | array_push($bords[$poly[$i]['y']],$poly[$i]['x']); |
| 116 | + } |
|
| 107 | 117 | |
| 108 | - if (DEBUG) |
|
| 109 | - echo '*('.$poly[$i]['x']. |
|
| 118 | + if (DEBUG) { |
|
| 119 | + echo '*('.$poly[$i]['x']. |
|
| 110 | 120 | ';'.$poly[$i]['y'].') '; |
| 121 | + } |
|
| 111 | 122 | } |
| 112 | 123 | |
| 113 | 124 | /* detect the direction of the elevation in Y */ |
@@ -136,10 +147,11 @@ discard block |
||
| 136 | 147 | |
| 137 | 148 | // elevation between $poly[0]['x'] and $poly[1]['x']) |
| 138 | 149 | $rest = $poly[0]['y']-$poly[1]['y']; |
| 139 | - if ($rest!=0) |
|
| 140 | - $pente1 = ($poly[0]['x']-$poly[1]['x'])/($rest); |
|
| 141 | - else |
|
| 142 | - $pente1 = 0; |
|
| 150 | + if ($rest!=0) { |
|
| 151 | + $pente1 = ($poly[0]['x']-$poly[1]['x'])/($rest); |
|
| 152 | + } else { |
|
| 153 | + $pente1 = 0; |
|
| 154 | + } |
|
| 143 | 155 | |
| 144 | 156 | // elevation between $poly[$i-1]['x'] and $poly[0]['x']) |
| 145 | 157 | $pente = ($poly[$i-1]['x']-$poly[0]['x'])/ |
@@ -151,14 +163,17 @@ discard block |
||
| 151 | 163 | |
| 152 | 164 | // doubling the first point if needed (see above) |
| 153 | 165 | if (($pente1<0 && $pente>0) || ($pente1>0 && $pente<0)) { |
| 154 | - if (is_array($bords[$poly[$i - 1]['y']])) |
|
| 155 | - array_push($bords[$poly[$i - 1]['y']], round($poly[$i - 1]['x'])); |
|
| 166 | + if (is_array($bords[$poly[$i - 1]['y']])) { |
|
| 167 | + array_push($bords[$poly[$i - 1]['y']], round($poly[$i - 1]['x'])); |
|
| 168 | + } |
|
| 156 | 169 | //if (DEBUG) echo '('.$poly[$i-1]['x'].';'.$poly[$i-1]['y'].') '; |
| 157 | 170 | } |
| 158 | 171 | // doubling the last point if neededd |
| 159 | 172 | if (($old_pente<0 && $pente>0) || ($old_pente>0 && $pente<0)) { |
| 160 | - if (is_array($bords[$poly[$i-1]['y']])) //avoid warning |
|
| 173 | + if (is_array($bords[$poly[$i-1]['y']])) { |
|
| 174 | + //avoid warning |
|
| 161 | 175 | array_push($bords[$poly[$i-1]['y']], round($poly[$i-1]['x'])); |
| 176 | + } |
|
| 162 | 177 | //if (DEBUG) echo '*('.$poly[$i-1]['x'].';'.$poly[$i-1]['y'].') '; |
| 163 | 178 | } |
| 164 | 179 | |
@@ -227,11 +242,13 @@ discard block |
||
| 227 | 242 | $s = "<div style='font-size: 8px; line-height:3px'><pre>\n"; |
| 228 | 243 | } |
| 229 | 244 | for ($i=0; $i<$max['y']; $i++) { |
| 230 | - for($j=0; $j<$max['x']; $j++) |
|
| 231 | - if($poly[$j][$i] == TRUE) |
|
| 245 | + for($j=0; $j<$max['x']; $j++) { |
|
| 246 | + if($poly[$j][$i] == TRUE) |
|
| 232 | 247 | $s .= ($format=='html'?"<b>1</b>":'1'); |
| 233 | - else |
|
| 234 | - $s .= "0"; |
|
| 248 | + } |
|
| 249 | + else { |
|
| 250 | + $s .= "0"; |
|
| 251 | + } |
|
| 235 | 252 | $s .= ($format=='html'?"<br />\n":"\n"); |
| 236 | 253 | } |
| 237 | 254 | $s .= ($format=='html'?"</pre></div>\n":"\n"); |
@@ -252,15 +269,19 @@ discard block |
||
| 252 | 269 | $surfaceOf1 = 0; |
| 253 | 270 | $surfaceOf2 = 0; |
| 254 | 271 | |
| 255 | - for ($i=0; $i<$max['x']; $i++) |
|
| 256 | - for($j=0; $j<$max['y']; $j++) { |
|
| 272 | + for ($i=0; $i<$max['x']; $i++) { |
|
| 273 | + for($j=0; |
|
| 274 | + } |
|
| 275 | + $j<$max['y']; $j++) { |
|
| 257 | 276 | if (isset($poly1[$i][$j]) && ($poly1[$i][$j] == TRUE)) { |
| 258 | 277 | $surfaceOf1++; |
| 259 | - if (isset($poly2[$i][$j]) && ($poly2[$i][$j] == FALSE)) |
|
| 260 | - $onlyIn1++; |
|
| 278 | + if (isset($poly2[$i][$j]) && ($poly2[$i][$j] == FALSE)) { |
|
| 279 | + $onlyIn1++; |
|
| 280 | + } |
|
| 281 | + } |
|
| 282 | + if (isset($poly2[$i][$j]) && ($poly2[$i][$j] == TRUE)) { |
|
| 283 | + $surfaceOf2++; |
|
| 261 | 284 | } |
| 262 | - if (isset($poly2[$i][$j]) && ($poly2[$i][$j] == TRUE)) |
|
| 263 | - $surfaceOf2++; |
|
| 264 | 285 | } |
| 265 | 286 | |
| 266 | 287 | return array ( |
@@ -41,28 +41,35 @@ |
||
| 41 | 41 | 'where r.course_id=c.id and r.tool_id='. |
| 42 | 42 | reports_getToolId(TOOL_QUIZ). |
| 43 | 43 | ' order by r.course_id, r.child_name'); |
| 44 | - if (Database::num_rows($columns) == 0) |
|
| 45 | - die('<b>'.get_lang('no data found').'</b>'); |
|
| 44 | + if (Database::num_rows($columns) == 0) { |
|
| 45 | + die('<b>'.get_lang('no data found').'</b>'); |
|
| 46 | + } |
|
| 46 | 47 | $query = 'select u.lastname Name, u.firstname Firstname'; |
| 47 | 48 | $columns = Database::store_result($columns); |
| 48 | - if ($_REQUEST['tattempt'] == 'min' || $_REQUEST['tattempt'] == 'max') |
|
| 49 | - $function = $_REQUEST['tattempt']; |
|
| 50 | - else |
|
| 51 | - $function = 'avg'; |
|
| 52 | - foreach ($columns as $key => $column) |
|
| 53 | - $query .= ', '.$function.'(k'.$key.'.score) as `'. |
|
| 49 | + if ($_REQUEST['tattempt'] == 'min' || $_REQUEST['tattempt'] == 'max') { |
|
| 50 | + $function = $_REQUEST['tattempt']; |
|
| 51 | + } else { |
|
| 52 | + $function = 'avg'; |
|
| 53 | + } |
|
| 54 | + foreach ($columns as $key => $column) { |
|
| 55 | + $query .= ', '.$function.'(k'.$key.'.score) as `'. |
|
| 54 | 56 | $column['course'].' - '. |
| 55 | 57 | $column['test'].'` '; |
| 58 | + } |
|
| 56 | 59 | $query .= ' from '.Database::get_main_table(TABLE_MAIN_USER).' u '; |
| 57 | - foreach ($columns as $key => $column) // fixme sessions |
|
| 60 | + foreach ($columns as $key => $column) { |
|
| 61 | + // fixme sessions |
|
| 58 | 62 | $query .= 'left outer join '. |
| 59 | 63 | Database::get_main_table(TABLE_MAIN_REPORTS_VALUES). |
| 60 | 64 | ' k'.$key. |
| 61 | 65 | ' on k'.$key.'.key_id = '.$column['kid']. |
| 62 | 66 | ' and k'.$key.'.user_id = u.user_id '; |
| 67 | + } |
|
| 63 | 68 | $query .= ' group by '; |
| 64 | - foreach ($columns as $key => $column) // grouping attempt |
|
| 69 | + foreach ($columns as $key => $column) { |
|
| 70 | + // grouping attempt |
|
| 65 | 71 | $query .= 'k'.$key.'.attempt, '; |
| 72 | + } |
|
| 66 | 73 | $query = substr($query, 0, -2); // removing last ', '; |
| 67 | 74 | |
| 68 | 75 | |