Commit a12010d9 by Tuomas Riihimäki

Event property editor default value

When creating new event properties, initialize the value with the default.
Also add checks for empty event layout property

Closes: #104
1 parent c402ca8c
...@@ -63,7 +63,7 @@ public enum LanEventPropertyKey { ...@@ -63,7 +63,7 @@ public enum LanEventPropertyKey {
EVENT_CURRENCY_CODE(Type.TEXT, "EUR"); EVENT_CURRENCY_CODE(Type.TEXT, "EUR");
; ;
private enum Type { public enum Type {
TEXT, DATE, DATA, BOOL, LONG TEXT, DATE, DATA, BOOL, LONG
}; };
......
...@@ -194,26 +194,26 @@ ...@@ -194,26 +194,26 @@
<h:form id="propertyEditForm" rendered="#{!empty eventPropertyView.property}" enctype="#{eventPropertyView.property.key.data?'multipart/form-data':''}" styleClass="moya_datatable2"> <h:form id="propertyEditForm" rendered="#{!empty eventPropertyView.property}" enctype="#{eventPropertyView.property.key.data?'multipart/form-data':''}" styleClass="moya_datatable2">
<h:panelGrid columns="3"> <h:panelGrid columns="3">
<h:outputLabel for="key" value="#{i18n['lanEventProperty.key']}" /> <h:outputLabel for="propkey" value="#{i18n['lanEventProperty.key']}" />
<h:outputText value="#{eventPropertyView.property.key}" id="key" /> <h:outputText value="#{eventPropertyView.property.key}" id="propkey" />
<h:message for="key" /> <h:message for="propkey" />
<h:outputLabel for="defaultval" value="#{i18n['lanEventProperty.defaultValue']}" /> <h:outputLabel for="defaultval" value="#{i18n['lanEventProperty.defaultValue']}" />
<h:outputText id="defaultval" value="#{eventPropertyView.property.key.defaultvalue}" /> <h:outputText id="defaultval" value="#{eventPropertyView.property.key.defaultvalue}" />
<h:message for="defaultval" /> <h:message for="defaultval" />
<h:outputLabel rendered="#{eventPropertyView.property.key.text or eventPropertyView.property.key.data }" for="textval" value="#{i18n['lanEventProperty.textValue']}" /> <h:outputLabel rendered="#{eventPropertyView.property.key.text or eventPropertyView.property.key.data }" for="textval" value="#{i18n['lanEventProperty.textValue']}" />
<h:inputText rendered="#{eventPropertyView.property.key.text or eventPropertyView.property.key.data}" id="textval" value="#{eventPropertyView.property.textvalue}" /> <h:inputText rendered="#{eventPropertyView.property.key.text or eventPropertyView.property.key.data}" id="textval" value="#{eventPropertyView.property.textvalue}" size="60" />
<h:message rendered="#{eventPropertyView.property.key.text or eventPropertyView.property.key.data}" for="textval" /> <h:message rendered="#{eventPropertyView.property.key.text or eventPropertyView.property.key.data}" for="textval" />
<h:outputLabel rendered="#{eventPropertyView.property.key.data}" for="dataval" value="#{i18n['lanEventProperty.datavalue']}" /> <h:outputLabel rendered="#{eventPropertyView.property.key.data}" for="dataval" value="#{i18n['lanEventProperty.datavalue']}" />
<p:fileUpload rendered="#{ eventPropertyView.property.key.data}" mode="simple" value="#{eventPropertyView.file}" id="dataval" /> <p:fileUpload rendered="#{ eventPropertyView.property.key.data}" id="dataval" mode="simple" value="#{eventPropertyView.file}" />
<h:message rendered="#{eventPropertyView.property.key.data}" for="dataval" /> <h:message rendered="#{eventPropertyView.property.key.data}" for="dataval" />
<h:outputLabel rendered="#{eventPropertyView.property.key.date}" for="textval" value="#{i18n['lanEventProperty.textValue']}" /> <h:outputLabel rendered="#{eventPropertyView.property.key.date}" for="dateval" value="#{i18n['lanEventProperty.textValue']}" />
<p:calendar rendered="#{eventPropertyView.property.key.date}" value="#{eventPropertyView.property.dateValue}" pattern="#{sessionHandler.datetimeFormat}" /> <p:calendar rendered="#{eventPropertyView.property.key.date}" id="dateval" value="#{eventPropertyView.property.dateValue}" pattern="#{sessionHandler.datetimeFormat}" />
<h:message rendered="#{eventPropertyView.property.key.date}" for="textval" /> <h:message rendered="#{eventPropertyView.property.key.date}" for="dateval" />
<h:outputLabel rendered="#{eventPropertyView.property.key.boolean}" for="booleanval" value="#{i18n['lanEventProperty.booleanValue']}" /> <h:outputLabel rendered="#{eventPropertyView.property.key.boolean}" for="booleanval" value="#{i18n['lanEventProperty.booleanValue']}" />
<h:selectBooleanCheckbox rendered="#{eventPropertyView.property.key.boolean}" id="booleanval" value="#{eventPropertyView.property.booleanValue}" /> <h:selectBooleanCheckbox rendered="#{eventPropertyView.property.key.boolean}" id="booleanval" value="#{eventPropertyView.property.booleanValue}" />
...@@ -273,17 +273,17 @@ ...@@ -273,17 +273,17 @@
<h:outputText value="#{eventPropertyView.privateProperty.key}" id="key" /> <h:outputText value="#{eventPropertyView.privateProperty.key}" id="key" />
<h:message for="key" /> <h:message for="key" />
<h:outputLabel for="defaultval" value="#{i18n['lanEventPrivateProperty.defaultValue']}" /> <h:outputLabel for="privDefaultval" value="#{i18n['lanEventPrivateProperty.defaultValue']}" />
<h:outputText id="defaultval" value="#{eventPropertyView.privateProperty.key.defaultvalue}" /> <h:outputText id="privDefaultval" value="#{eventPropertyView.privateProperty.key.defaultvalue}" />
<h:message for="defaultval" /> <h:message for="privDefaultval" />
<h:outputLabel rendered="#{eventPropertyView.privateProperty.key.text}" for="textval" value="#{i18n['lanEventPrivateProperty.textValue']}" /> <h:outputLabel rendered="#{eventPropertyView.privateProperty.key.text}" for="privTextval" value="#{i18n['lanEventPrivateProperty.textValue']}" />
<h:inputText rendered="#{eventPropertyView.privateProperty.key.text}" id="textval" value="#{eventPropertyView.privateProperty.textvalue}" /> <h:inputText rendered="#{eventPropertyView.privateProperty.key.text}" id="privTextval" value="#{eventPropertyView.privateProperty.textvalue}" />
<h:message rendered="#{eventPropertyView.privateProperty.key.text}" for="textval" /> <h:message rendered="#{eventPropertyView.privateProperty.key.text}" for="privTextval" />
<h:outputLabel rendered="#{eventPropertyView.privateProperty.key.date}" for="textval" value="#{i18n['lanEventPrivateProperty.textValue']}" /> <h:outputLabel rendered="#{eventPropertyView.privateProperty.key.date}" for="privDateval" value="#{i18n['lanEventPrivateProperty.textValue']}" />
<p:calendar rendered="#{eventPropertyView.privateProperty.key.date}" value="#{eventPropertyView.privateProperty.dateValue}" pattern="#{sessionHandler.datetimeFormat}" /> <p:calendar rendered="#{eventPropertyView.privateProperty.key.date}" id="privDateval" value="#{eventPropertyView.privateProperty.dateValue}" pattern="#{sessionHandler.datetimeFormat}" />
<h:message rendered="#{eventPropertyView.privateProperty.key.date}" for="textval" /> <h:message rendered="#{eventPropertyView.privateProperty.key.date}" for="privDateval" />
</h:panelGrid> </h:panelGrid>
<p:commandButton ajax="false" action="#{eventPropertyView.savePrivateProperty}" value="#{i18n['lanEventPrivateProperty.save']}" update=":privatePropertyEditor" /> <p:commandButton ajax="false" action="#{eventPropertyView.savePrivateProperty}" value="#{i18n['lanEventPrivateProperty.save']}" update=":privatePropertyEditor" />
......
...@@ -127,7 +127,11 @@ public class SessionHandler { ...@@ -127,7 +127,11 @@ public class SessionHandler {
if (template == null) { if (template == null) {
template = eventbean.getPropertyString(LanEventPropertyKey.EVENT_LAYOUT); template = eventbean.getPropertyString(LanEventPropertyKey.EVENT_LAYOUT);
} }
if (template == null) { if(template != null){
template = template.trim().toLowerCase();
}
if (template == null || template.isEmpty()) {
template = "primelayout"; template = "primelayout";
} }
return template; return template;
......
...@@ -64,11 +64,9 @@ public class EventPropertyView extends GenericCDIView { ...@@ -64,11 +64,9 @@ public class EventPropertyView extends GenericCDIView {
private LanEventPrivateProperty privateProperty; private LanEventPrivateProperty privateProperty;
public List<LanEventPropertyKey> getAvailablePropertyKeys() public List<LanEventPropertyKey> getAvailablePropertyKeys() {
{
List<LanEventPropertyKey> ret = new ArrayList<LanEventPropertyKey>(Arrays.asList(LanEventPropertyKey.values())); List<LanEventPropertyKey> ret = new ArrayList<LanEventPropertyKey>(Arrays.asList(LanEventPropertyKey.values()));
if (createKey != null) if (createKey != null) {
{
ret.remove(createKey); ret.remove(createKey);
} }
if (eventorgview.getEvent() != null) { if (eventorgview.getEvent() != null) {
...@@ -81,11 +79,9 @@ public class EventPropertyView extends GenericCDIView { ...@@ -81,11 +79,9 @@ public class EventPropertyView extends GenericCDIView {
public List<LanEventPrivatePropertyKey> getAvailablePrivatePropertyKeys() { public List<LanEventPrivatePropertyKey> getAvailablePrivatePropertyKeys() {
List<LanEventPrivatePropertyKey> ret = null; List<LanEventPrivatePropertyKey> ret = null;
if (isPrivatePropertyPermission() && eventbean.getCurrentEvent().equals(eventorgview.getEvent())) if (isPrivatePropertyPermission() && eventbean.getCurrentEvent().equals(eventorgview.getEvent())) {
{
ret = new ArrayList<LanEventPrivatePropertyKey>(Arrays.asList(LanEventPrivatePropertyKey.values())); ret = new ArrayList<LanEventPrivatePropertyKey>(Arrays.asList(LanEventPrivatePropertyKey.values()));
if (createPrivateKey != null) if (createPrivateKey != null) {
{
ret.remove(createPrivateKey); ret.remove(createPrivateKey);
} }
for (LanEventPrivateProperty p : eventbean.getPrivateProperties()) { for (LanEventPrivateProperty p : eventbean.getPrivateProperties()) {
...@@ -99,22 +95,19 @@ public class EventPropertyView extends GenericCDIView { ...@@ -99,22 +95,19 @@ public class EventPropertyView extends GenericCDIView {
return super.hasPermission(EventPermission.MANAGE_PRIVATE_PROPERTIES) && eventbean.getCurrentEvent().equals(eventorgview.getEvent()); return super.hasPermission(EventPermission.MANAGE_PRIVATE_PROPERTIES) && eventbean.getCurrentEvent().equals(eventorgview.getEvent());
} }
public String editProperty() public String editProperty() {
{
property = properties.getRowData(); property = properties.getRowData();
logger.info("Editing property {}", property); logger.info("Editing property {}", property);
return null; return null;
} }
public String editPrivateProperty() public String editPrivateProperty() {
{
privateProperty = privateProperties.getRowData(); privateProperty = privateProperties.getRowData();
logger.info("Editing property {}", privateProperty); logger.info("Editing property {}", privateProperty);
return null; return null;
} }
public String initPrivatePropertyKeyCreate() public String initPrivatePropertyKeyCreate() {
{
logger.info("Creating new priavte key for event {}, key: {}", eventorgview.getEvent(), createPrivateKey); logger.info("Creating new priavte key for event {}, key: {}", eventorgview.getEvent(), createPrivateKey);
privateProperty = new LanEventPrivateProperty(); privateProperty = new LanEventPrivateProperty();
// property.setEventorg(eventorgview.getEvent().getOrganiser()); // property.setEventorg(eventorgview.getEvent().getOrganiser());
...@@ -135,11 +128,9 @@ public class EventPropertyView extends GenericCDIView { ...@@ -135,11 +128,9 @@ public class EventPropertyView extends GenericCDIView {
return null; return null;
} }
public String savePrivateProperty() public String savePrivateProperty() {
{ logger.info("Saving property {}, eventorg {}, key {}", new Object[]{privateProperty.getEvent(), privateProperty.getEventorg(), privateProperty.getKey()});
logger.info("Saving property {}, eventorg {}, key {}", new Object[] { privateProperty.getEvent(), privateProperty.getEventorg(), privateProperty.getKey() }); if (privateProperty.getKey().isData() && file != null) {
if (privateProperty.getKey().isData() && file != null)
{
byte[] contents = null; byte[] contents = null;
if (file.getContents() != null) { if (file.getContents() != null) {
contents = file.getContents(); contents = file.getContents();
...@@ -167,22 +158,34 @@ public class EventPropertyView extends GenericCDIView { ...@@ -167,22 +158,34 @@ public class EventPropertyView extends GenericCDIView {
return null; return null;
} }
public String initPropertyKeyCreate() public String initPropertyKeyCreate() {
{
logger.info("Creating new key for event {}, key: {}", eventorgview.getEvent(), createKey); logger.info("Creating new key for event {}, key: {}", eventorgview.getEvent(), createKey);
property = new LanEventProperty(); property = new LanEventProperty();
// property.setEventorg(eventorgview.getEvent().getOrganiser()); // property.setEventorg(eventorgview.getEvent().getOrganiser());
property.setEvent(eventorgview.getEvent()); property.setEvent(eventorgview.getEvent());
property.setKey(createKey); property.setKey(createKey);
switch (property.getKey().getType()) {
case TEXT:
property.setTextvalue(property.getKey().getDefaultvalue());
break;
case BOOL:
if (property.getKey().getDefaultvalue() != null &&
property.getKey().getDefaultvalue().equals("1")) {
property.setBooleanValue(true);
}
break;
case LONG:
property.setLongValue(property.getKey().getDefaultLong());
break;
default:
}
return null; return null;
} }
public String saveProperty() public String saveProperty() {
{ logger.info("Saving property {}, eventorg {}, key {}, ", new Object[]{property.getEvent(), property.getEventorg(), property.getKey()});
logger.info("Saving property {}, eventorg {}, key {}, ", new Object[] { property.getEvent(), property.getEventorg(), property.getKey() });
logger.debug("Is data: {} File {}", property.getKey().isData(), file); logger.debug("Is data: {} File {}", property.getKey().isData(), file);
if (property.getKey().isData() && file != null) if (property.getKey().isData() && file != null) {
{
logger.info("saving data values type: {}, length {}", file.getContentType(), file.getSize()); logger.info("saving data values type: {}, length {}", file.getContentType(), file.getSize());
byte[] contents = null; byte[] contents = null;
if (file.getContents() != null) { if (file.getContents() != null) {
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!