var isEven = function(value) {if (value%2 == 0)	{return true;} return false; };

var nrs = YAHOO.namespace("nrs");

(function() { 
    var Dom = YAHOO.util.Dom, 
        Event = YAHOO.util.Event,
        Connect = YAHOO.util.Connect,
        JSON = YAHOO.lang.JSON,
		Cookie = YAHOO.util.Cookie;

	var searchDefault = "Search...";

	YAHOO.util.Get.script('/src/connection.js');

	var cEvents = {};									//
														//
	if (nrs.cEvents) {									//	This is only nnrsded because stupid javascript isn't
														//  loading connection.js in time for nrs.cEvents to be
		cEvents.start = nrs.cEvents.start;				//  defined.  Especially since this is a function I can
		cEvents.failure = nrs.cEvents.failure;			//  call later.
		cEvents.complete = nrs.cEvents.complete;		//
	} else {
		cEvents.start = function(){};
		cEvents.failure = function(){};
		cEvents.complete = function(){};
	}

	// Load the session object into the client
	nrs.loadSession = function(){
		
		var sessionloader = Connect.asyncRequest('GET',"http://switchedonmag.org/loadSession", {

			success: function(o) {
				response = null;
				
				try  { response = JSON.parse(o.responseText);}
				catch (e){window.alert("Error in parsing session response from server.");return;}

				if (response.error) {
					nrs.error = response.error;
					window.alert(nrs.error);
				} else {
					nrs.date = response.session.date;
					if (response.session.user) {
						nrs.user = response.session.user;
						nrs.admin = response.session.user.admin;
					}
				}
			},

			timeout: 5000
		});
	};

	nrs.loadSession();

	var flipFrontPoll = function(c) {

		if (c == 1) {
			var issue = Dom.get('pollissue').value;
			YAHOO.util.Cookie.set("voted", issue+":1",{path: "/"}); 
		}

		Dom.setStyle(YAHOO.util.Dom.getElementsByClassName('poll-choices','div')[0], 'display', 'none'); 
		Dom.setStyle(YAHOO.util.Dom.getElementsByClassName('poll-results','div')[0], 'display', 'block'); 
	};

	var submitpoll = function(v) {

		Dom.setStyle('swo-poll-form','display','none');
		Dom.setStyle('poll-loading','display','block');

		var formObject = Dom.get('swo-poll-form'); 
		Connect.setForm(formObject); 

		var cObj = Connect.asyncRequest('POST', 'http://switchedonmag.org/_goPostPoll', {
			customevents:{ 
				onStart:nrs.cEvents.start,
				onFailure:nrs.cEvents.failure,
				onComplete:nrs.cEvents.complete
			},
			success: function(o) {
				try  { response = JSON.parse(o.responseText);}
				catch (e){window.alert("Error in parsing response from server.");return;}

				if (response && response.error) {
					nrs.error = response.error;
					window.alert(nrs.error);

				} else {

					var issue = Dom.get('pollissue').value;				
					YAHOO.util.Cookie.set("voted", issue+":1",{path: "/"}); 
					
					window.setTimeout(function(){

						var nra = response.newresults;
						var newResults = '';

						for (i = 0; i < nra.length; i++ )
							newResults += '<div title="'+nra[i][0]+' - '+nra[i][2]+'%"><span>'+nra[i][0]+': </span><span class="b" style="width: '+nra[i][2]+'%;"> </span><span class="n">'+nra[i][2]+'%</span></div>';

						Dom.get('poll-results').innerHTML = newResults;
						Dom.setStyle('poll-loading','display','none');
						Dom.setStyle('swo-poll-form','display','block');	
						flipFrontPoll();
					},1200);
				}
				Dom.setStyle(document.body,'cursor','default');
			},

			timeout: 5000
		}); 
	};

	var submitmessage = function() {

		Dom.setStyle('swo-contact-form','display','none');
		Dom.setStyle('contact-loading','display','block');

		var formObject = Dom.get('swo-contact-form'); 
		Connect.setForm(formObject); 

		var cObj = Connect.asyncRequest('POST', 'http://switchedonmag.org/_goPostMessage', {
		
			success: function(o) {
				try  { response = JSON.parse(o.responseText);}
				catch (e){window.alert("Error in parsing response from server.");return;}

				if (response.error) {
					nrs.error = response.error;
					window.alert(nrs.error);
				} else {				
					window.setTimeout(function(){

						Dom.get('swo-contact-done').innerHTML = '<h3>Thank you for your message.</h3>';
						Dom.setStyle('contact-loading','display','none');
					},1200);
				}
			},

			timeout: 5000
		}); 
	};

	var addLetter = function(item) {

		var formObject = Dom.get('add-issue-form'); 
		Connect.setForm(formObject); 

		var cObj = Connect.asyncRequest('POST', 'http://switchedonmag.org/_goAddLetter', {
			/*customevents:{ 
				onStart:nrs.cEvents.start,
				onFailure:nrs.cEvents.failure,
				onComplete:nrs.cEvents.complete
			},*/	
			success: function(o) {
				try  { response = JSON.parse(o.responseText);}
				catch (e){window.alert("Error in parsing response from server.");return;}

				if (response.error) {
					nrs.error = response.error;
					window.alert(nrs.error);

				} else {
					loadLetters();
				}
			},

			timeout: 5000
		});
	};

	var addLink = function(item) {

		var formObject = Dom.get('add-issue-form'); 
		Connect.setForm(formObject); 

		var cObj = Connect.asyncRequest('POST', 'http://switchedonmag.org/_goAddLink', {
			/*customevents:{ 
				onStart:nrs.cEvents.start,
				onFailure:nrs.cEvents.failure,
				onComplete:nrs.cEvents.complete
			},*/	
			success: function(o) {
				try  { response = JSON.parse(o.responseText);}
				catch (e){window.alert("Error in parsing response from server.");return;}

				if (response.error) {
					nrs.error = response.error;
					window.alert(nrs.error);

				} else {
					loadLinks();
				}
			},

			timeout: 5000
		});
	};

	var addPollChoice = function(item) {

		var formObject = Dom.get('add-issue-form'); 
		Connect.setForm(formObject); 

		var cObj = Connect.asyncRequest('POST', 'http://switchedonmag.org/_goAddPollChoice', {
			/*customevents:{ 
				onStart:nrs.cEvents.start,
				onFailure:nrs.cEvents.failure,
				onComplete:nrs.cEvents.complete
			},*/		
			success: function(o) {
				try  { response = JSON.parse(o.responseText);}
				catch (e){window.alert("Error in parsing response from server.");return;}

				if (response.error) {
					nrs.error = response.error;
					window.alert(nrs.error);

				} else {
					loadPollChoices();
				}
			},

			timeout: 5000
		});
	};

	var loadLetters = function() {

		var ins = Dom.get('issue-newnum').value;

		var cObj = Connect.asyncRequest('GET', 'http://switchedonmag.org/loadLetters&issue='+ins, {
			success: function(o) {
				try  { response = JSON.parse(o.responseText);}
				catch (e){window.alert("Error in parsing response from server.");return;}

				if (response.error) {
					nrs.error = response.error;
					window.alert(nrs.error);

				} else {
					var pc = response.letters;
					var pcihtml = '';
					
					if (pc.length == 0)
						pcihtml = 'No letters added yet.';

					else {							 
						for (i = 0;i < pc.length;i++)
							pcihtml += '<div class="yui-ge" style="width: 100%; overflow: hidden; margin-bottom: .5em;"><div class="yui-u first">'+pc[i].title+'</div><div class="yui-u" style="text-align: right;"><button class="letter-delete" id="letter-delete-'+pc[i].id+'">Delete</button></div></div>';
					}

					Dom.get('letters-list').innerHTML = pcihtml;

					window.setTimeout(function(){

						var deleteLetters = Dom.getElementsByClassName('letter-delete','button','letters-list');
						var deleteButtons = [];

						if (deleteLetters) {
							for (j = 0;j<deleteLetters.length;j++ ) {
								//deleteButtons[j] = new YAHOO.widget.Button(deleteLetters[i]);
								deleteLetters[j].onclick = function(){	

									var mid = this.id.split("-")[2];
									
									if (!window.confirm("This action cannot be undone - are you sure?")) {
										return false;
									} else {
										var dObj = YAHOO.util.Connect.asyncRequest('GET', 'http://switchedonmag.org/goDelLetter&id='+mid, {						
											/*customevents:{ 
												onStart:nrs.cEvents.start,
												onFailure:nrs.cEvents.failure,
												onComplete:nrs.cEvents.complete
											},*/
											success: function(o) {
												try  { response = JSON.parse(o.responseText);}
												catch (e){window.alert("Error in parsing response from server.");return;}

												if (response.error) {
													nrs.error = response.error;
													window.alert(nrs.error);

												} else {
													loadLetters();
												}
											},

											timeout: 5000
										});	
									}
								};
							}
						}
					},0);
				}
			},
			timeout: 5000
		});
	};

	var loadLinks = function() {

		var ins = Dom.get('issue-newnum').value;

		var cObj = Connect.asyncRequest('GET', 'http://switchedonmag.org/loadLinks&issue='+ins, {
			success: function(o) {
				try  { response = JSON.parse(o.responseText);}
				catch (e){window.alert("Error in parsing response from server.");return;}

				if (response.error) {
					nrs.error = response.error;
					window.alert(nrs.error);

				} else {
					var pc = response.links;
					var pcihtml = '';
				
					if (pc.length == 0)
						pcihtml = 'No links added yet.';

					else {							 
						for (i = 0;i < pc.length;i++)
							pcihtml += '<div class="yui-ge" style="width: 100%; overflow: hidden; margin-bottom: .5em;"><div class="yui-u first"><a href="'+pc[i].location+'">'+pc[i].text+'</a></div><div class="yui-u" style="text-align: right;"><button class="link-delete" id="link-delete-'+pc[i].id+'">Delete</button></div><div style="width: 100%; overflow: hidden; clear: both;">'+pc[i].desc+'</div></div>';
					}

					Dom.get('links-list').innerHTML = pcihtml;

					window.setTimeout(function(){

						var deleteLinks = Dom.getElementsByClassName('link-delete','button','links-list');
						var deleteButtons = [];

						if (deleteLinks) {
							for (j = 0;j<deleteLinks.length;j++) {
								//deleteButtons[j] = new YAHOO.widget.Button(deleteLinks[j]);
								deleteLinks[j].onclick = function(){	

									var mid = this.id.split("-")[2];
									
									if (!window.confirm("This action cannot be undone - are you sure?")) {
										return false;
									} else {
										var dObj = YAHOO.util.Connect.asyncRequest('GET', 'http://switchedonmag.org/goDelLink&id='+mid, {						
											//customevents:{ 
											//	onStart:nrs.cEvents.start,
											//	onFailure:nrs.cEvents.failure,
											//	onComplete:nrs.cEvents.complete
											//},
											success: function(o) {
												try  { response = JSON.parse(o.responseText);}
												catch (e){window.alert("Error in parsing response from server.");return;}

												if (response.error) {
													nrs.error = response.error;
													window.alert(nrs.error);

												} else {
													loadLinks();
												}
											},

											timeout: 5000
										});	
									}
								};
							}
						}
					},0);
				}
			},
			timeout: 5000
		});
	};


	var loadPollChoices = function() {

		var ins = Dom.get('issue-newnum').value;

		var cObj = Connect.asyncRequest('GET', 'http://switchedonmag.org/loadPollChoices&issue='+ins, {
			success: function(o) {
				try  { response = JSON.parse(o.responseText);}
				catch (e){window.alert("Error in parsing response from server.");return;}

				if (response.error) {
					nrs.error = response.error;
					window.alert(nrs.error);

				} else {
					var pc = response.choices;
					var pcihtml = '';
					
					if (pc.length == 0)
						pcihtml = 'No poll options added yet.';

					else {							 
						for (i = 0;i < pc.length;i++)
							pcihtml += '<div class="yui-ge" style="width: 100%; overflow: hidden; margin-bottom: .5em;"><div class="yui-u first">'+pc[i].text+'</div><div class="yui-u"><button class="pollchoice-delete" id="pollchoice-delete-'+pc[i].id+'">Delete</button></div></div>';
					}

					Dom.get('pollchoices-list').innerHTML = pcihtml;

					window.setTimeout(function(){

						var deleteLinks = Dom.getElementsByClassName('pollchoice-delete','button','pollchoices-list');
						var deleteButtons = [];

						if (deleteLinks) {
							for (j = 0;j<deleteLinks.length;j++ ) {
								//deleteButtons[j] = new YAHOO.widget.Button(deleteLinks[i]);
								deleteLinks[j].onclick = function(){	

									var mid = this.id.split("-")[2];
									
									if (!window.confirm("This action cannot be undone - are you sure?")) {
										return false;
									} else {
										var dObj = YAHOO.util.Connect.asyncRequest('GET', 'http://switchedonmag.org/goDelPollChoice&id='+mid, {						
											/*customevents:{ 
												onStart:nrs.cEvents.start,
												onFailure:nrs.cEvents.failure,
												onComplete:nrs.cEvents.complete
											},
											*/
											success: function(o) {
												try  { response = JSON.parse(o.responseText);}
												catch (e){window.alert("Error in parsing response from server.");return;}

												if (response.error) {
													nrs.error = response.error;
													window.alert(nrs.error);

												} else {
													loadPollChoices();
												}
											},

											timeout: 5000
										});	
									}
								};
							}
						}
					},0);
				}
			},
			timeout: 5000
		});
	};

	window.onload = function(){


	};//--window.onload


	Event.onDOMReady(function() { 	

		if (Dom.get('inthisissuelinks'))
		{
			var issuelinks = Dom.get('inthisissuelinks').getElementsByTagName('a');

			issuelinks[0].onclick = function(){
				
				if (!Dom.hasClass(this,'a')) {
					Dom.setStyle('article','display','block');
					Dom.setStyle('letters','display','none');
					Dom.setStyle('links','display','none');
					Dom.addClass(this,"a");
					Dom.removeClass(issuelinks[1],"a");
					Dom.removeClass(issuelinks[2],"a");
				}
				return false;
			}

			issuelinks[1].onclick = function(){

				if (!Dom.hasClass(this,'a')) {
					Dom.setStyle('letters','display','block');
					Dom.setStyle('article','display','none');
					Dom.setStyle('links','display','none');
					Dom.addClass(this,"a");
					Dom.removeClass(issuelinks[0],"a");
					Dom.removeClass(issuelinks[2],"a");
				}
				return false;
			}

			issuelinks[2].onclick = function(){

				if (!Dom.hasClass(this,'a')) {
					Dom.setStyle('links','display','block');
					Dom.setStyle('letters','display','none');
					Dom.setStyle('article','display','none');
					Dom.addClass(this,"a");
					Dom.removeClass(issuelinks[0],"a");
					Dom.removeClass(issuelinks[1],"a");
				}
				return false;
			}
		}

		if (Dom.get('swo-poll-form'))
		{	
			if (Dom.get('poll-viewresults-link'))
			{
				Dom.get('poll-viewresults-link').onclick = function(){
					flipFrontPoll(); 
					return false;
				};	

				var pollchoiceinputs = Dom.getElementsByClassName('poll-choices','div')[0].getElementsByTagName('input');
				var pollchoicelabels = Dom.getElementsByClassName('poll-choices','div')[0].getElementsByTagName('label');

				for (i = 0; i < pollchoiceinputs.length; i++) {
					pollchoiceinputs[i].onclick = function() {submitpoll(this.value);};
				}
			}
		}

		if (Dom.get('swo-contact-form'))
		{
			Dom.get('swo-contact-form').onsubmit = function() {return false;}
		
			var submitMessage = new YAHOO.widget.Button("submit-message");
			
			submitMessage.on("click",function() {
				
				if (Dom.get('contact-msg').value != '' && Dom.get('contact-msg').value != 'Type your message here...')
				{
					this.set('disabled',true);
					submitmessage();
				}
				else {
					window.alert("Please add a message before submitting.");
				}
			});
		}

		if (Dom.get('issue-year'))
		{
			var issueYear = Dom.get('issue-year');

			issueYear.onchange = function() {

				var yearBoxes = Dom.getElementsByClassName('issues-yearbox','div');

				if (this.value != 'All') {
					Dom.setStyle(yearBoxes,'display','none');
					Dom.setStyle('issues-'+this.value,'display','block');
				}
				else {
					Dom.setStyle(yearBoxes,'display','block');
				}
			}
		}

		if (Dom.get('login'))
		{
			var resetPasswordButton = new YAHOO.widget.Button('link-resetpassword');
			var loginButton = new YAHOO.widget.Button('login-form-submit');

			Event.onAvailable(Dom.get('login-form'),function(){
			
				Dom.setStyle(this,'visibility','visible');
			
			});
		}

		
		if (Dom.get('admin'))
		{
			if (Dom.hasClass(Dom.get('admin'),'add'))
			{
				nrs.articleEditor = new YAHOO.widget.Editor('article-text', { 
					height: '200px', 
					width: '752px', 
					animate: true //Animates the opening, closing and moving of Editor windows 
				}); 

				nrs.letterfromEditor = new YAHOO.widget.SimpleEditor('letter-from-text', { 
					height: '200px', 
					width: '370px', 
					animate: true, //Animates the opening, closing and moving of Editor windows
					toolbar: {
						titlebar: 'Letter from reader...',
						buttons: [ 
							{ group: 'fontstyle', label: 'Font Name and Size', 
								buttons: [ 
									{ type: 'select', label: 'Arial', value: 'fontname', disabled: true, 
										menu: [ 
											{ text: 'Arial', checked: true }, 
											{ text: 'Arial Black' }, 
											{ text: 'Comic Sans MS' }, 
											{ text: 'Courier New' }, 
											{ text: 'Lucida Console' }, 
											{ text: 'Tahoma' }, 
											{ text: 'Times New Roman' }, 
											{ text: 'Trebuchet MS' }, 
											{ text: 'Verdana' } 
										] 
									}, 
									{ type: 'spin', label: '13', value: 'fontsize', range: [ 9, 75 ], disabled: true } 
								] 
							}, 
							{ type: 'separator' }, 
							{ group: 'textstyle', label: 'Font Style', 
								buttons: [ 
									{ type: 'push', label: 'Bold CTRL + SHIFT + B', value: 'bold' }, 
									{ type: 'push', label: 'Italic CTRL + SHIFT + I', value: 'italic' }, 
									{ type: 'push', label: 'Underline CTRL + SHIFT + U', value: 'underline' }, 
									{ type: 'separator' }, 
									{ type: 'color', label: 'Font Color', value: 'forecolor', disabled: true }, 
									{ type: 'color', label: 'Background Color', value: 'backcolor', disabled: true } 
								] 
							},
						]
					}
				}); 
				nrs.letterfromEditor._defaultToolbar.buttonType = 'advanced';
			
				nrs.lettertoEditor = new YAHOO.widget.SimpleEditor('letter-to-text', { 
					height: '200px', 
					width: '370px', 
					animate: true, //Animates the opening, closing and moving of Editor windows 
					toolbar: {
						titlebar: 'Letter to audience...',
						buttons: [ 
							{ group: 'fontstyle', label: 'Font Name and Size', 
								buttons: [ 
									{ type: 'select', label: 'Arial', value: 'fontname', disabled: true, 
										menu: [ 
											{ text: 'Arial', checked: true }, 
											{ text: 'Arial Black' }, 
											{ text: 'Comic Sans MS' }, 
											{ text: 'Courier New' }, 
											{ text: 'Lucida Console' }, 
											{ text: 'Tahoma' }, 
											{ text: 'Times New Roman' }, 
											{ text: 'Trebuchet MS' }, 
											{ text: 'Verdana' } 
										] 
									}, 
									{ type: 'spin', label: '13', value: 'fontsize', range: [ 9, 75 ], disabled: true } 
								] 
							}, 
							{ type: 'separator' }, 
							{ group: 'textstyle', label: 'Font Style', 
								buttons: [ 
									{ type: 'push', label: 'Bold CTRL + SHIFT + B', value: 'bold' }, 
									{ type: 'push', label: 'Italic CTRL + SHIFT + I', value: 'italic' }, 
									{ type: 'push', label: 'Underline CTRL + SHIFT + U', value: 'underline' }, 
									{ type: 'separator' }, 
									{ type: 'color', label: 'Font Color', value: 'forecolor', disabled: true }, 
									{ type: 'color', label: 'Background Color', value: 'backcolor', disabled: true } 
								] 
							},
						]
					}
				}); 
				nrs.lettertoEditor._defaultToolbar.buttonType = 'advanced';

				nrs.articleEditor.render();
				nrs.letterfromEditor.render(); 
				nrs.lettertoEditor.render(); 

				nrs.adminButtons = [];
				nrs.adminButtons[0] = [];

				nrs.adminButtons[0].push(new YAHOO.widget.Button('button-save'));
				nrs.adminButtons[0].push(new YAHOO.widget.Button('button-preview',{disabled: (allowPreview == 1 ? false : true)}));
				nrs.adminButtons[0].push(new YAHOO.widget.Button('button-publish',{disabled: (allowPreview == 1 ? false : true)}));
				nrs.adminButtons[0].push(new YAHOO.widget.Button('button-reset',{disabled: (allowPreview == 1 ? false : true)}));

				Dom.get('add-issue-form').onsubmit = function(){return false;}

				for (i = 0; i < nrs.adminButtons.length; i++)
				{
					for (j = 0; j < nrs.adminButtons[i].length; j++)
					{
						switch (j)
						{

						case 0:
							nrs.adminButtons[i][j].on('click',function(){
								Dom.setStyle('add-issue-form','display','none');
								Dom.setStyle('add-issue-form-saving','display','block');
								nrs.articleEditor.saveHTML();
								var formObject = Dom.get('add-issue-form'); 
								Connect.setForm(formObject); 

								var cObj = YAHOO.util.Connect.asyncRequest('POST', 'http://switchedonmag.org/_goSaveNewIssue', {
								
									success: function(o) {
										try  { response = JSON.parse(o.responseText);}
										catch (e){window.alert("Error in parsing response from server.");return;}

										if (response.error) {
											nrs.error = response.error;
											window.alert(nrs.error);
										} else {				
											window.setTimeout(function(){
												Dom.setStyle('add-issue-form-saving','display','none');
												Dom.setStyle('add-issue-form','display','block');
												nrs.adminButtons[0][1].set('disabled',false);
											},1200);
										}
									},

									timeout: 5000
								}); 													
							});
						break;

						case 1:
							nrs.adminButtons[i][j].on('click',function(){
								var fullURL = "http://switchedonmag.org/?preview=1";
								var previewWindow = window.open(fullURL,'previewWindow','width='+(Dom.getViewportWidth() - 50)+',height='+(Dom.getViewportHeight() - 20)+',top=20,left=20,scrollbars=yes');
							});
						break;

						case 2:
							nrs.adminButtons[i][j].on('click',function(){
								if (window.confirm("This action is permanent - are you sure?"))
								{
									Dom.setStyle('add-issue-form','display','none');
									Dom.setStyle('add-issue-form-saving','display','block');

									var formObject = Dom.get('add-issue-form'); 
									Connect.setForm(formObject); 

									var cObj = YAHOO.util.Connect.asyncRequest('POST', 'http://switchedonmag.org/_goPublishNewIssue', {
									
										success: function(o) {
											try  { response = JSON.parse(o.responseText);}
											catch (e){window.alert("Error in parsing response from server.");return;}

											if (response.error) {
												nrs.error = response.error;
												window.alert(nrs.error);
											} else {				
												window.setTimeout(function(){
													document.location.href="http://switchedonmag.org";
												},1200);
											}
										},

										timeout: 5000
									}); 				
								}
							});
						break;


						case 3:
							nrs.adminButtons[i][j].on('click',function() {

								if (window.confirm("This will empty everything out for this latest unpublished issue.  Are you sure?"))
								{
									Dom.setStyle('add-issue-form','display','none');
									Dom.setStyle('add-issue-form-saving','display','block');

									var formObject = Dom.get('add-issue-form'); 
									Connect.setForm(formObject); 

									var cObj = YAHOO.util.Connect.asyncRequest('POST', 'http://switchedonmag.org/_goResetNewIssue', {
									
										success: function(o) {
											try  { response = JSON.parse(o.responseText);}
											catch (e){window.alert("Error in parsing response from server.");return;}

											if (response.error) {
												nrs.error = response.error;
												window.alert(nrs.error);
											} else {				
												window.setTimeout(function(){
													document.location.href="http://switchedonmag.org/admin/add";
												},1200);
											}
										},

										timeout: 5000
									}); 
								}

							});
						break;
						
						}
					}
				}

				var btnAddLetter = new YAHOO.widget.Button('button-add-letter');
				var btnAddLink = new YAHOO.widget.Button('button-add-link');
				var btnAddPollChoice = new YAHOO.widget.Button('button-add-pollchoice');

				btnAddLetter.on("click",function(){
					var b = this;
					b.set('disabled',true);

					nrs.letterfromEditor.saveHTML();
					nrs.lettertoEditor.saveHTML();

					var waiter = Dom.getPreviousSibling('letters-list');
					Dom.setStyle(waiter,'display','block');
					Dom.setStyle('letters-list','display','none');

					addLetter();

					window.setTimeout(function(){
						Dom.setStyle(waiter,'display','none');
						Dom.setStyle('letters-list','display','block');
					
						b.set('disabled',false);
					},1500);
				});

				btnAddLink.on("click",function(){
					var b = this;
					b.set('disabled',true);
					var waiter = Dom.getPreviousSibling('links-list');
					Dom.setStyle(waiter,'display','block');
					Dom.setStyle('links-list','display','none');

					addLink();

					window.setTimeout(function(){
						Dom.setStyle(waiter,'display','none');
						Dom.setStyle('links-list','display','block');
					
						b.set('disabled',false);
					},1500);
				});

				btnAddPollChoice.on("click",function(){
					var b = this;
					b.set('disabled',true);
					var waiter = Dom.getPreviousSibling('pollchoices-list');
					Dom.setStyle(waiter,'display','block');
					Dom.setStyle('pollchoices-list','display','none');

					addPollChoice();

					window.setTimeout(function(){
						Dom.setStyle(waiter,'display','none');
						Dom.setStyle('pollchoices-list','display','block');
					
						b.set('disabled',false);
					},1500);

				});

				if (Dom.get('add-issue-form'))
				{
					Event.onAvailable(Dom.get('add-issue-form'),function(){
					
						Dom.setStyle(this,'visibility','visible');
					});
				}

				loadLetters();
				loadLinks();
				loadPollChoices();
			}

			////////////////////////////////////////////////////////////////////////////////
			else if (Dom.hasClass(Dom.get('admin'),'msgs')) {
				var deleteLinks = Dom.getElementsByClassName('msg-delete','button');
				var deleteButtons = [];

				if (deleteLinks)
				{
					for (i=0; i<deleteLinks.length; i++)
					{
						deleteButtons[i] = new YAHOO.widget.Button(deleteLinks[i]);

						deleteButtons[i].on('click', function(){	

							var mid = this._button.id.split("-")[3];
							
							if (!window.confirm("This action cannot be undone - are you sure?")) {
								return false;
							} else {
								document.location.href="http://switchedonmag.org/admin/msgs/delete&mid="+mid;
							}
						});
					}
				}
			}

			Dom.setStyle(Dom.getElementsByClassName('admin-buttonstrip','div'),'display','block');

			Dom.setStyle(Dom.getElementsByClassName('sub','div'),'display','block');
		}

	});//--Event.onDomReady

})(); //--function()
