var feeds = {
	init: function(options){
		if(options){
			if(options.user) feeds.params.userid = options.user;
			if(options.feedlist) feeds.params.list = options.feedlist;
			if(options.feedcontent) feeds.params.content = options.feedcontent;
		}
		feeds.form.main();
		feeds.get();
		var addform = $$('.addform_field')[0];
		$(addform).observe('keyup', function(e){
			var keycode;
			if (!e) var e = window.event
			if (e.keyCode) code = e.keyCode;
			else if (e.which) code = e.which;
			if(code == 13) feeds.update.feed();
		});
	},
	address: {
		list: '/modules/wgte_reader/get_list.php',
		feed: '/modules/wgte_reader/get_feed.php',
		add: '/modules/wgte_reader/add_feed.php',
		del: '/modules/wgte_reader/del_feed.php'
	},
	params: {
		userid: 0,
		list: null,
		content: null,
		feedurl: null
	},
	feed: [],
	get: function(){
		$(feeds.params.list).innerHTML = feeds.form.preloader();
		new Ajax.Request(feeds.address.list, {
			method: 'post',
			parameters: feeds.params,
			onComplete: function(data){
				feeds.update.list();
			}
		});
	},
	update: {
		list: function(){
			var main = $(feeds.params.list);
			main.innerHTML = '';
			
			for(var i = 0; i < feeds.feed.length; i++){
				var elm = document.createElement('li');
				$(elm).setStyle({'overflow': 'hidden'});
				elm.addClassName(feeds.feed[i].shortname);
				elm.innerHTML = '<img src="/modules/wgte_reader/closedelete.gif" onclick="feeds.update.deletef('+feeds.feed[i].feed_id+')" style="float:right;"/>'+feeds.feed[i].name;
				if(feeds.feed[i].unread>0){
					elm.setStyle({'font-weight': 'bold'});
					elm.innerHTML = elm.innerHTML+' ('+feeds.feed[i].unread+')';
				}
				elm._fn = i;
				main.appendChild(elm);
				Event.observe(elm, 'click', function(event){
					var elm = Event.element(event);
					if(elm.tagName.toLowerCase() == 'li'){
						feeds.update.view(elm._fn,'');
					}
				});
			}
		},
		view: function(n){
			$(feeds.params.content).innerHTML = feeds.form.preloader();
			if(window.console) console.log(n);
			var params = feeds.feed[n];
			params.id = n;
			if(arguments[1]){
				params.nc = arguments[1]; 	
			}else{
				params.nc = ''; 
			}
			new Ajax.Request(feeds.address.feed,{
				method: 'post',
				parameters: params,
				onComplete: function(data){
					$(feeds.params.content).innerHTML = data.responseText;
					feeds.get();
				}
			});
		},
		feed: function(){
			feedfield = $$('.addform_field')[0];
			feeds.params.feedurl = $F(feedfield);
			feedfield.value = '';
			new Ajax.Request(feeds.address.add, {
				method: 'post',
				parameters: feeds.params,
				onComplete: function(data){
					$$('.addform')[0].hide();
					if(data.responseText == 'NonFeed'){
						feeds.form.nonfeed();
					}else{
						feeds.get();
					}
				}
			});
			$$('.addform')[0].hide();
		},
		deletef: function(id){
			new Ajax.Request(feeds.address.del, {
				method: 'post',
				parameters: {
					'feed_id': id
				},
				onComplete: function(data){
					feeds.form.main();
					feeds.get();
				}
			});
		}
	},
	form: {
		add: function(){
			$$('.addform')[0].show();
		},
		preloader: function(){
			return '<img src="/modules/wgte_reader/ajax-loader.gif" alt="Loading" title="Loading"/>';
		},
		main: function(){
			$(feeds.params.content).innerHTML = '<img src="/modules/wgte_reader/images/startmsg.gif" style="margin:4px;" alt="<- Start Here"/>';
		},
		nonfeed: function(){
			$(feeds.params.content).innerHTML = '<div class="feed_title">An RSS or Atom Feed could not be found at the URL you attempted to add.  Please double check the address.</div>';
		}
	}
}
