git add stuff

This commit is contained in:
Alan
2026-02-14 19:50:25 +03:00
parent 5c3329238b
commit 3942076805
1130 changed files with 120023 additions and 6 deletions

View File

@@ -0,0 +1,859 @@
{capture name=tabs}
<li class="active"><a href="{url module=ProductsAdmin category_id=$product->category_id return=null brand_id=null id=null}">Товары</a></li>
{if in_array('categories', $manager->permissions)}<li><a href="index.php?module=CategoriesAdmin">Категории</a></li>{/if}
{if in_array('brands', $manager->permissions)}<li><a href="index.php?module=BrandsAdmin">Бренды</a></li>{/if}
{if in_array('features', $manager->permissions)}<li><a href="index.php?module=FeaturesAdmin">Свойства</a></li>{/if}
{/capture}
{if $product->id}
{$meta_title = $product->name scope=parent}
{else}
{$meta_title = 'Новый товар' scope=parent}
{/if}
{* Подключаем Tiny MCE *}
{include file='tinymce_init.tpl'}
{* On document load *}
{literal}
<script src="design/js/autocomplete/jquery.autocomplete-min.js"></script>
<style>
.autocomplete-w1 {position:absolute; top:0px; left:0px; margin:6px 0 0 6px; /* IE6 fix: */ _background:none; _margin:1px 0 0 0; }
.autocomplete { border:1px solid #999; background:#FFF; cursor:default; text-align:left; overflow-x:auto; min-width: 300px; overflow-y: auto; margin:-6px 6px 6px -6px; /* IE6 specific: */ _height:350px; _margin:0; _overflow-x:hidden; }
.autocomplete .selected { background:#F0F0F0; }
.autocomplete div { padding:2px 5px; white-space:nowrap; }
.autocomplete strong { font-weight:normal; color:#3399FF; }
</style>
<script>
$(function() {
// Добавление категории
$('#product_categories .add').click(function() {
$("#product_categories ul li:last").clone(false).appendTo('#product_categories ul').fadeIn('slow').find("select[name*=categories]:last").focus();
$("#product_categories ul li:last span.add").hide();
$("#product_categories ul li:last span.delete").show();
return false;
});
// Удаление категории
$("#product_categories .delete").live('click', function() {
$(this).closest("li").fadeOut(200, function() { $(this).remove(); });
return false;
});
// Сортировка вариантов
$("#variants_block").sortable({ items: '#variants ul' , axis: 'y', cancel: '#header', handle: '.move_zone' });
// Сортировка вариантов
$("table.related_products").sortable({ items: 'tr' , axis: 'y', cancel: '#header', handle: '.move_zone' });
// Сортировка связанных товаров
$(".sortable").sortable({
items: "div.row",
tolerance:"pointer",
scrollSensitivity:40,
opacity:0.7,
handle: '.move_zone'
});
// Сортировка изображений
$(".images ul").sortable({ tolerance: 'pointer'});
// Удаление изображений
$(".images a.delete").live('click', function() {
$(this).closest("li").fadeOut(200, function() { $(this).remove(); });
return false;
});
// Загрузить изображение с компьютера
$('#upload_image').click(function() {
$("<input class='upload_image' name=images[] type=file multiple>").appendTo('div#add_image').focus().click();
});
// Или с URL
$('#add_image_url').click(function() {
$("<input class='remote_image' name=images_urls[] type=text value='http://'>").appendTo('div#add_image').focus().select();
});
// Удаление варианта
$('a.del_variant').click(function() {
if($("#variants ul").size()>1)
{
$(this).closest("ul").fadeOut(200, function() { $(this).remove(); });
}
else
{
$('#variants_block .variant_name input[name*=variant][name*=name]').val('');
$('#variants_block .variant_name').hide('slow');
$('#variants_block').addClass('single_variant');
}
return false;
});
// Загрузить файл к варианту
$('#variants_block a.add_attachment').click(function() {
$(this).hide();
$(this).closest('li').find('div.browse_attachment').show('fast');
$(this).closest('li').find('input[name*=attachment]').attr('disabled', false);
return false;
});
// Удалить файл к варианту
$('#variants_block a.remove_attachment').click(function() {
closest_li = $(this).closest('li');
closest_li.find('.attachment_name').hide('fast');
$(this).hide('fast');
closest_li.find('input[name*=delete_attachment]').val('1');
closest_li.find('a.add_attachment').show('fast');
return false;
});
// Добавление варианта
var variant = $('#new_variant').clone(true);
$('#new_variant').remove().removeAttr('id');
$('#variants_block span.add').click(function() {
if(!$('#variants_block').is('.single_variant'))
{
$(variant).clone(true).appendTo('#variants').fadeIn('slow').find("input[name*=variant][name*=name]").focus();
}
else
{
$('#variants_block .variant_name').show('slow');
$('#variants_block').removeClass('single_variant');
}
return false;
});
//
// Добавление значения варианта
$('#variants_block span.addv').live('click', function() {
var vli = $(this).parent().parent().parent();
var opt = $(vli).find('div.new div.line').clone(true);
var toa = $(vli).find('div.currect');
$(opt).clone(true).appendTo(toa).fadeIn('slow').find("input").focus();
return false;
});
//
$('#variants_block a.delete').live('click', function() {
$(this).closest('div.line').fadeOut(200, function() { $(this).remove(); });
return false;
});
function show_category_features(category_id)
{
$('ul.prop_ul li').hide();
if(categories_features[category_id] !== undefined)
{
$('ul.prop_ul li').filter(function(){return jQuery.inArray($(this).attr("feature_id"), categories_features[category_id])>-1;}).show();
}
}
// Изменение набора свойств при изменении категории
$('select[name="categories[]"]:first').change(function() {
show_category_features($("option:selected",this).val());
});
show_category_features($('select[name="categories[]"]:first option:selected').val());
// Добавление нового свойства товара
var feature = $('#new_feature').clone(true);
$('#new_feature').remove().removeAttr('id');
$('#add_new_feature').click(function() {
$(feature).clone(true).appendTo('ul.new_features').fadeIn('slow').find("input[name*=new_feature_name]").focus();
return false;
});
// Удаление связанноq статьи
$(".related_articles a.delete").live('click', function() {
$(this).closest("div.row").fadeOut(200, function() { $(this).remove(); });
return false;
});
// Добавление связанной статьи
var new_related_article = $('#new_related_article').clone(true);
$('#new_related_article').remove().removeAttr('id');
$("input#related_articles").autocomplete({
serviceUrl:'ajax/search_articles.php',
minChars:0,
noCache: false,
onSelect:
function(value, data){
new_item = new_related_article.clone().appendTo('.related_articles');
new_item.removeAttr('id');
new_item.find('a.related_article_name').html(data.name);
new_item.find('a.related_article_name').attr('href', 'index.php?module=ArticleAdmin&id='+data.id);
new_item.find('input[name*="related_articles"]').val(data.id);
$("#related_articles").val('');
new_item.show();
},
fnFormatResult:
function(value, data, currentValue){
var reEscape = new RegExp('(\\' + ['/', '.', '*', '+', '?', '|', '(', ')', '[', ']', '{', '}', '\\'].join('|\\') + ')', 'g');
var pattern = '(' + currentValue.replace(reEscape, '\\$1') + ')';
return value.replace(new RegExp(pattern, 'gi'), '<strong>$1<\/strong>');
}
});
// Удаление связанного товара
$(".related_products a.delete").live('click', function() {
$(this).closest("div.row").fadeOut(200, function() { $(this).remove(); });
return false;
});
// Подсказки для свойств
$('input[name*="options"]').each(function(index) {
f_id = $(this).closest('li').attr('feature_id');
ac = $(this).autocomplete({
serviceUrl:'ajax/options_autocomplete.php',
minChars:0,
params: {feature_id:f_id},
noCache: false
});
});
// Удаление связанного товара
$(".related_products a.delete").live('click', function() {
$(this).closest("div.row").fadeOut(200, function() { $(this).remove(); });
return false;
});
// Добавление связанного товара
var new_related_product = $('#new_related_product').clone(true);
$('#new_related_product').remove().removeAttr('id');
$("input#related_products").autocomplete({
serviceUrl:'ajax/search_products.php',
minChars:0,
noCache: false,
onSelect:
function(value, data){
new_item = new_related_product.clone().appendTo('.related_products');
new_item.removeAttr('id');
new_item.find('a.related_product_name').html(data.name);
new_item.find('a.related_product_name').attr('href', 'index.php?module=ProductAdmin&id='+data.id);
new_item.find('input[name*="related_products"]').val(data.id);
if(data.image)
new_item.find('img.product_icon').attr("src", data.image);
else
new_item.find('img.product_icon').remove();
$("#related_products").val('');
new_item.show();
},
fnFormatResult:
function(value, data, currentValue){
var reEscape = new RegExp('(\\' + ['/', '.', '*', '+', '?', '|', '(', ')', '[', ']', '{', '}', '\\'].join('|\\') + ')', 'g');
var pattern = '(' + currentValue.replace(reEscape, '\\$1') + ')';
return (data.image?"<img align=absmiddle src='"+data.image+"'> ":'') + value.replace(new RegExp(pattern, 'gi'), '<strong>$1<\/strong>');
}
});
// infinity
$("input[name*=variant][name*=stock]").focus(function() {
if($(this).val() == '∞')
$(this).val('');
return false;
});
$("input[name*=variant][name*=stock]").blur(function() {
if($(this).val() == '')
$(this).val('∞');
});
// Волшебные изображения
name_changed = false;
$("input[name=name]").change(function() {
name_changed = true;
images_loaded = 0;
});
images_num = 8;
images_loaded = 0;
old_wizar_dicon_src = $('#images_wizard img').attr('src');
$('#images_wizard').click(function() {
$('#images_wizard img').attr('src', 'design/images/loader.gif');
if(name_changed)
$('div.images ul li.wizard').remove();
name_changed = false;
key = $('input[name=name]').val();
$.ajax({
url: "ajax/get_images.php",
data: {keyword: key, start: images_loaded},
dataType: 'json',
success: function(data){
for(i=0; i<Math.min(data.length, images_num); i++)
{
image_url = data[i];
$("<li class=wizard><a href='' class='delete'><img src='design/images/cross-circle-frame.png'></a><a href='"+image_url+"' target=_blank><img onerror='$(this).closest(\"li\").remove();' width=100 src='"+image_url+"' /><input name=images_urls[] type=hidden value='"+image_url+"'></a></li>").appendTo('div .images ul');
}
$('#images_wizard img').attr('src', old_wizar_dicon_src);
images_loaded += images_num;
}
});
return false;
});
// Волшебное описание
name_changed = false;
$("input[name=name]").change(function() {
name_changed = true;
});
old_prop_wizard_icon_src = $('#properties_wizard img').attr('src');
$('#properties_wizard').click(function() {
$('#properties_wizard img').attr('src', 'design/images/loader.gif');
if(name_changed)
$('div.images ul li.wizard').remove();
name_changed = false;
key = $('input[name=name]').val();
$.ajax({
url: "ajax/get_info.php",
data: {keyword: key},
dataType: 'json',
success: function(data){
if(data)
{
$('li#new_feature').remove();
for(i=0; i<data.options.length; i++)
{
option_name = data.options[i].name;
option_value = data.options[i].value;
// Добавление нового свойства товара
exists = false;
if(!$('label.property:visible:contains('+option_name+')').closest('li').find('input[name*=options]').val(option_value).length)
{
f = $(feature).clone(true);
f.find('input[name*=new_features_names]').val(option_name);
f.find('input[name*=new_features_values]').val(option_value);
f.appendTo('ul.new_features').fadeIn('slow');
}
}
}
$('#properties_wizard img').attr('src', old_prop_wizard_icon_src);
},
error: function(xhr, textStatus, errorThrown){
alert("Error: " +textStatus);
}
});
return false;
});
// Автозаполнение мета-тегов
meta_title_touched = true;
meta_keywords_touched = true;
meta_description_touched = true;
url_touched = false;
update = {/literal}{if $product->url}true;{else}false;{/if}{literal}
if($('input[name="meta_title"]').val() == generate_meta_title() || $('input[name="meta_title"]').val() == '')
meta_title_touched = false;
if($('input[name="meta_keywords"]').val() == generate_meta_keywords() || $('input[name="meta_keywords"]').val() == '')
meta_keywords_touched = false;
if($('textarea[name="meta_description"]').val() == generate_meta_description() || $('textarea[name="meta_description"]').val() == '')
meta_description_touched = false;
if($('input[name="url"]').val() == generate_url() || $('input[name="url"]').val() == '') url_touched = false;
$('input[name="meta_title"]').change(function() { meta_title_touched = true; });
$('input[name="meta_keywords"]').change(function() { meta_keywords_touched = true; });
$('textarea[name="meta_description"]').change(function() { meta_description_touched = true; });
$('input[name="url"]').change(function() { url_touched = true; });
$('input[name="name"]').keyup(function() { set_meta(); });
$('select[name="brand_id"]').change(function() { set_meta(); });
$('select[name="categories[]"]').change(function() { set_meta(); });
});
function set_meta()
{
if(!meta_title_touched)
// $('input[name="meta_title"]').val(generate_meta_title());
if(!meta_keywords_touched)
// $('input[name="meta_keywords"]').val(generate_meta_keywords());
if(!meta_description_touched)
// $('textarea[name="meta_description"]').val(generate_meta_description());
if(!url_touched && !update)
$('input[name="url"]').val(generate_url());
}
function generate_meta_title()
{
name = $('input[name="name"]').val();
return name;
}
function generate_meta_keywords()
{
name = $('input[name="name"]').val();
result = name;
brand = $('select[name="brand_id"] option:selected').attr('brand_name');
if(typeof(brand) == 'string' && brand!='')
result += ', '+brand;
$('select[name="categories[]"]').each(function(index) {
c = $(this).find('option:selected').attr('category_name');
if(typeof(c) == 'string' && c != '')
result += ', '+c;
});
return result;
}
function generate_meta_description()
{ return '';
if(typeof(tinyMCE.get("annotation")) =='object')
{
description = tinyMCE.get("annotation").getContent().replace(/(<([^>]+)>)/ig," ").replace(/(\&nbsp;)/ig," ").replace(/^\s+|\s+$/g, '').substr(0, 512);
return description;
}
else
return $('textarea[name=annotation]').val().replace(/(<([^>]+)>)/ig," ").replace(/(\&nbsp;)/ig," ").replace(/^\s+|\s+$/g, '').substr(0, 512);
}
function generate_url()
{
url = $('input[name="name"]').val();
url = url.replace(/[\s]+/gi, '-');
url = translit(url);
url = url.replace(/[^0-9a-z_\-]+/gi, '').toLowerCase();
return url;
}
function translit(str)
{
var ru=("А-а-Б-б-В-в-Ґ-ґ-Г-г-Д-д-Е-е-Ё-ё-Є-є-Ж-ж-З-з-И-и-І-і-Ї-ї-Й-й-К-к-Л-л-М-м-Н-н-О-о-П-п-Р-р-С-с-Т-т-У-у-Ф-ф-Х-х-Ц-ц-Ч-ч-Ш-ш-Щ-щ-Ъ-ъ-Ы-ы-Ь-ь-Э-э-Ю-ю-Я-я").split("-")
var en=("A-a-B-b-V-v-G-g-G-g-D-d-E-e-E-e-E-e-ZH-zh-Z-z-I-i-I-i-I-i-J-j-K-k-L-l-M-m-N-n-O-o-P-p-R-r-S-s-T-t-U-u-F-f-H-h-TS-ts-CH-ch-SH-sh-SCH-sch-'-'-Y-y-'-'-E-e-YU-yu-YA-ya").split("-")
var res = '';
for(var i=0, l=str.length; i<l; i++)
{
var s = str.charAt(i), n = ru.indexOf(s);
if(n >= 0) { res += en[n]; }
else { res += s; }
}
return res;
}
</script>
<style>
.ui-autocomplete{
background-color: #ffffff; width: 100px; overflow: hidden;
border: 1px solid #e0e0e0;
padding: 5px;
}
.ui-autocomplete li.ui-menu-item{
overflow: hidden;
white-space:nowrap;
display: block;
}
.ui-autocomplete a.ui-corner-all{
overflow: hidden;
white-space:nowrap;
display: block;
}
</style>
{/literal}
{if $message_success}
<!-- Системное сообщение -->
<div class="message message_success">
<span>{if $message_success=='added'}Товар добавлен{elseif $message_success=='updated'}Товар изменен{else}{$message_success|escape}{/if}</span>
<a class="link" target="_blank" href="../products/{$product->url}">Открыть товар на сайте</a>
{if $smarty.get.return}
<a class="button" href="{$smarty.get.return}">Вернуться</a>
{/if}
</div>
<!-- Системное сообщение (The End)-->
{/if}
{if $message_error}
<!-- Системное сообщение -->
<div class="message message_error">
<span>{if $message_error=='url_exists'}Товар с таким адресом уже существует{elseif $message_error=='empty_name'}Введите название{else}{$message_error|escape}{/if}</span>
{if $smarty.get.return}
<a class="button" href="{$smarty.get.return}">Вернуться</a>
{/if}
</div>
<!-- Системное сообщение (The End)-->
{/if}
<!-- Основная форма -->
<form method=post id=product enctype="multipart/form-data">
<input type=hidden name="session_id" value="{$smarty.session.id}">
<div id="name">
<input class="name" name=name type="text" value="{$product->name|escape}"/>
<input name=id type="hidden" value="{$product->id|escape}"/>
<div class="checkbox">
<input name=visible value='1' type="checkbox" id="active_checkbox" {if $product->visible}checked{/if}/> <label for="active_checkbox">Активен</label>
</div>
<div class="checkbox">
<input name=featured value="1" type="checkbox" id="featured_checkbox" {if $product->featured}checked{/if}/> <label for="featured_checkbox">Рекомендуемый</label>
</div>
<div class="checkbox">
<input name=ym value='1' type="checkbox" id="ym" {if $product->product_id}{if $product->ym}checked="checked"{/if}{else}checked="checked"{/if}/> <label for="ym">ЯМ</label>
</div>
</div>
<div id="product_brand" {if !$brands}style='display:none;'{/if}>
<label>Бренд</label>
<select name="brand_id">
<option value='0' {if !$product->brand_id}selected{/if} brand_name=''>Не указан</option>
{foreach from=$brands item=brand}
<option {if !$brand->visible}style="color:#999"{/if} value='{$brand->id}' {if $product->brand_id == $brand->id}selected{/if} brand_name='{$brand->name|escape}'>{$brand->name|escape}</option>
{/foreach}
</select>
</div>
<div id="product_categories" {if !$categories}style='display:none;'{/if}>
<label>Категория</label>
<div>
<ul>
{foreach name=categories from=$product_categories item=product_category}
<li>
<select name="categories[]">
{function name=category_select level=0}
{foreach from=$categories item=category}
<option {if !$category->visible}style="color:#999"{/if} value='{$category->id}' {if $category->id == $selected_id}selected{/if} category_name='{$category->name|escape}'>{section name=sp loop=$level}&nbsp;&nbsp;&nbsp;&nbsp;{/section}{$category->name|escape}</option>
{category_select categories=$category->subcategories selected_id=$selected_id level=$level+1}
{/foreach}
{/function}
{category_select categories=$categories selected_id=$product_category->id}
</select>
<span {if not $smarty.foreach.categories.first}style='display:none;'{/if} class="add"><i class="dash_link">Дополнительная категория</i></span>
<span {if $smarty.foreach.categories.first}style='display:none;'{/if} class="delete"><i class="dash_link">Удалить</i></span>
</li>
{/foreach}
</ul>
</div>
</div>
<!-- Варианты товара -->
<div id="variants_block" {assign var=first_variant value=$product_variants|@first}{if $product_variants|@count <= 1 && !$first_variant->name}class=single_variant{/if}>
<ul id="header">
<li class="variant_move"></li>
<li class="variant_name">Название варианта</li>
<li class="variant_sku">Артикул</li>
<li class="variant_price">Цена, {$currency->sign}</li>
<li class="variant_discount">Старая, {$currency->sign}</li>
<li class="variant_amount">Кол-во</li>
<li class="variant_weight">Вес</li>
</ul>
<div id="variants">
{foreach from=$product_variants item=variant}
<ul>
<li class="variant_move"><div class="move_zone"></div></li>
<li class="variant_name"> <input name="variants[id][{$variant->id}]" type="hidden" value="{$variant->id|escape}" /><input name="variants[name][{$variant->id}]" type="" value="{$variant->name|escape}" /> <a class="del_variant" href=""><img src="design/images/cross-circle-frame.png" alt="" /></a></li>
<li class="variant_sku"> <input name="variants[sku][{$variant->id}]" type="text" value="{$variant->sku|escape}" /></li>
<li class="variant_price"> <input name="variants[price][{$variant->id}]" type="text" value="{$variant->price|escape}" /></li>
<li class="variant_discount"> <input name="variants[compare_price][{$variant->id}]" type="text" value="{$variant->compare_price|escape}" /></li>
<li class="variant_amount"> <input name="variants[stock][{$variant->id}]" type="text" value="{if $variant->infinity || $variant->stock == ''}{else}{$variant->stock|escape}{/if}" />{$settings->units}</li>
<li class="variant_weight"> <input name="variants[weight][{$variant->id}]" type="text" value="{$variant->weight|escape}" />кг</li>
<li class="variant_download">
{if $variant->attachment}
<span class=attachment_name>{$variant->attachment|truncate:25:'...':false:true}</span>
<a href='#' class=remove_attachment><img src='design/images/bullet_delete.png' title="Удалить цифровой товар"></a>
<input type=hidden name="delete_attachment[{$variant->id}]" value=''>
<a href='#' class=add_attachment style='display:none;'><img src="design/images/cd_add.png" title="Добавить цифровой товар" /></a>
{else}
<a href='#' class=add_attachment><img src="design/images/cd_add.png" title="Добавить цифровой товар" /></a>
{/if}
<div class=browse_attachment style='display:none;'>
<input disabled type=file name=attachment[{$variant->id}]>
</div>
</li>
<li class="variant_options">
<div class="options">
{if $features2}
{assign var=variant_id value=$variant->id}
<ul>
{foreach $features2 AS $f2}
{assign var=feature_id value=$f2->id}
<li class="frow">
<div class="currect">
<div class="line">
<label class=property>{$f2->name}</label>
<input type="text" class="simpla_inp" name="options2[{$feature_id}][]" value="{$options2.$variant_id.$feature_id[0]->value|escape}" />
{if $f2->multiselect}
<span class="addv"><i class="dash_link">Добавить значение</i></span>
{/if}
<p class="cl"></p>
</div>
{if $options2.$variant_id.$feature_id|count > 1}
{foreach $options2.$variant_id.$feature_id|cut as $ind=>$val}
<div class="line">
<strong>&nbsp;</strong>
<input type="text" class="simpla_inp" name="options2[{$feature_id}][]" value="{$options2.$variant_id.$feature_id.$ind->value|escape}" />
<a href="#" class="delete"></a>
<p class="cl"></p>
</div>
{/foreach}
{/if}
</div>
{if $f2->multiselect}
<div class="new" style='display:none;'>
<div class="line">
<strong>&nbsp;</strong>
<input type="text" class="simpla_inp" name="options2[{$feature_id}][]" value="" />
<a href="#" class="delete"></a>
<p class="cl"></p>
</div>
</div>
{/if}
</li>
<input type="hidden" name="options2[{$feature_id}][]" value="endoptions" />
{/foreach}
</ul>
{/if}
</div>
</li>
</ul>
{/foreach}
</div>
<ul id=new_variant style='display:none;'>
<li class="variant_move"><div class="move_zone"></div></li>
<li class="variant_name"><input name="variants[id][]" type="hidden" value="" /><input name="variants[name][]" type="" value="" /><a class="del_variant" href=""><img src="design/images/cross-circle-frame.png" alt="" /></a></li>
<li class="variant_sku"><input name="variants[sku][]" type="" value="" /></li>
<li class="variant_price"><input name="variants[price][]" type="" value="" /></li>
<li class="variant_discount"><input name="variants[compare_price][]" type="" value="" /></li>
<li class="variant_amount"><input name="variants[stock][]" type="" value="∞" />{$settings->units}</li>
<li class="variant_weight"><input name="variants[weight][]" type="" value="" />кг</li>
<li class="variant_download">
<a href='#' class=add_attachment><img src="design/images/cd_add.png" alt="" /></a>
<div class=browse_attachment style='display:none;'>
<input type=file name=attachment[]>
</div>
</li>
<li class="variant_options">
<div class="options">
{if $features2}
<ul>
{foreach $features2 AS $f2}
{assign var=feature_id value=$f2->id}
<li class="frow">
<div class="currect">
<div class="line">
<label class=property>{$f2->name}</label>
<input type="text" class="simpla_inp" name="options2[{$feature_id}][]" value="" />
{if $f2->multiselect}
<span class="addv"><i class="dash_link">Добавить значение</i></span>
{/if}
<p class="cl"></p>
</div>
</div>
<div class="new" style='display:none;'>
<div class="line">
<strong>&nbsp;</strong>
<input type="text" class="simpla_inp" name="options2[{$feature_id}][]" value="" />
<a href="#" class="delete"></a>
<p class="cl"></p>
</div>
</div>
</li>
<input type="hidden" name="options2[{$feature_id}][]" value="endoptions" />
{/foreach}
</ul>
{/if}
</div>
</li>
</ul>
<input class="button_green button_save" type="submit" name="" value="Сохранить" />
<span class="add" id="add_variant"><i class="dash_link">Добавить вариант</i></span>
</div>
<!-- Варианты товара (The End)-->
<!-- Левая колонка свойств товара -->
<div id="column_left">
<!-- Параметры страницы -->
<div class="block layer">
<h2>Параметры страницы</h2>
<ul>
<li><label class=property>Адрес</label><div class="page_url"> /products/</div><input name="url" class="page_url" type="text" value="{$product->url|escape}" /></li>
<li><label class=property>Заголовок</label><input name="meta_title" class="simpla_inp" type="text" value="{$product->meta_title|escape}" /></li>
<li><label class=property>H1</label><input name="product_h1" class="simpla_inp" type="text" value="{$product->product_h1|escape}" /></li>
<li><label class=property>Ключевые слова</label><input name="meta_keywords" class="simpla_inp" type="text" value="{$product->meta_keywords|escape}" /></li>
<li><label class=property>Описание</label><textarea name="meta_description" class="simpla_inp" />{$product->meta_description|escape}</textarea></li>
</ul>
</div>
<!-- Параметры страницы (The End)-->
<!-- Свойства товара -->
<script>
var categories_features = new Array();
{foreach from=$categories_features key=c item=fs}
categories_features[{$c}] = Array({foreach from=$fs item=f}'{$f}', {/foreach}0);
{/foreach}
</script>
<div class="block layer" {if !$categories}style='display:none;'{/if}>
<h2>Свойства товара
<a href="#" id=properties_wizard><img src="design/images/wand.png" alt="Подобрать автоматически" title="Подобрать автоматически"/></a>
</h2>
<ul class="prop_ul">
{foreach $features as $feature}
{assign var=feature_id value=$feature->id}
<li feature_id={$feature_id} style='display:none;'><label class=property>{$feature->name}</label><input class="simpla_inp" type="text" name=options[{$feature_id}] value="{$options.$feature_id->value|escape}" /></li>
{/foreach}
</ul>
<!-- Новые свойства -->
<ul class=new_features>
<li id=new_feature><label class=property><input type=text name=new_features_names[]></label><input class="simpla_inp" type="text" name=new_features_values[] /></li>
</ul>
<span class="add"><i class="dash_link" id="add_new_feature">Добавить новое свойство</i></span>
<input class="button_green button_save" type="submit" name="" value="Сохранить" />
</div>
<!-- Свойства товара (The End)-->
{*
<!-- Экспорт-->
<div class="block">
<h2>Экспорт товара</h2>
<ul>
<li><input id="exp_yad" type="checkbox" /> <label for="exp_yad">Яндекс Маркет</label> Бид <input class="simpla_inp" type="" name="" value="12" /> руб.</li>
<li><input id="exp_goog" type="checkbox" /> <label for="exp_goog">Google Base</label> </li>
</ul>
</div>
<!-- Свойства товара (The End)-->
*}
</div>
<!-- Левая колонка свойств товара (The End)-->
<!-- Правая колонка свойств товара -->
<div id="column_right">
<!-- Изображения товара -->
<div class="block layer images">
<h2>Изображения товара
<a href="#" id=images_wizard><img src="design/images/wand.png" alt="Подобрать автоматически" title="Подобрать автоматически"/></a>
</h2>
<ul>{foreach from=$product_images item=image}<li>
<a href='#' class="delete"><img src='design/images/cross-circle-frame.png'></a>
<img src="{$image->filename|resize:100:100}" alt="" />
<input type=hidden name='images[]' value='{$image->id}'>
</li>{/foreach}</ul>
<span class=upload_image><i class="dash_link" id="upload_image">Добавить изображение</i></span> или <span class=add_image_url><i class="dash_link" id="add_image_url">загрузить из интернета</i></span>
<div id=add_image></div>
</div>
<div class="block layer">
<h2>Связанные товары</h2>
<div id=list class="sortable related_products">
{foreach from=$related_products item=related_product}
<div class="row">
<div class="move cell">
<div class="move_zone"></div>
</div>
<div class="image cell">
<input type=hidden name=related_products[] value='{$related_product->id}'>
<a href="{url id=$related_product->id}">
<img class=product_icon src='{$related_product->images[0]->filename|resize:35:35}'>
</a>
</div>
<div class="name cell">
<a href="{url id=$related_product->id}">{$related_product->name}</a>
</div>
<div class="icons cell">
<a href='#' class="delete"></a>
</div>
<div class="clear"></div>
</div>
{/foreach}
<div id="new_related_product" class="row" style='display:none;'>
<div class="move cell">
<div class="move_zone"></div>
</div>
<div class="image cell">
<input type=hidden name=related_products[] value=''>
<img class=product_icon src=''>
</div>
<div class="name cell">
<a class="related_product_name" href=""></a>
</div>
<div class="icons cell">
<a href='#' class="delete"></a>
</div>
<div class="clear"></div>
</div>
</div>
<input type=text name=related id='related_products' class="input_autocomplete" placeholder='Выберите товар чтобы добавить его'>
</div>
<div class="block layer">
<h2>Связанные статьи</h2>
<div id=list class="related_articles">
{foreach from=$related_articles item=related_article}
<div class="row">
<div class="name cell">
<input type=hidden name=related_articles[] value='{$related_article->id}'>
<a href="{url id=$related_article->id}">{$related_article->name}</a>
</div>
<div class="icons cell">
<a href='#' class="delete"></a>
</div>
<div class="clear"></div>
</div>
{/foreach}
<div id="new_related_article" class="row" style='display:none;'>
<div class="name cell">
<input type=hidden name=related_articles[] value=''>
<a class="related_article_name" href=""></a>
</div>
<div class="icons cell">
<a href='#' class="delete"></a>
</div>
<div class="clear"></div>
</div>
</div>
<input type=text name=related id='related_articles' class="input_autocomplete" placeholder='Выберите статью чтобы добавить ее'>
</div>
<input class="button_green button_save" type="submit" name="" value="Сохранить" />
</div>
<!-- Правая колонка свойств товара (The End)-->
<!-- Описагние товара -->
<div class="block layer">
<h2>Краткое описание</h2>
<textarea name="annotation" class="editor_small">{$product->annotation|escape}</textarea>
</div>
<div class="block">
<h2>Полное описание</h2>
<textarea name="body" class="editor_large">{$product->body|escape}</textarea>
</div>
<!-- Описание товара (The End)-->
<input class="button_green button_save" type="submit" name="" value="Сохранить" />
</form>
<!-- Основная форма (The End) -->