X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=gosa-plugins%2Fgoto%2Fadmin%2Fmimetypes%2Fclass_divListMimeTypes.inc;h=7c80b55ed5c53e33785bfd51bc71912689c00d7f;hb=d075a8c302c3b5b967bc70d7943e87f0f9c019a4;hp=b324a8a8349e9874e278d4422ec928bb3b0d978b;hpb=91d122645e99c4ce6279b94f9ff1d0b99cbb032d;p=gosa.git
diff --git a/gosa-plugins/goto/admin/mimetypes/class_divListMimeTypes.inc b/gosa-plugins/goto/admin/mimetypes/class_divListMimeTypes.inc
index b324a8a83..7c80b55ed 100644
--- a/gosa-plugins/goto/admin/mimetypes/class_divListMimeTypes.inc
+++ b/gosa-plugins/goto/admin/mimetypes/class_divListMimeTypes.inc
@@ -78,66 +78,16 @@ class divListMimeTypes extends MultiSelectWindow
/* Create list header, with create / copy & paste etc*/
function GenHeader()
{
-
-
/* Add default header */
$listhead = MultiSelectWindow::get_default_header(false);
if(!$this->parent->IsReleaseManagementActivated()){
- /* Prepare departments,
- which are shown in the listbox on top of the listbox
- */
- $options= "";
-
/* Get all departments within this subtree */
$ui= get_userinfo();
$first = "";
$found = FALSE;
$base = $this->config->current['BASE'];
-
- /* Add base */
- $tmp = array();
- $tmp[] = array("dn"=>$this->config->current['BASE']);
- $tmp= array_merge($tmp,get_list("(&(|(ou=*)(description=*))(objectClass=gosaDepartment))", $this->module, $base,
- array("ou", "description"), GL_SIZELIMIT | GL_SUBSEARCH));
-
- $deps = array();
- foreach($tmp as $tm){
- $deps[$tm['dn']] = $tm['dn'];
- }
-
- /* Load possible departments */
- $ui= get_userinfo();
- $tdeps= $ui->get_module_departments($this->module);
- $ids = $this->config->idepartments;
- $first = "";
- $found = FALSE;
- foreach($ids as $dep => $name){
- if(isset($deps[$dep]) && in_array_ics($dep, $tdeps)){
-
- /* Keep first base dn in mind, we could need this
- * info if no valid base was found
- */
- if(empty($first)) {
- $first = $dep['dn'];
- }
-
- $value = $ids[$dep];
- if ($this->selectedBase == $dep){
- $found = TRUE;
- $options.= "";
- } else {
- $options.= "";
- }
- }
- }
-
- /* The currently used base is not visible with your acl setup.
- * Set base to first useable base.
- */
- if(!$found){
- $this->selectedBase = $first;
- }
+ $options = $this->create_department_list($this->module);
/* And at least add a department selection box */
$listhead .= _("Base")." ".
@@ -214,6 +164,10 @@ class divListMimeTypes extends MultiSelectWindow
foreach($list as $key => $val){
+ /* Check FAI state
+ */
+ $FAIstate = $val['FAIstate'][0];
+
$ui = get_userinfo();
$acl = $ui->get_permissions($val['dn'],"mimetypes/mimetype");
$acl_all = $ui->has_complete_category_acls($val['dn'],"mimetypes") ;
@@ -221,16 +175,28 @@ class divListMimeTypes extends MultiSelectWindow
$action = "";
/* Add copy & cut functionality */
- $action.= $this->parent->get_copypaste_action($val['dn'],"mimetypes","mimetype");
+ if(!preg_match("/freeze/i",$FAIstate)){
+ $action.= $this->parent->get_copypaste_action($val['dn'],"mimetypes","mimetype");
+ }else{
+ $action.= "
";
+ $action.= "
";
+ }
$action.= "";
/* Add snapshot icon */
- $action.= $this->parent->get_snapshot_action($val['dn'],$this->module);
+ if(!preg_match("/freeze/i",$FAIstate)){
+ $action.= $this->parent->get_snapshot_action($val['dn'],$this->module);
+ }else{
+ $action.= "
";
+ $action.= "
";
+ }
/* Add delete button */
- if(preg_match("/d/",$acl)){
+ if(preg_match("/freeze/i",$FAIstate)){
+ $action .= "
";
+ }elseif(preg_match("/d/",$acl)){
$action.= "";
}else{