Subversion Repositories SmartDukaan

Rev

Rev 30148 | Rev 30432 | Go to most recent revision | View as "text/plain" | Blame | Compare with Previous | Last modification | View Log | RSS feed

function createSchemeOnReady() {
        $("form#create-scheme-form input").each(function () {
                $(this).attr('autocomplete', 'off');
        });
        // validate the comment form when it is submitted
        $('#create-scheme-form').validate({
                rules: {
                        schemeName: {
                                required: true
                        },
                        schemeType: {
                                required: true
                        },
                        amountType: {
                                required:true
                        },
                        schemeAmount:{
                                required:true
                        },
                        startDate:{
                                required:true
                        },
                        endDate:{
                                required:true
                        },
                        itemIdsDescription:{
                                required:true
                        },
                        retailerIds:{
                                required:true
                        }
                },
                messages:{
                        name:{
                                required:"Please enter the name"
                        },
                        schemeType:{
                                required:"Please choose type"
                        },
                        amountType:{
                                required: "Please choose amount type"
                        },
                        schemeAmount:{
                                required: "Please enter the amount"
                        },
                        startDate:{
                                require: "Please choose start date"
                        },
                        endDate:{
                                require: "Please choose end date"
                        },
                        itemIdsDescription:{
                                required: "Please choose items"
                        },
                        retailerIds:{
                                required: "Please enter retailer ids"
                        }
                },
                submitHandler: function (form, event) {
                        event.preventDefault();
                        if(validateSchemeDetails()){
                                alert("Please fix errors");
                                return false;
                        }
                        let json = schemeDetailsJson();
                        console.log("schemeJson = " + json);
                        if(confirm("Are you sure you want to create Scheme!") == true){
                                doPostAjaxRequestWithJsonHandler(context+"/createScheme", json, function(response){
                                        $('#main-content').html(response);
                                });
                     return false; // required to block normal submit since you used ajax
                        }
         }
        });

}


$('#retailerAll').on('change', function() {
    if (this.checked) {
        $('#retailerAll').val('true');
        $('#retailer-ids').html('');
    }else{
        $('#retailerAll').val('false');
        $('#retailer-ids').html('<input placeholder="Retailer Ids" id="retailerIds" name="retailerIds" type="text" value="" pattern="^[0-9]{1,10}(?:,[0-9]{1,10})*$" title="Comma Seperated Positive Integer Retailer Ids" class="form-control input-sm">');
    }
});


function validateSchemeDetails(){
        console.log("validating Scheme Details...");
        var error = false;
        var name = $("form#create-scheme-form input[name=schemeName]").val();
        console.log("schemeName = " + name);
        $("#schemeName").removeClass("border-highlight");
        if(name ==""){
                alert("Name is required");
                $("#schemeName").addClass("border-highlight");
                error = true;
                return error;
        }
        var schemeType = $("#schemeType option:selected").val();
        console.log("schemeType = " + schemeType);
        $("#schemeType").removeClass("border-highlight");
        if(schemeType == ""){
                alert("Please choose Scheme Type");
                $("#schemeType").addClass("border-highlight");
                error = true;
                return error;
        }
        var amountType = $("#amountType option:selected").val();
        console.log("amountType = " + amountType);
        $("#amountType").removeClass("border-highlight");
        if(amountType == ""){
                alert("Please choose Amount Type");
                $("#amountType").addClass("border-highlight");
                error = true;
                return error;
        }
        var amount = $("form#create-scheme-form input[name=schemeAmount]").val();
        console.log("amount = " + amount);
        $("#schemeAmount").removeClass("border-highlight");
        if (amount == ""){
                $("form#create-scheme-form input[name=schemeAmount]").val(0);
        }else if(amount <= 0){
                alert("Amount should be greater than 0");
                $("#schemeAmount").addClass("border-highlight");
                error = true;
                return error;
        }


        //$('#brand-value').text($(this).text());
        $("#tag-listing-brand-value").removeClass("border-highlight");
        if ($("#tag-listing-brand-value").text() == "Brands") {
                alert("Please choose Brand");
                $("#tag-listing-brand-value").addClass("border-highlight");
                error = true;
                return error;
        }

        $("select.catalogItemsDescription").removeClass("border-hightlight");
        var itemIdsString = $("select.catalogItemsDescription").val();
        debugger;
        if (itemIdsString == null) {
                alert("Please choose items");
                $("select.catalogItemsDescription").addClass("border-highlight");
                error = true;
                return error;
        }

        console.log("validation scheme error = " + error);
        return error;
}

function schemeDetailsJson(){
        var schemeObject = {};
        schemeObject['name'] = $("form#create-scheme-form input[name=schemeName]").val();
        schemeObject['description'] = $("form#create-scheme-form input[name=description]").val();
        schemeObject['type'] = $("#schemeType option:selected").val();
        schemeObject['amountType'] = $("#amountType option:selected").val();
        schemeObject['amount'] = $('#schemeAmount').val();
        schemeObject['partnerType'] = $('#retailerType').val();
        schemeObject['cashback'] = $("#cashbackScheme").is(":checked")
        schemeObject['schemeReversal'] = $("#schemeReversal").is(":checked")
        schemeObject['gstReversal'] = $("#gstReversal").is(":checked")
        schemeObject['startDate'] = $("#schemeDuration").data('daterangepicker').startDate.format(moment.HTML5_FMT.DATETIME_LOCAL_SECONDS);
        schemeObject['endDate'] = $("#schemeDuration").data('daterangepicker').endDate.format(moment.HTML5_FMT.DATETIME_LOCAL_SECONDS);
        schemeObject['catalogIds'] = [];
        schemeObject['catalogIds'] = $("select.catalogItemsDescription").val();
        return JSON.stringify(schemeObject);
}