/////////////////////////////////////이메일정규식 var regMail=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/; /////////////////////////////////////리로더 (GET/POST/#값을 모두 지운다.) var reloader=function(){ k.lr(document.location.pathname); } /////////////////////////////////////링크 (폼내에서 불필요한 서밋을 막기 위해 사용된다.) var href=function(link){ k.lh(link); return false; } /////////////////////////////////////열수조절버튼 var rowsControl=function(id,formId,size){ $('#'+id+' button').first().text(size+'줄보기');//현재 열값을 표시 $('#'+id+' a').click(function(){ $('#'+formId+' input[name="page"]').val('1');//1페이지로 $('#'+formId+' input[name="rows"]').val(k.es($(this).text()));//클릭한글자의 숫자를 열값으로 $('#'+formId).submit(); return false; }); } /////////////////////////////////////페이지버튼 var pagerControl=function(id,formId,page,lastPageNum,pageStart,pageEnd){ if(lastPageNum<2){ $('#'+id).hide(); } else if(page>lastPageNum && page>1 && lastPageNum){ $('#'+formId+' input[name="page"]').val(lastPageNum); $('#'+formId).submit(); return; } else{ $('.pagination li').each(function(){ var pageNum=$(this).children('a').text(); ///////// if(pageNum==page) $(this).addClass('active').css({'font-weight':'bold'}); else $(this).removeClass('active'); ///////// if(pageNum==1) $('.pagination li').first().next().addClass('disabled'); if(pageNum==lastPageNum) $('.pagination li').last().prev().addClass('disabled'); ///////// var pageLink=0; if(pageNum=='<') pageLink=pageStart-1; else if(pageNum=='>') pageLink=pageEnd+1; else if(pageNum=='<<') pageLink=1; else if(pageNum=='>>') pageLink=lastPageNum; else pageLink=pageNum; ///////// if(pageLink!=0 && pageLink<=lastPageNum){ $(this).children('a') .attr('title',pageLink+' page') .click(function(){ $('#'+formId+' input[name="page"]').val(pageLink); $('#'+formId).submit(); return false; }); } }); ///////// if(page==1) $('.pagination li').first().addClass('disabled'); else if(page==lastPageNum) $('.pagination li').last().addClass('disabled'); } } ///////////////////////////////////// function str_pad(input, pad_length, pad_string, pad_type) { // discuss at: http://phpjs.org/functions/str_pad/ // original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net) // improved by: Michael White (http://getsprink.com) // input by: Marco van Oort // bugfixed by: Brett Zamir (http://brett-zamir.me) // example 1: str_pad('Kevin van Zonneveld', 30, '-=', 'STR_PAD_LEFT'); // returns 1: '-=-=-=-=-=-Kevin van Zonneveld' // example 2: str_pad('Kevin van Zonneveld', 30, '-', 'STR_PAD_BOTH'); // returns 2: '------Kevin van Zonneveld-----' var half = '', pad_to_go; var str_pad_repeater = function(s, len) { var collect = '', i; while (collect.length < len) { collect += s; } collect = collect.substr(0, len); return collect; }; input += ''; pad_string = pad_string !== undefined ? pad_string : ' '; if (pad_type !== 'STR_PAD_LEFT' && pad_type !== 'STR_PAD_RIGHT' && pad_type !== 'STR_PAD_BOTH') { pad_type = 'STR_PAD_RIGHT'; } if ((pad_to_go = pad_length - input.length) > 0) { if (pad_type === 'STR_PAD_LEFT') { input = str_pad_repeater(pad_string, pad_to_go) + input; } else if (pad_type === 'STR_PAD_RIGHT') { input = input + str_pad_repeater(pad_string, pad_to_go); } else if (pad_type === 'STR_PAD_BOTH') { half = str_pad_repeater(pad_string, Math.ceil(pad_to_go / 2)); input = half + input + half; input = input.substr(0, pad_length); } } return input; } /////////////////////////////////////유닉스시간 var timestamp=function(){ return new Date().getTime() / 1000; } /////////////////////////////////////현재시간 var timeView=function(){ //http://fillin.tistory.com/88 var now=new Date(); var callTime= now.getFullYear()+'-'+ str_pad(now.getMonth()+1,2,'0','STR_PAD_LEFT')+'-'+ str_pad(now.getDate(),2,'0','STR_PAD_LEFT')+' '+ str_pad(now.getHours(),2,'0','STR_PAD_LEFT')+':'+ str_pad(now.getMinutes(),2,'0','STR_PAD_LEFT')+':'+ str_pad(now.getSeconds(),2,'0','STR_PAD_LEFT')+':'+ str_pad(Math.round(now.getMilliseconds()),3,'0','STR_PAD_LEFT') ; return callTime; } /////////////////////////////////////숫자형필드제한 $('input[type="number"]').blur(function(){ $(this).val(k.es($(this).val())); }); /////////////////////////////////////미완성링크제한 var nonLinkBlocker=function(){ $('a[href*="#.."],a[href=""]') .css({ 'color':'gray' ,'text-decoration':'underline' //,'cursor':'default' }) .off() .click(function(){ alert('작업중.'); return false; }) ; } /////////////////////////////////////이미지미리보기 var readImgPath=function(input,id){ if(input.files && input.files[0]){ var reader=new FileReader(); var file=''; reader.onload=function(e){ $('#'+id).attr('src',e.target.result); } reader.readAsDataURL(input.files[0]); var filePaths=input.value.split('fakepath\\'); return filePaths[1]; } /* $('#fileInput').change(function(){ var imgName=readImgPath(this,'preview'); }); http://start0.tistory.com/59 */ } /////////////////////////////////////숫자형필드제한 var changeInt=function(obj){ var changer=function(obj){ var thisVal=Number(obj.val()); if(thisVal<0) thisVal=0; obj.val(thisVal); } obj .focus(function(){changer($(this));}) .change(function(){changer($(this));}) ; } /////////////////////////////////////파일추가 var addFileInputBtn=function(){ $('.addFileInput-btn') .css({'cursor':'pointer'}) .click(function(){ $(this).before('\n'); $(this).prev().slideDown(); }) ; } /////////////////////////////////////메뉴활성화 var menuPointer=function(){ var pather=document.location.pathname.split('?'); var pather=pather[0].split('/'); var pathN=pather.length; var realPath='/'+pather[pathN-2]+'/'+pather[pathN-1]; var realFile=pather[pathN-1]; var thisChilds; if(realFile!='' && realFile!='index.htm'){ $('#menuNav li a').each(function(){ if($(this).attr('href').indexOf(realPath)>-1){ $(this).parent().addClass('active'); $(this).parent().parent().parent().addClass('active'); thisChilds='
'; } }); $('.page-heading h2').after(thisChilds); $('ol.breadcrumb li a').each(function(){ if($(this).attr('href').indexOf(realPath)>-1){ $(this).parent().css({'font-weight':'bold','color':'orange'}); } else{ $(this).parent().css({'font-weight':'normal'}); } }); } } /////////////////////////////////////i-check초기화 var icheckLoad=function(){ $('.i-checks').iCheck({ checkboxClass: 'icheckbox_square-green', radioClass: 'iradio_square-green', }); } /////////////////////////////////////배송상태 배지색상 var trBtn=function(){ $('.trBtn').css({'font-weight':'bold'}).each(function(){ var flag=$(this).find('.btn-name').text(); if(flag=='출력') var cColor='success'; else if(flag=='발송') var cColor='primary'; else var cColor='info'; $(this).addClass('btn-'+cColor); }); } /////////////////////////////////////송장번호액션 var trNumMaker=function(){ $('.trNum').off().css({'cursor':'pointer'}).click(function(){ var tbNo=$(this).data('tbno'); var trNum=$(this).data('trnum'); if(tbNo && trNum){ k.al('배송조회\n택배회사('+tbNo+') : '+trNum); window.open('http://www.hlc.co.kr/hydex/jsp/tracking/trackingViewCus.jsp?InvNo=223717209332'); } else alert('배송조회를 할 수 없는 상태입니다.'); }); } /////////////////////////////////////세션유지 var longSession=function(sec){ sec=sec||60; setInterval(function(){ $.ajax({ type:'GET',dataType:'json',url:'../js/ajax.htm', data:'cmd=longSession&temp='+timestamp(), success:function(rs){ //alert('longSession'); } }); },1000*sec); } /////////////////////////////////////기본로드 var dLoad=function(){ menuPointer(); nonLinkBlocker(); changeInt($('input[type="number"]')); addFileInputBtn(); icheckLoad(); trNumMaker(); longSession(); //trBtn(); } var dLoadNoneIcheck=function(){ menuPointer(); nonLinkBlocker(); changeInt($('input[type="number"]')); addFileInputBtn(); trNumMaker(); longSession(); //icheckLoad(); //trBtn(); } /////////////////////////////////////태그제거 function strip_tags(input, allowed) { allowed = (((allowed || "") + "").toLowerCase().match(/<[a-z][a-z0-9]*>/g) || []).join(''); // making sure the allowed arg is a string containing only tags in lowercase (