# HG changeset patch
# User nikita@localhost
# Date 1246450506 -7200
# Node ID 5601d949c5aac9d1c1fb1a6e4257af0932695ad3
# Parent 81fcc509bafcb87ac7b577dc0d0d6a7ff7b13286
Ajout d'une verification que le compte est configure avant de lancer la
connexion
diff -r 81fcc509bafc -r 5601d949c5aa res/values-en/strings.xml
--- a/res/values-en/strings.xml Fri Jun 26 20:38:43 2009 +0200
+++ b/res/values-en/strings.xml Wed Jul 01 14:15:06 2009 +0200
@@ -37,6 +37,7 @@
SOCKS5
status
status_text
+ preference_is_configured
Server connection
diff -r 81fcc509bafc -r 5601d949c5aa src/com/beem/project/beem/ui/EditSettings.java
--- a/src/com/beem/project/beem/ui/EditSettings.java Fri Jun 26 20:38:43 2009 +0200
+++ b/src/com/beem/project/beem/ui/EditSettings.java Wed Jul 01 14:15:06 2009 +0200
@@ -6,6 +6,7 @@
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
+import android.text.Editable;
import android.util.Log;
import android.view.Menu;
import android.view.MenuInflater;
@@ -501,6 +502,15 @@
registerProxySettingsChanges(settingsEditor);
registerAccountSettingsChanges(settingsEditor);
registerXMPPSettingsChanges(settingsEditor);
+ String password = accPasswordField.getText().toString();
+ String username = accUsernameField.getText().toString();
+ String port = xmppPortField.getText().toString();
+ String server = xmppServerField.getText().toString();
+ if("".equals(password) || "".equals(username)
+ || "".equals(port) || "".equals(server))
+ settingsEditor.putBoolean(getString(R.string.PreferenceIsConfigured), false);
+ else
+ settingsEditor.putBoolean(getString(R.string.PreferenceIsConfigured), true);
if (settingsEditor.commit()) {
displayNotification(getText(R.string.settings_saved_ok));
diff -r 81fcc509bafc -r 5601d949c5aa src/com/beem/project/beem/ui/Login.java
--- a/src/com/beem/project/beem/ui/Login.java Fri Jun 26 20:38:43 2009 +0200
+++ b/src/com/beem/project/beem/ui/Login.java Wed Jul 01 14:15:06 2009 +0200
@@ -7,10 +7,12 @@
import android.content.DialogInterface;
import android.content.Intent;
import android.content.ServiceConnection;
+import android.content.SharedPreferences;
import android.os.Bundle;
import android.os.Handler;
import android.os.IBinder;
import android.os.RemoteException;
+import android.preference.Preference;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
@@ -42,6 +44,11 @@
private boolean mIsConnected = false;
private final ServiceConnection mServConn = new BeemServiceConnection();
private IXmppFacade xmppFacade = null;
+
+ private SharedPreferences settings = null;
+ private boolean isConfigured = false;
+
+ private Button mButtonLogin = null;
/**
* Create an about "BEEM" dialog
@@ -65,6 +72,7 @@
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
+ settings = getSharedPreferences(getString(R.string.settings_filename), MODE_PRIVATE);
setContentView(R.layout.login);
Button button = (Button) findViewById(R.id.log_as_settings);
button.setOnClickListener(new OnClickListener() {
@@ -75,8 +83,8 @@
}
});
- button = (Button) findViewById(R.id.log_as_login);
- button.setOnClickListener(new OnClickListener() {
+ mButtonLogin = (Button) findViewById(R.id.log_as_login);
+ mButtonLogin.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
@@ -90,7 +98,7 @@
@Override
protected void onDestroy() {
super.onDestroy();
- if (mIsConnected || xmppFacade == null) {
+ if (isConfigured && (mIsConnected || xmppFacade == null)) {
unbindService(mServConn);
}
}
@@ -102,7 +110,11 @@
public void onStart() {
super.onStart();
Log.e("LOGIN", "BINDSERVICE");
- bindService(Login.SERVICE_INTENT, mServConn, BIND_AUTO_CREATE);
+ isConfigured = settings.getBoolean(getString(R.string.PreferenceIsConfigured), false);
+ if (isConfigured)
+ bindService(Login.SERVICE_INTENT, mServConn, BIND_AUTO_CREATE);
+ else
+ mButtonLogin.setEnabled(false);
}
private class BeemConnectionListener extends IBeemConnectionListener.Stub {