aboutsummaryrefslogtreecommitdiffstats
path: root/example/tweeter/tweeterclient.js
diff options
context:
space:
mode:
authorMisko Hevery2010-01-18 17:56:08 -0800
committerMisko Hevery2010-01-18 17:56:08 -0800
commit0e566fe6cb41de388df6793b350fb81aaa4a8476 (patch)
treedc526a2a5de174f820ef375ffcdb45e32de9cda7 /example/tweeter/tweeterclient.js
parent7b558b5382c864b00392f50fa5095e53f7b486d0 (diff)
downloadangular.js-0e566fe6cb41de388df6793b350fb81aaa4a8476.tar.bz2
tweeter demo client
Diffstat (limited to 'example/tweeter/tweeterclient.js')
-rw-r--r--example/tweeter/tweeterclient.js35
1 files changed, 35 insertions, 0 deletions
diff --git a/example/tweeter/tweeterclient.js b/example/tweeter/tweeterclient.js
new file mode 100644
index 00000000..27ec3348
--- /dev/null
+++ b/example/tweeter/tweeterclient.js
@@ -0,0 +1,35 @@
+function noop(){}
+$(document).ready(function(){
+ var scope = window.scope = angular.compile(document);
+ scope.getJSON = function(url, callback) {
+ var list = [];
+ var self = this;
+ self.set('status', 'fetching');
+ $.getJSON(url, function(response){
+ _(response).forEach(function(v,k){
+ list[k] = v;
+ });
+ (callback||noop)(response);
+ self.set('status', '');
+ self.updateView();
+ });
+ return list;
+ };
+
+ function fetchTweets(username){
+ return scope.getJSON(
+ username ?
+ "http://twitter.com/statuses/user_timeline/"+username+".json" :
+ "http://twitter.com/statuses/home_timeline.json");
+ }
+
+ scope.set('fetchTweets', fetchTweets);
+ scope.set('users', [
+ {screen_name:'mhevery', name:'Mi\u0161ko Hevery', notes:'Author of <angular/>.',
+ profile_image_url:'http://a3.twimg.com/profile_images/54360179/Me_-_Small_Banner_normal.jpg'},
+ {screen_name:'abrons', name:'Adam Abrons', notes:'Author of <angular/> & Ruby guru.',
+ profile_image_url:'http://a1.twimg.com/profile_images/533646480/PIC00024_normal.jpg'}
+ ]);
+ scope.watchUrl();
+ scope.init();
+});