Changeset 63
Author: frojo56
(2009/02/17 14:41) Almost 3 years ago
Rework of regex that determines current page. Retweet working on individual tweet page.
Author: frojo56
(2009/02/17 14:41) Almost 3 years ago
Rework of regex that determines current page. Retweet working on individual tweet page.
var current_username = j.trim(j("p#me_name").html());var current_username = (j.trim(j("p#me_name").html())).length != 0 ? j.trim(j("p#me_name").html()) : j("#navigation #profile_link").attr("href").replace(/https?:\/\/(?:www\.)?twitter\.com\/([\w\d]+)$/,"$1");log('Successfully loaded ' + newTweets.length + ' tweets.' )log('Successfully loaded ' + newTweets.length + ' tweets.' );{{log("On indidivual page");statusid = reUrlSplitUp[3];log("On indidivual page("+statusid+")");log("Page Number: " + pageNumber);log("Page Number: " + pageNumber);statusid = reUrlSplitUp[4];j.ajax({j.ajax({data:{id:statusid},data:{id:statusid},success:function(data){success:function(data){tweets_on_page=data;//add to array, don't just apply single tweetloaded_tweets[pageNumber-1] = data;loaded_tweets[pageNumber-1] = new Array();//modify_tweets(tweets_on_page);loaded_tweets[pageNumber-1].push(data);//loaded_tweets[pageNumber-1] = data;log("Loaded "+loaded_tweets[pageNumber-1].length+" tweet(s)");{{if(tweets.length == null)log("Modifying " + tweets.length + " tweet(s)");if(tweets != null){{//single tweet?for(i=0;i<tweets.length;i++)jq_tweet = j("#permalink");modify_reply_button(jq_tweet,tweets);add_retweet_button(jq_tweet,tweets);modify_delete_button(jq_tweet,tweets);}else{log("Modifying " + tweets.length + " tweet(s)");if(tweets != null){{for(i=0;i<tweets.length;i++)jq_tweet = j("#timeline #status_"+tweets[i].id);if(jq_tweet.length == 0)jq_tweet = j("#permalink");if(appendTweets){{jq_tweet = j("#timeline #status_"+tweets[i].id);new_jq_tweet = convert_json_tweet_to_html_tweet(tweets[i]);//.appendTo("#timeline");if(appendTweets)add_retweet_button(new_jq_tweet,tweets[i]);modify_reply_button(new_jq_tweet,tweets[i]);if(tweets[i].user.screen_name == current_username){{new_jq_tweet = convert_json_tweet_to_html_tweet(tweets[i]);//.appendTo("#timeline");new_jq_tweet.find("span.actions div").append("<a class='delete' title='delete this update' href='#delete'></a>");add_retweet_button(new_jq_tweet,tweets[i]);modify_delete_button(new_jq_tweet,tweets[i]);modify_reply_button(new_jq_tweet,tweets[i]);}if(tweets[i].user.screen_name == current_username)find_reply_to_me_in_tweet_and_set_to_me_class(new_jq_tweet);{if(j("#timeline").length>0)new_jq_tweet.find("span.actions div").append("<a class='delete' title='delete this update' href='#delete'></a>");modify_delete_button(new_jq_tweet,tweets[i]);}find_reply_to_me_in_tweet_and_set_to_me_class(new_jq_tweet);new_jq_tweet.appendTo("#timeline");new_jq_tweet.appendTo("#timeline");}{new_jq_tweet.appendTo("#wrapper");oldEntryContent = j("#timeline #status_"+tweets[i].id+" .status-body .entry-content").html();newEntryContent = link_up_status_text(oldEntryContent,false,false,true);j("#timeline #status_"+tweets[i].id+" .status-body .entry-content").html(newEntryContent);modify_reply_button(jq_tweet,tweets[i]);add_retweet_button(jq_tweet,tweets[i]);modify_delete_button(jq_tweet,tweets[i]);find_reply_to_me_in_tweet_and_set_to_me_class(jq_tweet);}{//oldEntryContent = j("#timeline #status_"+tweets[i].id+" .status-body .entry-content").html();oldEntryContent = jq_tweet.find(".status-body .entry-content").html();//j("#timeline #status_"+tweets[i].id+" .status-body .entry-content").html(newEntryContent);jq_tweet.find(".status-body .entry-content").html(newEntryContent);log("Done modifying tweets.");log("Done modifying tweets.");{{if(j("li#status_"+json_tweet.id+" span.status-body div.embedded-retweet").length==0)if(j("li#status_"+json_tweet.id).length>0)jq_tweet = j("li#status_"+json_tweet.id);elsejq_tweet = j("#permalink");if( jq_tweet.find(".status-body .embedded-retweet").length==0){{jq_embedded_retweet = j("<div id='retweet_"+json_tweet.id+ "' class='embedded-retweet'><span class='counter'>140</span><br/><textarea class='retweet-text'></textarea><br/><a class='retweet-submit' href='#'>Retweet this</a><a class='retweet-cancel' href='#'>Cancel</a></div>");jq_embedded_retweet = j("<div id='retweet_"+json_tweet.id+ "' class='embedded-retweet'><span class='counter'>140</span><br/><textarea class='retweet-text'></textarea><br/><a class='retweet-submit' href='#'>Retweet this</a><a class='retweet-cancel' href='#'>Cancel</a></div>");jq_embedded_retweet.appendTo("li#status_"+json_tweet.id+" span.status-body").effect('scale',{from:{height:0},percent:100,direction:'vertical',scale:'box'},300);jq_embedded_retweet.appendTo(jq_tweet.find(".status-body")).effect('scale',{from:{height:0},percent:100,direction:'vertical',scale:'box'},300);jq_textarea = jq_embedded_retweet.find("textarea.retweet-text");jq_textarea = jq_embedded_retweet.find("textarea.retweet-text");//jq_textarea.focus(function(){//jq_textarea.focus(function(){// counter_span = j(this).parent().find("span.counter");// counter_span = j(this).parent().find("span.counter");//jq_textarea.focus();counter_span = jq_textarea.parent().find("span.counter");counter_span = jq_textarea.parent().find("span.counter");data:{status:jq_ta.val(),in_reply_to_status_id:jtweet.id},data:{status:jq_ta.val(),in_reply_to_status_id:jtweet.id},success:function(data){success:function(data){convert_json_tweet_to_html_tweet(data).prependTo("ol#timeline").show("highlight",{},1000);convert_json_tweet_to_html_tweet(data).prependTo("#timeline").show("highlight",{},1000);{{//reUrlSplitUp=/^https?:\/\/(?:www\.)?twitter\.com(\/([\w\d]+)(\/status\/(\d+))?(?:.*page=(\d+))?)(?:#.*)?$/.exec(location.href);//log("reUrlSplitUp: "+reUrlSplitUp);reUrlSplitUp=/https?:\/\/(?:www\.)?twitter.com\/([\w\d]+)(?:\/(statuses)\/(\d+))?(?:\?page=(\d+))?/.exec(location.href);// 1: directory right after twitter.com (ie: home or carl_furrow, etc)//reUrlSplitUp[1] = everything after "http://twitter.com", will be null if on twitter home page// 2: the word "statuses" if in the url (what did I want to use this for?)//reUrlSplitUp[2] = main subdirectory. ie "home" or "username"// 3: the status id//reUrlSplitUp[3] = ie /status/123456// 4: Page number//reUrlSplitUp[4] = statusid, if available//reUrlSplitUp[5] = Page Number, if available{{//log("reUrlSplitUp[1]: "+reUrlSplitUp[1]+" reUrlSplitUp[2]: "+reUrlSplitUp[2]+" reUrlSplitUp[3]: "+reUrlSplitUp[3]+" reUrlSplitUp[4]: "+reUrlSplitUp[4]);log("reUrlSplitUp[1]: "+reUrlSplitUp[1]+" reUrlSplitUp[2]: "+reUrlSplitUp[2]+" reUrlSplitUp[3]: "+reUrlSplitUp[3]+" reUrlSplitUp[4]: "+reUrlSplitUp[4]);if(reUrlSplitUp[2] != null && reUrlSplitUp[2] == "home")if(reUrlSplitUp[1] != null && reUrlSplitUp[1] == "home")else if(reUrlSplitUp[2] != null && reUrlSplitUp[2] != "home")else if(reUrlSplitUp[1] != null && reUrlSplitUp[1] != "home"){{if(reUrlSplitUp[4] != null)if(reUrlSplitUp[3] != null)if(reUrlSplitUp[5] != null && reUrlSplitUp[5].length > 0)if(reUrlSplitUp[4] != null && reUrlSplitUp[4].length > 0)pageNumber = reUrlSplitUp[5];pageNumber = reUrlSplitUp[4];//log("onTwitterHomePage: "+onTwitterHomePage+" onTwitterFriendFeed: "+onTwitterFriendFeed+" onTwitterIndividualTweets:"+onTwitterIndividualTweet);log("onTwitterHomePage: "+onTwitterHomePage+" onTwitterFriendFeed: "+onTwitterFriendFeed+" onTwitterIndividualTweets:"+onTwitterIndividualTweet);{{{\{\.to_me, .to_me .entry-content\{\{\{\{\{\{\