1/** 2 * ãã¼ãã£ã³ã°è¡¨ç¤ºéå§ 3 */ 4var startLoading = function (cancelable) { 5 if (Sys('#sysOpcLoading').length !== 0) { 6 return; 7 } 8 9 var loadingMessage = ''; 10 if (typeof cancelable === 'undefined' || cancelable) { 11 loadingMessage = '<div id="sysOpcLoading"><div id="sysOpcLoadingMessage">å¦çä¸...<button id="loadingCancelBtn">ãã£ã³ã»ã«</button></div></div>' 12 } else { 13 loadingMessage = '<div id="sysOpcLoading"><div id="sysOpcLoadingMessage">å¦çä¸...</div></div>' 14 } 15 16 Sys('body').append(loadingMessage); 17 18 Sys('#loadingCancelBtn').click(function () { 19 Sys('#sysOpcLoading').remove() 20 }); 21}; 22 23/** 24 * ãã¼ãã£ã³ã°è¡¨ç¤ºçµäº 25 */ 26var endLoading = function () { 27 Sys('#sysOpcLoading').remove(); 28}; 29 30/** 31* 䏿£ç¶æ ã®é ç®ï¼Observableï¼ã®ãªã¹ããåå¾ãã 32* @param viewModel ããªãã¼ã·ã§ã³å¯¾è±¡VM 33*/ 34var getIllegalObservables = function (viewModel) { 35 var result = []; 36 var validateTargetObservables = viewModel.getValidateTargetObservables(); 37 38 for (index in validateTargetObservables) { 39 var validateTargetObservable = validateTargetObservables[index]; 40 41 //ã¨ã©ã¼æããã¾ãã¯ãå ¥åæ® 42 if (validateTargetObservable.validator.hasError() || validateTargetObservable.validator.needToInput()) { 43 result.push(validateTargetObservable); 44 } 45 } 46 47 return result; 48}; 49 50/** 51* ã¨ã©ã¼ç¶æ ã®é ç®ï¼Observableï¼ã®ãªã¹ããåå¾ãã 52* @param viewModel ããªãã¼ã·ã§ã³å¯¾è±¡VM 53*/ 54var getErrorObservables = function (viewModel) { 55 var result = []; 56 var validateTargetObservables = viewModel.getValidateTargetObservables(); 57 58 for (index in validateTargetObservables) { 59 if (validateTargetObservables[index].validator.hasError()) { 60 result.push(validateTargetObservables[index]); 61 } 62 } 63 64 return result; 65}; 66 67/** 68* ã¨ã©ã¼ç¶æ ã®é ç®ï¼Observableï¼ã®ãªã¹ããåå¾ãã 69* @param viewModel ããªãã¼ã·ã§ã³å¯¾è±¡VM 70*/ 71var getRequiredObservables = function (viewModel) { 72 var result = []; 73 var validateTargetObservables = viewModel.getValidateTargetObservables(); 74 for (index in validateTargetObservables) { 75 if (validateTargetObservables[index].validator.needToInput()) { 76 result.push(validateTargetObservables[index]); 77 } 78 } 79 80 return result; 81}; 82 83/** 84* å ¨ã¦ã®ããªãã¼ã·ã§ã³å¯¾è±¡ã«å¯¾ãã¦éä¿¡åãã§ãã¯ãè¡ã 85* @param viewModel ããªãã¼ã·ã§ã³å¯¾è±¡VM 86*/ 87var checkOnComplete = function (viewModel) { 88 clearErrors(viewModel); 89 var validateTargetObservables = viewModel.getValidateTargetObservables(); 90 91 for (index in validateTargetObservables) { 92 validateTargetObservables[index].validator.checkOnComplete(); 93 } 94}; 95 96/** 97* å ¨ã¦ã®ããªãã¼ã·ã§ã³å¯¾è±¡ã«å¯¾ãã¦ã¨ã©ã¼ã¡ãã»ã¼ã¸ã®ã¯ãªã¢ãè¡ã 98* @param viewModel ããªãã¼ã·ã§ã³å¯¾è±¡ãªã¹ããæã¤VM 99*/ 100var clearErrors = function (viewModel) { 101 var validateTargetObservables = viewModel.getValidateTargetObservables(); 102 103 for (index in validateTargetObservables) { 104 validateTargetObservables[index].errors.removeAll(); 105 } 106 107 viewModel.headerErrors.removeAll(); 108}; 109 110/** 111 * 使æ¤ç´¢ãã 112 * @param Observable zipcode 113 * @param Observable prefStateId 114 * @param Observable address1 115 * @param Observable address2 116 */ 117var searchAddress = function (zipcode, prefStateId, address1, address2) { 118 startLoading(); 119 120 var data = { 121 url: '/api/front/getAddressFromZipcode', 122 zipcode: zipcode.input(), 123 }; 124 125 Sys.ajax({ 126 type: 'POST', 127 url: data['url'], 128 data: data 129 }).then(function (resp) { 130 var json = JSON.parse(resp); 131 zipcode.hasError(false); 132 if (json.pref_state_id) { 133 prefStateId.input(convertNullToBlank(json.pref_state_id)); 134 } else if(app.useZipCodeErrorCheckFlag()) { 135 //使åå¾ã§ãããéµä¾¿çªå·ã¨ã©ã¼ãã§ãã¯ã使ç¨ãããªã 136 zipcode.errors.push(createSimpleObservable(self, 'errors', 'ç¡å¹ãªéµä¾¿çªå·ã§ã')); 137 // ãæ¬¡ã¸ããã¿ã³ãæ¼ä¸ããå¾ãã¨ã©ã¼ããããã¨ãä¿æãã 138 zipcode.hasError(true); 139 } 140 141 if (json.address1) { 142 address1.input(json.address1); 143 } 144 145 if (json.address2) { 146 address2.input(json.address2); 147 } 148 149 endLoading(); 150 }); 151}; 152 153/** 154 * booleanã«å¤æãã 155 * @param value 156 * @returns {boolean} 157 */
158var convertToBoolean = function (value) { 159 if (value == '1' || value == 'true') { 160 return true; 161 } else if (value == '0' || value == 'false') { 162 return false; 163 } 164 165 if (value) { 166 return true; 167 } 168 169 return false; 170}; 171 172/** 173 * booleanã1ã»0ã®æååã«å¤æãã 174 * @param value 175 * @returns {string} 176 */ 177var convertBooleanToString = function (value) { 178 if (value) { 179 return '1'; 180 } 181 182 return '0'; 183}; 184 185/** 186 * æååã«å¤æãã 187 * @param value 188 * @returns {string} 189 */ 190var convertToString = function (value) { 191 if (value == null) { 192 return null; 193 } 194 195 return String(value); 196}; 197 198/** 199 * æååã«å¤æãã 200 * @param value 201 * @returns {string} 202 */ 203var convertToStringOrNullString = function (value) { 204 if (value == null) { 205 return 'null'; 206 } 207 208 return String(value); 209}; 210 211/** 212 * nullããã©ã³ã¯ã«å¤æãã 213 * @param value 214 * @returns {string} 215 */ 216var convertNullToBlank = function (value) { 217 if (value == null) { 218 return ''; 219 } 220 221 return String(value); 222}; 223 224/** 225 * Numberåã«å¤æãã 226 * @param value 227 * @returns {Number} 228 */ 229var convertToNumber = function (value) { 230 return Number(value); 231}; 232 233/** 234 * éµä¾¿çªå·ããã©ã¼ãããåãã 235 * @param zipcode 236 * @returns {string} 237 */ 238var formatZipcode = function (zipcode) { 239 if (!zipcode) { 240 return 'ã'; 241 } 242 243 return 'ã' + zipcode.substr(0, 3) + '-' + zipcode.substr(3); 244}; 245 246/** 247 * æ§å¥åãåå¾ãã 248 * @param gender 249 * @returns {string} 250 */ 251var getGenderName = function (gender) { 252 if (!gender) { 253 return 'æªæå®'; 254 } 255 256 if (gender == '1') { 257 return 'ç·æ§'; 258 } else if (gender == '2') { 259 return '女æ§'; 260 } else { 261 return 'æªæå®'; 262 } 263}; 264 265/** 266 * ã«ã³ãåºåãã«ãã 267 * @param price 268 * @returns {string} 269 */ 270var withComma = function (price) { 271 if (price) { 272 return price.toString().replace(/(\d)(?=(\d{3})+$)/g, '$1,'); 273 } 274 275 return 0; 276}; 277 278/** 279 * éé¡ã表示形å¼ã«å¤æãã 280 * @param price 281 * @param isWithTax 282 * @return String 283 */ 284var convertToDisplayPriceFormat = function(price, isWithTax) { 285 result = null; 286 if (app.yenMarkUseFlag()) { 287 result = "Â¥" + withComma(price); 288 } else { 289 result = withComma(price) + "å"; 290 } 291 292 if (isWithTax) { 293 result = result + "ï¼ç¨è¾¼ï¼"; 294 } 295 296 return result; 297} 298 299/** 300 * éé¡ããã¤ãã¹ã®è¡¨ç¤ºå½¢å¼ã«å¤æãã 301 * @param price 302 * @param isWithTax 303 * @return String 304 */ 305var convertToDisplayNegativePriceFormat = function(price, isWithTax) { 306 result = null; 307 if (app.yenMarkUseFlag()) { 308 result = "-Â¥" + withComma(price); 309 } else { 310 result = withComma(price) + "åå¼ã"; 311 } 312 313 if (isWithTax) { 314 result = result + "ï¼ç¨è¾¼ï¼"; 315 } 316 317 return result; 318} 319 320/** 321 * ãã¤ã³ãã表示形å¼ã«å¤æãã 322 * @param point 323 * @return String 324 */ 325var convertToDisplayPointFormat = function(point) { 326 return withComma(point) + "ãã¤ã³ã"; 327} 328 329/** 330 * æ°éã表示形å¼ã«å¤æãã 331 * @param num 332 * @return String 333 */ 334var convertToDisplayNumFormat = function(num) { 335 return withComma(num) + "ç¹"; 336} 337 338/** 339 * æ¨æºå½¢å¼ï¼name, valueï¼ã®ãªãã·ã§ã³ãªã¹ããããvalueã«åè´ãããªãã·ã§ã³åãåå¾ãã 340 * @param value 341 * @returns {string} 342 */ 343var getOptionName = function (value, options) { 344 for (index in options) { 345 var option = options[index]; 346 347 if(option.value == value) { 348 return option.name; 349 } 350 } 351 352 return null; 353}; 354 355/** 356 * â¯æâ¯æ¥ãYYYYMMDDæååã«å¤æãã 357 * @param targetString 358 * @returns {string} 359 */ 360var convertToYYYYMMDD = function(targetString) { 361 if (!targetString) { 362 return null; 363 } 364 365 var today = new Date(); 366 var todayYYYYMMDD = today.getFullYear() + ('00' + (today.getMonth() + 1)).slice(-2) + ('00' + today.getDate()).slice(-2); 367 368 369 var splitMonth = targetString.split('æ'); 370 var splitDay = splitMonth[1].split('æ¥'); 371 372 var paddingMonth = ('0' + splitMonth[0]).slice(-2); 373 var paddingDay = ('0' + splitDay[0]).slice(-2); 374 375 var mmdd = paddingMonth + paddingDay; 376 377 var yyyymmdd = today.getFullYear() + mmdd; 378 379 if (todayYYYYMMDD > yyyymmdd) { 380 yyyymmdd = (today.getFullYear() + 1) + mmdd; 381 } 382 383 return yyyymmdd; 384}; 385 386/** 387 * Dateãªãã¸ã§ã¯ããYYYYMMDDæååã«å¤æãã 388 * @param date 389 * @returns {string} 390 */
391var convertDateToYYYYMMDD = function(date) { 392 var yyyy = date.getFullYear(); 393 var mm = ('00' + (date.getMonth()+1)).slice(-2); 394 var dd = ('00' + date.getDate()).slice(-2); 395 396 return yyyy + mm + dd; 397} 398 399/** 400 * ãªã¯ã¨ã¹ãå¦ç 401 * @param viewModel ViewModel 402 * @param data POST対象ãã¼ã¿ 403 * @param isAsync éåæéä¿¡ãè¡ããã©ãã 404 * @param doneSuccess éä¿¡æåæã«è¡ãã³ã¼ã«ããã¯å¦ç 405 */ 406var onCallRequest = function (viewModel, data, isAsync, doneSuccess) { 407 clearErrors(viewModel); 408 startLoading(); 409 Sys.ajax({ 410 type: 'POST', 411 url: data['url'], 412 data: data, 413 async: isAsync 414 }).done(function (resp) { 415 var json = JSON.parse(resp); 416 if (convertToBoolean(json.isError)) { 417 viewModel.headerErrors(json.errorMessages); 418 419 if (viewModel == app.deliveryMethodList) { 420 app.removeDeliveryMethodInitialErrors(); 421 // ãå±ãæ¹æ³ã¨ã©ã¼ãåæ 422 app.applyInitialSessionCartDeliveryMethodError(json); 423 } 424 } else { 425 app.refresh(json); 426 doneSuccess(); 427 } 428 }).fail(function () { 429 viewModel.headerErrors.push(createSimpleObservable(self, 'headerErrors', 'éä¿¡ã«å¤±æãã¾ãã')); 430 }).always(function () { 431 endLoading(); 432 }); 433}; 434 435/** 436 * ãªã¯ã¨ã¹ãå¦ç(ã«ã¼ãæ å ±ã®ä¸æä¿åå®è¡æï¼ 437 * 438 * @param viewModel ViewModel 439 * @param data POST対象ãã¼ã¿ 440 * @param isAsync éåæéä¿¡ãè¡ããã©ãã 441 * @param doneSuccess éä¿¡æåæã«è¡ãã³ã¼ã«ããã¯å¦ç 442 */ 443var onCallRequestToSaveMemberSessionCart = function (viewModel, data, isAsync, doneSuccess) { 444 clearErrors(viewModel); 445 startLoading(); 446 Sys.ajax({ 447 type: 'POST', 448 url: data['url'], 449 data: data, 450 async: isAsync 451 }).done(function (resp) { 452 var json = JSON.parse(resp); 453 if (convertToBoolean(json.isError)) { 454 viewModel.headerErrors(json.errorMessages); 455 } else { 456 app.refresh(json); 457 endLoading(); 458 doneSuccess(); 459 } 460 }).fail(function () { 461 viewModel.headerErrors.push(createSimpleObservable(self, 'headerErrors', 'éä¿¡ã«å¤±æãã¾ãã')); 462 }).always(function () { 463 endLoading(); 464 }); 465}; 466 467/** 468 * ãªã¯ã¨ã¹ãå¦çï¼ä¸æä¿åããæ³¨æãåéããï¼ 469 * @param viewModel ViewModel 470 * @param data POST対象ãã¼ã¿ 471 * @param isAsync éåæéä¿¡ãè¡ããã©ãã 472 * @param doneSuccess éä¿¡æåæã«è¡ãã³ã¼ã«ããã¯å¦ç 473 */ 474var onCallRequestToResumeMemberSessionCart = function (viewModel, data, isAsync, doneSuccess) { 475 clearErrors(viewModel); 476 startLoading(); 477 Sys.ajax({ 478 type: 'POST', 479 url: data['url'], 480 data: data, 481 async: isAsync 482 }).done(function (resp) { 483 var json = JSON.parse(resp); 484 if (convertToBoolean(json.isError)) { 485 viewModel.headerErrors(json.errorMessages); 486 endLoading(); 487 } else if (json.basketUrl) { 488 // ãã¹ã±ããã¸ãªãã¤ã¬ã¯ã 489 location.href = json.basketUrl; 490 } else { 491 // 䏿ä¿åã®ååæ å ±ã«æ´æ°ããããã«æ¢åã«ã¼ãã®ååæ å ±ãã¯ãªã¢ãã 492 app.items.initializeItems(); 493 app.refresh(json); 494 doneSuccess(); 495 endLoading(); 496 } 497 }).fail(function () { 498 viewModel.headerErrors.push(createSimpleObservable(self, 'headerErrors', 'éä¿¡ã«å¤±æãã¾ãã')); 499 endLoading(); 500 }); 501}; 502 503/** 504 * æå®ã®observableArrayã«è¤æ°ã®è¦ç´ ã追å ãã¾ãã 505 * 506 * 第ä¸å¼æ°ã«æå®ããko.observableArrayã«ç¬¬äºå¼æ°ã§æå®ããé åã追å ããã 507 * 第ä¸å¼æ°ãæå®ããã¦ããå ´åã¯ç¬¬äºå¼æ°ã®é åã®è¦ç´ ãå å·¥ãã¦ç¬¬ä¸å¼æ°ã®ko.observableArrayã«è¿½å ããã 508 * @param observableArray 追å å ã®ko.observableArray 509 * @param extraArray 追å ããè¦ç´ ã®é å 510 * @param extraArrayCallBack è¦ç´ è¿½å æã«è¡ãå å·¥ã®ã³ã¼ã«ããã¯å¦ç 511 */ 512var pushApply = function (observableArray, extraArray, extraArrayCallBack) { 513 if (!extraArrayCallBack) { 514 var _extraArrayCallBack = function (x) {return x;}; 515 } else { 516 var _extraArrayCallBack = extraArrayCallBack; 517 } 518 var _arrayMap = associativeArrayMap(extraArray, _extraArrayCallBack); 519 observableArray.push.apply(observableArray, _arrayMap); 520}; 521 522/** 523 * æå®ã®observableArrayã第äºå¼æ°ã®è¦ç´ ã§ç½®ãæãã¾ãã 524 * 第ä¸å¼æ°ã«æå®ããè¦ç´ ã¨ç¬¬äºå¼æ°ã«æå®ããè¦ç´ ãå®å ¨ã«ç°ãªãå ´åã®ã
524¿ç½®ãæããçºçãã¾ãã 525 * ç¾ç¶ç¬¬ä¸å¹æ°ãæå®ããã¦ããå ´åã¯å¿ ãç½®ãæããã¾ãã 526 * 527 * 第ä¸å¼æ°ã«æå®ããko.observableArrayã第äºå¼æ°ã§æå®ããé åã§ç½®ãæããã 528 * 第ä¸å¼æ°ãæå®ããã¦ããå ´åã¯ç¬¬äºå¼æ°ã®é åã®è¦ç´ ãå å·¥ãã¦ç¬¬ä¸å¼æ°ã®ko.observableArrayã«è¿½å ããã 529 * 530 * @param observableArray 追å å ã®ko.observableArray 531 * @param extraArray 追å ããè¦ç´ ã®é å 532 * @param extraArrayCallBack è¦ç´ è¿½å æã«è¡ãå å·¥ã®ã³ã¼ã«ããã¯å¦ç 533 */ 534var economicalReplaceApply = function (observableArray, extraArray, extraArrayCallBack) { 535 var old = observableArray().concat(); 536 if (JSON.stringify(old, getCircularReplacer()) != JSON.stringify(extraArray, getCircularReplacer())) { 537 observableArray.removeAll(); 538 pushApply(observableArray, extraArray, extraArrayCallBack); 539 } else { 540 // 541 } 542}; 543 544/** 545 * 飿³é åã«å¯¾å¿ããko.utils.arrayMap 546 * @returns array 547 */ 548var associativeArrayMap = function (array, mapping, mappingOwner) { 549 var result = []; 550 if (array) { 551 for (var index in array) { 552 result.push(mapping.call(mappingOwner, array[index], index)); 553 } 554 } 555 return result; 556}; 557 558/** 559 * 循ç°åç §ã®é²æ¢ 560 */ 561var getCircularReplacer = function () { 562 const seen = new WeakSet(); 563 return (key, value) => { 564 if (typeof value === "object" && value !== null) { 565 if (seen.has(value)) { 566 return; 567 } 568 seen.add(value); 569 } 570 return value; 571 }; 572};
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.