/**
     * Constructor
     * 
     * @return object
     * @access public
     * @since 4/14/06
     */
    function __construct()
    {
        $this->_action = 'editview';
        $this->_controlsVisitor = new EditModeControlsSiteVisitor();
        $this->_controlsVisitor->setReturnAction($this->_action);
        parent::__construct();
        $this->_classNames = array('Block' => _('Content Block'), 'NavBlock' => _('Page'), 'NavSection' => _('Section'), 'SiteNavBlock' => _('Site'), 'MenuOrganizer' => _('Pages Container'), 'FlowOrganizer' => _('Content Container'), 'FixedOrganizer' => _('Layout Container'), 'SubMenu_multipart' => _('Section'), 'SidebarSubMenu_multipart' => _('Section with Sidebar'), 'ContentPage_multipart' => _('Page'), 'SidebarContentPage_multipart' => _('Page with Sidebar'));
        ob_start();
        // Print out Javascript functions needed by our methods
        $this->printJavascript();
        print <<<END
\t\t\t
\t\t\t<style type='text/css'>
\t\t\t\t.controls_form {
\t\t\t\t\ttext-align: left;
\t\t\t\t\tcolor: #000;
\t\t\t\t\tpadding: 3px;
\t\t\t\t}
\t\t\t\t
\t\t\t\t.controls_form a {
\t\t\t\t\ttext-align: left;
\t\t\t\t\tcolor: #000;
\t\t\t\t}
\t\t\t</style>

END;
        $harmoni = Harmoni::instance();
        $outputHandler = $harmoni->getOutputHandler();
        $outputHandler->setHead($outputHandler->getHead() . ob_get_clean());
        UserDataHelper::writeHeadJs();
    }
Example #2
0
 /**
  * Build the content for this action
  * 
  * @return void
  * @access public
  * @since 5/8/07
  */
 function buildContent()
 {
     SegueAjaxPlugin::writeAjaxLib();
     /*********************************************************
      * Other headers and footers
      *********************************************************/
     $harmoni = Harmoni::instance();
     $outputHandler = $harmoni->getOutputHandler();
     UserDataHelper::writeHeadJs();
     ob_start();
     print Segue_MediaLibrary::getHeadHtml();
     $outputHandler->setHead($outputHandler->getHead() . ob_get_clean());
     parent::buildContent();
 }
Example #3
0
 /**
  * Build the content for this action
  * 
  * @return boolean
  * @access public
  * @since 4/26/05
  */
 function execute()
 {
     ob_start();
     $harmoni = Harmoni::instance();
     /*********************************************************
      * Other headers and footers
      *********************************************************/
     $outputHandler = $harmoni->getOutputHandler();
     // Add our common Harmoni javascript libraries
     require POLYPHONY_DIR . "/main/library/Harmoni.js.inc.php";
     print Segue_MediaLibrary::getHeadHtml();
     $outputHandler->setHead(ob_get_clean());
     UserDataHelper::writeHeadJs();
     // Get the plugin asset id
     $harmoni->request->startNamespace('plugin_manager');
     $id = RequestContext::value('plugin_id');
     if (RequestContext::value('extended') == 'true') {
         $showExtended = true;
     } else {
         $showExtended = false;
     }
     $harmoni->request->endNamespace();
     // Get the plugin asset object
     $repositoryManager = Services::getService("Repository");
     $idManager = Services::getService("Id");
     $repository = $repositoryManager->getRepository($idManager->getId("edu.middlebury.segue.sites_repository"));
     $asset = $repository->getAsset($idManager->getId($id));
     $pluginManager = Services::getService("Plugs");
     $plugin = $pluginManager->getPlugin($asset);
     if (!is_object($plugin)) {
         print $plugin;
     } else {
         if ($showExtended) {
             print $plugin->executeAndGetExtendedMarkup(TRUE);
         } else {
             print $plugin->executeAndGetMarkup(TRUE);
         }
     }
     // 		exit();
     $block = new UnstyledBlock(ob_get_clean());
     return $block;
 }
