// UNPLAYED FIXTURES (INITIALLY CREATED FROM database.js)
// fixtures.js

// RETURNS STRING OF FORM...
// <DIV CLASS="sfbanner_title" STYLE="float:left;">[Title]</DIV>
// <DIV CLASS="sfbanner_msg">[Msg]</DIV>
// Width - OPTIONAL WIDTH OF MSG
function f_sfbannerTextStyle(Title,Msg,Width) {
  var t;
  t = '<DIV CLASS="sfbanner_title">' + Title + '</DIV>';
  t += '<DIV CLASS="sfbanner_msg"';
  if (typeof(Width) != 'undefined') t += ' STYLE="position:relative;width:' + Width + 'px;"';
  t += '>' + Msg + '</DIV>';
  return t;
}

// DECIDES WHAT TO PUT IN SF_BANNER
// 1. NEWS/DIARY P1
// 2. FIXTURE TODAY (OR TOMORROW)
// 3. HISTORY (If less than 5 days old)
// 4. RECENT RESULT (Any result posted recently - always Priority 2)
// 5. NEWS/DIARY P2 (and HISTORY > 5 DAYS OLD)
// 6. HISTORY (Default)
// NEEDS history.js, news.js
// <DIV CLASS="sfbanner_title" STYLE="float:left;">What\'s New</DIV>
// <DIV CLASS="sfbanner_msg">' + f_lastHistory() + '</DIV>
function f_sfbannerText() {
  var title, msg, fields, daysago;

  // CHECK NEWS - PRIORITY 1
  msg = f_news(_N,_CURRENT,_BRIEF,1);
  if (isValidData(msg)) {
    title = 'News';
    return f_sfbannerTextStyle(title,msg);
  }

  // CHECK DIARY - PRIORITY 1
  msg = f_news(_D,_CURRENT,_BRIEF,1);
  if (isValidData(msg)) {
    title = 'Diary';
    return f_sfbannerTextStyle(title,msg);
  }

  // FIXTURE TODAY
  msg = f_fixtures(0,true);
  if (isValidData(msg)) {
    title = 'Match Fixture';
		// Presence of 'blankdot' inidicates dividing line, ie. More than one!
		if (msg.indexOf('blankdot') > -1) {title += 's';}
    return f_sfbannerTextStyle(title,msg);
  }

  // FIXTURE TOMORROW
  msg = f_fixtures(1,true);
  if (isValidData(msg)) {
    title = 'Match Fixture';
		if (msg.indexOf('blankdot') > -1) {title += 's';}		
    return f_sfbannerTextStyle(title,msg);
  }

  // HOW OLD IS HISTORY?
  fields = History[History.length - 1].split('|');
  daysago = f_daysAgo(fields[0]);

  // IF HISTORY IS FAIRLY NEW, THEN SHOW IT!
  if (daysago < 5) {
    title = 'What\'s New';
    msg = f_lastHistory();
    return f_sfbannerTextStyle(title,msg);
  }

  // CHECK RECENT RESULT - (Always PRIORITY 2)
  msg = f_news(_R,_CURRENT,_BRIEF,2);
  if (isValidData(msg)) {
    title = 'Recent Result';
    return f_sfbannerTextStyle(title,msg);
  }	
	
  // CHECK NEWS - PRIORITY 2
  msg = f_news(_N,_CURRENT,_BRIEF,2);
  if (isValidData(msg)) {
    title = 'News';
    return f_sfbannerTextStyle(title,msg);
  }

  // CHECK DIARY - PRIORITY 2
  msg = f_news(_D,_CURRENT,_BRIEF,2);
  if (isValidData(msg)) {
    title = 'Diary';
    return f_sfbannerTextStyle(title,msg);
  }

  // DEFAULT - SHOW HISTORY
  title = 'What\'s New';
  msg = f_lastHistory();
  return f_sfbannerTextStyle(title,msg);
}

