PageRenderTime 49ms CodeModel.GetById 23ms RepoModel.GetById 0ms app.codeStats 0ms

/js/litepublisher/swfuploader.js

http://litepublisher.googlecode.com/
JavaScript | 102 lines | 73 code | 10 blank | 19 comment | 9 complexity | 61cbeed61ff86e4ab006c0bcc6a766a6 MD5 | raw file
Possible License(s): AGPL-1.0, GPL-3.0
  1. /**
  2. * Lite Publisher
  3. * Copyright (C) 2010 - 2013 Vladimir Yushko http://litepublisher.ru/ http://litepublisher.com/
  4. * Dual licensed under the MIT (mit.txt)
  5. * and GPL (gpl.txt) licenses.
  6. **/
  7. function fileDialogComplete(numFilesSelected, numFilesQueued) {
  8. $('#progressbar').progressbar({value: 0});
  9. var url = ltoptions.uploadurl == undefined ? ltoptions.url: ltoptions.uploadurl;
  10. this.setUploadURL(url + '/admin/jsonserver.php?random=' + Math.random());
  11. var perm = $("#combo-idperm_upload");
  12. if (perm.length) this.addPostParam("idperm", perm.val());
  13. this.startUpload();
  14. }
  15. function uploadStart(file) {
  16. return true;
  17. }
  18. function uploadProgress(file, bytesLoaded, bytesTotal) {
  19. try {
  20. var percent = Math.ceil((bytesLoaded / bytesTotal) * 100);
  21. $( "#progressbar").progressbar( "value" , percent );
  22. } catch (ex) {
  23. this.debug(ex);
  24. }
  25. }
  26. function uploadError(file, errorCode, message) {
  27. //alert('uploadError');
  28. $.messagebox(lang.dialog.error, message);
  29. }
  30. function uploadComplete(file) {
  31. //alert('uploadComplete' + file);
  32. try {
  33. /* I want the next upload to continue automatically so I'll call startUpload here */
  34. if (this.getStats().files_queued === 0) {
  35. $( "#progressbar" ).progressbar( "destroy" );
  36. } else {
  37. this.startUpload();
  38. }
  39. } catch (ex) {
  40. this.debug(ex);
  41. }
  42. }
  43. function createswfu (upload_success_handler) {
  44. var url = ltoptions.uploadurl == undefined ? ltoptions.url: ltoptions.uploadurl;
  45. var cookie = get_cookie("litepubl_user");
  46. if (cookie == "") cookie = get_cookie("admin");
  47. var settings = {
  48. flash_url : url + "/js/swfupload/swfupload.swf",
  49. upload_url: url + "/admin/jsonserver.php",
  50. // prevent_swf_caching: false,
  51. post_params: {
  52. litepubl_user: cookie,
  53. litepubl_user_id: get_cookie("litepubl_user_id"),
  54. method: "files_upload"
  55. },
  56. file_size_limit : "100 MB",
  57. file_types : "*.*",
  58. file_types_description : "All Files",
  59. file_upload_limit : 0,
  60. file_queue_limit : 0,
  61. /*
  62. custom_settings : {
  63. progressTarget : "fsUploadProgress",
  64. cancelButtonId : "btnCancel"
  65. },
  66. */
  67. //debug: true,
  68. // Button settings
  69. button_image_url: ltoptions.files + "/js/swfupload/images/XPButtonUploadText_61x22.png",
  70. //button_text: '<span class="theFont">Hello</span>',
  71. button_placeholder_id : "uploadbutton",
  72. button_width: 61,
  73. button_height: 22,
  74. file_dialog_complete_handler : fileDialogComplete,
  75. upload_start_handler : uploadStart,
  76. upload_progress_handler : uploadProgress,
  77. upload_error_handler : uploadError,
  78. upload_success_handler : upload_success_handler,
  79. upload_complete_handler : uploadComplete
  80. };
  81. if (ltoptions.lang != 'en') {
  82. settings.button_text= '<span class="upload_button">' + lang.posteditor.upload + '</span>';
  83. settings.button_image_url= ltoptions.files + "/js/swfupload/images/XPButtonNoText_160x22.png";
  84. settings.button_width = 160;
  85. settings.button_text_style = '.upload_button { font-family: Helvetica, Arial, sans-serif; font-size: 14pt; text-align: center; }';
  86. settings.button_text_top_padding= 1;
  87. settings.button_text_left_padding= 5;
  88. }
  89. try {
  90. return new SWFUpload(settings);
  91. } catch(e) { alert('Error create swfupload ' + e.message); }
  92. }