Exemple #1
0
 public function bookjsonAction()
 {
     Zend_Loader::loadClass("Document");
     Zend_Loader::loadClass("GazetteerRefs");
     $this->_helper->viewRenderer->setNoRender();
     $requestParams = $this->_request->getParams();
     $host = App_Config::getHost();
     $output = array("found" => $requestParams);
     $GazetteerRefsObj = new GazetteerRefs();
     $GazetteerRefsObj->updatePleiadesCoordsData();
     if (isset($requestParams['id'])) {
         $docID = $requestParams['id'];
         $docObj = new Document();
         $data = $docObj->getGapVisDataByID($docID);
         if (!$data) {
             $this->view->requestURI = $this->_request->getRequestUri();
             return $this->render('404error');
         }
         unset($docObj);
         $output = Zend_Json::encode($data);
         if (isset($requestParams["callback"])) {
             header('Content-Type: application/javascript; charset=utf8');
             $output = $requestParams["callback"] . "(" . $output . ");";
             echo $output;
         } else {
             header('Content-Type: application/json; charset=utf8');
             header("Access-Control-Allow-Origin: *");
             echo $output;
             //outputs JSON of a given book's word cloud
         }
     }
 }
 public function placejsonAction()
 {
     $this->_helper->viewRenderer->setNoRender();
     $requestParams = $this->_request->getParams();
     Zend_Loader::loadClass("GazetteerRefs");
     $data = false;
     $gazObj = new GazetteerRefs();
     if (isset($requestParams["IDgazURI"])) {
         $IDgazURI = $requestParams["IDgazURI"];
         $data = $gazObj->getGapVisPlace($IDgazURI);
     }
     if (!$data) {
         $this->view->requestURI = $this->_request->getRequestUri();
         return $this->render('404error');
     } else {
         $output = Zend_Json::encode($data);
     }
     if (isset($requestParams["callback"])) {
         header('Content-Type: application/javascript; charset=utf8');
         $output = $requestParams["callback"] . "(" . $output . ");";
         echo $output;
     } else {
         header('Content-Type: application/json; charset=utf8');
         header("Access-Control-Allow-Origin: *");
         echo $output;
         //outputs JSON of a given book's word cloud
     }
 }
Exemple #3
0
 function getGapVisWithPlaceURI($uri)
 {
     $db = $this->startDB();
     $gazObj = new GazetteerRefs();
     $IDgazURI = $gazObj->URIgetID($uri);
     $data = $this->getGapVisWithPlaceID($IDgazURI);
     return $data;
 }
Exemple #4
0
 function storeGazetteerRefs($xmlString)
 {
     //$xmlString is the xml of the gazetter refs
     $output = false;
     $gazObj = new GazetteerRefs();
     //class for manipulating tokens in the database
     $documentIn = $gazObj->checkDocumentDone($this->docID);
     @($xml = simplexml_load_string($xmlString));
     unset($xmlString);
     if (!$documentIn && is_array($this->gazRbIDs) && $xml) {
         $output = array();
         foreach ($this->gazRbIDs as $gazRbID => $DBtokenID) {
             //search through gazetteer references from the JSON result to get data about discovered source-refs
             $sourceFound = false;
             $data = false;
             foreach ($xml->xpath("//placename[@id = '{$gazRbID}']") as $placeName) {
                 $latitude = false;
                 $longitude = false;
                 $gazetteer = false;
                 $unlockRef = false;
                 $sourceRef = false;
                 $docName = false;
                 $gazName = false;
                 $rank = false;
                 foreach ($placeName->xpath("@name") as $xres) {
                     $docName = (string) $xres;
                 }
                 foreach ($this->sourceGazetteers as $prefGazetteer => $gazArray) {
                     if ($gazArray["xpathLimit"]) {
                         $query = "place[@gazetteer = '{$prefGazetteer}' or @rank = '1']";
                     } else {
                         $query = "place";
                     }
                     foreach ($placeName->xpath($query) as $place) {
                         foreach ($place->xpath("@gazetteer") as $xres) {
                             $gazetteer = (string) $xres;
                         }
                         foreach ($place->xpath("@lat") as $xres) {
                             $latitude = (string) $xres;
                         }
                         foreach ($place->xpath("@long") as $xres) {
                             $longitude = (string) $xres;
                         }
                         foreach ($place->xpath("@gazref") as $xres) {
                             $unlockRef = (string) $xres;
                         }
                         foreach ($place->xpath("@source-gazref") as $xres) {
                             $sourceRef = (string) $xres;
                         }
                         foreach ($place->xpath("@name") as $xres) {
                             $gazName = (string) $xres;
                         }
                         foreach ($place->xpath("@rank") as $xres) {
                             $rank = (string) $xres;
                         }
                         break;
                     }
                     if ($unlockRef != false) {
                         break;
                         //stop if we've found a place
                     }
                 }
                 //end loop through preferred gazetteers
                 if ($unlockRef != false) {
                     $uri = $this->generateGazetteerURI($sourceRef, $unlockRef, $gazetteer);
                     $uriID = $gazObj->URIgetMakeID($uri);
                     $data = array("docID" => $this->docID, "tokenID" => $DBtokenID, "batchID" => $this->batchID, "gazRef" => $gazRbID, "unlockRef" => $unlockRef, "sourceRef" => $sourceRef, "latitude" => $latitude, "longitude" => $longitude, "docName" => $docName, "gazName" => $gazName, "uriID" => $uriID);
                     $gazRefID = $gazObj->addRecord($data);
                     $output[] = $gazRefID;
                 }
             }
         }
         // end loop through the source-refs found with the tokens
     }
     return $output;
 }
