 /***********News and Press Release Section on Front Page**************/

/* News Array Data                                            */
/* Manually enter 5 most recent news releases                 */
/* Unless it is a notice or rate change, those will stay up   */
/* until I.S. is notified to remove                           */

var newsArray=new Array(5);  //Holds all news info

for(var w=0; w <5; w++)
  newsArray[w]=new Array(5);  //Creates two demensional array
  
// Field 1 - Date/Deadline   
// Field 2 - Title
// Field 3 - PDF name
// Field 4 - Body of message
// Field 5 - unassigned
	
/*Sample NOTICE*/
//newsArray[0][0] = "EFFECTIVE JANUARY 1, 2011";
//newsArray[0][1] = "NOTICE OF FEES/CHARGES";
//newsArray[0][2] = "brochures/finance/rateFeeNotification";
//newsArray[0][3] = "In accordance with City Code Chapter 3.20 Fees and Service Charge Revenue/Cost Comparison & Charging System, the following service center(s) fees/charges are increased effective January 1, 2011. <u><b>S-285 Refuse Service</b>&nbsp;&nbsp;Current Fee - $14.97&nbsp;&nbsp;&nbsp;&nbsp;New Fee - $15.01</u>" ;
//newsArray[0][4] = "notice";


newsArray[0][0] = "June 16th, 2011";
newsArray[0][1] = "Sewer Relief Valve and Backwater Valve Information";
newsArray[0][2] = "/forms/formsCategory.html#publicWorks";
newsArray[0][3] = "The Lake Havasu City Council has directed staff to institute a program to provide the community an increased level of security against sewage backups into their homes. For a list of forms and information click <a target='_blank'  href='/forms/formsCategory.html#publicWorks'>HERE</a>.";
newsArray[0][4] = "other";

newsArray[1][0] = "February 1-14, 2012";
newsArray[1][1] = "Lake Havasu City's Surplus Property On-Line Auctions";
newsArray[1][2] = "auction.html";
newsArray[1][3] = "Lake Havasu City will be holding online auctions for its next disposal of surplus inventory.  All individual auctions will begin on February 1, 2012, and close February 14, 2012.  All vehicles listed for sale will be available for viewing only once on Saturday, February 4, 2012, from 8:00 a.m. to 1:00 p.m. at Lake Havasu City's Water Treatment Plant, 925 Port Drive, Lake Havasu City, AZ, 86404.  The public... <a href='auction.html'>(More)</a>";
newsArray[1][4] = "other";

newsArray[2][0] = "February 22th, 2012";
newsArray[2][1] = "Lake Havasu Police Investigate Separate Stabbing and Shooting Incidents";
newsArray[2][2] = "policeInvestigateStabbingShooting";
newsArray[2][3] = "On Saturday, February 19, 2012, at approximately 2:00 p.m., Lake Havasu City Police Department officers responded to the 500 block of Knobhill Drive on a report of an in-progress assault. The female caller advised that her ex-boyfriend, 18-year-old Lake Havasu City resident Carlos J. Garcia, allegedly just stabbed her new boyfriend. Garcia fled the scene prior to police arrival. He was spotted driving his vehicle a short time later and was stopped on State Route 95 at Chenoweth Drive where he was taken into custody.";
newsArray[2][4] = "pressRelease";

newsArray[3][0] = "January 21, 2012";
newsArray[3][1] = "Water Conservation";
newsArray[3][2] = "publicWorks/waterResources.html";
newsArray[3][3] = "Lake Havasu City has run out of funding for the water conservation rebate program for this year.  The City would like to thank all of those who participated to help save water.  More than 260 toilets were replaced and more than 190 hot water recirculation pumps, 80 pressure regulators, and 90 swimming pool covers were added.";
newsArray[3][4] = "other";

newsArray[4][0] = "April 1st, 2012";
newsArray[4][1] = "Employment News!";
newsArray[4][2] = "/brochures/temp/neogovAnnouncement.pdf";
newsArray[4][3] = "Lake Havasu City Human Resources will implement a new online hiring management system called NEOGOV. The new system will allow us to offer more timely employment service and information.";
newsArray[4][4] = "other";
	
  
/*-----Scrolling News Functions-------*/  

