Перейти к содержимому


jorgovich

Регистрация: 29 Feb 2012
Offline Активность: Mar 10 2014 08:15 AM
-----

Мои темы

Webasyst Shop-script

23 April 2013 - 06:46 AM

Здравствуйте уважаемые форумчане!
Обратился ко мне человек с просьбой помочь настроить дополнительные характеристики в WebAsyst магазине, до этого я не сталкивался с этим скриптом, но бегло посмотрев его понял что отличия от Shopcms есть и причем зачастую удивился, что он вроде как даже более поддерживаемый разработчиком, но нет некоторых привычных вещей как в shopcms.
Вот с одной из них я и сталкнулся в Shopcms прописана такая штука что если дополнительная характеристика одна то выводить не селектом, а просто текстом, в Webasyste такого нет там выводится select в шаблоне. product_detailed.tpl.html разбит еще на вспомогательные шаблоны: product_params_fixed.html - отвечает за произвольные значения, product_params_selectable.html - отвечает за варианты значений.

Собственно есть просьба о помощи помогите написать условие по аналогии с shopcms что если характеристика одна то выводить не селектом а текстом вот код product_params_selectable.html:
{if !$CPT_CONSTRUCTOR_MODE}
<table>
{counter name='select_counter' start=0 skip=1 print=false assign='select_counter_var'}
{section name=i loop=$product_extra}
{if $product_extra[i].option_type != 0 }
{section name=k loop=$product_extra[i].option_show_times}
<tr>	
  <td>
   {$product_extra[i].name|escape:'html'}{if $product_extra[i].option_show_times > 1 }({counter name=option_show_times}):{else}:{/if}
  </td>
  <td>
   {counter name=select_counter assign=_cnt}
  <select name='option_{$_cnt}' class="product_option">
  <option value='' rel="0">{"str_not_defined"|translate|escape:'html'}</option>
   {section name=j loop=$product_extra[i].values_to_select}
   <option value='{$product_extra[i].values_to_select[j].variantID}' rel='{$product_extra[i].values_to_select[j].price_surplus}'
   {if $product_extra[i].values_to_select[j].variantID == $product_extra[i].variantID}selected="selected"{/if}>
	{$product_extra[i].values_to_select[j].option_value}
   </option>
   {/section}
   </select>
  </td>
</tr>
{/section}
{/if}
{/section}
</table>
{else}
<table>
<tr>	
<td>Color:   </td>
<td>

<select name='option_select_1_71' onchange='GetCurrentCurrency_71()'>
<option value='0.00:8'>
white
</option>
<option value='0.00:5'>

yellow
</option>
<option value='0.00:6'>
green
</option>
</select>
</td>
</tr>
</table>
{/if}
а вот кусок кода из Shopcms отвечающая за выборку шаблон product_detailed.tpl.html
	  <form action="index.php?productID={$product_info.productID}" method=post name="MainForm1_{$product_info.productID}">
			  {counter name='select_counter' start=0 skip=1 print=false assign='select_counter_var'}
			  {section name=i loop=$product_info.product_extra}
			  {if $product_info.product_extra[i].option_type eq 0 }
			  {$product_info.product_extra[i].name}: {$product_info.product_extra[i].option_value}<br>
			  {else}
			  {section name=k loop=$product_info.product_extra[i].option_show_times}
			  {$product_info.product_extra[i].name}{if $product_info.product_extra[i].option_show_times > 1} ({$smarty.section.k.index+1}):{else}:{/if}
			  {counter name=select_counter}
			  {if $product_info.product_extra[i].values_to_select_count == 1} <b>{$product_info.product_extra[i].values_to_select[0].option_value}</b><br>
			  <input type="hidden" name="option_select_{$select_counter_var}_{$product_info.productID}" value='{$product_info.product_extra[i].values_to_select[0].price_surplus}:{$product_info.product_extra[i].values_to_select[0].variantID}'>
			  {else}
			  {if $smarty.section.k.index == 0}
			  <select name='option_select_{$select_counter_var}_{$product_info.productID}' onchange='GetCurrentCurrency_{$product_info.productID}();' class="WCHhider">
			  
{section name=j loop=$product_info.product_extra[i].values_to_select}
				<option value='{$product_info.product_extra[i].values_to_select[j].price_surplus}:{$product_info.product_extra[i].values_to_select[j].variantID}' {if $product_info.product_extra[i].values_to_select[j].variantID eq $product_info.product_extra[i].variantID}selected{/if}>{$product_info.product_extra[i].values_to_select[j].option_value}</option>
			  
{/section}
			  </select>
			  <br>
			  {else}
			  <select name='option_select_{$select_counter_var}_{$product_info.productID}' onchange='GetCurrentCurrency_{$product_info.productID}();' class="WCHhider">
				<option value='0:-1'>{$smarty.const.NOT_DEFINED}</option>
			  
