$(document).ready(function () {
    $("body").off('click').on("click", '.remove', remove);
//    $(".tbody").on("blur", '.rate', autoAddRows);
    $("body").on("keyup focus blur", '.trqty, .rate, .amount', itemCal);
//    $("body").on("keyup focus blur", '.qty, .rate, .amount, .subtotal .discount, .discperc, .netamt', mainbCal);
    $("body").on("keyup focus blur", '.remark', autoAddRows);
    $("body").on("keyup focus blur change", '.itemcode', GetItemFromCode);
    $("body").on("change", '.item', showDetail);
        $('body').on('blur change', '.yard,.qty', getMeters);

    function getMeters() {
        var tr = $(this).closest("tr"),
                yard = tr.find(".yard").val(),
                qty = tr.find(".qty").val();
        if (qty <= 0 || qty == '') {
            qty = yard * 0.914;
        }
        tr.find(".qty").val(qty);

    }

    function GetItemFromCode() {
        var $row = $(this).closest("tr");
        var itemcode = $row.find(".itemcode").val();
        $.post('show_item_dtl.php', {itemcode: itemcode}, function (data) {
            if (data != '') {
                $row.find(".item").html(data);
//                $row.find(".item").focus();
            }
        });
    }

    //getting rate from item
//     function showDetail() {
//         var tr = $(this).closest("tr");
//         var name = tr.find('.item').val();
//         $.ajax({
//             type: 'GET',
//             dataType: 'json',
// //                url         : "get_itemrate_dtl.php",
//             url: "get_itemrate_dtl.php",
//             data: "name=" + name + "",
//             success: function (response) {
//                 var code = response.code;
//                 var rate = response.rate;
//                 var msp = response.msp;
//                 var mrp = response.mrp;
//                 $(tr.find('.itemcode')).val(code);
//                 $(tr.find('.rate')).val(rate);
//                 $(tr.find('.msp')).val(msp);
//                 $(tr.find('.mrp')).val(mrp);
//             },
//             error: function (request, textStatus, errorThrown) {
//                 alert(errorThrown);
//             }
//         });
//     }

    function showDetail() {
        var tr = $(this).closest("tr"),
            itemname = tr.find(".item").val(),
            color = tr.find(".color").val(),
            data = { itemname: itemname, color: color };

        $.ajax({
            type: 'GET',
            dataType: 'json',
            url: "getRawMsp.php?m=a",
            data: data,
            success: function (response) {
                var m = response;
                var type = m.type;
                if (type == 'A' || type == 'O') {
                    tr.find('.yard').attr('readonly', true);
                    tr.find('.meters').attr('readonly', true);
                    tr.find('.yard').val(0);
                    tr.find('.meters').val(0);

                } else {
                    tr.find('.qty').val(0);
                    tr.find('.unit').val('');
                }

                tr.find(".stqty").val(m.stqty);

                tr.find(".rawtype").val(type);
                tr.find(".barcode").val(itemname);
                tr.find(".mrp").val(m.mrp);
                tr.find(".hsncode").val(m.hsncode);
                tr.find(".rate").val(m.cost);
                tr.find(".ratebfdisc").val(m.rate);

            }
        });
    }

    $('#addnew').click(function () {
        AddRows();
    });

    function autoAddRows() {
        var ctr = $('#items').val();
        var tr = $(this).closest("tr");
        var srno = tr.find(".srno").val();
        if (srno == ctr) {
            AddRows();

        }
    }

    function remove() {
        $(this).closest("tr").remove();
    }

    function AddRows() {
        var ctr = $('#items').val();
        var hide_check = "";
        if ($("#del_all").prop("checked")) {
            hide_check = 0;
        } else {
            hide_check = 1;
        }
        var detail = ".fetchpart_" + ctr;
        $.post('inwardraw_add.php', {ctr: ctr, hide: hide_check}, function (data) {
            $(data).appendTo('.tbody');
            ctr++;
            $('#items').val(ctr);
            $(detail).select2();
        });
    }

    function itemCal() {
        var tr = $(this).closest("tr"),
                val = 0, val1 = 0;
//        var taka = tr.find(".taka").val();
        var trqty = tr.find(".qty").val();
        var rate = tr.find(".rate").val();
        var amount = trqty * rate;
        tr.find(".amount").val(amount.toFixed(2));

        $(".qty").each(function () {
            if (!isNaN(this.value) && this.value.length != 0) {
                val1 += parseFloat(this.value);
            }
        });
        var totq = parseFloat(val1);
        $('.totqty').val(totq);
        
        $(".amount").each(function () {
            if (!isNaN(this.value) && this.value.length != 0) {
                val += parseFloat(this.value);
            }
        });
        var tot = parseFloat(val);
        $('.totamt').val(tot);
//        mainbCal();
    }

//    function mainbCal() {
//        var tot = 0;
//        var val = 0;
//
//        $(".amount").each(function () {
//            if (!isNaN(this.value) && this.value.length != 0) {
//                val += parseFloat(this.value);
//            }
//        });
//        tot = parseFloat(val);
//        $('.subtotal').val(tot);
//
//        var discperc = $(".discperc").val();
//        var subtotal = $(".subtotal").val();
//        var totdisc = subtotal * discperc / 100;
//        $(".discount").val(totdisc);
//
//
//        var netamt = subtotal - totdisc;
//        if (isNaN(netamt)) {
//            var netamt = subtotal - totdisc;
//            $(".netamt").val(netamt);
//        } else {
//            $(".netamt").val(netamt);
//        }
//    }

//    $(document).keydown(function (event) {
//        //19 for Mac Command+S
//        if (!(String.fromCharCode(event.which).toLowerCase() == 's' && event.altKey) && !(event.which == 19))
//            return true;
//        //alert("Ctrl-s pressed");
//        $("#submit").click();
//        event.preventDefault();
//        return false;
//    });
});