var newsNumber;
var newsTime;
var tmpNum;
var opacity=0;
	
function rotatingNews(x){
  if(x>4){
    x=0;
  }
		
  newsNumber=x;
	  
  for(var i=0;i<5;i++){
    if(newsNumber==i){
	  document.getElementById('newsNav'+i).style.backgroundColor="white";
	  document.getElementById('newsNav'+i).style.color="#1a1a1a";
	  document.getElementById('newsNav'+i).style.borderColor="#1a1a1a";
	}
	else{
	  document.getElementById('newsNav'+i).style.backgroundColor="#3c7577";
	  document.getElementById('newsNav'+i).style.color="white";
	  document.getElementById('newsNav'+i).style.borderColor="#3c7577";
	}
  }
	  
  fadeNews(0);
		
		if(newsArray[newsNumber][4]=="pressRelease"){
	document.getElementById('newsTitle').innerHTML="<div id='newsDate'>"+newsArray[newsNumber][0]+"</div><a target='_blank' href='pressReleases/pressReleases/"+newsArray[newsNumber][2]+".pdf'>"+newsArray[newsNumber][1]+"</a>";
    document.getElementById('newsContent').innerHTML="<p style='padding:0px 5px 0px 5px;margin:0px;'>"+newsArray[newsNumber][3].substring(0,380)+"... <a target='_blank' href='pressReleases/pressReleases/"+newsArray[newsNumber][2]+".pdf'>(More)</a></p>";
  }
	  
  else if(newsArray[newsNumber][4]=="notice"){
    document.getElementById('newsTitle').innerHTML="<div id='newsDate'  style='color:#a92d2d;'>"+newsArray[newsNumber][0]+"</div><a target='_blank' href='"+newsArray[newsNumber][2]+".pdf' style='color:#a92d2d;'>"+newsArray[newsNumber][1]+"</a></span>";
    document.getElementById('newsContent').innerHTML="<p style='padding:0px 5px 0px 5px;margin:0px;'>"+newsArray[newsNumber][3].substring(0,550)+"</p>";  
  }
		
		else if(newsArray[newsNumber][4]=="other"){
			document.getElementById('newsTitle').innerHTML="<div id='newsDate'>"+newsArray[newsNumber][0]+"</div><a target='_blank' href='"+newsArray[newsNumber][2]+"'>"+newsArray[newsNumber][1]+"</a>";
    document.getElementById('newsContent').innerHTML="<p style='padding:0px 5px 0px 5px;margin:0px;'>"+newsArray[newsNumber][3].substring(0,570)+"</p>";			
		}

  tmpNum=newsNumber+1;
  newsTime=setTimeout('rotatingNews(tmpNum)',10000);
}
	
function fadeNews(y){ 
  opacity=y;
	  
  if(opacity<100){ 
    document.getElementById("newsTitle").style.filter="Alpha(opacity="+opacity+")";
	document.getElementById("newsTitle").style.MozOpacity=opacity;
	document.getElementById("newsTitle").style.opacity=opacity/100;
	document.getElementById("newsContent").style.filter="Alpha(opacity="+opacity+")";
	document.getElementById("newsContent").style.MozOpacity=opacity;
	document.getElementById("newsContent").style.opacity=opacity/100;
    opacity=opacity+10;
	var fadeTime=setTimeout('fadeNews('+opacity+')',60);
  }
  else{
    clearTimeout(fadeTime);
  }      
}
		
function chooseNews(x){
  clearTimeout(newsTime);
	  
  if(x=='next'){
    if(newsNumber==4)
      rotatingNews(0);
	else{
	  newsNumber=newsNumber+1;
	  rotatingNews(newsNumber);
	}
  }
  else if(x=='prev'){
    if(newsNumber==0)
      rotatingNews(4);
	else{
	  newsNumber=newsNumber-1;
	  rotatingNews(newsNumber);
	}
  }
  else
    rotatingNews(x);
}

/***********Front Page Calendar and Meeting/Events Page**************/

var dateArray = new Array();
var calendarArray = new Array();

