晋太元中,武陵人捕鱼为业。缘溪行,忘路之远近。忽逢桃花林,夹岸数百步,中无杂树,芳草鲜美,落英缤纷。渔人甚异之,复前行,欲穷其林。 林尽水源,便得一山,山有小口,仿佛若有光。便舍船,从口入。初极狭,才通人。复行数十步,豁然开朗。土地平旷,屋舍俨然,有良田、美池、桑竹之属。阡陌交通,鸡犬相闻。其中往来种作,男女衣着,悉如外人。黄发垂髫,并怡然自乐。 见渔人,乃大惊,问所从来。具答之。便要还家,设酒杀鸡作食。村中闻有此人,咸来问讯。自云先世避秦时乱,率妻子邑人来此绝境,不复出焉,遂与外人间隔。问今是何世,乃不知有汉,无论魏晋。此人一一为具言所闻,皆叹惋。余人各复延至其家,皆出酒食。停数日,辞去。此中人语云:“不足为外人道也。”(间隔 一作:隔绝) 既出,得其船,便扶向路,处处志之。及郡下,诣太守,说如此。太守即遣人随其往,寻向所志,遂迷,不复得路。 南阳刘子骥,高尚士也,闻之,欣然规往。未果,寻病终。后遂无问津者。
|
Server : Apache System : Linux srv.rainic.com 4.18.0-553.47.1.el8_10.x86_64 #1 SMP Wed Apr 2 05:45:37 EDT 2025 x86_64 User : rainic ( 1014) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/akaindir/www/crm/layouts/v7/modules/Documents/resources/ |
Upload File : |
/*+**********************************************************************************
* The contents of this file are subject to the vtiger CRM Public License Version 1.0
* ("License"); You may not use this file except in compliance with the License
* The Original Code is: vtiger CRM Open Source
* The Initial Developer of the Original Code is vtiger.
* Portions created by vtiger are Copyright (C) vtiger.
* All Rights Reserved.
************************************************************************************/
Vtiger.Class('Documents_Index_Js', {
fileObj : false,
referenceCreateMode : false,
referenceFieldName : '',
getInstance : function() {
return new Documents_Index_Js();
},
uploadTo : function(service,parentId,relatedModule,referenceFieldName) {
var instance = Documents_Index_Js.getInstance();
instance.detectReferenceCreateMode(referenceFieldName);
instance.uploadTo(service,parentId,relatedModule);
},
createDocument : function(type,parentId,relatedModule,referenceFieldName) {
var instance = Documents_Index_Js.getInstance();
instance.detectReferenceCreateMode(referenceFieldName);
instance.createDocument(type,parentId,relatedModule);
},
}, {
detectReferenceCreateMode : function(referenceFieldName) {
if(typeof referenceFieldName !== 'undefined') {
Documents_Index_Js.referenceCreateMode = true;
Documents_Index_Js.referenceFieldName = referenceFieldName;
} else {
Documents_Index_Js.referenceCreateMode = false;
Documents_Index_Js.referenceFieldName = '';
}
},
getFile : function() {
return Documents_Index_Js.fileObj;
},
setFile : function(file) {
Documents_Index_Js.fileObj = file;
},
isRelatedList : function() {
var relatedModuleNameContainer = jQuery('.relatedContainer').find('.relatedModuleName');
return relatedModuleNameContainer.length && relatedModuleNameContainer.val() === 'Documents';
},
reloadListView : function() {
var activeFolderEle = jQuery("#folders-list").find('li.documentFolder.active');
var params = {};
if(activeFolderEle.length) {
var activeFolderName = activeFolderEle.find('.filterName').data('folderName');
params ={
"folder_id" : 'folderid',
"folder_value" : activeFolderName
};
}
var list = Vtiger_List_Js.getInstance();
list.loadListViewRecords(params);
},
reloadRelatedListView : function() {
var parentId = jQuery('#recordId').val();
var parentModule = app.getModuleName();
var relatedModuleName = jQuery('.relatedModuleName').val();
var selectedRelatedTabElement = jQuery('div.related-tabs').find('li').filter('.active');
var relatedList = Vtiger_RelatedList_Js.getInstance(parentId, parentModule, selectedRelatedTabElement, relatedModuleName);
relatedList.loadRelatedList();
},
isDocumentsSummaryWidgetAvailable : function() {
return jQuery('.widgetContainer_documents').length;
},
reloadSummaryWidget : function() {
var detailInstance = Vtiger_Detail_Js.getInstance();
detailInstance.loadWidget(jQuery('.widgetContainer_documents'));
},
reloadList : function() {
if(app.getModuleName() === 'Documents' && app.view() === 'List') {
this.reloadListView();
} else if(this.isRelatedList()) {
this.reloadRelatedListView();
} else if(this.isDocumentsSummaryWidgetAvailable()) {
this.reloadSummaryWidget();
}
},
_upload : function(form,extraData) {
var aDeferred = jQuery.Deferred();
var formData = new FormData(form[0]);
var file = this.getFile();
if(file) {
if(typeof extraData === 'object') {
jQuery.each(extraData, function(name,value) {
formData.append(name,value);
});
}
//append file
var fileName = form.find('input[type="file"]').attr('name');
formData.append(fileName,file);
var params = {
url: "index.php",
type: "POST",
data: formData,
processData: false,
contentType: false
};
app.helper.showProgress();
app.request.post(params).then(function(e,res) {
app.helper.hideProgress();
if(!e) {
aDeferred.resolve(res);
} else {
aDeferred.reject(e);
}
});
} else {
aDeferred.reject();
}
return aDeferred.promise();
},
uploadFileToVtiger : function(container) {
var self = this;
var file = this.getFile();
if(!file) {
app.helper.showErrorNotification({
'message' : app.vtranslate('JS_PLEASE_SELECT_A_FILE')
});
return;
}
var extraData = {
'filelocationtype' : 'I'
};
if(file) {
extraData['notes_title'] = container.find('form').find('[name="notes_title"]').val();
}
this._upload(container.find('form'),extraData).then(function(data) {
app.helper.showSuccessNotification({
'message' : app.vtranslate('JS_UPLOAD_SUCCESSFUL')
});
app.helper.hideModal();
self.reloadList();
var form = container.find('form');
var folderid = form.find('[name="folderid"]').val();
app.event.trigger('post.documents.save', {'folderid' : folderid});
//reference create handling
if(Documents_Index_Js.referenceCreateMode === true && Documents_Index_Js.referenceFieldName !== '') {
self.postQuickCreateSave(data);
}
}, function(e) {
app.helper.showErrorNotification({'message' : app.vtranslate('JS_UPLOAD_FAILED')});
});
},
postQuickCreateSave: function (data) {
var vtigerInstance = Vtiger_Index_Js.getInstance();
var container = vtigerInstance.getParentElement(jQuery('[name="'+Documents_Index_Js.referenceFieldName+'"]'));
var module = vtigerInstance.getReferencedModuleName(container);
var params = {};
params.name = data._recordLabel;
params.id = data._recordId;
params.module = module;
vtigerInstance.setReferenceFieldValue(container, params);
var tdElement = vtigerInstance.getParentElement(container.find('[value="' + module + '"]'));
var sourceField = tdElement.find('input[class="sourceField"]').attr('name');
var fieldElement = tdElement.find('input[name="' + sourceField + '"]');
vtigerInstance.autoFillElement = fieldElement;
var parentModule = jQuery('.editViewContents [name=module]').val();
if (parentModule != "Events") {
vtigerInstance.postRefrenceSearch(params, container);
}
tdElement.find('input[class="sourceField"]').trigger(Vtiger_Edit_Js.postReferenceQuickCreateSave, {'data': data});
},
showFileDetails : function(container) {
var fileObj = this.getFile();
if(fileObj) {
var fileName = fileObj.name;
var fileSize = fileObj.size;
fileSize = vtUtils.convertFileSizeInToDisplayFormat(fileSize);
container.find('.fileDetails').text(fileName + ' (' + fileSize + ')');
var fileParts = fileName.split('.');
var fileType = fileParts[fileParts.length - 1];
container.find('[name="notes_title"]').val(fileName.replace('.'+fileType, ''));
}
},
registerFileDragDropEvent : function(container) {
var self = this;
var dragDropElement = container.find("#dragandrophandler");
dragDropElement.on('dragenter', function(e) {
e.stopPropagation();
e.preventDefault();
jQuery(this).addClass('dragdrop-solid');
}).on('dragover', function(e) {
e.stopPropagation();
e.preventDefault();
});
jQuery(document).on('dragenter', function(e) {
e.stopPropagation();
e.preventDefault();
}).on('dragover', function(e) {
e.stopPropagation();
e.preventDefault();
dragDropElement.removeClass('dragdrop-solid');
}).on('drop', function(e) {
e.stopPropagation();
e.preventDefault();
});
dragDropElement.on('drop', function(e) {
e.preventDefault();
jQuery(this).removeClass('dragdrop-solid');
jQuery(this).addClass('dragdrop-dotted');
var fileObj = e.originalEvent.dataTransfer.files;
var file = fileObj[0];
if(self.fileSizeCheck(container, file)) {
self.setFile(file);
container.find('input[name="filename"]').val(null);
self.showFileDetails(container);
} else {
app.helper.showAlertNotification({
'message' : app.vtranslate('JS_EXCEEDS_MAX_UPLOAD_SIZE')
});
}
});
},
getMaxUploadLimit : function(container) {
return container.find('input[name="max_upload_limit"]').val() || 0;
},
fileSizeCheck : function(container, file) {
var maxUploadLimitInBytes = this.getMaxUploadLimit(container);
return file.size <= maxUploadLimitInBytes;
},
registerFileChangeEvent : function(container) {
var self = this;
jQuery('input[type="file"]',container).on('change', function(e) {
var file = e.target.files[0];
if(self.fileSizeCheck(container, file)) {
self.setFile(file);
self.showFileDetails(container);
} else {
app.helper.showAlertNotification({
'message' : app.vtranslate('JS_EXCEEDS_MAX_UPLOAD_SIZE')
});
}
});
},
registerFileHandlingEvents : function(container) {
this.registerFileChangeEvent(container);
this.registerFileDragDropEvent(container);
container.find('input[type="file"]').addClass('ignore-validation');
vtUtils.enableTooltips();
},
updateDirectoryMeta : function(folderId,tab,backwardNavigation) {
backwardNavigation = (typeof backwardNavigation == "undefined") ? false : true;
var currentDirElement = jQuery('input[name="currentDir"]',tab);
var parentDirElement = jQuery('input[name="parentDir"]',tab);
var currentDir = currentDirElement.val();
var parentDir = parentDirElement.val();
if(!backwardNavigation) {
parentDirElement.val(currentDir);
currentDirElement.val(folderId);
jQuery('.browseBack',tab).removeAttr('disabled');
jQuery('.gotoRoot',tab).removeAttr('disabled');
} else {
currentDirElement.val(folderId);
parentDirElement.val(parentDir);
}
},
loadTab : function(tab) {
var self = this;
var url = tab.data('url');
app.helper.showProgress();
app.request.get({'url':url}).then(function(e,resp) {
app.helper.hideProgress();
if(!e) {
tab.html(resp);
vtUtils.applyFieldElementsView(tab);
} else {
console.log("error while loading tab : ",e);
}
});
tab.data('tabLoaded',true);
},
registerActiveTabEvent : function(container) {
var self = this;
jQuery('.tab-pane',container).on('Documents.Upload.Tab.Active', function() {
var currentTab = jQuery(this);
if(!currentTab.data('tabLoaded')) {
self.loadTab(currentTab);
}
});
},
registerUploadDocumentEvents : function(container) {
var self = this;
container.find('form').vtValidate({
'submitHandler' : function() {
self.uploadFileToVtiger(container);
return false;
}
});
self.registerQuickCreateEvents(container);
this.registerFileHandlingEvents(container);
},
showUploadToVtigerModal : function(parentId,relatedModule) {
var self = this;
var url = 'index.php?module=Documents&view=QuickCreateAjax&service=Vtiger&operation=UploadToVtiger&type=I';
if(typeof parentId !== 'undefined' && typeof relatedModule !== 'undefined') {
url += '&relationOperation=true&sourceModule='+relatedModule+'&sourceRecord='+parentId;
}
var relationField = jQuery('div.related-tabs').find('li').filter('.active').data('relatedfield');
if (relationField && parentId) {
url += '&'+relationField+"="+parentId;
}
app.helper.showProgress();
app.request.get({'url':url}).then(function(e,resp) {
app.helper.hideProgress();
if(!e) {
app.helper.showModal(resp, {
'cb' : function(modalContainer) {
self.registerUploadDocumentEvents(modalContainer);
self.applyScrollToModal(modalContainer);
self.registerQuickCreateEvents(modalContainer);
}
});
}
});
},
applyScrollToModal : function(modalContainer) {
app.helper.showVerticalScroll(modalContainer.find('.modal-body').css('max-height', '415px'),
{'autoHideScrollbar': true});
},
uploadTo : function(service,parentId,relatedModule) {
this.setFile(false);
this.showUploadToVtigerModal(parentId,relatedModule);
},
registerFileSelectionHandler : function(container) {
jQuery('.file', container).on('click',function() {
if(typeof prevSelection !== 'undefined') {
prevSelection.removeClass('selectedFile');
}
jQuery(this).addClass('selectedFile');
prevSelection = jQuery(this);
});
},
_createDocument : function(form) {
var self = this;
var noteContentElement = form.find('#Documents_editView_fieldName_notecontent_popup');
if(noteContentElement.length) {
var noteContent = CKEDITOR.instances.Documents_editView_fieldName_notecontent_popup.getData()
noteContentElement.val(noteContent);
}
var formData = form.serialize();
app.helper.showProgress();
app.request.post({'data':formData}).then(function(e,res) {
app.helper.hideProgress();
if (e === null) {
jQuery('.vt-notification').remove();
app.helper.hideModal();
app.helper.showSuccessNotification({
'message' : app.vtranslate('JS_DOCUMENT_CREATED')
});
self.reloadList();
var folderid = form.find('[name="folderid"]').val();
app.event.trigger('post.documents.save', {'folderid' : folderid});
//reference create handling
if (Documents_Index_Js.referenceCreateMode === true && Documents_Index_Js.referenceFieldName !== '') {
self.postQuickCreateSave(res);
}
} else {
app.event.trigger('post.save.failed', e);
}
});
},
registerCreateDocumentEvent : function(container) {
var self = this;
jQuery('#js-create-document', container).on('click', function() {
var form = container.find('form');
if(form.valid()) {
self._createDocument(form);
}
});
},
applyEditor : function(element) {
var cke = new Vtiger_CkEditor_Js();
cke.loadCkEditor(element, {'height' : 200});
},
registerCreateDocumentModalEvents : function(container) {
container.find('form').vtValidate();
if(container.find('input[name="type"]').val() === 'W') {
container.find('.modelContainer').css('width','750px');
//change id of text area to workaround multiple instances of ckeditor on same element
this.applyEditor(
container.find('#Documents_editView_fieldName_notecontent')
.attr('id','Documents_editView_fieldName_notecontent_popup')
);
}
this.registerCreateDocumentEvent(container);
},
createDocument : function(type,parentId,relatedModule) {
var self = this;
var url = 'index.php?module=Documents&view=QuickCreateAjax&operation=CreateDocument&type='+type;
if(typeof parentId !== 'undefined' && typeof relatedModule !== 'undefined') {
url += '&relationOperation=true&sourceModule='+relatedModule+'&sourceRecord='+parentId;
}
var relationField = jQuery('div.related-tabs').find('li').filter('.active').data('relatedfield');
if (relationField && parentId) {
url += '&'+relationField+"="+parentId;
}
app.helper.showProgress();
app.request.get({'url':url}).then(function(e,resp) {
app.helper.hideProgress();
if(!e) {
app.helper.showModal(resp, {
'cb' : function(modalContainer) {
self.registerCreateDocumentModalEvents(modalContainer);
self.registerQuickCreateEvents(modalContainer);
self.applyScrollToModal(modalContainer);
}
});
}
});
},
registerQuickCreateEvents : function(container) {
var vtigerInstance = Vtiger_Index_Js.getInstance();
vtigerInstance.registerReferenceCreate(container);
vtigerInstance.registerPostReferenceEvent(container);
vtigerInstance.referenceModulePopupRegisterEvent(container);
vtigerInstance.registerClearReferenceSelectionEvent(container);
vtigerInstance.registerAutoCompleteFields(container);
app.helper.registerModalDismissWithoutSubmit(container.find('form'));
var moduleInstance = Vtiger_Edit_Js.getInstanceByModuleName('Documents');
moduleInstance.registerEventForPicklistDependencySetup(container);
app.event.on('post.documents.save', function(event, data){
var relatedTabs = jQuery('div.related-tabs');
if(relatedTabs.length > 0){
var tabElement = jQuery('div.related-tabs').find('li.active');
var relatedModuleName = jQuery('.relatedModuleName').val();
var relatedInstance = new Vtiger_RelatedList_Js(app.getRecordId(), app.getModuleName(), tabElement, relatedModuleName);
var relatedTab = relatedInstance.selectedRelatedTabElement;
relatedInstance.updateRelatedRecordsCount(relatedTab.data('relation-id'));
}
});
}
});