function ismaxlength(c,b){
    var a=c.getAttribute?parseInt(c.getAttribute("maxlength")):"";
    if(!b){
        b=window.event
        }
        if(b.charCode!=0&&c.getAttribute&&c.value.length==a){
        return false
        }
        if(c.getAttribute&&c.value.length>a){
        c.value=c.value.substring(0,a)
        }
    }
function isValidInput(b,a){
    return a.test(b)
    }
    function isRadioChecked(b,a){
    for(i=0;i<a[b].length;i++){
        if(a[b][i].checked){
            return true
            }
        }
    return false
}
function ValidateReferFormInputFields(g){
    var b="<img height=26 width=26 src=images/icon_status_fail_26x26.gif alt=Attention/><p><strong>Some information was missing.  Please see below for details.</strong></p><ul class=error_listing>";
    var d="";
    var f=null;
    var e=0;
    f=document.getElementById("Email1");
    var a=true;
    if(f.value==""){
        d="<li>{Friend's Email Addresses} Invalid Email Address</li>";
        a=false
        }else{
        var c=f.value.split(",");
        for(i=0;i<c.length;i++){
            if(c[i]!=""&&!isValidInput(c[i],g)){
                d="<li>{Friend's Email Addresses} Invalid Email Address</li>";
                a=false
                }else{
                if(c[i]!=""&&isValidInput(c[i],g)){
                    e+=1
                    }
                }
        }
    }
if(e==0){
    d="<li>{Friend's Email Addresses} Invalid Email Address</li>";
    a=false
    }
    if(document.getElementById("Message").value==""){
    d+="<li>{Message} Invitation email without message</li>";
    a=false
    }
    if(!a){
    document.getElementById("global-error").style.display="block";
    var h=document.getElementById("error");
    h.innerHTML=b+d+"</ul>";
    return false
    }
    return true
}
function ChangeTab(c,b,d,a)
{
    document.getElementById(c).style.display="block";
    if(b != "")
        document.getElementById(b).style.display="none";
    document.getElementById(d).className="current";
    document.getElementById(a).className="";
};
function updateCarModels(div,url,yes)
{
    if(url == "/used_cars/update_car_models")
        if(yes == 'true')
            $(div).load(url+"?is_active=yes&ManID="+$("select#ManID").val());
        else
            $(div).load(url+"?ManID="+$("select#ManID").val());
    else
        $(div).load(url+"?ManID="+$("select#ManID").val());
}
function updateByAjax(div,url)
{
    $(div).load(url);
}
function update_rating_by_ajax(number,check,rid)
{
    if(check)
        $("#rating_div").load("/rides/update_rating?rate="+number+"&id="+rid);
}
function updateCarModelsByAjax(div,url,val,type,count,size,isActive,req)
{
    switch(parseInt(type))
    {
        case 0:
            if (div == "div#Version" + count)
                $(div).load(url + "?active=" + isActive + "&UpdateByVersion=y&size=" + size + "&ModelID=" + $(val).val() + "&forums_div=" + count + "&req=" + req);
            else
                $(div).load(url + "?active=" + isActive + "&version=y&size=" + size + "&ManID=" + $(val).val() + "&forums_div=" + count + "&req=" + req);
            break;        
        case 1:
            $(div).load(url+"?size="+size+"&ManID="+$(val).val());
            break;
        case 2:
            if (div == "div#Version" + count)
                $(div).load(url + "?UpdateByVersion=y&size=" + size + "&ModelID=" + $(val).val() + "&forums_div=" + count + "&req=" + req);
            else
                $(div).load(url + "?version=y&size=" + size + "&ManID=" + $(val).val() + "&forums_div=" + count + "&req=" + req);
            break;            
    }
}
function ChangeForumTab(a,b,c,d,e,f,type,weburl,uid)
{ 
    document.getElementById(a).style.display="block";
    document.getElementById(b).style.display="none";
    document.getElementById(c).style.display="none";
    document.getElementById(d).className="current";
    document.getElementById(e).className="";
    document.getElementById(f).className="";
    var time = new Date().getTime();
    switch(type)
    {
        case 0:
            var n = a;
            var url = weburl + "/users/update_recent_forums";
             
            switch(n)
            {
                case "div_topics":
                    $('#div_topics').attr("innerHTML", "<img class='ajax_loading' src='/images/ajax-loader.gif' />");
                    $("div#div_topics").load(url+"?ignoreMe="+ time +"&PageType=Topics&UserID="+uid);
                    break;
                case "div_replies":
                    $('#div_replies').attr("innerHTML", "<img class='ajax_loading' src='/images/ajax-loader.gif' />");
                    $("div#div_replies").load(url+"?ignoreMe="+ time +"&PageType=Replies&UserID="+uid);
                    break;
            }
            break;
        case 1:
            var n = a;
            var url = "/new-cars/update_reviews_by_ajax";
            switch(n)
            {
                case "div_help":
                    $('#div_help').attr("innerHTML", "<img class='ajax_loading' src='/images/ajax-loader.gif' />");
                    $("div#div_help").load(url+"?ignoreMe="+ time +"&PageType=most_helpful");
                    break;
                case "div_most":
                    $('#div_most').attr("innerHTML", "<img class='ajax_loading' src='/images/ajax-loader.gif' />");
                    $("div#div_most").load(url+"?ignoreMe="+ time +"&PageType=most_read");
                    break;
            }
            break;
    }
}
function UpdateTextAreaCount(obj,evnt,operation,name,max)
{
    if(max == null)
        max = 250;
    ismaxlength(obj,evnt);
    {
        var length = (document.getElementById(name).value.length );
        var	total = max - length;
        var msg = "";
        if(total <= 0 )
            total = 0
        if(operation == "neg")
            msg = "<span>"+max+" characters max (<strong>"+total+"</strong> left)</span>";
        else if(operation == "plus")
        {
            document.getElementById("text_info").style.display = "block";
            msg = "<span>Remaining Characters: (<strong>"+total+"</strong>) </span>";
            if(total == 0)
                document.getElementById("text_info").style.display = "none";
        }
        document.getElementById("text_info").innerHTML = msg;
    }
}
function Lvl_openWin(u, n, w, h, l, t, c, f) { //v1.0 4LevelWebs
    var ww = ((screen.width - w) / 2);
    if (c == 1) {
        l = ww;
        t = (screen.height - h) / 2;
    }
    if (c == 2) {
        l = ww
        }
    f += ',top=' + t + ',left=' + l;
    LvlWin = window.open(u, n, f);
    LvlWin.focus();
}
var makeN = "",modelN = "",priceN = "",yearN = "",cityN = "",engineN = "", transN = "",postedN = "", imageN = "", statusN = "", userN = "";
function get_refine_url(not_include)
{
    //make/model/price/year/city/engine/transmission/posted/image/status/user/
    var refine_url = "";
    var url = window.location.href;
    url = url.split("?");
    var get_url = url[0].split("/-/");
    var filters;
    if(get_url[0][get_url[0].length-1] == "/")
        get_url[0] = get_url[0].substring(0,get_url[0].length-1);
    if( get_url[1] != null)
        filters = get_url[1].split("/");
    var make = "",model = "",price = "",year = "",city = "",engine = "", trans = "",posted = "", image = "", status = "", user = "";
    if(filters!=null)
        for(i = 0;i<filters.length;i++)
        {
            var type = filters[i].substring(0,3).toString();
            if(type != not_include)
                switch(type.toString())
                {
                    case "mk_":
                        if(makeN == "")
                            make += filters[i].toString() + "/";
                        else
                        if(makeN != "/")
                            make = makeN;
                        else
                            make = "";
                        break;
                    case "md_":
                        if(modelN == "")
                            model += filters[i].toString() + "/";
                        else
                        if(modelN != "/")
                            model = makeN;
                        else
                            model = "";
                        break;
                    case "ct_":
                        if(cityN == "")
                            city += filters[i].toString() + "/";
                        else
                        if(cityN != "/")
                            city = cityN;
                        else
                            city = "";
                        break;
                    case "eg_":
                        engine += filters[i].toString() + "/";
                        break;
                    case "tr_":
                        trans += filters[i].toString() + "/";
                        break;
                    case "st_":
                        status = filters[i].toString() + "/";
                        break;
                    case "ur_":
                        if(userN == "" || userN == null)
                            user = filters[i].toString() + "/";
                        else
                            user = userN+"/";
                        break;
                    case "pr_":
                        if(priceN == "" || priceN == null)
                            price = filters[i].toString() + "/";
                        else
                            price = priceN+"/";
                        break;
                    case "yr_":
                        if(yearN == "")
                            year = filters[i].toString() + "/";
                        else
                            year = yearN+"/";
                        break;
                    case "st_":
                        if(statusN == "")
                            status = filters[i].toString() + "/";
                        else
                            status = statusN+"/";
                        break;
                    case "im_":
                        if(imageN == "")
                            image = filters[i].toString() + "/";
                        else
                            image = imageN+"/";
                        break;
                    case "ps_":
                        if(postedN == "")
                            posted = filters[i].toString() + "/";
                        else
                            posted = postedN+"/";
                        break;
                }
        }
    if(price == "" && priceN != "" && not_include != "pr_")
        price = priceN + "/";
    if(year == "" && yearN != "" && not_include != "yr_")
        year = yearN + "/";
    if(user == "" && userN != "" && not_include != "ur_")
        user = userN + "/";
    if(status == "" && statusN != "" && not_include != "st_")
        status = statusN + "/";
    if(make == "" && not_include != "mk_")
        if(makeN != "/")
            make = makeN;
        else
            make = "";
    if(model == "" && not_include != "md_")
        if(modelN != "/")
            model = modelN;
        else
            model = "";
    if(posted == "" && not_include != "ps_")
        if(postedN != "/")
            posted = postedN;
        else
            posted = "";
    if(city == "" && not_include != "ct_")
        if(cityN != "/")
            city = cityN;
        else
            city = "";
    return (get_url[0]+"/-/"+make+model+price+year+city.replace("ct_/","")+engine+trans+posted+image+status+user);
}
 
