﻿var $j = jQuery.noConflict();


//displays productlist gallery elements
function ProductListGalleryVisible() {
    $j('.productlist_galleryimage').has('a').each(function () {
        $j(this).parent().css("display", "block");
    });
}

//flowchart-popups(chained)
function popup(itemNo) {
    $j('div').dialog("close");
    var content = document.getElementById($j("[id$=" + itemNo + "]").attr("id")).value;
    var $jdialog = $j('<div id="fcpop"></div>').html(content).dialog({
        autoOpen: false, maxWidth: 800, minWidth: 500, dialogClass: 'fcpopup'
    });
    $jdialog.dialog('open');
}

//colorbox image gallery viewer for product list
function ShowImageProductItem() {
    $j(document).ready(function () {
        $j(".productlist_galleryimage").click(
    function () {
        $j(this).find("a[rel='group']").colorbox({
            opacity: 0.75,
            overlayClose: 'false',
            slideshow: false,
            onClosed: function () {
                $j().colorbox.remove();
                $j.fn.colorbox.init();
            }
        });
    });
    });
}

//hover & click color change for productlist, updated for both U & D
function ProductListColourChange() {
    $j(document).ready(function () {
        $j(".productlist_titlerow").hover(
    function () {
        $j(this).removeClass("prodlist_normal").addClass("prodlist_hover");
    },
    function () {
        if (!$j(this).hasClass('prodlist_active')) {
            $j(this).removeClass("prodlist_hover").addClass("prodlist_normal");
        }
    });
    $j(".productlist_titlerow").click(
    function () {
        if (!$j(this).hasClass('prodlist_active')) {
            $j(this).removeClass("prodlist_hover").addClass("prodlist_active");
            $j(this).find(".productlist_titlerow_arrow").removeClass("arrow_down").addClass("arrow_up");
        } else {
            $j(this).removeClass("prodlist_active").addClass("prodlist_normal");
            $j(this).find(".productlist_titlerow_arrow").removeClass("arrow_up").addClass("arrow_down");
        }
    })
    });
}





//function MegaMenu() {
//    $j(function () {
//        var SelfLocation = window.location.href.split('?');
//        switch (SelfLocation[1]) {
//            case "justify_right":
//                $j(".megamenu").megamenu({ 'justify': 'left' });
//                break;
//            case "justify_left":
//            default:
//                $j(".megamenu").megamenu();
//        }
//    });
//}

function MegaMenum() {
    $j(function () {

        $j(".megamenu").megamenu({

//            'show_method': 'fadeIn', 'hide_method': 'fadeOut',
//            'justify': 'right',
//            'enable_js_shadow': true, 'shadow_size': 5,
            'activate_action': 'click'
           
            
        });
                
    
    });
}



function NavigateTo(url, type) {
    if (type == 'Accordion') {
        //$j(item).parent().parent().next(".accordionShowHide").slideToggle("fast");
        return false;
    }
    else if (type == 'ExternalPage') {
        window.open(url);
        return false;
    }
    else {
        window.location = url;
    }
}

function ToggleAccordionRow() {
    $j(document).ready(function () {
        $j(".standardListContainer").click(function () {
            $j(this).next().toggle(); //slideToggle("fast");

            var accordionRightImage = '/Images/UI/Arrow/ArrowRight.png';
            var accordionDownImage = '/Images/UI/Arrow/ArrowDown.png';

            var icon = $j(this).find('.standardListIcon');
            var src = icon.attr('src');

            var accordionRow = $j(this);
            accordionRow.toggleClass("standardListRowSelected");

            if (src == accordionRightImage) {
                icon.attr('src', accordionDownImage);
            }
            else {
                icon.attr('src', accordionRightImage);
            }

        });
    });
}



function HideLastBorder() {
    $j(".itemPuff").last().css('border-bottom', 'none');
}


function PictureGallery() {
    //$j("a.grouped_elements").colorbox();
    $j("a[rel='group']").colorbox({
    opacity: 0.55,
    overlayClose: 'false'
});
}
   
function ShowLocation() {
    $j(document).ready(function () {
       // $j(".headermiddlecontainer").hover(
        $j(".locationShow").click(
                function () {
                    $j(".locationSelector").delay(300).fadeIn('fast',function(){$j(this).stop()});
                    
               }); //},
                $j(".locationSelector").mouseleave(
                 function () {
                    $j(".locationSelector").fadeOut('fast');
                }
            );
    });
}


