﻿




function MakeModelDropDownHelper(makeDropDownPath, modelDropdownPath, modelDataUrl, makeDataUrl, predata) {
    var self = this;

    self.ModelDataUrl = modelDataUrl;
    self.MakeDataUrl = makeDataUrl;
  

   
    self.MakeDropDown = function () {
     
        return $(makeDropDownPath);

    }
    self.predata = function () {
     
        return $(predata);
    }

    self.ModelDropDown = function () {
       
        return $(modelDropdownPath);
    }

    self.Init = function () {

        self.WireUpDropDownEvents();

    }



    self.WireUpDropDownEvents = function () {
        self.MakeDropDown().bind('change', self.OnSelectMake);
        //self.predata().bind('onclick', self.OnSelectpredata);


        $('#Crit_Predata1').live('click', function () { self.OnSelectpredata() });


    }

    self.OnSelectpredata = function (e, callback) {

      
        var dropDown = self.predata()[0];
        var predata = self.predata().val();
        var title = self.predata().attr("checked");

       // var predata1 = self.predata().checked();
       
        var url = self.MakeDataUrl + "?Predata=" + title;
      
        $.getJSON(url, function (json) {
            self.PopulateMakes(json);
            if (callback != null) {
              
                callback();
            }
        });

    }
    self.OnSelectMake = function (e, callback) {

      
        var dropDown = self.MakeDropDown()[0];
        var make = self.MakeDropDown().val();

        var url = self.ModelDataUrl + "?make=" + make;
      
        $.getJSON(url, function (json) {
            self.PopulateModels(json);
            if (callback != null) {

                callback();
            }
        });

    }

    self.PopulateModels = function (models) {

        self.ModelDropDown()[0].options.length = 0;

        var option = new Option("Please Select", "");
        self.ModelDropDown()[0].options.add(option);

        PopulateDropdown(models, self.ModelDropDown(), false);



    }
    self.PopulateMakes = function (Makes) {

        self.MakeDropDown()[0].options.length = 0;

        var option = new Option("Please Select", "");
        self.MakeDropDown()[0].options.add(option);

        PopulateDropdown(Makes, self.MakeDropDown(), false);



    }




}

