--- /dev/null
+; This file is part of Syj, Copyright (c) 2010 Arnaud Renevier,
+; and is published under the AGPL license. */
+[production]
+scripts.idx = OpenLayers, ModifiablePath, prototype, simplebox, utils, syj
+scripts.rawidx = OpenLayers, syjraw
+scripts.login = prototype, utils, login
+scripts.contact = prototype, utils, contact
+scripts.newpwd = prototype, utils, newpwd
+scripts.list = OpenLayers, prototype, utils, list
+scripts.account = prototype, utils, account
+
+[development:production]
public function init() {
$this->_helper->SyjSession->needsLogin();
+ $this->_helper->SyjMedias->addScripts('account');
- $this->view->headScript()->appendFile('js/prototype.js');
- $this->view->headScript()->appendFile('js/utils.js');
- $this->view->headScript()->appendFile('js/account.js');
$this->view->headLink()->appendStylesheet('css/generic.css', 'all');
$this->view->headLink()->appendStylesheet('css/account.css', 'all');
$this->view->headTitle($this->view->translate("my account"));
{
public function init() {
- $this->view->headScript()->appendFile('js/prototype.js');
- $this->view->headScript()->appendFile('js/utils.js');
- $this->view->headScript()->appendFile('js/contact.js');
+ $this->_helper->SyjMedias->addScripts('contact');
$this->view->headLink()->appendStylesheet('css/generic.css', 'all');
$this->view->headLink()->appendStylesheet('css/contact.css', 'all');
$this->view->headTitle($this->view->translate("contact form"));
{
public function init() {
- $this->view->headScript()->appendFile('js/OpenLayers.js');
- $this->view->headScript()->appendFile('js/ModifiablePath.js');
- $this->view->headScript()->appendFile('js/prototype.js');
- $this->view->headScript()->appendFile('js/simplebox.js');
- $this->view->headScript()->appendFile('js/utils.js');
- $this->view->headScript()->appendFile('js/syj.js');
+ $this->_helper->SyjMedias->addScripts('idx');
$this->view->headLink()->appendStylesheet('css/openlayers/style.css', "all");
$this->view->headLink()->appendStylesheet('css/generic.css', "all");
$this->view->headLink()->appendStylesheet('css/syj.css', "all");
public function rawmode(Syj_Model_Path $path) {
$this->_helper->SyjReset->resetPlaceHolders();
+ $this->_helper->SyjMedias->addScripts('syjraw');
$this->view->headLink()->appendStylesheet('css/generic.css', 'all');
$this->view->headLink()->appendStylesheet('css/syjraw.css', 'all');
- $this->view->headScript()->appendFile('js/OpenLayers.js');
- $this->view->headScript()->appendFile('js/syjraw.js');
$this->view->headTitle($path->displayTitle);
$this->_jsRawLocaleStrings();
public function init() {
$this->_helper->SyjSession->needsLogin();
- $this->view->headScript()->appendFile('js/OpenLayers.js');
- $this->view->headScript()->appendFile('js/prototype.js');
- $this->view->headScript()->appendFile('js/utils.js');
- $this->view->headScript()->appendFile('js/list.js');
+ $this->_helper->SyjMedias->addScripts('list');
$this->view->headLink()->appendStylesheet('css/generic.css', 'all');
$this->view->headLink()->appendStylesheet('css/list.css', 'all');
{
public function init() {
$this->view->headTitle($this->view->translate("login"));
- $this->view->headScript()->appendFile('js/prototype.js');
- $this->view->headScript()->appendFile('js/utils.js');
- $this->view->headScript()->appendFile('js/login.js');
+ $this->_helper->SyjMedias->addScripts('login');
$this->view->headLink()->appendStylesheet('css/generic.css', 'all');
$this->view->headLink()->appendStylesheet('css/login.css', 'all');
}
{
public function init() {
- $this->view->headScript()->appendFile('js/prototype.js');
- $this->view->headScript()->appendFile('js/newpwd.js');
- $this->view->headScript()->appendFile('js/utils.js');
+ $this->_helper->SyjMedias->addScripts('newpwd');
$this->view->headLink()->appendStylesheet('css/generic.css', 'all');
$this->view->headLink()->appendStylesheet('css/newpwd.css', 'all');
}
--- /dev/null
+<?php
+/* This file is part of Syj, Copyright (c) 2010 Arnaud Renevier,
+ and is published under the AGPL license. */
+
+class Syj_Controller_Action_Helper_SyjMedias extends Zend_Controller_Action_Helper_Abstract
+{
+ protected $_config;
+
+ public function init() {
+ $this->_config = new Zend_Config_Ini(APPLICATION_PATH . '/configs/medias.ini', APPLICATION_ENV);
+ }
+
+ public function addScripts($action) {
+ $view = $this->getActionController()->view;
+ if (APPLICATION_ENV == "production") {
+ $view->headScript()->appendFile('js/' . $action . '.js');
+ return;
+ }
+ $scripts = explode(',', $this->_config->get('scripts')->get($action));
+ foreach ($scripts as $name) {
+ $view->headScript()->appendFile('js/' . trim($name) . '.js');
+ }
+ }
+}