function indexInit(){
  meetingsEventInit();
  var date = new Date();
  var month = date.getMonth();
  var year=date.getFullYear();
  createCal(year,month);
  checkCookie();
  rotatingNews(0);
}

function meetingsEventInit(){

  var bString = navigator.userAgent;

  if(bString.indexOf("MSIE 6.0")!=-1 || bString.indexOf("MSIE 5.5")!=-1|| bString.indexOf("MSIE 8.0")!=-1){

    var xmlDoc;
    xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
    xmlDoc.async=false;
    xmlDoc.load("http://www.lhcaz.gov/meetings/calendar.xml");
    var nodes=xmlDoc.selectNodes('/calendar/meetingEvent');

    for(var i=0;i<nodes.length;i++){
      calendarArray[i]=new Array();
        for(var j=0;j<12;j++){
          var tmpNode=nodes[i].childNodes[j].text;
	  calendarArray[i][j]=tmpNode;        
        }
    }
  }
 
  else{
    var xmlhttp = new window.XMLHttpRequest();
    xmlhttp.open("GET","http://www.lhcaz.gov/meetings/calendar.xml",false);
    xmlhttp.send(null);
    var xmlDoc = xmlhttp.responseXML.documentElement;
    var xmlObj = xmlDoc.getElementsByTagName("meetingEvent");

    var subxmlObj = new Array();

    for(var x=0;x<xmlObj.length;x++){
      subxmlObj[x] = xmlObj[x].getElementsByTagName("field");
    }

    for(var i=0;i<xmlObj.length;i++){
      calendarArray[i]=new Array();
        for(var j=0;j<12;j++){
          if(subxmlObj[i][j].childNodes[0].childNodes[0]==undefined){
            calendarArray[i][j]="";
          }
          else{
            var tmpNode=subxmlObj[i][j].childNodes[0].childNodes[0].nodeValue;
	    calendarArray[i][j]=tmpNode;
          }
        }
     }
  }

  var tmpDateArray=new Array();
  var tmpArrayCount=0;
  var dayCount=0;

  for(var u=0;u<calendarArray.length;u++){
    tmpDayNumStart=calendarArray[u][1].substring(6,8);
    tmpDayNumEnd=calendarArray[u][2].substring(6,8);
    tmpMonthNumStart=calendarArray[u][1].substring(4,6);
    tmpMonthNumEnd=calendarArray[u][2].substring(4,6);
    tmpYearNumStart=parseInt(calendarArray[u][1].substring(0,4));
    tmpYearNumEnd=parseInt(calendarArray[u][2].substring(0,4));

    sDate = new Date(tmpMonthNumStart+"/"+tmpDayNumStart+"/"+tmpYearNumStart);
    eDate = new Date(tmpMonthNumEnd+"/"+tmpDayNumEnd+"/"+tmpYearNumEnd);
    dayCount = (Math.abs(Math.round((sDate-eDate)/86400000)))+1;

    for(var k=0;k<dayCount;k++){
      if(k>0)
        sDate.setDate(sDate.getDate() + 1);
      var nextDayDay = ''+sDate.getDate();
      var nextDayMonth = ''+(sDate.getMonth()+1);
      var nextDayYear = ''+sDate.getFullYear();
      if(nextDayMonth.length==1)
        nextDayMonth='0'+nextDayMonth;
      if(nextDayDay.length==1)
	nextDayDay='0'+nextDayDay;
		
      tmpDateArray[tmpArrayCount]=nextDayYear+nextDayMonth+nextDayDay;
      tmpArrayCount++		
    }
  }

  var sortDateArray=tmpDateArray.sort();
  var dupCheck='';
  var dateArrayCount=0;

  for(var l=0;l<sortDateArray.length;l++){
	if(sortDateArray[l]!=dupCheck){
	  dateArray[dateArrayCount]=new Array(sortDateArray[l],'x','x');
	  dupCheck=sortDateArray[l];
	  dateArrayCount++;
	}
  }


  for(var m=0;m<dateArray.length;m++){
    for(var n=0;n<calendarArray.length;n++){
      if(dateArray[m][0]>=calendarArray[n][1]&&dateArray[m][0]<=calendarArray[n][2]&&calendarArray[n][5]=="meeting"){
	dateArray[m][2]='meeting';			
      }
    }
  }

  for(var o=0;o<dateArray.length;o++){
    for(var p=0;p<calendarArray.length;p++){
      if(dateArray[o][0]>=calendarArray[p][1]&&dateArray[o][0]<=calendarArray[p][2]&&calendarArray[p][5]=="event"){
	dateArray[o][1]='event';			
      }
    }
  }
}

