12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361 |
- 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 = `<div class="card mb-0 w-400p movable-card" id="moveFoldersCard_${containerid}" style="${cardCss}"><div class="bg-secondary-light-5 card-header pa-5"><div class="move-title-wrap flex-between-center c-gap-10"><div class="d-flex align-items-center c-gap-10 flex-grow-1"><a href="javascript:;" class="btn btn-flush-biz-theme btn-icon btn-rounded d-30 flush-soft-hover back-btn"><span class="btn-icon-wrap"><i class="icon dripicons-arrow-thin-left"></i></span></a><div class="card-title mb-0">My Drive</div></div><div class="d-flex align-items-center c-gap-10"><a class="btn btn-flush-biz-theme btn-icon btn-rounded d-30 flush-soft-hover text-danger close-btn" href="javascript:;"><span class="btn-icon-wrap"><i class="dripicons-cross icon text-danger"></i></span></a></div></div><div class="create-folder-wrap flex-between-center c-gap-10 d-none"><div class="input-group"><input type="text" class="form-control create-folder-input" placeholder="Enter title"><div class="input-group-append"><a href="javascript:;" class="btn btn-primary create-folder px-10" id="createFolder_${containerid}"><i class="las la-check font-18"></i></a></div></div><a class="btn btn-flush-biz-theme btn-icon btn-rounded d-30 flush-soft-hover text-danger flex-shrink-0 close-create-folder px-10" href="javascript:;"><span class="btn-icon-wrap"><i class="dripicons-cross icon text-danger"></i></span></a></div><div class="folder-search-wrap flex-between-center c-gap-10 d-none"><input type="text" class="form-control folder-search h-30p" placeholder="Search Here"><a class="btn btn-flush-biz-theme btn-icon btn-rounded d-30 flush-soft-hover text-danger flex-shrink-0 close-search-folder px-10" href="javascript:;"><span class="btn-icon-wrap"><i class="dripicons-cross icon text-danger"></i></span></a></div></div><div class="card-body h-200p biz-custom-scrollbar pa-5" id="moveCardBody_${containerid}"></div><div class="card-footer flex-between-center pa-5 c-gap-10"><span class="btn-icon-wrap"><i class="las la-folder-plus font-20"></i></span></a><a class="btn btn-sm btn-primary move-confirm-btn" id="moveConfirmBtn_${containerid}">Move</a></div></div>`;
- $(`#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(`<ul class="list-group folders-list" id="foldersList_${folderid}" data-folderid="${folderid}">Loading...</ul>`);
- 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 `<li class="list-group-item folder-item flex-between-center c-gap-10 pa-5 pl-10 border-0" data-id="${FolderId}" data-name="${FolderName}"><a href="javascript:;" class="foldername d-flex align-items-center c-gap-10 flex-grow-1 text-dark folder-link" id="folderLink_${FolderId}" onclick="Unibase.Apps.Collaboration.Components.UniCloud.Instance().activeFolderItem(${FolderId});"><i class="icon dripicons-folder"></i><span class="folder-title">${FolderName}</span></a><a href="javascript:;" class="btn btn-icon btn-flush-biz-theme btn-rounded flush-soft-hover d-30 go-to-folder-btn" onclick="Unibase.Apps.Collaboration.Components.UniCloud.Instance().bindFoldersList('${containerId}',${FolderId});"><span class="btn-icon-wrap"><i class="icon dripicons-chevron-right"></i></span></a></li>`;
- }
- 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 = `<div class="provider-dropdown dropdown-menu show" id="providersDpMenu_${containerid}" style="${cardCss}">
- <span>Loading...</span>
- </div>`;
- $(`#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 `<a href="javascript:;" class="dropdown-item" id="providerItem_${FileProviderId}" onclick="Unibase.Apps.Collaboration.Components.UniCloud.Instance().uploadFilesByProviders(${FileProviderId},${documentfileid},${installedappid})">${ProviderName}
- </a>`;
- }).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 = `<div class="settings-modal-container">
- <div class="modal fade" id="rename_` + Id + `" data-backdrop="static" data-keyboard="false" tabindex="-1" role="dialog" aria-hidden="true">
- <div class="modal-dialog modal-dialog-centered" role="document">
- <div class="modal-content rounded-10">
- <div class="modal-header" style="border-style: dashed;">
- <h5 class="modal-title ">Rename</h5>
- <button type="button" class="close" data-dismiss="modal" aria-label="Close"> <span aria-hidden="true" class="badge badge-soft-danger font-20 rounded-circle pb-2 px-2">×</span> </button>
- </div>
- <div class="modal-body">
- <form>
- <div class="form-group">
- <div id="error_mesg"><span id="renamemodal_errormessage"></span></div>
- <input type="text" class="form-control" id="listscreenrename_` + Id + `"></div>
- </div>
- <div class="text-center">
- <button class="btn btn-secondary px-4 py-1 black-white font-weight-500 pull-left ml-25 md-10" data-dismiss="modal" type="button">Close</button>
- <button type="submit" id="btn_filerename_` + Id + `" class="btn btn-primary px-4 py-1 text-white font-weight-500 pull-right mr-25 mb-10"onclick="Unibase.Apps.Collaboration.Components.UniCloud.Instance().rename(` + Id + `,'` + type + `',` + installedappid + `)">Rename</button>
- </div>
- </form>
- </div>
- </div>
- </div>
- </div>
- </div>`;
- $("#_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 = `<div class="settings-modal-container">
- <div class="modal fade" id="div_getlink" data-backdrop="static" data-keyboard="false" tabindex="-1" role="dialog" aria-hidden="true">
- <div class="modal-dialog modal-dialog-centered" role="document">
- <div class="modal-content rounded-10">
- <div class="modal-header" style="border-style: dashed;">
- <h5 class="modal-title ">Get Link</h5>
- <button type="button" class="close" data-dismiss="modal" aria-label="Close"> <span aria-hidden="true" class="badge badge-soft-danger font-20 rounded-circle pb-2 px-2">×</span> </button>
- </div>
- <div class="modal-body">
- <form>
- <div class="form-group">
- <input type="text" class="form-control" readonly id="filegetlink" value="` + fileUrl + `"> </div>
-
- </div>
- <div class="text-center">
- <button class="btn btn-secondary px-4 py-1 black-white font-weight-500 pull-left ml-25 md-10" type="button" onclick="Unibase.Apps.Collaboration.Components.UniCloud.Instance().copyUrl()">Copy</button>
- <button type="submit" id="btn_done" class="btn btn-primary px-4 py-1 text-white font-weight-500 pull-right mr-25 mb-10" >Done</button>
- </div>
- </form>
- </div>
- </div>
- </div>
- </div>
- </div>`;
- $("#_bizgaze_modal").append(ModalHtml);
- $('#div_getlink').modal();
- $("#btn_done").click(function () {
- $("#div_getlink").modal("hide");
- });
- });
- });
- }
- copyUrl() {
- var element = $("#filegetlink");
- var $temp = $("<input>");
- $("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 = `<div class="biz-share-modal modal fade" id="bizShareModal" tabindex="-1" role="dialog" aria-labelledby="bizShareModal" aria-hidden="true">
- <div class="modal-dialog modal-dialog-centered" id="bizShareModalDialog" role="document">
- <div class="modal-content bg-transparent shadow-none" id="ShareModalOverlay">
- <div class="accordion biz-share-accordion">
- <div class="card" id="shareWithPeopleCard">
- <div class="card-header activestate">
- <a role="button" href="javascript:;" data-expanded="true" class="collapse-btn pa-0" id="collapseShareBtn">
- <div class="d-flex justify-content-between align-items-center">
- <div class="header-icon-wrapper">
- <button class="btn btn-icon btn-sm activestate" id="sharePeopleHeaderBtn">
- <span class="btn-icon-wrap"><i class="las la-user-plus font-18"></i><i class="las la-arrow-left font-18 d-none"></i></span>
- </button>
- <span class="header-title">Share with people and groups</span>
-
- </div>
- <div class="cursor-pointer">
- <i class="fa fa-cog font-25 " id="shareSettings" style="display: none;"></i>
- </div>
- </div>
- <div class="shared-users text-truncate font-weight-500 w-80" id="sharedusers"></div>
- </a>
- </div>
- <div id="collapese_share" class="collapse show">
- <div class="card-body pa-0">
- <div class="add-people-wrapper pt-0">
- <div class="d-flex align-items-center">
-
- <div id="div_users" class="people-select2-wrapper">
- <input type="hidden" id="hdnselect2" value="0" placeholder="Add people and groups">
-
- <select id="user_select2" class="value-control select2 type-control select2_users form-control text-control" multiple="multiple" style="width:100%;" data-regularexp="" data-validatemsg="" data-textformpropertyid=""><option>Select</option></select>
- </div>
- <div class="h-50p hidden ml-10" id="headereditorbtn" data-permissionLevel="` + Unibase.Apps.Collaboration.Enums.Share.Editor + `">
- <div class="user-role-wrapper h-100 p-0" >
- <div class="btn-group dropdown bg-light h-100 rounded">
- <button type="button" class="btn btn-sm dropdown-toggle py-2 permissionsBtn" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" onclick="Unibase.Apps.Collaboration.Components.UniCloud.Instance().showHidePermissionDropdown(event)">
- Editor
- </button>
- <div class="dropdown-menu permissionsMenu">
- <a class="dropdown-item" value="` + Unibase.Apps.Collaboration.Enums.Share.Viewer + `" href="#" class="tenantviewerPermission" onclick="Unibase.Apps.Collaboration.Components.UniCloud.Instance().changeFilePermissionOption('` + Unibase.Apps.Collaboration.Enums.Share.Viewer + `',0,event)"><span>Viewer</span></a>
- <a class="dropdown-item" value="` + Unibase.Apps.Collaboration.Enums.Share.Commentor + ` href="#" class="tenantcommentorPermission" onclick="Unibase.Apps.Collaboration.Components.UniCloud.Instance().changeFilePermissionOption('` + Unibase.Apps.Collaboration.Enums.Share.Commentor + `',0,event)"><span>Commentor</span></a>
- <a class="dropdown-item" value="` + Unibase.Apps.Collaboration.Enums.Share.Editor + ` href="#" class="tenanteditorPermission" onclick="Unibase.Apps.Collaboration.Components.UniCloud.Instance().changeFilePermissionOption('` + Unibase.Apps.Collaboration.Enums.Share.Editor + `',0,event)"><i class="dropdown-icon las la-check"></i><span>Editor</span></a>
- </div>
-
- </div>
- </div>
- </div>
- </div>
-
- <select class="form-control custom-select ml-10 d-none" id="share_permissionlevel"><option value="` + Unibase.Apps.Collaboration.Enums.Share.Viewer + `">Viewer</option><option value="` + Unibase.Apps.Collaboration.Enums.Share.Editor + `" >Editor</option></select>
- </div>
- <div class="people-notification-area hidden" id="peopleNotificationArea"><div class="custom-share-checkbox" id="notifyCheckbox">
- <input type="checkbox" class="custom-control-input" id="notify_check" checked>
- <label class="notify-label" for="notify_check"><span>Notify people</span></label>
- </div>
- <textarea class="message-textarea" placeholder="Message" id="share_message"></textarea><div id="sharedFileDiv" class="hidden"><button id="div_share_filename" class="shared-file-btn"></button>
- </div></div>
- <div class="external-dropdown">
-
- <ul class="shared-people-list dropdown-menu-scrollbar" id="ul_shared_people_list" >
- </ul>
- </div>
- </div>
-
- <div class="card-footer">
- <a href="#" class="feedback-link">Send Feedback to Bizgaze</a>
- <div class="d-flex align-items-center">
- <span class="mr-3 d-none" id="permissionsSavePending"><i>Pending changes</i></span>
- <button class="btn btn-primary done-btn" id="doneBtn" onclick="Unibase.Apps.Collaboration.Components.UniCloud.Instance().saveShareUsers(` + pkid + `,` + shareid + `,` + 100010260000139 + `,'` + curfileType + `')">Done</button>
- </div>
- <div class="share-actions-btn-group hidden" id="shareActionsBtnGroup"><button class="btn btn-outline-danger cancel-btn mr-10" id="sharedActionsCancelBtn">Cancel</button><button class="btn btn-primary save-btn " id="sharedActionsSaveBtn" onclick="Unibase.Apps.Collaboration.Components.UniCloud.Instance().saveShareUsers(` + pkid + `,` + shareid + `,` + installAppID + `,'` + curfileType + `')">Send</button></div>
- </div>
- </div>
- </div>
- <div class="card mt-15" id="get-link-card">
- <div class="get-link-card-loader hidden">
- <div class="get-link-card-loaderBar"></div>
- </div>
- <div class="card-header pb-20" >
- <a role="button" href="javascript:;" data-expanded="false" class="collapse-btn pb-0" id="collapseGetLinkBtn">
- <div class="header-icon-wrapper">
- <button class="btn btn-icon btn-sm bg-secondary text-white">
- <span class="btn-icon-wrap"><i class="fa fa-link font-18 get_link_icon"></i></span>
- </button>
- <span class="header-title">Get link</span>
- </div>
- <div class="d-flex" >
- <div class="shared-users font-weight-500 w-90 d-flex flex-column" ><span id="collapsePermissionDesc">Restricted Only people added can open with this link</span> <span class="text-blue">Change</span></div>
- <input type="text" class="add-search-box bg-light p-0 rounded border-0 " id="hidden_txt_link" readOnly style='opacity:0;width:1px;'/>
- <button onclick="Unibase.Apps.Collaboration.Components.UniCloud.Instance().copyLinkText('#hidden_txt_link')" class="copy-link-btn w-15 ml-2 h-100 p-2 btn btn-white font-14 font-weight-500 text-blue" id="collapsecopybtn">Copy link</button>
-
- </div>
- </a>
- </div>
- <div id="collapse_getlink" class="collapse collapse-getlink">
- <div class="card-body pa-0">
- <div class="search-wrapper d-flex">
- <input type="text" class="add-search-box w-85 bg-light p-0 rounded border-0 px-2 text-truncate" id="txt_link" readOnly/>
- <button onclick="Unibase.Apps.Collaboration.Components.UniCloud.Instance().copyLinkText('#txt_link')" class="copy-link-btn w-15 ml-2 p-0 btn btn-white font-14 font-weight-500 text-blue" >Copy link</button>
- </div>
- <ul id="ul_link" class="pr-0 pl-15">
- <li class="col-sm-12 row border-0 pr-4 pl-0 m-0 align-items-center people-list-item" id="li_link_restrictions">
- <div class="user-role-wrapper col-sm-10 p-0">
- <div class="btn btn-icon btn-icon-circle ml-2 rounded-circle bg-light"><span class="btn-icon-wrap" id="filePermssionIcon"><i class="fa fa-users" ></i></span></div>
- <div class="btn-group dropdown flex-column align-items-start">
-
- <button type="button" class="btn btn-sm dropdown-toggle permissionsBtn pl-1" id="FilePermissionbutton" onclick="Unibase.Apps.Collaboration.Components.UniCloud.Instance().showHidePermissionDropdown(event)" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
- Restricted
- </button>
- <span class="font-14 pl-1 text-dark" id="FilePermissionDescription">Only people added can open with this link</span>
-
- <div class="dropdown-menu permissionsMenu">
- <a class="dropdown-item" id="permissionRestricted" value=1 href="#" onclick="Unibase.Apps.Collaboration.Components.UniCloud.Instance().changeFilePermissionOption('0','` + Unibase.Apps.Collaboration.Enums.Share.Ristrict + `')"><i class="dropdown-icon las la-check"></i><span>Restricted</span></a>
- <a class="dropdown-item" id="permissionOrganization" value=2 href="#" onclick="Unibase.Apps.Collaboration.Components.UniCloud.Instance().changeFilePermissionOption('0','` + Unibase.Apps.Collaboration.Enums.Share.TenantId + `')"><span> ` + identity.name + `</span></a>
- <a class="dropdown-item" id="permissionAnyoneWithLink" value=3 href="#" onclick="Unibase.Apps.Collaboration.Components.UniCloud.Instance().changeFilePermissionOption('0','` + Unibase.Apps.Collaboration.Enums.Share.AnyoneWithLink + `')"><span>Anyone with Link</span></a>
- </div>
- </div>
-
- </div>
- <div class="user-role-wrapper col-sm-2 pull-right d-none" id="getLinkUserPermissions">
- <div class="btn-group dropdown">
- <button type="button" class="btn btn-sm dropdown-toggle permissionsBtn" onclick="Unibase.Apps.Collaboration.Components.UniCloud.Instance().showHidePermissionDropdown(event)" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
- Viewer
- </button>
- <div class="dropdown-menu permissionsMenu">
- <a class="dropdown-item" href="#" class="tenantviewerPermission" href="#" onclick="Unibase.Apps.Collaboration.Components.UniCloud.Instance().changeFilePermissionOption('` + Unibase.Apps.Collaboration.Enums.Share.Viewer + `','0',event)"><i class="dropdown-icon las la-check"></i><span>Viewer</span></a>
- <a class="dropdown-item" href="#" class="tenanteditorPermission" href="#" onclick="Unibase.Apps.Collaboration.Components.UniCloud.Instance().changeFilePermissionOption('` + Unibase.Apps.Collaboration.Enums.Share.Editor + `','0',event)"><span>Editor</span></a>
- </div>
- </div>
- </div>
- </li>
- </li>
- </ul>
- </div>
- <div class="card-footer">
- <a href="#" class="feedback-link">Send Feedback to Bizgaze</a>
- <button class="btn btn-primary done-btn" id="getLinkDoneBtn">Done</button>
- </div>
- </div>
- </div>
- <div class="card d-none" id="shareSettingsCard">
- <div class="card-header">
- <a role="button" href="javascript:;" data-expanded="true" class="collapse-btn pa-0" id="collapseShareBtn">
- <div class="d-flex justify-content-between align-items-center">
- <div class="header-icon-wrapper">
- <button class="btn btn-icon" id="sharePeopleSettingsBtn">
- <span class="btn-icon-wrap cursor-pointer"></i><i class="las la-arrow-left font-25"></i></span>
- </button>
- <span class="header-title">Share with people settings</span>
- </div>
- </div>
- </a>
- </div>
- <div class="share-people-settings mx-30 mb-30 p-0" id="sharePeopleSettings">
- <div class="custom-share-checkbox p-0" id="shareSettingsContainer1">
- <input type="checkbox" class="sharePeopleSettingCheckbox" id="sharePeopleSetting1" name="sharePeopleSetting1"
- value="Editors can change permissions and share" checked>
- <label for="sharePeopleSetting1" class="mb-3"> Editors can change permissions and share</label>
- </div>
- <div class="custom-share-checkbox p-0" id="shareSettingsContainer2">
- <input type="checkbox" class="sharePeopleSettingCheckbox" id="sharePeopleSetting2" name="sharePeopleSetting2"
- value="Viewers and commenters can see the option to download, print, and copy" checked>
- <label for="sharePeopleSetting2"> Viewers and commenters can see the option to download, print, and copy</label>
- </div>
- </div>
- </div>
- </div>
- </div>
- </div>
- </div>
- <!-- Discard Modal -->
- <div class="modal fade" id="discardModal" tabindex="-1" role="dialog" aria-labelledby="discardModal" aria-hidden="true">
- <div class="modal-dialog modal-dialog-centered modal-sm" role="document">
- <div class="modal-content ">l
- <div class="modal-header border-0">
- <h6 class="modal-title" id="exampleModalLongTitle">Discard unsaved changes?</h6>
- </div>
- <div class="modal-footer border-0">
- <button type="button" class="btn btn-secondary" data-dismiss="modal">Cancel</button>
- <button type="button" class="btn btn-primary" id="DiscardModalBtn">Discard</button>
- </div>
- </div>
- </div>
- </div>`;
- $("#_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(`<i class="dropdown-icon las la-check"></i>`);
- $("#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('<i class="fa fa-users"></i>');
- }
- else if (restricted == Unibase.Apps.Collaboration.Enums.Share.TenantId) {
- $("#permissionRestricted,#permissionAnyoneWithLink").find(".dropdown-icon").removeClass("las la-check");
- $("#permissionOrganization").append(`<i class="dropdown-icon las la-check"></i>`);
- $("#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('<i class="fa fa-building"></i>');
- }
- else if (restricted == Unibase.Apps.Collaboration.Enums.Share.AnyoneWithLink) {
- $("#permissionRestricted,#permissionOrganization").find(".dropdown-icon").removeClass("las la-check");
- $("#permissionAnyoneWithLink").append(`<i class="dropdown-icon las la-check"></i>`);
- $("#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('<i class="fa fa-globe font-28"></i>');
- }
- 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(`<i class="dropdown-icon las la-check"></i>`);
- $(evt.currentTarget).parents('.permissionsMenu').siblings('.permissionsBtn').text("Viewer");
- }
- else {
- $("#getLinkUserPermissions .permissionsMenu.show").find(".dropdown-icon").removeClass("las la-check");
- $("#getLinkUserPermissions .tenanteditorPermission").append(`<i class="dropdown-icon las la-check"></i>`);
- $("#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(`<i class="dropdown-icon las la-check"></i>`);
- $(evt.currentTarget).parents('.permissionsMenu').siblings('.permissionsBtn').text("Editor");
- }
- else {
- $("#getLinkUserPermissions .permissionsMenu.show").find(".dropdown-icon").removeClass("las la-check");
- $("#getLinkUserPermissions #tenanteditorPermission").append(`<i class="dropdown-icon las la-check"></i>`);
- $("#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(`<i class="dropdown-icon las la-check"></i>`);
- $(evt.currentTarget).parents('.permissionsMenu').siblings('.permissionsBtn').text("Commentor");
- }
- else {
- $("#getLinkUserPermissions .permissionsMenu.show").find(".dropdown-icon").removeClass("las la-check");
- $("#tenantcommentorPermission").append(`<i class="dropdown-icon las la-check"></i>`);
- $("#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(`<li class="hidden" id="li_hdn_shareuserlist"></li>`);
- 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 = `<li class="people-list-item" id="people-list-item_` + sharelist[i].ShareUserId + `">
- <div class="user-detail-wrapper d-flex align-items-center">
- <div class="avatar avatar-sm mr-10">
- <span class="avatar-text avatar-text-inv-danger rounded-circle">
- <span class="initial-wrap"><span>` + character + `</span></span>
- </span>
- </div>
- <div class="user-name-email-wrapper">
- <input type="hidden" id="hdn_shareuserid" value="` + sharelist[i].ShareUserId + `">
- <input type="hidden" id="hdn_userid" value="` + sharelist[i].UserId + `">
- <p class="user-name" id="user-name_` + sharelist[i].ShareUserId + `">
- ` + sharelist[i].UserName + `
- </p>
- <p class="user-email">
- ` + emailId + `
- </p>
- </div>
- </div>
- <div class="user-role-wrapper">
- <div class="btn-group dropdown">
- <button type="button" class="btn btn-sm dropdown-toggle permissionsBtn" id="btn_permissionlevel_` + sharelist[i].ShareUserId + `" onclick="Unibase.Apps.Collaboration.Components.UniCloud.Instance().showHidePermissionDropdown(event)" data-toggle="dropdown" data-value='2' data-permissionLevel=${sharelist[i].PermissionLevel} aria-haspopup="true" aria-expanded="false">
- ` + Unibase.Apps.Collaboration.Enums.Share[sharelist[i].PermissionLevel] + `
- </button>
- <div class="dropdown-menu permissionMenu">
- <a class="dropdown-item" href="#" value=1 onclick="Unibase.Apps.Collaboration.Components.UniCloud.Instance().changeUserPermissionbutton(` + sharelist[i].ShareUserId + `,` + 1 + `)"><span id="permissionlevel_1_` + sharelist[i].ShareUserId + `">Viewer</span></a>
-
- <a class="dropdown-item" href="#" value=2 onclick="Unibase.Apps.Collaboration.Components.UniCloud.Instance().changeUserPermissionbutton(` + sharelist[i].ShareUserId + `,` + 2 + `)"><span id="permissionlevel_2_` + sharelist[i].ShareUserId + `">Editor</span></a>
- <div class="dropdown-divider"></div>
-
- <a class="dropdown-item" href="#" id="remove_user" onclick="Unibase.Apps.Collaboration.Components.UniCloud.Instance().removeshareuser(` + sharelist[i].ShareUserId + `,` + pkid + `,'` + type + `')" >Remove</a>
- </div>
- </div>
- </div>
- </li>`;
- if (sharelist[i].IsOwner) {
- let ownerhtml = `<li class="people-list-item">
- <div class="user-detail-wrapper">
- <div class="avatar avatar-sm mr-10">
- <span class="avatar-text avatar-text-inv-danger rounded-circle">
- <span class="initial-wrap"><span>` + character + `</span></span>
- </span>
- </div>
- <div class="user-name-email-wrapper">
- <p class="user-name">
- ` + sharelist[i].UserName + `
- </p>
- <p class="user-email">
- ` + sharelist[i].UserEmail + `
- </p>
- </div>
- </div>
-
- <div class="user-owner"><span class="text-secondary font-italic font-weight-500">Owner</span></div>
- </li>`;
- $("#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(`<i class="dropdown-icon las la-check"></i>`);
- $("#btn_permissionlevel_" + sharelist[i].ShareUserId).text("Viewer");
- }
- if (sharelist[i].PermissionLevel == 2) {
- $("#permissionlevel_2_" + sharelist[i].ShareUserId).append(`<i class="dropdown-icon las la-check"></i>`);
- $("#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 = `<img src="` + fileicon + `" class="file-icon"><small id="div_share_filename" class="font-14 font-weight-600 file-text">` + filename + `</small>`;
- $("#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(`<i class="dropdown-icon las la-check"></i>`);
- $("#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(`<i class="dropdown-icon las la-check"></i>`);
- $("#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 = {}));
|