User:Gary/editable template examples.js

The topic of User:Gary/editable template examples.js has been of great interest and debate in contemporary society. From its origins to the present, User:Gary/editable template examples.js has played a fundamental role in various aspects of life, influencing culture, economics, politics and interpersonal relationships. Over time, User:Gary/editable template examples.js has evolved and adapted to the changes and challenges of the modern world, creating new opportunities and challenges for individuals and communities. In this article, we will explore the importance and impact of User:Gary/editable template examples.js in our world today, analyzing its implications and possible future perspectives.
/*
	EDITABLE TEMPLATE EXAMPLES
	Description: Converts template examples in <pre> tags to <textarea> so they can be more easily copied.
		Simply click anywhere in the box, then right-click and choose "Select All" (or use the keyboard shortcut). Then copy the text.
*/

if (typeof(unsafeWindow) != 'undefined')
{
	mw = unsafeWindow.mw;
}

$(editableTemplateExamples);

function editableTemplateExamples()
{
	if (mw.config.get('wgCanonicalNamespace') != 'Template' || mw.util.getParamValue('disable') == 'editexamples') return false;
	
	// Convert each <pre> to <textarea>
	$('#template-documentation pre').each(function()
	{
		var pre = $(this);
		
		// Continue to next if current node is color coded source code.
		if (pre.parent().parent().hasClass('mw-geshi')) return true;
		
		var contents = pre.contents().first();
		var rows = contents.nodeValue.split('\n').length;
		var textarea = $('<textarea rows="' + rows + '"></textarea>').append(contents);
		textarea.css('width', (textarea.attr('cols') + 5) + 'em');
		pre.replaceWith(textarea);
	});
}