function selectMenu(menu) {
	if(document.getElementById(menu) != null) {
		document.getElementById(menu).style.color =  "red";
	}
}
function dbRecord(parent,display,URL,indent,statusMsg, menuId){
  this.parent = parent   // is this item a parent?
  this.display = display // Display Text
  this.URL = URL         // URL to load
  this.indent = indent   // how many levels nested?
  this.statusMsg = statusMsg  // descriptive text for status bar 
  this.menuId = menuId // some id to recognize it..
  return this
}

// db constructor
function dbAdd(parent,display,URL,indent,statusMsg, menuId){
  dbcount++;
  db[dbcount] = new dbRecord(parent,display,URL,indent,statusMsg, menuId)
}


// ** functions to get and set persistent cookie data **
// set cookie data
function setCurrState(setting) {
  // setting cookie for path is so important otherwise it will not work..
  document.cookie = "currState=" + escape(setting) +";path=/"
  currState = setting 
}
// retrieve cookie data
function getCurrState() {
  var label = "currState="
  var labelLen = label.length
  var varcook = document.cookie
  var cLen = varcook.length
  var i = 0
  while (i < cLen) {
    var j = i + labelLen
    if (varcook.substring(i,j) == label) {
      var cEnd = varcook.indexOf(";",j)

      if (cEnd == -1) {
        cEnd = varcook.length

      }
      return unescape(varcook.substring(j,cEnd))
    }
    i++
  }
  return ""
}

function toggle(n) {
  if (n != 0) {
    var newString = ""
    var expanded = currState.charAt(n-1) // of clicked item
    newString += currState.substring(0,n-1)

    newString += expanded ^ 1 // Bitwise XOR clicked item
    newString += currState.substring(n,currState.length)
    setCurrState(newString) // write new state back to cookie
  }
}

function getGIF(n) {
  var mom = db[n].parent  // is entry a parent?
  var expanded = currState.charAt(n-1) // of clicked item
  if (!mom) {
    return endpointWidget
  } else {
    if (expanded == 1) {
      return expandedWidget
    }
  }
  return collapsedWidget
}

// returns the proper status line text based on the icon style
function getGIFStatus(n) {
  var mom = db[n].parent  // is entry a parent
  var expanded = currState.charAt(n-1) // of rolled item
  if (mom) {
    if (expanded == 1) {
      	return "Click to collapse menu items"
    } else {
  		return "Click to expand menu items"  
    }
  }
  
}

function initialize() {
  // pre-load all images into cache
  var collapsedImg = new Image(widgetWidth,widgetHeight)
  collapsedImg.src = collapsedWidget

  var expandedImg = new Image(widgetWidth,widgetHeight)
  expandedImg.src = expandedWidget

  // expose cookie as global variable for speed
  currState = getCurrState()
  // initialize 'current state' storage field
  if (currState == "" || currState.length != (db.length-1)) {
    initState = ""
    for (i = 1; i < db.length; i++) {
      initState += "0" // By default open all items..
    }
    setCurrState(initState)
  }
}

function buildBody() {

  var newOutline = ""
  var prevIndentDisplayed = 0
  var showMyDaughter = 0

  // cycle through each entry in the outline array
  for (var i = 1; i < db.length; i++) {
    var theGIF = getGIF(i)              // get the image
    var theGIFStatus = getGIFStatus(i)      // get the status message
    var currIndent = db[i].indent         // get the indent level
    var expanded = currState.charAt(i-1)    // current state

    // set the display target for the URL
    var displayTarget = "_self";
	var parentURL = "javascript:history.go(0)"
	// change it to home?
	parentURL = "/pages/home/home.asp"
    if (currIndent == 0 || currIndent <= prevIndentDisplayed || 
    (showMyDaughter == 1 && (currIndent - prevIndentDisplayed == 1))) {
      // Display menu itme
      if (theGIF != endpointWidget) { // parent
        newOutline += "<div class='men" + currIndent + "'>"
		// HREF='javascript:history.go(0)' " - Use this to just expand parent
		// HREF='" + db[i].URL + "' " - Use this to display first child link on click 
		if (theGIF != expandedWidget && db[i].URL != "" && db[i].URL != "#" )
		{
			parentURL = db[i].URL
		}
        newOutline += "<A class='menuItem' HREF='" + parentURL + "' " 
		newOutline += " onMouseOut=\"window.status=' ';return true;\" "
		newOutline += " onMouseOver=\"window.status=\'" + theGIFStatus + "\';return true;\" "
        newOutline += " onClick=\"toggle(" + i + ");return true " + "\">"
        newOutline += "<IMG SRC='" + theGIF + "' HEIGHT=" + widgetHeight + " WIDTH=" + widgetWidth + " BORDER=0>"   
        newOutline += " " + db[i].display + "</A>"  
		newOutline += "</div>"
      } else { // child
		newOutline += "<div class=\"lev" + currIndent + "\">"
        newOutline += " <A id='" + db[i].menuId + "' class='menuItem' HREF='" + db[i].URL + "' "
		newOutline += " onMouseOut=\"window.status=' ';return true;\" "
		newOutline += " onMouseOver=\"window.status=\'" + db[i].statusMsg + "\'; return true;\">" 
		newOutline += " " + db[i].display + "</A>"
		newOutline += "</div>"
      }
      prevIndentDisplayed = currIndent
      showMyDaughter = expanded
      document.writeln(newOutline)
      newOutline = ""
    }
  }
  document.writeln(newOutline)
}


