maj syntaxe accolades, maj jQuery, correction layout contact
[mtweb] / web / app / data / modules / xml / mw_data_config.php
1 <?php
2
3   class mw_data_config extends mw_data{
4
5     function config($key = null){
6       $sgbd = $this->sgbd();
7       $value = false;
8       if($rst = $sgbd->open_data("config")){
9         if(isset($key)){
10           while($v_rst = $sgbd->fetch_data($rst)){
11             if(isset($v_rst)){
12               if($v_rst["key"] == $key){
13                 $value = $v_rst["value"];
14               }
15             }
16             else $value = null;
17           }
18         }
19         else{
20           $value = array();
21           while($v_rst = $sgbd->fetch_data($rst)){
22             if(isset($v_rst)){
23               if(is_array($v_rst)) foreach($v_rst as $key => $_value){
24                 $value[$key] = $_value;
25                 break;
26               }
27             }
28             else $value = null;
29           }
30         }
31         $sgbd->close_data($rst);
32       }
33       if(!isset($value)) return false;
34       return $value;
35     }
36
37     function config_exists($key){
38       $sgbd = $this->sgbd();
39       $exists = 0;
40       if($rst = $sgbd->open_data("config")){
41         while($v_rst = $sgbd->fetch_data($rst)){
42           if(isset($v_rst)){
43             if(isset($v_rst[$key])) $exists++;
44           }
45           else{
46             $exists = false;
47             break;
48           }
49         }
50         $sgbd->close_data($rst);
51       }
52       else $exists = false;
53       return $exists;
54     }
55
56     function set_config($key, $value){
57       $sgbd = $this->sgbd();
58       $FOUND = false;
59       if($rst = $sgbd->open_data("config")){
60         while($v_rst = $sgbd->fetch_data($rst)){
61           if(isset($v_rst)){
62             if(array_key_exists($key, $v_rst)){
63               $FOUND = $sgbd->set_data("config", $v_rst["id"], array($key => $value));
64               break;
65             }
66           }
67           else{
68             $FOUND = null;
69             break;
70           }
71         }
72         $sgbd->close_data($rst);
73       }
74       else $FOUND = null;
75       if(isset($FOUND)){
76         if($FOUND) return true;
77         else{
78           if($sgbd->add_data("config", array($key => $value))) return true;
79         }
80       }
81       return false;
82     }
83
84     function del_config($key){
85       $ids = array();
86       $sgbd = $this->sgbd();
87       if($rst = $sgbd->open_data("config")){
88         while($v_rst = $sgbd->fetch_data($rst)){
89           if(isset($v_rst)){
90             if(isset($v_rst[$key]) && isset($v_rst["id"])){
91               $ids[] = $v_rst["id"];
92             }
93           }
94           else $ids = false;
95         }
96         $sgbd->close_data($rst);
97       }
98       if($ids === false) return false;
99       foreach($ids as $id) if(!$sgbd->del_data("config", $id)) return false;
100       return true;
101     }
102
103   }
104
105 ?>