111 lines
		
	
	
	
		
			3.3 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
		
		
			
		
	
	
			111 lines
		
	
	
	
		
			3.3 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
|   | <!DOCTYPE html> | ||
|  | <html xmlns="http://www.w3.org/1999/xhtml"> | ||
|  | <head> | ||
|  | 	<title></title> | ||
|  | 	<meta http-equiv="X-UA-Compatible" content="IE=edge" /> | ||
|  | 	<script type="text/javascript" src="../../tiny_mce.js"></script> | ||
|  | 	<script type="text/javascript"> | ||
|  | 		function patchCallback(settings, key) { | ||
|  | 			if (settings[key]) | ||
|  | 				settings[key] = "window.opener." + settings[key]; | ||
|  | 		} | ||
|  | 
 | ||
|  | 		var settings = {}, paSe = window.opener.tinyMCE.activeEditor.settings, oeID = window.opener.tinyMCE.activeEditor.id; | ||
|  | 
 | ||
|  | 		// Clone array | ||
|  | 		for (var n in paSe) | ||
|  | 			settings[n] = paSe[n]; | ||
|  | 
 | ||
|  | 		// Override options for fullscreen | ||
|  | 		for (var n in paSe.fullscreen_settings) | ||
|  | 			settings[n] = paSe.fullscreen_settings[n]; | ||
|  | 
 | ||
|  | 		// Patch callbacks, make them point to window.opener | ||
|  | 		patchCallback(settings, 'urlconverter_callback'); | ||
|  | 		patchCallback(settings, 'insertlink_callback'); | ||
|  | 		patchCallback(settings, 'insertimage_callback'); | ||
|  | 		patchCallback(settings, 'setupcontent_callback'); | ||
|  | 		patchCallback(settings, 'save_callback'); | ||
|  | 		patchCallback(settings, 'onchange_callback'); | ||
|  | 		patchCallback(settings, 'init_instance_callback'); | ||
|  | 		patchCallback(settings, 'file_browser_callback'); | ||
|  | 		patchCallback(settings, 'cleanup_callback'); | ||
|  | 		patchCallback(settings, 'execcommand_callback'); | ||
|  | 		patchCallback(settings, 'oninit'); | ||
|  | 
 | ||
|  | 		// Set options | ||
|  | 		delete settings.id; | ||
|  | 		settings['mode'] = 'exact'; | ||
|  | 		settings['elements'] = 'fullscreenarea'; | ||
|  | 		settings['add_unload_trigger'] = false; | ||
|  | 		settings['ask'] = false; | ||
|  | 		settings['document_base_url'] = window.opener.tinyMCE.activeEditor.documentBaseURI.getURI(); | ||
|  | 		settings['fullscreen_is_enabled'] = true; | ||
|  | 		settings['fullscreen_editor_id'] = oeID; | ||
|  | 		settings['theme_advanced_resizing'] = false; | ||
|  | 		settings['strict_loading_mode'] = true; | ||
|  | 
 | ||
|  | 		settings.save_onsavecallback = function() { | ||
|  | 			window.opener.tinyMCE.get(oeID).setContent(tinyMCE.get('fullscreenarea').getContent({format : 'raw'}), {format : 'raw'}); | ||
|  | 			window.opener.tinyMCE.get(oeID).execCommand('mceSave'); | ||
|  | 			window.close(); | ||
|  | 		}; | ||
|  | 
 | ||
|  | 		function unloadHandler(e) { | ||
|  | 			moveContent(); | ||
|  | 		} | ||
|  | 
 | ||
|  | 		function moveContent() { | ||
|  | 			window.opener.tinyMCE.get(oeID).setContent(tinyMCE.activeEditor.getContent()); | ||
|  | 		} | ||
|  | 
 | ||
|  | 		function closeFullscreen() { | ||
|  | 			moveContent(); | ||
|  | 			window.close(); | ||
|  | 		} | ||
|  | 
 | ||
|  | 		function doParentSubmit() { | ||
|  | 			moveContent(); | ||
|  | 
 | ||
|  | 			if (window.opener.tinyMCE.selectedInstance.formElement.form) | ||
|  | 				window.opener.tinyMCE.selectedInstance.formElement.form.submit(); | ||
|  | 
 | ||
|  | 			window.close(); | ||
|  | 
 | ||
|  | 			return false; | ||
|  | 		} | ||
|  | 
 | ||
|  | 		function render() { | ||
|  | 			var e = document.getElementById('fullscreenarea'), vp, ed, ow, oh, dom = tinymce.DOM; | ||
|  | 
 | ||
|  | 			e.value = window.opener.tinyMCE.get(oeID).getContent(); | ||
|  | 
 | ||
|  | 			vp = dom.getViewPort(); | ||
|  | 			settings.width = vp.w; | ||
|  | 			settings.height = vp.h - 15; | ||
|  | 
 | ||
|  | 			tinymce.dom.Event.add(window, 'resize', function() { | ||
|  | 				var vp = dom.getViewPort(); | ||
|  | 
 | ||
|  | 				tinyMCE.activeEditor.theme.resizeTo(vp.w, vp.h); | ||
|  | 			}); | ||
|  | 
 | ||
|  | 			tinyMCE.init(settings); | ||
|  | 		} | ||
|  | 
 | ||
|  | 		// Add onunload | ||
|  | 		tinymce.dom.Event.add(window, "beforeunload", unloadHandler); | ||
|  | 	</script> | ||
|  | </head> | ||
|  | <body style="margin:0;overflow:hidden;width:100%;height:100%" scrolling="no" scroll="no"> | ||
|  | <form onsubmit="doParentSubmit();"> | ||
|  | <textarea id="fullscreenarea" style="width:100%; height:100%"></textarea> | ||
|  | </form> | ||
|  | 
 | ||
|  | <script type="text/javascript"> | ||
|  | 	render(); | ||
|  | </script> | ||
|  | 
 | ||
|  | </body> | ||
|  | </html> |