1/** 2 * Error Code 3 * #COD1 - Address Or Pincode is blank during COD Chekout 4 */ 5// Address List Controller 6app.controller("addressListController", [ 7 "$scope", 8 "$state", 9 "$rootScope", 10 "dataService", 11 function ($scope, $state, $rootScope, dataService) { 12 $scope.mode = ""; 13 $rootScope.$on("paymentModeChanged", function (e, data) { 14 $scope.mode = data.mode; 15 }); 16 17 $scope.pincodeChange = function (event, pincode) { 18 $cod = false; 19 $mode = $scope.mode; 20 console.log("pincode- " + pincode); 21 if (typeof pincode == undefined || pincode == "") { 22 shownErr_( 23 "Sorry Pincode is not available of the selected address, Please edit it on My account section", 24 false, 25 ); 26 } else if (event.target.nodeName == "SPAN" && $mode == "cod") { 27 courierRecord = jQuery.parseJSON(courierDbRecord); 28 accesstoken = courierRecord.delhivery_exp._accesscode; 29 shownErr_(""); 30 $cod = "Y"; 31 // Block for not work 32 // dataService.checkPincodeAvail(pincode).then( 33 // function(response){ 34 // if(response.delivery_codes.length > 0) { 35 // // if(response.data.delivery_codes.length) { 36 // if(response.delivery_codes[0].postal_code.cod=="Y") { 37 // // if(response.data.delivery_codes[0].postal_code.cod=="Y") { 38 // shownErr_(""); 39 // $cod = "Y"; 40 // } 41 // else { 42 // shownErr_('Oops Cash On Delivery is not available at this address.'); 43 // shownSuccess(""); 44 // $cod = false; 45 // } 46 // } 47 // else { 48 // shownErr_('Oops Cash On Delivery is not available at this address.'); 49 // shownSuccess(""); 50 // $cod = false; 51 // } 52 // }, 53 // function(error){ 54 // shownErr_('Oops Some thing went worng.'); 55 // shownSuccess(""); 56 // $cod = false; 57 // } 58 // ); 59 60 // jQuery.ajax({ 61 // url: "http://test.delhivery.com/c/api/pin-codes/json/?token=5dbd1c87bf295abd5dc20de832e8c4ff124ebffc&filter_codes=743144%2C741222", 62 // method: "GET", 63 // data: "jsonp", 64 // success: function(data) { 65 // console.log(data); 66 // }, 67 // error: function() { 68 // console.log(error); 69 // } 70 // }) 71 } 72 // alert(pincode); 73 }; 74 }, 75]); 76 77// Checkout Controller 78app.controller("cartPlaceOrderController", [ 79 "$scope", 80 "$rootScope", 81 "$state", 82 "dataService", 83 "$timeout", 84 function ($scope, $rootScope, $state, dataService, $timeout) { 85 $scope.mode = "none"; 86 $triggerCodBtn = false; 87 88 $scope.placeOrder = function () { 89 jQuery(".nl-payment-ul").removeClass("nl-theme-active"); 90 if ($scope.mode == "none" || $scope.mode == "") { 91 $timeout(function () { 92 jQuery(".nl-payment-ul").addClass("nl-theme-active"); 93 }, 2); 94 95 shownErr_("Please Select Payment Mode", false); 96 return false; 97 } else { 98 $savedAddress = $scope.savedAddress(); 99 console.log("::debug-here::", $savedAddress); 100 if ($savedAddress == false) { 101 // console.log("savedAddress- "+$savedAddress); 102 // return false; 103 jQuery("#addNew").trigger("click"); 104 } else { 105 console.log("::debug-checkCanOrder::", $scope.mode, $savedAddress); 106 dataService.checkCanOrder($scope.mode, $savedAddress).then( 107 function (res) { 108 console.log(res); 109 const data = JSON.parse(res); 110 if (data.response == "e") { 111 shownErr_(data.message, false); 112 return false; 113 } else { 114 if ($scope.mode == "prepaid") 115 jQuery("#placeOrderButton").trigger("click"); 116 else { 117 $triggerCodBtn = true; 118 $scope.calcPayment(); 119 } 120 } 121 }, 122 function (error) { 123 console.log(error); 124 }, 125 ); 126 } 127 } 128 }; 129 130 /** 131 * savedAddress() 132 * This function check for if the 133 * user has saved addreess or not 134 */
135 $scope.savedAddress = function () { 136 const shadowRoot = $scope.shadowRoot(); 137 let addressList = ""; 138 if (shadowRoot) 139 addressList = shadowRoot.querySelectorAll("#nl-bag-address-ul li"); 140 else addressList = document.querySelectorAll("#nl-bag-address-ul li"); 141 $active_pincode = ""; 142 143 for (const li of addressList) { 144 const label = li.querySelector("label"); 145 if (label && label.classList.contains("active")) { 146 $active_pincode = li.dataset.pincode; 147 break; 148 } 149 } 150 if (typeof $active_pincode == undefined || $active_pincode == "") 151 return false; 152 else return $active_pincode; 153 }; 154 155 /** 156 * savedAddress() 157 * To get the DOM element 158 * from shadow root 159 */ 160 161 $scope.shadowRoot = function () { 162 const host = document.getElementById("react-widget"); 163 const shadowRoot = host ? host.shadowRoot : null; 164 return shadowRoot || null; 165 }; 166 167 $scope.calcPayment = function () { 168 $mode = $scope.mode; 169 $active_pincode = ""; 170 $cod = ""; 171 var addressList = jQuery("#nl-bag-address-ul").find("li"); 172 addressList.each(function (i, li) { 173 _pli = jQuery(li); 174 if (jQuery(li).find("label").hasClass("active")) { 175 // console.log(_pli); 176 $active_pincode = jQuery(_pli).data("pincode"); 177 } 178 }); 179 180 // if(typeof $active_pincode == undefined || $active_pincode == '') { 181 // shownErr_('Sorry Pincode is not given for the selected address. Please edit address on My account section', false); 182 // } 183 // Getting the pincode available by the api 184 // else if($mode == 'cod') { 185 if ($mode == "cod") { 186 showLoader(); 187 $cod = "Y"; 188 // block for not work 189 // dataService.checkPincodeAvail($active_pincode).then(function(response){ 190 // // console.log(response); 191 // if(response.delivery_codes.length > 0) { 192 // if(response.delivery_codes[0].postal_code.cod=="Y") { 193 // $cod = 'Y'; 194 // } 195 // else { 196 // $cod = 'N'; 197 // } 198 // } 199 // else { 200 // $cod = 'N'; 201 // } 202 codAvailCrossCheck($cod, $mode); 203 hideLoader(); 204 // }, 205 // function(response){ 206 // $cod = 'N'; 207 // codAvailCrossCheck($cod, $mode); 208 // hideLoader(); 209 // }); 210 } else { 211 codAvailCrossCheck("N", "prepaid"); 212 } 213 }; 214 215 $rootScope.$on("paymentModeChanged", function (e, data) { 216 $scope.mode = data.mode; 217 jQuery(".nl-payment-ul").removeClass("nl-theme-active"); 218 if ($scope.mode == "prepaid") { 219 if (jQuery("#carttable tbody tr").length) { 220 // jQuery('#carttable tbody tr:first-child .nl-qty-adjust input[name=qty]').trigger('keyup'); 221 } 222 } else { 223 $triggerCodBtn = false; 224 $timeout(function () { 225 $scope.calcPayment(); 226 }, 0); 227 } 228 }); 229 230 $scope.codPayment = function () { 231 $active_pincode = $address_id = ""; 232 // Active Pincode 233 var addressList = jQuery("#nl-bag-address-ul").find("li"); 234 const shadowRoot = $scope.shadowRoot(); 235 if (shadowRoot) { 236 addressList = shadowRoot.querySelectorAll("#nl-bag-address-ul li"); 237 if (addressList.length > 0) { 238 $address_id = addressList[0].dataset.addressId; 239 $active_pincode = addressList[0].dataset.pincode; 240 } 241 } else { 242 addressList.each(function (i, li) { 243 _pli = jQuery(li); 244 if (jQuery(li).find("label").hasClass("active")) { 245 $active_pincode = jQuery(_pli).data("pincode"); 246 $address_id = jQuery(li).data("address-id"); 247 } 248 }); 249 } 250 251 if ($active_pincode == "" || $address_id == "") { 252 shownErr_("Oops! some error occured. Error CODE #COD1"); 253 } else { 254 showLoader(); 255 $triggerCodBtn = false; 256 dataService.getCartInfo($address_id).then( 257 function (data) { 258 data = jQuery.parseJSON(data); 259 if (data.response == "e") { 260 if (data.addon.shown == true) shownErr_(data.message); 261 } else { 262 $scope.$emit("codPopUpListener", { 263 carttotal: data.message.total, 264 phone_cod: data.message.phone, 265 email_cod: data.message.email, 266 address_id_cod: $address_id, 267 }); 268 jQuery("#codModal").modal("show"); 269 } 270 hideLoader(); 271 }, 272 function (error) { 273 console.log(error); 274 hideLoader(); 275 }, 276 ); 277 } 278 }; 279 280 function codAvailCrossCheck($cod, $mode) { 281 // console.log($cod, $mode); 282 if ($mode == "") { 283 } else { 284 if ($cod != "Y" && $mode == "cod") { 285 shownErr_("Cod is not available in this pincode", false); 286 } else { 287 if ($triggerCodBtn == true) $scope.codPayment(); 288 } 289 } 290 } 291 }, 292]); 293 294function preparePayment() { 295 var addressList = jQuery("#nl-bag-address-ul").find("li"); 296 jQuery("#calcPayment").trigger("click"); 297 // addressList.each(function(i, li){ 298 // _pli = jQuery(li).attr('id'); 299 // if(jQuery(li).find('label').hasClass('active')){ 300 // // console.log(jQuery(this)); 301 // console.log(_pli); 302 // jQuery('#nl-bag-address1').trigger('click'); 303 // // jQuery(_pli).trigger('click'); 304 // } 305 // // (jQuery(li)) 306 // }); 307}
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.