rem: var r; 
add: var r, i, c, mode, trigger, elements, element, settings, elementId, elm; var selector, deselector, elementRefAr, form; 
context: 	onLoad : function() {		var r;		// Wait for everything to be loaded first		if (tinyMCE.settings.strict_loading_mode && this.loadingIndex != -1) {			window.setTimeout('tinyMCE.onLoad();', 1);			return;		}		if (tinyMCE.isRealIE && window.event.type == "readystatechange" && document.readyState != "complete")			return true;		if (tinyMCE.isLoaded)			return true;		tinyMCE.isLoaded = true;		// IE produces JS error if TinyMCE is placed in a frame		// It seems to have something to do with the selection not beeing		// correctly initialized in IE so this hack solves the problem		if (tinyMCE.isRealIE && document.body) {			r = document.body.createTextRange();			r.collapse(true);			r.select();		}		tinyMCE.dispatchCallback(null, 'onpageload', 'onPageLoad');		for (var c=0; c<tinyMCE.configs.length; c++) {			tinyMCE.settings = tinyMCE.configs[c];			var selector = tinyMCE.getParam("editor_selector");			var deselector = tinyMCE.getParam("editor_deselector");			var elementRefAr = new Array();			// Add submit triggers			if (document.forms && tinyMCE.settings['add_form_submit_trigger'] && !tinyMCE.submitTriggers) {				for (var i=0; i<document.forms.length; i++) {					var form = document.forms[i];					tinyMCE.addEvent(form, "submit", TinyMCE_Engine.prototype.handleEvent);					tinyMCE.addEvent(form, "reset", TinyMCE_Engine.prototype.handleEvent);					tinyMCE.submitTriggers = true; // Do it only once					// Patch the form.submit function					if (tinyMCE.settings['submit_patch']) {						try {							form.mceOldSubmit = form.submit;							form.submit = TinyMCE_Engine.prototype.submitPatch;						} catch (e) {							// Do nothing						}					}				}			}			// Add editor instances based on mode			var mode = tinyMCE.settings['mode'];			switch (mode) {				case "exact":					var elements = tinyMCE.getParam('elements', '', true, ',');					for (var i=0; i<elements.length; i++) {						var element = tinyMCE._getElementById(elements[i]);						var trigger = element ? element.getAttribute(tinyMCE.settings['textarea_trigger']) : "";						if (new RegExp('\\b' + deselector + '\\b').test(tinyMCE.getAttrib(element, "class")))							continue;						if (trigger == "false")							continue;						if ((tinyMCE.settings['ask'] || tinyMCE.settings['convert_on_click']) && element) {							elementRefAr[elementRefAr.length] = element;							continue;						}						if (element)							tinyMCE.addMCEControl(element, elements[i]);						else if (tinyMCE.settings['debug'])							alert("Error: Could not find element by id or name: " + elements[i]);					}				break;				case "specific_textareas":				case "textareas":					var nodeList = document.getElementsByTagName("textarea");					for (var i=0; i<nodeList.length; i++) {						var elm = nodeList.item(i);						var trigger = elm.getAttribute(tinyMCE.settings['textarea_trigger']);						if (selector != '' && !new RegExp('\\b' + selector + '\\b').test(tinyMCE.getAttrib(elm, "class")))							continue;						if (selector != '')							trigger = selector != "" ? "true" : "";						if (new RegExp('\\b' + deselector + '\\b').test(tinyMCE.getAttrib(elm, "class")))							continue;						if ((mode == "specific_textareas" && trigger == "true") || (mode == "textareas" && trigger != "false"))							elementRefAr[elementRefAr.length] = elm;					}				break;			}			for (var i=0; i<elementRefAr.length; i++) {				var element = elementRefAr[i];				var elementId = element.name ? element.name : element.id;				if (tinyMCE.settings['ask'] || tinyMCE.settings['convert_on_click']) {					// Focus breaks in Mozilla					if (tinyMCE.isGecko) {						var settings = tinyMCE.settings;						tinyMCE.addEvent(element, "focus", function (e) {window.setTimeout(function() {TinyMCE_Engine.prototype.confirmAdd(e, settings);}, 10);});						if (element.nodeName != "TEXTAREA" && element.nodeName != "INPUT")							tinyMCE.addEvent(element, "click", function (e) {window.setTimeout(function() {TinyMCE_Engine.prototype.confirmAdd(e, settings);}, 10);});						// tinyMCE.addEvent(element, "mouseover", function (e) {window.setTimeout(function() {TinyMCE_Engine.prototype.confirmAdd(e, settings);}, 10);});					} else {						var settings = tinyMCE.settings;						tinyMCE.addEvent(element, "focus", function () { TinyMCE_Engine.prototype.confirmAdd(null, settings); });						tinyMCE.addEvent(element, "click", function () { TinyMCE_Engine.prototype.confirmAdd(null, settings); });						// tinyMCE.addEvent(element, "mouseenter", function () { TinyMCE_Engine.prototype.confirmAdd(null, settings); });					}				} else					tinyMCE.addMCEControl(element, elementId);			}			// Handle auto focus			if (tinyMCE.settings['auto_focus']) {				window.setTimeout(function () {					var inst = tinyMCE.getInstanceById(tinyMCE.settings['auto_focus']);					inst.selection.selectNode(inst.getBody(), true, true);					inst.contentWindow.focus();				}, 100);			}			tinyMCE.dispatchCallback(null, 'oninit', 'onInit');		}	},
meta: 3891	/local1/tlutelli/issta_data/temp/all_js/javascript/2007_temp/2007/3891/e8e3862e104280a24076077196c7b5713720de70/tiny_mce_src.js/buggy/plugins/editors/tinymce/jscripts/tiny_mce/tiny_mce_src.js