﻿// JScript File
var hRootUrl="http://www.wiziq.com";
var IsPaid = false;
_trimString=function(str) {

    str = this != window? this : str;
    return str.replace(/^\s+/g, '').replace(/\s+$/g, '');
} 
 function TrimStart(string,replaceChar)
   {
    //trimStart
      while(''+string.charAt(0)==replaceChar)
            string=string.substring(1,string.length);
         return string;   
   }
  function TrimEnd(string,replaceChar)
  {
     //trimEnd
      while(''+string.charAt(string.length-1)==replaceChar)
            string=string.substring(0,string.length-1);
      return string;
  }
function CheckLogo()
{
   
      var imgfield=document.getElementById("imgTutor");
      
	  if(imgfield.src != '')
	  {
	       document.getElementById('txtLogo').disabled = true ; 
	      document.getElementById('hrfUpload').innerHTML = 'Edit or Remove'; 
	  }
}
function ValidateSessionFee()
{

     var isValidFee=false;
     varvalfee = new RegExp("^[0-9]+(\.[0-9]+)?$");
      var oSessionFee  =  document.getElementById('txtClassFee');
         if(oSessionFee != null)
         {
            var strFee = TrimEnd(TrimStart(oSessionFee.value));
            if(strFee!="")
            {
                if(isNumeric(strFee) == false)
                {
               
                   document.getElementById('spValidateFee').style.display = "block";
                  isValidFee = false;
                }
                else if(strFee.match(varvalfee) == null)
                {
                     
                    document.getElementById('spValidateFee').style.display = "block";
                     isValidFee = false;
                
                }
                else if((parseFloat(strFee) > 999) || (parseFloat(strFee) < 0.0) )
                {
               
                  document.getElementById('spValidateFee').style.display = "block";
                  isValidFee = false;
                }
                else if((parseFloat(strFee) == 0.0))
                {
                    if(document.getElementById('rdpublic').checked == false)
                    {
                         document.getElementById('divNoSignUp').style.display = "block";
                         document.getElementById('divNoSignUpPublicMsg').style.display = "none";

                     }
                     
                    document.getElementById('spValidateFee').style.display = "none";
                     isValidFee = true;
                 }
                  else
                 {
                 IsPaid = true;
                     document.getElementById('divNoSignUp').style.display = "none";
                     document.getElementById('rdbNoSignUpYes').checked = false;
                     document.getElementById('divNoSignUpPublicMsg').style.display = "block";
                    document.getElementById('spNoSignUpMsg').innerHTML = "This option is not available for paid classes.";
                    document.getElementById('spValidateFee').style.display = "none";
                     isValidFee = true;
                  }
                
            
            } 
        }
        return isValidFee;
       
}
function CustomSchedule()
    {
      
      document.getElementById('hdnIsScheduleNow').value='0';
    } 

// function to validate the schedule.aspx form    
function ValidateThisForm(duration)
{
    
    getMovieName("mTags").callFlashFn();
    var isValidSubject=CheckValidSubject();
    var isValidTime= CheckTimeFormat();
    var isValidDuration=CheckDurationFormat(duration);  
    var isValidDate=validateUSDate();
    var IsValidateFee = ValidateSessionFee();
    
    var IsValidateLogo = CheckLogoText();
  
     if(document.getElementById('rdpublic').checked)
     {
        var IsValidPublic = validateAboutClass();
            if(isValidTime==true && isValidDuration==true && isValidSubject==true && isValidDate==true && IsValidateFee== true && IsValidPublic == true && IsValidateLogo == true)
       {    
               
                  
            return true; 
       }         
       else 
       {
            
            return false; 
       }
     }
    else
    {
        var IsValidMaxUsers = validateMaxUsers();
       if(isValidTime==true && isValidDuration==true && isValidSubject==true && isValidDate==true && IsValidateFee        == true && IsValidMaxUsers == true && IsValidateLogo == true)
       {    
               
                  
            return true; 
       }         
       else 
       {
            
            return false; 
       }
    }
}
 
 function validateAboutClass()       
{
  
    var IsValidPublic=false;
   
    var aboutclass =document.getElementById('txtDescription');
    aboutclass =_trimString(aboutclass.value);
    var aboutpres =document.getElementById('txtAboutPresenter');
 
    aboutpres = _trimString(aboutpres.value);
    
      if(aboutclass =='' && aboutpres== '')
      {
       
        document.getElementById("spDescriptionMessage").style.display = "block";
        document.getElementById("spPresenterMessage").style.display = "block";
        document.getElementById('txtAboutPresenter').value='';
        document.getElementById('txtDescription').value='';
        IsValidPublic=false;
      }
      else if(aboutclass =='')
      {
       
        document.getElementById("spDescriptionMessage").style.display = "block";
        document.getElementById('txtDescription').value='';
        IsValidPublic=false;
      }
       else if(aboutpres == '')
       {
       
         document.getElementById("spPresenterMessage").style.display = "block";
          document.getElementById('txtAboutPresenter').value='';
           IsValidPublic=false;
       }
       else
       {
       
        document.getElementById("spPresenterMessage").style.display = "none";
        document.getElementById("spDescriptionMessage").style.display = "none";
        IsValidPublic=true;
       }
       
       return IsValidPublic;
}
       
