3 include_once($path_to_root . "/includes/prefs/userprefs.inc");
5 //--------------------------------------------------------------------------
20 function current_user()
22 $this->loginname = $username = $this->name = $this->company = "";
23 $this->logged = false;
33 function set_company($company)
35 $this->company = $company;
38 function login($company, $loginname, $password)
40 $this->set_company($company);
42 $Auth_Result = get_user_for_login($loginname, $password);
44 if (db_num_rows($Auth_Result) > 0)
46 $myrow = db_fetch($Auth_Result);
48 $this->access = $myrow["full_access"];
49 $this->name = $myrow["real_name"];
50 $this->loginname = $loginname;
51 $this->username = $this->loginname;
52 $this->prefs = new user_prefs($myrow);
54 update_user_visitdate($loginname);
60 $this->logged = false;
66 function check_user_access()
68 global $security_groups;
69 return is_array($security_groups[$this->access]);
72 function can_access_page($page_level)
74 global $security_groups;
75 return isset($page_level) && in_array($page_level, $security_groups[$this->access]);
78 function get_db_connection()
80 global $db_connections;
82 $connection = $db_connections[$this->company];
84 //print_r($connection);
86 $db = mysql_connect($connection["host"] ,
87 $connection["dbuser"], $connection["dbpassword"]);
88 mysql_select_db($connection["dbname"],$db);
90 if (!defined('TB_PREF'))
91 define('TB_PREF', $connection["tbpref"]);
96 function update_prefs($price_dec, $qty_dec, $exrate_dec, $percent_dec, $showgl, $showcodes,
97 $date_format, $date_sep, $tho_sep, $dec_sep, $theme, $pagesize, $show_hints) {
98 update_user_display_prefs($this->username, $price_dec, $qty_dec, $exrate_dec, $percent_dec, $showgl,
99 $showcodes, $date_format, $date_sep, $tho_sep, $dec_sep, $theme, $pagesize, $show_hints);
102 $user = get_user($this->username);
103 $this->prefs = new user_prefs($user);
107 //--------------------------------------------------------------------------
109 function number_format2($number, $decimals=0)
111 global $thoseps, $decseps;
112 $tsep = $thoseps[$_SESSION["wa_current_user"]->prefs->tho_sep()];
113 $dsep = $decseps[$_SESSION["wa_current_user"]->prefs->dec_sep()];
114 return number_format($number, $decimals, $dsep, $tsep);
117 function price_format($number) {
118 return number_format2($number,
119 $_SESSION["wa_current_user"]->prefs->price_dec());
121 // 2008-06-15. Added extra parameter $stock_id and reference for $dec
122 //--------------------------------------------------------------------
123 function qty_format($number, $stock_id=null, &$dec) {
124 $dec = get_qty_dec($stock_id);
125 return number_format2($number, $dec);
128 function get_qty_dec($stock_id=null)
130 global $path_to_root;
131 include_once($path_to_root."/inventory/includes/db/items_units_db.inc");
132 if ($stock_id != null)
133 $dec = get_unit_dec($stock_id);
134 if ($stock_id == null || $dec == -1 || $dec == null)
135 $dec = $_SESSION["wa_current_user"]->prefs->qty_dec();
138 //-------------------------------------------------------------------
139 function exrate_format($number) {
140 return number_format2($number,
141 $_SESSION["wa_current_user"]->prefs->exrate_dec());
144 function percent_format($number) {
145 return number_format2($number,
146 $_SESSION["wa_current_user"]->prefs->percent_dec());
149 function user_numeric($input) {
150 global $decseps, $thoseps;
153 $sep = $thoseps[user_tho_sep()];
154 if($sep!='') $num = str_replace( $sep, '', $num);
155 str_replace($sep, '', $num);
156 $sep = $decseps[user_dec_sep()];
157 if($sep!='.') $num = str_replace( $sep, '.', $num);
159 if (!is_numeric($num))
162 if ($num == (int)$num)
168 function user_company()
170 return $_SESSION["wa_current_user"]->company;
173 function user_language()
175 return $_SESSION["wa_current_user"]->prefs->language();
178 function user_qty_dec()
180 return $_SESSION["wa_current_user"]->prefs->qty_dec();
183 function user_price_dec()
185 return $_SESSION["wa_current_user"]->prefs->price_dec();
188 function user_exrate_dec()
190 return $_SESSION["wa_current_user"]->prefs->exrate_dec();
193 function user_percent_dec()
195 return $_SESSION["wa_current_user"]->prefs->percent_dec();
198 function user_show_gl_info()
200 return $_SESSION["wa_current_user"]->prefs->show_gl_info();
203 function user_show_codes()
205 return $_SESSION["wa_current_user"]->prefs->show_codes();
208 function user_date_format()
210 return $_SESSION["wa_current_user"]->prefs->date_format();
213 function user_date_display()
215 return $_SESSION["wa_current_user"]->prefs->date_display();
218 function user_date_sep()
220 return $_SESSION["wa_current_user"]->prefs->date_sep();
223 function user_tho_sep()
225 return $_SESSION["wa_current_user"]->prefs->tho_sep();
228 function user_dec_sep()
230 return $_SESSION["wa_current_user"]->prefs->dec_sep();
233 function user_theme()
235 return $_SESSION["wa_current_user"]->prefs->get_theme();
238 function user_pagesize()
240 return $_SESSION["wa_current_user"]->prefs->get_pagesize();
243 function user_hints()
245 return $_SESSION["wa_current_user"]->prefs->show_hints();
248 function set_user_prefs($price_dec, $qty_dec, $exrate_dec, $percent_dec, $showgl, $showcodes,
249 $date_format, $date_sep, $tho_sep, $dec_sep, $theme, $pagesize, $show_hints)
252 $_SESSION["wa_current_user"]->update_prefs($price_dec, $qty_dec, $exrate_dec, $percent_dec, $showgl, $showcodes,
253 $date_format, $date_sep, $tho_sep, $dec_sep, $theme, $pagesize, $show_hints);
256 function add_user_js_data() {
257 global $path_to_root, $thoseps, $decseps;
259 $ts = $thoseps[user_tho_sep()];
260 $ds = $decseps[user_dec_sep()];
262 $js = "\n<script type=\"text/javascript\">\n"
265 . "theme: '". $path_to_root . '/themes/'. 'default' /*user_theme()*/.'/'."',\n"
266 . "loadtxt: '"._('Requesting data...')."',\n"
269 . "pdec : " . user_price_dec() . "}\n--></script>";
274 //--------------------------------------------------------------------------