diff --git a/SWADroid/AndroidManifest.xml b/SWADroid/AndroidManifest.xml
index cc1098fc..23a80629 100644
--- a/SWADroid/AndroidManifest.xml
+++ b/SWADroid/AndroidManifest.xml
@@ -19,12 +19,12 @@
android:name=".modules.Login"
android:label="@string/loginModuleLabel" android:configChanges="keyboard|keyboardHidden|orientation" android:theme="@android:style/Theme.Translucent.NoTitleBar">
-
-
+
+
-
+
diff --git a/SWADroid/src/es/ugr/swad/swadroid/model/User.java b/SWADroid/src/es/ugr/swad/swadroid/model/User.java
index cb3b329e..b455d7a7 100644
--- a/SWADroid/src/es/ugr/swad/swadroid/model/User.java
+++ b/SWADroid/src/es/ugr/swad/swadroid/model/User.java
@@ -308,4 +308,5 @@ public class User implements KvmSerializable {
case 7 : userTypeName = (String)obj; break;
}
}
+
}
diff --git a/SWADroid/src/es/ugr/swad/swadroid/modules/Courses.java b/SWADroid/src/es/ugr/swad/swadroid/modules/Courses.java
index 0b6c929e..ddc3e921 100644
--- a/SWADroid/src/es/ugr/swad/swadroid/modules/Courses.java
+++ b/SWADroid/src/es/ugr/swad/swadroid/modules/Courses.java
@@ -34,6 +34,7 @@ import es.ugr.swad.swadroid.model.Course;
import es.ugr.swad.swadroid.model.User;
/**
+ * Courses module for get user's courses
* @author Juan Miguel Boyero Corral
*
*/
@@ -46,6 +47,15 @@ public class Courses extends Module {
super.onCreate(savedInstanceState);
setMETHOD_NAME("getCourses");
}
+
+ /* (non-Javadoc)
+ * @see android.app.Activity#onStart()
+ */
+ @Override
+ protected void onStart() {
+ super.onStart();
+ connect();
+ }
/**
* Launches action in a separate thread while shows a progress dialog
@@ -87,7 +97,7 @@ public class Courses extends Module {
String name = pii.getProperty(1).toString();
Course c = new Course(id, name);
dbHelper.insertCourse(c);
- //Log.d("Courses", c.toString());
+ Log.d("Courses", c.toString());
}
//Request finalized without errors
@@ -96,4 +106,9 @@ public class Courses extends Module {
finish();
}
+
+ @Override
+ protected void postConnect() {
+
+ }
}
diff --git a/SWADroid/src/es/ugr/swad/swadroid/modules/Login.java b/SWADroid/src/es/ugr/swad/swadroid/modules/Login.java
index b46e5e68..8315c211 100644
--- a/SWADroid/src/es/ugr/swad/swadroid/modules/Login.java
+++ b/SWADroid/src/es/ugr/swad/swadroid/modules/Login.java
@@ -45,10 +45,6 @@ public class Login extends Module {
* User password.
*/
private String userPassword;
- /**
- * Connection available flag
- */
- private boolean isConnected;
/* (non-Javadoc)
* @see android.app.Activity#onCreate()
@@ -56,11 +52,19 @@ public class Login extends Module {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setMETHOD_NAME("loginByUserPasswordKey");
- connect();
+ setMETHOD_NAME("loginByUserPasswordKey");
}
- /**
+ /* (non-Javadoc)
+ * @see android.app.Activity#onStart()
+ */
+ @Override
+ protected void onStart() {
+ super.onStart();
+ connect();
+ }
+
+ /**
* Launches action in a separate thread while shows a progress dialog
* in UI thread.
*/
@@ -84,37 +88,49 @@ public class Login extends Module {
protected void requestService()
throws NoSuchAlgorithmException, IOException, XmlPullParserException, SoapFault, IllegalAccessException, InstantiationException {
- //Encrypts user password with SHA-512 and encodes it to Base64UrlSafe
- md = MessageDigest.getInstance("SHA-512");
- md.update(prefs.getUserPassword().getBytes());
- //userPassword = new String(Base64.encode(md.digest(), Base64.URL_SAFE + Base64.NO_PADDING + Base64.NO_WRAP));
- userPassword = new String(Base64.encode(md.digest()));
- userPassword = userPassword.replace('+','-').replace('/','_').replace('=', ' ').replaceAll("\\s+", "").trim();
-
- //Creates webservice request, adds required params and sends request to webservice
- createRequest();
- addParam("userID", prefs.getUserID());
- addParam("userPassword", userPassword);
- addParam("appKey", Global.getAppKey());
- sendRequest(User.class, true);
-
- if (result != null) {
- KvmSerializable ks = (KvmSerializable) result;
-
- //Stores user data returned by webservice response
- User.setUserCode(ks.getProperty(0).toString());
- User.setUserTypeCode(ks.getProperty(1).toString());
- User.setWsKey(ks.getProperty(2).toString());
- User.setUserID(ks.getProperty(3).toString());
- User.setUserSurname1(ks.getProperty(4).toString());
- User.setUserSurname2(ks.getProperty(5).toString());
- User.setUserFirstName(ks.getProperty(6).toString());
- User.setUserTypeName(ks.getProperty(7).toString());
-
- //Request finalized without errors
+ if(!Global.isLogged())
+ {
+ //Encrypts user password with SHA-512 and encodes it to Base64UrlSafe
+ md = MessageDigest.getInstance("SHA-512");
+ md.update(prefs.getUserPassword().getBytes());
+ //userPassword = new String(Base64.encode(md.digest(), Base64.URL_SAFE + Base64.NO_PADDING + Base64.NO_WRAP));
+ userPassword = new String(Base64.encode(md.digest()));
+ userPassword = userPassword.replace('+','-').replace('/','_').replace('=', ' ').replaceAll("\\s+", "").trim();
+
+ //Creates webservice request, adds required params and sends request to webservice
+ createRequest();
+ addParam("userID", prefs.getUserID());
+ addParam("userPassword", userPassword);
+ addParam("appKey", Global.getAppKey());
+ sendRequest(User.class, true);
+
+ if (result != null) {
+ KvmSerializable ks = (KvmSerializable) result;
+
+ //Stores user data returned by webservice response
+ User.setUserCode(ks.getProperty(0).toString());
+ User.setUserTypeCode(ks.getProperty(1).toString());
+ User.setWsKey(ks.getProperty(2).toString());
+ User.setUserID(ks.getProperty(3).toString());
+ User.setUserSurname1(ks.getProperty(4).toString());
+ User.setUserSurname2(ks.getProperty(5).toString());
+ User.setUserFirstName(ks.getProperty(6).toString());
+ User.setUserTypeName(ks.getProperty(7).toString());
+
+ //Request finalized without errors
+ setResult(RESULT_OK);
+ Global.setLogged(true);
+ }
+ } else {
+ //Request finalized without errors
setResult(RESULT_OK);
- }
+ }
finish();
}
+
+ @Override
+ protected void postConnect() {
+
+ }
}