//manageEventPT page javascript

function validateEventDesc()
{
        var formcontent= clean(tinyMCE.getContent());
        formcontent=formcontent.split(" ");
        if(TinyMCE_countWords( tinyMCE.getContent()) >500)
        {
            alert(EVNT_TGS017_069);
            return false;
        }
        else
        {
        	return true;
        }
        
 }
 
function clean(content)
{
    content = content.replace(/<(.+?)>/g, ' ');//remove html
    content = content.replace('&nbsp;', ' ', 'g');//replace &nbsp; with space
    content = content.replace(/&(.+?);/g, '1');//convert entities to single character
    return content;
} 
        
    
    function addArchiveDesc()
    
    {       hiddenFloatingDiv('add_archive_desc_win');
        
    }
    function closeArhiveDesc() {
      hiddenFloatingDiv('add_archive_desc_win');
    }
    
    /** 
    *  displayArchiveDescDiv : 
    *  Parameters       : No parameters
    *  Return Value     : null
    *  Compatibility    : Internet Explorer(6.0)&Mozilla Firefox(5.0)
    **/
    function displayArchiveDescDiv() {
     //displayWindow('add_archive_desc_slot','');

      hideSelectBoxes('dummy_form');
      displayWindow('add_archive_desc_win','dummy_form');        
    }
    
    
    function validateFeaturedArchives()
     {
        var flg_featured_value = getradioval(document.manage_event.flg_featured);
        if (flg_featured_value == "1")
        {
        
        var end_date_obj=document.manage_event.end_date;
        var end_date_value=new Date(end_date_obj.value);
        var featured_archive_expiry_obj=document.manage_event.featured_archive_expiry;
        var featured_archive_expiry_value=new Date(featured_archive_expiry_obj.value);
         if(featured_archive_expiry_obj.value == '')
         {
            alert('Featured archive expiry date is required');
            return false;
         }
         if (featured_archive_expiry_value >= end_date_value)
         {
            return true;
         }
         else
         {
            alert('Featured archive expiry date shall be greater than event end date');
            return false;
         }
        }
        return true     
     }

    /**                
    * validatePgmDates      : to validate the program dates
    * Parameters            : None
    * Return Value          : No Return Value
    * Compatibility         : IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
    **/

    function validatePgmDates() 
    {
      var pgmtblobj = document.getElementById('program_table');
      if (pgmtblobj.rows.length > 1)
      {
         for (var i=1; i <pgmtblobj.rows.length; i++)
         {
            pgm_date = ts_getInnerText(pgmtblobj.rows[i].cells[1]);
            var start_date_obj=document.manage_event.start_date;
        var end_date_obj=document.manage_event.end_date;
        var start_date_value=new Date(start_date_obj.value);
        var end_date_value=new Date(end_date_obj.value);
        var program_date_value=new Date(pgm_date);
        if(document.manage_event.start_date.value == '')
          {
              alert(EVNT_TGS017_021);
              return false;
          }
        if(document.manage_event.end_date.value == '')
          {
              alert(EVNT_TGS017_022);
              return false;
          }
        if(program_date_value>end_date_value || program_date_value<start_date_value)
          {
              alert(EVNT_TGS017_018);
              return false;
          }              
                
     
         }
         return true;
      }
      else
      {
        return true; // since no programs are not added to the event 
      }
    }
    
    /**                
    * numberTblRows         : it re-index the table row number
    * Parameters            : table_id:table id
    * Return Value          : No Return Value
    * Compatibility         : IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
    **/

    function numberTblRows(table_id) 
    {
        var table_obj = document.getElementById(table_id);
        for(var i=1; i < table_obj.rows.length; i++)
        {
            insertContentIntoCell(table_obj.rows[i].id,0,i+'. ');
            document.getElementById(table_obj.rows[i].id).style.align='center';
           
        }
    }

    /**
    * showNextTab:This function is used to go to the next tab from the existing tab
    * Parameters : container_tab_id  : div tab id where tabs are added
    * Return Value: Shall not return any value
    * Compatibility: Internet Explorer v6.0; Mozilla v5.0; Netscape V7.1;
    */
    function showNextTab(container_tab_id)    
    { 
        var current_tab_index = getCurrentTabIndex();
        document.getElementById('previous_button').style.display ='block';
        showTab(container_tab_id, current_tab_index + 1);
        if(current_tab_index == 5)
        {
            document.getElementById('next_button').style.display ='none';
        }
    }

    function cancelForm()
    {
        document.manage_event.action_type.value='cancel'
        document.manage_event.submit();
                                               
    }


    /**
    * showPreviousTab:This function is used to go to the previous tab from the existing tab
    * Parameters : container_tab_id  : div tab id where tabs are added
    * Return Value: Shall not return any value
    * Compatibility: Internet Explorer v6.0; Mozilla v5.0; Netscape V7.1;
    */
    function showPreviousTab(container_tab_id)  
    {  
        var current_tab_index = getCurrentTabIndex();
        document.getElementById('next_button').style.display ='block';
        showTab(container_tab_id, current_tab_index - 1);
        if(current_tab_index == 1)
        {
            document.getElementById('previous_button').style.display ='none';
        }
    }

   
   /**
    * validateForm:This function is used to validate the manage event form fields on submit
    * Parameters : form  : Action form name
    *              action : Based on the parameter action is set to save or save and publish 
    * Return Value: Shall not return any value
    * Compatibility: Internet Explorer v6.0; Mozilla v5.0; Netscape V7.1;
    */
    function validateForm(form,action)  
    {   
        form.event_host.value = trim(form.event_host.value);
        if(validateRequired(form,manageRequired) && speakerRole() && registerType() && validateURL(form.external_event_url.value,'External Event URL','document.manage_event.external_event_url.focus()') && validateEventDesc() && validatePgmDates() && validateFeaturedArchives())
        {   
            if(compareEventDates())
            {
                document.getElementById('action_type').value=action;

                if (action=='saveAndPublish') {
                   if (confirmPublish())
                   {
                       form.submit();
                   }    
                }
                else
                {
                   form.submit();
                }
            }  
        }       
    }
    
    function registerType()
    {  
       var registeration_type= document.getElementById('registration_form_type').options[document.getElementById('registration_form_type').selectedIndex].value;
       var registration_doc = document.manage_event.upload_file.value;
       var registration_form = document.manage_event.registration_form.value;
       var prev_registration_doc = ''
       try {
       var prev_registration_doc = document.manage_event.exist_register_file.value;
       }
       catch(e)    {}
       if (registeration_type!='-1' && registration_doc!='')
       {
           alert(EVNT_TGS017_062);
           return false;
       }
       if (registeration_type!='-1' && prev_registration_doc!='')
       {
          alert(EVNT_TGS017_062);
          return false;
       }
       if (registration_doc!='' && prev_registration_doc!='')
       {
         alert(EVNT_TGS017_062);
         return false;
       }
       if (registeration_type=='url' && registration_form != '')
       { 
         if(validateURL(registration_form,'Registration'))
         {
            return true;
         }
         else
         {
            return false;
         }
       }
      
       return true;
      
    }
    
    
    function speakerRole()
    {
       var src_table_obj=document.getElementById('display_speakers_table');
       var src_table_row_length=src_table_obj.rows.length;
       var err_msg = '';
       var check_flag='false';
       if (src_table_row_length>=2)
       {    
           for(var index_assign=1;index_assign<src_table_row_length;index_assign++)
           {
                var src_table_row= src_table_obj.rows[index_assign];
                var src_table_row_cells_length=src_table_row.cells.length;
                
                for(var index_members=0;index_members<src_table_row_cells_length;index_members++)
                {
                    if(index_members == 2)
                    {
                        var src_select_role = getSelectObj(src_table_row.cells.item(index_members));
                        if (src_select_role.value==-1)
                        {
                          err_msg = err_msg+'\n'+src_table_row.cells.item(index_members-1).innerHTML;
                          check_flag = 'true';
                        }
                    }
                } 
            }
            if (check_flag == 'true')
            {
               alert(EVNT_TGS017_061+err_msg);
               return false;
            }
            else
            {
               return true;
            }   
       }
       else
       {
        return true;
       }
    }
  
    /**                
    *compareEventDates: It is used to compare if the expiry date is lesser than the current date in publish mode
    *                   
    * Parameters       : No Parameters
    *                 
    * Return Value     : NO Return Value
    * Compatibility    : IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
    **/
    function compareEventDates()
    {
      var start_date_obj=document.manage_event.start_date;
      var end_date_obj=document.manage_event.end_date;
      var current_date_obj=document.manage_event.current_date;
      var start_date_value=new Date(start_date_obj.value);
      var end_date_value=new Date(end_date_obj.value);
      var current_date_value=new Date(current_date_obj.value);
      if(start_date_value>end_date_value)
      {
        alert(EVNT_TGS017_010);
        return false;
      }
      else
      {
          /*if(end_date_value<=current_date_value)
          {
             alert(EVNT_TGS017_011);
             return false;
          }
          else
          {
              return true;
          } */
          return true;
      }    
    }
  
  
  
            /**                
            *manageRequired: It is used to get the required field to be validated
            *                   
            * Parameters       : No Parameters
            *                 
            * Return Value     : NO Return Value
            * Compatibility    : IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
             **/
    
           function manageRequired()
            {
               var event_category_val = getSelectValue(document.getElementsByName('event_category')[0])
               /*if(document.getElementById('main_page_ga').value=='true')
                {
                    this.aa = new Array('region', EVNT_TGS017_001, 
                              new Function ('varName', ' return this[varName];'));
                    this.ab = new Array('chapter_selector', EVNT_TGS017_002,  
                              new Function ('varName', ' return this[varName];'));
                }*/          
                this.ac = new Array('event_name', EVNT_TGS017_003, 
                          new Function ('varName', ' return this[varName];'));
		this.ad = new Array('page_title', 'Page Title', 
                          new Function ('varName', ' return this[varName];'));
                this.am = new Array('start_date', EVNT_TGS017_021, 
                          new Function ('varName', ' return this[varName];'));
                this.an = new Array('end_date', EVNT_TGS017_022, 
                          new Function ('varName', ' return this[varName];'));          
                if(document.manage_event.start_date.value!='')
                {
                    this.ae = new Array('end_date', EVNT_TGS017_004, 
                              new Function ('varName', ' return this[varName];'));
                }              
                this.af = new Array('event_category', EVNT_TGS017_005, 
                          new Function ('varName', ' return this[varName];'));
                if(event_category_val == 22)  {
                    this.ai = new Array('subCategorycombo', EVNT_TGS017_005, 
                              new Function('varName', 'return this[varName];'));
                }

                /*this.ai = new Array('select_presentation_type', EVNT_TGS017_006, 
                          new Function ('varName', ' return this[varName];'));  
                this.aj = new Array('country_selector', EVNT_TGS017_007, 
                          new Function ('varName', ' return this[varName];'));
                this.ak = new Array('state_selector', EVNT_TGS017_008, 
                          new Function ('varName', ' return this[varName];'));
                this.al = new Array('select_dress_code', EVNT_TGS017_009, 
                          new Function ('varName', ' return this[varName];')); */         
                          
         }      
  
    /** 
     * enterManageKeyHandler : This function is used to call the function to submit
     * Parameters      : event : The event to be initiated
                       : url   : The url to be used to get the result

     * Return Value    : null
     * Compatibility   : Internet Explorer(6.0),Mozilla Firefox(5.0) & Netscape navigator(7.0)
     **/
    function enterManageKeyHandler(event,form,action)
    {
        var key;
        var ENTER_KEY = 13;
        if(window.event)
        {
            key = window.event.keyCode;     //IE
        }
        else
        {
            key = event.which;
        }
        if(key == ENTER_KEY)
        {
            is_valid = validateForm(form,action);
            if(is_valid)
            {
                form.submit();
            }   
            else
            {
                return false;
            } 

          
        }
        else
        {
            return true;
        }  
    }

  
  
//eventDetailsPT page javascript


/**
* clearUpFields:This function is used to remove unwanted fields
* Parameters : no parameters 
* Return Value: Shall not return any value
* Compatibility: Internet Explorer v6.0; Mozilla v5.0; Netscape V7.1;
*/
function clearUpFields()
{
    var tbl_obj = document.getElementById("eventCategoryTBL");        
    var trow = tbl_obj.rows[0];         
    var nc= trow.cells[1];        
    nc.innerHTML = '';        
} // end of function  


/**
* clearcombo:This function is used to clear the combo box
* Parameters : cmb  : combo box object 
* Return Value: Shall not return any value
* Compatibility: Internet Explorer v6.0; Mozilla v5.0; Netscape V7.1;
*/
function clearcombo(cmb)
{
    for (var i=cmb.options.length-1; i>=0; i--)
    {
        cmb.options[i] = null;
    }
    cmb.selectedIndex = -1;
}

/**
* getSelectText : This function is used to get the text of select box
* Parameters : sobj  : select box object 
* Return Value: Shall not return any value
* Compatibility: Internet Explorer v6.0; Mozilla v5.0; Netscape V7.1;
*/
function getSelectText(sobj)
{
    var outval="";
    for (var i=0;i<=sobj.length-1;i++)
    {
        if (sobj.options[i].selected)
        {
            outval = sobj.options[i].text;
            return outval;
        }
    }    
    return outval;
}

function confirmPublish()
{
  return confirm(EVNT_TGS017_067)
}


/**
* presentIn : This function is used for checking whether element is present in given array
* Parameters : arr  : array in which it has to be checked
*              element : element to be checked
* Return Value: shall return true or false
* Compatibility: Internet Explorer v6.0; Mozilla v5.0; Netscape V7.1;
*/

function presentIn(arr, element)
{        
    for(var i=0 ; i < arr.length ; i++)
    {          
        if(arr[i].event_category == element)
        {   
            return true;
        }  // end if
    }  // end for 
    return false;
} // End function ExistsIn      

           
/**
* getDistinctEventCategory : function to Get Distinct Event Category
* Parameters : no parameters
* Return Value: shall return distinct event category
* Compatibility: Internet Explorer v6.0; Mozilla v5.0; Netscape V7.1;
*/

function getDistinctEventCategory()
{
    var distinct_event_category = new Array();
    var counter =0;
    for(var i=0;i<EVENT_CATEGORY.length;i++) 
    {
        if(!presentIn(distinct_event_category,EVENT_CATEGORY[i].event_category)) 
        {                
            distinct_event_category[counter++] = EVENT_CATEGORY[i];                
        }  // end if
    }  // end for
    return distinct_event_category;
}  // end function getDistinctEventCategory 


/**
* getSubCategory : function to Get Event Sub-Category
* Parameters : selected_event_category : category type for which sub category has be got
* Return Value: shall return sub event category
* Compatibility: Internet Explorer v6.0; Mozilla v5.0; Netscape V7.1;
*/

function getSubCategory(selected_event_category)
{              
    var sub_category = new Array(); 
    var counter=0;   
    for(var i=0;i<EVENT_CATEGORY.length;i++) 
    {                     
        if((EVENT_CATEGORY[i].event_category == selected_event_category) && (EVENT_CATEGORY[i].event_sub_category != "") )
        {                              
            sub_category[counter++] = EVENT_CATEGORY[i];      
        }  // end if
    }  // end for i
    return sub_category;
}  // end function getSubCategory

           
/**
* displaySubCategory : function to Display Sub Category Drop-Down
* Parameters : no parameters
* Return Value: shall display sub event category combo box
* Compatibility: Internet Explorer v6.0; Mozilla v5.0; Netscape V7.1;
*/

function displaySubCategory() 
{        
    var tbl_obj = document.getElementById("eventCategoryTBL");        
    var trow = tbl_obj.rows[0];        
    var form = document.manage_event;              
    var selected_event_category = getSelectText(form.event_category);                          
    var sub_category = getSubCategory(selected_event_category);         
    clearUpFields();
    if(sub_category.length > 0)
    {
        var nc= trow.cells[1];
        nc.innerHTML = '<'+'select name=subCategorycombo onchange=javascript:updateIdeventcategory'+'('+'this.value'+')'+'>'+'<'+'/select'+'>';               
        var subCategoryCombo = nc.firstChild;
        clearcombo(subCategoryCombo);
        for(var i=0;i<sub_category.length;i++) 
        {
            if(sub_category[i].event_sub_category != '')
            {                                        
                subCategoryCombo.options[len+i] = new Option(sub_category[i].event_sub_category,sub_category[i].id_event_category);                     
            }//end if                
        }  // end for 
    }  // end if sub_category
}  // end function displaySubCategory


 
/**
* updateIdeventcategory : function to Update Event Category Hidden Field with Selected Category Value
* Parameters : categoryvalue : the value to be assigned for the hidden field
* Return Value: shall set the value of hidden field
* Compatibility: Internet Explorer v6.0; Mozilla v5.0; Netscape V7.1;
*/

function updateIdeventcategory(categoryvalue)
{       
    var id_event_category_hidden = document.manage_event.id_event_category ;
    id_event_category_hidden.value = categoryvalue;         
}  // end function updateIdeventcategory 


