[1704] | 1 | <?php |
---|
| 2 | |
---|
| 3 | class user |
---|
| 4 | { |
---|
| 5 | var $public_functions = array( |
---|
| 6 | 'save_preferences' => True, |
---|
| 7 | 'get_preferences' => True |
---|
| 8 | ); |
---|
| 9 | |
---|
| 10 | var $bo; |
---|
| 11 | var $user_id; |
---|
| 12 | |
---|
| 13 | var $target; |
---|
| 14 | |
---|
| 15 | var $prefs;//array |
---|
| 16 | |
---|
| 17 | var $current_config; |
---|
| 18 | // this ones must be checked thorougly; |
---|
| 19 | var $fileman = Array(); |
---|
| 20 | var $path; |
---|
| 21 | var $file; |
---|
| 22 | var $debug = false; |
---|
| 23 | var $now; |
---|
| 24 | |
---|
| 25 | function user() |
---|
| 26 | { |
---|
| 27 | $this->now = date('Y-m-d'); |
---|
| 28 | |
---|
| 29 | $this->bo = CreateObject('filemanager.bofilemanager'); |
---|
| 30 | |
---|
| 31 | $c = CreateObject('phpgwapi.config','filemanager'); |
---|
| 32 | $c->read_repository(); |
---|
| 33 | $this->current_config = $c->config_data; |
---|
| 34 | $this->user_id = $GLOBALS['phpgw_info']['user']['account_id']; |
---|
| 35 | |
---|
| 36 | // here local vars are created from the HTTP vars |
---|
| 37 | @reset($GLOBALS['HTTP_POST_VARS']); |
---|
| 38 | while(list($name,) = @each($GLOBALS['HTTP_POST_VARS'])) |
---|
| 39 | { |
---|
| 40 | $this->$name = $GLOBALS['HTTP_POST_VARS'][$name]; |
---|
| 41 | } |
---|
| 42 | |
---|
| 43 | @reset($GLOBALS['HTTP_GET_VARS']); |
---|
| 44 | while(list($name,) = @each($GLOBALS['HTTP_GET_VARS'])) |
---|
| 45 | { |
---|
| 46 | $$name = $GLOBALS['HTTP_GET_VARS'][$name]; |
---|
| 47 | $this->$name = $GLOBALS['HTTP_GET_VARS'][$name]; |
---|
| 48 | |
---|
| 49 | } |
---|
| 50 | |
---|
| 51 | $to_decode = array |
---|
| 52 | ( |
---|
| 53 | 'preferences' => array('preferences' => '') |
---|
| 54 | ); |
---|
| 55 | |
---|
| 56 | reset($to_decode); |
---|
| 57 | while(list($var, $conditions) = each($to_decode)) |
---|
| 58 | { |
---|
| 59 | while(list($condvar, $condvalue) = each($conditions)) |
---|
| 60 | { |
---|
| 61 | if(isset($$condvar) && ($condvar == $var || $$condvar == $condvalue)) |
---|
| 62 | { |
---|
| 63 | if(is_array($$var)) |
---|
| 64 | { |
---|
| 65 | $temp = array(); |
---|
| 66 | while(list($varkey, $varvalue) = each($$var)) |
---|
| 67 | { |
---|
| 68 | if(is_int($varkey)) |
---|
| 69 | { |
---|
| 70 | $temp[$varkey] = stripslashes(base64_decode(urldecode(($varvalue)))); |
---|
| 71 | } |
---|
| 72 | else |
---|
| 73 | { |
---|
| 74 | $temp[stripslashes(base64_decode(urldecode(($varkey))))] = $varvalue; |
---|
| 75 | } |
---|
| 76 | } |
---|
| 77 | $this->$var = $temp; |
---|
| 78 | } |
---|
| 79 | elseif(isset($$var)) |
---|
| 80 | { |
---|
| 81 | $this->$var = stripslashes(base64_decode(urldecode($$var))); |
---|
| 82 | } |
---|
| 83 | } |
---|
| 84 | } |
---|
| 85 | } |
---|
| 86 | |
---|
| 87 | // get appl. and user prefs |
---|
| 88 | $pref = CreateObject('phpgwapi.preferences', $this->bo->userinfo['username']); |
---|
| 89 | $pref->read_repository(); |
---|
| 90 | $pref->save_repository(True); |
---|
| 91 | $pref_array = $pref->read_repository(); |
---|
| 92 | $this->prefs = $pref_array[$this->bo->appname]; |
---|
| 93 | |
---|
| 94 | //always show name |
---|
| 95 | |
---|
| 96 | $this->prefs[name] =1; |
---|
| 97 | |
---|
| 98 | } |
---|
| 99 | |
---|
| 100 | function get_preferences(){ |
---|
| 101 | echo(serialize($_SESSION['phpgw_info']['user']['preferences']['filemanager'])); |
---|
| 102 | } |
---|
| 103 | function save_preferences(){ |
---|
[1809] | 104 | /* See if preferences exists or not */ |
---|
[1810] | 105 | $query = "SELECT count(preference_owner) FROM phpgw_preferences WHERE preference_app = 'filemanager' AND preference_owner = ".$this->user_id." LIMIT 1"; |
---|
[1809] | 106 | if ($GLOBALS['phpgw']->db->query($query) && $GLOBALS['phpgw']->db->next_record()) |
---|
| 107 | $val = $GLOBALS['phpgw']->db->row(); |
---|
| 108 | else |
---|
| 109 | { |
---|
| 110 | echo $GLOBALS['phpgw']->db->error; |
---|
| 111 | return false; |
---|
| 112 | } |
---|
| 113 | |
---|
| 114 | $string_serial = addslashes($this->preferences); |
---|
| 115 | if ($val['count'] == '1') |
---|
| 116 | { |
---|
| 117 | $query = "UPDATE phpgw_preferences set preference_value = '".$string_serial. |
---|
| 118 | "' where preference_app = 'filemanager'". |
---|
| 119 | " and preference_owner = '".$this->user_id."'"; |
---|
[1704] | 120 | if (!$GLOBALS['phpgw']->db->query($query)){ |
---|
| 121 | echo $GLOBALS['phpgw']->db->error; |
---|
| 122 | return false; |
---|
| 123 | } |
---|
| 124 | else{ |
---|
| 125 | echo "True"; |
---|
| 126 | return; |
---|
| 127 | } |
---|
[1809] | 128 | } |
---|
| 129 | else |
---|
| 130 | { |
---|
| 131 | /*preferences does not exist*/ |
---|
| 132 | $query = "INSERT INTO phpgw_preferences values (".$this->user_id.",'filemanager','".$string_serial."')"; |
---|
| 133 | if (!$GLOBALS['phpgw']->db->query($query)){ |
---|
| 134 | echo $GLOBALS['phpgw']->db->error; |
---|
| 135 | return false; |
---|
| 136 | } |
---|
| 137 | else{ |
---|
| 138 | echo "True"; |
---|
| 139 | return; |
---|
| 140 | } |
---|
| 141 | |
---|
| 142 | } |
---|
[1704] | 143 | } |
---|
| 144 | |
---|
| 145 | } |
---|
| 146 | ?> |
---|