You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

zipdownload.min.js 2.2KB

1234567891011121314151617181920
  1. /**
  2. * ZipDownload plugin script
  3. *
  4. * @licstart The following is the entire license notice for the
  5. * JavaScript code in this file.
  6. *
  7. * Copyright (c) 2013-2014, The Roundcube Dev Team
  8. *
  9. * The JavaScript code in this page is free software: you can redistribute it
  10. * and/or modify it under the terms of the GNU General Public License
  11. * as published by the Free Software Foundation, either version 3 of
  12. * the License, or (at your option) any later version.
  13. *
  14. * @licend The above is the entire license notice
  15. * for the JavaScript code in this file.
  16. */
  17. window.rcmail&&rcmail.addEventListener("init",function(a){rcmail.register_command("download-eml",function(){rcmail_zipdownload("eml")});rcmail.register_command("download-mbox",function(){rcmail_zipdownload("mbox")});rcmail.register_command("download-maildir",function(){rcmail_zipdownload("maildir")});rcmail.message_list&&rcmail.message_list.addEventListener("select",function(b){b=b.get_selection().length;rcmail.enable_command("download",0<b);rcmail.enable_command("download-eml",1==b);rcmail.enable_command("download-mbox",
  18. "download-maildir",1<b)});rcmail.addEventListener("beforedownload",rcmail_zipdownload_menu);$.each(rcmail.buttons.download||[],function(){var b=$("#"+this.id),a=$("span",b);a.length||(a=$("<span>"),b.html("").append(a));a.text(rcmail.get_label("zipdownload.download"));rcmail.env.download_link=b})});
  19. function rcmail_zipdownload(a){if("eml"==a)a=rcmail.get_single_uid(),rcmail.goto_url("viewsource",rcmail.params_from_uid(a,{_save:1}),!1,!0);else if(rcmail.message_list&&1<rcmail.message_list.get_selection().length){var b=[],c=$("#zipdownload-form"),e=rcmail.selection_post_data();e._mode=a;e._token=rcmail.env.request_token;$.each(e,function(a,d){if("object"==typeof d&&1<d.length)for(var c=0;c<d.length;c++)b.push($("<input>").attr({type:"hidden",name:a+"[]",value:d[c]}));else b.push($("<input>").attr({type:"hidden",
  20. name:a,value:d}))});c.length||(c=$("<form>").attr({style:"display: none",method:"POST",action:"?_task=mail&_action=plugin.zipdownload.messages"}).appendTo("body"));c.html("").append(b).submit()}}function rcmail_zipdownload_menu(a){rcmail.command("menu-open","zipdownload-menu",a&&a.target?a.target:rcmail.env.download_link,a);return!1};