2 /**********************************************************************
3 Copyright (C) FrontAccounting, LLC.
4 Released under the terms of the GNU General Public License, GPL,
5 as published by the Free Software Foundation, either version 3
6 of the License, or (at your option) any later version.
7 This program is distributed in the hope that it will be useful,
8 but WITHOUT ANY WARRANTY; without even the implied warranty of
9 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
10 See the License here <http://www.gnu.org/licenses/gpl-3.0.html>.
11 ***********************************************************************/
13 function add_user($user_id, $real_name, $password, $phone, $email, $role_id,
14 $language, $profile, $rep_popup, $pos)
16 $sql = "INSERT INTO ".TB_PREF."users (user_id, real_name, password"
17 .", phone, email, role_id, language, pos, print_profile, rep_popup)
18 VALUES (".db_escape($user_id).",
19 ".db_escape($real_name).", ".db_escape($password) .",".db_escape($phone).",
20 ".db_escape($email).", $role_id, ".db_escape($language).",
21 $pos,".db_escape($profile).",$rep_popup)";
23 db_query($sql, "could not add user for $user_id");
26 //-----------------------------------------------------------------------------------------------
28 function update_user_password($id, $user_id, $password)
30 $sql = "UPDATE ".TB_PREF."users SET password=".db_escape($password) . ",
31 user_id = ".db_escape($user_id). " WHERE id=".db_escape($id);
33 db_query($sql, "could not update user password for $user_id");
36 //-----------------------------------------------------------------------------------------------
38 function update_user($id, $user_id, $real_name, $phone, $email, $role_id,
39 $language, $profile, $rep_popup, $pos)
41 $sql = "UPDATE ".TB_PREF."users SET real_name=".db_escape($real_name).
42 ", phone=".db_escape($phone).",
43 email=".db_escape($email).",
45 language=".db_escape($language).",
46 print_profile=".db_escape($profile).",
49 user_id = " . db_escape($user_id)
50 . " WHERE id=" . db_escape($id);
51 db_query($sql, "could not update user for $user_id");
54 //-----------------------------------------------------------------------------------------------
56 function update_user_display_prefs($id, $price_dec, $qty_dec, $exrate_dec,
57 $percent_dec, $showgl, $showcodes, $date_format, $date_sep, $tho_sep,
58 $dec_sep, $theme, $pagesize, $show_hints, $profile, $rep_popup, $query_size,
59 $graphic_links, $lang, $stickydate, $startup_tab)
61 $sql = "UPDATE ".TB_PREF."users SET
62 prices_dec=".db_escape($price_dec).",
63 qty_dec=".db_escape($qty_dec).",
64 rates_dec=".db_escape($exrate_dec).",
65 percent_dec=".db_escape($percent_dec).",
66 show_gl=".db_escape($showgl).",
67 show_codes=".db_escape($showcodes).",
68 date_format=".db_escape($date_format).",
69 date_sep=".db_escape($date_sep).",
70 tho_sep=".db_escape($tho_sep).",
71 dec_sep=".db_escape($dec_sep).",
72 theme=".db_escape($theme).",
73 page_size=".db_escape($pagesize).",
74 show_hints=$show_hints,
75 print_profile=".db_escape($profile).",
77 query_size=$query_size,
78 graphic_links=$graphic_links,
79 language=".db_escape($lang).",
80 sticky_doc_date=".db_escape($stickydate).",
81 startup_tab=".db_escape($startup_tab)."
82 WHERE id = ".db_escape($id);
84 db_query($sql, "could not update user display prefs for $id");
87 //-----------------------------------------------------------------------------------------------
90 function get_users($all=false)
92 $sql = "SELECT u.*, r.role FROM ".TB_PREF."users u, ".TB_PREF."security_roles r
93 WHERE u.role_id=r.id";
94 if (!$all) $sql .= " AND !u.inactive";
96 return db_query($sql, "could not get users");
99 //-----------------------------------------------------------------------------------------------
101 function get_user($id)
103 $sql = "SELECT * FROM ".TB_PREF."users WHERE id=".db_escape($id);
105 $result = db_query($sql, "could not get user $id");
107 return db_fetch($result);
110 //-----------------------------------------------------------------------------------------------
111 // This function is necessary for admin prefs update after upgrade from 2.1
113 function get_user_by_login($user_id)
115 $sql = "SELECT * FROM ".TB_PREF."users WHERE user_id=".db_escape($user_id);
117 $result = db_query($sql, "could not get user $user_id");
119 return db_fetch($result);
122 //-----------------------------------------------------------------------------------------------
124 function delete_user($id)
126 $sql="DELETE FROM ".TB_PREF."users WHERE id=".db_escape($id);
128 db_query($sql, "could not delete user $id");
131 //-----------------------------------------------------------------------------------------------
133 function get_user_for_login($user_id, $password)
135 set_global_connection();
137 // do not exclude inactive records or you lost access after source upgrade
138 // on sites using pre 2.2 database
139 $sql = "SELECT * FROM ".TB_PREF."users WHERE user_id = '$user_id' AND"
140 ." password='$password'";
142 return db_query($sql, "could not get validate user login for $user_id");
145 //-----------------------------------------------------------------------------------------------
147 function update_user_visitdate($user_id)
149 $sql = "UPDATE ".TB_PREF."users SET last_visit_date='". date("Y-m-d H:i:s") ."'
150 WHERE user_id=".db_escape($user_id);
152 db_query($sql, "could not update last visit date for user $user_id");
155 //-----------------------------------------------------------------------------------------------
156 function check_user_activity($id)
158 $sql = "SELECT COUNT(*) FROM ".TB_PREF."audit_trail WHERE audit_trail.user="
160 $result = db_query($sql,"Cant check user activity");
161 $ret = db_fetch($result);