diff --git a/plugins/admin/applications/class_applicationGeneric.inc b/plugins/admin/applications/class_applicationGeneric.inc
index 858408aad1b4e6aeda41a52d2ff3794931f8b420..58895c8eabd0283a5bf7e83a1084ac2220ecde25 100644 (file)
var $gosaApplicationName= "";
var $gosaApplicationFlags= "";
var $gosaApplicationIcon= "";
- var $gosaApplicationCategory= "";
var $gotoLogonScript ="";
var $iconData;
- var $Categories = array();
/* Headpage attributes */
var $last_sorting= "invalid";
/* 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'){
}
- 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";
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){
}
# if(isset($_POST['ScriptTemplate'])){
- $head = $this->generateTempalte();
+ $head = $this->generateTemplate();
$scr = $this->gotoLogonScript;
if(preg_match("/### END HEADER ###/",$scr)){
}
/* Fill templating stuff */
- $smarty= get_smarty();
$smarty->assign("cn", $this->cn);
$smarty->assign("bases", $this->config->idepartments);
if ($this->dn == "new"){
$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");
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";
}