function inject_tagging(is_logged){
	$$('div.tag_form').each (function (t) { 
		id_val = t.id;
		/*
		var newElem = id_val.replace("-taform", "");
		var tagField = newElem + "-txt";
		var tagB = newElem + "-tagb";
		var checkRestrict = newElem + "-rest";
		var addition = "";
		*/
		var additionalMsg = "";
		if (is_logged) {
			// addition = "<input type='checkbox' name='restrict_tag' id='" + checkRestrict + "' class='check' />";
			additionalMsg = " Check the tickbox to make your tag restricted viewing only";
		}
		/* anch = new Element('form', {id: 'test'});
		anch.setHTML('<form action=""><input type=text length=20 id="' + tagField +'" />&nbsp;' + addition+ '&nbsp;&nbsp;&nbsp;&nbsp;<input type="button" id ="' + tagB + '" class="tag_button" value="Add Tag">&nbsp;<input type="button" class="cancel_tag_button" value="Cancel"></form>');
		$(anch).injectInside($(t.id));
		*/
		 $(t.id).appendText("Enter one tag at a time. Commas will be removed, most other punctuation allowed." + additionalMsg);
	});
	$$('span.title').each (function (t) { 
		t.addEvent("click", function() {
			var summaryDiv = $(this.parentNode).getLast();
			if (summaryDiv.getStyle('display') == 'none') {
				summaryDiv.setStyle('display', 'block');
				flashEntry(this.parentNode);
				if (is_logged) {
					var newElem = (this.parentNode.id).replace("-entry", "");
					var url = "/post/" + newElem + "/content/";
					var updateArea = newElem + "-sum";
					$(updateArea).appendText("Loading");				 
					new Ajax(url, {postBody: {f: 0}, update: $(updateArea) }).request();
				}
			}
			else {
				summaryDiv.setStyle('display', 'none');
			}
			});
		}
	)
	$$('a.more_sum').each (function (t) { 
		t.addEvent("click", function() {
			var newElem = (this.id).replace("-msum", "");
			var url = "/post/" + newElem + "/content/";
			var updateArea = newElem + "-sum";
			$(updateArea).appendText("Loading");				 
			new Ajax(url, {postBody: {f: 1}, update: $(updateArea) }).request();			
			});
		}
	)
}

