Advanced search  

News:

cpg1.5.48 Security release - upgrade mandatory!
The Coppermine development team is releasing a security update for Coppermine in order to counter a recently discovered vulnerability. It is important that all users who run version cpg1.5.46 or older update to this latest version as soon as possible.
[more]

Pages: [1]   Go Down

Author Topic: Photo Shop Buy Button next to the thumnails  (Read 6948 times)

0 Members and 1 Guest are viewing this topic.

stevenp

  • Coppermine regular visitor
  • **
  • Offline Offline
  • Posts: 51
Photo Shop Buy Button next to the thumnails
« on: October 15, 2007, 01:07:50 am »

hello
I want to show the buy-button of the photo shop modul next to every thumbnail in my albums. How can i get this?
greetings steven
« Last Edit: October 17, 2007, 07:23:07 am by GauGau »
Logged

Stramm

  • Dev Team member
  • Coppermine addict
  • ****
  • Country: 00
  • Offline Offline
  • Gender: Male
  • Posts: 6006
    • Bettis Wollwelt
Re: Photo Shop Buy Button next to the thumnails
« Reply #1 on: October 15, 2007, 07:44:33 am »

not related to the modpack... moving to the plugin board

stevenp

  • Coppermine regular visitor
  • **
  • Offline Offline
  • Posts: 51
Re: Photo Shop Buy Button next to the thumnails
« Reply #2 on: October 15, 2007, 12:56:06 pm »

hello
any ideas? i want to show the buy-button of the photo shop modul next to every thumbnail in my albums. someone there, who knows what to change?
steven
Logged

Joachim Müller

  • Dev Team member
  • Coppermine addict
  • ****
  • Offline Offline
  • Gender: Male
  • Posts: 47844
  • aka "GauGau"
    • gaugau.de
Logged

Stramm

  • Dev Team member
  • Coppermine addict
  • ****
  • Country: 00
  • Offline Offline
  • Gender: Male
  • Posts: 6006
    • Bettis Wollwelt
Re: Photo Shop Buy Button next to the thumnails
« Reply #4 on: October 16, 2007, 08:09:25 am »

