X-Git-Url: https://dev.renevier.net/?a=blobdiff_plain;f=application%2Fcontrollers%2FIdxController.php;h=997be3d5abbde3d8e62782972efe25cb63296aa9;hb=00c2579ade64a20ba2d82e98d3eea5f864864cdb;hp=d0fa248f7c3bb4d8deb7f7ed2b521912aca29d2c;hpb=4022a532856c006efc57fbd8830bde4607c0114d;p=syj.git diff --git a/application/controllers/IdxController.php b/application/controllers/IdxController.php index d0fa248..997be3d 100644 --- a/application/controllers/IdxController.php +++ b/application/controllers/IdxController.php @@ -7,20 +7,15 @@ class IdxController extends Zend_Controller_Action public function init() { $this->_helper->SyjMedias->addScripts('idx'); - $this->view->headLink()->appendStylesheet('css/olstyle.css', "all"); - $this->view->headLink()->appendStylesheet('css/generic.css', "all"); - $this->view->headLink()->appendStylesheet('css/syj.css', "all"); - $this->view->headLink()->appendStylesheet('css/syjprint.css', "print"); - $this->view->headMeta()->appendName('viewport', 'width=640px'); + $this->_helper->SyjMedias->addStyleSheets('idx'); + $this->view->headMeta()->appendName('viewport', 'width=640'); } public function rawmode(Syj_Model_Path $path) { $this->_helper->SyjReset->resetPlaceHolders(); $this->_helper->SyjMedias->addScripts('rawidx'); + $this->_helper->SyjMedias->addStyleSheets('rawidx'); - $this->view->headLink()->appendStylesheet('css/generic.css', "screen"); - $this->view->headLink()->appendStylesheet('css/syjraw.css', "screen"); - $this->view->headLink()->appendStylesheet('css/syjprint.css', "print"); $this->view->headTitle($path->displayTitle); $this->_jsRawLocaleStrings(); @@ -64,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"; @@ -220,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; + } + } + }