function CheckValidSubject()       
{
    
    var isValidSubject=false;
   
    var sub=document.getElementById('txtTitle');
    sub=_trimString(sub.value);
      if(sub=='')
      {
        document.getElementById("spValidateTitle").style.visibility="visible";
        document.getElementById('txtTitle').value='';
        isValidSubject=false;
       }
       else
       {
        document.getElementById("spValidateTitle").style.visibility="hidden";
        isValidSubject=true;
       }
       return isValidSubject;
}
function CheckDurationFormat(duration)
{ 
            
    var scheduleTime= document.getElementById('txtDuration').value;
    scheduleTime=TrimStart(scheduleTime,'0');
    var maxLimit=duration;
   
    varvalTime = new RegExp("^[0-9]+$");
      if (scheduleTime.match(varvalTime) == null) 
      {
        document.getElementById('spDurationErrMsg').style.display='block';                
         return false;
      } 
      else
      {
         scheduleTime=parseInt(scheduleTime);
         maxLimit=parseInt(maxLimit);
        if(scheduleTime>=30 && scheduleTime<=maxLimit )
        {                
           document.getElementById('spDurationErrMsg').style.display='none';
           return true;                    
        }
        else
        {
       
           
            document.getElementById('spDurationErrMsg').style.display='block';
            return false;                  
         }
      }
}

function CheckTimeFormat()
{
    
    var scheduleTime= document.getElementById('txtScheduleTime').value.toLowerCase();
    scheduleTime=TrimStart(scheduleTime,' ');
    scheduleTime=TrimEnd(scheduleTime,' ');
    varvalTime = new RegExp("^((([0-1][0-2]|[1-9]|[0-0][1-9]):([0-5][0-9]))|([0-1][0-2]|[1-9]))((am|pm)|( am| pm))$");
    var re = /^(\d{1,2}):(\d{2})(:(\d{2}))?(\s?(AM|am|PM|pm))?$/;
      if (scheduleTime.match(varvalTime) == null) 
      {
      
        document.getElementById('spScheduleTimeErrMsg').style.visibility='visible';
        if(document.getElementById('spanErrorDate').style.visibility=='visible')
          document.getElementById('spScheduleTimeErrMsg').style.visibility='visible';               
        return false;
      } 
      else
      {
        document.getElementById('spScheduleTimeErrMsg').style.visibility='hidden';
        return true;
      }
} 
  

    
function validateUSDate12()
{
    // Checks for the following valid date formats:
    // MM/DD/YY   MM/DD/YYYY   MM-DD-YY   MM-DD-YYYY
    var dateStr=RTRIM(LTRIM(document.getElementById('txtDateFrom').value));
    
   // var datePat = /^(\d{1,2})(\/|-)(\d{1,2})\2(\d{4})$/; // requires 4 digit year
   var datePat = /^(?=\d)(?:(?:(?:(?:(?:0?[13578]|1[02])(\/|-|\.)31)\1|(?:(?:0?[1,3-9]|1[0-2])(\/|-|\.)(?:29|30)\2))(?:(?:1[6-9]|[2-9]\d)?\d{2})|(?:0?2(\/|-|\.)29\3(?:(?:(?:1[6-9]|[2-9]\d)?(?:0[48]|[2468][048]|[13579][26])|(?:(?:16|[2468][048]|[3579][26])00))))|(?:(?:0?[1-9])|(?:1[0-2]))(\/|-|\.)(?:0?[1-9]|1\d|2[0-8])\4(?:(?:1[6-9]|[2-9]\d)?\d{2}))($|\ (?=\d)))?(((0?[1-9]|1[012])(:[0-5]\d){0,2}(\ [AP]M))|([01]\d|2[0-3])(:[0-5]\d){1,2})?$/;
    var matchArray = dateStr.match(datePat); // is the format ok?        
     document.getElementById('spanErrorDate').style.visibility='hidden';
                        
    if (matchArray != null)
    {  
        month = matchArray[1]; // parse date into variables
        day = matchArray[3];
        year = matchArray[4];
        
        if (month < 1 || month > 12)
        {
            
            document.getElementById('spanErrorDate').style.visibility='visible';
            return false;
        }
        if (day < 1 || day > 31)
          {
           
              document.getElementById('spanErrorDate').style.visibility='visible';
              return false;
          }
        if ((month==4 || month==6 || month==9 || month==11) && day==31)
         {
         
             document.getElementById('spanErrorDate').style.visibility='visible';
             return false;
         }
        if (month == 2) 
        { // check for february 29th
            var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
            if (day>29 || (day==29 && !isleap))
            {     
            
                document.getElementById('spanErrorDate').style.visibility='visible';
                return false;
            }
        }
     }
    else 
    {
        document.getElementById('spanErrorDate').style.visibility='visible';
          return false;
      }
return true;   
}
     


