commit ef4b5aaee5c30d49cdda525c07042b20f0600c31
parent c80ce179d8b0fc627e72209feffcce2cb2230c09
Author: Yoann <yoann.b87@voila.fr>
Date: Wed, 27 Apr 2011 10:19:05 +0200
Merge branch 'unstable' of https://github.com/jsmaniac/2011-m1s2-ter into unstable
Diffstat:
4 files changed, 39 insertions(+), 17 deletions(-)
diff --git a/code/PtiClic/src/org/pticlic/FrontPage.java b/code/PtiClic/src/org/pticlic/FrontPage.java
@@ -11,6 +11,7 @@ import android.webkit.WebView;
public class FrontPage extends Activity {
private WebView webView;
+ private JavaScriptInterface js = null;
/** Called when the activity is first created. */
@Override
@@ -22,13 +23,15 @@ public class FrontPage extends Activity {
WebSettings webSettings = webView.getSettings();
webSettings.setJavaScriptEnabled(true);
- webView.addJavascriptInterface(new JavaScriptInterface(this), "Pticlic");
+ js = new JavaScriptInterface(this);
+ js.show("PtiClic", "Démarrage de l'application");
+ webView.addJavascriptInterface(js, "PtiClicAndroid");
webView.loadUrl(Constant.SERVER + Constant.SERVER_URL);
}
-
+
@Override
public void onBackPressed() {
- System.exit(0);
+ webView.goBack();
}
}
diff --git a/code/PtiClic/src/org/pticlic/js/JavaScriptInterface.java b/code/PtiClic/src/org/pticlic/js/JavaScriptInterface.java
@@ -1,10 +1,7 @@
package org.pticlic.js;
-import org.pticlic.Preference;
-
import android.app.ProgressDialog;
import android.content.Context;
-import android.content.Intent;
import android.content.SharedPreferences;
import android.preference.PreferenceManager;
@@ -16,13 +13,16 @@ public class JavaScriptInterface {
public JavaScriptInterface(Context c) {
mContext = c;
}
-
- /** Permet d'afficher la page des preferences qui est directement
- * implemente sur le telephone
+
+ /**
+ * Permet de setter une valeur dans les preferences
*
+ * @param aName Le nom de la preference
+ * @param aValue La valeur que l'on veux pour la preference
*/
- public void goToPreferences() {
- mContext.startActivity(new Intent(mContext, Preference.class));
+ public void setPreference(String aName, String aValue) {
+ SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(mContext);
+ prefs.edit().putString(aName, aValue).commit();
}
/** Permet de recupere une des preferences du systeme.
@@ -30,9 +30,9 @@ public class JavaScriptInterface {
* @param pref La preference que l'on veux recupere
* @return La preference a recupere.
*/
- public String getPreference(String pref) {
+ public String getPreference(String aName) {
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(mContext);
- return prefs.getString(pref, "");
+ return prefs.getString(aName, "");
}
/** Permet d'afficher une progressbar
@@ -47,8 +47,8 @@ public class JavaScriptInterface {
*
*/
public void dismiss() {
- if (dialog.isShowing())
- dialog.dismiss();
+ if (dialog.isShowing())
+ dialog.dismiss();
}
/** Permet de quitter l'application
diff --git a/code/PtiClic/src/org/pticlic/model/Constant.java b/code/PtiClic/src/org/pticlic/model/Constant.java
@@ -1,7 +1,7 @@
package org.pticlic.model;
public class Constant {
- public static final String SERVER_URL = "html5/code/html5/";
+ public static final String SERVER_URL = "unstable/code/serveur/php/jeu.html";
public static final String SERVER_AUTH = "SERVER_AUTH";
public static final String SERVER = "http://www.pticlic.fr/";
diff --git a/code/serveur/php/ressources/pticlic.js b/code/serveur/php/ressources/pticlic.js
@@ -98,14 +98,27 @@ jss.game = function(w, h, iconSize) {
jss.score = function(w, h, iconSize) {
};
+// ==== Interface Android
+var UI = {
+ setPreference: function() {},
+ getPreference: function() {return "";},
+ show: function() {},
+ dismiss: function() {},
+ exit: function() {}
+};
+
+if (typeof(PtiClicAndroid) != "undefined") {
+ UI = PtiClicAndroid;
+}
+
// ==== Code métier général
$(function() {
$(window).resize(jss);
- jss();
frontpage();
});
function ajaxError(x) {
+ UI.dismiss();
alert("Erreur fatale. Merci de nous envoyer ce message : "+x.status+" - "+x.statusText+"\n"+x.responseText.substring(0,20)+((x.responseText == '') ? '': '…'));
}
@@ -115,11 +128,14 @@ function frontpage() {
$("#frontpage .frontpage-button.game").click(function(){
getGame();
});
+ jss();
+ UI.dismiss();
}
// ==== Code métier pour le jeu
function getGame() {
state="game";
+ UI.show("PtiClic", "Récupération de la partie");
$.getJSON("getGame.php?callback=?", {
user:"foo",
passwd:"bar",
@@ -191,11 +207,13 @@ function uiGame(game) {
});
updateText();
+ UI.dismiss();
}
// ==== Code métier pour les scores
function getScore(game) {
state="score";
+ UI.show("PtiClic", "Calcul de votre score");
$.getJSON("server.php?callback=?", {
user: "foo",
passwd: "bar",
@@ -230,4 +248,5 @@ function uiScore(game) {
.appendTo("#score .scores");
jss();
});
+ UI.dismiss();
}
\ No newline at end of file