/*
#---------------------------------------------------------------------------
# Copyright   : rexx systems GmbH, 20097 Hamburg, Heidenkampsweg 101
#               Veränderung oder Nutzung der Scripte/Anwendung ist nur mit
#               schriftlicher Genehmigung der rexx systems GmbH gestattet.
#
# $Id: basic.js,v 1.11 2011-11-29 07:36:55 lutz Exp $
#---------------------------------------------------------------------------
*/

var basicJs = (function() {

    // nimmt der User-CLient Cookies
    var cookiesEnabled = false;

    return {
        
	/*
         * Intialisierung von Event-Handlern, etc.
         * wird am Ende dieser Datei per $(document).ready() aufgerufen
         */
	    init: function() {
            // Cookie-Check, der Cookie mit der Session_ID wurde bereits versucht zu setzen
            this.cookiesEnabled = document.cookie.indexOf("sid") != -1 ? true : false;
            if (this.cookiesEnabled) {
                basicJs.removeSids();
            }
        },

        /*
         * den GET-Parameter mit der Session-ID aus allen Links der Seite entfernen
         */
        removeSids: function() {
            var re1 = new RegExp('[?]{1}sid=' + mySession + '[&]{1}');
            var re2 = new RegExp('[&?]{1}sid=' + mySession);

            $("a").each(function(index) {
                            var url  = $(this);
                            var href = url.attr("href");
                            if(href){
                               href = href.replace(re1, "?");
                               href = href.replace(re2, "");
                               url.attr("href", href);
                            }
                        });
        },


        /**
         * einer URL die Session_ID als GET-Parameter anhängen
         * @param string url
         * @return string
         */
        addSid: function (url) {
            return this.addGetParameter(url, 'sid', mySession);
        },

        /**
         * einer URL die einen GET-Parameter anhängen
         * @param string url
         * @param string pname  Name des Parameters
         * @param string pval   Wert des Parameters
         * @return string
         */
        addGetParameter: function (url, pname, pval) {
            var sep = url.indexOf('?') == -1 ? '?' : '&';
            return url + sep + pname + '=' + pval;
        },

        /**
         * die Session-Variable s_ssl setzen
         * 
         * @param boolean ssl
         */
        setSSL: function(ssl) {
            $.post('/inc/functions/xml_http_requests.php', { f: 'set_ssl', p0: ssl, sid: mySession });
        },

        /*
         * Schliesst den Hinweis, für die Verlinkung des Mobilenshop
         * und setzt ein Cookie, damit dieser auch geschlossen bleibt.
         */
        closeMobileMessageBar: function() {
        	$('#mobile-switcher').hide();
  	        $.ajax({
      	      type: 'GET',
      		  url: '/mobile/XMLHttpRequest.php',
      		  data: {
                   f : 'closeMobileMessageBar',
                   sid: mySession
               }
      	   });
        }

    };
})();


/*
 * Initialisierung, wenn Dokument geladen
 */
$(document).ready(function(){
    basicJs.init();
});