var collapsedWidget = "/images/over.gif"
var expandedWidget  = "/images/down.gif"
var endpointWidget  = "";                               
var widgetWidth  = 12
var widgetHeight = 12
var db = new Array()
var dbcount=0


dbAdd(false, "Home", "/pages/home/home.asp", 0, "Home", "menu_home");

dbAdd(false, "Demographics", "/pages/demographics/demographics.asp", 0, "Peoria Area Muslim Demographics", "menu_demographics");

dbAdd(false, "ICP Constitution", "/pages/constitution/constitution.asp", 0, "ICP Constitution", "menu_icp_constitution");

dbAdd(false, "ICP Committee", "/pages/committee/committee.asp", 0, "ICP Committee", "menu_icp_committee");

/*
dbAdd(false, "General Body Meeting", "/pages/generalbodymeeting/generalbodybmeeting.asp", 0, "General Body Meeting", "menu_generalbodymeeting");
*/

dbAdd(false, "ICP Forms", "/pages/icpforms/icp_forms.asp", 0, "ICP Forms", "menu_icp_forms");

dbAdd(true, "Imam Section", "/pages/imam/about.asp", 0, "Imam Section", "");
dbAdd(false, "About Imam", "/pages/imam/about.asp", 1, "About Imam", "menu_imam_about");
dbAdd(false, "Contact Imam", "/pages/imam/contact.asp", 1, "Contact Imam", "menu_imam_contact");
dbAdd(false, "Imam Schedule", "/pages/imam/imam_schedule.asp", 1, "Imam Schedule", "menu_imam_schedule");

dbAdd(true, "Islamic Studies", "/pages/islamicstudies/introduction.asp", 0, "Islamic Studies", "");
dbAdd(false, "Introduction", "/pages/islamicstudies/introduction.asp", 1, "Introduction", "menu_introduction");
dbAdd(false, "Courses", "/pages/islamicstudies/classes.asp", 1, "Courses", "menu_courses");
dbAdd(false, "Webcast", "/pages/islamicstudies/webcast.asp", 1, "Webcast", "menu_webcast");
/*
dbAdd(false, "Aqeedah Class Registration", "/pages/islamicstudies/registration.asp", 1, "Registration", "menu_registration");
*/

/*
dbAdd(true, "Ramadan 2011", "/pages/ramadan/ramadan.asp", 0, "Ramadan 2011", "");
dbAdd(false, "Ramadan", "/pages/ramadan/ramadan.asp", 1, "Ramadan", "menu_ramadan");
dbAdd(false, "Musaabaqah", "/pages/ramadan/mussaabaqah.asp", 1, "Musaabaqah", "menu_Musaabaqah");
dbAdd(false, "EID", "/pages/ramadan/eid.asp", 1, "Eid", "menu_eid");
*/

/*
dbAdd(false, "Announcements", "/pages/announcements/announcements.asp", 0, "Announcements", "menu_announcements");
*/

dbAdd(true, "Announcements", "/pages/announcements/announcements.asp", 0, "Announcements", "");
dbAdd(false, "Jummuah", "/pages/announcements/announcements.asp", 1, "Announcements", "menu_announcements");
dbAdd(false, "Khotbah", "/pages/announcements/khotbah.asp", 1, "Khotbah", "menu_eid");
dbAdd(false, "PICC Project Update", "/pages/announcements/picc_project_update.asp", 1, "PICC Project Update", "menu_picc_project_update");
dbAdd(false, "Taxes", "/pages/announcements/taxes.asp", 1, "Taxes", "menu_taxes");

dbAdd(true, "Prayer Calendar", "/pages/calendar/monthly.asp", 0, "Prayer Calendar", "");
dbAdd(false, "Monthly", "/pages/calendar/monthly.asp", 1, "Prayer Calendar - Monthly", "menu_cal_month");
dbAdd(false, "Yearly", "/pages/calendar/yearly.asp", 1, "Prayer Calendar - Yearly", "menu_cal_year");

