forked from extern/egroupware
0a28f3812e
- Inclusion of the following javascript directories: * Connector: javascript object to interface xmlhttprequest object. This object allows asynchronous posts and support for messages while this post is being done, such as "wait, contacting server", etc. * JsAPI: general javascript functions and methods * jsolait: performs conversion from a xmlrpc message to a javascript object * xmlRpcMsgCreator: performs conversion from a javascript object to a xmlrpc message * dynapi: cross-browser class to draw layers - Update in setup version: now is 1.0.1.008; Update your versions. There was made a change in phpgw_vfs2_files table in handling of modified files. - Upgrade of vfs2 classes and PclZip class - Changes in javascript object and common object to allow the javascript backend to applications to work (now just filescenter will use it...)
115 lines
3.1 KiB
JavaScript
115 lines
3.1 KiB
JavaScript
// htmlArea v3.0 - Copyright (c) 2002, 2003 interactivetools.com, inc.
|
|
// This copyright notice MUST stay intact for use (see license.txt).
|
|
//
|
|
// Portions (c) dynarch.com, 2003
|
|
//
|
|
// A free WYSIWYG editor replacement for <textarea> fields.
|
|
// For full source code and docs, visit http://www.interactivetools.com/
|
|
//
|
|
// Version 3.0 developed by Mihai Bazon.
|
|
// http://dynarch.com/mishoo
|
|
//
|
|
// $Id$
|
|
|
|
function getAbsolutePos(el) {
|
|
var r = { x: el.offsetLeft, y: el.offsetTop };
|
|
if (el.offsetParent) {
|
|
var tmp = getAbsolutePos(el.offsetParent);
|
|
r.x += tmp.x;
|
|
r.y += tmp.y;
|
|
}
|
|
return r;
|
|
};
|
|
|
|
function comboSelectValue(c, val) {
|
|
var ops = c.getElementsByTagName("option");
|
|
for (var i = ops.length; --i >= 0;) {
|
|
var op = ops[i];
|
|
op.selected = (op.value == val);
|
|
}
|
|
c.value = val;
|
|
};
|
|
|
|
function __dlg_onclose() {
|
|
opener.Dialog._return(null);
|
|
};
|
|
|
|
function __dlg_init(bottom) {
|
|
var body = document.body;
|
|
var body_height = 0;
|
|
if (typeof bottom == "undefined") {
|
|
var div = document.createElement("div");
|
|
body.appendChild(div);
|
|
var pos = getAbsolutePos(div);
|
|
body_height = pos.y;
|
|
} else {
|
|
var pos = getAbsolutePos(bottom);
|
|
body_height = pos.y + bottom.offsetHeight;
|
|
}
|
|
window.dialogArguments = opener.Dialog._arguments;
|
|
if (!document.all) {
|
|
window.sizeToContent();
|
|
window.sizeToContent(); // for reasons beyond understanding,
|
|
// only if we call it twice we get the
|
|
// correct size.
|
|
window.addEventListener("unload", __dlg_onclose, true);
|
|
window.innerWidth = body.offsetWidth + 5;
|
|
window.innerHeight = body_height + 2;
|
|
// center on parent
|
|
var x = opener.screenX + (opener.outerWidth - window.outerWidth) / 2;
|
|
var y = opener.screenY + (opener.outerHeight - window.outerHeight) / 2;
|
|
window.moveTo(x, y);
|
|
} else {
|
|
// window.dialogHeight = body.offsetHeight + 50 + "px";
|
|
// window.dialogWidth = body.offsetWidth + "px";
|
|
window.resizeTo(body.offsetWidth, body_height);
|
|
var ch = body.clientHeight;
|
|
var cw = body.clientWidth;
|
|
window.resizeBy(body.offsetWidth - cw, body_height - ch);
|
|
var W = body.offsetWidth;
|
|
var H = 2 * body_height - ch;
|
|
var x = (screen.availWidth - W) / 2;
|
|
var y = (screen.availHeight - H) / 2;
|
|
window.moveTo(x, y);
|
|
}
|
|
document.body.onkeypress = __dlg_close_on_esc;
|
|
};
|
|
|
|
function __dlg_translate(i18n) {
|
|
var types = ["input", "select", "legend", "span", "option", "td", "button", "div"];
|
|
for (var type = 0; type < types.length; ++type) {
|
|
var spans = document.getElementsByTagName(types[type]);
|
|
for (var i = spans.length; --i >= 0;) {
|
|
var span = spans[i];
|
|
if (span.firstChild && span.firstChild.data) {
|
|
var txt = i18n[span.firstChild.data];
|
|
if (txt)
|
|
span.firstChild.data = txt;
|
|
}
|
|
if (span.title) {
|
|
var txt = i18n[span.title];
|
|
if (txt)
|
|
span.title = txt;
|
|
}
|
|
}
|
|
}
|
|
var txt = i18n[document.title];
|
|
if (txt)
|
|
document.title = txt;
|
|
};
|
|
|
|
// closes the dialog and passes the return info upper.
|
|
function __dlg_close(val) {
|
|
opener.Dialog._return(val);
|
|
window.close();
|
|
};
|
|
|
|
function __dlg_close_on_esc(ev) {
|
|
ev || (ev = window.event);
|
|
if (ev.keyCode == 27) {
|
|
window.close();
|
|
return false;
|
|
}
|
|
return true;
|
|
};
|