package com.pam.codenamehippie.ui;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.design.widget.Snackbar;
import android.util.Log;
import android.view.View;
import android.widget.TextView;
import com.pam.codenamehippie.R;
import com.pam.codenamehippie.modele.AdresseModele;
import com.pam.codenamehippie.modele.OrganismeModele;
import com.pam.codenamehippie.modele.UtilisateurModele;
import com.pam.codenamehippie.modele.depot.DepotManager;
import com.pam.codenamehippie.modele.depot.ObservateurDeDepot;
import com.pam.codenamehippie.modele.depot.UtilisateurModeleDepot;
import java.io.IOException;
import java.util.List;
public class ProfilActivity extends HippieActivity
implements ObservateurDeDepot<UtilisateurModele> {
private static final String TAG = ProfilActivity.class.getSimpleName();
private UtilisateurModeleDepot utilisateurModeleDepot;
private UtilisateurModele utilisateur;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.setContentView(R.layout.activity_profil);
this.utilisateurModeleDepot = DepotManager.getInstance().getUtilisateurModeleDepot();
UtilisateurModele uc = this.authentificateur.getUtilisateur();
if (uc != null) {
this.setUtilisateur(uc);
}
}
@Override
protected void onPause() {
super.onPause();
}
@Override
protected void onResume() {
super.onResume();
if (this.utilisateur != null) {
this.utilisateurModeleDepot.rechercherParId(this.utilisateur.getId());
}
}
@Override
public void surDebutDeRequete() {
this.afficherLaProgressBar();
}
@Override
public void surChangementDeDonnees(List<UtilisateurModele> modeles) {
Log.e("--------------------", "SIZE=" + modeles.size());
this.setUtilisateur(modeles.get(0));
}
@Override
public void surFinDeRequete() {
this.cacherLaProgressbar();
}
@Override
public void surErreur(IOException e) {
// TODO: Faire un toast.
Log.e(TAG, "Requête échouée", e);
}
public void surEditProfilClick(View v) {
Snackbar.make(v, this.getString(R.string.message_welcome, this.utilisateur.getNomComplet()),
Snackbar.LENGTH_SHORT).show();
}
public void setUtilisateur(@NonNull UtilisateurModele utilisateur) {
this.utilisateur = utilisateur;
Log.d("bob", this.utilisateur.toString());
((TextView) this.findViewById(R.id.tv_profil)).setText(R.string.tv_profil_name);
((TextView) this.findViewById(R.id.tv_profil_contact_name_placeholder)).setText(
this.utilisateur.getNom());
((TextView) this.findViewById(R.id.tv_profil_email_placeholder)).setText(
this.utilisateur.getCourriel());
((TextView) this.findViewById(R.id.tv_profil_phone_placeholder)).setText(
this.utilisateur.getFormattedTelephone());
((TextView) this.findViewById(R.id.tv_profil_moyen_contact_placeholder)).setText(
"telephone ou courriel");
((TextView) this.findViewById(R.id.tv_enterprise_section)).setText(
R.string.tv_entreprise_section);
OrganismeModele organisme = this.utilisateur.getOrganisme();
if (organisme != null) {
((TextView) this.findViewById(R.id.tv_profil_nom_entreprise_placeholder)).setText(
organisme.getNom());
((TextView) this.findViewById(R.id.tv_profil_phone2_placeholder)).setText(
organisme.getFormattedTelephone());
((TextView) this.findViewById(R.id.tv_profil_osbl_placeholder)).setText(
organisme.getNoOsbl());
((TextView) this.findViewById(R.id.tv_profil_neq_placeholder)).setText(
organisme.getNoEntreprise());
AdresseModele addr = organisme.getAdresse();
if (addr != null) {
((TextView) this.findViewById(R.id.tv_profil_adresse_placeholder)).setText(
addr.toFormattedString());
}
}
}
}