晋太元中,武陵人捕鱼为业。缘溪行,忘路之远近。忽逢桃花林,夹岸数百步,中无杂树,芳草鲜美,落英缤纷。渔人甚异之,复前行,欲穷其林。   林尽水源,便得一山,山有小口,仿佛若有光。便舍船,从口入。初极狭,才通人。复行数十步,豁然开朗。土地平旷,屋舍俨然,有良田、美池、桑竹之属。阡陌交通,鸡犬相闻。其中往来种作,男女衣着,悉如外人。黄发垂髫,并怡然自乐。   见渔人,乃大惊,问所从来。具答之。便要还家,设酒杀鸡作食。村中闻有此人,咸来问讯。自云先世避秦时乱,率妻子邑人来此绝境,不复出焉,遂与外人间隔。问今是何世,乃不知有汉,无论魏晋。此人一一为具言所闻,皆叹惋。余人各复延至其家,皆出酒食。停数日,辞去。此中人语云:“不足为外人道也。”(间隔 一作:隔绝)   既出,得其船,便扶向路,处处志之。及郡下,诣太守,说如此。太守即遣人随其往,寻向所志,遂迷,不复得路。   南阳刘子骥,高尚士也,闻之,欣然规往。未果,寻病终。后遂无问津者。 .
Prv8 Shell
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/Settings/MailConverter/resources/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /home/akaindir/www/crm/layouts/v7/modules/Settings/MailConverter/resources/MailConverter.js
/*+***********************************************************************************
 * 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.
 *************************************************************************************/