function ShowRecordText(msg, pending, packageid)
{

    if(msg == 'show')
    {
  
	   j("#divPrivacySettings").show();
	   document.getElementById("divMaxUsers").style.display = "none";
       document.getElementById("divPublicRecordingText").style.display = "block";
       document.getElementById("divRecordClass").style.display = "none";
       
       if(packageid == 1)
       {
            document.getElementById("divNoSignUp").style.display = "none";
            document.getElementById('rdbNoSignUpYes').checked = false;
            document.getElementById('rdbNoSignUpNo').checked = true;
            document.getElementById("divNoSignUpPublicMsg").style.display = "block";
            document.getElementById('spNoSignUpMsg').innerHTML = "This option is not available for public classes.";
        }
       document.getElementById("divMoreRec").style.display = "none";
    } 
    else
    {
       document.getElementById("divMaxUsers").style.display = "block";
    
        if(packageid == 1 && IsPaid == false)
        {
            document.getElementById("divNoSignUp").style.display = "block";
            document.getElementById("divNoSignUpPublicMsg").style.display = "none";
        }
        else if(packageid == 1 && IsPaid == true)
        {
             document.getElementById("divNoSignUp").style.display = "none";
             document.getElementById('rdbNoSignUpYes').checked = false;
             document.getElementById('rdbNoSignUpNo').checked = true;
           document.getElementById('spNoSignUpMsg').innerHTML = "This option is not available for paid classes.";
        }
 
        if(pending > 0 || pending == -1)
        {
           document.getElementById("divPublicRecordingText").style.display = "none";
           document.getElementById("divRecordClass").style.display = "block";
           
         }
         else
         {
            document.getElementById("divPublicRecordingText").style.display = "none";
            document.getElementById("divRecordClass").style.display = "none";
            document.getElementById("divMoreRec").style.display = "block";
         }
         
    }
      
}	
		
		

function GetDateTime(TimeZone,Date,Time)
{
   document.getElementById("lblTimeZone").innerHTML = TimeZone;
   document.getElementById("txtDateFrom").value = Date;
   document.getElementById("txtScheduleTime").value = Time;
}


function SetClassType(classtype)
   {
  
    var field=document.getElementById("TopPanel1_imgClassType");
     if(classtype == "paid")
     {
       
        field.src= vRootUrl + "/wiziqcss/css/skin01/images/icon_paidclass.gif";
      }
      else
      {
       
         field.src= vRootUrl + "/wiziqcss/css/skin01/images/icon_freeclass.gif";
      }
      
   }

 function SetKeywords()
   {
     getMovieName("mTags").callFlashFn();
   }
   	
	
