PageSourceSearch

https://www.scalabad.no/scripts/web/viewmodels/product/skiattributeassembly.js

js scalabad.no collected 2026-10-08 01:16:07 UTC 8,955 bytes, 273 lines download raw bytes

1mcWeb.SkiAttributeAssembly = new function () {
2
3	var self = this;
4	var $ = jQuery;
5	self.id = 'skiattrassembly';
6
7	self.VM = null;
8	self.service = new WebApiService("SkiAttrAssembly");
9
10	self.vm = function () {
11		var view = this;
12
13		view.height = ko.observable('');
14		view.height.subscribe(function () {
15            if (view.height() !== null && view.height().length > 3)
16				view.height(view.height().substr(0, 3));
17		});
18		
19		view.age = ko.observable('');
20		view.age.subscribe(function () {
21            if (view.age() !== null && view.age().length > 2)
22				view.age(view.age().substr(0, 2));
23		});
24
25		view.weight = ko.observable('');
26		view.weight.subscribe(function () {
27            if (view.weight() !== null && view.weight().length > 3)
28				view.weight(view.weight().substr(0, 3));
29		});
30
31		view.selectedDropdown1 = ko.observable('');
32		view.selectedDropdown2 = ko.observable('');
33		view.selectedDropdown3 = ko.observable('');
34		view.selectedDropdown4 = ko.observable('');
35		view.selectedDropdown5 = ko.observable('');
36
37		view.dropdownList1 = ko.observableArray();
38		view.dropdownList2 = ko.observableArray();
39		view.dropdownList3 = ko.observableArray();
40		view.dropdownList4 = ko.observableArray();
41		view.dropdownList5 = ko.observableArray();
42
43		view.textHeader = ko.observable('');
44		view.textSubTitle = ko.observable('');
45		view.textFooter = ko.observable('');
46		view.textConfirm = ko.observable('');
47		view.textCancel = ko.observable('');
48
49		view.textAge = ko.observable('');
50		view.textHeight = ko.observable('');
51		view.textWeight = ko.observable('');
52
53        view.stockId = ko.observable('');
54	    view.produktDesc1 = ko.observable('');
55		
56		//tab
57		view.focusAge = ko.observable(false);
58		view.focusHeight = ko.observable(false);
59		view.focusWeight = ko.observable(false);
60		view.focusDropdown1 = ko.observable(false);
61		view.focusDropdown2 = ko.observable(false);
62		view.focusDropdown3 = ko.observable(false);
63		view.focusDropdown4 = ko.observable(false);
64		view.focusDropdown5 = ko.observable(false);
65		view.focusConfirm = ko.observable(false);
66		
67		view.dataObject = null;
68
69		view.isDropDownSeleced = function (selectedD, dList, focusD) {
70			var selected = selectedD();
71			var list = dList();
72			var focus = focusD();
73
74			if (list === null || list.length < 1) {
75				return '';
76			}
77			
78			return (selected == list[0].Name && focus == true);
79		}
80		//view.isDropDownSelected = ko.computed(function (selected, dropdown, focus) {
81		//	if (selected == null || dropdown == null || focus == null)
82		//		return false;
83
84		//	return (selected == dropdown[0].Name && focus == true);
85		//});
86
87
88        view.isValid = function() {
89
90            //if (self.VM.age() == null || self.VM.age().length < 1) {
91            //	self.VM.focusAge(true);
92            //	return false;
93            //}
94            if (self.VM.height() === null || self.VM.height().length < 1) {
95                self.VM.focusHeight(true);
96                return false;
97            }
98            if (self.VM.weight() === null || self.VM.weight().length < 1) {
99                self.VM.focusWeight(true);
100                return false;
101            }
102            //if (self.VM.selectedDropdown1() == self.VM.dropdownList1()[0].Name) {
103            //	self.VM.focusDropdown1(true);
104            //	return false;
105            //}
106            //if (self.VM.selectedDropdown2() == self.VM.dropdownList2()[0].Name) {
107            //	self.VM.focusDropdown2(true);
108            //	return false;
109            //}
110            //if (self.VM.selectedDropdown3() == self.VM.dropdownList3()[0].Name) {
111            //	self.VM.focusDropdown3(true);
112            //	return false;
113            //}
114            //if (self.VM.selectedDropdown4() == self.VM.dropdownList4()[0].Name) {
115            //	self.VM.focusDropdown4(true);
116            //	return false;
117            //}
118            //if (self.VM.selectedDropdown5() == self.VM.dropdownList5()[0].Name) {
119            //	self.VM.focusDropdown5(true);
120            //	return false;
121            //}
122            return true;
123        };
124		
125		view.onClickConfirm = function () {
126			
127			if (self.VM.dataObject == null) {
128				alert('Error - Feilet ved lagring av data');
129				PubSub.publish(mcWeb.lightbox.events.onHideLightbox);
130			}
131
132			if (!self.VM.isValid())
133				return;
134
135            var isCheckoutPage = ($("#checkout").length > 0) ? true : false;
136
137			var data = {
138				height: (self.VM.height() == null) ? '-' : self.VM.height(),
139				age: (self.VM.age() == null) ? '-' : self.VM.age(),
140				weight: (self.VM.weight() == null) ? '-' : self.VM.weight(),
141				selectedDropdown1: (self.VM.selectedDropdown1() == null || self.VM.selectedDropdown1() == self.VM.dropdownList1()[0].Name) ? '-' : self.VM.selectedDropdown1(),
142				selectedDropdown2: (self.VM.selectedDropdown2() == null || self.VM.selectedDropdown2() == self.VM.dropdownList2()[0].Name) ? '-' : self.VM.selectedDropdown2(),
143				selectedDropdown3: (self.VM.selectedDropdown3() == null || self.VM.selectedDropdown3() == self.VM.dropdownList3()[0].Name) ? '-' : self.VM.selectedDropdown3(),
144				selectedDropdown4: (self.VM.selectedDropdown4() == null || self.VM.selectedDropdown4() == self.VM.dropdownList4()[0].Name) ? '-' : self.VM.selectedDropdown4(),
145                selectedDropdown5: (self.VM.selectedDropdown5() == null || self.VM.selectedDropdown5() == self.VM.dropdownList5()[0].Name) ? '-' : self.VM.selectedDropdown5(),
146                isCheckoutPage: isCheckoutPage
147			};
148		
149			self.service.GetAction("SaveSkiAssembly", data).then(function (result) {
150				try {
151					if (result != null) {
152						PubSub.publish(mcWeb.lightbox.events.onHideLightbox);
153					} else {
154						alert('Endringen ble dessverre ikke lagret, prøv igjen.');
155					}
156
157				} catch (e) {
158					alert('Error : SkiAssembly.js - Error: ' + e);
159				}
160			});
161        };
162
163		view.onClickCancel = function() {
164			PubSub.publish(mcWeb.lightbox.events.onHideLightbox);
165        };
166		view.onSelectDropDown1 = function (val) {
167			view.dropdown1(val);
168        };
169		view.onSelectDropDown2 = function (val) {
170			view.dropdown2(val);
171        };
172		view.onSelectDropDown3 = function (val) {
173			view.dropdown3(val);
174        };
175		view.onSelectDropDown4 = function (val) {
176			view.dropdown4(val);
177        };
178        view.onSelectDropDown5 = function(val) {
179            view.dropdown5(val);
180        };
181
182	}; //END VM
183
184	self.GetSkiAttributeAssembly = function () {
185
186		self.service.GetAction("GetSkiAssembly", { plid: null }).then(function (result) {
187			try {
188				if (result !== null) {
189					self.loadData(result);
190				}
191			} catch (e) {
192				alert('Error : SkiAssembly.js - Error - GetSkiAssembly: ' + e);
193			}
194		});
195
196	};
197
198	self.load = function () {
199			
200		$("#lightbox-placeholder").load("/WebPages/Produkt/SkiAttributeAssemblyPopup.aspx", function () {
201		
202			if ($('#' + self.id).length < 1) {
203				return; //Module not active
204			}
205
206			var el = document.getElementById(self.id);
207
208			if (self.VM != null) {
209				ko.cleanNode(el);
210			}
211
212			self.VM = new self.vm();			
213			ko.applyBindings(self.VM, el);
214			
215			self.GetSkiAttributeAssembly();
216
217			PubSub.publish(mcWeb.lightbox.events.onShowLightbox, { backdrop: 'static', keyboard: false, show: true });
218			if (!!mcWeb.inlineEditor)
219				mcWeb.inlineEditor.init(true);
220			PubSub.publish(mcWeb.cartsmall.events.onUpdateCart, "");
221				
222		}); //End Load view
223	};//End Load
224
225	self.loadData = function (data, settings) {
226		self.VM.dataObject = data;
227		if (data == null) {			
228			return;
229		}
230
231		self.VM.height((data.Height == null) ? '' : data.Height);
232		self.VM.age((data.Age == null) ? '' : data.Age);
233		self.VM.weight((data.Weight == null) ? '' : data.Weight);
234
235		self.VM.dropdownList1(data.DropdownList1);
236		self.VM.dropdownList2(data.DropdownList2);
237		self.VM.dropdownList3(data.DropdownList3);
238		self.VM.dropdownList4(data.DropdownList4);
239		self.VM.dropdownList5(data.DropdownList5);
240
241		self.VM.selectedDropdown1(data.SelectedDropdown1);
242		self.VM.selectedDropdown2(data.SelectedDropdown2);
243		self.VM.selectedDropdown3(data.SelectedDropdown3);
244		self.VM.selectedDropdown4(data.SelectedDropdown4);
245		self.VM.selectedDropdown5(data.SelectedDropdown5);
246
247		self.VM.textHeader(data.TextHeader);
248		self.VM.textSubTitle(data.TextSubTitle);
249		self.VM.textFooter(data.TextFooter);
250		self.VM.textConfirm(data.TextConfirm);
251		self.VM.textCancel(data.TextCancel);
252
253		self.VM.textHeight(data.TextHeight);
254		self.VM.textAge(data.TextAge);
255		self.VM.textWeight(data.TextWeight);
256
257        self.VM.stockId(data.StockId);
258	    self.VM.produktDesc1(data.ProduktDesc1);
259
260		setTimeout(function() {
261			self.VM.focusHeight(true);
262			$('#height').focus();
263		}, 1000);
264
265		if (!!mcWeb.inlineEditor)
266			mcWeb.inlineEditor.init(true);
267		
268		//Settings
269		if (settings) {}
270	};
271
272
273};

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.