X-Git-Url: https://dev.renevier.net/?a=blobdiff_plain;ds=sidebyside;f=application%2Fcontrollers%2FIdxController.php;h=997be3d5abbde3d8e62782972efe25cb63296aa9;hb=refs%2Fheads%2Fmaster;hp=d525d3439c32668b5f15957c3a8b267b4c490ed2;hpb=6a642fc4ff9526efe4ac180e53f356be79235c62;p=syj.git
diff --git a/application/controllers/IdxController.php b/application/controllers/IdxController.php
index d525d34..997be3d 100644
--- a/application/controllers/IdxController.php
+++ b/application/controllers/IdxController.php
@@ -8,7 +8,7 @@ class IdxController extends Zend_Controller_Action
public function init() {
$this->_helper->SyjMedias->addScripts('idx');
$this->_helper->SyjMedias->addStyleSheets('idx');
- $this->view->headMeta()->appendName('viewport', 'width=640px');
+ $this->view->headMeta()->appendName('viewport', 'width=640');
}
public function rawmode(Syj_Model_Path $path) {
@@ -59,6 +59,7 @@ class IdxController extends Zend_Controller_Action
$this->view->headScript()->prependScript((string) $jsgeom);
$this->view->loginform->login_geom_id->setValue((string)$path->id);
$this->view->geomform->geom_title->setValue($path->title);
+ $this->view->profileActive = $this->_hasAltiProfile($path);
} else {
$this->_setInitialPos();
$title = "Show your journey";
@@ -144,6 +145,7 @@ class IdxController extends Zend_Controller_Action
protected function _jsRawLocaleStrings() {
$this->view->jslocales = array(
'osmAttribution' => __("Map by OpenStreetMap"),
+ 'mapquestAttribution' => __("Map by MapQuest, OpenStreetMap and contributors, CC-BY-SA"),
);
}
@@ -169,6 +171,7 @@ class IdxController extends Zend_Controller_Action
'canResubmit' => __("Now, you can retry to save"),
'routeBy' => __("route by"),
'osmAttribution' => __("Map by OpenStreetMap"),
+ 'mapquestAttribution' => __("Map by MapQuest, OpenStreetMap and contributors, CC-BY-SA"),
'pseudoChecking' => __("checking availibilty"),
'availablePseudo' => __("available pseudo"),
'unavailablePseudo' => __("unavailable pseudo"),
@@ -213,4 +216,30 @@ class IdxController extends Zend_Controller_Action
return round($size) . $sizes[$c];
}
+ private function _hasAltiProfile($path) {
+ if (!extension_loaded('gd')) {
+ return false;
+ }
+ $cachefile = $path->getProfileCache('small');
+ if (file_exists($cachefile)) {
+ return filesize($cachefile) != 0;
+ }
+
+ try {
+ $service = $this->_helper->SyjAltiService->service();
+ } catch(Exception $e) {
+ return false;
+ }
+
+ try {
+ $path->getAltiProfile($service, 2 / 100);
+ return true;
+ } catch(Syj_Exception_NotImplemented $e) {
+ @touch($cachefile);
+ return false;
+ } catch(Exception $e) {
+ return false;
+ }
+ }
+
}