for rotating images
authorSteve Sutton <steve@gaslightmedia.com>
Tue, 9 Feb 2010 16:19:12 +0000 (16:19 +0000)
committerSteve Sutton <steve@gaslightmedia.com>
Tue, 9 Feb 2010 16:19:12 +0000 (16:19 +0000)
Toolkit/RotatingImages.php [new file with mode: 0644]

diff --git a/Toolkit/RotatingImages.php b/Toolkit/RotatingImages.php
new file mode 100644 (file)
index 0000000..612a3e3
--- /dev/null
@@ -0,0 +1,125 @@
+<?php
+class Toolkit_RotatingImages
+{
+       //      {{{     createNav()
+       public function createNav()
+       {
+               $subNav = array(
+                       'List Images' => 'rotatingImages.php?action=list',
+                       'Add Image' => 'rotatingImages.php?action=edit'
+               );
+
+               ob_start();
+               GLM_TOOLBOX::html_nav_table($subNav, 1);
+               return ob_get_clean();
+       }
+
+       //      }}}
+
+       //      {{{     getFlexyOptions()
+       public static function getFlexyOptions()
+       {
+               $options = $GLOBALS['flexyOptions'];
+               $options['templateDir']
+                       = dirname(__FILE__) . '/RotatingImages/templates';
+               $options['compileDir']
+                       = dirname(__FILE__) . '/RotatingImages/templates/compiled';
+
+               return $options;
+       }
+
+       //      }}}
+
+       //      {{{     toHtml()
+       public function toHtml(PDO $dbh, Config_Container $rotatingImagesRoot)
+       {
+               switch ($_GET['action']) {
+               case 'del' :
+                       if (ctype_digit($_GET['id'])) {
+                               $is = new Toolkit_Image_Server();
+                               $image = Toolkit_RotatingImages_Image::find($dbh, $_GET['id']);
+                               $image->delete($dbh, $is);
+                       }
+                       header('Location: ' . BASE_URL . 'admin/rotatingImages.php');
+                       exit();
+                       break;
+
+               case 'edit' :
+                       $GLOBALS['styleSheets'][]
+                               = BASE_URL . '/Toolkit/RotatingImages/styles.css';
+                       $form = new Toolkit_RotatingImages_EditImageForm(
+                               'GLM_RotatingImages'
+                       );
+                       $form->configureForm($dbh);
+                       $ret = $form->toHtml($dbh, new Toolkit_Image_Server());
+                       break;
+
+               case 'list' :
+               default :
+                       $GLOBALS['styleSheets'][]
+                               = BASE_URL . 'Toolkit/RotatingImages/styles.css';
+                       $GLOBALS['styleSheets'][]
+                               = GLM_APP_BASE_URL . 'libjs/jqueryui/1.7.1/themes/base/ui.core.css';
+                       $GLOBALS['styleSheets'][]
+                               = GLM_APP_BASE_URL . 'libjs/jqueryui/1.7.1/themes/base/ui.theme.css';
+
+                       $GLOBALS['scripts'][]
+                               = GLM_APP_BASE_URL . 'libjs/jqueryui/1.7.1/ui/ui.core.js';
+                       $GLOBALS['scripts'][]
+                               = GLM_APP_BASE_URL . 'libjs/jqueryui/1.7.1/ui/ui.sortable.js';
+                       $GLOBALS['scripts'][]
+                               = BASE_URL . 'Toolkit/RotatingImages/libjs/sortable.js';
+
+                       $tEngine = new HTML_Template_Flexy(
+                               Toolkit_RotatingImages::getFlexyOptions()
+                       );
+
+                       $tEngine->compile('instructions.html');
+                       $ret = $tEngine->bufferedOutputObject(new stdClass());
+
+                       //
+                       //  Settings Form
+                       //
+                       $settings
+                               = new Toolkit_RotatingImages_TransitionSettingsForm('settings');
+                       $settings->configureForm($dbh, $rotatingImagesRoot);
+                       $ret .= $settings->toHtml($dbh);
+
+                       //
+                       //      Preview
+                       //
+                       $preview = new Toolkit_RotatingImages_TransitionPreview();
+                       $ret .= $preview->getPreview($dbh);
+
+                       $activeREngine = new Structures_DataGrid_Renderer_Flexy();
+                       $activeREngine->setContainer($tEngine);
+                       //
+                       //  Active images datagrid
+                       //
+                       $activeDG = new Toolkit_RotatingImages_ActiveImagesDataGrid(
+                           Toolkit_Database::getInstance()
+                       );
+                       $activeDG->setQuery();
+                       $activeDG->setDefaultSort(array('pos' => 'ASC'));
+                       $ret .= $activeDG->toHtml($activeREngine, 'imagesDataGrid.html');
+
+                       $inactiveREngine = new Structures_DataGrid_Renderer_Flexy();
+                       $inactiveREngine->setContainer($tEngine);
+                       //
+                       //  In-active images datagrid
+                       //
+                       $disabledDG = new Toolkit_RotatingImages_InactiveImagesDataGrid(
+                               Toolkit_Database::getInstance()
+                       );
+                       $disabledDG->setQuery();
+                       $disabledDG->setDefaultSort(array('pos' => 'ASC'));
+                       $ret .=$disabledDG->toHtml($inactiveREngine, 'imagesDataGrid.html');
+                       break;
+               }
+
+               return $ret;
+       }
+
+       //      }}}
+}
+?>