// updated for OpenDeploy Testing on Feb 25th, 2007
// vehicle_functions.js
function  getBrand() {
  return window.location.href.match(/chrysler/)?"c":(window.location.href.match(/dodge/)?"d":(window.location.href.match(/jeep/)?"j":"u"));
}

var brand = getBrand();

function getYearOptList(argYears) {
  var size = argYears.length;
  var rtn = ""
    
  if ( argYears.length > 0 ) {
    for( var i=0; i < size; i++ ) { 
      rtn += "<option value=\"" + i +"\">" + argYears[i].uYear + "</option>";
    } 
  }
  return rtn;
}

function getVehicleOptList(argVehicles, argYear, argBrand) {
  var size = argVehicles.length;
  var rtn = ""
    
  if ( argVehicles.length > 0 ) {
    for( var i=0; i < size; i++ ) { 
      if(argYear==argVehicles[i].uYear && argBrand==argVehicles[i].uBrand){
        rtn += "<option value=\"" + i +"\">" + argVehicles[i].uModel + "</option>";
      } 
    }
  }
  return rtn;
}

function getVendorURL(argVendor) {
  
  var vendor = "";
  var size = UConnectVendors.length;
  var rtn = ""

  if (argVendor) {
    vendor = argVendor;
  } else {
    vendor = getUconnectCookie("uconnect");
  }

  if ( UConnectVendors.length > 0 ) {
    for( var i=0; i < size; i++ ) { 
      if(vendor==UConnectVendors[i].uVendor){
        rtn = UConnectVendors[i].uActionUrl;
      } 
    }
  }
  return rtn;
}

function doYearAction(argYear) {
  var yearIndx = getE("selectYear").value;
  var rtn = "";
  var actionStr = "";
    
  writeH("formModelSelect", "");
  hideE("formModelSelect");
  writeH("formNavSelect", "");
  hideE("formNavSelect");

  if ( UConnectYears.length > 0 && yearIndx != "") {
      actionStr = UConnectYears[yearIndx].uAction.replace(/argYear/g, UConnectYears[yearIndx].uYear)
      eval(actionStr);
      return true
  } else {
    hideE("formGoButton");
  }

  return false;

}

function doModelAction(argModelIndx) {
  var size = UConnectVehicles.length;
  var rtn = "";
  var actionStr = "";
    
  if (UConnectVehicles[argModelIndx]) {
    if ( UConnectVehicles[argModelIndx].isNavRadio ) {
      chkStr="<input id=\"ntg4Nav\" type=\"checkbox\"> I have a Navigation Radio</input>"
      writeH("formNavSelect", chkStr);
      	showE("formNavSelect");
    }
    else {
      writeH("formNavSelect", "");
      hideE("formNavSelect");
    }
    showE("formGoButton");
    return true
  } else {
    hideE("formGoButton");
  }
  
  return false;

}

function selectModel(argYear) {
  var optTxt = "";
  
  hideE("formGoButton");
  hideE("mainNavDiv");
  hideE("homeInstructDiv");
  
  optTxt  = "<select id=\"selectModel\" class=\"form\" onchange=\"doModelAction(this.value)\"><option value=\"\" selected>Vehicle</option>";
  optTxt += getVehicleOptList (UConnectVehicles, argYear, brand);
  optTxt += "</select>";
  
  writeH("formModelSelect", optTxt);
  showE("formModelSelect");
  writeH("formNavSelect", "");
  hideE("formNavSelect");
  
}

function goJCI() {
  writeH("formModelSelect", "");
  hideE("formModelSelect");
  showE("formGoButton");
}

function goUconnect() {
  var cookieAction = "";
  
  if (getE("selectModel")) {
    modelIndx = getE("selectModel").value;
    
    if ( UConnectVehicles[modelIndx].isNavRadio && getE("ntg4Nav") && getE("ntg4Nav").checked ) {
        cookieAction = UConnectVehicles[modelIndx].uNavVendor;
    } else {
      cookieAction = UConnectVehicles[modelIndx].uVendor;
    }
    
  } else {
      var yearIndx = getE("selectYear").value;
      cookieAction = UConnectYears[yearIndx].uVendor;
  }
  
  setUconnectCookie(cookieAction);
  hideE("vehicleSelect");
  hideE("formModelSelect");
  hideE("formNavSelect");
  hideE("formGoButton");
  showE("mainNavDiv");
  showE("homeInstructDiv");

}

function getUconnectCookie(name) {
  var cookie = " " + document.cookie;
  var search = " " + name + "=";
  var setStr = null;
  var offset = 0;
  var end = 0;
  if (cookie.length > 0) {
    offset = cookie.indexOf(search);
    if (offset != -1) {
      offset += search.length;
      end = cookie.indexOf(";", offset)
      if (end == -1) {
          end = cookie.length;
      }
      setStr = unescape(cookie.substring(offset, end));
    }
  }
  return(setStr);
}

//Set cookie if needed
function setUconnectCookie(cookieUrl) {
    var name = "uconnect";
    var value = unescape(cookieUrl);
    var path = "/";
    // get the full url string, http://www..com/dir/page.html?x=y...
    var curUrl = new String( window.location );
    // strip off the leading protocol ("http://") and strip any trailing file-path and query string
    var domain = curUrl.substring(7, curUrl.indexOf( ".com/"));
    // strip off any preceding subdomains (www.sub.subsub...)
    domain = domain.substring(domain.lastIndexOf(".") + 1, domain.length) + ".com";
    //set the domain for the cookie
    var cookieDomain = curUrl.substring(7, curUrl.indexOf( ".com/"))+".com";
    document.cookie = name+"="+value+";path="+path+";host="+cookieDomain+";false";
}
