diff --git a/phpgwapi/inc/class.accounts_shared.inc.php b/phpgwapi/inc/class.accounts_shared.inc.php deleted file mode 100644 index 7ecd8435fc..0000000000 --- a/phpgwapi/inc/class.accounts_shared.inc.php +++ /dev/null @@ -1,159 +0,0 @@ - * - * shared functions for other account repository managers * - * Copyright (C) 2000, 2001 Joseph Engo * - * -------------------------------------------------------------------------* - * This library is part of the phpGroupWare API * - * http://www.phpgroupware.org/api * - * ------------------------------------------------------------------------ * - * This library is free software; you can redistribute it and/or modify it * - * under the terms of the GNU Lesser General Public License as published by * - * the Free Software Foundation; either version 2.1 of the License, * - * or any later version. * - * This library is distributed in the hope that it will be useful, but * - * WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * - * See the GNU Lesser General Public License for more details. * - * You should have received a copy of the GNU Lesser General Public License * - * along with this library; if not, write to the Free Software Foundation, * - * Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - \**************************************************************************/ - - /* $Id$ */ - - class accounts extends accounts_ - { - - function accounts_const() - { - global $phpgw, $phpgw_info; - $phpgw->accounts->fill_user_array(); - $this->groups = $this->read_groups($phpgw_info["user"]["userid"]); - } - - // use this if you make any changes to phpgw_info, including preferences, config table changes, etc - function sync($line="",$file="") - { - global $phpgw_info, $phpgw; - $db = $phpgw->db; - - //echo "
sync called
Line: $line
File:$file"; - - /* ********This sets the server variables from the database******** */ - $db->query("select * from config",__LINE__,__FILE__); - while($db->next_record()) { - $phpgw_info["server"][$db->f("config_name")] = $db->f("config_value"); - } - $phpgw->accounts->accounts_const(); - - $phpgw_info_temp["user"] = $phpgw_info["user"]; - $phpgw_info_temp["apps"] = $phpgw_info["apps"]; - $phpgw_info_temp["server"] = $phpgw_info["server"]; - $phpgw_info_temp["hooks"] = $phpgw->hooks->read(); - $phpgw_info_temp["user"]["preferences"] = $phpgw_info["user"]["preferences"]; - $phpgw_info_temp["user"]["kp3"] = ""; // We don't want it anywhere in the - // database for security. - if ($PHP_VERSION < "4.0.0") { - $info_string = addslashes($phpgw->crypto->encrypt($phpgw_info_temp)); - } else { - $info_string = $phpgw->crypto->encrypt($phpgw_info_temp); - } - $db->query("update phpgw_sessions set session_info='$info_string' where session_id='" - . $phpgw_info["user"]["sessionid"] . "'",__LINE__,__FILE__); - } - - function sql_search($table,$owner=0) - { - global $phpgw_info; - - $s = ""; - if(!$owner) { - $owner = $phpgw_info["user"]["account_id"]; - } - $groups = $this->read_groups(intval($owner)); - if (gettype($groups) == "array") { - while ($group = each($groups)) { - $s .= " or $table like '%," . $group[0] . ",%'"; - } - } - return $s; - } - - // This is used to split the arrays in the access column into an array - function string_to_array($s) - { - $raw_array = explode(",",$s); - - for ($i=1,$j=0;$idb->query("select group_name from groups where group_id=".$groups[$i]); - $phpgw->db->query("select group_name from groups where group_id=".$group_number[0],__LINE__,__FILE__); - $phpgw->db->next_record(); - $s .= $phpgw->db->f("group_name"); - if (count($groups) != 0 && $i != count($groups)-2) - $s .= ","; - } - return $s; - } - - // This one is used for the access column - // This is used to convert a raw group string (,5,6,7,) into a string of - // there names. - // Example: accounting, billing, developers - function convert_string_to_names_access($gs) - { - global $phpgw; - - $groups = explode(",",$gs); - - $db2 = $phpgw->db; - - $s = ""; $i = 0; - for ($j=1;$jquery("select group_name from groups where group_id=".$groups[$j],__LINE__,__FILE__); - $db2->next_record(); - $group_names[$i] = $db2->f("group_name"); - $i++; - } - return implode(",",$group_names); - } - - // Convert an array into the format needed for the access column. - function array_to_string($access,$array) - { - $s = ""; - if ($access == "group" || $access == "public" || $access == "none") { - if (count($array)) { - while ($t = each($array)) { - $s .= "," . $t[1]; - } - $s .= ","; - } - if (! count($array) && $access == "none") { - $s = ""; - } - } - return $s; - } - } -?> diff --git a/phpgwapi/inc/class.accounts_sql.inc.php b/phpgwapi/inc/class.accounts_sql.inc.php index e1d88a662b..b88f223c97 100644 --- a/phpgwapi/inc/class.accounts_sql.inc.php +++ b/phpgwapi/inc/class.accounts_sql.inc.php @@ -141,6 +141,30 @@ return $group_names; } + + // This is used to convert a raw group string (,5,6,7,) into a string of + // there names. + // Example: accounting, billing, developers + function convert_string_to_names($gs) + { + global $phpgw; + + $groups = explode(",",$gs); + + $s = ""; + for ($i=1;$idb->query("select group_name from groups where group_id=".$groups[$i]); + $phpgw->db->query("select group_name from groups where group_id=".$group_number[0],__LINE__,__FILE__); + $phpgw->db->next_record(); + $s .= $phpgw->db->f("group_name"); + if (count($groups) != 0 && $i != count($groups)-2) + $s .= ","; + } + return $s; + } + + function listusers($group="") { global $phpgw; diff --git a/phpgwapi/inc/class.common.inc.php b/phpgwapi/inc/class.common.inc.php index 50b8f0f8a7..deaab7b727 100644 --- a/phpgwapi/inc/class.common.inc.php +++ b/phpgwapi/inc/class.common.inc.php @@ -40,6 +40,43 @@ var $key = ""; var $crypto; + // Convert an array into the format needed for the access column. + function array_to_string($access,$array) + { + $s = ""; + if ($access == "group" || $access == "public" || $access == "none") { + if (count($array)) { + while ($t = each($array)) { + $s .= "," . $t[1]; + } + $s .= ","; + } + if (! count($array) && $access == "none") { + $s = ""; + } + } + return $s; + } + + + // This is used for searching the access fields + function sql_search($table,$owner=0) + { + global $phpgw_info; + + $s = ""; + if (!$owner) { + $owner = $phpgw_info["user"]["account_id"]; + } + $groups = $this->read_groups(intval($owner)); + if (gettype($groups) == "array") { + while ($group = each($groups)) { + $s .= " or $table like '%," . $group[0] . ",%'"; + } + } + return $s; + } + // return a array of installed languages function getInstalledLanguages() {