function showRecaptcha(divid) {
    Recaptcha.create(recaptchaKey, divid, {
        theme: 'white',
        lang: 'de',
        tabindex: 0,
        callback: Recaptcha.focus_response_field
    });
};

function destroyRecaptcha()
{
    try
    {
        Recaptcha.destroy();
    }
    catch (e) {
    }
};

function reloadRecaptcha()
{
    try
    {
        Recaptcha.reload();
    }
    catch (e) {
    }
};

function showBreakAd(x,y) {
    reposBreakAd(x,y);
    $j("#breakad_iframe").attr("src",breakadurl + "?ts=" + Number(new Date()));
};

function reposBreakAd(x,y) {
    x = x + 5; // hmm... 
    $j("#breakad_container").css(
    {"top": y + "px",
    "left": x + "px",
    "display": 'block'}
    );
};

function hideBreakAd() {
    $j("#breakad_container").css("display", 'none');
};


var icons = {
        header: "ui-icon-circle-plus",
        headerSelected: "ui-icon-circle-minus"
    };


var initSendVideo = function(playerType) {

    $j("#cf-send-video-submit").click(function() {
        var container = $j("#container-send");
        data = $j('#cf-send-video-form').serialize();
        url = '/userjson/recommend/'; // todo: change this...
        $j.ajax({url: url,
        type: "POST",
        dataType: "json",
        data: data,
        success: function(data) {
            if (data.success == false)
            {
                errorDiv = container.children(".cf-status-message");
                if (data.error.errormsg)
                {
                    errorDiv.text(data.error.errormsg);
                }
                else
                {
                    errorDiv.text('Deine Nachricht konnte leider nicht versandt werden.');
                }
                errorDiv.addClass("cf-error-message").css('display','block');
            }
            else if (data.success == true)
            {
                msgDiv = container.children('.cf-status-message');
                msgDiv.text('Deine Nachricht wurde erfolgreich versandt.');
                msgDiv.removeClass('cf-error-message').addClass('cf-ok-message').css('display', 'block'); // .delay(5000).fadeOut();

            }
        }
        });
        //doIVW('senden', 'player/senden');
    });

    $j("#cf-send-video-cancel").click(function() {
        playerSendOpened = false;
        $j("#container-send").fadeOut(); // .css("display",'none');
        removeFormStatus('#container-send');

    });

    $j("#cf-send-video-close").click(function() {
        playerSendOpened = false;
        $j("#container-send").fadeOut(); // .css("display",'none');
        removeFormStatus('#container-send');

    });

    $j("#cf-player-send").click(function(){
        var container = $j("#container-send");
        if (playerSendOpened)
        {
            container.fadeOut();
            playerSendOpened = false;
            removeFormStatus('#container-send');
        }
        else
        {
            if (playerReportOpened)
            {
                $j('#cf-report-video-close').trigger('click'); // hide other formular
            }
            playerSendOpened = true;
            if (playerType == 'standard')
            {
                y = 10;
                x = 20;
            }
            else
            {
                y = 50;
                x = 65;
            }
            container.css('top', y + "px").css( "left", x + "px").fadeIn();
        }

    });

};

var removeFormStatus = function(formContainerId) {
    $j(formContainerId).
    children('.cf-status-message').
    text('').
    removeClass('cf-error-message').
    removeClass('cf-ok-message').css('display', 'none');

};


/**
 * PlayerControl object definition
 */
var playerControl = {
    darkmode: false,
    latestStartDt: new Date()
};

playerControl.tooltipConfig = {
        track: true,
        delay: 0,
        showURL: false,
        extraClass: 'tooltip-fixed',
        fade: 250
    };

 playerControl.updateFavoriteStatus = function(status) {
     var favElem = $j("#cf-player-fav");
     switch (status)
     {
         case 'fav':
         //favElem.children("span").html("Favorit");
         favElem.attr('title','Dieses Video geh&ouml;rt bereits zu deinen Favoriten').addClass('is-favorite');
         break;
         case 'nofav':
         //favElem.children("span").html("Zu Favoriten");
         favElem.attr('title','Zu Favoriten hinzuf&uuml;gen').removeClass('is-favorite');
         break;
         case 'nologin':
         default:
         favElem.attr('title','Du musst angemeldet sein,<br />um dieses Feature zu nutzen').removeClass('is-favorite');

         break;
     }
     favElem.tooltip(playerControl.tooltipConfig);


 };

 
 playerControl.showMessage = function(msg, delay) {
     if (delay == undefined)
     {
         delay = 3000;
     }
     var options = {};
     $j("#cf-multiplayer-message").html(msg).show("blind",options,500, function () {
         playerControl.hideMessage(delay);
     });
     

 };

 playerControl.hideMessage = function(delay) {
     if (delay == undefined)
     {
         delay = 3000;
     }
     setTimeout(function() {
         $j("#cf-multiplayer-message" ).hide("blind");
         currentEvent = false;
     }, delay );
 };


 