function init(){	
	$$('h3.dateheader').each (function (dh) { 
		dh.addEvent("click", function() { dateHeaderToggle(this); 	}
		);
	});

	$$('a.source_anchor').each (function (sa) { 
		sa.addEvent("mousedown", function() {
			var clickArea_id = this.id + "-click";
			new Ajax("/ach_ct.php", { postBody: {i: this.id}, update: $(clickArea_id) }).request();
		});
	});

	$$('img.tag_action').each (function (ta) { 
		ta.addEvent("click", function() {	
			var elemID = new String(this.id);
			var newElem = elemID.replace("-tagimg", "");
			var tagform_id  = newElem + "-taform";
			var voteform_id = newElem + "-vaform";
			var tagForm = $(tagform_id);	
			var voteForm = $(voteform_id);
			if (tagForm.getStyle('display') == 'none') {
				tagForm.setStyle('display', 'block');
				if (voteForm) {
					voteForm.setStyle('display', 'block');
				}
			}
			else {				
				tagForm.setStyle('display', 'none');
				if (voteForm) {
					voteForm.setStyle('display', 'none');
				}
			}
		});
	});

	$$('input.tag_button').each (function (ta) { 
		ta.addEvent("click", function() {	
			var elemID = new String(this.id);
			var newElem = elemID.replace("-tagb", "");
			var tagArea_id  = newElem + "-tag";
			var submit_field = newElem + "-txt";
			var tagForm = newElem + "-taform";
			var voteForm = newElem + "-vaform";
			var rest = newElem + "-rest";
			var rVal = 0;
			var ee = document.getElementById(rest);
			if ( ee != null ) {
				if (ee.checked)	{
					rVal = 1;
				}
			}
			new Ajax("/ach_tt.php", { postBody: { 'i' : newElem, 'tag': $(submit_field).value, 'r': rVal}, update: $(tagArea_id) }).request();
				$(tagForm).setStyle('display', 'none');
				$(voteForm).setStyle('display', 'none');
		});
	});

	$$('input.cancel_tag_button').each (function (ctb) { 
		ctb.addEvent("click", function() {	
			var tagForm = $(this.parentNode.parentNode);			
			var voteForm = $(tagForm.id.replace("-taform", "") + "-vaform");
			tagForm.setStyle('display', 'none');
			voteForm.setStyle('display', 'none');
		});
	});

	$('login_anchor').onclick = function() { loginToggle(); }
	$('cancel_login_button').onclick = function() { loginToggle(); }

	$('login_button').onclick = function() {
		set_key($('password').value);
	}

	$('new_blog_anchor').onclick = function() { newBlogToggle(); }
	$('cancel_suggestion_button').onclick = function() {	newBlogToggle();  }

	$('submit_suggestion_button').onclick = function() {
		new Ajax("ach2_suggest.php", { postBody: { 'newblog' : $('newblog').value, 'newblog_email': $('newblog_email').value}, update: $('newblog_form')}).request();
	}

	$$('input.moderate_button').each (function (mb) { 
		mb.addEvent("click", function() {	
			var elemID = new String(this.id);
			var newElem = elemID.replace("-mod", "");
			var ti  = newElem + "-ti";
			var selectBox = newElem + "-status";
			var updateArea = newElem + "-area";
			new Ajax("/ach2_mod.php", { postBody: { 'ti' : $(ti).value, 'status': $(selectBox).value}, update: $(updateArea)}).request();				
		});
	});
	
	$$('a.vote_up').each ( function(vu) {
		vu.addEvent("click", function() {	
			var elem = new String(this.parentNode.id);
			var newElem = elem.replace("-votearea", "");
			new Ajax("/ach2_vote.php", { postBody: { 'ti' : newElem, 'v': 1}, update: $(this.parentNode)}).request();
		});
	});


	$$('a.vote_down').each ( function(vd) {
		vd.addEvent("click", function() {	
			var elem = new String(this.parentNode.id);
			var newElem = elem.replace("-votearea", "");
			new Ajax("/ach2_vote.php", { postBody: { 'ti' : newElem, 'v': 0}, update: $(this.parentNode)}).request();
		});
	});

	$$('a.more_tags').each (function (ta) { 
		ta.addEvent("click", function() {	
			var elemID = new String(this.id);
			var newElem = elemID.replace("-moret", "");
			var tagArea_id  = newElem + "-tag";
			var div_id = newElem + "-entry";
			new Ajax("/ach_tt.php", { postBody: { 'i' : newElem, 'jtt': 1}, update: $(tagArea_id)}).request();				
			return false;
		});
	});

	$$('a.more_clicks').each (function (cl) { 
		cl.addEvent("click", function() {	
			var elemID = new String(this.id);
			var newElem = elemID.replace("-morec", "");
			var clickArea_id  = newElem + "-click";
			new Ajax("/ach_ct.php", { postBody: { 'i' : newElem, 'detail': 1}, update: $(clickArea_id)}).request();				
			return false;
		});
	});
	
	$$('a.more_cmts').each (function (cl) { 
		cl.addEvent("click", function() {	
			var elemID = new String(this.id);
			var newElem = elemID.replace("-morecmts", "");
			var cmtArea_id  = newElem + "-cmt";
			new Ajax("/endpoints/ach2_comments.php", { postBody: { 'i' : newElem}, update: $(cmtArea_id)}).request();				
			return false;
		});
	});

	$$('img.vote_action').each (function (va) { 
		va.addEvent("click", function() {	
			var voteForm = $(this.parentNode.parentNode).getLast().getPrevious();			
			if (voteForm.getStyle('display') == 'none') {
				voteForm.setStyle('display', 'block');
			}
			else {				
				voteForm.setStyle('display', 'none');
			}
		});
	});

	$$('a.notebook_link').each (function (nlb) { 
		nlb.addEvent("click", function() {	
			var elemID = new String(this.id);
			var newElem = elemID.replace("-note", "");
			var updateArea  = newElem + "-notespan";
			new Ajax("/ach2_watchlistep.php", { postBody: { 'action' : "note", 'payload': newElem}, update: $(updateArea)}).request();
		});
	});

	$$('a.greylist_link').each (function (nlb) { 
		nlb.addEvent("click", function() {	
			var elemID = new String(this.id);
			var newElem = elemID.replace("-grey", "");
			var updateArea  = newElem + "-greyspan";
			new Ajax("/ach2_uconfig.php", { postBody: { 'action' : "greymain", 'payload': newElem}, update: $(updateArea)}).request();
		});
	});

	$$('a.blacklist_link').each (function (nlb) { 
		nlb.addEvent("click", function() {	
			var elemID = new String(this.id);
			var newElem = elemID.replace("-black", "");
			var updateArea  = newElem + "-blackspan";
			new Ajax("/ach2_uconfig.php", { postBody: { 'action' : "blackmain", 'payload': newElem}, update: $(updateArea)}).request();
		});
	});

	$$('a.watchlist_link').each (function (nlb) { 
		nlb.addEvent("click", function() {	
			var elemID = new String(this.id);
			var newElem = elemID.replace("-watched", "");
			var updateArea  = newElem + "-watchspan";
			new Ajax("/ach2_watchlistep.php", { postBody: { 'action' : "expire", 'payload': newElem}, update: $(updateArea)}).request();
		});
	});
	
	$$('a#stat_menu_anchor').each (function (nlb) {
			nlb.addEvent("click", function () {
			statMenu = $('rmenu-stats');
			if (statMenu.getStyle('display') == 'none') {
				nlb.setHTML("Stats&nbsp;&#9650;");
				statMenu.setStyle('display', 'block');
			}
			else {
				nlb.setHTML("Stats&nbsp;&#9660;");
				statMenu.setStyle('display', 'none');
			}
	});
	});
	$$('a#admin_menu_anchor').each (function (nlb) {
			nlb.addEvent("click", function () {
			statMenu = $('rmenu-admin');
			if (statMenu.getStyle('display') == 'none') {
				nlb.setHTML("Admin&nbsp;&#9650;");
				statMenu.setStyle('display', 'block');
			}
			else {
				nlb.setHTML("Admin&nbsp;&#9660;");
				statMenu.setStyle('display', 'none');
			}
	});
	});
	$$('a#config_menu_anchor').each (function (nlb) {
			nlb.addEvent("click", function () {
			statMenu = $('rmenu-config');
			if (statMenu.getStyle('display') == 'none') {
				nlb.setHTML("Config&nbsp;&#9650;");
				statMenu.setStyle('display', 'block');
			}
			else {
				nlb.setHTML("Config&nbsp;&#9660;");
				statMenu.setStyle('display', 'none');
			}
	});
	});
	$$('a#personal_menu_anchor').each (function (nlb) { 
		nlb.addEvent("click", function () {
			statMenu = $('rmenu-personal');
			if (statMenu.getStyle('display') == 'none') {
				nlb.setHTML("Personal&nbsp;&#9650;");
				statMenu.setStyle('display', 'block');
			}
			else {
				nlb.setHTML("Personal&nbsp;&#9660;");
				statMenu.setStyle('display', 'none');
			}
	});
	});
	$('login_form').setStyle('display', 'block');
	$('newblog_form').setStyle('display', 'block');
	$$('a#refresh_feed_anchor').each (function (nlb) {
		nlb.addEvent("click", function() { new Ajax("/ach2_uconfig.php", { postBody: {"action": "refresh", "payload": "current_user"}, update: $('fmf') }).request(); });
	});
	new SmoothScroll();
}

