Jump to content
Sign in to follow this  
TrU

проблема с модулем SOLD OUT (нет в наличии)

Recommended Posts

Добрый день, хотел бы получить подсказку. (ocStore 1.5.4.1)

Решил использовать данный модуль Sold Out v0.3.4, однако он VQmod, который я не решаюсь использовать, поэтому изменения вносил ручками, и вроде бы даже все заработало, однако, я рано обрадовался, то что у меня не получилось русифицировать текст кнопки, не так страшно, по-любому разберусь, а вот то что начали сыпаться синтаксические ошибки при попытке купить имеющийся товар, меня сильно расстроило. (Parse error: syntax error, unexpected ';' in /www/catalog/controller/product/product.php on line 190)

Может кто нибудь проверит его работоспособность в VQmod? те ошибки что сыпались, жаловались на product.tpl и product.php.

Если я в данном месте допустил ошибку, поправьте:

нужно сделать это

<file name="catalog/controller/product/product.php">
</operation>
<operation>
<search position="before">
<![CDATA[$product_info['quantity'] <= 0]]>
</search>
<add>
<![CDATA[ $this->data['prod_quant'] = $product_info['quantity']; $this->data['prod_name'] = $product_info['name']; ]]>
</add>
</operation>

в итоге получилось это:

if ($this->data['prod_quant'] = $product_info['quantity']; $this->data['prod_name'] = $product_info['name'];$product_info['quantity'] <= 0) {
   $this->data['stock'] = $product_info['stock_status'];
  } elseif ($this->config->get('config_stock_display')) {
   $this->data['stock'] = $product_info['quantity'];
  } else {
   $this->data['stock'] = $this->language->get('text_instock');

ну и под конец этот кусок, но тут вроде вопросов нет, кроме одного - offset="3", просто отступ или еще что?

<file name="catalog/view/theme/*/template/product/product.tpl">
<operation>
<search position="replace" offset="3">
<![CDATA[<div><?php echo $text_qty; ?>]]>
</search>
<add>
<![CDATA[ <?php if ($prod_quant>0) echo "<div>$text_qty<input type='text' name='quantity' size='2' value='$minimum' /><input type='hidden' name='product_id' size='2' value='$product_id' /> "; else echo "<div>"; ?> ]]>
</add>
</operation>
<operation>
<search position="replace">
<![CDATA[<input type="button" value="<?php echo $button_cart; ?>" id="button-cart" class="button" />]]>
</search>
<add>
<![CDATA[ <?php if ($prod_quant>0) echo "<input type='button' value='$button_cart' id='button-cart' class='button' />"; else echo "<span style='color:red; font-weight:bold;'>$stock</span><a href='index.php?route=information/contact&enquiry=", urlencode("$prod_name ($model)".PHP_EOL), "' target='_blank' class='button' style='color:yellow;'>Inquire Now</a>"; ?> ]]>
</add>
</operation>
<operation>
<search position="replace">
<![CDATA[<a onclick="addToCart('<?php echo $product['product_id']; ?>');" class="button"><?php echo $button_cart; ?></a>]]>
</search>
<add>
<![CDATA[ <?php if ($product['quantity']>0) echo "<input type='button' value='$button_cart' onclick='addToCart($product[product_id]);' class='button' />"; else echo "<span style='color:red; font-weight:bold;'>$product[stock]</span><a href='index.php?route=information/contact&enquiry=", urlencode("$product[name] ($product[model])".PHP_EOL), "' target='_blank' class='button' style='color:yellow;'>Inquire Now</a>"; ?> ]]>
</add>
</operation>
</file>

Share this post


Link to post
Share on other sites

здесь

if ($this->data['prod_quant'] = $product_info['quantity']; $this->data['prod_name'] = $product_info['name'];$product_info['quantity'] <= 0) {
$this->data['stock'] = $product_info['stock_status'];
  } elseif ($this->config->get('config_stock_display')) {
$this->data['stock'] = $product_info['quantity'];
  } else {
$this->data['stock'] = $this->language->get('text_instock');

после $product_info['name']; пробел попробуй поставить

offset="3"

означает что заменяется данная строка и еще 3 строки, идущие за ней, т.е. всего 4.

  • +1 1

Share this post


Link to post
Share on other sites

здесь

if ($this->data['prod_quant'] = $product_info['quantity']; $this->data['prod_name'] = $product_info['name'];$product_info['quantity'] <= 0) {
$this->data['stock'] = $product_info['stock_status'];
  } elseif ($this->config->get('config_stock_display')) {
$this->data['stock'] = $product_info['quantity'];
  } else {
$this->data['stock'] = $this->language->get('text_instock');

после $product_info['name']; пробел попробуй поставить

означает что заменяется данная строка и еще 3 строки, идущие за ней, т.е. всего 4.

Благодарю за пояснения, вечером попробую

Share this post


Link to post
Share on other sites

у меня не удалось перименовать

Inquire Now

Share this post


Link to post
Share on other sites

у меня не удалось перименовать

Inquire Now

почему?

там прямо на кнопке написано. открываешь xml в notepad++, нажимаешь ctrl+H и заменяшь все Inquire Now на Свой_текст

Share this post


Link to post
Share on other sites

Решено. проблема была в том что нужно сохранять в utf без boom, иначе модуль просто перестает работтаь

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
You are posting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.