var is_debug = false;
jQuery(function() {

    //currency converter
    jQuery(".block-currency .block-content").load("/yii/app/?r=valutaConverter");


    //set debug mode
    is_debug = (document.location.href.split('debug=1').length > 1);

    function debugmsg(msg) {
        if (!is_debug) {
            return false;
        }
        alert('debug: ' + msg);
    }



    jQuery("#contactform").submit(function(e) {
        jQuery("#contactform").addClass('errorstate');
        var error = 0;
        if (jQuery("input[name='name']").val() == '') {
            jQuery("input[name='name']").css('border', '1px solid red');
            error = 1;
        }
        if (jQuery("input[name='phone']").val() == '') {
            jQuery("input[name='phone']").css('border', '1px solid red');
            error = 1;
        }
        if (jQuery("input[name='email']").val() == '') {
            jQuery("input[name='email']").css('border', '1px solid red');
            error = 1;
        }
        if (error == 1) {
            return false;
        }
        else {
            jQuery("#contactform").removeClass('errorstate');
        }
    })

    //set base url for links that are relative to root
    //var base_url = jQuery("base").attr("href");
    //base_url = base_url.substring(0, base_url.length - 1);
    //jQuery("a[href^='/']").each(function() {
    //    jQuery(this).attr("href", base_url + jQuery(this).attr("href"));
    //});

    jQuery("#brandslink").hover(function() {
                jQuery("#brandspopup").show();
            }, function() {
                jQuery("#brandspopup").hide();
            });
    jQuery(".customerservice_link").hover(function() {
                jQuery("#customerservicepopup").show();
                jQuery(this).addClass("over");
            }, function() {
                jQuery("#customerservicepopup").hide();
                jQuery(this).removeClass("over");
            });

    jQuery("button.more_info_request").click(function() {
        var obj = jQuery("#more_info");

        if (obj.css('height') == '1px') {
            obj.css('height', '220px');
            jQuery("#more_info .a_submit").show();
        }
        else {
            obj.css('height', '1px');
            jQuery("#more_info .a_submit").hide();
        }
        return false;
    });

    //ie7 hack
    jQuery("html.ie7 a#store-view").css('margin-left', '-10px');

    jQuery(".form-button").removeClass('form-button').addClass('button').children('span').wrap('<span>');

    if (jQuery("#brandsdiv").length) {
        jQuery("#brandspopup").html(jQuery("#brandsdiv").html());
    }


    if (jQuery(".homeslider").length) {
        slider_clicked = 0;

        sliderindex = 0;
        slidermax = jQuery(".homeslider li").length - 1;

        featuredindex = 0;
        featuredmax = Math.floor(jQuery(".featuredslider li").length / 6);


        jQuery(".homeslider_wrapper").mouseover(function() {
            slider_clicked = 1;
        });
        jQuery(".homeslider_wrapper a.nav").click(function() {
            if (jQuery(this).hasClass('prev')) {
                if (sliderindex > 0) {
                    sliderindex--;
                } else {
                    return false;
                }
            }
            else {
                if (sliderindex < slidermax) {
                    sliderindex++;
                } else {
                    return false;
                }
            }
            marginleft = 0;
            if (sliderindex > 0) {
                marginleft = sliderindex * 958;
            }
            jQuery('.homeslider').animate({ marginLeft:'-' + marginleft + 'px'}, {duration:1000,easing:  'easeOutCubic'});
            if (sliderindex > 0) {
                jQuery(".homeslider_wrapper a.nav.prev").show();
            } else {
                jQuery(".homeslider_wrapper a.nav.prev").hide();
            }
            if (sliderindex < slidermax) {
                jQuery(".homeslider_wrapper a.nav.next").show();
            } else {
                jQuery(".homeslider_wrapper a.nav.next").hide();
            }

            return false;
        });

        jQuery(".cms-home .homeslider_wrapper").mouseover(function() {
            if (sliderindex > 0) {
                jQuery(".homeslider_wrapper a.nav.prev").show();
            } else {
                jQuery(".homeslider_wrapper a.nav.prev").hide();
            }
            if (sliderindex < slidermax) {
                jQuery(".homeslider_wrapper a.nav.next").show();
            } else {
                jQuery(".homeslider_wrapper a.nav.next").hide();
            }
        });
        jQuery(".cms-home .homeslider_wrapper").mouseout(function() {
            jQuery(".homeslider_wrapper a.nav").hide();
        });

        jQuery("#featured_home a.nav").click(function() {
            if (jQuery(this).hasClass('prev')) {
                if (featuredindex > 0) {
                    featuredindex--;
                } else {
                    return false;
                }
            }
            else {
                if (featuredindex < featuredmax) {
                    featuredindex++;
                } else {
                    return false;
                }
            }
            marginleft = 0;
            if (featuredindex > 0) {
                marginleft = featuredindex * 895;
            }
            jQuery('.featuredslider').animate({ marginLeft:'-' + marginleft + 'px'}, {duration:2000,easing: 'easeOutCubic'});

            return false;
        });

        function homeslider_auto() {
            if (slider_clicked > 0) {
                return false;
            }
            sliderindex++;
            if (sliderindex > slidermax) {
                sliderindex = 0;
            }
            marginleft = 0;
            if (sliderindex > 0) {
                marginleft = sliderindex * 958;
            }
            jQuery('.homeslider').animate({ marginLeft:'-' + marginleft + 'px'}, {duration:1000,easing: 'easeOutCubic'});
            if (sliderindex > 0) {
                jQuery(".homeslider_wrapper a.nav.prev").show();
            } else {
                jQuery(".homeslider_wrapper a.nav.prev").hide();
            }
            if (sliderindex < slidermax) {
                jQuery(".homeslider_wrapper a.nav.next").show();
            } else {
                jQuery(".homeslider_wrapper a.nav.next").hide();
            }

            setTimeout(function() {
                homeslider_auto()
            }, 5000);
        }

        setTimeout(function() {
            homeslider_auto()
        }, 5000);
    }


    //Product detail: email product
    jQuery("button.more_info_mail").click(function() {
        debugmsg('_trackPageview: /doel/email-product');
        if (typeof eval(_gaq) == 'function') {
            _gaq.push(['_trackPageview','/doel/email-product']);
        }
        document.location = 'mailto:info@lex-watches.com?subject=' + jQuery(this).attr("rel");
        return false;
    });

    //Product detail: more info form
    jQuery("form#more_info").submit(function() {
        debugmsg('_trackPageview: /doel/product-contact');
        if (typeof(_gaq) !== "undefined") {
            _gaq.push(['_trackPageview','/doel/product-contact']);
        }
    });

    //Header: mail-us link
    jQuery("a.email_main").click(function() {
        debugmsg('_trackPageview: /doel/email-main');
        if (typeof(_gaq) !== "undefined") {
            _gaq.push(['_trackPageview','/doel/email-main']);
        }
    });

    //Footer: newsletter subscription
    jQuery("form[action*='/newsletter/subscriber/']").submit(function() {
        debugmsg('_trackPageview: /doel/nieuwsbrief');
        if (typeof(_gaq) !== "undefined") {
            _gaq.push(['_trackPageview','/doel/nieuwsbrief']);
        }
    });

    //Contactform: contact us
    jQuery("#contactform").submit(function() {
        debugmsg('_trackPageview: /doel/contact');
        if (typeof(_gaq) !== "undefined") {
            _gaq.push(['_trackPageview','/doel/contact']);
        }
    });

    jQuery(".a_form").submit(function() {
        var this_id = jQuery(this).attr("id");

        if (jQuery("#" + this_id).hasClass('form_submitting')) {
            return false;
        }
        if (jQuery("#" + this_id).hasClass('errorstate')) {
            return false;
        }
        jQuery(this).addClass('form_submitting');

        jQuery('#' + this_id + '.overlabel_inactief').val('');

        //tinymce
        if (typeof tinyMCE != "undefined") {
            tinyMCE.triggerSave(true, true);
        }
        val = jQuery(this).serialize();
        jQuery('.overlabel_inactief').trigger('blur');
        //loading(1);

        jQuery.post("/ajax.php", {form:this_id,val:val}, function(data) {
                    //loading();
                    jQuery("#" + this_id).removeClass('form_submitting');
                    errors = data.error,ok_red = data.ok_red,ok_func = data.ok_func,error_text = '';

                    if (errors) {
                        error_text = ' - ' + errors.join('\n - ');
                        alert(error_text);
                        //loading(0);
                        return false;
                    }
                    else {
                        try {
                            if (ok_red) {
                                window.location = ok_red;
                                clearform('#' + this_id);
                                return false;
                            }
                            //if (ok_red)	{ return false; }
                            if (ok_func) {
                                eval(ok_func);
                                clearform('#' + this_id);
                                return false;
                            }
                        }
                        catch(err) {
                        }
                    }
                    alert('Er is iets fout gegaan bij het opslaan van het formulier. Probeer het op een later tijdstip opnieuw');
                }
                , "json");
        return false;
    });

    jQuery(".a_submit").click(function() {
        jQuery(this).parent('.a_form').submit();
        return false;
    });

    if (jQuery("div.lexbox_template").length) {

        var imagecounter = 0;
        var html = jQuery("div.lexbox_template").html();

        jQuery("#main").prepend('<div class="lexbox">' + html + '</div>');
        jQuery(".button.close").live("click", function() {
            jQuery("div.lexbox").fadeOut();
            return false;
        });


        function lexbox_setcontent(nr) {
            jQuery("div.lexbox").remove();
            jQuery("#main").prepend('<div class="lexbox">' + html + '</div>');
            var obj = jQuery("a[rel='lexbox " + nr + "']");
            var link = obj.attr("href");
            jQuery("div.lexbox .pos_current").html(nr);
            jQuery("div.lexbox .imagewrap img").attr("src", link);
            jQuery("div.lexbox span.pos_total").html(imagecounter);

            if (jQuery("div.lexbox img[src*='/packshot/']").length) {
                setTimeout('init_packshot_viewer()', 100);
            }

            jQuery("div.lexbox").fadeIn();
        }

        //loop the images that are related to lexbox
        jQuery("a[rel='lexbox']").each(function() {
            imagecounter++;
            jQuery(this).attr("rel", "lexbox " + imagecounter);
            jQuery(this).click(function() {
                var nr = jQuery(this).attr("rel").split(" ")[1];

                lexbox_setcontent(nr);
                return false;
            })
        });


        jQuery("div.lexbox a.arrow").live("click", function() {
            var cur_num = jQuery("div.lexbox span.pos_current").html();
            var total = jQuery("div.lexbox span.pos_total").html();

            if (jQuery(this).hasClass("next")) {
                cur_num++;
                if (cur_num > total) {
                    cur_num = 1;
                }
            }
            if (jQuery(this).hasClass("prev")) {
                cur_num--;
                if (cur_num < 1) {
                    cur_num = total;
                }
            }
            jQuery("div.lexbox span.pos_current").html(cur_num);
            lexbox_setcontent(cur_num);
            return false;
        });
    }

    jQuery(".price-box").mouseover(function() {
        jQuery("#pricebox_popup").show();
    });
    jQuery("#pricebox_popup").mouseout(function() {
        jQuery("#pricebox_popup").hide();
    });
});


