c32e102311231f20df14b760a99354101ca8ae18
[mtweb] / mw / app / helpers / mw_helper_out.php
1 <?php
2
3   class mw_helper_out extends mw_helper{
4
5     function pagination_menu($current, $total, $max, $base_url, $start_param, $legende = null){
6       $navig = "";
7       if($max && $total > $max){
8         if(isset($legende)){
9           $navig .=
10            $legende." ".($current + 1)." &agrave; "
11           .(($current + $max) > $total ? $total : $current + $max)
12           ." sur ".$total." - aller &agrave; la ";
13         }
14         $get_params = array();
15         if(($q = strpos($base_url, "?")) !== false){
16           $v_query = explode("&", substr($base_url, $q + 1));
17           $base_url = substr($base_url, 0, $q);
18           foreach($v_query as $query){
19             if($query){
20               $v = explode("=", $query);
21               $get_params[$v[0]] = $v[1];
22             }
23           }
24         }
25         if(isset($get_params[$start_param])) unset($get_params[$start_param]);
26         $base_url .= "?";
27         foreach($get_params as $key => $value) $base_url .= $key."=".$value."&";
28         $nb_pages = ceil($total / $max);
29         $navig .=
30          "page : "
31         ."<select onchange=\"document.location=this.options[this.selectedIndex].value;\">\n";
32         $np = 1;
33         $ni = 0;
34         while($ni < $total){
35           $navig .=
36            "  <option value=\"".$base_url.$start_param."=".$ni."\"".($current >= $ni && $current <= $ni ? " SELECTED" : "").">"
37           .$np
38           ."</option>\n";
39           $np++;
40           $ni += $max;
41         }
42         $navig .=
43          "</select>\n";
44         if($current >= $max){
45           $navig .=
46             "<a href=\"".$base_url.$start_param."=".($current - $max)."\">&laquo;</a>\n";
47         }
48         if($current < $total - $max){
49           $navig .=
50             "<a href=\"".$base_url.$start_param."=".($current + $max)."\">&raquo;</a>\n";
51         }
52       }
53       return $navig;
54     }
55   
56     function esc_attr($content){
57       return htmlspecialchars($content, ENT_COMPAT, "UTF-8");
58     }
59   
60     function get_menu_ul($menu, $indent = ""){
61       $html = "";
62       if($menu["subs"]){
63         $html .= $indent."<div class=\"menu\"><ul>\n";
64         foreach($menu["subs"] as $sub){
65           $html .= $indent."  <li>\n";
66           $html .= $indent."    <a href=\"".$sub["url"]."\">".$sub["intitule"]."</a>\n";
67           $html .= $this->get_menu_ul($sub, $indent."    ");
68           $html .= $indent."  </li>\n";
69         }
70         $html .= $indent."</ul></div>\n";
71       }
72       return $html;
73     }
74
75   }
76
77 ?>