I did this with classic, your theme may differ slightly.
thumbnails.php; find:
define('INDEX_PHP', true);
Add after it:
define('DISPLAYIMAGE_PHP', true); // Favorite MOD (you need access to $lang_picinfo)
include/functions.inc.php; function display_thumbnails; find:
$thumb_list[$i]['aid'] = $row['aid'];
add after it:
$thumb_list[$i]['pid'] = $row['pid'];
theme.php; $template_thumbnail_view; find:
<!-- BEGIN thumb_cell -->
<td valign="top" class="thumbnails" width ="{CELL_WIDTH}" align="center">
<table width="100%" cellpadding="0" cellspacing="0">
<tr>
<td align="center">
<a href="{LINK_TGT}">{THUMB}<br /></a>
{CAPTION}
{ADMIN_MENU}
</td>
</tr>
</table>
</td>
<!-- END thumb_cell -->
replace with:
<!-- BEGIN thumb_cell -->
<td valign="top" class="thumbnails" width ="{CELL_WIDTH}" align="center">
<table width="100%" cellpadding="0" cellspacing="0">
<tr>
<td align="center">
<a href="{LINK_TGT}">{THUMB}<br /></a>
{CAPTION}
{ADMIN_MENU}
{FAVORITE}
</td>
</tr>
</table>
</td>
<!-- END thumb_cell -->
theme.php; function theme_display_thumbnails; find:
global $template_thumb_view_title_row,$template_fav_thumb_view_title_row, $lang_thumb_view, $template_tab_display, $template_thumbnail_view;
add after it:
global $lang_picinfo, $FAVPICS; // Favorite MOD
theme.php; function theme_display_thumbnails; find:
foreach($thumb_list as $thumb) {
$i++;
if ($mode == 'thumb') {
replace it with:
foreach($thumb_list as $thumb) {
$i++;
// Favorite MOD
if (!in_array($thumb['pid'], $FAVPICS)) {
$favorite = "<a href=\"addfav.php?pid=" . $thumb['pid'] . "\">" . $lang_picinfo['addFav'] . '</a>';
} else {
$favorite = "<a href=\"addfav.php?pid=" . $thumb['pid'] . "\">" . $lang_picinfo['remFav'] . '</a>';
}
// Favorite MOD
if ($mode == 'thumb') {
theme.php; function theme_display_thumbnails; find:
if ($mode == 'thumb') {
if ($aid == 'lastalb') {
$params = array('{CELL_WIDTH}' => $cell_width,
'{LINK_TGT}' => "thumbnails.php?album={$thumb['aid']}",
'{THUMB}' => $thumb['image'],
'{CAPTION}' => $thumb['caption'],
'{ADMIN_MENU}' => $thumb['admin_menu']
);
} else {
$params = array('{CELL_WIDTH}' => $cell_width,
'{LINK_TGT}' => "displayimage.php?album=$aid$cat_link&pos={$thumb['pos']}",
'{THUMB}' => $thumb['image'],
'{CAPTION}' => $thumb['caption'],
'{ADMIN_MENU}' => $thumb['admin_menu']
);
}
} else {
$params = array('{CELL_WIDTH}' => $cell_width,
'{LINK_TGT}' => "index.php?cat={$thumb['cat']}",
'{THUMB}' => $thumb['image'],
'{CAPTION}' => $thumb['caption'],
'{ADMIN_MENU}' => ''
);
}
replace it with:
if ($mode == 'thumb') {
if ($aid == 'lastalb') {
$params = array('{CELL_WIDTH}' => $cell_width,
'{LINK_TGT}' => "thumbnails.php?album={$thumb['aid']}",
'{THUMB}' => $thumb['image'],
'{CAPTION}' => $thumb['caption'],
'{ADMIN_MENU}' => $thumb['admin_menu'],
'{FAVORITE}' => $favorite, // Favorite MOD
);
} else {
$params = array('{CELL_WIDTH}' => $cell_width,
'{LINK_TGT}' => "displayimage.php?album=$aid$cat_link&pos={$thumb['pos']}",
'{THUMB}' => $thumb['image'],
'{CAPTION}' => $thumb['caption'],
'{ADMIN_MENU}' => $thumb['admin_menu'],
'{FAVORITE}' => $favorite, // Favorite MOD
);
}
} else {
$params = array('{CELL_WIDTH}' => $cell_width,
'{LINK_TGT}' => "index.php?cat={$thumb['cat']}",
'{THUMB}' => $thumb['image'],
'{CAPTION}' => $thumb['caption'],
'{ADMIN_MENU}' => '',
'{FAVORITE}' => $favorite, // Favorite MOD
);
}
Hope that helps.
FYI (Radio buttons wont work here, this does one image at a time.)
I think you could do a form by placing it in the header and footers of $template_thumbnail_view
but then your going to have to work passing that info and parsing it with addfav.php.
You could also probably manipulate referrer with addfav to send you back to the same album.
Thats currently a little larger project than I want to take on for 1.3x.
If you love this functionality perhaps some folks can put it in a feature request, perhaps I'd do it for a future version if there were enough interest.