aboutsummaryrefslogtreecommitdiffstats
path: root/src/angular-bootstrap.js
diff options
context:
space:
mode:
authorMisko Hevery2010-03-26 16:27:18 -0700
committerMisko Hevery2010-03-26 16:27:18 -0700
commit258ca5f16581f0e8befa493644225a02ae2fc002 (patch)
treea7d67c586fb5c870619664ca84e17996f6dd2e6d /src/angular-bootstrap.js
parent1990cbbf2817e04657ccd616da1d9d6b78cc2949 (diff)
downloadangular.js-258ca5f16581f0e8befa493644225a02ae2fc002.tar.bz2
moved all uneeded files out, widgets.html works, tests horribly broken
Diffstat (limited to 'src/angular-bootstrap.js')
-rw-r--r--src/angular-bootstrap.js61
1 files changed, 42 insertions, 19 deletions
diff --git a/src/angular-bootstrap.js b/src/angular-bootstrap.js
index d2b2ff9c..7798afa5 100644
--- a/src/angular-bootstrap.js
+++ b/src/angular-bootstrap.js
@@ -1,18 +1,18 @@
/**
* The MIT License
- *
+ *
* Copyright (c) 2010 Adam Abrons and Misko Hevery http://getangular.com
- *
+ *
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
- *
+ *
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
- *
+ *
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -22,35 +22,58 @@
* THE SOFTWARE.
*/
(function(previousOnLoad){
- var filename = /(.*)\/angular-(.*).js/;
- var scripts = document.getElementsByTagName("script");
+ var filename = /(.*)\/angular-(.*).js(#(.*))?/;
+ var scripts = document.getElementsByTagName("SCRIPT");
var serverPath;
+ var config = {};
for(var j = 0; j < scripts.length; j++) {
var match = (scripts[j].src || "").match(filename);
if (match) {
serverPath = match[1];
+ parseConfig(match[4]);
+ }
+ }
+
+ function parseConfig(args) {
+ var keyValues = args.split('&'), keyValue, i = 0;
+ for (; i < keyValues.length; i++) {
+ keyValue = keyValues[i].split('=');
+ config[keyValue[0]] = keyValue[1] || true;
}
}
function addScript(file){
document.write('<script type="text/javascript" src="' + serverPath + file +'"></script>');
- };
+ }
addScript("/Angular.js");
- addScript("/API.js");
- addScript("/Binder.js");
- addScript("/ControlBar.js");
- addScript("/DataStore.js");
- addScript("/Filters.js");
- addScript("/Formatters.js");
addScript("/JSON.js");
- addScript("/Model.js");
+ addScript("/Compiler.js");
+ addScript("/Scope.js");
+ addScript("/jqlite.js");
addScript("/Parser.js");
addScript("/Resource.js");
- addScript("/Scope.js");
- addScript("/Server.js");
- addScript("/Users.js");
- addScript("/Validators.js");
- addScript("/Widgets.js");
+ addScript("/URLWatcher.js");
+
+ // Extension points
+ addScript("/apis.js");
+ addScript("/filters.js");
+ addScript("/formatters.js");
+ addScript("/validators.js");
+ addScript("/directives.js");
+ addScript("/markups.js");
+ addScript("/widgets.js");
+
+ if (config.autobind) {
+ window.onload = function(){
+ try {
+ if (previousOnLoad) previousOnLoad();
+ } catch(e) {}
+ var scope = angular.compile(window.document, config);
+ if (config.rootScope) window[config.rootScope] = scope;
+ scope.$init();
+ };
+ }
+
})(window.onload);