index 1bc2cf019f5759c648448f5117767dd4ea4b2ed7..4354fdaea3094d60b6bf72a55b31b7e24029ee0c 100644 (file)
}
/* Check for global language settings in gosa.conf */
}
/* Check for global language settings in gosa.conf */
- if(isset($config->data['MAIN']['LANG']) && !empty($config->data['MAIN']['LANG'])) {
- $lang = $config->data['MAIN']['LANG'];
+ if (isset ($config) && $config->get_cfg_value('lang') != ""){
+ $lang = $config->get_cfg_value('lang');
if(!preg_match("/utf/i",$lang)){
$lang .= ".UTF-8";
}
if(!preg_match("/utf/i",$lang)){
$lang .= ".UTF-8";
}
{
global $config, $BASE_DIR;
{
global $config, $BASE_DIR;
- if (!@isset($config->data['MAIN']['THEME'])){
- $theme= 'default';
- } else {
- $theme= $config->data['MAIN']['THEME'];
- }
+ /* Set theme */
+ $theme= $config->get_cfg_value("theme", "default");
/* Return path for empty filename */
if ($filename == ''){
/* Return path for empty filename */
if ($filename == ''){
$config->set_current($name);
$mode= "kerberos";
$config->set_current($name);
$mode= "kerberos";
- if (isset($config->current['KRBSASL']) && preg_match('/^true$/i', $config->current['KRBSASL'])){
+ if ($config->get_cfg_value("krbsasl") == "true"){
$mode= "sasl";
}
$mode= "sasl";
}
$ldap->cd($config->current['BASE']);
$allowed_attributes = array("uid","mail");
$verify_attr = array();
$ldap->cd($config->current['BASE']);
$allowed_attributes = array("uid","mail");
$verify_attr = array();
- if(isset($config->current['LOGIN_ATTRIBUTE'])){
- $tmp = split(",",$config->current['LOGIN_ATTRIBUTE']);
+ if($config->get_cfg_value("login_attribute") != ""){
+ $tmp = split(",", $config->get_cfg_value("login_attribute"));
foreach($tmp as $attr){
if(in_array($attr,$allowed_attributes)){
$verify_attr[] = $attr;
foreach($tmp as $attr){
if(in_array($attr,$allowed_attributes)){
$verify_attr[] = $attr;
/* Check for existing entries in lock area */
$ldap= $config->get_ldap_link();
/* Check for existing entries in lock area */
$ldap= $config->get_ldap_link();
- $ldap->cd ($config->current['CONFIG']);
+ $ldap->cd ($config->get_cfg_value("config"));
$ldap->search("(&(objectClass=gosaLockEntry)(gosaUser=$user)(gosaObject=".base64_encode($object)."))",
array("gosaUser"));
if (!$ldap->success()){
$ldap->search("(&(objectClass=gosaLockEntry)(gosaUser=$user)(gosaObject=".base64_encode($object)."))",
array("gosaUser"));
if (!$ldap->success()){
if ($ldap->count() == 0){
$attrs= array();
$name= md5($object);
if ($ldap->count() == 0){
$attrs= array();
$name= md5($object);
- $ldap->cd("cn=$name,".$config->current['CONFIG']);
+ $ldap->cd("cn=$name,".$config->get_cfg_value("config"));
$attrs["objectClass"] = "gosaLockEntry";
$attrs["gosaUser"] = $user;
$attrs["gosaObject"] = base64_encode($object);
$attrs["cn"] = "$name";
$ldap->add($attrs);
if (!$ldap->success()){
$attrs["objectClass"] = "gosaLockEntry";
$attrs["gosaUser"] = $user;
$attrs["gosaObject"] = base64_encode($object);
$attrs["cn"] = "$name";
$ldap->add($attrs);
if (!$ldap->success()){
- msg_dialog::display(_("LDAP error"), msgPool::ldaperror($ldap->get_error(), "cn=$name,".$config->current['CONFIG'], 0, ERROR_DIALOG));
+ msg_dialog::display(_("LDAP error"), msgPool::ldaperror($ldap->get_error(), "cn=$name,".$config->get_cfg_value("config"), 0, ERROR_DIALOG));
return;
}
}
return;
}
}
/* Check for existance and remove the entry */
$ldap= $config->get_ldap_link();
/* Check for existance and remove the entry */
$ldap= $config->get_ldap_link();
- $ldap->cd ($config->current['CONFIG']);
+ $ldap->cd ($config->get_cfg_value("config"));
$ldap->search ("(&(objectClass=gosaLockEntry)(gosaObject=".base64_encode($object)."))", array("gosaObject"));
$attrs= $ldap->fetch();
if ($ldap->getDN() != "" && $ldap->success()){
$ldap->search ("(&(objectClass=gosaLockEntry)(gosaObject=".base64_encode($object)."))", array("gosaObject"));
$attrs= $ldap->fetch();
if ($ldap->getDN() != "" && $ldap->success()){
/* Get LDAP ressources */
$ldap= $config->get_ldap_link();
/* Get LDAP ressources */
$ldap= $config->get_ldap_link();
- $ldap->cd ($config->current['CONFIG']);
+ $ldap->cd ($config->get_cfg_value("config"));
/* Remove all objects of this user, drop errors silently in this case. */
$ldap->search("(&(objectClass=gosaLockEntry)(gosaUser=$userdn))", array("gosaUser"));
/* Remove all objects of this user, drop errors silently in this case. */
$ldap->search("(&(objectClass=gosaLockEntry)(gosaUser=$userdn))", array("gosaUser"));
/* Get LDAP link, check for presence of the lock entry */
$user= "";
$ldap= $config->get_ldap_link();
/* Get LDAP link, check for presence of the lock entry */
$user= "";
$ldap= $config->get_ldap_link();
- $ldap->cd ($config->current['CONFIG']);
+ $ldap->cd ($config->get_cfg_value("config"));
$ldap->search("(&(objectClass=gosaLockEntry)(gosaObject=".base64_encode($object)."))", array("gosaUser"));
if (!$ldap->success()){
msg_dialog::display(_("LDAP error"), msgPool::ldaperror($ldap->get_error(), "", LDAP_SEARCH, ERROR_DIALOG));
$ldap->search("(&(objectClass=gosaLockEntry)(gosaObject=".base64_encode($object)."))", array("gosaUser"));
if (!$ldap->success()){
msg_dialog::display(_("LDAP error"), msgPool::ldaperror($ldap->get_error(), "", LDAP_SEARCH, ERROR_DIALOG));
/* Get LDAP link, check for presence of the lock entry */
$user= "";
$ldap= $config->get_ldap_link();
/* Get LDAP link, check for presence of the lock entry */
$user= "";
$ldap= $config->get_ldap_link();
- $ldap->cd ($config->current['CONFIG']);
+ $ldap->cd ($config->get_cfg_value("config"));
$ldap->search($filter, array("gosaUser","gosaObject"));
if (!$ldap->success()){
msg_dialog::display(_("LDAP error"), msgPool::ldaperror($ldap->get_error(), "", LDAP_SEARCH, ERROR_DIALOG));
$ldap->search($filter, array("gosaUser","gosaObject"));
if (!$ldap->success()){
msg_dialog::display(_("LDAP error"), msgPool::ldaperror($ldap->get_error(), "", LDAP_SEARCH, ERROR_DIALOG));
@@ -905,16 +902,14 @@ function get_sub_list($filter, $category,$sub_deps, $base= "", $attributes= arra
}else{
/* Sort in every value that fits the permissions */
}else{
/* Sort in every value that fits the permissions */
- if (is_array($category)){
- foreach ($category as $o){
- if ($ui->get_category_permissions($dn, $o) != ""){
- $result[]= $attrs;
- break;
- }
- }
- } else {
- if ( $ui->get_category_permissions($dn, $category) != ""){
+ if (!is_array($category)){
+ $category = array($category);
+ }
+ foreach ($category as $o){
+ if((preg_match("/\//",$o) && preg_match("/r/",$ui->get_permissions($dn,$o))) ||
+ (!preg_match("/\//",$o) && preg_match("/r/",$ui->get_category_permissions($dn, $o)))){
$result[]= $attrs;
$result[]= $attrs;
+ break;
}
}
}
}
}
}
@@ -975,19 +970,14 @@ function get_list($filter, $category, $base= "", $attributes= array(), $flags= G
}else{
/* Sort in every value that fits the permissions */
}else{
/* Sort in every value that fits the permissions */
- if (is_array($category)){
- foreach ($category as $o){
- if ($ui->get_category_permissions($dn, $o) != ""){
-
- /* We found what we were looking for, break speeds things up */
- $result[]= $attrs;
- }
- }
- } else {
- if ($ui->get_category_permissions($dn, $category) != ""){
-
- /* We found what we were looking for, break speeds things up */
+ if (!is_array($category)){
+ $category = array($category);
+ }
+ foreach ($category as $o){
+ if((preg_match("/\//",$o) && preg_match("/r/",$ui->get_permissions($dn,$o))) ||
+ (!preg_match("/\//",$o) && preg_match("/r/",$ui->get_category_permissions($dn, $o)))){
$result[]= $attrs;
$result[]= $attrs;
+ break;
}
}
}
}
}
}
"printerou" => "ou=printers,ou=systems,",
"phoneou" => "ou=phones,ou=systems,",
"componentou" => "ou=netdevices,ou=systems,",
"printerou" => "ou=printers,ou=systems,",
"phoneou" => "ou=phones,ou=systems,",
"componentou" => "ou=netdevices,ou=systems,",
+ "winstations" => "ou=winstation,",
+
"blocklistou" => "ou=gofax,ou=systems,",
"incomingou" => "ou=incoming,",
"aclroleou" => "ou=aclroles,",
"blocklistou" => "ou=gofax,ou=systems,",
"incomingou" => "ou=incoming,",
"aclroleou" => "ou=aclroles,",
"mimetypeou" => "ou=mime,");
/* Preset ou... */
"mimetypeou" => "ou=mime,");
/* Preset ou... */
- if (isset($config->current[strtoupper($name)])){
- $ou= $config->current[strtoupper($name)];
+ if ($config->get_cfg_value($name) != ""){
+ $ou= $config->get_cfg_value($name);
} elseif (isset($map[$name])) {
$ou = $map[$name];
return($ou);
} elseif (isset($map[$name])) {
$ou = $map[$name];
return($ou);
{
global $config;
{
global $config;
- return !(isset($config->current['STRICT']) && preg_match('/^(no|false)$/i', $config->current['STRICT']));
+ return ($config->get_cfg_value("strict") == "true");
}
}
{
global $config;
{
global $config;
- if (isset($config->current['BASE_HOOK'])){
+ if ($config->get_cfg_value("base_hook") != ""){
/* Call hook script - if present */
/* Call hook script - if present */
- $command= $config->current['BASE_HOOK'];
+ $command= $config->get_cfg_value("base_hook");
if ($command != ""){
$command.= " '".LDAP::fix($dn)."' $attrib";
if ($command != ""){
$command.= " '".LDAP::fix($dn)."' $attrib";
return ($output[0]);
} else {
msg_dialog::display(_("Warning"), _("'base_hook' is not available. Using default base!"), WARNING_DIALOG);
return ($output[0]);
} else {
msg_dialog::display(_("Warning"), _("'base_hook' is not available. Using default base!"), WARNING_DIALOG);
- return ($config->current['UIDBASE']);
+ return ($config->get_cfg_value("uidbase"));
}
} else {
msg_dialog::display(_("Warning"), _("'base_hook' is not available. Using default base!"), WARNING_DIALOG);
}
} else {
msg_dialog::display(_("Warning"), _("'base_hook' is not available. Using default base!"), WARNING_DIALOG);
- return ($config->current['UIDBASE']);
+ return ($config->get_cfg_value("uidbase"));
}
} else {
msg_dialog::display(_("Warning"), _("'base_hook' is not available. Using default base!"), WARNING_DIALOG);
}
} else {
msg_dialog::display(_("Warning"), _("'base_hook' is not available. Using default base!"), WARNING_DIALOG);
- return ($config->current['UIDBASE']);
+ return ($config->get_cfg_value("uidbase"));
}
}
}
}
@@ -2361,6 +2353,7 @@ function get_languages($languages_in_own_language = FALSE,$strip_region_tag = FA
"pl_PL" => "Polish",
"sv_SE" => "Swedish",
"zh_CN" => "Chinese",
"pl_PL" => "Polish",
"sv_SE" => "Swedish",
"zh_CN" => "Chinese",
+ "vi_VN" => "Vietnamese",
"ru_RU" => "Russian");
$tmp2= array(
"ru_RU" => "Russian");
$tmp2= array(
@@ -2373,6 +2366,7 @@ function get_languages($languages_in_own_language = FALSE,$strip_region_tag = FA
"pl_PL" => _("Polish"),
"sv_SE" => _("Swedish"),
"zh_CN" => _("Chinese"),
"pl_PL" => _("Polish"),
"sv_SE" => _("Swedish"),
"zh_CN" => _("Chinese"),
+ "vi_VN" => _("Vietnamese"),
"ru_RU" => _("Russian"));
$ret = array();
"ru_RU" => _("Russian"));
$ret = array();
global $config;
# Try to use gosa-si?
global $config;
# Try to use gosa-si?
- if (isset($config->current['GOSA_SI'])){
+ if ($config->get_cfg_value("gosa_si") != ""){
$res= gosaSupportDaemon::send("gosa_gen_smb_hash", "GOSA", array("password" => $password), TRUE);
if (isset($res['XML']['HASH'])){
$hash= $res['XML']['HASH'];
$res= gosaSupportDaemon::send("gosa_gen_smb_hash", "GOSA", array("password" => $password), TRUE);
if (isset($res['XML']['HASH'])){
$hash= $res['XML']['HASH'];
$hash= "";
}
} else {
$hash= "";
}
} else {
- $tmp= $config->data['MAIN']['SMBHASH']." ".escapeshellarg($password);
+ $tmp= $config->get_cfg_value('smbhash')." ".escapeshellarg($password);
@DEBUG (DEBUG_LDAP, __LINE__, __FUNCTION__, __FILE__, $tmp, "Execute");
exec($tmp, $ar);
@DEBUG (DEBUG_LDAP, __LINE__, __FUNCTION__, __FILE__, $tmp, "Execute");
exec($tmp, $ar);
list($lm,$nt)= split (":", trim($hash));
list($lm,$nt)= split (":", trim($hash));
- if ($config->current['SAMBAVERSION'] == 3) {
+ if ($config->get_cfg_value("sambaversion") == 3) {
$attrs['sambaLMPassword']= $lm;
$attrs['sambaNTPassword']= $nt;
$attrs['sambaPwdLastSet']= date('U');
$attrs['sambaLMPassword']= $lm;
$attrs['sambaNTPassword']= $nt;
$attrs['sambaPwdLastSet']= date('U');
}
/* Get attribute that we should use as serial number */
}
/* Get attribute that we should use as serial number */
- if(isset($config->current['UNIQ_IDENTIFIER'])){
- $attr = $config->current['UNIQ_IDENTIFIER'];
- }elseif(isset($config->data['MAIN']['UNIQ_IDENTIFIER'])){
- $attr = $config->data['MAIN']['UNIQ_IDENTIFIER'];
- }
- if(!empty($attr)){
+ $attr= $config->get_cfg_value("uniq_identifier");
+ if($attr != ""){
$ldap = $config->get_ldap_link();
$ldap->cat($dn,array($attr));
$csn = $ldap->fetch();
$ldap = $config->get_ldap_link();
$ldap->cat($dn,array($attr));
$csn = $ldap->fetch();