protected function error($msg) { $this->setNoRender(); $this->_request->setDispatched(true); if ($this->_request->isXmlHttpRequest()) { $arp = new AjaxResponse(); $arp->setStatus(AjaxResponse::STATUS_FAILED); $arp->setMessage($msg); $this->json($arp); } else { $this->view->msg = $msg; $this->renderScript('common/error.phtml'); } }
# # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. require_once dirname(__FILE__) . "/../../core/globalSettings.php"; require_once dirname(__FILE__) . "/../classes/class_gml2.php"; require_once dirname(__FILE__) . "/../classes/class_json.php"; $ajaxResponse = new AjaxResponse($_POST); if ($ajaxResponse->getMethod() != "createUsemap") { $ajaxResponse->setSuccess(false); $ajaxResponse->setMessage("method invalid"); $ajaxResponse->send(); exit; } $url = $ajaxResponse->getParameter('url'); //urldecode($_REQUEST["url"]); $g = new gml2(); $g->parsegml($url); $um_title = array(); $um_x = array(); $um_y = array(); for ($i = 0; $i < $g->getMemberCount(); $i++) { $um_title[] = utf8_decode($g->getValueBySeparatedKey($i, "name")); $um_x[] = $g->getXfromMemberAsString($i, 0); $um_y[] = $g->getYfromMemberAsString($i, 0); }
* @security_patch sqli done */ $sqlMinx = "SELECT X(transform(GeometryFromText('POINT(" . pg_escape_string($x) . " " . pg_escape_string($y) . ")'," . pg_escape_string($oldEPSG) . ")," . pg_escape_string($newEPSG) . ")) as minx"; $resMinx = pg_query($con, $sqlMinx); $minx = floatval(pg_fetch_result($resMinx, 0, "minx")); $sqlMiny = "SELECT Y(transform(GeometryFromText('POINT(" . pg_escape_string($x) . " " . pg_escape_string($y) . ")'," . pg_escape_string($oldEPSG) . ")," . pg_escape_string($newEPSG) . ")) as miny"; $resMiny = pg_query($con, $sqlMiny); $miny = floatval(pg_fetch_result($resMiny, 0, "miny")); } return array("x" => $minx, "y" => $miny); } switch ($ajaxResponse->getMethod()) { case "transform": if (!Mapbender::postgisAvailable()) { $ajaxResponse->setSuccess(false); $ajaxResponse->setMessage(_mb("PostGIS is not available. Please contact the administrator.")); $ajaxResponse->send(); } $fromSrs = $ajaxResponse->getParameter("fromSrs"); $toSrs = $ajaxResponse->getParameter("toSrs"); $x = $ajaxResponse->getParameter("x"); $y = $ajaxResponse->getParameter("y"); $bboxStr = $ajaxResponse->getParameter("bbox"); $bbox = explode(",", $bboxStr); $response = null; $oldEPSG = preg_replace("/EPSG:/", "", $fromSrs); $newEPSG = preg_replace("/EPSG:/", "", $toSrs); if (!is_null($bbox) && is_array($bbox) && count($bbox) === 4) { $response = array("newSrs" => $toSrs, "points" => array()); for ($i = 0; $i < count($bbox); $i += 2) { $pt = transform(floatval($bbox[$i]), floatval($bbox[$i + 1]), $oldEPSG, $newEPSG);
/** * Set the response expired * * @param bool $inAjax * * @return void */ protected function response_expired($inAjax) { $message = "Your current session with this application has expired. Please refresh your browser window to continue."; if ($inAjax) { $ajax = new AjaxResponse(); $ajax->setMessage($message); echo json_encode($ajax->m); } else { echo $message; } }
$fileId = createFile($data); $e = new mb_exception("fileid " . $fileId); if ($fileId == false) { throw new Exception("Could not create file"); } $url = "../tmp/{$fileId}"; $result = array('url' => $url); break; default: throw new Exception("method invalid"); } $ajaxResponse->setSuccess(true); $ajaxResponse->setResult($result); } catch (Exception $E) { $ajaxResponse->setSuccess(false); $ajaxResponse->setMessage($E->getMessage() . " [" . $E->getLine() . "]"); } $ajaxResponse->send(); } else { if ($_SERVER['REQUEST_METHOD'] == "GET") { ob_start(); $fileid = $_GET['file']; header("Content-Type", "application/x-json"); header("Content-Disposition", "attachment; filename=\"" . $filename . "\""); $result = file_get_contents(realpath(dirname(__FILE__) . "/../../http/tmp/{$id}")); print $result; ob_end_flush(); } } function createFile($data) {
$resultObj["original_featuretype_keyword"] = implode(", ", $keywords); } } return $resultObj; } switch ($ajaxResponse->getMethod()) { case "getOriginalMetadata": $wfsId = $ajaxResponse->getParameter("id"); $featuretypeName = $ajaxResponse->getParameter("featuretypeName"); $sql = <<<SQL \t SELECT wfs_getcapabilities_doc FROM wfs WHERE wfs_id = {$wfsId}; SQL; $res = db_query($sql); $row = db_fetch_array($res); $wfs_getcapabilities_doc = $row["wfs_getcapabilities_doc"]; if ($featuretypeName != "") { $resultObj = getFeaturetypeMetadataFromXml($wfs_getcapabilities_doc, $featuretypeName); } else { $resultObj = getWfsMetadataFromXml($wfs_getcapabilities_doc); } $ajaxResponse->setResult($resultObj); $ajaxResponse->setSuccess(true); break; default: $ajaxResponse->setSuccess(false); $ajaxResponse->setMessage(_mb("An unknown error occured.")); break; } $ajaxResponse->send();
$myLayer = $ajaxResponse->getParameter('layer'); $myWfsConf = $ajaxResponse->getParameter('wfsConf'); try { switch ($ajaxResponse->getMethod()) { case "getWfsConfs": $result = getWfsConfs($myGui); $ajaxResponse->setSuccess(true); $ajaxResponse->setResult($result); break; case "saveLayerWfsConnection": $result = saveLayerWfsConnection($myWfsConf, $myGui, $myLayer); if ($result === true) { $ajaxResponse->setSuccess(true); } else { $ajaxResponse->setSuccess(false); $ajaxResponse->setMessage("An error occured performing UPDATE"); } break; default: $ajaxResponse->setSuccess(false); $ajaxResponse->setMessage("method invalid"); } } catch (Exception $E) { $ajaxResponse->setSuccess(false); $ajaxResponse->setMessage("An error occured"); $e = new mb_exception("mod_wfsLayerObj_conf.php: " . $E->getMessage()); } $ajaxResponse->send(); function getWfsConfs($myGui) { $user = new User($_SESSION["mb_user_id"]);
# This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. require dirname(__FILE__) . "/mb_validateSession.php"; $epsgObj = array(); $ajaxResponse = new AjaxResponse($_POST); switch ($ajaxResponse->getMethod()) { case "changeEpsg": if (!Mapbender::postgisAvailable()) { $ajaxResponse->setSuccess(false); $ajaxResponse->setMessage(_mb("PostGIS is not available. Please contact the administrator.")); $ajaxResponse->send(); } $epsgArray = $ajaxResponse->getParameter("srs"); $newSrs = $ajaxResponse->getParameter("newSrs"); for ($i = 0; $i < count($epsgArray); $i++) { // check if parameters are valid geometries to // avoid SQL injections $currentEpsg = $epsgArray[$i]; $oldEPSG = preg_replace("/EPSG:/", "", $currentEpsg->epsg); $newEPSG = preg_replace("/EPSG:/", "", $newSrs); $extArray = explode(",", $currentEpsg->extent); if (is_numeric($extArray[0]) && is_numeric($extArray[1]) && is_numeric($extArray[2]) && is_numeric($extArray[3]) && is_numeric($oldEPSG) && is_numeric($newEPSG)) { $con = db_connect($DBSERVER, $OWNER, $PW); $sqlMinx = "SELECT X(transform(GeometryFromText('POINT(" . $extArray[0] . " " . $extArray[1] . ")'," . $oldEPSG . ")," . $newEPSG . ")) as minx"; $resMinx = db_query($sqlMinx);
require_once dirname(__FILE__) . "/../classes/class_administration.php"; $ajaxResponse = new AjaxResponse($_POST); $json = new Mapbender_JSON(); $currentUser = new User(); $wmc = new wmc(); $resultObj = array(); switch ($ajaxResponse->getMethod()) { case 'checkConstraints': $resultObj = Mapbender::session()->get("wmcConstraints"); $ajaxResponse->setResult($resultObj); $ajaxResponse->setSuccess(true); break; case 'deleteWmc': if (Mapbender::session()->exists("mb_wmc")) { Mapbender::session()->delete("mb_wmc"); $ajaxResponse->setMessage(_mb("WMC in session reset.")); $ajaxResponse->setSuccess(true); } else { $ajaxResponse->setMessage(_mb("No WMC in session found.")); $ajaxResponse->setResult($resultObj); $ajaxResponse->setSuccess(false); } break; case 'updateWmc': if (!Mapbender::session()->exists("wmcGetApi") || !is_a(Mapbender::session()->get("wmcGetApi"), "wmc")) { $ajaxResponse->setMessage(_mb("No WMC in session.")); $ajaxResponse->setSuccess(true); break; } $wmc = Mapbender::session()->get("wmcGetApi"); $skipWms = $ajaxResponse->getParameter("wmsIndices");
/* * License: * Copyright (c) 2009, Open Source Geospatial Foundation * This program is dual licensed under the GNU General Public License * and Simplified BSD license. * http://svn.osgeo.org/mapbender/trunk/mapbender/license/license.txt */ require_once dirname(__FILE__) . "/../php/mb_validateSession.php"; require_once dirname(__FILE__) . "/../classes/class_administration.php"; require_once dirname(__FILE__) . "/../classes/class_wmc.php"; require_once dirname(__FILE__) . "/../classes/class_json.php"; require_once dirname(__FILE__) . "/../classes/class_lzw_decompress.php"; $ajaxResponse = new AjaxResponse($_POST); if ($ajaxResponse->getMethod() != "saveWMC") { $ajaxResponse->setSuccess(false); $ajaxResponse->setMessage("method invalid"); $ajaxResponse->send(); exit; } $json = new Mapbender_JSON(); // get data from POST and SESSION $userId = Mapbender::session()->get("mb_user_id"); $mapObject = $ajaxResponse->getParameter('mapObject'); $lzwCompressed = $ajaxResponse->getParameter('lzwCompressed'); $saveInSession = $ajaxResponse->getParameter('saveInSession'); $extensionData = $json->decode($ajaxResponse->getParameter('extensionData')); $attributes = $ajaxResponse->getParameter('attributes'); $overwrite = $ajaxResponse->getParameter('overwrite'); $overwrite = $overwrite == "1" ? true : false; //for debugging, write mapObject to file if ($lzwCompressed == 'true') {
<?php require_once dirname(__FILE__) . "/../../core/globalSettings.php"; require_once dirname(__FILE__) . "/../classes/class_connector.php"; require_once dirname(__FILE__) . "/../classes/class_administration.php"; require_once dirname(__FILE__) . "/../classes/class_stripRequest.php"; require_once dirname(__FILE__) . "/../classes/class_weldMaps2JPEG.php"; $ajaxResponse = new AjaxResponse($_REQUEST); $wmcId = $ajaxResponse->getParameter("wmcId"); $mapUrls = $ajaxResponse->getParameter("mapUrls"); if (!$wmcId) { $ajaxResponse->setSuccess(false); $ajaxResponse->setMessage('wmcId not set'); $ajaxResponse->send(); } if (!$mapUrls) { $ajaxResponse->setSuccess(false); $ajaxResponse->setMessage('mapURLs not set'); $ajaxResponse->send(); } switch ($ajaxResponse->getMethod()) { case "saveWmcPreview": //check if all urls have been send - sometimes only false is send - then delete this entry! //loop $mapUrlsNew = array(); $problemUrls = array(); for ($i = 0; $i < count($mapUrls); $i++) { if ($mapUrls[$i] != 'false') { $mapUrlsNew[] = $mapUrls[$i]; } else { $problemUrls[] = $i;
public function signInAction() { if (!$this->_request->isXmlHttpRequest()) { return; } $arp = new AjaxResponse(); $arp->setStatus(AjaxResponse::STATUS_FAILED); $email = trim($this->_getParam('email')); $password = trim($this->_getParam('password')); if (empty($email) || empty($password)) { $arp->setMessage('E-mail and password can not be empty.'); $this->json($arp); return; } $hashedPassword = hash('sha256', $password); $user = new Model_User($email); if (!$user->exists() || $user->get('password') != $hashedPassword) { $arp->setMessage('Authentication failed, You entered an incorrect username, or password.'); $this->json($arp); return; } $this->setLoginCookie($email, $hashedPassword); $arp->setStatus(AjaxResponse::STATUS_OK); $this->json($arp); }
$json = new Mapbender_JSON(); $touObject = new tou(); //$currentUser = new User(); //$wmc = new wmc(); $resultObj = array(); //obj structure in session for acceptedTou (see class_tou.php): //acceptedTou { // wms [100,101,112], // wfs [12,34] // } switch ($ajaxResponse->getMethod()) { case 'checkAcceptedTou': $result = $touObject->check($ajaxResponse->getParameter("serviceType"), $ajaxResponse->getParameter("serviceId")); $ajaxResponse->setResult($result['accepted']); //1 or 0 $ajaxResponse->setMessage(_mb($result['message'])); $ajaxResponse->setSuccess(true); break; case 'setAcceptedTou': $serviceType = $ajaxResponse->getParameter("serviceType"); $serviceId = $ajaxResponse->getParameter("serviceId"); $result = $touObject->set($ajaxResponse->getParameter("serviceType"), $ajaxResponse->getParameter("serviceId")); $ajaxResponse->setResult($result['setTou']); //1 or 0 $ajaxResponse->setMessage(_mb($result['message'])); $ajaxResponse->setSuccess(true); break; // Invalid command // Invalid command default: $ajaxResponse->setMessage(_mb("No method specified."));
<?php require_once dirname(__FILE__) . "/../php/mb_validateSession.php"; require_once dirname(__FILE__) . "/../classes/class_json.php"; $ajaxResponse = new AjaxResponse($_POST); switch ($ajaxResponse->getMethod()) { case "createWPSRequest": $templatefilePath = realpath(dirname(__FILE__) . "/../../resources/wps_template.xml"); $parameters = $ajaxResponse->getParameter('attributes'); try { $result = createWPSRequest($parameters, $templatefilePath); $ajaxResponse->setSuccess(true); $ajaxResponse->setResult($result); } catch (Exception $E) { $ajaxResponse->setSuccess(true); $ajaxResponse->setMessage($E->getMessage); } break; default: $ajaxResponse->setSuccess(false); $ajaxResponse->setMessage("method invalid"); } $ajaxResponse->send(); /* * @params parameters an assoc array containing parameters with wich to create a WPS request * @return a WPS XML document */ function createWPSRequest($parameters, $templatefilePath) { // check and give parameters default values // need this collection to be subscriptable
try { switch ($method) { case "intersect": $geometries = $request->getParameter("geometries"); $clickPoint = $request->getparameter("clickPoint"); $resultGeometries = array(); $i = 0; foreach ($geometries as $geometry) { $sql = "SELECT ST_Intersects ('{$clickPoint}'::geometry, '{$geometry}'::geometry);"; $dbresult = db_query($sql); $row = db_fetch_array($dbresult); $result = $row["st_intersects"] == "f" ? false : true; if ($result) { $resultGeometries[$i] = $geometry; } $i++; } $request->setSuccess(true); $request->setResult(array("geometries" => $resultGeometries)); break; default: $e = new mb_exception(__FILE__ . ": RPC called with invalid Method '{$method}'"); $request->setSuccess(false); $request->setMessage(__FILE__ . ": RPC called with invalid Method '{$method}'"); } } catch (Exception $E) { $e = new mb_exception(__FILE__ . ": RPC failed. Exception: '{$E}'"); $request->setSuccess(false); $request->setMessage(__FILE__ . ": RPC failed. Exception: '{$E}'"); } $request->send();
require_once dirname(__FILE__) . "/../../http/classes/class_connector.php"; require_once dirname(__FILE__) . "/../../http/classes/class_administration.php"; require_once dirname(__FILE__) . "/../classes/class_weldMaps2JPEG.php"; //define("LAYER_PREVIEW_BASE","../tmp/layerpreviews/"); //define("LAYER_PREVIEW_BASE","../tmp/"); $ajaxResponse = new AjaxResponse($_REQUEST); $mapurl = $ajaxResponse->getParameter("mapurl"); $layerName = $ajaxResponse->getParameter("layerName"); $legendUrl = $ajaxResponse->getParameter("legendUrl"); $wmsId = $ajaxResponse->getParameter("wmsId"); $layerId = $ajaxResponse->getParameter("layerId"); $layerPreviewMapFileName = PREVIEW_DIR . "/" . $layerId . "_layer_map_preview.jpg"; $layerPreviewLegendFileName = PREVIEW_DIR . "/" . $layerId . "_layer_legend_preview.jpg"; if (!$mapurl) { $ajaxResponse->setSuccess(false); $ajaxResponse->setMessage('mapURL not set'); $ajaxResponse->send(); } /* if(!$legendurl){ $ajaxResponse->setSuccess(false); $ajaxResponse->setMessage('legendURL not set'); $ajaxResponse->send(); } */ if (!$wmsId) { $ajaxResponse->setSuccess(false); $ajaxResponse->setMessage('wmsId not set'); $ajaxResponse->send(); } if (!$layerName) {
protected function sendResult($result = '') { $arp = new AjaxResponse(); $arp->setStatus(AjaxResponse::STATUS_OK); $arp->setMessage($result); $this->json($arp); }
# You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. require_once dirname(__FILE__) . "/../../core/globalSettings.php"; require_once dirname(__FILE__) . "/../php/mb_validateSession.php"; require_once dirname(__FILE__) . "/../classes/class_json.php"; require_once dirname(__FILE__) . "/../classes/class_wfs_configuration.php"; require_once dirname(__FILE__) . "/../classes/class_wfs_conf.php"; $ajaxResponse = new AjaxResponse($_REQUEST); $command = $ajaxResponse->getMethod(); switch ($command) { case "getWfsConfsFromId": $wfsConfIdString = $ajaxResponse->getParameter("wfsConfIdString"); if (!$wfsConfIdString) { $ajaxResponse->setSuccess($false); $ajaxResponse->setMessage("missing wfsConfIdString"); $ajaxResponse->send(); break; } $wfsConfIdString = trim($wfsConfIdString, ','); $wfsConfIds = explode(',', $wfsConfIdString); $result = array(); foreach ($wfsConfIds as $wfsId) { $currentWfsConf = WfsConfiguration::createFromDb($wfsId); if ($currentWfsConf !== null) { $result[] = $currentWfsConf; } } $ajaxResponse->setResult($result); $ajaxResponse->send(); break;
# License: # Copyright (c) 2009, Open Source Geospatial Foundation # This program is dual licensed under the GNU General Public License # and Simplified BSD license. # http://svn.osgeo.org/mapbender/trunk/mapbender/license/license.txt require_once dirname(__FILE__) . "/../php/mb_validateSession.php"; require_once dirname(__FILE__) . "/../classes/class_gui.php"; require_once dirname(__FILE__) . "/../classes/class_user.php"; $ajaxResponse = new AjaxResponse($_POST); switch ($ajaxResponse->getMethod()) { case "sql": $application = new gui($ajaxResponse->getParameter("applicationId")); $user = new User(); $apps = $user->getApplicationsByPermission(); if (in_array($application->id, $apps)) { $sql = $application->toSql(); $resultObj = array("sql" => $sql); $ajaxResponse->setResult($resultObj); $ajaxResponse->setSuccess(true); break; } $ajaxResponse->setSuccess(false); $ajaxResponse->setMessage(_mb("You are not allowed to access this application.")); break; default: $ajaxResponse->setSuccess(false); $ajaxResponse->setMessage(_mb("An unknown error occured.")); break; } $ajaxResponse->send();
switch ($ajaxResponse->getMethod()) { // gets available WMCs case "getWmc": $showPublic = $ajaxResponse->getParameter("showPublic"); //$e = new mb_notice("mod_loadwmc_server.php: showPublic: ".$showPublic); $resultObj["wmc"] = $wmc->selectByUser($currentUser, $showPublic); $ajaxResponse->setResult($resultObj); $ajaxResponse->setSuccess(true); break; // gets XML document of a WMC // gets XML document of a WMC case "getWmcDocument": $wmcId = $ajaxResponse->getParameter("id"); $doc = $wmc->getDocument($wmcId); if (!$doc) { $ajaxResponse->setMessage(_mb("The WMC document could not be found.")); $ajaxResponse->setSuccess(false); } else { $resultObj["wmc"] = array("document" => $doc); $ajaxResponse->setResult($resultObj); $ajaxResponse->setSuccess(true); } break; // deletes a WMC // deletes a WMC case "deleteWmc": $wmcId = $ajaxResponse->getParameter("id"); if ($wmc->delete($wmcId, $userId)) { $ajaxResponse->setMessage(_mb("WMC has been deleted from the database.")); $ajaxResponse->setSuccess(true); } else {
$nodeArray[count($nodeArray) - 1]["right"] = ++$left; } return $nodeArray; } $nodeArray = addSubTree($rows, 0, 1); $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) {
SQL; $res = db_query($sql); while ($row = db_fetch_assoc($res)) { $resultObj["customCats"][] = $row["fkey_custom_category_id"]; } $ajaxResponse->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) {
public function orderConversationAction() { $this->view->sn = $sn = trim($this->_getParam('sn', '')); $lastId = intval(trim($this->_getParam('lastId', 0))); $getConversation = $this->_getParam('getConversation'); if (empty($getConversation)) { return; } $oc = new Model_OrderConversation(); $lastId = intval($lastId); $result = $oc->fetchPagedList(1, 999999, array(Db::RAW_WHERE_KEY => 'id>' . $lastId, 'sn' => $sn), 'id ASC')['rows']; $arp = new AjaxResponse(); $arp->setStatus(AjaxResponse::STATUS_OK); $arp->setMessage($result); $this->json($arp); }