{section name=j loop=$product_info.product_extra[i].values_to_select}
				<option value='{$product_info.product_extra[i].values_to_select[j].price_surplus}:{$product_info.product_extra[i].values_to_select[j].variantID}'>{$product_info.product_extra[i].values_to_select[j].option_value}</option>
			  
{/section}
			  </select>
			  <br>
			  {/if}{/if}
			  {/section}
			  {/if}
			  {/section}
			</form>
			{if $product_info.product_extra_count > 0}
			<div class="fil"></div>
			{/if}
			{if $select_counter_var != 0}

Нужна помощь по синтаксису JS

12 April 2013 - 03:30 PM

Здравствуйте, пишу блок для ShopCms с формой поиска товаров с главной страницы, суть идеи простая подменить строку запроса в адресной строке, аналог расширенного поиска, не уверен что получится. Но вариантов для себя проще не увидел, так как не очень хорошо разбираюсь в цмс.
Вот код это шаблона блока вывода за основу брал AdvancedSearchInCategory
<form name='AdvancedSearchInCategory' method="GET" action="index.php" id="AdvancedSearchInCategory">
    <table cellspacing="1" cellpadding="0" width="100%" class="gre">
    <tr>
	  <td class="lt pad" align="right" style="white-space: nowrap">{$smarty.const.STRING_CATEGORY}:</td>
	  <td class="padt" align="left" width="100%"><select name='categoryID' id='formtext1' onChange="copyData('formtext1', 'formtext2')">		 
		  <option value='0'>{$smarty.const.ADMIN_PROMPT_TO_SELECT}</option>
		  <option value='2' >Категория 1</option>
		  <option value='3' >Категория 2</option>
		  <option value='4' >Категория 3</option>
		 </select>
<input type=hidden name='search_with_change_category_ability' value='yes'>
<input type=hidden name='categorySelect' id="formtext2" value=''>
	    </td>
    </tr>
	 <tr>
	  <td class="lt pad" align="right" style="white-space: nowrap">{$smarty.const.STRING_NAME}:</td>
	  <td class="padt" align="left" width="100%"><input type="text" name="search_name" size="50" value="{$search_name}"></td>
    </tr>
    <tr>
	  <td class="lt pad" align="right" style="white-space: nowrap">{$smarty.const.STRING_PRODUCT_PRICE}:</td>
	  <td class="padt" align="left" width="100%">{$smarty.const.STRING_PRICE_FROM} <input name="search_price_from" type="text" size="10" value="{$search_price_from}" > {$smarty.const.STRING_PRICE_TO} <input name="search_price_to" type="text" size="10" value="{$search_price_to}" > {$priceUnit}</td>
    </tr>
	 <tr>
	  <td class="lt pad" align="right" style="white-space: nowrap">Характеристика 1:</td>
	  <td class="padt" align="left" width="100%">
		  <select name='param_1'>
		  <option value='0'>{$smarty.const.STRING_UNIMPORTANT}</option>
		  <option value='Значение 1' selected>Значение 1</option>
	    </select>
   </td>
</tr><tr>
<td></td>
<td><input type="submit" value="Поиск" class="search_button" /></td>
</tr>
</table>
</form>
Теперь собственно скрипт отвечающий за подстановку, он работает, но проблемка возникла что мне нужно значение поля categoryID подставить в значение поля categorySelect, я попытался но в синтаксесе заплутал..
Код JS
{literal}
<script type="text/javascript">
  function copyData(id, target_id){ document.getElementById(target_id).value = document.getElementById(id).value; };

$(function() {
 
	 $(".search_button").click(function() {

		  if (document.AdvancedSearchInCategory.categorySelect.value != 0)
		  window.location = 'index.php?categoryID=' + '&search_with_change_category_ability=yes' + '&categorySelect=' + 'document.categorySelect.value' + '&search_name=' + document.search_name.value + 'search_price_from=' + document.search_price_from.value + '&search_price_to=' + document.search_price_to.value + '&param_1=' +  document.param_1.value;
		 }
		 return false;
	 });
});
</script>
{/literal}

Дополнительное поле в карточке товара видео на ютуб

19 March 2013 - 08:06 AM

Здравствуйте уважаемые форумчане, вот захотелось немножко разнообразить обслуживаемый мною магазин, а конкретно по каждому товару вставить интересное видео с ютуба о товаре, итак как я вижу реализацию, добавить дополнительное поле Видео с Ютуб, куда просто вставить код скопированного ролика.... Если кто добавлял дополнительные поля поделитесь решением в каких файлах делать изменения, нашел пока что в admin.php нужно менять пытаюсь отследить цепочку дальше...