@@ -124,13 +124,11 @@ discard block |
||
124 | 124 | if ( $this->MAX_AGE > $age ) { |
125 | 125 | // object exists and is current |
126 | 126 | return 'HIT'; |
127 | - } |
|
128 | - else { |
|
127 | + } else { |
|
129 | 128 | // object exists but is old |
130 | 129 | return 'STALE'; |
131 | 130 | } |
132 | - } |
|
133 | - else { |
|
131 | + } else { |
|
134 | 132 | // object does not exist |
135 | 133 | return 'MISS'; |
136 | 134 | } |
@@ -142,8 +140,7 @@ discard block |
||
142 | 140 | $mtime = filemtime( $filename ); |
143 | 141 | $age = time() - $mtime; |
144 | 142 | return $age; |
145 | - } |
|
146 | - else { |
|
143 | + } else { |
|
147 | 144 | return -1; |
148 | 145 | } |
149 | 146 | } |
@@ -185,8 +182,7 @@ discard block |
||
185 | 182 | $this->ERROR = $errormsg; |
186 | 183 | if ( MAGPIE_DEBUG ) { |
187 | 184 | trigger_error( $errormsg, $lvl); |
188 | - } |
|
189 | - else { |
|
185 | + } else { |
|
190 | 186 | error_log( $errormsg, 0); |
191 | 187 | } |
192 | 188 | } |
@@ -37,8 +37,7 @@ discard block |
||
37 | 37 | $offset = 0; |
38 | 38 | if ( $match[10] == 'Z' ) { |
39 | 39 | # zulu time, aka GMT |
40 | - } |
|
41 | - else { |
|
40 | + } else { |
|
42 | 41 | list( $tz_mod, $tz_hour, $tz_min ) = |
43 | 42 | array( $match[8], $match[9], $match[10]); |
44 | 43 | |
@@ -58,8 +57,7 @@ discard block |
||
58 | 57 | } |
59 | 58 | $epoch = $epoch + $offset; |
60 | 59 | return $epoch; |
61 | - } |
|
62 | - else { |
|
60 | + } else { |
|
63 | 61 | return -1; |
64 | 62 | } |
65 | 63 | } |
@@ -124,24 +124,26 @@ discard block |
||
124 | 124 | public function fetch($URI) { |
125 | 125 | //preg_match("|^([^:]+)://([^:/]+)(:[\d]+)*(.*)|",$URI,$URI_PARTS); |
126 | 126 | $URI_PARTS = parse_url($URI); |
127 | - if (!empty($URI_PARTS["user"])) |
|
128 | - $this->user = $URI_PARTS["user"]; |
|
129 | - if (!empty($URI_PARTS["pass"])) |
|
130 | - $this->pass = $URI_PARTS["pass"]; |
|
127 | + if (!empty($URI_PARTS["user"])) { |
|
128 | + $this->user = $URI_PARTS["user"]; |
|
129 | + } |
|
130 | + if (!empty($URI_PARTS["pass"])) { |
|
131 | + $this->pass = $URI_PARTS["pass"]; |
|
132 | + } |
|
131 | 133 | if (!isset($fp)) { $fp = false; } |
132 | 134 | switch ($URI_PARTS["scheme"]) { |
133 | 135 | case "http": |
134 | 136 | $this->host = $URI_PARTS["host"]; |
135 | - if(!empty($URI_PARTS["port"])) |
|
136 | - $this->port = $URI_PARTS["port"]; |
|
137 | + if(!empty($URI_PARTS["port"])) { |
|
138 | + $this->port = $URI_PARTS["port"]; |
|
139 | + } |
|
137 | 140 | if($this->_connect($fp)) |
138 | 141 | { |
139 | 142 | if($this->_isproxy) |
140 | 143 | { |
141 | 144 | // using proxy, send entire URI |
142 | 145 | $this->_httprequest($URI,$fp,$URI,$this->_httpmethod); |
143 | - } |
|
144 | - else |
|
146 | + } else |
|
145 | 147 | { |
146 | 148 | $path = $URI_PARTS["path"].(isset($URI_PARTS["query"]) ? "?".$URI_PARTS["query"] : ""); |
147 | 149 | // no proxy, send only the path |
@@ -177,13 +179,12 @@ discard block |
||
177 | 179 | { |
178 | 180 | $this->fetch($frameurl); |
179 | 181 | $this->_framedepth++; |
182 | + } else { |
|
183 | + break; |
|
180 | 184 | } |
181 | - else |
|
182 | - break; |
|
183 | 185 | } |
184 | 186 | } |
185 | - } |
|
186 | - else |
|
187 | + } else |
|
187 | 188 | { |
188 | 189 | return false; |
189 | 190 | } |
@@ -195,14 +196,14 @@ discard block |
||
195 | 196 | return false; |
196 | 197 | } |
197 | 198 | $this->host = $URI_PARTS["host"]; |
198 | - if(!empty($URI_PARTS["port"])) |
|
199 | - $this->port = $URI_PARTS["port"]; |
|
199 | + if(!empty($URI_PARTS["port"])) { |
|
200 | + $this->port = $URI_PARTS["port"]; |
|
201 | + } |
|
200 | 202 | if($this->_isproxy) |
201 | 203 | { |
202 | 204 | // using proxy, send entire URI |
203 | 205 | $this->_httpsrequest($URI,$URI,$this->_httpmethod); |
204 | - } |
|
205 | - else |
|
206 | + } else |
|
206 | 207 | { |
207 | 208 | $path = $URI_PARTS["path"].($URI_PARTS["query"] ? "?".$URI_PARTS["query"] : ""); |
208 | 209 | // no proxy, send only the path |
@@ -236,9 +237,9 @@ discard block |
||
236 | 237 | { |
237 | 238 | $this->fetch($frameurl); |
238 | 239 | $this->_framedepth++; |
240 | + } else { |
|
241 | + break; |
|
239 | 242 | } |
240 | - else |
|
241 | - break; |
|
242 | 243 | } |
243 | 244 | } |
244 | 245 | return true; |
@@ -279,14 +280,16 @@ discard block |
||
279 | 280 | |
280 | 281 | while(list($key,$val) = each($links[2])) |
281 | 282 | { |
282 | - if(!empty($val)) |
|
283 | - $match[] = $val; |
|
283 | + if(!empty($val)) { |
|
284 | + $match[] = $val; |
|
285 | + } |
|
284 | 286 | } |
285 | 287 | |
286 | 288 | while(list($key,$val) = each($links[3])) |
287 | 289 | { |
288 | - if(!empty($val)) |
|
289 | - $match[] = $val; |
|
290 | + if(!empty($val)) { |
|
291 | + $match[] = $val; |
|
292 | + } |
|
290 | 293 | } |
291 | 294 | |
292 | 295 | // return the links |
@@ -402,27 +405,31 @@ discard block |
||
402 | 405 | |
403 | 406 | private function _httprequest($url,$fp,$URI,$http_method,$content_type="",$body="") |
404 | 407 | { |
405 | - if($this->passcookies && $this->_redirectaddr) |
|
406 | - $this->setcookies(); |
|
408 | + if($this->passcookies && $this->_redirectaddr) { |
|
409 | + $this->setcookies(); |
|
410 | + } |
|
407 | 411 | |
408 | 412 | $URI_PARTS = parse_url($URI); |
409 | - if(empty($url)) |
|
410 | - $url = "/"; |
|
413 | + if(empty($url)) { |
|
414 | + $url = "/"; |
|
415 | + } |
|
411 | 416 | $headers = $http_method." ".$url." ".$this->_httpversion."\r\n"; |
412 | - if(!empty($this->agent)) |
|
413 | - $headers .= "User-Agent: ".$this->agent."\r\n"; |
|
414 | - if(!empty($this->host) && !isset($this->rawheaders['Host'])) |
|
415 | - $headers .= "Host: ".$this->host."\r\n"; |
|
416 | - if(!empty($this->accept)) |
|
417 | - $headers .= "Accept: ".$this->accept."\r\n"; |
|
417 | + if(!empty($this->agent)) { |
|
418 | + $headers .= "User-Agent: ".$this->agent."\r\n"; |
|
419 | + } |
|
420 | + if(!empty($this->host) && !isset($this->rawheaders['Host'])) { |
|
421 | + $headers .= "Host: ".$this->host."\r\n"; |
|
422 | + } |
|
423 | + if(!empty($this->accept)) { |
|
424 | + $headers .= "Accept: ".$this->accept."\r\n"; |
|
425 | + } |
|
418 | 426 | |
419 | 427 | if($this->use_gzip) { |
420 | 428 | // make sure PHP was built with --with-zlib |
421 | 429 | // and we can handle gzipp'ed data |
422 | 430 | if ( function_exists(gzinflate) ) { |
423 | 431 | $headers .= "Accept-encoding: gzip\r\n"; |
424 | - } |
|
425 | - else { |
|
432 | + } else { |
|
426 | 433 | trigger_error( |
427 | 434 | "use_gzip is on, but PHP was built without zlib support.". |
428 | 435 | " Requesting file(s) without gzip encoding.", |
@@ -430,12 +437,14 @@ discard block |
||
430 | 437 | } |
431 | 438 | } |
432 | 439 | |
433 | - if(!empty($this->referer)) |
|
434 | - $headers .= "Referer: ".$this->referer."\r\n"; |
|
440 | + if(!empty($this->referer)) { |
|
441 | + $headers .= "Referer: ".$this->referer."\r\n"; |
|
442 | + } |
|
435 | 443 | if(!empty($this->cookies)) |
436 | 444 | { |
437 | - if(!is_array($this->cookies)) |
|
438 | - $this->cookies = (array)$this->cookies; |
|
445 | + if(!is_array($this->cookies)) { |
|
446 | + $this->cookies = (array)$this->cookies; |
|
447 | + } |
|
439 | 448 | |
440 | 449 | reset($this->cookies); |
441 | 450 | if ( count($this->cookies) > 0 ) { |
@@ -448,27 +457,33 @@ discard block |
||
448 | 457 | } |
449 | 458 | if(!empty($this->rawheaders)) |
450 | 459 | { |
451 | - if(!is_array($this->rawheaders)) |
|
452 | - $this->rawheaders = (array)$this->rawheaders; |
|
453 | - while(list($headerKey,$headerVal) = each($this->rawheaders)) |
|
454 | - $headers .= $headerKey.": ".$headerVal."\r\n"; |
|
460 | + if(!is_array($this->rawheaders)) { |
|
461 | + $this->rawheaders = (array)$this->rawheaders; |
|
462 | + } |
|
463 | + while(list($headerKey,$headerVal) = each($this->rawheaders)) { |
|
464 | + $headers .= $headerKey.": ".$headerVal."\r\n"; |
|
465 | + } |
|
455 | 466 | } |
456 | 467 | if(!empty($content_type)) { |
457 | 468 | $headers .= "Content-type: $content_type"; |
458 | - if ($content_type == "multipart/form-data") |
|
459 | - $headers .= "; boundary=".$this->_mime_boundary; |
|
469 | + if ($content_type == "multipart/form-data") { |
|
470 | + $headers .= "; boundary=".$this->_mime_boundary; |
|
471 | + } |
|
460 | 472 | $headers .= "\r\n"; |
461 | 473 | } |
462 | - if(!empty($body)) |
|
463 | - $headers .= "Content-length: ".strlen($body)."\r\n"; |
|
464 | - if(!empty($this->user) || !empty($this->pass)) |
|
465 | - $headers .= "Authorization: BASIC ".base64_encode($this->user.":".$this->pass)."\r\n"; |
|
474 | + if(!empty($body)) { |
|
475 | + $headers .= "Content-length: ".strlen($body)."\r\n"; |
|
476 | + } |
|
477 | + if(!empty($this->user) || !empty($this->pass)) { |
|
478 | + $headers .= "Authorization: BASIC ".base64_encode($this->user.":".$this->pass)."\r\n"; |
|
479 | + } |
|
466 | 480 | |
467 | 481 | $headers .= "\r\n"; |
468 | 482 | |
469 | 483 | // set the read timeout if needed |
470 | - if ($this->read_timeout > 0) |
|
471 | - socket_set_timeout($fp, $this->read_timeout); |
|
484 | + if ($this->read_timeout > 0) { |
|
485 | + socket_set_timeout($fp, $this->read_timeout); |
|
486 | + } |
|
472 | 487 | $this->timed_out = false; |
473 | 488 | |
474 | 489 | fwrite($fp,$headers.$body,strlen($headers.$body)); |
@@ -488,8 +503,9 @@ discard block |
||
488 | 503 | } |
489 | 504 | |
490 | 505 | // if($currentHeader == "\r\n") |
491 | - if(preg_match("/^\r?\n$/", $currentHeader) ) |
|
492 | - break; |
|
506 | + if(preg_match("/^\r?\n$/", $currentHeader) ) { |
|
507 | + break; |
|
508 | + } |
|
493 | 509 | |
494 | 510 | // if a header begins with Location: or URI:, set the redirect |
495 | 511 | if(preg_match("/^(Location:|URI:)/i",$currentHeader)) |
@@ -502,13 +518,14 @@ discard block |
||
502 | 518 | // no host in the path, so prepend |
503 | 519 | $this->_redirectaddr = $URI_PARTS["scheme"]."://".$this->host.":".$this->port; |
504 | 520 | // eliminate double slash |
505 | - if(!preg_match("|^/|",$matches[2])) |
|
506 | - $this->_redirectaddr .= "/".$matches[2]; |
|
507 | - else |
|
508 | - $this->_redirectaddr .= $matches[2]; |
|
521 | + if(!preg_match("|^/|",$matches[2])) { |
|
522 | + $this->_redirectaddr .= "/".$matches[2]; |
|
523 | + } else { |
|
524 | + $this->_redirectaddr .= $matches[2]; |
|
525 | + } |
|
526 | + } else { |
|
527 | + $this->_redirectaddr = $matches[2]; |
|
509 | 528 | } |
510 | - else |
|
511 | - $this->_redirectaddr = $matches[2]; |
|
512 | 529 | } |
513 | 530 | |
514 | 531 | if(preg_match("|^HTTP/|",$currentHeader)) |
@@ -561,15 +578,18 @@ discard block |
||
561 | 578 | if(($this->_framedepth < $this->maxframes) && preg_match_all("'<frame\s+.*src[\s]*=[\'\"]?([^\'\"\>]+)'i",$results,$match)) |
562 | 579 | { |
563 | 580 | $this->results[] = $results; |
564 | - for($x=0; $x<count($match[1]); $x++) |
|
565 | - $this->_frameurls[] = $this->_expandlinks($match[1][$x],$URI_PARTS["scheme"]."://".$this->host); |
|
581 | + for($x=0; $x<count($match[1]); $x++) { |
|
582 | + $this->_frameurls[] = $this->_expandlinks($match[1][$x],$URI_PARTS["scheme"]."://".$this->host); |
|
583 | + } |
|
566 | 584 | } |
567 | 585 | // have we already fetched framed content? |
568 | - elseif(is_array($this->results)) |
|
569 | - $this->results[] = $results; |
|
586 | + elseif(is_array($this->results)) { |
|
587 | + $this->results[] = $results; |
|
588 | + } |
|
570 | 589 | // no framed content |
571 | - else |
|
572 | - $this->results = $results; |
|
590 | + else { |
|
591 | + $this->results = $results; |
|
592 | + } |
|
573 | 593 | |
574 | 594 | return true; |
575 | 595 | } |
@@ -585,28 +605,35 @@ discard block |
||
585 | 605 | |
586 | 606 | private function _httpsrequest($url,$URI,$http_method,$content_type="",$body="") |
587 | 607 | { |
588 | - if($this->passcookies && $this->_redirectaddr) |
|
589 | - $this->setcookies(); |
|
608 | + if($this->passcookies && $this->_redirectaddr) { |
|
609 | + $this->setcookies(); |
|
610 | + } |
|
590 | 611 | |
591 | 612 | $headers = array(); |
592 | 613 | |
593 | 614 | $URI_PARTS = parse_url($URI); |
594 | - if(empty($url)) |
|
595 | - $url = "/"; |
|
615 | + if(empty($url)) { |
|
616 | + $url = "/"; |
|
617 | + } |
|
596 | 618 | // GET ... header not needed for curl |
597 | 619 | //$headers[] = $http_method." ".$url." ".$this->_httpversion; |
598 | - if(!empty($this->agent)) |
|
599 | - $headers[] = "User-Agent: ".$this->agent; |
|
600 | - if(!empty($this->host)) |
|
601 | - $headers[] = "Host: ".$this->host; |
|
602 | - if(!empty($this->accept)) |
|
603 | - $headers[] = "Accept: ".$this->accept; |
|
604 | - if(!empty($this->referer)) |
|
605 | - $headers[] = "Referer: ".$this->referer; |
|
620 | + if(!empty($this->agent)) { |
|
621 | + $headers[] = "User-Agent: ".$this->agent; |
|
622 | + } |
|
623 | + if(!empty($this->host)) { |
|
624 | + $headers[] = "Host: ".$this->host; |
|
625 | + } |
|
626 | + if(!empty($this->accept)) { |
|
627 | + $headers[] = "Accept: ".$this->accept; |
|
628 | + } |
|
629 | + if(!empty($this->referer)) { |
|
630 | + $headers[] = "Referer: ".$this->referer; |
|
631 | + } |
|
606 | 632 | if(!empty($this->cookies)) |
607 | 633 | { |
608 | - if(!is_array($this->cookies)) |
|
609 | - $this->cookies = (array)$this->cookies; |
|
634 | + if(!is_array($this->cookies)) { |
|
635 | + $this->cookies = (array)$this->cookies; |
|
636 | + } |
|
610 | 637 | |
611 | 638 | reset($this->cookies); |
612 | 639 | if ( count($this->cookies) > 0 ) { |
@@ -619,31 +646,38 @@ discard block |
||
619 | 646 | } |
620 | 647 | if(!empty($this->rawheaders)) |
621 | 648 | { |
622 | - if(!is_array($this->rawheaders)) |
|
623 | - $this->rawheaders = (array)$this->rawheaders; |
|
624 | - while(list($headerKey,$headerVal) = each($this->rawheaders)) |
|
625 | - $headers[] = $headerKey.": ".$headerVal; |
|
649 | + if(!is_array($this->rawheaders)) { |
|
650 | + $this->rawheaders = (array)$this->rawheaders; |
|
651 | + } |
|
652 | + while(list($headerKey,$headerVal) = each($this->rawheaders)) { |
|
653 | + $headers[] = $headerKey.": ".$headerVal; |
|
654 | + } |
|
626 | 655 | } |
627 | 656 | if(!empty($content_type)) { |
628 | - if ($content_type == "multipart/form-data") |
|
629 | - $headers[] = "Content-type: $content_type; boundary=".$this->_mime_boundary; |
|
630 | - else |
|
631 | - $headers[] = "Content-type: $content_type"; |
|
632 | - } |
|
633 | - if(!empty($body)) |
|
634 | - $headers[] = "Content-length: ".strlen($body); |
|
635 | - if(!empty($this->user) || !empty($this->pass)) |
|
636 | - $headers[] = "Authorization: BASIC ".base64_encode($this->user.":".$this->pass); |
|
657 | + if ($content_type == "multipart/form-data") { |
|
658 | + $headers[] = "Content-type: $content_type; boundary=".$this->_mime_boundary; |
|
659 | + } else { |
|
660 | + $headers[] = "Content-type: $content_type"; |
|
661 | + } |
|
662 | + } |
|
663 | + if(!empty($body)) { |
|
664 | + $headers[] = "Content-length: ".strlen($body); |
|
665 | + } |
|
666 | + if(!empty($this->user) || !empty($this->pass)) { |
|
667 | + $headers[] = "Authorization: BASIC ".base64_encode($this->user.":".$this->pass); |
|
668 | + } |
|
637 | 669 | |
638 | 670 | for($curr_header = 0; $curr_header < count($headers); $curr_header++) { |
639 | 671 | $cmdline_params .= " -H \"".$headers[$curr_header]."\""; |
640 | 672 | } |
641 | 673 | |
642 | - if(!empty($body)) |
|
643 | - $cmdline_params .= " -d \"$body\""; |
|
674 | + if(!empty($body)) { |
|
675 | + $cmdline_params .= " -d \"$body\""; |
|
676 | + } |
|
644 | 677 | |
645 | - if($this->read_timeout > 0) |
|
646 | - $cmdline_params .= " -m ".$this->read_timeout; |
|
678 | + if($this->read_timeout > 0) { |
|
679 | + $cmdline_params .= " -m ".$this->read_timeout; |
|
680 | + } |
|
647 | 681 | |
648 | 682 | $headerfile = uniqid(time()); |
649 | 683 | |
@@ -681,13 +715,14 @@ discard block |
||
681 | 715 | // no host in the path, so prepend |
682 | 716 | $this->_redirectaddr = $URI_PARTS["scheme"]."://".$this->host.":".$this->port; |
683 | 717 | // eliminate double slash |
684 | - if(!preg_match("|^/|",$matches[2])) |
|
685 | - $this->_redirectaddr .= "/".$matches[2]; |
|
686 | - else |
|
687 | - $this->_redirectaddr .= $matches[2]; |
|
718 | + if(!preg_match("|^/|",$matches[2])) { |
|
719 | + $this->_redirectaddr .= "/".$matches[2]; |
|
720 | + } else { |
|
721 | + $this->_redirectaddr .= $matches[2]; |
|
722 | + } |
|
723 | + } else { |
|
724 | + $this->_redirectaddr = $matches[2]; |
|
688 | 725 | } |
689 | - else |
|
690 | - $this->_redirectaddr = $matches[2]; |
|
691 | 726 | } |
692 | 727 | |
693 | 728 | if(preg_match("|^HTTP/|",$result_headers[$currentHeader])) |
@@ -712,15 +747,18 @@ discard block |
||
712 | 747 | if(($this->_framedepth < $this->maxframes) && preg_match_all("'<frame\s+.*src[\s]*=[\'\"]?([^\'\"\>]+)'i",$results,$match)) |
713 | 748 | { |
714 | 749 | $this->results[] = $results; |
715 | - for($x=0; $x<count($match[1]); $x++) |
|
716 | - $this->_frameurls[] = $this->_expandlinks($match[1][$x],$URI_PARTS["scheme"]."://".$this->host); |
|
750 | + for($x=0; $x<count($match[1]); $x++) { |
|
751 | + $this->_frameurls[] = $this->_expandlinks($match[1][$x],$URI_PARTS["scheme"]."://".$this->host); |
|
752 | + } |
|
717 | 753 | } |
718 | 754 | // have we already fetched framed content? |
719 | - elseif(is_array($this->results)) |
|
720 | - $this->results[] = $results; |
|
755 | + elseif(is_array($this->results)) { |
|
756 | + $this->results[] = $results; |
|
757 | + } |
|
721 | 758 | // no framed content |
722 | - else |
|
723 | - $this->results = $results; |
|
759 | + else { |
|
760 | + $this->results = $results; |
|
761 | + } |
|
724 | 762 | |
725 | 763 | unlink("/tmp/$headerfile"); |
726 | 764 | |
@@ -736,8 +774,9 @@ discard block |
||
736 | 774 | { |
737 | 775 | for($x=0; $x<count($this->headers); $x++) |
738 | 776 | { |
739 | - if(preg_match("/^set-cookie:[\s]+([^=]+)=([^;]+)/i", $this->headers[$x],$match)) |
|
740 | - $this->cookies[$match[1]] = $match[2]; |
|
777 | + if(preg_match("/^set-cookie:[\s]+([^=]+)=([^;]+)/i", $this->headers[$x],$match)) { |
|
778 | + $this->cookies[$match[1]] = $match[2]; |
|
779 | + } |
|
741 | 780 | } |
742 | 781 | } |
743 | 782 | |
@@ -773,8 +812,7 @@ discard block |
||
773 | 812 | $this->_isproxy = true; |
774 | 813 | $host = $this->proxy_host; |
775 | 814 | $port = $this->proxy_port; |
776 | - } |
|
777 | - else |
|
815 | + } else |
|
778 | 816 | { |
779 | 817 | $host = $this->host; |
780 | 818 | $port = $this->port; |
@@ -793,8 +831,7 @@ discard block |
||
793 | 831 | // socket connection succeeded |
794 | 832 | |
795 | 833 | return true; |
796 | - } |
|
797 | - else |
|
834 | + } else |
|
798 | 835 | { |
799 | 836 | // socket connection failed |
800 | 837 | $this->status = $errno; |
@@ -837,8 +874,9 @@ discard block |
||
837 | 874 | settype($formvars, "array"); |
838 | 875 | settype($formfiles, "array"); |
839 | 876 | |
840 | - if (count($formvars) == 0 && count($formfiles) == 0) |
|
841 | - return; |
|
877 | + if (count($formvars) == 0 && count($formfiles) == 0) { |
|
878 | + return; |
|
879 | + } |
|
842 | 880 | |
843 | 881 | switch ($this->_submit_type) { |
844 | 882 | case "application/x-www-form-urlencoded": |
@@ -848,8 +886,9 @@ discard block |
||
848 | 886 | while (list($cur_key, $cur_val) = each($val)) { |
849 | 887 | $postdata .= urlencode($key)."[]=".urlencode($cur_val)."&"; |
850 | 888 | } |
851 | - } else |
|
852 | - $postdata .= urlencode($key)."=".urlencode($val)."&"; |
|
889 | + } else { |
|
890 | + $postdata .= urlencode($key)."=".urlencode($val)."&"; |
|
891 | + } |
|
853 | 892 | } |
854 | 893 | break; |
855 | 894 | |
@@ -875,7 +914,9 @@ discard block |
||
875 | 914 | while (list($field_name, $file_names) = each($formfiles)) { |
876 | 915 | settype($file_names, "array"); |
877 | 916 | while (list(, $file_name) = each($file_names)) { |
878 | - if (!is_readable($file_name)) continue; |
|
917 | + if (!is_readable($file_name)) { |
|
918 | + continue; |
|
919 | + } |
|
879 | 920 | |
880 | 921 | $fp = fopen($file_name, "r"); |
881 | 922 | $file_content = fread($fp, filesize($file_name)); |
@@ -165,12 +165,10 @@ discard block |
||
165 | 165 | if ( $el == 'rdf' ) { |
166 | 166 | $this->feed_type = RSS; |
167 | 167 | $this->feed_version = '1.0'; |
168 | - } |
|
169 | - elseif ( $el == 'rss' ) { |
|
168 | + } elseif ( $el == 'rss' ) { |
|
170 | 169 | $this->feed_type = RSS; |
171 | 170 | $this->feed_version = $attrs['version']; |
172 | - } |
|
173 | - elseif ( $el == 'feed' ) { |
|
171 | + } elseif ( $el == 'feed' ) { |
|
174 | 172 | $this->feed_type = ATOM; |
175 | 173 | $this->feed_version = $attrs['version']; |
176 | 174 | $this->inchannel = true; |
@@ -181,8 +179,7 @@ discard block |
||
181 | 179 | if ( $el == 'channel' ) |
182 | 180 | { |
183 | 181 | $this->inchannel = true; |
184 | - } |
|
185 | - elseif ($el == 'item' or $el == 'entry' ) |
|
182 | + } elseif ($el == 'item' or $el == 'entry' ) |
|
186 | 183 | { |
187 | 184 | $this->initem = true; |
188 | 185 | if ( isset($attrs['rdf:about']) ) { |
@@ -198,9 +195,7 @@ discard block |
||
198 | 195 | $el == 'textinput' ) |
199 | 196 | { |
200 | 197 | $this->intextinput = true; |
201 | - } |
|
202 | - |
|
203 | - elseif ( |
|
198 | + } elseif ( |
|
204 | 199 | $this->feed_type == RSS and |
205 | 200 | $this->current_namespace == '' and |
206 | 201 | $el == 'image' ) |
@@ -244,8 +239,7 @@ discard block |
||
244 | 239 | if ( isset($attrs['rel']) and $attrs['rel'] == 'alternate' ) |
245 | 240 | { |
246 | 241 | $link_el = 'link'; |
247 | - } |
|
248 | - else { |
|
242 | + } else { |
|
249 | 243 | $link_el = 'link_' . $attrs['rel']; |
250 | 244 | } |
251 | 245 | |
@@ -263,8 +257,7 @@ discard block |
||
263 | 257 | if ($this->feed_type == ATOM and $this->incontent) |
264 | 258 | { |
265 | 259 | $this->append_content( $text ); |
266 | - } |
|
267 | - else { |
|
260 | + } else { |
|
268 | 261 | $current_el = join('_', array_reverse($this->stack)); |
269 | 262 | $this->append($current_el, $text); |
270 | 263 | } |
@@ -278,37 +271,30 @@ discard block |
||
278 | 271 | $this->items[] = $this->current_item; |
279 | 272 | $this->current_item = array(); |
280 | 273 | $this->initem = false; |
281 | - } |
|
282 | - elseif ($this->feed_type == RSS and $this->current_namespace == '' and $el == 'textinput' ) |
|
274 | + } elseif ($this->feed_type == RSS and $this->current_namespace == '' and $el == 'textinput' ) |
|
283 | 275 | { |
284 | 276 | $this->intextinput = false; |
285 | - } |
|
286 | - elseif ($this->feed_type == RSS and $this->current_namespace == '' and $el == 'image' ) |
|
277 | + } elseif ($this->feed_type == RSS and $this->current_namespace == '' and $el == 'image' ) |
|
287 | 278 | { |
288 | 279 | $this->inimage = false; |
289 | - } |
|
290 | - elseif ($this->feed_type == ATOM and in_array($el, $this->_CONTENT_CONSTRUCTS) ) |
|
280 | + } elseif ($this->feed_type == ATOM and in_array($el, $this->_CONTENT_CONSTRUCTS) ) |
|
291 | 281 | { |
292 | 282 | $this->incontent = false; |
293 | - } |
|
294 | - elseif ($el == 'channel' or $el == 'feed' ) |
|
283 | + } elseif ($el == 'channel' or $el == 'feed' ) |
|
295 | 284 | { |
296 | 285 | $this->inchannel = false; |
297 | - } |
|
298 | - elseif ($this->feed_type == ATOM and $this->incontent ) { |
|
286 | + } elseif ($this->feed_type == ATOM and $this->incontent ) { |
|
299 | 287 | // balance tags properly |
300 | 288 | // note: i don't think this is actually neccessary |
301 | 289 | if ( $this->stack[0] == $el ) |
302 | 290 | { |
303 | 291 | $this->append_content("</$el>"); |
304 | - } |
|
305 | - else { |
|
292 | + } else { |
|
306 | 293 | $this->append_content("<$el />"); |
307 | 294 | } |
308 | 295 | |
309 | 296 | array_shift( $this->stack ); |
310 | - } |
|
311 | - else { |
|
297 | + } else { |
|
312 | 298 | array_shift( $this->stack ); |
313 | 299 | } |
314 | 300 | |
@@ -327,8 +313,7 @@ discard block |
||
327 | 313 | public function append_content($text) { |
328 | 314 | if ( $this->initem ) { |
329 | 315 | $this->concat( $this->current_item[ $this->incontent ], $text ); |
330 | - } |
|
331 | - elseif ( $this->inchannel ) { |
|
316 | + } elseif ( $this->inchannel ) { |
|
332 | 317 | $this->concat( $this->channel[ $this->incontent ], $text ); |
333 | 318 | } |
334 | 319 | } |
@@ -343,34 +328,27 @@ discard block |
||
343 | 328 | if ( $this->initem ) { |
344 | 329 | $this->concat( |
345 | 330 | $this->current_item[ $this->current_namespace ][ $el ], $text); |
346 | - } |
|
347 | - elseif ($this->inchannel) { |
|
331 | + } elseif ($this->inchannel) { |
|
348 | 332 | $this->concat( |
349 | 333 | $this->channel[ $this->current_namespace][ $el ], $text ); |
350 | - } |
|
351 | - elseif ($this->intextinput) { |
|
334 | + } elseif ($this->intextinput) { |
|
352 | 335 | $this->concat( |
353 | 336 | $this->textinput[ $this->current_namespace][ $el ], $text ); |
354 | - } |
|
355 | - elseif ($this->inimage) { |
|
337 | + } elseif ($this->inimage) { |
|
356 | 338 | $this->concat( |
357 | 339 | $this->image[ $this->current_namespace ][ $el ], $text ); |
358 | 340 | } |
359 | - } |
|
360 | - else { |
|
341 | + } else { |
|
361 | 342 | if ( $this->initem ) { |
362 | 343 | $this->concat( |
363 | 344 | $this->current_item[ $el ], $text); |
364 | - } |
|
365 | - elseif ($this->intextinput) { |
|
345 | + } elseif ($this->intextinput) { |
|
366 | 346 | $this->concat( |
367 | 347 | $this->textinput[ $el ], $text ); |
368 | - } |
|
369 | - elseif ($this->inimage) { |
|
348 | + } elseif ($this->inimage) { |
|
370 | 349 | $this->concat( |
371 | 350 | $this->image[ $el ], $text ); |
372 | - } |
|
373 | - elseif ($this->inchannel) { |
|
351 | + } elseif ($this->inchannel) { |
|
374 | 352 | $this->concat( |
375 | 353 | $this->channel[ $el ], $text ); |
376 | 354 | } |
@@ -384,10 +362,12 @@ discard block |
||
384 | 362 | $this->channel['description'] = $this->channel['tagline']; |
385 | 363 | for ( $i = 0; $i < count($this->items); $i++) { |
386 | 364 | $item = $this->items[$i]; |
387 | - if ( isset($item['summary']) ) |
|
388 | - $item['description'] = $item['summary']; |
|
389 | - if ( isset($item['atom_content'])) |
|
390 | - $item['content']['encoded'] = $item['atom_content']; |
|
365 | + if ( isset($item['summary']) ) { |
|
366 | + $item['description'] = $item['summary']; |
|
367 | + } |
|
368 | + if ( isset($item['atom_content'])) { |
|
369 | + $item['content']['encoded'] = $item['atom_content']; |
|
370 | + } |
|
391 | 371 | |
392 | 372 | $atom_date = (isset($item['issued']) ) ? $item['issued'] : $item['modified']; |
393 | 373 | if ( $atom_date ) { |
@@ -399,23 +379,23 @@ discard block |
||
399 | 379 | |
400 | 380 | $this->items[$i] = $item; |
401 | 381 | } |
402 | - } |
|
403 | - elseif ( $this->is_rss() ) { |
|
382 | + } elseif ( $this->is_rss() ) { |
|
404 | 383 | $this->channel['tagline'] = $this->channel['description']; |
405 | 384 | for ( $i = 0; $i < count($this->items); $i++) { |
406 | 385 | $item = $this->items[$i]; |
407 | - if ( isset($item['description'])) |
|
408 | - $item['summary'] = $item['description']; |
|
409 | - if ( isset($item['content']['encoded'] ) ) |
|
410 | - $item['atom_content'] = $item['content']['encoded']; |
|
386 | + if ( isset($item['description'])) { |
|
387 | + $item['summary'] = $item['description']; |
|
388 | + } |
|
389 | + if ( isset($item['content']['encoded'] ) ) { |
|
390 | + $item['atom_content'] = $item['content']['encoded']; |
|
391 | + } |
|
411 | 392 | |
412 | 393 | if ( $this->is_rss() == '1.0' and isset($item['dc']['date']) ) { |
413 | 394 | $epoch = @parse_w3cdtf($item['dc']['date']); |
414 | 395 | if ($epoch and $epoch > 0) { |
415 | 396 | $item['date_timestamp'] = $epoch; |
416 | 397 | } |
417 | - } |
|
418 | - elseif ( isset($item['pubdate']) ) { |
|
398 | + } elseif ( isset($item['pubdate']) ) { |
|
419 | 399 | $epoch = @strtotime($item['pubdate']); |
420 | 400 | if ($epoch > 0) { |
421 | 401 | $item['date_timestamp'] = $epoch; |
@@ -431,8 +411,7 @@ discard block |
||
431 | 411 | public function is_rss () { |
432 | 412 | if ( $this->feed_type == RSS ) { |
433 | 413 | return $this->feed_version; |
434 | - } |
|
435 | - else { |
|
414 | + } else { |
|
436 | 415 | return false; |
437 | 416 | } |
438 | 417 | } |
@@ -440,8 +419,7 @@ discard block |
||
440 | 419 | public function is_atom() { |
441 | 420 | if ( $this->feed_type == ATOM ) { |
442 | 421 | return $this->feed_version; |
443 | - } |
|
444 | - else { |
|
422 | + } else { |
|
445 | 423 | return false; |
446 | 424 | } |
447 | 425 | } |
@@ -453,8 +431,7 @@ discard block |
||
453 | 431 | public function create_parser($source, $out_enc, $in_enc, $detect) { |
454 | 432 | if ( substr(phpversion(),0,1) == 5) { |
455 | 433 | $parser = $this->php5_create_parser($in_enc, $detect); |
456 | - } |
|
457 | - else { |
|
434 | + } else { |
|
458 | 435 | list($parser, $source) = $this->php4_create_parser($source, $in_enc, $detect); |
459 | 436 | } |
460 | 437 | if ($out_enc) { |
@@ -478,8 +455,7 @@ discard block |
||
478 | 455 | // by default php5 does a fine job of detecting input encodings |
479 | 456 | if(!$detect && $in_enc) { |
480 | 457 | return xml_parser_create($in_enc); |
481 | - } |
|
482 | - else { |
|
458 | + } else { |
|
483 | 459 | return xml_parser_create(''); |
484 | 460 | } |
485 | 461 | } |
@@ -508,8 +484,7 @@ discard block |
||
508 | 484 | if (preg_match('/<?xml.*encoding=[\'"](.*?)[\'"].*?>/m', $source, $m)) { |
509 | 485 | $in_enc = strtoupper($m[1]); |
510 | 486 | $this->source_encoding = $in_enc; |
511 | - } |
|
512 | - else { |
|
487 | + } else { |
|
513 | 488 | $in_enc = 'UTF-8'; |
514 | 489 | } |
515 | 490 | } |
@@ -552,8 +527,7 @@ discard block |
||
552 | 527 | $enc = strtoupper($enc); |
553 | 528 | if ( in_array($enc, $this->_KNOWN_ENCODINGS) ) { |
554 | 529 | return $enc; |
555 | - } |
|
556 | - else { |
|
530 | + } else { |
|
557 | 531 | return false; |
558 | 532 | } |
559 | 533 | } |
@@ -565,8 +539,7 @@ discard block |
||
565 | 539 | } |
566 | 540 | if ( MAGPIE_DEBUG ) { |
567 | 541 | trigger_error( $errormsg, $lvl); |
568 | - } |
|
569 | - else { |
|
542 | + } else { |
|
570 | 543 | error_log( $errormsg, 0); |
571 | 544 | } |
572 | 545 | |
@@ -594,8 +567,11 @@ discard block |
||
594 | 567 | |
595 | 568 | |
596 | 569 | function array_change_key_case($array,$case=CASE_LOWER) { |
597 | - if ($case=CASE_LOWER) $cmd=strtolower; |
|
598 | - elseif ($case=CASE_UPPER) $cmd=strtoupper; |
|
570 | + if ($case=CASE_LOWER) { |
|
571 | + $cmd=strtolower; |
|
572 | + } elseif ($case=CASE_UPPER) { |
|
573 | + $cmd=strtoupper; |
|
574 | + } |
|
599 | 575 | foreach($array as $key=>$value) { |
600 | 576 | $output[$cmd($key)]=$value; |
601 | 577 | } |
@@ -154,7 +154,9 @@ discard block |
||
154 | 154 | |
155 | 155 | public function set_image_wrapper() |
156 | 156 | { |
157 | - if ($this->debug) error_log('Image::set_image_wrapper loaded'); |
|
157 | + if ($this->debug) { |
|
158 | + error_log('Image::set_image_wrapper loaded'); |
|
159 | + } |
|
158 | 160 | try { |
159 | 161 | if (file_exists($this->path)) { |
160 | 162 | $this->image = new Imagick($this->path); |
@@ -163,10 +165,14 @@ discard block |
||
163 | 165 | $this->fill_image_info(); //Fills height, width and type |
164 | 166 | } |
165 | 167 | } else { |
166 | - if ($this->debug) error_log('Image::image does not exist'); |
|
168 | + if ($this->debug) { |
|
169 | + error_log('Image::image does not exist'); |
|
170 | + } |
|
167 | 171 | } |
168 | 172 | } catch(ImagickException $e) { |
169 | - if ($this->debug) error_log($e->getMessage()); |
|
173 | + if ($this->debug) { |
|
174 | + error_log($e->getMessage()); |
|
175 | + } |
|
170 | 176 | } |
171 | 177 | } |
172 | 178 | |
@@ -180,7 +186,9 @@ discard block |
||
180 | 186 | |
181 | 187 | if (in_array($this->type, $this->allowed_extensions)) { |
182 | 188 | $this->image_validated = true; |
183 | - if ($this->debug) error_log('image_validated true'); |
|
189 | + if ($this->debug) { |
|
190 | + error_log('image_validated true'); |
|
191 | + } |
|
184 | 192 | } |
185 | 193 | } |
186 | 194 | |
@@ -196,7 +204,9 @@ discard block |
||
196 | 204 | //@todo implement border logic case for Imagick |
197 | 205 | public function resize($thumbw, $thumbh, $border, $specific_size = false) |
198 | 206 | { |
199 | - if (!$this->image_validated) return false; |
|
207 | + if (!$this->image_validated) { |
|
208 | + return false; |
|
209 | + } |
|
200 | 210 | |
201 | 211 | if ($specific_size) { |
202 | 212 | $width = $thumbw; |
@@ -222,7 +232,9 @@ discard block |
||
222 | 232 | */ |
223 | 233 | |
224 | 234 | public function crop($x, $y, $width, $height, $src_width, $src_height) { |
225 | - if (!$this->image_validated) return false; |
|
235 | + if (!$this->image_validated) { |
|
236 | + return false; |
|
237 | + } |
|
226 | 238 | $this->image->cropimage($width, $height, $x, $y); |
227 | 239 | $this->width = $width; |
228 | 240 | $this->height = $height; |
@@ -230,7 +242,9 @@ discard block |
||
230 | 242 | |
231 | 243 | public function send_image($file = '', $compress = -1, $convert_file_to = null) |
232 | 244 | { |
233 | - if (!$this->image_validated) return false; |
|
245 | + if (!$this->image_validated) { |
|
246 | + return false; |
|
247 | + } |
|
234 | 248 | $type = $this->type; |
235 | 249 | if (!empty($convert_file_to) && in_array($convert_file_to, $this->allowed_extensions)) { |
236 | 250 | $type = $convert_file_to; |
@@ -238,20 +252,28 @@ discard block |
||
238 | 252 | switch ($type) { |
239 | 253 | case 'jpeg': |
240 | 254 | case 'jpg': |
241 | - if (!$file) header("Content-type: image/jpeg"); |
|
255 | + if (!$file) { |
|
256 | + header("Content-type: image/jpeg"); |
|
257 | + } |
|
242 | 258 | break; |
243 | 259 | case 'png': |
244 | - if (!$file) header("Content-type: image/png"); |
|
260 | + if (!$file) { |
|
261 | + header("Content-type: image/png"); |
|
262 | + } |
|
245 | 263 | break; |
246 | 264 | case 'gif': |
247 | - if (!$file) header("Content-type: image/gif"); |
|
265 | + if (!$file) { |
|
266 | + header("Content-type: image/gif"); |
|
267 | + } |
|
248 | 268 | break; |
249 | 269 | } |
250 | 270 | $result = false; |
251 | 271 | try { |
252 | 272 | $result = $this->image->writeImage($file); |
253 | 273 | } catch(ImagickException $e) { |
254 | - if ($this->debug) error_log($e->getMessage()); |
|
274 | + if ($this->debug) { |
|
275 | + error_log($e->getMessage()); |
|
276 | + } |
|
255 | 277 | } |
256 | 278 | |
257 | 279 | if (!$file) { |
@@ -334,7 +356,9 @@ discard block |
||
334 | 356 | |
335 | 357 | public function resize($thumbw, $thumbh, $border, $specific_size = false) |
336 | 358 | { |
337 | - if (!$this->image_validated) return false; |
|
359 | + if (!$this->image_validated) { |
|
360 | + return false; |
|
361 | + } |
|
338 | 362 | if ($border == 1) { |
339 | 363 | if ($specific_size) { |
340 | 364 | $width = $thumbw; |
@@ -387,7 +411,9 @@ discard block |
||
387 | 411 | * @param int $src_height the source height of the original image |
388 | 412 | */ |
389 | 413 | public function crop($x, $y, $width, $height, $src_width, $src_height) { |
390 | - if (!$this->image_validated) return false; |
|
414 | + if (!$this->image_validated) { |
|
415 | + return false; |
|
416 | + } |
|
391 | 417 | $this->width = $width; |
392 | 418 | $this->height = $height; |
393 | 419 | $src = null; |
@@ -418,7 +444,9 @@ discard block |
||
418 | 444 | |
419 | 445 | public function send_image($file = '', $compress = -1, $convert_file_to = null) |
420 | 446 | { |
421 | - if (!$this->image_validated) return false; |
|
447 | + if (!$this->image_validated) { |
|
448 | + return false; |
|
449 | + } |
|
422 | 450 | $compress = (int)$compress; |
423 | 451 | $type = $this->type; |
424 | 452 | if (!empty($convert_file_to) && in_array($convert_file_to, $this->allowed_extensions)) { |
@@ -427,19 +455,27 @@ discard block |
||
427 | 455 | switch ($type) { |
428 | 456 | case 'jpeg': |
429 | 457 | case 'jpg': |
430 | - if (!$file) header("Content-type: image/jpeg"); |
|
431 | - if ($compress == -1) $compress = 100; |
|
458 | + if (!$file) { |
|
459 | + header("Content-type: image/jpeg"); |
|
460 | + } |
|
461 | + if ($compress == -1) { |
|
462 | + $compress = 100; |
|
463 | + } |
|
432 | 464 | return imagejpeg($this->bg, $file, $compress); |
433 | 465 | break; |
434 | 466 | case 'png': |
435 | - if (!$file) header("Content-type: image/png"); |
|
467 | + if (!$file) { |
|
468 | + header("Content-type: image/png"); |
|
469 | + } |
|
436 | 470 | if ($compress != -1) { |
437 | 471 | @imagetruecolortopalette($this->bg, true, $compress); |
438 | 472 | } |
439 | 473 | return imagepng($this->bg, $file, $compress); |
440 | 474 | break; |
441 | 475 | case 'gif': |
442 | - if (!$file) header("Content-type: image/gif"); |
|
476 | + if (!$file) { |
|
477 | + header("Content-type: image/gif"); |
|
478 | + } |
|
443 | 479 | if ($compress != -1) { |
444 | 480 | @imagetruecolortopalette($this->bg, true, $compress); |
445 | 481 | } |
@@ -456,7 +492,9 @@ discard block |
||
456 | 492 | */ |
457 | 493 | function convert2bw() |
458 | 494 | { |
459 | - if (!$this->image_validated) return false; |
|
495 | + if (!$this->image_validated) { |
|
496 | + return false; |
|
497 | + } |
|
460 | 498 | |
461 | 499 | $dest_img = imagecreatetruecolor(imagesx($this->bg), imagesy($this->bg)); |
462 | 500 | /* copy ignore the transparent color |
@@ -262,8 +262,9 @@ |
||
262 | 262 | $table_url_rel_session = Database :: get_main_table(TABLE_MAIN_ACCESS_URL_REL_SESSION); |
263 | 263 | $tbl_session = Database :: get_main_table(TABLE_MAIN_SESSION); |
264 | 264 | |
265 | - if (!empty($access_url_id)) |
|
266 | - $where ="WHERE $table_url_rel_session.access_url_id = ".intval($access_url_id); |
|
265 | + if (!empty($access_url_id)) { |
|
266 | + $where ="WHERE $table_url_rel_session.access_url_id = ".intval($access_url_id); |
|
267 | + } |
|
267 | 268 | |
268 | 269 | $sql = "SELECT id, name, access_url_id |
269 | 270 | FROM $tbl_session u |
@@ -2259,7 +2259,9 @@ discard block |
||
2259 | 2259 | $debug = false; |
2260 | 2260 | } |
2261 | 2261 | |
2262 | - if ($debug) echo '<h1>Tracking::get_avg_student_score</h1>'; |
|
2262 | + if ($debug) { |
|
2263 | + echo '<h1>Tracking::get_avg_student_score</h1>'; |
|
2264 | + } |
|
2263 | 2265 | $tbl_stats_exercices = Database :: get_main_table(TABLE_STATISTIC_TRACK_E_EXERCISES); |
2264 | 2266 | $tbl_stats_attempts = Database :: get_main_table(TABLE_STATISTIC_TRACK_E_ATTEMPT); |
2265 | 2267 | |
@@ -2336,7 +2338,9 @@ discard block |
||
2336 | 2338 | $condition_user1 AND |
2337 | 2339 | session_id = $session_id |
2338 | 2340 | GROUP BY lp_id, user_id"; |
2339 | - if ($debug) echo $sql; |
|
2341 | + if ($debug) { |
|
2342 | + echo $sql; |
|
2343 | + } |
|
2340 | 2344 | |
2341 | 2345 | $rs_last_lp_view_id = Database::query($sql); |
2342 | 2346 | |
@@ -2352,7 +2356,9 @@ discard block |
||
2352 | 2356 | $lp_view_id = $row_lp_view['id']; |
2353 | 2357 | $lp_id = $row_lp_view['lp_id']; |
2354 | 2358 | $user_id = $row_lp_view['user_id']; |
2355 | - if ($debug) echo '<h2>LP id '.$lp_id.'</h2>'; |
|
2359 | + if ($debug) { |
|
2360 | + echo '<h2>LP id '.$lp_id.'</h2>'; |
|
2361 | + } |
|
2356 | 2362 | |
2357 | 2363 | if ($get_only_latest_attempt_results) { |
2358 | 2364 | //Getting lp_items done by the user |
@@ -2409,7 +2415,9 @@ discard block |
||
2409 | 2415 | lp_i.c_id = $course_id AND |
2410 | 2416 | (lp_i.item_type='sco' OR lp_i.item_type='".TOOL_QUIZ."') |
2411 | 2417 | WHERE lp_view_id = $lp_view_id "; |
2412 | - if ($debug) echo $sql.'<br />'; |
|
2418 | + if ($debug) { |
|
2419 | + echo $sql.'<br />'; |
|
2420 | + } |
|
2413 | 2421 | $res_max_score = Database::query($sql); |
2414 | 2422 | |
2415 | 2423 | while ($row_max_score = Database::fetch_array($res_max_score,'ASSOC')) { |
@@ -2428,7 +2436,9 @@ discard block |
||
2428 | 2436 | $max_score_item_view = $row_max_score['max_score_item_view']; |
2429 | 2437 | $score = $row_max_score['score']; |
2430 | 2438 | |
2431 | - if ($debug) echo '<h3>Item Type: ' .$row_max_score['item_type'].'</h3>'; |
|
2439 | + if ($debug) { |
|
2440 | + echo '<h3>Item Type: ' .$row_max_score['item_type'].'</h3>'; |
|
2441 | + } |
|
2432 | 2442 | |
2433 | 2443 | if ($row_max_score['item_type'] == 'sco') { |
2434 | 2444 | /* Check if it is sco (easier to get max_score) |
@@ -2448,7 +2458,9 @@ discard block |
||
2448 | 2458 | if (!empty($max_score)) { |
2449 | 2459 | $lp_partial_total += $score/$max_score; |
2450 | 2460 | } |
2451 | - if ($debug) echo '<b>$lp_partial_total, $score, $max_score '.$lp_partial_total.' '.$score.' '.$max_score.'</b><br />'; |
|
2461 | + if ($debug) { |
|
2462 | + echo '<b>$lp_partial_total, $score, $max_score '.$lp_partial_total.' '.$score.' '.$max_score.'</b><br />'; |
|
2463 | + } |
|
2452 | 2464 | } else { |
2453 | 2465 | // Case of a TOOL_QUIZ element |
2454 | 2466 | $item_id = $row_max_score['iid']; |
@@ -2470,12 +2482,16 @@ discard block |
||
2470 | 2482 | ORDER BY exe_date DESC |
2471 | 2483 | LIMIT 1"; |
2472 | 2484 | |
2473 | - if ($debug) echo $sql .'<br />'; |
|
2485 | + if ($debug) { |
|
2486 | + echo $sql .'<br />'; |
|
2487 | + } |
|
2474 | 2488 | $result_last_attempt = Database::query($sql); |
2475 | 2489 | $num = Database :: num_rows($result_last_attempt); |
2476 | 2490 | if ($num > 0 ) { |
2477 | 2491 | $id_last_attempt = Database :: result($result_last_attempt, 0, 0); |
2478 | - if ($debug) echo $id_last_attempt.'<br />'; |
|
2492 | + if ($debug) { |
|
2493 | + echo $id_last_attempt.'<br />'; |
|
2494 | + } |
|
2479 | 2495 | |
2480 | 2496 | // Within the last attempt number tracking, get the sum of |
2481 | 2497 | // the max_scores of all questions that it was |
@@ -2494,7 +2510,9 @@ discard block |
||
2494 | 2510 | q.c_id = $course_id |
2495 | 2511 | ) |
2496 | 2512 | AS t"; |
2497 | - if ($debug) echo '$sql: '.$sql.' <br />'; |
|
2513 | + if ($debug) { |
|
2514 | + echo '$sql: '.$sql.' <br />'; |
|
2515 | + } |
|
2498 | 2516 | $res_max_score_bis = Database::query($sql); |
2499 | 2517 | $row_max_score_bis = Database::fetch_array($res_max_score_bis); |
2500 | 2518 | |
@@ -2504,7 +2522,9 @@ discard block |
||
2504 | 2522 | if (!empty($max_score) && floatval($max_score) > 0) { |
2505 | 2523 | $lp_partial_total += $score/$max_score; |
2506 | 2524 | } |
2507 | - if ($debug) echo '$lp_partial_total, $score, $max_score <b>'.$lp_partial_total.' '.$score.' '.$max_score.'</b><br />'; |
|
2525 | + if ($debug) { |
|
2526 | + echo '$lp_partial_total, $score, $max_score <b>'.$lp_partial_total.' '.$score.' '.$max_score.'</b><br />'; |
|
2527 | + } |
|
2508 | 2528 | } |
2509 | 2529 | } |
2510 | 2530 | |
@@ -2517,17 +2537,25 @@ discard block |
||
2517 | 2537 | $count_items++; |
2518 | 2538 | } |
2519 | 2539 | } |
2520 | - if ($debug) echo '$count_items: '.$count_items; |
|
2540 | + if ($debug) { |
|
2541 | + echo '$count_items: '.$count_items; |
|
2542 | + } |
|
2521 | 2543 | } |
2522 | 2544 | } //end for |
2523 | 2545 | |
2524 | 2546 | $score_of_scorm_calculate += $count_items ? (($lp_partial_total / $count_items) * 100) : 0; |
2525 | 2547 | |
2526 | - if ($debug) echo '<h3>$count_items '.$count_items.'</h3>'; |
|
2527 | - if ($debug) echo '<h3>$score_of_scorm_calculate '.$score_of_scorm_calculate.'</h3>'; |
|
2548 | + if ($debug) { |
|
2549 | + echo '<h3>$count_items '.$count_items.'</h3>'; |
|
2550 | + } |
|
2551 | + if ($debug) { |
|
2552 | + echo '<h3>$score_of_scorm_calculate '.$score_of_scorm_calculate.'</h3>'; |
|
2553 | + } |
|
2528 | 2554 | |
2529 | 2555 | $global_result += $score_of_scorm_calculate; |
2530 | - if ($debug) echo '<h3>$global_result '.$global_result.'</h3>'; |
|
2556 | + if ($debug) { |
|
2557 | + echo '<h3>$global_result '.$global_result.'</h3>'; |
|
2558 | + } |
|
2531 | 2559 | } // end while |
2532 | 2560 | } |
2533 | 2561 | |
@@ -2540,7 +2568,9 @@ discard block |
||
2540 | 2568 | c_id = $course_id AND |
2541 | 2569 | (item_type = 'quiz' OR item_type = 'sco') AND |
2542 | 2570 | lp_id = ".$lp_id; |
2543 | - if ($debug) echo $sql; |
|
2571 | + if ($debug) { |
|
2572 | + echo $sql; |
|
2573 | + } |
|
2544 | 2574 | $result_have_quiz = Database::query($sql); |
2545 | 2575 | |
2546 | 2576 | if (Database::num_rows($result_have_quiz) > 0 ) { |
@@ -2551,19 +2581,29 @@ discard block |
||
2551 | 2581 | } |
2552 | 2582 | } |
2553 | 2583 | |
2554 | - if ($debug) echo '<h3>$lp_with_quiz '.$lp_with_quiz.' </h3>'; |
|
2555 | - if ($debug) echo '<h3>Final return</h3>'; |
|
2584 | + if ($debug) { |
|
2585 | + echo '<h3>$lp_with_quiz '.$lp_with_quiz.' </h3>'; |
|
2586 | + } |
|
2587 | + if ($debug) { |
|
2588 | + echo '<h3>Final return</h3>'; |
|
2589 | + } |
|
2556 | 2590 | |
2557 | 2591 | if ($lp_with_quiz != 0) { |
2558 | 2592 | if (!$return_array) { |
2559 | 2593 | $score_of_scorm_calculate = round(($global_result/$lp_with_quiz),2); |
2560 | - if ($debug) var_dump($score_of_scorm_calculate); |
|
2594 | + if ($debug) { |
|
2595 | + var_dump($score_of_scorm_calculate); |
|
2596 | + } |
|
2561 | 2597 | if (empty($lp_ids)) { |
2562 | - if ($debug) echo '<h2>All lps fix: '.$score_of_scorm_calculate.'</h2>'; |
|
2598 | + if ($debug) { |
|
2599 | + echo '<h2>All lps fix: '.$score_of_scorm_calculate.'</h2>'; |
|
2600 | + } |
|
2563 | 2601 | } |
2564 | 2602 | return $score_of_scorm_calculate; |
2565 | 2603 | } else { |
2566 | - if ($debug) var_dump($global_result, $lp_with_quiz); |
|
2604 | + if ($debug) { |
|
2605 | + var_dump($global_result, $lp_with_quiz); |
|
2606 | + } |
|
2567 | 2607 | return array($global_result, $lp_with_quiz); |
2568 | 2608 | } |
2569 | 2609 | } else { |
@@ -3050,11 +3090,13 @@ discard block |
||
3050 | 3090 | |
3051 | 3091 | if (!empty ($id_session)) { |
3052 | 3092 | $sql .= ' WHERE session_course.session_id=' . $id_session; |
3053 | - if (api_is_multiple_url_enabled()) |
|
3054 | - $sql .= ' AND access_url_id = '.$access_url_id; |
|
3055 | - } else { |
|
3056 | - if (api_is_multiple_url_enabled()) |
|
3057 | - $sql .= ' WHERE access_url_id = '.$access_url_id; |
|
3093 | + if (api_is_multiple_url_enabled()) { |
|
3094 | + $sql .= ' AND access_url_id = '.$access_url_id; |
|
3095 | + } |
|
3096 | + } else { |
|
3097 | + if (api_is_multiple_url_enabled()) { |
|
3098 | + $sql .= ' WHERE access_url_id = '.$access_url_id; |
|
3099 | + } |
|
3058 | 3100 | } |
3059 | 3101 | |
3060 | 3102 | $result = Database::query($sql); |
@@ -3162,8 +3204,7 @@ discard block |
||
3162 | 3204 | if ($session['access_start_date'] == '0000-00-00 00:00:00' || empty($session['access_start_date']) |
3163 | 3205 | ) { |
3164 | 3206 | $session['status'] = get_lang('SessionActive'); |
3165 | - } |
|
3166 | - else { |
|
3207 | + } else { |
|
3167 | 3208 | $time_start = api_strtotime($session['access_start_date'], 'UTC'); |
3168 | 3209 | $time_end = api_strtotime($session['access_end_date'], 'UTC'); |
3169 | 3210 | if ($time_start < time() && time() < $time_end) { |
@@ -6599,8 +6640,9 @@ discard block |
||
6599 | 6640 | if (is_array($hpresults)) { |
6600 | 6641 | for($i = 0; $i < sizeof($hpresults); $i++) { |
6601 | 6642 | $title = GetQuizName($hpresults[$i][0],''); |
6602 | - if ($title == '') |
|
6603 | - $title = basename($hpresults[$i][0]); |
|
6643 | + if ($title == '') { |
|
6644 | + $title = basename($hpresults[$i][0]); |
|
6645 | + } |
|
6604 | 6646 | $display_date = api_convert_and_format_date($hpresults[$i][3], null, date_default_timezone_get()); |
6605 | 6647 | ?> |
6606 | 6648 | <tr> |
@@ -6972,8 +7014,9 @@ discard block |
||
6972 | 7014 | for($i = 0; $i < sizeof($hpresults); $i++) { |
6973 | 7015 | $title = GetQuizName($hpresults[$i][0],''); |
6974 | 7016 | |
6975 | - if ($title == '') |
|
6976 | - $title = basename($hpresults[$i][0]); |
|
7017 | + if ($title == '') { |
|
7018 | + $title = basename($hpresults[$i][0]); |
|
7019 | + } |
|
6977 | 7020 | |
6978 | 7021 | $display_date = api_convert_and_format_date($hpresults[$i][3], null, date_default_timezone_get()); |
6979 | 7022 |
@@ -93,24 +93,28 @@ discard block |
||
93 | 93 | { |
94 | 94 | $string = kses_stripslashes($string); |
95 | 95 | |
96 | - if (substr($string, 0, 1) != '<') |
|
97 | - return '>'; |
|
96 | + if (substr($string, 0, 1) != '<') { |
|
97 | + return '>'; |
|
98 | + } |
|
98 | 99 | # It matched a ">" character |
99 | 100 | |
100 | - if (!preg_match('%^<\s*(/\s*)?([a-zA-Z0-9]+)([^>]*)>?$%', $string, $matches)) |
|
101 | - return ''; |
|
101 | + if (!preg_match('%^<\s*(/\s*)?([a-zA-Z0-9]+)([^>]*)>?$%', $string, $matches)) { |
|
102 | + return ''; |
|
103 | + } |
|
102 | 104 | # It's seriously malformed |
103 | 105 | |
104 | 106 | $slash = trim($matches[1]); |
105 | 107 | $elem = $matches[2]; |
106 | 108 | $attrlist = $matches[3]; |
107 | 109 | |
108 | - if (!@isset($allowed_html[strtolower($elem)])) |
|
109 | - return ''; |
|
110 | + if (!@isset($allowed_html[strtolower($elem)])) { |
|
111 | + return ''; |
|
112 | + } |
|
110 | 113 | # They are using a not allowed HTML element |
111 | 114 | |
112 | - if ($slash != '') |
|
113 | - return "<$slash$elem>"; |
|
115 | + if ($slash != '') { |
|
116 | + return "<$slash$elem>"; |
|
117 | + } |
|
114 | 118 | # No attributes are allowed for closing elements |
115 | 119 | |
116 | 120 | return kses_attr("$slash$elem", $attrlist, $allowed_html, |
@@ -131,13 +135,15 @@ discard block |
||
131 | 135 | # Is there a closing XHTML slash at the end of the attributes? |
132 | 136 | |
133 | 137 | $xhtml_slash = ''; |
134 | - if (preg_match('%\s/\s*$%', $attr)) |
|
135 | - $xhtml_slash = ' /'; |
|
138 | + if (preg_match('%\s/\s*$%', $attr)) { |
|
139 | + $xhtml_slash = ' /'; |
|
140 | + } |
|
136 | 141 | |
137 | 142 | # Are any attributes allowed at all for this element? |
138 | 143 | |
139 | - if (@count($allowed_html[strtolower($element)]) == 0) |
|
140 | - return "<$element$xhtml_slash>"; |
|
144 | + if (@count($allowed_html[strtolower($element)]) == 0) { |
|
145 | + return "<$element$xhtml_slash>"; |
|
146 | + } |
|
141 | 147 | |
142 | 148 | # Split it |
143 | 149 | |
@@ -151,27 +157,34 @@ discard block |
||
151 | 157 | foreach ($attrarr as $arreach) |
152 | 158 | { |
153 | 159 | if (!@isset($allowed_html[strtolower($element)] |
154 | - [strtolower($arreach['name'])])) |
|
155 | - continue; # the attribute is not allowed |
|
160 | + [strtolower($arreach['name'])])) { |
|
161 | + continue; |
|
162 | + } |
|
163 | + # the attribute is not allowed |
|
156 | 164 | |
157 | 165 | $current = $allowed_html[strtolower($element)] |
158 | 166 | [strtolower($arreach['name'])]; |
159 | 167 | |
160 | - if (!is_array($current)) |
|
161 | - $attr2 .= ' '.$arreach['whole']; |
|
168 | + if (!is_array($current)) { |
|
169 | + $attr2 .= ' '.$arreach['whole']; |
|
170 | + } |
|
162 | 171 | # there are no checks |
163 | 172 | |
164 | 173 | else |
165 | 174 | { |
166 | 175 | # there are some checks |
167 | 176 | $ok = true; |
168 | - foreach ($current as $currkey => $currval) |
|
169 | - if (!kses_check_attr_val($arreach['value'], $arreach['vless'], |
|
177 | + foreach ($current as $currkey => $currval) { |
|
178 | + if (!kses_check_attr_val($arreach['value'], $arreach['vless'], |
|
170 | 179 | $currkey, $currval)) |
171 | - { $ok = false; break; } |
|
172 | - |
|
173 | - if ($ok) |
|
174 | - $attr2 .= ' '.$arreach['whole']; # it passed them |
|
180 | + { $ok = false; |
|
181 | + } |
|
182 | + break; } |
|
183 | + |
|
184 | + if ($ok) { |
|
185 | + $attr2 .= ' '.$arreach['whole']; |
|
186 | + } |
|
187 | + # it passed them |
|
175 | 188 | } # if !is_array($current) |
176 | 189 | } # foreach |
177 | 190 | |
@@ -218,16 +231,22 @@ discard block |
||
218 | 231 | |
219 | 232 | case 1: # equals sign or valueless ("selected") |
220 | 233 | |
221 | - if (preg_match('/^\s*=\s*/', $attr)) # equals sign |
|
234 | + if (preg_match('/^\s*=\s*/', $attr)) { |
|
235 | + # equals sign |
|
222 | 236 | { |
223 | - $working = 1; $mode = 2; |
|
237 | + $working = 1; |
|
238 | + } |
|
239 | + $mode = 2; |
|
224 | 240 | $attr = preg_replace('/^\s*=\s*/', '', $attr); |
225 | 241 | break; |
226 | 242 | } |
227 | 243 | |
228 | - if (preg_match('/^\s+/', $attr)) # valueless |
|
244 | + if (preg_match('/^\s+/', $attr)) { |
|
245 | + # valueless |
|
229 | 246 | { |
230 | - $working = 1; $mode = 0; |
|
247 | + $working = 1; |
|
248 | + } |
|
249 | + $mode = 0; |
|
231 | 250 | $attrarr[] = array |
232 | 251 | ('name' => $attrname, |
233 | 252 | 'value' => '', |
@@ -240,10 +259,11 @@ discard block |
||
240 | 259 | |
241 | 260 | case 2: # attribute value, a URL after href= for instance |
242 | 261 | |
243 | - if (preg_match('/^"([^"]*)"(\s+|$)/', $attr, $match)) |
|
244 | - # "value" |
|
262 | + if (preg_match('/^"([^"]*)"(\s+|$)/', $attr, $match)) { |
|
263 | + # "value" |
|
245 | 264 | { |
246 | 265 | $thisval = kses_bad_protocol($match[1], $allowed_protocols); |
266 | + } |
|
247 | 267 | |
248 | 268 | $attrarr[] = array |
249 | 269 | ('name' => $attrname, |
@@ -255,10 +275,11 @@ discard block |
||
255 | 275 | break; |
256 | 276 | } |
257 | 277 | |
258 | - if (preg_match("/^'([^']*)'(\s+|$)/", $attr, $match)) |
|
259 | - # 'value' |
|
278 | + if (preg_match("/^'([^']*)'(\s+|$)/", $attr, $match)) { |
|
279 | + # 'value' |
|
260 | 280 | { |
261 | 281 | $thisval = kses_bad_protocol($match[1], $allowed_protocols); |
282 | + } |
|
262 | 283 | |
263 | 284 | $attrarr[] = array |
264 | 285 | ('name' => $attrname, |
@@ -270,10 +291,11 @@ discard block |
||
270 | 291 | break; |
271 | 292 | } |
272 | 293 | |
273 | - if (preg_match("%^([^\s\"']+)(\s+|$)%", $attr, $match)) |
|
274 | - # value |
|
294 | + if (preg_match("%^([^\s\"']+)(\s+|$)%", $attr, $match)) { |
|
295 | + # value |
|
275 | 296 | { |
276 | 297 | $thisval = kses_bad_protocol($match[1], $allowed_protocols); |
298 | + } |
|
277 | 299 | |
278 | 300 | $attrarr[] = array |
279 | 301 | ('name' => $attrname, |
@@ -288,21 +310,24 @@ discard block |
||
288 | 310 | break; |
289 | 311 | } # switch |
290 | 312 | |
291 | - if ($working == 0) # not well formed, remove and try again |
|
313 | + if ($working == 0) { |
|
314 | + # not well formed, remove and try again |
|
292 | 315 | { |
293 | 316 | $attr = kses_html_error($attr); |
317 | + } |
|
294 | 318 | $mode = 0; |
295 | 319 | } |
296 | 320 | } # while |
297 | 321 | |
298 | - if ($mode == 1) |
|
299 | - # special case, for when the attribute list ends with a valueless |
|
322 | + if ($mode == 1) { |
|
323 | + # special case, for when the attribute list ends with a valueless |
|
300 | 324 | # attribute like "selected" |
301 | 325 | $attrarr[] = array |
302 | 326 | ('name' => $attrname, |
303 | 327 | 'value' => '', |
304 | 328 | 'whole' => $attrname, |
305 | 329 | 'vless' => 'y'); |
330 | + } |
|
306 | 331 | |
307 | 332 | return $attrarr; |
308 | 333 | } # function kses_hair |
@@ -324,16 +349,18 @@ discard block |
||
324 | 349 | # greater than the given value. This can be used to avoid Buffer Overflows |
325 | 350 | # in WWW clients and various Internet servers. |
326 | 351 | |
327 | - if (strlen($value) > $checkvalue) |
|
328 | - $ok = false; |
|
352 | + if (strlen($value) > $checkvalue) { |
|
353 | + $ok = false; |
|
354 | + } |
|
329 | 355 | break; |
330 | 356 | |
331 | 357 | case 'minlen': |
332 | 358 | # The minlen check makes sure that the attribute value has a length not |
333 | 359 | # smaller than the given value. |
334 | 360 | |
335 | - if (strlen($value) < $checkvalue) |
|
336 | - $ok = false; |
|
361 | + if (strlen($value) < $checkvalue) { |
|
362 | + $ok = false; |
|
363 | + } |
|
337 | 364 | break; |
338 | 365 | |
339 | 366 | case 'maxval': |
@@ -343,20 +370,24 @@ discard block |
||
343 | 370 | # value is not greater than the given value. |
344 | 371 | # This check can be used to avoid Denial of Service attacks. |
345 | 372 | |
346 | - if (!preg_match('/^\s{0,6}[0-9]{1,6}\s{0,6}$/', $value)) |
|
347 | - $ok = false; |
|
348 | - if ($value > $checkvalue) |
|
349 | - $ok = false; |
|
373 | + if (!preg_match('/^\s{0,6}[0-9]{1,6}\s{0,6}$/', $value)) { |
|
374 | + $ok = false; |
|
375 | + } |
|
376 | + if ($value > $checkvalue) { |
|
377 | + $ok = false; |
|
378 | + } |
|
350 | 379 | break; |
351 | 380 | |
352 | 381 | case 'minval': |
353 | 382 | # The minval check checks that the attribute value is a positive integer, |
354 | 383 | # and that it is not smaller than the given value. |
355 | 384 | |
356 | - if (!preg_match('/^\s{0,6}[0-9]{1,6}\s{0,6}$/', $value)) |
|
357 | - $ok = false; |
|
358 | - if ($value < $checkvalue) |
|
359 | - $ok = false; |
|
385 | + if (!preg_match('/^\s{0,6}[0-9]{1,6}\s{0,6}$/', $value)) { |
|
386 | + $ok = false; |
|
387 | + } |
|
388 | + if ($value < $checkvalue) { |
|
389 | + $ok = false; |
|
390 | + } |
|
360 | 391 | break; |
361 | 392 | |
362 | 393 | case 'valueless': |
@@ -365,8 +396,9 @@ discard block |
||
365 | 396 | # is a "y" or a "Y", the attribute must not have a value. |
366 | 397 | # If the given value is an "n" or an "N", the attribute must have one. |
367 | 398 | |
368 | - if (strtolower($checkvalue) != $vless) |
|
369 | - $ok = false; |
|
399 | + if (strtolower($checkvalue) != $vless) { |
|
400 | + $ok = false; |
|
401 | + } |
|
370 | 402 | break; |
371 | 403 | } # switch |
372 | 404 | |
@@ -492,18 +524,20 @@ discard block |
||
492 | 524 | $string2 = strtolower($string2); |
493 | 525 | |
494 | 526 | $allowed = false; |
495 | - foreach ($allowed_protocols as $one_protocol) |
|
496 | - if (strtolower($one_protocol) == $string2) |
|
527 | + foreach ($allowed_protocols as $one_protocol) { |
|
528 | + if (strtolower($one_protocol) == $string2) |
|
497 | 529 | { |
498 | 530 | $allowed = true; |
531 | + } |
|
499 | 532 | break; |
500 | 533 | } |
501 | 534 | |
502 | - if ($allowed) |
|
503 | - return "$string2:"; |
|
504 | - else |
|
505 | - return ''; |
|
506 | -} # function kses_bad_protocol_once2 |
|
535 | + if ($allowed) { |
|
536 | + return "$string2:"; |
|
537 | + } else { |
|
538 | + return ''; |
|
539 | + } |
|
540 | + } # function kses_bad_protocol_once2 |
|
507 | 541 | |
508 | 542 | |
509 | 543 | function kses_normalize_entities($string) |
@@ -183,16 +183,19 @@ discard block |
||
183 | 183 | { |
184 | 184 | $string = kses_stripslashes($string); |
185 | 185 | |
186 | - if (substr($string, 0, 1) != '<') |
|
187 | - return '>'; |
|
186 | + if (substr($string, 0, 1) != '<') { |
|
187 | + return '>'; |
|
188 | + } |
|
188 | 189 | // It matched a ">" character |
189 | 190 | |
190 | 191 | if (preg_match('%^<!--(.*?)(-->)?$%', $string, $matches)) { |
191 | 192 | $string = str_replace(array('<!--', '-->'), '', $matches[1]); |
192 | - while ( $string != $newstring = kses($string, $allowed_html, $allowed_protocols) ) |
|
193 | - $string = $newstring; |
|
194 | - if ( $string == '' ) |
|
195 | - return ''; |
|
193 | + while ( $string != $newstring = kses($string, $allowed_html, $allowed_protocols) ) { |
|
194 | + $string = $newstring; |
|
195 | + } |
|
196 | + if ( $string == '' ) { |
|
197 | + return ''; |
|
198 | + } |
|
196 | 199 | // prevent multiple dashes in comments |
197 | 200 | $string = preg_replace('/--+/', '-', $string); |
198 | 201 | // prevent three dashes closing a comment |
@@ -201,20 +204,23 @@ discard block |
||
201 | 204 | } |
202 | 205 | // Allow HTML comments |
203 | 206 | |
204 | - if (!preg_match('%^<\s*(/\s*)?([a-zA-Z0-9]+)([^>]*)>?$%', $string, $matches)) |
|
205 | - return ''; |
|
207 | + if (!preg_match('%^<\s*(/\s*)?([a-zA-Z0-9]+)([^>]*)>?$%', $string, $matches)) { |
|
208 | + return ''; |
|
209 | + } |
|
206 | 210 | // It's seriously malformed |
207 | 211 | |
208 | 212 | $slash = trim($matches[1]); |
209 | 213 | $elem = $matches[2]; |
210 | 214 | $attrlist = $matches[3]; |
211 | 215 | |
212 | - if (!@isset($allowed_html[strtolower($elem)])) |
|
213 | - return ''; |
|
216 | + if (!@isset($allowed_html[strtolower($elem)])) { |
|
217 | + return ''; |
|
218 | + } |
|
214 | 219 | // They are using a not allowed HTML element |
215 | 220 | |
216 | - if ($slash != '') |
|
217 | - return "<$slash$elem>"; |
|
221 | + if ($slash != '') { |
|
222 | + return "<$slash$elem>"; |
|
223 | + } |
|
218 | 224 | // No attributes are allowed for closing elements |
219 | 225 | |
220 | 226 | return kses_attr("$slash$elem", $attrlist, $allowed_html, |
@@ -241,13 +247,15 @@ discard block |
||
241 | 247 | // Is there a closing XHTML slash at the end of the attributes? |
242 | 248 | |
243 | 249 | $xhtml_slash = ''; |
244 | - if (preg_match('%\s*/\s*$%', $attr)) |
|
245 | - $xhtml_slash = ' /'; |
|
250 | + if (preg_match('%\s*/\s*$%', $attr)) { |
|
251 | + $xhtml_slash = ' /'; |
|
252 | + } |
|
246 | 253 | |
247 | 254 | // Are any attributes allowed at all for this element? |
248 | 255 | |
249 | - if (@count($allowed_html[strtolower($element)]) == 0) |
|
250 | - return "<$element$xhtml_slash>"; |
|
256 | + if (@count($allowed_html[strtolower($element)]) == 0) { |
|
257 | + return "<$element$xhtml_slash>"; |
|
258 | + } |
|
251 | 259 | |
252 | 260 | // Split it |
253 | 261 | |
@@ -261,42 +269,52 @@ discard block |
||
261 | 269 | foreach ($attrarr as $arreach) |
262 | 270 | { |
263 | 271 | if (!@isset($allowed_html[strtolower($element)] |
264 | - [strtolower($arreach['name'])])) |
|
265 | - continue; // the attribute is not allowed |
|
272 | + [strtolower($arreach['name'])])) { |
|
273 | + continue; |
|
274 | + } |
|
275 | + // the attribute is not allowed |
|
266 | 276 | |
267 | 277 | $current = $allowed_html[strtolower($element)] |
268 | 278 | [strtolower($arreach['name'])]; |
269 | - if ($current == '') |
|
270 | - continue; // the attribute is not allowed |
|
279 | + if ($current == '') { |
|
280 | + continue; |
|
281 | + } |
|
282 | + // the attribute is not allowed |
|
271 | 283 | |
272 | - if (!is_array($current)) |
|
273 | - $attr2 .= ' '.$arreach['whole']; |
|
284 | + if (!is_array($current)) { |
|
285 | + $attr2 .= ' '.$arreach['whole']; |
|
286 | + } |
|
274 | 287 | // there are no checks |
275 | 288 | |
276 | 289 | else |
277 | 290 | { |
278 | 291 | // there are some checks |
279 | 292 | $ok = true; |
280 | - foreach ($current as $currkey => $currval) |
|
281 | - if (!kses_check_attr_val($arreach['value'], $arreach['vless'], |
|
293 | + foreach ($current as $currkey => $currval) { |
|
294 | + if (!kses_check_attr_val($arreach['value'], $arreach['vless'], |
|
282 | 295 | $currkey, $currval)) |
283 | - { $ok = false; break; } |
|
296 | + { $ok = false; |
|
297 | + } |
|
298 | + break; } |
|
284 | 299 | |
285 | 300 | if ( strtolower($arreach['name']) == 'style' ) { |
286 | 301 | $orig_value = $arreach['value']; |
287 | 302 | |
288 | 303 | $value = kses_safecss_filter_attr($orig_value); |
289 | 304 | |
290 | - if ( empty($value) ) |
|
291 | - continue; |
|
305 | + if ( empty($value) ) { |
|
306 | + continue; |
|
307 | + } |
|
292 | 308 | |
293 | 309 | $arreach['value'] = $value; |
294 | 310 | |
295 | 311 | $arreach['whole'] = str_replace($orig_value, $value, $arreach['whole']); |
296 | 312 | } |
297 | 313 | |
298 | - if ($ok) |
|
299 | - $attr2 .= ' '.$arreach['whole']; // it passed them |
|
314 | + if ($ok) { |
|
315 | + $attr2 .= ' '.$arreach['whole']; |
|
316 | + } |
|
317 | + // it passed them |
|
300 | 318 | } // if !is_array($current) |
301 | 319 | } // foreach |
302 | 320 | |
@@ -351,16 +369,22 @@ discard block |
||
351 | 369 | |
352 | 370 | case 1: // equals sign or valueless ("selected") |
353 | 371 | |
354 | - if (preg_match('/^\s*=\s*/', $attr)) // equals sign |
|
372 | + if (preg_match('/^\s*=\s*/', $attr)) { |
|
373 | + // equals sign |
|
355 | 374 | { |
356 | - $working = 1; $mode = 2; |
|
375 | + $working = 1; |
|
376 | + } |
|
377 | + $mode = 2; |
|
357 | 378 | $attr = preg_replace('/^\s*=\s*/', '', $attr); |
358 | 379 | break; |
359 | 380 | } |
360 | 381 | |
361 | - if (preg_match('/^\s+/', $attr)) // valueless |
|
382 | + if (preg_match('/^\s+/', $attr)) { |
|
383 | + // valueless |
|
362 | 384 | { |
363 | - $working = 1; $mode = 0; |
|
385 | + $working = 1; |
|
386 | + } |
|
387 | + $mode = 0; |
|
364 | 388 | if(FALSE === array_key_exists($attrname, $attrarr)) { |
365 | 389 | $attrarr[$attrname] = array ('name' => $attrname, 'value' => '', 'whole' => $attrname, 'vless' => 'y'); |
366 | 390 | } |
@@ -371,16 +395,18 @@ discard block |
||
371 | 395 | |
372 | 396 | case 2: // attribute value, a URL after href= for instance |
373 | 397 | |
374 | - if (preg_match('%^"([^"]*)"(\s+|/?$)%', $attr, $match)) |
|
375 | - // "value" |
|
398 | + if (preg_match('%^"([^"]*)"(\s+|/?$)%', $attr, $match)) { |
|
399 | + // "value" |
|
376 | 400 | { |
377 | 401 | // MDL-2684 - kses stripping CSS styles that it thinks look like protocols |
378 | 402 | if ($attrname == 'style') { |
379 | 403 | $thisval = $match[1]; |
404 | + } |
|
380 | 405 | } else { |
381 | 406 | $thisval = $match[1]; |
382 | - if ( in_array(strtolower($attrname), $uris) ) |
|
383 | - $thisval = kses_bad_protocol($thisval, $allowed_protocols); |
|
407 | + if ( in_array(strtolower($attrname), $uris) ) { |
|
408 | + $thisval = kses_bad_protocol($thisval, $allowed_protocols); |
|
409 | + } |
|
384 | 410 | } |
385 | 411 | |
386 | 412 | if(FALSE === array_key_exists($attrname, $attrarr)) { |
@@ -391,12 +417,14 @@ discard block |
||
391 | 417 | break; |
392 | 418 | } |
393 | 419 | |
394 | - if (preg_match("%^'([^']*)'(\s+|/?$)%", $attr, $match)) |
|
395 | - // 'value' |
|
420 | + if (preg_match("%^'([^']*)'(\s+|/?$)%", $attr, $match)) { |
|
421 | + // 'value' |
|
396 | 422 | { |
397 | 423 | $thisval = $match[1]; |
398 | - if ( in_array(strtolower($attrname), $uris) ) |
|
399 | - $thisval = kses_bad_protocol($thisval, $allowed_protocols); |
|
424 | + } |
|
425 | + if ( in_array(strtolower($attrname), $uris) ) { |
|
426 | + $thisval = kses_bad_protocol($thisval, $allowed_protocols); |
|
427 | + } |
|
400 | 428 | |
401 | 429 | if(FALSE === array_key_exists($attrname, $attrarr)) { |
402 | 430 | $attrarr[$attrname] = array ('name' => $attrname, 'value' => $thisval, 'whole' => "$attrname='$thisval'", 'vless' => 'n'); |
@@ -406,12 +434,14 @@ discard block |
||
406 | 434 | break; |
407 | 435 | } |
408 | 436 | |
409 | - if (preg_match("%^([^\s\"']+)(\s+|/?$)%", $attr, $match)) |
|
410 | - // value |
|
437 | + if (preg_match("%^([^\s\"']+)(\s+|/?$)%", $attr, $match)) { |
|
438 | + // value |
|
411 | 439 | { |
412 | 440 | $thisval = $match[1]; |
413 | - if ( in_array(strtolower($attrname), $uris) ) |
|
414 | - $thisval = kses_bad_protocol($thisval, $allowed_protocols); |
|
441 | + } |
|
442 | + if ( in_array(strtolower($attrname), $uris) ) { |
|
443 | + $thisval = kses_bad_protocol($thisval, $allowed_protocols); |
|
444 | + } |
|
415 | 445 | |
416 | 446 | if(FALSE === array_key_exists($attrname, $attrarr)) { |
417 | 447 | $attrarr[$attrname] = array ('name' => $attrname, 'value' => $thisval, 'whole' => "$attrname=\"$thisval\"", 'vless' => 'n'); |
@@ -424,17 +454,20 @@ discard block |
||
424 | 454 | break; |
425 | 455 | } // switch |
426 | 456 | |
427 | - if ($working == 0) // not well formed, remove and try again |
|
457 | + if ($working == 0) { |
|
458 | + // not well formed, remove and try again |
|
428 | 459 | { |
429 | 460 | $attr = kses_html_error($attr); |
461 | + } |
|
430 | 462 | $mode = 0; |
431 | 463 | } |
432 | 464 | } // while |
433 | 465 | |
434 | - if ($mode == 1 && FALSE === array_key_exists($attrname, $attrarr)) |
|
435 | - // special case, for when the attribute list ends with a valueless |
|
466 | + if ($mode == 1 && FALSE === array_key_exists($attrname, $attrarr)) { |
|
467 | + // special case, for when the attribute list ends with a valueless |
|
436 | 468 | // attribute like "selected" |
437 | 469 | $attrarr[$attrname] = array ('name' => $attrname, 'value' => '', 'whole' => $attrname, 'vless' => 'y'); |
470 | + } |
|
438 | 471 | |
439 | 472 | return $attrarr; |
440 | 473 | } |
@@ -462,16 +495,18 @@ discard block |
||
462 | 495 | // greater than the given value. This can be used to avoid Buffer Overflows |
463 | 496 | // in WWW clients and various Internet servers. |
464 | 497 | |
465 | - if (strlen($value) > $checkvalue) |
|
466 | - $ok = false; |
|
498 | + if (strlen($value) > $checkvalue) { |
|
499 | + $ok = false; |
|
500 | + } |
|
467 | 501 | break; |
468 | 502 | |
469 | 503 | case 'minlen': |
470 | 504 | // The minlen check makes sure that the attribute value has a length not |
471 | 505 | // smaller than the given value. |
472 | 506 | |
473 | - if (strlen($value) < $checkvalue) |
|
474 | - $ok = false; |
|
507 | + if (strlen($value) < $checkvalue) { |
|
508 | + $ok = false; |
|
509 | + } |
|
475 | 510 | break; |
476 | 511 | |
477 | 512 | case 'maxval': |
@@ -481,20 +516,24 @@ discard block |
||
481 | 516 | // value is not greater than the given value. |
482 | 517 | // This check can be used to avoid Denial of Service attacks. |
483 | 518 | |
484 | - if (!preg_match('/^\s{0,6}[0-9]{1,6}\s{0,6}$/', $value)) |
|
485 | - $ok = false; |
|
486 | - if ($value > $checkvalue) |
|
487 | - $ok = false; |
|
519 | + if (!preg_match('/^\s{0,6}[0-9]{1,6}\s{0,6}$/', $value)) { |
|
520 | + $ok = false; |
|
521 | + } |
|
522 | + if ($value > $checkvalue) { |
|
523 | + $ok = false; |
|
524 | + } |
|
488 | 525 | break; |
489 | 526 | |
490 | 527 | case 'minval': |
491 | 528 | // The minval check checks that the attribute value is a positive integer, |
492 | 529 | // and that it is not smaller than the given value. |
493 | 530 | |
494 | - if (!preg_match('/^\s{0,6}[0-9]{1,6}\s{0,6}$/', $value)) |
|
495 | - $ok = false; |
|
496 | - if ($value < $checkvalue) |
|
497 | - $ok = false; |
|
531 | + if (!preg_match('/^\s{0,6}[0-9]{1,6}\s{0,6}$/', $value)) { |
|
532 | + $ok = false; |
|
533 | + } |
|
534 | + if ($value < $checkvalue) { |
|
535 | + $ok = false; |
|
536 | + } |
|
498 | 537 | break; |
499 | 538 | |
500 | 539 | case 'valueless': |
@@ -503,8 +542,9 @@ discard block |
||
503 | 542 | // is a "y" or a "Y", the attribute must not have a value. |
504 | 543 | // If the given value is an "n" or an "N", the attribute must have one. |
505 | 544 | |
506 | - if (strtolower($checkvalue) != $vless) |
|
507 | - $ok = false; |
|
545 | + if (strtolower($checkvalue) != $vless) { |
|
546 | + $ok = false; |
|
547 | + } |
|
508 | 548 | break; |
509 | 549 | } // switch |
510 | 550 | |
@@ -660,18 +700,20 @@ discard block |
||
660 | 700 | $string2 = strtolower($string2); |
661 | 701 | |
662 | 702 | $allowed = false; |
663 | - foreach ( (array) $allowed_protocols as $one_protocol) |
|
664 | - if (strtolower($one_protocol) == $string2) |
|
703 | + foreach ( (array) $allowed_protocols as $one_protocol) { |
|
704 | + if (strtolower($one_protocol) == $string2) |
|
665 | 705 | { |
666 | 706 | $allowed = true; |
707 | + } |
|
667 | 708 | break; |
668 | 709 | } |
669 | 710 | |
670 | - if ($allowed) |
|
671 | - return "$string2:"; |
|
672 | - else |
|
673 | - return ''; |
|
674 | -} |
|
711 | + if ($allowed) { |
|
712 | + return "$string2:"; |
|
713 | + } else { |
|
714 | + return ''; |
|
715 | + } |
|
716 | + } |
|
675 | 717 | |
676 | 718 | /** |
677 | 719 | * Converts and fixes HTML entities. |
@@ -711,8 +753,9 @@ discard block |
||
711 | 753 | function kses_named_entities($matches) { |
712 | 754 | global $kses_allowedentitynames; |
713 | 755 | |
714 | - if ( empty($matches[1]) ) |
|
715 | - return ''; |
|
756 | + if ( empty($matches[1]) ) { |
|
757 | + return ''; |
|
758 | + } |
|
716 | 759 | |
717 | 760 | $i = $matches[1]; |
718 | 761 | return ( ( ! in_array($i, $kses_allowedentitynames) ) ? "&$i;" : "&$i;" ); |
@@ -730,8 +773,9 @@ discard block |
||
730 | 773 | * @return string Correctly encoded entity |
731 | 774 | */ |
732 | 775 | function kses_normalize_entities2($matches) { |
733 | - if ( empty($matches[1]) ) |
|
734 | - return ''; |
|
776 | + if ( empty($matches[1]) ) { |
|
777 | + return ''; |
|
778 | + } |
|
735 | 779 | |
736 | 780 | $i = $matches[1]; |
737 | 781 | if (kses_valid_unicode($i)) { |
@@ -756,8 +800,9 @@ discard block |
||
756 | 800 | * @return string Correctly encoded entity |
757 | 801 | */ |
758 | 802 | function kses_normalize_entities3($matches) { |
759 | - if ( empty($matches[1]) ) |
|
760 | - return ''; |
|
803 | + if ( empty($matches[1]) ) { |
|
804 | + return ''; |
|
805 | + } |
|
761 | 806 | |
762 | 807 | $hexchars = $matches[1]; |
763 | 808 | return ( ( ! kses_valid_unicode(hexdec($hexchars)) ) ? "&#x$hexchars;" : '&#x'.ltrim($hexchars,'0').';' ); |
@@ -823,8 +868,10 @@ discard block |
||
823 | 868 | $css = kses_no_null($css); |
824 | 869 | $css = str_replace(array("\n","\r","\t"), '', $css); |
825 | 870 | |
826 | - if ( preg_match( '%[\\(&=}]|/\*%', $css ) ) // remove any inline css containing \ ( & } = or comments |
|
871 | + if ( preg_match( '%[\\(&=}]|/\*%', $css ) ) { |
|
872 | + // remove any inline css containing \ ( & } = or comments |
|
827 | 873 | return ''; |
874 | + } |
|
828 | 875 | |
829 | 876 | $css_array = explode( ';', trim( $css ) ); |
830 | 877 | $allowed_attr = array( 'text-align', 'margin', 'color', 'float', |
@@ -839,25 +886,29 @@ discard block |
||
839 | 886 | 'padding-left', 'padding-right', 'padding-top', 'text-decoration', 'text-indent', 'vertical-align', |
840 | 887 | 'width' ); |
841 | 888 | |
842 | - if ( empty($allowed_attr) ) |
|
843 | - return $css; |
|
889 | + if ( empty($allowed_attr) ) { |
|
890 | + return $css; |
|
891 | + } |
|
844 | 892 | |
845 | 893 | $css = ''; |
846 | 894 | foreach ( $css_array as $css_item ) { |
847 | - if ( $css_item == '' ) |
|
848 | - continue; |
|
895 | + if ( $css_item == '' ) { |
|
896 | + continue; |
|
897 | + } |
|
849 | 898 | $css_item = trim( $css_item ); |
850 | 899 | $found = false; |
851 | 900 | if ( strpos( $css_item, ':' ) === false ) { |
852 | 901 | $found = true; |
853 | 902 | } else { |
854 | 903 | $parts = split( ':', $css_item ); |
855 | - if ( in_array( strtolower( trim( $parts[0] ) ), $allowed_attr ) ) |
|
856 | - $found = true; |
|
904 | + if ( in_array( strtolower( trim( $parts[0] ) ), $allowed_attr ) ) { |
|
905 | + $found = true; |
|
906 | + } |
|
857 | 907 | } |
858 | 908 | if ( $found ) { |
859 | - if( $css != '' ) |
|
860 | - $css .= ';'; |
|
909 | + if( $css != '' ) { |
|
910 | + $css .= ';'; |
|
911 | + } |
|
861 | 912 | $css .= $css_item; |
862 | 913 | } |
863 | 914 | } |