20 lines
2 KiB
JavaScript
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});
|