/**
  * Visit a Navigation Block
  * 
  * @param object NavBlockSiteComponent $siteComponent
  * @return mixed
  * @access public
  * @since 8/31/07
  */
 public function visitNavBlock(NavBlockSiteComponent $siteComponent)
 {
     if ($siteComponent->getNestedMenuOrganizer()) {
         return true;
     } else {
         return $siteComponent->getOrganizer()->acceptVisitor($this);
     }
 }
Ejemplo n.º 2
0
 /**
  * Visit a block and return the resulting GUI component.
  * 
  * @param object NavBlockSiteComponent $navBlock
  * @return ref array
  * @access public
  * @since 4/3/06
  */
 function visitNavBlock(NavBlockSiteComponent $navBlock)
 {
     $childOrganizer = $navBlock->getOrganizer();
     $childOrganizer->acceptVisitor($this);
     $nestedMenuOrganizer = $navBlock->getNestedMenuOrganizer();
     if (!is_null($nestedMenuOrganizer)) {
         $nestedMenuOrganizer->acceptVisitor($this);
     }
 }
 /**
  * Visit a Navigation Block
  * 
  * @param object NavBlockSiteComponent $siteComponent
  * @return mixed
  * @access public
  * @since 8/31/07
  */
 public function visitNavBlock(NavBlockSiteComponent $siteComponent)
 {
     $num = 1 + $siteComponent->getOrganizer()->acceptVisitor($this);
     $nestedMenu = $siteComponent->getNestedMenuOrganizer();
     if (!is_null($nestedMenu)) {
         $num += $nestedMenu->acceptVisitor($this);
     }
     return $num;
 }
Ejemplo n.º 4
0
 /**
  * Visit a Navigation Block
  * 
  * @param object NavBlockSiteComponent $siteComponent
  * @return mixed
  * @access public
  * @since 8/31/07
  */
 public function visitNavBlock(NavBlockSiteComponent $navBlock)
 {
     $childOrganizer = $navBlock->getOrganizer();
     $childOrganizer->acceptVisitor($this);
     $nestedMenuOrganizer = $navBlock->getNestedMenuOrganizer();
     if (!is_null($nestedMenuOrganizer)) {
         $nestedMenuOrganizer->acceptVisitor($this);
     }
     return $this->taggableItems;
 }
Ejemplo n.º 5
0
 /**
  * Visit a Navigation Block
  * 
  * @param object NavBlockSiteComponent $siteComponent
  * @return mixed
  * @access public
  * @since 6/6/08
  */
 public function visitNavBlock(NavBlockSiteComponent $siteComponent)
 {
     return $siteComponent->getParentComponent()->acceptVisitor($this);
 }
 /**
  * Visit a Navigation Block
  * 
  * @param object NavBlockSiteComponent $siteComponent
  * @return mixed
  * @access public
  * @since 1/26/09
  */
 public function visitNavBlock(NavBlockSiteComponent $siteComponent)
 {
     $organizer = $siteComponent->getOrganizer();
     $organizer->acceptVisitor($this);
     $nestedMenuOrganizer = $siteComponent->getNestedMenuOrganizer();
     if (!is_null($nestedMenuOrganizer)) {
         $nestedMenuOrganizer->acceptVisitor($this);
     }
 }
Ejemplo n.º 7
0
 /**
  * Visit a Navigation Block
  * 
  * @param object NavBlockSiteComponent $siteComponent
  * @return mixed
  * @access public
  * @since 8/5/08
  */
 public function visitNavBlock(NavBlockSiteComponent $siteComponent)
 {
     if (!$this->firstSeen) {
         $this->firstSeen = true;
     } else {
         if ($siteComponent->isSection()) {
             $this->sections++;
         } else {
             $this->pages++;
         }
     }
     if ($siteComponent->getNestedMenuOrganizer()) {
         $siteComponent->getNestedMenuOrganizer()->acceptVisitor($this);
     } else {
         $siteComponent->getOrganizer()->acceptVisitor($this);
     }
 }
 /**
  * Visit a Navigation Block
  * 
  * @param object NavBlockSiteComponent $siteComponent
  * @return mixed
  * @access public
  * @since 6/11/08
  */
 public function visitNavBlock(NavBlockSiteComponent $siteComponent)
 {
     $orig = $siteComponent->getDisplayName();
     $new = $this->replacePlaceholders($orig);
     if ($orig != $new) {
         $siteComponent->updateDisplayName($new);
     }
     $orig = $siteComponent->getDescription();
     $new = $this->replacePlaceholders($orig);
     if ($orig != $new) {
         $siteComponent->updateDescription($new);
     }
     // Traverse down
     $childOrganizer = $siteComponent->getOrganizer();
     $childOrganizer->acceptVisitor($this);
     $nestedMenuOrganizer = $siteComponent->getNestedMenuOrganizer();
     if (!is_null($nestedMenuOrganizer)) {
         $nestedMenuOrganizer->acceptVisitor($this);
     }
 }
 /**
  * Answer an element that represents a single tag application for a block.
  * 
  * @param object NavBlockSiteComponent $siteComponent
  * @access protected
  * @since 1/17/08
  */
 protected function recordCategory(NavBlockSiteComponent $siteComponent, $parentId = '')
 {
     $query = 'count(wp:category[wp:term_id = "' . $siteComponent->getId() . '"])';
     if (!$this->xpath->evaluate($query, $this->channel)) {
         $element = $this->channel->insertBefore($this->doc->createElementNS('http://wordpress.org/export/1.1/', 'wp:category'), $this->endCategories);
         $element->appendChild($this->getElementNS('http://wordpress.org/export/1.1/', 'wp:term_id', $siteComponent->getId()));
         $element->appendChild($this->getElementNS('http://wordpress.org/export/1.1/', 'wp:category_nicename', $this->getUniqueSlug($siteComponent)));
         $element->appendChild($this->getCDATAElementNS('http://wordpress.org/export/1.1/', 'wp:cat_name', $siteComponent->getDisplayName()));
         $element->appendChild($this->getElementNS('http://wordpress.org/export/1.1/', 'wp:category_parent', $parentId));
     }
 }
