Exemplo n.º 1
0
 private function renderSideNavFilterView($filter)
 {
     $base_uri = new PhutilURI('/phame/');
     $nav = new AphrontSideNavFilterView();
     $nav->setBaseURI($base_uri);
     $nav->addLabel('Drafts');
     $nav->addFilter('post/new', 'New Draft');
     $nav->addFilter('draft', 'My Drafts');
     foreach ($this->getSideNavExtraDraftFilters() as $draft_filter) {
         $nav->addFilter($draft_filter['key'], $draft_filter['name'], idx($draft_filter, 'uri'));
     }
     $nav->addSpacer();
     $nav->addLabel('Posts');
     $nav->addFilter('post', 'My Posts');
     $nav->addFilter('post/all', 'All Posts', $base_uri);
     foreach ($this->getSideNavExtraPostFilters() as $post_filter) {
         $nav->addFilter($post_filter['key'], $post_filter['name'], idx($post_filter, 'uri'));
     }
     $nav->addSpacer();
     $nav->addLabel('Blogs');
     foreach ($this->getSideNavBlogFilters() as $blog_filter) {
         $nav->addFilter($blog_filter['key'], $blog_filter['name'], idx($blog_filter, 'uri'));
     }
     $nav->selectFilter($filter);
     return $nav;
 }
 public function buildStandardPageResponse($view, array $data)
 {
     $user = $this->getRequest()->getUser();
     $page = $this->buildStandardPageView();
     $page->setApplicationName('OAuth Server');
     $page->setBaseURI('/oauthserver/');
     $page->setTitle(idx($data, 'title'));
     $nav = new AphrontSideNavFilterView();
     $nav->setBaseURI(new PhutilURI('/oauthserver/'));
     $nav->addLabel('Client Authorizations');
     $nav->addFilter('clientauthorization', 'My Authorizations');
     $nav->addSpacer();
     $nav->addLabel('Clients');
     $nav->addFilter('client/create', 'Create Client');
     foreach ($this->getExtraClientFilters() as $filter) {
         $nav->addFilter($filter['url'], $filter['label']);
     }
     $nav->addFilter('client', 'My Clients');
     $nav->selectFilter($this->getFilter(), 'clientauthorization');
     $nav->appendChild($view);
     $page->appendChild($nav);
     $doc_href = PhabricatorEnv::getDoclink('article/Using_the_Phabricator_OAuth_Server.html');
     $page->setTabs(array('help' => array('name' => 'Help', 'href' => $doc_href)), null);
     $response = new AphrontWebpageResponse();
     return $response->setContent($page->render());
 }
 protected function buildSideNavView(PhabricatorFileImageMacro $macro = null)
 {
     $nav = new AphrontSideNavFilterView();
     $nav->setBaseURI(new PhutilURI($this->getApplicationURI()));
     $nav->addLabel('Create');
     $nav->addFilter('edit', 'Create Macro');
     $nav->addSpacer();
     $nav->addLabel('Macros');
     $nav->addFilter('', 'All Macros');
     return $nav;
 }
 protected function buildSideNavView()
 {
     $nav = new AphrontSideNavFilterView();
     $nav->setBaseURI(new PhutilURI($this->getApplicationURI()));
     $nav->addLabel(pht('Daemons'));
     $nav->addFilter('/', pht('Console'));
     $nav->addFilter('log', pht('All Daemons'));
     $nav->addLabel(pht('Bulk Jobs'));
     $nav->addFilter('bulk', pht('Manage Bulk Jobs'));
     return $nav;
 }
 protected function buildSideNavView()
 {
     $nav = new AphrontSideNavFilterView();
     $nav->setBaseURI(new PhutilURI($this->getApplicationURI()));
     $nav->addLabel('Daemons');
     $nav->addFilter('', 'Console', $this->getApplicationURI());
     $nav->addFilter('log/running', 'Running Daemons');
     $nav->addFilter('log', 'All Daemons');
     $nav->addFilter('log/combined', 'Combined Log');
     $nav->addSpacer();
     $nav->addLabel('Event Timeline');
     $nav->addFilter('timeline', 'Timeline');
     return $nav;
 }