dbAdd(true, "Current Events", "/pages/currentevents/daily_events.asp", 0, "Current Events", "");
dbAdd(false, "Daily", "/pages/currentevents/daily_events.asp", 1, "Current Events - Daily", "menu_current_daily_events");
dbAdd(false, "Weekly", "/pages/currentevents/week_events.asp", 1, "Current Events - Weekly", "menu_current_week_events");
dbAdd(false, "Monthly", "/pages/currentevents/month_events.asp", 1, "Current Events - Monthly", "menu_current_month_events");
dbAdd(false, "Yearly", "/pages/currentevents/year_events.asp", 1, "Current Events - Yearly", "menu_current_year_events");


/*
dbAdd(false, "Upcoming Events ", "/pages/upcomingevents/upcoming_events.asp", 0, "Upcoming Events", "menu_upcoming_events");
*/

dbAdd(true, "Upcoming Events", "/pages/upcomingevents/upcoming_events.asp", 0, "Upcoming Events", "");
/*
dbAdd(false, "Basketball Registration", "/pages/upcomingevents/basketball.asp", 1, "Basketball", "menu_basketball");
dbAdd(false, "Summer Camp Registration", "/pages/upcomingevents/summercamp.asp", 1, "Summer Camp", "menu_summer_camp");
*/

dbAdd(true, "Community Project", "/pages/communityproject/introduction.asp", 0, "Peoria Islamic Community Center Project", "");
dbAdd(false, "Introduction", "/pages/communityproject/introduction.asp", 1, "Community Project - Introduction", "menu_introduction");
dbAdd(false, "Phase I Details", "/pages/communityproject/phase_1.asp", 1, "Community Project - Phase I Details", "menu_phase_1");
dbAdd(false, "Brochure", "/pages/communityproject/brochure.asp", 1, "Community Project - Brochure", "menu_brochure");
dbAdd(false, "Committees", "/pages/communityproject/committees.asp", 1, "Community Project - Committee", "menu_committees");
dbAdd(false, "Fundraising Thermometer", "/pages/communityproject/thermometer.asp", 1, "Community Project - Fundraising Thermometer", "menu_thermometer");
dbAdd(false, "Donations", "/pages/communityproject/donations.asp", 1, "Community Project - Donations", "menu_donations");
dbAdd(true, "Picture Gallery", "/pages/communityproject/picturegallery/exterior_pictures.asp", 1, "Community Project - Picture Gallery", "");
/*dbAdd(false, "PICC Pictures", "/pages/communityproject/picturegallery/picture_gallery.asp", 2, "Community Project - PICC Pictures", "menu_picture_gallery");*/
dbAdd(false, "Exterior Pictures", "/pages/communityproject/picturegallery/exterior_pictures.asp", 2, "Community Project - Exterior Pictures", "menu_exterior_pictures");
dbAdd(false, "Interior Pictures", "/pages/communityproject/picturegallery/interior_pictures.asp", 2, "Community Project - Interior Pictures", "menu_interior_pictures");
dbAdd(false, "Site Plan", "/pages/communityproject/picturegallery/site_plan.asp", 2, "Community Project - Site Plan", "menu_site_plan");
dbAdd(false, "Floor Plan", "/pages/communityproject/picturegallery/floor_plan.asp", 2, "Community Project - Floor Plan", "menu_floor_plan");
dbAdd(false, "Color Theme", "/pages/communityproject/picturegallery/color_theme.asp", 2, "Community Project - Color Theme", "menu_color_theme");
/*
dbAdd(true, "Fundraising Dinner", "/pages/communityproject/fundraising_dinner.asp", 1, "Community Project - Fundraising Dinner", "menu_fundraising_dinner");
dbAdd(false, "Flyer", "/pages/communityproject/fundraising_dinner.asp", 2, "Community Project - Fundraising Dinner", "menu_fundraising_dinner");
dbAdd(false, "Venue Directions", "/pages/communityproject/venue_directions.asp", 2, "Community Project - Venue Directions", "menu_venue_directions");
*/
dbAdd(true, "PICC Building Management", "/pages/piccbldgmanagement/introduction.asp", 0, "PICC Building Management", "");
dbAdd(false, "Introduction", "/pages/piccbldgmanagement/introduction.asp", 1, "PICC Building Management - Introduction", "menu_introduction");

