mirror of
https://github.com/Hopiu/angular.js.git
synced 2026-03-17 07:40:22 +00:00
80 lines
3.4 KiB
HTML
80 lines
3.4 KiB
HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
|
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
|
<head>
|
|
<link rel="stylesheet" type="text/css" href="style.css">
|
|
<link rel="stylesheet" type="text/css" href="../../css/angular.css">
|
|
<script type="text/javascript" src="../../lib/underscore/underscore.js"></script>
|
|
<script type="text/javascript" src="../../lib/jquery/jquery-1.4.2.min.js"></script>
|
|
<script type="text/javascript" src="../../src/angular-bootstrap.js"></script>
|
|
<script type="text/javascript" src="tweeterclient.js"></script>
|
|
</head>
|
|
<body ng:class="status" ng:init="mute={}" ng:watch="$anchor.user: tweets = fetchTweets($anchor.user)">
|
|
<div class="addressbook box">
|
|
<h1>Address Book</h1>
|
|
[ Filter: <input type="text" name="userFilter"/>]
|
|
<ul>
|
|
<li ng:repeat="user in users.$filter(userFilter).$orderBy('screen_name')" ng:class-even="'even'" ng:class-odd="'odd'">
|
|
<a href="" ng:click="$anchor.user=user.screen_name"><img src="{{user.profile_image_url}}"/></a>
|
|
<a href="" ng:click="$anchor.user=user.screen_name">{{user.screen_name}}</a>
|
|
as <span class="nickname">{{user.name}}</span>
|
|
[ <a href="#" ng:click="$anchor.edituser=user.screen_name">edit</a>
|
|
| <a href="#" ng:click="users.$remove(user)">X</a>
|
|
| <a href="#" ng:click="mute[user.screen_name] = ! mute[user.screen_name]">mute</a>
|
|
]
|
|
<div class="notes">{{user.notes|linky}}</div>
|
|
<div class="clrleft"></div>
|
|
</li>
|
|
</ul>
|
|
<hr/>
|
|
<div ng:show="$anchor.edituser" ng:eval="user = users.$find({:$.screen_name == $anchor.edituser})">
|
|
<div class="editor">
|
|
<label>Username:</label>
|
|
<input type="text" name="user.screen_name" disabled="disabled"/>
|
|
<label>Name:</label>
|
|
<input type="text" name="user.name"/>
|
|
<label>Image:</label>
|
|
<input type="text" name="user.profile_image_url"/>
|
|
<label>Notes:</label>
|
|
<textarea type="text" name="user.notes"></textarea>
|
|
|
|
<input type="button" ng:click="$anchor.edituser=undefined" value="Close"/>
|
|
</div>
|
|
</div>
|
|
<hr/>
|
|
<div class="debug">
|
|
mute={{mute|json}}
|
|
|
|
userFilter={{userFilter|json}}
|
|
|
|
tweetFilter={{tweetFilter|json}}
|
|
|
|
$anchor={{$anchor}}
|
|
|
|
users={{users}}
|
|
|
|
tweets={{tweets}}
|
|
</div>
|
|
</div>
|
|
<div class="tweeter box">
|
|
<h1>Tweets: {{$anchor.user}}</h1>
|
|
[ Filter: <input type="text" name="tweetFilter"/>
|
|
<span ng:show="$anchor.user">| <a href="#user="><< All</a></span>
|
|
]
|
|
<div class="loading">Loading...</div>
|
|
<ul>
|
|
<li ng:repeat="tweet in tweets.$filter(tweetFilter).$filter({:!mute[$.user.screen_name]})"
|
|
ng:class-even="'even'" ng:class-odd="'odd'"
|
|
ng:eval="user = users.$find({: $.screen_name == tweet.user.screen_name}) || tweet.user">
|
|
<img src="{{user.profile_image_url}}"/>
|
|
[ <a href="" ng:click="$anchor.user=user.screen_name">{{user.nickname || user.name || user.screen_name }}</a>
|
|
| <a href="" ng:click="users.$includeIf(user, true)">+</a>
|
|
]:
|
|
{{tweet.text | linky}}
|
|
<span class="notes">{{tweet.created_at}}</span>
|
|
<span class="notes">{{user.notes}}</span>
|
|
<div class="clrleft"></div>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</body>
|
|
</html>
|