Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on May 1st, 2012  |  syntax: None  |  size: 3.67 KB  |  hits: 13  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. object literal handling multiple instances
  2. SFAIC.ctrls.AddressEntry = {
  3.  
  4.     inputs : {
  5.  
  6.         city        : undefined,
  7.         cityState   : undefined,
  8.  
  9.         hidden : {
  10.  
  11.             city    : undefined,
  12.             state   : undefined
  13.  
  14.         },  
  15.  
  16.     },
  17.  
  18.     fn : {
  19.  
  20.         root : undefined,
  21.  
  22.         citySelected : function($ddl) {
  23.  
  24.             var $selected = $ddl.find(":selected");
  25.  
  26.             this.root.inputs.hidden.city.val($selected.val());          
  27.             this.root.inputs.hidden.state.val($selected.text().split(", ")[1]);
  28.  
  29.         }
  30.  
  31.     },
  32.  
  33.     init : function(addressId) {
  34.  
  35.         var self    = this,
  36.             fn      = self.fn,
  37.             inputs  = self.inputs,
  38.             hidden  = inputs.hidden;
  39.  
  40.             inputs.city         = SFAIC.fn.getContentElement(addressId + "_ddlCity",                SFAIC.$updatePanel);
  41.             inputs.cityState    = SFAIC.fn.getContentElement(addressId + "_ddlCityStateLocked",     SFAIC.$updatePanel);
  42.             hidden.city         = SFAIC.fn.getContentElement(addressId + "_txtCity",                SFAIC.$updatePanel);
  43.             hidden.state        = SFAIC.fn.getContentElement(addressId + "_txtState",               SFAIC.$updatePanel);
  44.  
  45.             fn.root = this;
  46.  
  47.         inputs.city.change(function() { fn.citySelected($(this)); });
  48.         inputs.cityState.change(function() { fn.citySelected($(this)); });
  49.  
  50.     }
  51.  
  52. };
  53.        
  54. SFAIC.pages.salesProcess.Applicant = {
  55.  
  56.     init : function() {        
  57.  
  58.         SFAIC.ctrls.AddressEntry.init("AddressGarage");
  59.         SFAIC.ctrls.AddressEntry.init("AddressMailing");
  60.  
  61.     }
  62.  
  63. };
  64.        
  65. SFAIC.ctrls.AddressEntry = function(addressId) {
  66.  
  67.     var ctrl = {
  68.  
  69.             inputs : {
  70.  
  71.                 city        : undefined,
  72.                 cityState   : undefined,
  73.  
  74.                 hidden : {
  75.  
  76.                     city    : undefined,
  77.                     state   : undefined
  78.  
  79.                 },  
  80.  
  81.             },
  82.  
  83.             fn : {
  84.  
  85.                 root : undefined,
  86.  
  87.                 citySelected : function($ddl) {
  88.  
  89.                     var $selected = $ddl.find(":selected");
  90.  
  91.                     this.root.inputs.hidden.city.val($selected.val());          
  92.                     this.root.inputs.hidden.state.val($selected.text().split(", ")[1]);
  93.  
  94.                 }
  95.  
  96.             },
  97.  
  98.             init : function(addressId) {
  99.  
  100.                 var self    = this,
  101.                     fn      = self.fn,
  102.                     inputs  = self.inputs,
  103.                     hidden  = inputs.hidden;
  104.  
  105.                     inputs.city         = SFAIC.fn.getContentElement(addressId + "_ddlCity",                SFAIC.$updatePanel);
  106.                     inputs.cityState    = SFAIC.fn.getContentElement(addressId + "_ddlCityStateLocked",     SFAIC.$updatePanel);
  107.                     hidden.city         = SFAIC.fn.getContentElement(addressId + "_txtCity",                SFAIC.$updatePanel);
  108.                     hidden.state        = SFAIC.fn.getContentElement(addressId + "_txtState",               SFAIC.$updatePanel);
  109.  
  110.                     fn.root = this;
  111.  
  112.                 inputs.city.change(function() { fn.citySelected($(this)); });
  113.                 inputs.cityState.change(function() { fn.citySelected($(this)); });
  114.  
  115.             }
  116.  
  117.     };
  118.  
  119.     ctrl.init();
  120.  
  121.     return ctrl;    
  122.  
  123. };          
  124.  
  125. SFAIC.pages.salesProcess.Applicant = {
  126.  
  127.     init : function() {        
  128.  
  129.         var garage, mailing;
  130.  
  131.         garage = SFAIC.ctrls.AddressEntry("AddressGarage");
  132.         mailing = SFAIC.ctrls.AddressEntry("AddressMailing");
  133.  
  134.     }
  135.  
  136. };
  137.        
  138. SFAIC.pages.salesProcess.Applicant = {
  139.  
  140.     init : function() {        
  141.  
  142.         $('.addresses').each(function (i) {
  143.             SFAIC.ctrls.AddressEntry.init.call(this, this.attr('id'); });
  144.     }
  145. };