function initWmcById($wmcId, $wmcAction)
{
    $wmc = new wmc();
    $wmc->createFromDb($wmcId);
    $updatedWMC = $wmc->updateUrlsFromDb();
    $wmc->createFromXml($updatedWMC);
    $jsArray = $wmc->toJavaScript();
    if ($jsArray) {
        $jsString = implode("", $jsArray);
        echo $jsString;
    } else {
        $e = new mb_exception("WMC could not be loaded.");
    }
}
         $ajaxResponse->setSuccess(false);
     }
     break;
     // appends a WMC (returns JS code)
 // appends a WMC (returns JS code)
 case 'appendWmc':
     // generate a WMC for the current client state
     $currentWmc = new wmc();
     $currentWmc->createFromJs($json->decode($ajaxResponse->getParameter("mapObject")), $ajaxResponse->getParameter("generalTitle"), $ajaxResponse->getParameter("extensionData"));
     // get the desired WMC from the database
     $wmcId = $ajaxResponse->getParameter("id");
     $wmcXml = wmc::getDocument($wmcId);
     // merge the two WMCs
     $currentWmc->append($wmcXml);
     // load the merged WMC
     $jsArray = $currentWmc->toJavaScript();
     if (is_array($jsArray) && count($jsArray) > 0) {
         $resultObj["javascript"] = $jsArray;
         $ajaxResponse->setResult($resultObj);
         $ajaxResponse->setSuccess(true);
     } else {
         $ajaxResponse->setMessage(_mb("WMC could not be appended."));
         $ajaxResponse->setSuccess(false);
     }
     break;
 case 'setWMCPublic':
     $wmcId = $ajaxResponse->getParameter("id");
     $public = $ajaxResponse->getParameter("isPublic") == 1 ? true : false;
     $wmc = new wmc();
     $wmc->createFromDb($wmcId);
     if ($wmc->setPublic($public)) {
    $wmcJs = $wmcGetApi->toJavaScript(array());
    $wmcJs = implode(";\n", $wmcJs);
    $extentJs = $wmcGetApi->extentToJavaScript();
    $output[] = <<<JS
\t\tMapbender.events.afterInit.register(function () {
\t\t\t{$wmcJs};
\t\t});
\t\tMapbender.events.beforeInit.register(function () {
\t\t\t{$extentJs}
\t\t});
JS;
    Mapbender::session()->delete("wmcGetApi", $wmcGetApi);
} else {
    Mapbender::session()->set("wmcConstraints", $resultObj);
    $output = $wmc->wmsToJavaScript();
    $wmcJs = $wmc->toJavaScript(array());
    $wmcJs = implode(";\n", $wmcJs);
    $extentJs = $wmc->extentToJavaScript();
    $output[] = <<<JS
\t\tMapbender.events.afterInit.register(function () {
\t\t\t{$wmcJs};
\t\t});
\t\tMapbender.events.beforeInit.register(function () {
\t\t\t{$extentJs}
\t\t});
JS;
    Mapbender::session()->set("wmcGetApi", $wmcGetApi);
}
$outputString = "";
for ($i = 0; $i < count($output); $i++) {
    $outputString .= administration::convertOutgoingString($output[$i]);