Android Open Source - SuiviConsoFreeMobile Edit Account Activity






From Project

Back to project page SuiviConsoFreeMobile.

License

The source code is released under:

Ce logiciel est dans le domaine public.

If you think the Android project SuiviConsoFreeMobile listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package net.yvesd.scfm;
/*ww w  .  j  a  va  2s  .c om*/
import android.app.Activity;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;

public class EditAccountActivity extends Activity {

  private EditText loginAbo;
  private EditText pwdAbo;
  private EditText pseudoAbo;
  private Button boutonValider;
  private Button boutonSupprimer;
  private SharedPreferences params;
  private Button boutonRetour;

  public static final String LOGIN_ABO_CLE = "net.yvesd.scfm.LOGIN_ABO_KEY";

  public static final String PWD_ABO_CLE = "net.yvesd.scfm.PWD_ABO_KEY";

  public static final String PSEUDO_ABO_CLE = "net.yvesd.scfm.PSEUDO_ABO_KEY";

  @Override
  protected void onCreate(Bundle savedInstanceState) {

    GestionnaireThemes gt = new GestionnaireThemes(this);
    gt.chargerThemeChoisi();

    super.onCreate(savedInstanceState);
    setContentView(R.layout.editaccount);

    Bundle bundle = this.getIntent().getExtras();
    String loginAbo = bundle.getString(LOGIN_ABO_CLE);

    params = getSharedPreferences(SuiviConsoFreeMobileActivity.PREFS_NAME,
        0);

    this.loginAbo = (EditText) findViewById(R.id.loginAbo);
    this.pwdAbo = (EditText) findViewById(R.id.pwdAbo);
    this.pseudoAbo = (EditText) findViewById(R.id.pseudoAbo);
    this.boutonValider = (Button) findViewById(R.id.save);
    this.boutonSupprimer = (Button) findViewById(R.id.delete);
    this.boutonRetour = (Button) findViewById(R.id.retoursanssauvegarder);

    this.loginAbo.setText(loginAbo);
    this.pwdAbo.setText(params.getString(
        SuiviConsoFreeMobileActivity.PREF_KEYPREFIX_PWD_ABO + loginAbo,
        ""));
    this.pseudoAbo.setText(params.getString(
        SuiviConsoFreeMobileActivity.PREF_KEYPREFIX_PSEUDO_ABO
            + loginAbo, ""));

    this.boutonValider.setOnClickListener(new View.OnClickListener() {
      @Override
      public void onClick(View v) {
        enregistrer();
      }
    });

    this.boutonSupprimer.setOnClickListener(new View.OnClickListener() {

      @Override
      public void onClick(View v) {
        supprimer();
      }
    });

    this.boutonRetour.setOnClickListener(new View.OnClickListener() {

      @Override
      public void onClick(View v) {
        retourSansSauvegarder();
      }
    });
  }

  /**
   * Enregistre les modifications apportes  ce compte
   */
  protected void enregistrer() {

    SharedPreferences.Editor ed = params.edit();
    String login = loginAbo.getText().toString();

    // ne rien faire si login vide TODO afficher message
    if ("".equals(login))
      finish();
    // Fin TODO

    ed.putString(SuiviConsoFreeMobileActivity.PREF_KEYPREFIX_PWD_ABO
        + login, pwdAbo.getText().toString());
    ed.putString(SuiviConsoFreeMobileActivity.PREF_KEYPREFIX_PSEUDO_ABO
        + login, pseudoAbo.getText().toString());

    ajouterCompteAListe(ed, login);

    ed.commit();

    finish();
  }

  /**
   * Supprime le compte
   */
  protected void supprimer() {

    SharedPreferences.Editor ed = params.edit();
    String login = loginAbo.getText().toString();

    if (params.getString(
        SuiviConsoFreeMobileActivity.PREF_KEY_DERNIER_COMPTE, "")
        .equals(login)) {

      // On supprime le compte actuellement slectionn, il faut donc
      // perdre la trace du dernier compte consult
      ed.remove(SuiviConsoFreeMobileActivity.PREF_KEY_DERNIER_COMPTE);
    }

    // Suppression du mot de passe
    ed.remove(SuiviConsoFreeMobileActivity.PREF_KEYPREFIX_PWD_ABO + login);

    // Suppression du pseudo
    ed.remove(SuiviConsoFreeMobileActivity.PREF_KEYPREFIX_PSEUDO_ABO
        + login);

    supprimerCompteDeListe(ed, login);

    ed.commit();

    finish();
  }

