public function testSort() { $count = 5; $object = new \Foundation\Navigation\Menu(); for ($i = $count; $i >= 0; $i--) { $link = new \Foundation\Navigation\Link('Test' . $i); $object->addLink($link); } $links = $object->getLinks(); for ($i = $count; $i >= 0; $i--) { $this->assertArrayHasKey($count - $i, $links); $this->assertEquals('Test' . $i, $links[$count - $i]->getText()); } $object->sortLinks(); $links = $object->getLinks(); for ($i = 0; $i <= $count; $i++) { $this->assertArrayHasKey($i, $links); $this->assertEquals('Test' . $i, $links[$i]->getText()); } }
/** * Get the navigation * @return Navigation */ public function getNavigation() { if (empty($this->program) and empty($this->application)) { return null; } $navigation = new \Foundation\Navigation\Container(); $menu = new \Foundation\Navigation\Menu(); $menu->setTitle('Navigation'); if (empty($this->application)) { $link = new \Foundation\Navigation\Link('Welcome'); $link->setHref($this->path('apply')); $menu->addLink($link); } else { $path = 'apply/' . $this->program->getShortName() . '/' . $this->cycle->getName(); $link = new \Foundation\Navigation\Link('Welcome'); $link->setHref($this->path($path)); $link->setCurrent(true); $menu->addLink($link); //Only show the other cycles link if there are other published visible cycles $applications = $this->_em->getRepository('Jazzee\\Entity\\Application')->findByProgram($this->program, false, true, array($this->application->getId())); if (count($applications) > 0) { $link = new \Foundation\Navigation\Link('Other Cycles'); $link->setHref($this->path('apply/' . $this->program->getShortName())); $menu->addLink($link); } $link = new \Foundation\Navigation\Link('Returning Applicants'); $link->setHref($this->path($path . '/applicant/login')); $menu->addLink($link); if (!$this->application->isByInvitationOnly()) { $link = new \Foundation\Navigation\Link('Start a New Application'); $link->addClass('highlight'); $link->setHref($this->path($path . '/applicant/new')); $menu->addLink($link); } } $navigation->addMenu($menu); if ($this->isPreviewMode()) { $menu = new \Foundation\Navigation\Menu(); $navigation->addMenu($menu); $menu->setTitle('Preview Functions'); $link = new \Foundation\Navigation\Link('Become Administrator'); $link->setHref($this->path('admin/login')); $menu->addLink($link); } return $navigation; }
/** * Navigation * @return Navigation */ public function getNavigation() { $navigation = new \Foundation\Navigation\Container(); $menu = new \Foundation\Navigation\Menu(); $menu->setTitle('Navigation'); $link = new \Foundation\Navigation\Link('Back to Application'); reset($this->_pages); $first = key($this->_pages); $link->setHref($this->applyPath('page/' . $first)); $menu->addLink($link); $link = new \Foundation\Navigation\Link('Logout'); $link->setHref($this->applyPath('applicant/logout')); $menu->addLink($link); $navigation->addMenu($menu); return $navigation; }
public function getNavigation() { $navigation = new \Foundation\Navigation\Container(); $menu = new \Foundation\Navigation\Menu(); $menu->setTitle('Navigation'); $link = new \Foundation\Navigation\Link('Welcome'); $link->setHref($this->applyPath('')); $menu->addLink($link); $link = new \Foundation\Navigation\Link('Other Cycles'); $link->setHref($this->path('apply/' . $this->_application->getProgram()->getShortName())); $menu->addLink($link); $link = new \Foundation\Navigation\Link('Returning Applicants'); $link->setHref($this->applyPath('applicant/login')); $menu->addLink($link); if (!$this->_application->isByInvitationOnly()) { $link = new \Foundation\Navigation\Link('Start a New Application'); $link->setHref($this->applyPath('applicant/new')); $link->addClass('highlight'); $menu->addLink($link); } $navigation->addMenu($menu); if ($this->isPreviewMode()) { $menu = new \Foundation\Navigation\Menu(); $navigation->addMenu($menu); $menu->setTitle('Preview Functions'); $link = new \Foundation\Navigation\Link('Become Administrator'); $link->setHref($this->path('admin/login')); $menu->addLink($link); } return $navigation; }
/** * Navigation * @return Navigation */ public function getNavigation() { $navigation = new \Foundation\Navigation\Container(); $menu = new \Foundation\Navigation\Menu(); $menu->setTitle('Navigation'); $link = new \Foundation\Navigation\Link('Your Status'); $link->setHref($this->applyPath('status')); $menu->addLink($link); if ($this->_applicant->getDecision() and $this->_applicant->getDecision()->status() == 'finalAdmit') { $link = new \Foundation\Navigation\Link('Confirm Enrollment'); $link->setHref($this->applyPath('status/sir')); $menu->addLink($link); } if ($this->_applicant->getDecision() and $this->_applicant->getDecision()->getFinalAdmit()) { $link = new \Foundation\Navigation\Link('View Decision Letter'); $link->setHref($this->applyPath('status/admitLetter')); $menu->addLink($link); } if ($this->_applicant->getDecision() and $this->_applicant->getDecision()->getFinalDeny()) { $link = new \Foundation\Navigation\Link('View Decision Letter'); $link->setHref($this->applyPath('status/denyLetter')); $menu->addLink($link); } $navigation->addMenu($menu); if ($this->_config->getAllowApplicantPrintApplication()) { $actions = new \Foundation\Navigation\Menu(); $actions->setTitle('Actions'); $print = new \Foundation\Navigation\Link('Print Application'); $print->setHref($this->applyPath('account/printApplication')); $actions->addLink($print); $navigation->addMenu($actions); } if ($this->isPreviewMode()) { $menu = new \Foundation\Navigation\Menu(); $navigation->addMenu($menu); $menu->setTitle('Preview Functions'); $link = new \Foundation\Navigation\Link('Unlock Application'); $link->setHref($this->applyPath('preview/unlock')); $menu->addLink($link); } return $navigation; }