Code

Fixed Translation Strings.
[gosa.git] / plugins / admin / applications / class_applicationGeneric.inc
index 858408aad1b4e6aeda41a52d2ff3794931f8b420..58895c8eabd0283a5bf7e83a1084ac2220ecde25 100644 (file)
@@ -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";
                }