//registrationPT page javascript


  /**                
  * showOtherType : It display text box for other member type  
  * Parameters        : text_field_id : Table id for the Row Value Need to Add
  * Return Value      : Return no Value
  * Compatibility     : IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
  **/
  function showOtherType(option_value)
  {   
      if(option_value == 'other')
      {
          document.getElementById('other_slot').style.display ='block';     
      }
      else 
      {
          document.getElementById('other_slot').style.display ='none';              
      }
   }

   function resetRegistrationType()
   {
   document.getElementById('registration_form').value='';
   }

  function pricingRequired()
 {     
       var registration_type_value = document.getElementById('select_registration_type').options[document.getElementById('select_registration_type').selectedIndex].value;
       var member_type_value = document.getElementById('select_member_type').options[document.getElementById('select_member_type').selectedIndex].value;
       var price = document.getElementById('price').value;
       this.aa = new Array('select_registration_type', EVNT_TGS017_012, 
                 new Function ('varName', ' return this[varName];'));
       this.ab = new Array('select_member_type', EVNT_TGS017_013, 
                 new Function ('varName', ' return this[varName];'));
       this.ac = new Array('price', EVNT_TGS017_014, 
                 new Function ('varName', ' return this[varName];'));          
  }


    /**                
    * addRegistrationDetails    : It constructs row values based on entered pricing details and 
    *                        Add the row to pricing table 
    * Parameters      : table_id      : Table id for the Row Value Need to Add
    *                 : no_of_cells   : Number of columns need to Added
    * Return Value    : Return no Value
    * Compatibility   : IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
    **/
    function addRegistrationDetails(table_id,no_of_cells)
    {
        var select_registration_type = document.getElementById('select_registration_type').options[document.getElementById('select_registration_type').selectedIndex].innerHTML;
        var select_member_type = document.getElementById('select_member_type').options[document.getElementById('select_member_type').selectedIndex].innerHTML;
        var registration_type_value = document.getElementById('select_registration_type').options[document.getElementById('select_registration_type').selectedIndex].value;
        var member_type_value = document.getElementById('select_member_type').options[document.getElementById('select_member_type').selectedIndex].value;
        try {
          var other_member_type = document.getElementById('other_type').value;
        } 
        catch(e)    {}
        var price = document.getElementById('price').value;
        
        //it Used to validate program date and description
        var check_flag=true;
        if (validateRequired(document.manage_event,pricingRequired))
        {
         check_flag=true;
        }
        else
        {
           check_flag=false;
           return false;
        }
        
        if (member_type_value == 'other')
        { 
          try { 
          if (other_member_type =='')
          {
              check_flag=false;
              alert(EVNT_TGS017_064);
              return false;
          }
          else
          {
             check_flag=true;
          }
          }
          catch(e)    {}
        }
        
        if(trim(price) != "")
        {
           if (isNaN(price))
           {
               check_flag = false;
               alert(EVNT_TGS017_058);
               document.getElementById('price').focus();
           }
        }
        
        // Checks Company and Member position values are entered
        // check  if the member type ad reg type is already added
        table_obj = document.getElementById(table_id)
        added_member_type = select_member_type;
        if (member_type_value == 'other')
        {
           added_member_type = other_member_type;
        }
         
        for (i=1 ; i < table_obj.rows.length; i++)
         {
               if ( (trim(added_member_type) == trim(table_obj.rows[i].cells[2].innerHTML)) && (trim(select_registration_type) == trim(table_obj.rows[i].cells[1].innerHTML))) 
               {
                 alert(added_member_type + ' - ' +  select_registration_type + ' ' + EVNT_TGS017_066);
                 check_flag = false; 
                 break;
               }
         }
        
        if(check_flag)
        {   
            
            document.getElementById('display_registration_div').style.display='block';
            
            var new_row_id=addTblRow(table_id,no_of_cells);
            var row_number;
            row_number = new_row_id.substring(18,new_row_id.length);  
            var serial_no = "&nbsp;"+row_number;
            var other_member_type_esc = other_member_type.replace(/'/,"&acute;");
            var other_member_type_esc = other_member_type_esc.replace(/\\/,"\\");
            
            //constricting Row value
            var tools_content =  "&nbsp;<"+"a href='javascript:;' alt='Edit' title='Edit' border=0 onclick=editRegistrationDetails('"+table_id+"','"+new_row_id+"')><"+"img border=0 src='"+img_url+"/images/edit_icon.gif'><"+"/a>";
            tools_content=tools_content + "&nbsp;<"+"a href='javascript:;' alt='Delete' title='Delete' border=0 onclick=deleteRegistrationDetails('"+table_id+"','"+row_number+"')><"+"img border=0 id=delete_reg_image"+row_number+" src='"+img_url+"/images/delete_icon.gif'><"+"/a>";

            tools_content=tools_content+"<input type='hidden' name='pricing.id_registration:records' id='registration_type_id_hidden"+row_number+"' value='"+registration_type_value+"'>";
            tools_content=tools_content+"<input type='hidden' name='pricing.id_members_type:records' id='member_type_id_hidden"+row_number+"' value='"+member_type_value+"'>";
            tools_content = tools_content +"<input type='hidden' name='pricing.price:records' value='"+price+"'>";
            tools_content = tools_content +"<input type='hidden' name='pricing.other_type:records' value='"+other_member_type_esc+"'>";
            
            //inserting row valus
            insertContentIntoCell(new_row_id,0,serial_no);
            insertContentIntoCell(new_row_id,1,select_registration_type);
            if (member_type_value == 'other')
            {
                insertContentIntoCell(new_row_id,2,other_member_type);
            }
            else
            {
                insertContentIntoCell(new_row_id,2,select_member_type);
            }  
            insertContentIntoCell(new_row_id,3,price);
            insertContentIntoCell(new_row_id,4,tools_content);
            var row_obj = document.getElementById(new_row_id);
            row_obj.cells.item(4).setAttribute('align','center');

            //after data is Append it clears input fields
            clearRegistrationFields();   
            numberTblRows(table_id);
        }
    }


   

    /**                
    * displayRegistrationDeleteTool        : It display all delete icon in the registration table
    * Parameters            : No Parameters
    * Return Value          : No Return Value
    * Compatibility         : IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
    **/

    function displayRegistrationDeleteTool() 
    {
        var table_obj = document.getElementById('registration_table');
        for(var i=1; i < table_obj.rows.length; i++)
        {
            delete_image_id = "delete_reg_image"+i;
            document.getElementById(delete_image_id).style.display ='inline';
        }
    }

    /**                
    * clearRegistrationFields    : It Clears the pricing input fields after Add/Update the data
    * Parameters            : No Parameters
    * Return Value          : No Return Value
    * Compatibility         : IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
    **/

    function clearRegistrationFields()
    {
        setSelectValue(document.getElementById('select_registration_type'),'');
        setSelectValue(document.getElementById('select_member_type'),'');

        document.getElementById('price').value="";
        document.getElementById('other_type').value="";
        
        document.getElementById('other_slot').style.display = "none" 
        var update_content =  "&nbsp;<"+"a href='javascript:;' border=0 onclick=addRegistrationDetails('registration_table',5)><"+"img border=0 src='"+img_url+"/images/add_button.jpg'><"+"/a>";
        var rowaction= document.getElementById('reg_add_manager');
        rowaction.innerHTML= update_content;
    }

    /**                
    * updateRegistrationDetails    : It Update the edited pricing Details in to pricing table
    * Parameters              : row_id : Edited Row Id
    *                         : action: Action Type
    *                         : table_id : table row to be updated 
    * Return Value            : No Return Value
    * Compatibility           : IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
    **/

    function updateRegistrationDetails(table_id,row_id,action)
    {   
        var row_no;
        var check_flag=true;

        if(row_id != null)
        {
            row_no = row_id.substring(18,row_id.length);       
        }

        //If cancel button is clicked clear the field value
        if(action == 'cancel')
        {
            document.getElementById('delete_reg_image'+row_no).style.display ='inline';
            clearRegistrationFields();
        }

        //If Update button is clicked append the value to company table
        if(action =='update')
        {
            var select_registration_type = document.getElementById('select_registration_type').options[document.getElementById('select_registration_type').selectedIndex].innerHTML;
            var select_member_type = document.getElementById('select_member_type').options[document.getElementById('select_member_type').selectedIndex].innerHTML;
            var registration_type_value = document.getElementById('select_registration_type').options[document.getElementById('select_registration_type').selectedIndex].value;
            var member_type_value = document.getElementById('select_member_type').options[document.getElementById('select_member_type').selectedIndex].value;
            var price = document.getElementById('price').value;
            try {
                      var other_member_type = document.getElementById('other_type').value;
                } 
            catch(e)    {}
            
            //If company name or position is empty it update flag value to false 
            if (validateRequired(document.manage_event,pricingRequired))
            {
             check_flag=true;
            }
            else
            {
               check_flag=false;
               return false;
            }
            
             if (member_type_value == 'other')
            { 
              try { 
              if (other_member_type =='')
              {
                  check_flag=false;
                  alert(EVNT_TGS017_064);
                  return false;
              }
              else
              {
                 check_flag=true;
              }
              }
              catch(e)    {}
               }
    // check  if the member type ad reg type is already added
        table_obj = document.getElementById(table_id)
        added_member_type = select_member_type;
        if (member_type_value == 'other')
        {
           added_member_type = other_member_type;
        }
         
        for (i=1 ; i < table_obj.rows.length; i++)
         {
               if ((table_obj.rows[i].id != row_id) &&  (added_member_type == table_obj.rows[i].cells[2].innerHTML) && (select_registration_type == table_obj.rows[i].cells[1].innerHTML)) 
               {
                 alert(added_member_type + ' --> ' +  select_registration_type + ' ' + EVNT_TGS017_066);
                 check_flag = false; 
                 break;
               }
         }
        
        
            //Based on flag value company details append to company table
            if(check_flag)
            {   
                document.getElementById('display_registration_div').style.display='block';
                var serial_no = "&nbsp;" + row_no;

                //Constricting content of edited row
                var tools_content =  "&nbsp;<"+"a href='javascript:;' alt='Edit' title='Edit' border=0 onclick=editRegistrationDetails('"+table_id+"','"+row_id+"')><"+"img border=0 src='"+img_url+"/images/edit_icon.gif'><"+"/a>";
                tools_content=tools_content + "&nbsp;<"+"a href='javascript:;' alt='Delete' title='Delete' border=0 onclick=deleteRegistrationDetails('"+table_id+"','"+row_no+"')><"+"img border=0 id=delete_reg_image"+row_no+" src='"+img_url+"/images/delete_icon.gif'><"+"/a>";

                tools_content=tools_content+"<input type='hidden' name='pricing.id_registration:records' id='registration_type_id_hidden"+row_no+"' value='"+registration_type_value+"'>";
                tools_content=tools_content+"<input type='hidden' name='pricing.id_members_type:records' id='member_type_id_hidden"+row_no+"' value='"+member_type_value+"'>";
                tools_content = tools_content +"<input type='hidden' name='pricing.price:records' value='"+price+"'>";
                tools_content = tools_content +"<input type='hidden' name='pricing.other_type:records' value='"+other_member_type+"'>";
            
                //inserting row valus
                insertContentIntoCell(row_id,0,serial_no);
                insertContentIntoCell(row_id,1,select_registration_type);
                if (member_type_value == 'other')
                {
                    insertContentIntoCell(row_id,2,other_member_type);
                }
                else
                {
                    insertContentIntoCell(row_id,2,select_member_type);
                } 
                insertContentIntoCell(row_id,3,price);
                insertContentIntoCell(row_id,4,tools_content);
                var row_obj = document.getElementById(row_id);
                row_obj.cells.item(4).setAttribute('align','center');

                //Clear the fields after updating 
                clearRegistrationFields();
                numberTblRows(table_id);
            }              
        }   
    }


    /**                
    * deleteRegistrationDetails    : It Deletes pricing Row Based on Conformation Value
    * Parameters      : table_id: Table id 
    * Parameters      : row_id   : Edited Row Id
    * Return Value    : No Return Value
    * Compatibility   : IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
    **/
    function deleteRegistrationDetails(table_id,row_id)
    {
        var retVal = confirm(EVNT_TGS017_015);
        if(retVal)
        {
            deleteTblRow(table_id,row_id);
        }
        numberTblRows(table_id);
        var table_obj = document.getElementById('registration_table');
        if(table_obj.rows.length < 2) 
        {
            document.getElementById('display_registration_div').style.display = 'none';
        }
    }

    /**                
    * editRegistrationDetails    : It populate edited pricing information in fields 
    * Parameters            : rowid   : Edited Row Id
    *                       : table_id : 
    * Return Value          : No Return Value
    * Compatibility         : IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
    **/
    function editRegistrationDetails(table_id,row_id)
    {
        var edit_row = document.getElementById(row_id);
        var row_no;
        var delete_image_id;

        //get the row number based on row Id
        if(row_id != null)
        {
            row_no = row_id.substring(18,row_id.length); 

        }
        delete_image_id = "delete_reg_image"+row_no;

        //Edited value populated to company fields
        var register_id = 'registration_type_id_hidden'+row_no;
        var member_id = 'member_type_id_hidden'+row_no;
        setSelectValue(document.getElementById('select_registration_type'),trim(document.getElementById(register_id).value));
        setSelectValue(document.getElementById('select_member_type'),trim(document.getElementById(member_id).value));
        document.getElementById('price').value = trim(edit_row.cells[3].innerHTML);
        if (document.getElementById(member_id).value == 'other')
        {
            document.getElementById('other_slot').style.display = "block" 
            document.getElementById('other_type').value = trim(edit_row.cells[2].innerHTML);
         }
        var update_content =  "&nbsp;<"+"a href='#' onclick=updateRegistrationDetails('"+table_id+"','"+row_id+"','update')><"+"img border=0 src='"+img_url+"/images/update.jpg'><"+"/a>";
        update_content=update_content + "&nbsp;<"+"a href='#' onclick=updateRegistrationDetails('"+table_id+"','"+row_id+"','cancel')><"+"img border=0 src='"+img_url+"/images/cancel_button.jpg'><"+"/a>";
        var rowaction= document.getElementById('reg_add_manager');
        rowaction.innerHTML= update_content;
        displayRegistrationDeleteTool();
        document.getElementById(delete_image_id).style.display ='none';
    }


//programsAndSpeakersPT page javascript
 
 
    function programRequired()
    {
       this.aa = new Array('program_date', EVNT_TGS017_016, 
                 new Function ('varName', ' return this[varName];'));
       this.ab = new Array('program_description', EVNT_TGS017_017, 
                 new Function ('varName', ' return this[varName];'));
    }

    /**                
    * addProgramDetails    : It constructs row values based on entered Program details and 
    *                        Add the row to program table 
    * Parameters      : table_id      : Table id for the Row Value Need to Add
    *                 : no_of_cells   : Number of columns need to Added
    * Return Value    : Return no Value
    * Compatibility   : IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
    **/
    function addProgramDetails(table_id,no_of_cells)
    {
        var program_date = document.getElementById('program_date').value;     
        var program_description = document.getElementById('program_description').value;

        //it Used to validate program date and description
        var check_flag=true;
        
        if (validateRequired(document.manage_event,programRequired))
        {
         check_flag=true;
        }
        else
        {
           check_flag=false;
           return false;
        }
        if(trim(program_date) != '')
        {
          var start_date_obj=document.manage_event.start_date;
          var end_date_obj=document.manage_event.end_date;
          var program_date_obj=document.getElementById('program_date');
          var start_date_value=new Date(start_date_obj.value);
          var end_date_value=new Date(end_date_obj.value);
          var program_date_value=new Date(program_date_obj.value);
          if(document.manage_event.start_date.value == '')
          {
              check_flag = false;
              alert(EVNT_TGS017_021);
          }
          if(document.manage_event.end_date.value == '')
          {
            check_flag = false;
            alert(EVNT_TGS017_022);
          }
          if(program_date_value>end_date_value || program_date_value<start_date_value)
          {
            check_flag = false; 
            alert(EVNT_TGS017_018);
            document.getElementById('program_date').focus();
          }              
        }
        // Checks Company and Member position values are entered
        if(check_flag)
        {  
            document.getElementById('display_program_div').style.display='block';
            var new_row_id=addTblRow(table_id,no_of_cells);
            var row_number;
            row_number = new_row_id.substring(13,new_row_id.length);  
            var serial_no = "&nbsp;"+row_number;
            //constricting Row value
            var tools_content =  "<"+"a href='javascript:;' alt='Edit' title='Edit' border=0 onclick=editProgramDetails('"+table_id+"','"+new_row_id+"')><"+"img border=0 src='"+img_url+"/images/edit_icon.gif'><"+"/a>";
            tools_content=tools_content + "&nbsp;<"+"a href='javascript:;' alt='Delete' title='Delete' border=0 onclick=deleteProgramDetails('"+table_id+"','"+row_number+"')><"+"img border=0 id=delete_image"+row_number+" src='"+img_url+"/images/delete_icon.gif'><"+"/a>";

            tools_content=tools_content+"<input type='hidden' name='program.program_date:records' value='"+document.getElementById('program_date').value+"'>";
            tools_content = tools_content +"<input type='hidden' name='program.program_description:records' value='"+document.getElementById('program_description').value+"'>";

            //inserting row valus
            insertContentIntoCell(new_row_id,0,serial_no);
            insertContentIntoCell(new_row_id,1,program_date);
            insertContentIntoCell(new_row_id,2,program_description);
            insertContentIntoCell(new_row_id,3,tools_content);
            var row_obj = document.getElementById(new_row_id);
            row_obj.cells.item(0).setAttribute('align','center');
            row_obj.cells.item(3).setAttribute('align','center');

            //after data is Append it clears input fields
            clearProgramFields();   
            numberTblRows(table_id);
        }
    }

  
    /**                
    * displayProgramDeleteTool        : It display all delete icon on program table
    * Parameters            : No Parameters
    * Return Value          : No Return Value
    * Compatibility         : IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
    **/

    function displayProgramDeleteTool() 
    {
        var table_obj = document.getElementById('program_table');
        for(var i=1; i < table_obj.rows.length; i++)
        {
            delete_image_id = "delete_image"+i;
            document.getElementById(delete_image_id).style.display ='inline';         
        }
    }

    /**                
    * clearProgramfields    : It Clears the Program input fields after Add/Update the data
    * Parameters            : No Parameters
    * Return Value          : No Return Value
    * Compatibility         : IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
    **/

    function clearProgramFields()
    {
        document.getElementById('program_date').value =pgm_default_strt_date;
        document.getElementById('program_description').value ='';

        var update_content =  "&nbsp;<"+"a href='javascript:;' border=0 onclick=addProgramDetails('program_table',4)><"+"img border=0 src='"+img_url+"/images/add_button.jpg'><"+"/a>";
        var rowaction= document.getElementById('row_manager');
        rowaction.innerHTML= update_content;
        document.getElementById('program_date').focus();
    }

    /**                
    * updateProgramDetails    : It Update the edited Program Details in to program table
    * Parameters              : row_id : Edited Row Id
    * Parameters              : action: Action Type
    * Return Value            : No Return Value
    * Compatibility           : IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
    **/

    function updateProgramDetails(table_id,row_id,action)
    {   
        var row_no;
        var check_flag=true;

        if(row_id != null)
        {
            row_no = row_id.substring(13,row_id.length);       
        }

        //If cancel button is clicked clear the field value
        if(action == 'cancel')
        {
            document.getElementById('delete_image'+row_no).style.display ='inline';
            clearProgramFields();
        }

        //If Update button is clicked append the value to company table
        if(action =='update')
        {
            var program_date = document.getElementById('program_date').value;     
            var program_description = document.getElementById('program_description').value;

            //If company name or position is empty it update flag value to false 
            if (validateRequired(document.manage_event,programRequired))
            {
             check_flag=true;
            }
            else
            {
               check_flag=false;
               return false;
            }
        
            if(trim(program_date) != '')
            {
              var start_date_obj=document.manage_event.start_date;
              var end_date_obj=document.manage_event.end_date;
              var program_date_obj=document.getElementById('program_date');
              var start_date_value=new Date(start_date_obj.value);
              var end_date_value=new Date(end_date_obj.value);
              var program_date_value=new Date(program_date_obj.value);
              if(document.manage_event.start_date.value == '')
              {
                 check_flag = false;
                 alert(EVNT_TGS017_021);
              }
              if(document.manage_event.end_date.value == '')
              {
                 check_flag = false;
                 alert(EVNT_TGS017_022);
              }
              if(program_date_value>end_date_value || program_date_value<start_date_value)
              {
                check_flag = false; 
                alert(EVNT_TGS017_018);
                document.getElementById('program_date').focus();
              }              
            }
       
            //Based on flag value company details append to company table
            if(check_flag)
            {   
               document.getElementById('display_program_div').style.display='block';
                var serial_no = "&nbsp;" + row_no;

                //Constricting content of edited row
                var tool_content =  "<"+"a href='javascript:;' alt='Edit' title='Edit' border=0 onclick=editProgramDetails('"+table_id+"','"+row_id+"')><"+"img border=0 src='"+img_url+"/images/edit_icon.gif'><"+"/a>";
                tool_content=tool_content + "&nbsp;<"+"a href='javascript:;' alt='Delete' title='Delete' border=0 onclick=deleteProgramDetails('program_table','"+row_no+"')><"+"img border=0 id=delete_image"+row_no+" src='"+img_url+"/images/delete_icon.gif'><"+"/a>";

                tool_content=tool_content+"<input type='hidden' name='program.program_date:records' value='"+document.getElementById('program_date').value+"'>";
                tool_content = tool_content +"<input type='hidden' name='program.program_description:records' value='"+document.getElementById('program_description').value+"'>";

                // inserting Updated Value in to Row
                insertContentIntoCell(row_id,0,serial_no);
                insertContentIntoCell(row_id,1,program_date);
                insertContentIntoCell(row_id,2,program_description);
                insertContentIntoCell(row_id,3,tool_content);
                var row_obj = document.getElementById(row_id);
                row_obj.cells.item(0).setAttribute('align','center');
                row_obj.cells.item(3).setAttribute('align','center');

                //Clear the fields after updating 
                clearProgramFields();
                numberTblRows(table_id);
            }              
        }   
    }


    /**                
    * deleteProgramDetails    : It Deletes Program Row Based on Conformation Value
    * Parameters      : table_id: Table id 
    * Parameters      : row_id   : Edited Row Id
    * Return Value    : No Return Value
    * Compatibility   : IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
    **/
    function deleteProgramDetails(table_id,row_id)
    {
        var retVal = confirm(EVNT_TGS017_019);
        if(retVal)
        {
            deleteTblRow(table_id,row_id);
        }
        numberTblRows(table_id);
        var table_obj = document.getElementById('program_table');
        if(table_obj.rows.length < 2) 
        {
            document.getElementById('display_program_div').style.display = 'none';
        }
        
    }

    /**                
    * editProgramDetails    : It populate edited program information in fields 
    * Parameters            : rowid   : Edited Row Id
    * Return Value          : No Return Value
    * Compatibility         : IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
    **/
    function editProgramDetails(table_id,row_id)
    {
        var edit_row = document.getElementById(row_id);
        var row_no;
        var delete_image_id;

        //get the row number based on row Id
        if(row_id != null)
        {
            row_no = row_id.substring(13,row_id.length);       
        }
        delete_image_id = "delete_image"+row_no;
        
        //Edited value populated to company fields 
        document.getElementById('program_date').value = trim(edit_row.cells[1].innerHTML);
        
        document.getElementById('program_description').value = trim(ts_getInnerText(edit_row.cells[2]));

        var update_content =  "&nbsp;<"+"a href='#' onclick=updateProgramDetails('"+table_id+"','"+row_id+"','update')><"+"img border=0 src='"+img_url+"/images/update.jpg'><"+"/a>";
        update_content=update_content + "&nbsp;<"+"a href='#' onclick=updateProgramDetails('"+table_id+"','"+row_id+"','cancel')><"+"img border=0 src='"+img_url+"/images/cancel_button.jpg'><"+"/a>";
        var rowaction= document.getElementById('row_manager');
        rowaction.innerHTML= update_content;
        displayProgramDeleteTool();
        document.getElementById(delete_image_id).style.display ='none';
    }

    /**                
    * getSelectObj    : It will get the child node of the object 
    * Parameters            : cell   : the cell object
    * Return Value          : No Return Value
    * Compatibility         : IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
    **/
    function getSelectObj(cell)
    {
    var select_element;
    for (var ci=0;ci<cell.childNodes.length;ci++) {
        if (cell.childNodes[ci].tagName && cell.childNodes[ci].tagName.toLowerCase() == 'select') select_element = cell.childNodes[ci];
    }
    return select_element;
    }
 
    /**                
     * deleteEntry : It is used to delete the speakers from the selected_speakers_table 
     * Parameters        : row_id      : to get the id of the selected row
     * Return Value      : Return no Value
     * Compatibility:IE 6.0,Mozilla Firefox 5.0 &Netscape Navigator 7.1
     **/
     function deleteEntry(row_id) 
     {  
        var new_delete_obj = document.getElementById('display_speakers_table' + row_id);
        var full_name=new_delete_obj.cells.item(1).innerHTML;

        if(confirm(full_name+' '+ EVNT_TGS017_020 ))  
        {
            deleteTblRow('display_speakers_table', row_id);
            numberTblRows('display_speakers_table')
            var table_obj = document.getElementById('display_speakers_table');
            if(table_obj.rows.length < 2) 
            {
                document.getElementById('display_speaker_div').style.display = 'none';
            }
        }

     }


        /**                
           * moveTblRowsFromSrcToDestTable: It is used get the  move the rows from source to destination
           * Parameters      : src_table_id:is passed to get the source table id
           *                 : dest_table_id:is passed to get the destination table id   
           *                 
           * Return Value    : NO Return Value
           * Compatibility   : IE 6.0,Mozilla Firefox 5.0 &Netscape Navigator 7.1
        **/
        function moveTblRowsFromSrcToDestTable(src_table_id, dest_table_id)
        {
            if(src_table_id == 'selected_speakers_table')   {
                document.getElementById('display_speaker_div').style.display='block';
            }
            
            var src_table_obj=document.getElementById(src_table_id);
            var src_table_row_length=src_table_obj.rows.length;
            deleteAllTblRowsExceptHeader(dest_table_id);
            for(var index_assign=1;index_assign<src_table_row_length;index_assign++)
            {
                 var src_table_row= src_table_obj.rows[index_assign];
                 var src_table_row_cells_length=src_table_row.cells.length;
                 var member_id = src_table_row.cells.item(src_table_row_cells_length - 1).title;
                 var src_table_row_id= 'row_id' + member_id ;
                                                  
                 addTblRowWithId(dest_table_id,src_table_row_id,4);
                 for(var index_members=0;index_members<src_table_row_cells_length;index_members++)
                 {
                     var new_obj= document.getElementById(dest_table_id + src_table_row_id);
                     
                     if(index_members < src_table_row_cells_length - 1)
                     {
                        if (index_members==1)
                        {   
                           new_obj.cells.item(index_members).setAttribute('align', 'left');
                        }
                        new_obj.cells.item(index_members).innerHTML = src_table_row.cells.item(index_members).innerHTML;
                     }
                     else
                     {
                        // Member id is assigned to title attribute of the "td" tag, in search page
                          
                        var edit_exist = 'edit_speaker'+member_id;
                        var edit_hidden_exist = document.getElementById(edit_exist).value;
                        
                        var cell_content = "<input " + "type=hidden name" + "=speakers.id_member:records value=" + member_id + ">" 
                        if (edit_hidden_exist ==1)
                        {
                            cell_content= cell_content+ "<input " + "type=hidden name" + "=edit_speaker value=1"+" id=edit_speaker"+member_id  + ">" +
                            "<a href=" + "'#' onclick=" + "'editSpeakers(" + member_id + ",\"\",event)'>" + 
                            "<img alt=" + "'Edit' title=" + "'Edit' border" + "=0 src='" + image_url + "images/edit_icon.gif'" + "><" + "/a>&nbsp;";
                         } 
                         if (edit_hidden_exist ==0)
                         {
                            cell_content= cell_content+ "<input " + "type=hidden name" + "=edit_speaker value=0"+" id=edit_speaker"+member_id+  ">" ;
                         }


                        if(src_table_id == 'selected_speakers_table')   {
                            cell_content = cell_content + "<a href" + "='#' " + "onclick=" + "deleteEntry('" + src_table_row_id + "')>" +
                                "<img " + "alt='Delete' title='Delete' border" + "=0 src='" + image_url + "images/delete_icon.gif'" + "><" + "/a>";
                        }        
                        else    {
                            cell_content = cell_content + "<a href" + "='#' " + "onclick=" + "deleteSingleEntry('" + src_table_row_id + "')>" +
                            "<img " + "alt='Delete' title='Delete' border" + "=0 src='" + image_url + "images/delete_icon.gif'" + "><" + "/a>";
                        }


                        //var cell_content = "<input " + "type=hidden name" + "=speakers.id_member:records value=" + member_id + ">" + 
                        //        "<input " + "type=hidden name" + "=speakers.id_role:records"+ ">" ;
                                
                        //var cell_content = ""
                        //cell_content = cell_content + src_table_row.cells.item(index_members).innerHTML;

                        new_obj.cells.item(index_members).innerHTML = cell_content;
                        new_obj.cells.item(index_members).title = member_id;
                        
                     }
                     
                     if (index_members != 1) {
                        new_obj.cells.item(index_members).setAttribute('align', 'center');         
                      }
                     if(index_members == 2)
                     {
                         var src_select_role = getSelectObj(src_table_row.cells.item(index_members));
                         var dest_select_role = getSelectObj(new_obj.cells.item(index_members));
                         dest_select_role.value=src_select_role.value;
                     }
                }  
            }
            numberTblRows(dest_table_id);
            if(src_table_id == 'selected_speakers_table')   {
                hiddenFloatingDiv('viewsearch_slot');
                showSelectBoxes('search_speaker');
            }
            else    {
                try {
                    responseHandler();
                }
                catch(e)    {}
                /*if((src_table_obj.rows.length)>1)
                {
                    document.getElementById('display_selected_speakers_div').style.display='block';
                }  */
                showHideSelectedSpeakersDiv();
            }
        } 

     
    /** 
    *  displaySearchDiv : This function is used to Pop up the Search Speakers screen
    *  Parameters       : No parameters
    *  Return Value     : null
    *  Compatibility    : Internet Explorer(6.0)&Mozilla Firefox(5.0)
    **/
    function displaySearchDiv() {
        var search_display_div = 'viewsearch_slot'
        displayWindow(search_display_div,'search_speaker');
        moveTblRowsFromSrcToDestTable('display_speakers_table','selected_speakers_table');
        cleanUp(document.search_speaker);
        document.search_speaker.speaker_first_name.focus();
        hideSelectBoxes('search_speaker');
        showHideSelectedSpeakersDiv();
    }
    
     /** 
      *  showHideSelectedSpeakersDiv : This function is used to show or hide 
      *  the selected speakers and the assign button in search member screen
      *  Parameters       : No parameters
      *  Return Value     : null
      *  Compatibility    : Internet Explorer(6.0)&Mozilla Firefox(5.0)
      **/
      function showHideSelectedSpeakersDiv() {
          if(document.getElementById('selected_speakers_table').rows.length >1){ 
              document.getElementById('display_selected_speakers_div').style.display='block';
              document.getElementById('button_slot').style.display='inline';
          }
          else    { 
              document.getElementById('display_selected_speakers_div').style.display='none';
              //document.getElementById('find_button_slot').style.display='inline';
              document.getElementById('button_slot').style.display='none';
          }
    
      }
    
    
    /** 
    *  cleanUp      : function is used to clean up the form elements
    *  Parameters       : form: form name
    *  Return Value     : null
    *  Compatibility    : Internet Explorer(6.0)&Mozilla Firefox(5.0)
    **/
     function cleanUp(form)
     {
         var slot_obj=document.getElementById('manage_slot');
         form.speaker_first_name.value='';
         form.speaker_last_name.value='';
         form.speaker_email.value='';
         slot_obj.innerHTML='';
    }
    
     /**                
      * editSpeakers: It is used add/edit the speaker information.
      * Parameters :id_member:It is used to get member id.
      *            :event:It is used to open the div on invoking the modify tool  
      * Return Value    : NO Return Value
      * Compatibility   : IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
    **/
    function editSpeakers(id_member,id_chapter,event)
    {   
        var url = absolute_url + "/EM/manageEvent/addEditSpeakerPT?member_id="+encodeURI(id_member)+"&id_chapter="+encodeURI(id_chapter);
        var edit_display_slot_id = 'add_speaker_slot';
        makeGETRequest(url,edit_display_slot_id);
        displayWindow(edit_display_slot_id,'add_edit_speaker');
        hideSelectBoxes('add_edit_speaker');
     } 
   

//sponsorAndNewsPT page javascript



    /** 
    *  displaySponsorSearchDiv : This function is used to Pop up the Search Sponsor screen
    *  Parameters       : No parameters
    *  Return Value     : null
    *  Compatibility    : Internet Explorer(6.0)&Mozilla Firefox(5.0)
    **/
    function displaySponsorSearchDiv() {
        if (document.getElementById('chapter_selector').value != '')
        {
        var search_display_div = 'search_sponsor_slot'
        displayWindow(search_display_div,'assign_sponsers');
        
        moveSponsorTblRowsFromSrcToDestTable('display_sponsor_table','selected_sponsor_table');
        sponsorCleanUp(document.assign_sponsers);
        hideSelectBoxes('assign_sponsers');
        showHideSelectedSponsorsDiv();
        try {
            document.assign_sponsers.find_by.focus();
        }catch(e)   {}
        }
        else
        {
            var alert_value = 'Please enter/select the following field(s)\n';
            if(document.getElementById('region_selector').value == '') {
                alert_value = alert_value + EVNT_TGS017_001 + '\n';
            }
            alert(alert_value + EVNT_TGS017_002);
        }
    }
    
    /** 
      *  showHideSelectedSponsorsDiv : This function is used to show or hide 
      *  the selected speakers and the assign button in search member screen
      *  Parameters       : No parameters
      *  Return Value     : null
      *  Compatibility    : Internet Explorer(6.0)&Mozilla Firefox(5.0)
      **/
      function showHideSelectedSponsorsDiv() {
          if(document.getElementById('selected_sponsor_table').rows.length >1){ 
              document.getElementById('display_selected_sponsors_div').style.display='block';
              document.getElementById('display_selected_sponsors_div_button').style.display='inline';
          }
          else    { 
              document.getElementById('display_selected_sponsors_div').style.display='none';
              document.getElementById('display_selected_sponsors_div_button').style.display='none';
          }
        
      }
    
    /**                
     * deleteSponsorEntry : It is used to delete the sponsors from the selected_sponsors_table 
     * Parameters        : row_id      : to get the id of the selected row
     * Return Value      : Return no Value
     * Compatibility:IE 6.0,Mozilla Firefox 5.0 &Netscape Navigator 7.1
     **/
     function deleteSponsorEntry(row_id, sponsor_name) 
     {  
        var new_delete_obj = document.getElementById('display_sponsor_table' + row_id);
        //var sponsor_name=new_delete_obj.cells.item(2).innerHTML;

        if(confirm(sponsor_name+' '+EVNT_TGS017_020 ))  
        {
            deleteTblRow('display_sponsor_table', row_id);
            numberTblRows('display_sponsor_table')
            var table_obj = document.getElementById('display_sponsor_table');
            if(table_obj.rows.length < 2) 
            {
                document.getElementById('display_sponsors_div').style.display = 'none';
            }

        }

     }

       
    /** 
    *  sponsorCleanUp      : function used to clean up form elements                     
    *  Parameters       : form : form name
    *  Return Value     : shall not return value
    *  Compatibility    : Internet Explorer(6.0)&Mozilla Firefox(5.0)
    **/
     function sponsorCleanUp(form)
     {
         var slot_obj=document.getElementById('sponsor_result_slot');
         setSelectValue(form.find_by,'');
         //form.find_by.selected=false;
         form.find_value.value='';
         slot_obj.innerHTML='';
    }
   

    /**                
       * moveSponsorTblRowsFromSrcToDestTable: It is used get the  move the rows from source to destination
       * Parameters      : src_table_id:is passed to get the source table id
       *                 : dest_table_id:is passed to get the destination table id   
       *                 
       * Return Value    : NO Return Value
       * Compatibility   : IE 6.0,Mozilla Firefox 5.0 &Netscape Navigator 7.1
       **/
        function moveSponsorTblRowsFromSrcToDestTable(src_table_id, dest_table_id)
        {
           if(src_table_id == 'selected_sponsor_table')   {
               document.getElementById('display_sponsors_div').style.display='block';
            } 
        
            var src_table_obj=document.getElementById(src_table_id);
            var src_table_row_length=src_table_obj.rows.length;
            deleteAllTblRowsExceptHeader(dest_table_id);
            
            for(var index_assign=1;index_assign<src_table_row_length;index_assign++)
            {
                 var src_table_row= src_table_obj.rows[index_assign];
                 var src_table_row_cells_length=src_table_row.cells.length;
                 var sponsor_id_and_name = src_table_row.cells.item(src_table_row_cells_length - 1).title;
                 var sponsor_name_index = sponsor_id_and_name.indexOf('__');
                 var sponsor_name = sponsor_id_and_name.substr(sponsor_name_index + 2, sponsor_id_and_name.length);
                 var sponsor_id = sponsor_id_and_name.substr(0,sponsor_name_index);
                 var src_table_row_id= 'row_id' + sponsor_id;
                                                  
                 addTblRowWithId(dest_table_id,src_table_row_id,4);
                 for(var index_members=0;index_members<src_table_row_cells_length;index_members++)
                 {
                     var new_obj= document.getElementById(dest_table_id + src_table_row_id);
                     //new_obj.setAttribute('style','display:table-cell;padding:5px;');
                     if(index_members < src_table_row_cells_length - 1)
                     {
                        new_obj.cells.item(index_members).innerHTML = src_table_row.cells.item(index_members).innerHTML;
                     }
                     else
                     {
                        // Member id is assigned to title attribute of the "td" tag, in search page
                        var cell_content = "<input " + "type=hidden name" + "=sponsors value=" + sponsor_id + ">" 
                        
                         cell_content= cell_content+ "<a href=" + "'#' onclick=" + "'editSponsors(" + sponsor_id + ",\"\",event)'>" + 
                                                    "<img alt=" + "'Modify' title='Modify' border" + "=0 src='" + image_url + "images/edit_icon.gif'" + "><" + "/a>&nbsp;";
                    
                        
                        if(src_table_id == 'selected_sponsor_table')   {
                            cell_content = cell_content + "<a href" + "='#' " + "onclick=\"" + "deleteSponsorEntry('" + src_table_row_id + "','" + sponsor_name + "')\">" +
                                "<img " + "alt='Delete' title='Delete' border" + "=0 src='" + image_url + "images/delete_icon.gif'" + "><" + "/a>";
                        }        
                        else    {
                            cell_content = cell_content + "<a href" + "='#' " + "onclick=\"" + "deleteSingleSponsorEntry('" + src_table_row_id + "','" + sponsor_name +"')\">" +
                            "<img " + "alt='Delete' tilte='Delete' border" + "=0 src='" + image_url + "images/delete_icon.gif'" + "><" + "/a>";
                        }
                        new_obj.cells.item(index_members).innerHTML = cell_content;
                        new_obj.cells.item(index_members).title = sponsor_id_and_name;
                     }
                     if (index_members != 2)    {
                        new_obj.cells.item(index_members).setAttribute('align', 'center');
                     }
                }
                new_obj.cells.item(2).setAttribute('align', 'left');
            }
            numberTblRows(dest_table_id);
            if(src_table_id == 'selected_sponsor_table')   {
                hiddenFloatingDiv('search_sponsor_slot');
                showSelectBoxes('assign_sponsers');
            }
            else    {
                try {
                   // responseHandler();
                }
                catch(e)    {}
                if((src_table_obj.rows.length)>1)
                {
                    document.getElementById('display_selected_sponsors_div').style.display='block';
                }    
            }
        }      
        
        
     /**                
       * editSponsors: It is used edit the sponsor information.
       *                   
       * Parameters :id_sponsor:It is used to get sponsor id.
       *            :event:It is used to open the div on invoking the modify tool  
       * Return Value    : NO Return Value
       * Compatibility   : IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
     **/
     function editSponsors(id_sponsor,id_chapter,event)
     {   
         var url = absolute_url + "/EM/manageEvent/addEditSponsorPT?sponsor_id="+encodeURI(id_sponsor)+"&id_chapter="+encodeURI(id_chapter);;
         var edit_display_slot_id = 'add_sponsor_slot';
         makeGETRequest(url,edit_display_slot_id,'editSponsorResponse()');
         displayWindow(edit_display_slot_id,'add_edit_sponsor');
         hideSelectBoxes('add_edit_sponsor');
      } 

    function editSponsorResponse()
    {
             if(document.getElementById('main_page_ga').value=='true')
             {
             document.add_edit_sponsor.sponsor_chapter_selector.value = getSelectValue(document.manage_event.chapter_selector);
             }
             else
             {
             document.add_edit_sponsor.sponsor_chapter_selector.value = document.manage_event.chapter_selector.value;
             }

    } 

    /** 
    *  displayNewsSearchDiv : This function is used to Pop up the Search News screen
    *  Parameters       : No parameters
    *  Return Value     : null
    *  Compatibility    : Internet Explorer(6.0)&Mozilla Firefox(5.0)
    **/
    function displayNewsSearchDiv() {
        if (document.getElementById('chapter_selector').value != '')
        {
        var search_display_div = 'search_news_slot'
        displayWindow(search_display_div,'assign_news');
        moveNewsTblRowsFromSrcToDestTable('display_news_table','selected_news_table');
        newsCleanUp(document.assign_news);
        hideSelectBoxes('assign_news');
        showHideSelectedNewsDiv();
        try {
            document.assign_news.keyword.focus();
        }catch(e)   {}
        }
        else
        {
            var alert_value = 'Please enter/select the following field(s)\n';
            if(document.getElementById('region_selector').value == '') {
                alert_value = alert_value + EVNT_TGS017_001 + '\n';
            }
            alert(alert_value + EVNT_TGS017_002);
        }
    }
    
     /** 
      *  showHideSelectedNewsDiv : This function is used to show or hide 
      *  the selected news 
      *  Parameters       : No parameters
      *  Return Value     : null
      *  Compatibility    : Internet Explorer(6.0)&Mozilla Firefox(5.0)
      **/
      function showHideSelectedNewsDiv() {
          if(document.getElementById('selected_news_table').rows.length >1){ 
              document.getElementById('display_selected_news_div').style.display='block';
              document.getElementById('display_selected_news_div_button').style.display='inline';
          }
          else    { 
              document.getElementById('display_selected_news_div').style.display='none';
              document.getElementById('display_selected_news_div_button').style.display='none';
          }
        
      }
    
    /**                
     * deleteNewsEntry : It is used to delete the news from the selected_news_table 
     * Parameters        : row_id      : to get the id of the selected row
     * Return Value      : Return no Value
     * Compatibility:IE 6.0,Mozilla Firefox 5.0 &Netscape Navigator 7.1
     **/
     function deleteNewsEntry(row_id) 
     {  
        var new_delete_obj = document.getElementById('display_news_table' + row_id);
        var news_name=new_delete_obj.cells.item(1).innerHTML;

        if(confirm(news_name+' '+EVNT_TGS017_020))  
        {
            deleteTblRow('display_news_table', row_id);
            numberTblRows('display_news_table')
            var table_obj = document.getElementById('display_news_table');
            if(table_obj.rows.length < 2) 
            {
                document.getElementById('display_news_div').style.display = 'none';
            }

        }

     }

       
    /** 
    *  newsCleanUp      : function used to clean up form elements  
    *  Parameters       : No parameters
    *  Return Value     : null
    *  Compatibility    : Internet Explorer(6.0)&Mozilla Firefox(5.0)
    **/
     function newsCleanUp(form)
     {
         var slot_obj=document.getElementById('news_result_slot');
         slot_obj.innerHTML='';
         form.keyword.value='';
         
     }
   
       
          /**                
           * moveNewsTblRowsFromSrcToDestTable: It is used get the  move the rows from source to destination
           * Parameters      : src_table_id:is passed to get the source table id
           *                 : dest_table_id:is passed to get the destination table id   
           *                 
           * Return Value    : NO Return Value
           * Compatibility   : IE 6.0,Mozilla Firefox 5.0 &Netscape Navigator 7.1
        **/
        function moveNewsTblRowsFromSrcToDestTable(src_table_id, dest_table_id)
        {
           if(src_table_id == 'selected_news_table')   {
                           document.getElementById('display_news_div').style.display='block';
            }
        
            var src_table_obj=document.getElementById(src_table_id);
            var src_table_row_length=src_table_obj.rows.length;
            deleteAllTblRowsExceptHeader(dest_table_id);
            for(var index_assign=1;index_assign<src_table_row_length;index_assign++)
            {
                 var src_table_row= src_table_obj.rows[index_assign];
                 var src_table_row_cells_length=src_table_row.cells.length;
                 var news_id = src_table_row.cells.item(src_table_row_cells_length - 1).title;
                 var src_table_row_id= 'row_id' + news_id ;
                                                  
                 addTblRowWithId(dest_table_id,src_table_row_id,3);
                 for(var index_members=0;index_members<src_table_row_cells_length;index_members++)
                 {
                     var new_obj= document.getElementById(dest_table_id + src_table_row_id);
                     
                     if(index_members < src_table_row_cells_length - 1)
                     {
                        new_obj.cells.item(index_members).innerHTML = src_table_row.cells.item(index_members).innerHTML;
                     }
                     else
                     {
                        // Member id is assigned to title attribute of the "td" tag, in search page
                        var cell_content = "<input " + "type=hidden name" + "=news value=" + news_id + ">" 
                                               
                        if(src_table_id == 'selected_news_table')   {
                            cell_content = cell_content + "<a href" + "='#' " + "onclick=" + "deleteNewsEntry('" + src_table_row_id + "')>" +
                                "<img " + "alt='Delete' title='Delete' border" + "=0 src='" + image_url + "images/delete_icon.gif'" + "><" + "/a>";
                        }        
                        else    {
                            cell_content = cell_content + "<a href" + "='#' " + "onclick=" + "deleteSingleNewsEntry('" + src_table_row_id + "')>" +
                            "<img " + "alt='Delete' title='Delete' border" + "=0 src='" + image_url + "images/delete_icon.gif'" + "><" + "/a>";
                        }
                        new_obj.cells.item(index_members).innerHTML = cell_content;
                        new_obj.cells.item(index_members).title = news_id;
                     }
                     if (index_members != 1)   {
                     new_obj.cells.item(index_members).setAttribute('align', 'center');         
                     }                         
                }
                new_obj.cells.item(1).setAttribute('align', 'left');
            }
            numberTblRows(dest_table_id);
            if(src_table_id == 'selected_news_table')   {
                hiddenFloatingDiv('search_news_slot');
                showSelectBoxes('assign_news');
            }
            else    {
                try {
                   // responseHandler();
                }
                catch(e)    {}
            }
            showHideSelectedNewsDiv();
        }     

 
//audioOrVideoPT page javascript


/**                
* addStreamingDetails    : It constructs row values based on entered streaming details and 
*                        Add the row to streaming table 
* Parameters      : table_id      : Table id for the Row Value Need to Add
*                 : no_of_cells   : Number of columns need to Added
* Return Value    : Return no Value
* Compatibility   : IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
**/
function addStreamingDetails(table_id,no_of_cells)
{
    var select_archive_type = document.getElementById('select_archive_type').options[document.getElementById('select_archive_type').selectedIndex].innerHTML;
    var archive_type_value = document.getElementById('select_archive_type').options[document.getElementById('select_archive_type').selectedIndex].value;
    var title = document.getElementById('archive_title').value;     
    var url = document.getElementById('url').value;
    var duration = document.getElementById('duration').value;     
    
    //it Used to validate program date and description
    var check_flag=true;
    
    if(trim(archive_type_value) == -1)
    {
        check_flag = false;
        alert(EVNT_TGS017_023);
    }
    else if(trim(title) == '')
    {
        check_flag = false;
        alert(EVNT_TGS017_024);
        document.getElementById('archive_title').focus();
    }
    else if(trim(url) == '')
    {
        check_flag = false;
        alert(EVNT_TGS017_025);
        document.getElementById('url').focus();
    }
    else if(trim(duration) == '')
    {
        check_flag = false;
        alert(EVNT_TGS017_026);
        document.getElementById('duration').focus();
    }

    // Checks Company and Member position values are entered
    if(check_flag)
    {
        document.getElementById('display_audiovideo_div').style.display='block';
        var new_row_id=addTblRow(table_id,no_of_cells);
        var row_number;
        row_number = new_row_id.substring(15,new_row_id.length);  
        var serial_no = "&nbsp;"+row_number;
        
        //constricting Row value
        var tools_content =  "&nbsp;<"+"a href='javascript:;' alt='Edit' title='Edit' border=0 onclick=editStreamingDetails('"+table_id+"','"+new_row_id+"')><"+"img border=0 src='"+img_url+"/images/edit_icon.gif'><"+"/a>";
        tools_content=tools_content + "&nbsp;<"+"a href='javascript:;' alt='Delete' title='Delete' border=0 onclick=deleteStreamingDetails('"+table_id+"','"+row_number+"')><"+"img border=0 id=delete_stream_image"+row_number+" src='"+img_url+"/images/delete_icon.gif'><"+"/a>";
    
        tools_content=tools_content+"<input type='hidden' name='audiovideo.archive_type_value:records'  id='archive_type_id_hidden' value='"+archive_type_value+"'>";
        tools_content = tools_content +"<input type='hidden' name='audiovideo.title:records' value='"+title+"'>";
        tools_content=tools_content+"<input type='hidden' name='audiovideo.url:records' value='"+url+"'>";
        tools_content = tools_content +"<input type='hidden' name='audiovideo.duration:records' value='"+duration+"'>";
        
        //inserting row valus
        insertContentIntoCell(new_row_id,0,select_archive_type);
        insertContentIntoCell(new_row_id,1,title);
        insertContentIntoCell(new_row_id,2,url);
        insertContentIntoCell(new_row_id,3,duration);
        insertContentIntoCell(new_row_id,4,tools_content);
        
        //after data is Append it clears input fields
        clearStreamingFields();   
        //numberTblRows(table_id);
    }
}


/**                
* displayArchiveDeleteTool        : It display all delete icon 
* Parameters            : No Parameters
* Return Value          : No Return Value
* Compatibility         : IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
**/

function displayArchiveDeleteTool() 
{
    var table_obj = document.getElementById('streaming_table');
    for(var i=1; i < table_obj.rows.length; i++)
    {
        delete_image_id = "delete_stream_image"+i;
        document.getElementById(delete_image_id).style.display ='inline';         
    }
}

/**                
* clearStreamingFields    : It Clears the streaming input fields after Add/Update the data
* Parameters            : No Parameters
* Return Value          : No Return Value
* Compatibility         : IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
**/

function clearStreamingFields()
{
    setSelectValue(document.getElementById('select_archive_type'),-1);
    document.getElementById('archive_title').value ='';
    document.getElementById('url').value ='';
    document.getElementById('duration').value ='';
    document.manage_event.archive_desc.value = ''

    var update_content =  "&nbsp;<"+"a href='javascript:;' border=0 onclick=addStreamingDetails('streaming_table',5)><"+"img border=0 src='"+img_url+"/images/add_button.jpg'><"+"/a>";
    var rowaction= document.getElementById('archive_row_manager');
    rowaction.innerHTML= update_content;
    
}

/**                
* updateStreamingDetails    : It Update the edited streaming Details in to program table
* Parameters              : row_id : Edited Row Id
* Parameters              : action: Action Type
* Return Value            : No Return Value
* Compatibility           : IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
**/

function updateStreamingDetails(table_id,row_id,action)
{   
    var row_no;
    var check_flag=true;
        
    if(row_id != null)
    {
        row_no = row_id.substring(15,row_id.length);       
    }

    //If cancel button is clicked clear the field value
    if(action == 'cancel')
    {
        document.getElementById('delete_stream_image'+row_no).style.display ='inline';
        clearStreamingFields();
    }

    //If Update button is clicked append the value to company table
    if(action =='update')
    {
        var select_archive_type = document.getElementById('select_archive_type').options[document.getElementById('select_archive_type').selectedIndex].innerHTML;
        var archive_type_value = document.getElementById('select_archive_type').options[document.getElementById('select_archive_type').selectedIndex].value;
        var title = document.getElementById('archive_title').value;     
        var url = document.getElementById('url').value;
        var duration = document.getElementById('duration').value;     

        //it Used to validate program date and description
        var check_flag=true;

        if(trim(archive_type_value) == -1)
        {
            check_flag = false;
            alert(EVNT_TGS017_023);
        }
        else if(trim(title) == '')
        {
            check_flag = false;
            alert(EVNT_TGS017_024);
            document.getElementById('archive_title').focus();
        }
        else if(trim(url) == '')
        {
            check_flag = false;
            alert(EVNT_TGS017_025);
            document.getElementById('url').focus();
        }
        else if(trim(duration) == '')
        {
            check_flag = false;
            alert(EVNT_TGS017_026);
            document.getElementById('duration').focus();
        }

        //Based on flag value company details append to company table
        if(check_flag)
        {
            document.getElementById('display_audiovideo_div').style.display='block';
            var serial_no = "&nbsp;" + row_no;
                
            //Constricting content of edited row
            var tools_content =  "&nbsp;<"+"a href='javascript:;' alt='Edit' title='Edit' border=0 onclick=editStreamingDetails('"+table_id+"','"+row_id+"')><"+"img border=0 src='"+img_url+"/images/edit_icon.gif'><"+"/a>";
            tools_content=tools_content + "&nbsp;<"+"a href='javascript:;' alt='Delete' title='Delete' border=0 onclick=deleteStreamingDetails('"+table_id+"','"+row_no+"')><"+"img border=0 id=delete_stream_image"+row_no+" src='"+img_url+"/images/delete_icon.gif'><"+"/a>";

            tools_content=tools_content+"<input type='hidden' name='audiovideo.archive_type_value:records' id='archive_type_id_hidden' value='"+archive_type_value+"'>";
            tools_content = tools_content +"<input type='hidden' name='audiovideo.title:records' value='"+document.getElementById('title').value+"'>";
            tools_content=tools_content+"<input type='hidden' name='audiovideo.url:records' value='"+document.getElementById('url').value+"'>";
            tools_content = tools_content +"<input type='hidden' name='audiovideo.duration:records' value='"+document.getElementById('duration').value+"'>";

            //inserting row valus
            insertContentIntoCell(row_id,0,select_archive_type);
            insertContentIntoCell(row_id,1,title);
            insertContentIntoCell(row_id,2,url);
            insertContentIntoCell(row_id,3,duration);
            insertContentIntoCell(row_id,4,tools_content);

            //Clear the fields after updating 
            clearStreamingFields();
            //numberTblRows(table_id);
        }              
    }   
}


/**                
* deleteStreamingDetails: It Deletes streaming Row Based on Conformation Value
* Parameters      : table_id: Table id 
* Parameters      : row_id   : Edited Row Id
* Return Value    : No Return Value
* Compatibility   : IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
**/
function deleteStreamingDetails(table_id,row_id)
{
    var retVal = confirm(EVNT_TGS017_027);
    if(retVal)
    {
        deleteTblRow(table_id,row_id);
    }
    //numberTblRows(table_id);
    var table_obj = document.getElementById(table_id);
    if(table_obj.rows.length < 2) 
    {
        document.getElementById('display_streaming_div').style.display = 'none';
    }
}

/**                
* editStreamingDetails    : It populate edited streaming information in fields 
* Parameters            : rowid   : Edited Row Id
* Return Value          : No Return Value
* Compatibility         : IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
**/
function editStreamingDetails(table_id,row_id)
{
    var edit_row = document.getElementById(row_id);
    var row_no;
    var delete_image_id;

    //get the row number based on row Id
    if(row_id != null)
    {    
        row_no = row_id.substring(15,row_id.length);
        
    }
    delete_image_id = "delete_stream_image"+row_no;
    
    //Edited value populated to company fields 
    setSelectValue(document.getElementById('select_archive_type'),trim(document.getElementById('archive_type_id_hidden').value));
    document.getElementById('title').value = trim(edit_row.cells[1].innerHTML);
    document.getElementById('url').value = trim(edit_row.cells[2].innerHTML);
    document.getElementById('duration').value = trim(edit_row.cells[3].innerHTML);

    var update_content =  "&nbsp;<"+"a href='#' onclick=updateStreamingDetails('"+table_id+"','"+row_id+"','update')><"+"img border=0 src='"+img_url+"/images/update.jpg'><"+"/a>";
    update_content=update_content + "&nbsp;<"+"a href='#' onclick=updateStreamingDetails('"+table_id+"','"+row_id+"','cancel')><"+"img border=0 src='"+img_url+"/images/cancel_button.jpg'><"+"/a>";
    var rowaction= document.getElementById('archive_row_manager');
    rowaction.innerHTML= update_content;
    displayArchiveDeleteTool();
    document.getElementById(delete_image_id).style.display ='none';
}


//assignSpeakersPT page javascript


    /**                
    * deleteSingleEntry : It is used to delete the speakers from the selected_speakers_table 
    * Parameters        : row_id      : to get the id of the selected row
    * Return Value      : Return no Value
    * Compatibility:IE 6.0,Mozilla Firefox 5.0 &Netscape Navigator 7.1
    **/
    function deleteSingleEntry(row_id) 
    {  
        var new_delete_obj = document.getElementById('selected_speakers_table'+row_id);
        var full_name=new_delete_obj.cells.item(1).innerHTML;
        if(confirm(full_name+' '+EVNT_TGS017_020))  
        {
            chk_obj = document.getElementById('checkbox_speaker_id' + new_delete_obj.cells.item(new_delete_obj.cells.length - 1).title);
            deleteTblRow('selected_speakers_table', row_id);
            numberTblRows('selected_speakers_table')
            try {
                chk_obj.checked = false;
            }
            catch(e)    {}
        }
        showHideSelectedSpeakersDiv();
    }

   /**                
   * addSpeakerDetails : It constructs Row value based on the checbox selected and adds the tools icon.
   * Parameters      : chk_obj      : Retrives the checkbox object.
   *                 : speaker_member_id   : Retrives the id of the member selected.
   * Return Value    : Return no Value
   * Compatibility   : Internet Explorer(6.0)&Mozilla Firefox(5.0)
   **/    
   function addSpeakerDetails(chk_obj,speaker_member_id)
   {
       document.getElementById('display_selected_speakers_div').style.display='block';
       //document.getElementById('button_slot').style.display='inline';
       var checkbox_name='selected_speakers';
       var checkbox_id='checkbox_speaker_id'+speaker_member_id;
       var dest_table_id = 'selected_speakers_table'
       var speaker_row_id = 'row_id'+speaker_member_id;
       var search_row_obj = document.getElementById(speaker_row_id);
       var check_assigned_members = document.getElementById('selected_speakers_table');
       if(chk_obj.checked==true)
       {
           addTblRowWithId(dest_table_id,speaker_row_id,4);
           var new_obj = document.getElementById(dest_table_id+speaker_row_id);
           new_obj.cells.item(1).innerHTML = search_row_obj.cells.item(1).innerHTML;
           var select_obj = document.getElementById('speaker_role_slot').innerHTML;
           new_obj.cells.item(2).align='center';
           new_obj.cells.item(2).innerHTML = select_obj;
           var select_role_id = document.getElementById('role_select_id');
           select_role_id.id = 'roleselect'+speaker_member_id;
           var tools_content=search_row_obj.cells.item(4).innerHTML;
           var speaker_hidden_id = 'speaker_role_hidden'+speaker_member_id;
           var edit_exist = 'edit_speaker'+speaker_member_id;
           var edit_hidden_exist = document.getElementById(edit_exist).value;
           var display_tools_content ="<a alt='Delete' title='Delete' href=# " + "onclick=deleteSingleEntry('" +
           speaker_row_id +"') id='delete_entry_" + dest_table_id + speaker_row_id +"'><img src='" + image_url + "images/delete_icon.gif' border=0><" + "/a>";
           var hidden_field_var = "<input type=hidden name=speakers.id_member:records value=" + speaker_member_id + ">";
           new_obj.cells.item(3).innerHTML=hidden_field_var+tools_content+display_tools_content;  
           new_obj.cells.item(3).title=speaker_member_id;
           new_obj.cells.item(3).setAttribute('align', 'center');
           new_obj.cells.item(2).setAttribute('align', 'center');
       }
       else
       {
           deleteTblRow(dest_table_id, speaker_row_id);
       }
       showHideSelectedSpeakersDiv();
       numberTblRows('selected_speakers_table'); 
   }
   
       
    /**                
    * validateAssign  : It validate required fields values and callst he  moveTblRowsFromSrcToDestTable function to add the assigned members.
    * Parameters      : form : returns the value of the current object.
    * Return Value    : NO Return Value
    * Compatibility:IE 6.0,Mozilla Firefox 5.0 &Netscape Navigator 7.1
    **/
    function validateAssign(form)
    {
        var check_members_obj = document.getElementById('selected_speakers_table');
        if(check_members_obj.rows.length<=1)
        {
            alert(EVNT_TGS017_028);
            return false;
        }
        else
        {
            moveTblRowsFromSrcToDestTable('selected_speakers_table', 'display_speakers_table');

        }
    }


    /** 
    *  invokeFind       : This function is used to call the ajax method makeGETRequest() 
    *                     to display the contacts based on the search criteria
    *  Parameters       : No parameters
    *  Return Value     : null
    *  Compatibility    : Internet Explorer(6.0)&Mozilla Firefox(5.0)
    **/
    var find_var='';
    function invokeFind(find_new_var) 
    {   
        var first_name = document.search_speaker.speaker_first_name.value;
        var last_name = document.search_speaker.speaker_last_name.value;
        var email = document.search_speaker.speaker_email.value;
        document.getElementById('manage_slot').style.display="inline";
        //document.getElementById('button_slot').style.display="inline";
        //document.getElementById('find_button_slot').style.display="none";
        var url = base_url + "/EM/manageEvent/searchSpeakersPT?first_name="+encodeURI(first_name)+"&last_name="+encodeURI(last_name)+"&email="+encodeURI(email);
        var search_display_slot_id = 'manage_slot';
        makeGETRequest(url, search_display_slot_id);
        
        if(document.add_edit_speaker.id_member.value==-1 && find_new_var=='true')
        { 
           find_var=1;   
        }
        
     }

       
    /** 
    *  speakerCheckbox       : This function is used from responsehandler to check the previously selected values
    *  Parameters       : No parameters
    *  Return Value     : shall not return value
    *  Compatibility    : Internet Explorer(6.0)&Mozilla Firefox(5.0)
    **/  
     function speakerCheckbox()
      {
        var checkbox_contacts_obj=document.getElementById('selected_speakers_table');
           for(var index_checkbox=1;index_checkbox<checkbox_contacts_obj.rows.length;index_checkbox++)
           {  
              var row_id=checkbox_contacts_obj.rows[index_checkbox].id;
              var start_index=row_id.lastIndexOf('selected_speakers_tablerow_id');
              var id_member=row_id.substring(29,row_id.length);
              var checkbox_obj=document.search_speaker.selected_speakers;
              var col_length = checkbox_contacts_obj.rows[index_checkbox].cells.length
              var id_member = checkbox_contacts_obj.rows[index_checkbox].cells.item(col_length-1).title
             
             if(checkbox_obj.length) {
                for(var index_precheck=0;index_precheck<checkbox_obj.length;index_precheck++)
                {
                    if(checkbox_obj[index_precheck].value==id_member)
                    {
                        checkbox_obj[index_precheck].checked=true;
                    }
                }
            }
            if(checkbox_obj.type == 'checkbox')   {
                if(checkbox_obj.value==id_member)
                {
                    checkbox_obj.checked=true;
                }
            }
             
            }

      } 
   
     /** 
     * enterSearchSpeakerKeyHandler : This function is used to call the function to submit
     * Parameters      : event : The event to be initiated
                       : url   : The url to be used to get the result

     * Return Value    : null
     * Compatibility   : Internet Explorer(6.0),Mozilla Firefox(5.0) & Netscape navigator(7.0)
     **/
    function enterSearchSpeakerKeyHandler(event,form)
    {
        var key;
        var ENTER_KEY = 13;
        if(window.event)
        {
            key = window.event.keyCode;     //IE
        }
        else
        {
            key = event.which;
        }
        if(key == ENTER_KEY)
        {
            is_valid = validateFind();
            if(is_valid)
            {
                form.submit();
            }   
            else
            {
                return false;
            } 

          
        }
        else
        {
            return true;
        }  
    }

/** 
* validateFind: This function is used to validate the form if no value is found it will alert
* Parameters : no parameters
* Return Value: Shall not return any value
* Compatibility: Internet Explorer v6.0; Mozilla v5.0; Netscape V7.1;
**/
function validateFind()
{   
    var form=document.search_speaker;
    if(form.speaker_first_name.value=='' && form.speaker_last_name.value=='' && form.speaker_email.value=='')
    {
        alert(EVNT_TGS017_029);
        form.speaker_first_name.focus();
    }
    else
    {
        invokeFind('false');
    }
}

//addEditSpeakerPT page javascript

              /** 
                * getFormAsString:This is a 'private' method used by the retrieveURL() method.
                * Parameters : formName    :   The name of the form
                * Return Value: return all the form elements with there values
                * Compatibility: IE 6.0,Mozilla Firefox 5.0 &Netscape Navigator 7.1
                **/
                function getFormAsString(formName)
                {
                    //Setup the return String
                    returnString ="";
                    //Get the form values
                    formElements=document.forms[formName].elements;
                    //loop through the array, building up the url
                    //in the format '/strutsaction.do&name=value'
                    for(var i=formElements.length-1;i>=0; --i )
                    {
                        //we escape (encode) each value
                        var delim = "&";
                        if (i == formElements.length-1)
                        {
                            delim = "";
                        }
                    returnString+= delim +escape(formElements[i].name)+"="+encodeURI(formElements[i].value);
                   }
                    return returnString;
                } 
            
        
                 /** 
                   * displaySpeakerConfirmationMsg : This function is used to provide a confirmation if the speaker is succesfully added or edited
                   * Parameters : no parametrs
                   * Return Value: no return value
                   * Compatibility:IE 6.0,Mozilla Firefox 5.0 &Netscape Navigator 7.1
                 **/
                function displaySpeakerConfirmationMsg()
                 {
                      var id_member=document.add_edit_speaker.id_member.value;
                      
                      var msg = ''
                      if (id_member > 0)
                      {
                          msg = EVNT_TGS017_030; // Message for edit - updated successfully
                      }
                      else 
                      {
                          msg = EVNT_TGS017_031; // Message for add - added successfully
                      }
                      var display_first_name=document.add_edit_speaker.first_name.value;
                      var display_last_name=document.add_edit_speaker.last_name.value;
                      var display_information_message_obj=document.getElementById('message_slot');
                      display_information_message_obj.style.display='block';
                      display_information_message_obj.innerHTML= '&nbsp;&nbsp;' + display_first_name+' '+display_last_name+''+' '+msg;
                }
                
                
                               
                /** 
                  * validate: This function is used to validate if the member already exists
                  * Parameters : val:retrives the value to verify if the member already exists.
                  * Return Value: no return value
                  * Compatibility:IE 6.0,Mozilla Firefox 5.0 &Netscape Navigator 7.1
                 **/
                function validate(val)
                { 
                  if(trim(val) == 'Present')
                  {
                   alert(document.add_edit_speaker.first_name.value + ' ' +document.add_edit_speaker.last_name.value+' '+ EVNT_TGS017_032);
                  }
                  else
                  {
                    document.add_edit_speaker.submit();
                    document.search_speaker.speaker_first_name.value=document.add_edit_speaker.first_name.value;
                    document.search_speaker.speaker_last_name.value=document.add_edit_speaker.last_name.value;
                    document.search_speaker.speaker_email.value=document.add_edit_speaker.email_id.value;
                    firstInvokeFind();
                    updateEditSpeaker();
                    displaySpeakerConfirmationMsg();
                    
                    //hiddenFloatingDiv('add_speaker_slot');
                  }
            
                }
                
                function firstInvokeFind()
                {
                invokeFind('true');
                }
                
                /** 
                 * updateEditSpeaker  This function is update the speaker information edited instantaniously on click of update button
                 * Parameters :No parametrs
                 * Return Value: No return value
                 * Compatibility:IE 6.0,Mozilla Firefox 5.0 &Netscape Navigator 7.1
                 **/
                function updateEditSpeaker()
                {
                   var id_member=document.add_edit_speaker.id_member.value;
                   var row_id='display_speakers_tablerow_id'+id_member;
                   var selected_row_id='selected_speakers_tablerow_id'+id_member;
                   var row_id_obj=document.getElementById(row_id);
                   var selected_row_id_obj=document.getElementById(selected_row_id);
                   var full_name=document.add_edit_speaker.first_name.value+ ' ' + document.add_edit_speaker.last_name.value;
                   var email_id=document.add_edit_speaker.email_id.value;
                   if(selected_row_id_obj!=null)
                   {               
                        selected_row_id_obj.cells[1].innerHTML=full_name;
                        
                   }    
                   if(row_id_obj!=null)
                   {
                        row_id_obj.cells[1].innerHTML=full_name;
                        
                   }         
                }
                
                /** 
                * updateHiddenSpeaker : This function is used to check update the hiden field when new speaker
                *                        is added
                * Parameters :No parameters passed
                * Return Value:No return value 
                * Compatibility: IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
                **/ 
                function updateHiddenSpeaker()
                {  
                   var id_member=document.search_speaker.selected_speakers.value;
                   var hidden_field = document.getElementById('append_speakers').innerHTML;
                   hidden_field_var =  "<input type=hidden name=added_speakers value=" + id_member + ">";
                   document.getElementById('append_speakers').innerHTML=hidden_field + hidden_field_var;
                   
                }
                
                
                /** 
                * requiredAdd : This function is used to check 
                *                     whetherfirst name,last name,email fields are empty or not
                * Parameters :No parameters passed
                * Return Value:No return value 
                * Compatibility: IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
                **/         
                function requiredAdd()
                {
                    this.aa = new Array('first_name', EVNT_TGS017_033,
                     new Function ('varName', ' return this[varName];'));
                    this.ab = new Array('last_name', EVNT_TGS017_034, 
                      new Function ('varName', ' return this[varName];'));
                    this.ac = new Array('email_id', EVNT_TGS017_035,
                      new Function ('varName', ' return this[varName];'));
                     
                }
                
                /** 
                    * email : This function is used to check the email format 
                    * Parameters :No parameters passed
                    * Return Value:No return value 
                    * Compatibility: IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
                **/ 
                function email()
                {
                    this.ae = new Array('email_id', EVNT_TGS017_036, 
                     new Function ('varName', ' return this[varName];'));
                }
               
                         /**
                         * enterAddSpeakerKeyHandler: This function is used to submit the form when enter 
                         *                  key is pressed from the keyboard
                         * Parameters : event  : event occured
                         *              frm    : document form name
                         * Return Value: Shall not return any value
                         * Compatibility: IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
                         **/
                         function enterAddSpeakerKeyHandler(event,frm)
                         {
                             var key;
                             var ENTER_KEY = 13;
                             if(window.event)
                             {
                                key = window.event.keyCode;     //IE
                             }
                             else
                             {
                                 key = event.which;
                             }
                             if(key == ENTER_KEY)
                             {
                                 is_valid = validateAddForm(frm); 
                                  if(is_valid)
                                  {
                                      frm.submit();
                                  }  
                                  else
                                  {
                                      return false;
                                  } 
                             }
                             else
                             {
                                 return true;
                             }  
             }
        
        
        /** 
          * fetchResponseval: This function is used to to get the values updated in the edit mode and calls 
                               the validate() function. 
          * Parameters : http_request:gets the request
          *            : tgsDisplayDiv:gets the div to be displayed
          * Return Value: no return value
          * Compatibility:IE 6.0,Mozilla Firefox 5.0 &Netscape Navigator 7.1
         **/
        function fetchResponseval(http_request,tgsDisplayDiv)
        {
            var statusText;
             // Check the ready state.
            switch (http_request.readyState)
            {
                case XMLHTTPREQUEST_READY_STATE_UNINITIALIZED:
                    statusText = "";
                    break;
    
                case XMLHTTPREQUEST_READY_STATE_LOADING:
                    statusText = "Initialzing ...";
                    break;
    
                case XMLHTTPREQUEST_READY_STATE_LOADED:
                    statusText = "Sending data...";
                    break;
    
                case XMLHTTPREQUEST_READY_STATE_INTERACTIVE:
                    statusText = "Downloading data...";
                    break;
    
                case XMLHTTPREQUEST_READY_STATE_COMPLETED:
                              statusText = "Completed";
                              statusText  = http_request.responseText;
                              if(statusText == -1) {
                                location.replace(portal_url + '?error=ERR_TGS002_001');
                              }
                             var result = document.getElementById(tgsDisplayDiv);
                             result.value= statusText;
                             validate(statusText);
                             break;
    
                default:
                    statusText = "Unknown error.";
                    break;
            }
        }

        /**                
        * updateSponsorLogoSrc : This JS function is used to update the source of the sponsor logo after updating the sponsor
        * Parameters      : id_sponsor      : id of the sponsor
        *                 
        * Return Value    : Return no Value
        * Compatibility   : Internet Explorer(6.0)&Mozilla Firefox(5.0)
        **/    
    function updateSponsorLogoSrc(id_sponsor,sponsor_url)   {
        var sponsor_logo_list = document.getElementsByName('sponsor_logo_image_name_' + id_sponsor);
        var sponsor_anchor_list = document.getElementsByName('sponsor_logo_anchor_name_' + id_sponsor);
        var sponsor_anchor = document.getElementsByName('sponsor_logo_anchor_id_' + id_sponsor);
        var anchor_target = (sponsor_url=='')?'_self':'_blank';
        if (sponsor_url == '')
         {
           sponsor_url = 'javascript:;'
         }
        
        var img_src = portal_url + '/sponsorManager/managesponsor/sponsorLogos/' + id_sponsor + '?date=' + new Date();
        if (sponsor_logo_list.length)   {
            try {
                for(i=0;i<sponsor_logo_list.length; i++)    {
                    sponsor_logo_list[i].src = img_src;
                }
            }catch(e)   {}
        }
        
        if (sponsor_anchor_list.length)   {
            try {
                for(i=0;i<sponsor_anchor_list.length; i++)    {
                    sponsor_anchor_list[i].href = sponsor_url;
                    sponsor_anchor_list[i].target = anchor_target;
                }
            }catch(e)   {}
        }
        
    }
 
 
 //assignSponsorPT page javascript
 
        /**                
        * addSponsorDetails : It constriction Row value based on the checbox selected and adds the tools icon.
        * Parameters      : chk_obj      : Retrives the checkbox object.
        *                 : sponsor_id   : Retrives the id of the sponsor selected.
        * Return Value    : Return no Value
        * Compatibility   : Internet Explorer(6.0)&Mozilla Firefox(5.0)
        **/    
        function addSponsorDetails(chk_obj,sponsor_id)
        { 
            document.getElementById('display_selected_sponsors_div').style.display='block';
            var checkbox_name='selected_sponsors';
            var checkbox_id='checkbox_sponsor_id'+sponsor_id;
            var dest_table_id = 'selected_sponsor_table'
            var sponsor_row_id = 'row_id'+sponsor_id;
            var search_row_obj = document.getElementById(sponsor_row_id + '_sponsor');
            var check_assigned_sponsors = document.getElementById('selected_sponsor_table');
            if(chk_obj.checked==true)
            {
                addTblRowWithId(dest_table_id,sponsor_row_id,4);
                var new_obj = document.getElementById(dest_table_id+sponsor_row_id);
                for(var index_contact=0; index_contact<search_row_obj.cells.length-1; index_contact++)
                {   
                    try{    
                        if(index_contact==2)
                        {  
                            var tools_content=search_row_obj.cells.item(index_contact+1).innerHTML;
                            sponsor_name = ts_getInnerText(search_row_obj.cells.item(index_contact));
                            sponsor_name = trim(sponsor_name);
                            var display_tools_content ="<a href=# " +
                            "onclick=\"deleteSingleSponsorEntry('" +
                            sponsor_row_id + "','" + sponsor_name +"')\" id='delete_entry_" + dest_table_id + sponsor_row_id +"'><img src='" + image_url + "images/delete_icon.gif' alt=Delete title=Delete border=0><" + "/a>";
                            var hidden_field_var = "<input type=hidden name=sponsors value=" + sponsor_id + ">";
                            new_obj.cells.item(index_contact+1).innerHTML=hidden_field_var+tools_content+display_tools_content;
                            new_obj.cells.item(index_contact+1).title = sponsor_id + '__' + sponsor_name;
                            
                        }
                        else if(index_contact == 1) {
                            
                            var src_cell_content = search_row_obj.cells.item(index_contact+1).innerHTML;
                            var dest_cell_content = "<a href=# " + "onclick=showEventSponsorProfile('" + portal_url +
                                "/sponsorManager/viewsponsor/sponsorProfilePT?sponsor_id=" + sponsor_id + "') style='cursor:pointer'>";
                            dest_cell_content = dest_cell_content + src_cell_content + '</a>';
                            new_obj.cells.item(index_contact+1).innerHTML = dest_cell_content;
                            //new_obj.cells.item(index_contact+1).style="padding:3px;";
                            
                        }
                        else
                        {
                            new_obj.cells.item(index_contact+1).innerHTML = search_row_obj.cells.item(index_contact+1).innerHTML;
                        }
                        if (index_contact != 1) {
                            new_obj.cells.item(index_contact+1).setAttribute('align', 'center');
                        }
                       }catch(e){} 
                }
                new_obj.cells.item(2).setAttribute('align', 'left');
 
            }
            else
            {
                deleteTblRow(dest_table_id, sponsor_row_id);
            }
            showHideSelectedSponsorsDiv();
            numberTblRows('selected_sponsor_table');
            //document.getElementById('sponsor_result_slot').setAttribute('align','center');
    }
 
    
     /**                
     * sponserCheckbox  : checks the pre seleted check boxes
     * Parameters      : no parameter
     * Return Value    : NO Return Value
     * Compatibility:IE 6.0,Mozilla Firefox 5.0 &Netscape Navigator 7.1
     **/
       function sponserCheckbox()
       {  
         var checkbox_contacts_obj=document.getElementById('selected_sponsor_table');
            for(var index_checkbox=1;index_checkbox<checkbox_contacts_obj.rows.length;index_checkbox++)
            {  
               var row_id=checkbox_contacts_obj.rows[index_checkbox].id;
               var start_index=row_id.lastIndexOf('selected_sponsor_tablerow_id');
               var id_sponsor=row_id.substring(28,row_id.length);
               var checkbox_obj=document.assign_sponsers.selected_sponsors;
               var col_length = checkbox_contacts_obj.rows[index_checkbox].cells.length
               var sponsor_id_and_name = checkbox_contacts_obj.rows[index_checkbox].cells.item(col_length-1).title
               var sponsor_name_index = sponsor_id_and_name.indexOf('__');
               var sponsor_id = sponsor_id_and_name.substr(0,sponsor_name_index);

              if(checkbox_obj.length) {
                 for(var index_precheck=0;index_precheck<checkbox_obj.length;index_precheck++)
                 {
                     if(checkbox_obj[index_precheck].value==id_sponsor)
                     {
                         checkbox_obj[index_precheck].checked=true;
                     }
                 }
             }
             if(checkbox_obj.type == 'checkbox')   {
                 if(checkbox_obj.value==id_sponsor)
                 {
                     checkbox_obj.checked=true;
                 }
             }
              
             }
 
       } 
 
    /** 
      * enterSearchSponsorKeyHandler : This function is used to call the function to submit
      * Parameters      : event : The event to be initiated
                        : url   : The url to be used to get the result
 
      * Return Value    : null
      * Compatibility   : Internet Explorer(6.0),Mozilla Firefox(5.0) & Netscape navigator(7.0)
      **/
     function enterSearchSponsorKeyHandler(event,form)
     {
         var key;
         var ENTER_KEY = 13;
         if(window.event)
         {
             key = window.event.keyCode;     //IE
         }
         else
         {
             key = event.which;
         }
         if(key == ENTER_KEY)
         {
             is_valid = validateSponsorForm(form);
             if(is_valid)
             {
                 form.submit();
             }   
             else
             {
                 return false;
             } 
 
           
         }
         else
         {
             return true;
         }  
    }
 
 
     /**                
     * validateSponsor  : It validate required fields values and callst he  moveSponsorTblRowsFromSrcToDestTable function to add the assigned sponsors.
     * Parameters      : form : returns the value of the current object.
     * Return Value    : NO Return Value
     * Compatibility:IE 6.0,Mozilla Firefox 5.0 &Netscape Navigator 7.1
     **/
     function validateSponsor(form)
     {
         var check_sponsor_obj = document.getElementById('selected_sponsor_table');
         if(check_sponsor_obj.rows.length<=1)
         {
             alert(EVNT_TGS017_037);
             return false;
         }
         else
         {
             moveSponsorTblRowsFromSrcToDestTable('selected_sponsor_table', 'display_sponsor_table');
 
         }
     }
 
 
     /**                
     * deleteSingleSponsorEntry : It is used to delete the sponsors from the selected_sponsor_table 
     * Parameters        : row_id      : to get the id of the selected row
     * Return Value      : Return no Value
     * Compatibility:IE 6.0,Mozilla Firefox 5.0 &Netscape Navigator 7.1
     **/
     function deleteSingleSponsorEntry(row_id, sponsor_name) 
     {  
         var new_delete_obj = document.getElementById('selected_sponsor_table'+row_id);
         //var sponsor_name=new_delete_obj.cells.item(2).innerHTML;
         if(confirm(sponsor_name+' '+EVNT_TGS017_020))  
         {
             chk_obj = document.getElementById('checkbox_sponsor_id' + new_delete_obj.cells.item(new_delete_obj.cells.length - 1).title);
             deleteTblRow('selected_sponsor_table', row_id);
             numberTblRows('selected_sponsor_table')
             try {
                 chk_obj.checked = false;
             }
             catch(e)    {}
             showHideSelectedSponsorsDiv();
         }
     }
 
 
     /**                
     * selectFindByValueField : This function is used to call Ajax function for populate find value field 
     *                          It dynamically constrict find value field based on find by value 
     *                            
     * Parameters      selected_value: find by select box value
     *                       edit_flg: edit sponsor flg 
     * Return Value    : Shall not return any value
     *
     * Compatibility: Internet Explorer v6.0; Mozilla v5.0; Netscape V7.1;
     **/
     function selectFindByValueField(selected_value,edit_flg)
     {   
         if((selected_value == "SPONSOR_NAME") || (selected_value == "SPONSOR_URL") || (selected_value ==""))
         {
              document.getElementById('find_value_slot').innerHTML="<input type='textbox' name='find_value' value='' size=20 class=normal onkeypress='javascript:return enterSearchSponsorKeyHandler(event,document.assign_sponsers)'>";             
              if(edit_flg)
              {
                  showSponsorResult();
              }
         }
         else
         {
             var url=absolute_url+'/sponsorManager/searchsponsor/listSearchValuePT?find_by='+selected_value;
             if(selected_value != "")    
             {
                 makeGETRequest(url, 'find_value_slot');
             }
         }
     }
     
     /** 
      * validateSponsorForm    : This function is used to validate 
      *                    - find_by field is empty
      *                    - find_value field is empty
      * Parameters : form : current form object to validate
      * Return Value: return true - if validation succesfull
      *               return false - if validation failed
      * Compatibility: Internet Explorer v6.0; Mozilla v5.0; Netscape V7.1;
      **/
      var error_msg=''; 
      var contact_flg='';
      function validateSponsorForm(form)
      {
          var find_by_value=document.assign_sponsers.find_by.options[document.assign_sponsers.find_by.selectedIndex].value;
          if((find_by_value == "SPONSOR_NAME"))
          {
              error_msg = EVNT_TGS017_038;
          }
          else if(find_by_value == "SPONSOR_URL")
          {
              error_msg = EVNT_TGS017_039;
          }
          else if(find_by_value == "ID_LEVEL")
          {
              error_msg = EVNT_TGS017_040;
          }
          else if(find_by_value == "ID_STATUS")
          {
              error_msg = EVNT_TGS017_041;
          }
          else if(find_by_value == "CHAPTER")
          {
              error_msg = EVNT_TGS017_042;
          }        
          oRequired = new sponsorSearchRequired();
          if(validateRequired(form,sponsorSearchRequired)) 
          {
              showSponsorResult();
          }
      }    
 
     /**                
     * sponsorSearchRequired        : It validate required fields values
     *                   
     * Parameters      : No Parameters
     *                 
     * Return Value    : NO Return Value
     * Compatibility: Internet Explorer v6.0; Mozilla v5.0; Netscape V7.1;
     **/       
     function sponsorSearchRequired()
     {
         this.aa = new Array('find_by', EVNT_TGS017_043, 
         new Function ('varName', ' return this[varName];'));
         
         this.ab = new Array('find_value',error_msg, 
         new Function ('varName', ' return this[varName];'));    
     }
 
 
     /** 
     * showSponsorResult : This function is used to call the ajax method makeGETRequest() to display
     *                    the search result, the ajax method calls the result page 
     *                    and display it in the display_slot
     * Parameters  : No Parameters
     * Return Value: Shall not return any value
     * Compatibility: Internet Explorer v6.0; Mozilla v5.0; Netscape V7.1;
     **/
     function showSponsorResult()
     {   
         //document.getElementById('message_slot').innerHTML = '';
         var find_by_obj = document.assign_sponsers.find_by;
         var selected_value = find_by_obj.options[find_by_obj.selectedIndex].value;
         var find_value = document.assign_sponsers.find_value.value;
         var sponsor_chapter = document.getElementById('chapter_selector').value;
         var url=absolute_url+'EM/manageEvent/displaySponsorPT?find_by='+selected_value+'&find_value='+find_value+'&sponsor_chapter='+sponsor_chapter;
         makeGETRequest(url, 'sponsor_result_slot');
         
     }
 

//addEditSponsorPT page javascript


     /** 
       * displaySponsorConfirmationMsg : This function is used to provide a confirmation if the sponsor is succesfully added or edited
       * Parameters : no parametrs
       * Return Value: no return value
       * Compatibility:IE 6.0,Mozilla Firefox 5.0 &Netscape Navigator 7.1
     **/
    function displaySponsorConfirmationMsg()
     {
          var id_sponsor=document.add_edit_sponsor.sponsor_id_old.value;

          var msg = ''
          if (id_sponsor > 0)
          {
              msg = EVNT_TGS017_030; // Message for edit - updated successfully
          }
          else 
          {
              msg = EVNT_TGS017_031; // Message for add - added successfully
          }
          var display_sponsor_name=document.add_edit_sponsor.sponsor_name.value;
          var display_information_message_obj=document.getElementById('sponsor_message_slot');
          display_information_message_obj.style.display='block';
          display_information_message_obj.innerHTML= '&nbsp;&nbsp;' + display_sponsor_name+' '+msg;
    }

    /** 
     * updateEditSponsors  This function is update the sponsor information edited instantaniously on click of update button
     * Parameters :No parametrs
     * Return Value: No return value
     * Compatibility:IE 6.0,Mozilla Firefox 5.0 &Netscape Navigator 7.1
     **/
    function updateEditSponsors()
    {
       var id_sponsor=document.add_edit_sponsor.sponsor_id_old.value;
       var row_id='display_sponsor_tablerow_id'+id_sponsor;
       var selected_row_id='selected_sponsor_tablerow_id'+id_sponsor;
       var row_id_obj=document.getElementById(row_id);
       var selected_row_id_obj=document.getElementById(selected_row_id);
       var sponsor_name=document.add_edit_sponsor.sponsor_name.value;
       var dest_cell_content = "<a href=# " + "onclick=showEventSponsorProfile('" + portal_url +
       "/sponsorManager/viewsponsor/sponsorProfilePT?sponsor_id=" + id_sponsor + "') style='cursor:pointer'>";
       var cell_content = dest_cell_content + sponsor_name  +"</a>"
       if(selected_row_id_obj!=null)
       {               
            var temp_var = selected_row_id_obj.cells[1].innerHTML;
            selected_row_id_obj.cells[2].innerHTML=cell_content;
            selected_row_id_obj.cells[1].innerHTML='';
            selected_row_id_obj.cells[1].innerHTML= temp_var;

       }    
       if(row_id_obj!=null)
       {
            var temp = row_id_obj.cells[1].innerHTML
            row_id_obj.cells[2].innerHTML=cell_content;
            row_id_obj.cells[1].innerHTML='';
            row_id_obj.cells[1].innerHTML=temp;

       }         
    }

    
     /**
     * enterSponsorKeyHandler: This function is used to submit the form when enter 
     *                  key is pressed from the keyboard
     * Parameters : event  : event occured
     *              frm    : document form name
     * Return Value: Shall not return any value
     * Compatibility: IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
     **/
     function enterSponsorKeyHandler(event,frm)
     {
         var key;
         var ENTER_KEY = 13;
         if(window.event)
         {
            key = window.event.keyCode;     //IE
         }
         else
         {
             key = event.which;
         }
         if(key == ENTER_KEY)
         {
             is_valid = validateAddSponsor(frm); 
              if(is_valid)
              {
                  frm.submit();
              }  
              else
              {
                  return false;
              } 
         }
         else
         {
             return true;
         }  
    }
 
         /** 
         * clean    : This function is used to replace the html,spaces in the text entered 
         *             and also covert entities to single character
         * Parameters :content: this parameter is used to get the content entered in the description field
         * Return Value: null
         * Compatibility:IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
         **/
         function clean(content)
         {
             content = content.replace(/<(.+?)>/g, ' ');//remove html
             content = content.replace('&nbsp;', ' ', 'g');//replace &nbsp; with space
             content = content.replace(/&(.+?);/g, '1');//convert entities to single character
             return content;
        }
 
        /** 
           *  validateSponsorLevel : This function is used to validate if the chapter selected is not global
           *                         and the level selected is global.
           *  Parameters       : No parameters
           *  Return Value     : null
           *  Compatibility    : Internet Explorer(6.0)&Mozilla Firefox(5.0)
           **/
           function validateSponsorLevel()
           {
              if(document.add_edit_sponsor.id_sponsor.value>1)
              { 
                 var selected_chapter=document.add_edit_sponsor.chapter_selector.value;
              }
              else
              { 
                 var selected_chapter=getSelectValue(document.add_edit_sponsor.chapter_selector);
              }
              var selected_level=getSelectValue(document.add_edit_sponsor.sponsor_level);
              
              if((selected_chapter!=0) && (selected_level==1))
              {
                 alert(EVNT_TGS017_044);
                 return false;
              } 
              return true;
           }

        /** 
         * descriptionCountWords:This function is used to count the number of words.
         * Parameters :content : Used to get the content.
         * Return Value: null
         * Compatibility:IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
         **/
         function descriptionCountWords(content)
         {    
             content = clean( content );
             var arr = content.split(' ');
             var total = 0;
             for(var i=0; i<arr.length; i++)
             {
                 if( arr[i].match(/\w/g)){
                 total ++;
             }
         }
         return total;
         }
 
  /**                
         *sponsorRequired: It is used to get the required field to be validated
         *                   
         * Parameters       : No Parameters
         *                 
         * Return Value     : NO Return Value
         * Compatibility    : IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
          **/
 
        function sponsorRequired()
         {   
             /*if(document.getElementById('ga_chapter').value=='true')
             {
                 if(document.getElementById('sponsor_mode').value == 'add') {
                     this.aa = new Array('region', EVNT_TGS017_048, 
                               new Function ('varName', ' return this[varName];'));
                     this.ab = new Array('chapter_selector', EVNT_TGS017_049,  
                               new Function ('varName', ' return this[varName];'));
                 }
             }*/          
             
             this.ad = new Array('sponsor_name', EVNT_TGS017_050, 
                       new Function ('varName', ' return this[varName];'));
             if(document.getElementById('sponsor_logo_chk').value=='true')
             {
                 this.ae = new Array('sponsor_logo', EVNT_TGS017_051, 
                           new Function ('varName', ' return this[varName];'));
             }              
             
             /*this.af = new Array('sponsor_level',EVNT_TGS017_052, 
                       new Function ('varName', ' return this[varName];'));*/
             
             //this.ai = new Array('effective_date', EVNT_TGS017_053, 
             //          new Function ('varName', ' return this[varName];'));  
             //this.aj = new Array('expiry_date',EVNT_TGS017_054, 
             //          new Function ('varName', ' return this[varName];')); 
          }             

 
 
         /** 
         * validateAddSponsor  : This function is used to validate 
         *                     - to get the mode in which the form is submitted
         * Parameters : form : current form object to validate
         *              button_type : current button clicked 
         * 
         * Compatibility:IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
         **/
         function validateAddSponsor(form)
         {   
             if(validateRequired(form,sponsorRequired) && validateDateFields(form) && validateDescription() && validateURL(document.add_edit_sponsor.sponsor_url.value,'Sponsor URL','document.add_edit_sponsor.sponsor_url.focus()'))
             {
                 //if(compareExpiryDates())
                 //{
                 //    alert(EVNT_TGS017_045);
                 //} 
                 //else
                 //{
                    document.add_edit_sponsor.submit();
                    setSelectValue(document.assign_sponsers.find_by,'SPONSOR_NAME');
                    document.assign_sponsers.find_value.value= document.add_edit_sponsor.sponsor_name.value;
                    /*showSponsorResult();
                    updateEditSponsors();
                    displaySponsorConfirmationMsg();
                    hiddenFloatingDiv('add_sponsor_slot');
                    showSelectBoxes('add_edit_sponsor');*/
                 // }    

             }   
         }
        
        /** 
             * validateDescription  : This function is used to validate 
             *                     - descrition is more than 150 words
             *                    
             * Parameters : no parameters 
             * Compatibility:IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
         **/
          function validateDescription()
          {
              var sp_description_obj = document.getElementById('sponsor_description');
              var sp_description_value = sp_description_obj.value;
              if(descriptionCountWords(sp_description_value)>150)
              {
                  alert(EVNT_TGS017_046);
                  return false;
              }
              return true;
         }
 
        /**                
          *compareDates     : It is used to compare the dates
          *                   
          * Parameters      : No Parameters
          *                 
          * Return Value    : NO Return Value
          * Compatibility   : IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
         **/
         function compareDates() 
         { 
             //this.aa = new Array("effective_date", EVNT_TGS017_047, new Function ("varName", "this.secondProperty='expiry_date';  return this[varName];"));
             return true;
         } 
         
         /**                
          *compareExpiryDates: It is used to compare if the expiry date is lesser than the current date in publish mode
          *                   
          * Parameters       : No Parameters
          *                 
          * Return Value     : NO Return Value
          * Compatibility    : IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
         **/
          function compareExpiryDates()
           {
              var sp_expiry_date_obj=document.getElementById('sp_expiry_date');
              var sp_expiry_date_value=new Date(sp_expiry_date_obj.value);
              var current_date_obj=new Date();
              if(sp_expiry_date_value<=current_date_obj)
              {
                 return true;
              }
              else
              {
                  return false;
              } 
           }

      
  
//assignNewsPT page javascript

       /**                
       * addNewsDetails  : It constriction Row value based on the checbox selected and adds the tools icon.
       * Parameters      : chk_obj      : Retrives the checkbox object.
       *                 : news_id   : Retrives the id of the news selected.
       * Return Value    : Return no Value
       * Compatibility   : Internet Explorer(6.0)&Mozilla Firefox(5.0)
       **/    
       function addNewsDetails(chk_obj,news_id)
       { 
           document.getElementById('display_selected_news_div').style.display='block';
           var checkbox_name='selected_news';
           var checkbox_id='checkbox_news_id'+news_id;
           var dest_table_id = 'selected_news_table'
           var news_row_id = 'row_id'+news_id;
           var search_row_obj = document.getElementById(news_row_id);
           var check_assigned_news = document.getElementById('selected_news_table');
           if(chk_obj.checked==true)
           {
               addTblRowWithId(dest_table_id,news_row_id,3);
               var new_obj = document.getElementById(dest_table_id+news_row_id);
               for(var index_contact=0; index_contact<search_row_obj.cells.length; index_contact++)
               {  
                   try{    
                       if(index_contact==1)
                       {  
                           var display_tools_content ="<a href=# " +
                           "onclick=deleteSingleNewsEntry('" +
                           news_row_id +"') id='delete_entry_" + dest_table_id + news_row_id +"'><img src='" + image_url + "images/delete_icon.gif' alt=Delete title=Delete border=0><" + "/a>";
                           var hidden_field_var = "<input type=hidden name=news value=" + news_id + ">";
                           new_obj.cells.item(index_contact+1).innerHTML=hidden_field_var+display_tools_content;
                           new_obj.cells.item(index_contact+1).title = news_id;
                           new_obj.cells.item(index_contact+1).setAttribute('align', 'center');
                       }
                       else
                       {
                           new_obj.cells.item(index_contact+1).innerHTML = search_row_obj.cells.item(index_contact+1).innerHTML;
                       }
                      }catch(e){} 
                  new_obj.cells.item(1).setAttribute('align', 'left');
               }

           }
           else
           {
               deleteTblRow(dest_table_id, news_row_id);
           }
           showHideSelectedNewsDiv();
           numberTblRows('selected_news_table'); 
           
   }

     /**                
             * responseHandler : It used to check if the members are already selected and pre-select the check-box.
             * Parameters      : No Parameters
             * Return Value    : NO Return Value
             * Compatibility:IE 6.0,Mozilla Firefox 5.0 &Netscape Navigator 7.1
           **/
           function responseHandler()
           {   
               sortables_init();
               speakerCheckbox();
               sponserCheckbox();
               newsCheckbox();
               if(find_var==1)
                {  
                       updateHiddenSpeaker();  
                       find_var=0;
                }
           } 

    /**
     * enterSearchNewsKeyHandler: This function is used to submit the form when enter 
     *                  key is pressed from the keyboard
     * Parameters : event  : event occured
     *              frm    : document form name
     * Return Value: Shall not return any value
     * Compatibility: IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
     **/
     function enterSearchNewsKeyHandler(event,frm)
     {
         var key;
         var ENTER_KEY = 13;
         if(window.event)
         {
            key = window.event.keyCode;     //IE
         }
         else
         {
             key = event.which;
         }
         if(key == ENTER_KEY)
         {
             is_valid = validateNewsForm(); 
              if(is_valid)
              {
                  frm.submit();
              }  
              else
              {
                  return false;
              } 
         }
         else
         {
             return true;
         }  
    }
 


    /**                
    * newsCheckbox  : it is used to check the pre selected check boxes
    * Parameters      : no parameters
    * Return Value    : NO Return Value
    * Compatibility:IE 6.0,Mozilla Firefox 5.0 &Netscape Navigator 7.1
    **/
      function newsCheckbox()
      {  
        var checkbox_contacts_obj=document.getElementById('selected_news_table');
           for(var index_checkbox=1;index_checkbox<checkbox_contacts_obj.rows.length;index_checkbox++)
           {  
              var row_id=checkbox_contacts_obj.rows[index_checkbox].id;
              var start_index=row_id.lastIndexOf('selected_news_tablerow_id');
              var id_news=row_id.substring(25,row_id.length);
              var checkbox_obj=document.assign_news.selected_news;
              var col_length = checkbox_contacts_obj.rows[index_checkbox].cells.length
              var id_news = checkbox_contacts_obj.rows[index_checkbox].cells.item(col_length-1).title
             
             if(checkbox_obj.length) {
                for(var index_precheck=0;index_precheck<checkbox_obj.length;index_precheck++)
                {
                    if(checkbox_obj[index_precheck].value==id_news)
                    {
                        checkbox_obj[index_precheck].checked=true;
                    }
                }
            }
            if(checkbox_obj.type == 'checkbox')   {
                if(checkbox_obj.value==id_news)
                {
                    checkbox_obj.checked=true;
                }
            }
             
            }

      } 




    /**                
    * validateNews  : It validate required fields values and callst he  moveNewsTblRowsFromSrcToDestTable function to add the assigned news.
    * Parameters      : form : returns the value of the current object.
    * Return Value    : NO Return Value
    * Compatibility:IE 6.0,Mozilla Firefox 5.0 &Netscape Navigator 7.1
    **/
    function validateNews(form)
    {
        var check_news_obj = document.getElementById('selected_news_table');
        if(check_news_obj.rows.length<=1)
        {
            alert(EVNT_TGS017_055);
            return false;
        }
        else
        {
            moveNewsTblRowsFromSrcToDestTable('selected_news_table', 'display_news_table');

        }
    }


    /**                
    * deleteSingleNewsEntry : It is used to delete the news from the selected_news_table 
    * Parameters        : row_id      : to get the id of the selected row
    * Return Value      : Return no Value
    * Compatibility:IE 6.0,Mozilla Firefox 5.0 &Netscape Navigator 7.1
    **/
    function deleteSingleNewsEntry(row_id) 
    {  
        var new_delete_obj = document.getElementById('selected_news_table'+row_id);
        var news_name=new_delete_obj.cells.item(1).innerHTML;
        if(confirm(news_name+' '+EVNT_TGS017_020))  
        {
            chk_obj = document.getElementById('checkbox_news_id' + new_delete_obj.cells.item(new_delete_obj.cells.length - 1).title);
            deleteTblRow('selected_news_table', row_id);
            numberTblRows('selected_news_table')
            try {
                chk_obj.checked = false;
            }
            catch(e)    {}
            showHideSelectedNewsDiv();
        }
    }


   
    /** 
     * validateNewsForm    : This function is used to validate the keyword
     *                     
     * Parameters : form : current form object to validate
     * Return Value: return true - if validation succesfull
     *               return false - if validation failed
     * Compatibility: Internet Explorer v6.0; Mozilla v5.0; Netscape V7.1;
     **/
     
     function validateNewsForm(form)
     {
         if(document.assign_news.keyword.value=='')
         {   
             alert(EVNT_TGS017_056);
             document.assign_news.keyword.focus();
         }
         else
         {
             showNewsResult();
         }
     }    
    
    /** 
    * showNewsResult : This function is used to call the ajax method makeGETRequest() to display
    *                    the search result, the ajax method calls the result page 
    *                    and display it in the display_slot
    * Parameters  : No Parameters
    * Return Value: Shall not return any value
    * Compatibility: Internet Explorer v6.0; Mozilla v5.0; Netscape V7.1;
    **/
    function showNewsResult()
    {   
        document.getElementById('news_message_slot').innerHTML = '';
        var keyword = document.assign_news.keyword.value;
        var news_chapter = document.getElementById('chapter_selector').value;
        var url=absolute_url+'EM/manageEvent/displayNewsPT?keyword='+keyword+'&news_chapter='+news_chapter;
        makeGETRequest(url, 'news_result_slot');
        
    }


//pasArchivesPT page javascript

function openUploadWindow(id_event)
{   
    var table_obj = document.getElementById('archive_streaming');
    var numrows   = table_obj.rows.length;
    
    //generate ID for the new row
    if(numrows >= 2) 
    { 
      var prev_row_id = table_obj.rows[numrows-1].id;
      var prev_row_no = prev_row_id.substring(table_obj.id.length,prev_row_id.length);
      var cur_row_no  = parseInt(prev_row_no) + 1;       
    }
    else
    {
       // if the row is the first row
       var cur_row_no  = 2;
    }
    
    var url = absolute_url + "/EM/manageEvent/uploadArchivePhotoPT?id_event="+encodeURI(id_event)+"&new_row_id="+cur_row_no;
    return openDesiredWin(url,'PhotoUpload',40,15);
    
}    

 /**                
 * deletePhoto     : It populate edited Company information in fields 
 * Parameters      : rowid   : Edited Row Id
 * Return Value    : No Return Value
 * Compatibility   : IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
 **/
 function deletePhoto()
 {   
     var confirmVal = confirm('delete photo');
     if(confirmVal)
     {
         //Member photo replaced to default photo placeholder  image
         document.getElementById('delete_placeholder').style.display='none';
         document.getElementById('present_photo').value='';
         document.getElementById('flag_upload').value=0;
         document.getElementById('photo_placeholder').src=img_url+"/images/photo_place_holder.jpg";
     }
}

var imgObj = new Image(30,30);

/**                
* populateMemberPhoto    : It makes an Ajax call for populating member photo
* Parameters             : file_id : Temporary forlder file Id
* Return Value           : Return no Value
* Compatibility          : IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
**/
function populateMemberPhoto(event_id,file_id)
{    
    var img_url = absolute_url+'/EM/manageEvent/archivePhotoTemp/'+file_id+'?date='+Date();
    imgObj.src = img_url;
    var imgTag = document.getElementById("photo_placeholder");
    imgTag.src = imgObj.src;
    document.getElementById('flag_upload').value=1;
    document.getElementById('present_photo').value=file_id;
    var photo_id = document.getElementById('all_photo_files').innerHTML;
    photo_id = photo_id + "<"+"input type='hidden' name='all_photo' value='"+file_id+"'>";
    document.getElementById('all_photo_files').innerHTML = photo_id;
    document.getElementById('delete_placeholder').style.display="inline"
}

/**                
* deletePresentationDetails    : It is used to delete the upload file row
* Parameters            : rowid   : Row Id to be deleted
*                       : tbl : table id for which the row has to be deleted
* Return Value          : No Return Value
* Compatibility         : IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
**/
function deletePresentationDetails(tbl, rowid)
   {  
      var table_obj = document.getElementById(tbl); 
      for (var rowix=1;rowix<table_obj.rows.length;rowix++)
      {

        if (table_obj.rows.item(rowix).id==rowid)
        {     
           table_obj.deleteRow(rowix); 
           return;
        }
      }          
   }

/**                
* addPresfileRow    : It is used to add the upload file row
* Parameters            : No parameters
* Return Value          : No Return Value
* Compatibility         : IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
**/
function addPresfileRow()
 {
      var table_id = document.getElementById('presentation_table_id');
      var numOfRows = table_id.rows.length;
           
      if (numOfRows > 1)
      {  
          table_id.rows.item(numOfRows-1).cells.item(2).innerHTML="<"+"a href='#' border=0 onclick=deletePresentationDetails('presentation_table_id','"+ table_id.rows.item(numOfRows-1).id + "')><"+"img border=0 src='"+img_url+"images/delete_button.jpg'><"+"/a>";
      }

      var newRow = table_id.insertRow(numOfRows);
      //These 2 lines name and id the new row
      table_id.rows.item(numOfRows).id = "presentation_file_" + numOfRows;
      table_id.rows.item(numOfRows).name = "presentation_file_" + numOfRows;
       //These 2 line get the name and id of the new row (above)
      var rowId = table_id.rows.item(numOfRows).id;
      var rowName = table_id.rows.item(numOfRows).name;
      var dc= newRow.insertCell(0);
      dc.innerHTML = "File";
      dc.style.width="20%";
      dc.style.align="left";
      dc= newRow.insertCell(1);
      dc.innerHTML += "&nbsp;:&nbsp;"+"<input type='file' class='normal' name ='presentation.pfile:records' size=20>";
      dc.innerHTML += "<input type=hidden name='presentation.id:records' value=-1>";
      dc.style.width="50%";
      dc.style.align="left";
      dc=newRow.insertCell(2);
      dc.innerHTML = "<"+"a href='#' border=0 onclick=addPresfileRow(this,true)><"+"img border=0 src='"+img_url+"images/add_button.jpg'><"+"/a>";
      dc.style.width="30%";
      dc.style.align="center";
  }
  
  
   function archiveRequired()
  {

     var archive_type_value = document.getElementById('select_archive_type').options[document.getElementById('select_archive_type').selectedIndex].value;
     var archive_title = document.getElementById('archive_title').value;
     this.aa = new Array('select_archive_type', EVNT_TGS017_060, 
               new Function ('varName', ' return this[varName];'));
     this.ab = new Array('title', EVNT_TGS017_059, 
               new Function ('varName', ' return this[varName];'));
     this.ac = new Array('url', EVNT_TGS017_065, 
               new Function ('varName', ' return this[varName];'));          
 }
  
  function getStreamingURL(url)
  {    
      var result = document.getElementById('streamingurl_display');
      result.value=url;
      hideSelectBoxes('dummy_form');
      displayWindow('streamingurl','dummy_form');
  }
  
  
  /**                
  * addArchiveStreamingDetails    : It constructs row values based on entered streaming details and 
  *                        Add the row to streaming table 
  * Parameters      : table_id      : Table id for the Row Value Need to Add
  *                 : no_of_cells   : Number of columns need to Added
  * Return Value    : Return no Value
  * Compatibility   : IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
  **/
  function addArchiveStreamingDetails(table_id,no_of_cells)
  {
      var select_archive_type = document.getElementById('select_archive_type').options[document.getElementById('select_archive_type').selectedIndex].innerHTML;
      var archive_type_value = document.getElementById('select_archive_type').options[document.getElementById('select_archive_type').selectedIndex].value;
      var title = document.getElementById('archive_title').value;     
      var url = document.getElementById('url').value;
      var duration = document.getElementById('duration').value; 
      var flag_photo = document.getElementById('flag_upload').value;
      var flag_live = document.getElementById('archive_live').checked;
      var archive_desc = document.getElementById('archive_desc').value;
      var photo_file_id = document.getElementById('present_photo').value;
      
      var streaming_url = "<"+"a href='javascript:;' border=0 onclick=\"getStreamingURL('"+url+"')\">URL<"+"/a>";
      
      //it Used to validate program date and description
      var check_flag=true;
      
      if (validateRequired(document.manage_event,archiveRequired))
        {
         check_flag=true;
        }
        else
        {
           check_flag=false;
           return false;
        }
      
      // Checks Company and Member position values are entered
      if(check_flag)
      {
          document.getElementById('display_streaming_div').style.display='block';
          var new_row_id=addTblRow(table_id,no_of_cells);
          var row_number;
          row_number = new_row_id.substring(17,new_row_id.length);  
          var serial_no = "&nbsp;"+row_number;
          var src = document.getElementById("photo_placeholder").src;
          
          if (flag_live == true)
          {
             var flg_live = 'Yes';
             flag_live = 1;
          }
          else
          {
             var flg_live = 'No';
             flag_live = 0;
          }
          
          //constricting Row value
          var tools_content =  "<"+"a href='javascript:;' alt='Edit' title='Edit' border=0 onclick=editArchiveStreamingDetails('"+table_id+"','"+new_row_id+"')><"+"img border=0 src='"+img_url+"/images/edit_icon.gif'><"+"/a>";
          tools_content=tools_content + "&nbsp;<"+"a href='javascript:;' alt='Delete' title='Delete' border=0 onclick=deleteArchiveStreamingDetails('"+table_id+"','"+row_number+"')><"+"img border=0 id=delete_stream_image"+row_number+" src='"+img_url+"/images/delete_icon.gif'><"+"/a>";
      
          tools_content=tools_content+"<input type='hidden' name='audiovideo.archive_type_value:records'  id='archive_type_id_hidden_"+row_number+"' value='"+archive_type_value+"'>";
          tools_content = tools_content +"<input type='hidden' name='audiovideo.title:records' id='archive_title_"+row_number+"' value='"+title+"'>";
          tools_content=tools_content+"<input type='hidden' name='audiovideo.url:records' id='archive_url_"+row_number+"' value='"+url+"'>";
          tools_content = tools_content +"<input type='hidden' name='audiovideo.duration:records' id='archive_duration_"+row_number+"' value='"+duration+"'>";
          tools_content = tools_content +"<input type='hidden' name='audiovideo.flag_photo:records' id='photo_flg_hidden_"+row_number+"' value='"+flag_photo+"'>";
          tools_content = tools_content +"<input type='hidden' name='audiovideo.flag_live:records' id='live_flg_hidden_"+row_number+"' value='"+flag_live+"'>";
          tools_content = tools_content +"<input type='hidden' name='audiovideo.file_name:records' value='"+photo_file_id+"'>";
          tools_content = tools_content +"<input type='hidden' name='audiovideo.archive_desc:records' id='archive_desc_"+row_number+"' value='"+archive_desc+"'>";
        
          tools_content = tools_content +"<input type='hidden' name='current_photos' id='current_photo_"+row_number+"' value='"+photo_file_id+"'>";
          //alert(tools_content);
          var image_content = "&nbsp;<"+"img src="+src+" height='25' width='25' id='photo_placeholder_"+row_number+"'>";
          //inserting row valus
          insertContentIntoCell(new_row_id,0,select_archive_type);
          insertContentIntoCell(new_row_id,1,title);
          insertContentIntoCell(new_row_id,2,streaming_url);
          insertContentIntoCell(new_row_id,3,duration);
          insertContentIntoCell(new_row_id,4,image_content);
          insertContentIntoCell(new_row_id,5,flg_live);
          insertContentIntoCell(new_row_id,6,tools_content);
          var row_obj = document.getElementById(new_row_id);
          row_obj.cells.item(6).setAttribute('align','center');
          
          //after data is Append it clears input fields
          clearArchiveStreamingFields();   
          //numberTblRows(table_id);
      }
  }
  
  
  /**                
  * displayStreamingDeleteTool        : It display all delete icon 
  * Parameters            : No Parameters
  * Return Value          : No Return Value
  * Compatibility         : IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
  **/
  
  function displayStreamingDeleteTool() 
  {
      var table_obj = document.getElementById('archive_streaming');
      for(var i=1; i < table_obj.rows.length; i++)
      {
          delete_image_id = "delete_stream_image"+i;
          document.getElementById(delete_image_id).style.display ='inline';         
      }
  }
  
  /**                
  * clearStreamingFields    : It Clears the streaming input fields after Add/Update the data
  * Parameters            : No Parameters
  * Return Value          : No Return Value
  * Compatibility         : IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
  **/
  
  function clearArchiveStreamingFields()
  {   
      var image_holder = "&nbsp;<"+"img width = '25' height = '25' src='"+ img_url+"images/photo_place_holder.jpg' id='photo_placeholder'"+"/>"
      setSelectValue(document.getElementById('select_archive_type'),-1);
      document.getElementById('archive_title').value ='';
      document.getElementById('url').value ='';
      document.getElementById('duration').value ='';
      document.getElementById('placeholder').innerHTML=image_holder;
      document.getElementById('flag_upload').value=0;
      document.getElementById('present_photo').value='';
      document.getElementById('archive_live').checked=false;
      document.getElementById('archive_desc').value='';
      
      document.getElementById('delete_placeholder').style.display='none';
      
      var update_content =  "&nbsp;<"+"a href='javascript:;' border=0 onclick=addArchiveStreamingDetails('archive_streaming',7)><"+"img border=0 src='"+img_url+"/images/add_button.jpg'><"+"/a>";
      var rowaction= document.getElementById('button_manage');
      rowaction.innerHTML= update_content;
      
  }
  
  /**                
  * updateArchiveStreamingDetails    : It Update the edited streaming Details in to program table
  * Parameters              : row_id : Edited Row Id
  * Parameters              : action: Action Type
  * Return Value            : No Return Value
  * Compatibility           : IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
  **/
  
  function updateArchiveStreamingDetails(table_id,row_id,action)
  {   
      var row_no;
      var check_flag=true;
          
      if(row_id != null)
      {
          row_no = row_id.substring(17,row_id.length);       
      }
  
      //If cancel button is clicked clear the field value
      if(action == 'cancel')
      {
          document.getElementById('delete_stream_image'+row_no).style.display ='inline';
          clearArchiveStreamingFields();
      }
  
      //If Update button is clicked append the value to company table
      if(action =='update')
      {
          var select_archive_type = document.getElementById('select_archive_type').options[document.getElementById('select_archive_type').selectedIndex].innerHTML;
          var archive_type_value = document.getElementById('select_archive_type').options[document.getElementById('select_archive_type').selectedIndex].value;
          var title = document.getElementById('archive_title').value;     
          var url = document.getElementById('url').value;
          var duration = document.getElementById('duration').value;     
          var src = document.getElementById("photo_placeholder").src;
          var flag_photo = document.getElementById('flag_upload').value;
          var flag_live = document.getElementById('archive_live').checked;
          var archive_desc = document.getElementById('archive_desc').value;
          
          var photo_file_id = document.getElementById('present_photo').value;
          
          var streaming_url = "<"+"a href='javascript:;' border=0 onclick=\"getStreamingURL('"+url+"')\">URL<"+"/a>";
          //it Used to validate program date and description
          var check_flag=true;
  
           if (validateRequired(document.manage_event,archiveRequired))
          {
           check_flag=true;
          }
          else
          {
             check_flag=false;
             return false;
          }
          
  
          //Based on flag value company details append to company table
          if(check_flag)
          {
              document.getElementById('display_streaming_div').style.display='block';
              var serial_no = "&nbsp;" + row_no;
               
              if (flag_live == true)
              {
                 var flg_live = 'Yes';
                 flag_live = 1;
                 
              }
              else
              {
                 var flg_live = 'No';
                 flag_live = 0;
              }
              
              //Constricting content of edited row
              var tools_content =  "&nbsp;<"+"a href='javascript:;' alt='Edit' title='Edit' border=0 onclick=editArchiveStreamingDetails('"+table_id+"','"+row_id+"')><"+"img border=0 src='"+img_url+"/images/edit_icon.gif'><"+"/a>";
              tools_content=tools_content + "&nbsp;<"+"a href='javascript:;' alt='Delete' title='Delete' border=0 onclick=deleteArchiveStreamingDetails('"+table_id+"','"+row_no+"')><"+"img border=0 id=delete_stream_image"+row_no+" src='"+img_url+"/images/delete_icon.gif'><"+"/a>";
  
              tools_content=tools_content+"<input type='hidden' name='audiovideo.archive_type_value:records' id='archive_type_id_hidden_"+row_no+"' value='"+archive_type_value+"'>";
              tools_content = tools_content +"<input type='hidden' name='audiovideo.title:records' id='archive_title_"+row_no+"' value='"+document.getElementById('archive_title').value+"'>";
              tools_content=tools_content+"<input type='hidden' name='audiovideo.url:records' id='archive_url_"+row_no+"' value='"+document.getElementById('url').value+"'>";
              tools_content = tools_content +"<input type='hidden' name='audiovideo.duration:records' id='archive_duration_"+row_no+"' value='"+document.getElementById('duration').value+"'>";
              tools_content = tools_content +"<input type='hidden' name='audiovideo.flag_photo:records' id='photo_flg_hidden_"+row_no+"' value='"+flag_photo+"'>";
              tools_content = tools_content +"<input type='hidden' name='audiovideo.flag_live:records' id='live_flg_hidden_"+row_no+"' value='"+flag_live+"'>";
              tools_content = tools_content +"<input type='hidden' name='audiovideo.file_name:records' value='"+photo_file_id+"'>";
              tools_content = tools_content +"<input type='hidden' name='audiovideo.archive_desc:records' id='archive_desc_"+row_no+"' value='"+archive_desc+"'>";
              
              tools_content = tools_content +"<input type='hidden' name='current_photos' id='current_photo_"+row_no+"' value='"+photo_file_id+"'>";
              
              var image_content = "&nbsp;<"+"img src="+src+" height='25' width='25' id='photo_placeholder_"+row_no+"'>";
              //inserting row valus
              insertContentIntoCell(row_id,0,select_archive_type);
              insertContentIntoCell(row_id,1,title);
              insertContentIntoCell(row_id,2,streaming_url);
              insertContentIntoCell(row_id,3,duration);
              insertContentIntoCell(row_id,4,image_content);
              insertContentIntoCell(row_id,5,flg_live);
              insertContentIntoCell(row_id,6,tools_content);
              var row_obj = document.getElementById(row_id);
              row_obj.cells.item(6).setAttribute('align','center');

              //Clear the fields after updating 
              clearArchiveStreamingFields();
              //numberTblRows(table_id);
          }              
      }   
  }
  
  
  /**                
  * deleteArchiveStreamingDetails: It Deletes streaming Row Based on Conformation Value
  * Parameters      : table_id: Table id 
  * Parameters      : row_id   : Edited Row Id
  * Return Value    : No Return Value
  * Compatibility   : IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
  **/
  function deleteArchiveStreamingDetails(table_id,row_id)
  {
      var retVal = confirm('shall delete');
      if(retVal)
      {
          deleteTblRow(table_id,row_id);
      }
      //numberTblRows(table_id);
      var table_obj = document.getElementById('archive_streaming');
      if(table_obj.rows.length < 2) 
      {
          document.getElementById('display_streaming_div').style.display = 'none';
      }
  }
  
  /**                
  * editArchiveStreamingDetails    : It populate edited streaming information in fields 
  * Parameters            : rowid   : Edited Row Id
  * Return Value          : No Return Value
  * Compatibility         : IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
  **/
  function editArchiveStreamingDetails(table_id,row_id)
  {
      var edit_row = document.getElementById(row_id);
      var row_no;
      var delete_image_id;
      
      //get the row number based on row Id
      if(row_id != null)
      {    
          row_no = row_id.substring(17,row_id.length);
          
      }
      delete_image_id = "delete_stream_image"+row_no;
      
      var archive_select_id = "archive_type_id_hidden_"+row_no;
      var photo_added_id = "photo_flg_hidden_"+row_no;
      var live_checked = "live_flg_hidden_"+row_no;
      var archive_url = "archive_url_"+row_no;
      var archive_title = "archive_title_"+row_no;
      var archive_duration = "archive_duration_"+row_no;
      var archive_desc = "archive_desc_"+row_no;
      
      //Edited value populated to company fields 
      setSelectValue(document.getElementById('select_archive_type'),trim(document.getElementById(archive_select_id).value));
      document.getElementById('archive_title').value = document.getElementById(archive_title).value;
      document.getElementById('url').value = document.getElementById(archive_url).value;
      document.getElementById('duration').value = document.getElementById(archive_duration).value;
      document.getElementById('flag_upload').value = document.getElementById(photo_added_id).value;
      document.getElementById('archive_desc').value = document.getElementById(archive_desc).value;

      if(document.getElementById(live_checked).value == 1)
      {  
          document.getElementById('archive_live').checked = true;
      }
      if(document.getElementById(live_checked).value == 0)
      { 
          document.getElementById('archive_live').checked = false;      
      }
      if(document.getElementById('flag_upload').value == '1')
      {
        document.getElementById('delete_placeholder').style.display="inline";
      }
      try
      {
      var photo_file_edit = 'current_photo_'+row_no;
      document.getElementById('present_photo').value = document.getElementById(photo_file_edit).value;
      var photo_id = 'photo_placeholder_'+row_no;
      var img_new = document.getElementById(photo_id);
      var imgTag = document.getElementById("photo_placeholder");
      imgTag.src = img_new.src;
      } catch(e) {}
  
      var update_content =  "<"+"a href='#' onclick=updateArchiveStreamingDetails('"+table_id+"','"+row_id+"','update')><"+"img border=0 src='"+img_url+"images/update.jpg'><"+"/a>";
      update_content=update_content + "&nbsp;<"+"a href='#' onclick=updateArchiveStreamingDetails('"+table_id+"','"+row_id+"','cancel')><"+"img border=0 src='"+img_url+"images/cancel_button.jpg'><"+"/a>";
      var rowaction= document.getElementById('button_manage');
      rowaction.innerHTML= update_content;
      displayStreamingDeleteTool();
      document.getElementById(delete_image_id).style.display ='none';
  }



function deletePreviousFile(table_id, row_id)
{
   var retVal = confirm(EVNT_TGS017_063);
   if(retVal)
   {
       deleteTblRow(table_id,row_id);
   }
   //numberTblRows(table_id);
   var table_obj = document.getElementById(table_id);
   if(table_obj.rows.length < 2) 
   {
       document.getElementById('previous_files_div').style.display = 'none';
   }
}

function deleteRegisterPreviousFile(table_id, row_id)
{
   var retVal = confirm(EVNT_TGS017_063);
   if(retVal)
   {
       deleteTblRow(table_id,row_id);
       try {
      document.manage_event.exist_register_file.value = '';
      }
       catch(e)    {}
       
   }
   //numberTblRows(table_id);
   var table_obj = document.getElementById(table_id);
   if(table_obj.rows.length < 2) 
   {
       document.getElementById('previous_register_files_div').style.display = 'none';
   }
   
}


/**                
* showEventSponsorProfile    : This function is used to show the sponsor profile in a popup, it will do an ajax 
*                              call and display the profile in the popup
* Parameters            : No Parameters
* Return Value          : No Return Value
* Compatibility         : IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
**/

function showEventSponsorProfile(url)   {
    
    makeGETRequest(url,'view_sponsor_slot');
    hideSelectBoxes('dummy_form');
    displayWindow('view_sponsor_slot','dummy_form');
}


/** 
* clean    : This function is used to replace the html,spaces in the text entered 
*             and also covert entities to single character
* Parameters :content: this parameter is used to get the content entered in the description field
* Return Value: null
* Compatibility:IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
**/
function clean(content)
{
    content = content.replace(/<(.+?)>/g, ' ');//remove html
    content = content.replace('&nbsp;', ' ', 'g');//replace &nbsp; with space
    content = content.replace(/&(.+?);/g, '1');//convert entities to single character
    return content;
} 

/** 
* descriptionCountWords:This function is used to count the number of words.
* Parameters :content : Used to get the content.
* Return Value: null
* Compatibility:IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
**/
function descriptionCountWords(content)
{    
    content = clean( content );
    var arr = content.split(' ');
    var total = 0;
    for(var i=0; i<arr.length; i++)
    {
    if( arr[i].match(/\w/g)){
    total ++;
    }
}
return total;
}
        
/** 
* descriptionCountWords:This function is used to count the number of words.
* Parameters :content : Used to get the content.
* Return Value: null
* Compatibility:IE 6.0,Mozilla Firefox 1.0.7, Netscape Navigator 7.1
**/
function validateBio(frm)
{
   var bio = frm.biodata.value;
             if(descriptionCountWords(bio)>1000)
             {
                 alert(EVNT_TGS017_068);
                 return false;
             }
             return true;
}