function buildDayDiv(tmp){
  var eventCount=0;
  var eventString="<table class=@eventPop@ cellpadding=0 cellspacing=2>";
  for(var q=0;q<calendarArray.length;q++){
    if(calendarArray[q]!=null){
      if(parseInt(tmp)>=parseInt(calendarArray[q][1]) && parseInt(tmp)<=parseInt(calendarArray[q][2])){
        if(calendarArray[q][5]=='event'){
          eventString+="<tr><td style=@border:1px solid #1a1a1a;background-color:#3c7577;@><span class=@dateClass@>"+calendarArray[q][3]+"&nbsp;"+calendarArray[q][4]+"\
	  </td></tr><tr><td><span class=@titleClass@>"+calendarArray[q][6]+"</span><br>"+calendarArray[q][7]+"<br>"+calendarArray[q][8]+"</td></tr>";
        }
        else{
          eventString+="<tr><td style=@border:1px solid #1a1a1a;background-color:#3c7577;@><span class=@dateClass@>"+calendarArray[q][3]+"&nbsp;"+calendarArray[q][4]+"\
	  </td></tr><tr><td><span class=@titleClass@>"+meetingCom(calendarArray[q][9])+"</span><br>"+calendarArray[q][10]+"<br>"+meetingLoc(calendarArray[q][11])+"</td></tr>";
        }
      }
    }
  }
  eventString+="</td></tr></table>";
  return eventString;
}

function meetingLoc(locValue){
  switch(locValue){
   case 'airport': return 'Airport'; break;
   case 'aquaticCenter': return 'Aquatic Center'; break;
			case 'bullhead': return 'Bullhead City'; break;
   case 'cityhall109': return 'City Hall Room 109'; break;
   case 'cityhall155': return 'City Hall Room 155'; break;
   case 'cityhall249': return 'City Hall Room 249'; break;
   case 'chamberOfCommerce': return 'Chamber of Commerce'; break;
   case 'councilroom': return 'Council Chambers'; break;
   case 'fireStation2': return 'Fire Station 2'; break;
			case 'hampton': return 'Hampton Inn'; break;
   case 'interagency': return 'Interagency'; break;
			case 'kingman': return 'Kingman'; break;
   case 'pdConfRoom': return 'PD Conference Room'; break;
			default: return locValue;
  }
}

function meetingCom(comValue){
  switch(comValue){
   case 'cityCouncil': return 'City Council'; break;
   case 'airportAdvisory': return 'Airport Advisory Board'; break;
   case 'adaAdvisory': return 'ADA Advisory Board'; break;
   case 'boardOfAdjustment': return 'Board of Adjustment'; break;
   case 'buildingBoardOfAppeals': return 'Building Board of Appeals'; break;
   case 'cvb': return 'Convention and Visitors Bureau'; break;
   case 'developmentAdvisoryBoard': return 'Development Advisory Board'; break;
   case 'hyac': return 'Havasu Youth Advisory Council'; break;
   case 'employeeBenefitTrust': return 'Employee Benefit Trust'; break;
   case 'fireRetirement': return 'PSPRS Local Fire Board'; break;
   case 'mainStreetBoard': return 'Main Street Board of Directors'; break;
   case 'policeRetirement': return 'PSPRS Local Police Board'; break;
   case 'parksAndRecAdvisory': return 'Parks and Recreation Advisory Board'; break;
			case 'partnershipForEconomicDevelopment': return 'Partnership for Economic Development'; break;
   case 'planningAndZoning': return 'Planning and Zoning Commission'; break;
   case 'publicWorksAdvisory': return 'Public Works Advisory Board'; break;   
   case 'connectHavasuSteering': return 'Connect Havasu Steering Committee'; break;
   case 'transitAdvisory': return 'Transit Advisory Board'; break;
			case 'triCity': return 'Tri-City Council'; break;
  }
}

