Skip to content
Snippets Groups Projects
Commit b8a795e0 authored by Andreas Schindlbeck's avatar Andreas Schindlbeck
Browse files

Calendar Setup

parent eca34af3
No related branches found
No related tags found
No related merge requests found
Showing
with 166 additions and 28 deletions
......@@ -20,6 +20,7 @@
<element>DESCRIPTION</element>
<element>LOCATION</element>
<element>ICON</element>
<element>CLASSIFICATION</element>
</fields>
<contentProcess>%aditoprj%/entity/Appointment_entity/contentProcess.js</contentProcess>
<onInsert>%aditoprj%/entity/Appointment_entity/onInsert.js</onInsert>
......@@ -31,6 +32,7 @@
<entityField>
<name>SUMMARY</name>
<fieldName>SUBJECT</fieldName>
<caption>Betreff</caption>
<valueProcess>%aditoprj%/entity/Appointment_entity/entityfields/summary/valueProcess.js</valueProcess>
</entityField>
<entityParameter>
......@@ -43,7 +45,45 @@
<fieldName>DESCRIPTION</fieldName>
</entityField>
<entityField>
<name>CLASSIFICATION</name>
<fieldName>CLASSIFICATION</fieldName>
<possibleItemsProcess>%aditoprj%/entity/Appointment_entity/entityfields/classification/possibleItemsProcess.js</possibleItemsProcess>
<valueProcess>%aditoprj%/entity/Appointment_entity/entityfields/classification/valueProcess.js</valueProcess>
</entityField>
<entityField>
<name>BEGIN</name>
<fieldName>STARTDATE</fieldName>
<selectionMode>SINGLE</selectionMode>
<valueProcess>%aditoprj%/entity/Appointment_entity/entityfields/begin/valueProcess.js</valueProcess>
</entityField>
<entityField>
<name>END</name>
<fieldName>ENDDATE</fieldName>
<valueProcess>%aditoprj%/entity/Appointment_entity/entityfields/end/valueProcess.js</valueProcess>
</entityField>
<entityFieldGroup>
<name>STARTEND</name>
<valueProcess>%aditoprj%/entity/Appointment_entity/entityfields/startend/valueProcess.js</valueProcess>
<description>FIELDGROUP</description>
<fields>
<element>BEGIN</element>
<element>END</element>
</fields>
</entityFieldGroup>
<entityField>
<name>STATUS</name>
<fieldName>STATUS</fieldName>
<possibleItemsProcess>%aditoprj%/entity/Appointment_entity/entityfields/status/possibleItemsProcess.js</possibleItemsProcess>
</entityField>
<entityField>
<name>LOCATION</name>
<fieldName>LOCATION</fieldName>
</entityField>
<entityField>
<name>REMINDER_CHECK</name>
</entityField>
<entityField>
<name>REMINDER</name>
</entityField>
</entityFields>
</entity>
import("system.logging");
import("system.result");
import("system.vars");
import("system.calendars");
......@@ -21,16 +22,19 @@ if(vars.exists("$image.entry"))
var location = entry[calendars.LOCATION];
var reminder = entry[calendars.REMINDER];
var remindercheck = entry[calendars.HASREMINDER]
var classification = entry[calendars.CLASSIFICATION];
logging.log("contentproc: entry location:" + location + " desc: " + description + " summary: " + summary);
//@TODO Icon
result.object([
[uid, '', '', attendees.length, startdate, enddate, summary, organizer, attendees, status, links, description, location, ''] //, location, reminder, remindercheck
[uid, '', '', attendees.length, startdate, enddate, summary, organizer, attendees, status, links, description, location, '', classification] //, location, reminder, remindercheck
]);
}
else
{
logging.log("contentproc: empty");
var filter = ( vars.exists("$param.p_filter")
&& vars.get("$param.p_filter") != null
......@@ -43,16 +47,15 @@ else
,USER_1: vars.get("$sys.user")
,COUNT: "1"
};
var entries = calendars.getExpandedEntries(cond, new Long(datetime.date()), new Long(eMath.addInt(datetime.date(), datetime.ONE_DAY * 7)));
//var entries = calendars.getExpandedEntries(cond, new Long(datetime.date()), new Long(eMath.addInt(datetime.date(), datetime.ONE_DAY * 7)));
for (i = 0; i < events.length; i++)
{
events[i].push([""])
var count = events[i][3];
var iconInfo = (count > 1 ? "gruppentermin" : "einzeltermin");
var icon = (getIcon("termine_aufgaben", iconInfo));
events[i] = events[i].concat(icon);
}
result.object(events);
//for (i = 0; i < events.length; i++)
//{
// events[i].push([""])
// var count = events[i][3];
// var iconInfo = (count > 1 ? "gruppentermin" : "einzeltermin");
// var icon = (getIcon("termine_aufgaben", iconInfo));
// events[i] = events[i].concat(icon);
//}
//result.object(events);
}
\ No newline at end of file
import("system.result");
var resObject = new Object();
resObject["PRIVATE"] = "PRIVATE";
resObject["PUBLIC"] = "PUBLIC";
result.object( resObject );
\ No newline at end of file
import("system.result");
import("system.calendars");
import("system.vars");
import("system.datetime");
var startLong = vars.get("$field.BEGIN");
var endLong = vars.get("$field.END");
if(startLong != null && endLong != null)
{
var startdate = datetime.toDate(startLong, "dd.MM.yyyy");
var enddate = datetime.toDate(endLong, "dd.MM.yyyy");
var starttime = datetime.toDate(startLong, "HH:mm");
var endtime = datetime.toDate(endLong, "HH:mm");
//wenn der termin an einem tag beginnt UND endet
if(startdate == enddate)
{
if(datetime.isToday(startLong) ||
datetime.isTomorrow(startLong))
{
if(datetime.isToday(startLong))
result.string("heute " + " | " + starttime + " - " + endtime + " Uhr");
if(datetime.isTomorrow(startLong))
result.string("morgen " + " | " + starttime + " - " + endtime + " Uhr");
}
else
result.string(startdate + " | " + starttime + " - " + endtime + " Uhr");
}
//wenn der termin über mehrere tage geht
else
{
var datebegin;
var dateend;
if(datetime.isToday(startLong))
datebegin = "heute";
else if(datetime.isTomorrow(startLong))
datebegin = "morgen";
else
datebegin = startdate;
if(datetime.isToday(endLong))
dateend = "heute";
else if(datetime.isTomorrow(endLong))
dateend = "morgen";
else
dateend = enddate;
result.string(datebegin + " | " + starttime + " Uhr - " + dateend + " | " + endtime + " Uhr");
}
}
else
{
result.string("");
}
\ No newline at end of file
import("system.logging");
import("system.result");
import("system.translate");
import("system.calendars");
if( calendars.getBackendType() != calendars.BACKEND_EXCHANGEWS )
{
logging.log("possible items: if")
result.object( [ [calendars.STATUS_TENTATIVE, translate.text("Vorläufig")]
, [calendars.STATUS_CONFIRMED, translate.text("Bestätigt")]
, [calendars.STATUS_CANCELLED, translate.text("Abgesagt")]
] );
}
else
{
logging.log("possible items: else")
result.object( [ [calendars.STATUS_TENTATIVE, translate.text("Vorläufig")]
, [calendars.STATUS_BUSY, translate.text("Gebucht")]
, [calendars.STATUS_OOF, translate.text("Außer Haus")]
, [calendars.STATUS_FREE, translate.text("frei")]
] );
}
\ No newline at end of file
import("system.result");
import("system.vars");
var sum = vars.getString("$field.SUMMARY");
result.string(sum);
\ No newline at end of file
import("system.logging");
import("system.neon");
import("system.calendars");
import("system.vars");
......@@ -9,6 +10,8 @@ import("system.db");
import("system.result");
import("system.tools");
logging.log("on insert");
// Dieser Prozess speichert die im Frame angezeigten Daten
// Je nach Modus (INSERT, EDIT) wird ein neuer Datensatz angelegt oder der alte editiert
var event = vars.get("$image.entry");
......
import("system.logging");
import("system.neon");
import("system.calendars");
import("system.vars");
......@@ -10,6 +11,9 @@ import("system.db");
import("system.result");
import("system.tools");
logging.log("on update");
// Dieser Prozess speichert die im Frame angezeigten Daten
// Je nach Modus (INSERT, EDIT) wird ein neuer Datensatz angelegt oder der alte editiert
if(vars.exists("$image.entry"))
......@@ -26,11 +30,11 @@ if(vars.exists("$image.entry"))
{
event[calendars.TYPE] = calendars.VEVENT;
event[calendars.STATUS] = vars.getString("$field.STATUS");
event[calendars.SUMMARY] = vars.getString("$field.SUBJECT");
event[calendars.SUMMARY] = vars.getString("$field.SUMMARY");
event[calendars.LOCATION] = vars.get("$field.LOCATION");
event[calendars.DESCRIPTION] = vars.get("$field.DESCRIPTION");
event[calendars.DTSTART] = vars.get("$field.STARTDATE");
event[calendars.DTEND] = vars.get("$field.ENDDATE");
event[calendars.DTSTART] = vars.get("$field.BEGIN");
event[calendars.DTEND] = vars.get("$field.END");
event[calendars.HASREMINDER] = "false";
var hasReminder = vars.get("$field.REMINDER_CHECK");
if (hasReminder == "true")
......
......@@ -11,13 +11,14 @@
<appointmentEditViewTemplate>
<name>AppointmentEditTemplate</name>
<summaryField>SUMMARY</summaryField>
<beginField>SUMMARY</beginField>
<endField>SUMMARY</endField>
<descriptionField>DESCRIPTION</descriptionField>
<beginField>BEGIN</beginField>
<endField>END</endField>
<affectedUsersField>SUMMARY</affectedUsersField>
<attendeesField>SUMMARY</attendeesField>
<privateField>SUMMARY</privateField>
<statusField>SUMMARY</statusField>
<locationField>SUMMARY</locationField>
<privateField>CLASSIFICATION</privateField>
<statusField>STATUS</statusField>
<locationField>LOCATION</locationField>
<entityField>#ENTITY</entityField>
</appointmentEditViewTemplate>
</children>
......
......@@ -11,11 +11,13 @@
<appointmentPreviewViewTemplate>
<name>AppointmentPreviewTemplate</name>
<summaryField>SUMMARY</summaryField>
<periodField>SUMMARY</periodField>
<descriptionField>DESCRIPTION</descriptionField>
<periodField>STARTEND</periodField>
<affectedUsersField>SUMMARY</affectedUsersField>
<attendeesField>SUMMARY</attendeesField>
<privateField>SUMMARY</privateField>
<statusField>SUMMARY</statusField>
<privateField>CLASSIFICATION</privateField>
<statusField>STATUS</statusField>
<locationField>LOCATION</locationField>
<entityField>#ENTITY</entityField>
</appointmentPreviewViewTemplate>
</children>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment