$currentWms->createObjFromXML($multipleAssocArray['url']);
         } else {
             continue;
         }
         array_push($wmsArray, $currentWms);
         $options['visible'] = $multipleAssocArray['visible'] === "1" ? true : false;
         $options['zoom'] = $multipleAssocArray['zoom'] === "1" ? true : false;
         $wmcGetApi->mergeWmsArray($wmsArray, $options);
         $wmsArray = array();
         $multipleAssocArray = array();
     } else {
         $currentWms = new wms();
         if (is_numeric($key)) {
             //get WMS by ID
             if (is_numeric($val)) {
                 $currentWms->createObjFromDBNoGui($val);
             } else {
                 if (is_string($val)) {
                     $currentWms->createObjFromXML($val);
                 }
             }
             array_push($wmsArray, $currentWms);
             $wmcGetApi->mergeWmsArray($wmsArray);
             $wmsArray = array();
         } else {
             $singleAssocArray[$key] = $val;
         }
     }
 }
 //get WMS by ID with settings of given application
 if (array_key_exists('application', $singleAssocArray) && array_key_exists('id', $singleAssocArray)) {
     $resultObj = array("nestedSets" => $nodeArray);
     $ajaxResponse->setResult($resultObj);
     $ajaxResponse->setSuccess(true);
     break;
 case "save":
     $data = $ajaxResponse->getParameter("data");
     try {
         $wmsId = intval($data->wms->wms_id);
     } catch (Exception $e) {
         $ajaxResponse->setSuccess(false);
         $ajaxResponse->setMessage(_mb("Invalid WMS ID."));
         $ajaxResponse->send();
     }
     getWms($wmsId);
     $wms = new wms();
     $wms->createObjFromDBNoGui($wmsId, false);
     //here the original urls will be used - cause the object will used to update the wms table
     $columns = array("wms_abstract", "wms_title", "fees", "accessconstraints", "contactperson", "contactposition", "contactvoicetelephone", "contactfacsimiletelephone", "contactorganization", "address", "city", "stateorprovince", "postcode", "country", "contactelectronicmailaddress", "wms_termsofuse", "wms_network_access", "fkey_mb_group_id");
     foreach ($columns as $c) {
         $value = $data->wms->{$c};
         if (!is_null($value)) {
             $wms->{$c} = $value;
         }
     }
     if (is_array($data->wms->layer_searchable)) {
         foreach ($wms->objLayer as &$layer) {
             $layer->layer_searchable = 0;
             //why
             $e = new mb_notice("mb_metadata_server.php: Check layer with id " . $layer->layer_uid . " to be searchable");
             for ($i = 0; $i < count($data->wms->layer_searchable); $i++) {
                 //$e = new mb_exception("mb_metadata_server.php: Layer with id ".$id." found to be searchable");
require_once dirname(__FILE__) . "/../php/mb_validateSession.php";
require_once dirname(__FILE__) . "/../classes/class_wms.php";
require_once dirname(__FILE__) . "/../classes/class_administration.php";
$wms_id = $_GET["wms_id"];
$gui_id = $_GET["gui_id"];
$user_id = $_SESSION["mb_user_id"];
$noHtml = intval($_GET["noHtml"]);
$js = "";
// check if user is allowed to access this wms
$admin = new administration();
if ($admin->getWmsPermission($wms_id, $user_id)) {
    $mywms = new wms();
    if ($gui_id !== '') {
        $mywms->createObjFromDB($gui_id, $wms_id);
    } else {
        $mywms->createObjFromDBNoGui($wms_id);
    }
    if ($noHtml) {
        $output .= $mywms->createJsObjFromWMS_(false);
    } else {
        $output .= $mywms->createJsObjFromWMS_(true);
    }
    $js .= administration::convertOutgoingString($output);
    unset($output);
} else {
    $e = new mb_exception("You are not allowed to access this WMS (WMS ID " . $wms_id . ").");
}
if ($noHtml) {
    echo $js;
} else {
    $js .= "parent.mod_addWMS_refresh();";