﻿var bezoekerRef = readCookie('mijnHFRefID');


function readCookie(name)
{
    var nameEQ = name + "=";
    var ca = document.cookie.split(';');
    for (var i = 0; i < ca.length; i++)
    {
        var c = ca[i];
        while (c.charAt(0) == ' ') c = c.substring(1, c.length);
        if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length);
    }
    return null;
}



function ophalenBookmarks()
{
    bookmarkContainer = $('#mijnHFcontainer .drop_content');
    bookmarkContainer.empty();
    $.ajax({
        type: "POST",
        url: "Services/MijnHF.asmx/OphalenBookmarks",
        data: "{'bezoekerRef': '" + bezoekerRef + "'}",
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function(msg) {
            var bookmarks = msg.d;
            if(bookmarks)
            {
                for (var i = 0; i < bookmarks.length; i++) {
                    bookmarkContainer.append('<div class="uitvoering" tref="' + bookmarks[i].TicketsDotComRef + '" extraparameters="' + bookmarks[i].ExtraParameters + '" uvid="' + bookmarks[i].UitvoeringID + '"><div class="visual"><div class="image" style=""><img class="bigimage" src="' + bookmarks[i].Image + '"/><img class="smallimage" src="' + bookmarks[i].Image50 + '"/></div><div class="genre Theater Muziek Dans" style="height: 10px;"></div></div><div class="text"><div class="tijd">' + bookmarks[i].Tijd + '</div><h2>' + bookmarks[i].Titel + '</h2><p>' + bookmarks[i].Uitvoerende + '</p><p class="usp">' + bookmarks[i].USP + '</p></div><div class="location"><span>' + bookmarks[i].Locatie + '</span><abbr>' + bookmarks[i].LocatieCode + '</abbr></div><div class="enlarge"><a class="btn btn_more" onclick="showDetailPopup(\'' + bookmarks[i].UitvoeringID + '\')">Meer info</a></div></div>');

                }
                if (bookmarks.length == 0) {
                    if (isEnglish) {
                        bookmarkContainer.append('<div class="empty-mijnHF">your basket is empty</div>');
                    }
                    else {
                        bookmarkContainer.append('<div class="empty-mijnHF">uw winkelwagen is nog leeg</div>');
                    }
                }
                else {
                    if (isEnglish) {
                        bookmarkContainer.append('<div class="mijnHF-acties"><a href="mijnHF_detail.aspx" class="btn btn_more">Finish order</a><a href="mijnHF_detail.aspx" class="leesmeer">View shopping cart</a></div>');
                    }
                    else {
                        bookmarkContainer.append('<div class="mijnHF-acties"><a href="mijnHF_detail.aspx" class="btn btn_more">Bestelling afronden</a><a href="mijnHF_detail.aspx" class="leesmeer">Bekijk winkelwagen</a></div>');
                    }

                }

                $('.voorstellingcount b').text(bookmarks.length);

                if (bookmarks.length == 1) {
                    if (!isEnglish)
                        $('.voorstellingcount span').text('uitvoering');
                    else
                        $('.voorstellingcount span').text('performance');
                }
                else {

                    if (!isEnglish)
                        $('.voorstellingcount span').text('uitvoeringen');
                    else
                        $('.voorstellingcount span').text('performances');

                }

            }
        }
    });
	
	setTimeout(bindHover,1000);


	
}
function bindHover (){
	
	$("#mijnHFcontainer div.uitvoering div.enlarge").bind("mouseenter mouseleave", function(e){
		
        $(this).toggleClass("showEnlarge");
    });
	//$("#mijnHFcontainer div.uitvoering div.visual").hover(
//      function () {
//       $(this).parent(".uitvoering").addClass("showuitvoering")
//      }, 
//      function () {
//        $(this).parent.removeClass("showuitvoering")
//      }
//    );
	 $("#mijnHFcontainer div.uitvoering div.visual").tooltip({
        track: true,
        //left: -210,
        bodyHandler: function() {
            var MHFuitvoering = $(this).parent(".uitvoering");
            var MHFinfoDiv = MHFuitvoering.clone();
            return MHFinfoDiv;
        }
    });

	
}
function isEverythingChecked()
{
    var counter = 0;
    $('#mijnHFcontainer .uitvoering').each(function()
    {
        if (!$(this).find('input')[0].checked)
        {
            counter++;
        }
    });


    
    if(counter > 0)
    {
        $('.checkall').attr('checked', false);
    }
    else
    {
        $('.checkall').attr('checked', true);
    }
}

function assertKoopButtonColour()
{
    var counter = 0;
    $('#mijnHFcontainer .uitvoering').each(function()
    {
        
        if ($(this).find('input')[0].checked)
        {
            counter++;
        }

    });
    if (counter > 0)
    {
        $('.koopbutton').removeClass('btn_grey');
        $('.koopbutton').addClass('btn_more');
    }
    else
    {
        $('.koopbutton').removeClass('btn_more');
        $('.koopbutton').addClass('btn_grey');
    }
    
    isEverythingChecked();
}

