|
@@ -3,74 +3,74 @@ smalltalk.addClass('Tweet', smalltalk.Widget, ['json'], 'TwitterWall');
|
|
|
smalltalk.addMethod(
|
|
|
smalltalk.method({
|
|
|
selector: "json",
|
|
|
-fn: function () {
|
|
|
- var self = this;
|
|
|
- return self['@json'];
|
|
|
- return self;
|
|
|
-},
|
|
|
+fn: function (){
|
|
|
+var self=this;
|
|
|
+return smalltalk.withContext(function($ctx1) {
|
|
|
+var $1;
|
|
|
+$1=self["@json"];
|
|
|
+return $1;
|
|
|
+}, function($ctx1) {$ctx1.fill(self,"json",{},smalltalk.Tweet)})},
|
|
|
messageSends: []}),
|
|
|
smalltalk.Tweet);
|
|
|
|
|
|
smalltalk.addMethod(
|
|
|
smalltalk.method({
|
|
|
selector: "json:",
|
|
|
-fn: function (aJson) {
|
|
|
- var self = this;
|
|
|
- self['@json'] = aJson;
|
|
|
- return self;
|
|
|
-},
|
|
|
+fn: function (aJson){
|
|
|
+var self=this;
|
|
|
+return smalltalk.withContext(function($ctx1) {
|
|
|
+self["@json"]=aJson;
|
|
|
+return self}, function($ctx1) {$ctx1.fill(self,"json:",{aJson:aJson},smalltalk.Tweet)})},
|
|
|
messageSends: []}),
|
|
|
smalltalk.Tweet);
|
|
|
|
|
|
smalltalk.addMethod(
|
|
|
smalltalk.method({
|
|
|
selector: "renderOn:",
|
|
|
-fn: function (tr) {
|
|
|
- var self = this;
|
|
|
- var tdUser = nil;
|
|
|
- var tdMessage = nil;
|
|
|
- var img = nil;
|
|
|
- var a = nil;
|
|
|
- var pMessage = nil;
|
|
|
- var pDate = nil;
|
|
|
- tdUser = smalltalk.send(smalltalk.send(smalltalk.HTMLCanvas || HTMLCanvas, "_new", []), "_td", []);
|
|
|
- smalltalk.send(smalltalk.send(tdUser, "_element", []), "_id_", ["user"]);
|
|
|
- tdMessage = smalltalk.send(smalltalk.send(smalltalk.HTMLCanvas || HTMLCanvas, "_new", []), "_td", []);
|
|
|
- smalltalk.send(smalltalk.send(tdMessage, "_element", []), "_id_", ["messageBox"]);
|
|
|
- smalltalk.send(tr, "_append_", [tdUser]);
|
|
|
- smalltalk.send(tr, "_append_", [tdMessage]);
|
|
|
- img = smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.HTMLCanvas || HTMLCanvas, "_new", []), "_img", []), "_src_", [smalltalk.send(self['@json'], "_at_", ["profile_image_url"])]);
|
|
|
- smalltalk.send(smalltalk.send(img, "_element", []), "_title_", [smalltalk.send(self['@json'], "_at_", ["from_user"])]);
|
|
|
- smalltalk.send(smalltalk.send(img, "_element", []), "_longDesc_", [smalltalk.send(unescape("http%3A//twitter.com/"), "__comma", [smalltalk.send(self['@json'], "_at_", ["from_user"])])]);
|
|
|
- a = smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.HTMLCanvas || HTMLCanvas, "_new", []), "_a", []), "_href_", [smalltalk.send(unescape("http%3A//twitter.com/"), "__comma", [smalltalk.send(self['@json'], "_at_", ["from_user"])])]);
|
|
|
- smalltalk.send(a, "_append_", [img]);
|
|
|
- smalltalk.send(tdUser, "_append_", [a]);
|
|
|
- pMessage = smalltalk.send(smalltalk.send(smalltalk.HTMLCanvas || HTMLCanvas, "_new", []), "_p", []);
|
|
|
- smalltalk.send(smalltalk.send(pMessage, "_element", []), "_id_", ["message"]);
|
|
|
- smalltalk.send(pMessage, "_append_", [smalltalk.send(self['@json'], "_at_", ["text"])]);
|
|
|
- smalltalk.send(tdMessage, "_append_", [pMessage]);
|
|
|
- pDate = smalltalk.send(smalltalk.send(smalltalk.HTMLCanvas || HTMLCanvas, "_new", []), "_p", []);
|
|
|
- smalltalk.send(smalltalk.send(pDate, "_element", []), "_id_", ["date"]);
|
|
|
- smalltalk.send(pDate, "_append_", [smalltalk.send(self['@json'], "_at_", ["created_at"])]);
|
|
|
- smalltalk.send(tdMessage, "_append_", [pDate]);
|
|
|
- return self;
|
|
|
-},
|
|
|
-messageSends: ["td", "new", "id:", "element", "append:", "src:", "img", "at:", "title:", "longDesc:", ",", "href:", "a", "p"]}),
|
|
|
+fn: function (tr){
|
|
|
+var self=this;
|
|
|
+var tdUser,tdMessage,img,a,pMessage,pDate;
|
|
|
+function $HTMLCanvas(){return smalltalk.HTMLCanvas||(typeof HTMLCanvas=="undefined"?nil:HTMLCanvas)}
|
|
|
+return smalltalk.withContext(function($ctx1) {
|
|
|
+tdUser=_st(_st($HTMLCanvas())._new())._td();
|
|
|
+_st(_st(tdUser)._element())._id_("user");
|
|
|
+tdMessage=_st(_st($HTMLCanvas())._new())._td();
|
|
|
+_st(_st(tdMessage)._element())._id_("messageBox");
|
|
|
+_st(tr)._append_(tdUser);
|
|
|
+_st(tr)._append_(tdMessage);
|
|
|
+img=_st(_st(_st($HTMLCanvas())._new())._img())._src_(_st(self["@json"])._at_("profile_image_url"));
|
|
|
+_st(_st(img)._element())._title_(_st(self["@json"])._at_("from_user"));
|
|
|
+_st(_st(img)._element())._longDesc_("http://twitter.com/".__comma(_st(self["@json"])._at_("from_user")));
|
|
|
+a=_st(_st(_st($HTMLCanvas())._new())._a())._href_("http://twitter.com/".__comma(_st(self["@json"])._at_("from_user")));
|
|
|
+_st(a)._append_(img);
|
|
|
+_st(tdUser)._append_(a);
|
|
|
+pMessage=_st(_st($HTMLCanvas())._new())._p();
|
|
|
+_st(_st(pMessage)._element())._id_("message");
|
|
|
+_st(pMessage)._append_(_st(self["@json"])._at_("text"));
|
|
|
+_st(tdMessage)._append_(pMessage);
|
|
|
+pDate=_st(_st($HTMLCanvas())._new())._p();
|
|
|
+_st(_st(pDate)._element())._id_("date");
|
|
|
+_st(pDate)._append_(_st(self["@json"])._at_("created_at"));
|
|
|
+_st(tdMessage)._append_(pDate);
|
|
|
+return self}, function($ctx1) {$ctx1.fill(self,"renderOn:",{tr:tr,tdUser:tdUser,tdMessage:tdMessage,img:img,a:a,pMessage:pMessage,pDate:pDate},smalltalk.Tweet)})},
|
|
|
+messageSends: ["td", "new", "id:", "element", "append:", "src:", "at:", "img", "title:", "longDesc:", ",", "href:", "a", "p"]}),
|
|
|
smalltalk.Tweet);
|
|
|
|
|
|
|
|
|
smalltalk.addMethod(
|
|
|
smalltalk.method({
|
|
|
selector: "openAt:with:",
|
|
|
-fn: function (tr, aJson) {
|
|
|
- var self = this;
|
|
|
- var tweet = nil;
|
|
|
- tweet = smalltalk.send(self, "_new", []);
|
|
|
- smalltalk.send(tweet, "_json_", [aJson]);
|
|
|
- smalltalk.send(tweet, "_renderOn_", [tr]);
|
|
|
- return tr;
|
|
|
- return self;
|
|
|
-},
|
|
|
+fn: function (tr,aJson){
|
|
|
+var self=this;
|
|
|
+var tweet;
|
|
|
+return smalltalk.withContext(function($ctx1) {
|
|
|
+var $1;
|
|
|
+tweet=self._new();
|
|
|
+_st(tweet)._json_(aJson);
|
|
|
+_st(tweet)._renderOn_(tr);
|
|
|
+$1=tr;
|
|
|
+return $1;
|
|
|
+}, function($ctx1) {$ctx1.fill(self,"openAt:with:",{tr:tr,aJson:aJson,tweet:tweet},smalltalk.Tweet.klass)})},
|
|
|
messageSends: ["new", "json:", "renderOn:"]}),
|
|
|
smalltalk.Tweet.klass);
|
|
|
|
|
@@ -79,30 +79,46 @@ smalltalk.addClass('TwitterSearch', smalltalk.Object, [], 'TwitterWall');
|
|
|
smalltalk.addMethod(
|
|
|
smalltalk.method({
|
|
|
selector: "query",
|
|
|
-fn: function () {
|
|
|
- var self = this;
|
|
|
- var result = nil;
|
|
|
- var queryString = nil;
|
|
|
- self['@queryString'] = smalltalk.send(smalltalk.send(smalltalk.send(unescape("%23searchQuery"), "_asJQuery", []), "_val", []), "_replace_with_", [unescape("%23"), unescape("%2523")]);
|
|
|
- result = smalltalk.send(typeof jQuery == "undefined" ? nil : jQuery, "_ajax_options_", [smalltalk.send(unescape("http%3A//search.twitter.com/search.json%3Frpp%3D5%26q%3D"), "__comma", [self['@queryString']]), smalltalk.HashedCollection._fromPairs_([smalltalk.send("type", "__minus_gt", ["GET"]), smalltalk.send("success", "__minus_gt", [function (tmp) {return smalltalk.send(self, "_success_", [smalltalk.send(tmp, "_results", [])]);}]), smalltalk.send("error", "__minus_gt", [function () {return smalltalk.send(typeof window == "undefined" ? nil : window, "_alert_", ["error"]);}]), smalltalk.send("dataType", "__minus_gt", ["jsonp"])])]);
|
|
|
- return self;
|
|
|
-},
|
|
|
+fn: function (){
|
|
|
+var self=this;
|
|
|
+var result,queryString;
|
|
|
+return smalltalk.withContext(function($ctx1) {
|
|
|
+queryString=_st(_st("#searchQuery"._asJQuery())._val())._replace_with_("#","%23");
|
|
|
+result=_st(jQuery)._ajax_options_("http://search.twitter.com/search.json?rpp=5&q=".__comma(queryString),smalltalk.HashedCollection._from_(["type".__minus_gt("GET"),"success".__minus_gt((function(tmp){
|
|
|
+return smalltalk.withContext(function($ctx2) {
|
|
|
+return self._success_(_st(tmp)._results());
|
|
|
+}, function($ctx2) {$ctx2.fillBlock({tmp:tmp},$ctx1)})})),"error".__minus_gt((function(){
|
|
|
+return smalltalk.withContext(function($ctx2) {
|
|
|
+return _st(window)._alert_("error");
|
|
|
+}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})),"dataType".__minus_gt("jsonp")]));
|
|
|
+return self}, function($ctx1) {$ctx1.fill(self,"query",{result:result,queryString:queryString},smalltalk.TwitterSearch)})},
|
|
|
messageSends: ["replace:with:", "val", "asJQuery", "ajax:options:", ",", "->", "success:", "results", "alert:"]}),
|
|
|
smalltalk.TwitterSearch);
|
|
|
|
|
|
smalltalk.addMethod(
|
|
|
smalltalk.method({
|
|
|
selector: "success:",
|
|
|
-fn: function (tweets) {
|
|
|
- var self = this;
|
|
|
- var playground = nil;
|
|
|
- var table = nil;
|
|
|
- var tr = nil;
|
|
|
- playground = smalltalk.send(unescape("%23playground"), "_asJQuery", []);
|
|
|
- smalltalk.send(playground, "_empty", []);
|
|
|
- smalltalk.send(function (html) {table = smalltalk.send(html, "_table", []);smalltalk.send(smalltalk.send(table, "_element", []), "_id_", ["twitterwall"]);return smalltalk.send(tweets, "_do_", [function (tweet) {tr = smalltalk.send(html, "_tr", []);smalltalk.send(table, "_append_", [tr]);return smalltalk.send(smalltalk.Tweet || Tweet, "_openAt_with_", [tr, tweet]);}]);}, "_appendToJQuery_", [playground]);
|
|
|
- return self;
|
|
|
-},
|
|
|
+fn: function (tweets){
|
|
|
+var self=this;
|
|
|
+var playground,table,tr;
|
|
|
+function $Tweet(){return smalltalk.Tweet||(typeof Tweet=="undefined"?nil:Tweet)}
|
|
|
+return smalltalk.withContext(function($ctx1) {
|
|
|
+playground="#playground"._asJQuery();
|
|
|
+_st(playground)._empty();
|
|
|
+_st((function(html){
|
|
|
+return smalltalk.withContext(function($ctx2) {
|
|
|
+table=_st(html)._table();
|
|
|
+table;
|
|
|
+_st(_st(table)._element())._id_("twitterwall");
|
|
|
+return _st(tweets)._do_((function(tweet){
|
|
|
+return smalltalk.withContext(function($ctx3) {
|
|
|
+tr=_st(html)._tr();
|
|
|
+tr;
|
|
|
+_st(table)._append_(tr);
|
|
|
+return _st($Tweet())._openAt_with_(tr,tweet);
|
|
|
+}, function($ctx3) {$ctx3.fillBlock({tweet:tweet},$ctx2)})}));
|
|
|
+}, function($ctx2) {$ctx2.fillBlock({html:html},$ctx1)})}))._appendToJQuery_(playground);
|
|
|
+return self}, function($ctx1) {$ctx1.fill(self,"success:",{tweets:tweets,playground:playground,table:table,tr:tr},smalltalk.TwitterSearch)})},
|
|
|
messageSends: ["asJQuery", "empty", "appendToJQuery:", "table", "id:", "element", "do:", "tr", "append:", "openAt:with:"]}),
|
|
|
smalltalk.TwitterSearch);
|
|
|
|