3 window._w.retailview = {
11 onViewTemplateReady : function( template, event, eventData )
13 _w.retailview.ti = _t[template];
14 _w.retailview.itemData = null;
15 _w.retailview.itemId = App.Util.getUrlParam('id');
16 _w.retailview.newItem = (0 == _w.retailview.itemId || null == _w.retailview.itemId)
19 App.DataStore.loadSelectListData('retailers', true, 'Retail', 'Retail.SelectList');
20 _w.retailview.setRetailViewFormMeta();
21 _w.retailview.ti.hydrate(_w.retailview.formMeta);
23 // Retrieve initial view data.
24 if (_w.retailview.newItem)
26 _w.retailview.itemData = {};
28 'createRetail', 'Company', 'CompanyRetail.Create',
29 null, {}, function(){}, _w.taskContractError
36 'updateRetail:' + _w.retailview.itemId, 'Company', 'CompanyRetail.Update', null,
37 {'id':_w.retailview.itemId}, _w.retailview._onRetailViewDataReceived, _w.taskContractError
43 onViewPublished : function( template, event, eventData )
45 $('#btnArchive').click(_w.retailview._routeToArchived);
46 $('#btnActivate').click(_w.retailview._routeToActive);
47 if (_w.retailview.newItem)
49 _w.retailview._setupValidation();
52 if (!_w.retailview.newItem && null != _w.retailview.itemData)
54 _w.retailview._onDataAndTemplate();
58 _routeToActive : function()
60 if (!$('#frmRetailView').valid())
64 var data = _w.retailview._prepRetailUpdateData();
65 data.CompanyRetail.archived = false;
67 'updateRetail:' + _w.retailview.itemId, data, {},
68 _w.retailview._onRetailUpdated, _w.taskExecError
72 _routeToArchived : function()
74 if (!$('#frmRetailView').valid())
78 var data = _w.retailview._prepRetailUpdateData();
79 data.CompanyRetail.archived = true;
81 'updateRetail:' + _w.retailview.itemId, data, {},
82 _w.retailview._onRetailUpdated, _w.taskExecError
86 setRetailViewFormMeta : function( data )
92 _w.retailview.formMeta = {
97 dataStoreId : 'retailers',
98 value : data.retail ? data.retail.id : '',
99 disabled : _w.retailview.newItem ? false : true
105 value : data.username ? data.username : '',
112 value : data.password ? data.password : '',
118 _onDataAndTemplate : function() {
119 if (!_w.retailview.newItem)
121 if (_w.retailview.itemData.archived)
123 $('#btnActivate').show();
127 $('#btnArchive').show();
130 _w.retailview._setupValidation();
133 _onRetailViewDataReceived : function( response )
135 _w.retailview.itemId = response.Data.id;
136 _w.retailview.itemData = response.Data;
137 _w.retailview.setRetailViewFormMeta(response.Data);
138 _w.retailview.ti.hydrate(_w.retailview.formMeta);
139 if (_w.retailview.ti.published)
141 _w.retailview._onDataAndTemplate();
145 _setupValidation : function ()
147 $('#frmRetailView').validate({
150 username: {required: true, maxlength: 150},
151 password: {required: true, maxlength: 64}
153 invalidHandler: function(event, validator) {
154 var errors = validator.numberOfInvalids();
155 if (0 < _w.valuationview.validations && errors) {
156 var message = errors == 1
157 ? 'You missed 1 field. It has been highlighted'
158 : 'You missed ' + errors + ' fields. They have been highlighted';
161 _w.valuationview.validations++;
163 submitHandler: function( form ) {
164 $('#btnUpdate').prop('disabled', true);
165 var data = _w.retailview._prepRetailUpdateData();
166 if (_w.retailview.newItem)
169 'createRetail', data, {},
170 _w.retailview._onRetailUpdated, _w.taskExecError
176 'updateRetail:' + _w.retailview.itemId, data, {},
177 _w.retailview._onRetailUpdated, _w.taskExecError
182 $('#btnUpdate').prop('disabled', false);
185 _prepRetailUpdateData : function()
187 var data = {CompanyRetail:_w.retailview.ti.harvest()};
191 _onRetailUpdated : function( response )
193 window.location.hash = '/settings';