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

Mergecommmit NotificationCenter into Current

parents f693e6e3 f054be9e
No related branches found
No related tags found
No related merge requests found
Showing
with 2207 additions and 2127 deletions
<?xml version="1.1" encoding="UTF-8" standalone="no"?>
<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog" xmlns:ext="http://www.liquibase.org/xml/ns/dbchangelog-ext" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog-ext http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-ext.xsd http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.6.xsd">
<include relativeToChangelogFile="true" file="create_asys_notifications.xml"/>
<include relativeToChangelogFile="true" file="create_asys_notificationcontents.xml"/>
</databaseChangeLog>
<?xml version="1.1" encoding="UTF-8" standalone="no"?>
<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog" xmlns:ext="http://www.liquibase.org/xml/ns/dbchangelog-ext" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog-ext http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-ext.xsd http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.6.xsd">
<changeSet author="a.schindlbeck" id="6b25f062-fb39-4230-9348-b67ec5ec45a1">
<createTable tableName="ASYS_NOTIFICATIONCONTENTS">
<column name="CONTENTID" type="CHAR(36)">
<constraints primaryKey="true" primaryKeyName="PK_ASYS_NOTIFICATIONCONTENTS_CONTENTID"/>
</column>
<column name="BACKPACK" type="CLOB"/>
<column name="CAPTION" type="VARCHAR(512)"/>
<column name="CREATIONDATE" type="BIGINT"/>
<column name="DESCRIPTION" type="VARCHAR(1023)"/>
<column name="FORCEDPRIORITY" type="INTEGER"/>
<column name="ICON_INFO" type="VARCHAR(1023)"/>
<column name="LIFETIME" type="BIGINT"/>
<column name="LINK_INFO" type="VARCHAR(1023)"/>
<column name="ORIGINATORNAME" type="VARCHAR(63)"/>
<column name="RECIPIENTUSERIDS" type="CLOB"/>
<column name="TYPECODE" type="VARCHAR(63)"/>
<column name="VERSION" type="INTEGER"/>
</createTable>
</changeSet>
</databaseChangeLog>
\ No newline at end of file
<?xml version="1.1" encoding="UTF-8" standalone="no"?>
<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog" xmlns:ext="http://www.liquibase.org/xml/ns/dbchangelog-ext" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog-ext http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-ext.xsd http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.6.xsd">
<changeSet author="a.schindlbeck" id="98f057b6-0140-4edd-b08d-9cc7cf178bab">
<!---
its ok to drop the old ASYS_NOTIFICATIONS due to new version
-->
<dropTable tableName="ASYS_NOTIFICATIONS"/>
<createTable tableName="ASYS_NOTIFICATIONS">
<column name="ID" type="CHAR(36)">
<constraints primaryKey="true" primaryKeyName="PK_ASYS_NOTIFICATIONS_ID"/>
</column>
<column name="CONTENTID" type="CHAR(36)"/>
<column name="STATE" type="VARCHAR(16)"/>
<column name="USERID" type="VARCHAR(63)"/>
</createTable>
</changeSet>
</databaseChangeLog>
<?xml version="1.1" encoding="UTF-8" standalone="no"?>
<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog" xmlns:ext="http://www.liquibase.org/xml/ns/dbchangelog-ext" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog-ext http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-ext.xsd http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.6.xsd">
<changeSet author="a.schindlbeck" id="6b25f062-fb39-4230-9348-b67ec5ec45a1">
<createTable tableName="ASYS_NOTIFICATIONCONTENTS">
<column name="CONTENTID" type="CHAR(36)">
<constraints primaryKey="true" primaryKeyName="PK_ASYS_NOTIFICATIONCONTENTS_CONTENTID"/>
</column>
<column name="BACKPACK" type="CLOB"/>
<column name="CAPTION" type="VARCHAR(512)"/>
<column name="CREATIONDATE" type="BIGINT"/>
<column name="DESCRIPTION" type="VARCHAR(1023)"/>
<column name="FORCEDPRIORITY" type="INTEGER"/>
<column name="ICON_INFO" type="VARCHAR(1023)"/>
<column name="LIFETIME" type="BIGINT"/>
<column name="LINK_INFO" type="VARCHAR(1023)"/>
<column name="ORIGINATORNAME" type="VARCHAR(63)"/>
<column name="RECIPIENTUSERIDS" type="CLOB"/>
<column name="TYPECODE" type="VARCHAR(63)"/>
<column name="VERSION" type="INTEGER"/>
</createTable>
</changeSet>
</databaseChangeLog>
\ No newline at end of file
<?xml version="1.1" encoding="UTF-8" standalone="no"?>
<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog" xmlns:ext="http://www.liquibase.org/xml/ns/dbchangelog-ext" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog-ext http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-ext.xsd http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.6.xsd">
<include file="basic/init/init.xml"/>
<include file="basic/2019.2/changelog.xml"/>
</databaseChangeLog>
<?xml version="1.0" encoding="UTF-8"?>
<entity xmlns="http://www.adito.de/2018/ao/Model" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" VERSION="1.3.1" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/entity/1.3.1">
<name>Analyses_entity</name>
<title>Analyses</title>
<majorModelMode>DISTRIBUTED</majorModelMode>
<icon>VAADIN:GRID_BIG_O</icon>
<recordContainer>jdito</recordContainer>
<entityFields>
<entityProvider>
<name>#PROVIDER</name>
</entityProvider>
<entityField>
<name>NEW_TASKS</name>
<title>New tasks</title>
<contentType>NUMBER</contentType>
<valueProcess>%aditoprj%/entity/Analyses_entity/entityfields/new_tasks/valueProcess.js</valueProcess>
</entityField>
<entityField>
<name>OVERDUE_TASKS</name>
<title>Overdue tasks</title>
<contentType>NUMBER</contentType>
<valueProcess>%aditoprj%/entity/Analyses_entity/entityfields/overdue_tasks/valueProcess.js</valueProcess>
</entityField>
<entityField>
<name>IMMINENT_APPOINTMENTS</name>
<title>Imminent appointments for today</title>
<contentType>NUMBER</contentType>
<valueProcess>%aditoprj%/entity/Analyses_entity/entityfields/imminent_appointments/valueProcess.js</valueProcess>
</entityField>
</entityFields>
<recordContainers>
<jDitoRecordContainer>
<name>jdito</name>
<jDitoRecordAlias>Data_alias</jDitoRecordAlias>
</jDitoRecordContainer>
</recordContainers>
</entity>
<?xml version="1.0" encoding="UTF-8"?>
<entity xmlns="http://www.adito.de/2018/ao/Model" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" VERSION="1.3.1" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/entity/1.3.1">
<name>Analyses_entity</name>
<title>Analyses</title>
<majorModelMode>DISTRIBUTED</majorModelMode>
<icon>VAADIN:GRID_BIG_O</icon>
<recordContainer>jdito</recordContainer>
<entityFields>
<entityProvider>
<name>#PROVIDER</name>
</entityProvider>
<entityField>
<name>NEW_TASKS</name>
<title>New tasks</title>
<contentType>NUMBER</contentType>
<valueProcess>%aditoprj%/entity/Analyses_entity/entityfields/new_tasks/valueProcess.js</valueProcess>
</entityField>
<entityField>
<name>OVERDUE_TASKS</name>
<title>Overdue tasks</title>
<contentType>NUMBER</contentType>
<valueProcess>%aditoprj%/entity/Analyses_entity/entityfields/overdue_tasks/valueProcess.js</valueProcess>
</entityField>
<entityField>
<name>IMMINENT_APPOINTMENTS</name>
<title>Imminent appointments for today</title>
<contentType>NUMBER</contentType>
<valueProcess>%aditoprj%/entity/Analyses_entity/entityfields/imminent_appointments/valueProcess.js</valueProcess>
</entityField>
</entityFields>
<recordContainers>
<jDitoRecordContainer>
<name>jdito</name>
<jDitoRecordAlias>Data_alias</jDitoRecordAlias>
</jDitoRecordContainer>
</recordContainers>
</entity>
import("system.SQLTYPES");
import("system.logging");
import("system.db");
import("system.datetime");
import("system.result");
import("system.vars");
import("Date_lib");
import("Sql_lib");
import("system.calendars");
import("Calendar_lib");
var pFilter = reset_filterEvent();
var conditions = [];
var conditioncount = 0;
var user = undefined;
var stati = [];
var entries = [];
var startnumber = Number(vars.get("$sys.date"));
var endnumber = startnumber + 43200000 ;
var start = startnumber + "";
var end = endnumber + "";
if ( pFilter.tentative == "true" )
stati.push(calendars.STATUS_TENTATIVE);
if ( pFilter.cancelled == "true" )
stati.push(calendars.STATUS_CANCELLED);
if ( pFilter.confirmed == "true" )
stati.push(mapCalendarStatus(calendars.STATUS_CONFIRMED, calendars.getBackendType() ));
if (getCalendarSystemType(calendars.VEVENT) == calendars.BACKEND_EXCHANGEWS && pFilter.free == "true")
stati.push(calendars.STATUS_FREE);
if ( pFilter.user != "" )
user = (pFilter.user).trim();
for ( var z = 0; z < stati.length; z++ )
_addEntryCondition(conditions, ++conditioncount,
{
TYPE: calendars.VEVENT,
START: start,
END: end,
USER: user,
STATUS: stati[z]
});
conditions["COUNT"] = String(conditioncount);
entries = calendars.getEntries(conditions);
logging.log("entries: " + entries.toSource());
import("system.SQLTYPES");
import("system.logging");
import("system.db");
import("system.datetime");
import("system.result");
import("system.vars");
import("Date_lib");
import("Sql_lib");
import("system.calendars");
import("Calendar_lib");
var pFilter = reset_filterEvent();
var conditions = [];
var conditioncount = 0;
var user = undefined;
var stati = [];
var entries = [];
var startnumber = Number(vars.get("$sys.date"));
var endnumber = startnumber + 43200000 ;
var start = startnumber + "";
var end = endnumber + "";
if ( pFilter.tentative == "true" )
stati.push(calendars.STATUS_TENTATIVE);
if ( pFilter.cancelled == "true" )
stati.push(calendars.STATUS_CANCELLED);
if ( pFilter.confirmed == "true" )
stati.push(mapCalendarStatus(calendars.STATUS_CONFIRMED, calendars.getBackendType() ));
if (getCalendarSystemType(calendars.VEVENT) == calendars.BACKEND_EXCHANGEWS && pFilter.free == "true")
stati.push(calendars.STATUS_FREE);
if ( pFilter.user != "" )
user = (pFilter.user).trim();
for ( var z = 0; z < stati.length; z++ )
_addEntryCondition(conditions, ++conditioncount,
{
TYPE: calendars.VEVENT,
START: start,
END: end,
USER: user,
STATUS: stati[z]
});
conditions["COUNT"] = String(conditioncount);
entries = calendars.getEntries(conditions);
logging.log("entries: " + entries.toSource());
result.string(entries.length);
\ No newline at end of file
import("system.datetime");
import("system.db");
import("system.result");
import("system.vars");
import("Date_lib");
import("Sql_lib");
import("system.SQLTYPES")
var opentask = db.cell("select count(STATUS) from TASK join AB_KEYWORD_ENTRY on KEYID = STATUS and CONTAINER = 'TaskStatus' and TITLE = 'new' group by KEYID, AB_KEYWORD_ENTRY.TITLE");
import("system.datetime");
import("system.db");
import("system.result");
import("system.vars");
import("Date_lib");
import("Sql_lib");
import("system.SQLTYPES")
var opentask = db.cell("select count(STATUS) from TASK join AB_KEYWORD_ENTRY on KEYID = STATUS and CONTAINER = 'TaskStatus' and TITLE = 'new' group by KEYID, AB_KEYWORD_ENTRY.TITLE");
result.string(opentask);
\ No newline at end of file
import("system.db");
import("system.datetime");
import("system.result");
import("system.vars");
import("Date_lib");
import("Sql_lib");
var overduetask = db.cell(SqlCondition.begin()
.andPrepare("TASK.MATURITY_DATE", vars.get("$sys.date"), "# < ?")
.buildSql("select count(TASKID) from TASK", "1=2"));
result.string(overduetask);
import("system.db");
import("system.datetime");
import("system.result");
import("system.vars");
import("Date_lib");
import("Sql_lib");
var overduetask = db.cell(SqlCondition.begin()
.andPrepare("TASK.MATURITY_DATE", vars.get("$sys.date"), "# < ?")
.buildSql("select count(TASKID) from TASK", "1=2"));
result.string(overduetask);
import("system.logging");
import("system.vars");
import("system.datetime");
import("system.db");
import("system.result");
import("system.translate");
import("Data_lib");
import("Keyword_lib");
import("Money_lib");
import("KeywordRegistry_basic");
// load data
var phases = db.table("select KEYID, AB_KEYWORD_ENTRY.TITLE, count(PHASE), AB_KEYWORD_ENTRY.SORTING \n\
from SALESPROJECT join AB_KEYWORD_ENTRY on KEYID = PHASE and CONTAINER = 'SalesprojectPhase' and SORTING <> 7 \n\
group by KEYID, AB_KEYWORD_ENTRY.TITLE, AB_KEYWORD_ENTRY.SORTING order by SORTING");
for(i = 0; i < phases.length; i++){
if(phases[i][1] == "${SALESPROJECT_OFFER}"){
phases[i][1] = "Offer";
}
}
result.object(phases);
import("system.logging");
import("system.vars");
import("system.datetime");
import("system.db");
import("system.result");
import("system.translate");
import("Data_lib");
import("Keyword_lib");
import("Money_lib");
import("KeywordRegistry_basic");
// load data
var phases = db.table("select KEYID, AB_KEYWORD_ENTRY.TITLE, count(PHASE), AB_KEYWORD_ENTRY.SORTING \n\
from SALESPROJECT join AB_KEYWORD_ENTRY on KEYID = PHASE and CONTAINER = 'SalesprojectPhase' and SORTING <> 7 \n\
group by KEYID, AB_KEYWORD_ENTRY.TITLE, AB_KEYWORD_ENTRY.SORTING order by SORTING");
for(i = 0; i < phases.length; i++){
if(phases[i][1] == "${SALESPROJECT_OFFER}"){
phases[i][1] = "Offer";
}
}
result.object(phases);
import("system.vars");
import("system.result");
import("system.vars");
import("system.result");
result.string("TEXT:" + vars.getString("$field.ORGANISATION_NAME"));
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<neonContext xmlns="http://www.adito.de/2018/ao/Model" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" VERSION="1.1.0" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/neonContext/1.1.0">
<name>Analyses</name>
<title>Analyses</title>
<majorModelMode>DISTRIBUTED</majorModelMode>
<filterview>MyDashboardScoreCard_view</filterview>
<entity>Analyses_entity</entity>
<references>
<neonViewReference>
<name>f995b030-7b74-4513-89ca-57c6979ac06f</name>
<view>MyDashboardScoreCard_view</view>
</neonViewReference>
</references>
</neonContext>
<?xml version="1.0" encoding="UTF-8"?>
<neonContext xmlns="http://www.adito.de/2018/ao/Model" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" VERSION="1.1.0" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/neonContext/1.1.0">
<name>Analyses</name>
<title>Analyses</title>
<majorModelMode>DISTRIBUTED</majorModelMode>
<filterview>MyDashboardScoreCard_view</filterview>
<entity>Analyses_entity</entity>
<references>
<neonViewReference>
<name>f995b030-7b74-4513-89ca-57c6979ac06f</name>
<view>MyDashboardScoreCard_view</view>
</neonViewReference>
</references>
</neonContext>
<?xml version="1.0" encoding="UTF-8"?>
<neonNotificationType xmlns="http://www.adito.de/2018/ao/Model" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" VERSION="1.1.0" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/neonNotificationType/1.1.0">
<name>AndisNotification</name>
<title>Andis Noti</title>
<majorModelMode>DISTRIBUTED</majorModelMode>
<resultFrameNeon></resultFrameNeon>
<onResultOpen>%aditoprj%/neonNotificationType/AndisNotification/onResultOpen.js</onResultOpen>
<context>Contact</context>
</neonNotificationType>
<?xml version="1.0" encoding="UTF-8"?>
<neonView xmlns="http://www.adito.de/2018/ao/Model" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" VERSION="1.1.1" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/neonView/1.1.1">
<name>MyDashboardScoreCard_view</name>
<majorModelMode>DISTRIBUTED</majorModelMode>
<dashletConfigurations>
<neonDashletConfiguration>
<name>Information</name>
<title>To-Do</title>
<fragment>Analyses/full</fragment>
<singleton v="true" />
<icon>VAADIN:CLIPBOARD_CHECK</icon>
<categories>
<neonDashletCategory>
<name>tasks</name>
<title>Tasks</title>
</neonDashletCategory>
<neonDashletCategory>
<name>calendar</name>
<title>Calendar</title>
</neonDashletCategory>
</categories>
</neonDashletConfiguration>
</dashletConfigurations>
<layout>
<boxLayout>
<name>layout</name>
</boxLayout>
</layout>
<children>
<scoreCardViewTemplate>
<name>Scorecard</name>
<entityField>#ENTITY</entityField>
<fields>
<entityFieldLink>
<name>158d3dd5-4de6-470b-b61d-6de1e9907264</name>
<entityField>OVERDUE_TASKS</entityField>
</entityFieldLink>
<entityFieldLink>
<name>5bbd7580-6fdd-4134-b33a-1082f4891c7c</name>
<entityField>NEW_TASKS</entityField>
</entityFieldLink>
<entityFieldLink>
<name>3631eda6-dfda-4c75-9caa-8b2c2e7c39e4</name>
<entityField>IMMINENT_APPOINTMENTS</entityField>
</entityFieldLink>
</fields>
</scoreCardViewTemplate>
</children>
</neonView>
<?xml version="1.0" encoding="UTF-8"?>
<neonView xmlns="http://www.adito.de/2018/ao/Model" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" VERSION="1.1.1" xsi:schemaLocation="http://www.adito.de/2018/ao/Model adito://models/xsd/neonView/1.1.1">
<name>MyDashboardScoreCard_view</name>
<majorModelMode>DISTRIBUTED</majorModelMode>
<dashletConfigurations>
<neonDashletConfiguration>
<name>Information</name>
<title>To-Do</title>
<fragment>Analyses/full</fragment>
<singleton v="true" />
<icon>VAADIN:CLIPBOARD_CHECK</icon>
<categories>
<neonDashletCategory>
<name>tasks</name>
<title>Tasks</title>
</neonDashletCategory>
<neonDashletCategory>
<name>calendar</name>
<title>Calendar</title>
</neonDashletCategory>
</categories>
</neonDashletConfiguration>
</dashletConfigurations>
<layout>
<boxLayout>
<name>layout</name>
</boxLayout>
</layout>
<children>
<scoreCardViewTemplate>
<name>Scorecard</name>
<entityField>#ENTITY</entityField>
<fields>
<entityFieldLink>
<name>158d3dd5-4de6-470b-b61d-6de1e9907264</name>
<entityField>OVERDUE_TASKS</entityField>
</entityFieldLink>
<entityFieldLink>
<name>5bbd7580-6fdd-4134-b33a-1082f4891c7c</name>
<entityField>NEW_TASKS</entityField>
</entityFieldLink>
<entityFieldLink>
<name>3631eda6-dfda-4c75-9caa-8b2c2e7c39e4</name>
<entityField>IMMINENT_APPOINTMENTS</entityField>
</entityFieldLink>
</fields>
</scoreCardViewTemplate>
</children>
</neonView>
This diff is collapsed.
import("system.calendars")
var users = ["Admin", "Birgit Leicht", "John Doe"]
calendars.addPermissions(users, calendars.VEVENT, ["READ", "WRITE"], null, false, calendars.SORTSTRATEGY_NATURAL);
import("system.logging");
import("system.calendars")
import("system.notification")
import("system.text");
import("system.util");
var users = ["Admin", "Birgit Leicht", "John Doe"]
calendars.addPermissions(users, calendars.VEVENT, ["READ", "WRITE"], null, false, calendars.SORTSTRATEGY_NATURAL);
calendars.setCheckAttendeesOnWrite(false);
\ No newline at end of file
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