Example #4
0
 /**
  * Add Javascript function to our header
  * 
  * @return void
  * @access protected
  * @since 7/25/08
  */
 protected function addHeadJs()
 {
     UserDataHelper::writeHeadJs();
     $harmoni = Harmoni::instance();
     ob_start();
     print "\n\n \t\t<script type='text/javascript' src='" . MYPATH . "/javascript/scriptaculous-js/lib/prototype.js'></script>\n\t\t<script type='text/javascript' src='" . MYPATH . "/javascript/scriptaculous-js/src/scriptaculous.js'></script>\n\t\t<script type='text/javascript' src='" . POLYPHONY_PATH . "javascript/CenteredPanel.js'></script>\n\t\t<script type='text/javascript' src='" . MYPATH . "/javascript/AliasPanel.js'></script>\n\t\t<script type='text/javascript' src='" . MYPATH . "/javascript/MigrationPanel.js'></script>\n\t\t<script type='text/javascript' src='" . MYPATH . "/javascript/ArchiveStatus.js'></script>\n\t\t\n\t\t<style type='text/css'>\n\t\t\t/* Other portal styles are in the static CSS file, images/SegueCommon.css */\n\t\t\tul.portal_folders li {\n\t\t\t\tlist-style-image:  url(" . MYPATH . "/images/icons/16x16/folder_open.png);\n\t\t\t}\n\t\t</style>\n\t\t";
     $handler = $harmoni->getOutputHandler();
     $handler->setHead($handler->getHead() . ob_get_clean());
 }
Example #5
0
 /**
  * Add the header controls to the main screen gui component
  * 
  * @param object Component $mainScreen
  * @return object Component The allWrapper
  * @access public
  * @since 4/7/08
  */
 public function addHeaderControls(Component $mainScreen)
 {
     $harmoni = Harmoni::instance();
     /*********************************************************
      * Additional setup
      *********************************************************/
     $rootSiteComponent = SiteDispatcher::getCurrentRootNode();
     $outputHandler = $harmoni->getOutputHandler();
     /*********************************************************
      * Theme
      *********************************************************/
     $outputHandler->setCurrentTheme($rootSiteComponent->getTheme());
     /*********************************************************
      * Other headers and footers
      *********************************************************/
     // Remove any existing title tags from the head text
     print preg_replace("/<title>[^<]*<\\/title>/", "", $outputHandler->getHead());
     //Add our new title
     print "\n\t\t<title>";
     print strip_tags(SiteDispatcher::getCurrentNode()->acceptVisitor(new BreadCrumbsVisitor(SiteDispatcher::getCurrentNode())));
     print "</title>";
     // Add our common Harmoni javascript libraries
     require POLYPHONY_DIR . "/main/library/Harmoni.js.inc.php";
     print Segue_MediaLibrary::getHeadHtml();
     $outputHandler->setHead(ob_get_clean());
     UserDataHelper::writeHeadJs();
     // Add the RSS head links
     RssLinkPrinter::addHeadLinks(SiteDispatcher::getCurrentNode());
     // Add the selection Panel
     Segue_Selection::instance()->addHeadJavascript();
     $allWrapper = new Container(new YLayout(), BLANK, 1);
     if (defined('SEGUE_SITE_HEADER')) {
         $this->siteMessage = $allWrapper->add(new Component($this->getSegueSiteHeader(), BLANK, 1), "100%", null, CENTER, TOP);
     }
     // :: login, links and commands
     $this->headRow = $allWrapper->add(new Container(new XLayout(), BLANK, 1), $rootSiteComponent->getWidth(), null, CENTER, TOP);
     $this->leftHeadColumn = $this->headRow->add($this->getSegueLinksComponent(), null, null, LEFT, TOP);
     $rightHeadColumn = $this->headRow->add(new Container(new YLayout(), BLANK, 1), null, null, CENTER, TOP);
     $rightHeadColumn->add($this->getLoginComponent(), null, null, RIGHT, TOP);
     if ($this->isAuthorizedToExecute()) {
         $rightHeadColumn->add($this->getCommandsComponent(), null, null, RIGHT, TOP);
     }
     $allWrapper->add($mainScreen, $rootSiteComponent->getWidth(), null, CENTER, TOP);
     // :: Top Row ::
     // 		$this->headRow = $mainScreen->add(
     // 			new Container(new XLayout, HEADER, 1),
     // 			"100%", null, CENTER, TOP);
     // 		$this->leftHeadColumn = $this->headRow->add(
     // 			new UnstyledBlock("<h1>".$rootSiteComponent->getTitleMarkup()."</h1>"),
     // 			null, null, LEFT, TOP);
     return $allWrapper;
 }