1/* $Id: advancedactivity-twitter.js 2012-26-01 00:00:00Z SocialEngineAddOns Copyright 2011-2012 BigStep 2 Technologies Pvt. Ltd. $ */ 3//JAVA SCRIPT FOR USER FACEBOOK FRIENDS SHOWING ADDING TO LIST. 4//COPIED FROM USER MODULE/WIDGET/PROFILE-FRINED/INDEX.TPL 5var userfeed_limit = 5; 6var firstfeedid_Tweet, feed_viewmore_tweet, feed_no_more_tweet, feed_loading_tweet, feed_view_more_tweet_link, activityUpdateHandler_Tweet, feedUpdate_tweet, activityFeed_tweet, update_freq_tweet; 7var tweet_loginURL = ''; 8var tweet_loginURL_temp = ''; 9var action_logout_taken_tweet = 0; 10var Tweet_lenght = 0; 11 12 13//THIS FUNCTION SHOWS USER'S RECENT FACEBOOK FEEDS. 14 15function rhtmlspecialchars(str) { 16 if (typeof (str) == "string") { 17 str = str.replace(/>/ig, ">"); 18 str = str.replace(/</ig, "<"); 19 str = str.replace(/'/g, "'"); 20 str = str.replace(/"/ig, '"'); 21 str = str.replace(/&/ig, '&'); /* must do & last */ 22 } 23 return str; 24} 25 26function bindKeyUpEventForTweetPost() { 27 if (typeof window.composeInstanceTweeter != 'undefined') { 28 var body = window.composeInstanceTweeter.elements.body; 29 body.addEvent('keyup', function () { 30 //body.set('value', composeInstance.getContent()); 31 $('aaf-twitter_show_loading_main').style.display = 'block'; 32 body.value = rhtmlspecialchars(body.value); 33 var tweetlength_temp = body.value.length; 34 if (tweetlength_temp > 140) { 35 $('aaf-twitter_show_loading_main').innerHTML = parseInt(140) - tweetlength_temp; 36 $('aaf-twitter_show_loading_main').setStyle('color', 'red'); 37 Tweet_lenght = 1; 38 var html = body.value.substring(0, 140)+'<em style="background:#ffb8c2">'+body.value.substring(140)+'</em>'; 39 window.composeInstanceTweeter.highlighterBody.set('html', html); 40 } else { 41 Tweet_lenght = 0; 42 $('aaf-twitter_show_loading_main').innerHTML = parseInt(140) - tweetlength_temp; 43 $('aaf-twitter_show_loading_main').setStyle('color', ''); 44 } 45 }); 46 } 47} 48 49function setKeyUpEvent_Tweet() { 50 51} 52 53function getCommonTweetElements() { 54 if ($('feed_viewmore_tweet')) { 55 feed_viewmore_tweet = $('feed_viewmore_tweet'); 56 feed_loading_tweet = $('feed_loading_tweet'); 57 feed_no_more_tweet = $('feed_no_more_tweet'); 58 feed_view_more_tweet_link = $('feed_viewmore_tweet_link'); 59 feedUpdate_tweet = $('feed-update-tweet'); 60 activityFeed_tweet = $('Tweet_activity-feed'); 61 } 62} 63 64var Call_TweetcheckUpdate = function (last_id) { 65 66 //en4.core.runonce.add(function() { 67 try { 68 activityUpdateHandler_Tweet = new AdvancedActivityUpdateHandler_Tweet({ 69 'baseUrl': en4.core.baseUrl, 70 'basePath': en4.core.basePath, 71 'identity': 4, 72 'delay': update_freq_tweet, 73 'last_id': last_id, 74 'feedContentURL': en4.core.baseUrl + 'widget/index/mod/advancedactivity/name/advancedactivitytwitter-userfeed' 75 76 }); 77 78 setTimeout("activityUpdateHandler_Tweet.start('twitter')", update_freq_tweet); 79 //activityUpdateHandler.start(); 80 window._activityUpdateHandler_Tweet = activityUpdateHandler_Tweet; 81 82 } catch (e) { 83 //if( $type(console) ) console.log(e); 84 } 85 // }); 86 87} 88 89//THIS FUNCTION EXECUTE WHEN USER WRITE STH IN USER STATUS BOX. 90 91//FUNCTION NOT BEING CALLED FROM ANY PLUGIN OR MODULE 92//function AAF_TweetsetStatus() { 93// status1 = document.getElementById('aaf_set_Tweetstatus').value; 94// if (status1 == '') { 95// return ; 96// } 97// 98// $('show_loading_main').innerHTML = '<div class="seaocore_view_more"><img src="application/modules/Seaocore/externals/images/core/loading.gif" /></div>'; 99// userfeed_url = en4.core.baseUrl + 'widget/index/mod/advancedactivity/name/advancedactivitytwitter-userfeed'; 100// var request = new Request.JSON({ 101// 'url' : userfeed_url, 102// //'method':'get', 103// 'data' : { 104// //'format' : 'json', 105// 'status' : status1, 106// 'is_ajax' : '4' 107// 108// }, 109// onSuccess : function(responseJSON) { 110// if (!responseJSON){ 111// en4.core.showError('<div class="aaf_show_popup"><p>Your Twitter status could not be updated. Please try again.' + '</p><button onclick="Smoothbox.close()">Close</button></div>'); 112// 113// } 114// else { 115// activityUpdateHandler_Tweet_temp = new AdvancedActivityUpdateHandler_Tweet({}); 116// setTimeout("activityUpdateHandler_Tweet_temp.getFeedUpdate(firstfeedid_Tweet)", 3000); 117// 118// document.getElementById('aaf_set_Tweetstatus').set('class', 'sink_textarea'); 119// $('show_loading_main').innerHTML = 140; 120// document.getElementById('aaf_set_Tweetstatus').value = ''; 121// document.getElementById('aaf_set_Tweetstatus').focus(); 122// 123// } 124// } 125// });
126// request.send(); 127// 128//} 129 130 131//THIS FUNCTIONS SHOWS ALL FACEBOOK NONSITE FRINEDS. 132var limit = 5; 133var start = 0; 134var next = 0; 135 136 137function showText_More(type_text, id) { 138 if (type_text == '1') { 139 var full_text = $('fbmessage_text_full_' + id).innerHTML; 140 $('fbmessage_text_short_' + id).innerHTML = full_text; 141 } else if (type_text == '2') { 142 var full_text = $('fbdescript_text_full_' + id).innerHTML; 143 $('fbdescript_text_short_' + id).innerHTML = full_text; 144 } 145 146} 147 148//MAKING A TEXTAREA FOR REPLYING TO A TWEET............... 149var prev_tweetstatus_id = 0; 150var prev_tweetstatus_screenname = 0; 151 152var reply_Tweet = function (tweetstatus_id, screen_name) { 153 if (typeof is_enter_submitothersocial != 'undefined' && is_enter_submitothersocial == 1) { 154 $('activity-comment-body-twitter-submit').setStyle('display', 'none'); 155 } 156 if (prev_tweetstatus_id != 0 && prev_tweetstatus_id != tweetstatus_id) { 157 var Container = $('reply_' + prev_tweetstatus_id); 158 if (Container != null) { 159 var catarea = Container.parentNode; 160 catarea.removeChild(Container); 161 } 162 163 } 164 var newdiv = document.createElement('div'); 165 if ($('reply_' + tweetstatus_id) == null) { 166 prev_tweetstatus_id = tweetstatus_id; 167 prev_tweetstatus_screenname = screen_name; 168 169 var referenceNode = $('reply_retweet_' + tweetstatus_id); 170 var parent = referenceNode.parentNode; 171 newdiv = document.createElement('div'); 172 newdiv.id = 'reply_' + tweetstatus_id; 173 newdiv.set('class', 'comments aaf_tweet_reply_box'); 174 newdiv.innerHTML = $('reply_textarea').innerHTML; 175 parent.insertBefore(newdiv, referenceNode.nextSibling); 176 177 $(newdiv.id).getElement('.activity-comment-body-twitter').focus(); 178 $(newdiv.id).getElement('.activity-comment-body-twitter').value = '@' + screen_name + ' '; 179 $(newdiv.id).getElement('.reply_headingid').innerHTML = 'Reply to @' + screen_name; 180 $(newdiv.id).getElement('.show_loading').innerHTML = 140 - $(newdiv.id).getElement('.activity-comment-body-twitter').value.length; 181 $(newdiv.id).getElement('.activity-comment-body-twitter').autogrow(); 182 183 } else { 184 if ($('reply_' + tweetstatus_id).getElement('.activity-comment-body-twitter').value == '') { 185 $('reply_' + tweetstatus_id).getElement('.activity-comment-body-twitter').value = '@' + screen_name + ' '; 186 } 187 } 188 189 var thisobj = $('activity-comment-body-twitter'); 190 if (typeof is_enter_submitothersocial != 'undefined' && is_enter_submitothersocial == 1) { 191 thisobj.addEvent((Browser.Engine.trident || Browser.Engine.webkit) ? 'keydown' : 'keypress', function (event) { 192 if (event.shift && event.key == 'enter') { 193 } else if (event.key == 'enter') { 194 event.stop(); 195 post_status(); 196 } 197 }); 198 // add blur event 199 } 200} 201 202 203var post_status = function () { 204 205 $('reply_' + prev_tweetstatus_id).getElement('.show_loading').innerHTML = '<div><img src="application/modules/Seaocore/externals/images/core/loading.gif" /></div>'; 206 var request = new Request.JSON({ 207 'url': en4.core.baseUrl + 'widget/index/mod/advancedactivity/name/advancedactivitytwitter-userfeed', 208 //'method':'get', 209 'data': { 210 //'format' : 'json', 211 'is_ajax': '2', 212 'post_status': $('reply_' + prev_tweetstatus_id).getElement('.activity-comment-body-twitter').value, 213 'tweetstatus_id': prev_tweetstatus_id 214 215 }, 216 onSuccess: function (responseJSON) { 217 if (responseJSON != null && responseJSON.Twitter_statusreply == 1) { 218 $('reply_' + prev_tweetstatus_id).set('class', 'comments aaf_tweet_reply_box'); 219 $('reply_' + prev_tweetstatus_id).innerHTML = '<ul><li><div class="comments_likes"><b class="aaf_icon_success"><img src="./application/modules/Seaocore/externals/images/core/notice.png" class="aaf_icon" alt="Success" />' + en4.core.language.translate('Shared on Twitter as reply to') + ' @' + prev_tweetstatus_screenname + '</b></div></li><li><div class="comments_author_photo">' + $('User_Photo').innerHTML + '</div><div class="comments_info"><span class="comments_author"><a href="https://twitter.com/' + prev_tweetstatus_screenname + '" target="_blank">' + prev_tweetstatus_screenname + '</a></span>' + ' ' + $('reply_' + prev_tweetstatus_id).getElement('.activity-comment-body-twitter').value + '</div></li></ul>'; 220 221 setTimeout("fade_Twitter('reply_' + prev_tweetstatus_id, 2)", 5000); 222 activityUpdateHandler_Tweet_temp = new AdvancedActivityUpdateHandler_Tweet({}); 223 setTimeout("activityUpdateHandler_Tweet_temp.getFeedUpdate(firstfeedid_Tweet)", 4000); 224 } else { 225 $('show_loading').innerHTML = 140 - $('activity-comment-body-twitter').value.length; 226 Smoothbox.open('<div>' + en4.core.language.translate('We were unable to process your request. Wait a few moments and try again.') + '<button name="close" onclick="javascript:Smoothbox.close();"</button></div>') 227 } 228 229 } 230 }); 231 request.send(); 232} 233 234 235// =============================================== Start - Fading Effe
235cts ================================================ 236 237var TimeToFade_aaf = 300.0; 238 239function fade_Twitter(eid, modFlag) 240{ 241 var element = document.getElementById(eid); 242 if (element == null) 243 return; 244 245 element.FadeState = modFlag; 246 if (element.FadeState == null) 247 { 248 if (element.style.opacity == null 249 || element.style.opacity == '' 250 || element.style.opacity == '1') 251 { 252 element.FadeState = 2; 253 } else 254 { 255 element.FadeState = -2; 256 } 257 } 258 259 if (element.FadeState == 1 || element.FadeState == -1) 260 { 261 element.FadeState = element.FadeState == 1 ? -1 : 1; 262 element.FadeTimeLeft = TimeToFade_aaf - element.FadeTimeLeft; 263 var catarea = $(eid).parentNode; 264 catarea.removeChild($(eid)); 265 } else 266 { 267 element.FadeState = element.FadeState == 2 ? -1 : 1; 268 element.FadeTimeLeft = TimeToFade_aaf; 269 setTimeout("animateFade_Twitter(" + new Date().getTime() + ",'" + eid + "')", 33); 270 } 271 272} 273 274 275 276 277 278function animateFade_Twitter(lastTick, eid) 279{ 280 var curTick = new Date().getTime(); 281 var elapsedTicks = curTick - lastTick; 282 283 var element = document.getElementById(eid); 284 285 if (element.FadeTimeLeft <= elapsedTicks) 286 { 287 element.style.opacity = element.FadeState == 1 ? '1' : '0'; 288 element.style.filter = 'alpha(opacity = ' 289 + (element.FadeState == 1 ? '100' : '0') + ')'; 290 element.FadeState = element.FadeState == 1 ? 2 : -2; 291 var catarea = $(eid).parentNode; 292 catarea.removeChild($(eid)); 293 return; 294 } 295 296 element.FadeTimeLeft -= elapsedTicks; 297 var newOpVal = element.FadeTimeLeft / TimeToFade_aaf; 298 if (element.FadeState == 1) 299 newOpVal = 1 - newOpVal; 300 301 element.style.opacity = newOpVal; 302 element.style.filter = 'alpha(opacity = ' + (newOpVal * 100) + ')'; 303 304 setTimeout("animateFade_Twitter(" + curTick + ",'" + eid + "')", 33); 305} 306 307// =============================================== End - Fading Effects ================================================ 308 309 310//PUTTING THE LIMIT ON THE TEXT AREA CONTENT TO BE ONLY 140 CHARACTER: 311 312function limitText(limitField, limitNum) { 313 limitField = $('reply_' + prev_tweetstatus_id).getElement('.activity-comment-body-twitter'); 314 if (limitField.value.length > limitNum) { 315 limitField.value = limitField.value.substring(0, limitNum); 316 } else { 317 $('reply_' + prev_tweetstatus_id).getElement('.show_loading').innerHTML = limitNum - limitField.value.length; 318 } 319} 320 321 322//RETWEET A TWEET : 323 324var reTweet = function (tweetstatus_id) { 325 326 $('retweet_tweet_' + tweetstatus_id).innerHTML = en4.core.language.translate('Updating...'); 327 var request = new Request.JSON({ 328 'url': en4.core.baseUrl + 'widget/index/mod/advancedactivity/name/advancedactivitytwitter-userfeed', 329 //'method':'get', 330 'data': { 331 //'format' : 'json', 332 'is_ajax': '3', 333 'tweetstatus_id': tweetstatus_id 334 335 }, 336 onSuccess: function (responseJSON) { 337 $('retweet_tweet_' + tweetstatus_id).innerHTML = '<span class="aaf_tweet_icon_retweeted aaf_tweet_icon">Retweeted</span>'; 338 } 339 }); 340 request.send(); 341} 342 343//SHOW MORE TWITTER FEED ON SCROLLING..... 344var last_oldtweet_id = 0; 345var twitter_ActivityViewMore = function (since_id) { 346 347 348 if (activity_type == 2) { 349 feed_view_more_tweet_link.removeEvents('click').addEvent('click', function (event) { 350 event.stop(); 351 twitter_ActivityViewMore(lastOldTweet); 352 }); 353 } 354 if (en4.core.request.isRequestActive()) 355 return; 356 if (activity_type != 2) { 357 return; 358 } 359 //lastOldTweet = 0; 360 361 feed_viewmore_tweet.style.display = 'none'; 362 feed_loading_tweet.style.display = 'block'; 363 en4.core.request.send(new Request.HTML({ 364 'url': en4.core.baseUrl + 'widget/index/mod/advancedactivity/name/advancedactivitytwitter-userfeed', 365 //'method':'get', 366 'data': { 367 'format': 'html', 368 'is_ajax': '1', 369 'max_id': since_id, 370 'since_id': firstfeedid_Tweet, 371 'task': 'activity_more' 372 373 }, 374 onSuccess: function (responseTree, responseElements, responseHTML, responseJavaScript) { 375 if (activity_type == 2) { 376 countScrollAAFTweet++; 377 en4.core.runonce.trigger(); 378 //feed_loading_tweet.style.display = 'none'; 379 //feed_viewmore_tweet.style.display = 'block'; 380// var newdiv = document.createElement('div'); 381// newdiv.id = 'tweeterfeed_' + since_id; 382 //newdiv.innerHTML = responseHTML; 383 if (activityFeed_tweet) { 384 Elements.from(responseHTML).inject(activityFeed_tweet); 385 } else if ($('Tweet_activity-feed')) { 386 Elements.from(responseHTML).inject($('Tweet_activity-feed')); 387 } 388 389 } 390 391 } 392 })); 393 394} 395 396 397var Tweet_doOnScrollLoadActivity = function () { 398 if (typeof (feed_viewmore_tweet.offsetParent) != 'undefined') { 399 var elementPostionY = feed_viewmore_tweet.offsetTop; 400 } else { 401 var elementPostionY = feed_viewmore_tweet.y; 402 } 403 if ((maxAutoScrollAAF == 0 || countScrollAAFTweet < maxAutoScrollAAF) && autoScrollFeedAAFEnable && elementPostionY <= window.getScrollTop() + (window.getSize().y - 40)) { 404 twitter_ActivityViewMore(lastOldTweet); 405 406 } else { 407 if (feed_viewmore_tweet) { 408 feed_viewmore_tweet.style.display = ''; 409 feed_loading_tweet.style.display = 'none'; 410 411 feed_view_more_tweet_link.removeEvents('click').addEvent('click', function (event) { 412 event.stop(); 413 twitter_ActivityViewMore(lastOldTweet); 414 }); 415 } 416 if (!autoScrollFeedAAFEnable) { 417 window.onscroll = ""; 418 } 419 } 420 421} 422 423var favorite_Tweet = function (tweet_id, action) { 424 if (en4.core.request.isRequestActive()) 425 return; 426 $('favorite_tweet_' + tweet_id).innerHTML = en4.core.language.translate('Updating...'); 427 en4.core.request.send(new Request.JSON({ 428 'url': en4.core.baseUrl + 'widget/index/mod/advancedactivity/name/advancedactivitytwitter-userfeed', 429 //'method':'get', 430 'data': { 431 //'format' : 'json', 432 'is_ajax': '5', 433 'tweetstatus_id': tweet_id, 434 'favorite_action': action 435 436 }, 437 onSuccess: function (responseJSON) { 438 if ($type(responseJSON)) { 439 if (action == 1) { 440 $('favorite_tweet_' + tweet_id).innerHTML = '<a href="javascript:void(0);" onclick="favorite_Tweet(\'' + tweet_id + '\', 0)" title="Unfavorite" class="aaf_tweet_icon aaf_tweet_icon_unfav">' + en4.core.language.translate('Unfavorite') + '</a>'; 441 } else { 442 $('favorite_tweet_' + tweet_id).innerHTML = '<a href="javascript:void(0);
442" onclick="favorite_Tweet(\'' + tweet_id + '\', 1)" title="Favorite" class="aaf_tweet_icon aaf_tweet_icon_fav">' + en4.core.language.translate('Favorite') + '</a>'; 443 } 444 } 445 } 446 })); 447} 448 449 450 451var parent_tweet_id; 452var confirm_deletecommenttweet = function (post_id) { 453 parent_tweet_id = post_id; 454 455 Smoothbox.open('<div class="aaf_show_popup"><h3>Delete Tweet?</h3><p>' + en4.core.language.translate('Are you sure that you want to delete this tweet? This action cannot be undone.') + '</p><button type="submit" onclick="javascript:parent.delete_MyTweet();return false;">' + en4.core.language.translate('Delete') + '</button> or <a href="javascript:void(0);" onclick="parent.Smoothbox.close();">' + en4.core.language.translate('cancel') + '</a></div>'); 456 457 458} 459 460 461var delete_MyTweet = function () { 462 463 userfeed_url = en4.core.baseUrl + 'widget/index/mod/advancedactivity/name/advancedactivitytwitter-userfeed'; 464 var request = new Request.JSON({ 465 'url': userfeed_url, 466 //'method':'get', 467 'data': { 468 //'format' : 'json', 469 'is_ajax': '6', 470 'tweetstatus_id': parent_tweet_id 471 472 }, 473 474 onSuccess: function (responseJSON) { 475 476 477 478 if (responseJSON) { 479 setTimeout("fade_Twitter('post_delete_tweet_' + parent_tweet_id, 2)", 500); 480 parent.Smoothbox.close(); 481 } else { 482 en4.core.showError('<div class="aaf_show_popup"><p>' + en4.core.language.translate("An error has occurred processing the request. The target may no longer exist.") + '</p><button onclick="Smoothbox.close()">' + en4.core.language.translate("Close") + '</button></div>'); 483 return; 484 } 485 486 } 487 }); 488 request.send(); 489} 490 491var AAF_ShowFeedDialogue_Tweet = function (feedurl) { 492 aaf_feed_type_tmp = 2; 493 if (tweet_loginURL_temp == '') { 494 tweet_loginURL_temp = feedurl; 495 } 496 activityfeedtype = 'twitter'; 497 if (typeof current_window_url != 'undefined' && current_window_url != '') { 498 tweet_loginURL_temp = en4.core.baseUrl + 'seaocore/auth/twitter?return_url=' + current_window_url; 499 } 500 if (history.pushState) 501 history.pushState({}, document.title, current_window_url + "?activityfeedtype=" + activityfeedtype); 502 var child_window = window.open(tweet_loginURL_temp, 'mywindow', 'width=800,height=700'); 503 504} 505 506var checkTwitter = function () { 507 if (tweet_loginURL != '') { 508 if ($type($('compose-twitter-form-input'))) { 509 $('compose-twitter-form-input').disabled = 'disabled'; 510 $('composer_twitter_toggle').addEvent('click', function (event) { 511 if (tweet_loginURL != '') { 512 $('compose-twitter-form-input').checked = false; 513 //event.target.toggleClass('composer_twitter_toggle_active'); 514 var child_window = window.open(tweet_loginURL, 'mywindow', 'width=800,height=700'); 515 event.stop(); 516 } 517 }); 518 } 519 520 } else { 521 if ($type($('compose-twitter-form-input'))) { 522 $('compose-twitter-form-input').disabled = ''; 523 } 524 } 525 526} 527 528var logout_aaftwitter = function () { 529alert("12334346346"); 530 var request = new Request.JSON({ 531 'url': en4.core.baseUrl + 'seaocore/auth/logout/', 532 'method': 'get', 533 'data': { 534 'format': 'json', 535 'is_ajax': '1', 536 'logout_service': 'twitter' 537 538 539 }, 540 541 onSuccess: function (responseJSON) { 542 action_logout_taken_tweet = 1; 543 tweet_loginURL = tweet_loginURL_temp; 544 if ($('compose-twitter-form-input')) { 545 $('compose-twitter-form-input').set('checked', !$('compose-twitter-form-input').get('checked')); 546 547 } 548 $('aaf_main_tab_logout').style.display = 'none'; 549 $('aaf_main_tab_refresh').style.display = 'none'; 550 if ($('activity-post-container')) 551 $('activity-post-container').style.display = 'none'; 552 $('aaf_main_contener_feed_2').innerHTML = '<div class="aaf_feed_tip"><span>' + en4.core.language.translate('You need to be logged into Twitter to see your Twitter tweets.') + ' <a href="javascript:void(0);" onclick= "AAF_ShowFeedDialogue_Tweet()" >' + en4.core.language.translate('Click here') + '</a>.</span></div>'; 553 554 } 555 }); 556 request.send(); 557} 558 559 560var AdvancedActivityUpdateHandler_Tweet = new Class({ 561 562 Implements: [Events, Options], 563 options: { 564 debug: false, 565 baseUrl: '/', 566 identity: false, 567 delay: 5000, 568 admin: false, 569 idleTimeout: 600000, 570 last_id: 0, 571 subject_guid: null, 572 showloading: true, 573 574 feedContentURL: en4.core.baseUrl + 'widget/index/mod/advancedactivity/name/advancedactivitytwitter-userfeed' 575 }, 576 577 state: true, 578 579 activestate: 1, 580 581 fresh: true, 582 583 lastEventTime: false, 584 585 title: document.title, 586 587 initialize: function (options) { 588 this.setOptions(options); 589 }, 590 591 start: function () { 592 this.state = true; 593 594 // Do idle checking 595 this.idleWatcher = new IdleWatcher(this, {timeout: this.options.idleTimeout}); 596 this.idleWatcher.register(); 597 this.addEvents({ 598 'onStateActive': function () { 599 this.activestate = 1; 600 this.state = true; 601 }.bind(this), 602 'onStateIdle': function () { 603 this.activestate = 0; 604 this.state = false; 605 }.bind(this) 606 });
607 this.loop(); 608 }, 609 610 stop: function () { 611 this.state = false; 612 }, 613 614 checkFeedUpdate_Twitter: function (action_id, subject_guid) { 615 616 var a = this.options.last_id; 617 if (action_logout_taken_tweet == 1) 618 return; 619 if (en4.core.request.isRequestActive()) 620 return; 621 en4.core.request.send(new Request.HTML({ 622 url: en4.core.baseUrl + 'widget/index/mod/advancedactivity/name/advancedactivitytwitter-userfeed', 623 data: { 624 'format': 'html', 625 'minid': firstfeedid_Tweet, 626 'feedOnly': true, 627 'nolayout': true, 628 'subject': this.options.subject_guid, 629 'checkUpdate': true 630 }, 631 onSuccess: function (responseTree, responseElements, responseHTML, responseJavaScript) { 632 if (activity_type == 2) { 633 feedUpdate_tweet.innerHTML = responseHTML; 634 feedUpdate_tweet.style.display = 'block'; 635 } 636 } 637 })); 638 }, 639 640// THIS IS CALLED WHENEVER NEW FEED IS REQUESTED 641 getFeedUpdate: function (last_id) { 642 //if( en4.core.request.isRequestActive() ) return; 643 if ($('update_advfeed_tweetblink')) 644 $('update_advfeed_tweetblink').style.display = 'none'; 645 //if (this.options.showloading) { 646 feedUpdate_tweet.style.display = 'block'; 647 feedUpdate_tweet.innerHTML = "<div class='aaf_feed_loading'><img src='application/modules/Seaocore/externals/images/core/loading.gif' alt='Loading' /></div>"; 648 // } 649 activityUpdateHandler_Tweet.options.showloading = true; 650 var min_id = firstfeedid_Tweet; 651 this.options.last_id = last_id; 652 //document.title = this.title; 653 var feednomore_tweet = 0; 654 if (feed_no_more_tweet.style.display == 'none') { 655 feednomore_tweet = 1; 656 } 657 658 en4.core.request.send(new Request.HTML({ 659 url: en4.core.baseUrl + 'widget/index/mod/advancedactivity/name/advancedactivitytwitter-userfeed', 660 data: { 661 'format': 'html', 662 'minid': min_id, 663 'feedOnly': true, 664 'nolayout': true, 665 'getUpdate': true 666 667 668 }, 669 onSuccess: function (responseTree, responseElements, responseHTML, responseJavaScript) { 670 671 if (activity_type == 2) { 672 if ($('update_advfeed_tweetblink')) 673 $('update_advfeed_tweetblink').style.display = 'none'; 674 675 var newUl = document.createElement('ul', { 676 'class': 'feed' 677 }); 678 Elements.from(responseHTML).reverse().inject(newUl, 'top'); 679 newUl.inject(activityFeed_tweet, 'top'); 680 var feedSlide = new Fx.Slide(newUl, { 681 resetHeight: true 682 }).hide(); 683 feedSlide.slideIn(); 684 (function () { 685 feedSlide.wrapper.destroy(); 686 Elements.from(responseHTML).inject(activityFeed_tweet, 'top'); 687 }).delay(450); 688 feedUpdate_tweet.innerHTML = ''; 689 feedUpdate_tweet.style.display = 'none'; 690 if (feednomore_tweet == 1) { 691 feed_no_more_tweet.style.display = 'none'; 692 } 693 694 } 695 } 696 })); 697 }, 698 699 loop: function () { 700 if (this.options.delay == 0) 701 return; 702 if (!this.state) { 703 this.loop.delay(this.options.delay, this); 704 return; 705 } 706 707 try { 708 this.checkFeedUpdate_Twitter().addEvent('complete', function () { 709 this.loop.delay(this.options.delay, this); 710 }.bind(this)); 711 } catch (e) { 712 this.loop.delay(this.options.delay, this); 713 this._log(e); 714 } 715 }, 716 // Utility 717 718 _log: function (object) { 719 if (!this.options.debug) { 720 return; 721 } 722 723 // Firefox is dumb and causes problems sometimes with console 724 try { 725 //if( typeof(console) && $type(console) ) { 726 //console.log(object); 727 //} 728 } catch (e) { 729 // Silence 730 } 731 } 732}); 733
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.