function clearform(selector) {
    jQuery(':input', selector)
            .not(':button, :submit, :reset, :hidden')
            .val('')
            .removeAttr('checked')
            .removeAttr('selected');
}


//
// Browser Detection
function css_browser_selector(u) {
    var ua = u.toLowerCase(),is = function(t) {
        return ua.indexOf(t) > -1;
    },g = 'gecko',w = 'webkit',s = 'safari',o = 'opera',h = document.documentElement,b = [(!(/opera|webtv/i.test(ua)) && /msie\s(\d)/.test(ua)) ? ('ie ie' + RegExp.$1) : is('firefox/2') ? g + ' ff2' : is('firefox/3.5') ? g + ' ff3 ff3_5' : is('firefox/3') ? g + ' ff3' : is('gecko/') ? g : is('opera') ? o + (/version\/(\d+)/.test(ua) ? ' ' + o + RegExp.$1 : (/opera(\s|\/)(\d+)/.test(ua) ? ' ' + o + RegExp.$2 : '')) : is('konqueror') ? 'konqueror' : is('chrome') ? w + ' chrome' : is('iron') ? w + ' iron' : is('applewebkit/') ? w + ' ' + s + (/version\/(\d+)/.test(ua) ? ' ' + s + RegExp.$1 : '') : is('mozilla/') ? g : '',is('j2me') ? 'mobile' : is('iphone') ? 'iphone' : is('ipod') ? 'ipod' : is('mac') ? 'mac' : is('darwin') ? 'mac' : is('webtv') ? 'webtv' : is('win') ? 'win' : is('freebsd') ? 'freebsd' : (is('x11') || is('linux')) ? 'linux' : '','js'];
    c = b.join(' ');
    h.className += ' ' + c;
    return c;
}


css_browser_selector(navigator.userAgent);
