/** * Creates WMC 1.1.0 objects from an XML document. * * @return wmc * @param $xml String */ public function createFromXml($xml) { try { $wmc = new wmc(); $wmc->createFromXml($xml); } catch (Exception $e) { throw new Exception("Could not create WMC from XML."); } return $wmc; }
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(true); break; } } $ajaxResponse->setMessage(_mb("WMC could not be loaded.")); $ajaxResponse->setSuccess(false); break; case 'loadWmcFromFile': $serverFilename = $ajaxResponse->getParameter("filename"); $wmc = new wmc(); $wmcDoc = file_get_contents(TMPDIR . "/" . $serverFilename); if (!$wmcDoc) { $ajaxResponse->setMessage(_mb("WMC could not be loaded.")); $ajaxResponse->setSuccess(false); } $wmc->createFromXml($wmcDoc); $updatedWMC = $wmc->updateUrlsFromDb(); $wmc->createFromXml($updatedWMC); $jsArray = $wmc->toJavaScript(); if ($jsArray) { $resultObj["javascript"] = $jsArray; $ajaxResponse->setResult($resultObj); $ajaxResponse->setSuccess(true); } else { $ajaxResponse->setMessage(_mb("WMC could not be loaded.")); $ajaxResponse->setSuccess(false); } break; // merges data with WMC and loads it (returns array of JS code) // merges data with WMC and loads it (returns array of JS code) case "mergeWmc":
/** * Appends the layers of another WMC to this WMC. * * @return void * @param $xml2 Object */ public function append($xml2) { $someWmc = new wmc(); $someWmc->createFromXml($xml2); $this->mainMap->append($someWmc->mainMap); if (isset($this->overviewMap) && isset($someWmc->overviewMap)) { // There is only one WMS in the overview map; merge, not append $this->overviewMap->merge($someWmc->overviewMap); } }
// $wmc = new wmc(); $app = Mapbender::session()->get("mb_user_gui"); //$wmcDocSession = Mapbender::session()->get("mb_wmc"); $wmcDocSession = false; if (Mapbender::session()->get("mb_wmc")) { $wmc_filename = Mapbender::session()->get("mb_wmc"); $wmcDocSession = file_get_contents($wmc_filename); } try { $loadFromSession = new ElementVar($app, "loadwmc", "loadFromSession"); if ($wmcDocSession && $loadFromSession->value === "1") { //check if session contains a wmc, //otherwise create a new wmc from application $e = new mb_notice("trying to load session WMC..."); if (!$wmc->createFromXml($wmcDocSession)) { $e = new mb_notice("loading session WMC failed."); $e = new mb_notice("creating wmc from app: " . $app); $wmc->createFromApplication($app); } } else { $e = new mb_notice("loading from session WMC disabled in loadwmc or no session WMC set."); $e = new mb_notice("creating wmc from app: " . $app); $wmc->createFromApplication($app); } } catch (Exception $e) { $e = new mb_notice("creating wmc from app: " . $app); $wmc->createFromApplication($app); } // // create new WMC with services from GET API