function ShowSimpleMenuItems() {
    $j(document).ready(function () {
        $j(".SimpleTopNode").click(
                function () {
                    $j(".SimpleMenuContainer").hide();
                    $j(this).find(".SimpleMenuContainer").delay(200).slideDown('fast', function () { $j(this).stop() });
                });
        $j(".SimpleTopNode").mouseleave(
                 function () {
                     $j(".SimpleMenuContainer").hide();
                 }
                );

        $j(".SimpleMenuContainer").mouseleave(
                 function () {
                     $j(".SimpleMenuContainer").hide();
                 }
                 );
    });
}



function showEcommerceInformation() {
    $j(document).ready(function () {
        $j("#ecominformation").click(
                function () {
                    $j("#ecominfo").delay(300).fadeIn('fast', function () { $j(this).stop() });
                });
                $j("#ecominfo").mouseleave(
                 function () {
                     $j("#ecominfo").fadeOut('fast');
                 }
            );
    });
}


//function ShowLogin() {
//    $j(document).ready(function () {
//    $j("p.showlogin").click(
//                function () {
//                    $j(".LoginExtender").show();
//                });
//    // $j(".LoginExtender").mouseleave(
//    // function () {
//    //    $j(".LoginExtender").hide();
//    // }
//    //);
//
//    $j("#closeLogin").click(
//                    function () {
//                        $j(".LoginExtender").hide();
//                    }
//                    );
//});
//}



//function BuildMenu() {
//    $j(document).ready(function () {
//        $j(function () {
//            var SelfLocation = window.location.href.split('?');
//            switch (SelfLocation[1]) {
//                case "justify_right":
//                    $j(".megamenu").megamenu({ 'justify': 'right' });
//                    break;
//                case "justify_left":
//                default:
//                    $j(".megamenu").megamenu();
//            }
//        });
//        $j('#hide').show();
//    });
//}

function BuildMenu() {
    $j(document).ready(function () {
        $j(function () {
            $j(".megamenu").megamenu({
                'justify': 'left',
                //'fullwidth':true,
                'enable_js_shadow': true, 'shadow_size': 5
             });
            
        });
        $j('#hide').show();
    });
}

//function PutContentInTabs() {
//    $j(document).ready(function () {
//        $j('.tabs').accessibleTabs({
//            tabhead: 'h6', //was h2
//            tabbody: '.tabbody',
//            fx: 'fadeIn',
//            autoAnchor: true
//        });
//    });
//}



function ExtendGalleryItem() {

    $j(document).ready(function () {
        $j(".showpopup").mouseenter(function () {
            $j(this).find(".GalleryExtendedWindow").stop(true, true).delay(200).fadeIn("fast"); //.fadeIn(400);
        });
    });

    $j(document).ready(function () {
        $j(".showpopup").mouseleave(function () {
            $j(this).find(".GalleryExtendedWindow").stop(true, true).slideUp("fast");
            return false;
        });
    });

}


function ShowImageGalleryItem() {
$j(document).ready(function () {
    $j(".GalleryExtendedModalLink").click(function () {
        $j(this).find("a").colorbox({
            opacity: 0.55,
            overlayClose: 'false',
            slideshow: false,
            onClosed: function () 
                {
                    $j().colorbox.remove();
                    $j.fn.colorbox.init(); 
                }
        });
    });
});
}

function ShowDentist(){

    $j(document).ready(function () {

        $j(".dentistContainer").click(function () {
            
            if ($j(this).find(".dentistHiddenInformation").is(':visible')) {
                $j(this).find('.dental_titlerow_arrow').css({ 'background-image': 'url("/Images/UI/Arrow/ArrowDown.png")' });
                //$j(this).css({ 'background-color': 'white' });
                $j(this).find('.dentistTitle').css({ 'font-weight': 'Normal' });
                $j(this).find('.dentistCity').css({ 'font-weight': 'Normal' });
            }
            else {
                $j(this).find('.dental_titlerow_arrow').css({ 'background-image': 'url("/Images/UI/Arrow/ArrowUp.png")' });
                $j(this).css({ 'background-color': '#e1f0f6' });
                $j(this).find('.dentistTitle').css({ 'font-weight': 'Bold' });
                $j(this).find('.dentistCity').css({ 'font-weight': 'Bold' });
            }
            //$j(this).find(".dentistHiddenInformation").stop(true, true).slideToggle(); 
            $j(this).find(".dentistHiddenInformation").fadeToggle();
            
        });

        $j(".dentistContainer").mouseover(function () {
            if ($j(this).css('background-color') === 'rgb(255, 255, 255)' || $j(this).css('background-color') === '#ffffff') {
                $j(this).css({ 'background-color': '#e1f0f6' });
            }
        });

        $j(".dentistContainer").stop(true, true).mouseleave(function () {
            if ($j(this).find(".dentistHiddenInformation").is(':hidden')) {
                $j(this).css({ 'background-color': '#FFFFFF' });
            }
        });

    });
}

