
Event.observe(window,'load',function(){realTimeCheck();});var FQDN='http://www.teamproject.co.kr';var FQDNS='https://www.teamproject.co.kr';function realTimeCheck()
{window.setTimeout(realTimeCheck,10000);getChatInvite();memoViewPopup();logOnOffCheck();}
function logOnOffCheck()
{new Ajax.Request('/comm/logOnOffCheck.ajax.tps',{parameters:{},onSuccess:function(obj){}});}
function getChatInvite()
{new Ajax.Request('/chatting/chatInviteChk.ajax.tps',{onSuccess:function(obj){if(obj.responseText!='0'){eval("var jobj = "+obj.responseText);if(jobj['type']=='1'){var ans=window.confirm(jobj['name']+'님이 채팅에 초대하였습니다.\n수락하시겠습니까?');var type='';if(ans){win_open('/chatting/chatWindow.tps?cSeq='+jobj['chat_seq'],'chat'+jobj['chat_seq'],'700','700','no','no','no','yes');type='accept';}else{type='refuse';}
new Ajax.Request('/chatting/chatInviteDel.ajax.post.tps',{parameters:{iSeq:jobj['seq'],cSeq:jobj['chat_seq'],mbSeq1:jobj['mb_seq'],type:type}});}}}});}
function inviteChat(mbSeq2,name2)
{var ans=window.confirm(name2+'님을 대화에 초대하시겠습니까?');if(ans){new Ajax.Request('/chatting/makeChatRoom.ajax.post.tps',{parameters:{mbSeq2:mbSeq2},onSuccess:function(obj){if(obj.responseText!='0'){eval("var jobj = "+obj.responseText);win_open('/chatting/chatWindow.tps?cSeq='+jobj['cSeq']+'&makeFlg=1','chat'+jobj['cSeq'],'700','700','no','no','no','yes');}}});}}
function returnMsg(objId,msg,focusId)
{$(objId).update(msg);if(focusId)
$(focusId).focus();}
function selectDisplay(type)
{if(type=='show')
type='';else
type='hidden';$A($$('select')).each(function(_selId){_selId.style.visibility=type;});}
function loadMiniInfo(event,mb_seq,selHideFlg)
{if(mb_seq=='1')
return false;var _divId="memberInfoMiniPopup";var _divDisplay=new DivDisplay(_divId);var _url="/comm/mbrMiniInfo.ajax.tps";new Ajax.Updater(_divId,_url,{parameters:{mb_seq:mb_seq}});_divDisplay.setPosition('','0','0',event);_divDisplay.show(false,selHideFlg);}
function showHelp(event,url,selHideFlg)
{var _divId="helpPopup";var _divDisplay=new DivDisplay(_divId);var _url="/comm/popHelp.ajax.tps";new Ajax.Updater(_divId,_url,{parameters:{url:url}});_divDisplay.setPosition('','-420','5',event);_divDisplay.moveStart();_divDisplay.show(false,selHideFlg);}
function showSubMenu(type,x,y,pj_seq,etcInfo)
{if(!type)
return false;var _divId=type+'Div';if($(_divId).style.display=='none'){switch(type){case'report':$('topReportBtn').src='/images/project/button/gnb_report_on.gif';break;case'setting':$('topSettingBtn').src='/images/project/button/gnb_set_on.gif';break;}
var _divDisplay=new DivDisplay(_divId);var _url='/comm/subMenu.ajax.tps';new Ajax.Request(_url,{parameters:{type:type,pj_seq:pj_seq,etcInfo:etcInfo},onSuccess:function(obj){if(obj.responseText=='not_login'){document.location.href=FQDNS+'/member/login';return false;}else{_divDisplay.setMessage(obj.responseText);}}});_divDisplay.show();_divDisplay.div.focus();}else{$(_divId).update('');$(_divId).hide();}}
function closeSubMenu(type)
{if(!type)
return false;var _divId=type+'Div';$(_divId).hide();switch(type){case'report':$('topReportBtn').src='/images/project/button/gnb_report.gif';break;case'setting':$('topSettingBtn').src='/images/project/button/gnb_set.gif';break;}}
function addAdrBookMbr(type,mb_seq,gr_seq)
{if(!mb_seq)
return false;var _divDisplay=new DivDisplay('dlg_msg');_divDisplay.setMessage('');var _url='/dashboard/adrBook/addAdrBookMbr.ajax.tps';new Ajax.Request(_url,{parameters:{type:type,mb_seq:mb_seq,gr_seq:gr_seq},onSuccess:function(obj){switch(obj.responseText){case'SUCCESS':popMsg('주소록에 추가하기','선택회원을 주소록에 추가하였습니다.<div class="center" style="padding-top:5px;">주소록으로 이동하시겠습니까?</div>','',"closeDiv('href', '/dashboard/adrBook');");break;default:if(type=='load')
_divDisplay.setMessage(obj.responseText);else
popMsg('주소록에 추가하기',obj.responseText);break;}}});if(type=='load')
_divDisplay.setPosition('center');_divDisplay.moveStart();_divDisplay.show(true,true);}
function win_open(filename,win_name,width,height,status,scroll,mnbar,resizable)
{if(!filename||!width||!height)
return false;if(!status)status='no';if(!scroll)scroll='no';if(!mnbar)mnbar='no';if(!resizable)resizable='no';var _option='width='+width+',height='+height+',statusbar='+status+',scrollbars='+scroll+',menubar='+mnbar+',history=yes,resizable='+resizable;window.open(filename,win_name,_option).focus();}
function inkCharge(email)
{if(email=='guest@agentsoft.co.kr'){alert('guest@agentsoft.co.kr로는 충전이 불가능합니다.');return false;}else{win_open('/pay/charge.tps','charge','520','620','no','no','no');}}
function divsHide(divIds)
{if(!divIds)
return false;var _divList=divIds.split(',');_divList.each(function(_tmp){$(_tmp.strip()).hide();});}
function footerEmailDeny(event)
{var _divDisplay=new DivDisplay('emailDeny');_divDisplay.setPosition('','-150','-180',event);_divDisplay.moveStart();_divDisplay.show(false);}
function helpModify()
{$('helpView').hide();$('helpWrite').show();}
function helpView()
{$('helpWrite').hide();$('helpView').show();}
function helpFromChk()
{var con=FCKeditorAPI.Instances.helpCon.GetHTML();if($F('url')==''){alert('URL을 입력하세요.');$('url').focus();}else if($F('urlComment')==''){alert('URL 상세설명을 입력하세요.');$('urlComment').focus();}else if(con==''||con=='<br />'){alert('내용을 입력하세요.');FCKeditorAPI.Instances.helpCon.Focus();}else
helpSubmit();}
function helpSubmit(){var con=FCKeditorAPI.Instances.helpCon.GetHTML();new Ajax.Request('/comm/popHelpWrite.ajax.post.tps',{parameters:{mbSeq:$F('mbSeq'),hSeq:$F('hSeq'),category:$F('category'),url:$F('url'),urlComment:$F('urlComment'),con:con},onSuccess:function(obj){if(obj.responseText=='SUCCESS'){alert('도움말을 등록하였습니다.');}
else{alert('도움말 등록에 실패했습니다.');}}});closeDiv('','','','helpPopup');}
function helpGoPage(page,cnt){if(page=='prev'||page=='next'){var now=$F('helpPage');if(page=='prev'&&now==0)
alert('이전 페이지가 없습니다.');else if(page=='prev'&&now!=0){$('con'+now).hide();now--;$('con'+now).show();}
if(page=='next'&&now==(cnt-1))
alert('다음 페이지가 없습니다.');else if(page=='next'&&now!=(cnt-1)){$('con'+now).hide();now++;$('con'+now).show();}
$('helpPage').value=now;}else{for(var i=0;i<cnt;i++)
$('con'+i).hide();$('con'+page).show();$('helpPage').value=page;}}
function helpDel(){var ans=window.confirm("해당 도움말을 삭제 하시겠습니까?");if(ans){new Ajax.Request('/comm/popHelpDel.ajax.post.tps',{parameters:{hSeq:$F('hSeq')},onSuccess:function(obj){if(obj.responseText=='SUCCESS')
alert('도움말을 삭제하였습니다.');else
alert('도움말 삭제에 실패했습니다.');}});closeDiv('','','','helpPopup');}}
function helpPreview(){var con=FCKeditorAPI.Instances.helpCon.GetHTML();var re=/'/g;con=encodeURIComponent(con).replace(re,"`");window.open('/comm/popHelpPreview.tps?con='+con,'프로젝트정보','width=445,height=410,toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=yes,left=180,top=250');}
function allSelect(chkId,objName)
{var _selectFlg=false;if($(chkId).checked)
_selectFlg=true;var _divList=new Array();_divList=document.getElementsByName(objName);$A(_divList).each(function(_tmp){if(_selectFlg)
_tmp.checked=true;else
_tmp.checked=false;});}
function memoViewPopup(viewFlag)
{var _divDisplay=new DivDisplay('memoPopup');new Ajax.Request('/comm/popMemoView.ajax.tps',{parameters:{viewFlag:viewFlag},onSuccess:function(obj){if(obj.responseText!='NONE'){eval("var _result = "+obj.responseText);_divDisplay.setMessage(_result['output']);if(viewFlag||_result['memo_view']=='ON'){_divDisplay.stopSlide();_divDisplay.setPosition('center');_divDisplay.show();_divDisplay.div.setStyle({width:$('memoView').getWidth()+'px',height:$('memoView').getHeight()+'px'});_divDisplay.moveStart();}else{var _x=(document.viewport.getWidth()+document.documentElement.scrollLeft)-(_divDisplay.div.getWidth()+30);var _y=(document.viewport.getHeight()+document.documentElement.scrollTop)-(_divDisplay.div.getHeight()+30);_divDisplay.setPosition('',_x,_y);_divDisplay.slide(100,3000,40);}}}});}
function newMemoDelete(seq)
{if(!seq||!confirm('쪽지를 삭제하시겠습니까?'))
return false;closeDiv('','','','memoPopup');var _url='/dashboard/message/memoDelete.ajax.tps';new Ajax.Request(_url,{parameters:{type:'one',seq:seq},onSuccess:function(obj){if(obj.responseText=='SUCCESS')
popMsg('쪽지삭제','쪽지를 삭제하였습니다.',"closeDiv();");else
popMsg('쪽지삭제',obj.responseText,"closeDiv();");}});}
function memoConfirm(seq)
{if(!seq)
return false;if($('memoDirectView').checked)
memoOnOff('0');else
memoOnOff('1');new Ajax.Request('/comm/popMemoView.ajax.post.tps',{parameters:{seq:seq},onSuccess:function(obj){closeDiv('','','','memoPopup');}});}
function memoOnOff(viewFlag)
{new Ajax.Request('/comm/popOnOff.ajax.post.tps',{parameters:{type:'memo_view',alimFlag:viewFlag},onSuccess:function(obj){}});}
function memoSend()
{var _dlgMsg=new DivDisplay('dlg_msg');var _url='/dashboard/message/memoSend.ajax.tps';new Ajax.Updater('dlg_msg',_url,{});_dlgMsg.setPosition('center');_dlgMsg.moveStart();_dlgMsg.show(true,true);}
function memoReply(receive_mb)
{var _dlgMsg=new DivDisplay('dlg_msg');var _url='/dashboard/message/memoSend.ajax.tps';new Ajax.Updater('dlg_msg',_url,{parameters:{receive_mb:receive_mb}});_dlgMsg.setPosition('center');_dlgMsg.moveStart();_dlgMsg.show(true,true);}
function memoSubmit()
{var _contents=$F('contents').strip();if(!$('receive_mb_seq')||$F('receive_mb_seq').isNull()){alert('받는사람을 선택해 주세요.');return false;}else if(_contents.isNull()){alert('쪽지 내용을 입력해 주세요.');$('contents').focus();return false;}
var _url='/dashboard/message/memoSend.ajax.post.tps';new Ajax.Request(_url,{parameters:{receive_mb:$F('receive_mb_seq'),contents:_contents},onSuccess:function(obj){if(obj.responseText=='SUCCESS')
popMsg('쪽지','쪽지를 전송하였습니다.',"closeDiv();");else
popMsg('쪽지','쪽지전송에 실패하였습니다.',"closeDiv();");}});}
function strLengthCheck(objId,returnId,maxLength)
{if($F(objId).length>maxLength){alert('최대 '+maxLength+'자 입력가능합니다.');$(objId).value=$F(objId).substring(0,maxLength);}
var _msg='('+$F(objId).length+'/'+maxLength+'자)';returnMsg(returnId,_msg);}
function setCookie(cookieName,cookieValue,expireday)
{var todayDate=new Date();todayDate.setDate(todayDate.getDate()+expireday);document.cookie=cookieName+'='+escape(cookieValue)+'; path=/; domain=.teamproject.co.kr; expires='+todayDate.toGMTString()+';';}
function getCookie(cookieName)
{var cookie=document.cookie;var _prefix=cookieName+"=";var _begin=cookie.indexOf(_prefix);if(_begin>-1){var _end=cookie.indexOf(';',_begin);if(_end==-1)
_end=cookie.length;return unescape(cookie.substring(_begin+_prefix.length,_end));}else{return false;}}
Event.observe(window,'resize',bgLayerResize);Event.observe(document,'mouseup',moveDiv);Event.observe(document,'mousedown',moveDiv);Event.observe(document,'mousemove',moveDiv);var CLICKX;var CLICKY;var ISMOVING=false;var MOVEOK=false;var ISSLIDING=false;var FOOTDIV='FOOTER';var MSGDIV='dlg_msg';var BGDIVID='dialogbackgroundlayer';var DivDisplay=Class.create({initialize:function(objId){if(objId){MSGDIV=objId;this.div=$(objId);}else{this.div=$(MSGDIV);}
this.bgDiv=$(BGDIVID);this.left=this.div.offsetLeft;this.top=this.div.offsetTop;this.fullWidth=document.documentElement.scrollWidth;this.fullHeight=document.documentElement.scrollHeight;},slide:function(height,viewTime,speed,type){ISSLIDING=true;var _i=_tmpHeight=_wait=0;var _repeat=20;this.div.style.overflow='hidden';this.div.show();switch(type){case'show':this.div.style.height='0px';_showSlide();break;case'hide':_hideSlide();break;default:this.div.style.height='0px';_showSlide();_timeout=setTimeout(_hideSlide,viewTime);break;}
function _showSlide(){for(_i=0;_i<_repeat;_i++){_tmpHeight=(height/_repeat)*_i;setTimeout("$(MSGDIV).style.height='"+_tmpHeight+"px';",speed*_i);}
_wait=speed*_i;};function _hideSlide(){for(_i=0;_i<_repeat;_i++){_tmpHeight=height-((height/_repeat)*(_i+1));setTimeout("$(MSGDIV).style.height='"+_tmpHeight+"px';",_wait+(speed*_i));}
_wait+=speed*_i;setTimeout("$(MSGDIV).update('');$(MSGDIV).hide();",_wait);};},stopSlide:function(){if(ISSLIDING){ISSLIDING=false;this.div.style.overflow='';clearTimeout(_timeout);}},moveStart:function(){MOVEOK=true;},moveStop:function(){MOVEOK=false;},setDiv:function(objId){MSGDIV=objId;this.div=$(objId);},setPosition:function(type,x,y,event){switch(type){case"center":this.left=(document.viewport.getWidth()/2)+document.documentElement.scrollLeft-150;this.top=(document.viewport.getHeight()/2)+document.documentElement.scrollTop-150;break;case"fixcenter":this.left=(document.viewport.getWidth()/2)+document.documentElement.scrollLeft-150+x;this.top=(document.viewport.getHeight()/2)+document.documentElement.scrollTop-150+y;break;case"move":var _xy=Event.pointer(event);try{var _divW=this.div.getWidth();var _divH=this.div.getHeight();var _moveW=this.left+parseFloat(_xy['x']-x);var _moveH=this.top+parseFloat(_xy['y']-y);if(_moveW<0||_moveH<0||(this.fullWidth<(_moveW+_divW))||(this.fullHeight<(_moveH+_divH))){return false;}else if((x>=this.left&&x<=this.left+_divW)&&(y>=this.top&&y<=this.top+34)){this.left=_moveW;this.top=_moveH;}else{return false;}}catch(e){return false;};break;default:if(event){var _xy=Event.pointer(event);var _max=730;this.left=(_xy['x']+parseFloat(x))>_max?_max:_xy['x']+parseFloat(x);this.top=_xy['y']+parseFloat(y);}else{this.left=x;this.top=y;};break;}
this.div.setStyle({left:this.left+'px',top:this.top+'px'});return true;},setMessage:function(message){this.div.update(message);},show:function(bgFlg,selFlg,scrollToFlg){this.div.show();if(bgFlg)
this.bgLayerShow();if(selFlg)
selectDisplay('hide');if(scrollToFlg)
this.div.scrollTo();},hide:function(bgFlg,selFlg){this.div.update('');this.div.hide();if(!bgFlg)
this.bgLayerHide();selectDisplay('show');},bgLayerShow:function(){this.bgDiv.addClassName('bgClassName');this.bgDiv.setStyle({width:this.fullWidth+'px',height:this.fullHeight+'px'});this.bgDiv.show();},bgLayerHide:function(){this.bgDiv.removeClassName('bgClassName');this.bgDiv.hide();}});function bgLayerResize()
{if($(BGDIVID).style.display!='none'){var _sTop=document.body.scrollTop;var _sLeft=document.body.scrollLeft;var _scrollW=document.body.scrollWidth;var _scrollH=document.body.scrollHeight;var _clientW=document.body.clientWidth;var _clientH=document.body.clientHeight;var _width,_height=0;if(_scrollW>_clientW)
_width=_scrollW;else
_width=_clientW+_sLeft;if(_scrollH>_clientH)
_height=_scrollH;else
_height=_clientH+_sTop;$(BGDIVID).setStyle({width:_width+'px',height:_height+'px'});}}
function moveDiv(event)
{if(!MOVEOK||$(MSGDIV).style.display=='none')
return false;var _divDisplay=new DivDisplay(MSGDIV);var _xy=Event.pointer(event);switch(event.type){case'mousedown':ISMOVING=true;CLICKX=_xy['x'];CLICKY=_xy['y'];break;case'mouseup':ISMOVING=false;break;default:if(event.isLeftClick&&ISMOVING){if(_divDisplay.setPosition('move',CLICKX,CLICKY,event)){CLICKX=_xy['x'];CLICKY=_xy['y'];}}
break;}}
function closeDiv(action,val,selShowFlg,divId)
{if(!divId)
divId='dlg_msg';var _divDisplay=new DivDisplay(divId);_divDisplay.moveStop();if(selShowFlg)
_divDisplay.hide(false,true);else
_divDisplay.hide();switch(action){case'reload':document.location.reload();break;case'replace':document.location.replace(val);break;case'href':document.location.href=val;break;case'focus':$(val).focus();break;}}
function getObjPosition(type,obj)
{var _position;switch(type){case'top':if(obj.offsetParent==document.body)
_position=obj.offsetTop;else
_position=obj.offsetTop+getObjPosition(type,obj.offsetParent);break;case'left':if(obj.offsetParent==document.body)
_position=obj.offsetLeft;else
_position=obj.offsetLeft+getObjPosition(type,obj.offsetParent);break;}
return _position;}
function popMsg(title,msg,closeScript,actionScript,divLeft,divTop,selHideFlg,scrollToFlg)
{var _divDisplay=new DivDisplay('dlg_msg');_url="/comm/popMsg.ajax.tps";new Ajax.Updater('dlg_msg',_url,{parameters:{title:title,msg:msg,closeScript:closeScript,actionScript:actionScript}});if(divLeft&&divTop)
_divDisplay.setPosition('',divLeft,divTop);else
_divDisplay.setPosition('center');_divDisplay.moveStart();_divDisplay.show(true,selHideFlg,scrollToFlg);}
Event.observe(window,'load',function(){gnbMenuOnOff();leftMemberOnOff();});function gnbMenuOnOff(type)
{switch(type){case'open':setCookie('tps_gnb','open','7');break;case'close':setCookie('tps_gnb','close','7');break;default:type=getCookie('tps_gnb');break;}
$('topMenu').update('');$('topMenu').hide();if(type=='close'){$('menu_close').show();$('menu_open').hide();}else{$('menu_open').show();$('menu_close').hide();}}
function leftMemberOnOff(type)
{switch(type){case'open':setCookie('tps_left','open','7');break;case'close':setCookie('tps_left','close','7');break;default:type=getCookie('tps_left');break;}
if(type=='close'){$('teamMemberList').hide();$('memberOpen').hide();$('memberClose').show();}else{$('teamMemberList').show();$('memberOpen').show();$('memberClose').hide();}}
function showTopMenu(type)
{if(!type)
return false;var _divId='topMenu';var _popId='topMenu_'+type;var _divDisplay=new DivDisplay(_divId);if(($(_divId).style.display!='none')&&($F('topMenuType')==type)){_divDisplay.slide($(_divId).getHeight(),0,20,'hide');}else{$(_divId).update('');var _url='/comm/topMenu.ajax.tps';new Ajax.Request(_url,{parameters:{type:type,pj_seq:$F('pjSeq')},onSuccess:function(obj){eval("var _result = "+obj.responseText);_divDisplay.setMessage(_result['output']);_divDisplay.setPosition('',getObjPosition('left',$(_popId)),getObjPosition('top',$(_popId))+$(_popId).getHeight());_divDisplay.slide(_result['height'],0,20,'show');}});$('topMenuType').value=type;}}
function editPrjInfo(type,pj_seq,field)
{if(!type||!pj_seq||!field)
return false;if(type=='edit'){$(field).setStyle({background:'#f2fafc'});$(field).disabled=false;$(field).focus();}else{$(field).disabled=true;new Ajax.Request('/project/editPrjInfo.ajax.tps',{parameters:{type:type,pj_seq:pj_seq,field:field,chgVal:$F(field)},onSuccess:function(obj){if(obj.responseText=='NOPOWER'){alert('수정권한이 없습니다.');}else{$(field).setStyle({background:'#FFFFFF'});$(field).value=obj.responseText;}}});}}
function inkDonate(type,pj_seq)
{if(!pj_seq)
return false;if(type=='process'){var _donateInk=$F('donateInk').strip();var _mbrInk=$F('mbrInk').strip();if(_donateInk.isNull()||_donateInk==0){alert('기부할 금액을 입력해 주세요.');$('donateInk').select();return false;}else if(!_donateInk.isNum()){alert('금액은 숫자만 입력해 주세요.');$('donateInk').select();return false;}else if(parseInt(_mbrInk)<parseInt(_donateInk)){alert('기부가능금액을 초과하였습니다.');$('donateInk').select();return false;}else{if(!confirm('기부하시겠습니까?'))
return false;}}
var _divDisplay=new DivDisplay('dlg_msg');_divDisplay.setMessage('');var _url='/project/set/inkDonate.ajax.tps';new Ajax.Request(_url,{parameters:{type:type,pj_seq:pj_seq,donateInk:_donateInk},onSuccess:function(obj){switch(obj.responseText){case'FAIL':popMsg('잉크기부하기','잉크기부에 실패하였습니다.');break;case'SUCCESS':popMsg('잉크기부하기','기부하였습니다.');document.location.reload();break;default:_divDisplay.setMessage(obj.responseText);break;}}});if(type=='load')
_divDisplay.setPosition('center');_divDisplay.moveStart();_divDisplay.show(true,true);}
function projectDelete(type,pjSeq)
{if(!pjSeq)
return false;if(type=='post'){var _url="/project/prjLeave.ajax.tps";new Ajax.Request(_url,{parameters:{type:'delete',pjSeq:pjSeq},onSuccess:function(obj){if(obj.responseText=='SUCCESS')
popMsg('프로젝트 탈퇴신청','삭제되었습니다.','closeDiv(\'replace\', \'/dashboard/\');');else
popMsg('프로젝트 탈퇴신청','삭제처리중 오류가 발생하였습니다.');}});}else{var _divDisplay=new DivDisplay('dlg_msg');var _url="/project/prjLeave.ajax.tps";new Ajax.Updater('dlg_msg',_url,{parameters:{type:type,pjSeq:pjSeq}});_divDisplay.setPosition('center');_divDisplay.moveStart();_divDisplay.show(true);}}
function prjSearch(pjSeq)
{var _searchText=$F('searchText').strip();if(_searchText.isNull()){alert('검색어를 입력하세요.');$('searchText').focus();return false;}
_searchText=encodeURIComponent(_searchText);document.location.href="/"+$F('pjUrl')+"/search/"+_searchText;}
function leftCalBoxRenew(firstLoad,y,m,d)
{if(m==13){y++;m=1;}
else if(m==0){y--;m=12;}
new Ajax.Request('/project/schedule/leftCalBox.ajax.tps',{parameters:{pjSeq:$F('pjSeq'),year:y,month:m,day:d,firstLoad:firstLoad},onSuccess:function(obj){$('leftCalBox').update(obj.responseText);return false;}});}
function loadCalendar(target_id,type,event)
{var current_val=$F(target_id);var d=new Date();var year=d.getFullYear();var month=d.getMonth()+1;var day=d.getDate();if(current_val.length>0){var datas=current_val.split('-');year=eval(datas[0]);month=eval(datas[1]);day=eval(datas[2]);}
viewCalendar(target_id,year,month,day,type,event);}
function viewCalendar(id,y,m,d,type,event)
{var _divId,_divDisplay,_left,_top;if(type=='1'||type=='4')
_divId='subDiv';else
_divId='dlg_msg';if(m==13){y++;m=1;}
else if(m==0){y--;m=12;}
_divDisplay=new DivDisplay('dlg_msg');new Ajax.Request('/project/calendar.ajax.tps',{method:'get',parameters:{target_id:id,year:y,month:m,day:d,type:type},onComplete:function(transport){$(_divId).update(transport.responseText);},onFailure:function(){alert('다시 시도해 주세요.');}});if(type==1&&$(_divId).style.display=='none'){_left=_divDisplay.left+_divDisplay.div.getWidth();_top=_divDisplay.top;_divDisplay.setDiv(_divId);_divDisplay.setPosition('',_left,_top);_divDisplay.show(false,true);}else if(type==4){var _idx=$(id).cumulativeOffset().left-50;var _idy=$(id).cumulativeOffset().top+25;_divDisplay.setDiv(_divId);_divDisplay.setPosition('',_idx,_idy);_divDisplay.show(false,false);_divDisplay.moveStop();}else{if(_divDisplay.div.style.display=='none'||event){_element=Event.element(event).name;if(_element){_left=$(_element).cumulativeOffset().left;_top=$(_element).cumulativeOffset().top+25;_divDisplay.setPosition('',_left,_top);}else{_divDisplay.setPosition('','-30','10',event);}}
if(type==4){_divDisplay.show(false,false);}else{_divDisplay.show(false,true);_divDisplay.moveStart();}}}
function setThisDate(target_id,sel_date,type){$(target_id).value=sel_date;switch(target_id){case'sDate':if($F('sDate')&&$F('eDate')){if(!(dateCompare($F('sDate'),$F('eDate')))){$('eDate').value=$F('sDate');}}
break;case'eDate':if($F('sDate')&&$F('eDate')){if(!(dateCompare($F('sDate'),$F('eDate')))){$('sDate').value=$F('eDate');}}
break;}
var _divId='';switch(type){case'1':_divId='subDiv';break;case'3':if($F(target_id)<$F('prj_sDate')){alert('프로젝트 시작일이후 일자로 지정해주세요.');$(target_id).value='';return false;}else if($F(target_id)>$F('prj_eDate')){alert('프로젝트 종료일이전 일자로 지정해주세요.');$(target_id).value='';return false;}
break;case'4':_divId='subDiv';if($('period')){changePeriod();}
break;}
subDivClose(_divId);}
function subDivClose(divId)
{var _divDisplay;if(!divId||divId=='dlg_msg'){_divDisplay=new DivDisplay('subDiv');_divDisplay.moveStop();_divDisplay.hide();_divDisplay.setDiv('dlg_msg');_divDisplay.moveStop();_divDisplay.hide();}else{_divDisplay=new DivDisplay(divId);var bg=_divDisplay.bgDiv.style.display;_divDisplay.moveStop();_divDisplay.hide();_divDisplay.setDiv('dlg_msg');_divDisplay.moveStart();if(bg!='none'){_divDisplay.bgLayerShow();}}}
function moveCalendar(action,pjSeq,year,month)
{var target=$F('calendarType');if(action=='prevMonth'){month--;if(month==0){year--;month=12;}}else if(action=='nextMonth'){month++;if(month==13){year++;month=1;}}else if(action=='prevYear'){year--;}else if(action=='nextYear'){year++;}
if(target!='gantt'){if(action=='today')
location.href='/project/schedule/'+target+'.tps?pjSeq='+pjSeq;else
location.href='/project/schedule/'+target+'.tps?pjSeq='+pjSeq+'&year='+year+'&month='+month;}else{leftCalBoxRenew(1,year,month,0);}}
function getLastDay(y,m){if(m==2){if(y){if(((y%4==0)&&(y%100!=0))||(y%400==0)){return 29;}
else{return 28;}}
else{return 28;}}
else if(m==4||m==6||m==9||m==11){return 30;}
else{return 31;}}
function isNum(n){var p=/^[0-9]+$/;if(p.test(n)){return true;}}
function isDate(ymd){var y=ymd.substring(0,4);var m=ymd.substring(5,7);var d=ymd.substring(8,10);if(!(isNum(y)&&isNum(m)&&isNum(d))){alert("문자값이 입력 되었습니다");return false;}
if((m<1)||(m>12)){alert(m+"월의 입력이 잘못 되었습니다");date.value="";date.focus();return false;}
var lastDay=getLastDay(y,m);if((d<1)||(d>lastDay)){alert(m+"월의 일자는 1 - "+lastDay+"일 까지입니다.");date.value="";date.focus();return false;}
return true;}
function dateCompare(sDate,eDate,sTime,eTime){var sY=sDate.substring(0,4);var sM=sDate.substring(5,7);var sD=sDate.substring(8,10);var eY=eDate.substring(0,4);var eM=eDate.substring(5,7);var eD=eDate.substring(8,10);var a=new Date();var b=new Date();a.setFullYear(sY,sM,sD);b.setFullYear(eY,eM,eD);if(a>b){return false;}
return true;}
var tabNo=1;var workerOverlap=1;var frontTaskOverlap=1;var frontTaskCnt=0;Event.observe(window,'load',function(){if($('ganttSdate')){gotoToday();}});function viewType(type)
{if(type==1){$$('div.leftTime').invoke('show');$$('img.leftTime').invoke('show');$('calendarCon').hide();$('leftList').setStyle({'width':'697px'});$('taskList').setStyle({'width':'697px','overflowY':'scroll'});$$('div.tit1')[0].setStyle({'width':'492px'});$$('div.cell1').each(function(obj,index){obj.setStyle({'width':'480px'});});$('viewTypeBtn1').src='/images/project/button/btn_gantt_view_on1.gif';$('viewTypeBtn2').src='/images/project/button/btn_gantt_view_off2.gif';$('viewTypeBtn3').src='/images/project/button/btn_gantt_view_off3.gif';}else if(type==2){$$('div.leftTime').invoke('show');$$('img.leftTime').invoke('show');$('calendarCon').show();$('leftList').setStyle({'width':'366px'});$('taskList').setStyle({'width':'366px','overflowY':'hidden'});$$('div.tit1')[0].setStyle({'width':'178px'});$('weekCon').setStyle({'width':'313px'});$('calendarBox').setStyle({'width':'330px'});$$('div.cell1').each(function(obj,index){obj.setStyle({'width':'166px'});});$('viewTypeBtn1').src='/images/project/button/btn_gantt_view_off1.gif';$('viewTypeBtn2').src='/images/project/button/btn_gantt_view_on2.gif';$('viewTypeBtn3').src='/images/project/button/btn_gantt_view_off3.gif';}else if(type==3){$$('div.leftTime').invoke('hide');$$('img.leftTime').invoke('hide');$('calendarCon').show();$('leftList').setStyle({'width':'202px'});$('taskList').setStyle({'width':'202px','overflowY':'hidden'});$$('div.tit1')[0].setStyle({'width':'178px'});$$('div.cell1').each(function(obj,index){obj.setStyle({'width':'165px'});});$('weekCon').setStyle({'width':'477px'});$('calendarBox').setStyle({'width':'494px'});$('viewTypeBtn1').src='/images/project/button/btn_gantt_view_off1.gif';$('viewTypeBtn2').src='/images/project/button/btn_gantt_view_off2.gif';$('viewTypeBtn3').src='/images/project/button/btn_gantt_view_on3.gif';}}
function groupBtnRollover(no,action)
{if(action=='over'){$('Image'+no).hide();$('Image'+no+'_over').show();}else if(action=='out'){$('Image'+no+'_over').hide();$('Image'+no).show();}}
function taskAllCheck()
{if($('taskAllCheck').checked){$$('input.gantt_check').each(function(obj,index){obj.checked=true;});}else{$$('input.gantt_check').each(function(obj,index){obj.checked=false;});}}
function groupOut()
{if($F('managerFlg')){var _checkedSeq=new Array();var _checkedIndex=new Array();var _groupOutTask=new Array();var _parentIndex=0;var i,t;var _tmpSeq=0;var _tmpParent=0;var _tmpTaskHTML='';var _tmpTaskBarHTML='';var _freeParent=0;$$('input.gantt_check').each(function(obj,index){if(obj.checked){_checkedSeq.push(obj.value);_checkedIndex.push(index);}});var _checkedLength=_checkedSeq.length;for(i=0;i<_checkedLength;i++){_freeParent=0;$$('div#task_'+_groupSeq.indexOf(_checkedSeq[i])+' .gantt_check').each(function(obj,index){obj.checked=false;});if(_groupParent[_groupSeq.indexOf(_checkedSeq[i])]!=0&&_groupParent[_groupSeq.indexOf(_checkedSeq[i])]!='parent'){for(t=_groupSeq.indexOf(_checkedSeq[i]);t<_tasksCnt;t++){if(_groupParent[_groupSeq.indexOf(_checkedSeq[i])]==_groupParent[_groupSeq.indexOf(_checkedSeq[i])+1]){_tmpSeq=_groupSeq[t];_tmpParent=_groupParent[t];_tmpTaskHTML=$('task_'+t).innerHTML;_tmpTaskBarHTML=$('taskBar_'+t).innerHTML;_groupSeq[t]=_groupSeq[t+1];_groupParent[t]=_groupParent[t+1];$('task_'+t).update($('task_'+(t+1)).innerHTML);$('taskBar_'+t).update($('taskBar_'+(t+1)).innerHTML);_groupSeq[t+1]=_tmpSeq;_groupParent[t+1]=_tmpParent;$('task_'+(t+1)).update(_tmpTaskHTML);$('taskBar_'+(t+1)).update(_tmpTaskBarHTML);}else{break;}}
_parentIndex=_groupSeq.indexOf(_groupParent[_groupSeq.indexOf(_checkedSeq[i])]);if(_groupParent[_groupSeq.indexOf(_checkedSeq[i])-1]==_groupParent[_groupSeq.indexOf(_checkedSeq[i])]){$$('div#task_'+(_groupSeq.indexOf(_checkedSeq[i])-1)+' .group_child1').invoke('hide');$$('div#task_'+(_groupSeq.indexOf(_checkedSeq[i])-1)+' .group_child2').invoke('show');}
_freeParent=_groupParent[t];_groupParent[t]=0;$$('div#task_'+t+' .group_child1').invoke('hide');$$('div#task_'+t+' .group_child2').invoke('hide');if(_groupParent[_parentIndex+1]==0){_groupOutTask[i]='{"seq":'+_groupSeq[t]+',"parent":'+_freeParent+'}';_groupParent[_parentIndex]=0;$$('div#task_'+_parentIndex+' .group_parent').invoke('hide');}else{_groupOutTask[i]='{"seq":'+_groupSeq[t]+',"parent":0}';}}}
var _groupOutTaskJSON=_groupOutTask.toJSON();new Ajax.Request('/project/schedule/groupOutTask.ajax.post.tps',{parameters:{groupOutTask:_groupOutTaskJSON},onSuccess:function(obj){if(obj.responseText!='SUCCESS'){alert(obj.responseText);alert('오류가 발생하였습니다.\n관리자에게 문의하시기 바랍니다.');}}});}}
function groupIn()
{if($F('managerFlg')){var _checkedSeq=new Array();var _checkedIndex=new Array();var _groupInTask=new Array();var _recentParent=0;var _distance=0;var i,t;var _tmpSeq=0;var _tmpParent=0;var _tmpTaskHTML='';var _tmpTaskBarHTML='';var _groupInPossible=true;var _groupInAddPossible=false;$$('input.gantt_check').each(function(obj,index){if(obj.checked){_checkedSeq.push(obj.value);_checkedIndex.push(index);}});var _checkedLength=_checkedSeq.length;if(_groupParent[_checkedIndex[0]-1]!='parent'&&_groupParent[_checkedIndex[0]-1]!=0&&_groupParent[_checkedIndex[0]]==0&&_checkedIndex[0]!=0){for(i=1;i<_checkedLength;i++){if(_groupParent[_checkedIndex[i]-1]!='parent'&&_groupParent[_checkedIndex[i]-1]==0&&_groupParent[_checkedIndex[i]]==0){_groupInAddPossible=true;}}
if(_checkedLength==1){_groupInAddPossible=true;}}
for(i=0;i<_checkedLength;i++){if(_groupParent[_checkedIndex[i]-1]=='parent'||_groupParent[_checkedIndex[i]-1]!=0||_groupParent[_checkedIndex[i]]!=0){_groupInPossible=false;}}
if(_groupInPossible||_groupInAddPossible){_recentParent=_checkedIndex[0]-1;if(_groupInPossible){$$('div#task_'+(_checkedIndex[0]-1)+' .group_parent').invoke('show');_groupParent[_checkedIndex[0]-1]='parent';}else if(_groupInAddPossible){$$('div#task_'+_recentParent+' .group_child1').invoke('show');$$('div#task_'+_recentParent+' .group_child2').invoke('hide');}
for(i=0;i<_checkedLength;i++){if(_groupInPossible){_groupParent[_checkedIndex[i]]=_groupSeq[_checkedIndex[0]-1];}else if(_groupInAddPossible){_groupParent[_checkedIndex[i]]=_groupParent[_checkedIndex[0]-1];}
_groupInTask[i]='{"seq":'+_groupSeq[_checkedIndex[i]]+',"parent":'+_groupParent[_checkedIndex[i]]+'}';_distance=_checkedIndex[i]-_recentParent;if(i==_checkedLength-1){$$('div#task_'+_checkedIndex[i]+' .group_child2').invoke('show');$$('div#task_'+_checkedIndex[i]+' .gantt_check').each(function(obj,index){obj.checked=false;});}else{$$('div#task_'+_checkedIndex[i]+' .group_child1').invoke('show');$$('div#task_'+_checkedIndex[i]+' .gantt_check').each(function(obj,index){obj.checked=false;});}
if(_distance==1){_recentParent=_checkedIndex[i];}else{for(t=_checkedIndex[i];t>_recentParent+1;t--){_tmpSeq=_groupSeq[t];_tmpParent=_groupParent[t];_tmpTaskHTML=$('task_'+t).innerHTML;_tmpTaskBarHTML=$('taskBar_'+t).innerHTML;_groupSeq[t]=_groupSeq[t-1];_groupParent[t]=_groupParent[t-1];$('task_'+t).update($('task_'+(t-1)).innerHTML);$('taskBar_'+t).update($('taskBar_'+(t-1)).innerHTML);_groupSeq[t-1]=_tmpSeq;_groupParent[t-1]=_tmpParent;$('task_'+(t-1)).update(_tmpTaskHTML);$('taskBar_'+(t-1)).update(_tmpTaskBarHTML);}
_recentParent=t;}}}
var _groupInTaskJSON=_groupInTask.toJSON();new Ajax.Request('/project/schedule/groupInTask.ajax.post.tps',{parameters:{groupInTask:_groupInTaskJSON},onSuccess:function(obj){if(obj.responseText!='SUCCESS'){alert('오류가 발생하였습니다.\n관리자에게 문의하시기 바랍니다.');}}});}}
function taskDelete()
{var _checkTask=new Array();$$('input.gantt_check').each(function(obj,index){if(obj.checked){_checkTask.push(obj.value);}});var _checkTaskJSON=_checkTask.toJSON();if(_checkTaskJSON=='[]'&&$('taskAllCheck').checked==false){alert('삭제할 세부과제를 선택해 주세요.');}else{var _ans=window.confirm('선택한 세부과제를 삭제 하시겠습니까?');if(_ans){new Ajax.Request('/project/schedule/checkTaskDelete.ajax.post.tps',{parameters:{pjSeq:$F('pjSeq'),checkTaskSeq:_checkTaskJSON},onSuccess:function(obj){if(obj.responseText=='SUCCESS'){alert('삭제하였습니다.');document.location.reload();}else{alert('오류가 발생하였습니다.\n관리자에게 문의하시기 바랍니다.');}}});}}}
function gotoToday()
{if(_todayTask!=0){var _x1=$('calendarBox').scrollLeft;var _x2=parseInt($('chart_'+_todayTask).style.paddingLeft)-20;var _xx=Math.abs((_x2-_x1)/50);var _y1=$('calendarBox').scrollTop;var _y2=_todayNo*28-10;var _yy=Math.abs((_y2-_y1)/50);if(_x1<_x2){for(var i=_x1;i<_x2;i=i+_xx){$('calendarBox').scrollLeft=i;}}else{for(var i=_x1;i>_x2;i=i-_xx){$('calendarBox').scrollLeft=i;}}
$('calendarBox').scrollLeft=_x2;if(_y1<_y2){for(var q=_y1;q<_y2;q=q+_yy){$('calendarBox').scrollTop=q;$('taskList').scrollTop=q;}}else{for(var q=_y1;q>_y2;q=q-_yy){$('calendarBox').scrollTop=q;$('taskList').scrollTop=q;}}
$('calendarBox').scrollTop=_y2;}}
function gotoChart(id)
{var _x1=$('calendarBox').scrollLeft;var _x2=parseInt($('chart_'+id).style.paddingLeft)-20;var _xx=Math.abs((_x2-_x1)/50);if(_x1<_x2){for(var i=_x1;i<_x2;i=i+_xx){$('calendarBox').scrollLeft=i;}}else{for(var i=_x1;i>_x2;i=i-_xx){$('calendarBox').scrollLeft=i;}}
$('calendarBox').scrollLeft=_x2;}
function dateSetting()
{if($F('searchStartDate').isNull()){alert('시작일자를 입력하세요.');}else if($F('searchEndDate').isNull()){alert('종료일자를 입력하세요.');}else{document.location.href='/'+$F('pjURL')+'/schedule/gantt/?ssd='+$F('searchStartDate')+'&sed='+$F('searchEndDate');}}
function workerSetting(wkSeq)
{if(wkSeq!=''){document.location.href='/'+$F('pjURL')+'/schedule/gantt/?wk='+wkSeq;}}
function popDetailSet()
{var _divDisplay=new DivDisplay('dlg_msg');var _url="/project/schedule/popGanttDetailSet.ajax.tps";new Ajax.Updater('dlg_msg',_url,{parameters:{pjSeq:$F('pjSeq'),st:$F('st'),wk:$F('wk'),ssd:$F('searchStartDate'),sed:$F('searchEndDate')}});var _objOffset=$('detailSetBtn').viewportOffset();var _x=_objOffset.left-454+document.documentElement.scrollLeft;var _y=_objOffset.top+22+document.documentElement.scrollTop;_divDisplay.setPosition('',_x,_y);_divDisplay.show(false,false);}
function statusAllCheck()
{if($('statusAllCheck').checked){$$('input.statusCheckBox').each(function(obj,index){obj.disabled=true;});}else{$$('input.statusCheckBox').each(function(obj,index){obj.disabled=false;});}}
function workerAllCheck()
{if($('workerAllCheck').checked){$$('input.workerCheckBox').each(function(obj,index){obj.disabled=true;});}else{$$('input.workerCheckBox').each(function(obj,index){obj.disabled=false;});}}
function detailSet()
{var st,wk;var _tmp=new Array();if($('statusAllCheck').checked){st='all';}else{$$('input.statusCheckBox').each(function(obj,index){if(obj.checked){_tmp.push(obj.value);}});st=_tmp.join(',');}
var _tmp=new Array();if($('workerAllCheck').checked){wk='all';}else{$$('input.workerCheckBox').each(function(obj,index){if(obj.checked){_tmp.push(obj.value);}});wk=_tmp.join(',');}
if($F('popSearchStartDate')!=''&&$F('popSearchEndDate')!=''){document.location.href='/'+$F('pjURL')+'/schedule/gantt/?st='+st+'&wk='+wk+'&ssd='+$F('popSearchStartDate')+'&sed='+$F('popSearchEndDate');}else{document.location.href='/'+$F('pjURL')+'/schedule/gantt/?st='+st+'&wk='+wk;}}
function popGanttRegister()
{var _divDisplay=new DivDisplay('dlg_msg');var _url="/project/schedule/popGanttRegister.ajax.tps";new Ajax.Updater('dlg_msg',_url,{parameters:{pjSeq:$F('pjSeq')}});_divDisplay.setPosition('fixcenter',-200,-50);_divDisplay.show(true,false);}
function popGanttModify(tSeq,tabNo)
{var _divDisplay=new DivDisplay('dlg_msg');var _url="/project/schedule/popGanttModify.ajax.tps";new Ajax.Updater('dlg_msg',_url,{parameters:{pjSeq:$F('pjSeq'),tSeq:tSeq,tabNo:tabNo,managerFlg:$F('managerFlg')}});_divDisplay.setPosition('fixcenter',-200,-50);_divDisplay.show(true,false);}
function popGanttView(tSeq,tabNo)
{var _divDisplay=new DivDisplay('dlg_msg');var _url="/project/schedule/popGanttView.ajax.tps";new Ajax.Updater('dlg_msg',_url,{parameters:{pjSeq:$F('pjSeq'),tSeq:tSeq,tabNo:tabNo}});_divDisplay.setPosition('fixcenter',-200,-50);_divDisplay.show(true,false);}
function tabChange(no,type)
{for(var i=1;i<7;i++){if(i!=no){$('gantt_tab_on_'+i).hide();$('gantt_tab_off_'+i).show();$('gantt_box_'+i).hide();}}
if(type=='edit'){if(no==1){$('taskTitle').disabled=false;}else{$('taskTitle').disabled=true;}
changePeriod();}
$('gantt_tab_off_'+no).hide();$('gantt_tab_on_'+no).show();$('gantt_box_'+no).show();tabNo=no;subDivClose('subDiv');}
function changePeriod()
{var _dateObj1=new Date($F('sDate').substring(0,4),$F('sDate').substring(5,7),$F('sDate').substring(8,10));var _dateObj2=new Date($F('eDate').substring(0,4),$F('eDate').substring(5,7),$F('eDate').substring(8,10));var _period=(_dateObj2.getTime()-_dateObj1.getTime())/86400000;$('period').update(_period);}
function alertTypeChange(type)
{if(type==1){$$('select.smsAlert').each(function(obj,index){obj.disabled=false;});}else if(type==2){$$('select.smsAlert').each(function(obj,index){obj.disabled=true;});}}
function alertTermChange(term,way)
{if(term==1){if(way=='email'){$('emailAlertTime2').hide();}else if(way=='sms'){$('smsAlertTime2').hide();}}else if(term==2){if(way=='email'){$('emailAlertTime2').show();}else if(way=='sms'){$('smsAlertTime2').show();}}}
function workerInsert()
{if(_memberCnt<=$F('workerCntMax')){alert('등록가능한 담당자의 수를 초과하였습니다.');}else{var _no=parseInt($F('workerKey'))+1;var workerInsertHtml='<tr bgcolor="#FFFFFF" id="worker_input_'+$F('workerKey')+'"><td>'+_no+'</td><td><select id="worker_select_'+$F('workerKey')+'" style="width:126px;" class="wkSeq" onChange="javascript:workerOverlapCheck(\''+$F('workerKey')+'\');"><option value="0">선택해주세요.</option>'+_memberSelect+'</td><td><select id="worker_percent_'+$F('workerKey')+'" style="width:100px; vertical-align:middle;"><option value="0">0%</option><option value="10">10%</option><option value="20">20%</option><option value="30">30%</option><option value="40">40%</option><option value="50">50%</option><option value="60">60%</option><option value="70">70%</option><option value="80">80%</option><option value="90">90%</option><option value="100">100%</option></select></td><td><select id="worker_part_'+$F('workerKey')+'" style="width:100px; vertical-align:middle;"><option value="">선택해주세요.</option>'+_partSelect+'</td><td><a class="a4d6aca" onClick="javascript:workerInsertCancel(\''+$F('workerKey')+'\');" style="cursor:pointer;">삭제</a></td></tr>'
$('worker_tbody').update($('worker_tbody').innerHTML+workerInsertHtml);$('ganttTable').scrollTop=$('ganttTable').scrollHeight;$('workerKey').value=_no;$('workerCntMax').value=parseInt($F('workerCntMax'))+1;}}
function workerInsertCancel(wKey)
{$('workerCntMax').value=parseInt($F('workerCntMax'))-1;$('worker_input_'+wKey).hide();}
function workerOverlapCheck(wKey)
{var _tmp=$$('input.wkSeq');var _tmpLength=_tmp.length;var _check=true;if(_tmp.length==0){workerOverlap=0;}else{for(var i=0;i<_tmpLength;i++){if(_tmp[i].value==$F('worker_select_'+wKey)){workerOverlap=1;_check=false;$('worker_select_'+wKey).selectedIndex=0;alert('이미 담당자로 등록된 멤버입니다.');break;}else{workerOverlap=0;}}}
if(_check){var _tmp=$$('select.wkSeq');var _tmpLength=_tmp.length;for(var i=0;i<_tmpLength;i++){if(_tmp[i].value==$F('worker_select_'+wKey)&&_tmp[i].id!='worker_select_'+wKey){workerOverlap=1;$('worker_select_'+wKey).selectedIndex=0;alert('이미 담당자로 등록된 멤버입니다.');break;}else{workerOverlap=0;}}}}
function workerDelete(wKey)
{var _ans=window.confirm('삭제 하시겠습니까?');if(_ans){new Ajax.Request('/project/schedule/workerDelete.ajax.post.tps',{parameters:{tSeq:$F('tSeq'),wkSeq:$F('worker_seq_'+wKey)},onSuccess:function(obj){if(obj.responseText=='SUCCESS'){alert('삭제하였습니다.');$('worker_input_'+wKey).hide();$('worker_seq_'+wKey).value=0;}else{alert('오류가 발생하였습니다.\n관리자에게 문의하시기 바랍니다.');}}});}}
function referenceInsert()
{var _passLength=$('passSelect').options.length;var _receiveLength=$('receiveSelect').options.length;var _itemArray=new Array();var _insertOverlapCheck;var _insertOverlapCheck2=false;for(var i=0;i<_passLength;i++){_insertOverlapCheck=false;if($('passSelect').options[i].selected==true){for(var r=0;r<_receiveLength;r++){if($('receiveSelect').options[r].value==$('passSelect').options[i].value){_insertOverlapCheck=true;_insertOverlapCheck2=true;}}
if(_insertOverlapCheck==false){_itemArray.push(i);}}}
var _itemArrayLength=_itemArray.length;$('receiveSelect').length+=_itemArrayLength;for(var i=0;i<_itemArrayLength;i++){$('receiveSelect').options[_receiveLength+i].text=$('passSelect').options[_itemArray[i]].text;$('receiveSelect').options[_receiveLength+i].value=$('passSelect').options[_itemArray[i]].value;}
if(_insertOverlapCheck2){alert('중복되는 참고자료를 제외하고 등록하였습니다.');}}
function referenceDelete()
{var _passLength=$('passSelect').options.length;var _receiveLength=$('receiveSelect').options.length;var _itemArray=new Array();var q=0;for(var i=0;i<_receiveLength;i++){if($('receiveSelect').options[i-q].selected==true){$('receiveSelect').options[i-q]=null;++q;}}}
function tempUpload(){if($F('referTmp')!=''){var frm=$("fileUpForm");frm.action="/project/schedule/taskReferUpload.tps";frm.target="fileUpFrame";frm.submit();var fileName=$F('referTmp').substring($F('referTmp').lastIndexOf('\\')+1,$F('referTmp').length);var _receiveLength=$('receiveSelect').options.length;$('receiveSelect').length=_receiveLength+1;$('receiveSelect').options[_receiveLength].text=fileName;$('receiveSelect').options[_receiveLength].value='up'+$F('referKey');$('referKey').value=parseInt($F('referKey'))+1;$('referTmp').defaultValue=fileName;document.getElementById('referTmp').select();document.selection.value=fileName;}else{alert('파일이 입력되지 않았습니다.');}}
function frontTaskInsert(){if(frontTaskCnt==10){alert('등록가능한 선행과제의 수를 초과하였습니다.');}else{var _no=parseInt($F('frontTaskKey'))+1;var frontTaskInsertHtml='<tr bgcolor="#FFFFFF" id="frontTask_input_'+$F('frontTaskKey')+'"><td>'+_no+'</td><td><div class="task_tit"><select id="frontTask_select_'+$F('frontTaskKey')+'" class="ptSeq" style="width:380px; vertical-align:middle;" onChange="javascript:taskOverlapCheck(\''+$F('frontTaskKey')+'\');"><option value="0">선택해주세요</option>'+_taskSelect+'</div></td><td style="vertical-align:middle;">종료 후 시작</td><td><a class="a4d6aca" onClick="javascript:frontTaskInsertCancel(\''+$F('frontTaskKey')+'\');" style="cursor:pointer;">삭제</a></td></tr>';$('frontTask_tbody').update($('frontTask_tbody').innerHTML+frontTaskInsertHtml);$('frontTaskTable').scrollTop=$('frontTaskTable').scrollHeight;$('frontTaskKey').value=_no;++frontTaskCnt;}}
function frontTaskInsertCancel(ptKey)
{--frontTaskCnt;$('frontTask_input_'+ptKey).hide();var _tmp=$$('input.ptSeq');var _tmpLength=_tmp.length;var _check=true;var _tmpCnt=_tmp.length;var _overlapCnt=0;if(_tmp.length==0){frontTaskOverlap=0;}else{for(var i=0;i<_tmpLength;i++){if(_tmp[i].value==$F('frontTask_select_'+ptKey)){++_overlapCnt;}else{frontTaskOverlap=0;}}}
if(_check){var _tmp=$$('select.ptSeq');var _tmpLength=_tmp.length;for(var i=0;i<_tmpLength;i++){if(_tmp[i].value==$F('frontTask_select_'+ptKey)&&_tmp[i].id!='frontTask_select_'+ptKey&&$('frontTask_input_'+(i+_tmpCnt)).style.display==''){++_overlapCnt;}else{frontTaskOverlap=0;}}}
if(_overlapCnt>1){frontTaskOverlap=1;}else{frontTaskOverlap=0;}}
function frontTaskDelete(ftKey)
{var _ans=window.confirm('삭제 하시겠습니까?');if(_ans){new Ajax.Request('/project/schedule/frontTaskDelete.ajax.post.tps',{parameters:{ftSeq:ftKey},onSuccess:function(obj){if(obj.responseText=='SUCCESS'){alert('삭제하였습니다.');popGanttModify($F('tSeq'),3);}else{alert('오류가 발생하였습니다.\n관리자에게 문의하시기 바랍니다.');}}});}}
function taskOverlapCheck(ptKey)
{var _tmp=$$('input.ptSeq');var _tmpLength=_tmp.length;var _check=true;var _tmpCnt=_tmp.length;if(_tmp.length==0){frontTaskOverlap=0;}else{for(var i=0;i<_tmpLength;i++){if(_tmp[i].value==$F('frontTask_select_'+ptKey)){frontTaskOverlap=1;_check=false;$('frontTask_select_'+ptKey).selectedIndex=0;alert('이미 등록된 선행작업입니다.');break;}else{frontTaskOverlap=0;}}}
if(_check){var _tmp=$$('select.ptSeq');var _tmpLength=_tmp.length;for(var i=0;i<_tmpLength;i++){if(_tmp[i].value==$F('frontTask_select_'+ptKey)&&_tmp[i].id!='frontTask_select_'+ptKey&&$('frontTask_input_'+(i+_tmpCnt)).style.display==''){frontTaskOverlap=1;$('frontTask_select_'+ptKey).selectedIndex=0;alert('이미 등록된 선행작업입니다.');break;}else{frontTaskOverlap=0;}}}}
function registerFormCheck()
{var _workerRegisterCheck=false;for(i=$F('workerCnt');i<$F('workerCntMax');i++){if($F('worker_select_'+i)!=0){_workerRegisterCheck=true;}}
var _frontTaskRegisterCheck=false;for(i=0;i<$F('frontTaskKey');i++){if($('frontTask_input_'+i).style.display==''&&$F('frontTask_select_'+i)!=0){_frontTaskRegisterCheck=true;}}
if($F('taskTitle').isNull()){alert('세부과제 제목을 입력하세요.');tabChange('1');$('taskTitle').focus();}else if($F('sDate').isNull()){alert('시작일자를 입력하세요.');tabChange('1');$('sDate').focus();}else if($F('eDate').isNull()){alert('종료일자를 입력하세요.');tabChange('1');$('eDate').focus();}else if(workerOverlap==1&&$F('workerCnt')!=$F('workerCntMax')&&_workerRegisterCheck){alert('동일한 담당자가 두번 등록되어있습니다.');tabChange('2');}else if(frontTaskOverlap==1&&frontTaskCnt!=0&&_frontTaskRegisterCheck){alert('동일한 선행작업이 두번 등록되어있습니다.');tabChange('3');}else{registerFormSubmit();}}
function registerFormSubmit()
{var _worker=new Array();for(i=0;i<$F('workerCnt');i++){_worker[i]='{"wkSeq":'+$F('worker_seq_'+i)+',"percent":'+$F('worker_percent_'+i)+', "part":"'+$F('worker_part_'+i)+'"}';}
for(i=$F('workerCnt');i<$F('workerCntMax');i++){if($F('worker_select_'+i)!=0){_worker[i]='{"wkSeq":'+$F('worker_select_'+i)+',"percent":'+$F('worker_percent_'+i)+', "part":"'+$F('worker_part_'+i)+'"}';}}
var _workerJSON=_worker.toJSON();var _frontTask=new Array();for(i=0;i<$F('frontTaskKey');i++){if($('frontTask_input_'+i).style.display==''){_frontTask.push($F('frontTask_select_'+i));}}
var _frontTaskJSON=_frontTask.toJSON();var _reference=new Array();var _receiveLength=$('receiveSelect').options.length;for(var i=0;i<_receiveLength;i++){_reference[i]='{"rKey":"'+$('receiveSelect').options[i].value+'", "fileName":"'+$('receiveSelect').options[i].text+'"}';}
var _referenceJSON=_reference.toJSON();if($F('alertType1')==1){var _alertType=2;}else{var _alertType=1;}
if($F('emailAlertTerm')==1){var _emailAlertTime=$F('emailAlertTime1');}else if($F('emailAlertTerm')==2){var _emailAlertTime=$F('emailAlertTime1')+','+$F('emailAlertTime2');}
if($F('smsAlertTerm')==1){var _smsAlertTime=$F('smsAlertTime1');}else if($F('smsAlertTerm')==2){var _smsAlertTime=$F('smsAlertTime1')+','+$F('smsAlertTime2');}
new Ajax.Request('/project/schedule/taskRegister.ajax.post.tps',{parameters:{pjSeq:$F('pjSeq'),sDate:$F('sDate'),sTime:$F('sTime'),eDate:$F('eDate'),eTime:$F('eTime'),priority:$F('priority'),alertType:_alertType,emailAlertDay:$F('emailAlertDay'),emailAlertTerm:$F('emailAlertTerm'),emailAlertTime:_emailAlertTime,smsAlertDay:$F('smsAlertDay'),smsAlertTerm:$F('smsAlertTerm'),smsAlertTime:_smsAlertTime,taskTitle:$F('taskTitle'),reference:_referenceJSON,referTime:$F('referTime'),comment:$F('comment'),frontTask:_frontTaskJSON,worker:_workerJSON},onSuccess:function(obj){if($('ganttSdate')){alert('등록되었습니다.');document.location.reload();}else{afterRegister(obj.responseText.strip());}}});}
function afterRegister(tSeq)
{var _divDisplay=new DivDisplay('dlg_msg');var _url="/project/schedule/afterTaskRegister.ajax.tps";new Ajax.Updater('dlg_msg',_url,{parameters:{pjUrl:$F('pjURL'),tSeq:tSeq}});_divDisplay.setPosition('center');_divDisplay.show(true,false);}
function continueRegister()
{subDivClose();popGanttRegister();}
function editFormCheck()
{var _workerRegisterCheck=false;for(i=$F('workerCnt');i<$F('workerCntMax');i++){if($F('worker_select_'+i)!=0){_workerRegisterCheck=true;}}
var _frontTaskRegisterCheck=false;for(i=0;i<$F('frontTaskKey');i++){if($('frontTask_input_'+i).style.display==''&&$F('frontTask_select_'+i)!=0){_frontTaskRegisterCheck=true;}}
if($F('taskTitle').isNull()){alert('세부과제 제목을 입력하세요.');tabChange('1');$('taskTitle').focus();}else if($F('sDate').isNull()){alert('시작일자를 입력하세요.');tabChange('1');$('sDate').focus();}else if($F('eDate').isNull()){alert('종료일자를 입력하세요.');tabChange('1');$('eDate').focus();}else if(workerOverlap==1&&$F('workerCnt')!=$F('workerCntMax')&&_workerRegisterCheck){alert('동일한 담당자가 두번 등록되어있습니다.');tabChange('2');}else if(frontTaskOverlap==1&&frontTaskCnt!=0&&_frontTaskRegisterCheck){alert('동일한 선행작업이 두번 등록되어있습니다.');tabChange('3');}else{editFormSubmit();}}
function editFormSubmit()
{var _worker=new Array();for(i=0;i<$F('workerCnt');i++){if($F('worker_seq_'+i)!=0){_worker[i]='{"wkSeq":'+$F('worker_seq_'+i)+',"percent":'+$F('worker_percent_'+i)+', "part":"'+$F('worker_part_'+i)+'"}';}}
for(i=$F('workerCnt');i<$F('workerCntMax');i++){if($F('worker_select_'+i)!=0){_worker[i]='{"wkSeq":'+$F('worker_select_'+i)+',"percent":'+$F('worker_percent_'+i)+', "part":"'+$F('worker_part_'+i)+'"}';}}
var _workerJSON=_worker.toJSON();var _frontTask=new Array();for(i=0;i<$F('frontTaskKey');i++){if($('frontTask_input_'+i).style.display==''){_frontTask.push($F('frontTask_select_'+i));}}
var _frontTaskJSON=_frontTask.toJSON();var _reference=new Array();var _receiveLength=$('receiveSelect').options.length;for(var i=0;i<_receiveLength;i++){_reference[i]='{"rKey":"'+$('receiveSelect').options[i].value+'", "fileName":"'+$('receiveSelect').options[i].text+'"}';}
var _referenceJSON=_reference.toJSON();if($F('alertType1')==1){var _alertType=2;}else{var _alertType=1;}
if($F('emailAlertTerm')==1){var _emailAlertTime=$F('emailAlertTime1');}else if($F('emailAlertTerm')==2){var _emailAlertTime=$F('emailAlertTime1')+','+$F('emailAlertTime2');}
if($F('smsAlertTerm')==1){var _smsAlertTime=$F('smsAlertTime1');}else if($F('smsAlertTerm')==2){var _smsAlertTime=$F('smsAlertTime1')+','+$F('smsAlertTime2');}
new Ajax.Request('/project/schedule/taskEdit.ajax.post.tps',{parameters:{pjSeq:$F('pjSeq'),tSeq:$F('tSeq'),sDate:$F('sDate'),sTime:$F('sTime'),eDate:$F('eDate'),eTime:$F('eTime'),cDate:$F('cDate'),cTime:$F('cTime'),status:$F('status'),oldStatus:$F('oldStatus'),priority:$F('priority'),alertType:_alertType,emailAlertDay:$F('emailAlertDay'),emailAlertTerm:$F('emailAlertTerm'),emailAlertTime:_emailAlertTime,smsAlertDay:$F('smsAlertDay'),smsAlertTerm:$F('smsAlertTerm'),smsAlertTime:_smsAlertTime,taskTitle:$F('taskTitle'),reference:_referenceJSON,referTime:$F('referTime'),comment:$F('comment'),frontTask:_frontTaskJSON,worker:_workerJSON},onSuccess:function(obj){if(obj.responseText.strip()=='SUCCESS'){alert('수정되었습니다.');document.location.reload();}else{alert('오류가 발생하였습니다.\n관리자에게 문의하시기 바랍니다.');}}});}
function popTaskDelete()
{var _ans=window.confirm('세부과제를 삭제 하시겠습니까?');if(_ans){new Ajax.Request('/project/schedule/popTaskDelete.ajax.post.tps',{parameters:{pjSeq:$F('pjSeq'),tSeq:$F('tSeq')},onSuccess:function(obj){if(obj.responseText=='SUCCESS'){alert('삭제하였습니다.');if($('ganttSdate')){document.location.reload();}else{document.location.href='/'+$F('pjURL')+'/tasks';}}else{alert('오류가 발생하였습니다.\n관리자에게 문의하시기 바랍니다.');}}});}}
function exportExcel()
{var s,e;if($F('searchStartDate').isNull()||$F('searchEndDate').isNull()){s=$F('ganttSdate');e=$F('ganttEdate');}else{s=$F('searchStartDate');e=$F('searchEndDate');}
var _divDisplay=new DivDisplay('dlg_msg');var _url="/project/schedule/popExportExcel.ajax.tps";new Ajax.Updater('dlg_msg',_url,{parameters:{pjSeq:$F('pjSeq'),sdate:s,edate:e}});_divDisplay.setPosition('center');_divDisplay.show(true,false);}
function excelDown()
{if($F('excelSdate2').isNull()){alert('시작일자를 입력해 주세요.');$('excelEdate2').focus();}else if($F('excelEdate2').isNull()){alert('종료일자를 입력해 주세요.');$('excelEdate2').focus();}else{var s,e;s=new Date($F('excelSdate2').substring(0,4),$F('excelSdate2').substring(5,7)-1,$F('excelSdate2').substring(8,10));s=s.getTime()/1000;e=new Date($F('excelEdate2').substring(0,4),$F('excelEdate2').substring(5,7)-1,$F('excelEdate2').substring(8,10));e=e.getTime()/1000;if(Math.floor((e-s)/86400)>180){alert('6개월 이하로 기간을 설정해 주십시오.');}else{$('excelSdate').value=s;$('excelEdate').value=e;var frm=$("excelDownForm");frm.action="/project/schedule/exportExcel.tps";frm.target="excelDownFrame";frm.submit();subDivClose();}}}
Event.observe(window,'load',function(){var _elements=new Array('help_tasksWorkerChg','help_tasksProgressEdit','help_tasksDone');_elements.find(function(_obj){if($(_obj+'Btn')){Event.observe($(_obj+'Btn'),'mouseover',function(){$(_obj).show();});Event.observe($(_obj+'Btn'),'mouseout',function(){$(_obj).hide();});}});});function replyAdd(tSeq)
{con=encodeURIComponent($F('replyCon').stripTags());if(con!=""){var myAjax=new Ajax.Request('/project/tasks/taskReplyAdd.ajax.tps',{method:'post',parameters:'tSeq='+tSeq+'&con='+con+'&pjSeq='+$F('pjSeq'),onComplete:replyLoaded});}}
function replyDel(rSeq)
{var ans=window.confirm("해당 덧글을 삭제 하시겠습니까?");if(ans){new Ajax.Request('/project/replyDel.ajax.post.tps',{parameters:{rSeq:rSeq,type:'taskReply'},onSuccess:function(obj){if(obj.responseText=='success'){$('reply'+rSeq).innerHTML='';$('reply'+rSeq).hide();}
else
alert('덧글을 삭제하는데 실패했습니다.');}});}}
function replyLoaded(oj){res=decodeURIComponent(oj.responseText);$('replyCon').value='';tmp=$('replyDiv').innerHTML;tmp=tmp+res;$('replyDiv').innerHTML=tmp;}
function taskDelPop(){popMsg("세부과제 삭제","세부과제 관련 정보가 모두 삭제됩니다.<br />삭제하시겠습니까?","closeDiv();","taskDelPost();");}
function taskDelPost()
{taskDelPop(event,'hide','');new Ajax.Request('/project/tasks/taskDel.ajax.post.tps',{parameters:{tSeq:$F('tSeq'),pjSeq:$F('pjSeq')},onSuccess:function(obj){if(obj.responseText=='err'){popMsg("세부과제 삭제","세부과제를 삭제하는데 실패하였습니다.","closeDiv();");}
else{link="location.href='/"+$F('pjUrl')+"/tasks';";popMsg("세부과제 삭제","세부과제를 삭제하였습니다.",link);}}});}
function taskDelReq1(event,type,tSeq,pjSeq){var divPop=new DivDisplay('dlg_msg');if(type=='show'){var _url='/project/tasks/taskDelReq1.ajax.tps';new Ajax.Updater('dlg_msg',_url,{});divPop.setPosition('center');divPop.moveStart();divPop.show(true);}else{divPop.moveStop();divPop.hide();}}
function taskDelReq2(event,type){taskDelReq1(event,'hide');var divPop=new DivDisplay('dlg_msg');if(type=='show'){var _url='/project/tasks/taskDelReq2.ajax.tps';new Ajax.Updater('dlg_msg',_url,{});divPop.setPosition('center');divPop.moveStart();divPop.show(true);}else{divPop.moveStop();divPop.hide();}}
function taskDelReason(){if($F('reason').isBlank()){alert("신청 사유을 입력하세요.");$('reason').focus();}
else
taskDelReq();}
function taskDelReq(){var myAjax=new Ajax.Request('/project/tasks/taskDelReq.ajax.post.tps',{method:'post',parameters:'pjSeq='+$F('pjSeq')+'&tSeq='+$F('tSeq')+'&reason='+$F('reason'),onComplete:reqLoaded});}
function reqLoaded(oj){taskDelReq2(event,'hide');res=decodeURIComponent(oj.responseText);if(res=="com")
taskDelReq3('','show');else if(res=="err")
alert("세부과제 삭제신청에 실패했습니다.");else
taskDelReqAlready('','show',res);}
function taskDelReq3(event,type){var divPop=new DivDisplay('dlg_msg');if(type=='show'){var _url='/project/tasks/taskDelReq3.ajax.tps';new Ajax.Updater('dlg_msg',_url,{});divPop.setPosition('center');divPop.moveStart();divPop.show(true);}else{divPop.moveStop();divPop.hide();}}
function taskDelReqAlready(event,type,res){var divPop=new DivDisplay('dlg_msg');if(type=='show'){var _url='/project/tasks/taskDelReqAlready.ajax.tps';new Ajax.Updater('dlg_msg',_url,{parameters:'res='+res});divPop.setPosition('center');divPop.moveStart();divPop.show(true);}else{divPop.moveStop();divPop.hide();}}
function rAddShow(m){if($('replyAdd').style.display=='none')
$('replyAdd').show();else
$('replyAdd').hide();}
function complete(){var ans=window.confirm("세부과제를 완료상태로 변경하시겠습니까?");if(ans){new Ajax.Request('/project/tasks/taskProgressAdd.ajax.post.tps',{parameters:{pjSeq:$F('pjSeq'),tSeq:$F('tSeq'),page:$F('page'),s:$F('s'),percent:'100',lastPer:$F('percent')},onSuccess:function(obj){link="location.href='/"+$F('pjUrl')+"/tasks/"+$F('tSeq')+"';";popMsg("세부과제 완료","세부과제를 완료상태로 변경하였습니다.",link);}});}}
function taskGroupManage()
{var _divDisplay=new DivDisplay('dlg_msg');var _url="/project/tasks/taskGroupManage.ajax.tps";new Ajax.Request(_url,{parameters:{pjSeq:$F('pjSeq')},onSuccess:function(obj){switch(obj.responseText){case'exist group':alert('이미 존재하는 폴더명입니다.');return false;break;case'db error':alert('실패하였습니다.');return false;break;default:returnMsg('dlg_msg',obj.responseText);break;}}});_divDisplay.setPosition('center');_divDisplay.moveStart();_divDisplay.show(true,true);}
function taskGroupEditDel(type,seq,divNo)
{if(!type||!seq)
return false;var _grpName;var _divId='dlg_msg';switch(type){case'del':if(!confirm('정말로 폴더를 삭제하시겠습니까?\n(※등록된 세부과제는 \'기본그룹\'으로 자동 변경됩니다.)'))
return false;break;case'edit':case'cancel':_divId='list_div_'+seq;break;case'edit_done':_grpName=$F('grpName'+seq).strip();if(_grpName.isNull()){alert('수정할 폴더를 입력하세요.');return false;}else if(_grpName.bytes()>40){alert('폴더명은 한글 20자, 영/숫자 40자까지 가능합니다.');return false;}
break;}
var _divDisplay=new DivDisplay('dlg_msg');var _url="/project/tasks/taskGroupManage.ajax.tps";new Ajax.Updater(_divId,_url,{parameters:{type:type,seq:seq,grpName:_grpName,divNo:divNo,pjSeq:$F('pjSeq')}});_divDisplay.moveStart();_divDisplay.show(true,true);}
function taskGroupAdd()
{var _grpName=$F('grpName').strip();if(_grpName.isNull()){alert('폴더명을 입력해 주세요.');return false;}else if(_grpName.bytes()>40){alert('폴더명은 한글 20자, 영/숫자 40자까지 가능합니다.');return false;}
var _divDisplay=new DivDisplay('dlg_msg');var _url="/project/tasks/taskGroupManage.ajax.tps";new Ajax.Request(_url,{parameters:{type:'add',grpName:_grpName,pjSeq:$F('pjSeq')},onSuccess:function(obj){switch(obj.responseText){case'exist group':alert('이미 존재하는 폴더명입니다.');return false;break;case'db error':alert('실패하였습니다.');return false;break;default:returnMsg('dlg_msg',obj.responseText);break;}}});_divDisplay.moveStart();_divDisplay.show(true,true);}
function forderSet()
{var obj=document.getElementsByName('forderList');var tmp1=new Array();var k=0;var forder,read;for(var i=0;i<obj.length;i++){if(obj[i].checked){tmp1[k]=obj[i].value;k++;}}
forder=tmp1.join(',');location.href('/'+$F('pjURL')+'/tasks/'+'?forder='+forder);}
function forderReload()
{new Ajax.Request('/project/tasks/taskFolderReload.ajax.tps',{parameters:{pjSeq:$F('pjSeq')},onSuccess:function(obj){$('side_folder').innerHTML=obj.responseText;}});}
function smsSend()
{var _divDisplay=new DivDisplay('dlg_msg');var _url='/dashboard/message/smsSend.ajax.tps';new Ajax.Updater('dlg_msg',_url,{});_divDisplay.setPosition('center');_divDisplay.moveStart();_divDisplay.show(true,true);}
function smsReply(receive_mb,receive_tel,receive_name)
{var _divDisplay=new DivDisplay('dlg_msg');var _url='/dashboard/message/smsSend.ajax.tps';new Ajax.Updater('dlg_msg',_url,{parameters:{receive_mb:receive_mb,receive_tel:receive_tel,receive_name:receive_name}});_divDisplay.setPosition('center');_divDisplay.moveStart();_divDisplay.show(true,true);}
function smsSubmit()
{var _tmp,_telStr,_url;var _telArr=new Array();var _chkFlg=false;var _cnt=parseInt($F('receive_cnt'));for(var i=0;i<_cnt;i++){_objNo=i+1;_val=$F('receive_tel'+_objNo).strip();if(!_val.isNull()){_chkFlg=true;_telArr[i]=_val;}}
if(!_chkFlg){alert('받는사람을 입력해 주세요.');$('receive_tel1').focus();return false;}
_telStr=_telArr.join(',');var _contents=$F('contents').strip();if(_contents.isNull()){alert('내용을 입력해 주세요.');$('contents').focus();return false;}
var _dlgMsg=new DivDisplay('dlg_msg');_url='/dashboard/message/smsSend.ajax.post.tps';new Ajax.Updater('dlg_msg',_url,{parameters:{receive_tel:_telStr,contents:_contents}});_dlgMsg.setPosition('center');_dlgMsg.moveStart();_dlgMsg.show(true,true);if($('subDiv').style.display!='none')
$('subDiv').hide();}
function addReceiver()
{var _cnt=parseInt($F('receive_cnt'))+1;if(_cnt>10){alert('수신인은 최대 10명까지 추가가능합니다.');return false;}
$('receive_cnt').value=_cnt;var _url="/dashboard/message/smsReceiverSetting.ajax.tps";new Ajax.Request(_url,{parameters:{type:'add',receive_cnt:_cnt},onSuccess:function(obj){returnMsg('receiver',$('receiver').innerHTML+obj.responseText);}});}
function smsReceiveDel(no)
{var _cnt=parseInt($F('receive_cnt'));if(_cnt==1)
return false;var _tmp,_nameStr,_telStr,_url;var _nameArr=new Array();var _telArr=new Array();for(var i=0;i<_cnt;i++){_objNo=i+1;_tmp=$F('receive_tel'+_objNo).strip();if(no!=_objNo&&!_tmp.isNull()){_telArr[i]=_tmp;_nameArr[i]=$F('receive_name'+_objNo).strip();}}
_telStr=_telArr.join(',');_nameStr=_nameArr.join(',');_cnt--;$('receive_cnt').value=_cnt;_url="/dashboard/message/smsReceiverSetting.ajax.tps";new Ajax.Updater('receiver',_url,{parameters:{type:'del',receive_cnt:_cnt,receive_name:_nameStr,receive_tel:_telStr}});}
function telChange(no)
{if(!no)
return false;var _telObj,_val,_tmp;$('receive_name'+no).value='';_telObj=$('receive_tel'+no);_val=$F('receive_tel'+no).strip().replace(/-/g,'');if(!_val.isNum()){alert('폰번호는 숫자만 입력해 주세요.');_telObj.focus();_telObj.value='';return false;}else if(_val.length<10){alert('폰번호를 정확히 입력해 주세요.');_telObj.focus();_telObj.value='';return false;}
_chkNo=new Array('010','011','016','017','018','019');_tmp=_val.substring(0,3);if(!_chkNo.include(_tmp)){alert('폰번호만 입력가능합니다.');_telObj.focus();_telObj.value='';return false;}
_telObj.value=_val;}
function findTel(type,pj_seq)
{var _divId='subDiv';var _type,_url="";if(!type)
_type='project';else
_type=type;_url="/dashboard/message/smsFindTel.ajax.tps";new Ajax.Updater(_divId,_url,{parameters:{type:_type,pj_seq:pj_seq}});if(!type&&$(_divId).style.display=='none'){var _divDisplay=new DivDisplay('dlg_msg');var _left=_divDisplay.left+_divDisplay.div.getWidth();var _top=_divDisplay.top;_divDisplay.setDiv(_divId);_divDisplay.div.setStyle({left:_left+'px',top:_top+'px'});_divDisplay.moveStart();_divDisplay.show(true,true);}}
function smsSelectMember()
{if($F('memberSelect')==null||$F('memberSelect')==""){alert('받는사람을 선택하세요.');return false;}
var _receive_cnt=parseInt($F('receive_cnt'));var _tmp_tel,_nameStr,_telStr,_url;var _nameArr=new Array();var _telArr=new Array();var _selArr=new Array();var _tmpArr=new Array();var _cnt=0;for(var i=0;i<_receive_cnt;i++){_objNo=i+1;_tmp_tel=$F('receive_tel'+_objNo).strip();if(!_tmp_tel.isNull()){_telArr[i]=_tmp_tel;_nameArr[i]=$F('receive_name'+_objNo).strip();}}
_selArr=$F('memberSelect').toArray();_cnt=_selArr.length;for(i=0;i<_cnt;i++){_tmpArr=_selArr[i].split('|');if(!_telArr.include(_tmpArr[1])){_receive_cnt++;_telArr.push(_tmpArr[1]);_nameArr.push(_tmpArr[0]);}}
_telStr=_telArr.join(',');_nameStr=_nameArr.join(',');$('receive_cnt').value=_receive_cnt;_url="/dashboard/message/smsReceiverSetting.ajax.tps";new Ajax.Updater('receiver',_url,{parameters:{type:'select',receive_cnt:_receive_cnt,receive_name:_nameStr,receive_tel:_telStr}});}
function smsCloseDiv(divId)
{var _divDisplay;if(!divId||divId=='dlg_msg'){_divDisplay=new DivDisplay('subDiv');_divDisplay.moveStop();_divDisplay.hide();_divDisplay.setDiv('dlg_msg');_divDisplay.moveStop();_divDisplay.hide();}else{_divDisplay=new DivDisplay(divId);_divDisplay.moveStop();_divDisplay.hide(true);_divDisplay.setDiv('dlg_msg')
_divDisplay.moveStart();selectDisplay('hide');}}
function strByteCheck(objId,returnId,maxByte)
{var _bytes=$F(objId).bytes();if(_bytes>maxByte){$(objId).value=$F(objId).cut(maxByte);_bytes=$F(objId).bytes();}
var _msg='('+_bytes+'/'+maxByte+'bytes)';returnMsg(returnId,_msg);}
String.prototype.isEmail=function(){return this.search(/^((\w|[\-\.])+)@((\w|[\-\.])+)\.([A-Za-z]+)$/)==-1?false:true;}
String.prototype.isNull=function(){return this.strip()==""?true:false;}
String.prototype.meta=function(){var str=this;var result="";for(var i=0;i<str.length;i++){if((/([\$\(\)\*\+\.\[\]\?\\\^\{\}\|]{1})/).test(str.charAt(i))){result+=str.charAt(i).replace((/([\$\(\)\*\+\.\[\]\?\\\^\{\}\|]{1})/),"\\$1");}
else{result+=str.charAt(i);}}
return result;}
String.prototype.remove=function(pattern){return(pattern==null)?this:eval("this.replace(/["+pattern.meta()+"]/g, \"\")");}
String.prototype.isBlank=function(){for(var i=0;i<this.length;i++){if((this.charAt(i)!="\t")&&(this.charAt(i)!="\n")&&(this.charAt(i)!="\r")){return false;}}
return true;}
String.prototype.isNum=function(){return(/^[0-9]+$/).test(this.remove(arguments[0]))?true:false;}
String.prototype.isEngNum=function(){return(/^[0-9a-zA-Z\s]+$/).test(this.remove(arguments[0]))?true:false;}
String.prototype.isEngHanNum=function(){return(/^[0-9a-zA-Z가-힣\s]+$/).test(this.remove(arguments[0]))?true:false;}
String.prototype.isEngHan=function(){return(/^[a-zA-Z가-힣\s]+$/).test(this.remove(arguments[0]))?true:false;}
String.prototype.isHan=function(){return(/^[가-힣\s]+$/).test(this.remove(arguments[0]))?true:false;}
String.prototype.cut=function(maxByte){var i,bytes=0;for(i=0;i<this.length;i++){bytes+=(this.charCodeAt(i)>128)?2:1;if(bytes>maxByte)
return this.substring(0,i);}}
String.prototype.bytes=function(){var i,bytes=0;for(i=0;i<this.length;i++)
bytes+=(this.charCodeAt(i)>128)?2:1;return bytes;}