Exemplo n.º 6
0
 protected function renderSideNavFilterView()
 {
     $base_uri = new PhutilURI($this->getApplicationURI());
     $nav = new AphrontSideNavFilterView();
     $nav->setBaseURI($base_uri);
     $nav->addLabel(pht('Posts'));
     $nav->addFilter('post/all', pht('Latest Posts'));
     $nav->addFilter('post/draft', pht('My Drafts'));
     $nav->addFilter('post', pht('My Posts'));
     $nav->addLabel(pht('Blogs'));
     $nav->addFilter('blog/user', pht('Joinable Blogs'));
     $nav->addFilter('blog/all', pht('All Blogs'));
     $nav->selectFilter(null);
     return $nav;
 }
 public function buildSideNavView()
 {
     $nav = new AphrontSideNavFilterView();
     $nav->setBaseURI(new PhutilURI($this->getApplicationURI()));
     $nav->addLabel('Mail Logs');
     $nav->addFilter('sent', 'Sent Mail', $this->getApplicationURI());
     $nav->addFilter('received', 'Received Mail');
     $nav->addSpacer();
     if ($this->getRequest()->getUser()->getIsAdmin()) {
         $nav->addLabel('Diagnostics');
         $nav->addFilter('send', 'Send Test');
         $nav->addFilter('receive', 'Receive Test');
     }
     return $nav;
 }
 public function buildStandardPageResponse($view, array $data)
 {
     $page = $this->buildStandardPageView();
     $page->setApplicationName('Conduit');
     $page->setBaseURI('/conduit/');
     $page->setTitle(idx($data, 'title'));
     $page->setGlyph("⇵");
     if ($this->showSideNav()) {
         $nav = new AphrontSideNavFilterView();
         $nav->setBaseURI(new PhutilURI('/conduit/'));
         $method_filters = $this->getMethodFilters();
         foreach ($method_filters as $group => $methods) {
             $nav->addLabel($group);
             foreach ($methods as $method) {
                 $method_name = $method['full_name'];
                 $display_name = $method_name;
                 switch ($method['status']) {
                     case ConduitAPIMethod::METHOD_STATUS_DEPRECATED:
                         $display_name = '(' . $display_name . ')';
                         break;
                 }
                 $nav->addFilter('method/' . $method_name, $display_name);
             }
             $nav->addSpacer();
         }
         $nav->selectFilter($this->getFilter());
         $nav->appendChild($view);
         $body = $nav;
     } else {
         $body = $view;
     }
     $page->appendChild($body);
     $response = new AphrontWebpageResponse();
     return $response->setContent($page->render());
 }
 public function buildSideNavView(PhabricatorPaste $paste = null)
 {
     $nav = new AphrontSideNavFilterView();
     $nav->setBaseURI(new PhutilURI($this->getApplicationURI('filter/')));
     if ($paste) {
         $nav->addFilter('paste', 'P' . $paste->getID(), '/P' . $paste->getID());
         $nav->addSpacer();
     }
     $nav->addLabel('Create');
     $nav->addFilter('create', 'New Paste');
     $nav->addSpacer();
     $nav->addLabel('Pastes');
     $nav->addFilter('my', 'My Pastes');
     $nav->addFilter('all', 'All Pastes');
     return $nav;
 }
 public function buildSideNavView()
 {
     $nav = new AphrontSideNavFilterView();
     $base_uri = new PhutilURI('/owners/');
     $nav->setBaseURI($base_uri);
     $nav->addLabel(pht('Packages'));
     $this->getExtraPackageViews($nav);
     $nav->addFilter('view/owned', pht('Owned'));
     $nav->addFilter('view/projects', pht('Projects'));
     $nav->addFilter('view/all', pht('All'));
     $nav->selectFilter($this->getSideNavFilter(), 'view/owned');
     $filter = $nav->getSelectedFilter();
     switch ($filter) {
         case 'view/owned':
             $title = pht('Owned Packages');
             break;
         case 'view/all':
             $title = pht('All Packages');
             break;
         case 'view/projects':
             $title = pht('Projects');
             break;
         case 'new':
             $title = pht('New Package');
             break;
         default:
             $title = pht('Package');
             break;
     }
     $crumbs = $this->buildApplicationCrumbs();
     $crumbs->addTextCrumb($title);
     $crumbs->addAction(id(new PHUIListItemView())->setName(pht('Create Package'))->setHref('/owners/new/')->setIcon('fa-plus-square'));
     $nav->setCrumbs($crumbs);
     return $nav;
 }
 public function buildSideNavView($for_app = false)
 {
     $nav = new AphrontSideNavFilterView();
     $nav->setBaseURI(new PhutilURI($this->getApplicationURI()));
     $name = null;
     if ($for_app) {
         $name = $this->getRequest()->getURIData('username');
         if ($name) {
             $nav->setBaseURI(new PhutilURI('/p/'));
             $nav->addFilter("{$name}/", $name);
             $nav->addFilter("{$name}/calendar/", pht('Calendar'));
         }
     }
     if (!$name) {
         $viewer = $this->getRequest()->getUser();
         id(new PhabricatorPeopleSearchEngine())->setViewer($viewer)->addNavigationItems($nav->getMenu());
         if ($viewer->getIsAdmin()) {
             $nav->addLabel(pht('User Administration'));
             if (PhabricatorLDAPAuthProvider::getLDAPProvider()) {
                 $nav->addFilter('ldap', pht('Import from LDAP'));
             }
             $nav->addFilter('logs', pht('Activity Logs'));
             $nav->addFilter('invite', pht('Email Invitations'));
         }
     }
     return $nav;
 }
 private function renderSideNav($oauth_providers)
 {
     $sidenav = new AphrontSideNavFilterView();
     $sidenav->setBaseURI(new PhutilURI('/settings/page/'))->addLabel('Account Information')->addFilter('account', 'Account')->addFilter('profile', 'Profile')->addSpacer()->addLabel('Email')->addFilter('email', 'Email Address')->addFilter('emailpref', 'Email Preferences')->addSpacer()->addLabel('Authentication');
     if (PhabricatorEnv::getEnvConfig('account.editable') && PhabricatorEnv::getEnvConfig('auth.password-auth-enabled')) {
         $sidenav->addFilter('password', 'Password');
     }
     $sidenav->addFilter('conduit', 'Conduit Certificate');
     if (PhabricatorUserSSHKeysSettingsPanelController::isEnabled()) {
         $sidenav->addFilter('sshkeys', 'SSH Public Keys');
     }
     $sidenav->addSpacer();
     $sidenav->addLabel('Application Settings');
     $sidenav->addFilter('preferences', 'Display Preferences');
     $sidenav->addFilter('search', 'Search Preferences');
     $items = array();
     foreach ($oauth_providers as $provider) {
         if (!$provider->isProviderEnabled()) {
             continue;
         }
         $key = $provider->getProviderKey();
         $name = $provider->getProviderName();
         $items[$key] = $name . ' Account';
     }
     if ($items) {
         $sidenav->addSpacer();
         $sidenav->addLabel('Linked Accounts');
         foreach ($items as $key => $name) {
             $sidenav->addFilter($key, $name);
         }
     }
     return $sidenav;
 }
 /**
  * @param PhutilURI $uri
  */
 public function buildSideNavView($viewer, $uri, $for_app = false)
 {
     $request = $this->getRequest();
     $id = $request->getURIData('id');
     $slug = $request->getURIData('slug');
     if ($slug) {
         $id = $this->getProjectIDfromSlug($slug, $viewer);
     }
     $nav = new AphrontSideNavFilterView();
     $nav->setBaseURI($uri);
     if ($for_app) {
         if ($id) {
             $nav->addFilter("profile/{$id}/", pht('Profile'));
             $nav->addFilter("board/{$id}/", pht('Workboard'));
             $nav->addFilter("members/{$id}/", pht('Members'));
             $nav->addFilter("feed/{$id}/", pht('Feed'));
             $nav->addFilter("details/{$id}/", pht('Edit Details'));
         }
         $nav->addFilter('create', pht('Create Project'));
     }
     id(new PhabricatorProjectSearchEngine())->setViewer($viewer)->addNavigationItems($nav->getMenu());
     if ($viewer->isLoggedIn()) {
         $nav->addLabel(pht('Sprints'));
         $nav->addFilter('report/list', pht('Sprint List'));
     }
     $nav->selectFilter(null);
     return $nav;
 }
