]> _ Git - cubeextranet.git/commitdiff
(no commit message)
authorvincent@cubedesigners.com <vincent@cubedesigners.com@f5622870-0f3c-0410-866d-9cb505b7a8ef>
Tue, 16 Mar 2010 13:25:18 +0000 (13:25 +0000)
committervincent@cubedesigners.com <vincent@cubedesigners.com@f5622870-0f3c-0410-866d-9cb505b7a8ef>
Tue, 16 Mar 2010 13:25:18 +0000 (13:25 +0000)
inc/ws/Controlleur/class.ws.flash.php
inc/ws/Metier/class.ws.book.parametres.php
inc/ws/Metier/class.ws.parametres.php
inc/ws/Metier/class.ws.theme.parametres.php

index 561bdde60b5c5bd9250fe68f261990169c7d93f9..cb7a8a5bd96baeaae199b0f91e65e0a0009aba8a 100644 (file)
@@ -150,6 +150,23 @@ class wsFlash extends cubeFlashGateway {
                        }\r
                }\r
        }\r
+\r
+       public function getForms()\r
+       {\r
+               global $core;\r
+               $dao = new wsDAOTheme($core->con);\r
+               $theme = $dao->getThemeOfBook($this->args['book_id']);\r
+               foreach($theme->parametres->getForms() as $name) {\r
+                       $f = $this->xml->addChild('form', json_encode($theme->parametres->getForm($name)));\r
+                       $f->addAttribute('name', $name);\r
+               }\r
+               $dao = new wsDAOBook($core->con);\r
+               $book = $dao->selectById($this->args['book_id']);\r
+               foreach($book->parametres->getForms() as $name) {\r
+                       $f = $this->xml->addChild('form', json_encode($book->parametres->getForm($name)));\r
+                       $f->addAttribute('name', $name);\r
+               }\r
+       }\r
 }\r
 \r
 ?>
\ No newline at end of file
index 1883ac28ea5b5940bad51560d826e743c61b3a20..14ee0753af9711422050952e45f66b8cf65d13cf 100644 (file)
@@ -77,6 +77,8 @@ class wsBookParametres extends wsParametres {
                // .\r
                $this->fields['fonctions_diverses'] = __('Fonctions diverses');\r
                $this->fields['immediateResize'] = array('type' => 'boolean', 'default' => false, 'editable' => true, 'label' => __("Redimensionner immédiatement la fenêtre"), 'extra' => true, 'grade' => 4);\r
+\r
+               $this->forms['fluidbook'] = array('label' => __('Paramètres du fluidbook'), 'fieldsnames' => array_keys($this->fields));\r
        }\r
 }\r
 \r
