X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=plugins%2Fadmin%2Fapplications%2Fclass_applicationGeneric.inc;h=58895c8eabd0283a5bf7e83a1084ac2220ecde25;hb=969b5c3e6fb3643d2b9b77bcb92b7c329f22512b;hp=858408aad1b4e6aeda41a52d2ff3794931f8b420;hpb=c776ab45bcb124a19ef15de2a3efb0f52f7d5c29;p=gosa.git diff --git a/plugins/admin/applications/class_applicationGeneric.inc b/plugins/admin/applications/class_applicationGeneric.inc index 858408aad..58895c8ea 100644 --- a/plugins/admin/applications/class_applicationGeneric.inc +++ b/plugins/admin/applications/class_applicationGeneric.inc @@ -14,10 +14,8 @@ class application extends plugin var $gosaApplicationName= ""; var $gosaApplicationFlags= ""; var $gosaApplicationIcon= ""; - var $gosaApplicationCategory= ""; var $gotoLogonScript =""; var $iconData; - var $Categories = array(); /* Headpage attributes */ var $last_sorting= "invalid"; @@ -25,29 +23,13 @@ class application extends plugin /* attribute list for save action */ var $attributes= array("cn", "description", "gosaApplicationExecute", "gosaApplicationName", - "gosaApplicationFlags","gotoLogonScript", "gosaApplicationCategory"); + "gosaApplicationFlags","gotoLogonScript"); var $objectclasses= array("top", "gosaApplication"); function application ($config, $dn= NULL) { plugin::plugin ($config, $dn); - $tmp = new xmlParse(); - - if(!isset($this->config->data['MAIN']['KDE_APPLICATIONS_MENU'])) { - print_red(_("There is no value for 'KDE_APPLICATIONS_MENU' specified in your gosa.conf.")); - $this->Categories= array(); - }else{ - $path = $this->config->data['MAIN']['KDE_APPLICATIONS_MENU']; - if(file_exists($path)){ - $tmp->parseMenu($path); - $this->Categories = $tmp->GetData(); - }else{ - $this->Categories= array(); - print_red(sprintf(_("The specified file '%s' for 'KDE_APPLICATIONS_MENU' in your gosa.conf is not accessable."),$path)); - } - } - /* Load icon */ $ldap= $config->get_ldap_link(); if ($dn != 'new'){ @@ -76,11 +58,15 @@ class application extends plugin } - function generateTempalte(){ + function generateTemplate(){ $str= "# This code is part of GOsa (https://gosa.gonicus.de)\n#\n"; - $names = $this->parent->by_object['applicationParameters']->option_name; - $values = $this->parent->by_object['applicationParameters']->option_value; + $values = array(); + $names = array(); + if($this->parent->by_object['applicationParameters']->is_account){ + $names = $this->parent->by_object['applicationParameters']->option_name; + $values = $this->parent->by_object['applicationParameters']->option_value; + } if (count($names)){ $str .="# This plugin handles these environment variables:\n"; @@ -113,7 +99,6 @@ class application extends plugin plugin::execute(); $smarty= get_smarty(); - $smarty->assign("categories",array_flip($this->Categories)); /* Do we represent a valid group? */ if (!$this->is_account && $this->parent == NULL){ @@ -123,7 +108,7 @@ class application extends plugin } # if(isset($_POST['ScriptTemplate'])){ - $head = $this->generateTempalte(); + $head = $this->generateTemplate(); $scr = $this->gotoLogonScript; if(preg_match("/### END HEADER ###/",$scr)){ @@ -141,7 +126,6 @@ class application extends plugin } /* Fill templating stuff */ - $smarty= get_smarty(); $smarty->assign("cn", $this->cn); $smarty->assign("bases", $this->config->idepartments); if ($this->dn == "new"){ @@ -157,14 +141,14 @@ class application extends plugin $smarty->assign("rand", rand(0, 10000)); /* Variables */ - foreach(array("description", "gosaApplicationExecute", "gosaApplicationName", - "gosaApplicationCategory") as $val){ + foreach(array("description", "gosaApplicationExecute", "gosaApplicationName","cn") as $val){ $smarty->assign($val, $this->$val); $smarty->assign($val."ACL", chkacl($this->acl, $val)); } /* Checkboxes */ foreach (array("G" => "exec_for_groupmembers", "O" => "overwrite_config", + "L" => "place_on_kicker", "D" => "place_on_desktop", "M" => "place_in_startmenu") as $key => $val){ if (preg_match("/$key/", $this->gosaApplicationFlags)){ $smarty->assign("$val", "checked"); @@ -222,6 +206,9 @@ class application extends plugin if (isset($_POST['place_on_desktop']) && $_POST['place_on_desktop'] == 1){ $flag.= "D"; } + if (isset($_POST['place_on_kicker']) && $_POST['place_on_kicker'] == 1){ + $flag.= "L"; + } if (isset($_POST['place_in_startmenu']) && $_POST['place_in_startmenu'] == 1){ $flag.= "M"; }