<span class="header-bar-parent"> <div class="header-bar-element" ng-class="Features.BILLING ? 'dark' : 'light'"> <div class="header-bar-content" ng-class="searchVisible ? 'search-visible' : ''"> <!-- Quay --> <div class="navbar-header"> <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-ex1-collapse"> ≡ </button> <a class="navbar-brand" ng-href="{{ user.anonymous ? '/' : '/repository/' }}"> <span id="quay-logo" ng-style="{'background-image': 'url(' + getEnterpriseLogo() + ')'}" ng-class="Config.ENTERPRISE_LOGO_URL ? 'enterprise-logo' : 'hosted-logo'"></span> </a> <span class="user-tools visible-xs" style="float: right;"> <i class="fa fa-search fa-lg user-tool" ng-click="toggleSearch()" data-placement="bottom" data-title="Search" bs-tooltip ng-if="searchingAllowed"></i> </span> </div> <!-- Collapsable stuff --> <div class="collapse navbar-collapse navbar-ex1-collapse"> <!-- Not signed in --> <ul class="nav navbar-nav navbar-links" ng-if="user.anonymous"> <li><a ng-href="/tour/" quay-section="tour">Tour</a></li> <li><a ng-href="/tutorial/" quay-section="tutorial">Tutorial</a></li> <li quay-require="['BILLING']"><a ng-href="/plans/" quay-section="plans">Pricing</a></li> <li><a href="https://docs.quay.io/" ng-safenewtab>Docs</a></li> <li><a href="https://blog.quay.io/" ng-safenewtab>Blog</a></li> </ul> <!-- Signed in --> <ul class="nav navbar-nav navbar-links" ng-if="!user.anonymous"> <li><a ng-href="/repository/" quay-section="repository">Repositories</a></li> <li><a ng-href="/tutorial/" quay-section="tutorial">Tutorial</a></li> <li><a href="https://docs.quay.io/" ng-safenewtab>Docs</a></li> <li><a href="https://blog.quay.io/" ng-safenewtab>Blog</a></li> </ul> <!-- Phone --> <ul class="nav navbar-nav navbar-right visible-xs" ng-switch on="user.anonymous"> <li ng-switch-when="false"> <a href="/user/{{ user.username }}?tab=settings" class="user-view"> <span class="avatar" size="32" data="user.avatar"></span> {{ user.username }} </a> <a ng-click="signout()">Sign out</a> </li> <li ng-switch-default> <a class="user-view" href="/signin/" ng-if="!externalSigninUrl">Sign in</a> <a class="user-view" ng-href="{{ externalSigninUrl }}" ng-if="externalSigninUrl">Sign in</a> </li> </ul> <!-- Normal --> <ul class="nav navbar-nav navbar-right hidden-xs" ng-switch on="user.anonymous"> <li> <span class="navbar-left user-tools"> <i class="fa fa-search fa-lg user-tool" ng-click="toggleSearch()" data-placement="bottom" data-title="Search - Keyboard Shortcut: /" bs-tooltip ng-if="searchingAllowed"></i> </span> </li> <li> <span class="navbar-left user-tools with-menu" ng-show="!user.anonymous"> <span class="dropdown"> <a class="dropdown-toggle new-menu" data-toggle="dropdown"> <i class="fa fa-plus user-tool" data-placement="bottom" data-title="Create New..." bs-tooltip></i> <b class="caret"></b> </a> <ul class="dropdown-menu context-dropdown"> <li> <a href="/organizations/new"> <span class="avatar" size="16" data="{'name': '+', color: '#ccc'}"></span> New Organization </a> </li> <li> <a href="/new{{ getNamespace(currentPageContext) ? '?namespace=' + getNamespace(currentPageContext) : '' }}"> <i class="fa fa-hdd-o"></i> New Repository </a> </li> <li role="presentation" class="divider" ng-if="getNamespace(currentPageContext) && canAdmin(getNamespace(currentPageContext))"></li> <li role="presentation" class="dropdown-header" ng-if="getNamespace(currentPageContext) && canAdmin(getNamespace(currentPageContext))"> Namespace {{ getNamespace(currentPageContext) }} </li> <li ng-if="isOrganization(getNamespace(currentPageContext)) && canAdmin(getNamespace(currentPageContext))"> <a ng-click="askCreateTeam(currentPageContext)"> <i class="fa fa-group"></i> New Team </a> </li> <li ng-if="canAdmin(getNamespace(currentPageContext))"> <a ng-click="askCreateRobot(currentPageContext)"> <i class="fa ci-robot"></i> New Robot Account </a> </li> <li role="presentation" class="divider" ng-if="currentPageContext.repository && currentPageContext.repository.can_write"></li> <li role="presentation" class="dropdown-header" ng-if="currentPageContext.repository && currentPageContext.repository.can_write"> Repository {{ currentPageContext.repository.namespace }}/{{ currentPageContext.repository.name }} </li> <li ng-if="currentPageContext.repository && currentPageContext.repository.can_write"> <a ng-click="startBuild()"> <i class="fa fa-tasks"></i> New Dockerfile Build </a> </li> </ul> </span> </span> </li> <li> <span class="navbar-left user-tools" ng-show="!user.anonymous"> <a data-template="/static/directives/notification-bar.html" data-container="body" data-animation="am-slide-right" bs-aside> <i class="fa fa-bell user-tool" data-placement="bottom" data-title="Notifications" bs-tooltip></i> <span class="notifications-bubble"></span> </a> </span> </li> <li class="dropdown" ng-switch-when="false"> <a class="dropdown-toggle user-dropdown user-view" data-toggle="dropdown"> <span class="avatar" size="32" data="user.avatar"></span> {{ user.username }} <b class="caret"></b> </a> <ul class="dropdown-menu"> <li> <a href="/user/{{ user.username }}?tab=settings"> Account Settings </a> </li> <li ng-if="user.super_user"><a href="/superuser/"><strong>Super User Admin Panel</strong></a></li> <li><a ng-click="signout()">Sign out</a></li> </ul> </li> <li ng-switch-default> <a class="user-view" href="/signin/" ng-if="!externalSigninUrl">Sign in</a> <a class="user-view" ng-href="{{ externalSigninUrl }}" ng-if="externalSigninUrl">Sign in</a> </li> </ul> </div><!-- /.navbar-collapse --> </div> <div class="search-box" ng-class="getSearchBoxClasses(searchVisible, searchResultState)"> <div class="search-label">Search For</div> <div class="search-box-wrapper"> <input id="search-box-input" type="search" placeholder="(Enter Search Terms)" ng-model-options="{'debounce': 250}" ng-model="currentSearchQuery" ng-keydown="handleSearchKeyDown($event)"> </div> </div> <div class="search-results" ng-class="searchVisible && searchResultState ? searchResultState.state : ''" ng-class="{'height': (searchResultState.results.length * 40) + 28}"> <div class="cor-loader" ng-if="searchResultState.state == 'loading'"></div> <div ng-if="searchResultState.state == 'no-results'">No matching results found</div> <ul ng-if="searchResultState.state == 'results'"> <li ng-repeat="result in searchResultState.results" ng-mouseover="setCurrentResult($index)" ng-class="searchResultState.current == $index ? 'current' : ''" ng-click="showResult(result)"> <span class="kind">{{ result.kind }}</span> <span class="score" style="display: none">{{ result.score.toString().substr(0, 4) }}</span> <span ng-switch on="result.kind"> <!-- Team --> <span ng-switch-when="team"> <strong> <span class="avatar" data="result.avatar" size="16"></span> <span class="result-name">{{ result.name }}</span> </strong> <span class="clarification"> under organization <span class="avatar" data="result.organization.avatar" size="16"></span> <span class="result-name">{{ result.organization.name }}</span> </span> </span> <span ng-switch-when="user"> <span class="avatar" data="result.avatar" size="16"></span> <span class="result-name">{{ result.name }}</span> </span> <span ng-switch-when="organization"> <span class="avatar" data="result.avatar" size="16"></span> <span class="result-name">{{ result.name }}</span> </span> <span ng-switch-when="robot"> <i class="fa ci-robot"></i> <span class="result-name">{{ result.name }}</span> </span> <span ng-switch-when="doc"> <i class="fa fa-book"></i> <span class="result-name">{{ result.name }}</span> </span> <span ng-switch-when="repository"> <span class="avatar" data="result.namespace.avatar" size="16"></span> <span class="result-name">{{ result.namespace.name }}/{{ result.name }}</span> <div class="result-description" ng-if="result.description"> <div class="description markdown-view" content="result.description" first-line-only="true" placeholder-needed="false"></div> </div> </span> </span> </li> </ul> </div> <div class="create-robot-dialog" info="createRobotInfo" robot-created="handleRobotCreated(robot, currentPageContext)"> </div> <div class="create-team-dialog" info="createTeamInfo" team-created="handleTeamCreated(team, currentPageContext)"> </div> <div class="dockerfile-build-dialog" show-now="showBuildDialogCounter" repository="currentPageContext.repository" build-started="handleBuildStarted(build, currentPageContext)"> </div> </div> </span>