var $jBook = jQuery.noConflict();

/** JQUERY-COOKIE **/
$jBook.cookie = function(name, value, options) {
    if (typeof value != 'undefined') { // name and value given, set cookie
        options = options || {};
        if (value === null) {
            value = '';
            options.expires = -1;
        }
        var expires = '';
        if (options.expires && (typeof options.expires == 'number' || options.expires.toUTCString)) {
            var date;
            if (typeof options.expires == 'number') {
                date = new Date();
                date.setTime(date.getTime() + (options.expires * 24 * 60 * 60 * 1000));
            } else {
                date = options.expires;
            }
            expires = '; expires=' + date.toUTCString(); // use expires attribute, max-age is not supported by IE
        }
        // CAUTION: Needed to parenthesize options.path and options.domain
        // in the following expressions, otherwise they evaluate to undefined
        // in the packed version for some reason...
        var path = options.path ? '; path=' + (options.path) : '';
        var domain = options.domain ? '; domain=' + (options.domain) : '';
        var secure = options.secure ? '; secure' : '';
        document.cookie = [name, '=', encodeURIComponent(value), expires, path, domain, secure].join('');
    } else { // only name given, get cookie
        var cookieValue = null;
        if (document.cookie && document.cookie != '') {
            var cookies = document.cookie.split(';');
            for (var i = 0; i < cookies.length; i++) {
                var cookie = $jBook.trim(cookies[i]);
                // Does this cookie string begin with the name we want?
                if (cookie.substring(0, name.length + 1) == (name + '=')) {
                    cookieValue = decodeURIComponent(cookie.substring(name.length + 1));
                    break;
                }
            }
        }
        return cookieValue;
    }
};

/** Lade js Sourcen der Anbieter asynchron **/
$jBook.fn.loadBookmarksAsync = function() {
	// Lade Script Facebook
	var fbAsyncInit = function() {
		FB.init({ 
	    	status: false, 
	    	cookie: false,
	        xfbml: true
		});
	};
	$jBook.getScript(document.location.protocol + '//connect.facebook.net/de_DE/all.js', function() {
		fbAsyncInit();
	});
	
	// Lade Script Google+
	window.___gcfg = {
		lang: 'de',
		parsetags: 'explicit'
	};
	$jBook.getScript('https://apis.google.com/js/plusone.js', function(){
		gapi.plusone.render("gpob");
		
		// Lade Script Twitter
		$jBook.getScript(document.location.protocol + '//platform.twitter.com/widgets.js');
		
	});
};


/** BOOKMARKS SCRIPT **/
var $jBook = jQuery.noConflict();
	
$jBook(document).ready(function(){		
	checkSocial();
});

var datenschutzVisible = false;

// diese Function wird auch in den HST2011 aufgerufen!
function checkSocial(){
	if(!$jBook().isCookieSet()) {
		
		var datenschutz = $jBook('<div class="datenschutz-hinweis"></div>').append(
		'<a href="" class="close"><strong>x</strong></a> \
			<p><strong>Hinweis zum Datenschutz</strong><br /> \
				Mit Klick auf "Einverstanden" können Sie diesen Beitrag in sozialen Netzwerken weiterempfehlen. \
				Dabei besteht die Möglichkeit, dass Daten von Ihrem Computer zum jeweiligen Anbieter sowie Daten \
				des Anbieters auf Ihren Computer übertragen werden (z.B. Cookies). \
				<a href="http://www.ard.de/rootnavi/home/hilfe/-/id=1890/vdz2h/index.html#datenschutz">Weitere Informationen </a> \
			</p> \
		<a href="" class="button"><strong>Einverstanden</strong></a>'
		);

		$jBook(".socBm .bild").click(function(evt){
			evt.preventDefault();
			$jBook(".socialbookmarks").append(datenschutz);
			if (!datenschutzVisible && document.URL.indexOf("hoerspieltage/2011") == -1) $jBook(this).init_all_pixel("LikeButtons");
			datenschutzVisible = true;
			
			$jBook(".datenschutz-hinweis a.close").click(function(evt){
				evt.preventDefault();
				$jBook(this).unbind("click");				
				datenschutz.remove();
			});
			
			// Bei Click auf Accept
			$jBook(".datenschutz-hinweis a.button").unbind("click");
			$jBook(".datenschutz-hinweis a.button").click(function(evt){
				evt.preventDefault();
				goSocial();
			});
		});

	} else {
		goSocial();
	}
}

function goSocial() {	
	$jBook(".socBm .bild").remove();	
	$jBook(".socialbookmarks .datenschutz-hinweis").remove();	
	
	var sbfb = $jBook('<div class="socBmFb"></div>').append('<div id="fb-root"></div> <fb:like href="" send="false" layout="button_count" width="115" height="21" show_faces="false" action="like" font="arial"></fb:like>');	
	var sbtw = $jBook('<div class="socBmTw"></div>').append('<a href="http://twitter.com/share" class="twitter-share-button" data-count="horizontal" data-url="" data-via="" data-lang="de"></a>');
	var sbgo = $jBook('<div class="socBmGo"  style="width: 80px"></div>').append('<div id="gpob" style="width: 80px"><g:plusone size="medium"></g:plusone></div>'); 
	
	$jBook(".socBm").append(sbfb).append(sbtw).append(sbgo);
	
	$jBook().setCookie();	
	$jBook().loadBookmarksAsync();
};

$jBook.fn.isCookieSet = function() {
	if($jBook.cookie("ard_bookmarks_datenschutz") != null) {
		return true;
	}
	else {
		return false;
	}
};
$jBook.fn.setCookie = function() {
	var options = new Object();
	options.path = "/";
	$jBook.cookie("ard_bookmarks_datenschutz", "accepted", options);
};
