From: Dan Boger <zigdon@irc.peeron.com>
Date: Thu, 22 Oct 2009 16:37:02 +0000 (-0700)
Subject: Update friend requests on Twitter (only) to support cursors instead of pages
X-Git-Url: https://git.sommitrealweird.co.uk/twirssi-net-twitter-lite.git/commitdiff_plain/d00e30d4f728a74fd014a29f270e9225b7822e31?ds=sidebyside

Update friend requests on Twitter (only) to support cursors instead of pages
---

diff --git a/twirssi.pl b/twirssi.pl
index 15b6478..0abb396 100644
--- a/twirssi.pl
+++ b/twirssi.pl
@@ -792,18 +792,26 @@ sub cmd_upgrade {
 
 sub load_friends {
     my $fh   = shift;
+    my $cursor = -1;
     my $page = 1;
     my %new_friends;
     eval {
-        while (1)
+        while ($page < 11 and $cursor ne "0")
         {
             print $fh "type:debug Loading friends page $page...\n"
               if ( $fh and &debug );
-            my $friends = $twit->friends( { page => $page } );
-            last unless $friends;
+            my $friends;
+            if (ref $twit =~ /^Net::Twitter/) {
+                $friends = $twit->friends( { cursor => $cursor } );
+                last unless $friends;
+                $cursor = $friends->{next_cursor};
+                $friends = $friends->{users};
+            } else {
+                $friends = $twit->friends( { page => $page } );
+                last unless $friends;
+            }
             $new_friends{ $_->{screen_name} } = time foreach @$friends;
             $page++;
-            last if @$friends == 0 or $page == 10;
         }
     };