var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; var Unibase; (function (Unibase) { let Apps; (function (Apps) { let Collaboration; (function (Collaboration) { let Components; (function (Components) { class UniCloud { constructor() { this.selectedfolderid = 0; this.copyToSelectedFileId = 0; this.changedUserPermissions = []; this.mimeType = { "txt": "text/plain", "pdf": "application/pdf", "zip": "application/zip", "doc": "application/vnd.ms-word", "docx": "application/vnd.ms-word", "xls": "application/vnd.ms-excel", "xlsx": "application/ vnd.openxmlformatsofficedocument.spreadsheetml.sheet", "png": "image/png", "jpg": "image/jpeg", "jpeg": "image/jpeg", "gif": "image/gif", "csv": "text/csv", "mp3": "audio/mpeg3", "mp4": "video/mp4", "mpeg": "video/mpeg", "svg": "image/svg+xml", "xml": "application/xml", "ods": "application/vnd.oasis.opendocument.spreadsheet" }; } init() { } jsFiles() { return ["apps/collaboration/managers/documentmanager.js", "apps/collaboration/managers/filemanager.js", "apps/collaboration/enums/enum.js", "apps/collaboration/components/unicloud.js"]; } loadlist(id, type, installedappid, filetype) { if (type.toLowerCase() == "folder") { Unibase.Platform.Helpers.NavigationHelper.Instance().loadDetail(id, installedappid, null); } if (type == "File") { Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFile("apps/collaboration/components/documents.js", function () { Unibase.Apps.Collaboration.Components.Documents.Instance().previewDocument(id, filetype, 0); }); } } filedownload(sourcefileid, documentfileid) { debugger; var instance = this; if (sourcefileid != 0) { instance.filedownload_new(documentfileid); } else { Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFile("platform/controls/filedragndrop/w_documentfiles.js", function () { return __awaiter(this, void 0, void 0, function* () { Unibase.Platform.Forms.Components.DocumentFiles.Instance().downloadDocument(documentfileid); }); }); } } filedownload_new(id) { debugger; var instance = this; var documentfileid = 0; var InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId; if (id == 0) { documentfileid = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_documentfileid").Value); id = documentfileid; } else documentfileid = 0; Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFile("apps/collaboration/managers/filemanager.js", function () { Unibase.Apps.Collaboration.FileManager.Instance().downloadfile(id).then((response) => { if (response.result != null) { debugger; if (response.result.FileData != null && response.result.FileData != '') { instance.downloadBase64File(response.result.FileData, response.result.DocumentFileName, response.result.FileType); } } }); }); } ; downloadfolder(id) { debugger; Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFile("apps/collaboration/managers/filemanager.js", function () { Unibase.Apps.Collaboration.FileManager.Instance().downloadfolder(id).then((response) => { if (response != null && response.result != null) Unibase.Platform.Helpers.AssetHelper.Instance().download(response.result); }); }); } downloadBase64File(contentBase64, fileName, type) { var instance = this; var mimetype = instance.mimeType[type]; const linkSource = `data:${mimetype};base64,${contentBase64}`; const downloadLink = document.createElement('a'); document.body.appendChild(downloadLink); downloadLink.href = linkSource; downloadLink.target = '_self'; downloadLink.download = fileName + "." + type; downloadLink.click(); } deletefromproviders(documentfileid, sourcefileid, installedappid) { debugger; var instance = this; bootbox.confirm({ message: "Are you sure delete this file ?", buttons: { confirm: { label: 'Ok', className: 'btn-success' }, cancel: { label: 'Cancel', className: 'btn-danger' } }, callback: function (result) { if (result) { if (sourcefileid == 0) { Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFile("platform/files/managers/filemanager.js", function () { return __awaiter(this, void 0, void 0, function* () { Unibase.Platform.Files.Managers.FileManager.Instance().deleteDocumentFile(documentfileid).then(function (response) { MessageHelper.Instance().showSuccess(response.message, "div_message"); debugger; var InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId; Unibase.Themes.Compact.Components.Nav.Instance().loadList(installedappid); }); }); }); } else { instance.deletefile(documentfileid, installedappid); Unibase.Themes.Compact.Components.Nav.Instance().loadList(installedappid); } } else { } } }); } deletefile(id, installedappid) { debugger; var instance = this; Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFile("apps/collaboration/managers/filemanager.js", function () { return __awaiter(this, void 0, void 0, function* () { yield Unibase.Apps.Collaboration.FileManager.Instance().deleteFILE(id).then((response) => { Unibase.Themes.Compact.Components.Nav.Instance().loadList(installedappid); MessageHelper.Instance().showSuccess(response.message, "div_message"); }); }); }); } deletefolder(id, installedappid) { debugger; var instance = this; Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFile("apps/collaboration/managers/filemanager.js", function () { return __awaiter(this, void 0, void 0, function* () { yield Unibase.Apps.Collaboration.FileManager.Instance().deletefolder(id).then((response) => { Unibase.Themes.Compact.Components.Nav.Instance().loadList(installedappid); }); }); }); } unitemplatelist(filetype) { debugger; Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFile("apps/collaboration/managers/filemanager.js", function () { debugger; Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFile("platform/analytics/components/reportviewer/_reportviewer.js", function () { Unibase.Platform.Analytics.Components.ReportViewer.Instance().report_ViewAllByUniqueId('Bizgaze_Platform_Analytics_Reports_Drive_Templates', null, null, null); debugger; }); }); } unitemplatesheet(filetype) { debugger; Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFile("apps/collaboration/managers/filemanager.js", function () { debugger; Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFile("platform/analytics/components/reportviewer/_reportviewer.js", function () { Unibase.Platform.Analytics.Components.ReportViewer.Instance().report_ViewAllByUniqueId('Bizgaze_Platform_Analytics_Reports_Drive_sheettemplates', null, null, null); debugger; }); }); } blankdoc(templateid) { debugger; var InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId; var folderid = 0; if (InstalledAppId == 0) { folderid = 0; } else folderid = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_folderid").Value); Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFile("apps/collaboration/managers/filemanager.js", function () { Unibase.Apps.Collaboration.FileManager.Instance().createnewsheet(templateid, folderid).then((response) => { if (response.result != null) { var filepath = "https://115.248.56.12:3001/loleaflet/d0edfeabb/loleaflet.html?file_path=file://" + response.result.FilePath; let url = filepath; window.open(url); } else { alert(response.message); } }); }); } movefiles(fileid, folderid, containerid) { debugger; const instance = this; Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFile("apps/collaboration/managers/filemanager.js", function () { instance.appendMoveCard(containerid, false, fileid); }); } moveFolders(sourcefolderid, folderid, containerid) { const instance = this; instance.sourcefolderid = sourcefolderid; Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFile("apps/collaboration/managers/filemanager.js", function () { instance.appendMoveCard(containerid, true, folderid); }); } appendMoveCard(containerid, isFolder, id) { debugger; const instance = this; let folderId = 0; let dropdownEl = $(`#fileDropdown_${containerid}`); if (isFolder) { dropdownEl = $(`#folderDropdown_${containerid}`); folderId = id; } const cardCss = dropdownEl.attr('style'); const cardHtml = `
My Drive
`; $(`#moveFoldersCard_${containerid}`).remove(); dropdownEl.addClass('d-none'); $(`#Viewer_${containerid}`).append(cardHtml); instance.bindFoldersList(containerid, folderId); const folderCardEl = $(`#moveFoldersCard_${containerid}`); folderCardEl.find('.close-btn').click(function (e) { debugger; e.stopPropagation(); folderCardEl.addClass('d-none'); dropdownEl.removeClass('d-none'); }); $(`#moveFoldersCard_${containerid} .back-btn`).click(function (e) { debugger; e.stopPropagation(); const visibleFolderEl = folderCardEl.find('.folders-list:visible'); folderCardEl.find('.folders-list.d-none').last().removeClass('d-none'); if (visibleFolderEl.index() === 0) { folderCardEl.remove(); } else { visibleFolderEl.remove(); } }); $(`#moveConfirmBtn_${containerid}`).click(function () { debugger; const activeFolderId = +folderCardEl.find('.folder-item.active').attr('data-id'); if (id != 0) { Unibase.Apps.Collaboration.FileManager.Instance().movefiles(id, activeFolderId).then((response) => { debugger; if (response.status === Unibase.Data.Status.Success) { MessageHelper.Instance().showSuccess(response.message, ''); folderCardEl.remove(); } }); } else { debugger; Unibase.Apps.Collaboration.FileManager.Instance().movefolders(instance.sourcefolderid, activeFolderId).then((response) => { debugger; if (response.status === Unibase.Data.Status.Success) { MessageHelper.Instance().showSuccess(response.message, ''); folderCardEl.remove(); } }); } }); let timer; folderCardEl.find('.folder-search').on('keyup', function (e) { debugger; const searchVal = $(this).val().toString().trim(); const visibleFolderEl = folderCardEl.find('.folders-list:visible'); window.clearTimeout(timer); timer = setTimeout(() => { if (searchVal) { visibleFolderEl.find('.folder-item').each(function (i, e) { const folderName = $(e).attr('data-name'); if (folderName.includes(searchVal)) { $(e).show(); } else { $(e).hide(); } }); } else { visibleFolderEl.find('.folder-item').show(); } }, 1500); }); folderCardEl.find('.folder-search-btn').click(function () { folderCardEl.find('.move-title-wrap').addClass('d-none'); folderCardEl.find('.folder-search-wrap').removeClass('d-none'); }); folderCardEl.find('.close-search-folder').click(function () { folderCardEl.find('.folder-search').val('').trigger('keyup'); folderCardEl.find('.move-title-wrap').removeClass('d-none'); folderCardEl.find('.folder-search-wrap').addClass('d-none'); }); folderCardEl.find('.create-folder-btn').click(function () { folderCardEl.find('.move-title-wrap').addClass('d-none'); folderCardEl.find('.create-folder-wrap').removeClass('d-none'); }); folderCardEl.find('.close-create-folder').click(function () { folderCardEl.find('.move-title-wrap').removeClass('d-none'); folderCardEl.find('.create-folder-wrap').addClass('d-none'); }); $(`#createFolder_${containerid}`).click(function () { const createInput = folderCardEl.find('.create-folder-input'); const folderName = createInput.val().toString().trim(); const activeFolderId = +folderCardEl.find('.folders-list:visible').attr('data-folderid'); if (folderName) { Unibase.Apps.Collaboration.FileManager.Instance().createfolder(activeFolderId, folderName).then((response) => { if (response.status === Unibase.Data.Status.Success) { createInput.val(''); folderCardEl.find('.close-create-folder').trigger('click'); if (response.result) { const { FolderId, FolderName, ParentId } = response.result; const folderItem = instance.getFolderItemHtml(containerid, FolderId, FolderName); $(`#foldersList_${ParentId}`).prepend(folderItem); } } }); } }); } bindFoldersList(containerid, folderid) { const instance = this; $(`#moveCardBody_${containerid} .folders-list:visible`).addClass('d-none'); $(`#moveCardBody_${containerid}`).append(``); Unibase.Apps.Collaboration.FileManager.Instance().GetFolderList(folderid).then((response) => { debugger; if (response.result.Folder) { const foldersHtml = response.result.Folder.map(folder => { const { FolderId, FolderName } = folder; return instance.getFolderItemHtml(containerid, FolderId, FolderName); }).join(''); $(`#foldersList_${folderid}`).html(foldersHtml); } else { $(`#foldersList_${folderid}`).addClass('flex-center h-100').html('This folder is empty'); } }); } getFolderItemHtml(containerId, FolderId, FolderName) { debugger; return `
  • ${FolderName}
  • `; } activeFolderItem(folderId) { debugger; const folderEl = $(`#folderLink_${folderId}`); if (folderEl.parent().hasClass('active')) { folderEl.parent().removeClass('active'); } else { $('.folder-item.active').removeClass('active'); folderEl.parent().addClass('active'); } } getFolderId(formproperty) { debugger; var formpropertyid = 0; var id_ = formproperty[0].id; var _id = id_.split("_"); formpropertyid = _id[_id.length - 1]; var filearray = Unibase.Forms.Controls.FileDragNDrop.Instance().files_array[formpropertyid]; var installedAppId = Unibase.Themes.Providers.DetailHelper.installedAppId; var folderid = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + installedAppId + "_recordid").Value); for (var i = 0; i < filearray.length; i++) { filearray[i].RefId = folderid; } } downloadFolder() { var folderid = 0; if (Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.length > 0) { var installedAppId = Unibase.Themes.Providers.DetailHelper.installedAppId; folderid = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + installedAppId + "_recordid").Value); } Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFile("apps/collaboration/managers/filemanager.js", function () { Unibase.Apps.Collaboration.FileManager.Instance().getFolder(folderid).then((response) => { var path = response.result.FolderPath; Unibase.Apps.Collaboration.FileManager.Instance().folderDownload(folderid).then((response) => { var filedata = response.result.FileData; var file = Unibase.Platform.Helpers.FileHelper.Instance().convertBase64tofile(response.result); }); }); }); } loadFileProviders(documentfileid, containerid, fileproviderid, installedappid) { debugger; let dropdownEl = $(`#fileDropdown_${containerid}`); const cardCss = dropdownEl.attr('style'); const html = ``; $(`#providersDpMenu_${containerid}`).remove(); $(`#Viewer_${containerid}`).append(html); dropdownEl.addClass('d-none'); Unibase.Apps.Collaboration.FileManager.Instance().getfileprovider(documentfileid, fileproviderid).then((response) => { debugger; if (response.result) { const providersDpHtml = response.result.map(provider => { const { FileProviderId, ProviderName } = provider; return `${ProviderName} `; }).join(''); $(`#providersDpMenu_${containerid}`).html(providersDpHtml).removeClass('d-none'); } }); } uploadFilesByProviders(providerId, documentfileId, installedappId) { Unibase.Apps.Collaboration.FileManager.Instance().uploadfilesbyproviders(providerId, documentfileId).then(function (response) { debugger; Unibase.Themes.Compact.Components.Nav.Instance().loadList(installedappId); MessageHelper.Instance().showSuccess(response.message, "div_message"); }); } loadFileRename(Id, title, type, installedappid) { let renameHtml = ""; renameHtml = `
    `; $("#_bizgaze_modal").append(renameHtml); $("#listscreenrename_" + Id).val(title); $('#rename_' + Id).modal(); } rename(Id, type, installedappid) { if ($("#listscreenrename_" + Id).val() == "") { MessageHelper.Instance().showError("Please Enter Filename", "renamemodal_errormessage"); } else { var renamedata = { Id: Id, Title: $("#listscreenrename_" + Id).val(), Type: type, }; Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFile("apps/collaboration/managers/documentmanager.js", function () { Unibase.Apps.Collaboration.DocumentManager.Instance().renameFileTitle(renamedata).then(function (response) { if (response.errors == null) { MessageHelper.Instance().showSuccess("File Renamed Successfully", "Unibase_ValidationSummary"); $('#rename_' + Id).modal("hide"); Unibase.Platform.Helpers.NavigationHelper.Instance().loadList(installedappid, null); } else { MessageHelper.Instance().showError(response.errors[0].toString(), "renamemodal_errormessage"); } }); }); } } getLink(id, type) { Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFile("apps/collaboration/managers/filemanager.js", function () { Unibase.Apps.Collaboration.FileManager.Instance().getFileUrl(id, type).then(function (response) { var fileUrl = _appsettings.server_url() + response.result; let ModalHtml = `
    `; $("#_bizgaze_modal").append(ModalHtml); $('#div_getlink').modal(); $("#btn_done").click(function () { $("#div_getlink").modal("hide"); }); }); }); } copyUrl() { var element = $("#filegetlink"); var $temp = $(""); $("body").append($temp); $temp.val($(element).val()).select(); document.execCommand("copy"); $temp.remove(); MessageHelper.Instance().showSuccess("Link Copied", "Unibase_ValidationSummary"); } share(pkid, curfileType, installAppID) { debugger; var instance = this; var ownerID; var ownerName; if (pkid == this.fileId) { this.fileId = pkid; } else { this.selectedfolderid = pkid; } var shareid = $("#hdn_shareid_" + pkid).val(); var Linkinfo; Unibase.Platform.Helpers.FileCacheHelper.Instance().loadCssFiles(["apps/collaboration/components/share.css", "libs/select2/css/select2.css"], null); Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFiles(["libs/select2/js/select2.min.js", "apps/collaboration/managers/filemanager.js", "apps/collaboration/managers/documentmanager.js", "apps/collaboration/enums/enum.js"], (res) => { Unibase.Apps.Collaboration.FileManager.Instance().getLinkInfo(pkid).then((response) => { debugger; Linkinfo = response.result; console.log(Linkinfo); Unibase.Apps.Collaboration.Components.UniCloud.Instance().changeFilePermissionOption(Linkinfo.PermissionLevel, Linkinfo.Restriction); }); let identity = Unibase.Platform.Membership.Infos.Identity.getCurrentUser(); debugger; let sharehtml = ` `; $("#_bizgaze_modal").append(sharehtml); $('.modal-backdrop.show').addClass('d-none'); $('#bizShareModal').modal({ backdrop: 'static', keyboard: false }); $('.modal-backdrop').css('z-index', '1050'); $("#bizShareModal").on("shown.bs.modal", function () { Unibase.Apps.Collaboration.Components.UniCloud.instance.loadUsers(); Unibase.Apps.Collaboration.FileManager.Instance().getFileUrl(pkid, curfileType).then(function (response) { let fileUrl = _appsettings.server_url() + response.result; $('#txt_link,#hidden_txt_link').attr('value', fileUrl); }); }); $('#user_select2').find('option').remove(); Unibase.Apps.Collaboration.Components.UniCloud.instance.loadUsers(); Unibase.Apps.Collaboration.Components.UniCloud.instance.getShareusers(pkid, curfileType); debugger; $('#user_select2').change(function () { debugger; var selectedLength = $(this).find('option:selected').length; if (selectedLength > 0) { if (!$('#notify_check').is(':checked')) { $('#notify_check').trigger('click'); } $('#div_users').addClass('pr-0'); $('#headereditorbtn').removeClass('hidden'); $('#peopleNotificationArea,#sharedFileDiv,#shareActionsBtnGroup').removeClass('hidden'); $('#ul_shared_people_list,#doneBtn,#get-link-card').addClass('hidden'); $('#sharePeopleHeaderBtn').addClass('notifyBackBtn'); $('#sharedActionsCancelBtn').addClass('notifyBackBtn'); $('#sharePeopleHeaderBtn').find('.la-user-plus').addClass('d-none'); $('#sharePeopleHeaderBtn').find('.la-arrow-left').removeClass('d-none'); } else { $('#div_users').removeClass('pr-0'); $('#headereditorbtn').addClass('hidden'); $('#peopleNotificationArea,#sharedFileDiv,#shareActionsBtnGroup').addClass('hidden'); $('#ul_shared_people_list,#doneBtn,#get-link-card').removeClass('hidden'); $('#sharePeopleHeaderBtn').removeClass('notifyBackBtn'); $('#sharePeopleHeaderBtn').find('.la-arrow-left').addClass('d-none'); $('#sharePeopleHeaderBtn').find('.la-user-plus').removeClass('d-none'); } }); $('#notify_check').change(function () { debugger; if ($(this).is(':checked')) { $('#share_message').removeClass('d-none'); $('#notifyCheckbox').removeClass('unchecked'); } else { $('#share_message').addClass('d-none'); $('#notifyCheckbox').addClass('unchecked'); } }); $('#sharePeopleHeaderBtn,#sharedActionsCancelBtn').click(function () { debugger; if ($(this).hasClass('notifyBackBtn')) { $('#peopleNotificationArea,#sharedFileDiv,#shareActionsBtnGroup').addClass('hidden'); $('#ul_shared_people_list,#doneBtn,#get-link-card').removeClass('hidden'); $("#user_select2").empty().trigger('change'); $(this).removeClass('notifyBackBtn'); $(this).find('.la-arrow-left').addClass('d-none'); $(this).find('.la-user-plus').removeClass('d-none'); } }); $('#collapseGetLinkBtn,#collapseShareBtn').click(function () { debugger; if ($(this).attr('data-expanded') == 'false') { if ($(this).attr('id') == 'collapseShareBtn') { $('#collapse_getlink').collapse('hide'); $('#collapese_share').collapse('show'); $('#collapseGetLinkBtn').attr('data-expanded', 'false'); $(this).attr('data-expanded', 'true'); $('#collapsecopybtn').parent().removeClass('d-none'); $('#collapsecopybtn').parent().addClass('d-flex'); } else { $('#collapese_share').collapse('hide'); $('#collapse_getlink').collapse('show'); $('#collapseShareBtn').attr('data-expanded', 'false'); $(this).attr('data-expanded', 'true'); $('#collapsecopybtn').parent().removeClass('d-flex'); $('#collapsecopybtn').parent().addClass('d-none'); } } }); $('#doneBtn,#sharedActionsSaveBtn,#getLinkDoneBtn').click(function () { $('#bizShareModal').modal('hide'); }); $('#DiscardModalBtn').click(function () { $('#bizShareModal').modal('hide'); $('#discardModal').modal('hide'); }); $('#bizShareModal').click(function () { var selectedLength = $('#user_select2').find('option:selected').length; let isPermissionChanged = $('#permissionsSavePending').is(':visible'); let sharedUsersLength = parseInt($('#ul_shared_people_list').attr('data-sharedUsersLength')); let sharedUsersChangedLength = $('#ul_shared_people_list li').length; if (selectedLength > 0 || isPermissionChanged || sharedUsersLength != sharedUsersChangedLength - 1) { $("#bizShareModal").css("z-index", "1050"); $("#discardModal").modal("show"); } else { $("#bizShareModal").modal("hide"); } }); $("#bizShareModalDialog").click(function (event) { event.stopPropagation(); $('#bizShareModalDialog').find('.dropdown-menu').removeClass('show'); }); $("#bizShareModal").on("hidden.bs.modal", function () { $("#_bizgaze_modal").html(''); }); $("#discardModal").on("hidden.bs.modal", function () { $("#bizShareModal").css("z-index", ""); }); $("#shareSettings").click(function () { $('#shareSettingsCard').removeClass('d-none'); $('#get-link-card,#shareWithPeopleCard').addClass('d-none'); }); $("#sharePeopleSettingsBtn").click(function () { $('#shareSettingsCard').addClass('d-none'); $('#get-link-card,#shareWithPeopleCard').removeClass('d-none'); }); $('.sharePeopleSettingCheckbox').change(function () { if ($(this).is(':checked')) { $(this).parent().removeClass('unchecked'); } else { $(this).parent().addClass('unchecked'); } }); $("#ul_shared_people_list").on("resize scroll", function () { var activeDropdown = $('.dropdown-menu.show'); if (activeDropdown.length > 0) { var pos = parseInt(activeDropdown.attr('data-topPos')) - $(this).scrollTop(); activeDropdown.css("top", pos); let liElem = activeDropdown.parents('.people-list-item'); let isInViewport = instance.isInViewport(liElem); if (!isInViewport) { activeDropdown.removeClass('show'); } } }); $("#get-link-card").click(function () { if (!$('#shareWithPeopleCard').find('.card-header').hasClass('activestate')) { $('#shareWithPeopleCard').find('.btn-icon').removeClass('btn-primary'); $('#shareWithPeopleCard').find('.btn-icon').addClass('bg-secondary text-white'); } }); $('#collapsecopybtn').click(function (event) { event.stopPropagation(); }); }); } isInViewport(elem) { var elementTop = elem.offset().top; var elementBottom = elementTop + elem.outerHeight(); var viewportTop = $('#ul_shared_people_list').scrollTop(); var viewportBottom = viewportTop + $('#ul_shared_people_list').height(); return elementBottom > viewportTop && elementTop < viewportBottom; } ; showHidePermissionDropdown(event) { debugger; event.stopPropagation(); let clickedBtn = $(event.currentTarget); if (!clickedBtn.siblings('.dropdown-menu').hasClass('show')) { $('#bizShareModalDialog').find('.dropdown-menu').removeClass('show'); clickedBtn.siblings('.dropdown-menu').addClass('show'); } else { clickedBtn.siblings('.dropdown-menu').removeClass('show'); } var buttonPos = event.currentTarget.offsetTop - $("#ul_shared_people_list").scrollTop(); clickedBtn.siblings(".dropdown-menu").css("top", buttonPos); clickedBtn.siblings(".dropdown-menu").attr("data-topPos", event.currentTarget.offsetTop); } copyLinkText(element) { debugger; if (element == '#hidden_txt_link') { $('#hidden_txt_link').select(); } else { $('#txt_link').select(); } document.execCommand("copy"); MessageHelper.Instance().showSuccess("Link Copied", "Unibase_ValidationSummary"); } changeFilePermissionOption(permission, restricted, evt) { debugger; if (permission == '0' && restricted != Unibase.Apps.Collaboration.Enums.Share.Ristrict) { let permissionbtnValue = $('#getLinkUserPermissions button').text().trim(); permissionbtnValue == 'Viewer' ? permission = Unibase.Apps.Collaboration.Enums.Share.Viewer : permission = Unibase.Apps.Collaboration.Enums.Share.Editor; } if (restricted == '0') { let restrictionbtnValue = $('#FilePermissionbutton').text().trim(); if (restrictionbtnValue == 'Restricted') { restricted = Unibase.Apps.Collaboration.Enums.Share.Ristrict; } else if (restrictionbtnValue == 'Anyone with the link') { restricted = Unibase.Apps.Collaboration.Enums.Share.AnyoneWithLink; } else { restricted = Unibase.Apps.Collaboration.Enums.Share.TenantId; } } var userinfo = Unibase.Platform.Membership.Infos.Identity.getCurrentUser(); if (restricted == Unibase.Apps.Collaboration.Enums.Share.Ristrict) { $("#permissionOrganization,#permissionAnyoneWithLink").find(".dropdown-icon").removeClass("las la-check"); $("#permissionRestricted").append(``); $("#FilePermissionbutton").text("Restricted"); $("#FilePermissionDescription").text("Only people added can open with this link"); $('#getLinkUserPermissions').addClass('d-none'); $("#collapsePermissionDesc").text("Restricted Only people added can open with this link"); $("#filePermssionIcon").empty(); $("#filePermssionIcon").append(''); } else if (restricted == Unibase.Apps.Collaboration.Enums.Share.TenantId) { $("#permissionRestricted,#permissionAnyoneWithLink").find(".dropdown-icon").removeClass("las la-check"); $("#permissionOrganization").append(``); $("#FilePermissionbutton").text("1"); $("#FilePermissionDescription").text("Anyone in this group with this link can view"); $('#getLinkUserPermissions').removeClass('d-none'); $("#collapsePermissionDesc").text(userinfo.name + " Anyone in this group with this link can view"); $("#filePermssionIcon").empty(); $("#filePermssionIcon").append(''); } else if (restricted == Unibase.Apps.Collaboration.Enums.Share.AnyoneWithLink) { $("#permissionRestricted,#permissionOrganization").find(".dropdown-icon").removeClass("las la-check"); $("#permissionAnyoneWithLink").append(``); $("#FilePermissionbutton").text("Anyone with the link"); $("#FilePermissionDescription").text("Anyone on the Internet with this link can view"); $('#getLinkUserPermissions').removeClass('d-none'); $("#collapsePermissionDesc").text("Anyone on the Internet with this link can view"); $("#filePermssionIcon").empty(); $("#filePermssionIcon").append(''); } if (permission == Unibase.Apps.Collaboration.Enums.Share.Viewer) { if (evt != undefined) { $(evt.currentTarget).parents('.permissionsMenu.show').find(".dropdown-icon").removeClass("las la-check"); $(evt.currentTarget).append(``); $(evt.currentTarget).parents('.permissionsMenu').siblings('.permissionsBtn').text("Viewer"); } else { $("#getLinkUserPermissions .permissionsMenu.show").find(".dropdown-icon").removeClass("las la-check"); $("#getLinkUserPermissions .tenanteditorPermission").append(``); $("#getLinkUserPermissions .permissionsBtn").text("Viewer"); } $('#headereditorbtn').attr('data-permissionLevel', `${Unibase.Apps.Collaboration.Enums.Share.Viewer}`); } if (permission == Unibase.Apps.Collaboration.Enums.Share.Editor) { if (evt != undefined) { $(evt.currentTarget).parents('.permissionsMenu.show').find(".dropdown-icon").removeClass("las la-check"); $(evt.currentTarget).append(``); $(evt.currentTarget).parents('.permissionsMenu').siblings('.permissionsBtn').text("Editor"); } else { $("#getLinkUserPermissions .permissionsMenu.show").find(".dropdown-icon").removeClass("las la-check"); $("#getLinkUserPermissions #tenanteditorPermission").append(``); $("#getLinkUserPermissions .permissionsBtn").text("Editor"); } $('#headereditorbtn').attr('data-permissionLevel', `${Unibase.Apps.Collaboration.Enums.Share.Editor}`); } if (permission == Unibase.Apps.Collaboration.Enums.Share.Commentor) { if (evt != undefined) { $(evt.currentTarget).parents('.permissionsMenu.show').find(".dropdown-icon").removeClass("las la-check"); $(evt.currentTarget).append(``); $(evt.currentTarget).parents('.permissionsMenu').siblings('.permissionsBtn').text("Commentor"); } else { $("#getLinkUserPermissions .permissionsMenu.show").find(".dropdown-icon").removeClass("las la-check"); $("#tenantcommentorPermission").append(``); $("#getLinkUserPermissions .permissionsBtn").text("Commentor"); } $('#headereditorbtn').attr('data-permissionLevel', `${Unibase.Apps.Collaboration.Enums.Share.Commentor}`); } var data = { FileId: this.fileId, PermissionLevel: parseInt(permission), Restriction: parseInt(restricted), }; $('.get-link-card-loader').removeClass('hidden'); Unibase.Apps.Collaboration.FileManager.Instance().updateLink(data).then((response) => { console.log(response.result); $('.get-link-card-loader').addClass('hidden'); }); } getShareusers(pkid, type) { debugger; let sharedusers = "Shared with "; if (type == "file") { Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFile("apps/collaboration/managers/filemanager.js", function () { Unibase.Apps.Collaboration.FileManager.Instance().getUsers(pkid).then((response) => { debugger; $("#ul_shared_people_list").empty(); $("#ul_shared_people_list").html(``); var sharelist = response.result; if (sharelist.length <= 1) { sharedusers = 'No one has been added yet'; } $('#ul_shared_people_list').attr('data-sharedUsersLength', sharelist.length); for (var i = 0; i < sharelist.length; i++) { if (sharelist[i].UserName == null) { sharelist[i].UserName = "Unknown"; } var character = sharelist[i].UserName.trim().charAt(0); var data = sharelist[i].UserName.toLowerCase(); if (sharelist.length > 1) { sharedusers += data + ','; } var emailId; if (sharelist[i].UserEmail != null) { emailId = sharelist[i].UserEmail; } else { emailId = ""; } var sharelisthtml = `
  • ` + character + `

    ` + sharelist[i].UserName + `

    ` + emailId + `

  • `; if (sharelist[i].IsOwner) { let ownerhtml = `
  • ` + character + `

    ` + sharelist[i].UserName + `

    ` + sharelist[i].UserEmail + `

    Owner
  • `; $("#ul_shared_people_list").prepend(ownerhtml); } else { $("#ul_shared_people_list").append(sharelisthtml); } $("#user_select2").val(); if (sharelist[i].PermissionLevel == 1) { $("#permissionlevel_1_" + sharelist[i].ShareUserId).append(``); $("#btn_permissionlevel_" + sharelist[i].ShareUserId).text("Viewer"); } if (sharelist[i].PermissionLevel == 2) { $("#permissionlevel_2_" + sharelist[i].ShareUserId).append(``); $("#btn_permissionlevel_" + sharelist[i].ShareUserId).text("Editor"); } } $("#sharedusers").text(sharedusers); debugger; if (type == 'file') { Unibase.Apps.Collaboration.FileManager.Instance().getFile(pkid).then((response) => { var filename = response.result.FileTitle; var fileicon = response.result.FileIcon; var filehtml = `` + filename + ``; $("#div_share_filename").append(filehtml); }); } }); }); } } loadUsers() { debugger; var userinfo = Unibase.Platform.Membership.Infos.Identity.getCurrentUser(); var url = _appsettings.server_url() + '/apis/v4/bizgaze/crm/contacts/getallemployeesauto/'; $("#user_select2").select2({ placeholder: "Add people and groups", tags: true, ajax: { url: function (request) { var reqUrl = url; var term = request.term; if (term == undefined || term == "") reqUrl = reqUrl + "term/" + term + "/authtoken/" + userinfo.sessionId; else reqUrl = reqUrl + "term/" + term + "/authtoken/" + userinfo.sessionId; return reqUrl; }, dataType: 'json', delay: 250, data: function (params) { var query = { term: params.term, type: 'GET' }; return query; }, beforeSend: function (xhr) { if (userinfo !== undefined && userinfo !== null) { xhr.setRequestHeader("Authorization", "Basic " + userinfo.sessionId); xhr.setRequestHeader('geoposition', userinfo.latd + ':' + userinfo.lgId); } }, processResults: function (data, params) { debugger; return { results: jQuery.map(JSON.parse(data.result), function (item) { return { id: item.Value, text: item.SelectText }; }) }; } }, templateResult: function (item) { return item.text; }, templateSelection: function (item) { return item.text; }, }); } saveShareUsers(pkid, shareid, installedappid, filetype) { debugger; var fileid = 0; var folderid = 0; if (filetype == 'file') { fileid = pkid; } if (filetype == 'folder') { folderid = pkid; } let userlist = []; let shareuserslist = []; var users = $("#user_select2").val(); var notify = $("#notify_check").is(":checked"); var message = $("#share_message").val().toString(); let permission = Number($("#headereditorbtn").attr('data-permissionlevel')); console.log($(this)); let v = $(this); if (users.toString().indexOf(',') > -1) { userlist = users.toString().split(','); } else { var shareuser = { shareuserid: 0, shareid: shareid, userid: 0, emailaddress: $("#user_select2").text(), permissionlevel: permission, installedappid: installedappid }; shareuserslist[0] = shareuser; } if (userlist != null) { for (let i = 0; i < userlist.length; i++) { var userid = 0; var emailaddress = ""; if (users[i].indexOf('@') > -1) { emailaddress = userlist[i]; } else { userid = userlist[i]; } var shareuser = { shareuserid: 0, shareid: shareid, userid: Number(userid), emailaddress: emailaddress, permissionlevel: permission, installedappid: installedappid }; shareuserslist[i] = shareuser; } } var share = { shareid: shareid, fileid: Number(fileid), filetypeid: 0, permission: permission, folderid: folderid, installedappid: installedappid, message: message, isnotify: notify, shareusers: shareuserslist }; Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFile("apps/collaboration/managers/filemanager.js", function () { Unibase.Apps.Collaboration.FileManager.Instance().share(share).then((response) => { debugger; if (response.result != null) { MessageHelper.Instance().showSuccess("File Shared Successfully", "Unibase_ValidationSummary"); } }); }); } camelize(str) { return str.replace(/\W+(.)/g, function (match, chr) { return chr.toUpperCase(); }); } changeUserPermissionbutton(shareuserid, permission) { debugger; var instance = this; let permissionValue = parseInt($("#btn_permissionlevel_" + shareuserid).attr('data-permissionlevel')); let existingBtnVal = Unibase.Apps.Collaboration.Enums.Share[permissionValue]; let selectedVal = Unibase.Apps.Collaboration.Enums.Share[permission]; let sharedUsersLength = parseInt($('#ul_shared_people_list').attr('data-sharedUsersLength')); let sharedUsersChangedLength = $('#ul_shared_people_list li').length; if (existingBtnVal != selectedVal || sharedUsersLength != sharedUsersChangedLength - 1) { $('#permissionsSavePending').removeClass('d-none'); $("#btn_permissionlevel_" + shareuserid).addClass('permissionLevelChanged'); let changedUserPermissionsLength = instance.changedUserPermissions.length; let shareuseridCount = 0; if (changedUserPermissionsLength > 0) { for (let i = 0; i < changedUserPermissionsLength; i++) { if (instance.changedUserPermissions[i].shareuserid == shareuserid) { shareuseridCount++; } } } if (!shareuseridCount) { instance.changedUserPermissions.push({ shareuserid, permission }); console.log(instance.changedUserPermissions); shareuseridCount = 0; } } else { $("#btn_permissionlevel_" + shareuserid).removeClass('permissionLevelChanged'); if ($('#ul_shared_people_list').find('.permissionLevelChanged').length <= 0) { $('#permissionsSavePending').addClass('d-none'); } let changedUserPermissionsLength = instance.changedUserPermissions.length; if (changedUserPermissionsLength > 0) { instance.changedUserPermissions = instance.changedUserPermissions.filter(function (obj) { return !(obj.shareuserid == shareuserid && obj.permission != permission); }); } } if (permission == 1) { $("#permissionlevel_2_" + shareuserid).find(".dropdown-icon").removeClass("las la-check"); $("#permissionlevel_1_" + shareuserid).append(``); $("#btn_permissionlevel_" + shareuserid).text("Viewer"); $('#headereditorbtn').attr('data-permissionLevel', `${Unibase.Apps.Collaboration.Enums.Share.Viewer}`); } if (permission == 2) { $("#permissionlevel_1_" + shareuserid).find(".dropdown-icon").removeClass("las la-check"); $("#permissionlevel_2_" + shareuserid).append(``); $("#btn_permissionlevel_" + shareuserid).text("Editor"); $('#headereditorbtn').attr('data-permissionLevel', `${Unibase.Apps.Collaboration.Enums.Share.Editor}`); } } removeshareuser(shareuserid, pkid, type) { Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFile("apps/collaboration/managers/filemanager.js", function () { Unibase.Apps.Collaboration.FileManager.Instance().removeshareuser(shareuserid).then((response) => { Unibase.Apps.Collaboration.Components.UniCloud.Instance().getShareusers(pkid, type); }); }); } getUrl(pkid, type) { debugger; var Url = ""; Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFile("apps/collaboration/managers/filemanager.js", function () { Unibase.Apps.Collaboration.FileManager.Instance().getFileUrl(pkid, type).then(function (response) { Url = _appsettings.server_url() + response.result; $("#txt_link").val(Url); }); }); return Url; } loadFileUrl(fileid) { var fileurl = ""; Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFile("apps/collaboration/managers/filemanager.js", function () { Unibase.Apps.Collaboration.FileManager.Instance().getFile(fileid).then((response) => { fileurl = response.result.FileUrl; $(".labelSection_FileUrl").text(fileurl); }); }); return fileurl; } notificationFilePreview(fileid) { var filetype = ""; Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFile("apps/collaboration/managers/filemanager.js", function () { Unibase.Apps.Collaboration.FileManager.Instance().getFile(fileid).then((response) => { filetype = response.result.FileType; if (filetype != null) { Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFile("apps/collaboration/components/documents.js", function () { Unibase.Apps.Collaboration.Components.Documents.Instance().previewDocument(fileid, filetype, 0); }); } }); }); } notificationFolderPreview(folderid, installedappid) { Unibase.Platform.Helpers.NavigationHelper.Instance().loadDetail(folderid, installedappid, null); } static Instance() { if (this.instance === undefined) { this.instance = new UniCloud(); } return this.instance; } } Components.UniCloud = UniCloud; })(Components = Collaboration.Components || (Collaboration.Components = {})); })(Collaboration = Apps.Collaboration || (Apps.Collaboration = {})); })(Apps = Unibase.Apps || (Unibase.Apps = {})); })(Unibase || (Unibase = {}));