source: pmb4.1/trunk/fuentes/pmb/admin/opac/opac_view/filters/nav_collections/nav_collections.class.php @ 478

Last change on this file since 478 was 478, checked in by mabarracus, 4 years ago

copy trusty code 4.1

  • Property svn:executable set to *
File size: 3.7 KB
Line 
1<?php
2// +-------------------------------------------------+
3// © 2002-2004 PMB Services / www.sigb.net pmb@sigb.net et contributeurs (voir www.sigb.net)
4// +-------------------------------------------------+
5// $Id: nav_collections.class.php,v 1.2 2013-11-06 14:11:05 dgoron Exp $
6
7if (stristr($_SERVER['REQUEST_URI'], ".class.php")) die("no access");
8
9global $class_path,$base_path,$include_path;
10
11class nav_collections {   
12    function nav_collections($id_vue,$local_msg) {
13        $this->id_vue=$id_vue;
14        $this->path="nav_collections";
15        $this->msg=$local_msg;
16        $this->fetch_data();                   
17    }
18   
19    function fetch_data() {
20                global $dbh;
21                       
22                $this->selected_list=array();
23                $req="SELECT * FROM opac_filters where opac_filter_view_num=".$this->id_vue." and  opac_filter_path='".$this->path."' ";
24                $myQuery = mysql_query($req, $dbh);
25                if(mysql_num_rows($myQuery)){
26                        $r=mysql_fetch_object($myQuery);
27                        $param=unserialize($r->opac_filter_param);
28                        $this->selected_list=$param["selected"];
29                }                               
30                $myQuery = mysql_query("SELECT * FROM docs_location order by location_libelle ", $dbh);
31                $this->liste_item=array();
32                $link="";
33                $i=0;
34                if(mysql_num_rows($myQuery)){
35                        while(($r=mysql_fetch_object($myQuery))) {
36                                $this->liste_item[$i]=new stdClass();
37                                $this->liste_item[$i]->id=$r->idlocation;
38                                $this->liste_item[$i]->name=$r->location_libelle ;
39                                if(in_array($r->idlocation,$this->selected_list))       $this->liste_item[$i]->selected=1;
40                                else $this->liste_item[$i]->selected=0;                         
41                                $i++;                   
42                        }       
43                }
44                return true;
45        }
46       
47        function get_all_elements(){   
48                return $this->ids;
49        }
50       
51        function get_elements(){               
52                return $this->all_ids;
53        }               
54       
55        function get_form(){
56                global $msg;
57                global $tpl_liste_item_tableau,$tpl_liste_item_tableau_ligne;
58               
59                global $class_path,$base_path,$include_path;
60
61                require_once($base_path."/admin/opac/opac_view/filters/nav_collections/nav_collections.tpl.php");
62               
63                // liste des lien de recherche directe
64                $liste="";
65                // pour toute les recherche de l'utilisateur
66                for($i=0;$i<count($this->liste_item);$i++) {
67                        if ($i % 2) $pair_impair = "even"; else $pair_impair = "odd";                   
68                $td_javascript=" ";
69                $tr_surbrillance = "onmouseover=\"this.className='surbrillance'\" onmouseout=\"this.className='".$pair_impair."'\" ";
70       
71                $line = str_replace('!!td_javascript!!',$td_javascript , $tpl_liste_item_tableau_ligne);
72                $line = str_replace('!!tr_surbrillance!!',$tr_surbrillance , $line);
73                $line = str_replace('!!pair_impair!!',$pair_impair , $line);
74       
75                        $line =str_replace('!!id!!', $this->liste_item[$i]->id, $line);
76                        if($this->liste_item[$i]->selected) $checked="checked";else $checked="";                       
77                        $line =str_replace('!!selected!!', $checked, $line);
78                        $line = str_replace('!!name!!', $this->liste_item[$i]->name, $line);
79                       
80                        $liste.=$line;
81                }
82                $tpl_liste_item_tableau = str_replace('!!lignes_tableau!!',$liste , $tpl_liste_item_tableau);
83                return $forms_search.$tpl_liste_item_tableau;   
84        }       
85       
86        function save_form(){
87                global $dbh;
88
89                $req="delete FROM opac_filters where opac_filter_view_num=".$this->id_vue." and  opac_filter_path='".$this->path."' ";
90                $myQuery = mysql_query($req, $dbh);
91               
92                $param=array();
93                $selected_list=array();
94                for($i=0;$i<count($this->liste_item);$i++) {
95                        eval("global \$nav_collections_selected_".$this->liste_item[$i]->id.";
96                        \$selected= \$nav_collections_selected_".$this->liste_item[$i]->id.";");
97                        if($selected){
98                                $selected_list[]=$this->liste_item[$i]->id;
99                        }
100                }
101                $param["selected"]=$selected_list;
102                $param=addslashes(serialize($param));           
103                $req="insert into opac_filters set opac_filter_view_num=".$this->id_vue." ,  opac_filter_path='".$this->path."', opac_filter_param='$param' ";
104                $myQuery = mysql_query($req, $dbh);
105        }       
106       
107}
Note: See TracBrowser for help on using the repository browser.