diff --git a/entity/BulkMail_entity/BulkMail_entity.aod b/entity/BulkMail_entity/BulkMail_entity.aod index 04cb781052806175e74ca8bd4c0a07f8af6ebe5c..eb2d7d497409785ac42e2469ce217027f7ddb8d5 100644 --- a/entity/BulkMail_entity/BulkMail_entity.aod +++ b/entity/BulkMail_entity/BulkMail_entity.aod @@ -94,6 +94,7 @@ <onActionProcess>%aditoprj%/entity/BulkMail_entity/entityfields/sendmail/onActionProcess.js</onActionProcess> <iconId>VAADIN:PAPERPLANE</iconId> <stateProcess>%aditoprj%/entity/BulkMail_entity/entityfields/sendmail/stateProcess.js</stateProcess> + <tooltipProcess>%aditoprj%/entity/BulkMail_entity/entityfields/sendmail/tooltipProcess.js</tooltipProcess> </entityActionField> <entityField> <name>ICON</name> diff --git a/entity/BulkMail_entity/entityfields/sendmail/onActionProcess.js b/entity/BulkMail_entity/entityfields/sendmail/onActionProcess.js index 84cc2e975ffd32302521043c2342a774b0a927cf..4a316db7db175aae1530bb366fe02086d1702f45 100644 --- a/entity/BulkMail_entity/entityfields/sendmail/onActionProcess.js +++ b/entity/BulkMail_entity/entityfields/sendmail/onActionProcess.js @@ -1,3 +1,5 @@ +import("system.translate"); +import("system.question"); import("Sql_lib"); import("system.neon"); import("system.vars"); @@ -5,7 +7,11 @@ import("Bulkmail_lib"); import("system.db"); import("KeywordRegistry_basic"); -db.updateData("BULKMAIL", ["STATUS"], null, [$KeywordRegistry.bulkMailStatus$beingSent()], - SqlCondition.equals("BULKMAIL.BULKMAILID", vars.get("$field.BULKMAILID"), "1=2")); -neon.refreshAll(); -BulkMailUtils.sendBulkMailOnServer(vars.get("$field.BULKMAILID")); \ No newline at end of file +var send = question.askYesNo(translate.text("Bulk mail"), translate.text("Should the mail be sent now?"), false); +if (send) +{ + db.updateData("BULKMAIL", ["STATUS"], null, [$KeywordRegistry.bulkMailStatus$beingSent()], + SqlCondition.equals("BULKMAIL.BULKMAILID", vars.get("$field.BULKMAILID"), "1=2")); + neon.refreshAll(); + BulkMailUtils.sendBulkMailOnServer(vars.get("$field.BULKMAILID")); +} \ No newline at end of file diff --git a/entity/BulkMail_entity/entityfields/sendmail/tooltipProcess.js b/entity/BulkMail_entity/entityfields/sendmail/tooltipProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..264f6bfd16f8e4e181b4088811117bf017025771 --- /dev/null +++ b/entity/BulkMail_entity/entityfields/sendmail/tooltipProcess.js @@ -0,0 +1,4 @@ +import("system.translate"); +import("system.result"); + +result.string(translate.text("Send")); \ No newline at end of file diff --git a/entity/SerialLetter_entity/SerialLetter_entity.aod b/entity/SerialLetter_entity/SerialLetter_entity.aod index 425c91fd3f5c075431ef55681bd699ee5965372e..e495082159a746f52d5a5b64d8cb5bf661ecf009 100644 --- a/entity/SerialLetter_entity/SerialLetter_entity.aod +++ b/entity/SerialLetter_entity/SerialLetter_entity.aod @@ -86,6 +86,13 @@ </entityParameter> </children> </entityConsumer> + <entityActionField> + <name>openAdminView</name> + <title>Open admin view</title> + <onActionProcess>%aditoprj%/entity/SerialLetter_entity/entityfields/openadminview/onActionProcess.js</onActionProcess> + <iconId>VAADIN:CURLY_BRACKETS</iconId> + <stateProcess>%aditoprj%/entity/SerialLetter_entity/entityfields/openadminview/stateProcess.js</stateProcess> + </entityActionField> </entityFields> <recordContainers> <dbRecordContainer> diff --git a/entity/SerialLetter_entity/entityfields/openadminview/onActionProcess.js b/entity/SerialLetter_entity/entityfields/openadminview/onActionProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..3987f54cc36d46bc92fb70806d7481b80104cf6f --- /dev/null +++ b/entity/SerialLetter_entity/entityfields/openadminview/onActionProcess.js @@ -0,0 +1,6 @@ +import("system.vars"); +import("Context_lib"); + +AdminViewUtils.open("SERIALLETTERID", [ + ["DOCUMENTTEMPLATE_ID", vars.get("$field.DOCUMENTTEMPLATE_ID")] +]); \ No newline at end of file diff --git a/entity/SerialLetter_entity/entityfields/openadminview/stateProcess.js b/entity/SerialLetter_entity/entityfields/openadminview/stateProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..38f2298db7304b4d44a15fbad7f720558c02da99 --- /dev/null +++ b/entity/SerialLetter_entity/entityfields/openadminview/stateProcess.js @@ -0,0 +1,4 @@ +import("Context_lib"); +import("system.result"); + +result.string(AdminViewUtils.getActionState()); \ No newline at end of file diff --git a/language/_____LANGUAGE_de/_____LANGUAGE_de.aod b/language/_____LANGUAGE_de/_____LANGUAGE_de.aod index 5c5568708b95470d5c35cf8b7d49e4d087be61bb..cba241e1c3d16a4666c0dbdc54da9e607306a5c1 100644 --- a/language/_____LANGUAGE_de/_____LANGUAGE_de.aod +++ b/language/_____LANGUAGE_de/_____LANGUAGE_de.aod @@ -82,6 +82,10 @@ <key>Categorization</key> <value>Kategorisierung</value> </entry> + <entry> + <key>Should the mail be sent now?</key> + <value>Soll die Mail jetzt versendet werden?</value> + </entry> <entry> <key>Names</key> <value>Namen</value> diff --git a/neonView/BulkMailPreview_view/BulkMailPreview_view.aod b/neonView/BulkMailPreview_view/BulkMailPreview_view.aod index f6f68c3a24cb687ac356f5612219f51a9e7b07af..1e7cc7611be90cfc48b72dcabc6166ef9d4b390e 100644 --- a/neonView/BulkMailPreview_view/BulkMailPreview_view.aod +++ b/neonView/BulkMailPreview_view/BulkMailPreview_view.aod @@ -14,6 +14,7 @@ <iconField>ICON</iconField> <titleField>NAME</titleField> <descriptionField>STATUS</descriptionField> + <favoriteAction1>sendMail</favoriteAction1> <entityField>#ENTITY</entityField> </cardViewTemplate> <genericViewTemplate> diff --git a/process/Email_lib/process.js b/process/Email_lib/process.js index 8de0df67a0fd66b5f9a2d3ded4084895dc138bc6..b26904cb878d957b93dc6b9d30842edee8a7754b 100644 --- a/process/Email_lib/process.js +++ b/process/Email_lib/process.js @@ -210,7 +210,7 @@ Email.prototype.getEML = function() * * @return {boolean} true, if the mail was sent sucessfully */ -Email.prototype.send = function () +Email.prototype.send = function (pUser) { var ENCODING = "UTF-8"; var mailId; @@ -227,7 +227,10 @@ Email.prototype.send = function () util.sleep(1500); mailId = mail.newMail(); } - + + if (this.sender) + mail.setSender(mailId, this.sender); + if (this.toRecipients.length) mail.addRecipients(mailId, mail.RECIPIENT_TO, this.toRecipients); @@ -245,7 +248,10 @@ Email.prototype.send = function () else mail.addText(mailId, "", "text/html", ENCODING, null); - mail.sendMail(mailId); + if (pUser) + mail.sendMailAs(pUser, mailId); + else + mail.sendMail(mailId); return true; } catch (ex)