PageSourceSearch

https://erus.ru/Areas/DIC/Content/js/rules.events.js

js erus.ru collected 2026-10-07 19:34:22 UTC 5,304 bytes, 126 lines download raw bytes

1(function($) {
2	$.ETC = $.ETC || {};
3	$.ETC.DIC = $.ETC.DIC || {};
4
5	$.ETC.DIC.Rules = {
6	    init: function (frm, data) {
7	        frm.onInit = true;
8	        $.ETC.EventContainer.init(
9                frm.container
10                    .data('init', data)
11                    .on('MainFieldChanged', function (e, par) {
12                        _fieldChanged(par, frm, "#Model_");
13                    })
14                    .on('MainAddOperationChanged', function (e, par) {
15                        _addOperationChanged(par, frm, "#Model_");
16                    })
17                    .on('FieldChanged', function (e, par) {
18                        _fieldChanged(par, frm, "#Model_Cond_");
19                    })
20                    .on('AddOperationChanged', function (e, par) {
21                        _addOperationChanged(par, frm, "#Model_Cond_");
22                    })
23            );
24
25	        $("#Model_IsCheckCondition", frm.container).change(function () {
26	            if (!frm.onInit) {
27	                _isCheckConditionChanged($(this).prop("checked"), frm);
28	            }
29	        }).trigger('change');
30
31	        frm.onInit = false;
32	    }
33	};
34
35	function _fieldChanged(par, frm, name) {
36	    var setPar = par || null;
37	    var compareField        = $(name+"CompareField", frm.container);
38	    if (setPar != null) {
39	        compareField.DmLookup2({ enable: true });
40	        compareField.DmLookup2({ setUrlParam: { n: "type", v: setPar.Type } });
41	        if (setPar.Type == 1 || setPar.Type == 2) {
42	            // Дата
43	            _prepForDate(frm, name);
44	        } else {
45	            // Числа
46	            _prepForInt(frm, name);
47	        }
48	    } else {
49	        compareField.DmLookup2({ clear: null });
50	        compareField.DmLookup2({ enable: false });
51	        compareField.DmLookup2({ setUrlParam: { n: "type", v: null } });
52	        _prepForInt(frm, name);
53	    }
54	}
55
56	function _addOperationChanged(par, frm, name) {
57	    var setPar = par || null;
58	    var addValue = $(name + "AddValue", frm.container);
59	    if (setPar == "" || setPar == null) {
60	        addValue.prop('disabled', true);
61	    } else {
62	        addValue.prop('disabled', false);
63	    }
64	}
65
66	function _isCheckConditionChanged(par, frm) {
67	    var setPar = par || null;
68        if (setPar == null || setPar == false) {
69            // Скрываем
70            $("#Model_Cond_c", frm.container).hide();
71            $("#Model_Cond_Field_c", frm.container).hide();
72            $("#Model_Cond_Field_t", frm.container).hide();
73            $("#Model_Cond_CompareOperation_c", frm.container).hide();
74            $("#Model_Cond_CompareOperation_t", frm.container).hide();
75            $("#Model_Cond_CompareField_c", frm.container).hide();
76            $("#Model_Cond_CompareField_t", frm.container).hide();
77            $("#Model_Cond_AddOperation_c", frm.container).hide();
78            $("#Model_Cond_AddOperation_t", frm.container).hide();
79            $("#Model_Cond_AddValue_c", frm.container).hide();
80            $("#Model_Cond_AddValue_t", frm.container).hide();
81            $("#Model_Cond_IsWorkDays_c", frm.container).hide();
82            $("#Model_Cond_IsWorkDays_t", frm.container).hide();
83            $("#Model_Cond_NoTimePart_c", frm.container).hide();
84            $("#Model_Cond_NoTimePart_t", frm.container).hide();
85        } else {
86            // Показываем
87            $("#Model_Cond_c", frm.container).show();
88            $("#Model_Cond_Field_c", frm.container).show();
89            $("#Model_Cond_Field_t", frm.container).show();
90            $("#Model_Cond_CompareOperation_c", frm.container).show();
91            $("#Model_Cond_CompareOperation_t", frm.container).show();
92            $("#Model_Cond_CompareField_c", frm.container).show();
93            $("#Model_Cond_CompareField_t", frm.container).show();
94            $("#Model_Cond_AddOperation_c", frm.container).show();
95            $("#Model_Cond_AddOperation_t", frm.container).show();
96            $("#Model_Cond_AddValue_c", frm.container).show();
97            $("#Model_Cond_AddValue_t", frm.container).show();
98            $("#Model_Cond_IsWorkDays_c", frm.container).show();
99            $("#Model_Cond_IsWorkDays_t", frm.container).show();
100            $("#Model_Cond_NoTimePart_c", frm.container).show();
101            $("#Model_Cond_NoTimePart_t", frm.container).show();
102        }
103	}
104
105	function _prepForDate(frm, name) {
106	    // Дата
107	    $(name + "IsWorkDays_t", frm.container).show();
108	    $(name + "IsWorkDays_c", frm.container).show();
109	    $(name + "NoTimePart_t", frm.container).show();
110	    $(name + "NoTimePart_c", frm.container).show();
111	    $(name + 'AddOperation option[value="3"]').attr('disabled', 'disabled');
112	}
113
114	function _prepForInt(frm, name) {
115	    $(name + "IsWorkDays", frm.container).prop("checked", false);
116	    $(name + "IsWorkDays_t", frm.container).hide();
117	    $(name + "IsWorkDays_c", frm.container).hide();
118	    $(name + "NoTimePart", frm.container).prop("checked", false);
119	    $(name + "NoTimePart_t", frm.container).hide();
120	    $(name + "NoTimePart_c", frm.container).hide();
121	    $(name + 'AddOperation option[value="3"]').removeAttr('disabled');
122	}
123
124
125
126})(jQuery);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.