var linkPlugin = new Class
(
	{
		initialize: function(parent)
		{
			this.parent = parent;
		},

		load: function()
		{
			if(this.parent.position)
			{
				value = this.parent.element.getValue();
				start = this.parent.position.selectionStart;
				end = this.parent.position.selectionEnd;

				$('ubbLinkConfigName').value = value.substr(start, end-start);
				$('ubbLinkConfigInternalName').value = value.substr(start, end-start);
				
				/*pageFinders();*/
			}
		},

		complete: function()
		{
			var label = '';
			var url = '';

			if($('ubbLinkConfigTypeExternal').checked == true)
			{
				if($('ubbLinkConfigName'))
				{
					label = $('ubbLinkConfigName').value;
				}

				if($('ubbLinkConfigUrl'))
				{
					url = $('ubbLinkConfigUrl').value;
				}

				if($('ubbLinkConfigUrlIsEmail').checked)
				{
					url = 'mailto:' + url;

					if($('ubbLinkConfigEmailSubject'))
					{
						url = url + '?subject=' + $('ubbLinkConfigEmailSubject').value;
					}
				}
			}
			else
			{
				if($('ubbLinkConfigInternalName'))
				{
					label = $('ubbLinkConfigInternalName').value;
				}

				if($('ubbLinkConfigInternalId'))
				{
					url = $('ubbLinkConfigInternalId').value;
				}

				if($('ubbLinkConfigInternalAbstract').checked)
				{
					url += ' abstract';
				}
			}

			this.parent.insertTag(null, 'link', true, url, label);
		},

		view: function()
		{
				var url = site_url + "js/custom/link.html";

				new Ajax(url, {
					method: 'get',
					update: this.parent.advancedConfig,
					onComplete: (function(){this.parent.buildSubmitButton(this); this.load()}).bind(this)
				}).request();
			return '';
		}
	}
);