Exemple #5
0
 function alterTokenPlace($tokenID, $placeURI, $note)
 {
     $output = false;
     $db = $this->startDB();
     $tokensObj = new Tokens();
     $tokenData = $tokensObj->getTokenByID($tokenID);
     if (is_array($tokenData)) {
         $token = $tokenData["token"];
         $paraID = $tokenData["paraID"];
         $pageID = $tokenData["pageID"];
         $docID = $tokenData["docID"];
         $data = array("active" => false, "issueType" => "Place URI change", "oldID" => 0, "docID" => $docID, "pageID" => $pageID, "placeID" => 0, "tokenID" => $tokenID, "note" => $note);
         $gazRefObj = new GazetteerRefs();
         $ok = $gazRefObj->updatePlaceReference($tokenID, $docID, $placeURI);
         if (!$ok) {
             $data["active"] = true;
             $data["note"] .= " Errors: " . implode(" ", $gazRefObs->errors);
         }
         try {
             $db->insert("gap_issues", $data);
             $this->lastIssueID = $db->lastInsertId();
             $output = true;
         } catch (Exception $e) {
         }
     }
 }
 public function searchAction()
 {
     $requestParams = $this->_request->getParams();
     Zend_Loader::loadClass("Issues");
     Zend_Loader::loadClass("Tokens");
     Zend_Loader::loadClass("Document");
     Zend_Loader::loadClass("GazetteerRefs");
     Zend_Loader::loadClass("GazetteerURIs");
     $docID = 1;
     //default to the first doc
     $relatedPlaceTokens = false;
     $placeURIs = false;
     $foundTokens = false;
     if (isset($requestParams["uri"])) {
         $this->view->searchTerm = $requestParams["uri"];
         $this->view->searchType = "Place URI";
         $tokensObj = new Tokens();
         //$tokensObj->tokenStructure($docID);
         $relatedPlaceTokens = $tokensObj->getUniqueTokensFromPlaceURI($requestParams["uri"]);
         if (isset($requestParams["docID"])) {
             if (strlen($requestParams["docID"]) > 0) {
                 $docID = $requestParams["docID"];
             }
         }
         $gazRefObj = new GazetteerRefs();
         $placeURIs = $gazRefObj->getListofURIs($docID);
     } elseif (isset($requestParams["q"])) {
         $searchTerm = $requestParams["q"];
         $this->view->searchTerm = $searchTerm;
         $this->view->searchType = "Token String";
         $startPage = false;
         $endPage = false;
         $structure = false;
         $page = 1;
         //default for paging through requests
         if (isset($requestParams["docID"])) {
             if (strlen($requestParams["docID"]) > 0) {
                 $docID = $requestParams["docID"];
             }
         }
         if (isset($requestParams["startPage"])) {
             if (strlen($requestParams["startPage"]) > 0) {
                 $startPage = $requestParams["startPage"];
             }
         }
         if (isset($requestParams["endPage"])) {
             if (strlen($requestParams["endPage"]) > 0) {
                 $endPage = $requestParams["endPage"];
             }
         }
         if (isset($requestParams["endPage"])) {
             if (strlen($requestParams["endPage"]) > 0) {
                 $endPage = $requestParams["endPage"];
             }
         }
         if (isset($requestParams["page"])) {
             if (strlen($requestParams["page"]) > 0) {
                 $page = $requestParams["page"];
             }
         }
         $tokensObj = new Tokens();
         $foundTokens = $tokensObj->getTokensByToken($searchTerm, $docID, $page, $startPage, $endPage, $structure);
     }
     $this->view->docID = $docID;
     $this->view->requestParams = $requestParams;
     $this->view->relatedPlaceTokens = $relatedPlaceTokens;
     $this->view->placeURIs = $placeURIs;
     $this->view->foundTokens = $foundTokens;
 }