Ejemplo n.º 10
0
 /**
  * Visit a Navigation Block
  * 
  * @param object NavBlockSiteComponent $siteComponent
  * @return mixed
  * @access public
  * @since 8/31/07
  */
 public function visitNavBlock(NavBlockSiteComponent $siteComponent)
 {
     $element = $this->getElementForNewId($siteComponent->getId());
     $this->applyDisplayName($siteComponent, $element);
     $this->applyDescription($siteComponent, $element);
     $this->applyCommonProperties($siteComponent, $element);
     $this->importComponent($this->getSingleChild('NavOrganizer', $element), $siteComponent->getOrganizer());
     try {
         $nestedMenuElement = $this->getSingleChild('MenuOrganizer', $element);
     } catch (MissingNodeException $e) {
     }
     if (isset($nestedMenuElement)) {
         $menu = $this->createComponent($nestedMenuElement, $siteComponent);
         $siteComponent->makeNested($menu);
         $this->importComponent($nestedMenuElement, $menu);
     }
     $this->setAssetAuthorship($siteComponent->getAsset(), $element);
     $this->setAssetDates($siteComponent->getAsset(), $element);
     $this->applyRoles($siteComponent, $element);
 }
 /**
  * Visit a block and return the resulting GUI component.
  * 
  * @param object NavBlockSiteComponent $navBlock
  * @return object Component 
  * @access public
  * @since 4/3/06
  */
 public function visitNavBlock(NavBlockSiteComponent $navBlock)
 {
     // Traverse our child organizer, and place it in the _missingTargets array
     // if our target is not available.
     if ($navBlock->isActive()) {
         $childOrganizer = $navBlock->getOrganizer();
         $childOrganizer->acceptVisitor($this);
         $nestedMenuOrganizer = $navBlock->getNestedMenuOrganizer();
         if (!is_null($nestedMenuOrganizer)) {
             $nestedMenuOrganizer->acceptVisitor($this);
         }
     }
     return $this->visitSiteComponent($navBlock);
 }
Ejemplo n.º 12
0
 /**
  * Visit a block and return the resulting GUI component.
  * 
  * @param object NavBlockSiteComponent $navBlock
  * @return ref array
  * @access public
  * @since 4/3/06
  */
 public function visitNavBlock(NavBlockSiteComponent $navBlock)
 {
     $authZ = Services::getService("AuthZ");
     $idManager = Services::getService("Id");
     // Since view AZs cascade up, just check at the node.
     if (!$authZ->isUserAuthorized($idManager->getId("edu.middlebury.authorization.view"), $idManager->getId($navBlock->getId()))) {
         return false;
     }
     $menuItems = array();
     // Create the menu item
     $title = $navBlock->getTitleMarkup();
     if (!$title) {
         $title = _("Untitled");
     }
     $menuItems[] = new MenuItemLinkWithAdditionalHtml($title, $this->getUrlForComponent($navBlock->getId()), $navBlock->isActive(), 1, null, null, $navBlock->getDescription(), $this->getAdditionalNavHTML($navBlock));
     // Traverse our child organizer, and place it in the _missingTargets array
     // if our target is not available.
     if ($navBlock->isActive()) {
         $childOrganizer = $navBlock->getOrganizer();
         $childGuiComponent = $childOrganizer->acceptVisitor($this);
         if (isset($this->_emptyCellContainers[$navBlock->getTargetId()])) {
             $this->_emptyCellContainers[$navBlock->getTargetId()]->insertAtPlaceholder($this->_emptyCellPlaceholders[$navBlock->getTargetId()], $childGuiComponent, $childOrganizer->getWidth(), '100%', null, TOP);
             unset($this->_emptyCellContainers[$navBlock->getTargetId()], $this->_emptyCellPlaceholders[$navBlock->getTargetId()]);
         } else {
             $this->_missingTargets[$navBlock->getTargetId()] = $childGuiComponent;
             $this->_missingTargetWidths[$navBlock->getTargetId()] = $childOrganizer->getWidth();
         }
         $nestedMenuOrganizer = $navBlock->getNestedMenuOrganizer();
         if (!is_null($nestedMenuOrganizer)) {
             $this->_menuNestingLevel++;
             $menuItems[] = $nestedMenuOrganizer->acceptVisitor($this);
         } else {
             $this->_menuNestingLevel = 0;
         }
     }
     // return the menu items
     return $menuItems;
 }