var loginpage = false;
var shoppingcart = false;

var myvianor_userdata = {};
var myvianor_vehicledata = {};
var myvianor_cardata = {};

var myvianor_fields_1 = {
  "myvianor_id": "pid",
  "etunimi": "firstname",
  "sukunimi": "lastname",
  "katuosoite": "address",
  "postinumero": "zipcode",
  "postitoimipaikka": "city",
  "puhelinnumero": "gsm",
  "email": "email"
};

var myvianor_fields_2 = {
  "merkki": "make",
  "malli": "model",
  "vuosimalli": "year"
}

var myvianor_integration_language = false;

var myvianor_integration_texts = {
	"fi_FI" :
	{
		"loggedin": 'Kirjautuneena',
		"frontpage": '/myvianor-etusivu',
		"logout": 'Kirjaudu ulos'
	},
	"sv_SE" :
	{
		"loggedin": 'Inloggad',
		"frontpage": '/myvianor-frontpage',
		"logout": 'Logga ut'
	},
	"nn_NO" :
	{
		"loggedin": 'Innlogget',
		"frontpage": '/myvianor-frontpage',
		"logout": 'Logg ut'
	}
}


$(function () {
	
	myvianor_integration_language = $("meta[name='language']").attr("content");
	var texts = myvianor_integration_texts[ myvianor_integration_language ];
	
	// Get user information
	myvianor_getUserdata();
	
	// Redirect logged users from MyVianor frontpage
	loginpage = $("#MyVianor .login_page");
	if (loginpage.length && myvianor_userdata.pid)
	{
		document.location.href = texts["frontpage"];
		return;
	}
	if ($("#MyVianor").length) return;
	
	// Show user box
	if (myvianor_userdata.pid)
	{
		$("#myvianor_user").html(
			texts["loggedin"] +": "+
			'<a href="'+ texts["frontpage"] +'"><b>'+ myvianor_userdata.firstname +' '+ myvianor_userdata.lastname +'</b></a> '+
			'<span>|</span>'+
			'<a href="/myvianor?extra_op=logout">'+ texts["logout"] +'</a>'
		);
	}
	
	$("#myvianor_user").show();

  // Shopping cart form
  shoppingcart = $("#tilaustiedot");
  if (!myvianor_userdata.pid || !shoppingcart.length) return;

  // Get vehicle information
  myvianor_getVehicledata();

  // Shopping cart checkout
  if (shoppingcart.find("[name=cart-op]").val() == "checkout")
  {
    var registration_num = shoppingcart.find("#rekisterinumero");
    if (myvianor_vehicledata && !registration_num.val())
    {
      registration_num.val( myvianor_vehicledata.registration_number );
    }

    var outlet = shoppingcart.find("[name=sale_point]");
    if (!outlet.val() && myvianor_userdata.vianor_outlet != "")
    {
      outlet.val( myvianor_userdata.vianor_outlet );
      outlet.trigger("change");
    }
  }

  // Shopping cart checkout 2
  if (shoppingcart.find("[name=cart-op]").val() == "checkout2")
  {
    $.each(myvianor_fields_1, function (key, val) {
      var field = shoppingcart.find("#"+ key);
      if (!field.val())
      {
        field.val( myvianor_userdata[ val ]);
      }
    });

    if (!myvianor_vehicledata) return;

    $.each(myvianor_fields_2, function (key, val) {
      var field = shoppingcart.find("#"+ key);
      if (!field.val())
      {
        field.val( myvianor_vehicledata[ val ]);
      }
    });
  }

});


function myvianor_getUserdata ()
{
  $.ajax({
    "type": "GET",
    "url": "/myvianor-json-user",
    "async": false,
    "cache": false,
    "dataType": "json",
    "success": function (json)
    {
      myvianor_userdata = json.result[0];
    }
  });
}

function myvianor_getVehicledata ()
{
  $.ajax({
    "type": "GET",
    "url": "/myvianor-json-vehicle",
    "async": false,
    "cache": true,
    "dataType": "json",
    "success": function (json)
    {
      myvianor_vehicledata = json.result[0];
      if (myvianor_vehicledata)
      {
        myvianor_getCardata();
      }
      var make = myvianor_vehicledata.make;
      var model = myvianor_vehicledata.model;
      myvianor_vehicledata.make = myvianor_cardata[ make ].make;
      myvianor_vehicledata.model = myvianor_cardata[ make ].models[ model ];
    }
  });
}


function myvianor_getCardata ()
{
  $.ajax({
    "type": "GET",
    "url": "/myvianor-json-cardata",
    "async": false,
    "cache": true,
    "dataType": "json",
    "success": function (json)
    {
      myvianor_cardata = json.result;
    }
  });
}

