Files
sifatbaho-php/public/assets/js/pages/file-manager.init.js
2026-04-05 05:31:24 +05:00

1 line
14 KiB
JavaScript
Executable File
Vendored

(()=>{var e=function(e){if(null!==document.getElementById(e)){var t=document.getElementById(e).getAttribute("data-colors");return(t=JSON.parse(t)).map((function(e){var t=e.replace(" ","");if(-1===t.indexOf(",")){var l=getComputedStyle(document.documentElement).getPropertyValue(t);return l||t}var n=e.split(",");if(2==n.length){var i=getComputedStyle(document.documentElement).getPropertyValue(n[0]);return i="rgba("+i+","+n[1]+")"}return t}))}}("simple_dount_chart");if(e){var t={series:[27.01,20.87,33.54,37.58],chart:{height:330,type:"donut"},legend:{position:"bottom"},labels:["Documents","Media","Others","Free Space"],dataLabels:{dropShadow:{enabled:!1}},colors:e};new ApexCharts(document.querySelector("#simple_dount_chart"),t).render()}var l,n,i,o="",r=!1;function d(e){document.querySelector("#file-list").innerHTML="",Array.from(e).forEach((function(e,t){var l;if(e.fileName.includes(".")){l=function(e){switch(e){case"png":case"jpg":return'<i class="ri-gallery-fill align-bottom text-success"></i>';case"pdf":return'<i class="ri-file-pdf-fill align-bottom text-danger"></i>';default:return'<i class="ri-file-text-fill align-bottom text-secondary"></i>'}}(e.fileName.split(".")[1])}else l='<i class="ri-folder-2-fill align-bottom text-warning"></i>';var n,i,c=e.starred?"active":"";document.querySelector("#file-list").innerHTML+='<tr> <td> <input class="form-control filelist-id" type="hidden" value="'+e.id+'" id="filelist-'+e.id+'"> <div class="d-flex align-items-center"> <div class="flex-shrink-0 fs-17 me-2 filelist-icon">'+l+'</div> <div class="flex-grow-1 filelist-name">'+e.fileName+'</div> <div class="d-none filelist-type">'+e.filetype+"</div> </div> </td> <td>"+e.fileItem+'</td> <td class="filelist-size">'+e.fileSize+'</td> <td class="filelist-create">'+e.date+'</td> <td> <div class="d-flex gap-3 justify-content-center"> <button type="button" class="btn btn-ghost-primary btn-icon btn-sm favourite-btn '+c+'"> <i class="ri-star-fill fs-13 align-bottom"></i> </button> <div class="dropdown"> <button class="btn btn-light btn-icon btn-sm dropdown" type="button" data-bs-toggle="dropdown" aria-expanded="false"> <i class="ri-more-fill align-bottom"></i> </button> <ul class="dropdown-menu dropdown-menu-end"> <li><a class="dropdown-item viewfile-list" href="#">View</a></li> <li><a class="dropdown-item edit-list" href="#createFileModal" data-bs-toggle="modal" data-edit-id='+e.id+' role="button">Rename</a></li> <li class="dropdown-divider"></li> <li><a class="dropdown-item remove-list" href="#removeFileItemModal" data-id='+e.id+' data-bs-toggle="modal" role="button">Delete</a></li> </ul> </div> </div> </td> </tr>',a(),n=0,Array.from(document.querySelectorAll(".remove-list")).forEach((function(e){e.addEventListener("click",(function(t){n=e.getAttribute("data-id"),document.getElementById("remove-fileitem").addEventListener("click",(function(){function e(e,t){return e.filter((function(e){return e.id!=t}))}var t=e(o,n);d(o=t),document.getElementById("close-removefilemodal").click(),document.getElementById("file-overview").style.display="none",document.getElementById("folder-overview").style.display="block"}))}))})),i=0,Array.from(document.querySelectorAll(".edit-list")).forEach((function(e){e.addEventListener("click",(function(t){i=e.getAttribute("data-edit-id"),o=o.map((function(e){return e.id==i&&(r=!0,document.getElementById("addNewFile").innerHTML="Save",document.getElementById("createFileModalLabel").innerHTML="File Rename",document.getElementById("filename-input").value=e.fileName,document.getElementById("fileid-input").value=e.id),e}))}))})),function(){var e=document.getElementsByTagName("body")[0];Array.from(document.querySelectorAll(".close-btn-overview")).forEach((function(t){t.addEventListener("click",(function(){e.classList.remove("file-detail-show")}))})),Array.from(document.querySelectorAll("#file-list tr")).forEach((function(t){t.querySelector(".viewfile-list").addEventListener("click",(function(){e.classList.add("file-detail-show"),document.getElementById("file-overview").style.display="block",document.getElementById("folder-overview").style.display="none";var l=t.querySelector(".filelist-id").value,n=t.querySelector(".filelist-icon i").className,i=t.querySelector(".filelist-name").innerHTML,o=t.querySelector(".filelist-size").innerHTML,r=t.querySelector(".filelist-create").innerHTML,d=t.querySelector(".filelist-type").innerHTML;document.querySelector("#file-overview .file-icon i").className=n,Array.from(document.querySelectorAll("#file-overview .file-name")).forEach((function(e){e.innerHTML=i})),Array.from(document.querySelectorAll("#file-overview .file-size")).forEach((function(e){e.innerHTML=o})),Array.from(document.querySelectorAll("#file-overview .create-date")).forEach((function(e){e.innerHTML=r})),document.querySelector("#file-overview .file-type").innerHTML=d,document.querySelector("#file-overview .remove-file-overview").setAttribute("data-remove-id",l),t.querySelector(".favourite-btn").classList.contains("active")?document.querySelector("#file-overview .favourite-btn").classList.add("active"):document.querySelector("#file-overview .favourite-btn").classList.remove("active")}))}));var t=!1,l=document.getElementsByClassName("file-manager-sidebar");Array.from(document.querySelectorAll(".file-menu-btn")).forEach((function(e){e.addEventListener("click",(function(){Array.from(l).forEach((function(e){e.classList.add("menubar-show"),t=!0}))}))})),window.addEventListener("click",(function(e){document.querySelector(".file-manager-sidebar").classList.contains("menubar-show")&&(t||document.querySelector(".file-manager-sidebar").classList.remove("menubar-show"),t=!1)}))}()}))}function a(){Array.from(document.querySelectorAll(".favourite-btn")).forEach((function(e){e.addEventListener("click",(function(){e.classList.contains("active")?e.classList.remove("active"):e.classList.add("active")}))}))}l="filemanager-filelist.json",n=function(e,t){null!==e?console.log("Something went wrong: "+e):d(o=t)},(i=new XMLHttpRequest).open("GET","assets/json/"+l,!0),i.responseType="json",i.onload=function(){var e=i.status;n(200===e?null:e,i.response)},i.send(),a(),Array.from(document.querySelectorAll(".file-manager-menu a")).forEach((function(e){e.addEventListener("click",(function(){var t=document.querySelector(".file-manager-menu a.active");t&&t.classList.remove("active"),e.classList.add("active");var l=e.querySelector(".file-list-link").innerHTML;if(document.getElementById("file-list").innerHTML="",document.getElementById("filetype-title").innerHTML="My Drive"!=l?l:"Recent file","My Drive"!=l&&"Important"!=l&&"Recents"!=l){var n=o.filter((function(e){return e.filetype===l}));document.getElementById("folder-list").style.display="none"}else if("Important"==l){n=o.filter((function(e){return 1==e.starred}));document.getElementById("folder-list").style.display="none"}else{n=o;document.getElementById("folder-list").style.display="block"}"Recents"==l&&(document.getElementById("folder-list").style.display="none"),d(n)}))}));var c=document.querySelectorAll(".createfolder-form");function s(){Array.from(document.querySelectorAll(".folder-card")).forEach((function(e){Array.from(e.querySelectorAll(".edit-folder-list")).forEach((function(t){t.addEventListener("click",(function(t){var l=e.querySelector(".card").getAttribute("id").split("-")[1];l==e.querySelector(".form-check .form-check-input").getAttribute("id").split("_")[1]&&(r=!0,document.getElementById("addNewFolder").innerHTML="Save",document.getElementById("createFolderModalLabel").innerHTML="Folder Rename",document.getElementById("folderid-input").value="folder-"+l,document.getElementById("foldername-input").value=e.querySelector(".folder-name").innerHTML)}))}))}))}Array.prototype.slice.call(c).forEach((function(e){e.addEventListener("submit",(function(t){if(e.checkValidity()){t.preventDefault();var l=document.getElementById("foldername-input").value,n=Math.floor(100*Math.random());if(folderlisthtml='<div class="col-xxl-3 col-sm-6 folder-card"> <div class="card bg-light shadow-none" id="folder-'+n+'"> <div class="card-body"> <div class="d-flex mb-1"> <div class="form-check form-check-danger mb-3 fs-15 flex-grow-1"> <input class="form-check-input" type="checkbox" value="" id="folderlistCheckbox_'+n+'"> <label class="form-check-label" for="folderlistCheckbox_'+n+'"></label> </div> <div class="dropdown"> <button class="btn btn-ghost-primary btn-icon btn-sm dropdown" type="button" data-bs-toggle="dropdown" aria-expanded="false"> <i class="ri-more-2-fill fs-16 align-bottom"></i> </button> <ul class="dropdown-menu dropdown-menu-end"> <li><a class="dropdown-item view-item-btn" href="javascript:void(0);">Open</a></li> <li><a class="dropdown-item edit-folder-list" href="#createFolderModal" data-bs-toggle="modal" role="button">Rename</a></li> <li><a class="dropdown-item" href="#removeFolderModal" data-bs-toggle="modal" role="button">Delete</a></li> </ul> </div> </div> <div class="text-center"> <div class="mb-2"> <i class="ri-folder-2-fill align-bottom text-warning display-5"></i> </div> <h6 class="fs-15 folder-name">'+l+'</h6> </div> <div class="hstack mt-4 text-muted"> <span class="me-auto"><b>0</b> Files</span> <span><b>0</b>GB</span> </div> </div> </div> </div>',""===l||r){if(""!==l&&r){var i;i=document.getElementById("folderid-input").value,document.getElementById(i).querySelector(".folder-name").innerHTML=l,document.getElementById("addFolderBtn-close").click(),r=!1,document.getElementById("addNewFolder").innerHTML="Add Folder",document.getElementById("createFolderModalLabel").innerHTML="Create Folder",document.getElementById("folderid-input").value="",document.getElementById("foldername-input").value=""}}else document.getElementById("folderlist-data").insertAdjacentHTML("afterbegin",folderlisthtml),document.getElementById("addFolderBtn-close").click(),s();document.getElementById("folderid-input").value="",document.getElementById("foldername-input").value=""}else t.preventDefault(),t.stopPropagation();e.classList.add("was-validated")}),!1)})),s();var m=document.getElementById("removeFolderModal");m&&m.addEventListener("show.bs.modal",(function(e){document.getElementById("remove-folderList").addEventListener("click",(function(t){e.relatedTarget.closest(".folder-card").remove(),document.getElementById("close-removeFoldermodal").click()}))}));var u=(new Date).toUTCString().slice(5,16);Array.from(document.querySelectorAll(".createFile-modal")).forEach((function(e){e.addEventListener("click",(function(e){document.getElementById("addNewFile").innerHTML="Create",document.getElementById("createFileModalLabel").innerHTML="Create File",document.getElementById("filename-input").value="",document.getElementById("fileid-input").value="",document.getElementById("createfile-form").classList.remove("was-validated")}))})),Array.from(document.querySelectorAll(".create-folder-modal")).forEach((function(e){e.addEventListener("click",(function(e){document.getElementById("addNewFolder").innerHTML="Add Folder",document.getElementById("createFolderModalLabel").innerHTML="Create Folder",document.getElementById("folderid-input").value="",document.getElementById("foldername-input").value="",document.getElementById("createfolder-form").classList.remove("was-validated")}))}));var f,v=document.querySelectorAll(".createfile-form");function y(e){return parseInt(e.id)}function g(){document.documentElement.clientWidth<1400?document.body.classList.remove("file-detail-show"):document.body.classList.add("file-detail-show")}Array.prototype.slice.call(v).forEach((function(e){e.addEventListener("submit",(function(t){if(e.checkValidity()){t.preventDefault();var l=document.getElementById("filename-input").value,n=Math.floor(100*Math.random());if(""===l||r){if(""!==l&&r){var i;i=document.getElementById("fileid-input").value,o=o.map((function(e){return e.id==i?{id:e.id,fileName:document.getElementById("filename-input").value,filetype:e.filetype,fileItem:e.fileItem,fileSize:e.fileSize,date:e.date,starred:e.starred}:e})),r=!1,document.getElementById("addFileBtn-close").click()}}else{var a={id:n,fileName:l+".txt",filetype:"Documents",fileItem:"01",fileSize:"0 KB",date:u,starred:!1};o.push(a),d(o.sort((function(e,t){var l=y(e),n=y(t);return l>n?-1:l<n?1:0}))),document.getElementById("addFileBtn-close").click()}d(o),document.getElementById("addNewFile").innerHTML="Create",document.getElementById("createFileModalLabel").innerHTML="Create File"}else t.preventDefault(),t.stopPropagation();e.classList.add("was-validated")}),!1)})),f=0,Array.from(document.querySelectorAll(".remove-file-overview")).forEach((function(e){e.addEventListener("click",(function(t){f=e.getAttribute("data-remove-id"),document.getElementById("remove-fileitem").addEventListener("click",(function(){var e,t="";e=f,t=o.filter((function(t){return t.id!=e})),d(o=t),document.getElementById("close-removefilemodal").click(),document.getElementsByTagName("body")[0].classList.remove("file-detail-show")}))}))})),g(),window.addEventListener("resize",g)})();