////////////////////////////////////////////////////////////////////// ABONNEMENTS BESTÄTIGEN

//Bestätigung anzeigen
function confirmRSS(id, option) {
	var callback = {
		callback: this.confirmRSSCallback,
		argument: [id, option]
	};
	MessageOverlayManager.displayConfirm('Willst du diese Kategorie deinem persönlichen RSS-Feed hinzufügen?', callback);
}



//Bestätigung ist erfolgt
function confirmRSSCallback(status, args) {
	if ( status ) {
		YAHOO.util.Connect.asyncRequest('GET', '/ajax.php?action=subscr_rss&id='+args[0]+'&sectoken='+sectoken);
		yDom.addClass(args[1].parentNode, 'disabled');
		args[1].onclick = function() {};
	}
}



//Bestätigung anzeigen
function confirmInfoletter(id, option) {
	var callback = {
		callback: this.confirmInfoletterCallback,
		argument: [id, option]
	};
	MessageOverlayManager.displayConfirm('Willst du diese Kategorie deinem persönlichen Infoletter hinzufügen?', callback);
}



//Bestätigung ist erfolgt
function confirmInfoletterCallback(status, args) {
	if ( status ) {
		YAHOO.util.Connect.asyncRequest('GET', '/ajax.php?action=subscr_infoletter&id='+args[0]+'&sectoken='+sectoken);
		yDom.addClass(args[1].parentNode, 'disabled');
		args[1].onclick = function() {};
	}
}



////////////////////////////////////////////////////////////////////// KATEGORIE-AUSWAHL

//Konstruktor
var CategoryListManager = function(fieldName, list, lastId) {
	this.fieldName = fieldName;
	this.list = list;
	this.nextId = lastId+1;
	
	//Bestehende Einträge init
	var lis = yDom.getElementsByClassName('list', 'li', this.list);
	for ( var i=0; i<lis.length; i++ ) {
		
		//Felder auslesen
		var fields = this.getFields(lis[i]);
		
		//Autosuggest initialisieren
		new CategorySelection(fields[1], fields[0], 300);
	}
	
	//Keine Einträge vorhanden => Leeres Feld erzeugen
	if ( !lis.length ) {
		this.add();
	}
}



//Neuen Eintrag hinzufügen
CategoryListManager.prototype.add = function() {
	
	//Zeile erzeugen
	var li = document.createElement('li');
	li.id = this.fieldName+this.nextId;
	li.className = 'list';
	li.innerHTML = this.getNewCode();
	li.style.zIndex = 9000-this.nextId;
	this.list.appendChild(li);
	++this.nextId;
	
	//Felder auslesen
	var fields = this.getFields(li);
	
	//Autosuggest initialisieren
	new CategorySelection(fields[1], fields[0], 300);
	
	//Autofocus
	fields[0].focus();
}



//Code für neuen Eintrag erzeugen
CategoryListManager.prototype.getNewCode = function() {
	return '<input type="text" name="'+this.fieldName+'['+this.nextId+'][typein]" value="" class="textfield" /><input type="hidden" name="'+this.fieldName+'['+this.nextId+'][catid]" value="" /> <a href="javascript:'+this.fieldName+'Manager.remove('+this.nextId+');"><img src="/design/user/button_kategorieloeschen.png" class="pngfix" alt="Kategorie löschen" /></a>';
}



//Felder auslesen
CategoryListManager.prototype.getFields = function(li) {
	var fields = new Array();
	fields.push(li.childNodes[0]);
	fields.push(li.childNodes[1]);
	return fields;
}



//Eintrag entfernen
CategoryListManager.prototype.remove = function(id) {
	var li = yDom.get(this.fieldName+id);
	if ( li ) {
		this.list.removeChild(li);
		var lis = this.list.getElementsByTagName('li');
		
		//Keine Einträge mehr vorhanden => Leeres Feld erzeugen
		if ( !lis.length ) {
			this.add();
		}
	}
}