// RETURNS LIST OF FIXTURES IN NEXT n DAYS
// Days - NUMBER OF DAYS (NB: 0 WILL INDICATE TODAY)
// Split - true/false (DEFAULT: false) SPLIT ONTO MULTIPLE LINES IF IN HEADER
// Raw - true/false (DEFAULT: false) - Displays in Raw Text format for copying to file
// NB: Special case... If more than 1 record found when Days is 0 or 1 and Split is True
//                     then do not display 2nd date, since it will be the same 
function f_fixtures(Days,Split,Raw) {
  var t = '';
  var count;
  var recno, fields, daysago, more;

  // INIT
  count = 0;
  more = false;	// ASSUME NO MORE FIXTURES
  if (typeof(Split) == 'undefined') Split = false;
  if (typeof(Raw) == 'undefined') Raw = false;
	if (Raw) Split == false;
	
	if (Raw) {
		t = _HOME_CLUB + ' Badminton Club<br />';
		t += 'Unplayed Match Fixtures<br />';
		t += 'Last Updated ' + f_formatDateStr(_STATIC_FIXTURES_UPDATED,false) + '<br /><br />';
	}

  // STEP THROUGH FIXTURES
  for (recno=0; recno<CurFixArr.length; recno++) {

    // RECORD
    fields = unescape(CurFixArr[recno]).split(',');

    // ALREADY PLAYED?
    // NB: IF daysago = 0, THEN IT'S TODAY - NOT ALREADY PLAYED
    daysago = f_daysAgo(fields[0]);
    if (daysago > 0) continue;

    // TOO FAR IN FUTURE THEN FINISH
    // -1 IS TOMORROW
    if (Math.abs(daysago) > Days) {
      more = true;
      break;
    }

		// Line Break
		if (count > 0) {
			t += '<br />';
	    if (!Raw) {
  	    t += '<DIV STYLE="margin-top:4px;margin-bottom:3px;border-top:1px dashed #999999;"><IMG SRC="/img/blankdot.gif" WIDTH=1 HEIGHT=1></DIV>';
			}
    }

    // SPLIT?
    if ((count == 0) && (Split)) t += '<br />';

    // DATE (TODAY OR TOMORROW)
		// if ((count > 0) && (Days < 2) && (Split)) {Don't display date}
		if ((count <=0) || (Days >=2) || (!Split)) {
      t += '<B>' + f_formatDateStr(fields[0],false,true);
  		if (!Raw) {
  	    if ((daysago == 0) || (daysago == -1)) t += '<SPAN STYLE="color:#990000;text-decoration:blink;">';
  	    if (daysago == 0) {
  	      t += ' (TODAY!)';
  	    } else if (daysago == -1) {
  	      t += ' (Tomorrow)';
  	    }
  	    if ((daysago == 0) || (daysago == -1)) t += '</SPAN>';
  		}
      t += '</B>';
  
      // SPLIT?
      if (Split) t += '<BR>';
		}

    // TEAM vs CLUB
    t += ' - ' + fields[2] + ' <B>vs</B> ';
		if (Raw) {
			t += fields[3].replace(/<[^<>]*>/g,'');
		} else {
			t += fields[3];		
		}

    // VENUE, TIME and PAIRS
    // unescape(fields[4]) - PREVIOUS
    t += ' at&nbsp;';
		if (Raw) {
			t += fields[4].replace(/<[^<>]*>/g,'');
		} else {
			t += fields[4];		
		}
		if (fields[5] > ' ') {
			t += ' - ' + fields[5] + ', ' + fields[6];
		}
		
		// Additional Info...
		if (fields[7] > ' ') {
			t += ' <b>(' + fields[7] + ')</b>';
		}

    count++;
  }

  // NO FIXTURES?
  if (count == 0) {
    t = _NODATA + '<DIV CLASS="grey">';
    if (!more) {
      t += 'No more fixtures this season.';
    } else {
      t += 'There are no match fixtures<BR>in the next ' + Days + ' days.';
    }
    t += '</DIV>';
  } else if (Raw) {
		t += '<br /><br />' + count + ' fixture(s) listed.';
	}

  return t;
}

/****************************************************
** DATA GENERATED AT Fri, 03 Feb 2012 13:09:33 GMT
** CURRENT (UNPLAYED) FIXTURES
****************************************************/
var _STATIC_FIXTURES_UPDATED = '17/10/2011';

var CurFixArr = new Array();

