mirror of
http://git.whoc.org.uk/git/password-manager.git
synced 2024-11-14 19:09:03 +01:00
Fixed frontend properties and updated MochiKit version
This commit is contained in:
parent
bf7d8191a3
commit
928f3f3ed3
@ -3,6 +3,9 @@
|
|||||||
"mochikit.repository": "http://svn.mochikit.com/mochikit/trunk/",
|
"mochikit.repository": "http://svn.mochikit.com/mochikit/trunk/",
|
||||||
"mochikit.version": "1249"
|
"mochikit.version": "1249"
|
||||||
},
|
},
|
||||||
|
|
||||||
|
"html.template": "index_template.html",
|
||||||
|
|
||||||
"js": [
|
"js": [
|
||||||
"MochiKit/Base.js",
|
"MochiKit/Base.js",
|
||||||
"MochiKit/Iter.js",
|
"MochiKit/Iter.js",
|
||||||
|
@ -8,7 +8,7 @@ See <http://mochikit.com/> for documentation, downloads, license, etc.
|
|||||||
|
|
||||||
***/
|
***/
|
||||||
|
|
||||||
MochiKit.Base._module('Async', '1.5', ['Base']);
|
MochiKit.Base.module(MochiKit, 'Async', '1.5', ['Base']);
|
||||||
|
|
||||||
/** @id MochiKit.Async.Deferred */
|
/** @id MochiKit.Async.Deferred */
|
||||||
MochiKit.Async.Deferred = function (/* optional */ canceller) {
|
MochiKit.Async.Deferred = function (/* optional */ canceller) {
|
||||||
@ -20,28 +20,32 @@ MochiKit.Async.Deferred = function (/* optional */ canceller) {
|
|||||||
this.canceller = canceller;
|
this.canceller = canceller;
|
||||||
this.silentlyCancelled = false;
|
this.silentlyCancelled = false;
|
||||||
this.chained = false;
|
this.chained = false;
|
||||||
|
this.finalized = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
MochiKit.Async.Deferred.prototype = {
|
MochiKit.Async.Deferred.prototype = {
|
||||||
/** @id MochiKit.Async.Deferred.prototype.repr */
|
/** @id MochiKit.Async.Deferred.prototype.repr */
|
||||||
repr: function () {
|
repr: function () {
|
||||||
var state;
|
return 'Deferred(' + this.id + ', ' + this.state() + ')';
|
||||||
if (this.fired == -1) {
|
|
||||||
state = 'unfired';
|
|
||||||
} else if (this.fired === 0) {
|
|
||||||
state = 'success';
|
|
||||||
} else {
|
|
||||||
state = 'error';
|
|
||||||
}
|
|
||||||
return 'Deferred(' + this.id + ', ' + state + ')';
|
|
||||||
},
|
},
|
||||||
|
|
||||||
toString: MochiKit.Base.forwardCall("repr"),
|
toString: MochiKit.Base.forwardCall("repr"),
|
||||||
|
|
||||||
_nextId: MochiKit.Base.counter(),
|
_nextId: MochiKit.Base.counter(),
|
||||||
|
|
||||||
|
/** @id MochiKit.Async.Deferred.prototype.state */
|
||||||
|
state: function () {
|
||||||
|
if (this.fired == -1) {
|
||||||
|
return 'unfired';
|
||||||
|
} else if (this.fired === 0) {
|
||||||
|
return 'success';
|
||||||
|
} else {
|
||||||
|
return 'error';
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
/** @id MochiKit.Async.Deferred.prototype.cancel */
|
/** @id MochiKit.Async.Deferred.prototype.cancel */
|
||||||
cancel: function () {
|
cancel: function (e) {
|
||||||
var self = MochiKit.Async;
|
var self = MochiKit.Async;
|
||||||
if (this.fired == -1) {
|
if (this.fired == -1) {
|
||||||
if (this.canceller) {
|
if (this.canceller) {
|
||||||
@ -50,10 +54,15 @@ MochiKit.Async.Deferred.prototype = {
|
|||||||
this.silentlyCancelled = true;
|
this.silentlyCancelled = true;
|
||||||
}
|
}
|
||||||
if (this.fired == -1) {
|
if (this.fired == -1) {
|
||||||
this.errback(new self.CancelledError(this));
|
if (typeof(e) === 'string') {
|
||||||
|
e = new self.GenericError(e);
|
||||||
|
} else if (!(e instanceof Error)) {
|
||||||
|
e = new self.CancelledError(this);
|
||||||
|
}
|
||||||
|
this.errback(e);
|
||||||
}
|
}
|
||||||
} else if ((this.fired === 0) && (this.results[0] instanceof self.Deferred)) {
|
} else if ((this.fired === 0) && (this.results[0] instanceof self.Deferred)) {
|
||||||
this.results[0].cancel();
|
this.results[0].cancel(e);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
@ -65,7 +74,9 @@ MochiKit.Async.Deferred.prototype = {
|
|||||||
***/
|
***/
|
||||||
this.fired = ((res instanceof Error) ? 1 : 0);
|
this.fired = ((res instanceof Error) ? 1 : 0);
|
||||||
this.results[this.fired] = res;
|
this.results[this.fired] = res;
|
||||||
this._fire();
|
if (this.paused === 0) {
|
||||||
|
this._fire();
|
||||||
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
_check: function () {
|
_check: function () {
|
||||||
@ -129,6 +140,9 @@ MochiKit.Async.Deferred.prototype = {
|
|||||||
if (this.chained) {
|
if (this.chained) {
|
||||||
throw new Error("Chained Deferreds can not be re-used");
|
throw new Error("Chained Deferreds can not be re-used");
|
||||||
}
|
}
|
||||||
|
if (this.finalized) {
|
||||||
|
throw new Error("Finalized Deferreds can not be re-used");
|
||||||
|
}
|
||||||
this.chain.push([cb, eb]);
|
this.chain.push([cb, eb]);
|
||||||
if (this.fired >= 0) {
|
if (this.fired >= 0) {
|
||||||
this._fire();
|
this._fire();
|
||||||
@ -136,6 +150,24 @@ MochiKit.Async.Deferred.prototype = {
|
|||||||
return this;
|
return this;
|
||||||
},
|
},
|
||||||
|
|
||||||
|
/** @id MochiKit.Async.Deferred.prototype.setFinalizer */
|
||||||
|
setFinalizer: function (fn) {
|
||||||
|
if (this.chained) {
|
||||||
|
throw new Error("Chained Deferreds can not be re-used");
|
||||||
|
}
|
||||||
|
if (this.finalized) {
|
||||||
|
throw new Error("Finalized Deferreds can not be re-used");
|
||||||
|
}
|
||||||
|
if (arguments.length > 1) {
|
||||||
|
fn = MochiKit.Base.partial.apply(null, arguments);
|
||||||
|
}
|
||||||
|
this._finalizer = fn;
|
||||||
|
if (this.fired >= 0) {
|
||||||
|
this._fire();
|
||||||
|
}
|
||||||
|
return this;
|
||||||
|
},
|
||||||
|
|
||||||
_fire: function () {
|
_fire: function () {
|
||||||
/***
|
/***
|
||||||
|
|
||||||
@ -160,11 +192,8 @@ MochiKit.Async.Deferred.prototype = {
|
|||||||
fired = ((res instanceof Error) ? 1 : 0);
|
fired = ((res instanceof Error) ? 1 : 0);
|
||||||
if (res instanceof MochiKit.Async.Deferred) {
|
if (res instanceof MochiKit.Async.Deferred) {
|
||||||
cb = function (res) {
|
cb = function (res) {
|
||||||
self._resback(res);
|
|
||||||
self.paused--;
|
self.paused--;
|
||||||
if ((self.paused === 0) && (self.fired >= 0)) {
|
self._resback(res);
|
||||||
self._fire();
|
|
||||||
}
|
|
||||||
};
|
};
|
||||||
this.paused++;
|
this.paused++;
|
||||||
}
|
}
|
||||||
@ -178,6 +207,10 @@ MochiKit.Async.Deferred.prototype = {
|
|||||||
}
|
}
|
||||||
this.fired = fired;
|
this.fired = fired;
|
||||||
this.results[fired] = res;
|
this.results[fired] = res;
|
||||||
|
if (this.chain.length == 0 && this.paused === 0 && this._finalizer) {
|
||||||
|
this.finalized = true;
|
||||||
|
this._finalizer(res);
|
||||||
|
}
|
||||||
if (cb && this.paused) {
|
if (cb && this.paused) {
|
||||||
// this is for "tail recursion" in case the dependent deferred
|
// this is for "tail recursion" in case the dependent deferred
|
||||||
// is already fired
|
// is already fired
|
||||||
@ -249,7 +282,7 @@ MochiKit.Base.update(MochiKit.Async, {
|
|||||||
var status = null;
|
var status = null;
|
||||||
try {
|
try {
|
||||||
status = this.status;
|
status = this.status;
|
||||||
if (!status && m.isNotEmpty(this.responseText)) {
|
if (!status && (this.response || m.isNotEmpty(this.responseText))) {
|
||||||
// 0 or undefined seems to mean cached or local
|
// 0 or undefined seems to mean cached or local
|
||||||
status = 304;
|
status = 304;
|
||||||
}
|
}
|
||||||
@ -337,7 +370,8 @@ MochiKit.Base.update(MochiKit.Async, {
|
|||||||
username: undefined,
|
username: undefined,
|
||||||
password: undefined,
|
password: undefined,
|
||||||
headers: undefined,
|
headers: undefined,
|
||||||
mimeType: undefined
|
mimeType: undefined,
|
||||||
|
responseType: undefined
|
||||||
*/
|
*/
|
||||||
}, opts);
|
}, opts);
|
||||||
var self = MochiKit.Async;
|
var self = MochiKit.Async;
|
||||||
@ -371,6 +405,9 @@ MochiKit.Base.update(MochiKit.Async, {
|
|||||||
req.setRequestHeader(name, value);
|
req.setRequestHeader(name, value);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if ("responseType" in opts && "responseType" in req) {
|
||||||
|
req.responseType = opts.responseType;
|
||||||
|
}
|
||||||
return self.sendXMLHttpRequest(req, opts.sendContent);
|
return self.sendXMLHttpRequest(req, opts.sendContent);
|
||||||
},
|
},
|
||||||
|
|
||||||
@ -404,16 +441,44 @@ MochiKit.Base.update(MochiKit.Async, {
|
|||||||
return d;
|
return d;
|
||||||
},
|
},
|
||||||
|
|
||||||
|
/** @id MochiKit.Async.loadScript */
|
||||||
|
loadScript: function (url) {
|
||||||
|
var d = new MochiKit.Async.Deferred();
|
||||||
|
var script = document.createElement("script");
|
||||||
|
script.type = "text/javascript";
|
||||||
|
script.src = url;
|
||||||
|
script.onload = function () {
|
||||||
|
script.onload = null;
|
||||||
|
script.onerror = null;
|
||||||
|
script.onreadystatechange = null;
|
||||||
|
script = null;
|
||||||
|
d.callback();
|
||||||
|
};
|
||||||
|
script.onerror = function (msg) {
|
||||||
|
script.onload = null;
|
||||||
|
script.onerror = null;
|
||||||
|
script.onreadystatechange = null;
|
||||||
|
script = null;
|
||||||
|
msg = "Failed to load script at " + url + ": " + msg;
|
||||||
|
d.errback(new URIError(msg, url));
|
||||||
|
}
|
||||||
|
script.onreadystatechange = function () {
|
||||||
|
if (script.readyState == "loaded" || script.readyState == "complete") {
|
||||||
|
script.onload();
|
||||||
|
} else {
|
||||||
|
// IE doesn't bother to report errors...
|
||||||
|
MochiKit.Async.callLater(10, script.onerror, "Script loading timed out")
|
||||||
|
}
|
||||||
|
};
|
||||||
|
document.getElementsByTagName("head")[0].appendChild(script);
|
||||||
|
return d;
|
||||||
|
},
|
||||||
|
|
||||||
/** @id MochiKit.Async.wait */
|
/** @id MochiKit.Async.wait */
|
||||||
wait: function (seconds, /* optional */value) {
|
wait: function (seconds, /* optional */value) {
|
||||||
var d = new MochiKit.Async.Deferred();
|
var d = new MochiKit.Async.Deferred();
|
||||||
var m = MochiKit.Base;
|
var cb = MochiKit.Base.bind("callback", d, value);
|
||||||
if (typeof(value) != 'undefined') {
|
var timeout = setTimeout(cb, Math.floor(seconds * 1000));
|
||||||
d.addCallback(function () { return value; });
|
|
||||||
}
|
|
||||||
var timeout = setTimeout(
|
|
||||||
m.bind("callback", d),
|
|
||||||
Math.floor(seconds * 1000));
|
|
||||||
d.canceller = function () {
|
d.canceller = function () {
|
||||||
try {
|
try {
|
||||||
clearTimeout(timeout);
|
clearTimeout(timeout);
|
||||||
@ -510,6 +575,7 @@ MochiKit.Async.DeferredList = function (list, /* optional */fireOnOneCallback, f
|
|||||||
};
|
};
|
||||||
|
|
||||||
MochiKit.Async.DeferredList.prototype = new MochiKit.Async.Deferred();
|
MochiKit.Async.DeferredList.prototype = new MochiKit.Async.Deferred();
|
||||||
|
MochiKit.Async.DeferredList.prototype.constructor = MochiKit.Async.DeferredList;
|
||||||
|
|
||||||
MochiKit.Async.DeferredList.prototype._cbDeferred = function (index, succeeded, result) {
|
MochiKit.Async.DeferredList.prototype._cbDeferred = function (index, succeeded, result) {
|
||||||
this.resultList[index] = [succeeded, result];
|
this.resultList[index] = [succeeded, result];
|
||||||
|
@ -8,33 +8,43 @@ See <http://mochikit.com/> for documentation, downloads, license, etc.
|
|||||||
|
|
||||||
***/
|
***/
|
||||||
|
|
||||||
if (typeof(MochiKit) == 'undefined') {
|
|
||||||
MochiKit = {};
|
// MochiKit module (namespace)
|
||||||
}
|
var MochiKit = MochiKit || {};
|
||||||
if (typeof(MochiKit.__export__) == "undefined") {
|
if (typeof(MochiKit.__export__) == "undefined") {
|
||||||
MochiKit.__export__ = true;
|
MochiKit.__export__ = true;
|
||||||
}
|
}
|
||||||
if (typeof(MochiKit.Base) == 'undefined') {
|
MochiKit.NAME = "MochiKit";
|
||||||
MochiKit.Base = {};
|
MochiKit.VERSION = "1.5";
|
||||||
}
|
MochiKit.__repr__ = function () {
|
||||||
|
return "[" + this.NAME + " " + this.VERSION + "]";
|
||||||
|
};
|
||||||
|
MochiKit.toString = function () {
|
||||||
|
return this.__repr__();
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
// MochiKit.Base module
|
||||||
|
MochiKit.Base = MochiKit.Base || {};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Registers a new MochiKit module. This function will insert a new
|
* Creates a new module in a parent namespace. This function will
|
||||||
* property into the "MochiKit" object, making sure that all
|
* create a new empty module object with "NAME", "VERSION",
|
||||||
* dependency modules have already been inserted. It will also make
|
* "toString" and "__repr__" properties. This object will be inserted into the parent object
|
||||||
* sure that the appropriate properties and default module functions
|
* using the specified name (i.e. parent[name] = module). It will
|
||||||
* are defined.
|
* also verify that all the dependency modules are defined in the
|
||||||
|
* parent, or an error will be thrown.
|
||||||
*
|
*
|
||||||
|
* @param {Object} parent the parent module (use "this" or "window" for
|
||||||
|
* a global module)
|
||||||
* @param {String} name the module name, e.g. "Base"
|
* @param {String} name the module name, e.g. "Base"
|
||||||
* @param {String} version the module version, e.g. "1.5"
|
* @param {String} version the module version, e.g. "1.5"
|
||||||
* @param {Array} deps the array of module dependencies (as strings)
|
* @param {Array} [deps] the array of module dependencies (as strings)
|
||||||
*/
|
*/
|
||||||
MochiKit.Base._module = function (name, version, deps) {
|
MochiKit.Base.module = function (parent, name, version, deps) {
|
||||||
if (!(name in MochiKit)) {
|
var module = parent[name] = parent[name] || {};
|
||||||
MochiKit[name] = {};
|
var prefix = (parent.NAME ? parent.NAME + "." : "");
|
||||||
}
|
module.NAME = prefix + name;
|
||||||
var module = MochiKit[name];
|
|
||||||
module.NAME = "MochiKit." + name;
|
|
||||||
module.VERSION = version;
|
module.VERSION = version;
|
||||||
module.__repr__ = function () {
|
module.__repr__ = function () {
|
||||||
return "[" + this.NAME + " " + this.VERSION + "]";
|
return "[" + this.NAME + " " + this.VERSION + "]";
|
||||||
@ -42,14 +52,15 @@ MochiKit.Base._module = function (name, version, deps) {
|
|||||||
module.toString = function () {
|
module.toString = function () {
|
||||||
return this.__repr__();
|
return this.__repr__();
|
||||||
};
|
};
|
||||||
for (var i = 0; i < deps.length; i++) {
|
for (var i = 0; deps != null && i < deps.length; i++) {
|
||||||
if (!(deps[i] in MochiKit)) {
|
if (!(deps[i] in parent)) {
|
||||||
throw 'MochiKit.' + name + ' depends on MochiKit.' + deps[i] + '!';
|
throw module.NAME + ' depends on ' + prefix + deps[i] + '!';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
return module;
|
||||||
|
};
|
||||||
|
|
||||||
MochiKit.Base._module("Base", "1.5", []);
|
MochiKit.Base.module(MochiKit, "Base", "1.5", []);
|
||||||
|
|
||||||
/** @id MochiKit.Base.update */
|
/** @id MochiKit.Base.update */
|
||||||
MochiKit.Base.update = function (self, obj/*, ... */) {
|
MochiKit.Base.update = function (self, obj/*, ... */) {
|
||||||
@ -240,6 +251,7 @@ MochiKit.Base.update(MochiKit.Base, {
|
|||||||
|
|
||||||
_newNamedError: function (module, name, func) {
|
_newNamedError: function (module, name, func) {
|
||||||
func.prototype = new MochiKit.Base.NamedError(module.NAME + "." + name);
|
func.prototype = new MochiKit.Base.NamedError(module.NAME + "." + name);
|
||||||
|
func.prototype.constructor = func;
|
||||||
module[name] = func;
|
module[name] = func;
|
||||||
},
|
},
|
||||||
|
|
||||||
@ -351,7 +363,7 @@ MochiKit.Base.update(MochiKit.Base, {
|
|||||||
} else if (typeof(value) === "number" || value instanceof Number) {
|
} else if (typeof(value) === "number" || value instanceof Number) {
|
||||||
return !isNaN(value) && value != 0;
|
return !isNaN(value) && value != 0;
|
||||||
} else if (value != null && typeof(value.length) === "number") {
|
} else if (value != null && typeof(value.length) === "number") {
|
||||||
return value.length !== 0
|
return value.length !== 0;
|
||||||
} else {
|
} else {
|
||||||
return value != null;
|
return value != null;
|
||||||
}
|
}
|
||||||
@ -675,6 +687,9 @@ MochiKit.Base.update(MochiKit.Base, {
|
|||||||
newfunc.im_self = im_self;
|
newfunc.im_self = im_self;
|
||||||
newfunc.im_func = im_func;
|
newfunc.im_func = im_func;
|
||||||
newfunc.im_preargs = im_preargs;
|
newfunc.im_preargs = im_preargs;
|
||||||
|
if (typeof(im_func.NAME) == 'string') {
|
||||||
|
newfunc.NAME = "bind(" + im_func.NAME + ",...)";
|
||||||
|
}
|
||||||
return newfunc;
|
return newfunc;
|
||||||
},
|
},
|
||||||
|
|
||||||
@ -788,11 +803,14 @@ MochiKit.Base.update(MochiKit.Base, {
|
|||||||
}
|
}
|
||||||
return MochiKit.Base.reprRegistry.match(o);
|
return MochiKit.Base.reprRegistry.match(o);
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
if (typeof(o.NAME) == 'string' && (
|
try {
|
||||||
o.toString == Function.prototype.toString ||
|
if (typeof(o.NAME) == 'string' && (
|
||||||
o.toString == Object.prototype.toString
|
o.toString == Function.prototype.toString ||
|
||||||
)) {
|
o.toString == Object.prototype.toString
|
||||||
return o.NAME;
|
)) {
|
||||||
|
return o.NAME;
|
||||||
|
}
|
||||||
|
} catch (ignore) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
@ -840,16 +858,13 @@ MochiKit.Base.update(MochiKit.Base, {
|
|||||||
|
|
||||||
|
|
||||||
/** @id MochiKit.Base.evalJSON */
|
/** @id MochiKit.Base.evalJSON */
|
||||||
evalJSON: function () {
|
evalJSON: function (jsonText) {
|
||||||
return eval("(" + MochiKit.Base._filterJSON(arguments[0]) + ")");
|
return eval("(" + MochiKit.Base._filterJSON(jsonText) + ")");
|
||||||
},
|
},
|
||||||
|
|
||||||
_filterJSON: function (s) {
|
_filterJSON: function (s) {
|
||||||
var m = s.match(/^\s*\/\*(.*)\*\/\s*$/);
|
var m = s.match(/^\s*\/\*(.*)\*\/\s*$/);
|
||||||
if (m) {
|
return (m) ? m[1] : s;
|
||||||
return m[1];
|
|
||||||
}
|
|
||||||
return s;
|
|
||||||
},
|
},
|
||||||
|
|
||||||
/** @id MochiKit.Base.serializeJSON */
|
/** @id MochiKit.Base.serializeJSON */
|
||||||
@ -894,6 +909,12 @@ MochiKit.Base.update(MochiKit.Base, {
|
|||||||
// short-circuit for objects that support "json" serialization
|
// short-circuit for objects that support "json" serialization
|
||||||
// if they return "self" then just pass-through...
|
// if they return "self" then just pass-through...
|
||||||
var newObj;
|
var newObj;
|
||||||
|
if (typeof(o.toJSON) == "function") {
|
||||||
|
newObj = o.toJSON();
|
||||||
|
if (o !== newObj) {
|
||||||
|
return me(newObj);
|
||||||
|
}
|
||||||
|
}
|
||||||
if (typeof(o.__json__) == "function") {
|
if (typeof(o.__json__) == "function") {
|
||||||
newObj = o.__json__();
|
newObj = o.__json__();
|
||||||
if (o !== newObj) {
|
if (o !== newObj) {
|
||||||
@ -1100,7 +1121,7 @@ MochiKit.Base.update(MochiKit.Base, {
|
|||||||
if (data.length === 0) {
|
if (data.length === 0) {
|
||||||
throw new TypeError('median() requires at least one argument');
|
throw new TypeError('median() requires at least one argument');
|
||||||
}
|
}
|
||||||
data.sort(compare);
|
data.sort(MochiKit.Base.compare);
|
||||||
if (data.length % 2 == 0) {
|
if (data.length % 2 == 0) {
|
||||||
var upper = data.length / 2;
|
var upper = data.length / 2;
|
||||||
return (data[upper] + data[upper - 1]) / 2;
|
return (data[upper] + data[upper - 1]) / 2;
|
||||||
@ -1290,19 +1311,45 @@ MochiKit.Base.AdapterRegistry.prototype = {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
MochiKit.Base._exportSymbols = function (globals, module) {
|
/**
|
||||||
if (MochiKit.__export__ === false || module.__export__ === false) {
|
* Exports all symbols from one or more modules into the specified
|
||||||
return;
|
* namespace (or scope). This is similar to MochiKit.Base.update(),
|
||||||
}
|
* except for special handling of the "__export__" flag, contained
|
||||||
for (var k in module) {
|
* sub-modules (exported recursively), and names starting with "_".
|
||||||
var v = module[k];
|
*
|
||||||
if (v != null) {
|
* @param {Object} namespace the object or scope to modify
|
||||||
var okName = (k[0] !== "_" && k !== "toString");
|
* @param {Object} module the module to export
|
||||||
if (v.__export__ === true || (v.__export__ !== false && okName)) {
|
*/
|
||||||
globals[k] = module[k];
|
MochiKit.Base.moduleExport = function (namespace, module/*, ...*/) {
|
||||||
|
var SKIP = { toString: true, NAME: true, VERSION: true };
|
||||||
|
var mods = MochiKit.Base.extend([], arguments, 1);
|
||||||
|
while ((module = mods.shift()) != null) {
|
||||||
|
for (var k in module) {
|
||||||
|
var v = module[k];
|
||||||
|
if (v != null) {
|
||||||
|
var flagSet = (typeof(v.__export__) == 'boolean');
|
||||||
|
var nameValid = (k[0] !== "_" && !SKIP[k]);
|
||||||
|
if (flagSet ? v.__export__ : nameValid) {
|
||||||
|
if (typeof(v) == 'object' && v.NAME && v.VERSION) {
|
||||||
|
mods.push(v);
|
||||||
|
} else {
|
||||||
|
namespace[k] = module[k];
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
return namespace;
|
||||||
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Identical to moduleExport, but also considers the global and
|
||||||
|
* module-specific "__export__" flag.
|
||||||
|
*/
|
||||||
|
MochiKit.Base._exportSymbols = function (namespace, module) {
|
||||||
|
if (MochiKit.__export__ !== false && module.__export__ !== false) {
|
||||||
|
MochiKit.Base.moduleExport(namespace, module);
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -1321,7 +1368,7 @@ MochiKit.Base._exportSymbols = function (globals, module) {
|
|||||||
* @param {String} version the first version when the source function
|
* @param {String} version the first version when the source function
|
||||||
* was deprecated (e.g. '1.4')
|
* was deprecated (e.g. '1.4')
|
||||||
* @param {Boolean} [exportable] the exportable function flag,
|
* @param {Boolean} [exportable] the exportable function flag,
|
||||||
* defaults to true
|
* defaults to false
|
||||||
*/
|
*/
|
||||||
MochiKit.Base._deprecated = function (module, name, target, version, exportable) {
|
MochiKit.Base._deprecated = function (module, name, target, version, exportable) {
|
||||||
if (typeof(module) === 'string') {
|
if (typeof(module) === 'string') {
|
||||||
@ -1349,11 +1396,9 @@ MochiKit.Base._deprecated = function (module, name, target, version, exportable)
|
|||||||
}
|
}
|
||||||
return MochiKit[targetModule][targetName].apply(this, arguments);
|
return MochiKit[targetModule][targetName].apply(this, arguments);
|
||||||
};
|
};
|
||||||
if (exportable === false) {
|
func.__export__ = (exportable === true);
|
||||||
func.__export__ = false;
|
|
||||||
}
|
|
||||||
module[name] = func;
|
module[name] = func;
|
||||||
}
|
};
|
||||||
|
|
||||||
MochiKit.Base.__new__ = function () {
|
MochiKit.Base.__new__ = function () {
|
||||||
var m = this;
|
var m = this;
|
||||||
@ -1362,8 +1407,8 @@ MochiKit.Base.__new__ = function () {
|
|||||||
m.noop = m.operator.identity;
|
m.noop = m.operator.identity;
|
||||||
|
|
||||||
// Backwards compat
|
// Backwards compat
|
||||||
m._deprecated(m, 'forward', 'MochiKit.Base.forwardCall', '1.3', false);
|
m._deprecated(m, 'forward', 'MochiKit.Base.forwardCall', '1.3');
|
||||||
m._deprecated(m, 'find', 'MochiKit.Base.findValue', '1.3', false);
|
m._deprecated(m, 'find', 'MochiKit.Base.findValue', '1.3');
|
||||||
|
|
||||||
if (typeof(encodeURIComponent) != "undefined") {
|
if (typeof(encodeURIComponent) != "undefined") {
|
||||||
/** @id MochiKit.Base.urlEncode */
|
/** @id MochiKit.Base.urlEncode */
|
||||||
@ -1375,7 +1420,7 @@ MochiKit.Base.__new__ = function () {
|
|||||||
return escape(unencoded
|
return escape(unencoded
|
||||||
).replace(/\+/g, '%2B'
|
).replace(/\+/g, '%2B'
|
||||||
).replace(/\"/g,'%22'
|
).replace(/\"/g,'%22'
|
||||||
).rval.replace(/\'/g, '%27');
|
).replace(/\'/g, '%27');
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1385,6 +1430,7 @@ MochiKit.Base.__new__ = function () {
|
|||||||
this.name = name;
|
this.name = name;
|
||||||
};
|
};
|
||||||
m.NamedError.prototype = new Error();
|
m.NamedError.prototype = new Error();
|
||||||
|
m.NamedError.prototype.constructor = m.NamedError;
|
||||||
m.update(m.NamedError.prototype, {
|
m.update(m.NamedError.prototype, {
|
||||||
repr: function () {
|
repr: function () {
|
||||||
if (this.message && this.message != this.name) {
|
if (this.message && this.message != this.name) {
|
||||||
@ -1409,6 +1455,8 @@ MochiKit.Base.__new__ = function () {
|
|||||||
m.isCallable = m.typeMatcher('function');
|
m.isCallable = m.typeMatcher('function');
|
||||||
/** @id MochiKit.Base.isUndefined */
|
/** @id MochiKit.Base.isUndefined */
|
||||||
m.isUndefined = m.typeMatcher('undefined');
|
m.isUndefined = m.typeMatcher('undefined');
|
||||||
|
/** @id MochiKit.Base.isValue */
|
||||||
|
m.isValue = m.typeMatcher('boolean', 'number', 'string');
|
||||||
|
|
||||||
/** @id MochiKit.Base.merge */
|
/** @id MochiKit.Base.merge */
|
||||||
m.merge = m.partial(m.update, null);
|
m.merge = m.partial(m.update, null);
|
||||||
|
@ -8,7 +8,7 @@ See <http://mochikit.com/> for documentation, downloads, license, etc.
|
|||||||
|
|
||||||
***/
|
***/
|
||||||
|
|
||||||
MochiKit.Base._module('Color', '1.5', ['Base', 'DOM', 'Style']);
|
MochiKit.Base.module(MochiKit, 'Color', '1.5', ['Base', 'DOM', 'Style']);
|
||||||
|
|
||||||
/** @id MochiKit.Color.Color */
|
/** @id MochiKit.Color.Color */
|
||||||
MochiKit.Color.Color = function (red, green, blue, alpha) {
|
MochiKit.Color.Color = function (red, green, blue, alpha) {
|
||||||
@ -112,7 +112,7 @@ MochiKit.Color.Color.prototype = {
|
|||||||
|
|
||||||
/** @id MochiKit.Color.Color.prototype.isLight */
|
/** @id MochiKit.Color.Color.prototype.isLight */
|
||||||
isLight: function () {
|
isLight: function () {
|
||||||
return this.asHSL().b > 0.5;
|
return this.asHSL().l > 0.5;
|
||||||
},
|
},
|
||||||
|
|
||||||
/** @id MochiKit.Color.Color.prototype.isDark */
|
/** @id MochiKit.Color.Color.prototype.isDark */
|
||||||
@ -641,19 +641,10 @@ MochiKit.Base.update(MochiKit.Color, {
|
|||||||
yellow: [1, 1, 0]
|
yellow: [1, 1, 0]
|
||||||
};
|
};
|
||||||
|
|
||||||
var makeColor = function (name, r, g, b, a) {
|
|
||||||
var rval = this.fromRGB(r, g, b, a);
|
|
||||||
this[name] = function () { return rval; };
|
|
||||||
return rval;
|
|
||||||
};
|
|
||||||
|
|
||||||
for (var k in colors) {
|
for (var k in colors) {
|
||||||
var name = k + "Color";
|
var name = k + "Color";
|
||||||
var bindArgs = m.concat(
|
var value = this.Color.fromRGB.apply(this.Color, colors[k]);
|
||||||
[makeColor, this.Color, name],
|
this.Color[name] = m.partial(m.operator.identity, value);
|
||||||
colors[k]
|
|
||||||
);
|
|
||||||
this.Color[name] = m.bind.apply(null, bindArgs);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
var isColor = function () {
|
var isColor = function () {
|
||||||
|
@ -8,7 +8,7 @@ See <http://mochikit.com/> for documentation, downloads, license, etc.
|
|||||||
|
|
||||||
***/
|
***/
|
||||||
|
|
||||||
MochiKit.Base._module('DOM', '1.5', ['Base']);
|
MochiKit.Base.module(MochiKit, 'DOM', '1.5', ['Base']);
|
||||||
|
|
||||||
MochiKit.Base.update(MochiKit.DOM, {
|
MochiKit.Base.update(MochiKit.DOM, {
|
||||||
|
|
||||||
@ -297,11 +297,11 @@ MochiKit.Base.update(MochiKit.DOM, {
|
|||||||
updateNodeAttributes: function (node, attrs) {
|
updateNodeAttributes: function (node, attrs) {
|
||||||
var elem = node;
|
var elem = node;
|
||||||
var self = MochiKit.DOM;
|
var self = MochiKit.DOM;
|
||||||
|
var base = MochiKit.Base;
|
||||||
if (typeof(node) == 'string') {
|
if (typeof(node) == 'string') {
|
||||||
elem = self.getElement(node);
|
elem = self.getElement(node);
|
||||||
}
|
}
|
||||||
if (attrs) {
|
if (attrs) {
|
||||||
var updatetree = MochiKit.Base.updatetree;
|
|
||||||
if (self.attributeArray.compliant) {
|
if (self.attributeArray.compliant) {
|
||||||
// not IE, good.
|
// not IE, good.
|
||||||
for (var k in attrs) {
|
for (var k in attrs) {
|
||||||
@ -310,7 +310,7 @@ MochiKit.Base.update(MochiKit.DOM, {
|
|||||||
if (k == "style" && MochiKit.Style) {
|
if (k == "style" && MochiKit.Style) {
|
||||||
MochiKit.Style.setStyle(elem, v);
|
MochiKit.Style.setStyle(elem, v);
|
||||||
} else {
|
} else {
|
||||||
updatetree(elem[k], v);
|
base.updatetree(elem[k], v);
|
||||||
}
|
}
|
||||||
} else if (k.substring(0, 2) == "on") {
|
} else if (k.substring(0, 2) == "on") {
|
||||||
if (typeof(v) == "string") {
|
if (typeof(v) == "string") {
|
||||||
@ -320,8 +320,8 @@ MochiKit.Base.update(MochiKit.DOM, {
|
|||||||
} else {
|
} else {
|
||||||
elem.setAttribute(k, v);
|
elem.setAttribute(k, v);
|
||||||
}
|
}
|
||||||
if (typeof(elem[k]) == "string" && elem[k] != v) {
|
if (base.isValue(elem[k]) && elem[k] != v) {
|
||||||
// Also set property for weird attributes (see #302)
|
// Also set property for weird attributes (see #302 & #335)
|
||||||
elem[k] = v;
|
elem[k] = v;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -340,7 +340,7 @@ MochiKit.Base.update(MochiKit.DOM, {
|
|||||||
if (k == "style" && MochiKit.Style) {
|
if (k == "style" && MochiKit.Style) {
|
||||||
MochiKit.Style.setStyle(elem, v);
|
MochiKit.Style.setStyle(elem, v);
|
||||||
} else {
|
} else {
|
||||||
updatetree(elem[k], v);
|
base.updatetree(elem[k], v);
|
||||||
}
|
}
|
||||||
} else if (k.substring(0, 2) == "on") {
|
} else if (k.substring(0, 2) == "on") {
|
||||||
if (typeof(v) == "string") {
|
if (typeof(v) == "string") {
|
||||||
@ -350,8 +350,8 @@ MochiKit.Base.update(MochiKit.DOM, {
|
|||||||
} else {
|
} else {
|
||||||
elem.setAttribute(k, v);
|
elem.setAttribute(k, v);
|
||||||
}
|
}
|
||||||
if (typeof(elem[k]) == "string" && elem[k] != v) {
|
if (base.isValue(elem[k]) && elem[k] != v) {
|
||||||
// Also set property for weird attributes (see #302)
|
// Also set property for weird attributes (see #302 & #335)
|
||||||
elem[k] = v;
|
elem[k] = v;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -990,6 +990,7 @@ MochiKit.Base.update(MochiKit.DOM, {
|
|||||||
"for": "htmlFor",
|
"for": "htmlFor",
|
||||||
"readonly": "readOnly",
|
"readonly": "readOnly",
|
||||||
"colspan": "colSpan",
|
"colspan": "colSpan",
|
||||||
|
"rowspan": "rowSpan",
|
||||||
"bgcolor": "bgColor",
|
"bgcolor": "bgColor",
|
||||||
"cellspacing": "cellSpacing",
|
"cellspacing": "cellSpacing",
|
||||||
"cellpadding": "cellPadding"
|
"cellpadding": "cellPadding"
|
||||||
@ -1007,7 +1008,7 @@ MochiKit.Base.update(MochiKit.DOM, {
|
|||||||
|
|
||||||
// Backwards compatibility aliases
|
// Backwards compatibility aliases
|
||||||
/** @id MochiKit.DOM.computedStyle */
|
/** @id MochiKit.DOM.computedStyle */
|
||||||
m._deprecated(this, 'computedStyle', 'MochiKit.Style.getStyle', '1.4');
|
m._deprecated(this, 'computedStyle', 'MochiKit.Style.getStyle', '1.4', true);
|
||||||
/** @id MochiKit.DOM.elementDimensions */
|
/** @id MochiKit.DOM.elementDimensions */
|
||||||
m._deprecated(this, 'elementDimensions', 'MochiKit.Style.getElementDimensions', '1.4');
|
m._deprecated(this, 'elementDimensions', 'MochiKit.Style.getElementDimensions', '1.4');
|
||||||
/** @id MochiKit.DOM.elementPosition */
|
/** @id MochiKit.DOM.elementPosition */
|
||||||
@ -1041,48 +1042,38 @@ MochiKit.Base.update(MochiKit.DOM, {
|
|||||||
|
|
||||||
// shorthand for createDOM syntax
|
// shorthand for createDOM syntax
|
||||||
var createDOMFunc = this.createDOMFunc;
|
var createDOMFunc = this.createDOMFunc;
|
||||||
/** @id MochiKit.DOM.UL */
|
/** @id MochiKit.DOM.A */
|
||||||
this.UL = createDOMFunc("ul");
|
this.A = createDOMFunc("a");
|
||||||
/** @id MochiKit.DOM.OL */
|
/** @id MochiKit.DOM.ARTICLE */
|
||||||
this.OL = createDOMFunc("ol");
|
this.ARTICLE = createDOMFunc("article");
|
||||||
/** @id MochiKit.DOM.LI */
|
/** @id MochiKit.DOM.ASIDE */
|
||||||
this.LI = createDOMFunc("li");
|
this.ASIDE = createDOMFunc("aside");
|
||||||
|
/** @id MochiKit.DOM.BR */
|
||||||
|
this.BR = createDOMFunc("br");
|
||||||
|
/** @id MochiKit.DOM.BUTTON */
|
||||||
|
this.BUTTON = createDOMFunc("button");
|
||||||
|
/** @id MochiKit.DOM.CANVAS */
|
||||||
|
this.CANVAS = createDOMFunc("canvas");
|
||||||
|
/** @id MochiKit.DOM.CAPTION */
|
||||||
|
this.CAPTION = createDOMFunc("caption");
|
||||||
|
/** @id MochiKit.DOM.DD */
|
||||||
|
this.DD = createDOMFunc("dd");
|
||||||
|
/** @id MochiKit.DOM.DIV */
|
||||||
|
this.DIV = createDOMFunc("div");
|
||||||
/** @id MochiKit.DOM.DL */
|
/** @id MochiKit.DOM.DL */
|
||||||
this.DL = createDOMFunc("dl");
|
this.DL = createDOMFunc("dl");
|
||||||
/** @id MochiKit.DOM.DT */
|
/** @id MochiKit.DOM.DT */
|
||||||
this.DT = createDOMFunc("dt");
|
this.DT = createDOMFunc("dt");
|
||||||
/** @id MochiKit.DOM.DD */
|
/** @id MochiKit.DOM.FIELDSET */
|
||||||
this.DD = createDOMFunc("dd");
|
this.FIELDSET = createDOMFunc("fieldset");
|
||||||
/** @id MochiKit.DOM.TD */
|
/** @id MochiKit.DOM.FIGURE */
|
||||||
this.TD = createDOMFunc("td");
|
this.FIGURE = createDOMFunc("figure");
|
||||||
/** @id MochiKit.DOM.TR */
|
/** @id MochiKit.DOM.FIGCAPTION */
|
||||||
this.TR = createDOMFunc("tr");
|
this.FIGCAPTION = createDOMFunc("figcaption");
|
||||||
/** @id MochiKit.DOM.TBODY */
|
/** @id MochiKit.DOM.FOOTER */
|
||||||
this.TBODY = createDOMFunc("tbody");
|
this.FOOTER = createDOMFunc("footer");
|
||||||
/** @id MochiKit.DOM.THEAD */
|
/** @id MochiKit.DOM.FORM */
|
||||||
this.THEAD = createDOMFunc("thead");
|
this.FORM = createDOMFunc("form");
|
||||||
/** @id MochiKit.DOM.TFOOT */
|
|
||||||
this.TFOOT = createDOMFunc("tfoot");
|
|
||||||
/** @id MochiKit.DOM.TABLE */
|
|
||||||
this.TABLE = createDOMFunc("table");
|
|
||||||
/** @id MochiKit.DOM.TH */
|
|
||||||
this.TH = createDOMFunc("th");
|
|
||||||
/** @id MochiKit.DOM.INPUT */
|
|
||||||
this.INPUT = createDOMFunc("input");
|
|
||||||
/** @id MochiKit.DOM.SPAN */
|
|
||||||
this.SPAN = createDOMFunc("span");
|
|
||||||
/** @id MochiKit.DOM.A */
|
|
||||||
this.A = createDOMFunc("a");
|
|
||||||
/** @id MochiKit.DOM.DIV */
|
|
||||||
this.DIV = createDOMFunc("div");
|
|
||||||
/** @id MochiKit.DOM.IMG */
|
|
||||||
this.IMG = createDOMFunc("img");
|
|
||||||
/** @id MochiKit.DOM.BUTTON */
|
|
||||||
this.BUTTON = createDOMFunc("button");
|
|
||||||
/** @id MochiKit.DOM.TT */
|
|
||||||
this.TT = createDOMFunc("tt");
|
|
||||||
/** @id MochiKit.DOM.PRE */
|
|
||||||
this.PRE = createDOMFunc("pre");
|
|
||||||
/** @id MochiKit.DOM.H1 */
|
/** @id MochiKit.DOM.H1 */
|
||||||
this.H1 = createDOMFunc("h1");
|
this.H1 = createDOMFunc("h1");
|
||||||
/** @id MochiKit.DOM.H2 */
|
/** @id MochiKit.DOM.H2 */
|
||||||
@ -1095,38 +1086,82 @@ MochiKit.Base.update(MochiKit.DOM, {
|
|||||||
this.H5 = createDOMFunc("h5");
|
this.H5 = createDOMFunc("h5");
|
||||||
/** @id MochiKit.DOM.H6 */
|
/** @id MochiKit.DOM.H6 */
|
||||||
this.H6 = createDOMFunc("h6");
|
this.H6 = createDOMFunc("h6");
|
||||||
/** @id MochiKit.DOM.BR */
|
/** @id MochiKit.DOM.HEADER */
|
||||||
this.BR = createDOMFunc("br");
|
this.HEADER = createDOMFunc("header");
|
||||||
|
/** @id MochiKit.DOM.HGROUP */
|
||||||
|
this.HGROUP = createDOMFunc("hgroup");
|
||||||
/** @id MochiKit.DOM.HR */
|
/** @id MochiKit.DOM.HR */
|
||||||
this.HR = createDOMFunc("hr");
|
this.HR = createDOMFunc("hr");
|
||||||
|
/** @id MochiKit.DOM.IFRAME */
|
||||||
|
this.IFRAME = createDOMFunc("iframe");
|
||||||
|
/** @id MochiKit.DOM.IMG */
|
||||||
|
this.IMG = createDOMFunc("img");
|
||||||
|
/** @id MochiKit.DOM.INPUT */
|
||||||
|
this.INPUT = createDOMFunc("input");
|
||||||
/** @id MochiKit.DOM.LABEL */
|
/** @id MochiKit.DOM.LABEL */
|
||||||
this.LABEL = createDOMFunc("label");
|
this.LABEL = createDOMFunc("label");
|
||||||
/** @id MochiKit.DOM.TEXTAREA */
|
|
||||||
this.TEXTAREA = createDOMFunc("textarea");
|
|
||||||
/** @id MochiKit.DOM.FORM */
|
|
||||||
this.FORM = createDOMFunc("form");
|
|
||||||
/** @id MochiKit.DOM.P */
|
|
||||||
this.P = createDOMFunc("p");
|
|
||||||
/** @id MochiKit.DOM.SELECT */
|
|
||||||
this.SELECT = createDOMFunc("select");
|
|
||||||
/** @id MochiKit.DOM.OPTION */
|
|
||||||
this.OPTION = createDOMFunc("option");
|
|
||||||
/** @id MochiKit.DOM.OPTGROUP */
|
|
||||||
this.OPTGROUP = createDOMFunc("optgroup");
|
|
||||||
/** @id MochiKit.DOM.LEGEND */
|
/** @id MochiKit.DOM.LEGEND */
|
||||||
this.LEGEND = createDOMFunc("legend");
|
this.LEGEND = createDOMFunc("legend");
|
||||||
/** @id MochiKit.DOM.FIELDSET */
|
/** @id MochiKit.DOM.LI */
|
||||||
this.FIELDSET = createDOMFunc("fieldset");
|
this.LI = createDOMFunc("li");
|
||||||
|
/** @id MochiKit.DOM.LINK */
|
||||||
|
this.LINK = createDOMFunc("link");
|
||||||
|
/** @id MochiKit.DOM.MARK */
|
||||||
|
this.MARK = createDOMFunc("mark");
|
||||||
|
/** @id MochiKit.DOM.METER */
|
||||||
|
this.METER = createDOMFunc("meter");
|
||||||
|
/** @id MochiKit.DOM.NAV */
|
||||||
|
this.NAV = createDOMFunc("nav");
|
||||||
|
/** @id MochiKit.DOM.OL */
|
||||||
|
this.OL = createDOMFunc("ol");
|
||||||
|
/** @id MochiKit.DOM.OPTGROUP */
|
||||||
|
this.OPTGROUP = createDOMFunc("optgroup");
|
||||||
|
/** @id MochiKit.DOM.OPTION */
|
||||||
|
this.OPTION = createDOMFunc("option");
|
||||||
|
/** @id MochiKit.DOM.P */
|
||||||
|
this.P = createDOMFunc("p");
|
||||||
|
/** @id MochiKit.DOM.PRE */
|
||||||
|
this.PRE = createDOMFunc("pre");
|
||||||
|
/** @id MochiKit.DOM.PROGRESS */
|
||||||
|
this.PROGRESS = createDOMFunc("progress");
|
||||||
|
/** @id MochiKit.DOM.SCRIPT */
|
||||||
|
this.SCRIPT = createDOMFunc("script");
|
||||||
|
/** @id MochiKit.DOM.SECTION */
|
||||||
|
this.SECTION = createDOMFunc("section");
|
||||||
|
/** @id MochiKit.DOM.SELECT */
|
||||||
|
this.SELECT = createDOMFunc("select");
|
||||||
|
/** @id MochiKit.DOM.SPAN */
|
||||||
|
this.SPAN = createDOMFunc("span");
|
||||||
/** @id MochiKit.DOM.STRONG */
|
/** @id MochiKit.DOM.STRONG */
|
||||||
this.STRONG = createDOMFunc("strong");
|
this.STRONG = createDOMFunc("strong");
|
||||||
/** @id MochiKit.DOM.CANVAS */
|
/** @id MochiKit.DOM.STYLE */
|
||||||
this.CANVAS = createDOMFunc("canvas");
|
this.STYLE = createDOMFunc("style");
|
||||||
|
/** @id MochiKit.DOM.TABLE */
|
||||||
|
this.TABLE = createDOMFunc("table");
|
||||||
|
/** @id MochiKit.DOM.TBODY */
|
||||||
|
this.TBODY = createDOMFunc("tbody");
|
||||||
|
/** @id MochiKit.DOM.TD */
|
||||||
|
this.TD = createDOMFunc("td");
|
||||||
|
/** @id MochiKit.DOM.TEXTAREA */
|
||||||
|
this.TEXTAREA = createDOMFunc("textarea");
|
||||||
|
/** @id MochiKit.DOM.TFOOT */
|
||||||
|
this.TFOOT = createDOMFunc("tfoot");
|
||||||
|
/** @id MochiKit.DOM.TH */
|
||||||
|
this.TH = createDOMFunc("th");
|
||||||
|
/** @id MochiKit.DOM.THEAD */
|
||||||
|
this.THEAD = createDOMFunc("thead");
|
||||||
|
/** @id MochiKit.DOM.TR */
|
||||||
|
this.TR = createDOMFunc("tr");
|
||||||
|
/** @id MochiKit.DOM.TT */
|
||||||
|
this.TT = createDOMFunc("tt");
|
||||||
|
/** @id MochiKit.DOM.UL */
|
||||||
|
this.UL = createDOMFunc("ul");
|
||||||
|
/** @id MochiKit.DOM.NBSP */
|
||||||
|
this.NBSP = "\u00a0";
|
||||||
/** @id MochiKit.DOM.$ */
|
/** @id MochiKit.DOM.$ */
|
||||||
this.$ = this.getElement;
|
this.$ = this.getElement;
|
||||||
|
|
||||||
m.nameFunctions(this);
|
m.nameFunctions(this);
|
||||||
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -8,7 +8,7 @@ See <http://mochikit.com/> for documentation, downloads, license, etc.
|
|||||||
|
|
||||||
***/
|
***/
|
||||||
|
|
||||||
MochiKit.Base._module('DateTime', '1.5', ['Base']);
|
MochiKit.Base.module(MochiKit, 'DateTime', '1.5', ['Base']);
|
||||||
|
|
||||||
/** @id MochiKit.DateTime.isoDate */
|
/** @id MochiKit.DateTime.isoDate */
|
||||||
MochiKit.DateTime.isoDate = function (str) {
|
MochiKit.DateTime.isoDate = function (str) {
|
||||||
@ -20,10 +20,10 @@ MochiKit.DateTime.isoDate = function (str) {
|
|||||||
if (iso.length === 0) {
|
if (iso.length === 0) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
var date = new Date(iso[0], iso[1] - 1, iso[2]);
|
var date = new Date(parseInt(iso[0], 10), parseInt(iso[1], 10) - 1, parseInt(iso[2], 10));
|
||||||
date.setFullYear(iso[0]);
|
date.setFullYear(iso[0]);
|
||||||
date.setMonth(iso[1] - 1);
|
date.setMonth(iso[1] - 1);
|
||||||
date.setDate(iso[2]);
|
date.setDate(iso[2]);
|
||||||
return date;
|
return date;
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -80,15 +80,17 @@ MochiKit.DateTime.toISOTime = function (date, realISO/* = false */) {
|
|||||||
if (typeof(date) == "undefined" || date === null) {
|
if (typeof(date) == "undefined" || date === null) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
var hh = date.getHours();
|
var _padTwo = MochiKit.DateTime._padTwo;
|
||||||
var mm = date.getMinutes();
|
if (realISO) {
|
||||||
var ss = date.getSeconds();
|
// adjust date for UTC timezone
|
||||||
|
date = new Date(date.getTime() + (date.getTimezoneOffset() * 60000));
|
||||||
|
}
|
||||||
var lst = [
|
var lst = [
|
||||||
((realISO && (hh < 10)) ? "0" + hh : hh),
|
(realISO ? _padTwo(date.getHours()) : date.getHours()),
|
||||||
((mm < 10) ? "0" + mm : mm),
|
_padTwo(date.getMinutes()),
|
||||||
((ss < 10) ? "0" + ss : ss)
|
_padTwo(date.getSeconds())
|
||||||
];
|
];
|
||||||
return lst.join(":");
|
return lst.join(":") + (realISO ? "Z" : "");
|
||||||
};
|
};
|
||||||
|
|
||||||
/** @id MochiKit.DateTime.toISOTimeStamp */
|
/** @id MochiKit.DateTime.toISOTimeStamp */
|
||||||
@ -96,12 +98,13 @@ MochiKit.DateTime.toISOTimestamp = function (date, realISO/* = false*/) {
|
|||||||
if (typeof(date) == "undefined" || date === null) {
|
if (typeof(date) == "undefined" || date === null) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
var time = MochiKit.DateTime.toISOTime(date, realISO);
|
||||||
var sep = realISO ? "T" : " ";
|
var sep = realISO ? "T" : " ";
|
||||||
var foot = realISO ? "Z" : "";
|
|
||||||
if (realISO) {
|
if (realISO) {
|
||||||
|
// adjust date for UTC timezone
|
||||||
date = new Date(date.getTime() + (date.getTimezoneOffset() * 60000));
|
date = new Date(date.getTime() + (date.getTimezoneOffset() * 60000));
|
||||||
}
|
}
|
||||||
return MochiKit.DateTime.toISODate(date) + sep + MochiKit.DateTime.toISOTime(date, realISO) + foot;
|
return MochiKit.DateTime.toISODate(date) + sep + time;
|
||||||
};
|
};
|
||||||
|
|
||||||
/** @id MochiKit.DateTime.toISODate */
|
/** @id MochiKit.DateTime.toISODate */
|
||||||
@ -110,7 +113,7 @@ MochiKit.DateTime.toISODate = function (date) {
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
var _padTwo = MochiKit.DateTime._padTwo;
|
var _padTwo = MochiKit.DateTime._padTwo;
|
||||||
var _padFour = MochiKit.DateTime._padFour;
|
var _padFour = MochiKit.DateTime._padFour;
|
||||||
return [
|
return [
|
||||||
_padFour(date.getFullYear()),
|
_padFour(date.getFullYear()),
|
||||||
_padTwo(date.getMonth() + 1),
|
_padTwo(date.getMonth() + 1),
|
||||||
@ -133,14 +136,14 @@ MochiKit.DateTime._padTwo = function (n) {
|
|||||||
};
|
};
|
||||||
|
|
||||||
MochiKit.DateTime._padFour = function(n) {
|
MochiKit.DateTime._padFour = function(n) {
|
||||||
switch(n.toString().length) {
|
switch(n.toString().length) {
|
||||||
case 1: return "000" + n; break;
|
case 1: return "000" + n; break;
|
||||||
case 2: return "00" + n; break;
|
case 2: return "00" + n; break;
|
||||||
case 3: return "0" + n; break;
|
case 3: return "0" + n; break;
|
||||||
case 4:
|
case 4:
|
||||||
default:
|
default:
|
||||||
return n;
|
return n;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
/** @id MochiKit.DateTime.toPaddedAmericanDate */
|
/** @id MochiKit.DateTime.toPaddedAmericanDate */
|
||||||
|
@ -8,7 +8,7 @@ Copyright (c) 2005 Thomas Fuchs (http://script.aculo.us, http://mir.aculo.us)
|
|||||||
|
|
||||||
***/
|
***/
|
||||||
|
|
||||||
MochiKit.Base._module('DragAndDrop', '1.5', ['Base', 'Iter', 'DOM', 'Signal', 'Visual', 'Position']);
|
MochiKit.Base.module(MochiKit, 'DragAndDrop', '1.5', ['Base', 'Iter', 'DOM', 'Signal', 'Visual', 'Position']);
|
||||||
|
|
||||||
MochiKit.DragAndDrop.Droppables = {
|
MochiKit.DragAndDrop.Droppables = {
|
||||||
/***
|
/***
|
||||||
@ -306,8 +306,9 @@ MochiKit.DragAndDrop.Draggables = {
|
|||||||
var pointer = event.mouse();
|
var pointer = event.mouse();
|
||||||
// Mozilla-based browsers fire successive mousemove events with
|
// Mozilla-based browsers fire successive mousemove events with
|
||||||
// the same coordinates, prevent needless redrawing (moz bug?)
|
// the same coordinates, prevent needless redrawing (moz bug?)
|
||||||
if (this._lastPointer && (MochiKit.Base.repr(this._lastPointer.page) ==
|
if (this._lastPointer &&
|
||||||
MochiKit.Base.repr(pointer.page))) {
|
this._lastPointer.page.x == pointer.page.x &&
|
||||||
|
this._lastPointer.page.y == pointer.page.y) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
this._lastPointer = pointer;
|
this._lastPointer = pointer;
|
||||||
@ -442,8 +443,8 @@ MochiKit.DragAndDrop.Draggable.prototype = {
|
|||||||
currentDelta: function () {
|
currentDelta: function () {
|
||||||
var s = MochiKit.Style.getStyle;
|
var s = MochiKit.Style.getStyle;
|
||||||
return [
|
return [
|
||||||
parseInt(s(this.element, 'left') || '0'),
|
parseInt(s(this.element, 'left') || '0', 10),
|
||||||
parseInt(s(this.element, 'top') || '0')];
|
parseInt(s(this.element, 'top') || '0', 10)];
|
||||||
},
|
},
|
||||||
|
|
||||||
/** @id MochiKit.DragAndDrop.initDrag */
|
/** @id MochiKit.DragAndDrop.initDrag */
|
||||||
@ -481,8 +482,7 @@ MochiKit.DragAndDrop.Draggable.prototype = {
|
|||||||
this.options.selectclass);
|
this.options.selectclass);
|
||||||
}
|
}
|
||||||
if (this.options.zindex) {
|
if (this.options.zindex) {
|
||||||
this.originalZ = parseInt(MochiKit.Style.getStyle(this.element,
|
this.originalZ = MochiKit.Style.getStyle(this.element, 'z-index');
|
||||||
'z-index') || '0');
|
|
||||||
this.element.style.zIndex = this.options.zindex;
|
this.element.style.zIndex = this.options.zindex;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -8,7 +8,7 @@ See <http://mochikit.com/> for documentation, downloads, license, etc.
|
|||||||
|
|
||||||
***/
|
***/
|
||||||
|
|
||||||
MochiKit.Base._module('Format', '1.5', ['Base']);
|
MochiKit.Base.module(MochiKit, 'Format', '1.5', ['Base']);
|
||||||
|
|
||||||
MochiKit.Format._numberFormatter = function (placeholder, header, footer, locale, isPercent, precision, leadingZeros, separatorAt, trailingZeros) {
|
MochiKit.Format._numberFormatter = function (placeholder, header, footer, locale, isPercent, precision, leadingZeros, separatorAt, trailingZeros) {
|
||||||
return function (num) {
|
return function (num) {
|
||||||
@ -104,7 +104,7 @@ MochiKit.Format.numberFormatter = function (pattern, placeholder/* = "" */, loca
|
|||||||
return [
|
return [
|
||||||
self.NAME,
|
self.NAME,
|
||||||
"(",
|
"(",
|
||||||
map(m.repr, args).join(", "),
|
m.map(m.repr, args).join(", "),
|
||||||
")"
|
")"
|
||||||
].join("");
|
].join("");
|
||||||
};
|
};
|
||||||
@ -142,7 +142,7 @@ MochiKit.Format.twoDigitAverage = function (numerator, denominator) {
|
|||||||
|
|
||||||
/** @id MochiKit.Format.twoDigitFloat */
|
/** @id MochiKit.Format.twoDigitFloat */
|
||||||
MochiKit.Format.twoDigitFloat = function (aNumber) {
|
MochiKit.Format.twoDigitFloat = function (aNumber) {
|
||||||
var res = roundToFixed(aNumber, 2);
|
var res = MochiKit.Format.roundToFixed(aNumber, 2);
|
||||||
if (res.indexOf(".00") > 0) {
|
if (res.indexOf(".00") > 0) {
|
||||||
return res.substring(0, res.length - 3);
|
return res.substring(0, res.length - 3);
|
||||||
} else if (res.charAt(res.length - 1) == "0") {
|
} else if (res.charAt(res.length - 1) == "0") {
|
||||||
@ -193,7 +193,7 @@ MochiKit.Format.truncToFixed = function (aNumber, precision) {
|
|||||||
fixed = MochiKit.Format._shiftNumber(fixed, 0);
|
fixed = MochiKit.Format._shiftNumber(fixed, 0);
|
||||||
}
|
}
|
||||||
return fixed;
|
return fixed;
|
||||||
}
|
};
|
||||||
|
|
||||||
/** @id MochiKit.Format.roundToFixed */
|
/** @id MochiKit.Format.roundToFixed */
|
||||||
MochiKit.Format.roundToFixed = function (aNumber, precision) {
|
MochiKit.Format.roundToFixed = function (aNumber, precision) {
|
||||||
@ -205,7 +205,7 @@ MochiKit.Format.roundToFixed = function (aNumber, precision) {
|
|||||||
fixed = MochiKit.Format._shiftNumber(str, -precision);
|
fixed = MochiKit.Format._shiftNumber(str, -precision);
|
||||||
}
|
}
|
||||||
return fixed;
|
return fixed;
|
||||||
}
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Converts a number to a fixed format string. This function handles
|
* Converts a number to a fixed format string. This function handles
|
||||||
@ -221,7 +221,7 @@ MochiKit.Format.roundToFixed = function (aNumber, precision) {
|
|||||||
MochiKit.Format._numberToFixed = function (aNumber, precision) {
|
MochiKit.Format._numberToFixed = function (aNumber, precision) {
|
||||||
var str = aNumber.toString();
|
var str = aNumber.toString();
|
||||||
var parts = str.split(/[eE]/);
|
var parts = str.split(/[eE]/);
|
||||||
var exp = (parts.length === 1) ? 0 : parseInt(parts[1]) || 0;
|
var exp = (parts.length === 1) ? 0 : parseInt(parts[1], 10) || 0;
|
||||||
var fixed = MochiKit.Format._shiftNumber(parts[0], exp);
|
var fixed = MochiKit.Format._shiftNumber(parts[0], exp);
|
||||||
parts = fixed.split(/\./);
|
parts = fixed.split(/\./);
|
||||||
var whole = parts[0];
|
var whole = parts[0];
|
||||||
@ -234,7 +234,7 @@ MochiKit.Format._numberToFixed = function (aNumber, precision) {
|
|||||||
} else {
|
} else {
|
||||||
return whole;
|
return whole;
|
||||||
}
|
}
|
||||||
}
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Shifts the decimal dot location in a fixed format number string.
|
* Shifts the decimal dot location in a fixed format number string.
|
||||||
@ -275,7 +275,7 @@ MochiKit.Format._shiftNumber = function (num, exp) {
|
|||||||
num = "-" + num.substring(2);
|
num = "-" + num.substring(2);
|
||||||
}
|
}
|
||||||
return num;
|
return num;
|
||||||
}
|
};
|
||||||
|
|
||||||
/** @id MochiKit.Format.percentFormat */
|
/** @id MochiKit.Format.percentFormat */
|
||||||
MochiKit.Format.percentFormat = function (aNumber) {
|
MochiKit.Format.percentFormat = function (aNumber) {
|
||||||
|
@ -8,7 +8,7 @@ See <http://mochikit.com/> for documentation, downloads, license, etc.
|
|||||||
|
|
||||||
***/
|
***/
|
||||||
|
|
||||||
MochiKit.Base._module('Iter', '1.5', ['Base']);
|
MochiKit.Base.module(MochiKit, 'Iter', '1.5', ['Base']);
|
||||||
|
|
||||||
MochiKit.Base.update(MochiKit.Iter, {
|
MochiKit.Base.update(MochiKit.Iter, {
|
||||||
/** @id MochiKit.Iter.registerIteratorFactory */
|
/** @id MochiKit.Iter.registerIteratorFactory */
|
||||||
@ -222,14 +222,15 @@ MochiKit.Base.update(MochiKit.Iter, {
|
|||||||
},
|
},
|
||||||
toString: m.forwardCall("repr"),
|
toString: m.forwardCall("repr"),
|
||||||
next: function () {
|
next: function () {
|
||||||
|
if (start >= stop) {
|
||||||
|
throw self.StopIteration;
|
||||||
|
}
|
||||||
|
|
||||||
var rval;
|
var rval;
|
||||||
while (i < start) {
|
while (i < start) {
|
||||||
rval = seq.next();
|
rval = seq.next();
|
||||||
i++;
|
i++;
|
||||||
}
|
}
|
||||||
if (start >= stop) {
|
|
||||||
throw self.StopIteration;
|
|
||||||
}
|
|
||||||
start += step;
|
start += step;
|
||||||
return rval;
|
return rval;
|
||||||
}
|
}
|
||||||
@ -280,15 +281,12 @@ MochiKit.Base.update(MochiKit.Iter, {
|
|||||||
next: function () {
|
next: function () {
|
||||||
while (argiter.length > 1) {
|
while (argiter.length > 1) {
|
||||||
try {
|
try {
|
||||||
var result = argiter[0].next();
|
return argiter[0].next();
|
||||||
return result;
|
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
if (e != self.StopIteration) {
|
if (e != self.StopIteration) {
|
||||||
throw e;
|
throw e;
|
||||||
}
|
}
|
||||||
argiter.shift();
|
argiter.shift();
|
||||||
var result = argiter[0].next();
|
|
||||||
return result;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (argiter.length == 1) {
|
if (argiter.length == 1) {
|
||||||
@ -413,7 +411,7 @@ MochiKit.Base.update(MochiKit.Iter, {
|
|||||||
|
|
||||||
var self = MochiKit.Iter;
|
var self = MochiKit.Iter;
|
||||||
iterable = self.iter(iterable);
|
iterable = self.iter(iterable);
|
||||||
var rval = [];
|
rval = [];
|
||||||
var a_val;
|
var a_val;
|
||||||
try {
|
try {
|
||||||
while (true) {
|
while (true) {
|
||||||
|
@ -8,7 +8,7 @@ See <http://mochikit.com/> for documentation, downloads, license, etc.
|
|||||||
|
|
||||||
***/
|
***/
|
||||||
|
|
||||||
MochiKit.Base._module('Logging', '1.5', ['Base']);
|
MochiKit.Base.module(MochiKit, 'Logging', '1.5', ['Base']);
|
||||||
|
|
||||||
/** @id MochiKit.Logging.LogMessage */
|
/** @id MochiKit.Logging.LogMessage */
|
||||||
MochiKit.Logging.LogMessage = function (num, level, info) {
|
MochiKit.Logging.LogMessage = function (num, level, info) {
|
||||||
@ -187,7 +187,7 @@ MochiKit.Logging.Logger.prototype = {
|
|||||||
}
|
}
|
||||||
var messages = this.getMessages(howMany);
|
var messages = this.getMessages(howMany);
|
||||||
if (messages.length) {
|
if (messages.length) {
|
||||||
var lst = map(function (m) {
|
var lst = MochiKit.Base.map(function (m) {
|
||||||
return '\n [' + m.num + '] ' + m.level + ': ' + m.info.join(' ');
|
return '\n [' + m.num + '] ' + m.level + ': ' + m.info.join(' ');
|
||||||
}, messages);
|
}, messages);
|
||||||
lst.unshift('LAST ' + messages.length + ' MESSAGES:');
|
lst.unshift('LAST ' + messages.length + ' MESSAGES:');
|
||||||
|
@ -8,7 +8,7 @@ See <http://mochikit.com/> for documentation, downloads, license, etc.
|
|||||||
|
|
||||||
***/
|
***/
|
||||||
|
|
||||||
MochiKit.Base._module('LoggingPane', '1.5', ['Base', 'Logging']);
|
MochiKit.Base.module(MochiKit, 'LoggingPane', '1.5', ['Base', 'Logging']);
|
||||||
|
|
||||||
/** @id MochiKit.LoggingPane.createLoggingPane */
|
/** @id MochiKit.LoggingPane.createLoggingPane */
|
||||||
MochiKit.LoggingPane.createLoggingPane = function (inline/* = false */) {
|
MochiKit.LoggingPane.createLoggingPane = function (inline/* = false */) {
|
||||||
@ -24,7 +24,10 @@ MochiKit.LoggingPane.createLoggingPane = function (inline/* = false */) {
|
|||||||
return m._loggingPane;
|
return m._loggingPane;
|
||||||
};
|
};
|
||||||
|
|
||||||
/** @id MochiKit.LoggingPane.LoggingPane */
|
/**
|
||||||
|
* @id MochiKit.LoggingPane.LoggingPane
|
||||||
|
* @constructor
|
||||||
|
*/
|
||||||
MochiKit.LoggingPane.LoggingPane = function (inline/* = false */, logger/* = MochiKit.Logging.logger */) {
|
MochiKit.LoggingPane.LoggingPane = function (inline/* = false */, logger/* = MochiKit.Logging.logger */) {
|
||||||
|
|
||||||
/* Use a div if inline, pop up a window if not */
|
/* Use a div if inline, pop up a window if not */
|
||||||
@ -146,7 +149,7 @@ MochiKit.LoggingPane.LoggingPane = function (inline/* = false */, logger/* = Moc
|
|||||||
infore = new RegExp(infoFilterField.value);
|
infore = new RegExp(infoFilterField.value);
|
||||||
} catch(e) {
|
} catch(e) {
|
||||||
/* If there was an error with the regexes, do no filtering */
|
/* If there was an error with the regexes, do no filtering */
|
||||||
logDebug("Error in filter regex: " + e.message);
|
MochiKit.Logging.logDebug("Error in filter regex: " + e.message);
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -184,7 +187,7 @@ MochiKit.LoggingPane.LoggingPane = function (inline/* = false */, logger/* = Moc
|
|||||||
try {
|
try {
|
||||||
try {
|
try {
|
||||||
debugPane.loggingPane = null;
|
debugPane.loggingPane = null;
|
||||||
} catch(e) { logFatal("Bookmarklet was closed incorrectly."); }
|
} catch(e) { MochiKit.Logging.logFatal("Bookmarklet was closed incorrectly."); }
|
||||||
if (inline) {
|
if (inline) {
|
||||||
debugPane.parentNode.removeChild(debugPane);
|
debugPane.parentNode.removeChild(debugPane);
|
||||||
} else {
|
} else {
|
||||||
@ -224,7 +227,7 @@ MochiKit.LoggingPane.LoggingPane = function (inline/* = false */, logger/* = Moc
|
|||||||
/** @id MochiKit.LoggingPane.filterOnEnter */
|
/** @id MochiKit.LoggingPane.filterOnEnter */
|
||||||
var filterOnEnter = bind(function (event) {
|
var filterOnEnter = bind(function (event) {
|
||||||
event = event || window.event;
|
event = event || window.event;
|
||||||
key = event.which || event.keyCode;
|
var key = event.which || event.keyCode;
|
||||||
if (key == 13) {
|
if (key == 13) {
|
||||||
this.buildAndApplyFilter();
|
this.buildAndApplyFilter();
|
||||||
}
|
}
|
||||||
|
11
frontend/gamma/js/MochiKit/MochiKit.js
vendored
11
frontend/gamma/js/MochiKit/MochiKit.js
vendored
@ -8,17 +8,14 @@ See <http://mochikit.com/> for documentation, downloads, license, etc.
|
|||||||
|
|
||||||
***/
|
***/
|
||||||
|
|
||||||
if (typeof(MochiKit) == 'undefined') {
|
var MochiKit = MochiKit || {};
|
||||||
MochiKit = {};
|
|
||||||
}
|
|
||||||
|
|
||||||
if (typeof(MochiKit.MochiKit) == 'undefined') {
|
/** @id MochiKit.MochiKit */
|
||||||
/** @id MochiKit.MochiKit */
|
MochiKit.MochiKit = MochiKit.MochiKit || {};
|
||||||
MochiKit.MochiKit = {};
|
|
||||||
}
|
|
||||||
|
|
||||||
MochiKit.MochiKit.NAME = "MochiKit.MochiKit";
|
MochiKit.MochiKit.NAME = "MochiKit.MochiKit";
|
||||||
MochiKit.MochiKit.VERSION = "1.5";
|
MochiKit.MochiKit.VERSION = "1.5";
|
||||||
|
MochiKit.MochiKit.__export__ = false;
|
||||||
MochiKit.MochiKit.__repr__ = function () {
|
MochiKit.MochiKit.__repr__ = function () {
|
||||||
return "[" + this.NAME + " " + this.VERSION + "]";
|
return "[" + this.NAME + " " + this.VERSION + "]";
|
||||||
};
|
};
|
||||||
|
@ -8,16 +8,13 @@ See <http://mochikit.com/> for documentation, downloads, license, etc.
|
|||||||
|
|
||||||
***/
|
***/
|
||||||
|
|
||||||
if (typeof(MochiKit) == "undefined") {
|
var MochiKit = MochiKit || {};
|
||||||
MochiKit = {};
|
|
||||||
}
|
|
||||||
|
|
||||||
if (typeof(MochiKit.MockDOM) == "undefined") {
|
MochiKit.MockDOM = MochiKit.MockDOM || {};
|
||||||
MochiKit.MockDOM = {};
|
|
||||||
}
|
|
||||||
|
|
||||||
MochiKit.MockDOM.NAME = "MochiKit.MockDOM";
|
MochiKit.MockDOM.NAME = "MochiKit.MockDOM";
|
||||||
MochiKit.MockDOM.VERSION = "1.5";
|
MochiKit.MockDOM.VERSION = "1.5";
|
||||||
|
MochiKit.MockDOM.__export__ = false;
|
||||||
|
|
||||||
MochiKit.MockDOM.__repr__ = function () {
|
MochiKit.MockDOM.__repr__ = function () {
|
||||||
return "[" + this.NAME + " " + this.VERSION + "]";
|
return "[" + this.NAME + " " + this.VERSION + "]";
|
||||||
|
@ -8,7 +8,7 @@ See <http://mochikit.com/> for documentation, downloads, license, etc.
|
|||||||
|
|
||||||
***/
|
***/
|
||||||
|
|
||||||
MochiKit.Base._module('Position', '1.5', ['Base', 'DOM', 'Style']);
|
MochiKit.Base.module(MochiKit, 'Position', '1.5', ['Base', 'DOM', 'Style']);
|
||||||
|
|
||||||
MochiKit.Base.update(MochiKit.Position, {
|
MochiKit.Base.update(MochiKit.Position, {
|
||||||
// Don't export from this module
|
// Don't export from this module
|
||||||
|
@ -8,7 +8,7 @@ See <http://mochikit.com/> for documentation, downloads, license, etc.
|
|||||||
|
|
||||||
***/
|
***/
|
||||||
|
|
||||||
MochiKit.Base._module('Selector', '1.5', ['Base', 'DOM', 'Iter']);
|
MochiKit.Base.module(MochiKit, 'Selector', '1.5', ['Base', 'DOM', 'Iter']);
|
||||||
|
|
||||||
MochiKit.Selector.Selector = function (expression) {
|
MochiKit.Selector.Selector = function (expression) {
|
||||||
this.params = {classNames: [], pseudoClassNames: []};
|
this.params = {classNames: [], pseudoClassNames: []};
|
||||||
@ -127,8 +127,8 @@ MochiKit.Selector.Selector.prototype = {
|
|||||||
a = 2;
|
a = 2;
|
||||||
b = 0;
|
b = 0;
|
||||||
} else {
|
} else {
|
||||||
a = match[2] && parseInt(match) || null;
|
a = match[2] && parseInt(match, 10) || null;
|
||||||
b = parseInt(match[3]);
|
b = parseInt(match[3], 10);
|
||||||
}
|
}
|
||||||
conditions.push('this.nthChild(element,' + a + ',' + b
|
conditions.push('this.nthChild(element,' + a + ',' + b
|
||||||
+ ',' + !!pseudoClass.match('^nth-last') // Reverse
|
+ ',' + !!pseudoClass.match('^nth-last') // Reverse
|
||||||
@ -167,7 +167,7 @@ MochiKit.Selector.Selector.prototype = {
|
|||||||
break;
|
break;
|
||||||
case 'not':
|
case 'not':
|
||||||
var subselector = new MochiKit.Selector.Selector(pseudoClassArgument);
|
var subselector = new MochiKit.Selector.Selector(pseudoClassArgument);
|
||||||
conditions.push('!( ' + subselector.buildMatchExpression() + ')')
|
conditions.push('!( ' + subselector.buildMatchExpression() + ')');
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -177,7 +177,7 @@ MochiKit.Selector.Selector.prototype = {
|
|||||||
var value = 'MochiKit.DOM.getNodeAttribute(element, ' + repr(attribute.name) + ')';
|
var value = 'MochiKit.DOM.getNodeAttribute(element, ' + repr(attribute.name) + ')';
|
||||||
var splitValueBy = function (delimiter) {
|
var splitValueBy = function (delimiter) {
|
||||||
return value + '.split(' + repr(delimiter) + ')';
|
return value + '.split(' + repr(delimiter) + ')';
|
||||||
}
|
};
|
||||||
conditions.push(value + ' != null');
|
conditions.push(value + ' != null');
|
||||||
switch (attribute.operator) {
|
switch (attribute.operator) {
|
||||||
case '=':
|
case '=':
|
||||||
@ -352,6 +352,12 @@ MochiKit.Base.update(MochiKit.Selector, {
|
|||||||
return res;
|
return res;
|
||||||
};
|
};
|
||||||
return MochiKit.Base.flattenArray(MochiKit.Base.map(function (expression) {
|
return MochiKit.Base.flattenArray(MochiKit.Base.map(function (expression) {
|
||||||
|
try {
|
||||||
|
var res = element.querySelectorAll(expression);
|
||||||
|
return Array.prototype.slice.call(res, 0);
|
||||||
|
} catch (ignore) {
|
||||||
|
// No querySelectorAll or extended expression syntax used
|
||||||
|
}
|
||||||
var nextScope = "";
|
var nextScope = "";
|
||||||
var reducer = function (results, expr) {
|
var reducer = function (results, expr) {
|
||||||
var match = expr.match(/^[>+~]$/);
|
var match = expr.match(/^[>+~]$/);
|
||||||
|
@ -8,7 +8,7 @@ See <http://mochikit.com/> for documentation, downloads, license, etc.
|
|||||||
|
|
||||||
***/
|
***/
|
||||||
|
|
||||||
MochiKit.Base._module('Signal', '1.5', ['Base', 'DOM', 'Style']);
|
MochiKit.Base.module(MochiKit, 'Signal', '1.5', ['Base', 'DOM']);
|
||||||
|
|
||||||
MochiKit.Signal._observers = [];
|
MochiKit.Signal._observers = [];
|
||||||
|
|
||||||
@ -266,16 +266,17 @@ MochiKit.Base.update(MochiKit.Signal.Event.prototype, {
|
|||||||
|
|
||||||
if (this.type() && (
|
if (this.type() && (
|
||||||
this.type().indexOf('mouse') === 0 ||
|
this.type().indexOf('mouse') === 0 ||
|
||||||
|
this.type().indexOf('drag') === 0 ||
|
||||||
this.type().indexOf('click') != -1 ||
|
this.type().indexOf('click') != -1 ||
|
||||||
this.type() == 'contextmenu')) {
|
this.type() == 'contextmenu')) {
|
||||||
|
|
||||||
m.client = new MochiKit.Style.Coordinates(0, 0);
|
m.client = { x: 0, y: 0 };
|
||||||
if (e.clientX || e.clientY) {
|
if (e.clientX || e.clientY) {
|
||||||
m.client.x = (!e.clientX || e.clientX < 0) ? 0 : e.clientX;
|
m.client.x = (!e.clientX || e.clientX < 0) ? 0 : e.clientX;
|
||||||
m.client.y = (!e.clientY || e.clientY < 0) ? 0 : e.clientY;
|
m.client.y = (!e.clientY || e.clientY < 0) ? 0 : e.clientY;
|
||||||
}
|
}
|
||||||
|
|
||||||
m.page = new MochiKit.Style.Coordinates(0, 0);
|
m.page = { x: 0, y: 0 };
|
||||||
if (e.pageX || e.pageY) {
|
if (e.pageX || e.pageY) {
|
||||||
m.page.x = (!e.pageX || e.pageX < 0) ? 0 : e.pageX;
|
m.page.x = (!e.pageX || e.pageX < 0) ? 0 : e.pageX;
|
||||||
m.page.y = (!e.pageY || e.pageY < 0) ? 0 : e.pageY;
|
m.page.y = (!e.pageY || e.pageY < 0) ? 0 : e.pageY;
|
||||||
@ -337,7 +338,7 @@ MochiKit.Base.update(MochiKit.Signal.Event.prototype, {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (this.type() == 'mousewheel') {
|
if (this.type() == 'mousewheel') {
|
||||||
m.wheel = new MochiKit.Style.Coordinates(0, 0);
|
m.wheel = { x: 0, y: 0 };
|
||||||
if (e.wheelDeltaX || e.wheelDeltaY) {
|
if (e.wheelDeltaX || e.wheelDeltaY) {
|
||||||
m.wheel.x = e.wheelDeltaX / -40 || 0;
|
m.wheel.x = e.wheelDeltaX / -40 || 0;
|
||||||
m.wheel.y = e.wheelDeltaY / -40 || 0;
|
m.wheel.y = e.wheelDeltaY / -40 || 0;
|
||||||
@ -672,6 +673,18 @@ MochiKit.Base.update(MochiKit.Signal, {
|
|||||||
return ident;
|
return ident;
|
||||||
},
|
},
|
||||||
|
|
||||||
|
/** @id MochiKit.Signal.connectOnce */
|
||||||
|
connectOnce: function (src, sig, objOrFunc/* optional */, funcOrStr) {
|
||||||
|
var self = MochiKit.Signal;
|
||||||
|
var ident1 = self.connect(src, sig, objOrFunc, funcOrStr);
|
||||||
|
var ident2;
|
||||||
|
ident2 = self.connect(src, sig, function() {
|
||||||
|
self.disconnect(ident1);
|
||||||
|
self.disconnect(ident2);
|
||||||
|
});
|
||||||
|
return ident1;
|
||||||
|
},
|
||||||
|
|
||||||
_disconnect: function (ident) {
|
_disconnect: function (ident) {
|
||||||
// already disconnected
|
// already disconnected
|
||||||
if (!ident.connected) {
|
if (!ident.connected) {
|
||||||
@ -715,7 +728,7 @@ MochiKit.Base.update(MochiKit.Signal, {
|
|||||||
var o = observers[i];
|
var o = observers[i];
|
||||||
if (o.source === src && o.signal === sig && o.objOrFunc === obj && o.funcOrStr === func) {
|
if (o.source === src && o.signal === sig && o.objOrFunc === obj && o.funcOrStr === func) {
|
||||||
self._disconnect(o);
|
self._disconnect(o);
|
||||||
if (!self._lock) {
|
if (self._lock === 0) {
|
||||||
observers.splice(i, 1);
|
observers.splice(i, 1);
|
||||||
} else {
|
} else {
|
||||||
self._dirty = true;
|
self._dirty = true;
|
||||||
@ -727,7 +740,7 @@ MochiKit.Base.update(MochiKit.Signal, {
|
|||||||
var idx = m.findIdentical(observers, ident);
|
var idx = m.findIdentical(observers, ident);
|
||||||
if (idx >= 0) {
|
if (idx >= 0) {
|
||||||
self._disconnect(ident);
|
self._disconnect(ident);
|
||||||
if (!self._lock) {
|
if (self._lock === 0) {
|
||||||
observers.splice(idx, 1);
|
observers.splice(idx, 1);
|
||||||
} else {
|
} else {
|
||||||
self._dirty = true;
|
self._dirty = true;
|
||||||
@ -743,7 +756,7 @@ MochiKit.Base.update(MochiKit.Signal, {
|
|||||||
var self = MochiKit.Signal;
|
var self = MochiKit.Signal;
|
||||||
var observers = self._observers;
|
var observers = self._observers;
|
||||||
var disconnect = self._disconnect;
|
var disconnect = self._disconnect;
|
||||||
var locked = self._lock;
|
var lock = self._lock;
|
||||||
var dirty = self._dirty;
|
var dirty = self._dirty;
|
||||||
if (typeof(funcOrStr) === 'undefined') {
|
if (typeof(funcOrStr) === 'undefined') {
|
||||||
funcOrStr = null;
|
funcOrStr = null;
|
||||||
@ -753,10 +766,10 @@ MochiKit.Base.update(MochiKit.Signal, {
|
|||||||
if (ident.objOrFunc === objOrFunc &&
|
if (ident.objOrFunc === objOrFunc &&
|
||||||
(funcOrStr === null || ident.funcOrStr === funcOrStr)) {
|
(funcOrStr === null || ident.funcOrStr === funcOrStr)) {
|
||||||
disconnect(ident);
|
disconnect(ident);
|
||||||
if (locked) {
|
if (lock === 0) {
|
||||||
dirty = true;
|
|
||||||
} else {
|
|
||||||
observers.splice(i, 1);
|
observers.splice(i, 1);
|
||||||
|
} else {
|
||||||
|
dirty = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -774,7 +787,7 @@ MochiKit.Base.update(MochiKit.Signal, {
|
|||||||
var disconnect = self._disconnect;
|
var disconnect = self._disconnect;
|
||||||
var observers = self._observers;
|
var observers = self._observers;
|
||||||
var i, ident;
|
var i, ident;
|
||||||
var locked = self._lock;
|
var lock = self._lock;
|
||||||
var dirty = self._dirty;
|
var dirty = self._dirty;
|
||||||
if (signals.length === 0) {
|
if (signals.length === 0) {
|
||||||
// disconnect all
|
// disconnect all
|
||||||
@ -782,7 +795,7 @@ MochiKit.Base.update(MochiKit.Signal, {
|
|||||||
ident = observers[i];
|
ident = observers[i];
|
||||||
if (ident.source === src) {
|
if (ident.source === src) {
|
||||||
disconnect(ident);
|
disconnect(ident);
|
||||||
if (!locked) {
|
if (lock === 0) {
|
||||||
observers.splice(i, 1);
|
observers.splice(i, 1);
|
||||||
} else {
|
} else {
|
||||||
dirty = true;
|
dirty = true;
|
||||||
@ -798,7 +811,7 @@ MochiKit.Base.update(MochiKit.Signal, {
|
|||||||
ident = observers[i];
|
ident = observers[i];
|
||||||
if (ident.source === src && ident.signal in sigs) {
|
if (ident.source === src && ident.signal in sigs) {
|
||||||
disconnect(ident);
|
disconnect(ident);
|
||||||
if (!locked) {
|
if (lock === 0) {
|
||||||
observers.splice(i, 1);
|
observers.splice(i, 1);
|
||||||
} else {
|
} else {
|
||||||
dirty = true;
|
dirty = true;
|
||||||
@ -818,7 +831,7 @@ MochiKit.Base.update(MochiKit.Signal, {
|
|||||||
}
|
}
|
||||||
var args = MochiKit.Base.extend(null, arguments, 2);
|
var args = MochiKit.Base.extend(null, arguments, 2);
|
||||||
var errors = [];
|
var errors = [];
|
||||||
self._lock = true;
|
self._lock++;
|
||||||
for (var i = 0; i < observers.length; i++) {
|
for (var i = 0; i < observers.length; i++) {
|
||||||
var ident = observers[i];
|
var ident = observers[i];
|
||||||
if (ident.source === src && ident.signal === sig &&
|
if (ident.source === src && ident.signal === sig &&
|
||||||
@ -837,8 +850,8 @@ MochiKit.Base.update(MochiKit.Signal, {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
self._lock = false;
|
self._lock--;
|
||||||
if (self._dirty) {
|
if (self._lock === 0 && self._dirty) {
|
||||||
self._dirty = false;
|
self._dirty = false;
|
||||||
for (var i = observers.length - 1; i >= 0; i--) {
|
for (var i = observers.length - 1; i >= 0; i--) {
|
||||||
if (!observers[i].connected) {
|
if (!observers[i].connected) {
|
||||||
@ -861,7 +874,7 @@ MochiKit.Signal.__new__ = function (win) {
|
|||||||
var m = MochiKit.Base;
|
var m = MochiKit.Base;
|
||||||
this._document = document;
|
this._document = document;
|
||||||
this._window = win;
|
this._window = win;
|
||||||
this._lock = false;
|
this._lock = 0;
|
||||||
this._dirty = false;
|
this._dirty = false;
|
||||||
|
|
||||||
try {
|
try {
|
||||||
|
@ -6,7 +6,7 @@ See scriptaculous.js for full license.
|
|||||||
|
|
||||||
***/
|
***/
|
||||||
|
|
||||||
MochiKit.Base._module('Sortable', '1.5', ['Base', 'Iter', 'DOM', 'Position', 'DragAndDrop']);
|
MochiKit.Base.module(MochiKit, 'Sortable', '1.5', ['Base', 'Iter', 'DOM', 'Position', 'DragAndDrop']);
|
||||||
|
|
||||||
MochiKit.Base.update(MochiKit.Sortable, {
|
MochiKit.Base.update(MochiKit.Sortable, {
|
||||||
__export__: false,
|
__export__: false,
|
||||||
@ -179,7 +179,7 @@ MochiKit.Base.update(MochiKit.Sortable, {
|
|||||||
onhover: self.onHover,
|
onhover: self.onHover,
|
||||||
tree: options.tree,
|
tree: options.tree,
|
||||||
accept: options.accept
|
accept: options.accept
|
||||||
}
|
};
|
||||||
|
|
||||||
var options_for_tree = {
|
var options_for_tree = {
|
||||||
onhover: self.onEmptyHover,
|
onhover: self.onEmptyHover,
|
||||||
@ -187,7 +187,7 @@ MochiKit.Base.update(MochiKit.Sortable, {
|
|||||||
containment: options.containment,
|
containment: options.containment,
|
||||||
hoverclass: options.hoverclass,
|
hoverclass: options.hoverclass,
|
||||||
accept: options.accept
|
accept: options.accept
|
||||||
}
|
};
|
||||||
|
|
||||||
// fix for gecko engine
|
// fix for gecko engine
|
||||||
MochiKit.DOM.removeEmptyTextNodes(element);
|
MochiKit.DOM.removeEmptyTextNodes(element);
|
||||||
@ -430,11 +430,11 @@ MochiKit.Base.update(MochiKit.Sortable, {
|
|||||||
children: [],
|
children: [],
|
||||||
position: parent.children.length,
|
position: parent.children.length,
|
||||||
container: self._findChildrenElement(children[i], options.treeTag.toUpperCase())
|
container: self._findChildrenElement(children[i], options.treeTag.toUpperCase())
|
||||||
}
|
};
|
||||||
|
|
||||||
/* Get the element containing the children and recurse over it */
|
/* Get the element containing the children and recurse over it */
|
||||||
if (child.container) {
|
if (child.container) {
|
||||||
self._tree(child.container, options, child)
|
self._tree(child.container, options, child);
|
||||||
}
|
}
|
||||||
|
|
||||||
parent.children.push (child);
|
parent.children.push (child);
|
||||||
@ -475,7 +475,7 @@ MochiKit.Base.update(MochiKit.Sortable, {
|
|||||||
children: new Array,
|
children: new Array,
|
||||||
container: element,
|
container: element,
|
||||||
position: 0
|
position: 0
|
||||||
}
|
};
|
||||||
|
|
||||||
return MochiKit.Sortable._tree(element, options, root);
|
return MochiKit.Sortable._tree(element, options, root);
|
||||||
},
|
},
|
||||||
|
@ -6,9 +6,12 @@ See <http://mochikit.com/> for documentation, downloads, license, etc.
|
|||||||
|
|
||||||
(c) 2005-2006 Bob Ippolito, Beau Hartshorne. All rights Reserved.
|
(c) 2005-2006 Bob Ippolito, Beau Hartshorne. All rights Reserved.
|
||||||
|
|
||||||
|
The MochiKit.Style.getElementPosition function is adapted from
|
||||||
|
YAHOO.util.Dom.getXY v0.9.0. which is copyrighted by Yahoo! Inc.
|
||||||
|
|
||||||
***/
|
***/
|
||||||
|
|
||||||
MochiKit.Base._module('Style', '1.5', ['Base', 'DOM']);
|
MochiKit.Base.module(MochiKit, 'Style', '1.5', ['Base', 'DOM']);
|
||||||
|
|
||||||
|
|
||||||
/** @id MochiKit.Style.Dimensions */
|
/** @id MochiKit.Style.Dimensions */
|
||||||
@ -179,7 +182,7 @@ MochiKit.Base.update(MochiKit.Style, {
|
|||||||
o.nodeType == null &&
|
o.nodeType == null &&
|
||||||
typeof(o.x) == "number" &&
|
typeof(o.x) == "number" &&
|
||||||
typeof(o.y) == "number";
|
typeof(o.y) == "number";
|
||||||
}
|
};
|
||||||
|
|
||||||
if (typeof(elem) == "string") {
|
if (typeof(elem) == "string") {
|
||||||
elem = dom.getElement(elem);
|
elem = dom.getElement(elem);
|
||||||
@ -197,7 +200,7 @@ MochiKit.Base.update(MochiKit.Style, {
|
|||||||
var de = d.documentElement;
|
var de = d.documentElement;
|
||||||
var b = d.body;
|
var b = d.body;
|
||||||
|
|
||||||
if (!elem.parentNode && elem.x && elem.y) {
|
if (isCoordinates(elem)) {
|
||||||
/* it's just a MochiKit.Style.Coordinates object */
|
/* it's just a MochiKit.Style.Coordinates object */
|
||||||
c.x += elem.x || 0;
|
c.x += elem.x || 0;
|
||||||
c.y += elem.y || 0;
|
c.y += elem.y || 0;
|
||||||
@ -228,8 +231,8 @@ MochiKit.Base.update(MochiKit.Style, {
|
|||||||
|
|
||||||
if (parent != elem) {
|
if (parent != elem) {
|
||||||
while (parent) {
|
while (parent) {
|
||||||
c.x += parseInt(parent.style.borderLeftWidth) || 0;
|
c.x += parseInt(parent.style.borderLeftWidth, 10) || 0;
|
||||||
c.y += parseInt(parent.style.borderTopWidth) || 0;
|
c.y += parseInt(parent.style.borderTopWidth, 10) || 0;
|
||||||
c.x += parent.offsetLeft;
|
c.x += parent.offsetLeft;
|
||||||
c.y += parent.offsetTop;
|
c.y += parent.offsetTop;
|
||||||
parent = parent.offsetParent;
|
parent = parent.offsetParent;
|
||||||
@ -390,7 +393,7 @@ MochiKit.Base.update(MochiKit.Style, {
|
|||||||
if (contentSize) {
|
if (contentSize) {
|
||||||
var tableCell = 'colSpan' in elem && 'rowSpan' in elem;
|
var tableCell = 'colSpan' in elem && 'rowSpan' in elem;
|
||||||
var collapse = (tableCell && elem.parentNode && self.getStyle(
|
var collapse = (tableCell && elem.parentNode && self.getStyle(
|
||||||
elem.parentNode, 'borderCollapse') == 'collapse')
|
elem.parentNode, 'borderCollapse') == 'collapse');
|
||||||
if (collapse) {
|
if (collapse) {
|
||||||
if (/MSIE/.test(navigator.userAgent)) {
|
if (/MSIE/.test(navigator.userAgent)) {
|
||||||
var borderLeftQuota = elem.previousSibling? 0.5 : 1;
|
var borderLeftQuota = elem.previousSibling? 0.5 : 1;
|
||||||
@ -543,8 +546,8 @@ MochiKit.Base.update(MochiKit.Style, {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Backwards compatibility aliases
|
// Backwards compatibility aliases
|
||||||
m._deprecated(this, 'elementPosition', 'MochiKit.Style.getElementPosition', '1.3');
|
m._deprecated(this, 'elementPosition', 'MochiKit.Style.getElementPosition', '1.3', true);
|
||||||
m._deprecated(this, 'elementDimensions', 'MochiKit.Style.getElementDimensions', '1.3');
|
m._deprecated(this, 'elementDimensions', 'MochiKit.Style.getElementDimensions', '1.3', true);
|
||||||
|
|
||||||
this.hideElement = m.partial(this.setDisplayForElement, 'none');
|
this.hideElement = m.partial(this.setDisplayForElement, 'none');
|
||||||
// TODO: showElement could be improved by using getDefaultDisplay.
|
// TODO: showElement could be improved by using getDefaultDisplay.
|
||||||
|
@ -8,7 +8,7 @@ See <http://mochikit.com/> for documentation, downloads, license, etc.
|
|||||||
|
|
||||||
***/
|
***/
|
||||||
|
|
||||||
MochiKit.Base._module('Test', '1.5', ['Base']);
|
MochiKit.Base.module(MochiKit, 'Test', '1.5', ['Base']);
|
||||||
|
|
||||||
MochiKit.Test.runTests = function (obj) {
|
MochiKit.Test.runTests = function (obj) {
|
||||||
if (typeof(obj) == "string") {
|
if (typeof(obj) == "string") {
|
||||||
|
@ -8,7 +8,7 @@ See <http://mochikit.com/> for documentation, downloads, license, etc.
|
|||||||
|
|
||||||
***/
|
***/
|
||||||
|
|
||||||
MochiKit.Base._module('Text', '1.5', ['Base', 'Format']);
|
MochiKit.Base.module(MochiKit, 'Text', '1.5', ['Base', 'Format']);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Checks if a text string starts with the specified substring. If
|
* Checks if a text string starts with the specified substring. If
|
||||||
@ -22,7 +22,7 @@ MochiKit.Base._module('Text', '1.5', ['Base', 'Format']);
|
|||||||
*/
|
*/
|
||||||
MochiKit.Text.startsWith = function (substr, str) {
|
MochiKit.Text.startsWith = function (substr, str) {
|
||||||
return str != null && substr != null && str.indexOf(substr) == 0;
|
return str != null && substr != null && str.indexOf(substr) == 0;
|
||||||
}
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Checks if a text string ends with the specified substring. If
|
* Checks if a text string ends with the specified substring. If
|
||||||
@ -37,7 +37,7 @@ MochiKit.Text.startsWith = function (substr, str) {
|
|||||||
MochiKit.Text.endsWith = function (substr, str) {
|
MochiKit.Text.endsWith = function (substr, str) {
|
||||||
return str != null && substr != null &&
|
return str != null && substr != null &&
|
||||||
str.lastIndexOf(substr) == Math.max(str.length - substr.length, 0);
|
str.lastIndexOf(substr) == Math.max(str.length - substr.length, 0);
|
||||||
}
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Checks if a text string contains the specified substring. If
|
* Checks if a text string contains the specified substring. If
|
||||||
@ -51,7 +51,7 @@ MochiKit.Text.endsWith = function (substr, str) {
|
|||||||
*/
|
*/
|
||||||
MochiKit.Text.contains = function (substr, str) {
|
MochiKit.Text.contains = function (substr, str) {
|
||||||
return str != null && substr != null && str.indexOf(substr) >= 0;
|
return str != null && substr != null && str.indexOf(substr) >= 0;
|
||||||
}
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Adds a character to the left-hand side of a string until it
|
* Adds a character to the left-hand side of a string until it
|
||||||
@ -71,7 +71,7 @@ MochiKit.Text.padLeft = function (str, minLength, fillChar) {
|
|||||||
str = fillChar + str;
|
str = fillChar + str;
|
||||||
}
|
}
|
||||||
return str;
|
return str;
|
||||||
}
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Adds a character to the right-hand side of a string until it
|
* Adds a character to the right-hand side of a string until it
|
||||||
@ -91,7 +91,7 @@ MochiKit.Text.padRight = function (str, minLength, fillChar) {
|
|||||||
str += fillChar;
|
str += fillChar;
|
||||||
}
|
}
|
||||||
return str;
|
return str;
|
||||||
}
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns a truncated copy of a string. If the string is shorter
|
* Returns a truncated copy of a string. If the string is shorter
|
||||||
@ -119,29 +119,55 @@ MochiKit.Text.truncate = function (str, maxLength, tail) {
|
|||||||
} else {
|
} else {
|
||||||
return str.slice(0, maxLength);
|
return str.slice(0, maxLength);
|
||||||
}
|
}
|
||||||
}
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Splits a text string, applies a function and joins the results
|
* Splits a text string using separator as the split point
|
||||||
* back together again. This is a convenience function for calling
|
* If max is given, at most max splits are done, giving at most
|
||||||
* split(), map() and join() separately. It can be used to easily
|
* max + 1 elements in the returned list.
|
||||||
* trim each line in a text string (using the strip function), or to
|
|
||||||
* translate a text word-by-word.
|
|
||||||
*
|
*
|
||||||
* @param {Function} func the function to apply
|
|
||||||
* @param {String} str the string to split
|
* @param {String} str the string to split
|
||||||
* @param {String} [separator] the separator character to use,
|
* @param {String/RegExp} [separator] the separator char or regexp to use,
|
||||||
* defaults to newline
|
* defaults to newline
|
||||||
*
|
* @param {Number} [max] the maximum number of parts to return
|
||||||
* @return {String} a string with the joined up results
|
* @return {Array} an array of parts of the string
|
||||||
*/
|
*/
|
||||||
MochiKit.Text.splitJoin = function (func, str, separator) {
|
MochiKit.Text.split = function (str, separator, max) {
|
||||||
if (str == null || str.length == 0) {
|
if (str == null) {
|
||||||
return str;
|
return str;
|
||||||
}
|
}
|
||||||
separator = separator || '\n'
|
separator = separator || '\n';
|
||||||
return MochiKit.Base.map(func, str.split(separator)).join(separator);
|
var bits = str.split(separator);
|
||||||
}
|
if ((typeof(max) == "undefined") || max >= bits.length - 1) {
|
||||||
|
return bits;
|
||||||
|
}
|
||||||
|
bits.splice(max, bits.length, bits.slice(max, bits.length).join(separator));
|
||||||
|
return bits;
|
||||||
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Splits a text string using separator as the split point
|
||||||
|
* If max is given, at most max splits are done,
|
||||||
|
* using splits from the right
|
||||||
|
*
|
||||||
|
* @param {String} str the string to split
|
||||||
|
* @param {String/RegExp} [separator] the separator char or regexp to use,
|
||||||
|
* defaults to newline
|
||||||
|
* @param {Number} [max] the maximum number of parts to return
|
||||||
|
* @return {Array} an array of parts of the string
|
||||||
|
*/
|
||||||
|
MochiKit.Text.rsplit = function (str, separator, max) {
|
||||||
|
if (str == null) {
|
||||||
|
return str;
|
||||||
|
}
|
||||||
|
separator = separator || '\n';
|
||||||
|
var bits = str.split(separator);
|
||||||
|
if ((typeof(max) == "undefined") || max >= bits.length - 1){
|
||||||
|
return bits;
|
||||||
|
}
|
||||||
|
bits.splice(0, bits.length-max, bits.slice(0, bits.length-max).join(separator));
|
||||||
|
return bits;
|
||||||
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Creates a formatter function for the specified formatter pattern
|
* Creates a formatter function for the specified formatter pattern
|
||||||
@ -158,7 +184,7 @@ MochiKit.Text.splitJoin = function (func, str, separator) {
|
|||||||
* @throws FormatPatternError if the format pattern was invalid
|
* @throws FormatPatternError if the format pattern was invalid
|
||||||
*/
|
*/
|
||||||
MochiKit.Text.formatter = function (pattern, locale) {
|
MochiKit.Text.formatter = function (pattern, locale) {
|
||||||
if (typeof(locale) == "undefined") {
|
if (locale == null) {
|
||||||
locale = MochiKit.Format.formatLocale();
|
locale = MochiKit.Format.formatLocale();
|
||||||
} else if (typeof(locale) == "string") {
|
} else if (typeof(locale) == "string") {
|
||||||
locale = MochiKit.Format.formatLocale(locale);
|
locale = MochiKit.Format.formatLocale(locale);
|
||||||
@ -175,8 +201,8 @@ MochiKit.Text.formatter = function (pattern, locale) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
return res.join("");
|
return res.join("");
|
||||||
}
|
};
|
||||||
}
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Formats the specified arguments according to a formatter pattern.
|
* Formats the specified arguments according to a formatter pattern.
|
||||||
@ -193,7 +219,7 @@ MochiKit.Text.formatter = function (pattern, locale) {
|
|||||||
MochiKit.Text.format = function (pattern/*, ...*/) {
|
MochiKit.Text.format = function (pattern/*, ...*/) {
|
||||||
var func = MochiKit.Text.formatter(pattern);
|
var func = MochiKit.Text.formatter(pattern);
|
||||||
return func.apply(this, MochiKit.Base.extend([], arguments, 1));
|
return func.apply(this, MochiKit.Base.extend([], arguments, 1));
|
||||||
}
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Format a value with the specified format specifier.
|
* Format a value with the specified format specifier.
|
||||||
@ -205,24 +231,29 @@ MochiKit.Text.format = function (pattern/*, ...*/) {
|
|||||||
* LOCALE.en_US
|
* LOCALE.en_US
|
||||||
*
|
*
|
||||||
* @return {String} the formatted output string
|
* @return {String} the formatted output string
|
||||||
|
*
|
||||||
|
* @throws FormatPatternError if the format specifier was invalid
|
||||||
*/
|
*/
|
||||||
MochiKit.Text.formatValue = function (spec, value, locale) {
|
MochiKit.Text.formatValue = function (spec, value, locale) {
|
||||||
var self = MochiKit.Text;
|
var self = MochiKit.Text;
|
||||||
if (typeof(spec) === "string") {
|
if (typeof(spec) === "string") {
|
||||||
spec = self._parseFormatFlags(spec, 0, spec.length - 1);
|
spec = self._parseFormatFlags(spec, 0, spec.length);
|
||||||
}
|
}
|
||||||
for (var i = 0; spec.path != null && i < spec.path.length; i++) {
|
for (var i = 0; spec.path != null && i < spec.path.length; i++) {
|
||||||
if (value != null) {
|
if (value != null) {
|
||||||
value = value[spec.path[i]];
|
value = value[spec.path[i]];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (typeof(locale) == "undefined") {
|
if (locale == null) {
|
||||||
locale = MochiKit.Format.formatLocale();
|
locale = MochiKit.Format.formatLocale();
|
||||||
} else if (typeof(locale) == "string") {
|
} else if (typeof(locale) == "string") {
|
||||||
locale = MochiKit.Format.formatLocale(locale);
|
locale = MochiKit.Format.formatLocale(locale);
|
||||||
}
|
}
|
||||||
var str = "";
|
var str = "";
|
||||||
if (spec.numeric) {
|
if (spec.type == "number") {
|
||||||
|
if (value instanceof Number) {
|
||||||
|
value = value.valueOf();
|
||||||
|
}
|
||||||
if (typeof(value) != "number" || isNaN(value)) {
|
if (typeof(value) != "number" || isNaN(value)) {
|
||||||
str = "";
|
str = "";
|
||||||
} else if (value === Number.POSITIVE_INFINITY) {
|
} else if (value === Number.POSITIVE_INFINITY) {
|
||||||
@ -230,8 +261,7 @@ MochiKit.Text.formatValue = function (spec, value, locale) {
|
|||||||
} else if (value === Number.NEGATIVE_INFINITY) {
|
} else if (value === Number.NEGATIVE_INFINITY) {
|
||||||
str = "-\u221e";
|
str = "-\u221e";
|
||||||
} else {
|
} else {
|
||||||
var sign = (spec.sign === "-") ? "" : spec.sign;
|
var sign = (value < 0) ? "-" : spec.sign;
|
||||||
sign = (value < 0) ? "-" : sign;
|
|
||||||
value = Math.abs(value);
|
value = Math.abs(value);
|
||||||
if (spec.format === "%") {
|
if (spec.format === "%") {
|
||||||
str = self._truncToPercent(value, spec.precision);
|
str = self._truncToPercent(value, spec.precision);
|
||||||
@ -254,7 +284,7 @@ MochiKit.Text.formatValue = function (spec, value, locale) {
|
|||||||
} else if (spec.padding == "0") {
|
} else if (spec.padding == "0") {
|
||||||
str = self.padLeft(str, spec.width - sign.length, "0");
|
str = self.padLeft(str, spec.width - sign.length, "0");
|
||||||
}
|
}
|
||||||
str = self._localizeNumber(str, locale, spec.grouping);
|
str = self._localizeNumber(str, locale, spec.group);
|
||||||
str = sign + str;
|
str = sign + str;
|
||||||
}
|
}
|
||||||
if (str !== "" && spec.format === "%") {
|
if (str !== "" && spec.format === "%") {
|
||||||
@ -264,7 +294,7 @@ MochiKit.Text.formatValue = function (spec, value, locale) {
|
|||||||
if (spec.format == "r") {
|
if (spec.format == "r") {
|
||||||
str = MochiKit.Base.repr(value);
|
str = MochiKit.Base.repr(value);
|
||||||
} else {
|
} else {
|
||||||
str = (value == null) ? "null" : value.toString();
|
str = (value == null) ? "" : value.toString();
|
||||||
}
|
}
|
||||||
str = self.truncate(str, spec.precision);
|
str = self.truncate(str, spec.precision);
|
||||||
}
|
}
|
||||||
@ -274,7 +304,7 @@ MochiKit.Text.formatValue = function (spec, value, locale) {
|
|||||||
str = self.padLeft(str, spec.width);
|
str = self.padLeft(str, spec.width);
|
||||||
}
|
}
|
||||||
return str;
|
return str;
|
||||||
}
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Adjust an already formatted numeric string for locale-specific
|
* Adjust an already formatted numeric string for locale-specific
|
||||||
@ -284,16 +314,16 @@ MochiKit.Text.formatValue = function (spec, value, locale) {
|
|||||||
*
|
*
|
||||||
* @param {String} num the formatted number string
|
* @param {String} num the formatted number string
|
||||||
* @param {Object} locale the formatting locale to use
|
* @param {Object} locale the formatting locale to use
|
||||||
* @param {Boolean} grouping the grouping flag
|
* @param {Boolean} group the grouping flag
|
||||||
*
|
*
|
||||||
* @return {String} the localized number string
|
* @return {String} the localized number string
|
||||||
*/
|
*/
|
||||||
MochiKit.Text._localizeNumber = function (num, locale, grouping) {
|
MochiKit.Text._localizeNumber = function (num, locale, group) {
|
||||||
var parts = num.split(/\./);
|
var parts = num.split(/\./);
|
||||||
var whole = parts[0];
|
var whole = parts[0];
|
||||||
var frac = (parts.length == 1) ? "" : parts[1];
|
var frac = (parts.length == 1) ? "" : parts[1];
|
||||||
var res = (frac.length > 0) ? locale.decimal : "";
|
var res = (frac.length > 0) ? locale.decimal : "";
|
||||||
while (grouping && frac.length > 3) {
|
while (group && frac.length > 3) {
|
||||||
res = res + frac.substring(0, 3) + locale.separator;
|
res = res + frac.substring(0, 3) + locale.separator;
|
||||||
frac = frac.substring(3);
|
frac = frac.substring(3);
|
||||||
if (whole.charAt(0) == "0") {
|
if (whole.charAt(0) == "0") {
|
||||||
@ -301,15 +331,15 @@ MochiKit.Text._localizeNumber = function (num, locale, grouping) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (frac.length > 0) {
|
if (frac.length > 0) {
|
||||||
res += frac;
|
res = res + frac;
|
||||||
}
|
}
|
||||||
while (grouping && whole.length > 3) {
|
while (group && whole.length > 3) {
|
||||||
var pos = whole.length - 3;
|
var pos = whole.length - 3;
|
||||||
res = locale.separator + whole.substring(pos) + res;
|
res = locale.separator + whole.substring(pos) + res;
|
||||||
whole = whole.substring((whole.charAt(0) == "0") ? 1 : 0, pos);
|
whole = whole.substring((whole.charAt(0) == "0") ? 1 : 0, pos);
|
||||||
}
|
}
|
||||||
return whole + res;
|
return whole + res;
|
||||||
}
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Parses a format pattern and returns an array of constant strings
|
* Parses a format pattern and returns an array of constant strings
|
||||||
@ -324,44 +354,32 @@ MochiKit.Text._localizeNumber = function (num, locale, grouping) {
|
|||||||
MochiKit.Text._parsePattern = function (pattern) {
|
MochiKit.Text._parsePattern = function (pattern) {
|
||||||
var self = MochiKit.Text;
|
var self = MochiKit.Text;
|
||||||
var parts = [];
|
var parts = [];
|
||||||
var start = 0;
|
var re = /{[^{}]*}|{{?|}}?/g;
|
||||||
var pos = 0;
|
var lastPos = re.lastIndex = 0;
|
||||||
for (pos = 0; pos < pattern.length; pos++) {
|
var m;
|
||||||
if (pattern.charAt(pos) == "{") {
|
while ((m = re.exec(pattern)) != null) {
|
||||||
if (pos + 1 >= pattern.length) {
|
if (lastPos < m.index) {
|
||||||
var msg = "unescaped { char, should be escaped as {{";
|
parts.push(pattern.substring(lastPos, m.index))
|
||||||
throw new self.FormatPatternError(pattern, pos, msg);
|
}
|
||||||
} else if (pattern.charAt(pos + 1) == "{") {
|
var str = m[0];
|
||||||
parts.push(pattern.substring(start, pos + 1));
|
lastPos = m.index + str.length;
|
||||||
start = pos + 2;
|
if (self.startsWith("{", str) && self.endsWith("}", str)) {
|
||||||
pos++;
|
parts.push(self._parseFormat(pattern, m.index + 1, lastPos - 1));
|
||||||
} else {
|
} else if (self.startsWith("{{", str) || self.startsWith("}}", str)) {
|
||||||
if (start < pos) {
|
parts.push(str.substring(1));
|
||||||
parts.push(pattern.substring(start, pos));
|
} else if (self.startsWith("{", str)) {
|
||||||
}
|
var msg = "unescaped { char, should be escaped as {{";
|
||||||
start = pattern.indexOf("}", pos) + 1;
|
throw new self.FormatPatternError(pattern, m.index, msg);
|
||||||
if (start <= 0) {
|
} else if (self.startsWith("}", str)) {
|
||||||
var msg = "unmatched { char, not followed by a } char";
|
var msg = "unescaped } char, should be escaped as }}";
|
||||||
throw new self.FormatPatternError(pattern, pos, msg);
|
throw new self.FormatPatternError(pattern, m.index, msg);
|
||||||
}
|
|
||||||
parts.push(self._parseFormat(pattern, pos + 1, start - 1));
|
|
||||||
pos = start - 1;
|
|
||||||
}
|
|
||||||
} else if (pattern.charAt(pos) == "}") {
|
|
||||||
if (pos + 1 >= pattern.length || pattern.charAt(pos + 1) != "}") {
|
|
||||||
var msg = "unescaped } char, should be escaped as }}";
|
|
||||||
throw new self.FormatPatternError(pattern, pos, msg);
|
|
||||||
}
|
|
||||||
parts.push(pattern.substring(start, pos + 1));
|
|
||||||
start = pos + 2;
|
|
||||||
pos++;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (start < pos) {
|
if (lastPos < pattern.length) {
|
||||||
parts.push(pattern.substring(start, pos));
|
parts.push(pattern.substring(lastPos));
|
||||||
}
|
}
|
||||||
return parts;
|
return parts;
|
||||||
}
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Parses a format instruction and returns a format info object.
|
* Parses a format instruction and returns a format info object.
|
||||||
@ -377,40 +395,30 @@ MochiKit.Text._parsePattern = function (pattern) {
|
|||||||
MochiKit.Text._parseFormat = function (pattern, startPos, endPos) {
|
MochiKit.Text._parseFormat = function (pattern, startPos, endPos) {
|
||||||
var self = MochiKit.Text;
|
var self = MochiKit.Text;
|
||||||
var text = pattern.substring(startPos, endPos);
|
var text = pattern.substring(startPos, endPos);
|
||||||
var info;
|
var parts = self.split(text, ":", 1);
|
||||||
var pos = text.indexOf(":");
|
var path = parts[0];
|
||||||
if (pos == 0) {
|
var flagsPos = startPos + path.length + ((parts.length == 1) ? 0 : 1);
|
||||||
info = self._parseFormatFlags(pattern, startPos + 1, endPos);
|
var info = self._parseFormatFlags(pattern, flagsPos, endPos);
|
||||||
info.path = [0];
|
info.path = (path == "") ? [] : path.split(".");
|
||||||
} else if (pos > 0) {
|
|
||||||
info = self._parseFormatFlags(pattern, startPos + pos + 1, endPos);
|
|
||||||
info.path = text.substring(0, pos).split(".");
|
|
||||||
} else {
|
|
||||||
info = self._parseFormatFlags(pattern, endPos, endPos);
|
|
||||||
info.path = text.split(".");
|
|
||||||
}
|
|
||||||
var DIGITS = /^\d+$/;
|
|
||||||
for (var i = 0; i < info.path.length; i++) {
|
for (var i = 0; i < info.path.length; i++) {
|
||||||
var e = info.path[i];
|
var v = info.path[i];
|
||||||
if (typeof(e) == "string") {
|
// TODO: replace with MochiKit.Format.strip?
|
||||||
// TODO: replace with MochiKit.Format.strip?
|
v = v.replace(/^\s+/, "").replace(/\s+$/, "");
|
||||||
e = e.replace(/^\s+/, "").replace(/\s+$/, "");
|
if (v == "" && info.path.length == 1) {
|
||||||
if (e == "" && info.path.length == 1) {
|
v = 0;
|
||||||
e = 0;
|
} else if (v == "") {
|
||||||
} else if (e == "") {
|
var msg = "format value path contains blanks";
|
||||||
var msg = "format value path contains blanks";
|
throw new self.FormatPatternError(pattern, startPos, msg);
|
||||||
throw new self.FormatPatternError(pattern, startPos, msg);
|
} else if (/^\d+$/.test(v)) {
|
||||||
} else if (DIGITS.test(e)) {
|
v = parseInt(v, 10);
|
||||||
e = parseInt(e);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
info.path[i] = e;
|
info.path[i] = v;
|
||||||
}
|
}
|
||||||
if (info.path.length < 0 || typeof(info.path[0]) != "number") {
|
if (info.path.length <= 0 || typeof(info.path[0]) != "number") {
|
||||||
info.path.unshift(0);
|
info.path.unshift(0);
|
||||||
}
|
}
|
||||||
return info;
|
return info;
|
||||||
}
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Parses a string with format flags and returns a format info object.
|
* Parses a string with format flags and returns a format info object.
|
||||||
@ -424,81 +432,52 @@ MochiKit.Text._parseFormat = function (pattern, startPos, endPos) {
|
|||||||
* @throws FormatPatternError if the format pattern was invalid
|
* @throws FormatPatternError if the format pattern was invalid
|
||||||
*/
|
*/
|
||||||
MochiKit.Text._parseFormatFlags = function (pattern, startPos, endPos) {
|
MochiKit.Text._parseFormatFlags = function (pattern, startPos, endPos) {
|
||||||
var self = MochiKit.Text;
|
var update = MochiKit.Base.update;
|
||||||
var info = { numeric: false, format: "s", width: 0, precision: -1,
|
var info = { type: "string", format: "s", width: 0, precision: -1,
|
||||||
align: ">", sign: "-", padding: " ", grouping: false };
|
align: ">", sign: "", padding: " ", group: false };
|
||||||
// TODO: replace with MochiKit.Format.rstrip?
|
// TODO: replace with MochiKit.Format.rstrip?
|
||||||
var flags = pattern.substring(startPos, endPos).replace(/\s+$/, "");
|
var text = pattern.substring(startPos, endPos).replace(/\s+$/, "");
|
||||||
while (flags.length > 0) {
|
var m = /^([<>+ 0,-]+)?(\d+)?(\.\d*)?([srbdoxXf%])?(.*)$/.exec(text);
|
||||||
switch (flags.charAt(0)) {
|
var flags = m[1];
|
||||||
case ">":
|
var width = m[2];
|
||||||
case "<":
|
var precision = m[3];
|
||||||
info.align = flags.charAt(0);
|
var type = m[4];
|
||||||
flags = flags.substring(1);
|
var unmatched = m[5];
|
||||||
break;
|
for (var i = 0; flags && i < flags.length; i++) {
|
||||||
case "+":
|
var chr = flags.charAt(i);
|
||||||
case "-":
|
if (chr == "<" || chr == ">") {
|
||||||
case " ":
|
info.align = chr;
|
||||||
info.sign = flags.charAt(0);
|
} else if (chr == "+" || chr == "-" || chr == " ") {
|
||||||
flags = flags.substring(1);
|
info.sign = (chr == "-") ? "" : chr;
|
||||||
break;
|
} else if (chr == "0") {
|
||||||
case ",":
|
info.padding = chr;
|
||||||
info.grouping = true;
|
} else if (chr == ",") {
|
||||||
flags = flags.substring(1);
|
info.group = true;
|
||||||
break;
|
|
||||||
case ".":
|
|
||||||
var chars = /^\d*/.exec(flags.substring(1))[0];
|
|
||||||
info.precision = parseInt(chars);
|
|
||||||
flags = flags.substring(1 + chars.length);
|
|
||||||
break;
|
|
||||||
case "0":
|
|
||||||
info.padding = flags.charAt(0);
|
|
||||||
flags = flags.substring(1);
|
|
||||||
break;
|
|
||||||
case "1":
|
|
||||||
case "2":
|
|
||||||
case "3":
|
|
||||||
case "4":
|
|
||||||
case "5":
|
|
||||||
case "6":
|
|
||||||
case "7":
|
|
||||||
case "8":
|
|
||||||
case "9":
|
|
||||||
var chars = /^\d*/.exec(flags)[0];
|
|
||||||
info.width = parseInt(chars);
|
|
||||||
flags = flags.substring(chars.length);
|
|
||||||
break;
|
|
||||||
case "s":
|
|
||||||
case "r":
|
|
||||||
info.format = flags.charAt(0);
|
|
||||||
flags = flags.substring(1);
|
|
||||||
break;
|
|
||||||
case "b":
|
|
||||||
case "d":
|
|
||||||
case "o":
|
|
||||||
case "x":
|
|
||||||
case "X":
|
|
||||||
case "f":
|
|
||||||
case "%":
|
|
||||||
info.numeric = true;
|
|
||||||
info.format = flags.charAt(0);
|
|
||||||
info.radix = 10;
|
|
||||||
if (info.format === "b") {
|
|
||||||
info.radix = 2;
|
|
||||||
} else if (info.format === "o") {
|
|
||||||
info.radix = 8;
|
|
||||||
} else if (info.format === "x" || info.format === "X") {
|
|
||||||
info.radix = 16;
|
|
||||||
}
|
|
||||||
flags = flags.substring(1);
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
var msg = "unsupported format flag: " + flags.charAt(0);
|
|
||||||
throw new self.FormatPatternError(pattern, startPos, msg);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (width) {
|
||||||
|
info.width = parseInt(width, 10);
|
||||||
|
}
|
||||||
|
if (precision && precision.length > 1) {
|
||||||
|
info.precision = parseInt(precision.substring(1), 10);
|
||||||
|
}
|
||||||
|
if (type == "s" || type == "r") {
|
||||||
|
info.format = type;
|
||||||
|
} else if (type == "b") {
|
||||||
|
update(info, { type: "number", format: type, radix: 2 });
|
||||||
|
} else if (type == "o") {
|
||||||
|
update(info, { type: "number", format: type, radix: 8 });
|
||||||
|
} else if (type == "x" || type == "X") {
|
||||||
|
update(info, { type: "number", format: type, radix: 16 });
|
||||||
|
} else if (type == "d" || type == "f" || type == "%") {
|
||||||
|
update(info, { type: "number", format: type, radix: 10 });
|
||||||
|
}
|
||||||
|
if (unmatched) {
|
||||||
|
var msg = "unsupported format flag: " + unmatched.charAt(0);
|
||||||
|
throw new MochiKit.Text.FormatPatternError(pattern, startPos, msg);
|
||||||
|
}
|
||||||
return info;
|
return info;
|
||||||
}
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Formats a value as a percentage. This method avoids multiplication
|
* Formats a value as a percentage. This method avoids multiplication
|
||||||
@ -510,33 +489,23 @@ MochiKit.Text._parseFormatFlags = function (pattern, startPos, endPos) {
|
|||||||
* @param {Number} precision the number of precision digits
|
* @param {Number} precision the number of precision digits
|
||||||
*/
|
*/
|
||||||
MochiKit.Text._truncToPercent = function (value, precision) {
|
MochiKit.Text._truncToPercent = function (value, precision) {
|
||||||
// TODO: This can be simplified by using the same helper function
|
// TODO: This can be simplified by using MochiKit.Format._shiftNumber
|
||||||
// as roundToFixed now does.
|
// as roundToFixed does.
|
||||||
var str;
|
var str;
|
||||||
if (precision >= 0) {
|
if (precision >= 0) {
|
||||||
str = MochiKit.Format.roundToFixed(value, precision + 2);
|
str = MochiKit.Format.roundToFixed(value, precision + 2);
|
||||||
} else {
|
} else {
|
||||||
str = (value == null) ? "0" : value.toString();
|
str = (value == null) ? "0" : value.toString();
|
||||||
}
|
}
|
||||||
var fracPos = str.indexOf(".");
|
var arr = MochiKit.Text.split(str, ".", 2);
|
||||||
if (fracPos < 0) {
|
var frac = MochiKit.Text.padRight(arr[1], 2, "0");
|
||||||
str = str + "00";
|
var whole = arr[0] + frac.substring(0, 2);
|
||||||
} else if (fracPos + 3 >= str.length) {
|
frac = frac.substring(2);
|
||||||
var fraction = str.substring(fracPos + 1);
|
while (/^0[0-9]/.test(whole)) {
|
||||||
while (fraction.length < 2) {
|
whole = whole.substring(1);
|
||||||
fraction = fraction + "0";
|
|
||||||
}
|
|
||||||
str = str.substring(0, fracPos) + fraction;
|
|
||||||
} else {
|
|
||||||
var fraction = str.substring(fracPos + 1);
|
|
||||||
str = str.substring(0, fracPos) + fraction.substring(0, 2) +
|
|
||||||
"." + fraction.substring(2);
|
|
||||||
}
|
}
|
||||||
while (str.length > 1 && str.charAt(0) == "0" && str.charAt(1) != ".") {
|
return (frac.length <= 0) ? whole : whole + "." + frac;
|
||||||
str = str.substring(1);
|
};
|
||||||
}
|
|
||||||
return str;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Creates a new format pattern error.
|
* Creates a new format pattern error.
|
||||||
@ -558,13 +527,13 @@ MochiKit.Text.FormatPatternError = function (pattern, pos, message) {
|
|||||||
this.pattern = pattern;
|
this.pattern = pattern;
|
||||||
this.pos = pos;
|
this.pos = pos;
|
||||||
this.message = message;
|
this.message = message;
|
||||||
}
|
};
|
||||||
MochiKit.Text.FormatPatternError.prototype =
|
|
||||||
new MochiKit.Base.NamedError("MochiKit.Text.FormatPatternError");
|
|
||||||
|
|
||||||
|
MochiKit.Text.FormatPatternError.prototype = new MochiKit.Base.NamedError("MochiKit.Text.FormatPatternError");
|
||||||
|
MochiKit.Text.FormatPatternError.constructor = MochiKit.Text.FormatPatternError;
|
||||||
|
|
||||||
//
|
//
|
||||||
//XXX: Internet Explorer exception handling blows
|
//XXX: Internet Explorer export fix
|
||||||
//
|
//
|
||||||
if (MochiKit.__export__) {
|
if (MochiKit.__export__) {
|
||||||
formatter = MochiKit.Text.formatter;
|
formatter = MochiKit.Text.formatter;
|
||||||
|
@ -8,7 +8,7 @@ See <http://mochikit.com/> for documentation, downloads, license, etc.
|
|||||||
|
|
||||||
***/
|
***/
|
||||||
|
|
||||||
MochiKit.Base._module('Visual', '1.5', ['Base', 'DOM', 'Style', 'Color', 'Position']);
|
MochiKit.Base.module(MochiKit, 'Visual', '1.5', ['Base', 'DOM', 'Style', 'Color', 'Position']);
|
||||||
|
|
||||||
MochiKit.Visual._RoundCorners = function (e, options) {
|
MochiKit.Visual._RoundCorners = function (e, options) {
|
||||||
e = MochiKit.DOM.getElement(e);
|
e = MochiKit.DOM.getElement(e);
|
||||||
@ -469,6 +469,11 @@ MochiKit.Visual.Transitions.parabolic = function (pos) {
|
|||||||
return pos * pos;
|
return pos * pos;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/** @id MochiKit.Visual.Transitions.spring */
|
||||||
|
MochiKit.Visual.Transitions.spring = function (pos) {
|
||||||
|
return 1 - (Math.cos(pos * 2.5 * Math.PI) * Math.exp(-pos * 6));
|
||||||
|
};
|
||||||
|
|
||||||
/** @id MochiKit.Visual.Transitions.none */
|
/** @id MochiKit.Visual.Transitions.none */
|
||||||
MochiKit.Visual.Transitions.none = function (pos) {
|
MochiKit.Visual.Transitions.none = function (pos) {
|
||||||
return 0;
|
return 0;
|
||||||
@ -534,6 +539,11 @@ MochiKit.Base.update(MochiKit.Visual.ScopedQueue.prototype, {
|
|||||||
e.finalize();
|
e.finalize();
|
||||||
}, this.effects);
|
}, this.effects);
|
||||||
break;
|
break;
|
||||||
|
case 'replace':
|
||||||
|
ma(function (e) {
|
||||||
|
e.cancel();
|
||||||
|
}, this.effects);
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
effect.startOn += timestamp;
|
effect.startOn += timestamp;
|
||||||
@ -662,8 +672,12 @@ MochiKit.Visual.Base.prototype = {
|
|||||||
this.event('afterSetup');
|
this.event('afterSetup');
|
||||||
}
|
}
|
||||||
if (this.state == 'running') {
|
if (this.state == 'running') {
|
||||||
if (this.options.transition) {
|
var trans = this.options.transition;
|
||||||
pos = this.options.transition(pos);
|
if (typeof(trans) == "string") {
|
||||||
|
trans = MochiKit.Visual.Transitions[trans];
|
||||||
|
}
|
||||||
|
if (typeof(trans) == "function") {
|
||||||
|
pos = trans(pos);
|
||||||
}
|
}
|
||||||
pos *= (this.options.to - this.options.from);
|
pos *= (this.options.to - this.options.from);
|
||||||
pos += this.options.from;
|
pos += this.options.from;
|
||||||
@ -1686,8 +1700,8 @@ MochiKit.Visual.squish = function (element, /* optional */ options) {
|
|||||||
var elemClip;
|
var elemClip;
|
||||||
options = b.update({
|
options = b.update({
|
||||||
restoreAfterFinish: true,
|
restoreAfterFinish: true,
|
||||||
scaleMode: {originalHeight: elementDimensions.w,
|
scaleMode: {originalHeight: elementDimensions.h,
|
||||||
originalWidth: elementDimensions.h},
|
originalWidth: elementDimensions.w},
|
||||||
beforeSetupInternal: function (effect) {
|
beforeSetupInternal: function (effect) {
|
||||||
elemClip = s.makeClipping(effect.element);
|
elemClip = s.makeClipping(effect.element);
|
||||||
},
|
},
|
||||||
@ -1958,18 +1972,5 @@ MochiKit.Visual.fold = function (element, /* optional */ options) {
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
/* end of Rico adaptation */
|
MochiKit.Base.nameFunctions(MochiKit.Visual);
|
||||||
|
|
||||||
MochiKit.Visual.__new__ = function () {
|
|
||||||
var m = MochiKit.Base;
|
|
||||||
|
|
||||||
// Backwards compatibility aliases
|
|
||||||
m._deprecated(this, 'Color', 'MochiKit.Color.Color', '1.1');
|
|
||||||
m._deprecated(this, 'getElementsComputedStyle', 'MochiKit.Style.getStyle', '1.1');
|
|
||||||
|
|
||||||
m.nameFunctions(this);
|
|
||||||
};
|
|
||||||
|
|
||||||
MochiKit.Visual.__new__();
|
|
||||||
|
|
||||||
MochiKit.Base._exportSymbols(this, MochiKit.Visual);
|
MochiKit.Base._exportSymbols(this, MochiKit.Visual);
|
||||||
|
@ -1,18 +0,0 @@
|
|||||||
dojo.kwCompoundRequire({
|
|
||||||
"common": [
|
|
||||||
"MochiKit.Base",
|
|
||||||
"MochiKit.Iter",
|
|
||||||
"MochiKit.Logging",
|
|
||||||
"MochiKit.DateTime",
|
|
||||||
"MochiKit.Format",
|
|
||||||
"MochiKit.Async",
|
|
||||||
"MochiKit.DOM",
|
|
||||||
"MochiKit.Style",
|
|
||||||
"MochiKit.LoggingPane",
|
|
||||||
"MochiKit.Color",
|
|
||||||
"MochiKit.Signal",
|
|
||||||
"MochiKit.Position",
|
|
||||||
"MochiKit.Visual"
|
|
||||||
]
|
|
||||||
});
|
|
||||||
dojo.provide("MochiKit.*");
|
|
@ -81,11 +81,11 @@ function run() {
|
|||||||
|
|
||||||
Clipperz.PM.RunTime.mainController.run(shouldShowRegistrationForm);
|
Clipperz.PM.RunTime.mainController.run(shouldShowRegistrationForm);
|
||||||
|
|
||||||
//Clipperz.log("HASH: " + window.location.hash);
|
//Clipperz.log("HASH: " + window.location.hash);
|
||||||
if (window.location.hash != "") {
|
// if (window.location.hash != "") {
|
||||||
window.location.hash = ""
|
// window.location.hash = ""
|
||||||
}
|
// }
|
||||||
//Clipperz.log("HASH cleaned");
|
// Clipperz.log("HASH cleaned");
|
||||||
// #credentials=base64encoded({username:'joe', passphrase:'clipperz'})
|
// #credentials=base64encoded({username:'joe', passphrase:'clipperz'})
|
||||||
// MochiKit.Signal.signal(Clipperz.Signal.NotificationCenter, 'doLogin', {username:'joe', passphrase:'clipperz'});
|
// MochiKit.Signal.signal(Clipperz.Signal.NotificationCenter, 'doLogin', {username:'joe', passphrase:'clipperz'});
|
||||||
}
|
}
|
||||||
|
@ -1,8 +1,11 @@
|
|||||||
{
|
{
|
||||||
"copyright.values": {
|
"copyright.values": {
|
||||||
"mochikit.repository": "http://svn.mochikit.com/mochikit/trunk/",
|
"mochikit.repository": "https://github.com/mochi/mochikit.git",
|
||||||
"mochikit.version": "1506"
|
"mochikit.version": "fe8d17bb9ac0a4e5ad4a8d5c2c94a6fac1c92d75"
|
||||||
},
|
},
|
||||||
|
|
||||||
|
"html.template": "index_template.html",
|
||||||
|
|
||||||
"js": [
|
"js": [
|
||||||
"MochiKit/Base.js",
|
"MochiKit/Base.js",
|
||||||
"MochiKit/Iter.js",
|
"MochiKit/Iter.js",
|
||||||
|
@ -28,7 +28,6 @@ refer to http://www.clipperz.com.
|
|||||||
<title>Clipperz.Crypto.AES_v3 - TEST</title>
|
<title>Clipperz.Crypto.AES_v3 - TEST</title>
|
||||||
|
|
||||||
<script type="text/javascript" src="../../../../js/MochiKit/MochiKit.js"></script>
|
<script type="text/javascript" src="../../../../js/MochiKit/MochiKit.js"></script>
|
||||||
<script type="text/javascript" src="../../../../js/JSLog/jslog.js"></script>
|
|
||||||
<script type="text/javascript" src="../../../SimpleTest/SimpleTest.js"></script>
|
<script type="text/javascript" src="../../../SimpleTest/SimpleTest.js"></script>
|
||||||
<link rel="stylesheet" type="text/css" href="../../../SimpleTest/test.css">
|
<link rel="stylesheet" type="text/css" href="../../../SimpleTest/test.css">
|
||||||
|
|
||||||
|
@ -32,7 +32,6 @@ refer to http://www.clipperz.com.
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<script type="text/javascript" src="../../../../js/MochiKit/MochiKit.js"></script>
|
<script type="text/javascript" src="../../../../js/MochiKit/MochiKit.js"></script>
|
||||||
<script type="text/javascript" src="../../../../js/JSLog/jslog.js"></script>
|
|
||||||
<script type="text/javascript" src="../../../SimpleTest/SimpleTest.js"></script>
|
<script type="text/javascript" src="../../../SimpleTest/SimpleTest.js"></script>
|
||||||
<link rel="stylesheet" type="text/css" href="../../../SimpleTest/test.css">
|
<link rel="stylesheet" type="text/css" href="../../../SimpleTest/test.css">
|
||||||
|
|
||||||
|
@ -26,7 +26,6 @@ refer to http://www.clipperz.com.
|
|||||||
<html>
|
<html>
|
||||||
<head>
|
<head>
|
||||||
<script type="text/javascript" src="../../../../js/MochiKit/MochiKit.js"></script>
|
<script type="text/javascript" src="../../../../js/MochiKit/MochiKit.js"></script>
|
||||||
<script type="text/javascript" src="../../../../js/JSLog/jslog.js"></script>
|
|
||||||
<script type="text/javascript" src="../../../SimpleTest/SimpleTest.js"></script>
|
<script type="text/javascript" src="../../../SimpleTest/SimpleTest.js"></script>
|
||||||
<link rel="stylesheet" type="text/css" href="../../../SimpleTest/test.css">
|
<link rel="stylesheet" type="text/css" href="../../../SimpleTest/test.css">
|
||||||
|
|
||||||
|
@ -26,7 +26,6 @@ refer to http://www.clipperz.com.
|
|||||||
<html>
|
<html>
|
||||||
<head>
|
<head>
|
||||||
<script type="text/javascript" src="../../../../js/MochiKit/MochiKit.js"></script>
|
<script type="text/javascript" src="../../../../js/MochiKit/MochiKit.js"></script>
|
||||||
<script type="text/javascript" src="../../../../js/JSLog/jslog.js"></script>
|
|
||||||
<script type="text/javascript" src="../../../SimpleTest/SimpleTest.js"></script>
|
<script type="text/javascript" src="../../../SimpleTest/SimpleTest.js"></script>
|
||||||
<link rel="stylesheet" type="text/css" href="../../../SimpleTest/test.css">
|
<link rel="stylesheet" type="text/css" href="../../../SimpleTest/test.css">
|
||||||
|
|
||||||
|
@ -26,7 +26,6 @@ refer to http://www.clipperz.com.
|
|||||||
<html>
|
<html>
|
||||||
<head>
|
<head>
|
||||||
<script type="text/javascript" src="../../../../js/MochiKit/MochiKit.js"></script>
|
<script type="text/javascript" src="../../../../js/MochiKit/MochiKit.js"></script>
|
||||||
<script type="text/javascript" src="../../../../js/JSLog/jslog.js"></script>
|
|
||||||
<script type="text/javascript" src="../../../SimpleTest/SimpleTest.js"></script>
|
<script type="text/javascript" src="../../../SimpleTest/SimpleTest.js"></script>
|
||||||
<link rel="stylesheet" type="text/css" href="../../../SimpleTest/test.css">
|
<link rel="stylesheet" type="text/css" href="../../../SimpleTest/test.css">
|
||||||
|
|
||||||
|
@ -26,7 +26,6 @@ refer to http://www.clipperz.com.
|
|||||||
<html>
|
<html>
|
||||||
<head>
|
<head>
|
||||||
<script type="text/javascript" src="../../../../js/MochiKit/MochiKit.js"></script>
|
<script type="text/javascript" src="../../../../js/MochiKit/MochiKit.js"></script>
|
||||||
<script type="text/javascript" src="../../../../js/JSLog/jslog.js"></script>
|
|
||||||
<script type="text/javascript" src="../../../SimpleTest/SimpleTest.js"></script>
|
<script type="text/javascript" src="../../../SimpleTest/SimpleTest.js"></script>
|
||||||
<link rel="stylesheet" type="text/css" href="../../../SimpleTest/test.css">
|
<link rel="stylesheet" type="text/css" href="../../../SimpleTest/test.css">
|
||||||
|
|
||||||
|
@ -26,7 +26,6 @@ refer to http://www.clipperz.com.
|
|||||||
<html>
|
<html>
|
||||||
<head>
|
<head>
|
||||||
<script type="text/javascript" src="../../../../js/MochiKit/MochiKit.js"></script>
|
<script type="text/javascript" src="../../../../js/MochiKit/MochiKit.js"></script>
|
||||||
<script type="text/javascript" src="../../../../js/JSLog/jslog.js"></script>
|
|
||||||
<script type="text/javascript" src="../../../SimpleTest/SimpleTest.js"></script>
|
<script type="text/javascript" src="../../../SimpleTest/SimpleTest.js"></script>
|
||||||
<link rel="stylesheet" type="text/css" href="../../../SimpleTest/test.css">
|
<link rel="stylesheet" type="text/css" href="../../../SimpleTest/test.css">
|
||||||
|
|
||||||
|
@ -28,7 +28,6 @@ refer to http://www.clipperz.com.
|
|||||||
<script> jslog_config_enabled = true; </script>
|
<script> jslog_config_enabled = true; </script>
|
||||||
|
|
||||||
<script type="text/javascript" src="../../../../js/MochiKit/MochiKit.js"></script>
|
<script type="text/javascript" src="../../../../js/MochiKit/MochiKit.js"></script>
|
||||||
<script type="text/javascript" src="../../../../js/JSLog/jslog.js"></script>
|
|
||||||
<script type="text/javascript" src="../../../SimpleTest/SimpleTest.js"></script>
|
<script type="text/javascript" src="../../../SimpleTest/SimpleTest.js"></script>
|
||||||
<link rel="stylesheet" type="text/css" href="../../../SimpleTest/test.css">
|
<link rel="stylesheet" type="text/css" href="../../../SimpleTest/test.css">
|
||||||
|
|
||||||
|
@ -26,7 +26,6 @@ refer to http://www.clipperz.com.
|
|||||||
<html>
|
<html>
|
||||||
<head>
|
<head>
|
||||||
<script type="text/javascript" src="../../../../js/MochiKit/MochiKit.js"></script>
|
<script type="text/javascript" src="../../../../js/MochiKit/MochiKit.js"></script>
|
||||||
<script type="text/javascript" src="../../../../js/JSLog/jslog.js"></script>
|
|
||||||
<script type="text/javascript" src="../../../SimpleTest/SimpleTest.js"></script>
|
<script type="text/javascript" src="../../../SimpleTest/SimpleTest.js"></script>
|
||||||
<link rel="stylesheet" type="text/css" href="../../../SimpleTest/test.css">
|
<link rel="stylesheet" type="text/css" href="../../../SimpleTest/test.css">
|
||||||
|
|
||||||
|
@ -63,7 +63,6 @@ refer to http://www.clipperz.com.
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<script type="text/javascript" src="../../../../js/MochiKit/MochiKit.js"></script>
|
<script type="text/javascript" src="../../../../js/MochiKit/MochiKit.js"></script>
|
||||||
<script type="text/javascript" src="../../../../js/JSLog/jslog.js"></script>
|
|
||||||
<script type="text/javascript" src="../../../SimpleTest/SimpleTest.js"></script>
|
<script type="text/javascript" src="../../../SimpleTest/SimpleTest.js"></script>
|
||||||
<link rel="stylesheet" type="text/css" href="../../../SimpleTest/test.css">
|
<link rel="stylesheet" type="text/css" href="../../../SimpleTest/test.css">
|
||||||
|
|
||||||
|
@ -26,7 +26,6 @@ refer to http://www.clipperz.com.
|
|||||||
<html>
|
<html>
|
||||||
<head>
|
<head>
|
||||||
<script type="text/javascript" src="../../../../js/MochiKit/MochiKit.js"></script>
|
<script type="text/javascript" src="../../../../js/MochiKit/MochiKit.js"></script>
|
||||||
<script type="text/javascript" src="../../../../js/JSLog/jslog.js"></script>
|
|
||||||
<script type="text/javascript" src="../../../SimpleTest/SimpleTest.js"></script>
|
<script type="text/javascript" src="../../../SimpleTest/SimpleTest.js"></script>
|
||||||
<link rel="stylesheet" type="text/css" href="../../../SimpleTest/test.css">
|
<link rel="stylesheet" type="text/css" href="../../../SimpleTest/test.css">
|
||||||
|
|
||||||
|
@ -28,7 +28,6 @@ refer to http://www.clipperz.com.
|
|||||||
<title>Clipperz.Crypto.Usage - TEST</title>
|
<title>Clipperz.Crypto.Usage - TEST</title>
|
||||||
|
|
||||||
<script type="text/javascript" src="../../../../js/MochiKit/MochiKit.js"></script>
|
<script type="text/javascript" src="../../../../js/MochiKit/MochiKit.js"></script>
|
||||||
<script type="text/javascript" src="../../../../js/JSLog/jslog.js"></script>
|
|
||||||
<script type="text/javascript" src="../../../SimpleTest/SimpleTest.js"></script>
|
<script type="text/javascript" src="../../../SimpleTest/SimpleTest.js"></script>
|
||||||
<link rel="stylesheet" type="text/css" href="../../../SimpleTest/test.css">
|
<link rel="stylesheet" type="text/css" href="../../../SimpleTest/test.css">
|
||||||
|
|
||||||
|
@ -28,7 +28,6 @@ refer to http://www.clipperz.com.
|
|||||||
<title>Clipperz.PM.Date - test</title>
|
<title>Clipperz.PM.Date - test</title>
|
||||||
|
|
||||||
<script type="text/javascript" src="../../../../js/MochiKit/MochiKit.js"></script>
|
<script type="text/javascript" src="../../../../js/MochiKit/MochiKit.js"></script>
|
||||||
<!-- script type="text/javascript" src="../../../../js/JSLog/jslog.js"></script -->
|
|
||||||
<script type="text/javascript" src="../../../SimpleTest/SimpleTest.js"></script>
|
<script type="text/javascript" src="../../../SimpleTest/SimpleTest.js"></script>
|
||||||
<link rel="stylesheet" type="text/css" href="../../../SimpleTest/test.css">
|
<link rel="stylesheet" type="text/css" href="../../../SimpleTest/test.css">
|
||||||
|
|
||||||
|
@ -28,7 +28,6 @@ refer to http://www.clipperz.com.
|
|||||||
<title>Clipperz.PM.Proxy - TEST</title>
|
<title>Clipperz.PM.Proxy - TEST</title>
|
||||||
|
|
||||||
<script type="text/javascript" src="../../../../js/MochiKit/MochiKit.js"></script>
|
<script type="text/javascript" src="../../../../js/MochiKit/MochiKit.js"></script>
|
||||||
<script type="text/javascript" src="../../../../js/JSLog/jslog.js"></script>
|
|
||||||
<script type="text/javascript" src="../../../SimpleTest/SimpleTest.js"></script>
|
<script type="text/javascript" src="../../../SimpleTest/SimpleTest.js"></script>
|
||||||
<link rel="stylesheet" type="text/css" href="../../../SimpleTest/test.css">
|
<link rel="stylesheet" type="text/css" href="../../../SimpleTest/test.css">
|
||||||
|
|
||||||
|
@ -28,7 +28,6 @@ refer to http://www.clipperz.com.
|
|||||||
<title>Clipperz.PM.Toll - test</title>
|
<title>Clipperz.PM.Toll - test</title>
|
||||||
|
|
||||||
<script type="text/javascript" src="../../../../js/MochiKit/MochiKit.js"></script>
|
<script type="text/javascript" src="../../../../js/MochiKit/MochiKit.js"></script>
|
||||||
<script type="text/javascript" src="../../../../js/JSLog/jslog.js"></script>
|
|
||||||
<script type="text/javascript" src="../../../SimpleTest/SimpleTest.js"></script>
|
<script type="text/javascript" src="../../../SimpleTest/SimpleTest.js"></script>
|
||||||
<link rel="stylesheet" type="text/css" href="../../../SimpleTest/test.css">
|
<link rel="stylesheet" type="text/css" href="../../../SimpleTest/test.css">
|
||||||
|
|
||||||
|
@ -28,7 +28,6 @@ refer to http://www.clipperz.com.
|
|||||||
<title>Clipperz.PM.UI.Web.MainController - test</title>
|
<title>Clipperz.PM.UI.Web.MainController - test</title>
|
||||||
|
|
||||||
<script type="text/javascript" src="../../../../../../../js/MochiKit/MochiKit.js"></script>
|
<script type="text/javascript" src="../../../../../../../js/MochiKit/MochiKit.js"></script>
|
||||||
<script type="text/javascript" src="../../../../../../../js/JSLog/jslog.js"></script>
|
|
||||||
<script type="text/javascript" src="../../../../../../SimpleTest/SimpleTest.js"></script>
|
<script type="text/javascript" src="../../../../../../SimpleTest/SimpleTest.js"></script>
|
||||||
<link rel="stylesheet" type="text/css" href="../../../../../../SimpleTest/test.css">
|
<link rel="stylesheet" type="text/css" href="../../../../../../SimpleTest/test.css">
|
||||||
|
|
||||||
|
@ -26,7 +26,6 @@ refer to http://www.clipperz.com.
|
|||||||
<html>
|
<html>
|
||||||
<head>
|
<head>
|
||||||
<script type="text/javascript" src="../../../js/MochiKit/MochiKit.js"></script>
|
<script type="text/javascript" src="../../../js/MochiKit/MochiKit.js"></script>
|
||||||
<script type="text/javascript" src="../../../js/JSLog/jslog.js"></script>
|
|
||||||
<script type="text/javascript" src="../../SimpleTest/SimpleTest.js"></script>
|
<script type="text/javascript" src="../../SimpleTest/SimpleTest.js"></script>
|
||||||
<link rel="stylesheet" type="text/css" href="../../SimpleTest/test.css">
|
<link rel="stylesheet" type="text/css" href="../../SimpleTest/test.css">
|
||||||
|
|
||||||
|
@ -101,9 +101,7 @@ refer to http://www.clipperz.com.
|
|||||||
Clipperz_IEisBroken = true;
|
Clipperz_IEisBroken = true;
|
||||||
</script><![endif]-->
|
</script><![endif]-->
|
||||||
|
|
||||||
<link rel="stylesheet" type="text/css" href="../../../../css/clipperz/clipperz.css" />
|
<link rel="stylesheet" type="text/css" href="../../../../css/web.css" />
|
||||||
<link rel="stylesheet" type="text/css" href="../../../../css/clipperz/compact.css" />
|
|
||||||
<link rel="stylesheet" type="text/css" href="../../../../css/clipperz/ytheme-clipperz.css" />
|
|
||||||
|
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
|
@ -99,9 +99,7 @@ refer to http://www.clipperz.com.
|
|||||||
Clipperz_IEisBroken = true;
|
Clipperz_IEisBroken = true;
|
||||||
</script><![endif]-->
|
</script><![endif]-->
|
||||||
|
|
||||||
<link rel="stylesheet" type="text/css" href="../../../../css/clipperz/clipperz.css" />
|
<link rel="stylesheet" type="text/css" href="../../../../css/web.css" />
|
||||||
<link rel="stylesheet" type="text/css" href="../../../../css/clipperz/compact.css" />
|
|
||||||
<link rel="stylesheet" type="text/css" href="../../../../css/clipperz/ytheme-clipperz.css" />
|
|
||||||
|
|
||||||
<style>
|
<style>
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user