function ShowVideoGalleryItem() {
    $j(document).ready(function () {
        $j(".GalleryExtendedVideo").click(function () {
            $j(this).find("div").colorbox({
                opacity: 0.75,
                overlayClose: 'false',
                innerHeight: $j(".video").find("div").attr("data-qbrick-height"), //needed for popup height in FF
                maxWidth: false, //to cope with old embed code
                slideshow: false,
                iframe: false,
                html: function () { return $j(this).find('.video').html(); }
            });
        });
    });
}

function ShowCCVideo() {
    $j(document).ready(function () {
        $j(".complementaryContentVideo").colorbox({
            opacity: 0.75,
            overlayClose: 'false',
            innerHeight: $j(".ccvideo").find("div").attr("data-qbrick-height"), //needed for popup height in FF
            maxWidth: false, 
            slideshow: false,
            iframe: false,
            html: function () { return $j(this).find('.ccvideo').html(); }
        });
    });
}

function BuildSlideDeck() {
    $j(document).ready(function () {
        //type "standard"
        if (visibility != '') {
            $j('.thumb').addClass('thumb_std');
            $j('.thumb').removeClass('active');
            $j('.btn_examples_prevnext').addClass('btn_std');
            $j('.navcontent_right').addClass('navcontent_right_std');
            $j('.slidecontainer').addClass('slidecontainer_std');
            $j('.slidedeck').addClass('slidedeck_std');
            $j('.arrow').addClass('arrow_std');
            $j('.SliderArrowOnTop').addClass('SliderArrowOnTop_std');
            $j('.pages_container').addClass('pages_container_std');
            $j('.navpage').addClass('navpage_std');
            $j('.navtext').addClass('navtext_std');
            $j('.name').addClass('name_std');
            $j('#slidecontainer').removeClass('border_active');
            $j('#slidestandardcontainer').addClass('slidedefaultstyle');
        }

        //sätt bakgrund
        var fullbg = "url('" + setbg + "')";
        if (setbg == "none") {
            $j(".slideborderstyle").css("display", "none");
            $j(".slidedefaultstyle").css("background", "none");
            $j(".navpage_std").css("padding-top", "8px");
            $j('.btn_examples_prevnext').removeClass('btn_std').addClass('btn_std_upper');
        }
        else if (setbg == "default") { } //do nothing 
        else if (setbg == "gradient") {
            $j(".slideborderstyle").css("display", "none");
            $j(".slidedefaultstyle").css("background", "none");
            $j("#slidecontainer").addClass("gradientBG");
            $j(".navpage_std").css("padding-top", "8px");
            $j('.btn_examples_prevnext').removeClass('btn_std').addClass('btn_std_upper');

            var gradientArray = gradient.split("|");
            var mozGradient = "-moz-linear-gradient(center top , " + gradientArray[0] + ", " + gradientArray[0] + " 0%, " + gradientArray[1] + " 100%, " + gradientArray[1] + ")";
            var webkitGradient = "-webkit-gradient(linear, left top, left bottom, from(" + gradientArray[0] + "), color-stop(0, " + gradientArray[0] + "), color-stop(1, " + gradientArray[1] + "), to(" + gradientArray[1] + "))";
            $j(".gradientBG").css("background-image", mozGradient);
            $j(".gradientBG").css("background-image", webkitGradient);
        } else {
            $j(".slideborderstyle").css("display", "none");
            $j(".slidedefaultstyle").css("background", "none");
            $j("#slidestandardcontainer").css("background-image", fullbg);
        }

        //göm headers på slides om type: standard och det är valt
        if (showheaders != "true") {
            $j(".navcontent_right_std").css("display", "none");
            $j(".pages_container_std").css("height", "132px");
            $j(".btn_std").css("margin-top", "46px !important");
        }

        //antal rader i headers på slides om type: standard och det är valt
        if (headerrows == "two") {
            $j(".pages_container_std").css("height", "150px");
        } else if (headerrows == "three") {
            $j(".pages_container_std").css("height", "166px");
        }

        //göm border
        if (hideBorder == "true") {
            $j("#slidecontainer").removeClass("border_active");
        }

        //yttre + inre höjd
        var outerheight = parseInt(height) + 110 + "px";
        $j(".slidecontainer").css("height", outerheight);
        var innerheight = height + "px";
        $j(".slidedeck").css("height", innerheight);

        //position på bilden
        if (imagepos == "right") {
            $j(".screenshot").css("float", "right");
            $j(".copy").css("position", "relative");
        }

        //sätta samma maxheight på behållaren som innermått på contentfältet
        $j(".cont_img").css("max-height", innerheight);
        $j(".cont_img_2").css("max-height", innerheight);


        //justera storlek/position enligt antal thumbs
        var count = $j(".navpage_std").children().length;
        if (count <= 6) {
            count = count - 1;
            $j(".pages_container_std").css("width", 94 + (count * 102) + "px");
            $j("a.btn_examples_prevnext.next").css("float", "left");
            $j(".pages_container_std").css("float", "none")
        }

        //TODO: fixa så det fungerar stabilt i IE
        //Positionering av navbilder i "extended" för att centrera vertikalt, http: //css-tricks.com/snippets/jquery/fixing-load-in-ie-for-cached-images/
        $j(document).ready(function () {
            //$j('a.thumb > img').each(function () {
            $j('a.thumb img').each(function () {
                if ($j(this).height() > 0) {
                    var newmargin = (($j("a.thumb").height() - $j(this).height()) / 2);
                    $j(this).css("margin-top", newmargin);
                } else {
                    $j(this).load(function () {
                        var newmargin2 = (($j("a.thumb").height() - $j(this).height()) / 2);
                        $j(this).css("margin-top", newmargin2);
                    });
                }
            });
        });

    });
}