function getMovieName(movieName) 
{
    try
    {
        if (navigator.appName.indexOf("Microsoft") != -1) 
        {
            return window.document[movieName];
        }
        else 
        {
            return document[movieName];
        }
    }
    catch(ex)
    {
    //alert(ex);
    } 
}
    function getTopicDatamTags(arrO)
    {
     try
     {
     var vTags = "";
     var vTagIds="";
     var vTagText="";
      for(i=0; i < arrO.length; i++)
      {
        if(arrO[i].TagID=="-1")
         {
            if ( vTags != "")
                vTags = vTags + ",";
            vTags = vTags + arrO[i].TagName;
         }
        else
         {
             if ( vTagIds != "")
                vTagIds = vTagIds + ",";
            vTagIds = vTagIds + arrO[i].TagID;
         }
         
         if ( vTagText != "")
                vTagText = vTagText + ",";
            vTagText = vTagText + arrO[i].TagName;
          //alert(arrO[i].TagName + "---" + arrO[i].TagID);
      }
      document.getElementById("hdnTagText").value = vTagText;
      document.getElementById("hdnTags").value = vTags+"~"+vTagIds;
     }
     catch(ex)
     {
         //alert(ex.description);
     }
    }
    function mTagsSetHeight(vHeight)
    {
        document.getElementById("DivFlash").style.height = (parseInt(vHeight) + 20) + "px";
    }
    
function ValidatePostPoneForm()
{
               
    var isValidTime= CheckTimeFormat();
    var isValidDate= validateUSDate();
    
    
    
   if(isValidTime==true && isValidDate==true)
   {    
           
              
        return true; 
   }         
   else 
   {
        
        return false; 
   }
    
}	

  function GetPostponedTime(Date,TimeZone,TimeLeft)
{
   document.getElementById("TopPanel1_spDate").innerHTML = Date;
   document.getElementById("TopPanel1_spTimeZone").innerHTML = TimeZone;
   document.getElementById("TopPanel1_spTimeLeft").innerHTML = TimeLeft;
}
function ValidateRecForm(duration)
{
   var isValidTime= CheckDurationFormat(duration);
    
 
   if(isValidTime==true)
   {    
             
        return true; 
   }         
   else 
   {
        
        return false; 
   }
    
}

function GetCurrentDateTime()
{

    j.ajax({
    url: hRootUrl + '/action/getdatetime.aspx',
    type: 'POST',
    data: '',
    error: function(){
        alert('Error getting time');
    },
    success: function(msg)
    {
      
       var txt = msg;
   
   
       var DivsIndex =  txt.indexOf("<div1>");
       var DivlIndex = txt.indexOf("</div1>");
        
      
        
       if(DivsIndex > -1)
       {
           // Setting the new value of txtDateFrom
           txt = txt.substring(DivsIndex + 6,DivlIndex);
           document.getElementById("txtDateFrom").value = txt;
       }
       
       // Assigning the value of returned HTML to local txt variable again.
        txt = msg;
        DivsIndex =  txt.indexOf("<div2>");
        DivlIndex = txt.indexOf("</div2>");
        
        if(DivsIndex > -1)
       {
       // Setting the new value of txtScheduleTime
           txt = txt.substring(DivsIndex + 6,DivlIndex);
           document.getElementById("txtScheduleTime").value = txt;
       }
       
     document.getElementById('spScheduleRightNow').style.visibility='visible';
    document.getElementById('hdnIsScheduleNow').value='1';
    document.getElementById('spanErrorDate').style.visibility='hidden';  
       
    }
});
}	

function validateMaxUsers()
{
  
     var isValidUsers=false;
      var omaxUsers  =  document.getElementById('txtMaxUsers');
   
         if(omaxUsers != null)
         {
            var strUsers = TrimEnd(TrimStart(omaxUsers.value));
            if(strUsers!="")
            {
               
                if(isNumeric(strUsers) == false)
                {
               
                   document.getElementById('spMaxUserMsg').style.display = "block";
                  isValidUsers = false;
                }
                else if((parseInt(strUsers) > 500) || (parseInt(strUsers) <= 0) )
                {
             
                  document.getElementById('spMaxUserMsg').style.display = "block";
                  isValidUsers = false;
                }
                else
                {
                
                 document.getElementById('spMaxUserMsg').style.display = "none";
                  isValidUsers = true;
                }
            
            }
            else
            {
                  document.getElementById('spMaxUserMsg').style.display = "block";
                  isValidUsers = false;
            }
             
        }
        else
        {
            isValidUsers = true;
        }
        
        return isValidUsers;
       
}

function CheckAboutClass()
{
   
    if(document.getElementById("spDescriptionMessage").style.display == "block")
    {
   
       var aboutclass =document.getElementById('txtDescription');
       aboutclass =_trimString(aboutclass.value);
       
       if(aboutclass != '')
       {
          document.getElementById("spDescriptionMessage").style.display = "none";
       }
    }
    
}

