Pagina 1 di 1
On Demand / Su Ordinazione..
Inviato: 15/07/2008, 15:35
da XaRaBaS
Ho fatto una ricerca generale nel forum per evitare di chiedere e disturbarvi ma la mia fortuna non mi assiste..
Allora ho esigenza di inserire nel mio catalogo la scritta "Su ordinazione" del prodotto e giustamente nel lato admin selezionare come da immagine
Sotto Stato prodotto:
inserire
Su ordinazione: e poi le variabili SI o NO come da immagine..
Conoscete qualche contrib che fa al caso mio? Oppure se possiamo costruirla assieme?
Grazie
PS. dynamo ci sei?

Inviato: 15/07/2008, 16:03
da dynamo
io ho risolto in un altro modo
ho aggiungo in catalog/includes/modules/product_listing.php questo codice
Codice: Seleziona tutto
case 'PRODUCT_LIST_QUANTITY':
$lc_text = TABLE_HEADING_QUANTITY;
$lc_align = 'right';
break;
dove c'è
Codice: Seleziona tutto
for ($col=0, $n=sizeof($column_list); $col<$n; $col++) {
switch ($column_list[$col]) {
l'ho aggiunto tra PRODUCT_LIST_PRICE e PRODUCT_LIST_WEIGHT
poi ho aggiunto
Codice: Seleziona tutto
case 'PRODUCT_LIST_QUANTITY':
$lc_align = 'center';
if ($listing['products_quantity'] == 0 )
$lc_text=tep_image(DIR_WS_IMAGES . 'icon_status_red.gif');
elseif ($listing['products_quantity'] <= -10 )
$lc_text=tep_image(DIR_WS_IMAGES . 'ordina.gif');
elseif ($listing['products_quantity'] > 0 )
$lc_text=tep_image(DIR_WS_IMAGES . 'icon_status_green.gif');
break;
dove c'è
Codice: Seleziona tutto
for ($col=0, $n=sizeof($column_list); $col<$n; $col++) {
$lc_align = '';
switch ($column_list[$col]) {
tra PRODUCT_LIST_PRICE e PRODUCT_LIST_WEIGHT
in questo modo si ottinene una cosa simile a questo

Inviato: 15/07/2008, 16:34
da XaRaBaS
Allora "forse" comincio a capirci qualcosa.. ancora non ho provato la tua idea.. ma credo che se ci lavoriamo possiamo risolvere per benino il tutto..
Cosa ho fatto..
Sono andato su admin/categories/categories.php
Alla riga 488 ho inserito:
Codice: Seleziona tutto
<td class="main"><?php echo TEXT_PRODUCTS_DEMAND; ?></td>
<td class="main"><?php echo tep_draw_separator('pixel_trans.gif', '24', '15') . ' ' . tep_draw_radio_field('products_status', '1', $in_status) . ' ' . TEXT_PRODUCT_AVAILABLE_YES . ' ' . tep_draw_radio_field('products_status', '0', $out_status) . ' ' . TEXT_PRODUCT_AVAILABLE_NOT; ?></td>
<tr>
<td colspan="2"><?php echo tep_draw_separator('pixel_trans.gif', '1', '10'); ?></td>
</tr>
Mentre su /admin/includes/languages/italian/categories.php
alla riga 75 ho inserito:
Codice: Seleziona tutto
define('TEXT_PRODUCTS_DEMAND','Su Ordinazione:');
define('TEXT_PRODUCT_AVAILABLE_YES','Si');
define('TEXT_PRODUCT_AVAILABLE_NOT','No');
Quindi ora nella parte admin appare tutto.. solo che giustamente devo cambiare qualche variabile o inserire un richiamo $ondemand (se ho ben capito in php)
Alla fine sono mutuamente esclusivi.. cioè se seleziono Si o No rispettivamente si toglie su Disponibile o Esaurito
Ora cerco di smanettare un pochino.. ma se mi daresti una mano.. secondo me risolviamo subito

Secondo me dovremmo andare a cambiare
$in_status e andare a crearne un'altra.. solo che non so dove questo $in_status risiede.. su categories.php lo richiama e basta..
e grazie ancora non so come ringraziarti per la tua gentilezza..
Inviato: 15/07/2008, 16:47
da dynamo
io non ho toccato nulla nella parte di admin...
gioco solo sulla
quantità...
come stai facendo te devi salvare il valore nel db tipo 1 = ordinazione 0 = disponibile
poi quando visualizzi il prodotto lo richiami tecinicamente è fattibile solo che al momento sto smanettando su altro
magari stasera ci provo pure io

Inviato: 15/07/2008, 17:04
da XaRaBaS
Spero che risolviamo questa cosa.. ho notato che nel forum molti hanno chiesto questa contrib.. ma purtroppo non c'è ..almeno cerchiamo di realizzarla per noi.. e per gli altri.. e possiamo upparla nel sito di Oscommerce..
Inviato: 15/07/2008, 22:14
da Spiderweb
Semplice,
installi la contribution Call For Pricing / Negotiable Pricing e al posto della scritta Prezzo su richiesta ci metti Ogetto su ordinazione.
Se ne era già parlato in un altro post.
Inviato: 15/07/2008, 22:20
da dynamo
Spiderweb ha scritto:Semplice,
installi la contribution Call For Pricing / Negotiable Pricing e al posto della scritta Prezzo su richiesta ci metti Ogetto su ordinazione.
Se ne era già parlato in un altro post.
questa la devo prova

Inviato: 16/07/2008, 14:24
da XaRaBaS
Grazie Spiderweb e dynamo
La cosa funziona.. ma purtroppo ho notato che mi ha fatto scomparire i nuovi prodotti di luglio.. dove dovrei andare per sistemare sta cosa?
EDIT:
catalog\includes\modules\new_products.php
mi sa che ho cazzato qua.. potete postarmi il codice vostro.. e cerco di trovare l'errore?
Grazie..
Codice: Seleziona tutto
<?php
/*
$Id: new_products.php 1806 2008-01-11 22:48:15Z hpdl $
osCommerce, Open Source E-Commerce Solutions
http://www.oscommerce.com
Copyright (c) 2008 osCommerce
Released under the GNU General Public License
*/
?>
<!-- new_products //-->
<?php
$info_box_contents = array();
$info_box_contents[] = array('text' => sprintf(TABLE_HEADING_NEW_PRODUCTS, strftime('%B')));
new contentBoxHeading($info_box_contents);
if ( (!isset($new_products_category_id)) || ($new_products_category_id == '0') ) {
$new_products_query = tep_db_query("select p.products_id, p.products_image, p.products_tax_class_id, pd.products_name, pd.products_description, if(s.status, s.specials_new_products_price, p.products_price) as products_price from " . TABLE_PRODUCTS . " p left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id, " . TABLE_PRODUCTS_DESCRIPTION . " pd where p.products_status = '1' and p.products_id = pd.products_id and pd.language_id = '" . (int)$languages_id . "' order by p.products_date_added desc limit " . MAX_DISPLAY_NEW_PRODUCTS);
} else {
$new_products_query = tep_db_query("select distinct p.products_id, p.products_image, p.products_tax_class_id, pd.products_name, pd.products_description, if(s.status, s.specials_new_products_price, p.products_price) as products_price from " . TABLE_PRODUCTS . " p left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id, " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c, " . TABLE_CATEGORIES . " c where p.products_id = p2c.products_id and p2c.categories_id = c.categories_id and c.parent_id = '" . (int)$new_products_category_id . "' and p.products_status = '1' and p.products_id = pd.products_id and pd.language_id = '" . (int)$languages_id . "' order by p.products_date_added desc limit " . MAX_DISPLAY_NEW_PRODUCTS);
}
$row = 0;
$col = 0;
$info_box_contents = array();
while ($new_products = tep_db_fetch_array($new_products_query)) {
if ($new_products['products_price'] == 999999){
$info_box_contents[$row][$col] = array('align' => 'center',
'params' => 'class="smallText" width="33%" valign="top"',
'text' => '
<table width="275" cellspacing="0" cellpadding="0" style="border:1px solid #666666;margin-top:10px;background:#141414;">
<tr>
<td width="100" height="100" bgcolor="#ffffff" align="center">
<p style="padding-top:5px;padding-bottom:5px;">
<a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $new_products['products_id']) . '">' . tep_image(DIR_WS_IMAGES . $new_products['products_image'], $new_products['products_name'], SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT) . '</a>
</p>
<p style="font-size:12px;font-weight:bold;font-family:Verdana, Arial, Helvetica, sans-serif;padding-bottom:10px;color:#56b8c7;">
' . <a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $new_products['products_id']) . '">' . $new_products['products_name'] . '</a><br>'TEXT_CALL_FOR_PRICE);'
}else{
$info_box_contents[$row][$col] = array('align' => 'center',
'params' => 'class="smallText" width="33%" valign="top"',
'text' => '<a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $new_products['products_id']) . '">' . tep_image(DIR_WS_IMAGES . $new_products['products_image'], $new_products['products_name'], SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT) . '</a><br><a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $new_products['products_id']) . '">' . $new_products['products_name'] . '</a><br>' . $currencies->display_price($new_products['products_price'], tep_get_tax_rate($new_products['products_tax_class_id'])));
}
</p>
</td>
<td width="10"></td>
<td width="175" valign="top">
<p style="font-size:10px;font-weight:bold;font-family:Verdana, Arial, Helvetica, sans-serif;padding-top:5px;padding-right:5px;">
<a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $new_products['products_id']) . '">' . $new_products['products_name'] . '</a>
</p>
<p style="font-size:10px;font-family:Verdana, Arial, Helvetica, sans-serif;padding-top:5px;height:40px;margin:0;">
' . substr($new_products['products_description'],0, 80) .'<a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $new_products['products_id']) . '">[...]</a>
</p><br />
<p>
<span style="font-size:18px;font-family:Verdana, Arial, Helvetica, sans-serif;padding-bottom:5px;color:#ffff00;">
'. tep_draw_form('cart_quantity', tep_href_link(FILENAME_PRODUCT_INFO, tep_get_all_get_params(array('action')) . 'action=add_product')).'
<a href="'.tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $new_products['products_id']).'">'.tep_image_button('button_details.gif', IMAGE_BUTTON_DETAILS).'</a>'.tep_draw_hidden_field('products_id', $new_products['products_id']) . tep_image_submit('button_in_cart.gif', IMAGE_BUTTON_BY_NOW).'
</form>
</span>
</p>
</td>
</tr>
</table>
);
$col ++;
if ($col > 1) {
$col = 0;
$row ++;
}
}
new contentBox($info_box_contents);
?>
<!-- new_products_eof //-->
Inviato: 16/07/2008, 14:59
da XaRaBaS
Ok sistemato.. grazie ancora..