Skip to content

Commit

Permalink
Entrega Checkpoint 2
Browse files Browse the repository at this point in the history
  • Loading branch information
Franverri committed Oct 12, 2017
1 parent b61c46e commit e9df4e6
Show file tree
Hide file tree
Showing 6 changed files with 123 additions and 55 deletions.
18 changes: 10 additions & 8 deletions FIUBER/app/src/main/java/com/taller/fiuber/LoginActivity.java
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ protected void onCreate(Bundle savedInstanceState) {

//Si ya se encuentra logeado va directo a la pantalla principal
if ((AccessToken.getCurrentAccessToken() != null) ||(sharedPref.getBoolean("logueado", false))){
if(Objects.equals(sharedPref.getString("tipo", null), "chofer")){
if(Objects.equals(sharedPref.getString("tipo", null), "driver")){
goMainChofer();
} else {
goMainPasajero();
Expand Down Expand Up @@ -179,18 +179,20 @@ public void ejecutar(JSONObject respuesta, long codigoServidor) {
String str = respuesta.toString();
Log.v(TAG, "Respueta server: "+str);

if(codigoServidor == 200){
if((codigoServidor >= 200) && (codigoServidor <= 210)){
//Usuario y contraseña correctos
try {
String strToken = respuesta.getString("token");
Log.v(TAG, "Token: "+strToken);
Log.v(TAG, "Token : "+strToken);
String strTipo = respuesta.getString("tipo");
Log.v(TAG, "Tipo: "+strTipo);
Log.v(TAG, "Tipo : "+strTipo);
String strIDusr = respuesta.getString("id");
Log.v(TAG, "ID Usr: "+strIDusr);
editorShared.putBoolean("logueado", true);
editorShared.putString("tipo", strTipo);
editorShared.putString("ID", strIDusr);
editorShared.apply();
if(Objects.equals(strTipo, "chofer")){
Log.v(TAG, "ENRTRA ACA");
if(Objects.equals(strTipo, "driver")){
goMainChofer();
} else {
goMainPasajero();
Expand All @@ -205,7 +207,7 @@ public void ejecutar(JSONObject respuesta, long codigoServidor) {
strMsj = respuesta.getString("message");
Log.v(TAG, "Mensaje: "+strMsj);
showProgress(false);
Toast.makeText(getApplicationContext(), strMsj, Toast.LENGTH_SHORT).show();
Toast.makeText(getApplicationContext(), "Usuario incorrecto", Toast.LENGTH_SHORT).show();
} catch (JSONException e) {
Log.v(TAG, "Error al intentar leer el JSON");
}
Expand Down Expand Up @@ -246,7 +248,7 @@ private void attemptLogin() {
}

//Autenticación con el server
if(!cancel) {
if (!cancel) {
showProgress(true);
sharedServer.obtenerToken(email, password, new IngresarUsuarioCallback());
} else {
Expand Down
93 changes: 71 additions & 22 deletions FIUBER/app/src/main/java/com/taller/fiuber/ProfileActivity.java
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@
import android.widget.TextView;
import android.widget.Toast;

import org.json.JSONException;
import org.json.JSONObject;

import java.util.Calendar;
Expand All @@ -34,6 +35,16 @@ public class ProfileActivity extends HashFunction {
private int dia, mes, año;
private DatePickerDialog.OnDateSetListener mDataSetListener;

//Campos de texto
TextView usuario;
EditText contraseña;
EditText mail;
EditText nombre;
EditText apellido;
EditText cuentaFacebook;
EditText fechaNacimiento;
EditText nacionalidad;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Expand All @@ -43,17 +54,21 @@ protected void onCreate(Bundle savedInstanceState) {
sharedPref = getSharedPreferences(getString(R.string.saved_data), Context.MODE_PRIVATE);
editorShared = sharedPref.edit();

//Debería obtener el ID del usr desde el sharedPref
//Por el momento utilizo el ID = 2
cargarDatosUsuario("2");
//Obtengo el ID del usuario logueado
final String IDusr = sharedPref.getString("ID", null);
Log.v(TAG, "ID Usr: "+IDusr);

//Obtengo los datos del usuario logueado
cargarDatosUsuario(IDusr);

final TextView usuario = (TextView) findViewById(R.id.perfil_usuario);
final EditText contraseña = (EditText) findViewById(R.id.perfil_contraseña);
final EditText mail = (EditText) findViewById(R.id.perfil_mail);
final EditText nombre = (EditText) findViewById(R.id.perfil_nombre);
final EditText apellido = (EditText) findViewById(R.id.perfil_apellido);
final EditText cuentaFacebook = (EditText) findViewById(R.id.perfil_facebook);
final EditText fechaNacimiento = (EditText) findViewById(R.id.perfil_fechaNacimiento);
usuario = (TextView) findViewById(R.id.perfil_usuario);
contraseña = (EditText) findViewById(R.id.perfil_contraseña);
mail = (EditText) findViewById(R.id.perfil_mail);
nombre = (EditText) findViewById(R.id.perfil_nombre);
apellido = (EditText) findViewById(R.id.perfil_apellido);
cuentaFacebook = (EditText) findViewById(R.id.perfil_facebook);
fechaNacimiento = (EditText) findViewById(R.id.perfil_fechaNacimiento);
nacionalidad = (EditText) findViewById(R.id.perfil_nacionalidad);

btnFecha = (Button) findViewById(R.id.btnPerfilFecha);

Expand Down Expand Up @@ -92,19 +107,21 @@ public void onClick(View view) {
String strApellido = apellido.getText().toString();
String strCuentaFacebook = cuentaFacebook.getText().toString();
String strFechaNacimiento = fechaNacimiento.getText().toString();
String strNacionalidad = nacionalidad.getText().toString();

Log.v(TAG, "Usuario : "+strUsuario);
Log.v(TAG, "Contraseña : "+strContraseña);
Log.v(TAG, "Mail : "+strMail);
Log.v(TAG, "Nombre : "+strNombre);
Log.v(TAG, "Apellido : "+strApellido);
Log.v(TAG, "Cuenta Face: "+strCuentaFacebook);
Log.v(TAG, "Fecha Nacim: "+strFechaNacimiento);
Log.v(TAG, "Usuario : "+strUsuario);
//Log.v(TAG, "Contraseña : "+strContraseña);
Log.v(TAG, "Mail : "+strMail);
Log.v(TAG, "Nombre : "+strNombre);
Log.v(TAG, "Apellido : "+strApellido);
Log.v(TAG, "Cuenta Face : "+strCuentaFacebook);
Log.v(TAG, "Fecha Nacim : "+strFechaNacimiento);
Log.v(TAG, "Nacionalidad: "+strNacionalidad);

computeSHAHash(strContraseña);

//Por ahora se le manda un JSON cualquier y devuelve "OK"
modificarPerfilenServidor("2", strUsuario, strContraseña, strMail, strNombre, strApellido, strCuentaFacebook, "Argentina");
modificarPerfilenServidor(IDusr, "passenger", strUsuario, strContraseña, strMail, strNombre, strApellido, strCuentaFacebook, strNacionalidad, strFechaNacimiento);
}
});
}
Expand All @@ -119,8 +136,40 @@ public void ejecutar(JSONObject respuesta, long codigoServidor) {
Log.v(TAG, "Codigo server :"+codigoServidor);
String str = respuesta.toString();
Log.v(TAG, "Respueta server: "+str);
if(codigoServidor == 200){
if((codigoServidor >= 200) && (codigoServidor <= 210)){
Log.i(TAG, "Get de usuario exitoso");
try {
String strUser = respuesta.getString("username");
//Log.v(TAG, "Usuario : "+strUser);
usuario.setText(strUser);

String strFirstName = respuesta.getString("name");
//Log.v(TAG, "Nombre : "+strFirstName);
nombre.setText(strFirstName);

String strLastName = respuesta.getString("surname");
//Log.v(TAG, "Apellido: "+strFirstName);
apellido.setText(strLastName);

//String strPassword = respuesta.getString("password");
//Log.v(TAG, "Contraseña: "+strPassword);
contraseña.setText("******");

String strMail = respuesta.getString("email");
//Log.v(TAG, "Mail: "+strMail);
mail.setText(strMail);

String strBirthdate = respuesta.getString("birthdate");
//Log.v(TAG, "Fecha nac: "+strBirthdate);
fechaNacimiento.setText(strBirthdate);

String strCountry = respuesta.getString("country");
//Log.v(TAG, "Nacionalidad: "+strBirthdate);
nacionalidad.setText(strCountry);

} catch (JSONException e) {
e.printStackTrace();
}
} else {
Log.w(TAG, "Error en get de usuario");
}
Expand All @@ -144,7 +193,7 @@ public void ejecutar(JSONObject respuesta, long codigoServidor) {
Log.v(TAG, "Codigo server :"+codigoServidor);
String str = respuesta.toString();
Log.v(TAG, "Respueta server: "+str);
if(codigoServidor == 200){
if((codigoServidor >= 200) && (codigoServidor <= 210)){
Log.i(TAG, "Modificación de usuario exitoso");
Toast.makeText(getApplicationContext(), R.string.modificacion_usr_exitoso, Toast.LENGTH_SHORT).show();
} else {
Expand All @@ -157,7 +206,7 @@ public void ejecutar(JSONObject respuesta, long codigoServidor) {
/**
* Envía la petición al APP Server para modificar los datos de un usuario específico.
*/
private void modificarPerfilenServidor(String idUsr, String usuario, String contraseña, String mail, String nombre, String apellido, String cuentaFacebook, String nacionalidad){
sharedServer.modificarUsuario(idUsr, usuario, contraseña, mail, nombre, apellido, cuentaFacebook, nacionalidad, new ModificarUsuarioCallback());
private void modificarPerfilenServidor(String idUsr, String tipoUsuario, String usuario, String contraseña, String mail, String nombre, String apellido, String cuentaFacebook, String nacionalidad, String fechaNacimiento){
sharedServer.modificarUsuario(idUsr, tipoUsuario, usuario, contraseña, mail, nombre, apellido, cuentaFacebook, nacionalidad, fechaNacimiento, new ModificarUsuarioCallback());
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -188,7 +188,7 @@ public void ejecutar(JSONObject respuesta, long codigoServidor) {
Log.v(TAG, "Codigo server :"+codigoServidor);
String str = respuesta.toString();
Log.v(TAG, "Respueta server: "+str);
if(codigoServidor == 200){
if((codigoServidor >= 200) && (codigoServidor <= 210)){
Log.i(TAG, "Registro de usuario exitoso");
Toast.makeText(getApplicationContext(), R.string.registo_usr_exitoso, Toast.LENGTH_SHORT).show();
goLogin();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -125,7 +125,7 @@ public void ejecutar(JSONObject respuesta, long codigoServidor) {
Log.v(TAG, "Codigo server :"+codigoServidor);
String str = respuesta.toString();
Log.v(TAG, "Respueta server: "+str);
if(codigoServidor == 200){
if((codigoServidor >= 200) && (codigoServidor <= 210)){
Log.i(TAG, "Registro de usuario exitoso");
Toast.makeText(getApplicationContext(), R.string.registo_usr_exitoso, Toast.LENGTH_SHORT).show();
goLogin();
Expand Down
48 changes: 25 additions & 23 deletions FIUBER/app/src/main/java/com/taller/fiuber/SharedServer.java
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ public void obtenerToken(String usuario, String contrasena, JSONCallback callbac
try {
json.put("nombreUsuario", usuario);
json.put("contrasena",contrasena);
//json.put("tokenFacebook", "tokenFace");
}
catch(JSONException e)
{
Expand All @@ -55,24 +56,25 @@ public void darAltaUsuario(String tipo, String usuario, String contraseña, Stri
JSONObject jsonUsuario = new JSONObject();

try {
jsonUsuario.put("_ref", "649.7872072956419");
jsonUsuario.put("type", tipo);
jsonUsuario.put("username", usuario);
jsonUsuario.put("password", contraseña);
//Ver tema facebook cono la API del APP Server
jsonUsuario.put("fb",
new JSONArray()
.put(new JSONObject()
.put("userId", "FACE ID")
.put("authToken", "FACE TOKEN")
)
);
//jsonUsuario.put("fb",
// new JSONArray()
// .put(new JSONObject()
// .put("userId", "FACE ID")
// .put("authToken", "FACE TOKEN")
// )
//);
// ---FIN FACE---
jsonUsuario.put("firstName", nombre);
jsonUsuario.put("lastName", apellido);
jsonUsuario.put("country", "Argentina");
jsonUsuario.put("email", mail);
jsonUsuario.put("birthdate", fechaNacimiento);
//jsonUsuario.put("image", "IMAGEN");
jsonUsuario.put("images", "IMAGEN");
}
catch(JSONException e)
{
Expand All @@ -87,38 +89,38 @@ public void darAltaUsuario(String tipo, String usuario, String contraseña, Stri
/**
* Modifica alguno o todos los datos de un usuario ya existente a partir del envío de un JSON al Server.
*/
public void modificarUsuario(String idUsr, String usuario, String contraseña, String mail, String nombre, String apellido, String cuentaFacebook, String nacionalidad, JSONCallback callback)
public void modificarUsuario(String idUsr, String tipoUsuario, String usuario, String contraseña, String mail, String nombre, String apellido, String cuentaFacebook, String nacionalidad, String fechaNacimiento, JSONCallback callback)
{
JSONObject jsonUsuario = new JSONObject();

try {
jsonUsuario.put("type", idUsr);
jsonUsuario.put("type", tipoUsuario);
jsonUsuario.put("username", usuario);
jsonUsuario.put("password", contraseña);
//Ver tema facebook cono la API del APP Server
jsonUsuario.put("fb",
new JSONArray()
.put(new JSONObject()
.put("userId", "FACE ID")
.put("authToken", "FACE TOKEN")
)
);
//jsonUsuario.put("fb",
// new JSONArray()
// .put(new JSONObject()
// .put("userId", "FACE ID")
// .put("authToken", "FACE TOKEN")
// )
//);
// ---FIN FACE---
jsonUsuario.put("firstName", nombre);
jsonUsuario.put("lastName", apellido);
jsonUsuario.put("country", "Argentina");
jsonUsuario.put("country", nacionalidad);
jsonUsuario.put("email", mail);
jsonUsuario.put("birthdate", "fecha nacimiento");
//jsonUsuario.put("image", "IMAGEN");
jsonUsuario.put("birthdate", fechaNacimiento);
jsonUsuario.put("image", "IMAGEN");
}
catch(JSONException e)
{

}
Log.v(TAG, "URL: "+URLAPIREST+"/user/"+idUsr);
Log.v(TAG, "URL: "+URLAPIREST+"/users/"+idUsr);
String str = jsonUsuario.toString();
Log.v(TAG, "JSON: "+ str);
enviarPUT(URLAPIREST+"/user/"+idUsr,jsonUsuario,callback);
enviarPUT(URLAPIREST+"/users/"+idUsr,jsonUsuario,callback);
}

/**
Expand All @@ -128,7 +130,7 @@ public void modificarUsuario(String idUsr, String usuario, String contraseña, S
public void obtenerDatosUsrServidor(String idUsr, JSONCallback callback)
{
Log.v(TAG, "JSON: "+ idUsr);
enviarGET(URLAPIREST+"/user/"+idUsr,callback);
enviarGET(URLAPIREST+"/users/"+idUsr,callback);
}

}
15 changes: 15 additions & 0 deletions FIUBER/app/src/main/res/layout/activity_profile.xml
Original file line number Diff line number Diff line change
Expand Up @@ -115,6 +115,7 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Mail"
android:inputType="textEmailAddress"
android:maxLines="1"

android:layout_below="@+id/perfil_usuario"
Expand Down Expand Up @@ -162,6 +163,20 @@

</LinearLayout>

<android.support.design.widget.TextInputLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">

<EditText
android:id="@+id/perfil_nacionalidad"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Nacionalidad"
android:maxLines="1"
android:layout_alignParentStart="true" />

</android.support.design.widget.TextInputLayout>

</LinearLayout>

</RelativeLayout>

0 comments on commit e9df4e6

Please sign in to comment.