-// Global Const\r
-var INTERVAL_COOKIE = 'homeInterval';\r
-$(function () {\r
- formFunc();\r
- $(".rt_btn").live("click", function (e) {\r
- e.preventDefault();\r
- onRT($(this));\r
- });\r
- $(".retw_btn").live("click", function (e) {\r
- e.preventDefault();\r
- onNwRT($(this));\r
- });\r
- $(".replie_btn").live("click", function (e) {\r
- e.preventDefault();\r
- onReplie($(this), e);\r
- });\r
- $(".favor_btn").live("click", function (e) {\r
- e.preventDefault();\r
- onFavor($(this));\r
- });\r
- $(".delete_btn").live("click", function (e) {\r
- e.preventDefault();\r
- onDelete($(this), "Tweet");\r
- });\r
- $(".rt_undo").live("click", function (e) {\r
- e.preventDefault();\r
- onUndoRt($(this));\r
- });\r
- markReply($("#allTimeline > li"));\r
- $("#submit_btn").click(function (e) {\r
- updateStatus();\r
- e.preventDefault();\r
- });\r
- document.onclick = function () {\r
- document.title = document.title.replace(/(\([0-9]+\))/g, "");\r
- $(".new").each(function () {\r
- $(".new").remove();\r
- });\r
- }\r
- setUpdateInterval();\r
-});\r
-var setUpdateInterval = function () {\r
- if (!location.href.split("?")[1] || location.href.split("?")[1] == "p=1") {\r
- var interval = parseFloat($.cookie(INTERVAL_COOKIE));\r
- if (interval === 0.0) {\r
- return false;\r
- }\r
- interval = interval > 0 ? interval : 1;\r
- UPDATE_INTERVAL = setInterval(function () {\r
- update();\r
- }, interval * 1000 * 60);\r
- }\r
-};\r
-function update() {\r
- if (PAUSE_UPDATE === true) {\r
- window.setTimeout(update, 5000);\r
- } else if (PAUSE_TIMELINE === true) {\r
- return 0;\r
- } else {\r
- PAUSE_TIMELINE = true;\r
- updateSentTip('Retrieving new tweets...', 5000, 'ing');\r
- if ($.cookie("intervalChanged") === "true") {\r
- clearInterval(UPDATE_INTERVAL);\r
- $.cookie("intervalChanged", "")\r
- setUpdateInterval();\r
- }\r
- $("#statuses .timeline li.mine").removeClass("mine").addClass("myTweet");\r
- var since_id = $("#statuses .timeline li:not(.myTweet):not(#ajax_statuses li):first").find(".status_id").text();\r
- $.ajax({\r
- url: "ajax/updateTimeline.php",\r
- type: "GET",\r
- dataType: "text",\r
- data: "since_id=" + since_id,\r
- success: function (msg) {\r
- if ($.trim(msg).indexOf("</li>") > 0) {\r
- $("#allTimeline li.myTweet:not(:first)").removeClass("myTweet");\r
- var source = $(msg).prependTo($(".timeline"));\r
- var num = 0;\r
- if (document.title.match(/\d+/) != null) {\r
- num = parseInt(document.title.match(/\d+/));\r
- }\r
- document.title = "(" + (num + $(msg).length - 1) + ") " + document.title.replace(/(\([0-9]+\))/g, "");\r
- markReply($('#allTimeline > li'));\r
- filterEle();\r
- rabrTweet(source);\r
- $(".new").slideDown("fast");\r
- $(".big-retweet-icon").tipsy({\r
- gravity: 's'\r
- });\r
- previewMedia(source);\r
- } else {\r
- updateSentTip('No new tweets', 3000, 'failure');\r
- }\r
- PAUSE_TIMELINE = false;\r
- },\r
- error: function (msg) {\r
- PAUSE_TIMELINE = false;\r
- }\r
- });\r
- }\r
-}\r
+// Global Const
+var INTERVAL_COOKIE = 'homeInterval';
+$(function () {
+ formFunc();
+ $("#allTimeline").click(function(e) {
+ var $this = $(e.target);
+ var type = $this.attr('class');
+ switch(type) {
+ case 'rt_btn':
+ e.preventDefault();
+ onRT($this);
+ break;
+ case 'retw_btn':
+ e.preventDefault();
+ onNwRT($this);
+ break;
+ case 'replie_btn':
+ e.preventDefault();
+ onReplie($this,e);
+ break;
+ case 'favor_btn':
+ e.preventDefault();
+ onFavor($this);
+ break;
+ case 'unfav_btn':
+ e.preventDefault();
+ UnFavor($this);
+ break;
+ case 'delete_btn':
+ e.preventDefault();
+ onDelete($this);
+ break;
+ case 'rt_undo':
+ e.preventDefault();
+ onUndoRt($this);
+ break;
+ }
+ });
+ markReply($("#allTimeline > li"));
+ $("#submit_btn").click(function (e) {
+ e.preventDefault();
+ updateStatus();
+ });
+ $("body").live("click", function (e) {
+ document.title = document.title.replace(/(\([0-9]+\))/g, "");
+ $(".new").remove();
+ });
+ setUpdateInterval();
+});
+var setUpdateInterval = function () {
+ if (!location.href.split("?")[1] || location.href.split("?")[1] == "p=1") {
+ var interval = parseFloat($.cookie(INTERVAL_COOKIE));
+ if (interval === 0.0) {
+ return false;
+ }
+ interval = interval > 0 ? interval : 1;
+ UPDATE_INTERVAL = setInterval(function () {
+ update();
+ }, interval * 1000 * 60);
+ }
+};
+function update() {
+ if (PAUSE_UPDATE === true) {
+ window.setTimeout(update, 5000);
+ } else if (PAUSE_TIMELINE === true) {
+ return 0;
+ } else {
+ PAUSE_TIMELINE = true;
+ updateSentTip('Retrieving new tweets...', 5000, 'ing');
+ if ($.cookie("intervalChanged") === "true") {
+ clearInterval(UPDATE_INTERVAL);
+ $.cookie("intervalChanged", "")
+ setUpdateInterval();
+ }
+ $("ol.timeline li.mine").removeClass("mine").addClass("myTweet");
+ var since_id = $("ol.timeline li:not(.myTweet):not(#ajax_statuses li):first").find(".status_id").text();
+ $.ajax({
+ url: "ajax/updateTimeline.php",
+ type: "GET",
+ dataType: "text",
+ data: "since_id=" + since_id,
+ success: function (msg) {
+ if ($.trim(msg).indexOf("</li>") > 0) {
+ var source = $(msg).prependTo($(".timeline"));
+ var num = 0;
+ if (document.title.match(/\d+/) != null) {
+ num = parseInt(document.title.match(/\d+/));
+ }
+ document.title = "(" + (num + $(msg).length - 1) + ") " + document.title.replace(/(\([0-9]+\))/g, "");
+ markReply($('#allTimeline > li'));
+ filterEle();
+ embrTweet(source);
+ if($("div.new").length == 1) {
+ $("div.new").show().slideDown("fast");
+ } else {
+ $("div.new").filter(":first").remove();
+ $("span.tweetcount").filter(":last").text(num + $(msg).length - 1);
+ }
+ $("span.big-retweet-icon").tipsy({
+ gravity: 's'
+ });
+ previewMedia(source);
+ } else {
+ updateSentTip('No new tweets', 3000, 'failure');
+ }
+ PAUSE_TIMELINE = false;
+ },
+ error: function (msg) {
+ PAUSE_TIMELINE = false;
+ }
+ });
+ }
+}