JStore
by vovkasolovev
HTML
<button class="form_order_button" name="f5">F5</button>
<button class="form_order_button" name="f5">F5 2</button>
<button class="form_order_button" name="hepa">hepa</button>
<button class="form_order_button" name="carbon">carbon</button>
<button class="form_order_button" name="remote">remote</button>
<button class="form_order_button" name="co2">co2</button>
<button class="form_order_button" name="wifi">wifi</button>
<input class="tinkoffPayRow form_order_price" type="text" placeholder="Сумма заказа" name="amount" required>
<input class="tinkoffPayRow form_order_description" type="text" placeholder="Описание заказа" name="description">
<input class="tinkoffPayRow form_order_number" type="text" placeholder="Номер заказа" name="order" value="V80020">
CSS
button{display: block; border:2px solid gray;}
button.active{border-color: green; background: lightgreen;}
input{width: 100%; display: block;}
input, button{ margin: 0 5px 5px 0; padding: 5px; min-width: 150px; font-size: 16px}
JavaScript
// Store JS
$(document).ready(function() {
var sum_init = 29900;
var desc_init = 'AM2';
var numb_init = '—';
$( '.form_order_price').val(sum_init);
$( '.form_order_number').val(desc_init);
var options = {hour:'numeric', minute:'numeric', month: 'numeric', day: 'numeric' };
var today = new Date();
function makeId() {
var text = "";
var possible = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
for (var i = 0; i < 2; i++)
text += possible.charAt(Math.floor(Math.random() * possible.length));
return text;
}
//var order_number = '#'+makeId()+', '+today.toLocaleDateString("ru-RU", options)+' ';
var order_number =today.toLocaleDateString("ru-RU", options)+', ';
var store_items = {};
store_items.f5 = {price:1600, description:"F5"};
store_items.hepa = {price:2000, description:"НЕРА"};
store_items.carbon = {price:1600, description:"CARBON"};
store_items.remote = {price:1240, description:"ДУ"};
store_items.co2 = {price:6000, description:"CO2"};
store_items.wifi = {price:4000, description:"WiFi"};
$('.form_order_button').each(function() {
$(this).text(store_items[$(this).attr("name")].price+' ₽');
});
$('.form_order_button').click(function() {
if($(this).hasClass('active')){
$(this).removeClass('active');
} else {
$(this).addClass('active');
}
order_total();
});
function order_total() {
sum = sum_init;
desc = desc_init;
if($('.form_order_button.active').length > 0) {
$('.form_order_button.active').each(function() {
sum += store_items[$(this).attr("name")].price;
$( '.form_order_price').val(sum);
desc += ' '+store_items[$(this).attr("name")].description;
$( '.form_order_number').val(order_number+desc);
});
} else {
$( '.form_order_price').val(sum_init);
$( '.form_order_number').val(order_number+desc_init);
}
}
});