from branch of project todolist
This commit is contained in:
14
src/main/webapp/WEB-INF/faces-config.xml
Normal file
14
src/main/webapp/WEB-INF/faces-config.xml
Normal file
@ -0,0 +1,14 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<faces-config xmlns="http://java.sun.com/xml/ns/javaee"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd"
|
||||
version="2.0">
|
||||
<lifecycle>
|
||||
<phase-listener>de.jooqFaces.JooqFacesRenderResponsePhaseListener</phase-listener>
|
||||
<phase-listener>de.jooqFaces.JooqFacesRestoreViewPhaseListener</phase-listener>
|
||||
</lifecycle>
|
||||
<factory>
|
||||
<faces-context-factory>de.jooqFaces.JooqFacesContextFactory</faces-context-factory>
|
||||
</factory>
|
||||
</faces-config>
|
69
src/main/webapp/WEB-INF/web.xml
Normal file
69
src/main/webapp/WEB-INF/web.xml
Normal file
@ -0,0 +1,69 @@
|
||||
<?xml version='1.0' encoding='UTF-8'?>
|
||||
<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
|
||||
<display-name>timetrack</display-name>
|
||||
<filter>
|
||||
<filter-name>EncodingFilter</filter-name>
|
||||
<filter-class>de.jottyfan.timetrack.help.EncodingFilter</filter-class>
|
||||
<init-param>
|
||||
<param-name>encoding</param-name>
|
||||
<param-value>UTF-8</param-value>
|
||||
</init-param>
|
||||
</filter>
|
||||
<servlet>
|
||||
<servlet-name>Faces Servlet</servlet-name>
|
||||
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
|
||||
<load-on-startup>1</load-on-startup>
|
||||
</servlet>
|
||||
<servlet-mapping>
|
||||
<servlet-name>Faces Servlet</servlet-name>
|
||||
<url-pattern>*.jsf</url-pattern>
|
||||
</servlet-mapping>
|
||||
<session-config>
|
||||
<session-timeout>580</session-timeout>
|
||||
</session-config>
|
||||
<welcome-file-list>
|
||||
<welcome-file>pages/start.jsf</welcome-file>
|
||||
</welcome-file-list>
|
||||
<context-param>
|
||||
<param-name>org.apache.myfaces.RENDER_VIEWSTATE_ID</param-name>
|
||||
<param-value>false</param-value>
|
||||
</context-param>
|
||||
<context-param>
|
||||
<param-name>javax.faces.DATETIMECONVERTER_DEFAULT_TIMEZONE_IS_SYSTEM_TIMEZONE</param-name>
|
||||
<param-value>true</param-value>
|
||||
</context-param>
|
||||
<context-param>
|
||||
<param-name>javax.faces.STATE_SAVING_METHOD</param-name>
|
||||
<param-value>client</param-value>
|
||||
</context-param>
|
||||
<context-param>
|
||||
<param-name>javax.faces.FACELETS_SKIP_COMMENTS</param-name>
|
||||
<param-value>true</param-value>
|
||||
</context-param>
|
||||
<context-param>
|
||||
<param-name>javax.faces.PROJECT_STAGE</param-name>
|
||||
<param-value>Production</param-value>
|
||||
<!-- <param-value>Development</param-value> -->
|
||||
</context-param>
|
||||
<context-param>
|
||||
<param-name>org.apache.myfaces.LOG_WEB_CONTEXT_PARAMS</param-name>
|
||||
<param-value>false</param-value>
|
||||
</context-param>
|
||||
<context-param>
|
||||
<param-name>BootsFaces_USETHEME</param-name>
|
||||
<param-value>true</param-value>
|
||||
</context-param>
|
||||
<context-param>
|
||||
<param-name>BootsFaces_THEME</param-name>
|
||||
<param-value>#{themeBean.currentTheme}</param-value>
|
||||
</context-param>
|
||||
<context-param>
|
||||
<param-name>jooqFacesProperties</param-name>
|
||||
<param-value>/etc/tomcat8/timetrack.properties</param-value>
|
||||
</context-param>
|
||||
<listener>
|
||||
<listener-class>de.jooqFaces.PropertiesDeploymentListener</listener-class>
|
||||
</listener>
|
||||
</web-app>
|
42
src/main/webapp/pages/contact/item.xhtml
Normal file
42
src/main/webapp/pages/contact/item.xhtml
Normal file
@ -0,0 +1,42 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:h="http://java.sun.com/jsf/html"
|
||||
xmlns:f="http://java.sun.com/jsf/core" xmlns:my="http://xmlns.jcp.org/jsf/composite/my" xmlns:b="http://bootsfaces.net/ui">
|
||||
<h:head>
|
||||
<title>Kontakte</title>
|
||||
</h:head>
|
||||
<h:body>
|
||||
<ui:composition template="/pages/template.xhtml">
|
||||
<ui:define name="top"></ui:define>
|
||||
<ui:define name="main">
|
||||
<b:panel title="Kontakt" look="primary">
|
||||
<h:form>
|
||||
<b:panelGrid colSpans="3,9">
|
||||
<h:outputText value="Vorname" />
|
||||
<b:inputText value="#{contactModel.bean.forename}" />
|
||||
<h:outputText value="Nachname" />
|
||||
<b:inputText value="#{contactModel.bean.surname}" />
|
||||
<h:outputText value="Kontakt" />
|
||||
<b:inputText value="#{contactModel.bean.contact}" />
|
||||
<h:outputText value="Typ" />
|
||||
<b:selectOneMenu value="#{contactModel.bean.type}">
|
||||
<f:selectItems value="#{contactModel.types}" var="t" itemValue="#{t}" itemLabel="#{t.literal}" />
|
||||
</b:selectOneMenu>
|
||||
<h:outputText value="" />
|
||||
<b:buttonGroup>
|
||||
<b:commandButton action="#{contactControl.toList}" value="Abbrechen" />
|
||||
<b:commandButton action="#{contactControl.doAdd}" value="Hinzufügen" look="success" iconAwesome="plus"
|
||||
rendered="#{contactModel.bean.pk == null}" />
|
||||
<b:commandButton action="#{contactControl.doUpdate}" value="Übernehmen" look="primary" iconAwesome="pencil"
|
||||
rendered="#{contactModel.bean.pk != null}" />
|
||||
<b:dropButton value="Löschen" iconAwesome="trash" look="danger" rendered="#{contactModel.bean.pk != null}">
|
||||
<b:navCommandLink action="#{contactControl.doDelete}" value="ja, wirklich" />
|
||||
</b:dropButton>
|
||||
</b:buttonGroup>
|
||||
</b:panelGrid>
|
||||
</h:form>
|
||||
</b:panel>
|
||||
</ui:define>
|
||||
</ui:composition>
|
||||
</h:body>
|
||||
</html>
|
41
src/main/webapp/pages/contact/list.xhtml
Normal file
41
src/main/webapp/pages/contact/list.xhtml
Normal file
@ -0,0 +1,41 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:h="http://java.sun.com/jsf/html" xmlns:f="http://java.sun.com/jsf/core" xmlns:my="http://xmlns.jcp.org/jsf/composite/my" xmlns:b="http://bootsfaces.net/ui">
|
||||
<h:head>
|
||||
<title>Kontakte</title>
|
||||
</h:head>
|
||||
<h:body>
|
||||
<ui:composition template="/pages/template.xhtml">
|
||||
<ui:define name="top">
|
||||
</ui:define>
|
||||
<ui:define name="main">
|
||||
<b:panel title="Kontakte" look="primary">
|
||||
<b:form>
|
||||
<b:dataTable value="#{contactModel.list}" var="bean" lang="de">
|
||||
<b:dataTableColumn label="Vorname">
|
||||
<b:commandButton action="#{(contactControl.toItem(bean))}" value="#{bean.forename}" look="link" />
|
||||
</b:dataTableColumn>
|
||||
<b:dataTableColumn label="Nachname">
|
||||
<b:commandButton action="#{(contactControl.toItem(bean))}" value="#{bean.surname}" look="link" />
|
||||
</b:dataTableColumn>
|
||||
<b:dataTableColumn label="Kontakt">
|
||||
<b:commandButton action="#{(contactControl.toItem(bean))}" value="#{bean.contact}" look="link" />
|
||||
</b:dataTableColumn>
|
||||
<b:dataTableColumn label="Typ">
|
||||
<b:commandButton action="#{(contactControl.toItem(bean))}" value="#{bean.type.literal}" look="link" rendered="#{bean.type != null}" />
|
||||
</b:dataTableColumn>
|
||||
</b:dataTable>
|
||||
</b:form>
|
||||
</b:panel>
|
||||
</ui:define>
|
||||
<ui:define name="navigation">
|
||||
<h:form>
|
||||
<b:buttonGroup>
|
||||
<b:commandButton action="#{contactControl.toStart}" value="zurück" look="primary" iconAwesome="arrow-left" />
|
||||
<b:commandButton action="#{contactControl.toItem}" value="hinzufügen" look="success" iconAwesome="plus" />
|
||||
</b:buttonGroup>
|
||||
</h:form>
|
||||
</ui:define>
|
||||
</ui:composition>
|
||||
</h:body>
|
||||
</html>
|
79
src/main/webapp/pages/done/add.xhtml
Normal file
79
src/main/webapp/pages/done/add.xhtml
Normal file
@ -0,0 +1,79 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:h="http://java.sun.com/jsf/html" xmlns:ui="http://java.sun.com/jsf/facelets"
|
||||
xmlns:f="http://java.sun.com/jsf/core" xmlns:b="http://bootsfaces.net/ui" xmlns:my="http://xmlns.jcp.org/jsf/composite/my"
|
||||
xmlns:p="http://xmlns.jcp.org/jsf/passthrough">
|
||||
<h:head>
|
||||
<title>Arbeitszeit</title>
|
||||
</h:head>
|
||||
<h:body>
|
||||
<ui:composition template="/pages/template.xhtml">
|
||||
<ui:define name="top">
|
||||
</ui:define>
|
||||
<ui:define name="main">
|
||||
<b:panel title="Arbeitszeit für #{doneModel.day}, aktualisiert um #{doneControl.currentTimeAsString}" look="success">
|
||||
<b:form id="formular">
|
||||
<h:panelGrid columns="2" columnClasses="tdtop, tdtop">
|
||||
<b:inputText id="time_from" value="#{doneModel.bean.timeFromString}">
|
||||
<f:facet name="prepend">
|
||||
<h:outputText value="Von" />
|
||||
</f:facet>
|
||||
</b:inputText>
|
||||
<b:buttonGroup p:class="form-group">
|
||||
<b:button value="--:--" onclick="document.getElementById('input_formular:time_from').value = ''; return false;"
|
||||
look="danger" />
|
||||
<ui:repeat var="time" value="#{doneModel.times}">
|
||||
<b:button onclick="document.getElementById('input_formular:time_from').value = '#{time.value}'; return false;"
|
||||
value="#{time.value}" look="#{time.look}" />
|
||||
</ui:repeat>
|
||||
</b:buttonGroup>
|
||||
<b:inputText id="time_until" value="#{doneModel.bean.timeUntilString}">
|
||||
<f:facet name="prepend">
|
||||
<h:outputText value="Bis" />
|
||||
</f:facet>
|
||||
</b:inputText>
|
||||
<b:buttonGroup p:class="form-group">
|
||||
<b:button value="--:--" onclick="document.getElementById('input_formular:time_until').value = ''; return false;"
|
||||
look="danger" />
|
||||
<ui:repeat var="time" value="#{doneModel.times}">
|
||||
<b:button onclick="document.getElementById('input_formular:time_until').value = '#{time.value}'; return false;"
|
||||
value="#{time.value}" look="#{time.look}" />
|
||||
</ui:repeat>
|
||||
</b:buttonGroup>
|
||||
</h:panelGrid>
|
||||
<b:panelGrid colSpans="4,4,4" size="xs">
|
||||
<h:outputText value="Projekt" />
|
||||
<h:outputText value="Modul" />
|
||||
<h:outputText value="Tätigkeit" />
|
||||
<b:selectOneMenu id="project" value="#{doneModel.bean.project}">
|
||||
<f:selectItem itemValue="" itemLabel="--- bitte wählen ---" />
|
||||
<f:selectItems value="#{doneModel.projects}" var="i" itemValue="#{i}" itemLabel="#{i.name}" />
|
||||
</b:selectOneMenu>
|
||||
<b:selectOneMenu id="module" value="#{doneModel.bean.module}">
|
||||
<f:selectItem itemValue="" itemLabel="--- bitte wählen ---" />
|
||||
<f:selectItems value="#{doneModel.modules}" var="i" itemValue="#{i}" itemLabel="#{i.name}" />
|
||||
</b:selectOneMenu>
|
||||
<b:selectOneMenu id="activity" value="#{doneModel.bean.activity}">
|
||||
<f:selectItem itemValue="" itemLabel="--- bitte wählen ---" />
|
||||
<f:selectItems value="#{doneModel.activities}" var="i" itemValue="#{i}" itemLabel="#{i.name}" />
|
||||
</b:selectOneMenu>
|
||||
</b:panelGrid>
|
||||
<b:buttonGroup>
|
||||
<b:commandButton action="#{doneControl.toList}" immediate="true" value="Abbrechen" />
|
||||
<b:commandButton action="#{doneControl.doAdd}" value="Eintrag hinzufügen" look="success" iconAwesome="plus" />
|
||||
</b:buttonGroup>
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function() {
|
||||
$("[id='formular:projectInner']").attr("size", 25);
|
||||
$("[id='formular:moduleInner']").attr("size", 25);
|
||||
$("[id='formular:activityInner']").attr("size", 25);
|
||||
});
|
||||
</script>
|
||||
</b:form>
|
||||
</b:panel>
|
||||
</ui:define>
|
||||
<ui:define name="navigation">
|
||||
</ui:define>
|
||||
</ui:composition>
|
||||
</h:body>
|
||||
</html>
|
37
src/main/webapp/pages/done/delete.xhtml
Normal file
37
src/main/webapp/pages/done/delete.xhtml
Normal file
@ -0,0 +1,37 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:h="http://java.sun.com/jsf/html"
|
||||
xmlns:f="http://java.sun.com/jsf/core" xmlns:my="http://xmlns.jcp.org/jsf/composite/my" xmlns:b="http://bootsfaces.net/ui">
|
||||
<h:head>
|
||||
<title>Arbeitszeit</title>
|
||||
</h:head>
|
||||
<h:body>
|
||||
<ui:composition template="/pages/template.xhtml">
|
||||
<ui:define name="top">
|
||||
Arbeitszeit
|
||||
</ui:define>
|
||||
<ui:define name="main">
|
||||
<b:panel title="Löschen eines Eintrags" look="danger" style="font-size: initial">
|
||||
<b:panelGrid colSpans="6,6" style="max-width: 200px" size="xs">
|
||||
<h:outputText value="Von: " />
|
||||
<h:outputText value="#{doneModel.bean.timeFromString}" style="font-weight: bolder" />
|
||||
<h:outputText value="Bis: " />
|
||||
<h:outputText value="#{doneModel.bean.timeUntilString}" style="font-weight: bolder" />
|
||||
<h:outputText value="Projekt: " />
|
||||
<h:outputText value="#{doneModel.bean.projectName}" style="font-weight: bolder" />
|
||||
<h:outputText value="Modul: " />
|
||||
<h:outputText value="#{doneModel.bean.moduleName}" style="font-weight: bolder" />
|
||||
<h:outputText value="Tätigkeit: " />
|
||||
<h:outputText value="#{doneModel.bean.jobName}" style="font-weight: bolder" />
|
||||
</b:panelGrid>
|
||||
<b:form>
|
||||
<b:buttonGroup>
|
||||
<b:commandButton action="#{doneControl.toInit}" immediate="true" value="Abbrechen" />
|
||||
<b:commandButton action="#{doneControl.doDelete}" value="Entfernen" look="danger" iconAwesome="trash" />
|
||||
</b:buttonGroup>
|
||||
</b:form>
|
||||
</b:panel>
|
||||
</ui:define>
|
||||
</ui:composition>
|
||||
</h:body>
|
||||
</html>
|
79
src/main/webapp/pages/done/edit.xhtml
Normal file
79
src/main/webapp/pages/done/edit.xhtml
Normal file
@ -0,0 +1,79 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:h="http://java.sun.com/jsf/html"
|
||||
xmlns:f="http://java.sun.com/jsf/core" xmlns:b="http://bootsfaces.net/ui" xmlns:my="http://xmlns.jcp.org/jsf/composite/my"
|
||||
xmlns:p="http://xmlns.jcp.org/jsf/passthrough">
|
||||
<h:head>
|
||||
<title>Arbeitszeit</title>
|
||||
</h:head>
|
||||
<h:body>
|
||||
<ui:composition template="/pages/template.xhtml">
|
||||
<ui:define name="top">
|
||||
</ui:define>
|
||||
<ui:define name="main">
|
||||
<b:panel title="Arbeitszeit für #{doneModel.day}, aktualisiert um #{doneControl.currentTimeAsString}" look="warning">
|
||||
<b:form id="formular">
|
||||
<h:panelGrid columns="2" columnClasses="tdtop, tdtop">
|
||||
<b:inputText id="time_from" value="#{doneModel.bean.timeFromString}">
|
||||
<f:facet name="prepend">
|
||||
<h:outputText value="Von" />
|
||||
</f:facet>
|
||||
</b:inputText>
|
||||
<b:buttonGroup p:class="form-group">
|
||||
<b:button value="--:--" onclick="document.getElementById('input_formular:time_from').value = ''; return false;"
|
||||
look="danger" />
|
||||
<ui:repeat var="time" value="#{doneModel.times}">
|
||||
<b:button onclick="document.getElementById('input_formular:time_from').value = '#{time.value}'; return false;"
|
||||
value="#{time.value}" look="#{time.look}" />
|
||||
</ui:repeat>
|
||||
</b:buttonGroup>
|
||||
<b:inputText id="time_until" value="#{doneModel.bean.timeUntilString}">
|
||||
<f:facet name="prepend">
|
||||
<h:outputText value="Bis" />
|
||||
</f:facet>
|
||||
</b:inputText>
|
||||
<b:buttonGroup p:class="form-group">
|
||||
<b:button value="--:--" onclick="document.getElementById('input_formular:time_until').value = ''; return false;"
|
||||
look="danger" />
|
||||
<ui:repeat var="time" value="#{doneModel.times}">
|
||||
<b:button onclick="document.getElementById('input_formular:time_until').value = '#{time.value}'; return false;"
|
||||
value="#{time.value}" look="#{time.look}" />
|
||||
</ui:repeat>
|
||||
</b:buttonGroup>
|
||||
</h:panelGrid>
|
||||
<b:panelGrid colSpans="4,4,4" size="xs">
|
||||
<h:outputText value="Projekt (#{doneModel.bean.projectName})" />
|
||||
<h:outputText value="Modul (#{doneModel.bean.moduleName})" />
|
||||
<h:outputText value="Tätigkeit (#{doneModel.bean.jobName})" />
|
||||
<b:selectOneMenu id="project" value="#{doneModel.bean.project}">
|
||||
<f:selectItem itemValue="" itemLabel="--- bitte wählen ---" />
|
||||
<f:selectItems value="#{doneModel.projects}" var="i" itemValue="#{i}" itemLabel="#{i.name}" />
|
||||
</b:selectOneMenu>
|
||||
<b:selectOneMenu id="module" value="#{doneModel.bean.module}">
|
||||
<f:selectItem itemValue="" itemLabel="--- bitte wählen ---" />
|
||||
<f:selectItems value="#{doneModel.modules}" var="i" itemValue="#{i}" itemLabel="#{i.name}" />
|
||||
</b:selectOneMenu>
|
||||
<b:selectOneMenu id="activity" value="#{doneModel.bean.activity}">
|
||||
<f:selectItem itemValue="" itemLabel="--- bitte wählen ---" />
|
||||
<f:selectItems value="#{doneModel.activities}" var="i" itemValue="#{i}" itemLabel="#{i.name}" />
|
||||
</b:selectOneMenu>
|
||||
</b:panelGrid>
|
||||
<b:buttonGroup>
|
||||
<b:commandButton action="#{doneControl.toList}" immediate="true" value="Abbrechen" />
|
||||
<b:commandButton action="#{doneControl.doUpdate}" value="Aktualisieren" iconAwesome="pencil" look="warning" />
|
||||
</b:buttonGroup>
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function() {
|
||||
$("[id='formular:projectInner']").attr("size", 25);
|
||||
$("[id='formular:moduleInner']").attr("size", 25);
|
||||
$("[id='formular:activityInner']").attr("size", 25);
|
||||
});
|
||||
</script>
|
||||
</b:form>
|
||||
</b:panel>
|
||||
</ui:define>
|
||||
<ui:define name="navigation">
|
||||
</ui:define>
|
||||
</ui:composition>
|
||||
</h:body>
|
||||
</html>
|
97
src/main/webapp/pages/done/init.xhtml
Normal file
97
src/main/webapp/pages/done/init.xhtml
Normal file
@ -0,0 +1,97 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:h="http://java.sun.com/jsf/html"
|
||||
xmlns:f="http://java.sun.com/jsf/core" xmlns:my="http://xmlns.jcp.org/jsf/composite/my" xmlns:b="http://bootsfaces.net/ui">
|
||||
<h:head>
|
||||
<title>Arbeitszeit</title>
|
||||
</h:head>
|
||||
<h:body>
|
||||
<ui:composition template="/pages/template.xhtml">
|
||||
<ui:define name="top"></ui:define>
|
||||
<ui:define name="main">
|
||||
<b:panel title="Arbeitszeit" look="primary">
|
||||
<b:form>
|
||||
<h:panelGrid columns="3">
|
||||
<h:outputText value="für den Tag" />
|
||||
<b:dateTimePicker value="#{doneModel.day}" showTime="false" style="padding-left: 4px" />
|
||||
<b:commandButton action="#{doneControl.toList}" value="neu laden" look="default" iconAwesome="refresh"
|
||||
style="padding-left: 4px" />
|
||||
</h:panelGrid>
|
||||
<b:tabView>
|
||||
<b:tab title="Liste">
|
||||
<b:dataTable value="#{doneModel.beans}" var="b" border="false" info="false" paginated="false" searching="false"
|
||||
styleClass="doneoverview">
|
||||
<b:dataTableColumn label="" orderable="false">
|
||||
<b:commandButton action="#{doneControl.toDelete(b)}" value="Entfernen" look="danger" iconAwesome="trash" />
|
||||
</b:dataTableColumn>
|
||||
<b:dataTableColumn label="" value="#{b.timeSummary}" contentStyleClass="doneoverviewtext" orderable="false" />
|
||||
<b:dataTableColumn label="" value="#{b.projectName}" contentStyleClass="doneoverviewtextemph" orderable="false" />
|
||||
<b:dataTableColumn label="" value="#{b.timeDiff}" contentStyleClass="doneoverviewtextemph" orderable="false" />
|
||||
<b:dataTableColumn label="" orderable="false">
|
||||
<b:commandButton action="#{doneControl.toEdit(b)}" value="Editieren" look="warning" iconAwesome="pencil" />
|
||||
</b:dataTableColumn>
|
||||
<b:dataTableColumn label="" value="#{b.moduleName}" contentStyleClass="doneoverviewtext" orderable="false" />
|
||||
<b:dataTableColumn label="" value="#{b.jobName}" contentStyleClass="doneoverviewtext" orderable="false" />
|
||||
</b:dataTable>
|
||||
</b:tab>
|
||||
<b:tab title="Zusammenfassung">
|
||||
<b:dataTable value="#{doneModel.allJobs}" var="col" border="false" info="false" paginated="false"
|
||||
searching="false">
|
||||
<b:dataTableColumn label="" value="#{col.projectName}" contentStyle="font-size: 120%" orderable="false" />
|
||||
<b:dataTableColumn label="" value="#{col.moduleName}" contentStyle="font-size: 120%" orderable="false" />
|
||||
<b:dataTableColumn label="" value="#{col.jobName}" contentStyle="font-size: 120%" orderable="false" />
|
||||
<b:dataTableColumn label="" value="#{col.duration}" contentStyle="font-size: 120%" orderable="false" />
|
||||
</b:dataTable>
|
||||
</b:tab>
|
||||
</b:tabView>
|
||||
<b:row rendered="#{doneModel.daySummary != null}">
|
||||
<b:column colXs="4">
|
||||
<b:well styleClass="dangerWell">Pause
|
||||
<h3>
|
||||
<h:outputText value="#{doneModel.daySummary.breakTime}" />
|
||||
</h3>
|
||||
</b:well>
|
||||
</b:column>
|
||||
<b:column colXs="4">
|
||||
<b:well>Startzeit
|
||||
<h3>
|
||||
<h:outputText value="#{doneModel.daySummary.startTime}" />
|
||||
</h3>
|
||||
</b:well>
|
||||
</b:column>
|
||||
<b:column colXs="4">
|
||||
<b:well>Überstunden
|
||||
<h3>
|
||||
<h:outputText value="#{doneModel.daySummary.overtime}" />
|
||||
</h3>
|
||||
</b:well>
|
||||
</b:column>
|
||||
<b:column colXs="4">
|
||||
<b:well styleClass="successWell">Arbeitszeit
|
||||
<h3>
|
||||
<h:outputText value="#{doneModel.daySummary.workTime}" />
|
||||
</h3>
|
||||
</b:well>
|
||||
</b:column>
|
||||
<b:column colXs="4">
|
||||
<b:well>Endzeit
|
||||
<h3>
|
||||
<h:outputText value="#{doneModel.daySummary.endTime}" />
|
||||
</h3>
|
||||
</b:well>
|
||||
</b:column>
|
||||
</b:row>
|
||||
</b:form>
|
||||
</b:panel>
|
||||
</ui:define>
|
||||
<ui:define name="navigation">
|
||||
<b:form>
|
||||
<b:buttonGroup>
|
||||
<b:commandButton action="#{doneControl.toStart}" value="zurück" look="primary" iconAwesome="arrow-left" />
|
||||
<b:commandButton action="#{doneControl.toAdd}" value="Neuer Eintrag" look="success" iconAwesome="plus" />
|
||||
</b:buttonGroup>
|
||||
</b:form>
|
||||
</ui:define>
|
||||
</ui:composition>
|
||||
</h:body>
|
||||
</html>
|
47
src/main/webapp/pages/note/item.xhtml
Normal file
47
src/main/webapp/pages/note/item.xhtml
Normal file
@ -0,0 +1,47 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:h="http://java.sun.com/jsf/html" xmlns:f="http://java.sun.com/jsf/core" xmlns:my="http://xmlns.jcp.org/jsf/composite/my" xmlns:b="http://bootsfaces.net/ui">
|
||||
<h:head>
|
||||
<title>Aufgaben</title>
|
||||
</h:head>
|
||||
<h:body>
|
||||
<ui:composition template="/pages/template.xhtml">
|
||||
<ui:define name="top"></ui:define>
|
||||
<ui:define name="main">
|
||||
<b:panel title="Notizen" look="primary">
|
||||
<h:form>
|
||||
<b:panelGrid colSpans="3,9">
|
||||
<h:outputText value="Titel" />
|
||||
<b:inputText value="#{noteModel.bean.title}" />
|
||||
<h:outputText value="Kategorie" />
|
||||
<b:selectOneMenu value="#{noteModel.bean.category}">
|
||||
<f:selectItem itemLabel="PostgreSQL" itemValue="PostgreSQL" />
|
||||
<f:selectItem itemLabel="R" itemValue="R" />
|
||||
<f:selectItem itemLabel="Bootsfaces" itemValue="Bootsfaces" />
|
||||
<f:selectItem itemLabel="MyFaces" itemValue="MyFaces" />
|
||||
<f:selectItem itemLabel="Java" itemValue="Java" />
|
||||
<f:selectItem itemLabel="Bash" itemValue="Bash" />
|
||||
<f:selectItem itemLabel="Apache" itemValue="Apache" />
|
||||
<f:selectItem itemLabel="Tomcat" itemValue="Tomcat" />
|
||||
</b:selectOneMenu>
|
||||
<h:outputText value="Typ" />
|
||||
<b:selectOneMenu value="#{noteModel.bean.type}">
|
||||
<f:selectItem itemLabel="Administration" itemValue="Administration" />
|
||||
<f:selectItem itemLabel="HowTo" itemValue="HowTo" />
|
||||
</b:selectOneMenu>
|
||||
<h:outputText value="Inhalt" />
|
||||
<b:inputTextarea value="#{noteModel.bean.content}" />
|
||||
<h:outputText value="" />
|
||||
<b:buttonGroup>
|
||||
<b:commandButton action="#{noteControl.toList}" value="Abbrechen" />
|
||||
<b:commandButton action="#{noteControl.doAdd}" value="Hinzufügen" look="success" iconAwesome="plus" rendered="#{noteModel.bean.pk == null}" />
|
||||
<b:commandButton action="#{noteControl.doUpdate}" value="Übernehmen" look="primary" iconAwesome="pencil" rendered="#{noteModel.bean.pk != null}" />
|
||||
<b:commandButton action="#{noteControl.doDelete}" value="Löschen" look="danger" iconAwesome="trash" rendered="#{noteModel.bean.pk != null}" />
|
||||
</b:buttonGroup>
|
||||
</b:panelGrid>
|
||||
</h:form>
|
||||
</b:panel>
|
||||
</ui:define>
|
||||
</ui:composition>
|
||||
</h:body>
|
||||
</html>
|
45
src/main/webapp/pages/note/list.xhtml
Normal file
45
src/main/webapp/pages/note/list.xhtml
Normal file
@ -0,0 +1,45 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:h="http://java.sun.com/jsf/html" xmlns:f="http://java.sun.com/jsf/core" xmlns:my="http://xmlns.jcp.org/jsf/composite/my" xmlns:b="http://bootsfaces.net/ui">
|
||||
<h:head>
|
||||
<title>Aufgaben</title>
|
||||
</h:head>
|
||||
<h:body>
|
||||
<ui:composition template="/pages/template.xhtml">
|
||||
<ui:define name="top">
|
||||
<b:messages />
|
||||
</ui:define>
|
||||
<ui:define name="main">
|
||||
<b:panel title="Notizen" look="primary">
|
||||
<h:form>
|
||||
<b:dataTable value="#{noteModel.beans}" var="n" lang="de" pageLength="5" pageLengthMenu="5,10,20,50,100" saveState="true" striped="false">
|
||||
<b:dataTableColumn label="Titel">
|
||||
<b:commandButton action="#{noteControl.toItem(n)}" value="#{n.title}" look="link" />
|
||||
</b:dataTableColumn>
|
||||
<b:dataTableColumn label="Kategorie">
|
||||
<b:commandButton action="#{noteControl.toItem(n)}" value="#{n.category}" look="link" />
|
||||
</b:dataTableColumn>
|
||||
<b:dataTableColumn label="Typ">
|
||||
<b:commandButton action="#{noteControl.toItem(n)}" value="#{n.type}" look="link" />
|
||||
</b:dataTableColumn>
|
||||
<b:dataTableColumn label="Inhalt">
|
||||
<b:commandButton action="#{noteControl.toItem(n)}" value="#{noteControl.trimTo(n.content, 32)}" look="link" />
|
||||
</b:dataTableColumn>
|
||||
<b:dataTableColumn label="Angelegt">
|
||||
<b:commandButton action="#{noteControl.toItem(n)}" value="#{n.lastchange}" look="link" />
|
||||
</b:dataTableColumn>
|
||||
</b:dataTable>
|
||||
</h:form>
|
||||
</b:panel>
|
||||
</ui:define>
|
||||
<ui:define name="navigation">
|
||||
<h:form>
|
||||
<b:buttonGroup>
|
||||
<b:commandButton action="#{noteControl.toStart}" value="zurück" look="primary" iconAwesome="arrow-left" />
|
||||
<b:commandButton action="#{noteControl.toAdd}" value="hinzufügen" look="success" iconAwesome="plus" />
|
||||
</b:buttonGroup>
|
||||
</h:form>
|
||||
</ui:define>
|
||||
</ui:composition>
|
||||
</h:body>
|
||||
</html>
|
52
src/main/webapp/pages/start.xhtml
Normal file
52
src/main/webapp/pages/start.xhtml
Normal file
@ -0,0 +1,52 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:h="http://java.sun.com/jsf/html"
|
||||
xmlns:f="http://java.sun.com/jsf/core" xmlns:my="http://xmlns.jcp.org/jsf/composite/my" xmlns:b="http://bootsfaces.net/ui">
|
||||
<h:head>
|
||||
</h:head>
|
||||
<h:body>
|
||||
<ui:composition template="/pages/template.xhtml">
|
||||
<ui:define name="top">
|
||||
<b:messages />
|
||||
</ui:define>
|
||||
<ui:define name="main">
|
||||
<b:panel title="Einstellungen" collapsed="true" rendered="#{sessionBean.hasLogin}">
|
||||
<b:form>
|
||||
<b:selectOneMenu value="#{themeBean.currentTheme}">
|
||||
<f:selectItems value="#{themeBean.validThemes}" var="t" itemValue="#{t}" itemLabel="#{t}" />
|
||||
</b:selectOneMenu>
|
||||
<b:commandButton action="#{doneControl.toStart}" value="ändern" iconAwesome="pencil" look="warning" />
|
||||
</b:form>
|
||||
</b:panel>
|
||||
<b:panel title="Login" rendered="#{sessionBean.hasNoLogin}" styleClass="loginpanel">
|
||||
<b:form>
|
||||
<b:selectOneMenu value="#{sessionBean.username}">
|
||||
<f:facet name="prepend">
|
||||
<h:outputText value="Username" />
|
||||
</f:facet>
|
||||
<f:selectItem itemValue="henkej" itemLabel="Jörg Henke" />
|
||||
</b:selectOneMenu>
|
||||
<b:inputSecret value="#{sessionBean.secret}">
|
||||
<f:facet name="prepend">
|
||||
<h:outputText value="Passwort" />
|
||||
</f:facet>
|
||||
</b:inputSecret>
|
||||
<b:commandButton action="#{sessionControl.doLogin}" value="Login" look="primary" />
|
||||
</b:form>
|
||||
</b:panel>
|
||||
</ui:define>
|
||||
<ui:define name="navigation">
|
||||
<b:form rendered="#{sessionBean.hasLogin}">
|
||||
<b:buttonGroup>
|
||||
<b:commandButton action="#{noteControl.toList}" value="#{noteControl.amount} Notizen verwalten" look="primary"
|
||||
iconAwesome="comments-o" />
|
||||
<b:commandButton action="#{contactControl.toList}" value="#{contactControl.amount} Kontakte verwalten" look="primary"
|
||||
iconAwesome="group" />
|
||||
<b:commandButton action="#{doneControl.toList}" value="Arbeitszeit verwalten" look="primary" iconAwesome="clock-o" />
|
||||
<b:commandButton action="#{sessionControl.doLogout}" value="abmelden" look="danger" iconAwesome="sign-out" />
|
||||
</b:buttonGroup>
|
||||
</b:form>
|
||||
</ui:define>
|
||||
</ui:composition>
|
||||
</h:body>
|
||||
</html>
|
24
src/main/webapp/pages/template.xhtml
Normal file
24
src/main/webapp/pages/template.xhtml
Normal file
@ -0,0 +1,24 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:h="http://java.sun.com/jsf/html" xmlns:f="http://java.sun.com/jsf/core" xmlns:my="http://xmlns.jcp.org/jsf/composite/my" xmlns:b="http://bootsfaces.net/ui">
|
||||
<h:head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
</h:head>
|
||||
<h:body styleClass="body">
|
||||
<h:outputStylesheet name="css/style.css" />
|
||||
<h:outputScript library="bsf" name="jq/jquery.js" target="head" />
|
||||
<div class="page">
|
||||
<div class="top">
|
||||
<ui:insert name="top" />
|
||||
</div>
|
||||
<div>
|
||||
<b:messages />
|
||||
</div>
|
||||
<div class="body">
|
||||
<ui:insert name="main" />
|
||||
</div>
|
||||
<div class="navigation">
|
||||
<ui:insert name="navigation" />
|
||||
</div>
|
||||
</div>
|
||||
</h:body>
|
||||
</html>
|
36
src/main/webapp/resources/css/style.css
Normal file
36
src/main/webapp/resources/css/style.css
Normal file
@ -0,0 +1,36 @@
|
||||
.emph {
|
||||
border-radius: 3px !important;
|
||||
border: 1px solid #3070b0 !important;
|
||||
color: #ffffff !important;
|
||||
background-image: linear-gradient(to bottom, #337ab7 0%, #265a88 100%)
|
||||
!important;
|
||||
}
|
||||
|
||||
.doneoverview {
|
||||
max-width: 850px !important;
|
||||
width: 850px !important;
|
||||
}
|
||||
|
||||
.doneoverviewtext {
|
||||
font-size: 120%;
|
||||
}
|
||||
|
||||
.doneoverviewtextemph {
|
||||
font-size: 120%;
|
||||
font-weight: bolder;
|
||||
}
|
||||
|
||||
.loginpanel {
|
||||
margin-top: 100px !important;
|
||||
margin: 0 auto;
|
||||
max-width: 400px !important;
|
||||
width: 400px !important;
|
||||
}
|
||||
|
||||
.successWell {
|
||||
background-image: linear-gradient(to bottom, #ceeaca 0%, #f7fff7 100%) !important;
|
||||
}
|
||||
|
||||
.dangerWell {
|
||||
background-image: linear-gradient(to bottom, #eacaca 0%, #fff7f7 100%) !important;
|
||||
}
|
29
src/main/webapp/resources/my/selectOneMenu.xhtml
Normal file
29
src/main/webapp/resources/my/selectOneMenu.xhtml
Normal file
@ -0,0 +1,29 @@
|
||||
<ui:composition xmlns="http://www.w3.org/1999/xhtml" xmlns:ui="http://xmlns.jcp.org/jsf/facelets" xmlns:f="http://xmlns.jcp.org/jsf/core" xmlns:h="http://xmlns.jcp.org/jsf/html" xmlns:cc="http://xmlns.jcp.org/jsf/composite"
|
||||
xmlns:b="http://bootsfaces.net/ui">
|
||||
<cc:interface>
|
||||
<cc:attribute name="list" required="true" type="java.util.List" />
|
||||
<cc:attribute name="value" required="true" default="" />
|
||||
<cc:attribute name="styleClass" required="false" default="" />
|
||||
<cc:attribute name="readonly" required="false" default="true" />
|
||||
</cc:interface>
|
||||
<cc:implementation>
|
||||
<h:outputScript library="bsf" name="jq/jquery.js" target="head" />
|
||||
<script type="text/javascript">
|
||||
function setValue(dest, content)
|
||||
{
|
||||
$("[id='" + dest + "']").val(content);
|
||||
}
|
||||
</script>
|
||||
<b:inputText id="input" value="#{cc.attrs.value}" styleClass="#{cc.attrs.styleClass}" readonly="#{cc.attrs.readonly}">
|
||||
<f:facet name="prepend">
|
||||
<b:dropButton value="">
|
||||
<h:dataTable value="#{cc.attrs.list}" var="l">
|
||||
<h:column>
|
||||
<b:button value="#{l}" onclick="setValue('input_#{cc.clientId}:input', '#{l}'); return false;" look="link" />
|
||||
</h:column>
|
||||
</h:dataTable>
|
||||
</b:dropButton>
|
||||
</f:facet>
|
||||
</b:inputText>
|
||||
</cc:implementation>
|
||||
</ui:composition>
|
Reference in New Issue
Block a user