if(!Warenkorb) {

	var Warenkorb = Class.create({
		
		initialize: function(options) {
			
			this.options = Object.extend({
				'urlRoot': '',
				'sprache': 'de',
				'seiteRegistrierung': 'registrieren',
				'pdbKategorie': '',
				'folgeseiteLogin': ''
				}, options || {});
			
			},
		
		add: function(artikelId, istAngemeldet){
			
			if (artikelId > 0){
				
				if (istAngemeldet){
					Cycon.Warenkorb.Warenkorb.einfuegenWarenkorb({
						'parameters': {
							'warenkorb_system_id': artikelId,
							'sprache': this.options.sprache
							},
						'onSuccess': function(transport){
							if (transport.responseText != ""){
								
								$('warenkorb-anzeige').update(transport.responseText);
								$('warenkorb-anzeige').addClassName('sichtbar');
								
								Effect.Fade.delay(1, $('warenkorb-anzeige'), { 'duration': 2.0, 'afterFinish': function(){
									$('warenkorb-anzeige').removeClassName('sichtbar');
									$('warenkorb-anzeige').writeAttribute('style', '');
									} });
								}
							}.bind(this)
						});
				}
				else{
					
					var folgeseiteLogin = '';
					var kategorie = '';
					
					if (this.options.folgeseiteLogin != '')
						folgeseiteLogin = '?folgeseite_login=' + this.options.folgeseiteLogin;
					
					if (this.options.pdbKategorie != '')
						kategorie = (this.options.folgeseiteLogin != '' ? '&' : '?') + 'pdb_kategorie=' + this.options.pdbKategorie;
					
					document.location.href = this.options.urlRoot + this.options.seiteRegistrierung + '_' + this.options.sprache + '.html' + folgeseiteLogin + kategorie;
				}
			}
		},
		
		addModal: function(artikelId, istAngemeldet){
			
			if (artikelId > 0){
				
				if (istAngemeldet){
					Cycon.Warenkorb.Warenkorb.einfuegenWarenkorb({
						'parameters': {
							'warenkorb_system_id': artikelId,
							'sprache': this.options.sprache
							},
						'onSuccess': function(transport){
							if (transport.responseText != ""){
								
								$('warenkorb-anzeige').update(transport.responseText);
								$('warenkorb-anzeige').addClassName('sichtbar');
								
								Effect.Fade.delay(1, $('warenkorb-anzeige'), { 'duration': 2.0, 'afterFinish': function(){
									$('warenkorb-anzeige').removeClassName('sichtbar');
									$('warenkorb-anzeige').writeAttribute('style', '');
									} });
								}
							
							if (myGUI)
								myGUI.DialogClose();
							
							window.location.reload();
							
							}.bind(this)
						});
				}
				else{
					
					if (this.options.folgeseiteLogin != '')
						folgeseiteLogin = '?folgeseite_login=' + this.options.folgeseiteLogin;
					
					if (this.options.pdbKategorie != '')
						kategorie = (this.options.folgeseiteLogin != '' ? '&' : '?') + 'pdb_kategorie=' + this.options.pdbKategorie;
					
					document.location.href = this.options.urlRoot + this.options.seiteRegistrierung + '_' + this.options.sprache + '.html' + folgeseiteLogin + kategorie;
				}
			}
		}
	});
}
