		// ---------------------------------------------
		function PostActionRequest(action, target)
		{
			//postback event handling
			var objectTargetContainer = document.all[objectTargetContainerName];
			objectTargetContainer.value = target;
			var postBackEventCall = postBackEventReferenceTemplate.replace(/javascript\:/i,"").replace(/\[action\]/gi,action);
			eval(postBackEventCall);
		}
		
		//---------------------------------------------------------------------------------------------------------
        function button_msover(anImage)
        {
	        with(anImage) src = src.replace(".gif","_ms.gif");
        } 

        //---------------------------------------------------------------------------------------------------------
        function button_msout(anImage)
        {
	        with(anImage) src = src.replace("_ms.gif",".gif");
        }
				
		//------------------------------------------------------------------
		function Replace( astring, findstr, replacestr)
		{
			return astring.split(findstr).join(replacestr);
		}		
		
		//------------------------------------------------------------------
		function ExecuteSearch()
		{
		    with(document.forms[0])
		    {
		        var classificationChecked = false;
		        for(var i=0; i<ClassificationID.length; i++)
		            if (classificationChecked = ClassificationID[i].checked)
		                break;
		                
		        var monthChecked = false;
		        for(var i=0; i<Month.length; i++)
		            if (monthChecked = Month[i].checked)
		                break;
		                
		        if (!(monthChecked || classificationChecked ))
		        {
		            alert("You have no search terms entered.\n\nPlease select at least one classification or enter a month to search for.");
		            return;
		        }
		        PostActionRequest("execute-search");
		    }
		}
		
		//------------------------------------------------------------------
		function ExecuteTestSearch()
		{
		    with(document.forms[0])
		    {
		        var classificationChecked = false;
		        for(var i=0; i<ClassificationID.length; i++)
		            if (classificationChecked = ClassificationID[i].checked)
		                break;
		                
		        var monthChecked = false;
		        for(var i=0; i<Month.length; i++)
		            if (monthChecked = Month[i].checked)
		                break;
		                
		        if (!(monthChecked || classificationChecked ))
		        {
		            alert("You have no search terms entered.\n\nPlease select at least one classification or enter a month to search for.");
		            return;
		        }
		        PostActionRequest("execute-test-search");
		    }
		}
		
		//------------------------------------------------------------------
		function ShowAllEvents()
		{
		    with(document.forms[0])
		    {
		        for(var i=0; i<ClassificationID.length; i++)
		            ClassificationID[i].checked = false;
		        for(var i=0; i<Month.length; i++)
		            Month[i].checked = false;
    	        PostActionRequest("execute-search");
		    }
		}
		
		//------------------------------------------------------------------
		function ShowWeeklyEvents()
		{
   	        PostActionRequest("show-weekly");
		}
		
		//------------------------------------------------------------------
		function BuildALink()
		{
   	        PostActionRequest("show-link-generator");
		}
		
		//------------------------------------------------------------------
		function GenerateLinkFromCurrentSearch()
		{
		    with(document.forms[0])
		    {
	            var queryString = "";
	            var baseURL = "http://"+document.location.host+"/Events";
	            for(var i=0; i<ClassificationID.length; i++)
	                if (ClassificationID[i].checked)
	                    queryString += ((queryString=="")?"ClassificationID=":",") + ClassificationID[i].value;
    	                
		        for(var i=0; i<Month.length; i++)
		            if (Month[i].checked)
		            {
                        queryString += ((queryString=="")?"":"&") + "Month=" + Month[i].value;
		                break;
		            }

                if (queryString)
                    prompt('Here is your link.  Copy it using [CTRL]-C, then click \"Ok\" or \"Cancel\".  Paste it into your new page link by using [CTRL]-V.',baseURL+"?action=execute-search&"+queryString);
                    //prompt('Here is your link.  \r\n\r\n\tCopy it using [CTRL]-C, then click \"Ok\" or \"Cancel\".  \r\n\r\n\tPaste it into your new page link by using [CTRL]-V.',baseURL+"?action=execute-search&"+queryString);
                else
                    alert('No search options have been selected!');
            }
		}
		
		//------------------------------------------------------------------
		function GetSearchTerms()
		{
		    PostActionRequest("get-search-terms");
		}
			
	    
	    //------------------------------------------------------------------
		function GetSubClassifications()
		{
		    PostActionRequest("get-subclassifications", document.forms[0].Classification1.value );
		}
			
		//------------------------------------------------------------------
		function CancelEdit()
		{
		    PostActionRequest("cancel");
		}
			
	    //------------------------------------------------------------------
		function PostItem()
		{
		    SelectAll( document.forms[0].ClassificationIDs );
		    PostActionRequest("post");
		}
				
		//------------------------------------------------------------------
		function AddNewItem()
		{
		    PostActionRequest("add");
		}
				
		//------------------------------------------------------------------
		function EditItem()
		{
			var aselect = document.forms[0].ItemSelector;
			var anarray=ReadSelection( aselect );
			
			if (anarray.length==1)
			{
    		    PostActionRequest("edit",aselect.options[anarray[0]].value);
			}
		}

		//------------------------------------------------------------------
		function DeleteItem()
		{
			var aselect = document.forms[0].ItemSelector;
			var anarray=ReadSelection( aselect );
			var astring = "";
			var ItemIDs = "";
			
			for(var i=0; i<anarray.length; i++)
				{
				 astring += "\n\t"+aselect.options[anarray[i]].text;
				 ItemIDs += "," + aselect.options[anarray[i]].value;
				}


			if ((anarray.length)&&confirm("You are about to delete these Item(s).\n"+ astring))
				{
				    if ((anarray.length==1)||confirm("Are you sure?!"))
				    {
        		        PostActionRequest("delete",ItemIDs);
				    }
				}
		}
		
		//------------------------------------------------------------------
		function ReadSelection( aselect )
		{
			var anarray = [];
			with (aselect) 
				for(var i=0;i<options.length;i++) 
					if((options[i].selected)&&(options[i].value)) 
						anarray[anarray.length]=i;
			return anarray;
		}