function updateMemberRidesByAjax(div)
{
    jQuery(div).attr("innerHTML", "<img class='ajax_loading' src='/images/ajax-loader.gif' />");
    jQuery(div).load("/rides/update_leaderboard");
    ChangeTab('leader_rides','member_rides','leader','rides');
}
function getCurrentDateTime()
{
    var d_names = new Array("Sunday", "Monday", "Tuesday",
        "Wednesday", "Thursday", "Friday", "Saturday");
    var m_names = new Array("January", "February", "March", 
        "April", "May", "June", "July", "August", "September",
        "October", "November", "December");
    var d = new Date();
    var curr_day = d.getDay();
    var curr_date = d.getDate();
    var curr_month = d.getMonth();
    var curr_year = d.getFullYear();
    var curr_hour = d.getHours();
    var curr_min = d.getMinutes();
    var curr_sec = d.getSeconds();
    return (d_names[curr_day] + " " + curr_date + " " + m_names[curr_month] + " " + curr_year + " " + curr_hour + ":"+ curr_min + ":" + curr_sec);
}
function jumpto(page_count)
{
    var pageID = "";
    var url = document.URL;
    var jump_page = 'Enter the page number you wish to go to:';
    var on_page = parseInt(page_count/2);
    var page = prompt(jump_page, on_page);
    if (page !== null && !isNaN(page) && page > 0 && parseInt(page) <= parseInt(page_count) )
    {
        pageID = replaceQueryString(url,"page",page);
        document.location.href = pageID;
    }
    else if (parseInt(page) > parseInt(page_count))
    {
        pageID = replaceQueryString(url,"page",page_count);
        document.location.href = pageID
    }
}
function replaceQueryString(url,param,value) {
    var re = new RegExp("([?|&])" + param + "=.*?(&|$)","i");
    if (url.match(re))
        url = url.replace(re,'$1' + param + "=" + value + '$2');
    else
    if ( document.URL.indexOf('?') != -1)
        url = url + '&' + param + "=" + value;
    else
        url = url + '?' + param + "=" + value;
    return url;
}
function doUpdateVBCity()
{
    if(document.getElementById('user_country').value == "Pakistan")
    {
        document.getElementById('user_city').value = document.getElementById('city1').value;
        document.getElementById('city1').style.display = 'block';
        document.getElementById('city2').style.display = 'none';
        document.getElementById('city2').value = document.getElementById('user_city').value;
    }
    else
    {
        document.getElementById('user_city').value = document.getElementById('city2').value;
        document.getElementById('city2').style.display = 'block';
        document.getElementById('city1').style.display = 'none';
        document.getElementById('city1').value = document.getElementById('user_city').value;
    }
}

