
var dropDown = new Class({
    options : {
        "ddControlClass" : "dropdown",
        "ddAppendix" : "_dd",
        "ddClosedClass" : "close",
        "ddOpenedClass" : "open",
        "maxHeight" : false
    },
    initialize :	function( options ){
        this.options = $merge(this.options, options);
        var elements = $$( "."+this.options['ddControlClass'] );
        $each(elements,function(el){
        	if( $(el).hasClass( 'stay_open' ) ){
        		$(el.id+this.options["ddAppendix"]).setStyles({ "position":"relative","overflow":"hidden" });
	            $(el).addClass(this.options["ddOpenedClass"]);
	            $(el).removeClass(this.options["ddClosedClass"]);
        	}
        	else{
	            $(el.id+this.options["ddAppendix"]).setStyles({ "position":"relative","overflow":"hidden","height":"0" });
	            $(el).addClass(this.options["ddClosedClass"]);
	            $(el).removeClass(this.options["ddOpenedClass"]);
        	}
            $(el).addEvent( "click", function(e){
                e.stop();
                if( $(el.id+this.options["ddAppendix"]).getStyle("height").toInt() == 0 )
                {
                    if( this.options["maxHeight"] != false && this.options["maxHeight"]<$(el.id+"_dd").getScrollSize().y ){
                        $(el.id+this.options["ddAppendix"]).tween("height",this.options["maxHeight"]);
                        $(el.id+this.options["ddAppendix"]).setStyle( 'overflow-y', 'auto' );
                    }
                    else{
                        $(el.id+this.options["ddAppendix"]).tween("height",$(el.id+"_dd").getScrollSize().y);
                        $(el.id+this.options["ddAppendix"]).setStyle( 'overflow', 'hidden' );
                    }
                    $(el).addClass(this.options["ddOpenedClass"]);
                    $(el).removeClass(this.options["ddClosedClass"]);
                }
                else
                {
                    $(el.id+"_dd").tween("height","0");
                    $(el).addClass(this.options["ddClosedClass"]);
                    $(el).removeClass(this.options["ddOpenedClass"]);
                }
            }.bindWithEvent(this));
        },this);
    }
});

downCounter = function(hours, minutes, seconds, aktPrice){
    if(seconds==0){
        seconds=59;
        if(minutes==0){
            minutes=59;
            if(hours==0){
                hours=71;
                location.reload();
            }
            else{hours--;}
        }
        else{minutes--;}
    }
    else{seconds--;}
    $('time_counter_value_std').set('html',hours);
    $('time_counter_value_min').set('html',minutes);
    $('time_counter_value_sek').set('html',seconds);
    if(aktPrice){$('actualPrice').set('html',aktPrice)};
    countR++;
    if( countR >= 60 ){window.setTimeout("getFreshClock()", 1000);countR = 0;}
    else{window.setTimeout("downCounter("+hours+","+minutes+","+seconds+")", 1000);}
}

var dropSide = new Class({
    options : {
        "dsControlClass" : "dropside",
        "dsAppendix"     : "_ds",
        "dsClosedClass"  : "close",
        "dsOpenedClass"  : "open"
    },
    initialize :	function( options ){
        this.options = $merge(this.options, options);
        var elements = $$( "."+this.options['dsControlClass'] );
        $each(elements,function(el){
            $(el.id+this.options["dsAppendix"]).setStyles({ "overflow":"hidden","width":"0" });
            $(el).addClass(this.options["dsClosedClass"]);
            $(el).removeClass(this.options["dsOpenedClass"]);
            $(el).addEvent( "click", function(e){
                if( $(el.id+this.options["dsAppendix"]).getStyle("width").toInt() == 0 )
                {
                    $(el.id+this.options["dsAppendix"]).tween("width",$(el.id+"_ds").getScrollSize().x);
                    $(el).addClass(this.options["dsOpenedClass"]);
                    $(el).removeClass(this.options["dsClosedClass"]);
                }
                else
                {
                    $(el.id+"_ds").tween("width","0");
                    $(el).addClass(this.options["dsClosedClass"]);
                    $(el).removeClass(this.options["dsOpenedClass"]);
                }
            }.bindWithEvent(this));
        },this);
    }
});

var warenOv = new Class({
	merkliste : function( shouldOpen ){
		if( shouldOpen )
		{
			$('warenov_merkliste').tween("height",540);
		}
		else
		{
			$('warenov_merkliste').tween("height",0);
		}
	},
	merklisteScroll : function( direction ){
		//merklisteHeight = $('warenov_content_allentries').getScrollSize().y;

        step=280;
        max=$('warenov_content_allentries').getScrollSize().y;
        startpx=$('warenov_content_allentries').getStyle('top');
        start=startpx.substr(0, startpx.length -2 ).toInt();

        first=0-step;
        last=(max-426)*(-1);
        prev=start+step
        next=start-step
        
        if(direction)
        {
            if( next > last )
            {
                $('warenov_content_allentries').tween("top",next);
            }
            else
            {
                $('warenov_content_allentries').tween("top",last);
            }
        }
        else
        {
            if( prev <= first )
            {
                $('warenov_content_allentries').tween("top",prev);
            }
            else
            {
                $('warenov_content_allentries').tween("top",0);
            }
        }
	}, /*eoClass:merkliste*/
	warenkorb : function( shouldOpen ){
		if( shouldOpen )
		{
			$('warenov_warenkorb').tween("height",540);
		}
		else
		{
			$('warenov_warenkorb').tween("height",0);
		}
	},
	warenkorbScroll : function( direction ){

        step=280;
        max=$('warenk_content_allentries').getScrollSize().y;
        startpx=$('warenk_content_allentries').getStyle('top');
        start=startpx.substr(0, startpx.length -2 ).toInt();

        first=0-step;
        last=(max-426)*(-1);
        prev=start+step
        next=start-step
        
        if(direction)
        {
            if( next > last )
            {
                $('warenk_content_allentries').tween("top",next);
            }
            else
            {
                $('warenk_content_allentries').tween("top",last);
            }
        }
        else
        {
            if( prev <= first )
            {
                $('warenk_content_allentries').tween("top",prev);
            }
            else
            {
                $('warenk_content_allentries').tween("top",0);
            }
        }
	} /*eoClass:warenkorb*/
});

