/*******************************************************************************

* KindEditor - WYSIWYG HTML Editor for Internet

* Copyright (C) 2006-2011 kindsoft.net

*

* @author Roddy <luolonghao@gmail.com>

* @site http://www.kindsoft.net/

* @licence http://www.kindsoft.net/license.php

*******************************************************************************/



KindEditor.plugin('link', function(K) {

	var self = this, name = 'link';

	self.plugin.link = {

		edit : function() {

			var lang = self.lang(name + '.'),

				html = '<div style="padding:20px;">' +

					//url

					'<div class="ke-dialog-row">' +

					'<label for="keUrl" style="width:60px;">' + lang.url + '</label>' +

					'<input class="ke-input-text" type="text" id="keUrl" name="url" value="" style="width:260px;" /></div>' +

					//type

					'<div class="ke-dialog-row"">' +

					'<label for="keType" style="width:60px;">' + lang.linkType + '</label>' +

					'<select id="keType" name="type"></select>' +

					'</div>' +

					'</div>',

				dialog = self.createDialog({

					name : name,

					width : 450,

					title : self.lang(name),

					body : html,

					yesBtn : {

						name : self.lang('yes'),

						click : function(e) {

							var url = K.trim(urlBox.val());

							if (url == 'http://' || K.invalidUrl(url)) {

								alert(self.lang('invalidUrl'));

								urlBox[0].focus();

								return;

							}

							self.exec('createlink', url, typeBox.val()).hideDialog().focus();

						}

					}

				}),

				div = dialog.div,

				urlBox = K('input[name="url"]', div),

				typeBox = K('select[name="type"]', div);

			urlBox.val('http://');

			typeBox[0].options[0] = new Option(lang.newWindow, '_blank');

			typeBox[0].options[1] = new Option(lang.selfWindow, '');

			self.cmd.selection();

			var a = self.plugin.getSelectedLink();

			if (a) {

				self.cmd.range.selectNode(a[0]);

				self.cmd.select();

				urlBox.val(a.attr('data-ke-src'));

				typeBox.val(a.attr('target'));

			}

			urlBox[0].focus();

			urlBox[0].select();

		},

		'delete' : function() {

			self.exec('unlink', null);

		}

	};

	self.clickToolbar(name, self.plugin.link.edit);

});