Exemplo n.º 14
0
 private function renderSideNavFilterView($filter)
 {
     $nav = new AphrontSideNavFilterView();
     $nav->setBaseURI(new PhutilURI('/phame/'));
     $nav->addLabel('Drafts');
     $nav->addFilter('post/new', 'New Draft');
     $nav->addFilter('draft', 'My Drafts');
     $nav->addSpacer();
     $nav->addLabel('Posts');
     $nav->addFilter('post', 'My Posts');
     foreach ($this->getSideNavExtraPostFilters() as $post_filter) {
         $nav->addFilter($post_filter['key'], $post_filter['name']);
     }
     $nav->selectFilter($filter, 'post');
     return $nav;
 }
 public function buildSideNavView($filter = null, $for_app = false)
 {
     $user = $this->getRequest()->getUser();
     $nav = new AphrontSideNavFilterView();
     $nav->setBaseURI(new PhutilURI($this->getApplicationURI()));
     $nav->addLabel(pht('Configuration'));
     $nav->addFilter('/', pht('Browse Settings'));
     $nav->addFilter('all/', pht('All Settings'));
     $nav->addFilter('history/', pht('Settings History'));
     $nav->addLabel(pht('Setup'));
     $nav->addFilter('issue/', pht('Setup Issues'));
     $nav->addLabel(pht('Database'));
     $nav->addFilter('database/', pht('Database Status'));
     $nav->addFilter('dbissue/', pht('Database Issues'));
     $nav->addLabel(pht('Cache'));
     $nav->addFilter('cache/', pht('Cache Status'));
     $nav->addLabel(pht('Cluster'));
     $nav->addFilter('cluster/databases/', pht('Database Servers'));
     $nav->addFilter('cluster/notifications/', pht('Notification Servers'));
     $nav->addFilter('cluster/repositories/', pht('Repository Servers'));
     $nav->addLabel(pht('Welcome'));
     $nav->addFilter('welcome/', pht('Welcome Screen'));
     $nav->addLabel(pht('Modules'));
     $modules = PhabricatorConfigModule::getAllModules();
     foreach ($modules as $key => $module) {
         $nav->addFilter('module/' . $key . '/', $module->getModuleName());
     }
     return $nav;
 }
 private function buildNavAndSelectFilter()
 {
     $nav = new AphrontSideNavFilterView();
     $nav->setBaseURI(new PhutilURI('/audit/view/'));
     $nav->addLabel('Active');
     $nav->addFilter('active', 'Need Attention');
     $nav->addLabel('Audits');
     $nav->addFilter('audits', 'All');
     $nav->addFilter('user', 'By User');
     $nav->addFilter('project', 'By Project');
     $nav->addFilter('package', 'By Package');
     $nav->addLabel('Commits');
     $nav->addFilter('commits', 'All');
     $nav->addFilter('author', 'By Author');
     $nav->addFilter('packagecommits', 'By Package');
     $this->filter = $nav->selectFilter($this->filter, 'active');
     return $nav;
 }
 protected function buildSideNav()
 {
     $nav = new AphrontSideNavFilterView();
     $nav->setBaseURI(new PhutilURI($this->getApplicationURI()));
     $nav->addLabel(pht('Tokens'));
     $nav->addFilter('given/', pht('Tokens Given'));
     $nav->addFilter('leaders/', pht('Leader Board'));
     return $nav;
 }
