prototype.js ( File view )
- By 2010-08-11
- View(s):5
- Download(s):0
- Point(s): 1
/* Prototype JavaScript framework, version 1.5.0_rc0 * (c) 2005 Sam Stephenson <sam@conio.net> * * Prototype is freely distributable under the terms of an MIT-style license. * For details, see the Prototype web site: http://prototype.conio.net/ * /*--------------------------------------------------------------------------*/ var Prototype = { Version: '1.5.0_rc0', ScriptFragment: '(?:<script.*?>)((\n|\r|.)*?)(?:<\/script>)', emptyFunction: function() { }, K: function(x) { return x } } var Class = { create: function() { return function() { this.initialize.apply(this, arguments); } } } var Abstract = new Object(); Object.extend = function(destination, source) { for (var property in source) { destination[property] = source[property]; } return destination; } Object.inspect = function(object) { try { if (object == undefined) return 'undefined'; if (object == null) return 'null'; return object.inspect ? object.inspect() : object.toString(); } catch (e) { if (e instanceof RangeError) return '...'; throw e; } } Function.prototype.bind = function() { var __method = this, args = $A(arguments), object = args.shift(); return function() { return __method.apply(object, args.concat($A(arguments))); } } Function.prototype.bindAsEventListener = function(object) { var __method = this; return function(event) { return __method.call(object, event || window.event); } } Object.extend(Number.prototype, { toColorPart: function() { var digits = this.toString(16); if (this < 16) return '0' + digits; return digits; }, succ: function() { return this + 1; }, times: function(iterator) { $R(0, this, true).each(iterator); return this; } }); var Try = { these: function() { var returnValue; for (var i = 0; i < arguments.length; i++) { var lambda = arguments[i]; try { returnValue = lambda(); break; } catch (e) { } } return returnValue; } } /*--------------------------------------------------------------------------*/ var PeriodicalExecuter = Class.create(); PeriodicalExecuter.prototype = { initialize: function(callback, frequency) { this.callback = callback; this.frequency = frequency; this.currentlyExecuting = false; this.registerCallback(); }, registerCallback: function() { setInterval(this.onTimerEvent.bind(this), this.frequency * 1000); }, onTimerEvent: function() { if (!this.currentlyExecuting) { try { this.currentlyExecuting = true; this.callback(); } finally { this.currentlyExecuting = false; } } } } Object.extend(String.prototype, { gsub: function(pattern, replacement) { var result = '', source = this, match; replacement = arguments.callee.prepareReplacement(replacement); while (source.length > 0) { if (match = source.match(pattern)) { result += source.slice(0, match.index); result += (replacement(match) || '').toString(); source = source.slice(match.index + match[0].length); } else { result += source, source = ''; } } return result; }, sub: function(pattern, replacement, count) { replacement = this.gsub.prepareReplacement(replacement); count = count === undefined ? 1 : count; return this.gsub(pattern, function(match) { if (--count < 0) return match[0]; return replacement(match); }); }, scan: function(pattern, iterator) { this.gsub(pattern, iterator); return this; }, truncate: function(length, truncation) { length = length || 30; truncation = truncation === undefined ? '...' : truncation; return this.length > length ? this.slice(0, length - truncation.length) + truncation : this; }, strip: function() { return this.replace(/^\s+/, '').replace(/\s+$/, ''); }, stripTags: function() { return this.replace(/<\/?[^>]+>/gi, ''); }, stripScripts: function() { return this.replace(new RegExp(Prototype.ScriptFragment, 'img'), ''); }, extractScripts: function() { var matchAll = new RegExp(Prototype.ScriptFragment, 'img'); var matchOne = new RegExp(Prototype.ScriptFragment, 'im'); return (this.match(matchAll) || []).map(function(scriptTag) { return (scriptTag.match(matchOne) || ['', ''])[1]; }); }, evalScripts: function() { return this.extractScripts().map(function(script) { return eval(script) }); }, escapeHTML: function() { var div = document.createElement('div'); var text = document.createTextNode(this); div.appendChild(text); return div.innerHTML; }, unescapeHTML: function() { var div = document.createElement('div'); div.innerHTML = this.stripTags(); return div.childNodes[0] ? div.childNodes[0].nodeValue : ''; }, toQueryParams: function() { var pairs = this.match(/^\??(.*)$/)[1].split('&'); return pairs.inject({ }, function(params, pairString) { var pair = pairString.split('='); params[pair[0]] = pair[1]; return params; }); }, toArray: function() { return this.split(''); }, camelize: function() { var oStringList = this.split('-'); if (oStringList.length == 1) return oStringList[0]; var camelizedString = this.indexOf('-') == 0 ? oStringList[0].charAt(0).toUpperCase() + oStringList[0].substring(1) : oStringList[0]; for (var i = 1, len = oStringList.length; i < len; i++) { var s = oStringList[i]; camelizedString += s.charAt(0).toUpperCase() + s.substring(1); } return camelizedString; }, inspect: function() { return "'" + this.replace(/\\/g, '\\\\').replace(/'/g, '\\\'') + "'"; } }); String.prototype.gsub.prepareReplacement = function(replacement) { if (typeof replacement == 'function') return replacement; var template = new Template(replacement); return function(match) { return template.evaluate(match) }; } String.prototype.parseQuery = String.prototype.toQueryParams; var Template = Class.create(); Template.Pattern = /(^|.|\r|\n)(#\{ (.*?)\ })/; Template.prototype = { initialize: function(template, pattern) { this.template = template.toString(); this.pattern = pattern || Template.Pattern; }, evaluate: function(object) { return this.template.gsub(this.pattern, function(match) { var before = match[1]; if (before == '\\') return match[2]; return before + (object[match[3]] || '').toString(); }); } } var $break = new Object(); var $continue = new Object(); var Enumerable = { each: function(iterator) { var index = 0; try { this._each(function(value) { try { iterator(value, index++); } catch (e) { if (e != $continue) throw e; } }); } catch (e) { if (e != $break) throw e; } }, all: function(iterator) { var result = true; this.each(function(value, index) { result = result && !!(iterator || Prototype.K)(value, index); if (!result) throw $break; }); return result; }, any: function(iterator) { var result = true; this.each(function(value, index) { if (result = !!(iterator || Prototype.K)(value, index)) throw $break; }); return result; }, collect: function(iterator) { var results = []; this.each(function(value, index) { results.push(iterator(value, index)); }); return results; }, detect: function (iterator) { var result; this.each(function(value, index) { if (iterator(value, index)) { result = value; throw $break; } }); return result; }, findAll: function(iterator) { var results = []; this.each(function(value, index) { if (iterator(value, index)) results.push(value); }); return results; }, grep: function(pattern, iterator) { var results = []; this.each(function(value, index) { var stringValue = value.toString(); if (stringValue.match(pattern)) results.push((iterator || Prototype.K)(value, index)); }) return results; }, include: function(object) { var found = false; this.each(function(value) { if (value == object) { found = true; throw $break; } }); return found; }, inject: function(memo, iterator) { this.each(function(value, index) { memo = iterator(memo, value, index); }); return memo; }, invoke: function(method) { var args = $A(arguments).slice(1); return this.collect(function(value) { return value[method].apply(value, args); }); }, max: function(iterator) { var result; this.each(function(value, index) { value = (iterator || Prototype.K)(value, index); if (result == undefined || value >= result) result = value; }); return result; }, min: function(iterator) { var result; this.each(function(value, index) { value = (iterator || Prototype.K)(value, index); if (result == undefined || value < result) result = value; }); return result; }, partition: function(iterator) { var trues = [], falses = []; this.each(function(value, index) { ((iterator || Prototype.K)(value, index) ? trues : falses).push(value); }); return [trues, falses]; }, pluck: function(property) { var results = []; this.each(function(value, index) { results.push(value[property]); }); return results; }, reject: function(iterator) { var results = []; this.each(function(value, index) { if (!iterator(value, index)) results.push(value); }); return results; }, sortBy: function(iterator) { return this.collec ... ... (Not finished, please download and read the complete file)
...
Expand> <Close
Sponsored links
File list
Tips: You can preview the content of files by clicking file names^_^Name | Size | Date |
---|---|---|
auto_suggest.html | 1.09 kB | 03-12-07 00:11 |
crud.html | 1.68 kB | 03-12-07 00:11 |
0 | 3.00 B | |
2col_leftNav.css | 6.28 kB | 03-12-07 00:11 |
autosuggest.css | 335.00 B | 03-12-07 00:11 |
debug.png | 399.00 B | 03-12-07 00:11 |
error.png | 289.00 B | 03-12-07 00:11 |
fatal.png | 309.00 B | 03-12-07 00:11 |
info.png | 271.00 B | 03-12-07 00:11 |
logger.css | 1.88 kB | 03-12-07 00:11 |
magnet.png | 430.00 B | 03-12-07 00:11 |
site.css | 1.43 kB | 03-12-07 00:11 |
warn.png | 257.00 B | 03-12-07 00:11 |
0 | 3.00 B | |
auto_suggest.html.txt | 1.09 kB | 03-12-07 00:11 |
auto_suggest.js.txt | 669.00 B | 03-12-07 00:11 |
CountryList.java.txt | 3.00 kB | 03-12-07 00:11 |
crud.html.txt | 1.68 kB | 03-12-07 00:11 |
crud.js.txt | 1.40 kB | 03-12-07 00:11 |
crud.jst.txt | 755.00 B | 03-12-07 00:11 |
index.html.txt | 3.24 kB | 03-12-07 00:11 |
jst_demo.html.txt | 1.68 kB | 03-12-07 00:11 |
LabelValueBean.java.txt | 4.72 kB | 03-12-07 00:11 |
mvcPic.html.txt | 1.05 kB | 03-12-07 00:11 |
rdf.jst.txt | 284.00 B | 03-12-07 00:11 |
rss.jst.txt | 272.00 B | 03-12-07 00:11 |
rss_reader.html.txt | 1.20 kB | 03-12-07 00:11 |
rss_reader.js.txt | 642.00 B | 03-12-07 00:11 |
services.properties.txt | 168.00 B | 03-12-07 00:11 |
services.xml.txt | 435.00 B | 03-12-07 00:11 |
Test.java.txt | 17.36 kB | 03-12-07 00:11 |
TestBean.java.txt | 1.41 kB | 03-12-07 00:11 |
unit_test.html.txt | 1.03 kB | 03-12-07 00:11 |
unit_test.js.txt | 15.89 kB | 03-12-07 00:11 |
unit_test.jst.txt | 493.00 B | 03-12-07 00:11 |
unit_test_js.jst.txt | 765.00 B | 03-12-07 00:11 |
User.java.txt | 2.49 kB | 03-12-07 00:11 |
UserManager.java.txt | 2.04 kB | 03-12-07 00:11 |
web.xml.txt | 1.58 kB | 03-12-07 00:11 |
web.xml_no_spring.txt | 1.58 kB | 03-12-07 00:11 |
0 | 3.00 B | |
check.gif | 604.00 B | 03-12-07 00:11 |
debug.png | 399.00 B | 03-12-07 00:11 |
error.gif | 633.00 B | 03-12-07 00:11 |
error.png | 289.00 B | 03-12-07 00:11 |
fatal.png | 309.00 B | 03-12-07 00:11 |
info.png | 271.00 B | 03-12-07 00:11 |
magnet.png | 430.00 B | 03-12-07 00:11 |
swato_01.png | 5.22 kB | 03-12-07 00:11 |
swato_02.png | 13.94 kB | 03-12-07 00:11 |
swato_04.png | 7.94 kB | 03-12-07 00:11 |
swato_05.png | 14.42 kB | 03-12-07 00:11 |
swato_Layer-5-over.png | 27.12 kB | 03-12-07 00:11 |
swato_Layer_5.png | 28.45 kB | 03-12-07 00:11 |
wait.gif | 1.52 kB | 03-12-07 00:11 |
warn.png | 257.00 B | 03-12-07 00:11 |
index.html | 3.70 kB | 03-12-07 00:11 |
0 | 3.00 B | |
effects.js | 33.07 kB | 03-12-07 00:11 |
jkl-floating.js | 7.22 kB | 03-12-07 00:11 |
jkl-parsexml.js | 14.11 kB | 03-12-07 00:11 |
jkl-resizable.js | 5.05 kB | 03-12-07 00:11 |
json.js | 10.34 kB | 03-12-07 00:11 |
logger.js | 6.77 kB | 03-12-07 00:11 |
pop-it-menu.js | 4.44 kB | 03-12-07 00:11 |
prototype.js | 55.81 kB | 03-12-07 00:11 |
swato-engine.js | 5.06 kB | 03-12-07 00:11 |
swato-form.js | 3.00 kB | 03-12-07 00:11 |
swato-jst.js | 3.91 kB | 03-12-07 00:11 |
swato-select.js | 1.18 kB | 03-12-07 00:11 |
swato-suggest.js | 11.62 kB | 03-12-07 00:11 |
swato.js | 939.00 B | 03-12-07 00:11 |
window.js | 40.77 kB | 03-12-07 00:11 |
0 | 3.00 B | |
crud.jst | 744.00 B | 03-12-07 00:11 |
rdf.jst | 284.00 B | 03-12-07 00:11 |
rss.jst | 272.00 B | 03-12-07 00:11 |
unit_test.jst | 493.00 B | 03-12-07 00:11 |
unit_test_js.jst | 765.00 B | 03-12-07 00:11 |
jst_demo.html | 1.68 kB | 03-12-07 00:11 |
0 | 3.00 B | |
MANIFEST.MF | 106.00 B | 03-12-07 00:11 |
mvcPic.html | 1.05 kB | 03-12-07 00:11 |
rss_reader.html | 1.20 kB | 03-12-07 00:11 |
0 | 3.00 B | |
auto_suggest.js | 665.00 B | 03-12-07 00:11 |
crud.js | 1.41 kB | 03-12-07 00:11 |
portal.js | 4.66 kB | 03-12-07 00:11 |
rss_reader.js | 642.00 B | 03-12-07 00:11 |
unit_test.js | 15.89 kB | 03-12-07 00:11 |
swato.jar | 56.50 kB | 08-04-08 10:57 |
test.html | 18.36 kB | 03-12-07 00:11 |
unit_test.html | 1.03 kB | 03-12-07 00:11 |
0 | 3.00 B | |
0 | 3.00 B | |
0 | 3.00 B | |
0 | 3.00 B | |
JSONArray.class | 8.16 kB | 03-12-07 00:11 |
JSONObject$1.class | 199.00 B | 03-12-07 00:11 |
JSONObject$Null.class | 860.00 B | 03-12-07 00:11 |
JSONObject.class | 10.41 kB | 03-12-07 00:11 |
JSONTokener.class | 5.17 kB | 03-12-07 00:11 |
0 | 3.00 B | |
0 | 3.00 B | |
0 | 3.00 B | |
CountryList.class | 2.52 kB | 03-12-07 00:11 |
LabelValueBean$1.class | 825.00 B | 03-12-07 00:11 |
LabelValueBean.class | 2.15 kB | 03-12-07 00:11 |
LabelValueBeanTest.class | 1.88 kB | 03-12-07 00:11 |
ObjA.class | 571.00 B | 03-12-07 00:11 |
ObjB.class | 571.00 B | 03-12-07 00:11 |
Test$1.class | 565.00 B | 03-12-07 00:11 |
Test$2.class | 714.00 B | 03-12-07 00:11 |
Test$Foo.class | 231.00 B | 03-12-07 00:11 |
Test$InnerFoo.class | 643.00 B | 03-12-07 00:11 |
Test$InnerSubTestBean.class | 520.00 B | 03-12-07 00:11 |
Test$StaticInnerSubTestBean.class | 437.00 B | 03-12-07 00:11 |
Test$TestBeanInvocationHandler.class | 1.56 kB | 03-12-07 00:11 |
Test.class | 13.72 kB | 03-12-07 00:11 |
TestBean.class | 1.27 kB | 03-12-07 00:11 |
User.class | 1.65 kB | 03-12-07 00:11 |
UserManager.class | 2.27 kB | 03-12-07 00:11 |
JSONConverter.class | 8.00 kB | 03-12-07 00:11 |
JSONConverterTest$1.class | 240.00 B | 03-12-07 00:11 |
JSONConverterTest$TestBean.class | 1.73 kB | 03-12-07 00:11 |
JSONConverterTest.class | 6.13 kB | 03-12-07 00:11 |
0 | 3.00 B | |
JSONRequest.class | 2.96 kB | 03-12-07 00:11 |
JSONResponse.class | 2.41 kB | 03-12-07 00:11 |
JSONServlet.class | 4.00 kB | 03-12-07 00:11 |
PropsFileContext.class | 3.48 kB | 03-12-07 00:11 |
RequestAware.class | 198.00 B | 03-12-07 00:11 |
RequestParameterHolder.class | 2.36 kB | 03-12-07 00:11 |
RequestParameterRecorder.class | 2.17 kB | 03-12-07 00:11 |
RequestRedirector.class | 2.78 kB | 03-12-07 00:11 |
ServiceContext.class | 243.00 B | 03-12-07 00:11 |
SessionAware.class | 191.00 B | 03-12-07 00:11 |
SpringContext.class | 1.39 kB | 03-12-07 00:11 |
SwatoActionProxy.class | 4.86 kB | 03-12-07 00:11 |
SwatoVisible.class | 396.00 B | 03-12-07 00:11 |
0 | 3.00 B | |
Pipe.class | 2.02 kB | 03-12-07 00:11 |
Utils.class | 632.00 B | 03-12-07 00:11 |
services.properties | 168.00 B | 03-12-07 00:11 |
services.xml | 881.00 B | 03-12-07 00:11 |
0 | 3.00 B | |
commons-httpclient-2.0.2.jar | 220.09 kB | 03-12-07 00:11 |
commons-logging.jar | 37.12 kB | 03-12-07 00:11 |
spring-beans.jar | 213.99 kB | 03-12-07 00:11 |
spring-context.jar | 100.22 kB | 03-12-07 00:11 |
spring-core.jar | 71.98 kB | 03-12-07 00:11 |
web.xml | 1.58 kB | 03-12-07 00:11 |
Sponsored links