/*
 * loglyカレンダー
 * Copyright(c) 2009, logly, Inc. All Rights Reserved. 
 * 
 */


var MAXEVENT=100;var SHOWWEEK=6;var gWeekTable=new Array("日曜日","月曜日","火曜日","水曜日","木曜日","金曜日","土曜日");var gMonthTable=new Array(31,28,31,30,31,30,31,31,30,31,30,31);var gTimeTable=new Array("0:00","0:30","1:00","1:30","2:00","2:30","3:00","3:30","4:00","4:30","5:00","5:30","6:00","6:30","7:00","7:30","8:00","8:30","9:00","9:30","10:00","10:30","11:00","11:30","12:00","12:30","13:00","13:30","14:00","14:30","15:00","15:30","16:00","16:30","17:00","17:30","18:00","18:30","19:00","19:30","20:00","20:30","21:00","21:30","22:00","22:30","23:00","23:30");var SHOW_CALENDAR_TYPE_MONTH=1;var SHOW_CALENDAR_TYPE_DAY=2;var SHOW_CALENDAR_TYPE_WEEK=3;var gWindowWidth=1024;var gWindowHeight=768;var MONTH_CELL_WIDTH=110;var MONTH_CELL_HEIGHT=110;var MONTH_TITLE_HEIGHT=20;var MONTH_TITLE_DATE_HEIGHT=15;var MONTH_DATA_HEIGHT=15;var DAY_TITLE_TIME_HEIGHT=30;var DAY_DATA_HEIGHT=30;var DAY_CELL_HEIGHT=500;var DAY_CELL_WIDTH=16;var WEEK_CELL_WIDTH=110;var WEEK_CELL_HEIGHT=300;var WEEK_TITLE_HEIGHT=18;var WEEK_TITLE_DATE_HEIGHT=15;var WEEK_DATA_HEIGHT=15;var FLOAT_BASE_LEFT=300;var FLOAT_BASE_TOP=800;function windowSizeChange(){var isChanged=loadChangedWindowSize();if(isChanged){MONTH_CELL_WIDTH=my_round((gWindowWidth-270)/7,0)+3;WEEK_CELL_WIDTH=my_round((gWindowWidth-270)/7,0)+3;DAY_CELL_WIDTH=my_round((gWindowWidth-270)/48,0);var ct=getDefaultCalendarCookie();cal_type=ct;if(cal_type==SHOW_CALENDAR_TYPE_MONTH)
showCalendarByMonth();else if(cal_type==SHOW_CALENDAR_TYPE_DAY)
showCalendarByDay();else if(cal_type==SHOW_CALENDAR_TYPE_WEEK)
showCalendarByWeek();}}
function loadChangedWindowSize(){var newWindowWidth=crossInnerWindowWidth();var newWindowHeight=crossInnerWindowHeight();if((gWindowWidth!=newWindowWidth)||(gWindowHeight!=newWindowHeight)){gWindowWidth=newWindowWidth;gWindowHeight=newWindowHeight;MONTH_CELL_WIDTH=my_round((gWindowWidth-270)/7,0)+3;WEEK_CELL_WIDTH=my_round((gWindowWidth-270)/7,0)+3;DAY_CELL_WIDTH=my_round((gWindowWidth-270)/48,0);return true;}
return false;}
function changeCalendarParams(){var sideSub=270;var widgetNum=crossGetObject("widgetNum").value;if(widgetNum==0){sideSub=55;changeClass("Main","Main_NoSide")}
MONTH_CELL_WIDTH=my_round((gWindowWidth-sideSub)/7,0)+3;WEEK_CELL_WIDTH=my_round((gWindowWidth-sideSub)/7,0)+3;DAY_CELL_WIDTH=my_round((gWindowWidth-sideSub)/48,0);var ct=getDefaultCalendarCookie();cal_type=ct;if(cal_type==SHOW_CALENDAR_TYPE_MONTH){if(crossGetObject("divCalMain"))crossGetObject("divCalMain").style.width=MONTH_CELL_WIDTH*7;if(crossGetObject("divSdlCal"))crossGetObject("divSdlCal").style.width=MONTH_CELL_WIDTH*7;}else if(cal_type==SHOW_CALENDAR_TYPE_DAY){if(crossGetObject("divCalMain"))crossGetObject("divCalMain").style.width=DAY_CELL_WIDTH*48;if(crossGetObject("divSdlCal"))crossGetObject("divSdlCal").style.width=DAY_CELL_WIDTH*48;}else if(cal_type==SHOW_CALENDAR_TYPE_WEEK){if(crossGetObject("divCalMain"))crossGetObject("divCalMain").style.width=WEEK_CELL_WIDTH*7;if(crossGetObject("divSdlCal"))crossGetObject("divSdlCal").style.width=WEEK_CELL_WIDTH*7;}}
function Calendar(dstUserid,isScheduleView,groupNo,isMember,goalid,publish,objType){this.dstUserid=dstUserid;this.isMember=isMember;this.isScheduleView=isScheduleView;this.groupNo=groupNo;this.goalid=goalid;this.objType=objType;this.publish=publish;this.showCalendarType=SHOW_CALENDAR_TYPE_MONTH;this.cellDateTable=null;this.dateCellTable=null;this.baseDate=null;this.selectedDate=null;this.selectedNum=0;this.selectedBGColor=null;this.copyObject=null;this.beforeObj=null;this.selectedObj=null;this.copyObjectLink=null;this.editObject=null;this.copyLinkFlag=null;this.updateObjTop=null;this.updateObjLeft=null;this.localObject=new Array(31);this.localObjectTable=new Hashtable();this.localContObject=new Array(31);this.localContObjectTable=new Hashtable();this.showCalendarByMonth=function(argDate,isAllMemSchedule){gAllMemSchedule=isAllMemSchedule;var i,j,k,tmpDate;this.baseDate=argDate;tmpDate=moveDate(argDate,-argDate.getDay());var today=new Date();crossWrite(crossGetObject("thisYearAndMonth"),getYear(argDate.getYear())+"年"+(argDate.getMonth()+1)+"月");var docubuf="<table id='calendar' class='cal'>";docubuf+="<tr>";for(var i=0;i<7;i++){docubuf+="<td align='center' ";if(i==0)
docubuf+="class='sun'><b>"+gWeekTable[i];else if(i==6)
docubuf+="class='sat'><b>"+gWeekTable[i];else
docubuf+="class='mon'><b>"+gWeekTable[i];docubuf+="</b></td>";}
docubuf+="</tr>";this.cellDateTable=new Hashtable();this.dateCellTable=new Hashtable();var cellNum=0;for(var i=0;i<SHOWWEEK;i++){docubuf+="<tr class='caltr'>";for(var j=0;j<7;j++){if(this.isMember){if(crossGetObject("role")!=null){var myRole=crossGetObject("role").value;if(groupNo!=-1&&myRole=="manager"&&!isScheduleView){docubuf+="<td valign='top' id='cell-"+cellNum+"' onmouseup=\"selectDate('"+getDateByString(tmpDate)+"');\" onclick=\"newObject("+cellNum+","+groupNo+");\" ";}else{docubuf+="<td valign='top' id='cell-"+cellNum+"' onmouseup=\"selectDate('"+getDateByString(tmpDate)+"');\" ";}}else{docubuf+="<td valign='top' id='cell-"+cellNum+"' onmouseup=\"selectDate('"+getDateByString(tmpDate)+"');\" ";}}else{docubuf+="<td valign='top' id='cell-"+cellNum+"' onmouseup=\"selectDate('"+getDateByString(tmpDate)+"');\" onclick=\"newObject("+cellNum+", -1);\" ";}
this.cellDateTable.put(cellNum,getDateByString(tmpDate));this.dateCellTable.put(getDateByString(tmpDate),cellNum);if(getYear(tmpDate.getYear())==getYear(this.selectedDate.getYear())&&tmpDate.getMonth()==this.selectedDate.getMonth()&&tmpDate.getDate()==this.selectedDate.getDate()){this.selectedNum=cellNum;if(getYear(tmpDate.getYear())==getYear(today.getYear())&&tmpDate.getMonth()==today.getMonth()&&tmpDate.getDate()==today.getDate()){docubuf+="class='today'>";this.selectedBGColor="#e6fff6";}else if(tmpDate.getMonth()!=this.baseDate.getMonth()){docubuf+="class='nothismonth'>";this.selectedBGColor="#CCCCCC";}else if(j==0){docubuf+="class='holiday'>";this.selectedBGColor="#ffe6e6";}else if(j==6){docubuf+="class='saturday'>";this.selectedBGColor="#e6e6ff";}else{docubuf+="class='usualday'>";this.selectedBGColor="#FFFFFF";}}else if(getYear(tmpDate.getYear())==getYear(today.getYear())&&tmpDate.getMonth()==today.getMonth()&&tmpDate.getDate()==today.getDate()){docubuf+="class='today'>";}else if(k>=0){docubuf+=sdlSel[k]+">";}else if(tmpDate.getMonth()!=this.baseDate.getMonth()){docubuf+="class='nothismonth'>";}else if(j==0){docubuf+="class='holiday'>";}else if(j==6){docubuf+="class='saturday'>";}else{docubuf+="class='usualday'>";}
if(is.safari)
docubuf+="<div style='height: 100%;'>";docubuf+="<table class='cal_title' id='title-"+cellNum+"'><tr><td valign='top'><b>";if(tmpDate.getDate()==1&&tmpDate.getMonth()==0)
docubuf+=getYear(tmpDate.getYear())+"/";if(tmpDate.getDate()==1||(i==0&&j==0))
docubuf+=tmpDate.getMonth()+1+"/";docubuf+=tmpDate.getDate()+"</b></td>";docubuf+="<td valign='top'><div id='divMonthCell"+cellNum+"-1'></div></td>";docubuf+="<td valign='top'><div id='divMonthCell"+cellNum+"-2'></div></td>";docubuf+="<td valign='top'><div id='divMonthCell"+cellNum+"-3'></div></td>";docubuf+="<td valign='top'><div id='divMonthCell"+cellNum+"-4'></div></td>";docubuf+="<td valign='top'><div id='divMonthCell"+cellNum+"-5'></div></td>";docubuf+="</tr></table>";if(is.safari)
docubuf+="</div>";tmpDate=moveDate(tmpDate,1);docubuf+="</td>";cellNum++;}
docubuf+="</tr>";}
docubuf+="</table>";crossGetObject("divSdlCal").innerHTML=docubuf;var arg="'"+this.baseDate+"','"+this.isMember+"','"+this.isScheduleView+"','"+isAllMemSchedule+"','"+this.dstUserid+"','"+groupNo+"','"+goalid+"','"+publish+"','"+objType+"'";var id=setTimeout("loadObject("+arg+")",300);selectDate(getDateByString(this.selectedDate));}
loadObject=function(baseDate,isMember,isScheduleView,isAllMemSchedule,dstUserid,groupNo,goalid,publish,objType){this.baseDate=new Date(baseDate);if(isMember=="true")
this.isMember=true;else
this.isMember=false;if(isScheduleView=="true")
this.isScheduleView=true;else
this.isScheduleView=false;if(isAllMemSchedule=="true")
isAllMemSchedule=true;else
isAllMemSchedule=false;this.dstUserid=dstUserid;if(groupNo=="undefined"||groupNo=="null")
groupNo=-1;if(goalid=="undefined"||goalid=="null")
goalid="";for(var i=0;i<SHOWWEEK;i++){var date=new Date(getYear(this.baseDate.getYear()),this.baseDate.getMonth(),1);var first=moveDate(date,-date.getDay()+(i*7));first.setHours(0);first.setMinutes(0);first.setSeconds(0);var last=moveDate(first,6);last.setHours(23);last.setMinutes(59);last.setSeconds(59);if(goalid!=null&&goalid!=""){loadMemberGoalObjectFromDB(this.dstUserid,getDateByString(first),getDateByString(last),goalid);}else{if(groupNo!=-1){if(this.isScheduleView){loadGroupScheduleObjectFromDB(groupNo,getDateByString(first),getDateByString(last),publish,objType);}else
loadGroupObjectFromDB(groupNo,getDateByString(first),getDateByString(last),getCheckedPublish(this.isScheduleView,groupNo));}else if(!this.isMember){loadObjectFromDB(getDateByString(first),getDateByString(last),getCheckedPublish(false,groupNo));}else{if(this.isScheduleView){if(isAllMemSchedule){loadMemberScheduleObjectFromDB(this.dstUserid,getDateByString(first),getDateByString(last),null,objType);loadAllMemberScheduleObjectFromDB(getDateByString(first),getDateByString(last));}else{var myUserid=crossGetObject("userid").value;var myNickname=crossGetObject("nickname").value;if(myUserid==dstUserid)
loadMemberScheduleObjectFromDB(this.dstUserid,getDateByString(first),getDateByString(last),publish,objType);else
loadMemberScheduleObjectFromDB(this.dstUserid,getDateByString(first),getDateByString(last),null,objType);}}else{loadMemberObjectFromDB(this.dstUserid,getDateByString(first),getDateByString(last));}}}}}
parallel_loadObject=function(first,last,publish){loadObjectFromDB(first,last,publish);}
this.showCalendarByDay=function(isAllMemSchedule){gAllMemSchedule=isAllMemSchedule;crossGetObject("thisYearAndMonth").innerHTML=(this.selectedDate.getMonth()+1)+"月"+this.selectedDate.getDate()+"日 "+gWeekTable[this.selectedDate.getDay()];this.baseDate=this.selectedDate;this.cellDateTable=new Hashtable();this.dateCellTable=new Hashtable();var docubuf="<table class='daycal'>";docubuf+="<tr class='daycal-time-tr'>"
for(var i=0;i<24;i++){var tdclass="'daycal-time' ";if(i%2!=0)
tdclass="'daycal-time2' ";docubuf+="<td class="+tdclass+" colspan='2'>";docubuf+=(i*2)/2+"時";docubuf+="</td>";}
docubuf+="</tr>"
docubuf+="<tr class='daycaltr'>";var k=0;l=0;for(var i=0;i<48;i++){var tdclass="'daycal-usualday' ";if(k%2==0){l++;if(l==2){l=0;k++;}}else{tdclass="'daycal-usualday2' ";l++;if(l==2){l=0;k++;}}
var strDate=getYear(this.selectedDate.getYear())+"/"+this.selectedDate.getMonth()+"/"+this.selectedDate.getDate()+"/"+gTimeTable[i];this.cellDateTable.put(i,strDate);this.dateCellTable.put(strDate,i);if(this.isMember){if(crossGetObject("role")!=null){var myRole=crossGetObject("role").value;if(groupNo!=-1&&myRole=="manager"&&!isScheduleView){docubuf+="<td id='cell-"+i+"' class="+tdclass+"onmouseup=\"selectDate('"+strDate+"')\" ' onclick=\"newObject("+i+","+groupNo+")\"'>";}else{docubuf+="<td id='cell-"+i+"' class="+tdclass+"onmouseup=\"selectDate('"+strDate+"')\">";}}else{docubuf+="<td id='cell-"+i+"' class="+tdclass+"onmouseup=\"selectDate('"+strDate+"')\">";}}else{docubuf+="<td id='cell-"+i+"' class="+tdclass+"onmouseup=\"selectDate('"+strDate+"')\" ' onclick=\"newObject("+i+")\"'>";}
docubuf+="<table class='cal_title' width='100%' height='100%'><tr><td></td></tr></table>";docubuf+="</td>";}
docubuf+="</tr>";docubuf+="</table>";crossGetObject("divSdlCal").innerHTML=docubuf;var first=this.selectedDate;first.setHours(0);first.setMinutes(0);first.setSeconds(0);var strFirst=getDateByString(first);var last=this.selectedDate;last.setHours(23);last.setMinutes(59);last.setSeconds(59);var strLast=getDateByString(last);if(goalid!=null&&goalid!=""){loadMemberGoalObjectFromDB(this.dstUserid,strFirst,strLast,goalid);}else{if(this.groupNo!=-1){if(this.isScheduleView){loadGroupScheduleObjectFromDB(groupNo,strFirst,strLast,publish,objType);}else
loadGroupObjectFromDB(groupNo,strFirst,strLast,getCheckedPublish(this.isScheduleView,groupNo));}else if(!this.isMember){loadObjectFromDB(strFirst,strLast,getCheckedPublish(false,groupNo));}else{if(this.isScheduleView){if(isAllMemSchedule){loadMemberScheduleObjectFromDB(this.dstUserid,strFirst,strLast,null,objType);loadAllMemberScheduleObjectFromDB(strFirst,strLast);}else{var myUserid=crossGetObject("userid").value;var myNickname=crossGetObject("nickname").value;if(myUserid==dstUserid)
loadMemberScheduleObjectFromDB(this.dstUserid,strFirst,strLast,publish,objType);else
loadMemberScheduleObjectFromDB(this.dstUserid,strFirst,strLast,null,objType);}}else{loadMemberObjectFromDB(this.dstUserid,strFirst,strLast);}}}}
this.showCalendarByWeek=function(isAllMemSchedule){gAllMemSchedule=isAllMemSchedule;var sunDay=moveDate(this.selectedDate,-this.selectedDate.getDay());var satDay=moveDate(sunDay,6);var tmpDate=sunDay;this.baseDate=sunDay;if(sunDay.getYear()!=satDay.getYear())
crossGetObject("thisYearAndMonth").innerHTML=getYear(sunDay.getYear())+"年"+(sunDay.getMonth()+1)+"月"+sunDay.getDate()+"日"+" - "+getYear(satDay.getYear())+"年"+(satDay.getMonth()+1)+"月"+satDay.getDate()+"日";else
crossGetObject("thisYearAndMonth").innerHTML=(sunDay.getMonth()+1)+"月"+sunDay.getDate()+"日"+" - "+(satDay.getMonth()+1)+"月"+satDay.getDate()+"日";var today=new Date();var docubuf="<table id='calendar' class='weekcal'>";docubuf+="<tr class='weekcaltr1'>";for(var i=0;i<7;i++){docubuf+="<td align='center' ";if(i==0)
docubuf+="class ='sun'><b>"+gWeekTable[i];else if(i==6)
docubuf+="class ='sat'><b>"+gWeekTable[i];else
docubuf+="class ='mon'><b>"+gWeekTable[i];docubuf+="</b></td>";}
docubuf+="</tr>";this.cellDateTable=new Hashtable();this.dateCellTable=new Hashtable();var cellNum=0;docubuf+="<tr class='weekcaltr2'>";for(var i=0;i<7;i++){if(this.isMember){if(crossGetObject("role")!=null){var myRole=crossGetObject("role").value;if(groupNo!=-1&&myRole=="manager"&&!isScheduleView){docubuf+="<td valign='top' id='cell-"+cellNum+"' onmouseup=\"selectDate('"+getDateByString(tmpDate)+"');\" onclick=\"newObject("+cellNum+","+groupNo+");\" ";}else{docubuf+="<td valign='top' id='cell-"+cellNum+"' onmouseup=\"selectDate('"+getDateByString(tmpDate)+"');\" ";}}else{docubuf+="<td valign='top' id='cell-"+cellNum+"' onmouseup=\"selectDate('"+getDateByString(tmpDate)+"');\" ";}}else{docubuf+="<td valign='top' id='cell-"+cellNum+"' onmouseup=\"selectDate('"+getDateByString(tmpDate)+"');\" onclick=\"newObject("+cellNum+", -1);\" ";}
this.cellDateTable.put(cellNum,getDateByString(tmpDate));this.dateCellTable.put(getDateByString(tmpDate),cellNum);if(getYear(tmpDate.getYear())==getYear(this.selectedDate.getYear())&&tmpDate.getMonth()==this.selectedDate.getMonth()&&tmpDate.getDate()==this.selectedDate.getDate()){this.selectedNum=cellNum;if(getYear(tmpDate.getYear())==getYear(today.getYear())&&tmpDate.getMonth()==today.getMonth()&&tmpDate.getDate()==today.getDate()){docubuf+="class='weekcal-today'>";this.selectedBGColor="#e6fff6";}else if(i==0){docubuf+="class='weekcal-holiday'>";this.selectedBGColor="#ffe6e6";}else if(i==6){docubuf+="class='weekcal-saturday'>";this.selectedBGColor="#e6e6ff";}else{docubuf+="class='weekcal-usualday'>";this.selectedBGColor="#FFFFFF";}}else if(getYear(tmpDate.getYear())==getYear(today.getYear())&&tmpDate.getMonth()==today.getMonth()&&tmpDate.getDate()==today.getDate()){docubuf+="class='weekcal-today'>";}else if(i==0){docubuf+="class='weekcal-holiday'>";}else if(i==6){docubuf+="class='weekcal-saturday'>";}else{docubuf+="class='weekcal-usualday'>";}
if(is.safari)
docubuf+="<div style='height: 100%;'>";docubuf+="<table class='cal_title' id='title-"+cellNum+"'><tr><td valign='top'><b>";if(tmpDate.getDate()==1&&tmpDate.getMonth()==0)
docubuf+=getYear(tmpDate.getYear())+"/";if(tmpDate.getDate()==1||i==0)
docubuf+=tmpDate.getMonth()+1+"/";docubuf+=tmpDate.getDate()+"</b></td>";docubuf+="<td valign='top'><div id='divMonthCell"+cellNum+"-1'></div></td>";docubuf+="<td valign='top'><div id='divMonthCell"+cellNum+"-2'></div></td>";docubuf+="<td valign='top'><div id='divMonthCell"+cellNum+"-3'></div></td>";docubuf+="<td valign='top'><div id='divMonthCell"+cellNum+"-4'></div></td>";docubuf+="<td valign='top'><div id='divMonthCell"+cellNum+"-5'></div></td>";docubuf+="</tr></table>";if(is.safari)
docubuf+="</div>";tmpDate=moveDate(tmpDate,1);docubuf+="</td>";cellNum++;}
docubuf+="</tr>";docubuf+="</table>";crossGetObject("divSdlCal").innerHTML=docubuf;var first=sunDay;first.setHours(0);first.setMinutes(0);first.setSeconds(0);var last=satDay;last.setHours(23);last.setMinutes(59);last.setSeconds(59);if(goalid!=null&&goalid!=""){loadMemberGoalObjectFromDB(this.dstUserid,getDateByString(first),getDateByString(last),goalid);}else{if(this.groupNo!=-1){if(this.isScheduleView){loadGroupScheduleObjectFromDB(groupNo,getDateByString(first),getDateByString(last),publish,objType);}else
loadGroupObjectFromDB(groupNo,getDateByString(first),getDateByString(last),getCheckedPublish(this.isScheduleView,groupNo));}else if(!this.isMember){loadObjectFromDB(getDateByString(first),getDateByString(last),getCheckedPublish(false,groupNo));}else{if(this.isScheduleView){if(isAllMemSchedule){loadMemberScheduleObjectFromDB(this.dstUserid,getDateByString(first),getDateByString(last),null,objType);loadAllMemberScheduleObjectFromDB(getDateByString(first),getDateByString(last));}else{var myUserid=crossGetObject("userid").value;var myNickname=crossGetObject("nickname").value;if(myUserid==dstUserid)
loadMemberScheduleObjectFromDB(this.dstUserid,getDateByString(first),getDateByString(last),publish,objType);else
loadMemberScheduleObjectFromDB(this.dstUserid,getDateByString(first),getDateByString(last),null,objType);}}else{loadMemberObjectFromDB(this.dstUserid,getDateByString(first),getDateByString(last));}}}
selectDate(getDateByString(this.selectedDate));}
this.changeObjectByMonth=function(obj){if(this.beforeObj!=null){var before_start=getDateFromString(this.beforeObj.start);var before_end=getDateFromString(this.beforeObj.end);var array=this.beforeObj.start.split("/");var startD=parseInt(array[2]);array=this.beforeObj.end.split("/");var endD=parseInt(array[2]);var isTodayColor=gDesignList["todayObjColor"];var before_d=Math.abs(Math.floor((before_end.getTime()-before_start.getTime())/(1000*60*60*24)+1));if((before_start<before_end||startD!=endD)&&before_d>1){changeClass(this.beforeObj.item.id,"object-long");var box=this.localContObjectTable.get(this.beforeObj.objid);if(box!=null){for(var i=0;i<box.getSize();i++){if(box.getElementAt(i)!=null){changeClass(box.getElementAt(i).id,"object-long");changeObjectColor(false,this.beforeObj,box.getElementAt(i));}}}}else{changeClass(this.beforeObj.item.id,"object");var box=this.localContObjectTable.get(this.beforeObj.objid);if(box!=null){for(var i=0;i<box.getSize();i++){if(box.getElementAt(i)!=null){changeClass(box.getElementAt(i).id,"object");changeObjectColor(false,this.beforeObj,box.getElementAt(i));}}}}
changeObjectColor(false,this.beforeObj,this.beforeObj.item);}
var start=getDateFromString(obj.start);var end=getDateFromString(obj.end);var d=Math.abs(Math.floor((end.getTime()-start.getTime())/(1000*60*60*24)+1));if((d>7)||(start.getDay()>end.getDay())){var strClass="";if(start<end&&d>1)
strClass="object-long_selected";else
strClass="object-selected";changeClass(obj.item.id,strClass);var box=this.localContObjectTable.get(obj.objid);if(box!=null){for(var i=0;i<box.getSize();i++){if(box.getElementAt(i)!=null){changeClass(box.getElementAt(i).id,strClass);changeObjectColor(true,obj,box.getElementAt(i));}}}
changeObjectColor(true,obj,obj.item);}else{obj.item.style.height=MONTH_DATA_HEIGHT;if(is.ie)
obj.item.style.width=(MONTH_CELL_WIDTH*d)-1;else if(is.firefox)
obj.item.style.width=(MONTH_CELL_WIDTH*d-1)-2;else if(is.safari)
obj.item.style.width=(MONTH_CELL_WIDTH*d-2)-2;else
obj.item.style.width=(MONTH_CELL_WIDTH*d-1)-1;var strClass="";if(start<end&&d>1)
strClass="object-long_selected";else
strClass="object-selected";changeClass(obj.item.id,strClass);changeObjectColor(true,obj,obj.item);}
this.selectedObj=obj;this.beforeObj=obj;}
this.changeObjectByDay=function(obj){var isTodayColor=gDesignList["todayObjColor"];if(this.beforeObj!=null){changeClass(this.beforeObj.item.id,"object-long");changeObjectColor(false,this.beforeObj,this.beforeObj.item);}
var start=getDateFromString(obj.start);var end=getDateFromString(obj.end);var width;if(obj.allday){width=DAY_CELL_WIDTH*48;}else{var today=this.selectedDate;if(start.getDate()<today.getDate()&&end.getDate()>today.getDate()){width=DAY_CELL_WIDTH*48;}else if(start.getDate()<today.getDate()){var startToday=new Date(getYear(today.getYear()),today.getMonth(),today.getDate());startToday.setHours(0);startToday.setMinutes(0);startToday.setSeconds(0);var d=(end.getTime()-startToday.getTime())/(1000*60*60);if(is.ie)
width=DAY_CELL_WIDTH*(d*2);else if(is.firefox)
width=DAY_CELL_WIDTH*(d*2)-1;else if(is.safari)
width=DAY_CELL_WIDTH*(d*2)-2;else
width=DAY_CELL_WIDTH*(d*2)-1;}else{var d=(end.getTime()-start.getTime())/(1000*60*60);var endToday=new Date(getYear(start.getYear()),start.getMonth(),start.getDate());endToday.setHours(23);endToday.setMinutes(59);endToday.setSeconds(59);var td=(endToday.getTime()-start.getTime())/(1000*60*60);if(td<d)
d=td;if(d<=0)d=1;if(is.ie)
width=DAY_CELL_WIDTH*(d*2);else if(is.firefox)
width=DAY_CELL_WIDTH*(d*2)-1;else if(is.safari)
width=DAY_CELL_WIDTH*(d*2)-2;else
width=DAY_CELL_WIDTH*(d*2)-1;}}
obj.item.style.height=DAY_DATA_HEIGHT;obj.item.style.width=width;changeClass(obj.item.id,"object-long_selected");changeObjectColor(true,obj,obj.item);this.selectedObj=obj;this.beforeObj=obj;}
this.changeObjectByWeek=function(obj){if(this.beforeObj!=null){var before_start=getDateFromString(this.beforeObj.start);var before_end=getDateFromString(this.beforeObj.end);var array=this.beforeObj.start.split("/");var startD=parseInt(array[2]);array=this.beforeObj.end.split("/");var endD=parseInt(array[2]);var isTodayColor=gDesignList["todayObjColor"];var before_d=Math.abs(Math.floor((before_end.getTime()-before_start.getTime())/(1000*60*60*24)+1));if((before_start<before_end||startD!=endD)&&before_d>1){changeClass(this.beforeObj.item.id,"object-long");}else{changeClass(this.beforeObj.item.id,"object");}
changeObjectColor(false,this.beforeObj,this.beforeObj.item);}
var start=getDateFromString(obj.start);var end=getDateFromString(obj.end);var d=Math.abs(Math.floor((end.getTime()-start.getTime())/(1000*60*60*24)+1));if((d>7)||(start.getDay()>end.getDay())){var satNum=0;var nStart=null;if(start<this.baseDate){var hi=getYear(start.getYear())+"/"+start.getMonth()+"/"+start.getDate()+"/0:00";var hi_obj=getDateFromString(hi);var sub=Math.abs(Math.floor((this.baseDate.getTime()-hi_obj.getTime())/(1000*60*60*24)+1))-1;satNum=d-sub;nStart=this.baseDate;}
else{nStart=start;satNum=6-nStart.getDay()+1;}
if(satNum<=0)
satNum=6-nStart.getDay()+1;else{setText(satNum,obj.item,this,obj.userid,obj.objid,obj.type,obj.name,obj.start,obj.end,obj.publish,obj.group,obj.link,obj.tag,obj.allday,obj.desc,obj.isMove,obj.isDelMenu,obj.isEditable,obj.commentExist);if(obj.commentExist)processComment(obj);if(satNum>7){satNum=6-nStart.getDay()+1;}}
obj.item.style.height=WEEK_DATA_HEIGHT;obj.item.style.width=WEEK_CELL_WIDTH*satNum;var strClass="";if(start<end&&d>1)
strClass="object-long_selected";else
strClass="object-selected";changeClass(obj.item.id,strClass);var box=this.localContObjectTable.get(obj.objid);if(box!=null){for(var i=0;i<box.getSize();i++){if(box.getElementAt(i)!=null){changeClass(box.getElementAt(i).id,strClass);changeObjectColor(true,obj,box.getElementAt(i));}}}
changeObjectColor(true,obj,obj.item);}else{obj.item.style.height=WEEK_DATA_HEIGHT;if(is.ie)
obj.item.style.width=WEEK_CELL_WIDTH*d;else if(is.firefox)
obj.item.style.width=WEEK_CELL_WIDTH*d-1;else if(is.safari)
obj.item.style.width=WEEK_CELL_WIDTH*d-2;else
obj.item.style.width=WEEK_CELL_WIDTH*d-1;var strClass="";if(start<end&&d>1)
strClass="object-long_selected";else
strClass="object-selected";changeClass(obj.item.id,strClass);changeObjectColor(true,obj,obj.item);}
this.selectedObj=obj;this.beforeObj=obj;}
this.changeObjectProperty=function(obj,dstCell){var array1=obj.start.split("/");var array2=obj.end.split("/");var startDate=getDateFromString(obj.start);var endDate=getDateFromString(obj.end);var strStartDate;var strEndDate;if(this.showCalendarType==SHOW_CALENDAR_TYPE_MONTH){var d=Math.abs(Math.floor((endDate.getTime()-startDate.getTime())/(1000*60*60*24)+1));var date=this.getDateFromCellNum(dstCell);var date2=moveDate(date,d-1);strStartDate=getYear(date.getYear())+"/"+date.getMonth()+"/"+date.getDate()+"/"+array1[3];strEndDate=getYear(date2.getYear())+"/"+date2.getMonth()+"/"+date2.getDate()+"/"+array2[3];}else if(this.showCalendarType==SHOW_CALENDAR_TYPE_DAY){var fromCell=this.getCellNumFromDate(obj.start);var sub=dstCell-fromCell;var subTime=sub*30*60*1000;var sd=new Date(startDate.getTime()+subTime);var ed=new Date(endDate.getTime()+subTime);strStartDate=getYear(sd.getYear())+"/"+sd.getMonth()+"/"+sd.getDate()+"/"+sd.getHours()+":"+sd.getMinutes();strEndDate=getYear(ed.getYear())+"/"+ed.getMonth()+"/"+ed.getDate()+"/"+ed.getHours()+":"+ed.getMinutes();crossGetObject(obj.item.id).innerHTML=sd.getHours()+":"+sd.getMinutes()+"-"+ed.getHours()+":"+ed.getMinutes()+" "+obj.name;}else if(this.showCalendarType==SHOW_CALENDAR_TYPE_WEEK){var d=Math.abs(Math.floor((endDate.getTime()-startDate.getTime())/(1000*60*60*24)+1));var date=this.getDateFromCellNum(dstCell);var date2=moveDate(date,d-1);strStartDate=getYear(date.getYear())+"/"+date.getMonth()+"/"+date.getDate()+"/"+array1[3];strEndDate=getYear(date2.getYear())+"/"+date2.getMonth()+"/"+date2.getDate()+"/"+array2[3];}
obj.start=strStartDate;obj.end=strEndDate;this.selectedObj=obj;}
this.checkLocationByMonth=function(x,y){for(var i=0;i<7;i++){var tX1=getElemPos(crossGetObject("cell-"+i)).x;var tX2=getElemPos(crossGetObject("cell-"+i)).x+crossGetObject("cell-"+i).offsetWidth-1;if(tX1<=x&&tX2>x){for(var j=0;j<SHOWWEEK;j++){var tY1=getElemPos(crossGetObject("cell-"+(j*7))).y;var tY2=getElemPos(crossGetObject("cell-"+(j*7))).y+crossGetObject("cell-"+j).offsetHeight;if(tY1<=y&&tY2>y){var k=(j*7)+i;return k;}}}}
return this.selectedNum;}
this.checkLocationByDay=function(x,y){for(var i=0;i<48;i++){var tX1=getElemPos(crossGetObject("cell-"+i)).x;;var tX2=getElemPos(crossGetObject("cell-"+i)).x+crossGetObject("cell-"+i).offsetWidth;if(tX1<=x&&tX2>x){return i;}}
return this.selectedNum;}
this.checkLocationByWeek=function(x,y){for(var i=0;i<7;i++){var tX1=getElemPos(crossGetObject("cell-"+i)).x;var tX2=getElemPos(crossGetObject("cell-"+i)).x+crossGetObject("cell-"+i).offsetWidth;if(tX1<=x&&tX2>x){var tY1=getElemPos(crossGetObject("cell-"+i)).y;var tY2=getElemPos(crossGetObject("cell-"+i)).y+crossGetObject("cell-"+i).offsetHeight;if(tY1<=y&&tY2>y){return i;}}}
return this.selectedNum;}
this.locateObjectByMonth=function(cell,obj,isContObj){var duration=1;if(!isContObj){duration=getDuration(obj.start,obj.end);}else{if(cell==-1){obj.style.left=0;obj.style.top=0;crossHideObject(obj);return;}
var parentobjIndex=this.getParentObjectIndex(obj.id);if(parentobjIndex==-1){if(this.localObject[cell]!=null){parentobjIndex=this.localObject[cell].getSize()-1;for(var i=0;i<this.localObject[cell].getSize();i++){if(this.localObject[cell].getElementAt(i).locateIndex>i){parentobjIndex=i;break;}}}else{parentobjIndex=0;}}
var pos_obj=getElemPos(crossGetObject("title-"+cell));var x=pos_obj.x;var y=pos_obj.y+crossGetObject("title-"+cell).offsetHeight+(parentobjIndex*MONTH_DATA_HEIGHT);obj.style.left=x;obj.style.top=y;obj.style.height=MONTH_DATA_HEIGHT;return;}
setText(getDuration(obj.start,obj.end),obj.item,this,obj.userid,obj.objid,obj.type,obj.name,obj.start,obj.end,obj.publish,obj.group,obj.link,obj.tag,obj.allday,obj.desc,obj.isMove,obj.isDelMenu,obj.isEditable,obj.commentExist);if(obj.commentExist)processComment(obj);if(duration>1){if(cell!=-1&&this.localObject[cell]!=null){var sunDay=moveDate(this.baseDate,-this.baseDate.getDay());var locateIndex=this.localObject[cell].getSize()-1;for(var i=0;i<this.localObject[cell].getSize();i++){if(this.localObject[cell].getElementAt(i).locateIndex>i){locateIndex=i;break;}}
var pos_obj=getElemPos(crossGetObject("title-"+cell));var x=pos_obj.x;var y=pos_obj.y+crossGetObject("title-"+cell).offsetHeight+(locateIndex*MONTH_DATA_HEIGHT);obj.item.style.left=x;obj.item.style.top=y;obj.item.style.height=MONTH_DATA_HEIGHT;this.updateLocation(cell,obj,x,y,locateIndex);if(getDateFromString(obj.start)>=sunDay){}else{crossHideObject(obj.item);}}else{obj.item.style.left=0;obj.item.style.top=0;crossHideObject(obj.item);}}else{var firstDate=moveDate(this.baseDate,-this.baseDate.getDay());if(firstDate>getDateFromString(obj.start)){crossHideObject(obj.item);return;}
var locateIndex=this.localObject[cell].getSize()-1;for(var i=0;i<this.localObject[cell].getSize();i++){if(this.localObject[cell].getElementAt(i).locateIndex>i){locateIndex=i;break;}}
var pos_obj=getElemPos(crossGetObject("title-"+cell));var x=pos_obj.x;var y=pos_obj.y+crossGetObject("title-"+cell).offsetHeight+(locateIndex*MONTH_DATA_HEIGHT);if(obj.item==null){obj.style.left=x;obj.style.top=y;obj.style.height=MONTH_DATA_HEIGHT;}else{obj.item.style.left=x;obj.item.style.top=y;obj.item.style.height=MONTH_DATA_HEIGHT;}
this.updateLocation(cell,obj,x,y,locateIndex);}}
this.becomeMaxObject=function(cell){var todayNum=0;if(this.localObject[cell]!=null)
todayNum=this.localObject[cell].getSize()+1;if(this.showCalendarType==SHOW_CALENDAR_TYPE_MONTH){if(todayNum>Math.floor(MONTH_CELL_HEIGHT/MONTH_DATA_HEIGHT)-1){return true;}}else if(this.showCalendarType==SHOW_CALENDAR_TYPE_DAY){}else if(this.showCalendarType==SHOW_CALENDAR_TYPE_WEEK){if(todayNum>Math.floor(WEEK_CELL_HEIGHT/WEEK_DATA_HEIGHT)-1){return true;}}
return false;}
this.createContObjectByMonth=function(obj){var start=getDateFromString(obj.start);var end=getDateFromString(obj.end);var d=Math.abs(Math.floor((end.getTime()-start.getTime())/(1000*60*60*24)+1));if((d>7)||(start.getDay()>end.getDay())){var num=0;var leftDay=d;var objStart=start;var lastWeek=-1;while((leftDay>0)&&(num!=lastWeek)){var satNum=6-objStart.getDay()+1;var k=satNum;if(num!=0){var k2=Math.abs(Math.floor((end.getTime()-objStart.getTime())/(1000*60*60*24)+1));if(k2<7)
k=k2;}
leftDay=leftDay-k;if(num>0){var sunDay=moveDate(this.baseDate,-this.baseDate.getDay());var satDay=moveDate(sunDay,6);var lastDay=moveDate(satDay,7*5);if(objStart<lastDay){var contObjId="cont@"+num+"@"+random()+"@"+obj.objid;var contObj=dragableFloat(contObjId,FLOAT_BASE_LEFT,FLOAT_BASE_TOP,false,"divSdlCal");setText(k,contObj,this,obj.userid,obj.objid,obj.type,obj.name,obj.start,obj.end,obj.publish,obj.group,obj.link,obj.tag,obj.allday,obj.desc,obj.isMove,obj.isDelMenu,obj.isEditable,obj.commentExist);if(is.ie)
contObj.style.width=(((MONTH_CELL_WIDTH*k)-1))-1;else if(is.firefox)
contObj.style.width=(((MONTH_CELL_WIDTH*k)-1)-1)-2;else if(is.safari)
contObj.style.width=(((MONTH_CELL_WIDTH*k)-1)-2)-1;else
contObj.style.width=(((MONTH_CELL_WIDTH*k)-1)-1)-1;this.registerLocalContObject(this.getCellNumFromDate(getDateByString(objStart)),obj.objid,contObj);if(start<end&&d>1)
changeClass(contObjId,"object-long_selected");else
changeClass(contObjId,"object-selected");this.locateObjectByMonth(this.getCellNumFromDate(getDateByString(objStart)),contObj,true);}}else{setText(k,obj.item,this,obj.userid,obj.objid,obj.type,obj.name,obj.start,obj.end,obj.publish,obj.group,obj.link,obj.tag,obj.allday,obj.desc,obj.isMove,obj.isDelMenu,obj.isEditable,obj.commentExist);obj.item.style.height=MONTH_DATA_HEIGHT;if(is.ie)
obj.item.style.width=MONTH_CELL_WIDTH*k-4;else if(is.firefox)
obj.item.style.width=((MONTH_CELL_WIDTH*k)-1)-1;else if(is.safari)
obj.item.style.width=((MONTH_CELL_WIDTH*k)-2)-4;else
obj.item.style.width=((MONTH_CELL_WIDTH*k)-1)-4;if(start<end&&d>1)
changeClass(obj.item.id,"object-long_selected");else
changeClass(obj.item.id,"object-selected");}
num++;objStart=moveDate(objStart,-objStart.getDay()+7);if(this.getCellNumFromDate(getDateByString(objStart))==(7*SHOWWEEK)-7){lastWeek=num+1;}}}}
this.locateObjectByDay=function(cell,obj){if(obj.allday||cell==-1)
cell=0;var todayNum=0;for(var i=0;i<this.localObject.length;i++){if(this.localObject[i]!=null){var v=this.localObject[i];todayNum+=this.localObject[i].getSize();}}
todayNum--;if(todayNum<0)
todayNum=0;var pos_obj=getElemPos(crossGetObject("cell-"+cell));var x=pos_obj.x;var y=pos_obj.y+(todayNum*DAY_DATA_HEIGHT);if(obj.item==null){obj.style.left=x;obj.style.top=y;}else{obj.item.style.left=x;obj.item.style.top=y;}
this.updateLocation(cell,obj,x,y,todayNum);}
this.locateObjectByWeek=function(cell,obj){if(cell==-1)
cell=0;var duration=1;if(obj.item!=null){duration=getDuration(obj.start,obj.end);}
if(duration>1){if(cell!=-1&&this.localObject[cell]!=null){var locateIndex=this.localObject[cell].getSize()-1;for(var i=0;i<this.localObject[cell].getSize();i++){if(this.localObject[cell].getElementAt(i).locateIndex>i){locateIndex=i;break;}}
var pos_obj=getElemPos(crossGetObject("title-"+cell));var x=pos_obj.x;var y=pos_obj.y+crossGetObject("title-"+cell).offsetHeight+(locateIndex*WEEK_DATA_HEIGHT);obj.item.style.left=x;obj.item.style.top=y;this.updateLocation(cell,obj,x,y,locateIndex);}else{obj.item.style.left=0;obj.item.style.top=0;crossHideObject(obj.item);}}else{var locateIndex=this.localObject[cell].getSize()-1;for(var i=0;i<this.localObject[cell].getSize();i++){if(this.localObject[cell].getElementAt(i).locateIndex>i){locateIndex=i;break;}}
var pos_obj=getElemPos(crossGetObject("title-"+cell));var x=pos_obj.x;var y=pos_obj.y+crossGetObject("title-"+cell).offsetHeight+(locateIndex*WEEK_DATA_HEIGHT);if(obj.item==null){obj.style.left=x;obj.style.top=y;}else{obj.item.style.left=x;obj.item.style.top=y;}
this.updateLocation(cell,obj,x,y,locateIndex);}}
this.getMonthIndexFromLocation=function(cell,obj){var selY=Math.floor(cell/7);var CON=((selY*MONTH_CELL_HEIGHT)+MONTH_TITLE_DATE_HEIGHT+MONTH_TITLE_HEIGHT);var index=Math.floor((obj.top-CON)/MONTH_DATA_HEIGHT);return index;}
this.getWeekIndexFromLocation=function(cell,obj){var selY=Math.floor(cell/7);var CON=((selY*WEEK_CELL_HEIGHT)+WEEK_TITLE_DATE_HEIGHT+WEEK_TITLE_HEIGHT);var index=(obj.top-CON)/WEEK_DATA_HEIGHT;return index;}
this.updateLocation=function(cell,obj,x,y,index){if(this.localObject[cell]!=null){var oldidx=this.localObject[cell].indexOf(obj);this.localObject[cell].removeElementAt(oldidx);obj.left=parseInt(x);obj.top=parseInt(y);obj.locateIndex=index;this.localObject[cell].insertElementAt(obj,index);if(cell==this.getCellNumFromDate(obj.start)){var duration=getDuration(obj.start,obj.end);for(var i=1;i<duration;i++){this.updateLocation(cell+i,obj,x,y,index);}}}
this.localObjectTable.remove(obj.objid);this.localObjectTable.put(obj.objid,obj);}
this.getObjectIndex=function(cell,obj){if(this.localObject[cell]!=null){var index=this.localObject[cell].indexOf(obj);return index;}
return-1;}
this.getCellNumFromDate=function(strDate){if(this.showCalendarType==SHOW_CALENDAR_TYPE_MONTH){var array=strDate.split("/");strDate=array[0]+"/"+array[1]+"/"+array[2]+"/0:00";}else if(this.showCalendarType==SHOW_CALENDAR_TYPE_DAY){var array=strDate.split("/");var array2=array[3].split(":");var min=parseInt(array2[1]);var strMin;if(min>=0&&min<30){strMin="00";}else if(min>=30&&min<=59){strMin="30";}
strDate=array[0]+"/"+array[1]+"/"+array[2]+"/"+array2[0]+":"+strMin;}else if(this.showCalendarType==SHOW_CALENDAR_TYPE_WEEK){var array=strDate.split("/");strDate=array[0]+"/"+array[1]+"/"+array[2]+"/0:00";}
var res=this.dateCellTable.get(strDate);if(res==null)
res=-1;return res;}
this.getDateFromCellNum=function(cellNum){if(cellNum<=-1){var strDate=this.cellDateTable.get(0);var dat=getDateFromString(strDate);dat=moveDate(dat,-1);return dat;}
var strDate=this.cellDateTable.get(cellNum);var dat=getDateFromString(strDate);return dat;}
this.registerLocalObject=function(dateCell,obj){var box=this.localObject[dateCell];if(box==null){var v=new Vector();v.addElement(obj);this.localObject[dateCell]=v;}else{box.addElement(obj);}
this.localObjectTable.put(obj.objid,obj);}
this.removeLocalObject=function(dateCell,objid){var box=this.localObject[dateCell];if(box!=null){for(var i=0;i<box.getSize();i++){if(box.getElementAt(i).objid==objid){var obj=box.getElementAt(i);var duration=getDuration(obj.start,obj.end);if(duration>1){if(this.isStartDate(dateCell,obj)){for(var d=1;d<duration;d++){this.removeLocalObject(dateCell+d,objid);}}}
box.removeElementAt(i);break;}}}
this.localObjectTable.remove(objid);this.removeLocalContObject(dateCell,objid);}
this.getLocalObject=function(objid){for(var i=0;i<this.localObject.length;i++){var box=this.localObject[i];if(box!=null){for(var j=0;j<box.getSize();j++){if(box.getElementAt(j).objid==objid){return box.getElementAt(j);}}}}}
this.getLocalObjectFromHashTable=function(key){return this.localObjectTable.get(key);}
this.isExist=function(dateCell,objid){var box=this.localObject[dateCell];if(box!=null){for(var i=0;i<box.getSize();i++){var obj=box.getElementAt(i);if(obj.objid==objid&&this.isStartDate(dateCell,obj)){return true;}}}
return false;}
this.isStartDate=function(dateCell,obj){if(this.getCellNumFromDate(obj.start)==dateCell&&(this.showCalendarType!=SHOW_CALENDAR_TYPE_MONTH||this.showCalendarType!=SHOW_CALENDAR_TYPE_WEEK)){return true;}
return false;}
this.registerLocalContObject=function(dateCell,baseID,obj){var box=this.localContObject[dateCell];if(box==null){var v=new Vector();v.addElement(obj);this.localContObject[dateCell]=v;}else{box.addElement(obj);}
box=this.localContObjectTable.get(baseID);if(box==null){var v=new Vector();v.addElement(obj);this.localContObjectTable.put(baseID,v);}else{box.addElement(obj);}}
this.removeLocalContObject=function(dateCell,baseID){var box=this.localContObject[dateCell];if(box!=null){for(var i=0;i<box.getSize();i++){if(box.getElementAt(i)!=null){var parentObjid=this.getParentObjectId(box.getElementAt(i).id);if(parentObjid==baseID){box.removeElementAt(i);break;}}}}
box=this.localContObjectTable.get(baseID);if(box!=null){for(var i=0;i<box.getSize();i++){if(box.getElementAt(i)!=null){if(box.getElementAt(i)!=null){var contid=box.getElementAt(i).id;crossGetObject(contid).parentNode.removeChild(box.getElementAt(i));}}}
this.localContObjectTable.remove(baseID);}}
this.clearAllLocalObject=function(){for(var i=0;i<this.localObject.length;i++){var box=this.localObject[i];if(box!=null){for(var j=0;j<box.getSize();j++){var obj=box.getElementAt(j);if(obj!=null){if(this.isStartDate(i,obj)){if(crossGetObject(obj.item.id)!=null)
crossGetObject(obj.item.id).parentNode.removeChild(obj.item);}
this.localObjectTable.remove(obj.objid);this.removeLocalContObject(i,obj.objid);}}}
this.localObject[i]=null;this.localContObject[i]=null;}
var maxCell=7*SHOWWEEK;for(var i=0;i<5;i++){for(var j=0;j<maxCell;j++){var divCell="divMonthCell"+j+"-"+(i+1);if(crossGetObject("cell-"+divCell)!=null)
crossWrite(crossGetObject("cell-"+divCell),"");}}}
this.clearLocalObject=function(cell,objid){var box=this.localObject[cell];if(box!=null){for(var i=0;i<box.getSize();i++){if(box.getElementAt(i).objid==objid){box.removeElementAt(i);this.localObjectTable.remove(objid);this.removeLocalContObject(cell,objid);break;}}}}
this.repaintObject=function(){hideBallon();this.clearAllLocalObject();switch(this.showCalendarType){case SHOW_CALENDAR_TYPE_MONTH:this.showCalendarByMonth(this.baseDate);break;case SHOW_CALENDAR_TYPE_DAY:this.showCalendarByDay();break;case SHOW_CALENDAR_TYPE_WEEK:this.showCalendarByWeek();break;}}
this.getParentObjectId=function(contObjId){var array=contObjId.split("@");return array[3];}
this.getParentObjectIndex=function(contObjId){var pid=this.getParentObjectId(contObjId);var pobj=this.getLocalObjectFromHashTable(pid);objNum=pobj.locateIndex;return objNum;}
this.setSelectObject=function(objid,isPaticularObject){var tmp=this.getLocalObjectFromHashTable(objid);if(tmp!=null){this.selectedObj=tmp;var k;if(this.showCalendarType==SHOW_CALENDAR_TYPE_MONTH){this.changeObjectByMonth(tmp);k=this.checkLocationByMonth(tmp.item.getLEFT(tmp.item.id),tmp.item.getTOP(tmp.item.id));}else if(this.showCalendarType==SHOW_CALENDAR_TYPE_DAY){this.changeObjectByDay(tmp);k=this.checkLocationByDay(tmp.item.getLEFT(tmp.item.id),tmp.item.getTOP(tmp.item.id));}else if(this.showCalendarType==SHOW_CALENDAR_TYPE_WEEK){this.changeObjectByWeek(tmp);k=this.checkLocationByWeek(tmp.item.getLEFT(tmp.item.id),tmp.item.getTOP(tmp.item.id));}
this.selectedNum=k;selectDate(tmp.start);if(isPaticularObject){var start=getDateFromString(tmp.start);var end=getDateFromString(tmp.end);var d=getDuration(tmp.start,tmp.end);if(start<end&&d>1)
changeClass(tmp.item.id,"object-long_selected");else
changeClass(tmp.item.id,"object-selected");}}else{}}
this.getTodayObjectNum=function(cell){if(cell==-1)
return 0;return this.localObject[cell].getSize()-1;}
return this;}
function setText(duration,item,calobj,userid,objid,type,name,start,end,publish,group,link,tag,allday,desc,isMove,isDelMenu,isEditable,commentExist){var BASE_LENGTH=MONTH_CELL_WIDTH/6;var text_duration=duration;var baseCharLength=BASE_LENGTH*text_duration;var date=getDateFromString(start);if(date.getDay()==6&&text_duration>1){baseCharLength=(BASE_LENGTH+8)*text_duration;}
if(link!=""){baseCharLength-=1;}
if(!allday){var array=start.split("/");var num=array[3].split(":");if((commentExist||isEditable)&&parseInt(num[0])>=10){baseCharLength-=1;}else if((commentExist||isEditable)){baseCharLength-=1;}}else{if(commentExist||isEditable){baseCharLength-=2;}}
if(type!=OBJ_ICAL&&type!=OBJ_LOG&&type<=OBJ_USER_LOG_START_NO)
baseCharLength-=1;var text="";if(calobj.showCalendarType==SHOW_CALENDAR_TYPE_MONTH||calobj.showCalendarType==SHOW_CALENDAR_TYPE_WEEK){if(allday){text=name;}else{var array=start.split("/");text=array[3]+" "+name;}
if(isDelMenu)
text=getString(text,(baseCharLength-6));if(getStringLength(text)>baseCharLength){text=getString(text,baseCharLength);}}else if(calobj.showCalendarType==SHOW_CALENDAR_TYPE_DAY){var s=getDateFromString(start);var e=getDateFromString(end);var d=(e.getTime()-s.getTime())/(1000*60*60);if(d==0)d=1;if(allday){text=name;}else{var array=start.split("/");var array2=end.split("/");text=array[3]+"-"+array2[3]+" "+name;}
if(isDelMenu)
text=getString(text,(d-6));if(getStringLength(text)>=d&&!allday){text=getString(text,d);}}
var url=createObjectLink(type,userid,objid,start,group);if(type!=OBJ_ICAL&&type!=OBJ_LOG&&type<=OBJ_USER_LOG_START_NO)
text="<a href='"+url+"'>"+"<img alt='"+gType[type-1]+"' border='0' src='./images/"+gTypeEn[type-1]+".gif'></img></a> "+text;if(link!=""){text+=" <a href='"+link+"' target='_blank'><img alt='リンク' border='0' src='./images/link.gif'></img></a>";}
if(isDelMenu){text+="&nbsp;[<a href='#' onClick='javascript:updateGroupObject("+calobj.getCellNumFromDate(start)+",\""+objid+"\", "+group+", \""+userid+"\")'>▲</a> | <a href='#' onClick='javascript:removeGroupObject(\""+objid+"\", "+group+", \""+userid+"\")'>×</a>]";}
if(commentExist){var obj=calobj.getLocalObjectFromHashTable(objid);processComment(obj);}
crossWrite(item,text);}
function CalObject(calobj,class_no,userid,objid,type,name,start,end,publish,group,link,tag,allday,desc,isMove,isDelMenu,isEditable,commentExist){if(name=="---"){isDelMenu=false;}
if(class_no==CLASS_CONTINUE){isMove=false;}
this.class_no=class_no;this.userid=userid;this.objid=objid;this.type=type;this.name=name;this.start=start;this.end=end;this.publish=publish;this.group=group;this.link=link;this.tag=tag;this.allday=allday;this.desc=desc;this.left=FLOAT_BASE_LEFT;this.top=FLOAT_BASE_TOP;this.locateIndex=-1;this.isMove=isMove;this.isDelMenu=isDelMenu;this.isEditable=isEditable;this.commentExist=commentExist;var id=random()+"/"+objid;if(type==OBJ_GROUP_SCHEDULE||!isEditable||type==OBJ_ICAL){this.item=dragableFloat(id,this.left,this.top,false,"divSdlCal");}else{this.item=dragableFloat(id,this.left,this.top,isMove,"divSdlCal");}
if(calobj.showCalendarType!=SHOW_CALENDAR_TYPE_MONTH){setText(getDuration(start,end),this.item,calobj,userid,objid,type,name,start,end,publish,group,link,tag,allday,desc,isMove,isDelMenu,isEditable,commentExist);if(this.commentExist)processComment(this);}
if(calobj.showCalendarType==SHOW_CALENDAR_TYPE_MONTH||calobj.showCalendarType==SHOW_CALENDAR_TYPE_WEEK){var cell=calobj.getCellNumFromDate(start);while(cell==-1){start=getDateByString(moveDate(getDateFromString(start),1));cell=calobj.getCellNumFromDate(start);}
var duration=getDuration(start,end);for(var i=0;i<duration;i++){calobj.registerLocalObject(calobj.getCellNumFromDate(start)+i,this);}}else{var cell=calobj.getCellNumFromDate(start);if(cell<0)
cell=0;calobj.registerLocalObject(cell,this);}
this.item.onmouseup=function(event){document.body.style.cursor="default";calobj.setSelectObject(objid,false);if(crossGetObject("copy_button")!=null){if(!calobj.isMember&&type==OBJ_SCHEDULE){crossShowObject(crossGetObject("copy_button"));crossShowObject(crossGetObject("paste_button"));}else{crossHideObject(crossGetObject("copy_button"));crossHideObject(crossGetObject("paste_button"));}}}
this.item.ondblclick=function(){if(gCalendarPage==CALENDAR_PAGE_MYSELF){if(isEditable)
editObject(calobj.getCellNumFromDate(start));else{alert("このイベントは編集できません。他のユーザーが作成したものをMyイベントとして登録したものです。");return;}}else{var flag=false;if(gCalendarPage==CALENDAR_PAGE_GROUP){flag=true;}
if(crossGetObject("permitComment")!=null){var permitComment=crossGetObject("permitComment").value;if(gCalendarPage==CALENDAR_PAGE_MEMBER){if(permitComment!=null&&permitComment==1){flag=true;}}}
if(flag){inputComment(objid,"./member?dstUserid="+userid+"&view=all");}}}
this.item.onmouseover=function(){if(!calobj.isMember){document.body.style.cursor="pointer";}
var array=this.id.split("/");var obj=calobj.getLocalObjectFromHashTable(array[1]);showToolTip(obj);}
this.item.onmouseout=function(){document.body.style.cursor="default";hideBallon();}
this.item.onmousemove=cursorMove;return this;}
function changeObjectColor(isSelected,obj,item){if(gLoadedDesignFlag){var color="#0066CC";var text_color="#666666";var isTodayColor=gDesignList["todayObjColor"];var d=getDuration(obj.start,obj.end);if(isSelected){if(isTodayColor||d>1){item.style.border="1px solid #999999";item.style.backgroundColor=color;}else{if(isTodayColor||gCalendarPage==CALENDAR_PAGE_GROUP){item.style.border="1px solid #999999";item.style.backgroundColor=color;}}
item.style.color="#ffffff";}else{if(gCalendarPage==CALENDAR_PAGE_GROUP||gAllMemSchedule){color=gMemberThemeColorTable.get(obj.userid);if(color=="#f3f3f3")
color="#D2E9FF";item.style.border="1px solid #999999";item.style.backgroundColor=color;item.style.color="#666666";}else{if(obj.publish==PUBLISH_LEVEL_PRIVATE){color=gDesignList["privateObjColor"];text_color=gDesignList["privateObjTextColor"];}else if(obj.publish==PUBLISH_LEVEL_GROUP){color=gDesignList["groupObjColor"];text_color=gDesignList["groupObjTextColor"];}else if(obj.publish==PUBLISH_LEVEL_PUBLIC){color=gDesignList["publicObjColor"];text_color=gDesignList["publicObjTextColor"];}
if(isTodayColor||d>1){item.style.border="1px solid #999999";item.style.backgroundColor=color;item.style.color=text_color;}else{item.style.color=text_color;}}}
if(is.ie){item.style.font="normal  7pt sans-serif";item.style.height="16px";}}}
function showToolTip(obj){var start=getDateByStringFromObject(obj.start,obj.allday);var end=getDateByStringFromObject(obj.end,obj.allday);var icon="";if(obj.type!=OBJ_ICAL&&obj.type!=OBJ_LOG&&obj.type<=OBJ_USER_LOG_START_NO)
icon="<img border='0' src='./images/"+gTypeEn[obj.type-1]+".gif'></img> ";var link="なし"
if(obj.link!="")
link="あり";var description=obj.desc;if(obj.type==OBJ_LIFE){var life=new LifelogObject(description);description=life.todayComment;}
var str="タイトル: "+icon+obj.name+"<br>";if(obj.class_no==CLASS_CONTINUE)
str+="繰り返しスケジュール<br>";str+="開始日時: "+start+"<br>";str+="終了日時: "+end+"<br>";str+="公開レベル: "+gPublishLevel[parseInt(obj.publish)-1]+"<br>";if(obj.tag!="")str+="タグ: "+obj.tag+"<br>";str+="ユーザー: "+obj.userid+"<br>";if(description!="")str+="内容: "+description+"<br>";setBallon("BallonTip");var color="#FFFFFF";var text_color="#666666";if(gLoadedDesignFlag){if(gCalendarPage==CALENDAR_PAGE_GROUP){color=gMemberThemeColorTable.get(obj.userid);}else{if(obj.publish==PUBLISH_LEVEL_PRIVATE){color=gDesignList["privateObjColor"];text_color=gDesignList["privateObjTextColor"];}else if(obj.publish==PUBLISH_LEVEL_GROUP){color=gDesignList["groupObjColor"];text_color=gDesignList["groupObjTextColor"];}else if(obj.publish==PUBLISH_LEVEL_PUBLIC){color=gDesignList["publicObjColor"];text_color=gDesignList["publicObjTextColor"];}}}
showBallon(str,1,200,color,text_color);}
function showMessage(msg){var obj=crossGetObject("Message");if(obj!=null){crossWrite(obj,msg);crossShowObject(obj);setTimeout("hideMessage()",5000);}}
function hideMessage(){var obj=crossGetObject("Message");if(obj!=null){crossWrite(obj,"");crossHideObject(obj);}}
function createObjectLink(type,userid,objid,start,group){var url="";if(type==OBJ_SCHEDULE){url="./schedule";url+="?dstUserid="+userid+"&objid="+objid+"&select_date="+start;}else if(type==OBJ_DIARY){url="./diary";url+="?dstUserid="+userid+"&objid="+objid;}else if(type==OBJ_ALBUM){url="./album";url+="?dstUserid="+userid+"&objid="+objid;}else if(type==OBJ_FILE){url="./file";url+="?dstUserid="+userid+"&objid="+objid;}else if(type==OBJ_MEMO){}else if(type==OBJ_LIFE){var cell=gUserCal.getCellNumFromDate(start);url="javascript:loadTodayLife("+cell+", \""+userid+"\");";}else if(type==OBJ_EVENT){url="./eventdtl";url+="?userid="+userid+"&objid="+objid;}else if(type==OBJ_GOAL){url="./goal";url+="?dstUserid="+userid+"&objid="+objid;}else if(type==OBJ_ICAL||type==OBJ_LOG||type>OBJ_USER_LOG_START_NO){url="";}else if(type==OBJ_GROUP_SCHEDULE){url="./group";url+="?no="+group+"&objid="+objid+"&select_date="+start;}
return url;}
function moveDate(date,dis){var d,m,y;d=date.getDate();m=date.getMonth();y=getYear(date.getYear());if(((y%4)==0&&(y%100)!=0)||(y%400)==0)
gMonthTable[1]=29;else
gMonthTable[1]=28;d=d+dis;while(d>gMonthTable[m]){d=d-gMonthTable[m];m++;if(m>11){m=0;y++;if(((y%4)==0&&(y%100)!=0)||(y%400)==0)
gMonthTable[1]=29;else
gMonthTable[1]=28;}}
while(d<0){m--;if(m<0){m=11;y--;if(((y%4)==0&&(y%100)!=0)||(y%400)==0)
gMonthTable[1]=29;else
gMonthTable[1]=28;}
d=d+gMonthTable[m];}
return(new Date(y,m,d));}
var CALENDAR_PAGE_MYSELF=1;var CALENDAR_PAGE_GROUP=2;var CALENDAR_PAGE_MEMBER=3;var gUserCal=null;var gSubmenuTimer=null;var gLoadedDesignFlag=false;var gDesignList=new Object();var gMemberThemeColorTable=new Hashtable();var gSelectGroupFlag=false;var gPaticularScheduleObjid=null;var gCalendarPage=CALENDAR_PAGE_MYSELF;var gAllMemSchedule=false;var ctrlKeyFlag=false;function initCalendar(cal_type,select_date){gCalendarPage=CALENDAR_PAGE_MYSELF;var myUserid=crossGetObject("userid").value;var myNickname=crossGetObject("nickname").value;gUserCal=new Calendar(myUserid,false,-1,false);if(select_date==""){gUserCal.selectedDate=new Date();}else{gUserCal.selectedDate=getDateFromString(select_date);}
loadDesignFromDB(myUserid);changeMain("divCalMain",calendarMenu());var showMyOperationButton=crossGetObject("showMyOperationButton").value;if(showMyOperationButton=="true"){crossHideObject(crossGetObject("copy_button"));crossHideObject(crossGetObject("paste_button"));}
var showPublishLevel=crossGetObject("showPublishLevel").value;if(showPublishLevel=="true")
loadMyPublishCookie();var ct=getDefaultCalendarCookie();cal_type=ct;if(cal_type==SHOW_CALENDAR_TYPE_MONTH)
showCalendarByMonth();else if(cal_type==SHOW_CALENDAR_TYPE_DAY)
showCalendarByDay();else if(cal_type==SHOW_CALENDAR_TYPE_WEEK)
showCalendarByWeek();changeCalendarParams();var useLifelogAid=crossGetObject("useLifelogAid").value;var yesDate=moveDate(new Date(),-1);var yesFrom=getYear(yesDate.getYear())+"/"+yesDate.getMonth()+"/"+yesDate.getDate()+"/0:00";var yesTo=getYear(yesDate.getYear())+"/"+yesDate.getMonth()+"/"+yesDate.getDate()+"/23:59";if(useLifelogAid=="true"&&select_date==""&&gUserCal.showCalendarType!=SHOW_CALENDAR_TYPE_DAY){loadLifeObjectFromDB(myUserid,yesFrom,yesTo,CHECK_LIFELOG);}
var name=myNickname!=""?myNickname:myUserid;showMessage(name+"さんのMyカレンダーを表示しました。");}
function initMemberCalendar(member,cal_type,select_date,goalid){gCalendarPage=CALENDAR_PAGE_MEMBER;var myUserid=crossGetObject("userid").value;gUserCal=new Calendar(member,false,-1,true,goalid);if(select_date==""){gUserCal.selectedDate=new Date();}else{gUserCal.selectedDate=getDateFromString(select_date);}
loadDesignFromDB(myUserid);changeMain("divCalMain",memberCalendarMenu());var ct=getDefaultCalendarCookie();cal_type=ct;if(cal_type==SHOW_CALENDAR_TYPE_MONTH)
showCalendarByMonth();else if(cal_type==SHOW_CALENDAR_TYPE_DAY)
showCalendarByDay();else if(cal_type==SHOW_CALENDAR_TYPE_WEEK)
showCalendarByWeek();changeCalendarParams();showMessage(member+"さんのカレンダーに切り替えました。");}
function initGroupCalendar(no,cal_type,select_date){gCalendarPage=CALENDAR_PAGE_GROUP;var myUserid=crossGetObject("userid").value;gUserCal=new Calendar("",false,no,true);if(select_date==""){gUserCal.selectedDate=new Date();}else{gUserCal.selectedDate=getDateFromString(select_date);}
loadDesignFromDB(myUserid);loadThemeColorFromDB(no);changeMain("divCalMain",memberCalendarMenu());var showPublishLevel=crossGetObject("showPublishLevel").value;if(showPublishLevel=="true")
loadMemberPublishCookie(false,no);var ct=getDefaultCalendarCookie();cal_type=ct;if(cal_type==SHOW_CALENDAR_TYPE_MONTH)
showCalendarByMonth();else if(cal_type==SHOW_CALENDAR_TYPE_DAY)
showCalendarByDay();else if(cal_type==SHOW_CALENDAR_TYPE_WEEK)
showCalendarByWeek();changeCalendarParams();showMessage("グループカレンダーに切り替えました。");}
function initScheduleView(dstUserid,objid,cal_type,select_date,publish,objType){gCalendarPage=CALENDAR_PAGE_MEMBER;var myUserid=crossGetObject("userid").value;gPaticularScheduleObjid=objid;if(crossGetObject("CalendarTab")!=null)
gUserCal=new Calendar(dstUserid,true,-1,true,null,publish,objType);else
gUserCal=new Calendar(dstUserid,true,-1,true,null,getCheckedPublish(true,-1),objType);if(select_date==""){gUserCal.baseDate=new Date();gUserCal.selectedDate=gUserCal.baseDate;}else{gUserCal.selectedDate=getDateFromString(select_date);}
loadDesignFromDB(myUserid);if(myUserid==dstUserid)
changeMain("divCalMain",memberCalendarMenu());else
changeMain("divCalMain",memberCalendarMenu());if(myUserid==dstUserid){var showPublishLevel=crossGetObject("showPublishLevel").value;if(showPublishLevel=="true")
loadMemberPublishCookie(true,-1);}
var ct=getDefaultCalendarCookie();cal_type=ct;if(cal_type==SHOW_CALENDAR_TYPE_MONTH)
showCalendarByMonth();else if(cal_type==SHOW_CALENDAR_TYPE_DAY)
showCalendarByDay();else if(cal_type==SHOW_CALENDAR_TYPE_WEEK)
showCalendarByWeek();if(gType[objType-1]!=null)
crossGetObject("divMenuMemName").innerHTML=gType[objType-1];changeCalendarParams();showMessage(dstUserid+"さんのスケジュールビューに切り替えました。");}
function initGroupScheduleView(no,publish,objType){gCalendarPage=CALENDAR_PAGE_GROUP;var myUserid=crossGetObject("userid").value;if(crossGetObject("CalendarTab")!=null)
gUserCal=new Calendar("",true,no,true,null,publish,objType);else
gUserCal=new Calendar("",true,no,true,null,getCheckedPublish(true,no),objType);gUserCal.baseDate=new Date();gUserCal.selectedDate=gUserCal.baseDate;loadDesignFromDB(myUserid);loadThemeColorFromDB(no);changeMain("divCalMain",memberCalendarMenu());var showPublishLevel=crossGetObject("showPublishLevel").value;if(showPublishLevel=="true")
loadMemberPublishCookie(true,no);var ct=getDefaultCalendarCookie();cal_type=ct;if(cal_type==SHOW_CALENDAR_TYPE_MONTH)
showCalendarByMonth();else if(cal_type==SHOW_CALENDAR_TYPE_DAY)
showCalendarByDay();else if(cal_type==SHOW_CALENDAR_TYPE_WEEK)
showCalendarByWeek();if(gType[objType-1]!=null)
crossGetObject("divMenuMemName").innerHTML=gType[objType-1];changeCalendarParams();showMessage("グループのスケジュールビューに切り替えました。");}
function setDesign(themeColor,privateObjColor,groupObjColor,publicObjColor,privateObjTextColor,groupObjTextColor,publicObjTextColor,todayObjColor){gDesignList["themeColor"]=themeColor;gDesignList["privateObjColor"]=privateObjColor;gDesignList["groupObjColor"]=groupObjColor;gDesignList["publicObjColor"]=publicObjColor;gDesignList["privateObjTextColor"]=privateObjTextColor;gDesignList["groupObjTextColor"]=groupObjTextColor;gDesignList["publicObjTextColor"]=publicObjTextColor;gDesignList["todayObjColor"]=todayObjColor;}
function setThemeColor(userid,themeColor){gMemberThemeColorTable.put(userid,themeColor);}
function changeMain(div,str){gUserCal.clearAllLocalObject();crossWrite(crossGetObject(div),str);}
function showCalendarByMonth(){gUserCal.clearAllLocalObject();gUserCal.showCalendarType=SHOW_CALENDAR_TYPE_MONTH;gUserCal.showCalendarByMonth(new Date(getYear(gUserCal.selectedDate.getYear()),gUserCal.selectedDate.getMonth(),1));setDefaultCalendarCookie(SHOW_CALENDAR_TYPE_MONTH);loadChangedWindowSize();changeCalendarParams();}
function showCalendarByDay(){gUserCal.clearAllLocalObject();gUserCal.showCalendarType=SHOW_CALENDAR_TYPE_DAY;gUserCal.showCalendarByDay();setDefaultCalendarCookie(SHOW_CALENDAR_TYPE_DAY);loadChangedWindowSize();changeCalendarParams();}
function showCalendarByWeek(){gUserCal.clearAllLocalObject();gUserCal.showCalendarType=SHOW_CALENDAR_TYPE_WEEK;gUserCal.showCalendarByWeek();setDefaultCalendarCookie(SHOW_CALENDAR_TYPE_WEEK);loadChangedWindowSize();changeCalendarParams();}
function showAllGroupMemSchedule(){loadThemeColorFromDB(0);gUserCal.clearAllLocalObject();if(gUserCal.showCalendarType==SHOW_CALENDAR_TYPE_MONTH)
gUserCal.showCalendarByMonth(new Date(getYear(gUserCal.selectedDate.getYear()),gUserCal.selectedDate.getMonth(),1),true);else if(gUserCal.showCalendarType==SHOW_CALENDAR_TYPE_DAY)
gUserCal.showCalendarByDay(true);else if(gUserCal.showCalendarType==SHOW_CALENDAR_TYPE_WEEK)
gUserCal.showCalendarByWeek(true);}
function showObject(class_no,userid,objid,type,name,strStart,strEnd,publish,group,link,tag,allday,desc,commentExist,extra){if(gUserCal.getLocalObjectFromHashTable(objid)!=null)
return;if(type==OBJ_MEMO){if(gUserCal.showCalendarType!=SHOW_CALENDAR_TYPE_DAY){var cell=gUserCal.getCellNumFromDate(strStart);var divCell="divMonthCell"+cell+"-4";crossWrite(crossGetObject(divCell),"<div align='right'><a href='javascript:loadMemo("+cell+");'><img src='images/memo.gif' alt='TODOメモ' border='0'></a></div>");}
return;}
if(type==OBJ_LIFE){if(gUserCal.showCalendarType!=SHOW_CALENDAR_TYPE_DAY){var cell=gUserCal.getCellNumFromDate(strStart);gExistLifelog[cell]=true;var divCell="divMonthCell"+cell+"-3";crossWrite(crossGetObject(divCell),"<div align='right'><a href='javascript:loadTodayLife("+cell+", \""+userid+"\");'><img src='images/life.gif' alt='ライフログ' border='0'></a></div>");}
return;}
if(type==OBJ_GOAL&&extra!="SHOW"){return;}
if(extra!=null&&extra=="WATCH")
gUserCal.selectedObj=new CalObject(gUserCal,class_no,userid,objid,type,name,strStart,strEnd,publish,group,link,tag,allday,desc,true,false,false,commentExist);else
gUserCal.selectedObj=new CalObject(gUserCal,class_no,userid,objid,type,name,strStart,strEnd,publish,group,link,tag,allday,desc,true,false,true,commentExist);if(commentExist){processComment(gUserCal.selectedObj);}
show(gUserCal.selectedObj);}
function showMemberObject(class_no,userid,objid,type,name,strStart,strEnd,publish,group,link,tag,allday,desc,commentExist,extra){if(gUserCal.getLocalObjectFromHashTable(objid)!=null)
return;if(type==OBJ_MEMO){if(gUserCal.showCalendarType!=SHOW_CALENDAR_TYPE_DAY){var cell=gUserCal.getCellNumFromDate(strStart);var divCell="divMonthCell"+cell+"-4";crossWrite(crossGetObject(divCell),"<div align='right'><a href='javascript:loadMemo("+cell+");'><img src='images/memo.gif' alt='TODOメモ' border='0'></a></div>");}
return;}
if(type==OBJ_LIFE){if(gUserCal.showCalendarType!=SHOW_CALENDAR_TYPE_DAY){var cell=gUserCal.getCellNumFromDate(strStart);gExistLifelog[cell]=true;var divCell="divMonthCell"+cell+"-3";crossWrite(crossGetObject(divCell),"<div align='right'><a href='javascript:loadTodayLife("+cell+", \""+userid+"\");'><img src='images/life.gif' alt='ライフログ' border='0'></a></div>");}
return;}
if(type==OBJ_GOAL&&extra!="SHOW"){return;}
var obj=new CalObject(gUserCal,class_no,userid,objid,type,name,strStart,strEnd,publish,group,link,tag,allday,desc,false,false,false,commentExist);if(commentExist){processComment(obj);}
show(obj);}
function showGroupObject(class_no,userid,objid,type,name,strStart,strEnd,publish,group,link,tag,allday,desc,commentExist,extra){if(gUserCal.getLocalObjectFromHashTable(objid)!=null)
return;if(type==OBJ_MEMO){if(gUserCal.showCalendarType!=SHOW_CALENDAR_TYPE_DAY){var cell=gUserCal.getCellNumFromDate(strStart);var divCell="divMonthCell"+cell+"-4";crossWrite(crossGetObject(divCell),"<div align='right'><a href='javascript:loadMemo("+cell+");'><img src='images/memo.gif' alt='TODOメモ' border='0'></a></div>");}
return;}
if(type==OBJ_GOAL&&extra!="SHOW"){return;}
var obj=null;var myRole="participant";if(crossGetObject("role")!=null)
myRole=crossGetObject("role").value;if(type==OBJ_GROUP_SCHEDULE&&myRole=="manager")
obj=new CalObject(gUserCal,class_no,userid,objid,type,name,strStart,strEnd,publish,group,link,tag,allday,desc,false,true,false,commentExist);else
obj=new CalObject(gUserCal,class_no,userid,objid,type,name,strStart,strEnd,publish,group,link,tag,allday,desc,false,false,false,commentExist);if(commentExist&&publish!=PUBLISH_LEVEL_PRIVATE){processComment(obj);}
show(obj);}
function show(obj){if(gUserCal.showCalendarType==SHOW_CALENDAR_TYPE_MONTH){var num=gUserCal.getTodayObjectNum(gUserCal.getCellNumFromDate(obj.start));var numByDay=Math.floor((MONTH_CELL_HEIGHT-MONTH_TITLE_DATE_HEIGHT)/MONTH_DATA_HEIGHT);if(num<numByDay){gUserCal.changeObjectByMonth(obj);gUserCal.locateObjectByMonth(gUserCal.getCellNumFromDate(obj.start),obj);gUserCal.createContObjectByMonth(obj);}else{setText(getDuration(obj.start,obj.end),obj.item,gUserCal,obj.userid,obj.objid,obj.type,obj.name,obj.start,obj.end,obj.publish,obj.group,obj.link,obj.tag,obj.allday,obj.desc,obj.isMove,obj.isDelMenu,obj.isEditable,obj.commentExist);if(obj.commentExist)processComment(obj);crossHideObject(obj.item);var cell=gUserCal.getCellNumFromDate(obj.start);var divCell="divMonthCell"+cell+"-5";crossWrite(crossGetObject(divCell),"<div align='right'><a href='javascript:loadMoreObj("+cell+", \"month\");'><img src='images/more.gif' alt='more' border='0'></a></div>");}}else if(gUserCal.showCalendarType==SHOW_CALENDAR_TYPE_DAY){gUserCal.changeObjectByDay(obj);gUserCal.locateObjectByDay(gUserCal.getCellNumFromDate(obj.start),obj);}else if(gUserCal.showCalendarType==SHOW_CALENDAR_TYPE_WEEK){var num=gUserCal.getTodayObjectNum(gUserCal.getCellNumFromDate(obj.start));var numByDay=Math.floor((WEEK_CELL_HEIGHT-WEEK_TITLE_DATE_HEIGHT)/WEEK_DATA_HEIGHT);if(num<numByDay){gUserCal.changeObjectByWeek(obj);gUserCal.locateObjectByWeek(gUserCal.getCellNumFromDate(obj.start),obj);}else{setText(getDuration(obj.start,obj.end),obj.item,gUserCal,obj.userid,obj.objid,obj.type,obj.name,obj.start,obj.end,obj.publish,obj.group,obj.link,obj.tag,obj.allday,obj.desc,obj.isMove,obj.isDelMenu,obj.isEditable,obj.commentExist);if(obj.commentExist)processComment(obj);crossHideObject(obj.item);var cell=gUserCal.getCellNumFromDate(obj.start);var divCell="divMonthCell"+cell+"-5";crossWrite(crossGetObject(divCell),"<div align='right'><a href='javascript:loadMoreObj("+cell+", \"week\");'><img src='images/more.gif' alt='more' border='0'></a></div>");}}}
function loadMoreObj(cell,morw){var WINDOW_WIDTH=MONTH_CELL_WIDTH+20;var x=getMouseX()-5;var y=getMouseY()-5;if((x+WINDOW_WIDTH)>=(window.screen.width-100)){x=window.screen.width-(WINDOW_WIDTH+100);}
var item=crossGetObject("moreObjPanel");if(item==null){item=dragableFloat("moreObjPanel",x,y,true,null);}else{crossShowObject(crossGetObject("moreObjPanel"));crossGetObject("moreObjPanel").style.left=x;crossGetObject("moreObjPanel").style.top=y;}
var html="";if(morw=="month"){html+="<table cellspacing='0' cellpadding='0' width='"+WINDOW_WIDTH+"'><tr><td align='right'><a href='javascript:hideMoreObj()'><img src='images/close.gif' border='0'></a></td></tr></table>";var num=gUserCal.getTodayObjectNum(cell);var numByDay=Math.floor((MONTH_CELL_HEIGHT-MONTH_TITLE_DATE_HEIGHT)/MONTH_DATA_HEIGHT);var modNum=num-numByDay;for(var i=0;i<modNum+1;i++){html+=gUserCal.localObject[cell].getElementAt(numByDay+i).item.innerHTML+"<br>";}
item.style.width=MONTH_CELL_WIDTH+30;item.style.height=(modNum*MONTH_DATA_HEIGHT)+40;}else if(morw=="week"){html+="<table cellspacing='0' width='"+(WEEK_CELL_WIDTH+20)+"'><tr><td align='right'><a href='javascript:hideMoreObj()'><img src='images/close.gif' border='0'></a></td></tr></table>";var num=gUserCal.getTodayObjectNum(cell);var numByDay=Math.floor((WEEK_CELL_HEIGHT-WEEK_TITLE_DATE_HEIGHT)/WEEK_DATA_HEIGHT);var modNum=num-numByDay;for(var i=0;i<modNum+1;i++){html+=gUserCal.localObject[cell].getElementAt(numByDay+i).item.innerHTML+"<br>";}
item.style.width=WEEK_CELL_WIDTH+30;item.style.height=(modNum*WEEK_DATA_HEIGHT)+40;}
changeClass(item.id,"memo");crossWrite(item,html);}
function hideMoreObj(){crossHideObject(crossGetObject("moreObjPanel"));}
function newObjectMenuHtml(cell){var date="";date=getYear(gUserCal.selectedDate.getYear())+"/"+gUserCal.selectedDate.getMonth()+"/"+gUserCal.selectedDate.getDate()+"/0:00";var html="<table width='100%'><tr><td align='right'><a href='javascript:hideNewObjMenu()'><img src='images/close.gif' border='0'></a></td></tr></table>";html+="<ul class='New-menu'>";if(cell==-1)
cell=gUserCal.getCellNumFromDate(getDateByString(gUserCal.selectedDate));var today=new Date();if(gUserCal.selectedDate<=today&&cell!=-1&&gUserCal.showCalendarType!=SHOW_CALENDAR_TYPE_DAY){if(gExistLifelog[cell]==null||!gExistLifelog[cell])
html+="<li><img src='images/life.gif' border='0'>&nbsp;<a href='javascript:inputLifelog("+cell+");'>ライフログ</a></li>";else
html+="<li><img src='images/life.gif' border='0'>&nbsp;<font color='#CCCCCC'>ライフログ</font></li>";}else{html+="<li><img src='images/life.gif' border='0'>&nbsp;<font color='#CCCCCC'>ライフログ</font></li>";}
var isUseScheduleSimpleInput=crossGetObject("useScheduleSimpleInput").value;if(isUseScheduleSimpleInput=="true")
html+="<li><img src='images/schedule.gif' border='0'>&nbsp;<a href='javascript:inputSchedule("+cell+", "+gUserCal.showCalendarType+", "+OBJ_SCHEDULE+");'>スケジュール</a></li>";else
html+="<li><img src='images/schedule.gif' border='0'>&nbsp;<a href='./newobj?type="+OBJ_SCHEDULE+"&cal_type="+gUserCal.showCalendarType+"&select_date="+date+"&edit=0'>スケジュール</a></li>";html+="<li><img src='images/event.gif' border='0'>&nbsp;<a href='./newobj?type="+OBJ_EVENT+"&cal_type="+gUserCal.showCalendarType+"&select_date="+date+"&edit=0'>イベント</a></li>";html+="<li><img src='images/diary.gif' border='0'>&nbsp;<a href='./newobj?type="+OBJ_DIARY+"&cal_type="+gUserCal.showCalendarType+"&select_date="+date+"&edit=0'>日記</b></a></li>";html+="<li><img src='images/album.gif' border='0'>&nbsp;<a href='./newobj?type="+OBJ_ALBUM+"&cal_type="+gUserCal.showCalendarType+"&select_date="+date+"&edit=0'>アルバム</a></li>";html+="<hr>";if(cell!=-1&&gUserCal.showCalendarType!=SHOW_CALENDAR_TYPE_DAY){html+="<li><img src='images/memo.gif' border='0'>&nbsp;<a href='javascript:inputMemo("+cell+");'>TODOメモ</a></li>";}else{html+="<li><img src='images/memo.gif' border='0'>&nbsp;<font color='#CCCCCC'>TODOメモ</font><li>";}
html+="<hr>";html+="<li><img src='images/goal.gif' border='0'>&nbsp;<a href='./newobj?type="+OBJ_GOAL+"&cal_type="+gUserCal.showCalendarType+"&select_date="+date+"&edit=0'>目標</a></li>";html+="</ul>";return html;}
function newGroupObjectMenuHtml(cell,groupNo){var date="";if(cell!=-1)
date=getDateByString(gUserCal.getDateFromCellNum(cell));else
date=gUserCal.selectedDate.getYear()+"/"+gUserCal.selectedDate.getMonth()+"/"+gUserCal.selectedDate.getDate()+"/0:00";var html="<table align='right'><tr><td><a href='javascript:hideNewObjMenu()'><img src='images/close.gif' border='0'></a></td></tr></table>";html+="<br>";var isUseScheduleSimpleInput=crossGetObject("useScheduleSimpleInput").value;if(isUseScheduleSimpleInput=="true")
html+="&nbsp;&nbsp;&nbsp;&nbsp;<img src='images/schedule.gif' border='0'>&nbsp;<a href='javascript:inputSchedule("+cell+", "+gUserCal.showCalendarType+", "+OBJ_GROUP_SCHEDULE+", "+groupNo+");'><b>グループスケジュール</b></a><br>";else
html+="&nbsp;&nbsp;&nbsp;&nbsp;<img src='images/schedule.gif' border='0'>&nbsp;<a href='./newobj?type=7&cal_type="+gUserCal.showCalendarType+"&select_date="+date+"&groupNo="+groupNo+"&edit=0'><b>グループスケジュール</b></a><br>";html+="<br>";return html;}
function newObject(cell,groupNo){var x,y;if(cell==-1){var pos_obj=getElemPos(crossGetObject("newObjButton"));x=pos_obj.x;y=pos_obj.y+crossGetObject("newObjButton").offsetHeight;}else{if((cell+1)%7==0){x=getMouseX()-130;y=getMouseY()-5;}else{x=getMouseX()-5;y=getMouseY()-5;}}
if(groupNo!=-1&&!isNaN(groupNo))
crossWrite(crossGetObject("divNewObjMenu"),newGroupObjectMenuHtml(cell,groupNo));else
crossWrite(crossGetObject("divNewObjMenu"),newObjectMenuHtml(cell));crossGetObject("divNewObjMenu").style.zIndex=500;crossGetObject("divNewObjMenu").style.top=y+"px";crossGetObject("divNewObjMenu").style.left=x+"px";crossShowObject(crossGetObject("divNewObjMenu"));clearTimeout(gSubmenuTimer);}
function showMessagePulldown(){var html="<br><table>";html+="<tr><td style='padding: 2 10 2 10; font-size: 10px;'><a href='./list_msg'>受信箱</a></td></tr>";html+="<tr><td style='padding: 2 10 2 10; font-size: 10px;'><a href='./list_msg?type=1'>送信箱</a></td></tr>";html+="<tr><td style='padding: 2 10 2 10; font-size: 10px;'><a href='./list_msg?type=2'>ゴミ箱</a></td></tr>";html+="</table><br>";var obj=crossGetObject("divPulldownMenu");crossWrite(obj,html);var x=getMouseX()-90;var y=getMouseY()+5;crossGetObject("divPulldownMenu").style.top=y+"px";crossGetObject("divPulldownMenu").style.left=x+"px";crossShowObject(crossGetObject("divPulldownMenu"));clearTimeout(gSubmenuTimer);}
function showObjectsPulldown(userid,groupNo,life,schedule,event,diary,album,file,goal){var html="<br><table>";if(life){if(groupNo!=-1)
html+="<tr><td style='padding: 2 10 2 10; font-size: 10px;'><img src='./images/life.gif' alt='ライフログ'>&nbsp;<a href='./life?groupNo="+groupNo+"'>ライフログ</a></td></tr>";else
html+="<tr><td style='padding: 2 10 2 10; font-size: 10px;'><img src='./images/life.gif' alt='ライフログ'>&nbsp;<a href='./life?dstUserid="+userid+"'>ライフログ</a></td></tr>";}
if(schedule){if(groupNo!=-1)
html+="<tr><td style='padding: 2 10 2 10; font-size: 10px;'><img src='./images/schedule.gif' alt='スケジュール'>&nbsp;<a href='./schedule?groupNo="+groupNo+"'>スケジュール</a></td></tr>";else
html+="<tr><td style='padding: 2 10 2 10; font-size: 10px;'><img src='./images/schedule.gif' alt='スケジュール'>&nbsp;<a href='./schedule?dstUserid="+userid+"'>スケジュール</a></td></tr>";}
if(event){if(groupNo!=-1)
html+="<tr><td style='padding: 2 10 2 10; font-size: 10px;'><img src='./images/event.gif' alt='イベント'>&nbsp;<a href='./event?groupNo="+groupNo+"'>イベント</a></td></tr>";else
html+="<tr><td style='padding: 2 10 2 10; font-size: 10px;'><img src='./images/event.gif' alt='イベント'>&nbsp;<a href='./event?dstUserid="+userid+"'>イベント</a></td></tr>";}
if(diary){if(groupNo!=-1)
html+="<tr><td style='padding: 2 10 2 10; font-size: 10px;'><img src='./images/diary.gif' alt='日記'>&nbsp;<a href='./diary?groupNo="+groupNo+"'>日記</a></td></tr>";else
html+="<tr><td style='padding: 2 10 2 10; font-size: 10px;'><img src='./images/diary.gif' alt='日記'>&nbsp;<a href='./diary?dstUserid="+userid+"'>日記</a></td></tr>";}
if(album){if(groupNo!=-1)
html+="<tr><td style='padding: 2 10 2 10; font-size: 10px;'><img src='./images/album.gif' alt='アルバム'>&nbsp;<a href='./album?groupNo="+groupNo+"'>アルバム</a></td></tr>";else
html+="<tr><td style='padding: 2 10 2 10; font-size: 10px;'><img src='./images/album.gif' alt='アルバム'>&nbsp;<a href='./album?dstUserid="+userid+"'>アルバム</a></td></tr>";}
if(goal){if(groupNo!=-1)
html+="<tr><td style='padding: 2 10 2 10; font-size: 10px;'><img src='./images/goal.gif' alt='目標'>&nbsp;<a href='./goal?groupNo="+groupNo+"'>目標</a></td></tr>";else
html+="<tr><td style='padding: 2 10 2 10; font-size: 10px;'><img src='./images/goal.gif' alt='目標'>&nbsp;<a href='./goal?dstUserid="+userid+"'>目標</a></td></tr>";}
html+="</table><br>";var obj=crossGetObject("divPulldownMenu");crossWrite(obj,html);var x=getMouseX()-60;var y=getMouseY()+5;crossGetObject("divPulldownMenu").style.top=y+"px";crossGetObject("divPulldownMenu").style.left=x+"px";crossShowObject(crossGetObject("divPulldownMenu"));clearTimeout(gSubmenuTimer);}
function showSettingPulldown(){var html="<br><table>";html+="<tr><td style='padding: 2 10 2 10; font-size: 10px;'><a href='./setting'>管理</a></td></tr>";html+="<tr><td style='padding: 2 10 2 10; font-size: 10px;'><a href='./general'>全般</a></td></tr>";html+="<tr><td style='padding: 2 10 2 10; font-size: 10px;'><a href='./design'>デザイン</a></td></tr>";html+="<tr><td style='padding: 2 10 2 10; font-size: 10px;'><a href='./myprofile'>ユーザー情報</a></td></tr>";html+="<li><td style='padding: 2 10 2 10; font-size: 10px;'><a href='./mymobile'>モバイル</a></td></li>";html+="<tr><td style='padding: 2 10 2 10; font-size: 10px;'><a href='./importcal'>カレンダーのインポート</a></td></tr>";html+="<tr><td style='padding: 2 10 2 10; font-size: 10px;'><a href='./webservice'>Webサービス</a></td></tr>";html+="</table><br>";var obj=crossGetObject("divPulldownMenu");crossWrite(obj,html);var x=getMouseX()-90;var y=getMouseY()+5;crossGetObject("divPulldownMenu").style.top=y+"px";crossGetObject("divPulldownMenu").style.left=x+"px";crossShowObject(crossGetObject("divPulldownMenu"));clearTimeout(gSubmenuTimer);}
function hidePulldownMenu(){crossHideObject(crossGetObject("divPulldownMenu"));}
function hideNewObjMenu(){crossHideObject(crossGetObject("divNewObjMenu"));}
function makeObject(class_no,userid,objid,type,name,strStart,strEnd,publish,group,link,tag,allday,desc){var start=getDateFromString(strStart);var end=getDateFromString(strEnd);if(gUserCal.showCalendarType==SHOW_CALENDAR_TYPE_MONTH){var first=new Date(getYear(gUserCal.selectedDate.getYear()),gUserCal.selectedDate.getMonth(),1)
var begin=moveDate(first,-first.getDay());var last=moveDate(begin,7*SHOWWEEK-1);if((start>=begin)&&(start<=last)){gUserCal.selectedObj=new CalObject(gUserCal,class_no,userid,objid,type,name,strStart,strEnd,publish,group,link,tag,allday,desc,true);gUserCal.changeObjectByMonth(gUserCal.selectedObj);gUserCal.locateObjectByMonth(gUserCal.getCellNumFromDate(strStart),gUserCal.selectedObj);gUserCal.createContObjectByMonth(gUserCal.selectedObj);}}else if(gUserCal.showCalendarType==SHOW_CALENDAR_TYPE_DAY){if((gUserCal.selectedDate.getYear()==start.getYear())&&(gUserCal.selectedDate.getMonth()==start.getMonth())&&(gUserCal.selectedDate.getDate()==start.getDate())){if(allday)
gUserCal.selectedObj=new CalObject(gUserCal,class_no,userid,objid,type,name,strStart,strEnd,publish,group,link,tag,allday,desc,false);else
gUserCal.selectedObj=new CalObject(gUserCal,class_no,userid,objid,type,name,strStart,strEnd,publish,group,link,tag,allday,desc,true);gUserCal.changeObjectByDay(gUserCal.selectedObj);gUserCal.locateObjectByDay(gUserCal.getCellNumFromDate(strStart),gUserCal.selectedObj);}}else if(gUserCal.showCalendarType==SHOW_CALENDAR_TYPE_WEEK){var sunDay=moveDate(gUserCal.selectedDate,-gUserCal.selectedDate.getDay());var satDay=moveDate(sunDay,6);if((start>=sunDay)&&(start<=satDay)){gUserCal.selectedObj=new CalObject(gUserCal,class_no,userid,objid,type,name,strStart,strEnd,publish,group,link,tag,allday,desc,true);gUserCal.changeObjectByWeek(gUserCal.selectedObj);gUserCal.locateObjectByWeek(gUserCal.getCellNumFromDate(strStart),gUserCal.selectedObj);}}}
function selectDate(strDate){gUserCal.selectedDate=getDateFromString(strDate);var cellNum=gUserCal.getCellNumFromDate(strDate);gUserCal.selectedNum=cellNum;changeCellColor(document.getElementById("cell-"+cellNum),"#B8E1F3");}
function editObject(cell){if(cell==-1){showMessage("<font color='white'>ヒント！</font>ログをダブルクリックしても編集できます。");}
if(gUserCal.selectedObj.type==OBJ_GROUP_SCHEDULE){alert("グループスケジュールへの操作はグループの画面でのみ許可されています。");return;}else if(gUserCal.selectedObj.type==OBJ_ICAL){alert("このログは編集できません。");return;}else if(gUserCal.selectedObj.type==OBJ_LOG||gUserCal.selectedObj.type>=OBJ_USER_LOG_START_NO){alert("このログはMyカレンダー上からは編集できません。");return;}else{if(gUserCal.selectedObj==null){alert("ログを選択してください。");return;}
var date="";if(cell!=-1)
date=getDateByString(gUserCal.getDateFromCellNum(cell));else
date=getYear(gUserCal.selectedDate.getYear())+"/"+gUserCal.selectedDate.getMonth()+"/"+gUserCal.selectedDate.getDate()+"/0:00";var objid=gUserCal.selectedObj.objid;if(gUserCal.selectedObj.class_no==CLASS_CONTINUE)
objid=getBaseObjidFromContinueObject(objid);var url="newobj?cal_type="+gUserCal.showCalendarType+"&select_date="+date+"&objid="+objid+"&type="+gUserCal.selectedObj.type+"&edit=1";location.href=url;}}
function getBaseObjidFromContinueObject(objid){if(objid.indexOf("#")!=-1){var array=objid.split("#")
objid=array[0];}
return objid;}
function cutObject(){if(gUserCal.selectedObj.type==OBJ_GROUP_SCHEDULE){alert("グループスケジュールへの操作はグループの画面でのみ許可されています。");}else{if(gUserCal.selectedObj!=null){gUserCal.copyObject=gUserCal.selectedObj;var id=gUserCal.selectedObj.item.getAttribute("id");var date=gUserCal.selectedObj.start;crossGetObject(id).parentNode.removeChild(gUserCal.selectedObj.item);gUserCal.removeLocalObject(gUserCal.getCellNumFromDate(date),gUserCal.selectedObj.objid);deleteObjectFromDB(gUserCal.selectedObj.objid,-1,gUserCal.selectedObj.type);}}}
function copyObject(){if(gUserCal.selectedObj.type==OBJ_GROUP_SCHEDULE){alert("グループスケジュールへの操作はグループの画面でのみ許可されています。");}else{if(gUserCal.selectedObj!=null){gUserCal.copyLinkFlag=false;gUserCal.copyObject=gUserCal.selectedObj;showMessage(gType[gUserCal.copyObject.type-1]+"をコピーしました。");}}}
function pasteObject(){if(gUserCal.copyObject!=null){var objid=random();var movedNum=gUserCal.selectedNum;gUserCal.changeObjectProperty(gUserCal.copyObject,movedNum);registerObjectToDB(gUserCal.copyObject.type,gUserCal.copyObject.name,gUserCal.copyObject.start,gUserCal.copyObject.end,gUserCal.copyObject.publish,gUserCal.copyObject.group,gUserCal.copyObject.link,gUserCal.copyObject.tag,gUserCal.copyObject.allday,gUserCal.copyObject.desc,"");showMessage(gType[gUserCal.copyObject.type-1]+"を貼り付けました。");}}
function onKeyDown(event){if(event.ctrlKey){ctrlKeyFlag=true;}
if(event.keyCode==46){removeObject();return;}
if(ctrlKeyFlag){if(event.keyCode==67){copyObject();}else if(event.keyCode==86){pasteObject();}
return;}}
function removeObject(cell){if(gUserCal.selectedObj.type==OBJ_GROUP_SCHEDULE){alert("グループスケジュールへの操作はグループの画面でのみ許可されています。");}else{if(gUserCal.selectedObj!=null){if(window.confirm("削除しますか？")){if(cell==-1){showMessage("<font color='white'>ヒント！</font>キーボードのDeleteボタンでも削除できます。");}
var id=gUserCal.selectedObj.item.getAttribute("id");var date=gUserCal.selectedObj.start;crossGetObject(id).parentNode.removeChild(gUserCal.selectedObj.item);gUserCal.removeLocalObject(gUserCal.getCellNumFromDate(date),gUserCal.selectedObj.objid);deleteObjectFromDB(gUserCal.selectedObj.objid,-1,gUserCal.selectedObj.type);if(gType[gUserCal.selectedObj.type-1]!=null)
showMessage(gType[gUserCal.selectedObj.type-1]+"を削除しました。");else
showMessage("削除しました。");gUserCal.selectedObj=null;gUserCal.repaintObject();selectDate(date);}}}}
function removeGoal(url){if(window.confirm("この目標を削除しますか？\nこの目標に関連付けされているログも削除されます。")){location.href=url;}}
function removeGroupObject(objid,groupNo,creater){if(objid!=null){if(window.confirm("グループスケジュールを削除しますか？")){deleteObjectFromDB(objid,groupNo,OBJ_GROUP_SCHEDULE,creater);gUserCal.repaintObject();}}}
function updateGroupObject(cell,objid,groupNo,creater){if(objid!=null){var date="";if(cell!=-1)
date=getDateByString(gUserCal.getDateFromCellNum(cell));else
date=gUserCal.selectedDate.getYear()+"/"+gUserCal.selectedDate.getMonth()+"/"+gUserCal.selectedDate.getDate()+"/0:00";var url="newobj?cal_type="+gUserCal.showCalendarType+"&select_date="+date+"&objid="+objid+"&groupNo="+groupNo+"&type=7&edit=1&creater="+creater;location.href=url;}}
function moveObject(obj,dstCell){if(obj!=null){gUserCal.selectedObj=obj;var date=gUserCal.selectedObj.start;if(!gUserCal.isExist(dstCell,obj.objid)){gUserCal.removeLocalObject(gUserCal.getCellNumFromDate(date),obj.objid);gUserCal.changeObjectProperty(gUserCal.selectedObj,dstCell);if(gUserCal.showCalendarType==SHOW_CALENDAR_TYPE_MONTH||gUserCal.showCalendarType==SHOW_CALENDAR_TYPE_WEEK){var duration=getDuration(obj.start,obj.end);for(var i=0;i<duration;i++){gUserCal.registerLocalObject(gUserCal.getCellNumFromDate(obj.start)+i,obj);}}else{gUserCal.registerLocalObject(gUserCal.getCellNumFromDate(obj.start),obj);}
if(gUserCal.showCalendarType==SHOW_CALENDAR_TYPE_MONTH){gUserCal.locateObjectByMonth(dstCell,gUserCal.selectedObj);gUserCal.createContObjectByMonth(gUserCal.selectedObj);}else if(gUserCal.showCalendarType==SHOW_CALENDAR_TYPE_DAY){gUserCal.locateObjectByDay(dstCell,gUserCal.selectedObj);}else if(gUserCal.showCalendarType==SHOW_CALENDAR_TYPE_WEEK){gUserCal.locateObjectByWeek(dstCell,gUserCal.selectedObj);}
updateObjectToDB(gUserCal.selectedObj.objid,gUserCal.selectedObj.type,gUserCal.selectedObj.name,gUserCal.selectedObj.start,gUserCal.selectedObj.end,gUserCal.selectedObj.publish,gUserCal.selectedObj.group,gUserCal.selectedObj.link,gUserCal.selectedObj.tag,gUserCal.selectedObj.allday,gUserCal.selectedObj.desc);selectDate(gUserCal.selectedObj.start);showMessage(gType[obj.type-1]+"を移動しました。");}else{gUserCal.selectedObj.item.style.left=gUserCal.selectedObj.left;gUserCal.selectedObj.item.style.top=gUserCal.selectedObj.top;}}}
function showToday(){gUserCal.selectedDate=new Date();switch(gUserCal.showCalendarType){case SHOW_CALENDAR_TYPE_MONTH:showCalendarByMonth();break;case SHOW_CALENDAR_TYPE_DAY:showCalendarByDay();break;case SHOW_CALENDAR_TYPE_WEEK:showCalendarByWeek();break;}}
function showNext(){gUserCal.clearAllLocalObject();switch(gUserCal.showCalendarType){case SHOW_CALENDAR_TYPE_MONTH:var yyyy=getYear(gUserCal.baseDate.getYear());var mm=gUserCal.baseDate.getMonth()+1;if(mm>11){yyyy++;mm=0;}
var firstDate=new Date(yyyy,mm,1);var sunday=moveDate(firstDate,-firstDate.getDay());gUserCal.selectedDate=firstDate;gUserCal.showCalendarByMonth(firstDate);break;case SHOW_CALENDAR_TYPE_DAY:gUserCal.selectedDate=moveDate(gUserCal.selectedDate,1);gUserCal.showCalendarByDay();break;case SHOW_CALENDAR_TYPE_WEEK:gUserCal.selectedDate=moveDate(gUserCal.selectedDate,7);gUserCal.showCalendarByWeek();break;}}
function showBefore(){gUserCal.clearAllLocalObject();switch(gUserCal.showCalendarType){case SHOW_CALENDAR_TYPE_MONTH:var yyyy=getYear(gUserCal.baseDate.getYear());var mm=gUserCal.baseDate.getMonth()-1;if(mm<0){yyyy--;mm=11;}
var firstDate=new Date(yyyy,mm,1);var sunday=moveDate(firstDate,-firstDate.getDay());gUserCal.selectedDate=firstDate;gUserCal.showCalendarByMonth(firstDate);break;case SHOW_CALENDAR_TYPE_DAY:gUserCal.selectedDate=moveDate(gUserCal.selectedDate,-1);gUserCal.showCalendarByDay();break;case SHOW_CALENDAR_TYPE_WEEK:gUserCal.selectedDate=moveDate(gUserCal.selectedDate,-7);gUserCal.showCalendarByWeek();break;}}
function addToTabFromSettings(){var myUserid=crossGetObject("userid").value;var req="?dstUserid="+myUserid;req+="&groupNo=-1";var objType=getCheckedObject();if(objType!=null&&objType!=""){var array=objType.split(",");for(var i=0;i<array.length;i++){req+="&type="+array[i];}}
var publish=getCheckedPublish(false,-1);if(publish!=null&&publish!=""){var array=publish.split(",");for(var i=0;i<array.length;i++){req+="&publish="+array[i];}}
if(window.confirm("この設定でMyカレンダーのタブに追加しますか？"))
location.href="./regcaltab"+req;}
function registeredCalTab(obj){var xmlDoc=obj.responseXML;var text=obj.responseText;if(text!=""){var objects=xmlDoc.getElementsByTagName("caltab");for(var i=0;i<objects.length;i++){var no=objects[i].getElementsByTagName("no").item(0).firstChild.data;var name=objects[i].getElementsByTagName("name").item(0).firstChild.data;var sequence=objects[i].getElementsByTagName("sequence").item(0).firstChild.data;addCalAddr(no,name,url);}}}
function changeCalendarObject(isScheduleView,myUserid,dstUserid,groupNo,objType){if(gUserCal!=null){gUserCal.clearAllLocalObject();switch(gUserCal.showCalendarType){case SHOW_CALENDAR_TYPE_MONTH:var date=new Date(getYear(gUserCal.baseDate.getYear()),gUserCal.baseDate.getMonth(),1);var first=moveDate(date,-date.getDay());first.setHours(0);first.setMinutes(0);first.setSeconds(0);var last=moveDate(first,(7*SHOWWEEK)-1);last.setHours(23);last.setMinutes(59);last.setSeconds(59);if(groupNo!=-1){if(isScheduleView)
loadGroupScheduleObjectFromDB(groupNo,getDateByString(first),getDateByString(last),getCheckedPublish(isScheduleView,groupNo),objType);else
loadGroupObjectFromDB(groupNo,getDateByString(first),getDateByString(last),getCheckedPublish(isScheduleView,groupNo));}else{if(isScheduleView||myUserid!=dstUserid)
loadMemberScheduleObjectFromDB(dstUserid,getDateByString(first),getDateByString(last),getCheckedPublish(isScheduleView,groupNo),objType);else
loadObjectFromDB(getDateByString(first),getDateByString(last),getCheckedPublish(isScheduleView,groupNo),getCheckedObject());}
break;case SHOW_CALENDAR_TYPE_DAY:var first=gUserCal.selectedDate;first.setHours(0);first.setMinutes(0);first.setSeconds(0);var strFirst=getDateByString(first);var last=gUserCal.selectedDate;last.setHours(23);last.setMinutes(59);last.setSeconds(59);var strLast=getDateByString(last);if(groupNo!=-1){if(this.isScheduleView)
loadGroupScheduleObjectFromDB(groupNo,strFirst,strLast,getCheckedPublish(isScheduleView,groupNo),objType);else
loadGroupObjectFromDB(groupNo,strFirst,strLast,getCheckedPublish(isScheduleView,groupNo));}else{if(isScheduleView||myUserid!=dstUserid)
loadMemberScheduleObjectFromDB(dstUserid,strFirst,strLast,getCheckedPublish(isScheduleView,groupNo),objType);else
loadObjectFromDB(strFirst,strLast,getCheckedPublish(isScheduleView,groupNo),getCheckedObject());}
break;case SHOW_CALENDAR_TYPE_WEEK:var sunDay=moveDate(gUserCal.selectedDate,-gUserCal.selectedDate.getDay());var satDay=moveDate(sunDay,6);var first=sunDay;first.setHours(0);first.setMinutes(0);first.setSeconds(0);var last=satDay;last.setHours(23);last.setMinutes(59);last.setSeconds(59);if(groupNo!=-1){if(isScheduleView)
loadGroupScheduleObjectFromDB(groupNo,getDateByString(first),getDateByString(last),getCheckedPublish(isScheduleView,groupNo),objType);else
loadGroupObjectFromDB(groupNo,getDateByString(first),getDateByString(last),getCheckedPublish(isScheduleView,groupNo));}else{if(isScheduleView||myUserid!=dstUserid)
loadMemberScheduleObjectFromDB(dstUserid,getDateByString(first),getDateByString(last),getCheckedPublish(isScheduleView,groupNo),objType);else
loadObjectFromDB(getDateByString(first),getDateByString(last),getCheckedPublish(isScheduleView,groupNo),getCheckedObject());}
break;}}
setPublishCookie(isScheduleView,myUserid,dstUserid,groupNo);}
function setDefaultCalendarCookie(type){var exp=new Date();exp.setTime(exp.getTime()+1000*60*60*24*7);var ckstr=escape(type);document.cookie="DEFAULT_CALENDAR="+ckstr+"; expires="+exp.toGMTString();}
function getDefaultCalendarCookie(){var type=SHOW_CALENDAR_TYPE_MONTH;var cklng=document.cookie.length;var ckary=document.cookie.split("; ");var ckstr="";var i=0;while(ckary[i]){if(ckary[i].substr(0,17)=="DEFAULT_CALENDAR="){ckstr=ckary[i].substr(17,ckary[i].length);break;}
i++;}
if(ckstr!=null&&ckstr!="")
type=parseInt(unescape(ckstr));return type;}
function setPublishCookie(isScheduleView,myUserid,dstUserid,groupNo){var ckary=new Array();for(var i=0;i<3;i++){ckary[i]=false;}
var privateObj=null;var groupObj=null;var publicObj=null;if(isScheduleView||groupNo!=-1){if(groupNo!=-1&&!isScheduleView){groupObj=crossGetObject("group");publicObj=crossGetObject("public");}else{privateObj=crossGetObject("private");groupObj=crossGetObject("group");publicObj=crossGetObject("public");}}else{privateObj=crossGetObject("private");groupObj=crossGetObject("group");publicObj=crossGetObject("public");}
if(privateObj!=null&&privateObj.checked)
ckary[0]=true;if(groupObj.checked)
ckary[1]=true;if(publicObj.checked)
ckary[2]=true;var exp=new Date();exp.setTime(exp.getTime()+1000*60*60*24*7*4);ckstr=escape(ckary[0]);for(var i=1;i<ckary.length;i++){ckstr+="%00"+escape(ckary[i]);}
if(groupNo!=-1){if(isScheduleView)
document.cookie="GROUP_"+groupNo+"_SCHEDULE_PUBLISH="+ckstr+"; expires="+exp.toGMTString();else
document.cookie="GROUP_"+groupNo+"_PUBLISH="+ckstr+"; expires="+exp.toGMTString();}else{if(isScheduleView)
document.cookie="MEMBER_PUBLISH="+ckstr+"; expires="+exp.toGMTString();else
document.cookie="PUBLISH="+ckstr+"; expires="+exp.toGMTString();}}
function loadMyPublishCookie(){var cklng=document.cookie.length;var ckary=document.cookie.split("; ");var ckstr="";var i=0;while(ckary[i]){if(ckary[i].substr(0,8)=="PUBLISH="){ckstr=ckary[i].substr(8,ckary[i].length);break;}
i++;}
if(ckstr==""){crossGetObject("private").checked=true;crossGetObject("group").checked=true;crossGetObject("public").checked=true;return;}
ckary=ckstr.split("%00");if(unescape(ckary[0])=="true")
crossGetObject("private").checked=true;if(unescape(ckary[1])=="true")
crossGetObject("group").checked=true;if(unescape(ckary[2])=="true")
crossGetObject("public").checked=true;}
function loadMemberPublishCookie(isScheduleView,groupNo){var cklng=document.cookie.length;var ckary=document.cookie.split("; ");var ckstr="";var i=0;var count=0;var name="";if(groupNo!=-1){var group_num_length=(groupNo+"").length;if(isScheduleView){name="GROUP_"+groupNo+"_SCHEDULE_PUBLISH=";count=name.length;}else{name="GROUP_"+groupNo+"_PUBLISH=";count=name.length;}}else{count=15;name="MEMBER_PUBLISH=";}
while(ckary[i]){if(ckary[i].substr(0,count)==name){ckstr=ckary[i].substr(count,ckary[i].length);break;}
i++;}
if(ckstr==""){if(groupNo!=-1&&!isScheduleView){crossGetObject("group").checked=true;crossGetObject("public").checked=true;}else{crossGetObject("private").checked=true;crossGetObject("group").checked=true;crossGetObject("public").checked=true;}
return;}
ckary=ckstr.split("%00");if(groupNo!=-1&&!isScheduleView){if(unescape(ckary[1])=="true")
crossGetObject("group").checked=true;if(unescape(ckary[2])=="true")
crossGetObject("public").checked=true;}else{if(unescape(ckary[0])=="true")
crossGetObject("private").checked=true;if(unescape(ckary[1])=="true")
crossGetObject("group").checked=true;if(unescape(ckary[2])=="true")
crossGetObject("public").checked=true;}}
function getCheckedPublish(isScheduleView,groupNo){var privateObj=null;var groupObj=null;var publicObj=null;var str="";var showPublishLevel=crossGetObject("showPublishLevel").value;if(showPublishLevel=="false"){str+=PUBLISH_LEVEL_PRIVATE+",";str+=PUBLISH_LEVEL_GROUP+",";str+=PUBLISH_LEVEL_PUBLIC+",";return str;}
if(isScheduleView||groupNo!=-1){if(groupNo!=-1&&!isScheduleView){groupObj=crossGetObject("group");publicObj=crossGetObject("public");}else{privateObj=crossGetObject("private");groupObj=crossGetObject("group");publicObj=crossGetObject("public");}}else{privateObj=crossGetObject("private");groupObj=crossGetObject("group");publicObj=crossGetObject("public");}
var flag=false;if(privateObj!=null&&privateObj.checked){str+=PUBLISH_LEVEL_PRIVATE+",";flag=true;}
if(groupObj.checked){str+=PUBLISH_LEVEL_GROUP+",";flag=true;}
if(publicObj.checked){str+=PUBLISH_LEVEL_PUBLIC+",";flag=true;}
if(!flag)
str="1,2,3";if(str.charAt(str.length-1)==",")
str=str.substring(0,str.length-1);return str;}
function getCheckedObject(){var str="";for(var i=0;i<gTypeEn.length;i++){var obj=crossGetObject("cal_"+gTypeEn[i]);if(obj!=null&&obj.checked)
str+=(i+1)+",";}
if(str.charAt(str.length-1)==",")
str=str.substring(0,str.length-1);return str;}
function selectSearchTab(type){var html=searchMenu(type);crossWrite(crossGetObject("divSearchMenuContent"),html);if(type=="object"){changeClass("searchMenuTitle1","tableTabOn");changeClass("searchMenuTitle2","tableTabOff");}else if(type=="user"){changeClass("searchMenuTitle2","tableTabOn");changeClass("searchMenuTitle1","tableTabOff");}}
function calendarMenu(){var showMyOperationButton=crossGetObject("showMyOperationButton").value;var className="CalendarOperation";if(crossGetObject("CalendarTab")!=null){var calTab=crossGetObject("CalendarTab").value;if(calTab=="1")
className="TabbedCalendarOperation";}
var str="<table id='calMenuTable' class='"+className+"'>";if(showMyOperationButton=="true"){str+="<tr>";str+="<td>";str+="<img src='images/btn_new.gif' id='newObjButton' alt='新規' style='cursor:pointer;' onClick='newObject(-1);' onmouseout=\"gSubmenuTimer = setTimeout('hideNewObjMenu()', 3000);\">";str+="&nbsp;";str+="<img src='images/btn_edit.gif' id='edtObjButton' alt='編集' style='cursor:pointer;' onClick='editObject(-1)'>";str+="&nbsp;";str+="<img src='images/btn_del.gif' id='delObjButton' alt='削除' style='cursor:pointer;' onClick='removeObject(-1)'>";str+="&nbsp;";str+="<img src='images/btn_copy.gif' id='copy_button' alt='コピー(Ctrl+C)' style='cursor:pointer;' onClick='copyObject()'>";str+="&nbsp;";str+="<img src='images/btn_paste.gif' id='paste_button' alt='貼り付け(Ctrl+V)' style='cursor:pointer;' onClick='pasteObject()'>";str+="</td>";str+="</tr>";}
str+="<tr>";str+="<td>";str+="<img src='images/btn_prev.gif' alt='前へ' style='cursor:pointer;' onClick='showBefore()'>";str+="&nbsp;";str+="<img src='images/btn_next.gif' alt='次へ' style='cursor:pointer;' onClick='showNext()'>";str+="&nbsp;&nbsp;";str+="<span id='thisYearAndMonth' class='cal_menu_title'></span>";str+="<span class='PullDownTitle'>&nbsp;&nbsp;</span><span id='moveMonthSpan'>&nbsp;</span><a href='javascript:showMoveMonth();'><img src='./images/pulldown.gif'></a>";str+="</td>";str+="<td align='right'>";str+="<img src='images/btn_today.gif' alt='今日' style='cursor:pointer;' onClick='showToday()'>&nbsp;";str+="<img src='images/btn_day.gif' alt='日表示' style='cursor:pointer;' onClick='showCalendarByDay()'>&nbsp;";str+="<img src='images/btn_week.gif' alt='週表示' style='cursor:pointer;' onClick='showCalendarByWeek()'>&nbsp;";str+="<img src='images/btn_month.gif' alt='月表示' style='cursor:pointer;' onClick='showCalendarByMonth()'>&nbsp;";str+="</td>";str+="</tr>";str+="</table>";str+="<div id='divSdlCal' class='divSdlCal'>カレンダー表示</div>";return str;}
var gMoveMonthFlag=false;var gMoveMonthTimer;function showMoveMonth(){if(!gMoveMonthFlag){var pos_obj=getElemPos(crossGetObject("moveMonthSpan"));var x=pos_obj.x;var y=pos_obj.y+crossGetObject("moveMonthSpan").offsetHeight;var html="";if(is.firefox)
html+="<select id=\"moveMenu\" name=\"moveMenu\" size='12' onmouseout=\"gMoveMonthTimer = setTimeout('hideMoveMonth()', 5000);\" onmouseover=\"clearTimeout(gMoveMonthTimer);\" onChange=\"moveMonth(this.value);\">";else
html+="<select id=\"moveMenu\" name=\"moveMenu\" size='12' onMouseOut=\"javascript:hideMoveMonth();\" onmouseover=\"clearTimeout(gMoveMonthTimer);\" onChange=\"moveMonth(this.value);\">";for(var i=0;i<12;i++){html+="<option value="+i+">"+(i+1)+"月</option>";}
html+="</select>";var item=crossGetObject("moveMonthMenu");if(item==null){item=dragableFloat("moveMonthMenu",x,y,false,"");}else{item.style.top=y;item.style.left=x;crossShowObject(crossGetObject("moveMonthMenu"));}
crossWrite(item,html);gTagMenuTimer=setTimeout('hideMoveMonth()',5000);}else{hideMoveMonth();}}
function hideMoveMonth(){crossHideObject(crossGetObject("moveMonthMenu"));gMoveMonthFlag=false;}
function moveMonth(selValue){hideMoveMonth();gUserCal.clearAllLocalObject();var yyyy=getYear(gUserCal.baseDate.getYear());var mm=selValue;var firstDate=new Date(yyyy,mm,1);var sunday=moveDate(firstDate,-firstDate.getDay());gUserCal.selectedDate=firstDate;gUserCal.showCalendarByMonth(firstDate);}
function memberCalendarMenu(){var className="CalendarOperation";if(crossGetObject("CalendarTab")!=null){var calTab=crossGetObject("CalendarTab").value;if(calTab=="1")
className="TabbedCalendarOperation";}
if(crossGetObject("GroupTools")!=null){var calTab=crossGetObject("GroupTools").value;if(calTab=="1")
className="TabbedCalendarOperation";}
var str="<table id='calMenuTable' class='"+className+"' width='100%'>";str+="<tr>";str+="<td>";str+="<img src='images/btn_prev.gif' alt='前へ' style='cursor:pointer;' onClick='showBefore()'>";str+="&nbsp;";str+="<img src='images/btn_next.gif' alt='次へ' style='cursor:pointer;' onClick='showNext()'>";str+="&nbsp;&nbsp;";str+="<span id='thisYearAndMonth' class='cal_menu_title'></span>";str+="&nbsp;&nbsp;&nbsp;&nbsp;";str+="<font size='4'><b><span id='divMenuMemName' class='cal_menu_title'></span></b></font>";str+="</td>";str+="<td align='right'>";str+="<img src='images/btn_today.gif' alt='今日' style='cursor:pointer;' onClick='showToday()'>&nbsp;";str+="<img src='images/btn_day.gif' alt='日表示' style='cursor:pointer;' onClick='showCalendarByDay()'>&nbsp;";str+="<img src='images/btn_week.gif' alt='週表示' style='cursor:pointer;' onClick='showCalendarByWeek()'>&nbsp;";str+="<img src='images/btn_month.gif' alt='月表示' style='cursor:pointer;' onClick='showCalendarByMonth()'>&nbsp;";str+="</td>";str+="</tr>";str+="</table>";str+="<div id='divSdlCal' class='divSdlCal'>カレンダー表示</div>";return str;}
function searchMenu(type){var html="";if(type=="object"){html+="<form name='formSearchObj' method='GET' action='./searchobj'>";html+="<input type='hidden' name='searchTabType' value='object'>";html+="<table>";}else if(type=="user"){html+="<form name='formSearchObj' method='GET' action='./searchuser'>";html+="<input type='hidden' name='searchTabType' value='user'>";html+="<input type='hidden' name='groupNo' value='-1'>";html+="<table>";}
var myUserid=crossGetObject("userid").value;html+="<tr>";html+="<td width='75%'>";html+="<input type='hidden' name='dstUserid' value='"+myUserid+"'>";html+="<input type='text' name='key' style='width: 110px'>";html+="</td>";html+="<td width='25%'>";html+="<input type='submit' name='btnSearch' value='検索' style='width: 40px'>";html+="</td>";html+="</tr>";if(type=="object"){html+="<tr>";html+="<td colspan='2'>";html+="<div id='divSearchOptionTitle'><a href=\"javascript:openSearchOption('divSearchOption')\">検索オプションを表示</a></div>";html+="<div id='divSearchOption' style='display:none;'>";html+="<input type='checkbox' name='option' value='all' checked>全て";html+="<input type='checkbox' name='option' value='life'>ライフログ<br>";html+="<input type='checkbox' name='option' value='schedule'>スケジュール";html+="<input type='checkbox' name='option' value='event'>イベント<br>";html+="<input type='checkbox' name='option' value='diary'>日記";html+="<input type='checkbox' name='option' value='album'>アルバム<br>";html+="<input type='checkbox' name='option' value='memo'>TODOメモ";html+="<input type='checkbox' name='option' value='goal'>目標";html+="</div>";html+="</td>";html+="</tr>";}
html+="</table>";html+="</form>";return html;}
function checkUseridExist(userid){if(userid==""){alert("ユーザーIDを指定してください。");return;}
var req="&userid="+userid;sendRequest(checkedUseridExist,req,"GET","./dupuserid",true,true);}
function checkedUseridExist(obj){var text=obj.responseText;if(text!=""){if(text=="true"){crossWrite(crossGetObject("reguseridError"),"<font color='#ff0000'><b>このユーザーIDは既に登録されています。別のユーザーIDを指定してください。</b></font>");}else if(text=="false"){crossWrite(crossGetObject("reguseridError"),"<font color='#3366FF'><b>このユーザーIDで登録することができます。</b></font>");}else{crossWrite(crossGetObject("reguseridError"),"<font color='#ff0000'><b>"+text+"</b></font>");}}}
function registerReminderToDB(time,objid,mailAddr,userType){var req="&time="+time+"&objid="+objid+"&mailaddr="+mailAddr+"&usertype="+userType;sendRequest(registeredReminder,req,"POST","./regreminder",true,true);}
function registeredReminder(obj){}
function registerObjectToDB(type,name,start,end,publish,group,link,tag,allday,desc,extra){var startArray=start.split("/");var startYear=parseInt(startArray[0]);var startMonth=parseInt(startArray[1])+1;var startDate=parseInt(startArray[2]);var startTime=startArray[3];var endArray=end.split("/");var endYear=parseInt(endArray[0]);var endMonth=parseInt(endArray[1])+1;var endDate=parseInt(endArray[2]);var endTime=endArray[3];var req="&ajax=1"+"&isnew=1"+"&type="+type+"&name="+name+"&startYear="+startYear+"&startMonth="+startMonth+"&startDate="+startDate+"&startTime="+startTime+"&endYear="+endYear+"&endMonth="+endMonth+"&endDate="+endDate+"&endTime="+endTime+"&publish="+publish;if(group!=""){var array=group.split(",");for(var i=0;i<array.length;i++){req+="&group="+array[i];}}
req+="&link="+link+"&tag="+tag+"&allday="+allday+"&description="+desc+"&extra="+extra;sendRequest(registeredObject,req,"POST","./regobj",true,true);if(type==OBJ_ALBUM){document.formNewObj.method="post";document.formNewObj.action="./regobj?"+req;document.formNewObj.encoding="multipart/form-data";document.formNewObj.submit();return;}else if(type==OBJ_FILE){document.formNewObj.method="post";document.formNewObj.action="./regobj?"+req;document.formNewObj.encoding="multipart/form-data";document.formNewObj.submit();return;}}
function registerGroupObjectToDB(type,name,start,end,publish,group,link,tag,allday,desc,groupNo){var startArray=start.split("/");var startYear=parseInt(startArray[0]);var startMonth=parseInt(startArray[1])+1;var startDate=parseInt(startArray[2]);var startTime=startArray[3];var endArray=end.split("/");var endYear=parseInt(endArray[0]);var endMonth=parseInt(endArray[1])+1;var endDate=parseInt(endArray[2]);var endTime=endArray[3];var req="&ajax=1"+"&groupNo="+groupNo+"&isnew=1"+"&type="+type+"&name="+name+"&startYear="+startYear+"&startMonth="+startMonth+"&startDate="+startDate+"&startTime="+startTime+"&endYear="+endYear+"&endMonth="+endMonth+"&endDate="+endDate+"&endTime="+endTime+"&publish="+publish;if(group!=""){var array=group.split(",");for(var i=0;i<array.length;i++){req+="&group="+array[i];}}
req+="&link="+link+"&tag="+tag+"&allday="+allday+"&description="+desc;sendRequest(registeredObject,req,"POST","./regobj",true,true);}
function registeredObject(obj){var xmlDoc=obj.responseXML;var text=obj.responseText;if(text!=""){var objects=xmlDoc.getElementsByTagName("object");for(var i=0;i<objects.length;i++){var parsedObj=new ParseObject(objects[i]);if(parsedObj.type_no==OBJ_SCHEDULE){showObject(parsedObj.class_no,parsedObj.userid,parsedObj.objid,parsedObj.type_no,parsedObj.name,parsedObj.start_date,parsedObj.end_date,parsedObj.publish_no,parsedObj.group,parsedObj.link,parsedObj.tag,parsedObj.allday,parsedObj.desc,parsedObj.commentExist,parsedObj.extra);}else if(parsedObj.type_no==OBJ_GROUP_SCHEDULE){showGroupObject(parsedObj.class_no,parsedObj.userid,parsedObj.objid,parsedObj.type_no,parsedObj.name,parsedObj.start_date,parsedObj.end_date,parsedObj.publish_no,parsedObj.group,parsedObj.link,parsedObj.tag,parsedObj.allday,parsedObj.desc,parsedObj.commentExist,parsedObj.extra);}else if(parsedObj.type_no==OBJ_MEMO){var isUseTodo=crossGetObject("isUseTodoMemo").value;if(isUseTodo=="true"){addTodoMemo(parsedObj.objid,parsedObj.start_date,"./top?select_date="+parsedObj.start_date,parsedObj.name,parsedObj.extra);}}}}}
function updateObjectToDB(objid,type,name,start,end,publish,group,link,tag,allday,desc){var startArray=start.split("/");var startYear=parseInt(startArray[0]);var startMonth=parseInt(startArray[1])+1;var startDate=parseInt(startArray[2]);var startTime=startArray[3];var endArray=end.split("/");var endYear=parseInt(endArray[0]);var endMonth=parseInt(endArray[1])+1;var endDate=parseInt(endArray[2]);var endTime=endArray[3];var req="&isnew=0"+"&ismove=1"+"&objid="+objid+"&type="+type+"&name="+name+"&startYear="+startYear+"&startMonth="+startMonth+"&startDate="+startDate+"&startTime="+startTime+"&endYear="+endYear+"&endMonth="+endMonth+"&endDate="+endDate+"&endTime="+endTime+"&publish="+publish;if(group!=""){var array=group.split(",");for(var i=0;i<array.length;i++){req+="&group="+array[i];}}
req+="&link="+link+"&tag="+tag+"&allday="+allday+"&description="+desc+"&extra=";sendRequest(updatedObject,req,"POST","./regobj",true,true);}
function updatedObject(obj){}
function deleteObjectFromDB(objid,groupNo,type,creater){var req="&objid="+objid+"&groupNo="+groupNo+"&type="+type+"&creater="+creater;sendRequest(deletedObject,req,"POST","./deleteobj",false,true);}
function deletedObject(obj){}
function loadObjectFromDB(from,to,publish,objType){showWaitTip();var myuserid=crossGetObject("userid").value;var req="&userid="+myuserid+"&fromDate="+from+"&toDate="+to;if(publish!=null&&publish!=""){var array=publish.split(",");for(var i=0;i<array.length;i++){req+="&publish="+array[i];}}
if(objType!=null&&objType!=""){var array=objType.split(",");for(var i=0;i<array.length;i++){req+="&type="+array[i];}}
sendRequest(loadedObject,req,"POST","./loadobj",true,true);}
function loadedObject(obj){hideWaitTip();var xmlDoc=obj.responseXML;var text=obj.responseText;if(text!=""){var objects=xmlDoc.getElementsByTagName("object");for(var i=0;i<objects.length;i++){var parsedObj=new ParseObject(objects[i]);var arg="\""+
parsedObj.class_no+"\",\""+
parsedObj.userid+"\",\""+
parsedObj.objid+"\",\""+
parsedObj.type_no+"\",\""+
parsedObj.name+"\",\""+
parsedObj.start_date+"\",\""+
parsedObj.end_date+"\",\""+
parsedObj.publish_no+"\",\""+
parsedObj.group+"\",\""+
parsedObj.link+"\",\""+
parsedObj.tag+"\",\""+
parsedObj.allday+"\",\""+
encodeURIComponent(parsedObj.desc)+"\",\""+
parsedObj.commentExist+"\",\""+
parsedObj.extra+"\"";var id=setTimeout("parallel_showObject("+arg+")",500);}}}
function parallel_showObject(class_no,userid,objid,type,name,strStart,strEnd,publish,group,link,tag,allday,desc,commentExist,extra){if(commentExist=="true")
commentExist=true;else
commentExist=false;if(allday=="true")
allday=true;else
allday=false;showObject(class_no,userid,objid,type,name,strStart,strEnd,publish,group,link,tag,allday,decodeURIComponent(desc),commentExist,extra);}
function ParseObject(object){this.userid=object.getElementsByTagName("userid").item(0).firstChild.data;this.objid=object.getElementsByTagName("objid").item(0).firstChild.data;this.class_no=object.getElementsByTagName("class_no").item(0).firstChild.data;this.type_no=object.getElementsByTagName("type_no").item(0).firstChild.data;this.create_date=object.getElementsByTagName("create_date").item(0).firstChild.data;this.update_date=object.getElementsByTagName("update_date").item(0).firstChild.data;this.start_date=object.getElementsByTagName("start_date").item(0).firstChild.data;this.end_date=object.getElementsByTagName("end_date").item(0).firstChild.data;this.name="";var nameObj=object.getElementsByTagName("name").item(0).firstChild;if(nameObj!=null)this.name=nameObj.data;this.allday=false;var strallday=object.getElementsByTagName("allday").item(0).firstChild.data;if(strallday=="true")
this.allday=true;this.publish_no=object.getElementsByTagName("publish_no").item(0).firstChild.data;this.group="";var groupObj=object.getElementsByTagName("group").item(0).firstChild;if(groupObj!=null)this.group=groupObj.data;this.link="";var linkObj=object.getElementsByTagName("link").item(0).firstChild;if(linkObj!=null)this.link=linkObj.data;this.tag="";var tagObj=object.getElementsByTagName("tag").item(0).firstChild;if(tagObj!=null)this.tag=tagObj.data;this.desc="";var descObj=object.getElementsByTagName("description").item(0).firstChild;if(descObj!=null)this.desc=descObj.data;this.commentExist=false;var strCommentExist=object.getElementsByTagName("commentExist").item(0).firstChild.data;if(strCommentExist=="true")
this.commentExist=true;this.extra="";var extraObj=object.getElementsByTagName("extra").item(0).firstChild;if(extraObj!=null)this.extra=extraObj.data;return this;}
function ParseOfflineObject(class_no,userid,objid,class_no,type_no,create_date,update_date,start_date,end_date,name,allday,publish_no,group,link,tag,desc,commentExist,extra){this.class_no=class_no;this.userid=userid;this.objid=objid;this.class_no=class_no;this.type_no=type_no;this.create_date=create_date;this.update_date=update_date;this.start_date=start_date;this.end_date=end_date;this.name=name;this.allday=allday;this.publish_no=publish_no;this.group=group;this.link=link;this.tag=tag;this.desc=desc;this.commentExist=commentExist;this.extra=extra;return this;}
function loadMemberGoalObjectFromDB(member,from,to,goalid){showWaitTip();var req="&userid="+member+"&fromDate="+from+"&toDate="+to+"&goalid="+goalid;sendRequest(loadedMemObject,req,"POST","./loadobj",true,true);}
function loadMemberObjectFromDB(member,from,to){showWaitTip();var req="&userid="+member+"&fromDate="+from+"&toDate="+to;sendRequest(loadedMemObject,req,"POST","./loadobj",true,true);}
function loadMemberEventObjectFromDB(member,from,to){showWaitTip();var req="&userid="+member+"&fromDate="+from+"&toDate="+to+"&type="+OBJ_EVENT;sendRequest(loadedMemObject,req,"POST","./loadobj",true,true);}
var gTmpObj;function loadedMemObject(obj){hideWaitTip();var xmlDoc=obj.responseXML;var text=obj.responseText;if(text!=""){var objects=xmlDoc.getElementsByTagName("object");for(var i=0;i<objects.length;i++){var parsedObj=new ParseObject(objects[i]);showMemberObject(parsedObj.class_no,parsedObj.userid,parsedObj.objid,parsedObj.type_no,parsedObj.name,parsedObj.start_date,parsedObj.end_date,parsedObj.publish_no,parsedObj.group,parsedObj.link,parsedObj.tag,parsedObj.allday,parsedObj.desc,parsedObj.commentExist,parsedObj.extra);if(gPaticularScheduleObjid==parsedObj.objid){gTmpObj=parsedObj;}}
if(gPaticularScheduleObjid!=""){if(gTmpObj!=null)
gUserCal.setSelectObject(gTmpObj.objid,true);else
gUserCal.setSelectObject("",false);}}}
function loadMemberScheduleObjectFromDB(member,from,to,publish,objType){showWaitTip();var req="&userid="+member+"&fromDate="+from+"&toDate="+to;if(publish!=null&&publish!=""){var array=publish.split(",");for(var i=0;i<array.length;i++){req+="&publish="+array[i];}}
if(objType!=null&&objType!=""){var array=objType.split(",");for(var i=0;i<array.length;i++){req+="&type="+array[i];}}
sendRequest(loadedMemObject,req,"POST","./loadobj",true,true);}
function loadMemberGroupScheduleObjectFromDB(member,from,to){showWaitTip();var req="&userid="+member+"&fromDate="+from+"&toDate="+to+"&type="+OBJ_GROUP_SCHEDULE;sendRequest(loadedMemObject,req,"POST","./loadobj",true,true);}
function loadAllMemberScheduleObjectFromDB(from,to){showWaitTip();var req="&groupNo=0"+"&fromDate="+from+"&toDate="+to+"&type="+OBJ_SCHEDULE;sendRequest(loadedMemObject,req,"POST","./loadobj",true,true);}
function loadGroupFromDB(){sendRequest(loadedGroup,"","POST","./loadgroup.do",true,true);}
function loadedGroup(obj){var html="<span>";html+="<select name='publish' onChange='changePublishLevel(this.value);'>";html+="<option value='1'>"+gPublishLevel[0]+"</option>";if(obj!=null&&obj.responseText!=""){var xmlDoc=obj.responseXML;var groups=xmlDoc.getElementsByTagName("group");var groupsNo=new Array(groups.length);var groupsName=new Array(groups.length);for(i=0;i<groups.length;i++){var no=groups[i].getElementsByTagName("no").item(0).firstChild.data;var name=groups[i].getElementsByTagName("name").item(0).firstChild.data;groupsNo[i]=no;groupsName[i]=name;}
if(groups.length>0)
html+="<option value='2'>"+gPublishLevel[1]+"</option>";var publish_public=crossGetObject("publish_public");if(publish_public!=null&&(publish_public.value==2||publish_public.value==3))
html+="<option value='3'>"+gPublishLevel[2]+"</option>";html+="</select>";html+="</span>";html+="<span id='divGroup'>";html+="<select name='group' size='4' multiple>";if(groups.length>0){for(var i=0;i<groups.length;i++){html+="<option value='"+groupsNo[i]+"'>"+groupsName[i]+"</option>";}}
html+="</select>";html+="</span>";}else{var publish_public=crossGetObject("publish_public");if(publish_public!=null&&(publish_public.value==2||publish_public.value==3))
html+="<option value='3'>"+gPublishLevel[2]+"</option>";html+="</select>";html+="</span>";html+="<span id='divGroup'>";html+="<select name='group' size='4' multiple>";html+="</select>";html+="</span>";}
crossWrite(crossGetObject("divLifePublish"),html);crossHideObject(crossGetObject("divGroup"));}
function loadGroupScheduleObjectFromDB(group_no,from,to,publish,objType){showWaitTip();var req="&groupNo="+group_no+"&fromDate="+from+"&toDate="+to;if(publish!=null&&publish!=""){var array=publish.split(",");for(var i=0;i<array.length;i++){req+="&publish="+array[i];}}
if(objType!=null&&objType!=""){var array=objType.split(",");for(var i=0;i<array.length;i++){req+="&type="+array[i];}}
sendRequest(loadedGroupObject,req,"POST","./loadobj",true,true);}
function loadGroupEventObjectFromDB(group_no,from,to){showWaitTip();var req="&groupNo="+group_no+"&fromDate="+from+"&toDate="+to+"&type="+OBJ_EVENT;sendRequest(loadedGroupObject,req,"POST","./loadobj",true,true);}
function loadGroupObjectFromDB(group_no,from,to,publish){showWaitTip();var req="&groupNo="+group_no+"&fromDate="+from+"&toDate="+to;if(publish!=null&&publish!=""){var array=publish.split(",");for(var i=0;i<array.length;i++){req+="&publish="+array[i];}}
sendRequest(loadedGroupObject,req,"POST","./loadobj",true,true);}
function loadedGroupObject(obj){hideWaitTip();var xmlDoc=obj.responseXML;var text=obj.responseText;if(text!=""){var objects=xmlDoc.getElementsByTagName("object");var groupSchList=new Vector();for(var i=0;i<objects.length;i++){var parsedObj=new ParseObject(objects[i]);var flag=true;if(parsedObj.type_no==OBJ_GROUP_SCHEDULE&&!groupSchList.contains(parsedObj.objid)){groupSchList.addElement(parsedObj.objid);}else{flag=false;}
if(parsedObj.type_no!=OBJ_GROUP_SCHEDULE){flag=true;}
if(flag){showGroupObject(parsedObj.class_no,parsedObj.userid,parsedObj.objid,parsedObj.type_no,parsedObj.name,parsedObj.start_date,parsedObj.end_date,parsedObj.publish_no,parsedObj.group,parsedObj.link,parsedObj.tag,parsedObj.allday,parsedObj.desc,parsedObj.commentExist,parsedObj.extra);}}}}
function registerMemberToDB(groupno,reguserid){var req="&groupno="+groupno+"&reguserid="+reguserid;sendRequest(registeredMember,req,"POST","./regmem",true,true);}
function registeredMember(obj){}
function sendInvitaionMessage(groupNo,dstUserid){var req="&groupNo="+groupNo+"&dstUserid="+dstUserid;sendRequest(sentInvitaionMessage,req,"POST","./invite",true,true);}
function sentInvitaionMessage(obj){}
function getInvitationFromDB(){sendRequest(gotInvitation,"","POST","./getinvitation",true,true);}
function gotInvitation(obj){var xmlDoc=obj.responseXML;var text=obj.responseText;if(text!=""){var groups=xmlDoc.getElementsByTagName("invitation");for(var i=0;i<groups.length;i++){var no=groups[i].getElementsByTagName("no").item(0).firstChild.data;var name=groups[i].getElementsByTagName("groupName").item(0).firstChild.data;var description="";var descriptionObj=groups[i].getElementsByTagName("description").item(0).firstChild;if(descriptionObj!=null)description=descriptionObj.data;var srcUser=groups[i].getElementsByTagName("srcUser").item(0).firstChild.data;}
if(groups.length>0)
crossGetObject("divNotification3").innerHTML="<b>グループへの招待通知が<font color='#ff0000'>"+groups.length+"</font>件あります！ </b><a href='#' onClick='javascript:getInvitationMsgFromDB();'>詳細</a>";}}
function loadDesignFromDB(dstUserid){var req="&dstUserid="+dstUserid;sendRequest(loadedDesign,req,"POST","./loaddesign",false,true);}
function loadedDesign(obj){var xmlDoc=obj.responseXML;var text=obj.responseText;if(text!=""){gLoadedDesignFlag=true;var design=xmlDoc;var userid=design.getElementsByTagName("userid").item(0).firstChild.data;var themeColor="";var themeColorObj=design.getElementsByTagName("themeColor").item(0).firstChild;if(themeColorObj!=null)themeColor=themeColorObj.data;var privateObjColor="";var privateObjColorObj=design.getElementsByTagName("privateObjColor").item(0).firstChild;if(privateObjColorObj!=null)privateObjColor=privateObjColorObj.data;var groupObjColor="";var groupObjColorObj=design.getElementsByTagName("groupObjColor").item(0).firstChild;if(groupObjColorObj!=null)groupObjColor=groupObjColorObj.data;var publicObjColor="";var publicObjColorObj=design.getElementsByTagName("publicObjColor").item(0).firstChild;if(publicObjColorObj!=null)publicObjColor=publicObjColorObj.data;var privateObjTextColor="";var privateObjTextColorObj=design.getElementsByTagName("privateObjTextColor").item(0).firstChild;if(privateObjTextColorObj!=null)privateObjTextColor=privateObjTextColorObj.data;var groupObjTextColor="";var groupObjTextColorObj=design.getElementsByTagName("groupObjTextColor").item(0).firstChild;if(groupObjTextColorObj!=null)groupObjTextColor=groupObjTextColorObj.data;var publicObjTextColor="";var publicObjTextColorObj=design.getElementsByTagName("publicObjTextColor").item(0).firstChild;if(publicObjTextColorObj!=null)publicObjTextColor=publicObjTextColorObj.data;var todayObjColor="";var todayObjColorObj=design.getElementsByTagName("todayObjColor").item(0).firstChild;if(todayObjColorObj!=null)todayObjColor=todayObjColorObj.data;var todayColor
if(todayObjColor=="true")
todayColor=true;else
todayColor=false;setDesign(themeColor,privateObjColor,groupObjColor,publicObjColor,privateObjTextColor,groupObjTextColor,publicObjTextColor,todayColor);}}
function loadThemeColorFromDB(no){var req="&groupNo="+no;sendRequest(loadedThemeColor,req,"POST","./loaddesign",false,true);}
function loadedThemeColor(obj){var xmlDoc=obj.responseXML;var text=obj.responseText;if(text!=""){gLoadedDesignFlag=true;var design=xmlDoc.getElementsByTagName("design");for(var i=0;i<design.length;i++){var userid="";var useridObj=design[i].getElementsByTagName("userid").item(0).firstChild;if(useridObj!=null)userid=useridObj.data;var themeColor="";var themeColorObj=design[i].getElementsByTagName("themeColor").item(0).firstChild;if(themeColorObj!=null)themeColor=themeColorObj.data;setThemeColor(userid,themeColor);}}}
function registerFavoriteToDB(dstUserid){var req="&dstUserid="+dstUserid;sendRequest(registeredFavorite,req,"POST","./regfavorite",true,true);}
function registeredFavorite(){}
function deleteFavoriteFromDB(dstUserid){req="&dstUserid="+dstUserid;sendRequest(deleteedFavorite,req,"POST","./delfavorite",false,true);}
function deleteedFavorite(){}
function loadMemoFromDB(date){showWaitTip();var req="&date="+date;sendRequest(loadedMemoObject,req,"POST","./loadmemo",true,true);}
function loadedMemoObject(obj){hideWaitTip();var xmlDoc=obj.responseXML;var text=obj.responseText;if(text!=""){var memos=new Vector();var objects=xmlDoc.getElementsByTagName("object");for(var i=0;i<objects.length;i++){var parsedObj=new ParseObject(objects[i]);memos.addElement(parsedObj);}
showMemo(memos);}}
function loadFileObjectFromDB(dstUserid,groupNo,tag){showWaitTip();var req="&loadfile=1"+"&dstUserid="+dstUserid+"&groupNo="+groupNo+"&tag="+tag;sendRequest(loadedFileObject,req,"POST","./file",true,true);}
function loadedFileObject(obj){hideWaitTip();var xmlDoc=obj.responseXML;var text=obj.responseText;var cmtFlag=false;if(crossGetObject("permitComment")!=null){var permitComment=crossGetObject("permitComment").value;if(permitComment!=null&&permitComment==2){cmtFlag=true;}}
var html="<table class='File' width='200%' >";html+="<tr class='FileTitle'>";if(cmtFlag)
html+="<td>コメント</td>";html+="<td>名前</td>";html+="<td>ファイル名</td>";html+="<td>ダウンロード</td>";html+="<td>ファイルサイズ(KB)</td>";html+="<td>ユーザー</td>";html+="<td>更新日</td>";html+="<td>公開レベル</td>";html+="<td>リンク</td>";html+="<td>説明</td>";html+="</tr>";if(text!=""){var objects=xmlDoc.getElementsByTagName("object");for(var i=0;i<objects.length;i++){var parsedObj=new ParseObject(objects[i]);var obj_name=parsedObj.name;var start_date=parsedObj.start_date;var end_date=parsedObj.end_date;var publish_no=parsedObj.publish_no;var link=parsedObj.link;var desc=parsedObj.desc;var userid=parsedObj.userid;var objid=parsedObj.objid;var file_name=objects[i].getElementsByTagName("file_name").item(0).firstChild.data;var file_size=objects[i].getElementsByTagName("file_size").item(0).firstChild.data;var file_update_date=objects[i].getElementsByTagName("file_update_date").item(0).firstChild.data;var comment_num=objects[i].getElementsByTagName("comment_num").item(0).firstChild.data;html+="<tr>";if(cmtFlag){var redirectUrl="./file?dstUserid="+userid+"&objid="+objid;html+="<td>";html+="<img src='images/comment.gif' border='0'>&nbsp;"
html+="<a href=\"javascript:inputComment('"+objid+"', '"+redirectUrl+"');\">コメントを書く</a>&nbsp;";if(comment_num>0)
html+="<a href=\"javascript:loadComment('"+objid+"');\">コメントを見る("+comment_num+")</a>";else
html+="コメントを見る(0)";html+="</td>";}
html+="<td>"+obj_name+"</td>";html+="<td>"+file_name+"</td>";html+="<td><a href='./download?dstUserid="+userid+"&objid="+objid+"'>ダウンロード</a></td>";html+="<td>"+file_size+"</td>";html+="<td>"+userid+"</td>";html+="<td>"+file_update_date+"</td>";html+="<td>"+gPublishLevel[publish_no-1]+"</td>";html+="<td>"+link+"</td>";html+="<td>"+desc+"</td>";html+="</tr>";}}
html+="</table>";crossWrite(crossGetObject("divFileList"),html);}
function loadTagObjectFromDB(dstUserid,tag){var req="&tagRing=1"+"&dstUserid="+dstUserid+"&tag="+tag;sendRequest(loadedTagObject,req,"POST","./loadobj",true,true);}
function loadedTagObject(obj){var xmlDoc=obj.responseXML;var text=obj.responseText;if(text!=""){var objects=xmlDoc.getElementsByTagName("object");var html="";for(var i=0;i<objects.length;i++){var parsedObj=new ParseObject(objects[i]);var icon="<img border='0' src='./images/"+gTypeEn[parsedObj.type_no-1]+".gif'>";var link=createObjectLink(parsedObj.type_no,parsedObj.userid,parsedObj.objid,parsedObj.start_date,parsedObj.group);html+=icon+" "+parsedObj.start_date+" <a href='"+link+"'>"+parsedObj.name+"<a><br>";}
showTagObj(html);}}
var gRedirectUrl;var gCommentDstObjid;function registerCommentToDB(dstObjid,content,redirectUrl){gRedirectUrl=redirectUrl;gCommentDstObjid=dstObjid;var req="&dstObjid="+dstObjid+"&content="+content;sendRequest(registeredComment,req,"POST","./regcomment",true,true);}
function updateCommentToDB(userid,commentid,content,redirectUrl){gRedirectUrl=redirectUrl;var req="&userid="+userid+"&commentid="+commentid+"&content="+content;sendRequest(registeredComment,req,"POST","./updatecomment",true,true);}
function registeredComment(obj){if(gUserCal==null){location.href=gRedirectUrl;}else{var obj=gUserCal.getLocalObjectFromHashTable(gCommentDstObjid);processComment(obj);}}
function loadCommentFromDB(objid){showWaitTip();var req="&dstObjid="+objid;sendRequest(loadedCommentObject,req,"POST","./loadcomment",true,true);}
function deleteCommentFromDB(userid,commentid,redirectUrl){gRedirectUrl=redirectUrl;var req="&userid="+userid+"&commentid="+commentid+"&url="+redirectUrl;sendRequest(deletedComment,req,"POST","./delcomment",true,true);}
function deletedComment(){location.href=gRedirectUrl;}
function loadedCommentObject(obj){hideWaitTip();var xmlDoc=obj.responseXML;var text=obj.responseText;if(text!=""){var objid="";var userid="";var dstUserid="";var commentid="";var comments=new Vector();var objects=xmlDoc.getElementsByTagName("comment");for(var i=0;i<objects.length;i++){var parsedObj=new ParseComment(objects[i]);if(i==0){objid=parsedObj.dstObjid;dstUserid=parsedObj.dstUserid;}
comments.addElement(parsedObj);}
showComment(objid,"./member?dstUserid="+dstUserid+"&view=all",comments,dstUserid);}}
function ParseComment(object){this.no=object.getElementsByTagName("no").item(0).firstChild.data;this.dstUserid=object.getElementsByTagName("dstUserid").item(0).firstChild.data;this.dstObjid=object.getElementsByTagName("dstObjid").item(0).firstChild.data;this.userid=object.getElementsByTagName("userid").item(0).firstChild.data;this.commentid=object.getElementsByTagName("commentid").item(0).firstChild.data;this.create_date=object.getElementsByTagName("create_date").item(0).firstChild.data;this.content="";var contentObj=object.getElementsByTagName("content").item(0).firstChild;if(contentObj!=null)this.content=contentObj.data;return this;}
function loadLifeObjectFromDB(dstUserid,from,to,chartType){showWaitTip();var req="&userid="+dstUserid+"&fromDate="+from+"&toDate="+to+"&type="+OBJ_LIFE;if(chartType==GRAPH_TYPE_SATISFACTION)
sendRequest(loadedLifeObjectBySatisfaction,req,"POST","./loadobj",true,true);else if(chartType==GRAPH_TYPE_AVG_SATISFACTION)
sendRequest(loadedLifeObjectByAvgSatisfaction,req,"POST","./loadobj",true,true);else if(chartType==GRAPH_TYPE_TODAY)
sendRequest(loadedLifeObjectByTodaySatisfaction,req,"POST","./loadobj",true,true);else if(chartType==GRAPH_TYPE_ITEMS)
sendRequest(loadedLifeObjectByItems,req,"POST","./loadobj",true,true);else if(chartType==CHECK_LIFELOG)
sendRequest(checkedLifelog,req,"POST","./loadobj",true,true);}
function loadedLifeObjectBySatisfaction(obj){hideWaitTip();var xmlDoc=obj.responseXML;var text=obj.responseText;if(text!=""){var objects=xmlDoc.getElementsByTagName("object");if(objects.length>0){var date=new Array(objects.length);var sleepTime=new Array(objects.length);var sleepNum=new Array(objects.length);var workTime=new Array(objects.length);var workNum=new Array(objects.length);var playTime=new Array(objects.length);var playNum=new Array(objects.length);var sportsTime=new Array(objects.length);var sportsNum=new Array(objects.length);var breakfirst=new Array(objects.length);var lunch=new Array(objects.length);var dinner=new Array(objects.length);var sweets=new Array(objects.length);var drink=new Array(objects.length);var eatNum=new Array(objects.length);var conditionNum=new Array(objects.length);var todayComment=new Array(objects.length);for(var i=0;i<objects.length;i++){var parsedObj=new ParseObject(objects[i]);var lifeObj=new LifelogObject(parsedObj.desc);date[i]=parsedObj.start_date;sleepTime[i]=parseFloat(lifeObj.sleepTime);sleepNum[i]=parseInt(lifeObj.sleepNum);workTime[i]=parseFloat(lifeObj.workTime);workNum[i]=parseInt(lifeObj.workNum);playTime[i]=parseFloat(lifeObj.playTime);playNum[i]=parseInt(lifeObj.playNum);sportsTime[i]=parseFloat(lifeObj.sportsTime);sportsNum[i]=parseInt(lifeObj.sportsNum);breakfirst[i]=lifeObj.breakfirst;lunch[i]=lifeObj.lunch;dinner[i]=lifeObj.dinner;sweets[i]=lifeObj.sweets;drink[i]=lifeObj.drink;eatNum[i]=parseInt(lifeObj.eatNum);conditionNum[i]=parseInt(lifeObj.conditionNum);todayComment[i]=lifeObj.todayComment;}
showSatisfactionChart(date,sleepNum,workNum,playNum,sportsNum,eatNum,conditionNum);}}else{crossWrite(crossGetObject("divLifeChartMenu"),"<br>ライフログが登録されていません。");var iw=window.frames["LifelogDiagram"];iw.document.open();iw.document.write("");iw.document.close();}}
function loadedLifeObjectByAvgSatisfaction(obj){hideWaitTip();var xmlDoc=obj.responseXML;var text=obj.responseText;if(text!=""){var objects=xmlDoc.getElementsByTagName("object");if(objects.length>0){var date=new Array(objects.length);var sleepTime=new Array(objects.length);var sleepNum=new Array(objects.length);var workTime=new Array(objects.length);var workNum=new Array(objects.length);var playTime=new Array(objects.length);var playNum=new Array(objects.length);var sportsTime=new Array(objects.length);var sportsNum=new Array(objects.length);var breakfirst=new Array(objects.length);var lunch=new Array(objects.length);var dinner=new Array(objects.length);var sweets=new Array(objects.length);var drink=new Array(objects.length);var eatNum=new Array(objects.length);var conditionNum=new Array(objects.length);var todayComment=new Array(objects.length);for(var i=0;i<objects.length;i++){var parsedObj=new ParseObject(objects[i]);var lifeObj=new LifelogObject(parsedObj.desc);date[i]=parsedObj.start_date;sleepTime[i]=parseFloat(lifeObj.sleepTime);sleepNum[i]=parseInt(lifeObj.sleepNum);workTime[i]=parseFloat(lifeObj.workTime);workNum[i]=parseInt(lifeObj.workNum);playTime[i]=parseFloat(lifeObj.playTime);playNum[i]=parseInt(lifeObj.playNum);sportsTime[i]=parseFloat(lifeObj.sportsTime);sportsNum[i]=parseInt(lifeObj.sportsNum);breakfirst[i]=lifeObj.breakfirst;lunch[i]=lifeObj.lunch;dinner[i]=lifeObj.dinner;sweets[i]=lifeObj.sweets;drink[i]=lifeObj.drink;eatNum[i]=parseInt(lifeObj.eatNum);conditionNum[i]=parseInt(lifeObj.conditionNum);todayComment[i]=lifeObj.todayComment;}
showAvgSatisfactionChart(date,sleepNum,workNum,playNum,sportsNum,eatNum,conditionNum);}}else{crossWrite(crossGetObject("divLifeChartMenu"),"<br>ライフログが登録されていません。");var iw=window.frames["LifelogDiagram"];iw.document.open();iw.document.write("");iw.document.close();}}
function loadedLifeObjectByTodaySatisfaction(obj){hideWaitTip();var xmlDoc=obj.responseXML;var text=obj.responseText;if(text!=""){var objects=xmlDoc.getElementsByTagName("object");if(objects.length>0){var parsedObj=new ParseObject(objects[0]);var lifeObj=new LifelogObject(parsedObj.desc);var objid=parsedObj.objid;var userid=parsedObj.userid;var comments=parsedObj.commentExist;var date=parsedObj.start_date;var sleepTime=parseFloat(lifeObj.sleepTime);var sleepNum=parseInt(lifeObj.sleepNum);var workTime=parseFloat(lifeObj.workTime);var workNum=parseInt(lifeObj.workNum);var playTime=parseFloat(lifeObj.playTime);var playNum=parseInt(lifeObj.playNum);var sportsTime=parseFloat(lifeObj.sportsTime);var sportsNum=parseInt(lifeObj.sportsNum);var breakfirst=lifeObj.breakfirst;var lunch=lifeObj.lunch;var dinner=lifeObj.dinner;var sweets=lifeObj.sweets;var drink=lifeObj.drink;var eatNum=parseInt(lifeObj.eatNum);var conditionFace=parseInt(lifeObj.conditionFace);var conditionNum=parseInt(lifeObj.conditionNum);var todayComment=lifeObj.todayComment;showTodaySatisfactionChart(userid,objid,date,sleepTime,sleepNum,workTime,workNum,playTime,playNum,sportsTime,sportsNum,breakfirst,lunch,dinner,sweets,drink,eatNum,conditionFace,conditionNum,todayComment,comments);}}}
function loadedLifeObjectByItems(obj){hideWaitTip();var xmlDoc=obj.responseXML;var text=obj.responseText;if(text!=""){var objects=xmlDoc.getElementsByTagName("object");if(objects.length>0){var date=new Array(objects.length);var sleepTime=new Array(objects.length);var sleepNum=new Array(objects.length);var workTime=new Array(objects.length);var workNum=new Array(objects.length);var playTime=new Array(objects.length);var playNum=new Array(objects.length);var sportsTime=new Array(objects.length);var sportsNum=new Array(objects.length);var breakfirst=new Array(objects.length);var lunch=new Array(objects.length);var dinner=new Array(objects.length);var sweets=new Array(objects.length);var drink=new Array(objects.length);var eatNum=new Array(objects.length);var conditionNum=new Array(objects.length);var todayComment=new Array(objects.length);for(var i=0;i<objects.length;i++){var parsedObj=new ParseObject(objects[i]);var lifeObj=new LifelogObject(parsedObj.desc);date[i]=parsedObj.start_date;sleepTime[i]=parseFloat(lifeObj.sleepTime);sleepNum[i]=parseInt(lifeObj.sleepNum);workTime[i]=parseFloat(lifeObj.workTime);workNum[i]=parseInt(lifeObj.workNum);playTime[i]=parseFloat(lifeObj.playTime);playNum[i]=parseInt(lifeObj.playNum);sportsTime[i]=parseFloat(lifeObj.sportsTime);sportsNum[i]=parseInt(lifeObj.sportsNum);breakfirst[i]=lifeObj.breakfirst;lunch[i]=lifeObj.lunch;dinner[i]=lifeObj.dinner;sweets[i]=lifeObj.sweets;drink[i]=lifeObj.drink;eatNum[i]=parseInt(lifeObj.eatNum);conditionNum[i]=parseInt(lifeObj.conditionNum);todayComment[i]=lifeObj.todayComment;}
showItemsChart(date,sleepTime,workTime,playTime,sportsTime,breakfirst,lunch,dinner,sweets,drink);}}else{crossWrite(crossGetObject("divLifeChartMenu"),"<br>ライフログが登録されていません。");var iw=window.frames["LifelogDiagram"];iw.document.open();iw.document.write("");iw.document.close();}}
function checkedLifelog(obj){hideWaitTip();var xmlDoc=obj.responseXML;var text=obj.responseText;if(text==""||text==null||text=="null"){var yesDate=moveDate(new Date(),-1);var yesterday=getDateByString(yesDate);var cell=gUserCal.getCellNumFromDate(yesterday);inputLifelog(cell);}}
function registerProgressToDB(dstObjid,progress){var req="&objid="+dstObjid+"&progress="+progress;sendRequest(registeredStatus,req,"POST","./goalstatus",true,true);}
function registerStatusCommentToDB(dstObjid,comment){var req="&objid="+dstObjid+"&comment="+comment;sendRequest(registeredStatus,req,"POST","./goalstatus",true,true);}
function registeredStatus(){}
function hideComment(){crossHideObject(crossGetObject("inputComment"));}
function inputComment(objid,redirectUrl,updateFlag,userid,commentid,comment){var WINDOW_WIDTH=500;var x=getMouseX()-5;var y=getMouseY()-5;if((x+WINDOW_WIDTH)>=(window.screen.width-100)){x=window.screen.width-(WINDOW_WIDTH+100);}
if(comment!=null&&comment.indexOf("|%sq%|")!=-1)
comment=comment.replace("|%sq%|","'");var now=new Date();var strDate=getDateByString(now);var html="<form name='formComment' onSubmit='return false'>";html+="<table cellpadding='0' cellspacing='0'>";html+="<tr>";html+="<td bgcolor='skyblue' height='25'>&nbsp;<img src='images/comment.gif' border='0'>&nbsp;<font color='white'><b>コメントする</b></font></td>";html+="<td align='right' bgcolor='skyblue'><a href='javascript:hideComment()'><img src='images/close.gif' border='0'></a>&nbsp;</td>";html+="</tr>";html+="<tr>";html+="</tr>";html+="<tr>";if(updateFlag){comment=comment.split("<br>");comment=comment.join("\n");html+="<td colspan='2'><textarea name='content' cols='50' rows='10'>"+comment+"</textarea></td>";}else{html+="<td colspan='2'><textarea name='content' cols='50' rows='10'></textarea></td>";}
html+="</tr>";html+="<tr>";if(updateFlag)
html+="<td><input type='button' name='commentBtn' value='更新' onClick=\"updateComment('"+userid+"', '"+commentid+"', '"+redirectUrl+"');\"></td>";else
html+="<td><input type='button' name='commentBtn' value='追加' onClick=\"addComment('"+objid+"','"+redirectUrl+"');\"></td>";html+="</tr>";html+="</table>";html+="</form>";var item=crossGetObject("inputComment");if(item==null){item=dragableFloat("inputComment",x,y,true,null);}else{item.style.top=y;item.style.left=x;crossShowObject(crossGetObject("inputComment"));}
changeClass(item.id,"comment");item.innerHTML=html;document.formComment.content.focus();}
function addComment(dstObjid,redirectUrl){var content=document.formComment.content.value;if(content==""){document.formComment.content.focus();return;}
registerCommentToDB(dstObjid,content,redirectUrl);hideComment();}
function loadComment(objid){loadCommentFromDB(objid);}
function showComment(objid,redirectUrl,comments,dstUserid){var WINDOW_WIDTH=400;var x=getMouseX()-5;var y=getMouseY()-5;if((x+WINDOW_WIDTH)>=(window.screen.width-100)){x=window.screen.width-(WINDOW_WIDTH+100);}
var html="<table  cellpadding='0' cellspacing='0' width='"+WINDOW_WIDTH+"'><tr><td bgcolor='skyblue' height='25'>&nbsp;<img src='images/comment.gif' border='0'>&nbsp;<font color='white'><b>コメント</b></font></td><td bgcolor='skyblue' align='right'><a href='javascript:hideComment()'><img src='images/close.gif' border='0'></a>&nbsp;</td></tr></table>";html+="<table  cellpadding='0' cellspacing='0' style='padding: 5 5 5 5;' width='400'>";var flag=false;if(crossGetObject("permitComment")!=null){var permitComment=crossGetObject("permitComment").value;if(permitComment!=null&&permitComment==1){flag=true;}}
if(flag)
html+="<tr><td colspan='2' align='right'><a href=\"javascript:inputComment('"+objid+"', '"+redirectUrl+"');\">コメントを書く</a></td></tr>";if(comments!=null){var my_userid=crossGetObject("userid").value;for(var i=0;i<comments.getSize();i++){var js_content=comments.getElementAt(i).content;js_content=js_content.replace("'","|%sq%|");var editLink="";if(my_userid==comments.getElementAt(i).userid)
editLink="(<a href=\"javascript:inputComment('', '"+redirectUrl+"', 1, '"+comments.getElementAt(i).userid+"', '"+comments.getElementAt(i).commentid+"', '"+js_content+"');\">編集</a> | <a href=\"javascript:deleteComment('"+comments.getElementAt(i).userid+"', '"+comments.getElementAt(i).commentid+"', '"+redirectUrl+"');\">削除</a>)";else if(my_userid==dstUserid)
editLink="(<a href=\"javascript:deleteComment('"+comments.getElementAt(i).userid+"', '"+comments.getElementAt(i).commentid+"', '"+redirectUrl+"');\">削除</a>)";html+="<tr><td>"+getDateByStringFromObject(comments.getElementAt(i).create_date,false)+" ("+comments.getElementAt(i).userid+") "+editLink+"</td></tr>";html+="<tr><td>"+comments.getElementAt(i).content+"</td></tr>";html+="<tr><td>&nbsp;</td></tr>";}}
html+="</table></form>";var item=crossGetObject("inputComment");if(item==null){item=dragableFloat("inputComment",x,y,true,null);}else{crossShowObject(crossGetObject("inputComment"));crossGetObject("inputComment").style.left=x;crossGetObject("inputComment").style.top=y;}
changeClass(item.id,"comment");crossWrite(item,html);}
function processComment(parentObj){if(parentObj!=null){var html=parentObj.item.innerHTML;if(html.indexOf("comment.gif")==-1){var cmtImg="<img src='images/comment.gif' border='0'>";var str="";if(parentObj.type==OBJ_SCHEDULE||parentObj.type==OBJ_EVENT||parentObj.type==OBJ_GROUP_SCHEDULE||parentObj.type==OBJ_LIFE){var commentLink="javascript:loadComment(\""+parentObj.objid+"\")";str=parentObj.item.innerHTML+"&nbsp;<a href='"+commentLink+"'>"+cmtImg+"</a>";}else{var commentLink=createObjectLink(parentObj.type,parentObj.userid,parentObj.objid,parentObj.group);str=parentObj.item.innerHTML+"&nbsp;<a href='"+commentLink+"'>"+cmtImg+"</a>";}
crossWrite(parentObj.item,str);var box=gUserCal.localContObjectTable.get(parentObj.objid);if(box!=null){for(var i=0;i<box.getSize();i++){if(box.getElementAt(i)!=null){crossWrite(box.getElementAt(i),str);}}}}}}
function deleteComment(userid,commentid,redirectUrl){if(window.confirm("このコメントを削除してもよろしいですか？")){deleteCommentFromDB(userid,commentid,redirectUrl);}}
function updateComment(userid,commentid,redirectUrl){var content=document.formComment.content.value;if(content==""){document.formComment.content.focus();return;}
updateCommentToDB(userid,commentid,content,redirectUrl);hideComment();}
var zcount=10;var clickElement="";if(document.getElementsByTagName('BODY').length==0)document.write('<body>')
var canvas=document['CSS1Compat'==document.compatMode?'documentElement':'body'];var dragableFloatId=[];var recx1,recy1,recx2,recy2,recxOffset,recyOffset
function doDragableFloat()
{for(i in dragableFloatId){var oj=document.getElementById(dragableFloatId[i]);if(oj.floatEnabled){if(!(is.safari||is.khtml))
{window.onscroll=function(e){moveDiv(oj,oj.style.left,oj.style.top);}}else{aaa=setInterval(function(){moveDiv(oj,oj.style.left,oj.style.top);},100)}}}}
function startDragableFloat()
{for(i in dragableFloat){var oj=document.getElementById(dragableFloat[i].id);moveDiv(oj,oj.style.left,oj.style.top);}}
function moveDiv(oj,ofx,ofy)
{if(oj.draging)return;if(oj.dragcnt==0){ofx=parseInt(ofx,10)
ofy=parseInt(ofx,10)
oj.dragcnt++}else{ofx=parseInt(oj.pageOffLeft,10)
ofy=parseInt(oj.pageOffTop,10)}
var l=parseInt(canvas.scrollLeft,10)
var t=parseInt(canvas.scrollTop,10)
oj.style.left=l+ofx+"px"
oj.style.top=t+ofy+"px"}
var is={ie:!!document.all,mac45:navigator.userAgent.indexOf('MSIE 4.5; Mac_PowerPC')!=-1,opera:!!window.opera,safari:navigator.userAgent.indexOf('Safari')!=-1,khtml:navigator.userAgent.indexOf('Konqueror')!=-1,firefox:navigator.userAgent.indexOf('Firefox')!=-1}
if(is.opera){is.ie=false;}
function dragableFloat(id,x,y,draggable,bodyId)
{if(!!dragableFloatId[id]){return document.getElementById(id)}
this.mkDiv=function(id)
{var canvas=document['CSS1Compat'==document.compatMode?'documentElement':'body'];var doc=document;var body=doc.body;if(bodyId!=null&&bodyId!="")
body=crossGetObject(bodyId);var elem=doc.createElement("DIV");var div=body.appendChild(elem);div.setAttribute("id",id);div.style.position="absolute";div.style.left=x+"px";div.style.top=y+"px";div.style.zIndex=zcount++;div.innerHTML="";div.offLeft=0;div.offTop=0;div.pageOffLeft=x-parseInt(canvas.scrollLeft,10)+"px";div.pageOffTop=y-parseInt(canvas.scrollTop,10)+"px";div.dragcnt=0;div.draging=false;div.getTOP=getTOP;div.getLEFT=getLEFT;div.getMouseX=getMouseX;div.getMouseY=getMouseY;recx1=x
recy1=y
div.floatEnabled=true;div.boundEnabled=false;div.setBounds=function(a,b,c,d){div.minX=a;div.minY=b;div.maxX=c;div.maxY=d;div.boundEnabled=true;}
if(draggable){div.onmouseout=function(e){if(!clickElement)return
selLay=document.getElementById(clickElement);x=recx2+=recxOffset
y=recy2+=recyOffset
dofollow(x,y)
x=recx2+=recxOffset
y=recy2+=recyOffset
setTimeout('"dofollow('+x+','+y+')"',10)
return false}
div.onselectstart=function(e){return false}
div.onmouseover=function(e){return false}
div.onmousedown=function(e)
{div.draging=true;div.dragcnt++;selLay=div
clickElement=selLay.id
if(selLay){selLay.offLeft=getMouseX(e)-getLEFT(selLay.id)
selLay.offTop=getMouseY(e)-getTOP(selLay.id)}
return false}}
dragableFloatId[div.id]=div.id;div.index++;return div;}
document.onmousemove=function(e)
{recTimeOffset(e)
follow(e)
if(gUserCal!=null){var selLay=document.getElementById(clickElement);if(selLay!=null){var dstCell;if(gUserCal.showCalendarType==SHOW_CALENDAR_TYPE_MONTH){dstCell=gUserCal.checkLocationByMonth(selLay.getLEFT(selLay.id),selLay.getTOP(selLay.id));}else if(gUserCal.showCalendarType==SHOW_CALENDAR_TYPE_DAY){dstCell=gUserCal.checkLocationByDay(selLay.getLEFT(selLay.id),selLay.getTOP(selLay.id));}else if(gUserCal.showCalendarType==SHOW_CALENDAR_TYPE_WEEK){dstCell=gUserCal.checkLocationByWeek(selLay.getLEFT(selLay.id),selLay.getTOP(selLay.id));}
changeCellColor(document.getElementById("cell-"+dstCell),"#B8E1F3");}}}
document.onmouseup=function(e)
{if(!clickElement)return
selLay=document.getElementById(clickElement);follow(e)
selLay.draging=false;if(selLay){var sl=parseInt(canvas.scrollLeft,10)
var st=parseInt(canvas.scrollTop,10)
selLay.pageOffLeft=getLEFT(selLay.id)-sl
selLay.pageOffTop=getTOP(selLay.id)-st
if(gUserCal!=null){var dstCell;if(gUserCal.showCalendarType==SHOW_CALENDAR_TYPE_MONTH){dstCell=gUserCal.checkLocationByMonth(selLay.getLEFT(selLay.id),selLay.getTOP(selLay.id));}else if(gUserCal.showCalendarType==SHOW_CALENDAR_TYPE_DAY){dstCell=gUserCal.checkLocationByDay(selLay.getLEFT(selLay.id),selLay.getTOP(selLay.id));}else if(gUserCal.showCalendarType==SHOW_CALENDAR_TYPE_WEEK){dstCell=gUserCal.checkLocationByWeek(selLay.getLEFT(selLay.id),selLay.getTOP(selLay.id));}
var array=selLay.id.split("/");var obj=gUserCal.getLocalObjectFromHashTable(array[1]);moveObject(obj,dstCell);clickElement="";}}
return false}
function follow(e)
{if(!clickElement)return
selLay=document.getElementById(clickElement);var x=getMouseX(e)
var y=getMouseY(e)
x=(x==-1)?recx2+=recxOffset:x;y=(y==-1)?recy2+=recyOffset:y;if(x==-1&&y==-1)setTimeout('follow('+e+')',100)
dofollow(x,y)}
function dofollow(x,y)
{if(!clickElement)return
selLay=document.getElementById(clickElement);if(!chkBounds(selLay)){return}else{if(selLay.draging){movetoX=x-selLay.offLeft
movetoY=y-selLay.offTop
selLay.style.left=parseInt(movetoX,10)+"px"
selLay.style.top=parseInt(movetoY,10)+"px"}}}
function recTimeOffset(e)
{if(x==-1||y==-1)return
recx2=recx1
recy2=recy1
recx1=getMouseX(e)
recy1=getMouseY(e)
recxOffset=recx1-recx2
recyOffset=recy1-recy2}
function chkBounds(oj){var layName=oj.id
if(oj.boundEnabled){var nowX=getLEFT(layName);var nowY=getTOP(layName);if(nowX>=oj.minX&&nowY>=oj.minY&&nowX<=oj.maxX&&nowY<=oj.maxY){return true}else{returnPOS(nowX,nowY,oj)
return false}}else{return true}}
function returnPOS(nowX,nowY,oj){if(nowX<oj.minX)oj.style.left=oj.minX+"px"
if(nowY<oj.minY)oj.style.top=oj.minY+"px"
if(nowX>oj.maxX)oj.style.left=oj.maxX+"px"
if(nowY>oj.maxY)oj.style.top=oj.maxY+"px"}
function getMouseX(e)
{if(document.all)
return canvas.scrollLeft+event.clientX
else if(document.getElementById)
return e.pageX}
function getMouseY(e)
{if(document.all)
return canvas.scrollTop+event.clientY
else if(document.getElementById)
return e.pageY}
function getLEFT(layName){if(document.all)
return document.all(layName).style.pixelLeft
else if(document.getElementById)
return(document.getElementById(layName).style.left!="")?parseInt(document.getElementById(layName).style.left):""}
function getTOP(layName){if(document.all)
return document.all(layName).style.pixelTop
else if(document.getElementById)
return(document.getElementById(layName).style.top!="")?parseInt(document.getElementById(layName).style.top):""}
function dbg_echo(){var debugDIV=document.createElement("DIV");var dbg=document.body.appendChild(debugDIV);dbg.setAttribute("id","dbg");dbg.style.position="absolute";dbg.style.left="400px";dbg.style.top="0px";dbg.innerHTML="dbg";return dbg;}
function db1(e)
{dbg.innerHTML+=getMouseX(e)+"-1000-"+getMouseY(e)+"<br>"}
return this.mkDiv(id);}
function changeClass(itemid,c){if(document.getElementById(itemid)!=null){document.getElementById(itemid).className=c;}}
var GRAPH_TYPE_ITEMS="Items";var GRAPH_TYPE_SATISFACTION="Satisfaction";var GRAPH_TYPE_AVG_SATISFACTION="AvgSatisfaction";var GRAPH_TYPE_TODAY="TodaySatisfaction";var CHECK_LIFELOG="CheckLifelog";var SMILE_ICON=new Array("smile","smile_angry","smile_big","smile_blush","smile_dead","smile_sad","smile_shock","smile_sleepy","smile_strange","smile_dissapprove");var SMILE_NAME=new Array("いたって普通","怒ってる","最高！","恥ずかしい","最悪↓","悲しいよ","ショック！","眠い","何かおかしい","不満");var gIncludeNotEnterdDay=false;var gGraphLine;var gGraphDot;var gDate;var gSleepNum;var gWorkNum;var gPlayNum;var gSportsNum;var gEatNum;var gConditionNum
var gSleepTime;var gWorkTime;var gPlayTime;var gSportsTime;var gBreakfirst;var gLunch;var gDinner;var gSweets;var gDrink;var gFace=0;var gUserChart=null;var gExistLifelog=new Array(42);var gCurrentChart;var gFrameWidth=700;var gFrameHeight=300;var gWidget=false;function initLifelog(dstUserid,groupNo,width,height,isWidjet){gFrameWidth=width;gFrameHeight=height;gWidget=isWidjet;var html=lifelogMenu();crossWrite(crossGetObject("divLifelogMain"),html);gUserChart=new LifeChart(dstUserid,-1);showThisMonth();}
function showBeforeChart(){var yyyy=getYear(gUserChart.baseDate.getYear());var mm=gUserChart.baseDate.getMonth()-1;if(mm<0){yyyy--;mm=11;}
var firstDate=new Date(yyyy,mm,1);var str=getYear(firstDate.getYear())+"年"+(firstDate.getMonth()+1)+"月";crossWrite(crossGetObject("chartTitle"),str);if(gCurrentChart==GRAPH_TYPE_ITEMS)
gUserChart.showChartByItems(firstDate);else if(gCurrentChart==GRAPH_TYPE_SATISFACTION)
gUserChart.showChartBySatisfaction(firstDate);else if(gCurrentChart==GRAPH_TYPE_AVG_SATISFACTION)
gUserChart.showChartByAvgSatisfaction(firstDate);}
function showNextChart(){var yyyy=getYear(gUserChart.baseDate.getYear());var mm=gUserChart.baseDate.getMonth()+1;if(mm>11){yyyy++;mm=0;}
var firstDate=new Date(yyyy,mm,1);var str=getYear(firstDate.getYear())+"年"+(firstDate.getMonth()+1)+"月";crossWrite(crossGetObject("chartTitle"),str);if(gCurrentChart==GRAPH_TYPE_ITEMS)
gUserChart.showChartByItems(firstDate);else if(gCurrentChart==GRAPH_TYPE_SATISFACTION)
gUserChart.showChartBySatisfaction(firstDate);else if(gCurrentChart==GRAPH_TYPE_AVG_SATISFACTION)
gUserChart.showChartByAvgSatisfaction(firstDate);}
function showThisMonth(){var today=new Date();gChartBaseDate=today;var str=getYear(today.getYear())+"年"+(today.getMonth()+1)+"月";crossWrite(crossGetObject("chartTitle"),str);gUserChart.showChartByItems(today);}
function LifeChart(dstUserid,groupNo){this.dstUserid=dstUserid;this.groupNo=groupNo;this.baseDate=null;this.showChartByItems=function(argDate){gCurrentChart=GRAPH_TYPE_ITEMS;this.baseDate=argDate;var from=new Date(getYear(argDate.getYear()),argDate.getMonth(),1);from.setHours(0);from.setMinutes(0);from.setSeconds(0);var lastDay=gMonthTable[argDate.getMonth()];var to=new Date(getYear(argDate.getYear()),argDate.getMonth(),lastDay);to.setHours(23);to.setMinutes(59);to.setSeconds(59);if(groupNo!=-1){}else{loadLifeObjectFromDB(this.dstUserid,getDateByString(from),getDateByString(to),GRAPH_TYPE_ITEMS);}}
this.showChartBySatisfaction=function(argDate){gCurrentChart=GRAPH_TYPE_SATISFACTION;this.baseDate=argDate;var from=new Date(getYear(argDate.getYear()),argDate.getMonth(),1);from.setHours(0);from.setMinutes(0);from.setSeconds(0);var lastDay=gMonthTable[argDate.getMonth()];var to=new Date(getYear(argDate.getYear()),argDate.getMonth(),lastDay);to.setHours(23);to.setMinutes(59);to.setSeconds(59);if(groupNo!=-1){}else{loadLifeObjectFromDB(this.dstUserid,getDateByString(from),getDateByString(to),GRAPH_TYPE_SATISFACTION);}}
this.showChartByAvgSatisfaction=function(argDate){gCurrentChart=GRAPH_TYPE_AVG_SATISFACTION;this.baseDate=argDate;var from=new Date(getYear(argDate.getYear()),argDate.getMonth(),1);from.setHours(0);from.setMinutes(0);from.setSeconds(0);var lastDay=gMonthTable[argDate.getMonth()];var to=new Date(getYear(argDate.getYear()),argDate.getMonth(),lastDay);to.setHours(23);to.setMinutes(59);to.setSeconds(59);if(groupNo!=-1){}else{loadLifeObjectFromDB(this.dstUserid,getDateByString(from),getDateByString(to),GRAPH_TYPE_AVG_SATISFACTION);}}}
function showAsItems(){gUserChart.showChartByItems(gUserChart.baseDate);}
function showAsSatisfaction(){gUserChart.showChartBySatisfaction(gUserChart.baseDate);}
function showAsAvgSatisfaction(){gUserChart.showChartByAvgSatisfaction(gUserChart.baseDate);}
function showSatisfactionChart(date,sleepNum,workNum,playNum,sportsNum,eatNum,conditionNum){var dotSize=6;if(gWidget)dotSize=0;var SATISFACTION_NUM=6;var COLOR=new Array("#9966CC","#CC9966","#00FF66","#00CCFF","#FF0099","#FF9900");var fdate=date[0].split("/");var MONTH_DAYS=gMonthTable[parseInt(fdate[1])];gDate=date;gSleepNum=sleepNum;gWorkNum=workNum;gPlayNum=playNum;gSportsNum=sportsNum;gEatNum=eatNum;gConditionNum=conditionNum;gGraphLine=new Array(SATISFACTION_NUM);gGraphDot=new Array(SATISFACTION_NUM);var html="<form name='formGraphMenu'>";html+="<input type='checkbox' checked onClick='showGraph(0, this.checked)'><span style=\"background-color: "+COLOR[0]+"\">　</span>&nbsp;睡眠";html+="<input type='checkbox' checked onClick='showGraph(1, this.checked)'><span style=\"background-color: "+COLOR[1]+"\">　</span>&nbsp;仕事・勉強";html+="<input type='checkbox' checked onClick='showGraph(2, this.checked)'><span style=\"background-color: "+COLOR[2]+"\">　</span>&nbsp;遊び";html+="<input type='checkbox' checked onClick='showGraph(3, this.checked)'><span style=\"background-color: "+COLOR[3]+"\">　</span>&nbsp;運動";html+="<input type='checkbox' checked onClick='showGraph(4, this.checked)'><span style=\"background-color: "+COLOR[4]+"\">　</span>&nbsp;食事";html+="<input type='checkbox' checked onClick='showGraph(5, this.checked)'><span style=\"background-color: "+COLOR[5]+"\">　</span>&nbsp;体調・気分";html+="<input type='checkbox' name='IncludeNotEnterdDay' onClick='changeView(this.checked, \""+GRAPH_TYPE_SATISFACTION+"\")'>入力していない日も含める";html+="</form>";crossWrite(crossGetObject("divLifeChartMenu"),html);_DiagramTarget=window.frames["LifelogDiagram"];_DiagramTarget.document.open();_DiagramTarget.document.writeln("<html><head></head><body bgcolor='#FFFFFF'>");var d=new Diagram();d.SetFrame(32,30,gFrameWidth,gFrameHeight);if(gIncludeNotEnterdDay){d.SetBorder(1,MONTH_DAYS,1,5);d.XScale="日";d.YScale="function getSatisfactionYScale";for(var i=0;i<SATISFACTION_NUM;i++){gGraphDot[i]=new Array(MONTH_DAYS);gGraphLine[i]=new Array(MONTH_DAYS);}}else{d.SetBorder(1,date.length+1,1,5);d.XScale="function getDateXScale";d.YScale="function getSatisfactionYScale";for(var i=0;i<SATISFACTION_NUM;i++){gGraphDot[i]=new Array(date.length);gGraphLine[i]=new Array(date.length);}}
d.SetText("日付","",(parseInt(fdate[1])+1)+"月の満足度・充実度の推移");d.SetGridColor("#cccccc");d.Draw("#FFEECC","#663300",false);if(gIncludeNotEnterdDay){for(var i=0;i<MONTH_DAYS;i++){if(date[i]!=null&&date[i]!="undefined"){var array=date[i].split("/");var day=parseInt(array[2]);gGraphDot[0][i]=new Dot(d.ScreenX(day),d.ScreenY(sleepNum[i]),dotSize,6,COLOR[0],sleepNum[i]);if(date[i+1]!=null&&date[i+1]!="undefined"){var array2=date[i+1].split("/");if(array2[2]==(day+1))
gGraphLine[0][i]=new Line(d.ScreenX(day),d.ScreenY(sleepNum[i]),d.ScreenX(day+1),d.ScreenY(sleepNum[i+1]),COLOR[0],1,"睡眠");}}}}else{for(var i=0;i<date.length;i++){gGraphDot[0][i]=new Dot(d.ScreenX(i+1),d.ScreenY(sleepNum[i]),dotSize,6,COLOR[0],sleepNum[i]);gGraphLine[0][i]=new Line(d.ScreenX(i+1),d.ScreenY(sleepNum[i]),d.ScreenX(i+2),d.ScreenY(sleepNum[i+1]),COLOR[0],1,"睡眠");}}
if(gIncludeNotEnterdDay){for(var i=0;i<MONTH_DAYS;i++){if(date[i]!=null&&date[i]!="undefined"){var array=date[i].split("/");var day=parseInt(array[2]);gGraphDot[1][i]=new Dot(d.ScreenX(day),d.ScreenY(workNum[i]),dotSize,6,COLOR[1],workNum[i]);if(date[i+1]!=null&&date[i+1]!="undefined"){var array2=date[i+1].split("/");if(array2[2]==(day+1))
gGraphLine[1][i]=new Line(d.ScreenX(day),d.ScreenY(workNum[i]),d.ScreenX(day+1),d.ScreenY(workNum[i+1]),COLOR[1],1,"仕事");}}}}else{for(var i=0;i<date.length;i++){gGraphDot[1][i]=new Dot(d.ScreenX(i+1),d.ScreenY(workNum[i]),dotSize,6,COLOR[1],workNum[i]);gGraphLine[1][i]=new Line(d.ScreenX(i+1),d.ScreenY(workNum[i]),d.ScreenX(i+2),d.ScreenY(workNum[i+1]),COLOR[1],1,"仕事");}}
if(gIncludeNotEnterdDay){for(var i=0;i<MONTH_DAYS;i++){if(date[i]!=null&&date[i]!="undefined"){var array=date[i].split("/");var day=parseInt(array[2]);gGraphDot[2][i]=new Dot(d.ScreenX(day),d.ScreenY(playNum[i]),dotSize,6,COLOR[2],playNum[i]);if(date[i+1]!=null&&date[i+1]!="undefined"){var array2=date[i+1].split("/");if(array2[2]==(day+1))
gGraphLine[2][i]=new Line(d.ScreenX(day),d.ScreenY(playNum[i]),d.ScreenX(day+1),d.ScreenY(playNum[i+1]),COLOR[2],1,"遊び");}}}}else{for(var i=0;i<date.length;i++){gGraphDot[2][i]=new Dot(d.ScreenX(i+1),d.ScreenY(playNum[i]),dotSize,6,COLOR[2],playNum[i]);gGraphLine[2][i]=new Line(d.ScreenX(i+1),d.ScreenY(playNum[i]),d.ScreenX(i+2),d.ScreenY(playNum[i+1]),COLOR[2],1,"遊び");}}
if(gIncludeNotEnterdDay){for(var i=0;i<MONTH_DAYS;i++){if(date[i]!=null&&date[i]!="undefined"){var array=date[i].split("/");var day=parseInt(array[2]);gGraphDot[3][i]=new Dot(d.ScreenX(day),d.ScreenY(sportsNum[i]),dotSize,6,COLOR[3],sportsNum[i]);if(date[i+1]!=null&&date[i+1]!="undefined"){var array2=date[i+1].split("/");if(array2[2]==(day+1))
gGraphLine[3][i]=new Line(d.ScreenX(day),d.ScreenY(sportsNum[i]),d.ScreenX(day+1),d.ScreenY(sportsNum[i+1]),COLOR[3],1,"運動");}}}}else{for(var i=0;i<date.length;i++){gGraphDot[3][i]=new Dot(d.ScreenX(i+1),d.ScreenY(sportsNum[i]),dotSize,6,COLOR[3],sportsNum[i]);gGraphLine[3][i]=new Line(d.ScreenX(i+1),d.ScreenY(sportsNum[i]),d.ScreenX(i+2),d.ScreenY(sportsNum[i+1]),COLOR[3],1,"運動");}}
if(gIncludeNotEnterdDay){for(var i=0;i<MONTH_DAYS;i++){if(date[i]!=null&&date[i]!="undefined"){var array=date[i].split("/");var day=parseInt(array[2]);gGraphDot[4][i]=new Dot(d.ScreenX(day),d.ScreenY(eatNum[i]),dotSize,6,COLOR[4],eatNum[i]);if(date[i+1]!=null&&date[i+1]!="undefined"){var array2=date[i+1].split("/");if(array2[2]==(day+1))
gGraphLine[4][i]=new Line(d.ScreenX(day),d.ScreenY(eatNum[i]),d.ScreenX(day+1),d.ScreenY(eatNum[i+1]),COLOR[4],1,"食事");}}}}else{for(var i=0;i<date.length;i++){gGraphDot[4][i]=new Dot(d.ScreenX(i+1),d.ScreenY(eatNum[i]),dotSize,6,COLOR[4],eatNum[i]);gGraphLine[4][i]=new Line(d.ScreenX(i+1),d.ScreenY(eatNum[i]),d.ScreenX(i+2),d.ScreenY(eatNum[i+1]),COLOR[4],1,"食事");}}
if(gIncludeNotEnterdDay){for(var i=0;i<MONTH_DAYS;i++){if(date[i]!=null&&date[i]!="undefined"){var array=date[i].split("/");var day=parseInt(array[2]);gGraphDot[5][i]=new Dot(d.ScreenX(day),d.ScreenY(conditionNum[i]),dotSize,6,COLOR[5],conditionNum[i]);if(date[i+1]!=null&&date[i+1]!="undefined"){var array2=date[i+1].split("/");if(array2[2]==(day+1))
gGraphLine[5][i]=new Line(d.ScreenX(day),d.ScreenY(conditionNum[i]),d.ScreenX(day+1),d.ScreenY(conditionNum[i+1]),COLOR[5],1,"食事");}}}}else{for(var i=0;i<date.length;i++){gGraphDot[5][i]=new Dot(d.ScreenX(i+1),d.ScreenY(conditionNum[i]),dotSize,6,COLOR[5],conditionNum[i]);gGraphLine[5][i]=new Line(d.ScreenX(i+1),d.ScreenY(conditionNum[i]),d.ScreenX(i+2),d.ScreenY(conditionNum[i+1]),COLOR[5],1,"体調");}}
_DiagramTarget.document.writeln("</body></html>");_DiagramTarget.document.close();}
function showAvgSatisfactionChart(date,sleepNum,workNum,playNum,sportsNum,eatNum,conditionNum){var dotSize=6;if(gWidget)dotSize=0;var SATISFACTION_NUM=6;var COLOR=new Array("#666666");var fdate=date[0].split("/");var MONTH_DAYS=gMonthTable[parseInt(fdate[1])];crossWrite(crossGetObject("divLifeChartMenu"),"");_DiagramTarget=window.frames["LifelogDiagram"];_DiagramTarget.document.open();_DiagramTarget.document.writeln("<html><head></head><body bgcolor='#FFFFFF'>");var d=new Diagram();d.SetFrame(32,30,gFrameWidth,gFrameHeight);d.SetBorder(1,date.length+1,1,5);d.XScale="function getDateXScale";d.YScale="function getSatisfactionYScale";d.SetText("日付","",(parseInt(fdate[1])+1)+"月の満足度・充実度の平均推移");d.SetGridColor("#cccccc");d.Draw("#FFEECC","#663300",false);var avgDat=new Array(date.length);for(var i=0;i<date.length;i++){avgDat[i]=Math.round((sleepNum[i]+workNum[i]+playNum[i]+sportsNum[i]+eatNum[i]+conditionNum[i])/SATISFACTION_NUM);}
for(var i=0;i<date.length;i++){new Dot(d.ScreenX(i+1),d.ScreenY(avgDat[i]),dotSize,6,COLOR[0],avgDat[i]);new Line(d.ScreenX(i+1),d.ScreenY(avgDat[i]),d.ScreenX(i+2),d.ScreenY(avgDat[i+1]),COLOR[0],2);}
_DiagramTarget.document.writeln("</body></html>");_DiagramTarget.document.close();}
function showItemsChart(date,sleepTime,workTime,playTime,sportsTime,breakfirst,lunch,dinner,sweets,drink){var dotSize=6;if(gWidget)dotSize=0;var ITEMS_NUM=4;var COLOR=new Array("#9966CC","#CC9966","#00FF66","#00CCFF");var fdate=date[0].split("/");var MONTH_DAYS=gMonthTable[parseInt(fdate[1])];gDate=date;gSleepTime=sleepTime;gWorkTime=workTime;gPlayTime=playTime;gSportsTime=sportsTime;gBreakfirst=breakfirst;gLunch=lunch;gDinner=dinner;gSweets=sweets;gDrink=drink;gGraphLine=new Array(ITEMS_NUM);gGraphDot=new Array(ITEMS_NUM);var html="<form name='formGraphMenu'>";html+="<input type='checkbox' checked onClick='showGraph(0, this.checked)'><span style=\"background-color: "+COLOR[0]+"\">　</span>&nbsp;睡眠";html+="<input type='checkbox' checked onClick='showGraph(1, this.checked)'><span style=\"background-color: "+COLOR[1]+"\">　</span>&nbsp;仕事・勉強";html+="<input type='checkbox' checked onClick='showGraph(2, this.checked)'><span style=\"background-color: "+COLOR[2]+"\">　</span>&nbsp;遊び";html+="<input type='checkbox' checked onClick='showGraph(3, this.checked)'><span style=\"background-color: "+COLOR[3]+"\">　</span>&nbsp;運動";html+="<input type='checkbox' name='IncludeNotEnterdDay' onClick='changeView(this.checked, \""+GRAPH_TYPE_ITEMS+"\")'>入力していない日も含める";html+="</form>";crossWrite(crossGetObject("divLifeChartMenu"),html);_DiagramTarget=window.frames["LifelogDiagram"];_DiagramTarget.document.open();_DiagramTarget.document.writeln("<html><head></head><body bgcolor='#FFFFFF'>");var d=new Diagram();d.SetFrame(32,30,gFrameWidth,gFrameHeight);if(gIncludeNotEnterdDay){d.SetBorder(1,MONTH_DAYS,0,15);d.XScale="日";d.YScale="h";for(var i=0;i<ITEMS_NUM;i++){gGraphDot[i]=new Array(MONTH_DAYS);gGraphLine[i]=new Array(MONTH_DAYS);}}else{d.SetBorder(1,date.length+1,0,15);d.XScale="function getDateXScale";d.YScale="h";for(var i=0;i<ITEMS_NUM;i++){gGraphDot[i]=new Array(date.length);gGraphLine[i]=new Array(date.length);}}
d.SetText("","",(parseInt(fdate[1])+1)+"月の項目別時間推移");d.SetGridColor("#cccccc");d.Draw("#FFEECC","#663300",false);if(gIncludeNotEnterdDay){for(var i=0;i<MONTH_DAYS;i++){if(date[i]!=null&&date[i]!="undefined"){var array=date[i].split("/");var day=parseInt(array[2]);gGraphDot[0][i]=new Dot(d.ScreenX(day),d.ScreenY(sleepTime[i]),dotSize,6,dotSize,COLOR[0],sleepTime[i]);if(date[i+1]!=null&&date[i+1]!="undefined"){var array2=date[i+1].split("/");if(array2[2]==(day+1))
gGraphLine[0][i]=new Line(d.ScreenX(day),d.ScreenY(sleepTime[i]),d.ScreenX(day+1),d.ScreenY(sleepTime[i+1]),COLOR[0],1,"睡眠");}}}}else{for(var i=0;i<date.length;i++){gGraphDot[0][i]=new Dot(d.ScreenX(i+1),d.ScreenY(sleepTime[i]),dotSize,6,COLOR[0],sleepTime[i]);gGraphLine[0][i]=new Line(d.ScreenX(i+1),d.ScreenY(sleepTime[i]),d.ScreenX(i+2),d.ScreenY(sleepTime[i+1]),COLOR[0],1,"睡眠");}}
if(gIncludeNotEnterdDay){for(var i=0;i<MONTH_DAYS;i++){if(date[i]!=null&&date[i]!="undefined"){var array=date[i].split("/");var day=parseInt(array[2]);gGraphDot[1][i]=new Dot(d.ScreenX(day),d.ScreenY(workTime[i]),dotSize,6,COLOR[1],workTime[i]);if(date[i+1]!=null&&date[i+1]!="undefined"){var array2=date[i+1].split("/");if(array2[2]==(day+1))
gGraphLine[1][i]=new Line(d.ScreenX(day),d.ScreenY(workTime[i]),d.ScreenX(day+1),d.ScreenY(workTime[i+1]),COLOR[1],1,"仕事");}}}}else{for(var i=0;i<date.length;i++){gGraphDot[1][i]=new Dot(d.ScreenX(i+1),d.ScreenY(workTime[i]),dotSize,6,COLOR[1],workTime[i]);gGraphLine[1][i]=new Line(d.ScreenX(i+1),d.ScreenY(workTime[i]),d.ScreenX(i+2),d.ScreenY(workTime[i+1]),COLOR[1],1,"仕事");}}
if(gIncludeNotEnterdDay){for(var i=0;i<MONTH_DAYS;i++){if(date[i]!=null&&date[i]!="undefined"){var array=date[i].split("/");var day=parseInt(array[2]);gGraphDot[2][i]=new Dot(d.ScreenX(day),d.ScreenY(playTime[i]),dotSize,6,COLOR[2],playTime[i]);if(date[i+1]!=null&&date[i+1]!="undefined"){var array2=date[i+1].split("/");if(array2[2]==(day+1))
gGraphLine[2][i]=new Line(d.ScreenX(day),d.ScreenY(playTime[i]),d.ScreenX(day+1),d.ScreenY(playTime[i+1]),COLOR[2],1,"遊び");}}}}else{for(var i=0;i<date.length;i++){gGraphDot[2][i]=new Dot(d.ScreenX(i+1),d.ScreenY(playTime[i]),dotSize,6,COLOR[2],playTime[i]);gGraphLine[2][i]=new Line(d.ScreenX(i+1),d.ScreenY(playTime[i]),d.ScreenX(i+2),d.ScreenY(playTime[i+1]),COLOR[2],1,"遊び");}}
if(gIncludeNotEnterdDay){for(var i=0;i<MONTH_DAYS;i++){if(date[i]!=null&&date[i]!="undefined"){var array=date[i].split("/");var day=parseInt(array[2]);gGraphDot[3][i]=new Dot(d.ScreenX(day),d.ScreenY(sportsTime[i]),dotSize,6,COLOR[3],sportsTime[i]);if(date[i+1]!=null&&date[i+1]!="undefined"){var array2=date[i+1].split("/");if(array2[2]==(day+1))
gGraphLine[3][i]=new Line(d.ScreenX(day),d.ScreenY(sportsTime[i]),d.ScreenX(day+1),d.ScreenY(sportsTime[i+1]),COLOR[3],1,"運動");}}}}else{for(var i=0;i<date.length;i++){gGraphDot[3][i]=new Dot(d.ScreenX(i+1),d.ScreenY(sportsTime[i]),dotSize,6,COLOR[3],sportsTime[i]);gGraphLine[3][i]=new Line(d.ScreenX(i+1),d.ScreenY(sportsTime[i]),d.ScreenX(i+2),d.ScreenY(sportsTime[i+1]),COLOR[3],1,"運動");}}
if(!gWidget)
showEatingChart(gBreakfirst,gLunch,gDinner,gSweets,gDrink);_DiagramTarget.document.writeln("</body></html>");_DiagramTarget.document.close();}
function showEatingChart(breakfirst,lunch,dinner,sweets,drink){var COLOR=new Array("#8CE8FF","#FFCCFF");var BASE_LEFT=120;var BASE_TOP=500;_BFont="color: #666666; font-family:Arial, Helvetica, sans-serif;font-weight:normal;font-size:10pt;line-height:13pt;";var bYes=0;var bNo=0;for(var i=0;i<breakfirst.length;i++){if(breakfirst[i]=="true")bYes++;else bNo++;}
var bYesRatio=Math.floor(bYes/breakfirst.length*100);var breakfirstPie=new Array();breakfirstPie[0]=new Pie(BASE_LEFT,BASE_TOP,0,50,0*3.6,bYesRatio*3.6,COLOR[0]);if(bYesRatio!=100)
breakfirstPie[1]=new Pie(BASE_LEFT,BASE_TOP,0,50,bYesRatio*3.6,100*3.6,COLOR[1]);new Bar(100,380,140,20,"","朝食","#000000");new Bar(80,400,120,20,COLOR[1],"No<br>"+(100-bYesRatio)+"%","#000000");new Bar(120,400,160,20,COLOR[0],"Yes<br>"+bYesRatio+"%","#000000");var lYes=0;var lNo=0;for(var i=0;i<lunch.length;i++){if(lunch[i]=="true")lYes++;else lNo++;}
var lYesRatio=Math.floor(lYes/lunch.length*100);var lunchPie=new Array();lunchPie[0]=new Pie(BASE_LEFT+(1*120),BASE_TOP,0,50,0*3.6,lYesRatio*3.6,COLOR[0]);if(bYesRatio!=100)
lunchPie[1]=new Pie(BASE_LEFT+(1*120),BASE_TOP,0,50,lYesRatio*3.6,100*3.6,COLOR[1]);new Bar(100+(1*120),380,140+(1*120),20,"","昼食","#000000");new Bar(80+(1*120),400,120+(1*120),20,COLOR[1],"No<br>"+(100-lYesRatio)+"%","#000000");new Bar(120+(1*120),400,160+(1*120),20,COLOR[0],"Yes<br>"+lYesRatio+"%","#000000");var dYes=0;var dNo=0;for(var i=0;i<dinner.length;i++){if(dinner[i]=="true")dYes++;else dNo++;}
var dYesRatio=Math.floor(dYes/dinner.length*100);var dinnerPie=new Array();dinnerPie[0]=new Pie(BASE_LEFT+(2*120),BASE_TOP,0,50,0*3.6,dYesRatio*3.6,COLOR[0]);if(dYesRatio!=100)
dinnerPie[1]=new Pie(BASE_LEFT+(2*120),BASE_TOP,0,50,dYesRatio*3.6,100*3.6,COLOR[1]);new Bar(100+(2*120),380,140+(2*120),20,"","夕食","#000000");new Bar(80+(2*120),400,120+(2*120),20,COLOR[1],"No<br>"+(100-dYesRatio)+"%","#000000");new Bar(120+(2*120),400,160+(2*120),20,COLOR[0],"Yes<br>"+dYesRatio+"%","#000000");var sYes=0;var sNo=0;for(var i=0;i<sweets.length;i++){if(sweets[i]=="true")sYes++;else sNo++;}
var sYesRatio=Math.floor(sYes/sweets.length*100);var sweetsPie=new Array();sweetsPie[0]=new Pie(BASE_LEFT+(3*120),BASE_TOP,0,50,0*3.6,sYesRatio*3.6,COLOR[0]);if(sYesRatio!=100)
sweetsPie[1]=new Pie(BASE_LEFT+(3*120),BASE_TOP,0,50,sYesRatio*3.6,100*3.6,COLOR[1]);new Bar(100+(3*120),380,140+(3*120),20,"","間食","#000000");new Bar(80+(3*120),400,120+(3*120),20,COLOR[1],"No<br>"+(100-sYesRatio)+"%","#000000");new Bar(120+(3*120),400,160+(3*120),20,COLOR[0],"Yes<br>"+sYesRatio+"%","#000000");var drYes=0;var drNo=0;for(var i=0;i<drink.length;i++){if(drink[i]=="true")drYes++;else drNo++;}
var drYesRatio=Math.floor(drYes/drink.length*100);var drinkPie=new Array();drinkPie[0]=new Pie(BASE_LEFT+(4*120),BASE_TOP,0,50,0*3.6,drYesRatio*3.6,COLOR[0]);if(drYesRatio!=100)
drinkPie[1]=new Pie(BASE_LEFT+(4*120),BASE_TOP,0,50,drYesRatio*3.6,100*3.6,COLOR[1]);new Bar(100+(4*120),380,140+(4*120),20,"","お酒","#000000");new Bar(80+(4*120),400,120+(4*120),20,COLOR[1],"No<br>"+(100-drYesRatio)+"%","#000000");new Bar(120+(4*120),400,160+(4*120),20,COLOR[0],"Yes<br>"+drYesRatio+"%","#000000");}
function getDateXScale(i){if(gDate[i]!=null&&gDate[i]!="undefined"){var array=gDate[i].split("/");return array[2]+"日";}else{return"";}}
function getSatisfactionYScale(i){if(i.toString().length==1){return i;}else{return"";}}
function showGraph(i,v){for(var j=0;j<gGraphLine[i].length;j++){if(gGraphDot[i][j]!=null&&gGraphDot[i][j]!="undefined")
gGraphDot[i][j].SetVisibility(v);if(gGraphLine[i][j]!=null&&gGraphLine[i][j]!="undefined")
gGraphLine[i][j].SetVisibility(v);}}
function changeView(v,chartType){gIncludeNotEnterdDay=v;if(chartType==GRAPH_TYPE_SATISFACTION)
showSatisfactionChart(gDate,gSleepNum,gWorkNum,gPlayNum,gSportsNum,gEatNum,gConditionNum);else if(chartType==GRAPH_TYPE_ITEMS)
showItemsChart(gDate,gSleepTime,gWorkTime,gPlayTime,gSportsTime,gBreakfirst,gLunch,gDinner,gSweets,gDrink);document.formGraphMenu.IncludeNotEnterdDay.checked=v;}
function loadTodayLife(cell,dstUserid){showWaitTip();var date=gUserCal.getDateFromCellNum(cell);var first=new Date(getYear(date.getYear()),date.getMonth(),date.getDate());first.setHours(0);first.setMinutes(0);first.setSeconds(0);var last=new Date(getYear(date.getYear()),date.getMonth(),date.getDate());last.setHours(23);last.setMinutes(59);last.setSeconds(59);loadLifeObjectFromDB(dstUserid,getDateByString(first),getDateByString(last),GRAPH_TYPE_TODAY);}
function showTodaySatisfactionChart(userid,objid,strDate,sleepTime,sleepNum,workTime,workNum,playTime,playNum,sportsTime,sportsNum,breakfirst,lunch,dinner,sweets,drink,eatNum,conditionFace,conditionNum,todayComment,comments){var WINDOW_WIDTH=300;var x=getMouseX()-5;var y=getMouseY()-5;if((x+WINDOW_WIDTH)>=(window.screen.width-100)){x=window.screen.width-(WINDOW_WIDTH+100);}
var redirectUrl="./top?select_date="+strDate+"&objid="+objid;var date=getDateFromString(strDate);var html="<table width='"+WINDOW_WIDTH+"' cellpadding='0' cellspacing='0'>";html+="<tr>";html+="<td bgcolor='skyblue' height='25'>&nbsp;<img src='images/life.gif' border='0'>&nbsp;<font color='white'><b>"+getYear(date.getYear())+"/"+(date.getMonth()+1)+"/"+date.getDate()+"のライフログ</b</font></td>";html+="<td align='right' bgcolor='skyblue'><a href='javascript:hideTodayChart()'><img src='images/close.gif' border='0'></a>&nbsp;</td>";html+="</tr>";html+="</table>";html+="<table bgcolor='white' width='"+WINDOW_WIDTH+"' cellpadding='0' cellspacing='0' style='padding: 5 5 5 5;'>";html+="<tr><td align='right'>";var flag=false;if(crossGetObject("permitComment")!=null){var permitComment=crossGetObject("permitComment").value;if(permitComment!=null&&permitComment==1){flag=true;}}
if(flag)
html+="<a href=\"javascript:inputComment('"+objid+"', '"+redirectUrl+"');\">コメントを書く</a>&nbsp;";if(comments)
html+="<a href=\"javascript:loadComment('"+objid+"');\">コメントを見る</a>";var myUserid=crossGetObject("userid").value;if(userid==myUserid)
html+="&nbsp;&nbsp;<a href='javascript:deleteLifelog(\""+objid+"\", -1, "+OBJ_LIFE+");'>削除</a></td></tr>"
html+="<tr><td>";html+="睡眠: "+sleepTime+"時間<br>";html+="仕事・勉強: "+workTime+"時間<br>";html+="遊び: "+playTime+"時間<br>";html+="運動: "+sportsTime+"時間<br>";if(breakfirst=="true")
html+="朝食　";if(lunch=="true")
html+="昼食　";if(dinner=="true")
html+="夕食　";if(sweets=="true")
html+="間食　";if(drink=="true")
html+="お酒　";html+="<br><img src='images/smile/"+SMILE_ICON[conditionFace]+".gif'>&nbsp;今日は、"+SMILE_NAME[conditionFace];html+="<br>"+todayComment;html+="</td></tr></table>";var iframeHtml="<iframe frameborder='0' scrolling='no' width='300' height='200' name='TodayLifelogDiagram'></iframe>";var item=crossGetObject("TodayChart");if(item==null){item=dragableFloat("TodayChart",x,y,true,null);changeClass(item.id,"memo");crossWrite(item,"<div id='divChangeable'>"+html+"</div>"+iframeHtml);}else{crossWrite(crossGetObject("divChangeable"),html);crossShowObject(crossGetObject("TodayChart"));crossGetObject("TodayChart").style.left=x;crossGetObject("TodayChart").style.top=y;}
_DiagramTarget=window.frames["TodayLifelogDiagram"];_DiagramTarget.document.open();_DiagramTarget.document.writeln("<html><head></head><body bgcolor='#FFFFFF'>");_BFont="color: #666666; font-family:Arial, Helvetica, sans-serif;font-weight:normal;font-size:10pt;line-height:13pt;";var lblTodayChart=new Array("睡眠","仕事・勉強","遊び","運動","食事","体調・気分");var dat=new Array(sleepNum,workNum,playNum,sportsNum,eatNum,conditionNum);var radar=new Radar(100,100,70,5,dat,lblTodayChart);radar.SetDotSize(7);radar.SetSize(2);radar.SetDotType(6);radar.SetColor("#FF66CC");radar.SetAxisColor("#999999");radar.SetAxisSize(1);_DiagramTarget.document.writeln("</body></html>");_DiagramTarget.document.close();}
function hideTodayChart(){crossHideObject(crossGetObject("TodayChart"));}
function hideLifelog(){crossHideObject(crossGetObject("inputLifelog"));crossHideObject(crossGetObject("divGroup"));crossHideObject(crossGetObject("category"));}
var slSleep;function inputLifelog(cell){var x;var y;var width=500;var height=500;x=(window.screen.width/2)-(width/2);y=(window.screen.height/2)-(height/2);var date=gUserCal.getDateFromCellNum(cell);var smile="<div id='category' style='position:absolute; left:130px; top:270px; background-color: #eee; border:1px double; z-index:10; '>";smile+="<table border='1'>";var num=0;for(var i=0;i<2;i++){smile+="<tr>";for(var j=0;j<5;j++){smile+="<td><a href='#' onmouseover='javascript:showIcon("+num+");' onmouseout='javascript:defaultIcon();' onClick='javascript:clickIcon("+num+");'><img src='images/smile/"+SMILE_ICON[num]+".gif' border='0' alt='"+SMILE_NAME[num]+"'></a></td>";num++;}
smile+="</tr>";}
smile+="</table>";smile+="</div>"
var html="<form name='formNum' onSubmit='return false'>";html+="<table width='100%' cellpadding='0' cellspacing='0'>";html+="<tr>";html+="<td bgcolor='skyblue' height='25'>&nbsp;<img src='images/life.gif' border='0'>&nbsp;<font color='white'><b>"+getYear(date.getYear())+"/"+(date.getMonth()+1)+"/"+date.getDate()+"のライフログを入力</b</font></td>";html+="<td align='right' bgcolor='skyblue'><a href='javascript:hideLifelog()'><img src='images/close.gif' border='0'></a>&nbsp;</td>";html+="</tr>";html+="</table>";html+="<div id='divSliderSpace' style='padding: 20; align: center;'>"
html+="<table>";html+="<tr><td colspan='3'><table class='matrix'>";html+="<tr><td height='30' width='100'></td><td width='160' align='center'><b>項目別</b></td><td width='180' align='center'><b>満足度・充実度</b><br>1:不満足 > 3:普通 > 5:大満足</td></tr>";html+="<tr><th height='30' width='100'>睡眠</th><td width='160'><input type='text' name='sleep' size='2' maxlength='3'>(h)</td><td width='180'>"+createRadios('radioSleep')+"<div id='divSliderSpace1'></div></td></tr>";html+="<tr><th height='30' width='100'>仕事・勉強</th><td width='160'><input type='text' name='work' size='2' maxlength='3'>(h)</td><td>"+createRadios('radioWork')+"<div id='divSliderSpace2'></div></td></tr>";html+="<tr><th height='30' width='100'>遊び</th><td width='160'><input type='text' name='play' size='2' maxlength='3'>(h)</td><td>"+createRadios('radioPlay')+"<div id='divSliderSpace3'></div></td></tr>";html+="<tr><th height='30' width='100'>運動</th><td width='160'><input type='text'name='sports' size='2' maxlength='3'>(h)</td><td>"+createRadios('radioSports')+"<div id='divSliderSpace4'></div></td></tr>";html+="<tr><th height='30' width='100'>食事</th><td width='160'><input type='checkbox' name='eat1' value='breakfirst'>朝食&nbsp;<input type='checkbox' name='eat2' value='lunch'>昼食&nbsp;<input type='checkbox' name='eat3' value='dinner'>夕食<br>";html+="<input type='checkbox' name='eat4' value='sweats'>間食&nbsp;&nbsp;<input type='checkbox' name='eat5' value='drink'>お酒</td><td>"+createRadios('radioEat')+"<div id='divSliderSpace5'></div></td></tr>";html+="<tr><th height='30' width='100'>体調・気分</th><td width='160'><span id='smile_icon'><img src='images/smile/smile.gif' alt='"+SMILE_NAME[0]+"'> いたって普通</span><br><input type='button' value='▼今日の顔は？' onClick='showCategoryBottom()'>"+smile+"</td><td>"+createRadios('radioCondition')+"<div id='divSliderSpace6'></div></td></tr>";html+="<tr><th height='30' width='100'>今日の一言</th><td colspan='2'><textarea name='todayComment' cols='40' rows='3'></textarea></td></tr>";html+="<tr><th>公開レベル</th><td colspan='2'><div id='divLifePublish'></div></td></tr>";html+="</table>";html+="</div>";html+="</td></tr>";html+="<tr><td><input type='button' name='btn' value='作成する' onClick='addLifelog("+cell+")'></td><td colspan='2'></td></tr>";html+="</table>";html+="</form>";var item=crossGetObject("inputLifelog");if(item==null){item=dragableFloat("inputLifelog",x,y,false,null);item.style.height=height+"px";item.style.width=width+"px";}else{item.style.top=y;item.style.left=x;crossShowObject(crossGetObject("inputLifelog"));}
crossGetObject("inputLifelog").style.zIndex=500;changeClass(item.id,"memo");crossWrite(item,html);crossHideObject(crossGetObject("category"));loadGroupFromDB();document.formNum.sleep.focus();}
var showFlag=false;function showCategoryBottom(){var targetObj=crossGetObject("category");if(showFlag){crossHideObject(targetObj);showFlag=false;}else{crossShowObject(targetObj);showFlag=true}}
function defaultIcon(){changeIcon(gFace);}
function showIcon(num){changeIcon(num);}
function clickIcon(num){changeIcon(num);showCategoryBottom();gFace=num;}
function changeIcon(num){var selObj=crossGetObject("smile_icon");var html="<img src='images/smile/"+SMILE_ICON[num]+".gif' alt='"+SMILE_NAME[num]+"'> "+SMILE_NAME[num];crossWrite(selObj,html);}
function addLifelog(cell){var param="";var sleepTime=document.formNum.sleep.value;if(sleepTime==null||sleepTime==""){alert("睡眠時間を入力してください。");return;}
if(isNaN(sleepTime)){alert("睡眠時間には数字を入力してください。");return;}
if(sleepTime>=24){alert("睡眠時間に24時間以内の数字をを入力してください。");return;}
var sleepNum=0;for(var i=1;i<6;i++){if(crossGetObject("radioSleep"+i).checked){sleepNum=i;break;}}
param+="sleepTime#"+sleepTime+"@sleepNum#"+sleepNum;var workTime=document.formNum.work.value;if(workTime==null||workTime==""){alert("仕事・勉強時間を入力してください。");return;}
if(isNaN(workTime)){alert("仕事・勉強時間には数字を入力してください。");return;}
if(workTime>=24){alert("仕事・勉強時間に24時間以内の数字をを入力してください。");return;}
var workNum=0;for(var i=1;i<6;i++){if(crossGetObject("radioWork"+i).checked){workNum=i;break;}}
param+="@workTime#"+workTime+"@workNum#"+workNum;var playTime=document.formNum.play.value;if(playTime==null||playTime==""){alert("遊び時間を入力してください。");return;}
if(isNaN(playTime)){alert("遊び時間には数字を入力してください。");return;}
if(playTime>=24){alert("遊び時間に24時間以内の数字をを入力してください。");return;}
var playNum=0;for(var i=1;i<6;i++){if(crossGetObject("radioPlay"+i).checked){playNum=i;break;}}
param+="@playTime#"+playTime+"@playNum#"+playNum;var sportsTime=document.formNum.sports.value;if(sportsTime==null||sportsTime==""){alert("運動時間を入力してください。");return;}
if(isNaN(sportsTime)){alert("運動時間には数字を入力してください。");return;}
if(sportsTime>=24){alert("運動時間に24時間以内の数字をを入力してください。");return;}
var sportsNum=0;for(var i=1;i<6;i++){if(crossGetObject("radioSports"+i).checked){sportsNum=i;break;}}
param+="@sportsTime#"+sportsTime+"@sportsNum#"+sportsNum;if(document.formNum.eat1.checked)param+="@breakfirst#true";else param+="@breakfirst#false";if(document.formNum.eat2.checked)param+="@lunch#true";else param+="@lunch#false";if(document.formNum.eat3.checked)param+="@dinner#true";else param+="@dinner#false";if(document.formNum.eat4.checked)param+="@sweets#true";else param+="@sweets#false";if(document.formNum.eat5.checked)param+="@drink#true";else param+="@drink#false";var eatNum=0;for(var i=1;i<6;i++){if(crossGetObject("radioEat"+i).checked){eatNum=i;break;}}
param+="@eatNum#"+eatNum;var conditionNum=0;for(var i=1;i<6;i++){if(crossGetObject("radioCondition"+i).checked){conditionNum=i;break;}}
param+="@conditionFace#"+gFace+"@conditionNum#"+conditionNum;var todayComment=document.formNum.todayComment.value;param+="@todayComment#"+todayComment;var type=OBJ_LIFE;var date=gUserCal.getDateFromCellNum(cell);var name=(date.getMonth()+1)+"/"+date.getDate()+"のライフログ";strStart=getYear(date.getYear())+"/"+date.getMonth()+"/"+date.getDate()+"/0:00";strEnd=strStart;var publish=document.formNum.publish.value;var group="";var selObj=document.formNum.group;var selNum=0;for(var i=0;i<selObj.options.length;i++){if(selObj.options[i].selected){group+=selObj.options[i].value+",";selNum++;}}
if(publish==2&&selNum<1){alert("グループを選択してください。");return;}else{group=group.substring(0,group.length-1);}
registerObjectToDB(type,name,strStart,strEnd,publish,group,"","",true,param,"");hideLifelog();if(cell==-1)
return;var myUserid=crossGetObject("userid").value;gExistLifelog[cell]=true;var divCell="divMonthCell"+cell+"-3";crossWrite(crossGetObject(divCell),"<div align='right'><a href='#' onClick='loadTodayLife("+cell+", \""+myUserid+"\");'><img src='images/life.gif' alt='ライフログ' border='0'></a></div>");}
function editLifelog(date,objid){var divStr="divMemo-"+objid;var html="<input type='text' name='memo-"+objid+"' size='50' value='"+memo+"'>";html+="<input type='button' name='updateMemoBtn' value='更新' onClick='updateMemo(\""+date+"\", \""+objid+"\")'>"
var obj=crossGetObject(divStr);crossWrite(obj,html);}
function updateLifelog(date,objid){var desc="";for(var i=0;i<document.formEditMemo.elements.length;i++){if(document.formEditMemo.elements[i].name=="memo-"+objid){desc=document.formEditMemo.elements[i].value;break;}}
if(desc==""){document.formMemo.memo.focus();return;}
var type=OBJ_MEMO;var name=desc;if(desc.length>10)
desc.substring(0,10);updateObjectToDB(objid,type,name,date,date,PUBLISH_LEVEL_PRIVATE,"","","",true,desc);var url="./top";location.href=url;}
function deleteLifelog(objid,groupNo,type){if(window.confirm("削除してもよろしいですか？")){deleteObjectFromDB(objid,groupNo,type);hideTodayChart();var url="./top";location.href=url;}}
function lifelogMenu(){var eatHeight=0
if(!gWidget)
eatHeight=300;var html="";if(gWidget){html+="<center>";html+="<a href='javascript:showAsItems()'>項目別</a> | ";html+="<a href='javascript:showAsSatisfaction()'>満足度</a> | ";html+="<a href='javascript:showAsAvgSatisfaction()'>満足度平均</a><br>";html+="<a href='javascript:showBeforeChart()'>&lt;先月</a>　";html+="<a href='javascript:showNextChart()'>翌月&gt;</a>";html+="</center>";html+="<hr>";html+="<div id='chartTitle' class='cal_menu_title'></div>";}else{html+="<table id='calMenuTable' class='CalendarOperation' width='100%'>";html+="<tr><td>";html+="<table><tr><td>";html+="<td><input type='button' name='btn' value='項目別' onClick='showAsItems()'></td>";html+="<td width='40px'>&nbsp;</td>";html+="<td><input type='button' name='btn' value='満足度・充実度' onClick='showAsSatisfaction()'></td>";html+="<td><input type='button' name='btn' value='満足度・充実度の平均' onClick='showAsAvgSatisfaction()'></td>";html+="</td></tr></table>";html+="</td></tr>";html+="<tr>";html+="<td>";html+="<table><tr><td>";html+="<input type='button' name='btn' value='  &lt;  ' onClick='showBeforeChart()'>";html+="</td>";html+="<td>";html+="<input type='button' name='btn' value='  &gt;  ' onClick='showNextChart()'>";html+="</td>";html+="<td width='20px'>&nbsp;</td>";html+="<td>";html+="<div id='chartTitle' class='cal_menu_title'></div>";html+="</td></tr></table>";html+="</td>";html+="</tr>";html+="</table>";}
html+="<div id='divLifeChartMenu'></div>";html+="<iframe frameborder=0 scrolling='no' width="+(gFrameWidth+5)+" height="+(gFrameHeight+25+eatHeight)+" name='LifelogDiagram'></iframe>";return html;}
function LifelogObject(desc){this.sleepTime="";this.sleepNum="";this.workTime="";this.workNum="";this.playTime="";this.playNum="";this.sportsTime="";this.sportsNum="";this.breakfirst="";this.lunch="";this.dinner="";this.sweets="";this.drink="";this.eatNum="";this.conditionFace="";this.conditionNum="";this.todayComment="";var params=desc.split("@");for(var i=0;i<params.length;i++){var keyValuePair=params[i].split("#");if(keyValuePair[0]=="sleepTime"){this.sleepTime=keyValuePair[1];}else if(keyValuePair[0]=="sleepNum"){this.sleepNum=keyValuePair[1];}else if(keyValuePair[0]=="workTime"){this.workTime=keyValuePair[1];}else if(keyValuePair[0]=="workNum"){this.workNum=keyValuePair[1];}else if(keyValuePair[0]=="playTime"){this.playTime=keyValuePair[1];}else if(keyValuePair[0]=="playNum"){this.playNum=keyValuePair[1];}else if(keyValuePair[0]=="sportsTime"){this.sportsTime=keyValuePair[1];}else if(keyValuePair[0]=="sportsNum"){this.sportsNum=keyValuePair[1];}else if(keyValuePair[0]=="breakfirst"){this.breakfirst=keyValuePair[1];}else if(keyValuePair[0]=="lunch"){this.lunch=keyValuePair[1];}else if(keyValuePair[0]=="dinner"){this.dinner=keyValuePair[1];}else if(keyValuePair[0]=="sweets"){this.sweets=keyValuePair[1];}else if(keyValuePair[0]=="drink"){this.drink=keyValuePair[1];}else if(keyValuePair[0]=="eatNum"){this.eatNum=keyValuePair[1];}
else if(keyValuePair[0]=="conditionFace"){this.conditionFace=keyValuePair[1];}else if(keyValuePair[0]=="conditionNum"){this.conditionNum=keyValuePair[1];}else if(keyValuePair[0]=="todayComment"){this.todayComment=keyValuePair[1];}}
return this;}
function createRadios(id){var html="";html+="<input type='radio' id='"+id+"1' name='"+id+"'>1 ";html+="<input type='radio' id='"+id+"2' name='"+id+"'>2 ";html+="<input type='radio' id='"+id+"3' name='"+id+"' checked>3 ";html+="<input type='radio' id='"+id+"4' name='"+id+"'>4 ";html+="<input type='radio' id='"+id+"5' name='"+id+"'>5 ";return html;}
function changeToTodayLifelog(){var today=crossGetObject("Today").value;crossWrite(crossGetObject("lifelogDayTitle"),today);var isLifelogToday=crossGetObject("LifelogToday").value;var html="";html+="<table width='100%' cellpadding='0' cellspacing='0' border='0'>";html+="<tr><td><h4>項目別平均時間</h4></td><td><h4>食事</h4></td><td><h4>満足度・充実度</h4></td></tr>";html+="<tr>";html+="<td valign='top'>";html+="<table>";html+="<tr>";html+="<td>";html+="平均睡眠時間(hours)：";html+="<table>";html+="<tr>";var avgSleepTime=crossGetObject("AvgSleepTime").value;if(avgSleepTime!=0)
html+="<td bgcolor='#66CC99' width='"+(parseFloat(avgSleepTime)*10)+"px' align='center'><font color='white'>"+avgSleepTime+"</font></td>";else
html+="<td>----</td>";html+="</tr>";html+="</table>";html+="平均仕事・勉強時間(hours)：";html+="<table>";html+="<tr>";var avgWorkTime=crossGetObject("AvgWorkTime").value;if(avgWorkTime!=0)
html+="<td bgcolor='#66CC99' width='"+(parseFloat(avgWorkTime)*10)+"px' align='center'><font color='white'>"+avgWorkTime+"</font></td>";else
html+="<td>----</td>";html+="</tr>";html+="</table>";html+="平均遊び時間(hours)：";html+="<table>";html+="<tr>";var avgPlayTime=crossGetObject("AvgPlayTime").value;if(avgPlayTime!=0)
html+="<td bgcolor='#66CC99' width='"+(parseFloat(avgPlayTime)*10)+"px' align='center'><font color='white'>"+avgPlayTime+"</font></td>";else
html+="<td>----</td>";html+="</tr>";html+="</table>";html+="平均スポーツ時間(hours)：";html+="<table>";html+="<tr>";var avgSportsTime=crossGetObject("AvgSportsTime").value;if(avgSportsTime!=0)
html+="<td bgcolor='#66CC99' width='"+(parseFloat(avgSportsTime)*10)+"px' align='center'><font color='white'>"+avgSportsTime+"</font></td>";else
html+="<td>----</td>";html+="</tr>";html+="</table>";html+="</td>";html+="</tr>";html+="</table>";html+="</td>";html+="<td valign='top'>";html+="<table width='100%' height='50px' cellspacing='0'>";html+="<tr><td colspan='2'>朝食を食べた人：</td></tr>";html+="<tr>";if(isLifelogToday=="true"){var breakfirstRatio=parseInt(crossGetObject("BreakfirstRatio").value);if(breakfirstRatio!=0)
html+="<td bgcolor='#6699FF' width='"+breakfirstRatio+"%' align='center'><font color='white'>Yes ("+breakfirstRatio+"%)</font></td>";if(breakfirstRatio!=100)
html+="<td bgcolor='#FF6699' width='"+(100-breakfirstRatio)+"%' align='center'><font color='white'>No ("+(100-breakfirstRatio)+"%)</font></td>";}else{html+="<td>----</td>";}
html+="</tr>";html+="</table>";html+="<table width='100%' height='50px' cellspacing='0'>";html+="<tr><td colspan='2'>昼食を食べた人：</td></tr>";html+="<tr>";if(isLifelogToday=="true"){var lunchRatio=parseInt(crossGetObject("LunchRatio").value);if(lunchRatio!=0)
html+="<td bgcolor='#6699FF' width='"+lunchRatio+"%' align='center'><font color='white'>Yes ("+lunchRatio+"%)</font></td>";if(lunchRatio!=100)
html+="<td bgcolor='#FF6699' width='"+(100-lunchRatio)+"%' align='center'><font color='white'>No ("+(100-lunchRatio)+"%)</font></td>";}else{html+="<td>----</td>";}
html+="</tr>";html+="</table>";html+="<table width='100%' height='50px' cellspacing='0'>";html+="<tr><td colspan='2'>夕食を食べた人：</td></tr>";html+="<tr>";if(isLifelogToday=="true"){var dinnerRatio=parseInt(crossGetObject("DinnerRatio").value);if(dinnerRatio!=0)
html+="<td bgcolor='#6699FF' width='"+dinnerRatio+"%' align='center'><font color='white'>Yes ("+dinnerRatio+"%)</font></td>";if(dinnerRatio!=100)
html+="<td bgcolor='#FF6699' width='"+(100-dinnerRatio)+"%' align='center'><font color='white'>No ("+(100-dinnerRatio)+"%)</font></td>";}else{html+="<td>----</td>";}
html+="</tr>";html+="</table>";html+="<table width='100%' height='50px' cellspacing='0'>";html+="<tr><td colspan='2'>間食をした人：</td></tr>";html+="<tr>";if(isLifelogToday=="true"){var sweetsRatio=parseInt(crossGetObject("SweetsRatio").value);if(sweetsRatio!=0)
html+="<td bgcolor='#6699FF' width='"+sweetsRatio+"%' align='center'><font color='white'>Yes ("+sweetsRatio+"%)</font></td>";if(sweetsRatio!=100)
html+="<td bgcolor='#FF6699' width='"+(100-sweetsRatio)+"%' align='center'><font color='white'>No ("+(100-sweetsRatio)+"%)</font></td>";}else{html+="<td>----</td>";}
html+="</tr>";html+="</table>";html+="<table width='100%' height='50px' cellspacing='0'>";html+="<tr><td colspan='2'>お酒を飲んだ人：</td></tr>";html+="<tr>";if(isLifelogToday=="true"){var drinkRatio=parseInt(crossGetObject("DrinkRatio").value);if(drinkRatio!=0)
html+="<td bgcolor='#6699FF' width='"+drinkRatio+"%' align='center'><font color='white'>Yes ("+drinkRatio+"%)</font></td>";if(drinkRatio!=100)
html+="<td bgcolor='#FF6699' width='"+(100-drinkRatio)+"%' align='center'><font color='white'>No ("+(100-drinkRatio)+"%)</font></td>";}else{html+="<td>----</td>";}
html+="</tr>";html+="</table>";html+="</td>";html+="<td valign='top'>";html+="<table width='100%'>";html+="<tr>";html+="<td>";if(isLifelogToday=="true"){html+="睡眠：&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";var avgSleepNum=parseInt(crossGetObject("AvgSleepNum").value);for(var i=0;i<avgSleepNum;i++)
html+="<img src='images/life.gif' border='0'>";}else{html+="<td>睡眠：&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;----</td>";}
html+="</td>";html+="</tr>";html+="</table>";html+="<table width='100%'>";html+="<tr>";html+="<td>";if(isLifelogToday=="true"){html+="仕事・勉強：&nbsp;";var avgWorkNum=parseInt(crossGetObject("AvgWorkNum").value);for(var i=0;i<avgWorkNum;i++)
html+="<img src='images/life.gif' border='0'>";}else{html+="<td>仕事・勉強：&nbsp;----</td>";}
html+="</td>";html+="</tr>";html+="</table>";html+="<table width='100%'>";html+="<tr>";html+="<td>";if(isLifelogToday=="true"){html+="遊び：&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";var avgPlayNum=parseInt(crossGetObject("AvgPlayNum").value);for(var i=0;i<avgPlayNum;i++)
html+="<img src='images/life.gif' border='0'>";}else{html+="<td>遊び：&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;----</td>";}
html+="</td>";html+="</tr>";html+="</table>";html+="<table width='100%'>";html+="<tr>";html+="<td>";if(isLifelogToday=="true"){html+="運動：&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";var avgSportsNum=parseInt(crossGetObject("AvgSportsNum").value);for(var i=0;i<avgSportsNum;i++)
html+="<img src='images/life.gif' border='0'>";}else{html+="<td>運動：&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;----</td>";}
html+="</td>";html+="</tr>";html+="</table>";html+="<table width='100%'>";html+="<tr>";html+="<td>";if(isLifelogToday=="true"){html+="食事：&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";var avgEatNum=parseInt(crossGetObject("AvgEatNum").value);for(var i=0;i<avgEatNum;i++)
html+="<img src='images/life.gif' border='0'>";}else{html+="<td>食事：&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;----</td>";}
html+="</td>";html+="</tr>";html+="</table>";html+="<table width='100%'>";html+="<tr>";html+="<td>";if(isLifelogToday=="true"){html+="気分・体調：&nbsp;";var avgConditionNum=parseInt(crossGetObject("AvgConditionNum").value);for(var i=0;i<avgConditionNum;i++)
html+="<img src='images/life.gif' border='0'>";}else{html+="<td>気分・体調：&nbsp;----</td>";}
html+="</td>";html+="</tr>";html+="</table>";html+="</td>";html+="</tr>";html+="</table>";crossWrite(crossGetObject("divWeekLifelog"),html);}
var WEEK_ITEM_NUM=4;var gDateArray;function changeToWeekLifelog(){if(crossGetObject("DatDateWeek")!=null){var datDate=crossGetObject("DatDateWeek").value;gDateArray=datDate.split(",");var start_array=gDateArray[0].split("/");var start_month=parseInt(start_array[1])+1;var start_day=parseInt(start_array[2]);var end_array=gDateArray[gDateArray.length-1].split("/");var end_month=parseInt(end_array[1])+1;var end_day=parseInt(end_array[2]);var date=start_month+"月"+start_day+"日 ～ "+end_month+"月"+end_day+"日";crossWrite(crossGetObject("lifelogDayTitle"),date);var datSleep=crossGetObject("DatAvgSleepTimeWeek").value;var sleepArray=datSleep.split(",");var datWork=crossGetObject("DatAvgWorkTimeWeek").value;var workArray=datWork.split(",");var datPlay=crossGetObject("DatAvgPlayTimeWeek").value;var playArray=datPlay.split(",");var datSports=crossGetObject("DatAvgSportsTimeWeek").value;var sportsArray=datSports.split(",");var avgTime=new Array(WEEK_ITEM_NUM);for(var i=0;i<WEEK_ITEM_NUM;i++){avgTime[i]=new Array(gDateArray.length);}
for(var j=0;j<gDateArray.length;j++){avgTime[0][j]=sleepArray[j];avgTime[1][j]=workArray[j];avgTime[2][j]=playArray[j];avgTime[3][j]=sportsArray[j];}
showWeekLifelog(gDateArray,avgTime);}}
function showWeekLifelog(date,avgTime){var COLOR=new Array("#9966CC","#CC9966","#00FF66","#00CCFF");var avgEatRatioHtml=avgEatRatio();var avgSatisfactionHtml=avgSatisfaction()
var html="<table>";html+="<tr><td><h4>項目別平均時間</h4></td><td><h4>食事</h4></td><td><h4>満足度・充実度</h4></td></tr>";html+="<tr>";html+="<td><iframe frameborder=0 scrolling='no' width=300 height=300 name='LifelogDiagram'></iframe></td>";html+="<td valign='top'>"+avgEatRatioHtml+"</td>";html+="<td valign='top'>"+avgSatisfactionHtml+"</td>";html+="</tr>";html+="</table>"
crossWrite(crossGetObject("divWeekLifelog"),html);_DiagramTarget=window.frames["LifelogDiagram"];_DiagramTarget.document.open();_DiagramTarget.document.writeln("<html><head></head><body bgcolor='#FFFFFF'>");var d=new Diagram();d.SetFrame(30,20,250,150);var title="";title+="<span style=\"background-color: "+COLOR[0]+"\">　</span>睡眠&nbsp;";title+="<span style=\"background-color: "+COLOR[1]+"\">　</span>仕事・勉強&nbsp;";title+="<span style=\"background-color: "+COLOR[2]+"\">　</span>遊び&nbsp;";title+="<span style=\"background-color: "+COLOR[3]+"\">　</span>運動";d.SetText("","",title);d.SetBorder(1,date.length,0,10);d.XScale="function getTimeXScale";for(var i=0;i<WEEK_ITEM_NUM;i++){for(var j=0;j<date.length;j++){if(avgTime[i][j]!=null&&avgTime[i][j]!="null"){var array=date[j].split("/");var day=parseInt(array[2]);new Dot(d.ScreenX(j+1),d.ScreenY(avgTime[i][j]),5,2,COLOR[i],avgTime[i][j]);if(avgTime[i][j+1]!=null&&avgTime[i][j+1]!="null"){var array2=date[j+1].split("/");if(array2[2]==(day+1))
new Line(d.ScreenX(j+1),d.ScreenY(avgTime[i][j]),d.ScreenX(j+2),d.ScreenY(avgTime[i][j+1]),COLOR[i],1,"");}}}}
d.SetGridColor("#cccccc");d.Draw("#FFEECC","#663300",false);_DiagramTarget.document.writeln("</body></html>");_DiagramTarget.document.close();}
function getTimeXScale(i){var array=gDateArray[i-1].split("/");var day=parseInt(array[2]);return day+"日";}
function avgEatRatio(){var breakfirstRatio=crossGetObject("AvgBreakfirstRatio").value;var lunchRatio=crossGetObject("AvgLunchRatio").value;var dinnerRatio=crossGetObject("AvgDinnerRatio").value;var sweetsRatio=crossGetObject("AvgSweetsRatio").value;var drinkRatio=crossGetObject("AvgDrinkRatio").value;var html="";html+="<table width='100%' height='50px' cellspacing='0'>";html+="<tr><td colspan='2'>朝食を食べた人：</td></tr>";html+="<tr>";if(breakfirstRatio!=0){html+="<td bgcolor='#6699FF' width='"+breakfirstRatio+"%' align='center'><font color='white'>Yes ("+breakfirstRatio+"%)</font></td>";}
if(breakfirstRatio!=100){html+="<td bgcolor='#FF6699' width='"+(100-breakfirstRatio)+"%' align='center'><font color='white'>No ("+(100-breakfirstRatio)+"%)</font></td>";}
html+="</tr>";html+="</table>";html+="<table width='100%' height='50px' cellspacing='0'>";html+="<tr><td colspan='2'>昼食を食べた人：</td></tr>";html+="<tr>";if(lunchRatio!=0){html+="<td bgcolor='#6699FF' width='"+lunchRatio+"%' align='center'><font color='white'>Yes ("+lunchRatio+"%)</font></td>";}
if(lunchRatio!=100){html+="<td bgcolor='#FF6699' width='"+(100-lunchRatio)+"%' align='center'><font color='white'>No ("+(100-lunchRatio)+"%)</font></td>";}
html+="</tr>";html+="</table>";html+="<table width='100%' height='50px' cellspacing='0'>";html+="<tr><td colspan='2'>夕食を食べた人：</td></tr>";html+="<tr>";if(dinnerRatio!=0){html+="<td bgcolor='#6699FF' width='"+dinnerRatio+"%' align='center'><font color='white'>Yes ("+dinnerRatio+"%)</font></td>";}
if(dinnerRatio!=100){html+="<td bgcolor='#FF6699' width='"+(100-dinnerRatio)+"%' align='center'><font color='white'>No ("+(100-dinnerRatio)+"%)</font></td>";}
html+="</tr>";html+="</table>";html+="<table width='100%' height='50px' cellspacing='0'>";html+="<tr><td colspan='2'>間食をした人：</td></tr>";html+="<tr>";if(sweetsRatio!=0){html+="<td bgcolor='#6699FF' width='"+sweetsRatio+"%' align='center'><font color='white'>Yes ("+sweetsRatio+"%)</font></td>";}
if(sweetsRatio!=100){html+="<td bgcolor='#FF6699' width='"+(100-sweetsRatio)+"%' align='center'><font color='white'>No ("+(100-sweetsRatio)+"%)</font></td>";}
html+="</tr>";html+="</table>";html+="<table width='100%' height='50px' cellspacing='0'>";html+="<tr><td colspan='2'>お酒を飲んだ人：</td></tr>";html+="<tr>";if(drinkRatio!=0){html+="<td bgcolor='#6699FF' width='"+drinkRatio+"%' align='center'><font color='white'>Yes ("+drinkRatio+"%)</font></td>";}
if(drinkRatio!=100){html+="<td bgcolor='#FF6699' width='"+(100-drinkRatio)+"%' align='center'><font color='white'>No ("+(100-drinkRatio)+"%)</font></td>";}
html+="</tr>";html+="</table>";return html;}
function avgSatisfaction(){var avgSleepNum=parseInt(crossGetObject("AvgSleepNumWeek").value);var avgWorkNum=parseInt(crossGetObject("AvgWorkNumWeek").value);var avgPlayNum=parseInt(crossGetObject("AvgPlayNumWeek").value);var avgSportsNum=parseInt(crossGetObject("AvgSportsNumWeek").value);var avgEatNum=parseInt(crossGetObject("AvgEatNumWeek").value);var avgConditionNum=parseInt(crossGetObject("AvgConditionNumWeek").value);var html="";html+="<table width='100%'>";html+="<tr>";html+="<td>";html+="睡眠：&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";for(var i=0;i<avgSleepNum;i++){html+="<img src='images/life.gif' border='0'>";}
html+="</td>";html+="</tr>";html+="</table>";html+="<table width='100%'>";html+="<tr>";html+="<td>";html+="仕事・勉強：&nbsp;";for(var i=0;i<avgWorkNum;i++){html+="<img src='images/life.gif' border='0'>";}
html+="</td>";html+="</tr>";html+="</table>";html+="<table width='100%'>";html+="<tr>";html+="<td>";html+="遊び：&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";for(var i=0;i<avgPlayNum;i++){html+="<img src='images/life.gif' border='0'>";}
html+="</td>";html+="</tr>";html+="</table>";html+="<table width='100%'>";html+="<tr>";html+="<td>";html+="運動：&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";for(var i=0;i<avgSportsNum;i++){html+="<img src='images/life.gif' border='0'>";}
html+="</td>";html+="</tr>";html+="</table>";html+="<table width='100%'>";html+="<tr>";html+="<td>";html+="食事：&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";for(var i=0;i<avgEatNum;i++){html+="<img src='images/life.gif' border='0'>";}
html+="</td>";html+="</tr>";html+="</table>";html+="<table width='100%'>";html+="<tr>";html+="<td>";html+="気分・体調：&nbsp;";for(var i=0;i<avgConditionNum;i++){html+="<img src='images/life.gif' border='0'>";}
html+="</td>";html+="</tr>";html+="</table>";return html;}
var gEnterMemo=false;var gEditMemo=false;function hideMemo(){crossHideObject(crossGetObject("inputMemo"));}
function hideShowMemo(){crossHideObject(crossGetObject("showMemo"));}
function enterMemo(evt,cell,date,objid){if(gEnterMemo&&evt.keyCode==13){if(gEditMemo)
updateMemo(date,objid);else
addMemo(cell);gEnterMemo=false;}}
function inputMemo(cell){gEnterMemo=true;gEditMemo=false;var x;var y;var WINDOW_WIDTH=400;if((cell+1)%7==0){x=getMouseX()-130;y=getMouseY()-5;}else{x=getMouseX()-5;y=getMouseY()-100;}
if((x+WINDOW_WIDTH)>=(window.screen.width-100)){x=window.screen.width-(WINDOW_WIDTH+100);}
var date=gUserCal.getDateFromCellNum(cell);strDate=getYear(date.getYear())+"/"+(date.getMonth()+1)+"/"+date.getDate();var html="<form name='formMemo' onSubmit='return false'>";html+="<table width='"+(WINDOW_WIDTH+30)+"px' cellpadding='0' cellspacing='0'>";html+="<tr>";html+="<td bgcolor='skyblue' height='25'>&nbsp;<img src='images/memo.gif' border='0'>&nbsp;<font color='white'><b>"+strDate+"にTODOメモを追加　(300文字まで)</b</font></td>";html+="<td align='right' bgcolor='skyblue'><a href='javascript:hideMemo()'><img src='images/close.gif' border='0'></a>&nbsp;</td>";html+="</tr>";html+="</table>";html+="<span >";html+="<table width='"+WINDOW_WIDTH+"px' cellpadding='0' cellspacing='0' style='padding: 10;'>";html+="<tr>";html+="<td>フォントの色: ";html+="<input type='radio' name='fontColor' value='#666666' checked onkeypress='enterMemo(event||window.event, "+cell+");'><font color='#666666'>■</font> ";html+="<input type='radio' name='fontColor' value='#0000FF' onkeypress='enterMemo(event||window.event, "+cell+");'><font color='#0000FF'>■</font> ";html+="<input type='radio' name='fontColor' value='#FF0000' onkeypress='enterMemo(event||window.event, "+cell+");'><font color='#FF0000'>■</font> ";html+="<input type='radio' name='fontColor' value='#FF9900' onkeypress='enterMemo(event||window.event, "+cell+");'><font color='#FF9900'>■</font> ";html+="<input type='radio' name='fontColor' value='#00CC00' onkeypress='enterMemo(event||window.event, "+cell+");'><font color='#00CC00'>■</font> ";html+="&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";html+="<input type='checkbox' name='checkBold' value='1' onkeypress='enterMemo(event||window.event, "+cell+");'><font style='font-weight: bold;'>太字</font>";html+="</td>";html+="</tr>";html+="<tr>";html+="<td><input type='text' id='memo' name='memo' maxlength='300' style='width: 350px;' onkeypress='enterMemo(event||window.event, "+cell+");'></td>";html+="<td><input type='button' name='memoBtn' value='追加' onClick='addMemo("+cell+")'></td>";html+="</tr>";html+="</table>";html+="</span>";html+="</form>";var item=crossGetObject("inputMemo");if(item==null){item=dragableFloat("inputMemo",x,y,false,null);}else{item.style.top=y;item.style.left=x;crossShowObject(crossGetObject("inputMemo"));}
changeClass(item.id,"memo");crossWrite(item,html);crossHideObject(crossGetObject("divNewObjMenu"));document.formMemo.memo.focus();}
function loadMemo(cell){var date=gUserCal.getDateFromCellNum(cell);strDate=getYear(date.getYear())+"/"+date.getMonth()+"/"+date.getDate()+"/0:00";loadMemoFromDB(strDate);}
function showMemo(memos){var WINDOW_WIDTH=400;var x=getMouseX()-5;var y=getMouseY()-5;if((x+WINDOW_WIDTH)>=(window.screen.width-100)){x=window.screen.width-(WINDOW_WIDTH+100);}
if(memos.getElementAt(0)!=null){var strDate=memos.getElementAt(0).start_date;var date=getDateFromString(strDate);var html="<form name='formEditMemo' onSubmit='return false'>";html+="<table cellpadding='0' cellspacing='0' width='"+WINDOW_WIDTH+"'><tr><td>"
html+="<table width='100%' cellpadding='0' cellspacing='0'><tr><td bgcolor='skyblue' height='25'>&nbsp;<img src='images/memo.gif' border='0'>&nbsp;<font color='white'><b>"+getYear(date.getYear())+"/"+(date.getMonth()+1)+"/"+date.getDate()+"のTODOメモ</b></font></td><td bgcolor='skyblue' align='right'><a href='javascript:hideShowMemo()'><img src='images/close.gif' border='0'></a>&nbsp;</td></tr></table>";html+="<ul class='posts' id='Memo'>";if(memos!=null){for(var i=0;i<memos.getSize();i++){html+="<li class='ColorfulLists'>";html+="<div id='divMemo-"+memos.getElementAt(i).objid+"'>&nbsp;&nbsp;"+memos.getElementAt(i).desc;html+="&nbsp;&nbsp;<a href='javascript:editMemo(\""+strDate+"\", \""+memos.getElementAt(i).objid+"\", \""+memos.getElementAt(i).desc+"\")'>編集</a>";html+="&nbsp;&nbsp;<a href=\"javascript:deleteMemo('"+strDate+"', '"+memos.getElementAt(i).objid+"')\" class='rm'>削除</a>";html+="</div>";html+="</li>";}}
html+="</ul>";html+="</td></tr></table>";html+="</form>";var item=crossGetObject("showMemo");if(item==null){item=dragableFloat("showMemo",x,y,false,null);}else{crossShowObject(crossGetObject("showMemo"));crossGetObject("showMemo").style.left=x;crossGetObject("showMemo").style.top=y;}
changeClass(item.id,"memo");crossWrite(item,html);rmPostAddEvent();}}
function editMemo(date,objid,memo){gEnterMemo=true;gEditMemo=true;var divStr="divMemo-"+objid;var html="<input type='text' name='memo-"+objid+"' size='50' maxlength='300' value='"+memo+"' onkeypress='enterMemo(event||window.event, -1, \""+date+"\", \""+objid+"\");'>";html+="<input type='button' name='updateMemoBtn' value='更新' onClick='updateMemo(\""+date+"\", \""+objid+"\")'>"
var obj=crossGetObject(divStr);crossWrite(obj,html);var editNo;for(var i=0;i<document.formEditMemo.elements.length;i++){if(document.formEditMemo.elements[i].name=="memo-"+objid){editNo=i;break;}}
document.formEditMemo.elements[editNo].focus();}
function addMemo(cell){var desc=document.formMemo.memo.value;if(desc==""){document.formMemo.memo.focus();return;}
var type=OBJ_MEMO;var name=desc;if(desc.length>10)
desc.substring(0,10);var date=gUserCal.getDateFromCellNum(cell);strStart=getYear(date.getYear())+"/"+date.getMonth()+"/"+date.getDate()+"/0:00";strEnd=strStart;var extra="color:";var num=document.formMemo.fontColor.length;for(var i=0;i<num;i++){if(document.formMemo.fontColor[i].checked){extra+=document.formMemo.fontColor[i].value;}}
if(document.formMemo.checkBold.checked)
extra+=",bold:1";else
extra+=",bold:0";registerObjectToDB(type,name,strStart,strEnd,PUBLISH_LEVEL_PRIVATE,"","","",true,desc,extra);var divCell="divMonthCell"+cell+"-4";var obj=crossGetObject(divCell);if(obj.innerHTML.indexOf("memo.gif")<0){var html="<div align='right'><a href='javascript:loadMemo("+cell+")'><img src='images/memo.gif' alt='TODOメモ' border='0'></></div>";crossWrite(obj,html);}
hideMemo();}
function updateMemo(date,objid){var desc="";var editNo;for(var i=0;i<document.formEditMemo.elements.length;i++){if(document.formEditMemo.elements[i].name=="memo-"+objid){desc=document.formEditMemo.elements[i].value;editNo=i;break;}}
if(desc==""){document.formEditMemo.elements[editNo].focus();return;}
var type=OBJ_MEMO;var name=desc;if(desc.length>10)
desc.substring(0,10);updateObjectToDB(objid,type,name,date,date,PUBLISH_LEVEL_PRIVATE,"","","",true,desc);hideShowMemo();}
function deleteMemo(date,objid){deleteObjectFromDB(objid);hideShowMemo();var url="./top";location.href=url;}
var gType=new Array("スケジュール","日記","アルバム","ファイル","メモ","ライフログ","グループスケジュール","イベント","目標","ログ","ICal");var gTypeEn=new Array("schedule","diary","album","file","memo","life","group_schedule","event","goal","log","ical");var gTime=new Array("0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19","20","21","22","23","24");var gPublishLevel=new Array("プライベート","グループ","パブリック");var gReminderTime=new Array("5分","15分","30分","1時間","2時間","3時間","6時間","12時間","1日","2日","3日","4日","5日","6日","7日");var gReminderTimeMin=new Array(5,15,30,60,120,180,360,720,1440,2880,4320,5760,7200,8640,10080);var CLASS_USUAL=1;var CLASS_ICAL=2;var CLASS_OUTSIDE_DIARY=3;var CLASS_OUTSIDE_ALBUM=4;var CLASS_BUSINESS=5;var CLASS_CONTINUE=6;var PUBLISH_LEVEL_PRIVATE=1;var PUBLISH_LEVEL_GROUP=2;var PUBLISH_LEVEL_PUBLIC=3;var OBJ_SCHEDULE=1;var OBJ_DIARY=2;var OBJ_ALBUM=3;var OBJ_FILE=4;var OBJ_MEMO=5;var OBJ_LIFE=6;var OBJ_GROUP_SCHEDULE=7;var OBJ_EVENT=8;var OBJ_GOAL=9;var OBJ_LOG=10;var OBJ_ICAL=11;var OBJ_USER_LOG_START_NO=1000;var USER_TYPE_MYSELF=1;var USER_TYPE_REGISTERED=2;var USER_TYPE_NON_REGISTERED=3;var gSelectDate;function initNewObj(strDate){gSelectDate=strDate;crossHideObject(crossGetObject("divGroup"));setSelectDay(strDate);var obj=crossGetObject("divGroup");obj.style.display="none";crossHideObject(obj);}
function editObj(strDate,start,end,publish,group){gSelectDate=strDate;crossHideObject(crossGetObject("divGroup"));setSelectDay(strDate);edit(start,end,publish,group);if(publish!=PUBLISH_LEVEL_GROUP){var obj=crossGetObject("divGroup");obj.style.display="none";crossHideObject(obj);}}
function changeYear(selValue,se){for(var i=0;i<2;i++){if(selValue==document.regObjectForm.endYear.options[i].value)
document.regObjectForm.endYear.options[i].selected=true;}
if(document.regObjectForm.startMonth.value=="2"){var startYear=document.regObjectForm.startYear.value;var total=gMonthTable[parseInt(document.regObjectForm.startMonth)-1];if(((startYear%4)==0&&(startYear%100)!=0)||(startYear%400)==0)
total=29;else
total=28;var len=document.regObjectForm.startDate.length;for(var i=0;i<len;i++){document.regObjectForm.startDate.options[0]=null;}
for(var i=0;i<total;i++){document.regObjectForm.startDate.options[i]=new Option(i+1,i+1);}
var len=document.regObjectForm.endDate.length;for(var i=0;i<len;i++){document.regObjectForm.endDate.options[0]=null;}
for(var i=0;i<total;i++){document.regObjectForm.endDate.options[i]=new Option(i+1,i+1);}}}
function changeMonth(selValue,se){var startYear=document.regObjectForm.startYear.value;var total=gMonthTable[parseInt(selValue)-1];if(selValue=="2"){if(((startYear%4)==0&&(startYear%100)!=0)||(startYear%400)==0)
total=29;else
total=28;}
var len=document.regObjectForm.startDate.length;for(var i=0;i<len;i++){document.regObjectForm.startDate.options[0]=null;}
for(var i=0;i<total;i++){document.regObjectForm.startDate.options[i]=new Option(i+1,i+1);}
var len=document.regObjectForm.endDate.length;for(var i=0;i<len;i++){document.regObjectForm.endDate.options[0]=null;}
for(var i=0;i<total;i++){document.regObjectForm.endDate.options[i]=new Option(i+1,i+1);}
document.regObjectForm.endMonth.options[parseInt(selValue-1)].selected=true;}
function changeDay(selValue,se){document.regObjectForm.endDate.options[parseInt(selValue-1)].selected=true;}
var gTagMenuFlag=false;var gTagMenuTimer;function showTagMenu(){if(!gTagMenuFlag){if(arrayTags.length>0){var pos_obj=getElemPos(crossGetObject("tag"));var x=pos_obj.x;var y=pos_obj.y+crossGetObject("tag").offsetHeight;var html="";if(is.firefox)
html+="<select id=\"tags\" name=\"tags\" onmouseout=\"gTagMenuTimer = setTimeout('hideTagMenu()', 5000);\" onmouseover=\"clearTimeout(gTagMenuTimer);\" onChange=\"changeTag(this.value);\">";else
html+="<select id=\"tags\" name=\"tags\" onMouseOut=\"javascript:hideTagMenu();\" onmouseover=\"clearTimeout(gTagMenuTimer);\" onChange=\"changeTag(this.value);\">";html+="<option value=''>-- タグの履歴 --</option>";for(var i=0;i<arrayTags.length;i++){html+="<option value=\""+arrayTags[i]+"\">"+arrayTags[i]+"</option>";}
html+="</select>";var item=crossGetObject("TagMenu");if(item==null){item=dragableFloat("TagMenu",x,y,false,"divTag");}else{item.style.top=y;item.style.left=x;crossShowObject(crossGetObject("TagMenu"));}
crossWrite(item,html);crossGetObject("tags").size=arrayTags.length/2;gTagMenuTimer=setTimeout('hideTagMenu()',5000);}}else{hideTagMenu();}}
function hideTagMenu(){crossHideObject(crossGetObject("TagMenu"));gTagMenuFlag=false;}
function changeTag(selValue){document.regObjectForm.tag.value=selValue;hideTagMenu();}
var gTimeMenuFlag=false;var gTimeMenuTimer;function showTimeMenu(baseTime,div){if(!gTimeMenuFlag){gTimeMenuFlag=true;var pos_obj=getElemPos(crossGetObject(div));var x=pos_obj.x;var y=pos_obj.y+crossGetObject(div).offsetHeight;var year=0;var month=0;var date=0;var time="";if(div=="startTime"){year=parseInt(document.regObjectForm.startYear.value);month=parseInt(document.regObjectForm.startMonth.value)-1;date=parseInt(document.regObjectForm.startDate.value);time=document.regObjectForm.startTime.value;}else{year=parseInt(document.regObjectForm.endYear.value);month=parseInt(document.regObjectForm.endMonth.value)-1;date=parseInt(document.regObjectForm.endDate.value);time=document.regObjectForm.endTime.value;}
var basedStr=year+"/"+month+"/"+date+"/"+time;if(isNaN(getDateFromString(basedStr).getYear())){basedStr=year+"/"+month+"/"+date+"/"+baseTime;if(div=="startTime")
document.regObjectForm.startTime.value=baseTime;else
document.regObjectForm.endTime.value=baseTime;}
var menuName="";if(div=="startTime"){menuName="startTimeMenu";}else{menuName="endTimeMenu";}
var html="";if(is.firefox)
html+="<select id=\""+menuName+"\" name=\""+menuName+"\" onmouseout=\"gTimeMenuTimer = setTimeout('hideTimeMenu()', 5000);\" onmouseover=\"clearTimeout(gTimeMenuTimer);\" onChange=\"changeTime(this.value, '"+menuName+"');\">";else
html+="<select id=\""+menuName+"\" name=\""+menuName+"\" onMouseOut=\"javascript:hideTimeMenu();\" onmouseover=\"clearTimeout(gTimeMenuTimer);\" onChange=\"changeTime(this.value, '"+menuName+"');\">";var k=0;var basedDateObj=getDateFromString(basedStr);var thisDate=getDateFromString(getYear(basedDateObj.getYear())+"/"+basedDateObj.getMonth()+"/"+basedDateObj.getDate()+"/0:00");var nextday=new Date(thisDate.getTime()+(1000*60*60*24));for(var i=0;i<48;i++){var contDate=new Date(basedDateObj.getTime()+(1000*60*30)*i);if(contDate<nextday){k++;var strTime=getTime(contDate);if(div=="startTime"){html+="<option value=\""+strTime+"\">"+strTime+"</option>";}else{var s_year=parseInt(document.regObjectForm.startYear.value);var s_month=parseInt(document.regObjectForm.startMonth.value)-1;var s_date=parseInt(document.regObjectForm.startDate.value);var e_year=parseInt(document.regObjectForm.endYear.value);var e_month=parseInt(document.regObjectForm.endMonth.value)-1;var e_date=parseInt(document.regObjectForm.endDate.value);if(s_year==e_year&&s_month==e_month&&s_date==e_date){var s_time=document.regObjectForm.startTime.value;var e_time=document.regObjectForm.endTime.value;var s=getDateFromString(s_year+"/"+s_month+"/"+s_date+"/"+s_time).getTime();var e=getDateFromString(e_year+"/"+e_month+"/"+e_date+"/"+e_time).getTime();var sub_long=e-s;var sub=((1000*60*30)*i+sub_long)/(1000*60*60);if(sub>0)
html+="<option value=\""+strTime+"\">"+strTime+"　（"+my_round(sub,-1)+"時間）</option>";else
html+="<option value=\""+strTime+"\">"+strTime+"</option>";}else{html+="<option value=\""+strTime+"\">"+strTime+"</option>";}}}}
html+="</select>";var item=crossGetObject("TimeMenu");if(item==null){item=dragableFloat("TimeMenu",x,y,false,"divStartTime");}else{item.style.top=y;item.style.left=x;crossShowObject(crossGetObject("TimeMenu"));}
crossWrite(item,html);crossGetObject(menuName).size=k/2;gTimeMenuTimer=setTimeout('hideTimeMenu()',5000);}else{hideTimeMenu();}}
function hideTimeMenu(){crossHideObject(crossGetObject("TimeMenu"));gTimeMenuFlag=false;}
function changeTime(selValue,se){var today=new Date();if(se=="startTimeMenu"){document.regObjectForm.startTime.value=document.regObjectForm.startTimeMenu.value;var start=today.getYear()+"/"+today.getMonth()+"/"+today.getDate()+"/"+document.regObjectForm.startTimeMenu.value;var str=getTime(new Date(getDateFromString(start).getTime()+(1000*60*60)));document.regObjectForm.endTime.value=str;}else{document.regObjectForm.endTime.value=document.regObjectForm.endTimeMenu.value;}
crossHideObject(crossGetObject("TimeMenu"));}
function changePublishLevel(selValue){var obj=crossGetObject("divGroup");if(selValue==2){obj.style.display="block";crossShowObject(obj);}else{obj.style.display="none";crossHideObject(obj);}}
function changeAllDay(selObj){if(selObj.checked){crossHideObject(crossGetObject("divStartTime"));crossHideObject(crossGetObject("divEndTime"));}else{crossShowObject(crossGetObject("divStartTime"));crossShowObject(crossGetObject("divEndTime"));}}
function setSelectDay(strDate){var array=strDate.split("/");var yy=parseInt(array[0]);var mm=parseInt(array[1]);var dd=parseInt(array[2]);var time=array[3];var mm=mm+1;changeMonth(mm);document.regObjectForm.startYear.value=yy;document.regObjectForm.endYear.value=yy;document.regObjectForm.startMonth.value=mm;document.regObjectForm.endMonth.value=mm;document.regObjectForm.startDate.value=dd;document.regObjectForm.endDate.value=dd;}
function createObject(type,editFlag,editObjid){var name=document.regObjectForm.name.value;if(name==""){alert("名前を入力してください。");return;}
var startY=parseInt(document.regObjectForm.startYear.value);var startM=parseInt(document.regObjectForm.startMonth.value)-1;var startD=parseInt(document.regObjectForm.startDate.value);var startT=document.regObjectForm.startTime.value;var endY=parseInt(document.regObjectForm.endYear.value);var endM=parseInt(document.regObjectForm.endMonth.value)-1;var endD=parseInt(document.regObjectForm.endDate.value);var endT=document.regObjectForm.endTime.value;var strStart=startY+"/"+startM+"/"+startD+"/"+startT;var start=getDateFromString(strStart);var strEnd=endY+"/"+endM+"/"+endD+"/"+endT;var end=getDateFromString(strEnd);if(start>end){alert("日付を確認してください。");return;}
var publish=document.regObjectForm.publish.value;var group="";if(type!=OBJ_GROUP_SCHEDULE){var selObj=document.regObjectForm.group;var selNum=0;for(var i=0;i<selObj.options.length;i++){if(selObj.options[i].selected){group+=selObj.options[i].value+",";selNum++;}}
if(publish==2&&selNum<1){alert("グループを選択してください。");return;}else{group=group.substring(0,group.length-1);}}
var link=document.regObjectForm.link.value;var tag=document.regObjectForm.tag.value;var allday=false;if(document.regObjectForm.allday.checked)
allday=true;var desc=document.regObjectForm.description.value;var objid="";if(editFlag){objid=editObjid;updateObjectToDB(objid,type,name,strStart,strEnd,publish,group,link,tag,allday,desc);}else{registerObjectToDB(type,name,strStart,strEnd,publish,group,link,tag,allday,desc,"");}
if(type==OBJ_SCHEDULE){if(document.regObjectForm.useReminder.checked){var remindValue1=document.regObjectForm.selectReminder1.value;var remindTime1=getRemindTime(start,remindValue1);var remindValue2=document.regObjectForm.selectReminder2.value;var remindTime2="";if(remindValue2!=-1)
remindTime2=getRemindTime(start,remindValue2);var selMyObj=document.regObjectForm.reminderMyself;for(var i=0;i<selMyObj.options.length;i++){if(selMyObj.options[i].selected){var myAddr=selMyObj.options[i].value;registerReminderToDB(remindTime1,objid,myAddr,USER_TYPE_MYSELF);if(remindTime2!="")
registerReminderToDB(remindTime2,objid,myAddr,USER_TYPE_MYSELF);}}
var selGroupObj=document.regObjectForm.reminderGroup;for(var i=0;i<selGroupObj.options.length;i++){if(selGroupObj.options[i].selected){var groupNo=selGroupObj.options[i].value;registerReminderToDB(remindTime1,objid,groupNo,USER_TYPE_REGISTERED);if(remindTime2!="")
registerReminderToDB(remindTime2,objid,groupNo,USER_TYPE_REGISTERED);}}
var otherMailAddr=document.regObjectForm.reminderMailAddr.value;if(otherMailAddr!=""){registerReminderToDB(remindTime1,objid,otherMailAddr,USER_TYPE_NON_REGISTERED);if(remindTime2!="")
registerReminderToDB(remindTime2,objid,otherMailAddr,USER_TYPE_NON_REGISTERED);}}}
if(editFlag||(type!=OBJ_ALBUM&&type!=OBJ_FILE)){}}
function createObject(type,editFlag){var name=document.regObjectForm.name.value;var link="";if(document.regObjectForm.link!=null)
link=document.regObjectForm.link.value;var tag="";if(document.regObjectForm.tag!=null)
tag=document.regObjectForm.tag.value;if(name==""){alert("名前を入力してください。");return;}
if(getLength(name)>100){alert("名前の文字数を確認してください。");return;}
if(getLength(link)>300){alert("リンクの文字数を確認してください。");return;}
if(getLength(tag)>30){alert("タグの文字数を確認してください。");return;}
var array=tag.split(" ");if(array.length>1){alert("タグは1単語のみ指定してください。スペースが含まれると2単語以上になります。");return;}
if(type==OBJ_ALBUM&&!editFlag){var album0=crossGetObject("upFile[0]").value;if(album0==null||album0==""){alert("最低1つの写真を指定してください。");return;}
var comment0=crossGetObject("comment[0]").value;var comment1=crossGetObject("comment[1]").value;var comment2=crossGetObject("comment[2]").value;var comment3=crossGetObject("comment[3]").value;var comment4=crossGetObject("comment[4]").value;if(getLength(comment0)>120||getLength(comment1)>120||getLength(comment2)>120||getLength(comment3)>120||getLength(comment4)>120){alert("コメントの文字数を確認してください。");return;}}
if(type==OBJ_FILE&&!editFlag){var file=crossGetObject("upFile[0]").value;if(file==null||file==""){alert("ファイルを指定してください。");return;}}
var startY=parseInt(document.regObjectForm.startYear.value);var startM=parseInt(document.regObjectForm.startMonth.value)-1;var startD=parseInt(document.regObjectForm.startDate.value);var startT=document.regObjectForm.startTime.value;var endY=parseInt(document.regObjectForm.endYear.value);var endM=parseInt(document.regObjectForm.endMonth.value)-1;var endD=parseInt(document.regObjectForm.endDate.value);var endT=document.regObjectForm.endTime.value;var strStart=startY+"/"+startM+"/"+startD+"/"+startT;var start=getDateFromString(strStart);var strEnd=endY+"/"+endM+"/"+endD+"/"+endT;var end=getDateFromString(strEnd);if(start>end){alert("日付を確認してください。");return;}
if(type!=OBJ_GROUP_SCHEDULE){var publish=document.regObjectForm.publish.value;var selObj=document.regObjectForm.group;if(selObj!=null){var selNum=0;for(var i=0;i<selObj.options.length;i++){if(selObj.options[i].selected){selNum++;}}
if(publish==2&&selNum<1){alert("グループを選択してください。");return;}}}
if(type==OBJ_SCHEDULE||type==OBJ_GROUP_SCHEDULE){if(document.regObjectForm.useReminder.checked){var isOk=false;var selMyObj=document.regObjectForm.reminderMyself;for(var i=0;i<selMyObj.options.length;i++){if(selMyObj.options[i].selected){isOk=true;}}
var selGroupObj=document.regObjectForm.reminderGroup;for(var i=0;i<selGroupObj.options.length;i++){if(selGroupObj.options[i].selected){isOk=true;}}
var otherMailAddr=document.regObjectForm.reminderMailAddr.value;if(otherMailAddr!=""){isOk=true;}
if(!isOk){alert("リマインダーの通知先を指定してください。");return;}}}
document.regObjectForm.submit();}
function deleteObject(objid,groupNo,type){if(window.confirm("削除してもよろしいですか？")){deleteObjectFromDB(objid,groupNo,type);if(groupNo!=-1)
url="./group?no="+groupNo;else
url="./top";location.href=url;}}
function getRemindTime(start,remindValue){var startMSec=start.getTime()
var beforeMSec=gReminderTimeMin[remindValue]*60*1000;var sub=startMSec-beforeMSec;var date=new Date(sub);return getDateByString(date);}
function edit(start,end,publish,group){var array=start.split("/");var yy=array[0];var mm=parseInt(array[1])+1;var dd=parseInt(array[2]);var tt=array[3];document.regObjectForm.startYear.value=yy;document.regObjectForm.startMonth.value=mm;document.regObjectForm.startDate.value=dd;document.regObjectForm.startTime.value=tt;array=end.split("/");yy=array[0];mm=parseInt(array[1])+1;dd=parseInt(array[2]);tt=array[3];document.regObjectForm.endDate.value=dd;document.regObjectForm.endMonth.value=mm;document.regObjectForm.endYear.value=yy;document.regObjectForm.endTime.value=tt;changeAllDay(document.regObjectForm.allday);document.regObjectForm.publish.value=publish;if(publish==PUBLISH_LEVEL_GROUP){crossShowObject(crossGetObject("divGroup"));var grp_array=group.split(",");for(var i=0;i<grp_array.length;i++){for(var j=0;j<document.regObjectForm.group.length;j++){if(grp_array[i]==document.regObjectForm.group.options[j].value){document.regObjectForm.group.options[j].selected=true;}}}}}
function getLength(obj){var i,cnt=0;for(i=0;i<obj.length;i++)
if(escape(obj.charAt(i)).length>=4)cnt+=2;else cnt++;return cnt;}
function enabledReminder(){if(document.regObjectForm.useReminder.checked){document.regObjectForm.useReminder.value="true";document.regObjectForm.reminderTime1.disabled=false;document.regObjectForm.reminderTime2.disabled=false;document.regObjectForm.reminderMyself.disabled=false;document.regObjectForm.reminderGroup.disabled=false;document.regObjectForm.reminderMailAddr.disabled=false;}else{document.regObjectForm.useReminder.value="false";document.regObjectForm.reminderTime1.disabled=true;document.regObjectForm.reminderTime2.disabled=true;document.regObjectForm.reminderMyself.disabled=true;document.regObjectForm.reminderGroup.disabled=true;document.regObjectForm.reminderMailAddr.disabled=true;}}
function selectContinueSchedule(menu){var obj=crossGetObject("divContMenu");if(menu!=0){obj.style.display="block";crossShowObject(obj);var objDur=crossGetObject("divContDuration");if(menu==2||menu==3||menu==4){objDur.style.display="none";crossHideObject(objDur);document.regObjectForm.contDuration.value=1;}else{objDur.style.display="block";crossShowObject(objDur);}
var unit="日";if(menu==5)
unit="週";else if(menu==6)
unit="月";else if(menu==7)
unit="年";crossWrite(crossGetObject("spanDurationUnit"),unit);}else{obj.style.display="none";crossHideObject(obj);}}
var gEnterSchedule=false;function inputSchedule(cell,calType,type,groupNo){gEnterSchedule=true;var WINDOW_WIDTH=400;var x=getMouseX()-5;var y=getMouseY()-5;if((x+WINDOW_WIDTH)>=(window.screen.width-100)){x=window.screen.width-(WINDOW_WIDTH+100);}
var date=gUserCal.getDateFromCellNum(cell);var str_date=getYear(date.getYear())+"/"+date.getMonth()+"/"+date.getDate()+"/0:00";var html="<form name='formSchedule' onSubmit='return false'>";html+="<table cellpadding='0' cellspacing='0' width='320px'>";html+="<tr>";html+="<td bgcolor='skyblue' height='25'>&nbsp;<img src='images/schedule.gif' border='0'>&nbsp;<font color='white'><b>"+getYear(date.getYear())+"/"+(date.getMonth()+1)+"/"+date.getDate()+"のスケジュールを入力</b</font></td>";html+="<td align='right' bgcolor='skyblue'><a href='javascript:hideSchedule()'><img src='images/close.gif' border='0'></a>&nbsp;</td>";html+="</tr>";html+="</table>";html+="<table>";html+="<tr><td colspan='2' align='center'><input type='text' name='content' size='45' style='width: 300px;' onkeypress='enterSchedule(event||window.event, "+cell+", "+calType+", "+type+");'></td></tr>";html+="<tr><td colspan='2'>例:</td></tr>";html+="<tr><td colspan='2' style='padding-left: 10px;'>旅行<br>8:00-10:30　会議<br>9:00　ドライブ<br></td></tr>";html+="<tr><td colspan='2'><input type='button' name='inputBtn' value='スケジュールを作成' onClick=\"addSchedule("+cell+", "+calType+", "+type+");\">";if(type==OBJ_SCHEDULE){html+="&nbsp;&nbsp;<a href='./newobj?type="+OBJ_SCHEDULE+"&cal_type="+calType+"&select_date="+str_date+"&edit=0'><b>スケジュールの詳細を入力</b></a></td></tr>";}else if(type==OBJ_GROUP_SCHEDULE){html+="&nbsp;&nbsp;<a href='./newobj?type="+OBJ_GROUP_SCHEDULE+"&cal_type="+calType+"&select_date="+str_date+"&groupNo="+groupNo+"&edit=0'><b>スケジュールの詳細を入力</b></a></td></tr>";}
html+="</table>";html+="</form>";var item=crossGetObject("inputSchedule");if(item==null){item=dragableFloat("inputSchedule",x,y,true,null);}else{item.style.top=y;item.style.left=x;crossShowObject(crossGetObject("inputSchedule"));}
changeClass(item.id,"memo");crossWrite(item,html);crossHideObject(crossGetObject("divNewObjMenu"));document.formSchedule.content.focus();}
function hideSchedule(){crossHideObject(crossGetObject("inputSchedule"));}
function enterSchedule(evt,cell,calType,type){if(gEnterSchedule&&evt.keyCode==13){addSchedule(cell,calType,type);gEnterSchedule=false;}}
function addSchedule(cell,calType,type){var content=document.formSchedule.content.value;if(content==""){alert("スケジュールを入力してください。");return;}
var allday=false;var title="";var start="";var end="";var date=gUserCal.getDateFromCellNum(cell);var strDate=getYear(date.getYear())+"/"+date.getMonth()+"/"+date.getDate();var time=parseTime(content)+"";if(time!=null&&time!=""){start=strDate+"/"+time;end=getDateByString(new Date(getDateFromString(start).getTime()+(1000*60*60)));if(time.indexOf("-")!=-1){if(time.indexOf(" - ")!=-1){var str=time.split(" - ");start=strDate+"/"+str[0];end=strDate+"/"+str[1];}else if(time.indexOf("-")!=-1){var str=time.split("-");start=strDate+"/"+str[0];end=strDate+"/"+str[1];}else{alert("入力データが正しくありません。\n\"-\"の前後に無効な文字またはスペースがありませんか？");return;}}
var i=content.indexOf(time);if(i==0)
title=content.substring(time.length+1,content.length);else
title=content.substring(0,i);}else{start=strDate+"/0:00";end=strDate+"/0:00";title=content;allday=true;}
if(title==""){alert("タイトルを入力してください。");return;}
var s=getDateFromString(start);var e=getDateFromString(end);if(s>e){end=getDateByString(new Date(e.getTime()+(1000*60*60*24)));}
if(type==OBJ_SCHEDULE){registerObjectToDB(OBJ_SCHEDULE,title,start,end,PUBLISH_LEVEL_PRIVATE,"","","",allday,"");}else if(type==OBJ_GROUP_SCHEDULE){var groupNo=crossGetObject("groupNo").value;registerGroupObjectToDB(OBJ_GROUP_SCHEDULE,title,start,end,PUBLISH_LEVEL_GROUP,groupNo,"","",allday,"",groupNo);}
hideSchedule();}
function parseTime(content){var rObj1=new RegExp("[0-2][0-9]:[0-5][0-9]");var rObj2=new RegExp("[0-9]:[0-5][0-9]");var rObj3=new RegExp("[0-2][0-9] : [0-5][0-9]");var rObj4=new RegExp("[0-9] : [0-5][0-9]");var rObj5=new RegExp("[0-2][0-9]:[0-5][0-9]-[0-2][0-9]:[0-5][0-9]");var rObj6=new RegExp("[0-2][0-9]:[0-5][0-9]-[0-9]:[0-5][0-9]");var rObj7=new RegExp("[0-9]:[0-5][0-9]-[0-9]:[0-5][0-9]");var rObj8=new RegExp("[0-9]:[0-5][0-9]-[0-1][0-9]:[0-5][0-9]");var rObj9=new RegExp("[0-2][0-9]:[0-5][0-9] - [0-2][0-9]:[0-5][0-9]");var rObj10=new RegExp("[0-2][0-9]:[0-5][0-9] - [0-9]:[0-5][0-9]");var rObj11=new RegExp("[0-9]:[0-5][0-9] - [0-9]:[0-5][0-9]");var rObj12=new RegExp("[0-9]:[0-5][0-9] - [0-1][0-9]:[0-5][0-9]");var time="";if(content.match(rObj1)){time=content.match(rObj1);}else if(content.match(rObj2)){time=content.match(rObj2);}else if(content.match(rObj3)){time=content.match(rObj3);}else if(content.match(rObj4)){time=content.match(rObj4);}
if(content.match(rObj5)){time=content.match(rObj5);}else if(content.match(rObj6)){time=content.match(rObj6);}else if(content.match(rObj7)){time=content.match(rObj7);}else if(content.match(rObj8)){time=content.match(rObj8);}else if(content.match(rObj9)){time=content.match(rObj9);}else if(content.match(rObj10)){time=content.match(rObj10);}else if(content.match(rObj11)){time=content.match(rObj11);}else if(content.match(rObj12)){time=content.match(rObj12);}
return time}
var STORE_NAME="logly_offline_store";var db;var gOffline=false;var filesToCapture=[location.pathname,'/'];function doOnlineOffline(){if(!is.ie&&!is.firefox){crossWrite(crossGetObject("mode"),"");return;}
var mode="<img src='./images/off-connected-syncing.gif'>";crossWrite(crossGetObject("mode"),mode);var isOffline=checkOffline();if(isOffline){var mode="<a href='#' onclick='javascript:initOnline();'><img src='./images/off-disconnected.gif' alt='現在オフラインモードで動作しています。オンラインモードへ切り替えます。'></a>";crossWrite(crossGetObject("mode"),mode);disabledLink();disabledButton();}else{var mode="<a href='#' onclick='javascript:initOffline();'><img src='./images/off-connected-synced.gif' alt='現在オンラインモードで動作しています。オフラインモードへ切り替えます。'></a>";crossWrite(crossGetObject("mode"),mode);}}
function initOffline(){if(!window.google||!google.gears){var msg="loglyカレンダーのオフライン機能を利用するためには、Google Gearsが必要です。右のInstall Google Gearsから、インストールしてください。";location.href="http://gears.google.com/?action=install&message="+msg+"&return=http://logly.jp/";}
showStatus("オフラインモードに切り替えています．．．");var mode="<img src='./images/off-connected-syncing.gif'>";crossWrite(crossGetObject("mode"),mode);var localServer=google.gears.factory.create("beta.localserver","1.0");var store=localServer.createStore(STORE_NAME);var storeM=localServer.createManagedStore(STORE_NAME);try{store.capture(filesToCapture,captureCallback);storeM.manifestUrl='./gears/manifest.json';storeM.checkForUpdate();var timerId=window.setInterval(function(){if(storeM.currentVersion){window.clearInterval(timerId);}},500);}catch(ex){}
initLogly();disabledLink();disabledButton();var mode="<a href='#' onclick='javascript:initOnline();'><img src='./images/off-disconnected.gif'　alt='現在オフラインモードで動作しています。オンラインモードへ切り替えます。'></a>";crossWrite(crossGetObject("mode"),mode);gOffline=true;hideStatus();}
function testResource(){var localServer=google.gears.factory.create("beta.localserver","1.0");var store=localServer.createStore(STORE_NAME);for(var i=0;i<filesToCapture.length;i++){alert(filesToCapture[i]+"-->"+store.isCaptured(filesToCapture[i]));}}
function initOnline(){showStatus("オンラインモードに切り替えています．．．");var mode="<a href='#' onclick='javascript:initOffline();'><img src='./images/off-connected-synced.gif'></a>";crossWrite(crossGetObject("mode"),mode);gOffline=false;location.href="./top";}
function uncapture(){var localServer=google.gears.factory.create("beta.localserver","1.0");var store=localServer.createStore(STORE_NAME);if(!store){return;}
for(var i=0;i<filesToCapture.length;i++){store.remove(filesToCapture[i]);}
localServer.removeStore(STORE_NAME);}
function captureCallback(url,success,captureId){}
function initLogly(){try{db=google.gears.factory.create('beta.database','1.0');}catch(ex){}
if(db){db.open('logly');db.execute('create table if not exists object ('+'no integer primary key autoincrement,'+'class_no integer not null,'+'type_no integer not null,'+'name varchar(200) not null,'+'create_date integer not null,'+'update_date integer not null,'+'start_date integer not null,'+'end_date integer not null,'+'allday integer not null,'+'publish_no integer not null,'+'link varchar(200) not null,'+'tag varchar(200) not null,'+'description text not null,'+'userid varchar(100) not null,'+'objid varchar(200) not null unique,'+'extra varchar(300) not null'+')');var today=new Date();var first=moveDate(today,-today.getDay());first.setHours(0);first.setMinutes(0);first.setSeconds(0);var from=moveDate(first,-62);var to=moveDate(first,62);to.setHours(23);to.setMinutes(59);to.setSeconds(59);saveOfflineObject(getDateByString(from),getDateByString(to));}}
function saveOfflineObject(from,to){showWaitTip();var myuserid=crossGetObject("userid").value;var req="&userid="+myuserid+"&fromDate="+from+"&toDate="+to;sendRequest(savedOfflineObject,req,"POST","./loadobj",true,true);}
function savedOfflineObject(obj){hideWaitTip();var xmlDoc=obj.responseXML;var text=obj.responseText;if(text!=""){var objects=xmlDoc.getElementsByTagName("object");for(var i=0;i<objects.length;i++){var parsedObj=new ParseObject(objects[i]);db.execute("insert into object ("+"class_no, "+"type_no, "+"name, "+"create_date, "+"update_date, "+"start_date, "+"end_date, "+"allday, "+"publish_no, "+"link, "+"tag, "+"description, "+"userid, "+"objid, "+"extra "+") "+"values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)",[parsedObj.class_no,parsedObj.type_no,parsedObj.name,getDateFromString(parsedObj.create_date).getTime(),getDateFromString(parsedObj.update_date).getTime(),getDateFromString(parsedObj.start_date).getTime(),getDateFromString(parsedObj.end_date).getTime(),parsedObj.allday,parsedObj.publish_no,parsedObj.link,parsedObj.tag,parsedObj.desc,parsedObj.userid,parsedObj.objid,parsedObj.extra]);}}}
function loadOfflineObject(from,to,type){showWaitTip();try{db=google.gears.factory.create('beta.database','1.0');}catch(ex){return;}
if(db){db.open('logly');var f=getDateFromString(from).getTime();var t=getDateFromString(to).getTime();var query="select * from object "+"where start_date <= "+t+" "+"and end_date >="+f+" ";if(type!=null)query+="and type_no="+type+" ";query+="order by start_date";var rs=db.execute(query);if(type==OBJ_MEMO)
var memos=new Vector();try{while(rs.isValidRow()){var userid=rs.fieldByName("userid");var objid=rs.fieldByName("objid");var class_no=rs.fieldByName("class_no");var type_no=rs.fieldByName("type_no");var name=rs.fieldByName("name");var start_date=getDateByString(new Date(rs.fieldByName("start_date")));var end_date=getDateByString(new Date(rs.fieldByName("end_date")));var create_date=getDateByString(new Date(rs.fieldByName("create_date")));var update_date=getDateByString(new Date(rs.fieldByName("update_date")));var allday=rs.fieldByName("allday");var publish_no=rs.fieldByName("publish_no");var link=rs.fieldByName("link");var tag=rs.fieldByName("tag");var desc=rs.fieldByName("description");var extra=rs.fieldByName("extra");var group="";if(type==OBJ_LIFE){var lifeObj=new LifelogObject(desc);var comments=false;var date=start_date;var sleepTime=parseFloat(lifeObj.sleepTime);var sleepNum=parseInt(lifeObj.sleepNum);var workTime=parseFloat(lifeObj.workTime);var workNum=parseInt(lifeObj.workNum);var playTime=parseFloat(lifeObj.playTime);var playNum=parseInt(lifeObj.playNum);var sportsTime=parseFloat(lifeObj.sportsTime);var sportsNum=parseInt(lifeObj.sportsNum);var breakfirst=lifeObj.breakfirst;var lunch=lifeObj.lunch;var dinner=lifeObj.dinner;var sweets=lifeObj.sweets;var drink=lifeObj.drink;var eatNum=parseInt(lifeObj.eatNum);var conditionFace=parseInt(lifeObj.conditionFace);var conditionNum=parseInt(lifeObj.conditionNum);var todayComment=lifeObj.todayComment;showTodaySatisfactionChart(userid,objid,date,sleepTime,sleepNum,workTime,workNum,playTime,playNum,sportsTime,sportsNum,breakfirst,lunch,dinner,sweets,drink,eatNum,conditionFace,conditionNum,todayComment,comments);}else if(type==OBJ_MEMO){var parsedObj=new ParseOfflineObject(class_no,userid,objid,class_no,type_no,create_date,update_date,start_date,end_date,name,allday,publish_no,"",link,tag,desc,false,extra);memos.addElement(parsedObj);}else{showObject(class_no,userid,objid,type_no,name,start_date,end_date,publish_no,group,link,tag,allday,desc,false,extra);}
rs.next();}}finally{if(rs)rs.close();}
if(type==OBJ_MEMO)
showMemo(memos);}
hideWaitTip();}
function disabledLink(){var addClassName="offline";var elmsAnchor=document.getElementsByTagName("a");var index=location.href.indexOf("top");for(var i=0;i<elmsAnchor.length;i++){var elmAnchor=elmsAnchor.item(i);if((elmAnchor.href!=location.href.substring(0,index)&&elmAnchor.href.indexOf("/top")==-1&&elmAnchor.href.indexOf("loadMemo")==-1&&elmAnchor.href.indexOf("loadTodayLife")==-1&&elmAnchor.href.indexOf("rule.html")==-1&&elmAnchor.href.indexOf("privacy.html")==-1&&elmAnchor.href.indexOf("api.html")==-1)||(elmAnchor.href.indexOf("/top?tab")!=-1)){elmAnchor.removeAttribute("href");if(is.ie)
elmAnchor.setAttribute("onclick",new Function("offlineAlert();"));else if(is.firefox)
elmAnchor.setAttribute("onclick","offlineAlert();");if(addClassName){elmAnchor.className=addClassName;}}}}
function disabledButton(){document.formSearchObj.btnSearch.disabled=true;crossGetObject("newObjButton").disabled=true;crossGetObject("edtObjButton").disabled=true;crossGetObject("delObjButton").disabled=true;crossGetObject("copy_button").disabled=true;crossGetObject("paste_button").disabled=true;}
function checkOffline(){try{sendRequest(test,"&test=test","POST","./loadobj",false,true);}catch(ex){var localServer=google.gears.factory.create("beta.localserver","1.0");var store=localServer.createStore(STORE_NAME);if(!store)
return false;else
return true;}
return false;}
function isConnection(){try{sendRequest(test,"&test=test","POST","./loadobj",false,true);}catch(ex){return false;}
return true;}
function test(){}
function offlineAlert(){showAlert("オフラインモードで動作しています。\nオンラインに切り替えるには、上部の矢印のアイコンを選択するか、下のボタンを押してください。");}
function showAlert(msg){var WINDOW_WIDTH=400;var WINDOW_HEIGHT=300;var x=(window.screen.width/2)-(WINDOW_WIDTH/2);var y=(window.screen.height/2)-(WINDOW_HEIGHT/2);var html="<table cellpadding='0' cellspacing='0' width='"+WINDOW_WIDTH+"'><tr><td>"
html+="<table width='100%' cellpadding='0' cellspacing='0'><tr><td bgcolor='skyblue' height='25'>&nbsp;<img src='images/off-disconnected.gif' border='0'>&nbsp;<font color='white'><b>オフラインモードで動作しています</b</font></td><td bgcolor='skyblue' align='right'><a href='javascript:hideAlert()'><img src='images/close.gif' border='0'></a>&nbsp;</td></tr></table>";html+="<table cellspacing='10'><tr><td>";html+="<p>";html+=msg;html+="</p>";html+="</td></tr>";html+="<tr><td align='right'>";if(isConnection())
html+="<input type='button' id='btnChangeToOnline' name='btnChangeToOnline' value='オンラインに切り替える' style='width: 140px;' onClick='initOnline();'>";else
html+="<input disabled type='button' id='btnChangeToOnline' name='btnChangeToOnline' value='オンラインに切り替える' style='width: 140px;' onClick='initOnline();'>";html+="&nbsp;&nbsp;";html+="<input type='button' id='btnStayOffline' name='btnStayOffline' value='オフラインのままにする' style='width: 140px;' onClick='hideAlert();'>";html+="</td></tr></table>";html+="</td></tr></table>";var item=crossGetObject("alert");if(item==null){item=dragableFloat("alert",x,y,false,null);}else{crossShowObject(crossGetObject("alert"));crossGetObject("alert").style.left=x;crossGetObject("alert").style.top=y;}
changeClass(item.id,"memo");crossWrite(item,html);}
function hideAlert(){crossHideObject(crossGetObject("alert"));}
function showStatus(msg){var WINDOW_WIDTH=150;var WINDOW_HEIGHT=50;var pos_obj=getElemPos(crossGetObject("mode"));var x=pos_obj.x;var y=pos_obj.y+crossGetObject("mode").offsetHeight;var html="<table cellpadding='0' cellspacing='0' width='"+WINDOW_WIDTH+"'><tr><td>"
html+="<table cellspacing='10'><tr><td>";html+="<p>";html+=msg;html+="</p>";html+="</td></tr></table>";html+="</td></tr></table>";var item=crossGetObject("status");if(item==null){item=dragableFloat("status",x,y,false,null);}else{crossShowObject(crossGetObject("status"));crossGetObject("status").style.left=x;crossGetObject("status").style.top=y;}
changeClass(item.id,"memo");crossWrite(item,html);}
function hideStatus(){crossHideObject(crossGetObject("status"));}
function chkAjaBrowser()
{var a,ua=navigator.userAgent;this.bw={safari:((a=ua.split('AppleWebKit/')[1])?a.split('(')[0]:0)>=124,konqueror:((a=ua.split('Konqueror/')[1])?a.split(';')[0]:0)>=3.3,mozes:((a=ua.split('Gecko/')[1])?a.split(" ")[0]:0)>=20011128,opera:(!!window.opera)&&((typeof XMLHttpRequest)=='function'),msie:(!!window.ActiveXObject)?(!!createHttpRequest()):false}
return(this.bw.safari||this.bw.konqueror||this.bw.mozes||this.bw.opera||this.bw.msie)}
function chkAjaBrowser()
{var a,ua=navigator.userAgent;this.bw={safari:((a=ua.split('AppleWebKit/')[1])?a.split('(')[0]:0)>=124,konqueror:((a=ua.split('Konqueror/')[1])?a.split(';')[0]:0)>=3.3,mozes:((a=ua.split('Gecko/')[1])?a.split(" ")[0]:0)>=20011128,opera:(!!window.opera)&&((typeof XMLHttpRequest)=='function'),msie:(!!window.ActiveXObject)?(!!createHttpRequest()):false}
return(this.bw.safari||this.bw.konqueror||this.bw.mozes||this.bw.opera||this.bw.msie)}
function createHttpRequest()
{if(window.ActiveXObject){try{return new ActiveXObject("Msxml2.XMLHTTP");}catch(e){try{return new ActiveXObject("Microsoft.XMLHTTP");}catch(e2){return null;}}}else if(window.XMLHttpRequest){return new XMLHttpRequest();}else{return null;}}
function sendRequest(callback,data,method,url,async,sload,user,password)
{var oj=createHttpRequest();if(oj==null)return null;var sload=(!!sendRequest.arguments[5])?sload:false;if(sload||method.toUpperCase()=='GET')url+="?";if(sload)url=url+"t="+(new Date()).getTime();var bwoj=new chkAjaBrowser();var opera=bwoj.bw.opera;var safari=bwoj.bw.safari;var konqueror=bwoj.bw.konqueror;var mozes=bwoj.bw.mozes;if(typeof callback=='object'){var callback_onload=callback.onload
var callback_onbeforsetheader=callback.onbeforsetheader}else{var callback_onload=callback;var callback_onbeforsetheader=null;}
if(opera||safari||mozes){oj.onload=function(){callback_onload(oj);}}else{oj.onreadystatechange=function()
{if(oj.readyState==4){callback_onload(oj);}}}
data=uriEncode(data)
if(method.toUpperCase()=='GET'){url+=data}
oj.open(method,url,async,user,password);if(!!callback_onbeforsetheader)callback_onbeforsetheader(oj)
setEncHeader(oj)
oj.send(data);function setEncHeader(oj){var contentTypeUrlenc='application/x-www-form-urlencoded; charset=UTF-8';if(!window.opera){oj.setRequestHeader('Content-Type',contentTypeUrlenc);}else{if((typeof oj.setRequestHeader)=='function')
oj.setRequestHeader('Content-Type',contentTypeUrlenc);}
return oj}
function uriEncode(data){if(data!=""){var encdata='';var datas=data.split('&');for(i=1;i<datas.length;i++)
{var dataq=datas[i].split('=');encdata+='&'+encodeURIComponent(dataq[0])+'='+encodeURIComponent(dataq[1]);}}else{encdata="";}
return encdata;}
return oj}
Hashtable.prototype.hash=null;Hashtable.prototype.keys=null;Hashtable.prototype.location=null;function Hashtable(){this.hash=new Array();this.keys=new Array();this.location=0;}
Hashtable.prototype.put=function(key,value){if(value==null)
return;if(this.hash[key]==null)
this.keys[this.keys.length]=key;this.hash[key]=value;}
Hashtable.prototype.get=function(key){return this.hash[key];}
Hashtable.prototype.remove=function(key){for(var i=0;i<this.keys.length;i++){if(key==this.keys[i]){this.hash[this.keys[i]]=null;this.keys.splice(i,1);return;}}}
Hashtable.prototype.size=function(){return this.keys.length;}
Hashtable.prototype.populateItems=function(){}
Hashtable.prototype.next=function(){if(++this.location<this.keys.length)
return true;else
return false;}
Hashtable.prototype.moveFirst=function(){try{this.location=-1;}catch(e){}}
Hashtable.prototype.moveLast=function(){try{this.location=this.keys.length-1;}catch(e){}}
Hashtable.prototype.getKey=function(){try{return this.keys[this.location];}catch(e){return null;}}
Hashtable.prototype.getValue=function(){try{return this.hash[this.keys[this.location]];}catch(e){return null;}}
Hashtable.prototype.getKeyOfValue=function(value){for(var i=0;i<this.keys.length;i++)
if(this.hash[this.keys[i]]==value)
return this.keys[i]
return null;}
Hashtable.prototype.toString=function(){try{var s=new Array(this.keys.length);s[s.length]="{";for(var i=0;i<this.keys.length;i++){s[s.length]=this.keys[i];s[s.length]="=";var v=this.hash[this.keys[i]];if(v)
s[s.length]=v.toString();else
s[s.length]="null";if(i!=this.keys.length-1)
s[s.length]=", ";}}catch(e){}finally{s[s.length]="}";}
return s.join("");}
Hashtable.prototype.add=function(ht){try{ht.moveFirst();while(ht.next()){var key=ht.getKey();this.hash[key]=ht.getValue();if(this.get(key)!=null){this.keys[this.keys.length]=key;}}}catch(e){}finally{return this;}};var ballonBack="#00ff77";var ballonText="#666666";var ballonBreite=200;var ballonBorder=1;var ballonFont="Arial";var ballonDir=0;var ballonVDir=0;var ballonChangeVDir=65;var ballonSpace=10;var ballonShow=false;var Ballon=null;var b_Breite;var b_Dir,b_VDir;function setBallon(id,breite,bgcolor){if(breite&&breite>20)b_Breite=breite;if(bgcolor)ballonBack=bgcolor;Ballon=crossGetObject(id);if(Ballon==null){showBallon=noBallon;hideBallon=noBallon;}
ballonShow=false;}
function noBallon(){}
function showBallon(msg,dir,breite,bgcolor,text_color){var b_Back,b_Text;var relWidth,relHeight;if(Ballon==null)return;if(breite&&breite>20)b_Breite=breite;else b_Breite=ballonBreite;if(bgcolor)b_Back=bgcolor;else b_Back=ballonBack;if(text_color)b_Text=text_color;else b_Text=ballonText;msg='<table width='+b_Breite+' border=0 cellpadding='+ballonBorder+' cellspacing=0 bgcolor=\"'+ballonText+'\"><tr><td><table width=100% border=0 cellpadding=3 cellspacing=0 bgcolor=\"'+b_Back+'\"><tr><td><font face=\"'+ballonFont+'\" color=\"'+b_Text+'\" size=-1>'+msg+'</font></td></tr></table></td></tr></table>';if(!dir)b_Dir=ballonDir;else b_Dir=dir;relWidth=crossInnerWindowWidth()+crossGetScroll("x");relHeight=crossInnerWindowHeight()+crossGetScroll("y");if(crossMouseX+b_Breite+ballonSpace>relWidth)
{b_Dir=1;}
else if(crossMouseX<b_Breite+ballonSpace)b_Dir=0;b_VDir=ballonVDir;if(crossMouseY+ballonChangeVDir>relHeight)b_VDir=1;else if(crossMouseY-ballonChangeVDir<0)b_VDir=0;crossWrite(Ballon,msg);ballonShow=true;Ballon.style.zIndex=500;crossShowObject(Ballon);}
function hideBallon(){if(Ballon==null)return;crossHideObject(Ballon);ballonShow=false;crossMoveTo(Ballon,-200,0);}
function cursorMove(e){var posX,posY;crossMousePosition(e);if(ballonShow){if(b_Dir==0){posX=crossMouseX+ballonSpace;if(b_VDir==0){posY=crossMouseY+ballonSpace;}
else{posY=crossMouseY-ballonChangeVDir;}}
else{posX=crossMouseX-b_Breite-ballonSpace;if(b_VDir==0){posY=crossMouseY+ballonSpace;}
else{posY=crossMouseY-ballonChangeVDir;}}
crossMoveTo(Ballon,posX,posY)}}
var B_Type=new crossBrowserType();function changeClass(itemid,c){if(crossGetObject(itemid)!=null){crossGetObject(itemid).className=c;}}
function showWaitTip(){x=window.screen.width/2;y=(window.screen.height/2)-100;var pos_obj=getElemPos(crossGetObject("LoginMenuBarUserid"));var x=pos_obj.x+crossGetObject("LoginMenuBarUserid").offsetWidth;var y=pos_obj.y;var item=crossGetObject("WaitTip");if(item==null){item=dragableFloat("WaitTip",x,y,false,null);item.style.backgroundColor="#FF0000";item.style.fontSize="12px";item.style.color="#EEEEEE";crossWrite(item,"&nbsp;読み込み中...&nbsp;");}else{crossShowObject(crossGetObject("WaitTip"));crossGetObject("WaitTip").style.left=x;crossGetObject("WaitTip").style.top=y;}}
function hideWaitTip(){crossHideObject(crossGetObject("WaitTip"));}
function openMenu(titleIconId,titleId,contentId){var titleIconObj=crossGetObject(titleIconId);var str="&nbsp;<a href=\"javascript:closeMenu('"+titleIconId+"', '"+titleId+"', '"+contentId+"')\"><img src='images/title_open.gif' border='0'></a>&nbsp;";crossWrite(titleIconObj,str);var contentObj=crossGetObject(contentId);contentObj.style.display="block";changeClass(titleIconId,"contextTitleIconOpenCol");if(titleId=="searchMenuTitle"){var type=document.formSearchObj.searchTabType.value;if(type=="object"){changeClass(titleId+"1","tableTabOn");changeClass(titleId+"2","tableTabOff");}else if(type=="user"){changeClass(titleId+"1","tableTabOff");changeClass(titleId+"2","tableTabOn");}}else{changeClass(titleId,"contextTitleOpen");}}
function closeMenu(titleIconId,titleId,contentId){var titleIconObj=crossGetObject(titleIconId);var str="&nbsp;<a href=\"javascript:openMenu('"+titleIconId+"', '"+titleId+"', '"+contentId+"')\"><img src='images/title_closed.gif' border='0'></a>&nbsp;";crossWrite(titleIconObj,str);var contentObj=crossGetObject(contentId);contentObj.style.display="none";changeClass(titleIconId,"contextTitleIconClosedCol");if(titleId=="searchMenuTitle"){var type=document.formSearchObj.searchTabType.value;if(type=="object"){changeClass(titleId+"1","tableTabOnClosed");changeClass(titleId+"2","tableTabOffClosed");}else if(type=="user"){changeClass(titleId+"1","tableTabOffClosed");changeClass(titleId+"2","tableTabOnClosed");}}else{changeClass(titleId,"contextTitleClosed");}}
function crossBrowserType(){this.IE=false;this.NS4=false;this.NS6=false;this.id="";if(document.all){this.IE=true;this.id="IE";}
if(document.getElementById){this.NS6=true;this.id="NS6";}
else if(document.layers){this.NS4=true;this.id="NS4";}}
var crossMouseX,crossMouseY;if(B_Type.NS4)document.captureEvents(Event.MOUSEMOVE);function crossMousePosition(e){if(B_Type.IE){crossMouseX=event.clientX+document.body.scrollLeft;crossMouseY=event.clientY+document.body.scrollTop;}
else{crossMouseX=e.pageX;crossMouseY=e.pageY;}}
function crossGetObject(id){var obj=null;if(B_Type.IE)obj=document.all(id);else if(B_Type.NS6)obj=document.getElementById(id);else if(B_Type.NS4)obj=document.layers[id];return obj;}
function crossWrite(obj,text){if(B_Type.IE)obj.innerHTML=text;else if(B_Type.NS6)obj.innerHTML=text;else if(B_Type.NS4){obj.document.open();obj.document.write(text);obj.document.close();}}
function crossInnerWindowWidth(){var val;if(B_Type.IE)val=document.body.clientWidth;else if(B_Type.NS6)val=window.innerWidth;else if(B_Type.NS4)val=window.innerWidth;return val;}
function crossOuterWindowWidth(){var val;if(B_Type.IE)val=document.body.offsetWidth;else if(B_Type.NS6)val=window.outerWidth;else if(B_Type.NS4)val=window.outerWidth;return val;}
function crossInnerWindowHeight(){var val;if(B_Type.IE)val=document.body.clientHeight;else if(B_Type.NS6)val=window.innerHeight;else if(B_Type.NS4)val=window.innerHeight;return val;}
function crossGetScroll(achse){var val;if(!achse||achse=="y"){if(B_Type.IE)val=document.body.scrollTop;else if(B_Type.NS6)val=window.pageYOffset;else if(B_Type.NS4)val=window.pageYOffset;}
else{if(B_Type.IE)val=document.body.scrollLeft;else if(B_Type.NS6)val=window.pageXOffset;else if(B_Type.NS4)val=window.pageXOffset;}
return val;}
function crossSetScroll(x,y){window.scrollTo(x,y);}
function crossMoveTo(obj,x,y){if(B_Type.IE){obj.style.pixelLeft=x;obj.style.pixelTop=y;}
else if(B_Type.NS4){obj.left=x;obj.top=y;}
else if(B_Type.NS6){obj.style.left=x+"px";obj.style.top=y+"px";}}
function crossGetPositionX(obj){if(B_Type.IE)return obj.style.pixelLeft;else if(B_Type.NS4)return obj.left;else if(B_Type.NS6)return parseInt(obj.style.left);}
function crossGetPositionY(obj){if(B_Type.IE)return obj.style.pixelTop;else if(B_Type.NS4)return obj.top;else if(B_Type.NS6)return parseInt(obj.style.top);}
function crossShowObject(obj){if(B_Type.IE||B_Type.NS6){obj.style.visibility="visible";}
else if(B_Type.NS4){obj.visibility="show";}}
function crossHideObject(obj){if(B_Type.IE||B_Type.NS6){obj.style.visibility="hidden";}
else if(B_Type.NS4){obj.visibility="hide";}}
function crossBackgroundColor(color,obj){if(typeof obj=="undefined"){document.bgColor=color;return;}
if(B_Type.IE||B_Type.NS6){obj.style.backgroundColor=color;}
else if(B_Type.NS4){obj.document.bgColor=color;}}
function crossBackgroundImage(obj,img){if(B_Type.IE||B_Type.NS6){obj.style.backgroundImage="url("+img+")";}
else if(B_Type.NS4){obj.background.src=img;}}
function getElemPos(elem){var obj=new Object();obj.x=elem.offsetLeft;obj.y=elem.offsetTop;while(elem.offsetParent){elem=elem.offsetParent;obj.x+=elem.offsetLeft;obj.y+=elem.offsetTop;}
return obj;}
var Wx=0;var Wy=0;var spannam1="span1";if(document.layers)document.captureEvents(Event.MOUSEMOVE);document.onmousedown=m_pos;function m_pos(event0){if(navigator.appName.charAt(0)=="M"){Et=event.type;Sx=event.screenX;Sy=event.screenY;Wx=document.body.scrollLeft+event.clientX;Wy=document.body.scrollTop+event.clientY;}else if(navigator.appName.charAt(0)=="N"){Et=event0.type;Sx=event0.screenX;Sy=event0.screenY;Wx=event0.pageX;Wy=event0.pageY;}else{Et=event.type;Sx=event.screenX;Sy=event.screenY;Wx=document.body.scrollLeft+event.clientX;Wy=document.body.scrollTop+event.clientY;}}
function getMouseX(){return Wx;}
function getMouseY(){return Wy;}
function getYear(yy){if(yy<2000){yy+=1900;}
return yy;}
function getTime(dat){var hh=dat.getHours();var mm=dat.getMinutes();var minutes="";if(mm<10)
minutes="0"+mm;else
minutes=mm;var str="";str+=hh+":"+minutes;return str;}
function getDateByStringFromObject(date,allday){var array=date.split("/");var Y=parseInt(array[0]);var M=parseInt(array[1])+1;var D=parseInt(array[2]);var T=array[3];var tarray=T.split(":");var Hour=tarray[0];var Min=tarray[1];var res="";if(allday)
res=Y+"/"+M+"/"+D;else
res=Y+"/"+M+"/"+D+"/ "+Hour+":"+Min;return res;}
function getDateByString(argDate){var str;if(argDate.getMinutes()==0)
str=getYear(argDate.getYear())+"/"+argDate.getMonth()+"/"+argDate.getDate()+"/"+argDate.getHours()+":"+argDate.getMinutes()+"0";else
str=getYear(argDate.getYear())+"/"+argDate.getMonth()+"/"+argDate.getDate()+"/"+argDate.getHours()+":"+argDate.getMinutes();return str;}
function getDateFromString(strDate){var array=strDate.split("/");var Y=parseInt(array[0]);var M=parseInt(array[1]);var D=parseInt(array[2]);var T=array[3];var tarray=T.split(":");var Hour=tarray[0];var Min=tarray[1];var date=new Date(Y,M,D,Hour,Min,0);date.setMilliseconds(0);return date;}
function getDuration(strStart,strEnd){var start=getDateFromString(strStart);var end=getDateFromString(strEnd);var d=Math.abs(Math.floor((end.getTime()-start.getTime())/(1000*60*60*24)+1));return d;}
function random(){var now=new Date();var rdada=now.getTime();var rda=(rdada/Math.PI*0.123456)%10/10
return rda;}
function getLEFT(objid){if(document.all)
return document.all(objid).style.pixelLeft;else if(document.getElementById)
return(document.getElementById(objid).style.left!="")?parseInt(document.getElementById(objid).style.left):"";}
function getTOP(objid){if(document.all)
return document.all(objid).style.pixelTop;else if(document.getElementById)
return(document.getElementById(objid).style.top!="")?parseInt(document.getElementById(objid).style.top):"";}
function setLEFT(objid,x){if(document.all)
document.all(objid).style.pixelLeft=x;else if(document.getElementById)
document.getElementById(objid).style.left=x;}
function setTOP(objid,y){if(document.all)
document.all(objid).style.pixelTop=y;else if(document.getElementById)
document.getElementById(objid).style.top=y;}
function getStringLength(str){var cnt=0;for(var i=0;i<str.length;i++){if(escape(str.charAt(i)).length>=4){cnt+=2;}else{cnt++;}}
return cnt;}
function getString(str,num){var cnt=0;var result="";for(var i=0;i<str.length;i++){if(escape(str.charAt(i)).length>=4){cnt+=2;}else{cnt++;}
result+=str.charAt(i);if(cnt>=num){break;}}
return result;}
var beforeObj;var beforeObjColor;function changeCellColor(cellObj,bgColor){if(cellObj!=null){if(beforeObj!=null){beforeObj.style.backgroundColor=beforeObjColor;}
beforeObj=cellObj;beforeObjColor=cellObj.style.backgroundColor;cellObj.style.backgroundColor=bgColor;}}
var pulldown_menuObj;var currentZIndex=1000;var liIndex=0;var visibleMenus=new Array();var activeMenuItem=false;var timeBeforeAutoHide=1200;var pulldown_menu_arrow='images/arrow.gif';var MSIE=navigator.userAgent.indexOf('MSIE')>=0?true:false;var navigatorVersion=navigator.appVersion.replace(/.*?MSIE ([0-9]\.[0-9]).*/g,'$1')/1;var menuBlockArray=new Array();var menuParentOffsetLeft=false;function getTopPos(inputObj)
{var returnValue=inputObj.offsetTop;if(inputObj.tagName=='LI'&&inputObj.parentNode.className=='menuBlock1'){var aTag=inputObj.getElementsByTagName('A')[0];if(aTag)returnValue+=aTag.parentNode.offsetHeight;}
while((inputObj=inputObj.offsetParent)!=null)returnValue+=inputObj.offsetTop;return returnValue;}
function getLeftPos(inputObj)
{var returnValue=inputObj.offsetLeft;while((inputObj=inputObj.offsetParent)!=null)returnValue+=inputObj.offsetLeft;return returnValue;}
function showHideSub()
{var attr=this.parentNode.getAttribute('currentDepth');if(navigator.userAgent.indexOf('Opera')>=0){attr=this.parentNode.currentDepth;}
this.className='currentDepth'+attr+'over';if(activeMenuItem&&activeMenuItem!=this){activeMenuItem.className=activeMenuItem.className.replace(/over/,'');}
activeMenuItem=this;var numericIdThis=this.id.replace(/[^0-9]/g,'');var exceptionArray=new Array();var sub=document.getElementById('subOf'+numericIdThis);if(sub){visibleMenus.push(sub);sub.style.display='';sub.parentNode.className=sub.parentNode.className+'over';exceptionArray[sub.id]=true;}
var parent=this.parentNode;while(parent&&parent.id&&parent.tagName=='UL'){visibleMenus.push(parent);exceptionArray[parent.id]=true;parent.style.display='';var li=document.getElementById('pulldown_listItem'+parent.id.replace(/[^0-9]/g,''));if(li.className.indexOf('over')<0)li.className=li.className+'over';parent=li.parentNode;}
hideMenuItems(exceptionArray);}
function hideMenuItems(exceptionArray)
{var newVisibleMenuArray=new Array();for(var no=0;no<visibleMenus.length;no++){if(visibleMenus[no].className!='menuBlock1'&&visibleMenus[no].id){if(!exceptionArray[visibleMenus[no].id]){var el=visibleMenus[no].getElementsByTagName('A')[0];visibleMenus[no].style.display='none';var li=document.getElementById('pulldown_listItem'+visibleMenus[no].id.replace(/[^0-9]/g,''));if(li.className.indexOf('over')>0)li.className=li.className.replace(/over/,'');}else{newVisibleMenuArray.push(visibleMenus[no]);}}}
visibleMenus=newVisibleMenuArray;}
var menuActive=true;var hideTimer=0;function mouseOverMenu()
{menuActive=true;}
function mouseOutMenu()
{menuActive=false;timerAutoHide();}
function timerAutoHide()
{if(menuActive){hideTimer=0;return;}
if(hideTimer<timeBeforeAutoHide){hideTimer+=100;setTimeout('timerAutoHide()',99);}else{hideTimer=0;autohideMenuItems();}}
function autohideMenuItems()
{if(!menuActive){hideMenuItems(new Array());if(activeMenuItem)activeMenuItem.className=activeMenuItem.className.replace(/over/,'');}}
function initSubMenus(inputObj,initOffsetLeft,currentDepth)
{var subUl=inputObj.getElementsByTagName('UL');if(subUl.length>0){var ul=subUl[0];ul.id='subOf'+inputObj.id.replace(/[^0-9]/g,'');ul.setAttribute('currentDepth',currentDepth);ul.currentDepth=currentDepth;ul.className='menuBlock'+currentDepth;ul.onmouseover=mouseOverMenu;ul.onmouseout=mouseOutMenu;currentZIndex+=1;ul.style.zIndex=currentZIndex;menuBlockArray.push(ul);var topPos=getTopPos(inputObj);var leftPos=getLeftPos(inputObj)/1+initOffsetLeft/1;ul=pulldown_menuObj.appendChild(ul);ul.style.position='absolute';ul.style.left=leftPos+'px';ul.style.top=topPos+10+'px';var li=ul.getElementsByTagName('LI')[0];while(li){if(li.tagName=='LI'){li.className='currentDepth'+currentDepth;li.id='pulldown_listItem'+liIndex;liIndex++;var uls=li.getElementsByTagName('UL');li.onmouseover=showHideSub;if(uls.length>0){var offsetToFunction=li.getElementsByTagName('A')[0].offsetWidth+2;if(navigatorVersion<6&&MSIE)offsetToFunction+=15;initSubMenus(li,offsetToFunction,(currentDepth+1));}
if(MSIE){var a=li.getElementsByTagName('A')[0];a.style.width=li.offsetWidth+'px';a.style.display='block';}}
li=li.nextSibling;}
ul.style.display='none';if(!document.all){}}}
function resizeMenu()
{var offsetParent=getLeftPos(pulldown_menuObj);for(var no=0;no<menuBlockArray.length;no++){var leftPos=menuBlockArray[no].style.left.replace('px','')/1;menuBlockArray[no].style.left=leftPos+offsetParent-menuParentOffsetLeft+'px';}
menuParentOffsetLeft=offsetParent;}
function initpulldownMenu()
{pulldown_menuObj=document.getElementById('pulldown_menu');var aTags=pulldown_menuObj.getElementsByTagName('A');for(var no=0;no<aTags.length;no++){var subUl=aTags[no].parentNode.getElementsByTagName('UL');if(subUl.length>0&&aTags[no].parentNode.parentNode.parentNode.id!='pulldown_menu'){var img=document.createElement('IMG');img.src=pulldown_menu_arrow;aTags[no].appendChild(img);}}
var mainMenu=pulldown_menuObj.getElementsByTagName('UL')[0];mainMenu.className='menuBlock1';mainMenu.style.zIndex=currentZIndex;mainMenu.setAttribute('currentDepth',1);mainMenu.currentDepth='1';mainMenu.onmouseover=mouseOverMenu;mainMenu.onmouseout=mouseOutMenu;var mainMenuItemsArray=new Array();var mainMenuItem=mainMenu.getElementsByTagName('LI')[0];mainMenu.style.height=mainMenuItem.offsetHeight+2+'px';while(mainMenuItem){mainMenuItem.className='currentDepth1';mainMenuItem.id='pulldown_listItem'+liIndex;mainMenuItem.onmouseover=showHideSub;liIndex++;if(mainMenuItem.tagName=='LI'){mainMenuItem.style.cssText='float:right;';mainMenuItem.style.styleFloat='right';mainMenuItemsArray[mainMenuItemsArray.length]=mainMenuItem;initSubMenus(mainMenuItem,0,2);}
mainMenuItem=mainMenuItem.nextSibling;}
for(var no=0;no<mainMenuItemsArray.length;no++){initSubMenus(mainMenuItemsArray[no],0,2);}
menuParentOffsetLeft=getLeftPos(pulldown_menuObj);addListener(window,'resize',resizeMenu);pulldown_menuObj.style.visibility='visible';}
function my_round(num,point){if(isNaN(num)&&isNaN(point)){return NaN;}
if(!point){return Math.round(num);}
var place=Number('1e+'+Math.abs(point));if(point>0){num=Math.round(Math.floor((num/place)*10)/10)*place;}
if(point<0){num=Math.round(num*place)/place;}
return num;}
function addListener(target,type,func){if(target.attachEvent){target.attachEvent("on"+type,func);}else if(target.addEventListener){target.addEventListener(type,func,false);}else{target["on"+type]=func;}}
function getElementsByClass(searchClass,node,tag){var classElements=new Array();if(node==null)
node=document;if(tag==null)
tag='*';var els=node.getElementsByTagName(tag);var elsLen=els.length;var pattern=new RegExp("(^|\\s)"+searchClass+"(\\s|$)");for(i=0,j=0;i<elsLen;i++){if(pattern.test(els[i].className)){classElements[j]=els[i];j++;}}
return classElements;}
function rmPostAddEvent(){var all=getElementsByClass('rm',document.getElementById('posts'),'a');for(var i=0,o;o=all[i];i++)o.onclick=function(){return rmPost(this)}}
function rmPostAdd(o){o.onclick=function(){return rmPost(this)}}
function rmPost(o){o.style.display='none';var s=document.createElement('span');s.o=o;s.innerHTML='<span class="important">削除しますか？</span> <a href="'+o.href+'">はい</a> / <a href="'+o.href.replace(/(\?|&)delete=[^&]*&?/,'$1')+'" onclick="this.parentNode.o.style.display=\'inline\';this.parentNode.parentNode.removeChild(this.parentNode);return false">いいえ</a>'
o.parentNode.insertBefore(s,o);return false;}
function Vector(inc){if(inc==0){inc=100;}
this.data=new Array(inc);this.increment=inc;this.size=0;this.getCapacity=getCapacity;this.getSize=getSize;this.isEmpty=isEmpty;this.getLastElement=getLastElement;this.getFirstElement=getFirstElement;this.getElementAt=getElementAt;this.addElement=addElement;this.insertElementAt=insertElementAt;this.removeElementAt=removeElementAt;this.removeAllElements=removeAllElements;this.indexOf=indexOf;this.contains=contains
this.resize=resize;this.toString=toString;this.sort=sort;this.trimToSize=trimToSize;this.clone=clone;this.overwriteElementAt;}
function getCapacity(){return this.data.length;}
function getSize(){return this.size;}
function isEmpty(){return this.getSize()==0;}
function getLastElement(){if(this.data[this.getSize()-1]!=null){return this.data[this.getSize()-1];}}
function getFirstElement(){if(this.data[0]!=null){return this.data[0];}}
function getElementAt(i){try{return this.data[i];}
catch(e){return"Exception "+e+" occured when accessing "+i;}}
function addElement(obj){if(this.getSize()==this.data.length){this.resize();}
this.data[this.size++]=obj;}
function insertElementAt(obj,index){try{if(this.size==this.capacity){this.resize();}
for(var i=this.getSize();i>index;i--){this.data[i]=this.data[i-1];}
this.data[index]=obj;this.size++;}
catch(e){return"Invalid index "+i;}}
function removeElementAt(index){try{var element=this.data[index];for(var i=index;i<(this.getSize()-1);i++){this.data[i]=this.data[i+1];}
this.data[getSize()-1]=null;this.size--;return element;}
catch(e){return"Invalid index "+index;}}
function removeAllElements(){this.size=0;for(var i=0;i<this.data.length;i++){this.data[i]=null;}}
function indexOf(obj){for(var i=0;i<this.getSize();i++){if(this.data[i]==obj){return i;}}
return-1;}
function contains(obj){for(var i=0;i<this.getSize();i++){if(this.data[i]==obj){return true;}}
return false;}
function resize(){if(this.increment==null){newData=new Array(this.data.length);}else{newData=new Array(this.data.length+this.increment);}
for(var i=0;i<this.data.length;i++){newData[i]=this.data[i];}
this.data=newData;}
function trimToSize(){var temp=new Array(this.getSize());for(var i=0;i<this.getSize();i++){temp[i]=this.data[i];}
this.size=temp.length-1;this.data=temp;}
function sort(f){var i,j;var currentValue;var currentObj;var compareObj;var compareValue;for(i=1;i<this.getSize();i++){currentObj=this.data[i];currentValue=currentObj[f];j=i-1;compareObj=this.data[j];compareValue=compareObj[f];while(j>=0&&compareValue>currentValue){this.data[j+1]=this.data[j];j--;if(j>=0){compareObj=this.data[j];compareValue=compareObj[f];}}
this.data[j+1]=currentObj;}}
function clone(){var newVector=new Vector(this.size);for(var i=0;i<this.size;i++){newVector.addElement(this.data[i]);}
return newVector;}
function toString(){var str="Vector Object properties:\n"+"Increment: "+this.increment+"\n"+"Size: "+this.size+"\n"+"Elements:\n";for(var i=0;i<getSize();i++){for(var prop in this.data[i]){var obj=this.data[i];str+="\tObject."+prop+" = "+obj[prop]+"\n";}}
return str;}
function overwriteElementAt(obj,index){this.data[index]=obj;}
function Matrix(h,w){this.height=h;this.width=w;this.rows=new Vector(w);for(var r=0;r<this.height;r++){var theRow=new Vector(w);for(var c=0;c<this.width;c++){theRow.addElement(null);}
this.rows.addElement(theRow);}
this.elementAt=elementAt;this.setElementAt=setElementAt;this.insertRow=insertRow;this.insertColumn=insertColumn;this.removeRowAt=removeRowAt;this.removeColumnAt=removeColumnAt;this.getWidth=getWidth;this.getHeight=getHeight;this.toString=toString;}
function elementAt(row,col){try{var theRow=this.rows.getElementAt(row);return theRow.getElementAt(col);}
catch(e){return"Invalid index";}}
function setElementAt(value,row,col){if(row<0||row>=this.height||col<0||col>=this.width){return"Matrix object out of Bounds";}
var theRow=this.rows.getElementAt(row);theRow.insertElementAt(value,col);}
function insertRow(){try{this.height++;var theRow=new Vector(this.width);for(var r=0;r<this.width;r++){theRow.addElement(null);}
this.rows.insertElementAt(theRow,this.height-1);}
catch(e){return"Excecption occured "+e;}}
function insertColumn(){try{this.width++;for(var c=0;c<this.height;c++){this.rows.getElementAt(c).insertElementAt(null,this.width-1);}}
catch(e){return"Invalid column number";}}
function removeRowAt(row){try{var result=this.rows.getElementAt(row);this.height--;for(var r=row+1;r<=this.height;r++){var theRow=this.rows.getElementAt(r);this.rows.insertElementAt(theRow,r-1);this.rows.removeElementAt(r);}
return result;}
catch(e){return"Invalid row number";}}
function removeColumnAt(col){try{var result=new Vector(this.height);this.width--;for(var r=0;r<this.height;r++){var element=this.rows.getElementAt(r).removeElementAt(col);result.addElement(element);}
return result;}
catch(e){return"Invalid column number";}}
function getWidth(){return this.width;}
function getHeight(){return this.height;}
function toString(){var s="Height: "+this.height+" Width: "+this.width+" Rows: "+this.rows;return s;}