CurFixArr[0] = '03/02/2012%2CFri%26nbsp%3B3rd%2CBrL%2CCrowthorne%2C%3Ca%20href%3D%22/clubs/details/edgebarrow_sports_centre.html%22%3EEdgebarrow%26nbsp%3BSports%26nbsp%3BCentre%3C/a%3E%2C8%3A15%2C2%20pairs%2C';
CurFixArr[1] = '06/02/2012%2CMon%26nbsp%3B6th%2CRL%2CProspect%2CHome%2C%2C%2C';
CurFixArr[2] = '06/02/2012%2CMon%26nbsp%3B6th%2CRMB%2CLanes%2C%3Ca%20href%3D%22/clubs/details/denefield_school.html%22%3EDenefield%26nbsp%3BSchool%3C/a%3E%2C7%3A30%2C3%20pairs%2C';
CurFixArr[3] = '09/02/2012%2CThu%26nbsp%3B9th%2CRMA%2CBritish%20Rail%20A%2C%3Ca%20href%3D%22/clubs/details/loddon_valley.html%22%3ELoddon%26nbsp%3BValley%3C/a%3E%2C8%3A30%2C2%20pairs%2C';
CurFixArr[4] = '13/02/2012%2CMon%26nbsp%3B13th%2CRMA%2CReading%20%26amp%3B%20Country%2CHome%2C%2C%2C';
CurFixArr[5] = '23/02/2012%2CThu%26nbsp%3B23rd%2CBrL%2CThree%20of%20Clubs%2C%3Ca%20href%3D%22/clubs/details/bracknell_and_wokingham_college.html%22%3EBracknell%26nbsp%3B%26%26nbsp%3BWokingham%26nbsp%3BCollege%3C/a%3E%2C7%3A15%2C2%20pairs%2C';
CurFixArr[6] = '24/02/2012%2CFri%26nbsp%3B24th%2CBrX%2CWindsor%20Phoenix%2CHome%2C%2C%2C';
CurFixArr[7] = '27/02/2012%2CMon%26nbsp%3B27th%2CBrM%2C%3Cspan%20class%3D%22info%22%20title%3D%222005%20-%20Merger%20between%20Malvern%20and%20Bracknell%22%3EMavnell%3C/span%3E%2CHome%2C%2C%2C';
CurFixArr[8] = '27/02/2012%2CMon%26nbsp%3B27th%2CRX%2CLanes%20A%2C%3Ca%20href%3D%22/clubs/details/denefield_school.html%22%3EDenefield%26nbsp%3BSchool%3C/a%3E%2C7%3A30%2C3%20pairs%2C';
CurFixArr[9] = '01/03/2012%2CThu%26nbsp%3B1st%2CRL%2CBritish%20Rail%20A%2C%3Ca%20href%3D%22/clubs/details/loddon_valley.html%22%3ELoddon%26nbsp%3BValley%3C/a%3E%2C8%3A30%2C2%20pairs%2C';
CurFixArr[10] = '05/03/2012%2CMon%26nbsp%3B5th%2CRMA%2C%3Cspan%20class%3D%22info%22%20title%3D%222005%20-%20Merger%20between%20Malvern%20and%20Bracknell%22%3EMavnell%3C/span%3E%2CHome%2C%2C%2C';
CurFixArr[11] = '06/03/2012%2CTue%26nbsp%3B6th%2CRX%2C%3Cspan%20class%3D%22info%22%20title%3D%22Formerly%20%27Chiltern%20Edge%27%22%3EChiltern%3C/span%3E%20B%2C%3Ca%20href%3D%22/clubs/details/shiplake_college.html%22%3EShiplake%26nbsp%3BCollege%3C/a%3E%2C7%3A30%2C2%20pairs%2C';
CurFixArr[12] = '12/03/2012%2CMon%26nbsp%3B12th%2CRMB%2CUfton%2CHome%2C%2C%2C';
CurFixArr[13] = '15/03/2012%2CThu%26nbsp%3B15th%2CBrX%2CThree%20of%20Clubs%2C%3Ca%20href%3D%22/clubs/details/bracknell_and_wokingham_college.html%22%3EBracknell%26nbsp%3B%26%26nbsp%3BWokingham%26nbsp%3BCollege%3C/a%3E%2C7%3A15%2C2%20pairs%2C';
CurFixArr[14] = '19/03/2012%2CMon%26nbsp%3B19th%2CBrM%2CRacketeers%20A%2C%3Ca%20href%3D%22/clubs/details/bracknell_sports_centre.html%22%3EBracknell%26nbsp%3BSports%26nbsp%3BCentre%3C/a%3E%2C8pm%2C2%20pairs%2C';
CurFixArr[15] = '19/03/2012%2CMon%26nbsp%3B19th%2CRL%2CHawley%2CHome%2C%2C%2C';
CurFixArr[16] = '21/03/2012%2CWed%26nbsp%3B21st%2CRMA%2C%3Cspan%20class%3D%22info%22%20title%3D%222005%20-%20Merger%20between%20Malvern%20and%20Bracknell%22%3EMavnell%3C/span%3E%2C%3Ca%20href%3D%22/clubs/details/crosfields_school.html%22%3ECrosfields%26nbsp%3BSchool%3C/a%3E%2C8%3A15%2C2%20pairs%2C';
CurFixArr[17] = '23/03/2012%2CFri%26nbsp%3B23rd%2CRX%2CBritish%20Rail%20B%2CHome%2C%2C%2C';
CurFixArr[18] = '26/03/2012%2CMon%26nbsp%3B26th%2CBrL%2CFlying%20Rackets%2CHome%2C%2C%2C';
CurFixArr[19] = '26/03/2012%2CMon%26nbsp%3B26th%2CRMA%2C%3Cspan%20class%3D%22info%22%20title%3D%22Formerly%20%27Chiltern%20Edge%27%22%3EChiltern%3C/span%3E%20B%2C%3Ca%20href%3D%22/clubs/details/hugh_faringdon_school.html%22%3EHugh%26nbsp%3BFaringdon%26nbsp%3BSchool%3C/a%3E%2C7%3A30%2C2%20pairs%2C';
CurFixArr[20] = '29/03/2012%2CThu%26nbsp%3B29th%2CRL%2CBritish%20Rail%20B%2C%3Ca%20href%3D%22/clubs/details/loddon_valley.html%22%3ELoddon%26nbsp%3BValley%3C/a%3E%2C8%3A30%2C2%20pairs%2C';
CurFixArr[21] = '30/03/2012%2CFri%26nbsp%3B30th%2CRMB%2CSyngenta%20A%2CHome%2C%2C%2C';
CurFixArr[22] = '02/04/2012%2CMon%26nbsp%3B2nd%2CBrM%2CFlying%20Rackets%2CHome%2C%2C%2C';
CurFixArr[23] = '10/04/2012%2CTue%26nbsp%3B10th%2CBrM%2CWindsor%20Phoenix%2C%3Ca%20href%3D%22/clubs/details/trevelyan_middle_school.html%22%3ETrevelyan%26nbsp%3BMiddle%26nbsp%3BSchool%3C/a%3E%2C7%3A30%2C2%20pairs%2C';
CurFixArr[24] = '12/04/2012%2CThu%26nbsp%3B12th%2CRX%2CBritish%20Rail%20B%2C%3Ca%20href%3D%22/clubs/details/loddon_valley.html%22%3ELoddon%26nbsp%3BValley%3C/a%3E%2C8%3A30%2C2%20pairs%2C';
CurFixArr[25] = '13/04/2012%2CFri%26nbsp%3B13th%2CBrL%2CWindsor%20Phoenix%2CHome%2C%2C%2C';
CurFixArr[26] = '16/04/2012%2CMon%26nbsp%3B16th%2CRMA%2C%3Cspan%20class%3D%22info%22%20title%3D%22Formerly%20%27Chiltern%20Edge%27%22%3EChiltern%3C/span%3E%20A%2CHome%2C%2C%2C';
CurFixArr[27] = '20/04/2012%2CFri%26nbsp%3B20th%2CRL%2CBritish%20Rail%20A%2CHome%2C%2C%2C';
CurFixArr[28] = '23/04/2012%2CMon%26nbsp%3B23rd%2CRMB%2COasis%20A%2CHome%2C%2C%2C';
CurFixArr[29] = '25/04/2012%2CWed%26nbsp%3B25th%2CBrX%2CReading%20%26amp%3B%20Country%2C%3Ca%20href%3D%22/clubs/details/crosfields_school.html%22%3ECrosfields%26nbsp%3BSchool%3C/a%3E%2C8%3A15%2C2%20pairs%2C';
CurFixArr[30] = '27/04/2012%2CFri%26nbsp%3B27th%2CBrL%2CCrowthorne%2CHome%2C%2C%2C';
CurFixArr[31] = '30/04/2012%2CMon%26nbsp%3B30th%2CRMA%2C%3Cspan%20class%3D%22info%22%20title%3D%22Formerly%20%27Chiltern%20Edge%27%22%3EChiltern%3C/span%3E%20B%2CHome%2C%2C%2C';

