Subversion Repositories SmartDukaan

Rev

Rev 6400 | Rev 6536 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed

$(function(){
        $('#dth-image').click(function(){
                trackEventWithGA('Recharge', 'Recharge Type', 'DTH');
                $('#serviceType').val('2');
                $('#serviceSelectForm').submit();
        });
        $('#phone-image').click(function(){
                trackEventWithGA('Recharge', 'Recharge Type', 'Mobile');
                $('#serviceType').val('1');
                $('#serviceSelectForm').submit();
        });
        
        jQuery('#planDropDown').change(function() {
                jQuery('#planDescription').html(jQuery('#planDropDown option:selected').attr('desc'));
        });
        
        jQuery('.showDenomination').live("click", function() {
                var denominationType = jQuery(this).attr('denominationType');
                var operatorId = jQuery('#operatorSelector option:selected').val();
                var circleCode = jQuery('#circleCode').val();
                jQuery('#popularPlansInner').empty();
                $('#popularPlansInner').append('<div style="padding-top:90px;" align="center" class="img"><img title="loading" alt="loading" src="/images/loading.gif"></div>');
                jQuery('#popularPlansDiv').show();
                jQuery.ajax({
                type : "GET",
                url : "/recharge!getAllDenominations?operatorId=" + operatorId + "&circleCode=" + circleCode + "&denominationType=" + denominationType,
                success : function(response) {
                        jQuery('#popularPlansInner').empty();
                jQuery('#popularPlansInner').html(response);
                },
                        error : function() {
                                jQuery('#popularPlansInner').empty();
                                jQuery('#popularPlansInner').html("<div style='padding:15px;'>This information is unavailable for now.<br>You can recharge with the amount you normally use or you can try later.</div>");
                        }
                });                             
        });
        
        jQuery('.populateAmount').live("click", function() {
                jQuery('#amountInput').val(jQuery(this).text());
                jQuery('#popularPlansDiv').hide();
        });
        
        jQuery('#closePlans').click(function() {
                jQuery('#popularPlansDiv').hide();
        });
        
        $.validator.addMethod("rangeamount", function(value,element){   
                return value >= 10 && value <= 1000;
        }, "Recharge amount should be between Rs. 10-1000");
        
        $.validator.addMethod("rangeamount1", function(value,element){  
                return value >= 200 && value <= 10000;
        }, "Recharge amount should be between Rs. 200-10000");
        
        $.validator.addMethod("selectoperator", function(value,element){        
                return $(element).find("option:selected").index()!=0;
        }, "Please select operator");
        
        $('#atmSelection').validate({
                rules:{
                        name:{
                                required:true
                        },
                        line1:{
                                required:true
                        },
                        state:{
                                required:true
                        },
                        city:{
                                required:true
                        },
                        pincode:{
                                required:true,
                                digits:true
                        },
                        phone:{
                                required:true,
                                minlength:10,
                                digits:true
                        },
                },
                messages:{
                        name:{
                                required:"Please enter the name"
                        },
                        line1:{
                                required:"Please enter the address"
                        },
                        state:{
                                required: "Please select a state"
                        },
                        city:{
                                required: "Please enter the city"
                        },
                        pincode:{
                                required: "Please enter the pincode",
                                digits:"Please enter a valid pincode"
                        },
                        phone:{
                                required: "Please enter the phone number",
                                digits:"Please enter a valid number",
                                minlength:"Number should be of 10 digits"
                        }
                }
        });

        $('#ccSelection').validate({
                rules:{
                        name:{
                                required:true
                        },
                        line1:{
                                required:true
                        },
                        state:{
                                required:true
                        },
                        city:{
                                required:true
                        },
                        pincode:{
                                required:true,
                                digits:true
                        },
                        phone:{
                                required:true,
                                minlength:10,
                                digits:true
                        },
                },
                messages:{
                        name:{
                                required:"Please enter the name"
                        },
                        line1:{
                                required:"Please enter the address"
                        },
                        state:{
                                required: "Please select a state"
                        },
                        city:{
                                required: "Please enter the city"
                        },
                        pincode:{
                                required: "Please enter the pincode",
                                digits:"Please enter a valid pincode"
                        },
                        phone:{
                                required: "Please enter the phone number",
                                digits:"Please enter a valid number",
                                minlength:"Number should be of 10 digits"
                        }
                }
        });
        
        $('#bankSelection').validate({
                rules:{
                        name:{
                                required:true
                        },
                        line1:{
                                required:true
                        },
                        state:{
                                required:true
                        },
                        city:{
                                required:true
                        },
                        pincode:{
                                required:true,
                                digits:true
                        },
                        phone:{
                                required:true,
                                minlength:10,
                                digits:true
                        },
                },
                messages:{
                        name:{
                                required:"Please enter the name"
                        },
                        line1:{
                                required:"Please enter the address"
                        },
                        state:{
                                required: "Please select a state"
                        },
                        city:{
                                required: "Please enter the city"
                        },
                        pincode:{
                                required: "Please enter the pincode",
                                digits:"Please enter a valid pincode"
                        },
                        phone:{
                                required: "Please enter the phone number",
                                digits:"Please enter a valid number",
                                minlength:"Number should be of 10 digits"
                        }
                }
        });
        
        $('#rechargeDetailsForm').validate({
                rules:{
                        number:{
                                required:true,
                                minlength:10,
                                digits:true
                        },
                        dthnumber:{
                                required:true
                        },
                        amount:{
                                required:true,
                                digits:true,
                                rangeamount:true
                        },
                        dthamount:{
                                required:true,
                                digits:true,
                                rangeamount1:true
                        },
                        email:{
                                required:true,
                                email:true
                        },
                        operator:{
                                selectoperator:true
                        }
                },
                messages:{
                        number:{
                                required:"Please enter the mobile number",
                                digits:"Please enter a valid number",
                                minlength:"Number should be of 10 digits"
                        },
                        dthnumber:{
                                required:"Please enter the DTH number"
                        },
                        amount:{
                                required: "Please enter amount",
                                digits: "Recharge amount should be between Rs. 10-1000",
                                rangeamount:"Recharge amount should be between Rs. 10-1000"
                        },
                        dthamount:{
                                required: "Please enter amount",
                                digits: "Recharge amount should be between Rs. 200-10000",
                                rangeamount1:"Recharge amount should be between Rs. 200-10000"
                        },
                        operator:{
                                selectoperator:"Please select operator"
                        }
                        
                }
        });
        oldValue = "";
        $('#rechargeDetailsForm input[name="number"]').unbind('keyup blur').bind('keyup blur', function(){
                var numvalue = $(this).val().substring(0,4);
                var count = $(this).val().length;
                if(count==10 && oldValue != numvalue){
                        getRechargeProvider(numvalue, 1);
                        oldValue = numvalue; 
                        //$(this).unbind('keyup');
                }
        });
        
        function getRechargeProvider(deviceNumber, rechargeType){
                return $.ajax({
                        type: "POST",
                        url: "/recharge!getServiceProvider?deviceNumber=" + deviceNumber + "&serviceType=" + rechargeType,
                        success:function(msg){
                                if(msg != ""){
                                        var deviceNumberInfo = msg.split(":");
                                        $('#rechargeDetailsForm select[name="operator"]').val($.trim(deviceNumberInfo[0]));
                                        $('#circleCode').val($.trim(deviceNumberInfo[1]));
                                        $('#operatorSelector').trigger('change');
                                }
                        }
                });
        }
});