diff --git a/admin-dev/themes/default/template/controllers/specific_price_rule/helpers/form/form.tpl b/admin-dev/themes/default/template/controllers/specific_price_rule/helpers/form/form.tpl
index 38b6deff2..afcee7b7b 100755
--- a/admin-dev/themes/default/template/controllers/specific_price_rule/helpers/form/form.tpl
+++ b/admin-dev/themes/default/template/controllers/specific_price_rule/helpers/form/form.tpl
@@ -146,17 +146,27 @@ function toggle_condition_group(id_condition_group)
}
function add_condition(id_condition_group, type, value)
{
+ var id_condition = id_condition_group+'_'+type+'_'+value;
+ if (typeof conditions[id_condition] != 'undefined')
+ return false;
var condition = new Array();
condition.type = type;
condition.value = value;
condition.id_condition_group = id_condition_group;
- conditions.push(condition);
+ conditions[id_condition] = condition;
+ return id_condition;
+}
+function delete_condition(condition)
+{
+ delete conditions[condition];
+ $('#'+condition).remove();
+ return false;
}
function new_condition_group()
{
last_condition_group++;
var html = '
{l s='Condition group'} '+last_condition_group+'
';
- html += '
{l s='Type'}
{l s='Value'}
';
+ html += '
{l s='Type'}
{l s='Value'}
';
html += '
{l s='OR'}
';
$('#condition_group_list').append(html);
toggle_condition_group(last_condition_group);
@@ -170,9 +180,8 @@ $(document).ready(function() {
});
$('#specific_price_rule_form').live('submit', function(e) {
var html = '';
- $.each(conditions, function() {
- html += '';
- });
+ for (i in conditions)
+ html += '';
$('#conditions').append(html);
});
$('#id_feature').change(function() {
@@ -184,32 +193,42 @@ $(document).ready(function() {
$('#id_attribute_'+$(this).val()).show();
});
$('#add_condition_category').click(function() {
- add_condition(current_id_condition_group, 'category', $('#id_category option:selected').val());
- var html = '
{l s='Category'}
'+$('#id_category option:selected').html()+'
';
+ var id_condition = add_condition(current_id_condition_group, 'category', $('#id_category option:selected').val());
+ if (!id_condition)
+ return false;
+ var html = '
{l s='Category'}
'+$('#id_category option:selected').html()+'
';
$('#condition_group_'+current_id_condition_group+' table tbody').append(html);
return false;
});
$('#add_condition_manufacturer').click(function() {
- add_condition(current_id_condition_group, 'manufacturer', $('#id_manufacturer option:selected').val());
- var html = '
{l s='Manufacturer'}
'+$('#id_manufacturer option:selected').html()+'
';
+ var id_condition = add_condition(current_id_condition_group, 'manufacturer', $('#id_manufacturer option:selected').val());
+ if (!id_condition)
+ return false;
+ var html = '
{l s='Manufacturer'}
'+$('#id_manufacturer option:selected').html()+'
';
$('#condition_group_'+current_id_condition_group+' table tbody').append(html);
return false;
});
$('#add_condition_supplier').click(function() {
- add_condition(current_id_condition_group, 'supplier', $('#id_supplier option:selected').val());
- var html = '
{l s='Supplier'}
'+$('#id_supplier option:selected').html()+'
';
+ var id_condition = add_condition(current_id_condition_group, 'supplier', $('#id_supplier option:selected').val());
+ if (!id_condition)
+ return false;
+ var html = '
{l s='Supplier'}
'+$('#id_supplier option:selected').html()+'
';
$('#condition_group_'+current_id_condition_group+' table tbody').append(html);
return false;
});
$('#add_condition_attribute').click(function() {
- add_condition(current_id_condition_group, 'attribute', $('#id_attribute_'+$('#id_attribute_group option:selected').val()+' option:selected').val());
- var html = '