Mercurial > hg > LGDataverses
view src/main/webapp/dataverse_header.xhtml @ 10:a50cf11e5178
Rewrite LGDataverse completely upgrading to dataverse4.0
| author | Zoe Hong <zhong@mpiwg-berlin.mpg.de> |
|---|---|
| date | Tue, 08 Sep 2015 17:00:21 +0200 |
| parents | |
| children |
line wrap: on
line source
<ui:composition xmlns="http://www.w3.org/1999/xhtml" xmlns:h="http://java.sun.com/jsf/html" xmlns:f="http://java.sun.com/jsf/core" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:p="http://primefaces.org/ui" xmlns:pt="http://xmlns.jcp.org/jsf/passthrough" xmlns:jsf="http://xmlns.jcp.org/jsf" xmlns:iqbs="http://xmlns.jcp.org/jsf/composite/iqbs"> <div id="dataverse-header-block"> <!-- Navbar Panel --> <nav id="navbarFixed" class="navbar navbar-default navbar-fixed-top" role="navigation"> <div class="container"> <div class="navbar-header"> <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#topNavBar"> <span class="sr-only">Toggle navigation</span> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </button> <a href="/"> <span class="navbar-brand"><i id="icon-dataverse" class="icon-dataverse"></i> #{bundle.dataverse}</span> </a> <h:outputLink value="#" onclick="statusInfo.show()" rendered="#{!empty settingsServiceBean.get(':StatusMessageText')}"> <span class="label label-default status">#{!empty settingsServiceBean.get(':StatusMessageHeader') ? settingsServiceBean.get(':StatusMessageHeader') : bundle['header.status.header']}</span> </h:outputLink> <ui:fragment rendered="#{empty settingsServiceBean.get(':StatusMessageText') and !empty settingsServiceBean.get(':StatusMessageHeader')}"> <span class="label label-default status">#{settingsServiceBean.get(':StatusMessageHeader')}</span> </ui:fragment> </div> <div class="collapse navbar-collapse" id="topNavBar"> <ul class="nav navbar-nav navbar-right"> <li> <a id="navbar-search-toggle" title="#{bundle['header.search.title']}"> <span class="glyphicon glyphicon-search"></span> </a> </li> <form class="navbar-form navbar-left" role="search" style="display:none;"> <div class="form-group"> <label class="sr-only" for="navbarsearch">#{bundle.search}</label> <input id="navbarsearch" type="text" class="search-input ui-inputfield ui-inputtext ui-widget ui-state-default ui-corner-all" size="28" value="" placeholder="#{bundle['header.search.title']}"/> </div> <button type="submit" class="btn btn-default" onclick="window.location = '/?q=' + document.getElementById('navbarsearch').value; return false;"> <span class="glyphicon glyphicon-search"/> #{bundle.find} </button> </form> <li> <h:outputLink value="http://dataverse.org/" target="_blank"> #{bundle['header.about']} </h:outputLink> </li> <li class="dropdown"> <span id="dataverseSupportLink" class="dropdown-toggle" data-toggle="dropdown"> #{bundle['header.guides']} <b class="caret"></b> </span> <ul class="dropdown-menu"> <li> <h:outputLink value="#{systemConfig.guidesBaseUrl}/#{systemConfig.version}/user" target="_blank"> #{bundle['header.guides.user']} </h:outputLink> </li> <li> <h:outputLink value="#{systemConfig.guidesBaseUrl}/latest/developers" target="_blank"> <h:outputText value="#{bundle['header.guides.developers']}" /> </h:outputLink> </li> <li> <h:outputLink value="#{systemConfig.guidesBaseUrl}/latest/installation" target="_blank"> <h:outputText value="#{bundle['header.guides.installation']}" /> </h:outputLink> </li> <li> <h:outputLink value="#{systemConfig.guidesBaseUrl}/#{systemConfig.version}/api" target="_blank"> <h:outputText value="#{bundle['header.guides.api']}" /> </h:outputLink> </li> </ul> </li> <h:form class="navbar-form navbar-left navbar-form-link"> <p:commandLink value="#{bundle['header.support']}" oncomplete="contactForm.show()" update=":contactDialog" actionListener="#{sendFeedbackDialog.initUserInput}"> <f:setPropertyActionListener target="#{sendFeedbackDialog.messageSubject}" value="#{bundle['dataverse']} #{dataverseService.getApplicationVersion()} #{bundle['header.contact']}"/> <f:setPropertyActionListener target="#{sendFeedbackDialog.recipient}" value="#{null}"/> <f:setPropertyActionListener target="#{sendFeedbackDialog.userMessage}" value=""/> <f:setPropertyActionListener target="#{sendFeedbackDialog.userEmail}" value=""/> </p:commandLink> </h:form> <ui:fragment rendered="#{!dataverseSession.user.authenticated}"> <li> <h:outputLink rendered="#{dataverseHeaderFragment.signupAllowed}" value="#{dataverseHeaderFragment.signupUrl}"> #{bundle['header.signUp']} </h:outputLink> </li> <li> <h:outputLink value="/loginpage.xhtml#{loginRedirectPage}"> #{bundle.login} </h:outputLink> </li> </ui:fragment> <ui:fragment rendered="#{dataverseSession.user.authenticated}"> <li class="dropdown accountName"> <span id="lnk_header_account_dropdown" class="dropdown-toggle" data-toggle="dropdown"> <ui:fragment rendered="#{dataverseSession.user.superuser}"> <span class="glyphicon glyphicon-user text-danger"></span> </ui:fragment> <h:outputText styleClass="#{dataverseSession.user.superuser ? 'text-danger' : ''}" value="#{dataverseSession.user.displayInfo.title}" id="userDisplayInfoTitle"/> <h:outputText styleClass="label label-danger" rendered="#{ dataverseHeaderFragment.getUnreadNotificationCount(dataverseSession.user.id) > 0 }" value="#{ dataverseHeaderFragment.getUnreadNotificationCount(dataverseSession.user.id) }" /> <b class="caret"></b> </span> <ul class="dropdown-menu"> <li> <h:outputLink value="/dataverseuser.xhtml"> <f:param name="selectTab" value="dataRelatedToMe" /> <h:outputText value="#{bundle['header.user.selectTab.dataRelated']}" /> </h:outputLink> </li> <li> <h:outputLink value="/dataverseuser.xhtml"> <f:param name="selectTab" value="notifications" /> <h:outputText value="#{bundle['header.user.selectTab.notifications']}" /> <h:outputText styleClass="label label-danger" rendered="#{ dataverseHeaderFragment.getUnreadNotificationCount(dataverseSession.user.id) > 0 }" value="#{dataverseHeaderFragment.getUnreadNotificationCount(dataverseSession.user.id)}" /> </h:outputLink> </li> <ui:remove> <li> <h:outputLink value="/dataverseuser.xhtml"> <f:param name="selectTab" value="groupsRoles" /> <h:outputText value="#{bundle['header.user.selectTab.groupsAndRoles']}" /> </h:outputLink> </li> </ui:remove> <li> <h:outputLink value="/dataverseuser.xhtml"> <f:param name="selectTab" value="accountInfo" /> <h:outputText value="#{bundle['header.accountInfo']}" /> </h:outputLink> </li> <li class="divider"></li> <li class="logout"> <h:form styleClass="navbar-form navbar-left" pt:role="logout"> <h:commandLink action="#{dataverseHeaderFragment.logout}" id="lnk_header_logout"> <h:outputText value="#{bundle['header.logOut']}" /> </h:commandLink> </h:form> </li> </ul> </li> </ui:fragment> </ul> </div> </div> </nav> <ui:fragment rendered="#{dataverseHeaderFragment.debugShibboleth}"> <h:outputText value="groups: #{dataverseHeaderFragment.getGroups(dataverseSession.user)}"/> <br/> <h:outputText value="permissions #{dataverseHeaderFragment.getPermissions(dataverseSession.user, dataverse)}"/> </ui:fragment> <ui:param name="dataversePage" value="#{dataverseLinksStayOnPage == true ? '' : '/dataverse.xhtml' }"/> <!-- Header Panel --> <div id="dataverseHeader" class="container bg-muted" style="background:##{!empty dataverse.dataverseTheme.backgroundColor ? dataverse.dataverseTheme.backgroundColor : 'F5F5F5'};" jsf:rendered="#{showDataverseHeader}"> <div class="dataverseHeaderLogo" style="text-align:#{!empty dataverse.dataverseTheme.logoAlignment ? dataverse.dataverseTheme.logoAlignment : 'center'};; background:##{!empty dataverse.dataverseTheme.logoBackgroundColor ? dataverse.dataverseTheme.logoBackgroundColor : 'F5F5F5'};" jsf:rendered="#{!empty dataverse.dataverseTheme.logo and dataverse.dataverseTheme.logoFormat == 'RECTANGLE'}"> <img src="/logos/#{dataverse.logoOwnerId}/#{dataverse.dataverseTheme.logo}" alt="#{dataverse.name} #{bundle.dataverse}"/> </div> <div class="dataverseHeaderBlock"> <div class="dataverseHeaderCell dataverseHeaderLogo" jsf:rendered="#{!empty dataverse.dataverseTheme.logo and dataverse.dataverseTheme.logoFormat == 'SQUARE'}"> <img src="/logos/#{dataverse.logoOwnerId}/#{dataverse.dataverseTheme.logo}" alt="#{dataverse.name} #{bundle.dataverse}"/> </div> <div class="dataverseHeaderCell dataverseHeaderName" jsf:rendered="#{!empty dataverse.name}"> <a href="/dataverse/#{dataverse.alias}" class="dataverseHeaderDataverseName" style="color:##{!empty dataverse.dataverseTheme.linkColor ? dataverse.dataverseTheme.linkColor : '428bca'};">#{dataverse.name} #{bundle.dataverse}</a> <h:outputText style="color:##{!empty dataverse.dataverseTheme.textColor ? dataverse.dataverseTheme.textColor : '888888'};" value=" (#{dataverse.affiliation})" rendered="#{!empty dataverse.affiliation}"/> <h:outputText value="#{bundle.unpublished}" styleClass="label label-warning label-unpublished" rendered="#{!dataverse.released}"/> </div> <div class="dataverseHeaderCell dataverseHeaderName" jsf:rendered="#{empty dataverse.name}"> <h:outputText styleClass="dataverseHeaderDataverseName" value="#{bundle.newDataverse}"/> </div> <div class="dataverseHeaderCell dataverseHeaderTagline" jsf:rendered="#{!empty dataverse.dataverseTheme.tagline and empty dataverse.dataverseTheme.linkUrl}"> <h:outputText escape="false" style="color:##{!empty dataverse.dataverseTheme.textColor ? dataverse.dataverseTheme.textColor : '888888'};" value="#{dataverse.dataverseTheme.tagline}" /> </div> <div class="dataverseHeaderCell dataverseHeaderLink" jsf:rendered="#{!empty dataverse.dataverseTheme.tagline and !empty dataverse.dataverseTheme.linkUrl}"> <h:outputLink value="#{dataverse.dataverseTheme.linkUrl}" style="color:##{!empty dataverse.dataverseTheme.linkColor ? dataverse.dataverseTheme.linkColor : '428bca'};" target="_blank"> <h:outputText value="#{dataverse.dataverseTheme.tagline}" escape="false"/> </h:outputLink> </div> </div> </div> <div id="breadcrumbNavBlock" class="container" jsf:rendered="#{dataverseHeaderFragment.breadcrumbs.size() > 1}"> <ui:repeat value="#{dataverseHeaderFragment.breadcrumbs}" var="breadcrumb" varStatus="status"> <h:outputText value=" > " styleClass="breadcrumbCarrot" rendered="#{!status.first}"/> <div class="breadcrumbBlock"> <h:outputText value="#{breadcrumb.breadcrumbText}" styleClass="#{'breadcrumbActive'}" rendered="#{status.last}"/> <ui:fragment rendered="#{!status.last}"> <h:outputText value="#{breadcrumb.breadcrumbText}" rendered="#{!breadcrumb.dvObject.instanceofDataverse and !breadcrumb.dvObject.instanceofDataset}"/> <ui:fragment rendered="#{breadcrumb.dvObject.instanceofDataverse}"> <a id="breadcrumbLnk#{status.index}" href="/dataverse/${breadcrumb.dvObject.alias}"> <h:outputText value="#{breadcrumb.breadcrumbText}"/> </a> </ui:fragment> <ui:fragment rendered="#{breadcrumb.dvObject.instanceofDataset}"> <a id="breadcrumbLnk#{status.index}" href="/dataset.xhtml?persistentId=${breadcrumb.dvObject.globalId}"> <h:outputText value="#{breadcrumb.breadcrumbText}"/> </a> </ui:fragment> </ui:fragment> </div> </ui:repeat> </div> <ui:remove> <!-- Removing this temporarily until we can fix the performance issues with it; replaced with generic bookmarks; will have to see how to best make this work--> <div class="dropdown #{dataverseHeaderFragment.hasVisibleChildren(dv) ? 'dropdown-toggle keep-on' : ''}" data-delay="#{dataverseHeaderFragment.hasVisibleChildren(dv) ? '800' : ''}" data-hover="#{dataverseHeaderFragment.hasVisibleChildren(dv) ? 'dropdown' : ''}" data-target="#{dataverseHeaderFragment.hasVisibleChildren(dv) ? '#' : ''}" data-close-others="#{dataverseHeaderFragment.hasVisibleChildren(dv) ? 'true' : ''}"> <h:outputText value="#{dv.name} #{bundle.dataverse}" styleClass="#{dataverse.id == dv.id ? 'breadcrumbActive' : ''}" rendered="#{dataverse.id == dv.id and dataset == null}"/> <ui:fragment rendered="#{dataverse.id != dv.id or dataset != null}" > <a id="breadcrumbLnk#{status.index}" href="/dataverse/#{dv.alias}"> <h:outputText value="#{dv.name} #{bundle.dataverse}"/> </a> </ui:fragment> <ui:fragment rendered="#{dataverseHeaderFragment.hasVisibleChildren(dv)}"> <a id="taverse" styleClass="#{dataverse.id == dv.id ? 'breadcrumbActive' : ''}" role="button"> <span class="glyphicon glyphicon-chevron-down"></span> </a> </ui:fragment> </div> <div class="dropdown-menu" role="menu" aria-labelledby="breadcrumbLnk#{status.index}" rendered="#{dataverseHeaderFragment.hasVisibleChildren(dv)}"> <p:tree value="#{dataverseHeaderFragment.getDataverseTree(dv)}" var="node" cache="true" id="tree"> <p:treeNode> <h:outputText value="#{node.name} #{bundle.dataverse}" styleClass="breadcrumbActive" rendered="#{dataverse.id == node.id and dataset == null}"/> <h:outputLink value="/dataverse/#{node.alias}" rendered="#{dataverse.id != node.id or dataset != null}"> <h:outputText value="#{node.name} #{bundle.dataverse}"/> </h:outputLink> </p:treeNode> </p:tree> </div> </ui:remove> <!-- Message Panel --> <p:fragment id="messagePanel" rendered="#{showMessagePanel}"> <div class="container messagePanel"> <iqbs:messages id="messages" collapsible="true" /> </div> </p:fragment> </div> </ui:composition>