Exemplo n.º 18
0
 public function buildSideNavView()
 {
     $viewer = $this->getViewer();
     $nav = new AphrontSideNavFilterView();
     $nav->setBaseURI(new PhutilURI($this->getApplicationURI()));
     id(new HeraldRuleSearchEngine())->setViewer($viewer)->addNavigationItems($nav->getMenu());
     $nav->addLabel(pht('Utilities'))->addFilter('test', pht('Test Console'))->addFilter('transcript', pht('Transcripts'));
     $nav->selectFilter(null);
     return $nav;
 }
 protected function buildSideNavView($for_app = false)
 {
     $nav = new AphrontSideNavFilterView();
     $nav->setBaseURI(new PhutilURI($this->getApplicationURI()));
     if ($for_app) {
         $nav->addLabel(pht('Create'));
         $nav->addFilter('', pht('Add Authentication Provider'), $this->getApplicationURI('/config/new/'));
     }
     return $nav;
 }
Exemplo n.º 20
0
 protected function buildSideNavView(PonderQuestion $question = null)
 {
     $side_nav = new AphrontSideNavFilterView();
     $side_nav->setBaseURI(new PhutilURI($this->getApplicationURI()));
     if ($question && $question->getID()) {
         $side_nav->addFilter(null, 'Q' . $question->getID(), 'Q' . $question->getID());
         $side_nav->addSpacer();
     }
     $side_nav->addLabel('Create');
     $side_nav->addFilter('question/ask', 'Ask a Question');
     $side_nav->addSpacer();
     $side_nav->addLabel('Questions');
     $side_nav->addFilter('feed', 'All Questions');
     $side_nav->addSpacer();
     $side_nav->addLabel('User');
     $side_nav->addFilter('questions', 'Your Questions');
     $side_nav->addFilter('answers', 'Your Answers');
     return $side_nav;
 }
 public function buildSideNavView(PhabricatorPaste $paste = null)
 {
     $user = $this->getRequest()->getUser();
     $nav = new AphrontSideNavFilterView();
     $nav->setBaseURI(new PhutilURI($this->getApplicationURI('filter/')));
     if ($paste) {
         $nav->addFilter('paste', 'P' . $paste->getID(), '/P' . $paste->getID());
         $nav->addSpacer();
     }
     $nav->addLabel('Create');
     $nav->addFilter('edit', 'New Paste', $this->getApplicationURI(), $relative = false, $class = $user->isLoggedIn() ? null : 'disabled');
     $nav->addSpacer();
     $nav->addLabel('Pastes');
     if ($user->isLoggedIn()) {
         $nav->addFilter('my', 'My Pastes');
     }
     $nav->addFilter('all', 'All Pastes');
     return $nav;
 }
 public function buildSideNavView()
 {
     $viewer = $this->getRequest()->getUser();
     $nav = new AphrontSideNavFilterView();
     $nav->setBaseURI(new PhutilURI($this->getApplicationURI()));
     id(new PhamePostSearchEngine())->setViewer($viewer)->addNavigationItems($nav->getMenu());
     $nav->addLabel(pht('Blogs'));
     $nav->addFilter('blog/', pht('Manage Blogs'));
     $nav->selectFilter(null);
     return $nav;
 }
 public function buildSideNavView($filter = null, $for_app = false)
 {
     $user = $this->getRequest()->getUser();
     $nav = new AphrontSideNavFilterView();
     $nav->setBaseURI(new PhutilURI($this->getApplicationURI()));
     $nav->addLabel(pht('Configuration'));
     $nav->addFilter('/', pht('Browse Settings'));
     $nav->addFilter('all/', pht('All Settings'));
     $nav->addFilter('history/', pht('Settings History'));
     $nav->addLabel(pht('Setup'));
     $nav->addFilter('issue/', pht('Setup Issues'));
     $nav->addLabel(pht('Database'));
     $nav->addFilter('database/', pht('Database Status'));
     $nav->addFilter('dbissue/', pht('Database Issues'));
     $nav->addLabel(pht('Cache'));
     $nav->addFilter('cache/', pht('Cache Status'));
     $nav->addLabel(pht('Welcome'));
     $nav->addFilter('welcome/', pht('Welcome Screen'));
     return $nav;
 }
 public function buildSideNavView()
 {
     $user = $this->getRequest()->getUser();
     $nav = new AphrontSideNavFilterView();
     $nav->setBaseURI(new PhutilURI($this->getApplicationURI()));
     id(new PhabricatorDashboardSearchEngine())->setViewer($user)->addNavigationItems($nav->getMenu());
     $nav->addLabel(pht('Panels'));
     $nav->addFilter('panel/', pht('Manage Panels'));
     $nav->selectFilter(null);
     return $nav;
 }
 protected function buildSideNavView()
 {
     $viewer = $this->getRequest()->getUser();
     $nav = new AphrontSideNavFilterView();
     $nav->setBaseURI(new PhutilURI($this->getApplicationURI()));
     id(new PhabricatorConduitSearchEngine())->setViewer($viewer)->addNavigationItems($nav->getMenu());
     $nav->addLabel('Logs');
     $nav->addFilter('log', pht('Call Logs'));
     $nav->selectFilter(null);
     return $nav;
 }
 protected function buildSideNavView($for_app = false)
 {
     $nav = new AphrontSideNavFilterView();
     $nav->setBaseURI(new PhutilURI($this->getApplicationURI()));
     if ($for_app) {
         $nav->addLabel(pht('Create'));
         $nav->addFilter('', pht('Create Macro'), $this->getApplicationURI('/create/'));
     }
     id(new PhabricatorMacroSearchEngine())->setViewer($this->getRequest()->getUser())->addNavigationItems($nav->getMenu());
     return $nav;
 }
 public function buildSideNavView()
 {
     $user = $this->getRequest()->getUser();
     $nav = new AphrontSideNavFilterView();
     $nav->setBaseURI(new PhutilURI($this->getApplicationURI()));
     id(new FundInitiativeSearchEngine())->setViewer($user)->addNavigationItems($nav->getMenu());
     $nav->addLabel(pht('Backers'));
     $nav->addFilter('backers/', pht('Find Backers'));
     $nav->selectFilter(null);
     return $nav;
 }
 public function buildSideNavView($for_app = false)
 {
     $user = $this->getRequest()->getUser();
     $nav = new AphrontSideNavFilterView();
     $nav->setBaseURI(new PhutilURI($this->getApplicationURI()));
     id(new HarbormasterBuildableSearchEngine())->setViewer($user)->addNavigationItems($nav->getMenu());
     $nav->addLabel(pht('Build Plans'));
     $nav->addFilter('plan/', pht('Manage Build Plans'));
     $nav->selectFilter(null);
     return $nav;
 }
 public function buildSideNavView($filter = null, $for_app = false)
 {
     $nav = new AphrontSideNavFilterView();
     $nav->setBaseURI(new PhutilURI($this->getApplicationURI()));
     $nav->addLabel(pht('Guides'));
     $modules = PhabricatorGuideModule::getEnabledModules();
     foreach ($modules as $key => $module) {
         $nav->addFilter($key . '/', $module->getModuleName());
     }
     return $nav;
 }
 public function buildNav()
 {
     $user = $this->getRequest()->getUser();
     $nav = new AphrontSideNavFilterView();
     $nav->setBaseURI(new PhutilURI('/'));
     $nav->addLabel('Phabricator');
     $nav->addFilter('home', 'Tactical Command', '/');
     $nav->addFilter('jump', 'Jump Nav');
     $nav->addFilter('feed', 'Feed');
     $nav->addSpacer();
     $nav->addLabel('Applications');
     $categories = $this->loadDirectoryCategories();
     foreach ($categories as $category) {
         $nav->addFilter('directory/' . $category->getID(), $category->getName());
     }
     if ($user->getIsAdmin()) {
         $nav->addSpacer();
         $nav->addFilter('directory/edit', 'Edit Applications...');
     }
     return $nav;
 }