晋太元中,武陵人捕鱼为业。缘溪行,忘路之远近。忽逢桃花林,夹岸数百步,中无杂树,芳草鲜美,落英缤纷。渔人甚异之,复前行,欲穷其林。 林尽水源,便得一山,山有小口,仿佛若有光。便舍船,从口入。初极狭,才通人。复行数十步,豁然开朗。土地平旷,屋舍俨然,有良田、美池、桑竹之属。阡陌交通,鸡犬相闻。其中往来种作,男女衣着,悉如外人。黄发垂髫,并怡然自乐。 见渔人,乃大惊,问所从来。具答之。便要还家,设酒杀鸡作食。村中闻有此人,咸来问讯。自云先世避秦时乱,率妻子邑人来此绝境,不复出焉,遂与外人间隔。问今是何世,乃不知有汉,无论魏晋。此人一一为具言所闻,皆叹惋。余人各复延至其家,皆出酒食。停数日,辞去。此中人语云:“不足为外人道也。”(间隔 一作:隔绝) 既出,得其船,便扶向路,处处志之。及郡下,诣太守,说如此。太守即遣人随其往,寻向所志,遂迷,不复得路。 南阳刘子骥,高尚士也,闻之,欣然规往。未果,寻病终。后遂无问津者。
|
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/public_html/crm/layouts/vlayout/modules/Accounts/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_Detail_Js("Accounts_Detail_Js",{
//It stores the Account Hierarchy response data
accountHierarchyResponseCache : {},
/*
* function to trigger Account Hierarchy action
* @param: Account Hierarchy Url.
*/
triggerAccountHierarchy : function(accountHierarchyUrl) {
Accounts_Detail_Js.getAccountHierarchyResponseData(accountHierarchyUrl).then(
function(data) {
Accounts_Detail_Js.displayAccountHierarchyResponseData(data);
}
);
},
/*
* function to get the AccountHierarchy response data
*/
getAccountHierarchyResponseData : function(params) {
var aDeferred = jQuery.Deferred();
//Check in the cache
if(!(jQuery.isEmptyObject(Accounts_Detail_Js.accountHierarchyResponseCache))) {
aDeferred.resolve(Accounts_Detail_Js.accountHierarchyResponseCache);
} else {
AppConnector.request(params).then(
function(data) {
//store it in the cache, so that we dont do multiple request
Accounts_Detail_Js.accountHierarchyResponseCache = data;
aDeferred.resolve(Accounts_Detail_Js.accountHierarchyResponseCache);
}
);
}
return aDeferred.promise();
},
/*
* function to display the AccountHierarchy response data
*/
displayAccountHierarchyResponseData : function(data) {
var callbackFunction = function(data) {
app.showScrollBar(jQuery('#hierarchyScroll'), {
height: '300px',
railVisible: true,
size: '6px'
});
}
app.showModalWindow(data, function(data){
if(typeof callbackFunction == 'function' && jQuery('#hierarchyScroll').height() > 300){
callbackFunction(data);
}
});
}
},{
//Cache which will store account name and whether it is duplicate or not
accountDuplicationCheckCache : {},
getDeleteMessageKey : function() {
return 'LBL_RELATED_RECORD_DELETE_CONFIRMATION';
},
isAccountNameDuplicate : function(params) {
var thisInstance = this;
var accountName = params.accountName;
var aDeferred = jQuery.Deferred();
var analyzeResponse = function(response){
if(response['success'] == true) {
aDeferred.reject(response['message']);
}else{
aDeferred.resolve();
}
}
if(accountName in thisInstance.accountDuplicationCheckCache) {
analyzeResponse(thisInstance.accountDuplicationCheckCache[accountName]);
}else{
Vtiger_Helper_Js.checkDuplicateName(params).then(
function(response){
thisInstance.accountDuplicationCheckCache[accountName] = response;
analyzeResponse(response);
},
function(response) {
thisInstance.accountDuplicationCheckCache[accountName] = response;
analyzeResponse(response);
}
);
}
return aDeferred.promise();
},
saveFieldValues : function (fieldDetailList) {
var thisInstance = this;
var targetFn = this._super;
var fieldName = fieldDetailList.field;
if(fieldName != 'accountname') {
return targetFn.call(thisInstance, fieldDetailList);
}
var aDeferred = jQuery.Deferred();
fieldDetailList.accountName = fieldDetailList.value;
fieldDetailList.recordId = this.getRecordId();
this.isAccountNameDuplicate(fieldDetailList).then(
function() {
targetFn.call(thisInstance, fieldDetailList).then(
function(data){
aDeferred.resolve(data);
},function() {
aDeferred.reject();
}
);
},
function(message) {
var form = thisInstance.getForm();
var params = {
title: app.vtranslate('JS_DUPLICATE_RECORD'),
text: app.vtranslate(message),
width: '35%'
};
Vtiger_Helper_Js.showPnotify(params);
form.find('[name="accountname"]').closest('td.fieldValue').trigger('click');
aDeferred.reject();
}
)
return aDeferred.promise();
},
/**
* Function to register event for adding related record for module
*/
registerEventForAddingRelatedRecord : function(){
var thisInstance = this;
var detailContentsHolder = this.getContentHolder();
detailContentsHolder.on('click','[name="addButton"]',function(e){
var element = jQuery(e.currentTarget);
var selectedTabElement = thisInstance.getSelectedTab();
var relatedModuleName = thisInstance.getRelatedModuleName();
var quickCreateNode = jQuery('#quickCreateModules').find('[data-name="'+ relatedModuleName +'"]');
if(quickCreateNode.length <= 0) {
window.location.href = element.data('url');
return;
}
var relatedController = new Vtiger_RelatedList_Js(thisInstance.getRecordId(), app.getModuleName(), selectedTabElement, relatedModuleName);
var postPopupViewController = function() {
var instance = new Contacts_Edit_Js();
var data = new Object;
var container = jQuery("[name='QuickCreate']");
data.source_module = app.getModuleName();
data.record = thisInstance.getRecordId();
data.selectedName = container.find("[name='account_id_display']").val();
instance.referenceSelectionEventHandler(data,container);
}
if(relatedModuleName == 'Contacts')
relatedController.addRelatedRecord(element , postPopupViewController);
else
relatedController.addRelatedRecord(element);
})
}
});