From 4315b0086b14cd5266b4cb824c3bd95aa550240c Mon Sep 17 00:00:00 2001
From: svncommit <devs@roundcube.net>
Date: Mon, 10 Dec 2007 23:20:01 -0500
Subject: [PATCH] added ability to insert attached images in HTML editor

---
 program/js/tiny_mce/utils/mclayer.js |  420 ++++++++++++++++++++++++++++++------------------------------
 1 files changed, 210 insertions(+), 210 deletions(-)

diff --git a/program/js/tiny_mce/utils/mclayer.js b/program/js/tiny_mce/utils/mclayer.js
index 1b347f7..23982db 100644
--- a/program/js/tiny_mce/utils/mclayer.js
+++ b/program/js/tiny_mce/utils/mclayer.js
@@ -1,210 +1,210 @@
-/**
- * $Id: mclayer.js 162 2007-01-03 16:16:52Z spocke $
- *
- * Moxiecode floating layer script.
- *
- * @author Moxiecode
- * @copyright Copyright � 2004-2007, Moxiecode Systems AB, All rights reserved.
- */
-
-function MCLayer(id) {
-	this.id = id;
-	this.settings = new Array();
-	this.blockerElement = null;
-	this.isMSIE = navigator.appName == "Microsoft Internet Explorer";
-	this.events = false;
-	this.autoHideCallback = null;
-}
-
-MCLayer.prototype = {
-	moveRelativeTo : function(re, p, a) {
-		var rep = this.getAbsPosition(re);
-		var w = parseInt(re.offsetWidth);
-		var h = parseInt(re.offsetHeight);
-		var x, y;
-
-		switch (p) {
-			case "tl":
-				break;
-
-			case "tr":
-				x = rep.absLeft + w;
-				y = rep.absTop;
-				break;
-
-			case "bl":
-				break;
-
-			case "br":
-				break;
-		}
-
-		this.moveTo(x, y);
-	},
-
-	moveBy : function(dx, dy) {
-		var e = this.getElement();
-		var x = parseInt(e.style.left);
-		var y = parseInt(e.style.top);
-
-		e.style.left = (x + dx) + "px";
-		e.style.top = (y + dy) + "px";
-
-		this.updateBlocker();
-	},
-
-	moveTo : function(x, y) {
-		var e = this.getElement();
-
-		e.style.left = x + "px";
-		e.style.top = y + "px";
-
-		this.updateBlocker();
-	},
-
-	show : function() {
-		MCLayer.visibleLayer = this;
-
-		this.getElement().style.display = 'block';
-		this.updateBlocker();
-	},
-
-	hide : function() {
-		this.getElement().style.display = 'none';
-		this.updateBlocker();
-	},
-
-	setAutoHide : function(s, cb) {
-		this.autoHideCallback = cb;
-		this.registerEventHandlers();
-	},
-
-	getElement : function() {
-		return document.getElementById(this.id);
-	},
-
-	updateBlocker : function() {
-		if (!this.isMSIE)
-			return;
-
-		var e = this.getElement();
-		var b = this.getBlocker();
-		var x = this.parseInt(e.style.left);
-		var y = this.parseInt(e.style.top);
-		var w = this.parseInt(e.offsetWidth);
-		var h = this.parseInt(e.offsetHeight);
-
-		b.style.left = x + 'px';
-		b.style.top = y + 'px';
-		b.style.width = w + 'px';
-		b.style.height = h + 'px';
-		b.style.display = e.style.display;
-	},
-
-	getBlocker : function() {
-		if (!this.blockerElement) {
-			var d = document, b = d.createElement("iframe");
-
-			b.style.cssText = 'display: none; left: 0px; position: absolute; top: 0';
-			b.src = 'javascript:false;';
-			b.frameBorder = '0';
-			b.scrolling = 'no';
-
-			d.body.appendChild(b);
-			this.blockerElement = b;
-		}
-
-		return this.blockerElement;
-	},
-
-	getAbsPosition : function(n) {
-		var p = {absLeft : 0, absTop : 0};
-
-		while (n) {
-			p.absLeft += n.offsetLeft;
-			p.absTop += n.offsetTop;
-			n = n.offsetParent;
-		}
-
-		return p;
-	},
-
-	registerEventHandlers : function() {
-		if (!this.events) {
-			var d = document;
-
-			this.addEvent(d, 'mousedown', MCLayer.prototype.onMouseDown);
-
-			this.events = true;
-		}
-	},
-
-	addEvent : function(o, n, h) {
-		if (o.attachEvent)
-			o.attachEvent("on" + n, h);
-		else
-			o.addEventListener(n, h, false);
-	},
-
-	onMouseDown : function(e) {
-		e = typeof(e) == "undefined" ? window.event : e;
-		var b = document.body;
-		var l = MCLayer.visibleLayer;
-
-		if (l) {
-			var mx = l.isMSIE ? e.clientX + b.scrollLeft : e.pageX;
-			var my = l.isMSIE ? e.clientY + b.scrollTop : e.pageY;
-			var el = l.getElement();
-			var x = parseInt(el.style.left);
-			var y = parseInt(el.style.top);
-			var w = parseInt(el.offsetWidth);
-			var h = parseInt(el.offsetHeight);
-
-			if (!(mx > x && mx < x + w && my > y && my < y + h)) {
-				MCLayer.visibleLayer = null;
-
-				if (l.autoHideCallback && l.autoHideCallback(l, e, mx, my))
-					return true;
-
-				l.hide();
-			}
-		}
-	},
-
-	addCSSClass : function(e, c) {
-		this.removeCSSClass(e, c);
-		var a = this.explode(' ', e.className);
-		a[a.length] = c;
-		e.className = a.join(' ');
-	},
-
-	removeCSSClass : function(e, c) {
-		var a = this.explode(' ', e.className), i;
-
-		for (i=0; i<a.length; i++) {
-			if (a[i] == c)
-				a[i] = '';
-		}
-
-		e.className = a.join(' ');
-	},
-
-	explode : function(d, s) {
-		var ar = s.split(d);
-		var oar = new Array();
-
-		for (var i = 0; i<ar.length; i++) {
-			if (ar[i] != "")
-				oar[oar.length] = ar[i];
-		}
-
-		return oar;
-	},
-
-	parseInt : function(s) {
-		if (s == null || s == '')
-			return 0;
-
-		return parseInt(s);
-	}
-}
+/**
+ * $Id: mclayer.js 162 2007-01-03 16:16:52Z spocke $
+ *
+ * Moxiecode floating layer script.
+ *
+ * @author Moxiecode
+ * @copyright Copyright � 2004-2007, Moxiecode Systems AB, All rights reserved.
+ */
+
+function MCLayer(id) {
+	this.id = id;
+	this.settings = new Array();
+	this.blockerElement = null;
+	this.isMSIE = navigator.appName == "Microsoft Internet Explorer";
+	this.events = false;
+	this.autoHideCallback = null;
+}
+
+MCLayer.prototype = {
+	moveRelativeTo : function(re, p, a) {
+		var rep = this.getAbsPosition(re);
+		var w = parseInt(re.offsetWidth);
+		var h = parseInt(re.offsetHeight);
+		var x, y;
+
+		switch (p) {
+			case "tl":
+				break;
+
+			case "tr":
+				x = rep.absLeft + w;
+				y = rep.absTop;
+				break;
+
+			case "bl":
+				break;
+
+			case "br":
+				break;
+		}
+
+		this.moveTo(x, y);
+	},
+
+	moveBy : function(dx, dy) {
+		var e = this.getElement();
+		var x = parseInt(e.style.left);
+		var y = parseInt(e.style.top);
+
+		e.style.left = (x + dx) + "px";
+		e.style.top = (y + dy) + "px";
+
+		this.updateBlocker();
+	},
+
+	moveTo : function(x, y) {
+		var e = this.getElement();
+
+		e.style.left = x + "px";
+		e.style.top = y + "px";
+
+		this.updateBlocker();
+	},
+
+	show : function() {
+		MCLayer.visibleLayer = this;
+
+		this.getElement().style.display = 'block';
+		this.updateBlocker();
+	},
+
+	hide : function() {
+		this.getElement().style.display = 'none';
+		this.updateBlocker();
+	},
+
+	setAutoHide : function(s, cb) {
+		this.autoHideCallback = cb;
+		this.registerEventHandlers();
+	},
+
+	getElement : function() {
+		return document.getElementById(this.id);
+	},
+
+	updateBlocker : function() {
+		if (!this.isMSIE)
+			return;
+
+		var e = this.getElement();
+		var b = this.getBlocker();
+		var x = this.parseInt(e.style.left);
+		var y = this.parseInt(e.style.top);
+		var w = this.parseInt(e.offsetWidth);
+		var h = this.parseInt(e.offsetHeight);
+
+		b.style.left = x + 'px';
+		b.style.top = y + 'px';
+		b.style.width = w + 'px';
+		b.style.height = h + 'px';
+		b.style.display = e.style.display;
+	},
+
+	getBlocker : function() {
+		if (!this.blockerElement) {
+			var d = document, b = d.createElement("iframe");
+
+			b.style.cssText = 'display: none; left: 0px; position: absolute; top: 0';
+			b.src = 'javascript:false;';
+			b.frameBorder = '0';
+			b.scrolling = 'no';
+
+			d.body.appendChild(b);
+			this.blockerElement = b;
+		}
+
+		return this.blockerElement;
+	},
+
+	getAbsPosition : function(n) {
+		var p = {absLeft : 0, absTop : 0};
+
+		while (n) {
+			p.absLeft += n.offsetLeft;
+			p.absTop += n.offsetTop;
+			n = n.offsetParent;
+		}
+
+		return p;
+	},
+
+	registerEventHandlers : function() {
+		if (!this.events) {
+			var d = document;
+
+			this.addEvent(d, 'mousedown', MCLayer.prototype.onMouseDown);
+
+			this.events = true;
+		}
+	},
+
+	addEvent : function(o, n, h) {
+		if (o.attachEvent)
+			o.attachEvent("on" + n, h);
+		else
+			o.addEventListener(n, h, false);
+	},
+
+	onMouseDown : function(e) {
+		e = typeof(e) == "undefined" ? window.event : e;
+		var b = document.body;
+		var l = MCLayer.visibleLayer;
+
+		if (l) {
+			var mx = l.isMSIE ? e.clientX + b.scrollLeft : e.pageX;
+			var my = l.isMSIE ? e.clientY + b.scrollTop : e.pageY;
+			var el = l.getElement();
+			var x = parseInt(el.style.left);
+			var y = parseInt(el.style.top);
+			var w = parseInt(el.offsetWidth);
+			var h = parseInt(el.offsetHeight);
+
+			if (!(mx > x && mx < x + w && my > y && my < y + h)) {
+				MCLayer.visibleLayer = null;
+
+				if (l.autoHideCallback && l.autoHideCallback(l, e, mx, my))
+					return true;
+
+				l.hide();
+			}
+		}
+	},
+
+	addCSSClass : function(e, c) {
+		this.removeCSSClass(e, c);
+		var a = this.explode(' ', e.className);
+		a[a.length] = c;
+		e.className = a.join(' ');
+	},
+
+	removeCSSClass : function(e, c) {
+		var a = this.explode(' ', e.className), i;
+
+		for (i=0; i<a.length; i++) {
+			if (a[i] == c)
+				a[i] = '';
+		}
+
+		e.className = a.join(' ');
+	},
+
+	explode : function(d, s) {
+		var ar = s.split(d);
+		var oar = new Array();
+
+		for (var i = 0; i<ar.length; i++) {
+			if (ar[i] != "")
+				oar[oar.length] = ar[i];
+		}
+
+		return oar;
+	},
+
+	parseInt : function(s) {
+		if (s == null || s == '')
+			return 0;
+
+		return parseInt(s);
+	}
+}

--
Gitblit v1.9.1