function CheckAboutPresenter()
{
   
    if(document.getElementById("spPresenterMessage").style.display == "block")
    {
   
       var aboutpres =document.getElementById('txtAboutPresenter');
       aboutpres =_trimString(aboutpres.value);
       
       if(aboutpres != '')
       {
          document.getElementById("spPresenterMessage").style.display = "none";
       }
    }
    
}
function validateUSDate()
         {
            //debugger;
            var varDate=document.getElementById('txtDateFrom');
            
            var Days=30;
            if(varDate.value.length<1)
            {
                document.getElementById('spanErrorDate').style.visibility='visible';
                //varDate.style.borderColor="red";
                return false;
            }
            else
            {
               var DateSplit= varDate.value.split('/');
               try
               {
                   if(DateSplit[0] == 1 || DateSplit[0] == 3 || DateSplit[0]==5 || DateSplit[0]==7 || DateSplit[0]==8 || DateSplit[0]==10 || DateSplit[0]==12)
                        Days=31;
                   else if (DateSplit[0]==2 & DateSplit[2]%4 !=0)
                         Days=28;
                   else if (DateSplit[0]==2 & DateSplit[2]%4 ==0)
                        Days=29;
                   else if (DateSplit[0] == 4 || DateSplit[0] == 6 || DateSplit[0]==9 || DateSplit[0]==11)
                        Days=30;

                   if(DateSplit[1]>Days || DateSplit[1]<1)
                   {
                      document.getElementById('spanErrorDate').style.visibility='visible';
                        //varDate.style.borderColor="red";
                        return false;
                   }   
                   if(DateSplit[0]>12 || DateSplit[0]<1)
                   {
                       document.getElementById('spanErrorDate').style.visibility='visible';
                        //varDate.style.borderColor="red";
                        return false;
                   }
                   if(DateSplit[2].length<4 || DateSplit[2]<1800)
                   {
                        document.getElementById('spanErrorDate').style.visibility='visible';
                        //varDate.style.borderColor="red";
                        return false;
                   }
                   //varDate.style.borderColor="";
                   document.getElementById('spanErrorDate').style.visibility='hidden';
                     return true;  
               }
               catch(ex)
               {
                alert(ex);
               }
             
            }
         }

function CheckLogoText()
{

    var isValidLogoText =false;
    if(document.getElementById("txtLogo")!=null)
    {
    
        var LogoText=_trimString(document.getElementById("txtLogo").value);
    
         if(LogoText.indexOf("&")>-1)
         {
                 document.getElementById("spValidateOrganization").style.display="block";
                 isValidLogoText =  false;
        }
        else
        {       document.getElementById("spValidateOrganization").style.display="none";
    
                 isValidLogoText =  true;
        }
    }
    else
    {
        isValidLogoText =  true;
    }
    
    return isValidLogoText;
}

function ValidateClassFee()
{
  
     var isValidFee=false;
      var oClassFee  =  document.getElementById('txtClassFee');
      varvalfee = new RegExp("^[0-9]+(\.[0-9]+)?$");
         if(oClassFee != null)
         {
            var strFee = _trimString(oClassFee.value);
             
            if(strFee!="")
            {
          
                if(isNumeric(strFee) == false)
                {
               
                   document.getElementById('spValidateFee').style.display = "block";
                  isValidFee = false;
                }
                 else if(strFee.match(varvalfee) == null)
                {
                     //return /^[0-9]+(\.[0-9]+)?$/.test(str);

                    document.getElementById('spValidateFee').style.display = "block";
                     isValidFee = false;
                
                }
                else if((parseFloat(strFee) > 999) || (parseFloat(strFee) < 0.0) )
                {
               
                  document.getElementById('spValidateFee').style.display = "block";
                  isValidFee = false;
                }
               else
                 {
                    document.getElementById('spValidateFee').style.display = "none";
                     isValidFee = true;
                  }
                
            
            }
            else
            {
                document.getElementById('spValidateFee').style.display = "block";
                     isValidFee = false;
            }
            
        }
        else
              isValidFee = true;
              
        
        return isValidFee;
       
}

function ValidateRecSettingsForm()
{
    
   
    var isValidClassFee = ValidateClassFee();
    var isValidLogo = CheckLogoText();
    var isMaxUsersValid = validateMaxUsers();
     if(isValidClassFee == true && isValidLogo == true && isMaxUsersValid == true)
            return true; 
        else
             return false; 
      
    
    
}