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 {
EVENT_CURRENCY_CODE(Type.TEXT, "EUR");
;
private enum Type {
public enum Type {
TEXT, DATE, DATA, BOOL, LONG
};
......
......@@ -194,26 +194,26 @@
<h:form id="propertyEditForm" rendered="#{!empty eventPropertyView.property}" enctype="#{eventPropertyView.property.key.data?'multipart/form-data':''}" styleClass="moya_datatable2">
<h:panelGrid columns="3">
<h:outputLabel for="key" value="#{i18n['lanEventProperty.key']}" />
<h:outputText value="#{eventPropertyView.property.key}" id="key" />
<h:message for="key" />
<h:outputLabel for="propkey" value="#{i18n['lanEventProperty.key']}" />
<h:outputText value="#{eventPropertyView.property.key}" id="propkey" />
<h:message for="propkey" />
<h:outputLabel for="defaultval" value="#{i18n['lanEventProperty.defaultValue']}" />
<h:outputText id="defaultval" value="#{eventPropertyView.property.key.defaultvalue}" />
<h:message for="defaultval" />
<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: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:outputLabel rendered="#{eventPropertyView.property.key.date}" for="textval" value="#{i18n['lanEventProperty.textValue']}" />
<p:calendar rendered="#{eventPropertyView.property.key.date}" value="#{eventPropertyView.property.dateValue}" pattern="#{sessionHandler.datetimeFormat}" />
<h:message rendered="#{eventPropertyView.property.key.date}" for="textval" />
<h:outputLabel rendered="#{eventPropertyView.property.key.date}" for="dateval" value="#{i18n['lanEventProperty.textValue']}" />
<p:calendar rendered="#{eventPropertyView.property.key.date}" id="dateval" value="#{eventPropertyView.property.dateValue}" pattern="#{sessionHandler.datetimeFormat}" />
<h:message rendered="#{eventPropertyView.property.key.date}" for="dateval" />
<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}" />
......@@ -273,17 +273,17 @@
<h:outputText value="#{eventPropertyView.privateProperty.key}" id="key" />
<h:message for="key" />
<h:outputLabel for="defaultval" value="#{i18n['lanEventPrivateProperty.defaultValue']}" />
<h:outputText id="defaultval" value="#{eventPropertyView.privateProperty.key.defaultvalue}" />
<h:message for="defaultval" />
<h:outputLabel for="privDefaultval" value="#{i18n['lanEventPrivateProperty.defaultValue']}" />
<h:outputText id="privDefaultval" value="#{eventPropertyView.privateProperty.key.defaultvalue}" />
<h:message for="privDefaultval" />
<h:outputLabel rendered="#{eventPropertyView.privateProperty.key.text}" for="textval" value="#{i18n['lanEventPrivateProperty.textValue']}" />
<h:inputText rendered="#{eventPropertyView.privateProperty.key.text}" id="textval" value="#{eventPropertyView.privateProperty.textvalue}" />
<h:message rendered="#{eventPropertyView.privateProperty.key.text}" for="textval" />
<h:outputLabel rendered="#{eventPropertyView.privateProperty.key.text}" for="privTextval" value="#{i18n['lanEventPrivateProperty.textValue']}" />
<h:inputText rendered="#{eventPropertyView.privateProperty.key.text}" id="privTextval" value="#{eventPropertyView.privateProperty.textvalue}" />
<h:message rendered="#{eventPropertyView.privateProperty.key.text}" for="privTextval" />
<h:outputLabel rendered="#{eventPropertyView.privateProperty.key.date}" for="textval" value="#{i18n['lanEventPrivateProperty.textValue']}" />
<p:calendar rendered="#{eventPropertyView.privateProperty.key.date}" value="#{eventPropertyView.privateProperty.dateValue}" pattern="#{sessionHandler.datetimeFormat}" />
<h:message rendered="#{eventPropertyView.privateProperty.key.date}" for="textval" />
<h:outputLabel rendered="#{eventPropertyView.privateProperty.key.date}" for="privDateval" value="#{i18n['lanEventPrivateProperty.textValue']}" />
<p:calendar rendered="#{eventPropertyView.privateProperty.key.date}" id="privDateval" value="#{eventPropertyView.privateProperty.dateValue}" pattern="#{sessionHandler.datetimeFormat}" />
<h:message rendered="#{eventPropertyView.privateProperty.key.date}" for="privDateval" />
</h:panelGrid>
<p:commandButton ajax="false" action="#{eventPropertyView.savePrivateProperty}" value="#{i18n['lanEventPrivateProperty.save']}" update=":privatePropertyEditor" />
......
......@@ -127,7 +127,11 @@ public class SessionHandler {
if (template == null) {
template = eventbean.getPropertyString(LanEventPropertyKey.EVENT_LAYOUT);
}
if (template == null) {
if(template != null){
template = template.trim().toLowerCase();
}
if (template == null || template.isEmpty()) {
template = "primelayout";
}
return template;
......
......@@ -64,11 +64,9 @@ public class EventPropertyView extends GenericCDIView {
private LanEventPrivateProperty privateProperty;
public List<LanEventPropertyKey> getAvailablePropertyKeys()
{
public List<LanEventPropertyKey> getAvailablePropertyKeys() {
List<LanEventPropertyKey> ret = new ArrayList<LanEventPropertyKey>(Arrays.asList(LanEventPropertyKey.values()));
if (createKey != null)
{
if (createKey != null) {
ret.remove(createKey);
}
if (eventorgview.getEvent() != null) {
......@@ -81,11 +79,9 @@ public class EventPropertyView extends GenericCDIView {
public List<LanEventPrivatePropertyKey> getAvailablePrivatePropertyKeys() {
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()));
if (createPrivateKey != null)
{
if (createPrivateKey != null) {
ret.remove(createPrivateKey);
}
for (LanEventPrivateProperty p : eventbean.getPrivateProperties()) {
......@@ -99,22 +95,19 @@ public class EventPropertyView extends GenericCDIView {
return super.hasPermission(EventPermission.MANAGE_PRIVATE_PROPERTIES) && eventbean.getCurrentEvent().equals(eventorgview.getEvent());
}
public String editProperty()
{
public String editProperty() {
property = properties.getRowData();
logger.info("Editing property {}", property);
return null;
}
public String editPrivateProperty()
{
public String editPrivateProperty() {
privateProperty = privateProperties.getRowData();
logger.info("Editing property {}", privateProperty);
return null;
}
public String initPrivatePropertyKeyCreate()
{
public String initPrivatePropertyKeyCreate() {
logger.info("Creating new priavte key for event {}, key: {}", eventorgview.getEvent(), createPrivateKey);
privateProperty = new LanEventPrivateProperty();
// property.setEventorg(eventorgview.getEvent().getOrganiser());
......@@ -135,11 +128,9 @@ public class EventPropertyView extends GenericCDIView {
return null;
}
public String savePrivateProperty()
{
logger.info("Saving property {}, eventorg {}, key {}", new Object[] { privateProperty.getEvent(), privateProperty.getEventorg(), privateProperty.getKey() });
if (privateProperty.getKey().isData() && file != null)
{
public String savePrivateProperty() {
logger.info("Saving property {}, eventorg {}, key {}", new Object[]{privateProperty.getEvent(), privateProperty.getEventorg(), privateProperty.getKey()});
if (privateProperty.getKey().isData() && file != null) {
byte[] contents = null;
if (file.getContents() != null) {
contents = file.getContents();
......@@ -167,22 +158,34 @@ public class EventPropertyView extends GenericCDIView {
return null;
}
public String initPropertyKeyCreate()
{
public String initPropertyKeyCreate() {
logger.info("Creating new key for event {}, key: {}", eventorgview.getEvent(), createKey);
property = new LanEventProperty();
// property.setEventorg(eventorgview.getEvent().getOrganiser());
property.setEvent(eventorgview.getEvent());
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;
}
public String saveProperty()
{
logger.info("Saving property {}, eventorg {}, key {}, ", new Object[] { property.getEvent(), property.getEventorg(), property.getKey() });
public String saveProperty() {
logger.info("Saving property {}, eventorg {}, key {}, ", new Object[]{property.getEvent(), property.getEventorg(), property.getKey()});
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());
byte[] contents = 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!