zip_extractor.html 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <title>Zip Extractor</title>
  5. <meta charset="UTF-8">
  6. <meta name="viewport" content="width=device-width, initial-scale=1.0 user-scalable=no">
  7. <link rel="stylesheet" href="../../script/semantic/semantic.min.css">
  8. <script type="text/javascript" src="../../script/jquery.min.js"></script>
  9. <script type="text/javascript" src="../../script/semantic/semantic.min.js"></script>
  10. <script type="text/javascript" src="../../script/ao_module.js"></script>
  11. <style>
  12. body{
  13. background-color: rgba(255,255,255,0.7);
  14. }
  15. </style>
  16. </head>
  17. <body>
  18. <br>
  19. <div class="ui active inverted dimmer">
  20. <div class="ui text loader">Loading Archives</div>
  21. </div>
  22. <script>
  23. ao_module_setFixedWindowSize();
  24. //Load openeing file from ao_module inputs
  25. var targetFiles = ao_module_loadInputFiles();
  26. console.log("Opening Zip Archives", targetFiles);
  27. //Generate an filepath array from file objects
  28. var targetFilePaths = [];
  29. targetFiles.forEach(file => {
  30. targetFilePaths.push(file.filepath);
  31. });
  32. //Unzip and open them to tmp:/
  33. var oprConfig = {
  34. opr: "unzipAndOpen",
  35. src: targetFilePaths,
  36. dest: "tmp:/tmp_" + Date.now() + "/",
  37. overwriteMode: "overwrite",
  38. }
  39. //Render the dialog title name
  40. var configHash = encodeURIComponent(JSON.stringify(oprConfig));
  41. var title = "Unzipping " + targetFilePaths.length;
  42. if (targetFilePaths.length > 1){
  43. title += " files";
  44. }else{
  45. title += " file";
  46. }
  47. //Open the operation dialog in new floatWindow
  48. ao_module_newfw({
  49. url: "SystemAO/file_system/file_operation.html#" + configHash,
  50. width: 400,
  51. height: 220,
  52. appicon: "SystemAO/file_system/img/zip_extractor.png",
  53. title: title
  54. });
  55. //CLose this window
  56. ao_module_close();
  57. </script>
  58. </body>
  59. </html>