Loading block/flickr_block.module +30 −15 Changes for block/flickr_block.module: 30 added lines, 15 removed lines. Original line number Diff line number Diff line Loading @@ -35,7 +35,7 @@ function flickr_block_configure($delta = '') { unset($size_options['b']); unset($size_options['o']); $settings = variable_get('flickr_block_' . $delta, array('user_id' => '', 'show_n' => 4, 'size' => 's','photoset_id' => '')); $settings = variable_get('flickr_block_' . $delta, array('user_id' => '', 'show_n' => 4, 'size' => 's','photoset_id' => '', 'media' => 'all')); $form = array(); $user_id = array_key_exists('user_id', $settings) ? $settings['user_id'] : ''; Loading @@ -60,6 +60,14 @@ function flickr_block_configure($delta = '') { '#description' => t("Select the size of photos you'd like to display in the block.") ); $form["flickr_block_{$delta}_media"] = array( '#type' => 'select', '#options' => array('all' => 'all', 'photos' => 'photos', 'videos' => 'videos'), '#title' => t('Media type'), '#default_value' => $settings['media'], '#description' => t("Filter results by media type.") ); switch ($delta) { case 0: // user page, recent unset($form["flickr_block_{$delta}_user_id"]); Loading @@ -69,6 +77,7 @@ function flickr_block_configure($delta = '') { // photoset, not photos $form["flickr_block_{$delta}_show_n"]['#title'] = t('Show the last <em>n</em> photosets'); $form["flickr_block_{$delta}_show_n"]['#description'] = t("The block will show this many of the user's photosets."); unset($form["flickr_block_{$delta}_media"]); break; case 2: // user page, random unset($form["flickr_block_{$delta}_user_id"]); Loading @@ -79,6 +88,7 @@ function flickr_block_configure($delta = '') { case 4: // sitewite photoset, not photos $form["flickr_block_{$delta}_show_n"]['#title'] = t('Show the last <em>n</em> photosets'); $form["flickr_block_{$delta}_show_n"]['#description'] = t("The block will show this many of the user's photosets."); unset($form["flickr_block_{$delta}_media"]); break; case 5: // sitewide, random break; Loading Loading @@ -112,6 +122,7 @@ function flickr_block_save($delta = '', $edit = array()) { variable_set('flickr_block_' . $delta, array( 'show_n' => (int) $edit["flickr_block_{$delta}_show_n"], 'size' => $edit["flickr_block_{$delta}_size"], 'media' => $edit["flickr_block_{$delta}_media"], )); break; Loading @@ -123,12 +134,14 @@ function flickr_block_save($delta = '', $edit = array()) { 'user_id' => $edit["flickr_block_{$delta}_user_id"], 'show_n' => (int) $edit["flickr_block_{$delta}_show_n"], 'size' => $edit["flickr_block_{$delta}_size"], 'media' => $edit["flickr_block_{$delta}_media"], )); break; case 7: variable_set('flickr_block_' . $delta, array( 'show_n' => (int) $edit["flickr_block_{$delta}_show_n"], 'size' => $edit["flickr_block_{$delta}_size"], 'media' => $edit["flickr_block_{$delta}_media"], 'photoset_id' => $edit["flickr_block_{$delta}_photoset"], )); break; Loading @@ -144,6 +157,7 @@ function flickr_block_view($delta = '') { 'user_id' => '', 'show_n' => 4, 'size' => 's', 'media' => 'all', )); // Get the default user id as a fallback Loading @@ -163,7 +177,7 @@ function flickr_block_view($delta = '') { if (!empty($user->flickr['nsid'])) { if ($delta == 0) { $block['subject'] = t("%username's recent Flickr photos", array('%username' => $user->name)); $block['content'] = _flickr_block_recent($user->flickr['nsid'], $settings['show_n'], $settings['size']); $block['content'] = _flickr_block_recent($user->flickr['nsid'], $settings['show_n'], $settings['size'], $settings['media']); } elseif ($delta == 1) { $block['subject'] = t("%username's recent Flickr photosets", array('%username' => $user->name)); Loading @@ -171,7 +185,7 @@ function flickr_block_view($delta = '') { } elseif ($delta == 2) { $block['subject'] = t("%username's random Flickr photos", array('%username' => $user->name)); $block['content'] = _flickr_block_random($user->flickr['nsid'], $settings['show_n'], $settings['size']); $block['content'] = _flickr_block_random($user->flickr['nsid'], $settings['show_n'], $settings['size'], $settings['media']); } } } Loading @@ -179,7 +193,7 @@ function flickr_block_view($delta = '') { break; case 3: $block['subject'] = t('Flickr recent photos'); $block['content'] = _flickr_block_recent($settings['user_id'], $settings['show_n'], $settings['size']); $block['content'] = _flickr_block_recent($settings['user_id'], $settings['show_n'], $settings['size'], $settings['media']); break; case 4: $block['subject'] = t('Flickr recent photosets'); Loading @@ -187,23 +201,23 @@ function flickr_block_view($delta = '') { break; case 5: $block['subject'] = t('Flickr random photos'); $block['content'] = _flickr_block_random($settings['user_id'], $settings['show_n'], $settings['size']); $block['content'] = _flickr_block_random($settings['user_id'], $settings['show_n'], $settings['size'], $settings['media']); break; case 6: $block['subject'] = t('Flickr Group photos'); $block['content'] = _flickr_block_group_recent($settings['user_id'], $settings['show_n'], $settings['size']); $block['content'] = _flickr_block_group_recent($settings['user_id'], $settings['show_n'], $settings['size'], $settings['media']); break; case 7: $block['subject'] = t('Flickr random photoset photos'); $block['content'] = _flickr_block_photoset_random($settings['user_id'], $settings['show_n'], $settings['size'], $settings['photoset_id']); $block['content'] = _flickr_block_photoset_random($settings['user_id'], $settings['show_n'], $settings['size'], $settings['media'], $settings['photoset_id']); break; } return $block; } function _flickr_block_recent($nsid, $show_n, $size) { function _flickr_block_recent($nsid, $show_n, $size, $media) { $output = ''; if ($photos = flickr_photos_search($nsid, 1, array('per_page' => $show_n))) { if ($photos = flickr_photos_search($nsid, 1, array('per_page' => $show_n, 'media' => $media))) { foreach ($photos['photo'] as $photo) { $output .= theme('flickr_block_photo', array('photo' => $photo, 'size' => $size)); } Loading @@ -221,10 +235,10 @@ function _flickr_block_photosets($nsid, $show_n, $size) { return $output; } function _flickr_block_random($nsid, $show_n, $size) { function _flickr_block_random($nsid, $show_n, $size, $media) { $output = ''; $random_photos = array(); if ($photos = flickr_photos_search($nsid, 1, array('per_page' => 500))) { if ($photos = flickr_photos_search($nsid, 1, array('per_page' => 500, 'media' => $media))) { $page_count = $photos['pages']; // we shouldn't try to return more than the total number of photos $to = min($show_n, $photos['total']); Loading @@ -232,7 +246,7 @@ function _flickr_block_random($nsid, $show_n, $size) { for ($i = 0; $i < $to; $i++) { sleep(0.125); // request a random page $photos = flickr_photos_search($nsid, rand(1, $page_count), array('per_page' => 500)); $photos = flickr_photos_search($nsid, rand(1, $page_count), array('per_page' => 500, 'media' => $media)); // then select a random photo $index = rand(0, count($photos['photo']) - 1); $photo_id = $photos['photo'][$index]['id']; Loading @@ -248,7 +262,7 @@ function _flickr_block_random($nsid, $show_n, $size) { return $output; } function _flickr_block_photoset_random($nsid, $show_n, $size, $photoset_id) { function _flickr_block_photoset_random($nsid, $show_n, $size, $media, $photoset_id) { // Get information about the photoset, including the owner. $info = flickr_photoset_get_info($photoset_id); if (!$info) { Loading @@ -261,6 +275,7 @@ function _flickr_block_photoset_random($nsid, $show_n, $size, $photoset_id) { 'photoset_id' => $photoset_id, 'per_page' => 500, // get as many images as possible 'extras' => 'owner', 'media' => $media, ) ); if (!$response) { Loading @@ -285,9 +300,9 @@ function _flickr_block_photoset_random($nsid, $show_n, $size, $photoset_id) { /* * This renders a block with photos from the selected groupid */ function _flickr_block_group_recent($groupid, $show_n, $size) { function _flickr_block_group_recent($groupid, $show_n, $size, $media) { $output = ''; if ($photos = flickr_get_group_photos($groupid, 1, array('per_page' => $show_n))) { if ($photos = flickr_get_group_photos($groupid, 1, array('per_page' => $show_n, 'media' => $media))) { foreach ($photos['photo'] as $photo) { $output .= theme('flickr_block_photo', array('photo' => $photo, 'size' => $size)); } Loading Loading
block/flickr_block.module +30 −15 Changes for block/flickr_block.module: 30 added lines, 15 removed lines. Original line number Diff line number Diff line Loading @@ -35,7 +35,7 @@ function flickr_block_configure($delta = '') { unset($size_options['b']); unset($size_options['o']); $settings = variable_get('flickr_block_' . $delta, array('user_id' => '', 'show_n' => 4, 'size' => 's','photoset_id' => '')); $settings = variable_get('flickr_block_' . $delta, array('user_id' => '', 'show_n' => 4, 'size' => 's','photoset_id' => '', 'media' => 'all')); $form = array(); $user_id = array_key_exists('user_id', $settings) ? $settings['user_id'] : ''; Loading @@ -60,6 +60,14 @@ function flickr_block_configure($delta = '') { '#description' => t("Select the size of photos you'd like to display in the block.") ); $form["flickr_block_{$delta}_media"] = array( '#type' => 'select', '#options' => array('all' => 'all', 'photos' => 'photos', 'videos' => 'videos'), '#title' => t('Media type'), '#default_value' => $settings['media'], '#description' => t("Filter results by media type.") ); switch ($delta) { case 0: // user page, recent unset($form["flickr_block_{$delta}_user_id"]); Loading @@ -69,6 +77,7 @@ function flickr_block_configure($delta = '') { // photoset, not photos $form["flickr_block_{$delta}_show_n"]['#title'] = t('Show the last <em>n</em> photosets'); $form["flickr_block_{$delta}_show_n"]['#description'] = t("The block will show this many of the user's photosets."); unset($form["flickr_block_{$delta}_media"]); break; case 2: // user page, random unset($form["flickr_block_{$delta}_user_id"]); Loading @@ -79,6 +88,7 @@ function flickr_block_configure($delta = '') { case 4: // sitewite photoset, not photos $form["flickr_block_{$delta}_show_n"]['#title'] = t('Show the last <em>n</em> photosets'); $form["flickr_block_{$delta}_show_n"]['#description'] = t("The block will show this many of the user's photosets."); unset($form["flickr_block_{$delta}_media"]); break; case 5: // sitewide, random break; Loading Loading @@ -112,6 +122,7 @@ function flickr_block_save($delta = '', $edit = array()) { variable_set('flickr_block_' . $delta, array( 'show_n' => (int) $edit["flickr_block_{$delta}_show_n"], 'size' => $edit["flickr_block_{$delta}_size"], 'media' => $edit["flickr_block_{$delta}_media"], )); break; Loading @@ -123,12 +134,14 @@ function flickr_block_save($delta = '', $edit = array()) { 'user_id' => $edit["flickr_block_{$delta}_user_id"], 'show_n' => (int) $edit["flickr_block_{$delta}_show_n"], 'size' => $edit["flickr_block_{$delta}_size"], 'media' => $edit["flickr_block_{$delta}_media"], )); break; case 7: variable_set('flickr_block_' . $delta, array( 'show_n' => (int) $edit["flickr_block_{$delta}_show_n"], 'size' => $edit["flickr_block_{$delta}_size"], 'media' => $edit["flickr_block_{$delta}_media"], 'photoset_id' => $edit["flickr_block_{$delta}_photoset"], )); break; Loading @@ -144,6 +157,7 @@ function flickr_block_view($delta = '') { 'user_id' => '', 'show_n' => 4, 'size' => 's', 'media' => 'all', )); // Get the default user id as a fallback Loading @@ -163,7 +177,7 @@ function flickr_block_view($delta = '') { if (!empty($user->flickr['nsid'])) { if ($delta == 0) { $block['subject'] = t("%username's recent Flickr photos", array('%username' => $user->name)); $block['content'] = _flickr_block_recent($user->flickr['nsid'], $settings['show_n'], $settings['size']); $block['content'] = _flickr_block_recent($user->flickr['nsid'], $settings['show_n'], $settings['size'], $settings['media']); } elseif ($delta == 1) { $block['subject'] = t("%username's recent Flickr photosets", array('%username' => $user->name)); Loading @@ -171,7 +185,7 @@ function flickr_block_view($delta = '') { } elseif ($delta == 2) { $block['subject'] = t("%username's random Flickr photos", array('%username' => $user->name)); $block['content'] = _flickr_block_random($user->flickr['nsid'], $settings['show_n'], $settings['size']); $block['content'] = _flickr_block_random($user->flickr['nsid'], $settings['show_n'], $settings['size'], $settings['media']); } } } Loading @@ -179,7 +193,7 @@ function flickr_block_view($delta = '') { break; case 3: $block['subject'] = t('Flickr recent photos'); $block['content'] = _flickr_block_recent($settings['user_id'], $settings['show_n'], $settings['size']); $block['content'] = _flickr_block_recent($settings['user_id'], $settings['show_n'], $settings['size'], $settings['media']); break; case 4: $block['subject'] = t('Flickr recent photosets'); Loading @@ -187,23 +201,23 @@ function flickr_block_view($delta = '') { break; case 5: $block['subject'] = t('Flickr random photos'); $block['content'] = _flickr_block_random($settings['user_id'], $settings['show_n'], $settings['size']); $block['content'] = _flickr_block_random($settings['user_id'], $settings['show_n'], $settings['size'], $settings['media']); break; case 6: $block['subject'] = t('Flickr Group photos'); $block['content'] = _flickr_block_group_recent($settings['user_id'], $settings['show_n'], $settings['size']); $block['content'] = _flickr_block_group_recent($settings['user_id'], $settings['show_n'], $settings['size'], $settings['media']); break; case 7: $block['subject'] = t('Flickr random photoset photos'); $block['content'] = _flickr_block_photoset_random($settings['user_id'], $settings['show_n'], $settings['size'], $settings['photoset_id']); $block['content'] = _flickr_block_photoset_random($settings['user_id'], $settings['show_n'], $settings['size'], $settings['media'], $settings['photoset_id']); break; } return $block; } function _flickr_block_recent($nsid, $show_n, $size) { function _flickr_block_recent($nsid, $show_n, $size, $media) { $output = ''; if ($photos = flickr_photos_search($nsid, 1, array('per_page' => $show_n))) { if ($photos = flickr_photos_search($nsid, 1, array('per_page' => $show_n, 'media' => $media))) { foreach ($photos['photo'] as $photo) { $output .= theme('flickr_block_photo', array('photo' => $photo, 'size' => $size)); } Loading @@ -221,10 +235,10 @@ function _flickr_block_photosets($nsid, $show_n, $size) { return $output; } function _flickr_block_random($nsid, $show_n, $size) { function _flickr_block_random($nsid, $show_n, $size, $media) { $output = ''; $random_photos = array(); if ($photos = flickr_photos_search($nsid, 1, array('per_page' => 500))) { if ($photos = flickr_photos_search($nsid, 1, array('per_page' => 500, 'media' => $media))) { $page_count = $photos['pages']; // we shouldn't try to return more than the total number of photos $to = min($show_n, $photos['total']); Loading @@ -232,7 +246,7 @@ function _flickr_block_random($nsid, $show_n, $size) { for ($i = 0; $i < $to; $i++) { sleep(0.125); // request a random page $photos = flickr_photos_search($nsid, rand(1, $page_count), array('per_page' => 500)); $photos = flickr_photos_search($nsid, rand(1, $page_count), array('per_page' => 500, 'media' => $media)); // then select a random photo $index = rand(0, count($photos['photo']) - 1); $photo_id = $photos['photo'][$index]['id']; Loading @@ -248,7 +262,7 @@ function _flickr_block_random($nsid, $show_n, $size) { return $output; } function _flickr_block_photoset_random($nsid, $show_n, $size, $photoset_id) { function _flickr_block_photoset_random($nsid, $show_n, $size, $media, $photoset_id) { // Get information about the photoset, including the owner. $info = flickr_photoset_get_info($photoset_id); if (!$info) { Loading @@ -261,6 +275,7 @@ function _flickr_block_photoset_random($nsid, $show_n, $size, $photoset_id) { 'photoset_id' => $photoset_id, 'per_page' => 500, // get as many images as possible 'extras' => 'owner', 'media' => $media, ) ); if (!$response) { Loading @@ -285,9 +300,9 @@ function _flickr_block_photoset_random($nsid, $show_n, $size, $photoset_id) { /* * This renders a block with photos from the selected groupid */ function _flickr_block_group_recent($groupid, $show_n, $size) { function _flickr_block_group_recent($groupid, $show_n, $size, $media) { $output = ''; if ($photos = flickr_get_group_photos($groupid, 1, array('per_page' => $show_n))) { if ($photos = flickr_get_group_photos($groupid, 1, array('per_page' => $show_n, 'media' => $media))) { foreach ($photos['photo'] as $photo) { $output .= theme('flickr_block_photo', array('photo' => $photo, 'size' => $size)); } Loading