$j(document).ready(function(){


    $j(".cf-multiplayer-social").hover(function(){
        $j(this).addClass('hover');
        $j(this).children().addClass('hover');

    }, function(){
        $j(this).removeClass('hover');
        $j(this).children().removeClass('hover');
    }
    );


    $j('#twitter').click(function() {
        var videoTitlePost = videoTitle;
        if (videoTitlePost.length > 40)
        {
            videoTitlePost = videoTitlePost.substring(0,40) + '...';
        }
        
        // we have to convert the utf-8 encoded title in iso8859-1, because twitter only accepts iso8859-1
        $j.ajax({url: '/specialmodule/converttitle/',
            type: "GET",
            dataType: "html",
            data: { title: videoTitlePost} ,
            success: function(data) {
                var tweet = 'guckt gerade ' + data + ' ' + videoUrl + ' auf Clipfish';
                if (tweet)
                {
                    window.open('http://twitter.com/home/?status=' + tweet, 'cftwitter','scrollbars=yes,width=800,height=500,resizable=yes');
                }
            }
            });
    });

    $j('#cf-player-embed').click(function() {
	
        if (playerReportOpened)
        {
            $j('#cf-report-video-close').trigger('click'); // hide other formular
        }
        if (playerSendOpened)
        {
            $j('#cf-send-video-close').trigger('click'); // hide other formular
        }
	
        var player = document.getElementById("cf-player");
      
        player.showEmbedScreen();        

		try
		{
        	_gaq.push(['_trackEvent','Buttons','Embed',video.id.toString(10)]); 
        }
        catch (e)
        {}
    });


    $j("#cf-report-video-submit").click(function() {
        var container = $j("#container-report");
        data = $j('#cf-report-video-form').serialize();
        url = page.basepath + 'censoring/report/';
        $j.ajax({url: url,
        type: "POST",
        dataType: "json",
        data: data,
        success: function(data) {
            reloadRecaptcha();
            if (data.success == false)
            {
                errorDiv = container.children(".cf-status-message");
                if (data.error.errormsg)
                {
                    errorDiv.text(data.error.errormsg);
                }
                else
                {
                    errorDiv.text('Deine Nachricht konnte leider nicht versandt werden.');
                }
                errorDiv.addClass("cf-error-message").css('display','block');

            }
            else if (data.success == true)
            {
                msgDiv = container.children('.cf-status-message');
                msgDiv.text('Deine Nachricht wurde erfolgreich versandt.');
                msgDiv.removeClass('cf-error-message').addClass('cf-ok-message').css('display', 'block'); // .delay(5000).fadeOut();

            }
        }
        });
        //doIVW('melden', 'player/melden');
    });

    $j("#cf-report-video-cancel").click(function() {
        playerReportOpened = false;
        $j("#container-report").fadeOut();
        reloadRecaptcha();
        removeFormStatus("#container-report");
    });

    $j("#cf-report-video-close").click(function() {
        playerReportOpened = false;
        $j("#container-report").fadeOut();
        reloadRecaptcha();
        removeFormStatus("#container-report");
    });

    $j("#cf-player-report").click(function() {
        var container = $j("#container-report");
        if (playerReportOpened)
        {
            container.fadeOut();
            reloadRecaptcha();
            removeFormStatus("#container-report");
            playerReportOpened = false;
        }
        else
        {
            if (playerSendOpened)
            {
                $j('#cf-send-video-close').trigger('click'); // hide other formular
            }

            playerReportOpened = true;
            y = 10;
            x = 25;
            container.css('top', y + "px").css( "left", x + "px").fadeIn(function() {
                if (playerReportFirst)
                {
                    showRecaptcha("report_recaptcha");
                    playerReportFirst = false;
                }
            });
        }

    });


    $j("#cf-player-fav").click(function(event){
        if (currentEvent == false)
        {
            currentEvent = event;
        }
        if (currentEvent.timeStamp == event.timeStamp)
        {
            if (user.id)
            {
                var action;
                if ($j(this).hasClass('is-favorite'))
                {
                    action = 'removevideofromfavorites';
                }
                else
                {
                    action = 'addvideotofavorites';
                }
                var favElem = $j(this);

                data = {videoid: video.id};

                $j.ajax({
                    url: '/meinprofiljson/' + action,
                    data: data,
                    type: "POST",
                    success: function(data, status){
                        if (data.success == true )
                        {
                            if (action == 'addvideotofavorites')
                            {
                                playerControl.showMessage("Das Video wurde deinen Favoriten hinzugefügt.");
                                favElem.children("span").html("Favorit");
                                favElem.attr('title','Dieses Video geh&ouml;rt bereits zu deinen Favoriten').addClass('is-favorite').tooltip(playerControl.tooltipConfig);
                            }
                            else
                            {
                                playerControl.showMessage("Das Video wurde aus deinen Favoriten entfernt.");
                                favElem.children("span").html("Zu Favoriten");
                                favElem.attr('title','Zu Favoriten hinzufügen').removeClass('is-favorite').tooltip(playerControl.tooltipConfig);

                            }
                            //doIVW('favorit', 'player/favorit');
                        }
                    },
                    dataType: 'json'
                });
                // send favorites request...

            }
            // else do nothing...
        }
    });

  

    $j('.tooltip').tooltip(playerControl.tooltipConfig);
    
    
    $j('#additional-description-toggle').toggle(function() {
        $j('#additional-description').show('blind');
    }, function() {
        $j('#additional-description').hide('blind'); 
    });
    
    
});


