? test.patch
Index: flickr.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/flickr/Attic/flickr.inc,v
retrieving revision 1.25.2.4
diff -u -r1.25.2.4 flickr.inc
--- flickr.inc	12 Jun 2007 23:48:03 -0000	1.25.2.4
+++ flickr.inc	9 Jul 2007 00:53:52 -0000
@@ -336,6 +336,33 @@
 }
 
 /**
+ * @param $photoset_id
+ *   id of the photoset to get photos from
+ *
+ * @return
+ *   response from the flickr method flickr.photosets.getPhotos
+ *   (http://www.flickr.com/services/api/flickr.photos.getPhotos.html)
+ */
+function flickr_photoset_get_photos($photoset_id, $page = 1, $per_page = NULL) {
+  if (!isset($per_page)) {
+    $per_page = variable_get('flickr_photos_per_page', 20);
+  }
+  
+  $response = flickr_request(
+    'flickr.photosets.getPhotos',
+    array(
+      'photoset_id' => $photoset_id,
+      'page' => $page,
+      'per_page' => $per_page,
+    )
+  );
+  if ($response) {
+    return $response['photoset'];
+  }
+  return FALSE;
+}
+
+/**
  * @param $nsid The Flickr user's NSID
  *
  * @return
Index: sets/flickr_sets.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/flickr/sets/Attic/flickr_sets.module,v
retrieving revision 1.6.2.2
diff -u -r1.6.2.2 flickr_sets.module
--- sets/flickr_sets.module	10 May 2007 05:29:34 -0000	1.6.2.2
+++ sets/flickr_sets.module	9 Jul 2007 01:01:32 -0000
@@ -103,28 +103,29 @@
   
   $per_page = variable_get('flickr_photos_per_page', 20);
   
-  //request set photos
+  // request set photos
+  $photoset = flickr_photoset_get_photos($set_id, $pager_page_array[$element] + 1, $per_page);
   $set_response = flickr_request('flickr.photosets.getPhotos', 
     array(
       'photoset_id'=>$set_id,
       'page' => $pager_page_array[$element]+1,
-      'per_page' => variable_get('flickr_photos_per_page', 20),
+      'per_page' => variable_get('flickr_photos_per_page', $per_page),
      ));
   
-  if (!$set_response) {
-    drupal_set_message(t('Error retrieving :setid\'s photosets from Flickr'), array(':setid', $set_id));
+  if (!$photoset) {
+    drupal_set_message(t("Error retrieving @setid's photosets from Flickr."), array('@setid', $set_id));
     return '';
   }
-  elseif (!isset($set_response['photoset']['photo']) || empty($set_response['photoset']['photo'])) {
+  elseif (!isset($photoset['photo']) || empty($photoset['photo'])) {
       drupal_set_message('This photoset is empty');
       return '';
   }
   
   //set pager information we just acquired
-  $pager_total_items[$element] = $set_response['photoset']['total'];
-  $pager_total[$element] = $set_response['photoset']['pages'];
+  $pager_total_items[$element] = $photoset['total'];
+  $pager_total[$element] = $photoset['pages'];
   
-  return theme('flickr_sets_photoset', $uid, $per_page, $set_response, $set_info);
+  return theme('flickr_sets_photoset', $uid, $per_page, $photoset, $set_info);
 }
 
 
@@ -142,17 +143,15 @@
 }
 
 function theme_flickr_sets_photoset($uid, $per_page, $photo_arr, $set_info){
-  $output = 
-    theme('pager', NULL, variable_get('flickr_photos_per_page', 20));
+  $output = theme('pager', NULL, $per_page);
   $output .= "<div class='fickr-photoset'>\n";
-  foreach((array)$photo_arr['photoset']['photo'] as $photo) {
-    //insert owner into $photo because theme_flickr_photo_box/flickr_photo_page_url needs it
+  foreach((array)$photo_arr['photo'] as $photo) {
+    // Insert owner into $photo because theme_flickr_photo_box/flickr_photo_page_url needs it
     $photo['owner'] = $set_info['owner'];
     $output .= theme('flickr_photo_box', $photo, 'm');
   }
   $output .= '</div>';
-  $output .= 
-    theme('pager', NULL, variable_get('flickr_photos_per_page', 20));
+  $output .= theme('pager', NULL, $per_page);
   return $output;
 }
 