  protected void retourSansSauvegarder() {
    finish();
  }

  /**
   * Ajoute loginPropose a la liste des comptes connus, mais uniquement s'il
   * est nouveau
   * 
   * @param ed
   *            editeur de paramtres
   * @param loginPropose
   *            Login qui est peut-tre nouveau
   */
  protected void ajouterCompteAListe(Editor ed, String loginPropose) {

    String listeComptes = params.getString(
        SuiviConsoFreeMobileActivity.PREF_KEY_LISTE_COMPTES, "");

    if ("".equals(listeComptes)) {
      listeComptes = loginPropose;
    } else {

      String[] tableaListeComptes = listeComptes.split(",");
      boolean chercheEncore = true;

      for (int i = 0; i < tableaListeComptes.length && chercheEncore; i++) {
        String compte = tableaListeComptes[i];
        if (compte.equals(loginPropose)) {
          // C'est un doublon
          chercheEncore = false;
        }
      }

      if (chercheEncore) {
        // C'est un nouveau
        listeComptes += "," + loginPropose;
      }
    }

    // Sauvegarde finale de la liste des comptes
    ed.putString(SuiviConsoFreeMobileActivity.PREF_KEY_LISTE_COMPTES,
        listeComptes);
  }

  /**
   * Supprime le compte de la liste des comptes connus
   * 
   * @param ed
   *            editeur de prfrences
   * @param loginASupprimer
   *            Compte  retirer de la liste des comptes connus
   */
  protected void supprimerCompteDeListe(Editor ed, String loginASupprimer) {
    String listeComptes = params.getString(
        SuiviConsoFreeMobileActivity.PREF_KEY_LISTE_COMPTES, "");
    String nouvelleListeComptes = "";

    if ("".equals(listeComptes)) {
      // liste des comptes dj vide => on ne peut pas supprimer le login.
      // On la laisse en l'tat, c'est trs bien comme a
      nouvelleListeComptes = listeComptes;

    } else {

      String[] tableaListeComptes = listeComptes.split(",");
      boolean chercheEncore = true;

      for (int i = 0; i < tableaListeComptes.length && chercheEncore; i++) {
        String compte = tableaListeComptes[i];
        if (compte.equals(loginASupprimer)) {
          // Le compte  supprimer a t trouv
          chercheEncore = false;

          // On va le supprimer du tableau des comptes
          tableaListeComptes[i] = "";
        }
      }

      // Reconstruction de la liste des comptes
      if (tableaListeComptes.length > 0
          && !("".equals(tableaListeComptes[0])))
        nouvelleListeComptes += tableaListeComptes[0];

      for (int i = 1; i < tableaListeComptes.length; i++) {

        if (!("".equals(tableaListeComptes[i])))
          nouvelleListeComptes += "," + tableaListeComptes[i];
      }
    }

    // Pfiou
    ed.putString(SuiviConsoFreeMobileActivity.PREF_KEY_LISTE_COMPTES,
        nouvelleListeComptes);
  }
}




Java Source Code List

net.yvesd.scfm.AfficherSuiviconsoDetailleActivity.java
net.yvesd.scfm.CanWaitForStream.java
net.yvesd.scfm.DataInterpreter.java
net.yvesd.scfm.DataRecuperatorMock.java
net.yvesd.scfm.DataRecuperatorParams.java
net.yvesd.scfm.DonnesCompteur.java
net.yvesd.scfm.EditAccountActivity.java
net.yvesd.scfm.EditAccountsActivity.java
net.yvesd.scfm.ExtracteurErreur.java
net.yvesd.scfm.GestionIcones.java
net.yvesd.scfm.GestionnaireThemes.java
net.yvesd.scfm.MyHttpClient.java
net.yvesd.scfm.OptionActivity.java
net.yvesd.scfm.SuiviConsoFreeMobileActivity.java
net.yvesd.scfm.TelechargeurDonnesConso.java
net.yvesd.scfm.TelechargeurGenerique.java
net.yvesd.scfm.TelechargeurSuiviConsoDetaille.java