'YUI'에 해당되는 글 1건

  1. 2009.12.14 calendarFunc(mod).js

calendarFunc(mod).js

|

var start_yaer = 2005;
var n_cal = 0; // num of calendar in page

var calObj;

var monthHtmlEle;
var dayHtmlEle;
var yearHtmlEle; //HTMLElement Obj

function init(cal_num, s_year) {
 this.today = new Date();

 start_yaer = s_year;
 n_cal = cal_num;

 calObj = new Object(cal_num);

 monthHtmlEle = new Object(cal_num);
 dayHtmlEle = new Object(cal_num);
 yearHtmlEle = new Object(cal_num);

 var thisMonth = this.today.getMonth()+1;
 var thisDay = this.today.getDate();
 var thisYear = this.today.getFullYear();

 for (i=1; i<=cal_num; i++) {
  var monthName = 'Month_' + i;
  var dayName = 'Day_' + i;
  var yearName = 'Year_'  + i;

  var calName = 'cal' + i;
  var containerName = 'container' + i;

  monthHtmlEle[i] = document.getElementById(monthName);
  dayHtmlEle[i] = document.getElementById(dayName);
  yearHtmlEle[i] = document.getElementById(yearName);

  yearHtmlEle[i].selectedIndex = thisYear-s_year;
  monthHtmlEle[i].selectedIndex = thisMonth;
  dayHtmlEle[i].selectedIndex = thisDay;
  
  calObj[i] = new YAHOO.widget.Calendar2up_JP(calName,containerName,(thisMonth)+"/"+thisYear,(thisMonth-1)+"/"+(thisDay)+"/"+ thisYear);
  //calObj[i].setChildFunction("onSelect", setDate([i]));
  var renderSunday = function(calName,cell) { YAHOO.util.Dom.addClass(cell, "sunday"); }
  calObj[i].addWeekdayRenderer(1, renderSunday);
  calObj[i].render();
 }
}


// show calendar($numOfCalendar, $indexOfShowCalendar)
function showCalendar(index, view) {
 for (i=1; i<=n_cal; i++) {
  if (i != index) {
   calObj[i].hide();
  }
 }
 
 
 // position of calendarImage
 pos = YAHOO.util.Dom.getXY(linkObj[index]);

 // default : 'down'
 if (view=='up') {
  calObj[index].outerContainer.style.display='block';
  YAHOO.util.Dom.setXY(calObj[index].outerContainer, [pos[0],(pos[1]-(linkObj[index].offsetHeight+1 + kindOfBrowser()))]);
 } else {
  // default: down
  calObj[index].outerContainer.style.display='block';
  YAHOO.util.Dom.setXY(calObj[index].outerContainer, [pos[0],pos[1]+linkObj[index].offsetHeight+1]); 
 }
}

// setting date to calendar()
function setDate(index) {
 var date = calObj[index].getSelectedDates()[0];
 
 var year = date.getYear()-start_year;
 var ua = navigator.userAgent;
 if (ua.indexOf("MSIE") >= 0) {
  //window.confirm('year:'+year);
  //IE
 } else if ( (ua.indexOf("Safari") >= 0) || (ua.indexOf("Firefox") >= 0) ) {
  //FireFox,Safari(Chrome)
  year = year+1900;
 } else {
  //etc.
 }
 yearHtmlEle[index].selectedIndex=year;
 monthHtmlEle[index].selectedIndex=date1.getMonth()+1;
 dayHtmlEle[index].selectedIndex=date1.getDate();

 calObj[index].hide();
}


function changeDate(index) {
 var month = monthHtmlEle[index].selectedIndex-1;
 var day = dayHtmlEle[index].selectedIndex;
 var year = parseInt(yearHtmlEle[index].options[yearHtmlEle[index].selectedIndex].value);
 
 var ua = navigator.userAgent;
 
 if (ua.indexOf("MSIE") >= 0) {
  //IE
  year = year;
 } else if ( (ua.indexOf("Safari") >= 0) || (ua.indexOf("Firefox") >= 0) ) {
  //FireFox,Safari(Chrome)
 } else {
  //etc.
  year = year-1900;
 }
 
 calObj[index].select((month+1) + "/" + day + "/" + year);
 calObj[index].setMonth(month);
 calObj[index].setYear(year);
 
 calObj[index].render();
}
/* browserによって高さが違うので
* この関数で決まる。
*/
function kindOfBrowser(){
 var height;
 var UserAgentState = navigator.userAgent.toLowerCase();
 
 var browserIE = (UserAgentState.indexOf("msie") != -1) ? true : false; 
 var browserFF = (UserAgentState.indexOf("firefox") != -1) ? true : false; 
 var browserSF = (UserAgentState.indexOf("safari") != -1) ? true : false;
 var browserGR = (UserAgentState.indexOf("chrome") != -1 && UserAgentState.indexOf("safari") != -1) ? true : false;
   
 var OSWindows = (UserAgentState.indexOf("windows") != -1) ? true : false;
 
 //browser ie
 if(browserIE && OSWindows){ height = 160; }
 //browser firefox
 if(browserFF && OSWindows){ height = 156; }
 //browser safari
 if(browserSF && OSWindows){ height = 162; }
 //browser chrome
 if(browserGR && OSWindows){ height = 138; }

 return height;
}

'JAVA/JSP > Source' 카테고리의 다른 글

calendarFunc.js  (0) 2009.12.14
Printing  (0) 2009.01.29
간단한 도서관리  (0) 2009.01.29
파일읽기  (0) 2009.01.29
메일(첨부자료 3개) 보내기  (0) 2009.01.29
And
prev | 1 | next