function updateCity2()
{
    document.getElementById('city1').value = document.getElementById('city2').value;
    document.getElementById('user_city').value = document.getElementById('city2').value;
}
function updateCity1()
{
    var w = document.getElementById('city1').selectedIndex;
    var selected_text = document.getElementById('city1').options[w].text;
    document.getElementById('user_city').value = selected_text;
    document.getElementById('city2').value = selected_text;
}

function validate_featured(day,month,year,source_type)
{

    if(document.getElementById(source_type+'_featured_till_2i').value=="")
    {
        alert("Please enter featured till date.");
        return false;
    }
    var sel_day=document.getElementById(source_type+'_featured_till_3i').value;
    var sel_month=document.getElementById(source_type+'_featured_till_2i').value;
    var sel_year=document.getElementById(source_type+'_featured_till_1i').value;
          
    if ((Number(sel_month) < Number(month) && Number(sel_year) <= Number(year)) || (Number(sel_day) < Number(day) && (Number(sel_month)<=Number(month) && Number(sel_year) <= Number(year))))
    {
        alert("Please enter featured till date in future.");
        return false;
    }

    if (!(isValidDate(Number(sel_day),Number(sel_month)-1,Number(sel_year))))
    {
        alert("Please enter a valid date.");
        return false;
    }
    return true;
}

