diff src/main/webapp/themeAndWidgetsFragment.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 diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/main/webapp/themeAndWidgetsFragment.xhtml	Tue Sep 08 17:00:21 2015 +0200
@@ -0,0 +1,224 @@
+<ui:composition 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:jsf="http://xmlns.jcp.org/jsf"
+    xmlns:p="http://primefaces.org/ui"
+    xmlns:o="http://omnifaces.org/ui">
+    <!-- Theme and Widgets Edit Tabs -->
+        <p:tabView  rendered="#{themeWidgetFragment.editDv!=null}" id="themeWidgetsTabView" widgetVar="content">
+            <p:tab id="themeTab" title="#{bundle['dataverse.theme.title']}">
+                <p:fragment autoUpdate="true">
+                    <!-- Dataverse Theme Panel -->
+                    <div class="row form-horizontal">
+                        <div class="form-group" jsf:rendered="#{themeWidgetFragment.editDv.owner!=null}">
+                            <label class="col-sm-3 control-label" for="inheritCustomization">
+                                <span data-toggle="tooltip" data-placement="auto right" class="tooltiplabel text-info" data-original-title="#{bundle['dataverse.theme.inheritCustomization.title']}">
+                                    #{bundle['dataverse.theme.inheritCustomization.label']}
+                                </span>
+                            </label>
+                            <div class="col-sm-9">
+                                <div class="checkbox">
+                                    <label class="metadata-blocks-default" for="themeRoot">
+                                        <h:selectBooleanCheckbox id="themeRoot" tabindex="7" styleClass="metadata-blocks-default" 
+                                                                 rendered="#{themeWidgetFragment.editDv.owner != null}"
+                                                                 value="#{themeWidgetFragment.inheritCustomization}" >
+                                            <p:ajax update="@widgetVar(content)" oncomplete="javascript:dataverseuser_page_rebind();" listener="#{themeWidgetFragment.checkboxListener()}"/>
+                                        </h:selectBooleanCheckbox>
+                                        <h:outputFormat value="#{bundle['dataverse.theme.inheritCustomization.checkbox']}">
+                                            <f:param value="#{themeWidgetFragment.editDv.themeRootDataverseName}"/>
+                                        </h:outputFormat>
+                                    </label>
+                                </div>
+                            </div>
+                        </div>
+                        <div class="form-group" jsf:rendered="#{themeWidgetFragment.editDv.themeRoot}">
+                            <label class="col-sm-3 control-label" for="logoFormat">
+                                <span data-toggle="tooltip" data-placement="auto right" class="tooltiplabel text-info" data-original-title="#{bundle['dataverse.theme.logo.image.title']}">
+                                    #{bundle['dataverse.theme.logo.image']}
+                                </span>
+                            </label>
+                            <div class="col-sm-9">
+                                <p class="help-block"><span class="glyphicon glyphicon-info-sign"/> #{bundle['dataverse.theme.logo.tip']}</p>
+                                <p:panelGrid rendered="#{not empty themeWidgetFragment.editDv.dataverseTheme.logo}" columns="3" styleClass="noBorders" columnClasses="text-center,uploadNewLogo,messageCell">
+                                    <p:column>
+                                        <p>
+                                            <img jsf:rendered="#{themeWidgetFragment.uploadExists()}" class="logoPreview" src="/logos/temp/#{themeWidgetFragment.tempDirName}/#{themeWidgetFragment.editDv.dataverseTheme.logo}" alt="#{themeWidgetFragment.editDv.name} #{bundle.dataverse}"/>
+                                            <img jsf:rendered="#{not themeWidgetFragment.uploadExists()}" class="logoPreview" src="/logos/#{themeWidgetFragment.editDv.id}/#{themeWidgetFragment.editDv.dataverseTheme.logo}" alt="#{themeWidgetFragment.editDv.name} #{bundle.dataverse}"/>
+                                        </p>
+                                        <p:commandButton update=":themeWidgetsForm:themeWidgetsTabView" value="#{bundle.remove}" action="#{themeWidgetFragment.removeLogo()}" oncomplete="bind_bsui_components();"/>
+                                    </p:column>                              
+                                    <p:fileUpload invalidFileMessage="#{bundle['dataverse.theme.logo.image.invalidMsg']}" id="changelogo" allowTypes="/(\.|\/)(jpg|jpeg|tff|png|gif)$/" update=":themeWidgetsForm:themeWidgetsTabView" oncomplete="bind_bsui_components();" dragDropSupport="true" auto="true" multiple="false"
+                                                  fileUploadListener="#{themeWidgetFragment.handleImageFileUpload}" label="#{bundle['dataverse.theme.logo.image.upload']}"/>
+                                </p:panelGrid>
+                                <p:panelGrid rendered="#{empty themeWidgetFragment.editDv.dataverseTheme.logo}" columns="2" styleClass="noBorders">
+                                    <p:fileUpload id="uploadlogo" invalidFileMessage="#{bundle['dataverse.theme.logo.image.invalidMsg']}" sizeLimit="500000" allowTypes="/(\.|\/)(jpg|jpeg|tff|png|gif)$/" update=":themeWidgetsForm:themeWidgetsTabView" oncomplete="bind_bsui_components();" dragDropSupport="true" auto="true" multiple="false"
+                                                  fileUploadListener="#{themeWidgetFragment.handleImageFileUpload}" label="#{bundle['dataverse.theme.logo.image.uploadImgFile']}"/>
+                                </p:panelGrid>
+                                <ui:fragment rendered="#{not empty themeWidgetFragment.editDv.dataverseTheme.logo}">
+                                    <div class="form-col-container col-sm-4">
+                                        <label for="logoFormat" class="control-label">
+                                            <span data-toggle="tooltip" data-placement="auto right" class="tooltiplabel text-info" data-original-title="#{bundle['dataverse.theme.logo.format.title']}">
+                                                #{bundle['dataverse.theme.logo.format']}
+                                            </span>
+                                        </label>
+                                        <div>
+                                            <p:panelGrid columns="2" styleClass="noBorders">
+                                                <p:selectOneRadio id="logoFormat" value="#{themeWidgetFragment.editDv.dataverseTheme.logoFormat}">
+                                                    <f:selectItem itemLabel="#{bundle['dataverse.theme.logo.format.selectTab.square2']}" itemValue="SQUARE"/>
+                                                    <f:selectItem itemLabel="#{bundle['dataverse.theme.logo.format.selectTab.rectangle2']}" itemValue="RECTANGLE"/>
+                                                    <p:ajax update="@widgetVar(content)" oncomplete="dataverseuser_page_rebind();" />
+                                                </p:selectOneRadio>
+                                                <p:message for="logoFormat" display="text"/>
+                                            </p:panelGrid>
+                                        </div>
+                                    </div>
+                                    <ui:fragment rendered="#{themeWidgetFragment.editDv.dataverseTheme.logoFormat=='RECTANGLE'}">
+                                        <div class="form-col-container col-sm-3">
+                                            <label for="logoAlignment" class="control-label">
+                                                <span data-toggle="tooltip" data-placement="auto right" class="tooltiplabel text-info" data-original-title="#{bundle['dataverse.theme.logo.alignment.title']}">
+                                                    #{bundle['dataverse.theme.logo.alignment']}
+                                                </span>
+                                            </label>
+                                            <div>
+                                                <p:panelGrid columns="2" styleClass="noBorders">
+                                                    <p:selectOneMenu id="logoAlignment" styleClass="form-control" value="#{themeWidgetFragment.editDv.dataverseTheme.logoAlignment}">
+                                                        <f:selectItem id="left" itemLabel="#{bundle['dataverse.theme.logo.alignment.selectTab.left2']}" itemValue="LEFT" />
+                                                        <f:selectItem id="center" itemLabel="#{bundle['dataverse.theme.logo.alignment.selectTab.center2']}" itemValue="CENTER" />
+                                                        <f:selectItem id="right" itemLabel="#{bundle['dataverse.theme.logo.alignment.selectTab.right2']}" itemValue="RIGHT" />
+                                                    </p:selectOneMenu>
+                                                    <p:message for="logoAlignment" display="text"/>
+                                                </p:panelGrid>
+                                            </div>
+                                        </div>
+                                        <div class="form-col-container col-sm-4">
+                                            <label for="logoBackgroundColor" class="control-label">
+                                                <span data-toggle="tooltip" data-placement="auto right" class="tooltiplabel text-info" data-original-title="#{bundle['dataverse.theme.logo.backColor.title']}">
+                                                    #{bundle['dataverse.theme.logo.backColor']}
+                                                </span>
+                                            </label>
+                                            <div>
+                                                <p:panelGrid columns="2" styleClass="noBorders">
+                                                    <p:colorPicker id="logoBackgroundColor" value="#{themeWidgetFragment.editDv.dataverseTheme.logoBackgroundColor}"/>
+                                                    <p:message for="logoBackgroundColor" display="text"/>
+                                                </p:panelGrid>
+                                            </div>
+                                        </div>
+                                    </ui:fragment>
+                                </ui:fragment>
+                            </div>
+                        </div>
+                    </div>
+                    <ui:fragment rendered="#{themeWidgetFragment.editDv.themeRoot}">
+                        <div class="row form-horizontal">
+                            <div class="form-group">
+                                <label class="col-sm-3 control-label">
+                                    <span data-toggle="tooltip" data-placement="auto right" class="tooltiplabel text-info" data-original-title="#{bundle['dataverse.theme.headerColor.tip']}">
+                                        #{bundle['dataverse.theme.headerColor']}
+                                    </span>
+                                </label>
+                                <div class="form-group col-sm-9">
+                                    <div class="form-col-container col-sm-4">
+                                        <label for="backgroundColor" class="control-label">
+                                            <span data-toggle="tooltip" data-placement="auto right" class="tooltiplabel text-info" data-original-title="#{bundle['dataverse.theme.backColor.title']}">
+                                                #{bundle['dataverse.theme.backColor']}
+                                            </span>
+                                        </label>
+                                        <div>
+                                            <p:panelGrid columns="2" styleClass="noBorders">
+                                                <p:colorPicker id="backgroundColor" value="#{themeWidgetFragment.editDv.dataverseTheme.backgroundColor}"/>
+                                                <p:message for="backgroundColor" display="text"/>
+                                            </p:panelGrid>
+                                        </div>
+                                    </div>
+                                    <div class="form-col-container col-sm-4">
+                                        <label for="linkColor" class="control-label">
+                                            <span data-toggle="tooltip" data-placement="auto right" class="tooltiplabel text-info" data-original-title="#{bundle['dataverse.theme.linkColor.title']}">
+                                                #{bundle['dataverse.theme.linkColor']}
+                                            </span>
+                                        </label>
+                                        <div>
+                                            <p:panelGrid columns="2" styleClass="noBorders">
+                                                <p:colorPicker id="linkColor" value="#{themeWidgetFragment.editDv.dataverseTheme.linkColor}"/>
+                                                <p:message for="linkColor" display="text"/>
+                                            </p:panelGrid>
+                                        </div>
+                                    </div>
+                                    <div class="form-col-container col-sm-4">
+                                        <label for="textColor" class="control-label">
+                                            <span data-toggle="tooltip" data-placement="auto right" class="tooltiplabel text-info" data-original-title="#{bundle['dataverse.theme.txtColor.title']}">
+                                                #{bundle['dataverse.theme.txtColor']}
+                                            </span>
+                                        </label>
+                                        <div>
+                                            <p:panelGrid columns="2" styleClass="noBorders">
+                                                <p:colorPicker id="textColor" value="#{themeWidgetFragment.editDv.dataverseTheme.textColor}"/>
+                                                <p:message for="textColor" display="text"/>
+                                            </p:panelGrid>
+                                        </div>
+                                    </div>
+                                </div>
+                            </div>
+                            <div class="form-group">
+                                <label class="col-sm-3 control-label" for="tagline">
+                                    <span data-toggle="tooltip" data-placement="auto right" class="tooltiplabel text-info" data-original-title="#{bundle['dataverse.theme.tagline.title']}">
+                                        #{bundle['dataverse.theme.tagline']}
+                                    </span>
+                                </label>
+                                <h:inputHidden id="linkAndUrl" value="true">
+                                    <f:validator validatorId="linkValidator"/>
+                                    <f:attribute name="linkUrlInput" value="#{themeWidgetFragment.linkUrlInput}"/>
+                                    <f:attribute name="taglineInput" value="#{themeWidgetFragment.taglineInput}"/>
+                                </h:inputHidden>
+                                <div class="col-sm-8">
+                                    <p class="help-block"><span class="glyphicon glyphicon-info-sign"/> #{bundle['dataverse.theme.tagline.tip']}</p>
+                                    <p:inputText id="tagline" styleClass="form-control" binding="#{themeWidgetFragment.taglineInput}" validator="#{themeWidgetFragment.validateTagline}" value="#{themeWidgetFragment.editDv.dataverseTheme.tagline}"/>
+                                    <p:message for="tagline" display="text"/>
+                                </div>
+                            </div>
+                            <div class="form-group">
+                                <label class="col-sm-3 control-label" for="website">
+                                    <span data-toggle="tooltip" data-placement="auto right" class="tooltiplabel text-info" data-original-title="#{bundle['dataverse.theme.website.title']}">
+                                        #{bundle['dataverse.theme.website']}
+                                    </span>
+                                </label>
+                                <div class="col-sm-6">
+                                    <p class="help-block"><span class="glyphicon glyphicon-info-sign"/> #{bundle['dataverse.theme.website.tip']}</p>
+                                    <p:inputText id="website" styleClass="form-control" binding="#{themeWidgetFragment.linkUrlInput}" validatorMessage="#{bundle['dataverse.theme.website.invalidMsg']}" validator="#{themeWidgetFragment.validateUrl}" value="#{themeWidgetFragment.editDv.dataverseTheme.linkUrl}"/>
+                                    <p:watermark for="website" value="#{bundle['dataverse.theme.website.watermark']}" id="watermark" />
+                                    <p:message for="website" display="text"/>
+                                </div>
+                            </div>
+                        </div>
+                    </ui:fragment>
+                </p:fragment>
+                <div class="button-block">
+                    <p:commandButton value="#{bundle.saveChanges}" update=":#{p:component('messagePanel')}, :themeWidgetsForm" action="#{themeWidgetFragment.save()}"/>
+                    <p:commandButton action="#{themeWidgetFragment.cancel()}" immediate="true" id="themeCancel" value="#{bundle.cancel}"/>
+                </div>
+            </p:tab>
+            <p:tab id="widgetsTab" title="#{bundle['dataverse.widgets.title']}">
+                <p class="help-block"><span class="glyphicon glyphicon-info-sign"/> #{bundle['dataverse.widgets.tip']}</p>
+                <div>
+                    <h5>
+                        #{bundle['dataverse.widgets.searchBox.txt']}
+                    </h5>
+                    <p class="help-block">#{bundle['dataverse.widgets.searchBox.tip']}</p>
+                </div>
+                <div>
+                    <textarea rows="3" cols="54" class="form-control">&lt;script src=&quot;#{systemConfig.dataverseSiteUrl}/resources/js/widgets.js?alias=#{themeWidgetFragment.editDv.alias}&amp;amp;dvUrl=#{systemConfig.dataverseSiteUrl}&amp;amp;widget=search&amp;amp;text=Search&#43;my&#43;dataverse&quot;&gt;&lt;/script&gt;</textarea>
+                </div>
+                <div>
+                    <h5>
+                        #{bundle['dataverse.widgets.dataverseListing.txt']}
+                    </h5>
+                    <p class="help-block">#{bundle['dataverse.widgets.dataverseListing.tip']}</p>
+                </div>
+                <div>
+                    <textarea rows="2" cols="54" class="form-control">&lt;script src=&quot;#{systemConfig.dataverseSiteUrl}/resources/js/widgets.js?alias=#{themeWidgetFragment.editDv.alias}&amp;amp;dvUrl=#{systemConfig.dataverseSiteUrl}&amp;amp;widget=iframe&amp;amp;heightPx=500&quot;&gt;&lt;/script&gt;</textarea>
+                </div>
+                <div class="button-block">
+                    <p:commandButton action="#{themeWidgetFragment.cancel()}" immediate="true" id="widgetsDone" value="#{bundle.done}"/>
+                </div>
+            </p:tab>
+        </p:tabView>
+</ui:composition>
\ No newline at end of file