/* -*- mode: javascript -*-
 *
 * Selection semaine sur calendrier Absences
 *
 * E. Viennet, Oct 2006
 */

var WEEKDAYCOLOR = "#EEEEEE";
var WEEKENDCOLOR = "#99CC99";
var DAYHIGHLIGHT = "red";
var CURRENTWEEKCOLOR = "yellow";

// get all tr elements from this class
// (no getElementBuClassName)
function getTRweek( week ) { 
  var tablecal = document.getElementById('maincalendar');
  var all = tablecal.getElementsByTagName('tr');
  var res = [] ;
  for(var i=0; i < all.length; i++) {
    if (all[i].className == week)
      res[res.length] = all[i];
  }
  return res;
}

var HIGHLIGHTEDCELLS = [];

function deselectweeks() {
  
  for(var i=0; i < HIGHLIGHTEDCELLS.length; i++) {
    var row = rows[i];
    if (row) {
      if (row.className.match('currentweek')) {
	row.style.backgroundColor = CURRENTWEEKCOLOR;
      } else {
	row.style.backgroundColor = WEEKDAYCOLOR;
      }
      rows[i] = null;
    }
  }
}

// highlight 5 days
function highlightweek(el) {
  deselectweeks();
  var week = el.className;
  if ((week == 'wkend') || (week.substring(0,2) != 'wk')) {
    return; /* does not hightlight weekends */
  }
  rows = getTRweek(week);
  for (var i=0; i < rows.length; i++) {
    var row = rows[i];
    row.style.backgroundColor = DAYHIGHLIGHT;
    HIGHLIGHTEDCELLS[HIGHLIGHTEDCELLS.length] = row;
  }
}

// click on a day
function wclick(el) {
  monday = el.className;
  form = document.getElementById('formw');
  form.datelundi.value = monday.substr(2).replace(/_/g,'/').split(' ')[0];
  form.submit();
}