jQuery.Class('Settings_MailConverter_Index_Js', {
	mailConverterInstance: false,
	triggerRuleEdit: function (url) {
		app.request.get({url:url}).then(function (err, data) {
			var callBackFunction = function (data) {
				var mcInstance = Settings_MailConverter_Index_Js.mailConverterInstance;
				app.helper.showVerticalScroll(jQuery('.addMailBoxStep'), {setHeight:'450px'});
				mcInstance.saveRuleEvent();
				mcInstance.setAssignedTo();
				jQuery('#actions').trigger('change');
			}
			app.helper.showModal(data, {cb:callBackFunction});
		});
	},

	triggerDeleteRule: function (currentElement, url) {
		var deleteElement = jQuery(currentElement);
		app.helper.showConfirmationBox({'message': app.vtranslate('LBL_DELETE_CONFIRMATION')}).then(function () {
			app.request.post({url:url}).then(function (err, data) {
				if (data) {
					var closestBlock = deleteElement.closest('[data-blockid]');
					var nextBlocks = closestBlock.nextAll('[data-blockid]');

					if (nextBlocks.length > 0) {
						jQuery.each(nextBlocks, function (i, element) {
							var currentSequenceElement = jQuery(element).find('.sequenceNumber');
							var updatedNumber = parseInt(currentSequenceElement.text()) - 1;
							currentSequenceElement.text(updatedNumber);
						});
					}

					closestBlock.remove();
					app.helper.showSuccessNotification({'message':data});
				}
			});
		});
	}
}, {
	registerSortableEvent: function () {
		var thisInstance = this;
		var sequenceList = {};
		var container = jQuery('#rulesList');
		container.sortable({
			revert	: true,
			handle	: '.ruleHead',
			start	: function (event, ui) {
						ui.placeholder.height(ui.helper.height());
					},
			update	: function (e, ui) {
						jQuery('[data-blockid]', container).each(function (i) {
							sequenceList[++i] = jQuery(this).data('id');
						});

						var params = {
							sequencesList	: JSON.stringify(sequenceList),
							module			: app.getModuleName(),
							parent			: app.getParentModuleName(),
							action			: 'UpdateSequence',
							scannerId		: jQuery('#scannerId').val()
						}

						app.request.post({data:params}).then(function (err, data) {
							if (typeof data != 'undefined') {
								jQuery('[data-blockid]', container).each(function (i) {
									jQuery(this).find('.sequenceNumber').text(++i);
								});

								app.helper.hideModal();
								app.helper.showSuccessNotification({'message':data});
							}
						});
					}
		});
	},

	saveRuleEvent: function () {
		var thisInstance = this;
		var form = jQuery('#ruleSave');
		var params = {
			submitHandler: function (form) {
				var form = jQuery(form);
				form.find('[name="saveButton"]').attr('disabled', 'disabled');
				app.helper.showProgress();
				var params = form.serializeFormData();
				app.request.post({data:params}).then(function (err, data) {
					app.helper.hideProgress();
					app.helper.hideModal();
					if (typeof data != 'undefined') {
						var params = {
							module: app.getModuleName(),
							parent: app.getParentModuleName(),
							scannerId: jQuery('[name="scannerId"]', form).val(),
							record: data.id,
							view: 'RuleAjax'
						}
						thisInstance.getRule(params);
						app.helper.showSuccessNotification({'message':data.message});
					}
				});
			}
		}
		form.vtValidate(params);

		form.submit(function (e) {
			e.preventDefault();
		});
	},

	getRule: function (params) {
		app.helper.showProgress();
		var ruleId = params.record;
		app.request.get({data:params}).then(function (err, data) {
			app.helper.hideProgress();
			var currentBlock = jQuery('[data-blockid="block_'+ruleId+'"]')
			if (currentBlock.length > 0) {
				var previousValue = currentBlock.prevAll('[data-blockid]').first().find('.sequenceNumber').text();
				if (previousValue == '') {
					previousValue = 0;
				}
				currentBlock.html(data);
				currentBlock.find('.sequenceNumber').text(parseInt(previousValue)+1)
			} else {
				var lastBlockValue = jQuery('[data-blockid]').size();
				jQuery('#rulesList').append('<div class="row-fluid padding-bottom1per" data-blockid="block_'+ruleId+'">'+data+'</div>');
				jQuery('[data-blockid="block_'+ruleId+'"]').find('.sequenceNumber').text(parseInt(lastBlockValue)+1);
			}
		});
	},

	setAssignedTo: function () {
		jQuery('#actions').on('change', function () {
			var selectedAction = jQuery('#actions').val();
			if (!(selectedAction == 'CREATE_HelpDesk_FROM'
					|| selectedAction == 'CREATE_Leads_SUBJECT'
					|| selectedAction == 'CREATE_Contacts_SUBJECT'
					|| selectedAction == 'CREATE_Accounts_SUBJECT')) {
				jQuery('#assignedTo').val('');
				jQuery('#assignedToBlock').hide();
			} else {
				jQuery('#assignedToBlock').show();
			}
		});
	},

	openMailBox: function () {
		jQuery('.mailBoxDropdown').change(function () {
			var id = jQuery('.mailBoxDropdown option:selected').val();
			var path = 'index.php?parent='+app.getParentModuleName()+'&module='+app.getModuleName()+'&view=List&record='+id;
			window.location.assign(path);
		});
	},

	disableFolderSelection: function () {
		var checked = jQuery('input[type=checkbox][name=folders]:checked').length >= 2;
		jQuery('input[type=checkbox][name=folders]').not(':checked').attr('disabled', checked);

		jQuery('input[type=checkbox][name=folders]').click(function () {
			var checked = jQuery('input[type=checkbox][name=folders]:checked').length >= 2;
			jQuery('input[type=checkbox][name=folders]').not(':checked').attr('disabled', checked);
		});
	},

	registerEvents: function () {
		this.registerSortableEvent();
		this.openMailBox();
		this.setAssignedTo();
		this.disableFolderSelection();
		jQuery('#actions').trigger('change');
	}
});

//On Page Load
jQuery(document).ready(function () {
	var mcInstance = Settings_MailConverter_Index_Js.mailConverterInstance = new Settings_MailConverter_Index_Js();
	mcInstance.registerEvents();
});

haha - 2025