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 = `
`;
$(`#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 = `
-
Only people added can open with this link
`;
$("#_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 = {}));