function setCheckValue(checker)
{
    var value = checker.checked

    $('#mijnHFcontainer .uitvoering').each(function()
    {
        $(this).find('input')[0].checked = value
    });

}

function plaatsBookmark(uitvoeringID, refreshDirectly, extraParameters)
{
    $.ajax({
        type: "POST",
        url: "Services/MijnHF.asmx/PlaatsBookmark",
        data: "{'uitvoeringID': '" + uitvoeringID + "', 'extraParameters' : '" + extraParameters + "'}",
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        error: function(xhr, desc, exceptionobj) {
            //alert(xhr.responseText);
        },
        success: function(msg) {

            var bookmark = msg.d;
            if (msg.d != null) {

                bookmarkContainer.append('<div class="uitvoering" tref="' + bookmark.TicketsDotComRef + '" extraparameters="' + bookmark.ExtraParameters + '" uvid="' + bookmark.UitvoeringID + '"><div class="visual"><div class="image" style=""><img src="' + bookmark.Image + '"/></div><div class="genre Theater Muziek Dans" style="height: 10px;"></div></div><div class="text"><div class="tijd">' + bookmark.Tijd + ' u</div><h2>' + bookmark.Titel + '</h2><p>' + bookmark.Uitvoerende + '</p><p class="usp">' + bookmark.USP + '</p></div><div class="location"><span>' + bookmark.Locatie + '</span><abbr>' + bookmark.LocatieCode + '</abbr></div><div class="functional baby"><input type="checkbox" value="' + bookmark.UitvoeringID + '" name="BookmarkSelection" onclick="assertKoopButtonColour();" /><a class="add_to_myHF">naar mijnHF</a><a class="kopen">koop kaarten</a><a class="enlarge">Detail info</a><a class="delete_from_myHF" href="#" onclick="verwijderBookmark(\'' + bookmark.UitvoeringID + '\'); return false;">delete</a></div><div class="enlarge">Detail info</div></div>');

                if (isEnglish) {
                    alert('This show has been added to your basket');
                }
                else {
                    alert('Deze voorstelling is in uw winkelwagen geplaatst.');
                    
                }
            } else {
                if (isEnglish) {
                    alert('You\'ve already added his show to your basket');
                }
                else {
                    alert('Deze voorstelling heeft u al in uw mandje!');
                }
            }

            if (refreshDirectly)
                ophalenBookmarks();
        }
    });
}

function verwijderBookmark(uitvoeringID)
{
    $.ajax({
        type: "POST",
        url: "Services/MijnHF.asmx/VerwijderBookmark",
        data: "{'bezoekerRef': '" + bezoekerRef + "', 'uitvoeringID': '" + uitvoeringID + "'}",
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function(msg)
        {
            $('#mijnHFcontainer .uitvoering').each(function()
            {

                if (uitvoeringID.toString() == $(this).attr('uvid').toString())
                {
                    $(this).remove();
                }
            });
        }
    });
}

function startSingleBestelling(tref)
{
    if (!isEnglish)
    {
        if (!confirm('Bestelt u in totaal meer dan 5 tickets voor deze of andere voorstellingen? Plaats dan de betreffende voorstellingen in \'Mijn HF\' (links in het scherm) en vervolg van daaruit uw bestelling. Zo bespaart u op de ticketingkosten.\r\n\r\nWilt u toch nu doorgaan met uw bestelling, klik dan op OK.'))
            return false;
    }
    else
    {
        if (!confirm('Are you ordering a total more than 5 tickets for this or other performances?\r\nPut these performances in \'My HF\' (to the left) and place your order from there to save on ticketing fees.\r\n\r\nIf you want to continue with your order, click on OK.'))
            return false;
    }
    
        
    showGreyout();
    
    $('.containIframe').css('display', 'block');
    $('#BestellingIframe').css('display', '');

    if (!isEnglish)
    {

        $('#BestellingIframe').attr('src', 'http://purchase.tickets.com/buy/TicketPurchase?perfcode=' + tref + '&agency=HF2009A&organ_val=25405&perfsubcode=2011&schedule=list&bezoekerid=' + bezoekerRef);
    }
    else
    {
        $('#BestellingIframe').attr('src', 'http://purchase.tickets.com/buy/TicketPurchase?perfcode=' + tref + '&agency=HF2009B&organ_val=25405&perfsubcode=2011&schedule=list&langcode=en&bezoekerid=' + bezoekerRef);
    }
}

