setSuccess(false); $ajaxResponse->setMessage($message); $ajaxResponse->send(); die; }; function getWmc ($wmcId = null) { $user = new User(Mapbender::session()->get("mb_user_id")); $wmcIdArray = $user->getWmcByOwner(); //getAccessibleWmcs(); if (!is_null($wmcId) && !in_array($wmcId, $wmcIdArray)) { abort(_mb("You are not allowed to access this WMC.")); } return $wmcIdArray; } switch ($ajaxResponse->getMethod()) { case "getWmc" : $wmcIdArray = getWmc(); $wmcList = implode(",", $wmcIdArray); $sql = << array( "WMC ID", "Titel", "Timestamp", "Load Count", "" ), "data" => array() ); while ($row = db_fetch_row($res)) { // convert NULL to '', NULL values cause datatables to crash $walk = array_walk($row, create_function('&$s', '$s=strval($s);')); $link = ""._mb("Metadata").""; array_push($row, $link); $resultObj["data"][]= $row; } $ajaxResponse->setResult($resultObj); $ajaxResponse->setSuccess(true); break; case "getWmcMetadata" : $wmcId = $ajaxResponse->getParameter("id"); $sql = <<get("mb_lang")."&resource=wmc&id=".$row['wmc_id']; $keywordSql = <<setResult($resultObj); $ajaxResponse->setSuccess(true); break; case "save": global $firephp; $data = $ajaxResponse->getParameter("data"); try { $wmcId = intval($data->wmc->wmc_id); } catch (Exception $e) { $ajaxResponse->setSuccess(false); $ajaxResponse->setMessage(_mb("Invalid WMC ID.")); $ajaxResponse->send(); } $wmcFactory = new WmcFactory(); $wmc = $wmcFactory->createFromDb($wmcId); if (is_null($wmc)) { $ajaxResponse->setSuccess(false); $ajaxResponse->setMessage(_mb("Invalid WMC ID.")); $ajaxResponse->send(); } $columns = array( "wmc_abstract", "wmc_title", "wmc_keyword", "isoTopicCats", "inspireCats", "customCats", "public" ); foreach ($columns as $c) { $value = $data->wmc->$c; if ($c === "wmc_keyword") { $wmc->$c = explode(",", $value); foreach ($wmc->$c as &$val) { $val = trim($val); } if(!$value) { $wmc->$c = array(); } } elseif ($c === "isoTopicCats" || $c === "inspireCats" || $c === "customCats" ) { if (!is_array($value)) { if(!$value) { $wmc->$c = array(); } else { $wmc->$c = array($value); } } else { $wmc->$c = $value; } } elseif ($c === "public") { $public = $value == "on" ? true : false; $wmc->setPublic($public); } else { if (!is_null($value)) { $wmc->$c = $value; } } } //$firephp->log($wmc->public); $overwrite = 1; $wmc->insert($overwrite); $ajaxResponse->setMessage("Updated WMC metadata for ID " . $wmcId); $ajaxResponse->setSuccess(true); break; default: $ajaxResponse->setSuccess(false); $ajaxResponse->setMessage(_mb("An unknown error occured.")); break; } $ajaxResponse->send(); ?>