function createCal(yearVar,monthVar)
{
  var mNames=['January','February','March','April','May','June','July','August','September','October','November','December'];
  var lastDay=[31,0,31,30,31,30,31,31,30,31,30,31];
  var firstDay=new Date(yearVar,monthVar,1);
  var monthStart=firstDay.getDay()+1;	

  lastDay[1]=(((firstDay.getFullYear()%100!=0)&&(firstDay.getFullYear()%4==0))||(firstDay.getFullYear()%400==0))?29:28;	

  var calDivString = "<table id='calNavTab' cellpadding=0 cellspacing=0><tr><td style='width:20px;'><a href='#' onclick='createCal(";

  if(monthVar==0)
    calDivString+=(yearVar-1)+","+11+")'>";
  else
    calDivString+=yearVar+","+(monthVar-1)+")'>";

  calDivString+="<img src='images/calPrev.jpg' border=0></a></td><td colspan=5>"+mNames[monthVar]+"&nbsp;"+yearVar+"</td>\
  <td style='width:20px;'><a href='#' onclick='createCal(";

  if(monthVar==11)
    calDivString+=""+(yearVar+1)+",0)'>";
  else
    calDivString+=yearVar+","+(monthVar+1)+")'>";

  calDivString+="<img style='margin:auto;' src='images/calNext.jpg' border=0></a></td></tr></table><table id='weekHeaderTab' cellpadding=0 cellspacing=1><tr>";
			
  for(var r=0;r<7;r++)
    calDivString+="<td class='day'>"+'SMTWTFS'.substr(r,1)+"</td>";
	
  calDivString+="</tr></table><table id='monthTab' cellpadding=0 cellspacing=1><tr>"

  for(var s=1;s<=42;s++){
    if((s-monthStart>=0)&&(s-monthStart<lastDay[monthVar])){
      var strMonth = ''+(monthVar+1); 

      if(strMonth.length==1)
        strMonth='0'+strMonth;

      var strYear = ''+yearVar;
      var strDay = ''+(s-monthStart+1);

      if(strDay.length==1)
	strDay='0'+strDay;

      var tmpDate=strYear+strMonth+strDay;
      var tmpS = buildDayDiv(tmpDate);

      for(var t=0;t<dateArray.length;t++){
        if(tmpDate==dateArray[t][0]){
	  var x="<td class='activeDate' onMouseOver='calendarPop(\""+tmpS+"\",1)' onMouseOut='calendarPop(\""+tmpS+"\",0)'><a href='meetings/meetingAndEvents.php?type=all#"+tmpDate+"'>"+(s-monthStart+1)+"</a></td>";
	  break;
        }
        else
	  var x="<td class='nactiveDate'>"+(s-monthStart+1)+"</td>";
      }			
   }
   else
     var x="<td class='noDate'>&nbsp;</td>";

   calDivString+=x;
   if(((s)%7==0)&&(s<36))
     calDivString+="</tr><tr>";
 }			
 calDivString+="</tr><tr></table><p style='font:normal 9px arial;padding:3px;margin:0px;'>*Click on date to view day\'s events</p>";
 document.getElementById('calContainer').innerHTML=calDivString;
}

function calendarPop(dayDiv,flag){
  if(flag!=0){
    var posArray=findPos(document.getElementById('calNavTab'));
    var calTop = (posArray[1]+22);
    var calLeft = ((posArray[0])-252);
    var tmpDayDiv =dayDiv.replace(/@/g,"'");
    document.getElementById('calPopDiv').innerHTML=tmpDayDiv;	
    document.getElementById('calPopDiv').style.display="block";
    document.getElementById('calPopDiv').style.top=calTop+"px";
    document.getElementById('calPopDiv').style.left=calLeft+"px";
  }
  else
    document.getElementById('calPopDiv').style.display="none";
}
