From e3360104be7fb9118d7862553b28f25e300ffc1b Mon Sep 17 00:00:00 2001 From: Markus Escher <m.escher@adito.de> Date: Mon, 26 Nov 2018 11:00:34 +0100 Subject: [PATCH] add content/insert processes for Document_entity add dummy downloadFilesAction for Document_entity --- entity/Document_entity/Document_entity.aod | 17 ++++++++++++----- entity/Document_entity/contentProcess.js | 12 ++++++++++-- .../downloadfilesaction/onActionProcess.js | 6 ++++++ entity/Document_entity/onInsert.js | 3 +-- .../DocumentFilter_view/DocumentFilter_view.aod | 4 ++-- 5 files changed, 31 insertions(+), 11 deletions(-) create mode 100644 entity/Document_entity/entityfields/document_actions/children/downloadfilesaction/onActionProcess.js diff --git a/entity/Document_entity/Document_entity.aod b/entity/Document_entity/Document_entity.aod index 7b31741f75..587d70e3db 100644 --- a/entity/Document_entity/Document_entity.aod +++ b/entity/Document_entity/Document_entity.aod @@ -9,7 +9,10 @@ <fields> <element>UID</element> <element>FILENAME</element> - <element>UPLOAD</element> + <element>FILESIZE</element> + <element>EDIT_DATE</element> + <element>PREVIEW</element> + <element>FILETYPE</element> </fields> <contentProcess>%aditoprj%/entity/Document_entity/contentProcess.js</contentProcess> <onInsert>%aditoprj%/entity/Document_entity/onInsert.js</onInsert> @@ -27,19 +30,23 @@ <entityField> <name>TYPE</name> <title>Dateityp</title> + <fieldName>FILETYPE</fieldName> </entityField> <entityField> <name>SIZE</name> <title>Dateigröße</title> + <fieldName>FILESIZE</fieldName> </entityField> <entityField> - <name>DATE_NEW</name> + <name>DATE_EDIT</name> <title>Datum</title> + <fieldName>EDIT_DATE</fieldName> <contentType>DATE</contentType> </entityField> <entityField> <name>PREVIEW</name> <title>Vorschau</title> + <fieldName>PREVIEW</fieldName> <contentType>IMAGE</contentType> <state>READONLY</state> </entityField> @@ -58,16 +65,16 @@ <entityField> <name>BINDATA_UPLOAD</name> <title>Datei</title> - <fieldName>UPLOAD</fieldName> <contentType>FILE</contentType> <defaultAction>%aditoprj%/entity/Document_entity/entityfields/bindata_upload/defaultAction.js</defaultAction> </entityField> <entityActionGroup> - <name>myActions</name> + <name>Document_actions</name> <children> <entityActionField> - <name>downloadAction</name> + <name>downloadFilesAction</name> <fieldType>ACTION</fieldType> + <onActionProcess>%aditoprj%/entity/Document_entity/entityfields/document_actions/children/downloadfilesaction/onActionProcess.js</onActionProcess> <iconId>VAADIN:DOWNLOAD</iconId> </entityActionField> </children> diff --git a/entity/Document_entity/contentProcess.js b/entity/Document_entity/contentProcess.js index a5a8e9e109..0c280e38b4 100644 --- a/entity/Document_entity/contentProcess.js +++ b/entity/Document_entity/contentProcess.js @@ -12,6 +12,14 @@ if(vars.exists("$param.AssignmentTable_param") && var assignmentRowId = vars.get("$param.AssignmentRowId_param"); var alias = db.getCurrentAlias(); - //logging.log("contentProcess -> table: " + assignmentTable + " name: " + assignmentName + " id: " + assignmentRowId); - //logging.log(db.getBinaryMetadata(assignmentTable, assignmentName, assignmentRowId, false, alias)); + var tab = []; + metadata = db.getBinaryMetadata(assignmentTable, assignmentName, assignmentRowId, false, alias); + + // going through the metadata and push the data into the result array. get the bindata via db.getBinaryContent() + for( var i = 0; i < metadata.length; i++) + { + tab.push( [metadata[i].id, metadata[i].filename, metadata[i].size, metadata[i].edit, metadata[i].preview, metadata[i].mimetype]); + } + + result.object(tab); } diff --git a/entity/Document_entity/entityfields/document_actions/children/downloadfilesaction/onActionProcess.js b/entity/Document_entity/entityfields/document_actions/children/downloadfilesaction/onActionProcess.js new file mode 100644 index 0000000000..872aa053d0 --- /dev/null +++ b/entity/Document_entity/entityfields/document_actions/children/downloadfilesaction/onActionProcess.js @@ -0,0 +1,6 @@ +import("system.result"); +import("system.db"); +import("system.logging"); +import("system.vars"); + +//logging.log(db.getBinaryContent(vars.get("$local.idvalue"), null)); \ No newline at end of file diff --git a/entity/Document_entity/onInsert.js b/entity/Document_entity/onInsert.js index 120dccd76d..456dd89531 100644 --- a/entity/Document_entity/onInsert.js +++ b/entity/Document_entity/onInsert.js @@ -9,5 +9,4 @@ var bindata = vars.get("$field.BINDATA_UPLOAD"); var filename = vars.get("$field.NAME"); var alias = db.getCurrentAlias(); -//logging.log("onInsert -> table: " + assignmentTable + " name: " + assignmentName + " id: " + assignmentRowId + " filename: " + filename); -//db.insertBinary(assignmentTable, assignmentName, assignmentRowId, "", bindata, filename, "", "", alias); +db.insertBinary(assignmentTable, assignmentName, assignmentRowId, "", bindata, filename, "", "", alias); diff --git a/neonView/DocumentFilter_view/DocumentFilter_view.aod b/neonView/DocumentFilter_view/DocumentFilter_view.aod index 3cca205f1a..689aec42ef 100644 --- a/neonView/DocumentFilter_view/DocumentFilter_view.aod +++ b/neonView/DocumentFilter_view/DocumentFilter_view.aod @@ -11,7 +11,7 @@ <children> <tableViewTemplate> <name>Table_template</name> - <favoriteActionGroup1>myActions</favoriteActionGroup1> + <favoriteActionGroup1>Document_actions</favoriteActionGroup1> <entityField>#ENTITY</entityField> <columns> <neonTableColumn> @@ -34,7 +34,7 @@ </neonTableColumn> <neonTableColumn> <name>a533d8a1-ae5e-434d-8254-415586af26ed</name> - <entityField>DATE_NEW</entityField> + <entityField>DATE_EDIT</entityField> <width v="75" /> <expandRatio v="100" /> </neonTableColumn> -- GitLab