X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=gosa-plugins%2Fgoto%2Fadmin%2Fmimetypes%2Fclass_mimetypeGeneric.inc;h=c5d52cf27d5a8d639de01f0ab5153e2b6d4d2414;hb=01c082f098a7163ea516260e6c134381381b6cc6;hp=366dd01b2fe03785d9c4410a658c5036d7d837cb;hpb=fbf8e4356f625423e3ccfcb0c6520942726a44e1;p=gosa.git
diff --git a/gosa-plugins/goto/admin/mimetypes/class_mimetypeGeneric.inc b/gosa-plugins/goto/admin/mimetypes/class_mimetypeGeneric.inc
index 366dd01b2..c5d52cf27 100644
--- a/gosa-plugins/goto/admin/mimetypes/class_mimetypeGeneric.inc
+++ b/gosa-plugins/goto/admin/mimetypes/class_mimetypeGeneric.inc
@@ -37,9 +37,6 @@ class mimetype extends plugin
var $DivApps = NULL;
var $DivEApps = NULL;
- /* Mime type release mode */
- var $isReleaseMimeType = false;
-
/* These vars will be copied too, if you use copy&paste mode */
var $CopyPasteVars = array("use_gotoMimeFilePattern","use_gotoMimeApplication","use_gotoMimeEmbeddedApplication","iconData",
"gotoMimeLeftClickAction_I","gotoMimeLeftClickAction_E","gotoMimeLeftClickAction_Q","use_gotoMimeIcon");
@@ -120,12 +117,6 @@ class mimetype extends plugin
}
}
- /* Check if release Management is enabled */
- $tmp = $this->config->search("faiManagement", "CLASS",array('menu','tabs'));
- if(!empty($tmp)) {
- $this->isReleaseMimeType= true;
- }
-
/* Set base */
if ($this->dn == "new"){
if(session::is_set('CurrentMainBase')){
@@ -299,24 +290,24 @@ class mimetype extends plugin
if($this->acl_is_writeable("gotoMimeFilePattern")){
- $Pattern_Actions= "
-
+ $Pattern_Actions= "
+
";
}else{
$Pattern_Actions= "";
}
if($this->acl_is_writeable("gotoMimeApplication")){
- $Apps_Actions = "
-
+ $Apps_Actions = "
+
";
}else{
$Apps_Actions= "";
}
if($this->acl_is_writeable("gotoMimeEmbeddedApplication")){
- $EApps_Actions = "
-
+ $EApps_Actions = "
+
";
}else{
$EApps_Actions= "";
@@ -350,7 +341,7 @@ class mimetype extends plugin
}
$smarty->assign("bases", $this->get_allowed_bases());
$smarty->assign("base_select", $this->base);
- $smarty->assign("isReleaseMimeType", $this->isReleaseMimeType);
+ $smarty->assign("isReleaseMimeType", $this->is_release());
$smarty->assign("gotoMimeFilePatterns", $DivPatterns->DrawList());
$smarty->assign("gotoMimeApplications", $DivApps->DrawList());
$smarty->assign("gotoMimeEmbeddedApplications", $DivEApps->DrawList());
@@ -386,7 +377,7 @@ class mimetype extends plugin
$this->base = $base_tmp;
/* Only save base if we are not in release mode */
- if(!$this->isReleaseMimeType){
+ if(!$this->is_release()){
/* Set new base if allowed */
$tmp = $this->get_allowed_bases();
@@ -540,31 +531,23 @@ class mimetype extends plugin
$ldap = $this->config->get_ldap_link();
$ldap->cd($this->config->current["BASE"]);
- $mimefilter = session::get('mimefilter');
-
- if($this->isReleaseMimeType && (isset($mimefilter['release']))){
- $baseDn = str_replace($this->config->current['BASE'],$this->base,$mimefilter['release']);
- $baseDn = preg_replace("/".get_ou('mimetypeou').".*/",get_ou('mimetypeou').$this->base,$mimefilter['release']);
- $ldap->ls("(&(objectClass=gotoMimeType)(cn=".$this->cn."))",$baseDn,array("cn"));
- if($ldap->count()){
- $attrs = $ldap->fetch();
- if($this->dn != $attrs['dn']) {
- $message[]= msgPool::duplicated(_("Name"));
- }
- }
+ if($this->is_release()){
+ $base = $this->parent->parent->mime_release;
}else{
- $ldap->ls("(&(objectClass=gotoMimeType)(cn=".$this->cn."))",get_ou('mimetypeou').$this->base,array("cn"));
- if ($ldap->count()){
- $attrs = $ldap->fetch();
- if($this->dn != $attrs['dn']) {
- $message[]= msgPool::duplicated(_("Name"));
- }
- }
+ $base = get_ou("mimetypeou").$this->base;
}
+ $ldap->ls("(&(objectClass=gotoMimeType)(cn=".$this->cn."))",$base,array("cn"));
+ if($ldap->count()){
+ $attrs = $ldap->fetch();
+ if($this->dn != $attrs['dn']) {
+ $message[]= msgPool::duplicated("cn");
+ }
+ }
return($message);
}
+
/** Helper functions **/
/* Set a new picture */
@@ -734,6 +717,22 @@ class mimetype extends plugin
}
+
+ function is_release()
+ {
+ if(is_object($this->parent->parent)){
+ return($this->parent->parent->IsReleaseManagementActivated());
+ }else{
+ /* Check if we should enable the release selection */
+ $tmp = $this->config->search("faiManagement", "CLASS",array('menu','tabs'));
+ if(!empty($tmp)){
+ return(true);
+ }
+ }
+ return(FALSE);
+ }
+
+
function PrepareForCopyPaste($source)
{
plugin::PrepareForCopyPaste($source);