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

* 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

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



// google code prettify: http://google-code-prettify.googlecode.com/

// http://google-code-prettify.googlecode.com/



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

	var self = this, name = 'code';

	self.clickToolbar(name, function() {

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

			html = ['<div style="padding:10px 20px;">',

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

				'<select class="ke-code-type">',

				'<option value="js">JavaScript</option>',

				'<option value="html">HTML</option>',

				'<option value="css">CSS</option>',

				'<option value="php">PHP</option>',

				'<option value="pl">Perl</option>',

				'<option value="py">Python</option>',

				'<option value="rb">Ruby</option>',

				'<option value="java">Java</option>',

				'<option value="vb">ASP/VB</option>',

				'<option value="cpp">C/C++</option>',

				'<option value="cs">C#</option>',

				'<option value="xml">XML</option>',

				'<option value="bsh">Shell</option>',

				'<option value="">Other</option>',

				'</select>',

				'</div>',

				'<textarea class="ke-textarea" style="width:408px;height:260px;"></textarea>',

				'</div>'].join(''),

			dialog = self.createDialog({

				name : name,

				width : 450,

				title : self.lang(name),

				body : html,

				yesBtn : {

					name : self.lang('yes'),

					click : function(e) {

						var type = K('.ke-code-type', dialog.div).val(),

							code = textarea.val(),

							cls = type === '' ? '' :  ' lang-' + type,

							html = '<pre class="prettyprint' + cls + '">\n' + K.escape(code) + '</pre> ';

						if (K.trim(code) === '') {

							alert(lang.pleaseInput);

							textarea[0].focus();

							return;

						}

						self.insertHtml(html).hideDialog().focus();

					}

				}

			}),

			textarea = K('textarea', dialog.div);

		textarea[0].focus();

	});

});

