Untitled

 avatar
unknown
javascript
5 months ago
6.3 kB
2
Indexable
function FusionDisplayConditionsRender(){let __comp_name__ ='_fusion_display_conditions';

	inheritComponents(this, [Refreshable], 'FusionDisplayConditionsRender');

	this.render = function (){

		var rule = this.rule || Rule.fromContext(this.item_id);

		if (this.compact){
			return "<div class='rule-display-conditions' "+(this.show('id'))+">" +Render.render('block', {_class: "main-conditions" }, '' +Render.render(Render.helper.getPublicCompName(this,__comp_name__)+':r359add49efa69afa', {passing_parent:this, _class: "root-condition" , data:rule?.config, render_directive: 'r359add49efa69afa', __original_rd: 'group',  ___private_render: '1'}, ''))+ "</div>";
		}

		return "<div class='rule-display-conditions' "+(this.show('id'))+">" +Render.render('sep', {value: 8}, '')+ "" +Render.render('title', {_class: "rule-name ap-f18 thick" }, ""+(rule.name)+"")+ "" +Render.render('sep', {value: 8}, '')+ "" +Render.render('line', {}, '')+ "" +Render.render('block', {_class: "main-conditions __autohide" }, '' +Render.render(Render.helper.getPublicCompName(this,__comp_name__)+':r359add49efa69afa', {passing_parent:this, _class: "root-condition" , data:rule?.config, render_directive: 'r359add49efa69afa', __original_rd: 'group',  ___private_render: '1'}, ''))+ "" +Render.render('line', {}, '')+ "" +Render.render('block', {_class: "actions" }, '' +Render.render('button', {url: ":rule/"+(rule.id)+"/edit" , title: "Edit this rule" , borderless:1, __sattrs: ["borderless"]}, ''))+ "</div>";
	};


	this.done = function (obj, params){
		var main_conds = $(this).find('.main-conditions');

		if (!params.compact){
			Layout.scrollable(main_conds);
		}
	};


	this.group = this.renderGroup = this.r359add49efa69afa = function(){

		var data = this.data;

		if (!data){
			return "<div class='empty'></div>";
		}

		var conditions = data.conditions || [];
		var conjunction = data.conjunction || "and";
		var show_conjunctions = '';
		var show_conditions = '';

		for (var i = 0; i < conditions.length; i++){
			show_conjunctions += '<div></div>';
			show_conditions += Render.render(Render.helper.getPublicCompName(this,__comp_name__)+':re816c7956322054c', {passing_parent:this, condition:conditions[i], render_directive: 're816c7956322054c', __original_rd: 'single',  ___private_render: '1'}, '');
		}


		return "<div class='group-conditions "+(this.getClass())+" total-"+(conditions.length)+"' "+(this.show('id'))+"> <div class='gr-conditions'> "+(show_conditions)+" </div> <div class='gr-conjunction'> "+(conjunction)+" </div> </div>";
	};


	this.groupDone = this.r359add49efa69afaDone = function(){
		setTimeout(()=>{
			var gr_conditions = $(this).find('.gr-conditions').eq(0);
			var children = gr_conditions.children();
			var gr_height = 0;
			var gap = 20;

			for (var i = 0; i < children.length; i++){

				if (i == 0){
					$(this).css('--first-child-h', children.eq(i).outerHeight() + 'px');
				}

				if (i == 0 || i == children.length - 1){
					gr_height += children.eq(i).outerHeight()/2;

					if (children.length > 1){
						children.eq(i).addClass('-rounded');
					}
				} else {
					gr_height += children.eq(i).outerHeight();
				}

			}

			gr_height += (children.length - 1) * gap;

			$(this).css('--gr-height', gr_height + 'px');
			$(this).addClass('show-conjunction');
		}, 300);
	};


	this.single = this.renderSingle = this.re816c7956322054c = function(){

		var condition = this.condition;

		if (condition?.metatype == GROUP_RULE_COND){
			return '' +Render.render(Render.helper.getPublicCompName(this,__comp_name__)+':r359add49efa69afa', {passing_parent:this, data:condition.value, render_directive: 'r359add49efa69afa', __original_rd: 'group',  ___private_render: '1'}, '');
		}

		if (condition?.metatype == SINGLE_RULE_COND){
			var field = ARR.findObjWithStringID(LeadField.release("lead"), condition.field_id) || LeadField.release("lead")[0];
			var operators = RuleCondition.getOptions('operator', field.type);
			var operator = ARR.findObjWithStringID(operators, condition.operator) || operators[0];
			var dp_value = this.p4ac4d9901e9ec028(field, operator, condition.value);

			return '' +Render.render('slot', {context:this, _class: "single-condition" }, "<b>Lead:</b> <span class='text-3 thick'>"+(field?.name.toLowerCase())+"</span> <span class='text-6'>"+(operator.name)+"</span> <span class='text-4 thick inline'>"+(dp_value)+"</span>");
		}

		return '';
	};


	this.displayValue=this.p4ac4d9901e9ec028 = function(field, operator, value){

		if(ARR.contain(["is_empty", "not_empty"], operator.id)){
			return "";
		}

		if (field.type == 'datetime' && ARR.contain(["in_range", "not_in_range"], operator.id)){
			var val = {};
			try {
				val = JSON.parse(value);
			} catch (error) {

			}
			return '' +Render.render('text_daterange', {_from:val?.start, to:val?.end}, '');
		}

		if (field.type == 'input-app-user' && !ARR.contain(["in_team", "not_in_team"], operator.id)){
			return '' +Render.render('ns_appuser_user', {_class: "inline" , user_id:value, compact:1, xs:1, fit:1, __sattrs: ["compact","xs","fit"]}, '');
		} else if (field.type == 'input-app-user'){
			return '' +Render.render('ns_team_members', {team:AppTeam.fromContext(value), compact:1, __sattrs: ["compact"]}, '');
		}

		if (field.type == 'input-state'){
			return '' +Render.render('input_lead_state', {value:value, disable:1, long:1, __sattrs: ["disable","long"]}, '');
		}

		if (field.type == 'input-labels'){
			return '' +Render.render('ns_label_list', {labels:value, hide_action:1, __sattrs: ["hide_action"]}, '');
		}

		if (field.type == 'input-stage'){
			var stage = Stage.fromContext(value);
			return '' +Render.render('tag', {color:stage?.color || "I200"}, ""+(stage?.name)+"");
		}

		if (field.type == 'input-country'){
			return '' +Render.render('ns_lead_country', {country:value, long:1, __sattrs: ["long"]}, '');
		}

		if (field.type == 'input-campaign'){
			var campaign = Campaign.fromContext(value);
			return '' +Render.render('tag', {url: "campaign/"+(campaign.id)+"" , icon:campaign.config?.icon || "icon_announce", color:campaign.config?.color || "main"}, ""+(campaign?.name)+"");
		}

		if (field?.options?.length){
			return ARR.single(field.options, f => f.id == value)?.name || value;
		}

		return value || "";
	};
};
Editor is loading...
Leave a Comment