function isValidDate(day,month,year)
{
    var dteDate;
    dteDate=new Date(year,month,day);
    /*
    Javascript Dates are a little too forgiving and will change the date to a reasonable guess if it's invalid. We'll use this to our advantage by creating the date object and then comparing it to the details we put it. If the Date object is different, then it must have been an invalid date to start with...    */

    return ((day==dteDate.getDate()) && (month==dteDate.getMonth()) && (year==dteDate.getFullYear()));
}

function delAvatar(post){
    var r=confirm("Are you sure you want to delete?");
    if (r==true)
    {
        jQuery('#div_avatar_'+post).fadeTo('slow',0.01);
        updateByAjax('#div_avatar_'+post,'/users/remove_avatar/'+post);
    }
//jQuery('#div_avatar_$post[userid]').fadeTo('slow',0.01);updateByAjax('#div_avatar_$post[userid]','/users/remove_avatar/$post[userid]');


}
function submitModel(brand_slug)
{
    if($('select#model_id').val() != "")
        window.location.href = "/new-mobiles/"+brand_slug+"/"+$('select#model_id').val()+"/";
    return false;
}

function number_with_delimiter(number, delimiter) {
    number = number + '', delimiter = delimiter || ',';
    var split = number.split('.');
    split[0] = split[0].replace(/(\d)(?=(\d\d\d)+(?!\d))/g, '$1' + delimiter);
    return split.join('.');
}