function showWaitingListFields() {
    $j(document).ready(function () {
        $j(".PutMeOnWaitinglist").click(function () {
            $j(".WaitingList").delay(300).fadeIn('fast', function () { $j(this).stop() });
        });
    });
}




//
//      GOOGLE MAPS START    //
//

//initialize map
function initialize() {

    directionsDisplay = new google.maps.DirectionsRenderer();

    var mapOptions = {
        panControl: true,
        zoomControl: true,
        scaleControl: true,
        streetViewControl: true,
        overviewMapControl: true,
        rotateControl: true,
        mapTypeId: google.maps.MapTypeId.ROADMAP
    };
    map = new google.maps.Map(document.getElementById('map_canvas'), mapOptions);
    CreateMarkers();
    CenterMap();
}

//create markers and infowindows
function CreateMarkers() {
    var infowindow = new google.maps.InfoWindow();
    var marker;
    for (var i = 0; i < locations2.length; i++) {
        marker = new google.maps.Marker({
            position: new google.maps.LatLng(locations2[i][1], locations2[i][2]),
            map: map,
            html: "<span class='iwstyle'><div class='mapmarker'><h4>" + locations2[i][0] + "</h4>" + locations2[i][3] + locations2[i][4] + "<br />" + locations2[i][5] + "</div></span>"
        });
        google.maps.event.addListener(marker, 'click', function () {
            infowindow.setContent(this.html);
            infowindow.open(map, this);
        });
    }
}

//center and zoom map
function CenterMap() {
    var latlngbounds = new google.maps.LatLngBounds();
    for (var i = 0; i < locations2.length; i++) {
        var position = new google.maps.LatLng(locations2[i][1], locations2[i][2]);
        latlngbounds.extend(position);
    }

    //override fitBounds automatic zoom level
    var zoomChangeBoundsListener = google.maps.event.addListener(map, 'bounds_changed', function (event) {
        google.maps.event.removeListener(zoomChangeBoundsListener);
        map.setZoom(Math.min(15, map.getZoom()));
    });

    map.setCenter(latlngbounds.getCenter());
    map.fitBounds(latlngbounds);    //fit bounds to map

    directionsDisplay.setMap(map);
    directionsDisplay.setPanel(document.getElementById("directionsPanel")); //for text directions
}
//
//      GOOGLE MAPS END    //
//
