<!--
function CalculateAndReplaceParameters( par ) {
  var i;
  var re = new RegExp();
  var now = new Date();
  var currentTimeZoneOffsetInHours = parseInt( now.getTimezoneOffset()/60 );
  now = new Date(((now.getFullYear()<2000)?now.getFullYear()+1900:now.getFullYear()), now.getMonth(), now.getDate(), now.getHours() + currentTimeZoneOffsetInHours, now.getMinutes() );
  var ret = par;
  var tmp = "";
  for( i = 1; i <= 3; i++ ) {
    tmp = ret.replace(re.compile("[(]day[+]"+i+"[)]","g"), format00( new Date( now.getYear(), now.getMonth(), now.getDate() + i ).getDate() ) );
    ret = tmp;
  }
  if( ret.indexOf("(utm30m)") > -1 ) {
    tmp = ret.replace(re.compile("[(]utm30m[)]","g"), eumetsat30min( now ) );
    ret = tmp;
  }
  if( ret.indexOf("(utm3h)") > -1 ) {
    tmp = ret.replace(re.compile("[(]utm3h[)]","g"), eumetsat3h( now ) );
    ret = tmp;
  }
  if( ret.indexOf("(wolradar)") > -1 ) {
    tmp = ret.replace(re.compile("[(]wolradar[)]","g"), wolradar( now ) );
    ret = tmp;
  }
  if( ret.indexOf("(wollightening)") > -1 ) {
    tmp = ret.replace(re.compile("[(]wollightening[)]","g"), wollightening( now ) );
    ret = tmp;
  }
  delete( re );
  return ret;
}

function eumetsat30min( now ) {
  var i;
  var ret = "";
  var j = parseInt( now.getHours() - 1 );

  for( i = j - 24; i <= j; i++ ) {
    var tmp = new Date( now.getYear(), now.getMonth(), now.getDate(), i );
    if( ret != "" ) ret += ";";
    var year = tmp.getFullYear();
    if( year < 2000 ) year += 1900; // Netscape
    var month = tmp.getMonth() + 1;
    var day = tmp.getDate();
    var hours = tmp.getHours();
    ret += "" + year + format00(month) + format00(day) + "-" + format00(hours) + "00";
//    ret += ";" + year + format00(month) + format00(day) + "-" + format00(hours) + "30";
  }
  return ret;
}

function eumetsat3h( now ) {
  var i;
  var ret = "";
  var j = parseInt( ( now.getHours() - 1) / 3 ) * 3;

  for( i = j - 24; i <= j; i += 3 ) {
    var tmp = new Date( now.getYear(), now.getMonth(), now.getDate(), i );
    if( ret != "" ) ret += ";";
    var year = tmp.getFullYear();
    if( year < 2000 ) year += 1900; // Netscape
    var month = tmp.getMonth() + 1;
    var day = tmp.getDate();
    var hours = tmp.getHours();
    ret += "" + year + format00(month) + format00(day) + "-" + format00(hours) + "00";
  }
  return ret;
}

function wolradar( now ) {
  var i;
  var ret = "";
  var j = parseInt( now.getHours() - 1 );

  for( i = j - 4; i <= j; i++ ) {
    var tmp = new Date( now.getYear(), now.getMonth(), now.getDate(), i );
    if( ret != "" ) ret += ";";
    var year = tmp.getFullYear();
    if( year < 2000 ) year += 1900; // Netscape
    var month = tmp.getMonth() + 1;
    var day = tmp.getDate();
    var hours = tmp.getHours();
    ret += year + "/" + format00(month) + "/" + format00(day) + format00(hours) + "00;";
    ret += year + "/" + format00(month) + "/" + format00(day) + format00(hours) + "15;";
    ret += year + "/" + format00(month) + "/" + format00(day) + format00(hours) + "30;";
    ret += year + "/" + format00(month) + "/" + format00(day) + format00(hours) + "45";
  }
  return ret;
}

function wollightening( now ) {
  var i;
  var ret = "";
  var j = parseInt( now.getHours() - 1 );

  for( i = j - 6; i <= j; i++ ) {
    var tmp = new Date( now.getYear(), now.getMonth(), now.getDate(), i );
    if( ret != "" ) ret += ";";
    var year = tmp.getFullYear();
    if( year < 2000 ) year += 1900; // Netscape
    var month = tmp.getMonth() + 1;
    var day = tmp.getDate();
    var hours = tmp.getHours();
    ret += year + "/" + format00(month) + "/euro" + format00(day) + format00(hours) + "00;";
    ret += year + "/" + format00(month) + "/euro" + format00(day) + format00(hours) + "30";
  }
  return ret;
}

// --------------------------------------

function daysFromToday( i ) {
  var now = new Date();
  now = new Date(((now.getFullYear()<2000)?now.getFullYear()+1900:now.getFullYear()), now.getMonth(), now.getDate() + i );
  var date = ((now.getFullYear()<2000)?now.getFullYear()+1900:now.getFullYear()) + "-" + format00(now.getMonth()+1) + "-" + format00(now.getDate());
  switch(now.getDay()) {
    case 1: return "Mon," + date; break;
    case 2: return "Tue," + date; break;
    case 3: return "Wed," + date; break;
    case 4: return "Thu," + date; break;
    case 5: return "Fri," + date; break;
    case 6: return "Sat," + date; break;
    default: return "Sun," + date; break;
  }
}

function hoursFromTodayInt6( i ) {
  var now = new Date();
  now = new Date( now.getYear(), now.getMonth(), now.getDate() );
  now = new Date(((now.getFullYear()<2000)?now.getFullYear()+1900:now.getFullYear()), now.getMonth(), now.getDate(), now.getHours() + i * 6 + 6 );
  var date = ((now.getFullYear()<2000)?now.getFullYear()+1900:now.getFullYear()) + "-" + format00(now.getMonth()+1) + "-" + format00(now.getDate()) + " " + format00(now.getHours()) + ":00";
  switch(now.getDay()) {
    case 1: return "Mon," + date; break;
    case 2: return "Tue," + date; break;
    case 3: return "Wed," + date; break;
    case 4: return "Thu," + date; break;
    case 5: return "Fri," + date; break;
    case 6: return "Sat," + date; break;
    default: return "Sun," + date; break;
  }
}

function hoursFromTodayInt3( i ) {
  var now = new Date();
  now = new Date( now.getYear(), now.getMonth(), now.getDate() );
  now = new Date(((now.getFullYear()<2000)?now.getFullYear()+1900:now.getFullYear()), now.getMonth(), now.getDate(), now.getHours() + i * 3 + 3 );
  var date = ((now.getFullYear()<2000)?now.getFullYear()+1900:now.getFullYear()) + "-" + format00(now.getMonth()+1) + "-" + format00(now.getDate()) + " " + format00(now.getHours()) + ":00";
  switch(now.getDay()) {
    case 1: return "Mon," + date; break;
    case 2: return "Tue," + date; break;
    case 3: return "Wed," + date; break;
    case 4: return "Thu," + date; break;
    case 5: return "Fri," + date; break;
    case 6: return "Sat," + date; break;
    default: return "Sun," + date; break;
  }
}

//-->