function dateHeaderToggle(currentElem) {
	var dateHeader = $(currentElem).getNext();
	if (dateHeader.getStyle('height').toInt() > 0) {
		new Fx.Style(dateHeader, 'height', {duration: 500}).start(0);
	}
	else {
		new Fx.Style(dateHeader, 'height', {duration: 750}).start(dateHeader.getSize().scrollSize.y);
	}
}

function newBlogToggle() {
	var newblogForm = $('newblog_form');
	if (newblogForm.getStyle('height').toInt() > 0) {
		new Fx.Style('newblog_form', 'height', {duration: 500}).start(0);
	}
	else {
		new Fx.Style('newblog_form', 'height', {duration: 750}).start(newblogForm.getSize().scrollSize.y);
	}
}

function loginToggle() {
	var loginForm = $('login_form');
	if (loginForm.getStyle('height').toInt() > 0) {
		new Fx.Style('login_form', 'height', {duration: 500}).start(0);
	}
	else {
		new Fx.Style('login_form', 'height', {duration: 750}).start(loginForm.getSize().scrollSize.y);
	}
	return false;
}

function showMsg(msg) {
	el = $('notification_msg');
	el.innerHTML = msg;
	var msgFx = new Fx.Styles('notification_msg', {duration: 500});
	msgFx.start({
		'background-color': ['fff', 'cc0000'],		
		'opacity': [0.2, 1]
	});
	msgFx.start.pass({
		'background-color': ['cc0000', 'fff'],
		'height': [100, 0],
		'opacity': [1, 0]
	}, msgFx).delay(2000);	
}

function flashEntry(currentElem) {
	var elemFx = new Fx.Styles(currentElem, {duration: 500});
	elemFx.start({
		'background-color': ['fff', 'ffffcc']
	});
	elemFx.start.pass({
		'background-color': ['ffffcc', 'ffff']
	}, elemFx).delay(600);
}


