Challenge 2: making elements on page work together
This commit is contained in:
parent
fd2bdce270
commit
9b7396cb93
@ -44,9 +44,9 @@ public class ShopEndpoint {
|
|||||||
|
|
||||||
public ShopEndpoint() {
|
public ShopEndpoint() {
|
||||||
List<CheckoutCode> codes = Lists.newArrayList();
|
List<CheckoutCode> codes = Lists.newArrayList();
|
||||||
codes.add(new CheckoutCode("pre-order-webgoat", 25));
|
codes.add(new CheckoutCode("webgoat", 25));
|
||||||
codes.add(new CheckoutCode("pre-order-owasp", 25));
|
codes.add(new CheckoutCode("owasp", 25));
|
||||||
codes.add(new CheckoutCode("pre-order-webgoat-owasp", 50));
|
codes.add(new CheckoutCode("owasp-webgoat", 50));
|
||||||
this.checkoutCodes = new CheckoutCodes(codes);
|
this.checkoutCodes = new CheckoutCodes(codes);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -66,7 +66,7 @@
|
|||||||
action="/WebGoat/challenge/2"
|
action="/WebGoat/challenge/2"
|
||||||
enctype="application/json;charset=UTF-8">
|
enctype="application/json;charset=UTF-8">
|
||||||
<div class="container">
|
<div class="container">
|
||||||
|
<input id="discount" type="hidden" value="0"/>
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-xs-3 item-photo">
|
<div class="col-xs-3 item-photo">
|
||||||
<img style="max-width:100%;" th:src="@{/images/samsung-black.jpg}"/>
|
<img style="max-width:100%;" th:src="@{/images/samsung-black.jpg}"/>
|
||||||
@ -117,7 +117,7 @@
|
|||||||
</h6>
|
</h6>
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
Checkout code: pre-order-webgoat, pre-order-owasp, pre-order-webgoat-owasp
|
Checkout code: webgoat, owasp, owasp-webgoat
|
||||||
-->
|
-->
|
||||||
<input name="checkoutCode" class="checkoutCode" value=""/>
|
<input name="checkoutCode" class="checkoutCode" value=""/>
|
||||||
|
|
||||||
|
@ -14,35 +14,51 @@ $(document).ready(function () {
|
|||||||
|
|
||||||
//-- Click on QUANTITY
|
//-- Click on QUANTITY
|
||||||
$(".btn-minus").on("click", function () {
|
$(".btn-minus").on("click", function () {
|
||||||
var now = $(".section > div > input").val();
|
var now = $(".quantity").val();
|
||||||
if ($.isNumeric(now)) {
|
if ($.isNumeric(now)) {
|
||||||
if (parseInt(now) - 1 > 0) {
|
if (parseInt(now) - 1 > 0) {
|
||||||
now--;
|
now--;
|
||||||
}
|
}
|
||||||
$(".quantity").val(now);
|
$(".quantity").val(now);
|
||||||
|
$('#price').text(now * 899);
|
||||||
} else {
|
} else {
|
||||||
$(".quantity").val("1");
|
$(".quantity").val("1");
|
||||||
|
$('#price').text(899);
|
||||||
}
|
}
|
||||||
|
calculate();
|
||||||
})
|
})
|
||||||
$(".btn-plus").on("click", function () {
|
$(".btn-plus").on("click", function () {
|
||||||
var now = $(".section > div > input").val();
|
var now = $(".quantity").val();
|
||||||
if ($.isNumeric(now)) {
|
if ($.isNumeric(now)) {
|
||||||
$(".quantity").val(parseInt(now) + 1);
|
$(".quantity").val(parseInt(now) + 1);
|
||||||
} else {
|
} else {
|
||||||
$(".quantity").val("1");
|
$(".quantity").val("1");
|
||||||
}
|
}
|
||||||
|
calculate();
|
||||||
})
|
})
|
||||||
$(".checkoutCode").on("blur", function () {
|
$(".checkoutCode").on("blur", function () {
|
||||||
var checkoutCode = $(".checkoutCode").val();
|
var checkoutCode = $(".checkoutCode").val();
|
||||||
$.get("challenge-store/coupons/" + checkoutCode, function (result, status) {
|
$.get("challenge-store/coupons/" + checkoutCode, function (result, status) {
|
||||||
var discount = result.discount;
|
var discount = result.discount;
|
||||||
if (discount > 0) {
|
if (discount > 0) {
|
||||||
var price = $('#price').val();
|
$('#discount').text(discount);
|
||||||
$('#price').text((899 - (899 * discount / 100)).toFixed(2));
|
calculate();
|
||||||
} else {
|
} else {
|
||||||
$('#price').text(899);
|
$('#discount').text(0);
|
||||||
|
calculate();
|
||||||
}
|
}
|
||||||
|
|
||||||
});
|
});
|
||||||
})
|
})
|
||||||
|
|
||||||
|
function calculate() {
|
||||||
|
var d = $('#discount').text();
|
||||||
|
var price = $('#price').val();
|
||||||
|
var quantity = parseInt($(".quantity").val());
|
||||||
|
if (d > 0) {
|
||||||
|
$('#price').text((quantity * (899 - (899 * d / 100))).toFixed(2));
|
||||||
|
|
||||||
|
} else {
|
||||||
|
$('#price').text(quantity * 899);
|
||||||
|
}
|
||||||
|
}
|
||||||
})
|
})
|
Loading…
x
Reference in New Issue
Block a user