1function RemoveVietnameseTones(str) { 2 str = str.replace(/à |á|ạ|ả|ã|â|ầ|ấ|áº|ẩ|ẫ|Ä|ằ|ắ|ặ|ẳ|ẵ/g, "a"); 3 str = str.replace(/è|é|ẹ|ẻ|ẽ|ê|á»|ế|á»|á»|á» /g, "e"); 4 str = str.replace(/ì|Ã|á»|á»|Ä©/g, "i"); 5 str = str.replace(/ò|ó|á»|á»|õ|ô|á»|á»|á»|á»|á»|Æ¡|á»|á»|ợ|á»|ỡ/g, "o"); 6 str = str.replace(/ù|ú|ụ|á»§|Å©|ư|ừ|ứ|á»±|á»|ữ/g, "u"); 7 str = str.replace(/ỳ|ý|ỵ|á»·|ỹ/g, "y"); 8 str = str.replace(/Ä/g, "d"); 9 str = str.replace(/Ã|Ã|Ạ|Ả|Ã|Ã|Ầ|Ấ|Ậ|Ẩ|Ẫ|Ä|Ằ|Ắ|Ặ|Ẳ|Ẵ/g, "A"); 10 str = str.replace(/Ã|Ã|Ẹ|Ẻ|Ẽ|Ã|á»|Ế|á»|á»|á»/g, "E"); 11 str = str.replace(/Ã|Ã|á»|á»|Ĩ/g, "I"); 12 str = str.replace(/Ã|Ã|á»|á»|Ã|Ã|á»|á»|á»|á»|á»|Æ |á»|á»|Ợ|á»|á» /g, "O"); 13 str = str.replace(/Ã|Ã|Ụ|Ủ|Ũ|Ư|Ừ|Ứ|á»°|Ử|á»®/g, "U"); 14 str = str.replace(/Ỳ|Ã|á»´|á»¶|Ỹ/g, "Y"); 15 str = str.replace(/Ä/g, "D"); 16 // Some system encode vietnamese combining accent as individual utf-8 characters 17 // Má»t và i bá» encode coi các dấu mÅ©, dấu chữ như má»t kà tá»± riêng biá»t nên thêm hai dòng nà y 18 str = str.replace(/\u0300|\u0301|\u0303|\u0309|\u0323/g, ""); // Ì Ì Ì Ì Ì£ huyá»n, sắc, ngã, há»i, nặng 19 str = str.replace(/\u02C6|\u0306|\u031B/g, ""); // Ë Ì Ì Ã, Ã, Ä, Æ , Ư 20 // Remove extra spaces 21 // Bá» các khoảng trắng liá»n nhau 22 str = str.replace(/ + /g, " "); 23 str = str.trim(); 24 // Remove punctuations 25 // Bá» dấu câu, kà tá»± Äặc biá»t 26 str = str.replace(/!|@|%|\^|\*|\(|\)|\+|\=|\<|\>|\?|\/|,|\.|\:|\;|\'|\"|\&|\#|\[|\]|~|\$|_|`|-|{|}|\||\\/g, ''); 27 str = str.replace(/\s/g, '-') 28 return str.toLowerCase(); 29} 30 31function PreventScreen(result) { 32 if (GroupPermission != 'NQ00000006') { 33 if (result) { 34 $('body').bind('cut copy', function (e) { 35 e.preventDefault(); 36 }); 37 38 //$("body").on("contextmenu", function (e) { 39 // return false; 40 //}); 41 } 42 else { 43 $('body').unbind('cut copy'); 44 } 45 } 46} 47 48function PreventCopyPaste() { 49 if (GroupPermission != 'NQ00000006') { 50 $('.prevent-copy-paste').bind('cut copy', function (e) { 51 e.preventDefault(); 52 }); 53 } 54} 55 56function SubStringText(val, length) { 57 if (val != null) { 58 if (val.length > length) { 59 return val.substring(0, length) + '...'; 60 } 61 else { 62 return val; 63 } 64 } 65 else { 66 return val; 67 } 68} 69 70function convertToMoney(value) { 71 var res = value.replace(/[&\/\\#,+()$~%.'":*?<>{}]/g, '') 72 return res; 73} 74 75function repalaceAttachNameFile(value) { 76 var res = value.replace(/[&\/\\#,+()$~%.'":*?<>{}]/g, '') 77 return res; 78} 79 80function isNull(string) { 81 if (string != null && string != '') 82 return string 83 else { 84 return '' 85 } 86 87} 88 89function isNullOut(string, out) { 90 if (string != null && string != '') 91 return string 92 else { 93 return out 94 } 95 96} 97 98function StartLoading() { 99 $('.loading').css('display', 'block'); 100 $('#body').css('opacity', '80%'); 101} 102 103function EndLoading() { 104 $('.loading').css('display', 'none'); 105 $('#body').css('opacity', '100%'); 106} 107 108function getDayInWeek(date) { 109 var thuTrongTuan = ""; 110 switch (new Date(date).getDay()) { 111 case 1: 112 thuTrongTuan = "Thứ Hai"; 113 break; 114 case 2: 115 thuTrongTuan = "Thứ Ba"; 116 break; 117 case 3: 118 thuTrongTuan = "Thứ Tư"; 119 break; 120 case 4: 121 thuTrongTuan = "Thứ NÄm"; 122 break; 123 case 5: 124 thuTrongTuan = "Thứ Sáu"; 125 break; 126 case 6: 127 thuTrongTuan = "Thứ Bảy"; 128 break; 129 default: 130 thuTrongTuan = "Chá»§ Nháºt"; 131 } 132 return thuTrongTuan; 133} 134 135function addDays(dateObj, numDays) { 136 dateObj.setDate(dateObj.getDate() + numDays); 137 return dateObj; 138} 139 140function getDayInWeekShort(date) { 141 var thuTrongTuan = ""; 142 switch (new Date(date).getDay()) { 143 case 1: 144 thuTrongTuan = "Mo"; 145 break; 146 case 2: 147 thuTrongTuan = "Tu"; 148 break; 149 case 3: 150 thuTrongTuan = "We"; 151 break; 152 case 4: 153 thuTrongTuan = "Th"; 154 break; 155 case 5: 156 thuTrongTuan = "Fr"; 157 break; 158 case 6: 159 thuTrongTuan = "Sa"; 160 break; 161 default: 162 thuTrongTuan = "Su"; 163 } 164 return thuTrongTuan; 165} 166 167function ConvertToDateDDMMYYYY(dateStr) { 168 //var parts = dateStr.split("/") 169 //return new Date(parts[1] - 1, parts[2], parts[0]) 170 return dateStr; 171} 172 173function ConvertDateToDDMMYYYY(dateStr) { 174 var today = new Date(dateStr); 175 var dd = String(today.getDate()).padStart(2, '0'); 176 var mm = String(today.getMonth() + 1).padStart(2, '0'); 177 var yyyy = today.getFullYear(); 178 today = yyyy + mm + dd; 179 return today; 180} 181 182function ConvertDateToMMDDYYYY(dateStr) { 183 var today = new Date(dateStr); 184 var dd = String(today.getDate()).padStart(2, '0'); 185 var mm = String(today.getMonth() + 1).padStart(2, '0'); 186 var yyyy = today.getFullYear(); 187 today = mm + '-' + dd + '-' + yyyy; 188 return today; 189} 190 191function DatePicker() { 192 $(".datepicker").datepicker(); 193 $(".datepicker").datepicker("option", "dateFormat", "mm/dd/yy"); 194} 195 196function scrollData(emlement, divConent, valueFind) { 197 //Set mà u cho các class lab-phieu-thu là mà u Äen 198 $('.' + emlement + '').css('color', 'black'); 199 //Set mà u cho class lab-phieu-thu, class ÄÆ°á»£c tìm thấ 200 $('#' + valueFind + '').find('.' + emlement + '').css('color', 'red'); 201 //ÄÆ°a scroll lên top 202 $('#' + divConent + '').scrollTop(0);
203 //Thá»±c thi lá»nh scroll tá»i element cần tìm 204 $('#' + divConent + '').animate({ 205 scrollTop: $('#' + valueFind + '').offset().top - 200 206 }, 2000); 207} 208 209 210function validateInput() { 211 //Validate Ngà y Tháng NÄm 212 $('.dateTimeKyNguyen').focusout(function () { 213 var input = $(this).val(); 214 var pattern = /^([0-9]{2})\/([0-9]{2})\/([0-9]{4})$/; 215 if (!pattern.test(input)) { 216 $(this).focus(); 217 $(this).css("background-color", "Red"); 218 } 219 else { 220 $(this).css("background-color", "white"); 221 } 222 }); 223 224 //Validate Number Phone 225 $('.NumberPhoneKyNguyen').focusout(function () { 226 var input = $(this).val(); 227 var pattern = /^\d{10}$/; 228 if (!pattern.test(input)) { 229 $(this).focus(); 230 $(this).css("background-color", "Red"); 231 } 232 else { 233 $(this).css("background-color", "white"); 234 } 235 }); 236 237 //Validate Number Phone 238 $('.MoneyKyNguyen').focusout(function () { 239 var input = $(this).val(); 240 var pattern = /^[0-9]\d*(?:\.\d{0,2})?$/; 241 if (!pattern.test(input)) { 242 $(this).focus(); 243 $(this).css("background-color", "Red"); 244 } 245 else { 246 $(this).css("background-color", "white"); 247 } 248 }); 249 250 //Validate Number 251 $('.NumberKyNguyen').focusout(function () { 252 var input = $(this).val(); 253 var pattern = /^[0-9]\d*(?:\.\d{0,2})?$/; 254 if (!pattern.test(input)) { 255 $(this).focus(); 256 $(this).css("background-color", "Red"); 257 } 258 else { 259 $(this).css("background-color", "white"); 260 } 261 }); 262} 263 264var ChuSo = new Array(" không ", " má»t ", " hai ", " ba ", " bá»n ", " nÄm ", " sáu ", " bảy ", " tám ", " chÃn "); 265var Tien = new Array("", " nghìn", " triá»u", " tá»·", " nghìn tá»·", " triá»u tá»·"); 266 267//1. Hà m Äá»c sá» có ba chữ sá»; 268function DocSo3ChuSo(baso) { 269 var tram; 270 var chuc; 271 var donvi; 272 var KetQua = ""; 273 tram = parseInt(baso / 100); 274 chuc = parseInt((baso % 100) / 10); 275 donvi = baso % 10; 276 if (tram == 0 && chuc == 0 && donvi == 0) return ""; 277 if (tram != 0) { 278 KetQua += ChuSo[tram] + " trÄm "; 279 if ((chuc == 0) && (donvi != 0)) KetQua += " linh "; 280 } 281 if ((chuc != 0) && (chuc != 1)) { 282 KetQua += ChuSo[chuc] + " mươi"; 283 if ((chuc == 0) && (donvi != 0)) KetQua = KetQua + " linh "; 284 } 285 if (chuc == 1) KetQua += " mưá»i "; 286 switch (donvi) { 287 case 1: 288 if ((chuc != 0) && (chuc != 1)) { 289 KetQua += " má»t "; 290 } 291 else { 292 KetQua += ChuSo[donvi]; 293 } 294 break; 295 case 5: 296 if (chuc == 0) { 297 KetQua += ChuSo[donvi]; 298 } 299 else { 300 KetQua += " lÄm "; 301 } 302 break; 303 default: 304 if (donvi != 0) { 305 KetQua += ChuSo[donvi]; 306 } 307 break; 308 } 309 return KetQua; 310} 311 312//2. Hà m Äá»c sá» thà nh chữ (Sá» dụng hà m Äá»c sá» có ba chữ sá») 313 314function DocTienBangChu(SoTien) { 315 316 SoTien = SoTien.toString().replace(/,/gi, ""); 317 318 var lan = 0; 319 var i = 0; 320 var so = 0; 321 var KetQua = ""; 322 var tmp = ""; 323 var ViTri = new Array(); 324 if (SoTien < 0) return "Sá» tiá»n âm !"; 325 if (SoTien == 0) return "Không Äá»ng !"; 326 if (SoTien > 0) { 327 so = SoTien; 328 } 329 else { 330 so = -SoTien; 331 } 332 if (SoTien > 8999999999999999) { 333 //SoTien = 0; 334 return "Sá» quá lá»n!"; 335 } 336 ViTri[5] = Math.floor(so / 1000000000000000); 337 if (isNaN(ViTri[5])) 338 ViTri[5] = "0"; 339 so = so - parseFloat(ViTri[5].toString()) * 1000000000000000; 340 ViTri[4] = Math.floor(so / 1000000000000); 341 if (isNaN(ViTri[4])) 342 ViTri[4] = "0"; 343 so = so - parseFloat(ViTri[4].toString()) * 1000000000000; 344 ViTri[3] = Math.floor(so / 1000000000); 345 if (isNaN(ViTri[3])) 346 ViTri[3] = "0"; 347 so = so - parseFloat(ViTri[3].toString()) * 1000000000; 348 ViTri[2] = parseInt(so / 1000000); 349 if (isNaN(ViTri[2])) 350 ViTri[2] = "0"; 351 ViTri[1] = parseInt((so % 1000000) / 1000); 352 if (isNaN(ViTri[1])) 353 ViTri[1] = "0"; 354 ViTri[0] = parseInt(so % 1000); 355 if (isNaN(ViTri[0])) 356 ViTri[0] = "0"; 357 if (ViTri[5] > 0) { 358 lan = 5; 359 } 360 else if (ViTri[4] > 0) { 361 lan = 4; 362 } 363 else if (ViTri[3] > 0) { 364 lan = 3; 365 } 366 else if (ViTri[2] > 0) { 367 lan = 2; 368 } 369 else if (ViTri[1] > 0) { 370 lan = 1; 371 } 372 else { 373 lan = 0; 374 } 375 for (i = lan; i >= 0; i--) { 376 tmp = DocSo3ChuSo(ViTri[i]); 377 KetQua += tmp; 378 if (ViTri[i] > 0) KetQua += Tien[i];
379 if ((i > 0) && (tmp.length > 0)) KetQua += ','; 380 } 381 if (KetQua.substring(KetQua.length - 1) == ',') { 382 KetQua = KetQua.substring(0, KetQua.length - 1); 383 } 384 KetQua = KetQua.substring(1, 2).toUpperCase() + KetQua.substring(2); 385 return KetQua + ' nghìn Äá»ng chẵn.'; 386} 387 388 389function formatMoney(n, currency) { 390 return (n.toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g, "$1,")).replace(".00", "") + " " + currency; 391 392} 393 394$(function () { 395 $.ajaxSetup({ 396 cache: false 397 }); 398}); 399$(document).ready(function () { 400 FormatTimepicker(); 401}); 402 403function MergeDateAndTime(Date, Time) { 404 return Date + ' ' + Time; 405} 406 407function SplitDate(DateTime) { 408 return DateTime.substring(0, 10); 409} 410 411function SplitHour(DateTime) { 412 return DateTime.substring(11).substring(0, 5); 413} 414 415function SplitHourMMSS(DateTime) { 416 return DateTime.substring(11); 417} 418 419 420function FormatDatetimepicker(idDatetimepicker) { 421 /* 422 $(idDatetimepicker).datetimepicker({ 423 format: 'yyyy/mm/dd', 424 showTimepicker: false, 425 weekStart: 1, 426 todayBtn: 1, 427 autoclose: 1, 428 todayHighlight: 1, 429 startView: 2, 430 forceParse: 0, 431 showMeridian: 1 432 }); 433 */ 434 $(idDatetimepicker).datepicker({ 435 language: "ja", 436 format: 'yyyy/mm/dd', 437 orientation: "bottom", 438 autoclose: true, 439 useCurrent: false 440 }); 441} 442function FormatTimepicker() { 443 //$(".input_time_field").timepicki({ 444 // show_meridian: false 445 //}); 446 447 //$(".input_time_field").change(function(){ 448 // alert("d"); 449 //}); 450} 451function texboxCharacterColor(id) { 452 $(id).ColorPicker({ 453 color: '#0000ff', 454 onShow: function (colpkr) { 455 $(colpkr).fadeIn(500); 456 return false; 457 }, 458 onHide: function (colpkr) { 459 $(colpkr).fadeOut(500); 460 return false; 461 }, 462 onSubmit: function (hsb, hex, rgb, el) { 463 $(el).val("#" + hex); 464 465 } 466 }); 467} 468 469function texboxBackgroundColor(id) { 470 $(id).ColorPicker({ 471 color: '#0000ff', 472 onShow: function (colpkr) { 473 $(colpkr).fadeIn(500); 474 return false; 475 }, 476 onHide: function (colpkr) { 477 $(colpkr).fadeOut(500); 478 return false; 479 }, 480 onSubmit: function (hsb, hex, rgb, el) { 481 $(el).val("#" + hex); 482 } 483 }); 484} 485 486 487function checkboxAllOn() { 488 $(".btn-check-all-on").click(function () { 489 $(this).parents(".kyoku-content:first").find(":checkbox:not(.checkbox-article)").prop('checked', "checked"); 490 }) 491} 492 493function checkboxAllOff() { 494 $(".btn-check-all-off").click(function () { 495 $(this).parents(".kyoku-content:first").find(":checkbox:not(.checkbox-article)").prop('checked', false); 496 }) 497} 498 499function setEditingFla(rootEle) { 500 var $editFlagEle = rootEle.find(".editedFlg"); 501 if ($editFlagEle.val() == "0" || $editFlagEle.val() == "") { 502 $editFlagEle.val("1");// //update 503 } 504} 505 506function getAllData(template) { 507 var dataArray = []; 508 $(template).each(function () { 509 var $this = $(this); 510 var data = mappingDataToJson($this); 511 dataArray.push(data); 512 }); 513 return dataArray; 514} 515 516function ButtonCollapse(id) { 517 $(id).click(function () { 518 $(this).find('span').toggleClass('glyphicon glyphicon-plus').toggleClass('glyphicon glyphicon-minus'); 519 }); 520} 521 522function ConvertChecked(string) { 523 var result = "Checked"; 524 if (string != "1") 525 result = ""; 526 return result; 527} 528 529function mappingDataToJson(divEle) { 530 var rootEle = $(divEle); 531 var fields = rootEle.find("input,select,textarea"); 532 var resultJson = {}; 533 fields.each(function (index) { 534 var $this = $(this); 535 var fieldName = $this.attr("data-fieldname"); 536 if (typeof fieldName != "undefined") { 537 var fieldvar = $this.val(); 538 if (typeof (fieldvar) == 'undefined') 539 fieldvar = $this.attr('value'); 540 if ($this.is(":checkbox")) { 541 if ($this.is(":checked")) 542 fieldvar = 1; 543 else 544 fieldvar = 0; 545 } 546 else if ($this.is(":radio")) { 547 if ($this[0].checked) { 548 fieldvar = $this[0].value; 549 } 550 else 551 return; 552 } 553 else if ($this.is(":button") && $this.hasClass("color-picker")) {
554 fieldvar = $this.data("color"); 555 if (typeof (fieldvar) == "undefined") { 556 fieldvar = $this.attr("data-color"); 557 } 558 } 559 resultJson[fieldName] = fieldvar; 560 } 561 }); 562 563 return resultJson; 564} 565 566function mappingJsonDataToField(divEle, jsonData) { 567 var rootEle = $(divEle); 568 var fields = rootEle.find("input,select, textarea"); 569 fields.each(function (index) { 570 var $this = $(this); 571 var fieldName = $this.attr("data-fieldname"); 572 if (typeof fieldName != "undefined") { 573 var data = jsonData[fieldName]; 574 if (typeof data != "undefined" && data != null) { 575 //Convert If data is TimeJson 576 if (data.toString().includes("/Date(")) { 577 data = ConvertStringToDate(data); 578 } 579 //if ($this.attr("data-type") == "date") { 580 // data = ConvertStringToDate(data); 581 //} 582 if ($this.is(":checkbox")) { 583 if (data == "1") { 584 $this.prop("checked", true); 585 } 586 } else if ($this.is(":button") && $this.hasClass("color-picker")) { 587 $this.data("color", data); 588 } 589 else if ($this.is("select")) { 590 $this.val(data); 591 } 592 else if ($this.is(":file")) { 593 594 } 595 else { 596 if (data.constructor.name == 'Number') { 597 $this.val(formatMoney(data, '')); 598 } 599 else { 600 $this.val(data); 601 } 602 } 603 //if ($this.is(":color")) { 604 // $this.css("background-color", fieldvar); 605 //} 606 } 607 //var valueCode = jsonData["CODE_ID"]; 608 //$('option').each(function () { 609 // var valueCode2 = $('option').val(); 610 // if (valueCode == valueCode2) { 611 // $(this).prop('selected', true); 612 // } 613 //}); 614 } 615 }); 616} 617 618 619function protectScreen(flg, immediately) { 620 if (!flg && typeof (immediately) == "undefined") { 621 setTimeout(function () { 622 protectScreen(false, true); 623 }, 200); 624 return; 625 } 626 627 var allField = $(":button, a"); 628 allField.each(function () { 629 var $this = $(this); 630 if (flg) { 631 if ($this.prop("disabled") || !$this.is(":visible")) { 632 return; 633 } 634 635 $this.prop("disabled", true); 636 $this.data("protectedFlg", true); 637 } else { 638 if (!$this.prop("disabled")) { 639 return; 640 } 641 if ($this.data("protectedFlg")) { 642 $this.prop("disabled", false); 643 $this.data("protectedFlg", false); 644 } 645 } 646 }); 647 648 649 // sortable protect 650 var allSortTable = $(".ui-sortable"); 651 allSortTable.each(function () { 652 var $this = $(this); 653 var disabled = $this.sortable("option", "disabled"); 654 if (flg) { 655 656 if (disabled) { 657 return; 658 } 659 660 $this.sortable("disable"); 661 $this.data("protectedFlg", true); 662 } else { 663 if (!disabled) { 664 return; 665 } 666 if ($this.data("protectedFlg")) { 667 $this.sortable("enable"); 668 $this.data("protectedFlg", false); 669 } 670 } 671 }); 672} 673 674function ConvertStringToCode(string) { 675 var subCurrentObj = string.replace(/\/+Date\(([\d+-]+)\)\/+/, '$1'); 676 var currentConvertObj = new Date(parseInt(subCurrentObj)); 677 var vYear = currentConvertObj.getFullYear(); 678 679 var vMonth = currentConvertObj.getDate(); 680 vMonth = leftPad(vMonth, "0", 2); 681 682 var vDay = currentConvertObj.getMonth() + 1; 683 vDay = leftPad(vDay, "0", 2); 684 685 var vHH = currentConvertObj.getHours(); 686 vHH = leftPad(vHH, "0", 2); 687 688 var vMM = currentConvertObj.getMinutes(); 689 vMM = leftPad(vMM, "0", 2); 690 691 var vSS = currentConvertObj.getSeconds(); 692 vSS = leftPad(vSS, "0", 2); 693 694 var currentObj = vYear + vMonth + vDay; 695 696 return currentObj; 697} 698 699function ConvertStringToDate(string) { 700 var subCurrentObj = string.replace(/\/+Date\(([\d+-]+)\)\/+/, '$1'); 701 var currentConvertObj = new Date(parseInt(subCurrentObj)); 702 var vYear = currentConvertObj.getFullYear(); 703 704 var vMonth = currentConvertObj.getDate(); 705 vMonth = leftPad(vMonth, "0", 2); 706 707 var vDay = currentConvertObj.getMonth() + 1; 708 vDay = leftPad(vDay, "0", 2); 709 710 var vHH = currentConvertObj.getHours(); 711 vHH = leftPad(vHH, "0", 2); 712 713 var vMM = currentConvertObj.getMinutes(); 714 vMM = leftPad(vMM, "0", 2); 715 716 var vSS = currentConvertObj.getSeconds(); 717 vSS = leftPad(vSS, "0", 2); 718 719 var currentObj = vDay + "/" + vMonth + "/" + vYear; 720 721 return currentObj; 722} 723 724function ConvertStringToDateFormatDDMMYYYY(string) { 725 var subCurrentObj = string.replace(/\/+Date\(([\d+-]+)\)\/+/, '$1'); 726 var currentConvertObj = new Date(parseInt(subCurrentObj)); 727 var vYear = currentConvertObj.getFullYear(); 728 729 var vDay = currentConvertObj.getDate(); 730 vDay = leftPad(vDay, "0", 2); 731 732 var vMonth = currentConvertObj.getMonth() + 1; 733 vMonth = leftPad(vMonth, "0", 2); 734 735 var vHH = currentConvertObj.getHours(); 736 vHH = leftPad(vHH, "0", 2); 737 738 var vMM = currentConvertObj.getMinutes(); 739 vMM = leftPad(vMM, "0", 2); 740 741 var vSS = currentConvertObj.getSeconds(); 742 vSS = leftPad(vSS, "0", 2); 743 744 var currentObj = vDay + "/" + vMonth + "/" + vYear; 745 746 return currentObj; 747} 748 749function ConvertStringToDateFormatDDMMYYYYHHMM(string) { 750 var subCurrentObj = string.replace(/\/+Date\(([\d+-]+)\)\/+/, '$1'); 751 var currentConvertObj = new Date(parseInt(subCurrentObj)); 752 var vYear = currentConvertObj.getFullYear(); 753 754 var vDay = currentConvertObj.getDate(); 755 vDay = leftPad(vDay, "0", 2); 756 757 var vMonth = currentConvertObj.getMonth() + 1; 758 vMonth = leftPad(vMonth, "0", 2); 759 760 var vHH = currentConvertObj.getHours(); 761 vHH = leftPad(vHH, "0", 2); 762 763 var vMM = currentConvertObj.getMinutes(); 764 vMM = leftPad(vMM, "0", 2); 765 766 var vSS = currentConvertObj.getSeconds(); 767 vSS = leftPad(vSS, "0", 2); 768 769 var currentObj = vDay + "/" + vMonth + "/" + vYear + " " + vHH + ":" + vMM;
770 771 return currentObj; 772} 773 774function generatorId() { 775 return "generated" + (Math.round(Math.random() * 100000000000)); 776 777} 778 779function leftPad(str, char, length) { 780 return Array(length - String(str).length + 1).join(char || '0') + str; 781} 782 783if (!String.prototype.format) { 784 String.prototype.format = function () { 785 var args = arguments; 786 return this.replace(/{(\d+)}/g, function (match, number) { 787 return typeof args[number] != 'undefined' 788 ? args[number] 789 : match 790 ; 791 }); 792 }; 793} 794 795jQuery(document).ready(function ($) { 796 ////Datepicker 797 //$('.datepicker').datepicker({ 798 // language: "ja", 799 // format: "yyyyå¹´mmæddæ¥", 800 // orientation: "bottom", 801 // autoclose: true, 802 // useCurrent: false, 803 //}); 804 805 //$('.date').click(function () { 806 // var input = $(this).find('input'); 807 // input.focus(); 808 // if (input.is(':focus') == true) { 809 // if (input.val() == '') { 810 // input.parent().datepicker("setDate", null); 811 812 // } 813 // else { 814 // input.parent().datepicker("setDate", input.val()); 815 // } 816 // } 817 818 // $('.datepicker-dropdown').removeClass("datepicker-orient-top"); 819 // $('.datepicker-dropdown').addClass("datepicker-orient-bottom"); 820 // $('.datepicker-dropdown').css('margin-top', '30px'); 821 822 // if ($(document).height() > $(window).height()) { 823 // $('.datepicker-dropdown').addClass("datepicker-orient-top"); 824 // $('.datepicker-dropdown').removeClass("datepicker-orient-bottom"); 825 // $('.datepicker-dropdown').css('margin-top', '-265px'); 826 // } 827 //}); 828 829 ////Prevent paste char 2 bytes 830 //$(".checkpaste").on('input', function () { 831 // var res = ''; 832 // var max = 255; 833 // var str = $(this).val(); 834 // var bytes = new Array(str.length); 835 // for (var i = 0; i < str.length; ++i) { 836 // if (str.charCodeAt(i) <= max) { 837 // res += str.charAt(i); 838 // } 839 // } 840 // $(this).val(res); 841 //}); 842 843 //$('.checkNumberKey').on('input', function (e) { 844 // var value = $(this).val(); 845 // var res = ''; 846 // for (var i = 0; i < value.length; i++) { 847 // var charCode = ($(this).val()).charAt(i); 848 // var n = Number(charCode); 849 // if (!isNaN(n)) { 850 // res += n; 851 // } 852 // } 853 // $(this).val(res); 854 //}); 855 856 ////ã¹ã ã¼ãºã¹ã¯ãã¼ã« 857 //$('.onTop').click(function () { 858 // // ã¹ã¯ãã¼ã«ã¹ãã¼ã 859 // var speed = 500; 860 // // ãããã¸ç§»åãã 861 // var position = 0 862 // // ãªã³ã¯å ã¸ã¹ã ã¼ãºã«ç§»åãã 863 // $("html, body").animate({ scrollTop: position }, speed, "swing"); 864 //}); 865 866 //$('.control-disabled').prop('disabled', true); 867 //$('.control-enabled').prop('disabled', true); 868 //$('.control-readonly').prop('readonly', true); 869 870 ////Set focus 871 //$('.control-focus').focus(); 872 873 //$('button:reset').click(function () { 874 // $('.control-focus').focus(); 875 //}) 876 877 //$('input:reset').click(function () { 878 // $('.control-focus').focus(); 879 //}) 880 881 //$('.currency').focus(function () { 882 // var val = $(this).val(); 883 // if (val != 0) { 884 // val = val.toString().replace(/,/g, ''); 885 // } 886 // else { 887 // val = ''; 888 // } 889 890 // $(this).val(val); 891 //}); 892 893 //$('.currency').focusout(function () { 894 // var val = $(this).val(); 895 // if (val == '' || val == undefined) { 896 // val = 0; 897 // } 898 // else { 899 // val = val.toString().replace(/(\d)(?=(\d\d\d)+(?!\d))/g, "$1,"); 900 // } 901 902 // $(this).val(val); 903 //}); 904 //// Fix witdh progress 905 //fixWitdhProgress(); 906 907 //// Handle checkbox 908 //$('#search-result').on('draw.dt', function () { 909 // var count = 0; 910 // if ($('#search-result input.select-checkbox').length > 0) { 911 // $("#checkAll").prop("disabled", false); 912 // } else { 913 // $("#checkAll").prop("disabled", true); 914 // } 915 916 // $('#search-result input.select-checkbox').each(function () { 917 // if ($(this).is(':checked') == true) { 918 // count++; 919 // } 920 // });
921 922 // if (count == $('#search-result input.select-checkbox').length && count > 0) { 923 // $('#checkAll').prop('checked', true); 924 // } 925 // else { 926 // $('#checkAll').prop('checked', false); 927 // } 928 // $('.dataTables_scrollBody').css('min-height', $('#search-result').attr('datatable-height') + 'px'); 929 //}); 930 931 //$('textarea[ismaxrows=true]').on('keypress', function (event) { 932 // var textarea = $(this), 933 // numberOfLines = (textarea.val().match(/\n/g) || []).length + 1, 934 // maxRows = parseInt(textarea.attr('rows')); 935 936 // if (event.which === 13 && numberOfLines === maxRows) { 937 // return false; 938 // } 939 //}); 940}); 941 942////Datepicker 943//; (function ($) { 944// $.fn.datepicker.dates['ja'] = { 945// days: ["æ¥æ", "ææ", "ç«æ", "æ°´æ", "æ¨æ", "éæ", "åæ"], 946// daysShort: ["æ¥", "æ", "ç«", "æ°´", "æ¨", "é", "å"], 947// daysMin: ["æ¥", "æ", "ç«", "æ°´", "æ¨", "é", "å"], 948// months: ["1æ", "2æ", "3æ", "4æ", "5æ", "6æ", "7æ", "8æ", "9æ", "10æ", "11æ", "12æ"], 949// monthsShort: ["1æ", "2æ", "3æ", "4æ", "5æ", "6æ", "7æ", "8æ", "9æ", "10æ", "11æ", "12æ"], 950// today: "仿¥", 951// format: "yyyyå¹´mmæddæ¥", 952// titleFormat: "yyyyå¹´mmæ", 953// clear: "ã¯ãªã¢" 954// }; 955//}(jQuery)); 956 957//TO DO Bao Pagination By dataTable 958function dataTable(page_length) { 959 var patt = new RegExp("^(([0-9]+)(,{0,1})([0-9]+))+$"); 960 var test = patt.test(page_length); 961 var KeyPaging = []; 962 var ValuePaging = []; 963 var Menu = []; 964 if (test == true) { 965 var len = page_length.split(','); 966 for (var i = 0; i < len.length; i++) { 967 KeyPaging.push(parseInt(len[i])); 968 } 969 KeyPaging.push(-1); 970 ValuePaging = page_length.split(','); 971 ValuePaging.push("å ¨ã¦"); 972 Menu.push(KeyPaging); 973 Menu.push(ValuePaging); 974 } 975 else { 976 Menu = [[10, 20, 50, 100, -1], [10, 20, 50, 100, "å ¨ã¦"]]; 977 } 978 979 var $dataTable = $('#search-result'); 980 981 function retren(len) { 982 return function (data, type, row) { 983 return type === 'display' && data.length > len ? data.substr(0, len) + 'â¦' : data; 984 } 985 986 } 987 988 var groupcol = $dataTable.find('colgroup'); 989 var col = []; 990 groupcol.find('col').each(function () { 991 col.push({ "width": $(this).attr('value') }); 992 }); 993 994 var options = { 995 info: true, 996 paging: true, 997 ordering: false, 998 searching: false, 999 processing: false, 1000 scrollY: $('#search-result').attr('dt-fixed-height') + 'px', 1001 scrollX: true, 1002 lengthMenu: Menu, 1003 pageLength: KeyPaging[0], 1004 columns: col, 1005 language: { 1006 emptyTable: 'ãã¼ã¿ãããã¾ãã', 1007 zeroRecords: 'æ¡ä»¶ã«ä¸è´ãããã¼ã¿ãè¦ã¤ããã¾ãã', 1008 info: '_TOTAL_ ä»¶ä¸ _START_ - _END_ ä»¶ç®ã表示 ', 1009 infoEmpty: '0ä»¶', 1010 infoFiltered: '(å ¨ MAX ä»¶)', 1011 lengthMenu: '_MENU_ ä»¶/ãã¼ã¸', 1012 processing: 'å¦çä¸â¦', 1013 search: 'æ¤ç´¢:', 1014 paginate: { 1015 first: 'æåã¸', 1016 previous: 'åã¸', 1017 next: '次ã¸', 1018 last: 'æå¾ã¸' 1019 }, 1020 aria: { 1021 sortAscending: 'æé ã«ä¸¦ã¹æ¿ã', 1022 sortDescending: 'éé ã«ä¸¦ã¹æ¿ã', 1023 paginate: { 1024 first: 'æåã®ãã¼ã¸ã«ç§»å', 1025 previous: 'åã®ãã¼ã¸ã«ç§»å', 1026 next: '次ã®ãã¼ã¸ã«ç§»å', 1027 last: 'æå¾ã®ãã¼ã¸ã«ç§»å' 1028 } 1029 } 1030 } 1031 }; 1032 1033 // é«ããåå¾ 1034 var dtHeight = $dataTable.data("dt-height"); 1035 if (typeof dtHeight === "number") { 1036 options.scrollY = dtHeight; 1037 } 1038 1039 // åºå®åæ°ãåå¾ 1040 var dtFixedCols = $dataTable.data("dt-fixed-cols"); 1041 if (typeof dtFixedCols === "number") { 1042 options.fixedColumns.leftColumns = dtFixedCols; 1043 } 1044 1045 // æ å ±ã表示ããããåå¾ 1046 var dtInfo = $dataTable.data("dt-info"); 1047 if (typeof dtInfo === "boolean") { 1048 options.info = dtInfo; 1049 } 1050 1051 // ãã¼ã¸ã³ã°ãè¡ãããåå¾ 1052 var dtPaging = $dataTable.data("dt-paging"); 1053 if (typeof dtPaging === "boolean") { 1054 options.paging = dtPaging; 1055 } 1056 1057 // 夿å®è¡ 1058 var table = $dataTable.DataTable(options); 1059 var info = $('#search-result_info').parent(); 1060 info.removeClass(); 1061 info.addClass('col-xs-4'); 1062 info.addClass('col-sm-4'); 1063 info.addClass('col-md-4'); 1064 1065 var paginate = $('#search-result_paginate').parent(); 1066 paginate.removeClass(); 1067 paginate.addClass('col-xs-6'); 1068 paginate.addClass('col-sm-6'); 1069 paginate.addClass('col-md-6'); 1070 1071 var length = $('#search-result_length').parent(); 1072 length.removeClass(); 1073 length.addClass('col-xs-2'); 1074 length.addClass('col-sm-2'); 1075 length.addClass('col-md-2'); 1076 length.css('margin-top', '3px'); 1077 length.insertBefore(info); 1078 1079 var paging = $('#search-result_length select'); 1080 paging.removeClass(); 1081 paging.addClass('fix-control'); 1082} 1083 1084//Reset Table 1085function resetTable() { 1086 if ($("#search-result tbody tr td").length > 1) { 1087 $("#search-result tbody tr").detach(); 1088 $("#search-result_length").hide(); 1089 $("#search-result_info").hide(); 1090 $("#search-result_paginate").hide(); 1091 var html = '<tr class="odd">
1091<td class="dataTables_empty" valign="top" colspan="100">ãã¼ã¿ãããã¾ãã</td></tr>'; 1092 $("#search-result tbody").append(html); 1093 } 1094} 1095 1096// table has data show page number 1097// table doesn't have data hide page number 1098function pageNumberDisplay() { 1099 var len = $('#search-result tbody tr td').length; 1100 if (len > 1) { 1101 $("#search-result_length").show(); 1102 $("#search-result_info").show(); 1103 $("#search-result_paginate").show(); 1104 } 1105 else { 1106 $("#search-result_length").hide(); 1107 $("#search-result_info").hide(); 1108 $("#search-result_paginate").hide(); 1109 } 1110} 1111 1112// Fix witdh label of progress 1113function fixWitdhProgress() { 1114 var progresses = $('.progress').each(function () { 1115 var path = $(this).find('.path'); 1116 path.width($(this).width() - 10); 1117 }); 1118 1119} 1120 1121function errorProcess(errorResponse) { 1122 protectScreen(false); 1123 console.log(JSON.stringify(errorResponse)); 1124 // window.location.href = jQuery.parseJSON(data.responseText).url; 1125 alert("Error, detail view console"); 1126} 1127 1128var executeProcessList = { 1129 queuce: [], 1130 completeCallback: null, 1131 errorCallback: null, 1132 beginExecute: function (completeFunc, errorFunc) { 1133 // console.log("executeProcessList"); 1134 this.completeCallback = completeFunc; 1135 this.errorCallback = errorFunc; 1136 1137 this.nextProcess(); 1138 }, 1139 endCurrentProccess: function () { 1140 this.queuce.shift(); 1141 this.nextProcess(); 1142 }, 1143 stopProcess: function (isComplete) { 1144 if (isComplete) { 1145 if (this.completeCallback != null) { 1146 this.completeCallback.apply(null); 1147 } 1148 } else { 1149 if (this.errorCallback != null) { 1150 this.errorCallback.apply(null); 1151 } 1152 } 1153 queuce = []; 1154 }, 1155 nextProcess: function () { 1156 if (this.queuce.length <= 0) { 1157 this.stopProcess(true); 1158 return; 1159 } 1160 1161 var currentFunction = this.queuce[0]; 1162 // console.log(currentFunction.toString()); 1163 if (typeof (currentFunction) == "function") { 1164 currentFunction.apply(null); 1165 return; 1166 } 1167 currentFunction[0].apply(null, Array.prototype.slice.call( 1168 currentFunction, 1)); 1169 } 1170}; 1171 1172function checkAllCheckbox(me, parentSelector, flg) { 1173 var div = $(me).parents(parentSelector); 1174 var allCheckBox = div.find(":checkbox"); 1175 allCheckBox.prop("checked", flg); 1176 allCheckBox.trigger("change"); 1177} 1178 1179function getFileNameInPath(yourstring) { 1180 var fileNameIndex = yourstring.lastIndexOf("/") + 1; 1181 var filename = yourstring.substr(fileNameIndex); 1182 return filename; 1183}
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.