/*	Global Java Script Codes
	© 2011 eDreamer Design, All Rights Reserved. */




/* event handlers and onload
-----------------------------------------------------------*/

// registering event handlers
$(document).ready(function () {

    // startup animations
    $('div#category-wrapper').css({ 'width': '0', 'opacity': '0' }).delay(500).animate({ width: '178', opacity: 1 }, 'slow');






    $('div.contents-dualcolumn.reviews a').click(function () {

        $('div.contents-dualcolumn.reviews ul').slideUp();
        $(this).next("ul").slideDown();
        return false;
    });

    $('div.contents-dualcolumn.reviews h3').click(function () {

        $('div.contents-dualcolumn.reviews ul').slideUp();
        $(this).next("ul").slideDown();
        return false;
    });




    // find a elements that have an "external link" class
    $('.externallink').click(function () {

        window.open(this.href);
        return false;

    });




    // toggle more info panel visibility
    $('#content-moreinfo h2').toggle(function () {
        $('#moreinfo-contents').slideUp('slow');
        return false;
    },
        function () {
            $('#moreinfo-contents').slideDown('normal');
            return false;
        });
    // hiding more info panel contents
    //$('#moreinfo-contents').hide();


    // toggle sidebar contact panel visibility
    $('#content-contact h2').toggle(function () {
        $('#contact-contents').slideDown('normal');
        $(this).addClass("opened");
        return false;
    },
    function () {
        $('#contact-contents').slideUp('slow');
        $(this).removeClass("opened");
        return false;
    });


    // smooth page scrolling
    $('a[href*=#]').click(function () {

        //if (location.pathname.replace(/^\//, '') == this.pathname.replace(/^\//, '') && location.hostname == this.hostname && this.hash.length != 0) {
            var $target = $(this.hash);
            $target = $target.length && $target || $('[name=' + this.hash.slice(1) + ']');
            if ($target.length) {
                var targetOffset = $target.offset().top;
                $('html,body').animate({ scrollTop: targetOffset }, 1000);
                return false;
            }
        //}
    });




    // print page
    $('.pager-print').click(function () {

        parent.print();
        return false;

    });

    // previous page
    $('.pager-back').click(function () {

        history.back();
        return false;

    });




    // category switcher
    $('div#category-switcher').click(function () {

        if ($('div#category-switcher div#category-wrapper ul').css("display") != "block") {
            $('div#category-switcher div#category-wrapper ul').slideDown('fast');
            $('div#category-switcher').addClass("pushed");
        }
        else {
            $('div#category-switcher div#category-wrapper ul').slideUp('fast');
            $('div#category-switcher').removeClass("pushed");
        }
    });

    $('div#category-switcher').hover(function () {
        return false;
    }, function () {
        $('div#category-switcher div#category-wrapper ul').fadeOut();
        $('div#category-switcher').removeClass("pushed");
        return false;
    });




    // sticky seach bar
    var scroller = new StickyScroller("#search",
        {
            start: 146,
            end: 3000,
            interval: 300,
            range: 59,
            margin: 0
        });

    // reposition sticky seach bar
    $("div#search").css("position", "fixed");

    // sticky seach bar pin buttom
    $('a#search-pin').toggle(function () {

        var scroller = new StickyScroller("#search",
        {
            start: 146,
            end: 146,
            interval: 300,
            range: 59,
            margin: 0
        });

        $(this).addClass("unpinned");
        return false;
    },
        function () {

            var scroller = new StickyScroller("#search",
        {
            start: 146,
            end: 3000,
            interval: 300,
            range: 59,
            margin: 0
        });

            $(this).removeClass("unpinned");
            return false;
        });




    // contents idTabs part
    $(".tabs > ul").idTabs(function (id, list, set) {

        $("a", set).removeClass("selected").filter("[href='" + id + "']", set).addClass("selected");
        for (i in list)
            $(list[i]).hide();
        $(id).fadeIn();
        return false;
    });


    // search panels idTabs part
    $("div#search-contents ul").idTabs("none", function (id, list, set) {

        $("li", set).removeClass("selected");
        $("a", set).removeClass("selected").filter("[href='" + id + "']", set).addClass("selected").parent().addClass("selected");

        for (i in list)
            $(list[i]).fadeOut('fast');
        $(id).slideDown();

        //alert("idTab: Done.");
        return false;
    });


    // homa page idTabs part
    $(".tabs-about > ul").idTabs(function (id, list, set) {

        $("a", set).removeClass("selected").filter("[href='" + id + "']", set).addClass("selected");
        for (i in list)
            $(list[i]).hide();
        $(id).fadeIn();
        return false;
    });




    // search panel parent link
    $("div.search-panel-wrapper ul#parent a.parent").click(function () {

        $("div.search-panel-wrapper a.return").fadeIn();
        $("div.search-panel-wrapper ul#parent").slideUp('fast');
        $("div.search-panel-wrapper ul" + $(this).attr('href')).slideDown('slow');

        return false;
    });

    // search panel return button
    $("div.search-panel-wrapper a.return").click(function () {

        $("div.search-panel-wrapper a.return").fadeOut();
        $("div.search-panel-wrapper div#levels ul").slideUp('fast');
        $("div.search-panel-wrapper ul#parent").slideDown('slow');

        return false;
    });


    // closing the panel
    $("div.search-panel-wrapper a.close").click(function () {

        $(this).parent().parent().slideUp();
        $("li", "div#search-contents ul").removeClass("selected");
        $("a", "div#search-contents ul").removeClass("selected");

        $("div", "div#search").removeClass("flag");

        return false;
    });

    // closing panel by clicking on its button
    $("div#search-contents ul li a").click(function () {

        target = "div.search-panel" + $(this).attr("href");

        if ($(target).css("display") != "none" && $(target).attr("class") == "search-panel flag") {

            $(target).slideUp();
            $("li", "div#search-contents ul").removeClass("selected");
            $("a", "div#search-contents ul").removeClass("selected");
            $(target).removeClass("flag");
        }

        else {

            $("div", "div#search").removeClass("flag");
            $(target).addClass("flag");
        }

        return false;
    });


    // search panel rent-bond radio control
    $("div.search-panel div.form div.radiocheckbox label.radio-rent").click(function () {

        $("div.search-panel div.form label.rent").fadeIn();
        $("div.search-panel div.form label.bond").fadeOut();
    });

    $("div.search-panel div.form div.radiocheckbox label.radio-bond").click(function () {

        $("div.search-panel div.form label.rent").fadeOut();
        $("div.search-panel div.form label.bond").fadeIn();
    });

    $("div.search-panel div.form div.radiocheckbox label.radio-both").click(function () {

        $("div.search-panel div.form label.rent").fadeIn();
        $("div.search-panel div.form label.bond").fadeIn();
    });


    // user panel
    $('a#userpanel-trigger').click(function () {

        if ($('div#userpanel-contents').css("display") != "block") {
            $('div#userpanel').addClass("opened");
            $('div#userpanel-contents').slideDown('fast');
            $('a#userpanel-trigger').addClass("opened");
            return false;
        }
        else {
            $('div#userpanel-contents').slideUp();
            $('a#userpanel-trigger').removeClass("opened");
            $('div#userpanel').removeClass("opened");
            return false;
        }
    });


    // sortby pager menu
    $('div#contents ul.pager li.pager-sortby > a').click(function () {

        if ($('div#contents ul.pager li.pager-sortby ul').css("display") != "block") {
            $('div#contents ul.pager li.pager-sortby ul').slideDown('fast');
            $('div#contents ul.pager li.pager-sortby > a').addClass("selected");
        }
        else {
            $('div#contents ul.pager li.pager-sortby ul').slideUp('fast');
            $('div#contents ul.pager li.pager-sortby > a').removeClass("selected");
        }
        return false;
    });

    $('div#contents ul.pager li.pager-sortby').hover(function () {
        //return false;

    }, function () {
        $('div#contents ul.pager li.pager-sortby ul').fadeOut();
        $('div#contents ul.pager li.pager-sortby > a').removeClass("selected");
        return false;
    });




    // grouping value on input controls having 'currency' class
    $('input.currency').keyup(function () {
        var separator = ",";
        var curr = this.value.replace(new RegExp(separator, "g"), "");
        var regexp = new RegExp("\\B(\\d{3})(" + separator + "|$)");
        do {
            curr = curr.replace(regexp, separator + "$1");
        } while (curr.search(regexp) >= 0)
        this.value = curr;
    });




    // PikaChoose slider
    $("#slides").PikaChoose({

        showCaption: false,
        autoPlay: true,
        transition: [5],
        showTooltips: false,
        showTooltips: false
    });

    // reset slider position
    $('div#slider div#slider-wrapper').css("text-indent", "0px");




    // exposable filter items
    $('#filters ul.exposable li.exposable-trigger').click(function () {
        $(this).parent().addClass("exposed");
        return false;
    });

    // fullclick fuction
    $('ul.fullclick li').click(function () {
        window.location = $(this).find("a").attr("href");
        return false;
    });


    /*
    function stopEvent(e) {
    if (!e) e = window.event;
    if (e.stopPropagation) {
    e.stopPropagation();
    } else {
    e.cancelBubble = true;
    }
    }

    function cancelEvent(e) {
    if (!e) e = window.event;
    if (e.preventDefault) {
    e.preventDefault();
    } else {
    e.returnValue = false;
    }
    }
    */

    // Disable text selection on entire body
    function disableSelection(target) {
        if (typeof target.onselectstart != "undefined") //IE route
            target.onselectstart = function () { return false }
        else if (typeof target.style.MozUserSelect != "undefined") //Firefox route
            target.style.MozUserSelect = "none"
        else //All other route (ie: Opera)
            target.onmousedown = function () { return false }
    }
    //disableSelection(document.body);

    // tour: show
    $("a.tour").click(function () {

        //window.onscroll = function () { return false; };
        //$('body').mousedown(function () { return false; });

        $('body').css("overflow", "hidden");

        $('div#tour div#overlay').show();
        disableSelection(document.getElementById('overlay'));

        $('div#tour div.step1').fadeIn('slow').animate({ right: '246px' }, 'slow');

        return false;
    });


    // tour: step1
    $("div#tour div.step1 a.next").click(function () {

        $('div#tour div.step1').fadeOut('slow');
        $('div#tour div.step2').fadeIn('fast').animate({ top: '215px' }, 'slow');

        return false;
    });

    // tour: step2
    $("div#tour div.step2 a.next").click(function () {

        $('div#tour div.step2').fadeOut('slow');
        $('div#tour div.step3').fadeIn('fast').animate({ top: '63px' }, 'slow');

        return false;
    });


    // tour: step3
    $("div#tour div.step3 a.next").click(function () {

        $('div#tour div.step3').fadeOut('slow');
        $('div#tour div.step4').fadeIn('fast').animate({ top: '250px' }, 'slow');

        return false;
    });

    // tour: close
    $("div#tour a.close").click(function () {

        $('div#tour div').fadeOut('slow');
        $('div#tour div#overlay').hide();
        $('body').css("overflow", "auto");

        return false;
    });

});