index ad0186c18de032c0a1f2aed156e52824114b0909..4d5caf530d86230c38c16511f09fe5b3b6f707af 100644 (file)
@@ -2,6 +2,7 @@
 class wsParametres extends cubeMetier implements Iterator {\r
        protected $datas;\r
        protected $fields;\r
+       protected $forms;\r
        // Magic functions\r
        public function __construct()\r
        {\r
@@ -67,6 +68,7 @@ class wsParametres extends cubeMetier implements Iterator {
        protected function initFields()\r
        {\r
                $this->fields = array();\r
+               $this->forms = array();\r
        }\r
 \r
        protected function set($varname, $value)\r
@@ -110,7 +112,7 @@ class wsParametres extends cubeMetier implements Iterator {
 \r
        protected function get($varname)\r
        {\r
-               if(is_null($varname)){\r
+               if (is_null($varname)) {\r
                        return false;\r
                }\r
                if (!$this->_isset($varname)) {\r
@@ -122,6 +124,21 @@ class wsParametres extends cubeMetier implements Iterator {
                return $this->datas[$varname];\r
        }\r
 \r
+       public function getForm($name)\r
+       {\r
+               $f = $this->forms[$name];\r
+               $f['fields'] = array();\r
+               foreach($f['fieldsnames'] as $n) {\r
+                       $f['fields'][$n] = $this->fields[$n];\r
+                       $f['fields'][$n]['value'] = $this->get($n);\r
+               }\r
+               return $f;\r
+       }\r
+\r
+       public function getForms(){\r
+               return array_keys($this->forms);\r
+       }\r
+\r
        public function fromRecord($r)\r
        {\r
                $c = array_flip($r->columns());\r
index 0ca3827bba848f01a0601b89e50bcfa3f83f5e20..dedff46695ac519c6308dc045a64dce77a32e7a2 100644 (file)
@@ -8,24 +8,53 @@ class wsThemeParametres extends wsParametres {
        public function initFields()\r
        {\r
                parent::initFields();\r
-               $this->fields['couleurA'] = array('type' => 'couleur', 'default' => '', 'editable' => true, 'label' => __("Couleur principale (boutons, liens)"), 'extra' => false, 'grade' => 3);\r
-               $this->fields['couleurB'] = array('type' => 'couleur', 'default' => '', 'editable' => true, 'label' => __("Couleur des sous-menus"), 'extra' => false, 'grade' => 3);\r
-               $this->fields['couleurS'] = array('type' => 'couleur', 'default' => '', 'editable' => true, 'label' => __("Couleur du texte du moteur de recherche"), 'extra' => false, 'grade' => 3);\r
-               $this->fields['couleurL'] = array('type' => 'couleur', 'default' => '', 'editable' => true, 'label' => __("Couleur du fond du loader"), 'extra' => false, 'grade' => 3);\r
-               $this->fields['couleurI'] = array('type' => 'couleur', 'default' => 'transparent', 'editable' => true, 'label' => __("Couleur des icônes"), 'extra' => false, 'grade' => 3);\r
-               $this->fields['backgroundColor'] = array('type' => 'couleur', 'default' => 'ffffff', 'editable' => true, 'label' => __("Couleur du fond"), 'extra' => false, 'grade' => 3);\r
+               $this->fields['couleurA'] = array('type' => 'couleur', 'default' => '', 'editable' => true,\r
+                       'label' => __("Couleur principale (boutons, liens)"), 'extra' => false, 'grade' => 3);\r
+               $this->fields['couleurB'] = array('type' => 'couleur', 'default' => '', 'editable' => true,\r
+                       'label' => __("Couleur des sous-menus"), 'extra' => false, 'grade' => 3);\r
+               $this->fields['couleurS'] = array('type' => 'couleur', 'default' => '', 'editable' => true,\r
+                       'label' => __("Couleur du texte du moteur de recherche"), 'extra' => false, 'grade' => 3);\r
+               $this->fields['couleurL'] = array('type' => 'couleur', 'default' => '', 'editable' => true,\r
+                       'label' => __("Couleur du fond du loader"), 'extra' => false, 'grade' => 3);\r
+               $this->fields['couleurI'] = array('type' => 'couleur', 'default' => 'transparent', 'editable' => true,\r
+                       'label' => __("Couleur des icônes"), 'extra' => false, 'grade' => 3);\r
+               $this->fields['backgroundColor'] = array('type' => 'couleur', 'default' => 'ffffff', 'editable' => true,\r
+                       'label' => __("Couleur du fond"), 'extra' => false, 'grade' => 3);\r
                $this->fields['repeat'] = array('type' => 'combo',\r
-                       'datas' => array(__('Etirer') => 0, __('Etirer le fond') => 2, __("Répéter") => 1, __('Ne pas répéter ni étirer') => 3),\r
+                       'datas' => array(__('Etirer') => wsTheme::STRETCH,\r
+                               __('Etirer le fond en conservant les proportions') => wsTheme::RATIO,\r
+                               __("Répéter") => wsTheme::REPEAT,\r
+                               __('Ne pas répéter ni étirer') => wsTheme::NONE),\r
                        'default' => 0, 'editable' => true, 'label' => __('Affichage du fond'), 'grade' => 3);\r
-               $this->fields['shadeOnMenu'] = array('type' => 'boolean', 'default' => true, 'editable' => true, 'label' => __('Ombre portée sous la barre du menu'), 'extra' => true, 'grade' => 4);\r
-               $this->fields['pagesBar'] = array('type' => 'boolean', 'default' => true, 'editable' => true, 'label' => __("Afficher la barre d'accès rapide aux pages"), 'extra' => true, 'grade' => 4);\r
-               $this->fields['shadeAlpha'] = array('type' => 'integer', 'default' => 100, 'editable' => true, 'label' => __('Transparence des ombres sur les pages (100 : maximale - 0 : invisible)'), 'extra' => true, 'grade' => 4);\r
-               $this->fields['usePageEdges'] = array('type' => 'boolean', 'default' => true, 'editable' => true, 'label' => __("Afficher la bordure des pages"), 'extra' => true, 'grade' => 4);\r
-               $this->fields['arrowsColor'] = array('type' => 'color', 'default' => 'ffffff', 'editable' => true, 'label' => __('Couleur des flèches des boutons de navigation (page suivante, page précédente)'), 'extra' => true, 'grade' => 4);\r
-               $this->fields['pagesBarTxtColor'] = array('type' => 'color', 'default' => 'ffffff', 'editable' => true, 'label' => __("Couleur des numéros de page de la barre d'accès rapide aux pages"), 'extra' => true, 'grade' => 4);\r
-               $this->fields['sections'] = array('type' => 'textarea', 'default' => '', 'editable' => true, 'label' => __("Sections"), 'extra' => false, 'grade' => 4);\r
-               $this->fields['indexColors'] = array('type' => 'textarea', 'default' => '', 'editable' => true, 'label' => __("Couleurs des pages de l'index"), 'extra' => true, 'grade' => 4);\r
-               $this->fields['displayPageNumber'] = array('type' => 'boolean', 'default' => true, 'editable' => true, 'label' => __('Afficher les numéros de page'), 'extra' => false, 'grade' => 1);\r
+               $this->fields['shadeOnMenu'] = array('type' => 'boolean', 'default' => true, 'editable' => true,\r
+                       'label' => __('Ombre portée sous la barre du menu'), 'extra' => true, 'grade' => 4);\r
+               $this->fields['pagesBar'] = array('type' => 'boolean', 'default' => true, 'editable' => true,\r
+                       'label' => __("Afficher la barre d'accès rapide aux pages"), 'extra' => true, 'grade' => 4);\r
+               $this->fields['shadeAlpha'] = array('type' => 'integer', 'default' => 100, 'editable' => true,\r
+                       'label' => __('Transparence des ombres sur les pages (100 : maximale - 0 : invisible)'), 'extra' => true, 'grade' => 4);\r
+               $this->fields['usePageEdges'] = array('type' => 'boolean', 'default' => true, 'editable' => true,\r
+                       'label' => __("Afficher la bordure des pages"), 'extra' => true, 'grade' => 4);\r
+               $this->fields['arrowsColor'] = array('type' => 'color', 'default' => 'ffffff', 'editable' => true,\r
+                       'label' => __('Couleur des flèches des boutons de navigation (page suivante, page précédente)'), 'extra' => true, 'grade' => 4);\r
+               $this->fields['pagesBarTxtColor'] = array('type' => 'color', 'default' => 'ffffff', 'editable' => true,\r
+                       'label' => __("Couleur des numéros de page de la barre d'accès rapide aux pages"), 'extra' => true, 'grade' => 4);\r
+               $this->fields['sections'] = array('type' => 'textarea', 'default' => '', 'editable' => true,\r
+                       'label' => __("Sections"), 'extra' => false, 'grade' => 4);\r
+               $this->fields['indexColors'] = array('type' => 'textarea', 'default' => '', 'editable' => true,\r
+                       'label' => __("Couleurs des pages de l'index"), 'extra' => true, 'grade' => 4);\r
+               $this->fields['displayPageNumber'] = array('type' => 'boolean', 'default' => true, 'editable' => true,\r
+                       'label' => __('Afficher les numéros de page'), 'extra' => false, 'grade' => 1);\r
+\r
+               $this->forms['background'] = array('label' => __('Personnalisation du fond'), 'fieldsnames' => array('backgroundColor', 'repeat'));\r
+               $this->forms['bouton'] = array('label' => __('Personnalisation des boutons'), 'fieldsnames' => array('couleurA', 'arrowsColor'));\r
+               $this->forms['icones'] = array('label' => __('Personnalisation des icônes'), 'fieldsnames' => array('couleurI'));\r
+               $this->forms['pagebar'] = array('label' => __('Personnalisation de la barre des pages'),\r
+                       'fieldsnames' => array('pagesBar', 'sections', 'pagesBarTxtColor'));\r
+               $this->forms['book'] = array('label' => __('Personnalisation du fluidbook'),\r
+                       'fieldsnames' => array('displayPageNumber', 'shadeAlpha', 'usePageEdges'));\r
+               $this->forms['menubar'] = array('label' => __('Personnalisation de la barre de menu'), 'fieldsnames' => array('shadeOnMenu'));\r
+               $this->forms['menu'] = array('label' => __('Personnalisation des menus'), 'fieldsnames' => array('couleurB', 'couleurS'));\r
+               $this->forms['loader'] = array('label' => __('Personnalisation du loader'), 'fieldsnames' => array('couleurL'));\r
        }\r
 }\r
 \r