(function(SHS) {
  var old_environment = SHS.environment,
      old_protocol = SHS.protocol,
      old_domain = SHS.domain,
      old_dynamic_path = SHS.dynamic_path,
      old_original_static_path = SHS.original_static_path;
  
  SHS.DevelopmentShim = {
    add: function() {
      SHS.environment = "dev";
      SHS.protocol = "http://";
      SHS.domain = "localhost:8080";
  
      SHS.setEnv = function(env) {
        SHS.environment = env;
        SHS.setDomain();
        SHS.setProtocol();
        SHS.sanitizePath();
        return SHS;
      };
  
      SHS.setProtocol = function(){
        var protocol = "http://";
        if (SHS.environment == 'test') protocol = '';
        SHS.protocol = protocol;
      };
  
      SHS.setDomain = function() {
        var domain, currentHost = SHS.document.location.host,
            development_domain  = currentHost.length > 0 ? currentHost.split(":")[0] + ":8080" : "localhost:8080";
            
        switch(SHS.environment) {
          case "test" :
            domain = "../../WebContent";
            SHS.original_static_path = "";
            SHS.dynamic_path = "";
            break;
          
          case "prod"   : domain = "www.searshomeservices.com";
            break;
          
          case "qa"     : domain = "shsqa.ecom.sears.com";
            break;

          case "stress" : domain = "shsstress.ecom.sears.com";
            break;

          default : domain = development_domain;
        }
        SHS.domain = domain;
      };
      
      return SHS;
    },
  
    remove: function(parent){
      delete SHS.setEnv;
      delete SHS.setProtocol;
      delete SHS.setDomain;
    
      SHS.environment          = old_environment;
      SHS.protocol             = old_protocol;
      SHS.domain               = old_domain;
      SHS.dynamic_path         = old_dynamic_path;
      SHS.original_static_path = old_original_static_path;
      return SHS;
    }
  };
  
  SHS.DevelopmentShim.add();
})(SHS || {});
