//var doc_url = 'http://192.168.1.6/my_blog'
function delete_item(item, id, type){
	switch(type){
		case 'post':
			var confirm_delete = confirm('Are you sure you want to delete this post?');
			if (confirm_delete == true){
				new Ajax.Request(doc_url + '/action/delete_post/', {
					method: 'post',
					parameters: 'id=' + id,
					onSuccess: function(transport) {
						if (transport.responseText == 1){
							item.remove();
						}
						else {
							alert(transport.responseText);
						}
					}
				});
			}
			else return false;
		break;
		case 'blog':
			var confirm_delete = confirm('Are you sure you want to delete this blog and all of its posts?');
			if (confirm_delete == true){
				new Ajax.Request(doc_url + '/action/delete_blog/', {
					method: 'post',
					parameters: 'id=' + id,
					onSuccess: function(transport) {
						if (transport.responseText == 1){
							item.remove();
						}
						else {
							alert(transport.responseText);
						}
					}
				});
			}
			else return false;
		break;
	}
}
function make_insert(blog_id){
	var post_container = new Element('div',{'class':'post_container','id':'new_post_container'});
	var the_post = new Element('div',{'class':'post','id':'new_post'});
	var the_post_title = new Element('div',{'class':'post_title','id':'new_post_title'});
	var the_post_text = new Element('div',{'class':'post_text','id':'new_post_text'});
	the_post.insert(the_post_title).insert(the_post_text);
	post_container.insert(the_post);
	$('all_posts').insert({'top' : post_container});
	make_form(post_container,the_post_title,the_post_text,the_post,blog_id,'yes');
}

function htmlspecialchars_decode(text){
    return text.replace('&amp;','&').replace('&lt;','<').replace('&gt;','>');
}

function make_form(param1,param2,param3,param4,param5,param6){
	if (param6 == 'no'){
		var post_id = param1;
		var number = param2;
		var title = param3;
		var text = param4;
		
		var post_container = $('post_container_' + number);
		var the_post = $('post_' + number);
		var the_post_text = $('post_text_' + number);
		var the_post_title = $('post_title_' + number);
	}
	else {
		var post_container = param1;
		var the_post_title = param2;
		var the_post_text = param3;
		var the_post = param4;
		var post_id = '';
		
		var random_titles = new Array('I like pie.','I can has cheezburger?','All your base:','Playing the Wii.','Its ten\'o clock somewhere.','Cornflakes are great!','I\'ve been to the edge...');
		var random_text = new Array('Its true! Pie is delicious!!','Srsly, gimme a cheezburger!','Are belong to us!','This boomBlox is amazing.','And I\'m sure nobody cares.','Well maybe not really..','It wasn\'t all that great.');
		
		random_number = Math.floor(Math.random()*7);
		
		var title = random_titles[random_number];
		var text = random_text[random_number];
	}
	
	// set up the form elements //
    var div = new Element('div',{'style':'display: none'});
    var form = new Element('form');
    var input = new Element('input',{'name':'title','value':title});
	var line_break = new Element('br');
    var textarea = new Element('textarea',{'name':'text'}).update(text);
	
	var cancel_button = new Element('a',{'href':'#','onclick':'return false;'}).update('cancel').observe('click',function(){
		if (param6 == 'yes' && post_id == '')post_container.remove();
		else {
			div.hide();
			the_post.show();
		}
	});
	var ok_button = new Element('a',{'href':'#','onclick':'return false'}).update('ok').observe('click',function(){
		var form_hash = new Hash();
		form_hash.set('title',input.value);
		form_hash.set('text',textarea.value);
		
		
		if (param6 == 'yes' && post_id == ''){
			form_hash.set('blog',param5);
		}
		else {
			form_hash.set('id',post_id);
		}
		
		new Ajax.Request(doc_url + '/action/save_post/', {
			method:'post',
			parameters: form_hash,
			onSuccess: function(transport){
				var seperator = '@@##$$ASDF@@##$$ASDF';
				returned_array = transport.responseText.split(seperator);
				input.value = htmlspecialchars_decode(returned_array[0]);
				the_post_title.update(returned_array[0]);
				
				textarea.value = htmlspecialchars_decode(returned_array[1]);
				the_post_text.update(returned_array[1]);
				if (param6 == 'yes' && post_id == ''){
					post_id = returned_array[2];
					var delete_post = new Element('a',{'href':'#','onclick':'return false;', 'class':'delete'}).update('delete')
					delete_post.observe('click',function(){
						delete_item(post_container,post_id,'post')
					});
					post_container.insert({'top':delete_post});
				}
			}
		});
		div.hide();
		the_post.show();
	});
	
	// put it all together //
	
    form.insert(input).insert(line_break).insert(textarea).insert(line_break).insert(ok_button).insert(cancel_button);
    div.insert(form);

	// apply it to the document
    post_container.appendChild(div);

	// show the form if it is being added new
	if (param6 == 'yes'){
		div.show();
		the_post.hide();
	}
	
	// events for the form elements and stuff..
	Event.observe(the_post, 'mouseover', function() {
		the_post.style.backgroundColor = '#ffff99';
	});
	Event.observe(the_post, 'mouseout', function() {
		the_post.style.backgroundColor = '#ffffff';
	});
	Event.observe(the_post, 'click', function() {
		the_post.hide();
		div.show();
	});
}