dbAdd(true, "Peoria Muslim Club", "/pages/peoriamuslimclub/introduction.asp", 0, "Peoria Muslim Club", "");
dbAdd(false, "Introduction", "/pages/peoriamuslimclub/introduction.asp", 1, "Peoria Muslim Club - Introduction", "menu_introduction");
dbAdd(false, "Mens Club", "/pages/peoriamuslimclub/mens_club.asp", 1, "Peoria Muslim Club - Mens Club", "menu_mens_club");
dbAdd(false, "Sisters & Girls Hayat Club", "/pages/peoriamuslimclub/sisters_hayat_club.asp", 1, "Peoria Muslim Club - Sisters Hayat Club", "menu_sisters_hayat_club");
dbAdd(false, "Boys Club", "/pages/peoriamuslimclub/boys_club.asp", 1, "Peoria Muslim Club - Boys Club", "menu_boys_club");
dbAdd(false, "Civic Club", "/pages/peoriamuslimclub/civic_club.asp", 1, "Peoria Muslim Club - Civic Club", "menu_civic_club");
dbAdd(false, "Outreach Club", "/pages/peoriamuslimclub/outreach_club.asp", 1, "Peoria Muslim Club - Outreach Club", "menu_outreach_club");
dbAdd(false, "Dos and Donts", "/pages/peoriamuslimclub/dos_and_donts.asp", 1, "Peoria Muslim Club - Dos and Donts", "menu_dos_and_donts");
dbAdd(false, "Registration", "/pages/peoriamuslimclub/registration.asp", 1, "Peoria Muslim Club - Registration", "menu_registration");

dbAdd(true, "Islamic Schools", "/pages/islamicschools/darululoom/darul_uloom.asp", 0, "Full Time Islamic School - Darul Uloom", ""); 
dbAdd(false, "Darul Uloom", "/pages/islamicschools/darululoom/darul_uloom.asp", 1, "Full Time Islamic School - Darul Uloom", "menu_darul_uloom"); 
dbAdd(false, "Noor Al-Huda", "/pages/islamicschools/nooralhuda/noor_al_huda.asp", 1, "Sunday School - Noor Al-Huda", "menu_noor_al_huda"); 
dbAdd(true, "Hafs Center", "/pages/islamicschools/hafscenter/hafs_center_overview.asp", 1, "Hafs Quranic Center - Overview", ""); 
dbAdd(false, "Announcements & News", "/pages/islamicschools/hafscenter/hafs_center_announcements.asp", 2, "Hafs Quranic Center - Announcements & News", "menu_hafs_center_announcements"); 
dbAdd(false, "Overview", "/pages/islamicschools/hafscenter/hafs_center_overview.asp", 2, "Hafs Quranic Center - Overview", "menu_hafs_center_overview"); 
dbAdd(false, "Previous Sessions Pictures", "/pages/islamicschools/hafscenter/hafs_center_pictures.asp", 2, "Hafs Quranic Center - Previous Sessions Pictures", "menu_hafs_center_pics"); 

dbAdd(true, "Islamic Resources", "/pages/resources/why_islam.asp", 0, "Resources", "");
dbAdd(false, "Why Islam", "/pages/resources/why_islam.asp", 1, "Why Islam", "menu_why_islam");
dbAdd(false, "Downloads", "/pages/resources/downloads.asp", 1, "Downloads", "menu_resources_downloads");
dbAdd(false, "Links", "/pages/resources/links.asp", 1, "Links", "menu_resources_links");

dbAdd(true, "Other Masajids", "/pages/masjids/magp.asp", 0, "Peoria Masjids", "");
dbAdd(false, "MAGP", "/pages/masjids/magp.asp", 1, "Peoria Masjids - MAGP", "menu_pm_magp");
dbAdd(false, "Masjid Salaam", "/pages/masjids/ifp.asp", 1, "Peoria Masjids - Masjid Salaam", "menu_pm_ifp");
dbAdd(false, "MSA", "/pages/masjids/msa.asp", 1, "Peoria Masjids - MSA", "menu_pm_msa");

dbAdd(true, "Outreach", "/pages/outreach/audio_video.asp", 0, "Outreach - Dawa", "");
dbAdd(false, "Audio-Video", "/pages/outreach/audio_video.asp", 1, "Outreach - Audio-Video", "menu_audio_video");
/*dbAdd(false, "Calendar of Events", "/pages/outreach/events_calendar.asp", 1, "Outreach - Calendar of Events", "menu_events_calendar");*/
dbAdd(false, "Islamic Programs", "/pages/outreach/islamic_programs.asp", 1, "Outreach - Islamic Programs", "menu_islamic_programs");

dbAdd(false, "Read about Islam", "/pages/outreach/english_section.asp", 1, "Outreach - Read about Islam", "menu_abt_islam_english_sect");

dbAdd(false, "Facebook", "/pages/socialnetwork/facebook.asp", 0, "Facebook", "menu_facebook");

dbAdd(false, "Useful Links", "/pages/outreach/useful_links.asp", 1, "Outreach - Useful Links", "menu_useful_links");

dbAdd(false, "Classifieds", "/pages/classifieds/classifieds.asp", 0, "Classifieds", "menu_classifieds");

dbAdd(false, "Contact Us", "/pages/feedback/feedback.asp", 0, "Contact Us", "menu_feedback");

dbAdd(false, "Administration", "/pages/admin/list.asp", 0, "Administration", "menu_admin");
var currState
initialize();

