diff --git a/plugins/admin/systems/class_systemManagement.inc b/plugins/admin/systems/class_systemManagement.inc
index 5cff78e0a4f81cb594288fa5ad7a265825caf2b6..38bac6d49c4ba2f9f9f50a060c5a5c33e7f16f33 100644 (file)
/* Create new default terminal
* Or create specified object of selected system type, from given incoming object
*/
+
+ $save_object_directly = false;
+ if(($s_action == "SelectedSystemType") && (isset($_POST['ObjectGroup']) && ($_POST['ObjectGroup'] != "none"))){
+ $save_object_directly = true;
+ }
+
if (isset($_POST['create_system'])||$s_action=="newsystem"||$s_action == "SelectedSystemType") {
/* If the current entry is an incoming object
/* Finish user edit is triggered by the tabulator dialog, so
the user wants to save edited data. Check and save at this
point. */
- if ((isset($_POST['edit_finish'])) && (isset($this->systab->config))){
+ if ((isset($_POST['edit_finish'])) && (isset($this->systab->config)) || $save_object_directly){
/* Check tabs, will feed message array */
- $message= $this->systab->check();
+ $message = array();
+ if(!$save_object_directly){
+ $message = $this->systab->check();
+ }else{
+ $found = false;
+
+ /* Set gotoMode to active if we there was an ogroup selected . (save_object_directly) */
+ foreach(array("workgeneric"=>"active","servgeneric"=>"active","termgeneric"=>"graphic") as $tab => $value){
+ if(isset($this->systab->by_object[$tab]->gotoMode)) {
+ $found = true;
+ $this->systab->by_object[$tab]->gotoMode = $value;
+ }
+ }
+ if(!$found){
+ print_red(sprintf(_("Can't set gotoMode to status 'avtice', the current object couldn't be identified.")));
+ }
+ }
/* Save, or display error message? */
if (count($message) == 0){