I'm actually working to do one for one of my sites; we have a "seasonal ticker" that introduces users to a countdown of the next season, and as a part of that I'm working to introduce a holiday announcement; the issue though is that not all holidays are on a specific day of the year so the ticker has to be updated yearly, but this is what I have so far:

Code
/* PHP CODE HERE */
if((date("m") == 01) && (date("d") == 01)) {
	$holiday_blurb = "Happy New Year!";
	$holiday_name = "New Years Day";
	$holiday_image = "";
	$holiday_url = "";
} elseif((date("m") == 02) && (date("d") == 02)) {
	$holiday_blurb = "";
	$holiday_name = "Groundhog Day";
	$holiday_image = "";
	$holiday_url = "";
} elseif((date("m") == 02) && (date("d") == 14)) {
	$holiday_blurb = "";
	$holiday_name = "Valentine's Day";
	$holiday_image = "";
	$holiday_url = "";
} elseif((date("m") == 04) && (date("d") == 22)) {
	$holiday_blurb = "";
	$holiday_name = "Earth Day";
	$holiday_image = "";
	$holiday_url = "";
} elseif((date("m") == 04) && (date("d") == 25)) {
// Changes Every Year, Last Friday in April
	$holiday_blurb = "";
	$holiday_name = "Arbor Day";
	$holiday_image = "";
	$holiday_url = "";
} elseif((date("m") == 05) && (date("d") == 11)) {
// Changes Every Year, Second Sunday in May
	$holiday_blurb = "";
	$holiday_name = "Arbor Day";
	$holiday_image = "";
	$holiday_url = "";
} elseif((date("m") == 05) && (date("d") == 26)) {
// Changes Every Year, Last Monday in May
	$holiday_blurb = "";
	$holiday_name = "Memorial Day";
	$holiday_image = "";
	$holiday_url = "";
} elseif((date("m") == 06) && (date("d") == 14)) {
	$holiday_blurb = "";
	$holiday_name = "Flag Day";
	$holiday_image = "";
	$holiday_url = "";
} elseif((date("m") == 06) && (date("d") == 15)) {
// Changes Every Year, Third Sunday of June
	$holiday_blurb = "";
	$holiday_name = "Fathers Day";
	$holiday_image = "";
	$holiday_url = "";
} elseif((date("m") == 07) && (date("d") == 04)) {
	$holiday_blurb = "Happy 4th of July!";
	$holiday_name = "Independance Day";
	$holiday_image = "";
	$holiday_url = "";
} elseif((date("m") == 09) && (date("d") == 11)) {
	$holiday_blurb = "";
	$holiday_name = "Patriot Day";
	$holiday_image = "";
	$holiday_url = "";
} elseif((date("m") == 10) && (date("d") == 31)) {
	$holiday_blurb = "Happy Halloween!";
	$holiday_name = "Halloween";
	$holiday_image = "";
	$holiday_url = "";
} elseif((date("m") == 11) && (date("d") == 11)) {
	$holiday_blurb = "";
	$holiday_name = "Veterans Day";
	$holiday_image = "";
	$holiday_url = "";
} elseif((date("m") == 11) && (date("d") == 28)) {
// Changes Every Year, Fourth Thursday in November
	$holiday_blurb = "Happy Thanksgiving!";
	$holiday_name = "Thanksgiving";
	$holiday_image = "";
	$holiday_url = "";
} elseif((date("m") == 12) && (date("d") == 24)) {
	$holiday_blurb = "Merry Christmas!";
	$holiday_name = "Christmas Eve";
	$holiday_image = "";
	$holiday_url = "";
} elseif((date("m") == 12) && (date("d") == 25)) {
	$holiday_blurb = "Merry Christmas!";
	$holiday_name = "Christmas Day";
	$holiday_image = "";
	$holiday_url = "";
} elseif(date("m") == 12) {
	$holiday_blurb = "Happy Holiday's!";
	$holiday_name = "Holiday Season";
	$holiday_image = "";
	$holiday_url = "";
} else {
	$holiday_blurb = "None";
	$holiday_name = "None";
	$holiday_image = "";
	$holiday_url = "";
}

if($holiday_name != "") {
	$holiday = "\n\n<br /><br />\n\n<div align=\"center\">\n";

	if($holiday_image != "") { $holiday .= "\t<img src=\"". $holiday_image ."\" alt=\"". $holiday_blurb ."\" title=\"". $holiday_blurb ."\" />\n<br /><br />\n\n"; }
	if($holiday_url != "") { $holiday .= "\t<strong><a href=\"". $holiday_url ."\" target=\"_blank\">". $holiday_name ."</a></strong><hr />\n"; }
	if($holiday_url == "") { $holiday .= "\t<strong>". $holiday_name ."</strong><hr />\n"; }

	$holiday .= "\t". $holiday_blurb;
	$holiday .= "\n</div>\n\n";
} else { $holiday = ""; }

/* BODY HERE */
$body = <<<EOF
$holiday
EOF;

I've been working on this during the week but never really tested it in the UBB, what I put above is just what I've got working using a standalone script but put the ubb formatting for a custom island in place for you; your mileage may vary.

Basically the if statements have a date (with leading zero's), if it's that date then it uses the data supplied; URL is used if you want it to be linked to a URL (used as a description of the holiday), if it's not displayed then it'll be ignored by the "pull together" code at the bottom. The else statement holds the "no holiday" indication.


I am a Web Development Contractor, I do not work for UBBCentral. I have provided free User to User Support since the beginning of these support forums.
Do you need Forum Install or Upgrade Services?
Forums: A Gardeners Forum, Scouters World
UBB.threads: UBBWiki, UBB Styles, UBB.Sitemaps
Longtime Supporter & Resident Post-A-Holic
VNC Web Services: Code Modifications, Upgrades, Styling, Coding Services, Disaster Recovery, and more!