function startBestelling(container) {
    var extraParameters = '';
    
    orderURLs = [];
    $(container).each(function() {
        if ($(this).find('input')[0]) {
            if ($(this).find('input')[0].checked) {

                extraParameters = $(this).attr('extraparameters');
                if (extraParameters != null && extraParameters.length > 0)
                    extraParameters = "&" + extraParameters;

                if (!isEnglish) {
                    orderURLs.push('http://purchase.tickets.com/buy/TicketPurchase?perfcode=' + $(this).attr('tref') + '&agency=HF2009A&organ_val=25405&perfsubcode=2011&bezoekerid=' + bezoekerRef + extraParameters);
                }
                else {
                    orderURLs.push('http://purchase.tickets.com/buy/TicketPurchase?perfcode=' + $(this).attr('tref') + '&agency=HF2009B&organ_val=25405&perfsubcode=2011&langcode=en&bezoekerid=' + bezoekerRef + extraParameters);
                }
            }
        }
    });
    
    if (orderURLs.length > 0)
    {
        
        showGreyout();
        $('.containIframe').css('display', 'block');
        $('#BestellingIframe').css('display', '');
        $('#BestellingIframe').attr('src', 'mijnhf/VolgendeUitvoering.aspx');
    }
    else
    {
        alert('u heeft geen voorstellingen uitgekozen');
    }
}

function DateDeserialize(dateStr)
{
    return eval('new' + dateStr.replace(/\//g, ' '));
}


function toonBewaarScherm()
{

}

function sluitEnClearBewaarScherm()
{

}

function opslaanBewaarGegevens(username, email, wachtwoord)
{
    $.ajax({
        type: "POST",
        url: "Services/MijnHF.asmx/KoppelEmailEnWachtwoordAanBezoeker",
        data: "{'bezoekerRef': '" + bezoekerRef + "', 'username': '" + username + "', 'email': '" + email + "', 'wachtwoord': '" + wachtwoord + "'}",
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function(msg)
        {
            sluitEnClearBewaarScherm();
        }
    });
}
function inlogFlow(step){
	$(".btns a").removeClass("btn_this");
	if (step == "intro"){
		$("#if_intro").css("display","block");
		$("#if_signin").css("display","none");
		$("#if_signup").css("display","none");
		$(".btn_help").addClass("btn_this");
	} else if (step == "signin"){
		$("#if_intro").css("display","none");
		$("#if_signin").css("display","block");
		$("#if_signup").css("display","none");
	} else if (step == "signup") {
		$("#if_intro").css("display","none");
		$("#if_signin").css("display","none");
		$("#if_signup").css("display", "block");
	} else if (step == "confirm") {
	    
	} else { //cancel
		$("#if_intro").css("display","none");
		$("#if_signin").css("display","none");
		$("#if_signup").css("display", "none");

		$("#email-login").attr('value', '');
		$("#password-login").attr('value', '');
		$("#email-aanmelden").attr('value', '');
		$("#password-aanmelden").attr('value', '');
	}
}

function Aanmelden()
{
    var email = $('#email-aanmelden').attr('value');
    var wachtwoord = $('#password-aanmelden').attr('value');
    
    $.ajax({
        type: "POST",
        url: "Services/MijnHF.asmx/KoppelEmailEnWachtwoordAanBezoeker",
        data: "{'bezoekerRef': '" + bezoekerRef + "', 'email': '" + email + "', 'wachtwoord': '" + wachtwoord + "'}",
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function(msg)
        {
            inlogFlow('cancels');
        }
    });
}

function Inloggen()
{
    var email = $('#email-login').attr('value');
    var wachtwoord = $('#password-login').attr('value');

    $.ajax({
        type: "POST",
        url: "Services/MijnHF.asmx/Inloggen",
        data: "{'email': '" + email + "', 'wachtwoord': '" + wachtwoord + "'}",
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function(msg)
        {
            bezoekerRef = readCookie('mijnHFRefID');
            inlogFlow('cancels');
            ophalenBookmarks();
        }
    });
}

$(document).ready(function()
{
    ophalenBookmarks();
});
var orderURLs = new Array();
var pointer = 0;

function doRedirect(usercontext, oid)
{
    if (pointer < orderURLs.length)
    {
        //alert(orderURLs[pointer] + "&user_context=" + usercontext + "&oid=" + oid);
        $('#BestellingIframe').attr('src', orderURLs[pointer] + "&user_context=" + usercontext + "&oid=" + oid);
        pointer++;
    }
    else
    {
        alert('Alle door u geselecteerde voorstellingen zijn in uw winkelwagen geplaatst. Klik op \'Doorgaan\' om uw bestelling af te ronden.');
        frames[0].history.back();
        
    }
}

function regressToBookmarks()
{

    ophalenBookmarks();
    $('#bookmarkitems').css('display', '');
    $('#BestellingIframe').css('display', 'none');
}

function doFinishProcess()
{
    pointer = 0;
    orderURLs = new Array();
    $('#mijnHFcontainer .uitvoering').each(function()
    {
        $(this).find('input')[0].checked = false;
    });
    $('.checkall').attr('checked', false);
    assertKoopButtonColour();

    $(".containIframe").hide();
    hideGreyout();

    ophalenBookmarks();

}

var isEnglish = false;

var randVoorwaarden = false;

function hideMijnHf()
{
        $('#mijnHFcontainer').css('visibility', 'hidden');
   
}
