Hello and welcome to our community! Is this your first visit?
Register
Enjoy an ad free experience by logging in. Not a member yet? Register.
Results 1 to 2 of 2
  1. #1
    New to the CF scene
    Join Date
    May 2013
    Posts
    2
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Js scroll tweets

    Hi as you may guess i am not great with js so could do with some help to show each tweet one at a time scrolling the script below gets 3 tweets and displays them all at the same time

    can anyone help me with this please sorry i am a bit of a dummy when it comes to js





    Code:
    $(document).ready(function () {
     
        var displaylimit = 3;
        var twitterprofile = "ourtwittername;
        var screenname = "screenname";
        var showdirecttweets = false;
        var showretweets = true;
        var showtweetlinks = true;
        var showprofilepic = true;
     
        var headerHTML = '';
        var loadingHTML = '';
        headerHTML += '<a href="https://twitter.com/" ><img src="images/twitter-bird-light.png" width="34" style="float:left;padding:3px 12px 0px 6px" alt="twitter bird" /></a>';
        headerHTML += '<h1>'+screenname+' <span style="font-size:13px"><a href="https://twitter.com/'+twitterprofile+'" >@'+twitterprofile+'</a></span></h1>';
        loadingHTML += '<div id="loading-container"><img src="images/ajax-loader.gif" width="32" height="32" alt="tweet loader" /></div>';
     
        $('#twitter-feed').html(headerHTML + loadingHTML);
     
        $.getJSON('ourtwittername-tweets.txt?'+Math.random(),
            function(feeds) {
                //alert(feeds);
                var feedHTML = '';
                var displayCounter = 1;
                for (var i=0; i<feeds.length; i++) {
                    var tweetscreenname = feeds[i].user.name;
                    var tweetusername = feeds[i].user.screen_name;
                    var profileimage = feeds[i].user.profile_image_url_https;
                    var status = feeds[i].text;
                    var isaretweet = false;
                    var isdirect = false;
                    var tweetid = feeds[i].id_str;
     
                    //If the tweet has been retweeted, get the profile pic of the tweeter
                    if(typeof feeds[i].retweeted_status != 'undefined'){
                       profileimage = feeds[i].retweeted_status.user.profile_image_url_https;
                       tweetscreenname = feeds[i].retweeted_status.user.name;
                       tweetusername = feeds[i].retweeted_status.user.screen_name;
                       tweetid = feeds[i].retweeted_status.id_str
                       isaretweet = true;
                     };
     
                     //Check to see if the tweet is a direct message
                     if (feeds[i].text.substr(0,1) == "@") {
                         isdirect = true;
                     }
     
                    //console.log(feeds[i]);
     
                     if (((showretweets == true) || ((isaretweet == false) && (showretweets == false))) && ((showdirecttweets == true) || ((showdirecttweets == false) && (isdirect == false)))) {
                        if ((feeds[i].text.length > 1) && (displayCounter <= displaylimit)) {
                            if (showtweetlinks == true) {
                                status = addlinks(status);
                            }
     
                            if (displayCounter == 1) {
                                feedHTML += headerHTML;
                            }
     
                            feedHTML += '<div class="twitter-article">';
                            feedHTML += '<div class="twitter-pic"><a href="https://twitter.com/'+tweetusername+'" ><img src="'+profileimage+'"images/twitter-feed-icon.png" width="42" height="42" alt="twitter icon" /></a></div>';
                            feedHTML += '<div class="twitter-text"><p><span class="tweetprofilelink"><strong><a href="https://twitter.com/'+tweetusername+'" >'+tweetscreenname+'</a></strong> <a href="https://twitter.com/'+tweetusername+'" >@'+tweetusername+'</a></span><span class="tweet-time"><a href="https://twitter.com/'+tweetusername+'/status/'+tweetid+'">'+relative_time(feeds[i].created_at)+'</a></span><br/>'+status+'</p></div>';
                            feedHTML += '</div>';
                            displayCounter++;
                        }
                     }
                }
     
                $('#twitter-feed').html(feedHTML);
        });
     
        //Function modified from Stack Overflow
        function addlinks(data) {
            //Add link to all http:// links within tweets
            data = data.replace(/((https?|s?ftp|ssh)\:\/\/[^"\s\<\>]*[^.,;'">\:\s\<\>\)\]\!])/g, function(url) {
                return '<a href="'+url+'" >'+url+'</a>';
            });
     
            //Add link to @usernames used within tweets
            data = data.replace(/\B@([_a-z0-9]+)/ig, function(reply) {
                return '<a href="http://twitter.com/'+reply.substring(1)+'" style="font-weight:lighter;" >'+reply.charAt(0)+reply.substring(1)+'</a>';
            });
            return data;
        }
     
        function relative_time(time_value) {
          var values = time_value.split(" ");
          time_value = values[1] + " " + values[2] + ", " + values[5] + " " + values[3];
          var parsed_date = Date.parse(time_value);
          var relative_to = (arguments.length > 1) ? arguments[1] : new Date();
          var delta = parseInt((relative_to.getTime() - parsed_date) / 1000);
          var shortdate = time_value.substr(4,2) + " " + time_value.substr(0,3);
          delta = delta + (relative_to.getTimezoneOffset() * 60);
     
          if (delta < 60) {
            return '1m';
          } else if(delta < 120) {
            return '1m';
          } else if(delta < (60*60)) {
            return (parseInt(delta / 60)).toString() + 'm';
          } else if(delta < (120*60)) {
            return '1h';
          } else if(delta < (24*60*60)) {
            return (parseInt(delta / 3600)).toString() + 'h';
          } else if(delta < (48*60*60)) {
            //return '1 day';
            return shortdate;
          } else {
            return shortdate;
          }
        }
     
    });

  • #2
    New to the CF scene
    Join Date
    May 2013
    Posts
    2
    Thanks
    0
    Thanked 0 Times in 0 Posts
    First off sorry looks like i posted this in the wrong place

    solved i went about in another way in the end


  •  

    Posting Permissions

    • You may not post new threads
    • You may not post replies
    • You may not post attachments
    • You may not edit your posts
    •