not possible (or better: it's not possible without modifying core code and some more heat on the server -> 1 more query per thumb)

in functions.inc.php find (within function display_thumbnails):
if you use the modpack
Code: [Select]
                        $thumb_list[$i]['pheight'] = $row['pheight'];
if you use a standard coppermine
Code: [Select]
                        $thumb_list[$i]['aid'] = $row['aid'];
below add
Code: [Select]
                //photo_shop plugin hook
$thumb_list[$i] = CPGPluginAPI::filter('display_thumbs',$thumb_list[$i]);

in the plugins codebase.php find
Code: [Select]
// Some filters
$thisplugin->add_filter('thumb_list','photoshop_add_item');
below add
(this is the slightly modified function for displaying the add item dropdown on the intermediate view and the filter call)
Code: [Select]
$thisplugin->add_filter('display_thumbs','photoshop_thumb_add_item');

//add an item to the cart while viewing the thumb list
function photoshop_thumb_add_item($pic_data){
global $CONFIG, $SHOP_CONFIG, $lang_photoshop, $album;

$html = "";
$added = "";
$event = isset($_POST['event']) ? $_POST['event'] : null;

//price override
//if the shop is disabled to show for that album we return $pic_data
//also we check if an override price is set
$results = cpg_db_query("SELECT * FROM {$CONFIG['TABLE_SHOP_PRICES']} WHERE aid={$pic_data['aid']}");

    while ($temp_data = mysql_fetch_array($results)) {
if($temp_data['gid']=='-1') return $pic_data;
$SHOP_CONFIG[$temp_data['gid']]['price']=$temp_data['price'];
}
mysql_free_result($results);

switch ($event) {
    case 'add_item':
if(isset($_POST['pid']))
$added = '<center><font color="red">'.$lang_photoshop['added']."!</font></center>";
$duplicate=photoshop_deep_in_array($_POST['pid'],$_POST['item_id'],$_SESSION['photoshop']['cart']);//search array if item is already in cart.. then ++ amount of that item
if(is_numeric($duplicate)){ // only add 1 item if it's for the CD
if ($_SESSION['photoshop']['cart'][$duplicate]['id'] != "CD"){
++$_SESSION['photoshop']['cart'][$duplicate]['amount'];
} else {
//break;
}
} else {
$_SESSION['photoshop']['cart'][] = array(
        'pid' => $_POST['pid'],
        'id' => $_POST['item_id'],
        'amount' => '1',
'aid' => $pic_data['aid'],
        );
}
$cookie_data = base64_encode(serialize($_SESSION['photoshop']['cart']));
setcookie($CONFIG['cookie_name'] . '_cart', $cookie_data, time() + 86400 * 30, $CONFIG['cookie_path']);

break;
}

//loop through the items and create forms

$html .= "<select name=\"item_id\" class=\"listbox_lang\">";
foreach($SHOP_CONFIG as $key => $value) {
if ($value['type'] == 'photo') {
if ($value['price'] != 0) {
$html.="<option value=\"{$value['id']}\">{$value['name']} - {$lang_photoshop['USD']}{$value['price']}</option>";
}
} elseif ($value['type'] == 'cd') {
$cd = true;
}
}
$html .= ($cd) ? "<option value=\"CD\">{$lang_photoshop['CD']}</option>" : '';
$html .="</select>";

($album == 'search') ? $referer = "thumbnails.php?album={$pic_data['aid']}" : $referer = null;

$shop_data =  <<<EOT
<table class="shop_table">
<tr>
<td>
<form action="{$referer}" method="post">
  {$added}{$lang_photoshop['buy']} {$html}
<input type="hidden" value="{$pic_data['pid']}" name="pid" />
<input type="hidden" value="add_item" name="event" />
    <input type="submit" value="{$lang_photoshop['send']}" class="comment_button" />
</form>
</td>
</tr>
</table>

EOT;
$pic_data['caption'] = $shop_data.$pic_data['caption'];
$referer = ($_SERVER['PHP_SELF'] . (isset($_SERVER['QUERY_STRING']) && $_SERVER['QUERY_STRING'] ? '?' . $_SERVER['QUERY_STRING'] : ''));
if ($added) {
//this is not nice.. but the menu updates before the content. So if you add an item, the basket count can't match
// -> we have to refresh the page twice... can be removed but than the counter is wrong till the user manually reloads
  photoshop_refresh($referer);
echo $added; // redundant ... while refreshing display 'item added'
exit;
}

return $pic_data;
}
« Last Edit: October 16, 2007, 10:27:07 pm by Stramm »
Logged

stevenp

  • Coppermine regular visitor
  • **
  • Offline Offline
  • Posts: 51
Re: Photo Shop Buy Button next to the thumnails
« Reply #5 on: October 16, 2007, 04:46:27 pm »

Many thanks at you, stramm!!!
I filled in the code for codebase.php and get this error
"Fatal error: Cannot redeclare photoshop_start() (previously declared in /homepages/17/d124044955/htdocs/cpg/plugins/photo_shop/codebase.php:138) in /homepages/17/d124044955/htdocs/cpg/plugins/photo_shop/codebase.php on line 147"
what's wrong?

In my function.inc.php i don't have a code like this "$thumb_list[$i]['pheight'] = $row['pheight'];", so I don't know where to put this
"//photo_shop plugin hook
$thumb_list[$i] = CPGPluginAPI::filter('display_thumbs',$thumb_list[$i]);"

I hope, i'm not to annoyingly. I only have these problems with my shop and it's really important for me.

Steven
Logged

Stramm

  • Dev Team member
  • Coppermine addict
  • ****
  • Country: 00
  • Offline Offline
  • Gender: Male
  • Posts: 6006
    • Bettis Wollwelt
Re: Photo Shop Buy Button next to the thumnails
« Reply #6 on: October 16, 2007, 04:54:42 pm »

yah.. OK, I've updated above instructions... you only have this part if you use the modpack, so it's my bad

The cause for
Quote
Fatal error: Cannot redeclare photoshop_start()
is that by accident I've copied two functions in the above instr. where there should be only one.
Restart modding using a fresh copy of codebase.php and all should be good.

stevenp

  • Coppermine regular visitor
  • **
  • Offline Offline
  • Posts: 51
Re: Photo Shop Buy Button next to the thumnails
« Reply #7 on: October 16, 2007, 07:49:10 pm »

Okay,

the code-tags are inserted. All works, but I still got no cartfuction next to my thumbnails. Did i understand something wrong?
Many thanks for all your help and work.
Steven
Logged

Stramm

  • Dev Team member
  • Coppermine addict
  • ****
  • Country: 00
  • Offline Offline
  • Gender: Male
  • Posts: 6006
    • Bettis Wollwelt
Re: Photo Shop Buy Button next to the thumnails
« Reply #8 on: October 16, 2007, 10:28:39 pm »

yeppers, try again to add the huge block above with the function. Tried it on an umodded CPG and it works smooth as butter

stevenp

  • Coppermine regular visitor
  • **
  • Offline Offline
  • Posts: 51
Re: Photo Shop Buy Button next to the thumnails
« Reply #9 on: October 16, 2007, 10:41:49 pm »

hippyyeyahhh,

it works!!!!!!!!!!! GREAT... Thanks a lot!!!!
Please have a last look and try to use ist. After using the add to cart-button. My whole site appears in my coppermine(frame).
Steven
Logged
Pages: [1]   Go Up
 

Page created in 0.018 seconds with 20 queries.