var request = false;
function setUserPreferencesAjax( key, value ) {
    // Request erzeugen
    if (window.XMLHttpRequest) {
        request = new XMLHttpRequest(); // Mozilla, Safari, Opera
    } 
    else if (window.ActiveXObject) {
        try {
            request = new ActiveXObject('Msxml2.XMLHTTP'); // IE 5
        }
        catch (e) {
            try {
                request = new ActiveXObject('Microsoft.XMLHTTP'); // IE 6
            } 
            catch (e) {}
        }
    }
    if (!request) {
        return false;
    } 
    else {
        var url = "/user/preferences/set/"+key+"/"+value;
        // Request öffnen
        request.open('post', url, true);
        // Requestheader senden
        request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
        // Request senden
        request.send(null);
        // Request auswerten
        //request.onreadystatechange = interpretArticle;
    }
};

var singleEditClass = new Class({
    show :	function( editId ){
		$( 'view_'+editId ).tween("height",0);
		$( 'label_'+editId ).tween("height", $('label_'+editId).getScrollSize().y );
		$( 'edit_'+editId ).tween("height", $('edit_'+editId).getScrollSize().y );
    },
    hide :	function( editId ){
		$( 'view_'+editId ).tween("height", $('view_'+editId).getScrollSize().y );
		$( 'label_'+editId ).tween("height",0);
		$( 'edit_'+editId ).tween("height",0);
    }
});
var singleEdits = new singleEditClass;

var zoptionboxclass = new Class({
    open :	function( boxname ){
		$( boxname ).tween("height", $( boxname ).getScrollSize().y );
		$( boxname+'_open' ).setStyle("display","none");
		$( boxname+'_close' ).setStyle("display","block");
    },
    close :	function( boxname ){
		$( boxname ).tween("height", 26 );
		$( boxname+'_open' ).setStyle("display","block");
		$( boxname+'_close' ).setStyle("display","none");
    }
});
var zoptionbox = new zoptionboxclass;


function merkliste2basket( node_id ){
    var myRequest = new Request({
        method: 'get',
        url: '/mb_ajax/shop/wishlist2basket/'+node_id,
        onComplete : function(a){
            var res = JSON.decode(a);
            $('rowentry_'+node_id).setStyle('display','none');
        }
    }).send();
    location='/shop/basket'
}
function basket2merkliste( node_id ){
    var myRequest = new Request({
        method: 'get',
        url: '/mb_ajax/shop/basket2wishlist/'+node_id,
        onComplete : function(a){
            var res = JSON.decode(a);
            location.reload();
        }
    }).send();
}
function add2merkliste( node_id ){
    var myRequest = new Request({
        method: 'get',
        url: '/mb_ajax/shop/add2wishlist/'+node_id,
        onComplete : function(a){
            var res = JSON.decode(a);
            if( res.status )
            {
                alert( 'Angebot Nr. '+node_id+'\nzur Merkliste hinzugefügt' );
            } else {
                alert( 'Angebot Nr. '+node_id+'\nkönnte nicht zur Merkliste hinzugefügt werden.' );
            }
        }
    }).send();
}
function removeAd( type, node_id ){
    var myRequest = new Request({
        method: 'get',
        url: '/mb_ajax/end_ad/'+type+'/'+node_id,
        onComplete : function(a){
            var res = JSON.decode(a);
            $('rowentry_'+node_id).setStyle('display','none');
        }
    }).send();
}

function FooterLesezeichen(){
    var SeitenURL = 'http://www.mobello.de';
    var SeitenTitel = 'MObello.de';
    var Kommentar = 'MObello.de deutschlands Möbelmarktplatz';

    if (window.sidebar)
    {
        // firefox
        window.sidebar.addPanel(SeitenTitel,SeitenURL,Kommentar);
    }
    else if(window.opera && window.print)
    {
            // opera
        var elem = document.createElement('a');
        elem.setAttribute('href',SeitenURL);
        elem.setAttribute('title',SeitenTitel);
        elem.setAttribute('rel','sidebar');
        elem.click();
    }
    else if(document.all)
    {
        // ie
        window.external.AddFavorite(SeitenURL,SeitenTitel);
    }
}



function generateNewUniqueId(curId)
{
    $each($$("form"), function(item, idx){
        var act = $(item).get('action').replace(curId,curId+rnd());
        $(item).set('action',act);
    })
    $each($$("a"), function(item, idx){
        if( $(item).get('href') ){
            var act = $(item).get('href').replace(curId,curId+rnd());
            $(item).set('href',act);
        }
    })
}

function rnd(){ return String((new Date()).getTime()).replace(/\D/gi,'')}








window.addEvent('domready', function(){
    dd = new dropDown({ ddClosedClass : "menu_point", ddOpenedClass : "menu_point_open", maxHeight : "195" });
    warenov = new warenOv();
    
  var customTips = $$('.tooltip');
  var toolTips = new Tips(customTips);

  var topProductTips = $$('.topproduct_tip');
  var tpTips = new Tips(topProductTips,{ className:'tp_tip', title:'', text: function(element){
			return element.getChildren()[0].get('html');
		}, offset: {x: 16, y: -170}
                                       });
});


