mail_server/roundcubemail/plugins/attachment_reminder/attachment_reminder.min.js
2021-05-05 20:09:14 +05:30

20 lines
2 KiB
JavaScript

/**
* Attachment Reminder plugin script
*
* @licstart The following is the entire license notice for the
* JavaScript code in this file.
*
* Copyright (c) The Roundcube Dev Team
*
* The JavaScript code in this page is free software: you can redistribute it
* and/or modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation, either version 3 of
* the License, or (at your option) any later version.
*
* @licend The above is the entire license notice
* for the JavaScript code in this file.
*/
function rcmail_get_compose_message(){if(window.tinyMCE&&(ed=tinyMCE.get(rcmail.env.composebody))){var a=ed.getContent();a=a.replace(/<blockquote[^>]*>(.|[\r\n])*<\/blockquote>/gmi,"")}else a=$("#"+rcmail.env.composebody).val(),a=a.replace(/^>.*$/gmi,"");return a}function rcmail_check_message(a){var b=rcmail.get_label("keywords","attachment_reminder").split(",").concat([".doc",".pdf"]);b=$.map(b,function(c){return RegExp.escape(c)});b=new RegExp("("+b.join("|")+")","i");return-1!=a.search(b)}
function rcmail_have_attachments(){return rcmail.env.attachments&&$("li",rcmail.gui_objects.attachmentlist).length}
function rcmail_attachment_reminder_dialog(){var a={};a[rcmail.get_label("addattachment")]=function(){$(this).remove();window.UI&&UI.show_uploadform?UI.show_uploadform():window.rcmail_ui&&rcmail_ui.show_popup&&rcmail_ui.show_popup("uploadmenu",!0)};a[rcmail.get_label("send")]=function(b){$(this).remove();rcmail.env.attachment_reminder=!0;rcmail.command("send","",b)};rcmail.env.attachment_reminder=!1;rcmail.show_popup_dialog(rcmail.get_label("attachment_reminder.forgotattachment"),rcmail.get_label("attachment_reminder.missingattachment"),
a,{button_classes:["mainaction attach","send"]})}window.rcmail&&rcmail.addEventListener("beforesend",function(a){a=rcmail_get_compose_message();var b=$("#compose-subject").val();if(!rcmail.env.attachment_reminder&&!rcmail_have_attachments()&&(rcmail_check_message(a)||rcmail_check_message(b)))return rcmail_attachment_reminder_dialog(),!1});