c8059613
JLo'w
Re-fonte de l'app...
|
1
2
|
package com.example.app_10p5;
|
e9b6c14d
JLo'w
Passage au suppor...
|
3
|
import android.app.Activity;
|
76de4d29
JLo'w
Connexion et NFC ...
|
4
|
import android.app.Fragment;
|
3c5d3089
JLo'w
Work in progress ...
|
5
6
|
import android.app.FragmentManager;
import android.app.FragmentTransaction;
|
76de4d29
JLo'w
Connexion et NFC ...
|
7
|
import android.app.PendingIntent;
|
c8059613
JLo'w
Re-fonte de l'app...
|
8
|
import android.content.Intent;
|
e274d65a
JLo'w
Meilleur vérifica...
|
9
|
import android.content.SharedPreferences;
|
0aec73b6
JLo'w
Petit changement ...
|
10
|
import android.graphics.drawable.ColorDrawable;
|
76de4d29
JLo'w
Connexion et NFC ...
|
11
|
import android.nfc.NfcAdapter;
|
c8059613
JLo'w
Re-fonte de l'app...
|
12
|
import android.os.Bundle;
|
e274d65a
JLo'w
Meilleur vérifica...
|
13
|
import android.preference.PreferenceManager;
|
76de4d29
JLo'w
Connexion et NFC ...
|
14
|
import android.support.design.widget.Snackbar;
|
e274d65a
JLo'w
Meilleur vérifica...
|
15
|
import android.text.TextUtils;
|
0aec73b6
JLo'w
Petit changement ...
|
16
17
18
|
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
|
c8059613
JLo'w
Re-fonte de l'app...
|
19
|
import android.view.View;
|
0e3ce293
JLo'w
Corrections mineu...
|
20
|
import android.widget.EditText;
|
93f90e35
JLo'w
NFC et foreground
|
21
|
import android.widget.Toast;
|
9f0e5ffc
JLo'w
Un petit popup de...
|
22
|
import android.os.Handler;
|
93f90e35
JLo'w
NFC et foreground
|
23
|
|
c1f92981
JLo'w
Implémentation de...
|
24
25
26
|
import org.json.JSONObject;
import java.net.URL;
|
e274d65a
JLo'w
Meilleur vérifica...
|
27
|
import java.net.URLEncoder;
|
c1f92981
JLo'w
Implémentation de...
|
28
29
|
import java.util.HashMap;
|
c8059613
JLo'w
Re-fonte de l'app...
|
30
|
/**
|
fde33444
JLo'w
Update header ave...
|
31
|
* Created by Jean-loup Beaussart on 24/04/2016.
|
c8059613
JLo'w
Re-fonte de l'app...
|
32
|
*/
|
3c5d3089
JLo'w
Work in progress ...
|
33
|
public class MainActivite extends Activity implements ASyncResponse, main_tab_frag.OnFragmentInteractionListener {
|
c8059613
JLo'w
Re-fonte de l'app...
|
34
|
|
520cecde
JLo'w
Un petit plus, un...
|
35
36
37
38
39
40
|
public static final int STATE_RIEN = 0;
public static final int STATE_COMMANDE = 3;
public static final int STATE_VIDANGE = 4;
public static final int STATE_RECHARGEMENT = 2;
public static final int STATE_CREATION_COMPTE = 1;
public static final int STATE_CONNEXION = 5;
|
2596297c
JLo'w
Ajout d'annuler e...
|
41
42
|
public static final int STATE_ANNULER= 6;
public static final int STATE_REFAIRE = 7;
|
9142a050
JLo'w
Ajout de l'appel ...
|
43
|
public static final int STATE_DECONNEXION = 8;
|
e274d65a
JLo'w
Meilleur vérifica...
|
44
|
|
f57164fc
JLo'w
Alerte expiration...
|
45
|
public static final long EXPIRATION = 1000*60*10;
|
520cecde
JLo'w
Un petit plus, un...
|
46
47
48
|
private int mState;
private String mToken;
|
8cd8911a
JLo'w
Connexion enfin f...
|
49
|
private int mDroit;
|
520cecde
JLo'w
Un petit plus, un...
|
50
|
private long mTimeToken;
|
8cd8911a
JLo'w
Connexion enfin f...
|
51
|
private String mUser;
|
9f0e5ffc
JLo'w
Un petit popup de...
|
52
53
|
private Handler mTimerHandler;
private Runnable mTimerRunnable;
|
520cecde
JLo'w
Un petit plus, un...
|
54
|
|
76de4d29
JLo'w
Connexion et NFC ...
|
55
56
|
private NfcAdapter mNfcAdapter;
|
c8059613
JLo'w
Re-fonte de l'app...
|
57
58
59
60
|
@Override
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.layout_main);
|
e274d65a
JLo'w
Meilleur vérifica...
|
61
|
PreferenceManager.setDefaultValues(this, R.xml.preferences, false);
|
520cecde
JLo'w
Un petit plus, un...
|
62
|
|
efd095eb
JLo'w
No more joke
|
63
|
setTitle(getResources().getString(R.string.app_name));
|
fc1fed0d
JLo'w
Restons cohérent
|
64
|
|
520cecde
JLo'w
Un petit plus, un...
|
65
66
|
mState = STATE_RIEN;
mTimeToken = -1;
|
b6313643
JLo'w
Déconnexion + ges...
|
67
|
mToken = "";
|
520cecde
JLo'w
Un petit plus, un...
|
68
|
|
0aec73b6
JLo'w
Petit changement ...
|
69
|
getActionBar().setBackgroundDrawable(new ColorDrawable(getResources().getColor(R.color.colorPrimary)));
|
76de4d29
JLo'w
Connexion et NFC ...
|
70
|
mNfcAdapter = NfcAdapter.getDefaultAdapter(getApplicationContext());
|
0aec73b6
JLo'w
Petit changement ...
|
71
|
|
9f0e5ffc
JLo'w
Un petit popup de...
|
72
73
74
75
|
mTimerHandler = new Handler();
mTimerRunnable = new Runnable() {
@Override
public void run() {
|
f57164fc
JLo'w
Alerte expiration...
|
76
77
78
79
80
81
82
|
if(TextUtils.getTrimmedLength(mToken) == 30){
if(System.currentTimeMillis() - mTimeToken >= EXPIRATION){
afficherPopup();
}
else{
mTimerHandler.postDelayed(this, 5000);
}
|
9f0e5ffc
JLo'w
Un petit popup de...
|
83
84
85
86
|
}
}
};
|
2681581a
JLo'w
menu pour changer...
|
87
88
89
|
if(savedInstanceState == null){
FragmentManager fragmentManager = getFragmentManager();
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
|
76de4d29
JLo'w
Connexion et NFC ...
|
90
|
ConnectionFragment fragment = new ConnectionFragment();
|
2681581a
JLo'w
menu pour changer...
|
91
92
93
94
95
96
97
98
99
100
|
fragmentTransaction.add(R.id.fragment_container, fragment);
fragmentTransaction.commit();
}
else{
mTimeToken = savedInstanceState.getLong("timeToken");
mToken = savedInstanceState.getString("token");
mState = savedInstanceState.getInt("state");
mUser = savedInstanceState.getString("user");
mDroit = savedInstanceState.getInt("droit");
}
|
c8059613
JLo'w
Re-fonte de l'app...
|
101
102
|
}
|
c66109e1
JLo'w
Ajout du code des...
|
103
|
@Override
|
0aec73b6
JLo'w
Petit changement ...
|
104
105
106
107
108
109
110
111
112
|
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.menu, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle item selection
|
e274d65a
JLo'w
Meilleur vérifica...
|
113
114
|
if(item.getItemId() == R.id.action_settings){
getFragmentManager().beginTransaction().replace(R.id.fragment_container, new SettingsFragment()).addToBackStack("settings").commit();
|
2681581a
JLo'w
menu pour changer...
|
115
|
}
|
28dc4009
JLo'w
Déconnexion !!!!!
|
116
117
118
|
else if(item.getItemId() == R.id.action_disconnect){
disconnect();
}
|
2681581a
JLo'w
menu pour changer...
|
119
120
|
return super.onOptionsItemSelected(item);
|
0aec73b6
JLo'w
Petit changement ...
|
121
122
123
|
}
@Override
|
3c5d3089
JLo'w
Work in progress ...
|
124
125
126
127
128
|
public void onFragmentInteraction(String s){
}
@Override
|
c66109e1
JLo'w
Ajout du code des...
|
129
130
131
132
133
134
135
136
137
138
|
public void onSaveInstanceState(Bundle savedInstanceState){
savedInstanceState.putString("token", mToken);
savedInstanceState.putInt("state", mState);
savedInstanceState.putString("user", mUser);
savedInstanceState.putInt("droit", mDroit);
savedInstanceState.putLong("timeToken", mTimeToken);
super.onSaveInstanceState(savedInstanceState);
}
|
76de4d29
JLo'w
Connexion et NFC ...
|
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
|
@Override
public void onPause() {
stopForegroundDispatch(this, mNfcAdapter);
super.onPause();
}
@Override
public void onResume() {
super.onResume();
setupForegroundDispatch(this, mNfcAdapter);
}
public static void setupForegroundDispatch(final Activity activity, NfcAdapter adapter){
if(adapter != null){
final Intent intent = new Intent(activity.getApplicationContext(), activity.getClass());
intent.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
final PendingIntent pendingIntent = PendingIntent.getActivity(activity.getApplicationContext(), 0, intent, 0);
adapter.enableForegroundDispatch(activity, pendingIntent, null, null);
}
else{
Toast.makeText(activity, "Impossible d'initialiser le NFC", Toast.LENGTH_SHORT).show();
}
}
public static void stopForegroundDispatch(final Activity activity, NfcAdapter adapter) {
if(adapter != null){
adapter.disableForegroundDispatch(activity);
}
else{
Toast.makeText(activity, "Impossible d'initialiser le NFC", Toast.LENGTH_SHORT).show();
}
}
|
c66109e1
JLo'w
Ajout du code des...
|
172
|
public void valideCreationCompte(View v){
|
e274d65a
JLo'w
Meilleur vérifica...
|
173
|
if((TextUtils.getTrimmedLength(mToken) == 30) && ((System.currentTimeMillis() - mTimeToken) < EXPIRATION)) {
|
c66109e1
JLo'w
Ajout du code des...
|
174
175
176
|
EditText champMontant = (EditText) findViewById(R.id.creation_montant);
float montant = 0.0f;
|
e274d65a
JLo'w
Meilleur vérifica...
|
177
178
179
180
181
182
183
184
185
186
187
188
189
|
if(!TextUtils.isEmpty(champMontant.getText().toString())){
try{
montant = Float.parseFloat(champMontant.getText().toString());
}
catch (Throwable t){
Toast.makeText(this, "Remplir le champ montant avec un nombre: " + t.toString(), Toast.LENGTH_LONG).show();
}
if(mDroit >= 1){
if((montant > 0.0f) && (montant < 200.0f)){
mState = STATE_CREATION_COMPTE;
champMontant.setText(null);
|
76de4d29
JLo'w
Connexion et NFC ...
|
190
191
192
193
194
195
196
197
198
199
|
Bundle b = new Bundle();
b.putString("token", mToken);
b.putInt("state", mState);
b.putFloat("montant", montant);
NFCFragment nfc = new NFCFragment();
nfc.setArguments(b);
getFragmentManager().beginTransaction().replace(R.id.fragment_container, nfc).addToBackStack(null).commit();
|
e274d65a
JLo'w
Meilleur vérifica...
|
200
201
202
203
204
205
206
207
|
}
else{
Toast.makeText(this, "Valeur incorrecte.", Toast.LENGTH_LONG).show();
}
}
else{
Toast.makeText(this, "Droit insuffisant.", Toast.LENGTH_LONG).show();
}
|
c66109e1
JLo'w
Ajout du code des...
|
208
209
|
}
else{
|
e274d65a
JLo'w
Meilleur vérifica...
|
210
|
champMontant.setError("Montant requis.");
|
c66109e1
JLo'w
Ajout du code des...
|
211
212
213
|
}
}
else{
|
28dc4009
JLo'w
Déconnexion !!!!!
|
214
|
disconnect();
|
c66109e1
JLo'w
Ajout du code des...
|
215
216
217
|
}
}
|
c8059613
JLo'w
Re-fonte de l'app...
|
218
219
|
public void valideCommande(View v)
{
|
e274d65a
JLo'w
Meilleur vérifica...
|
220
|
if((TextUtils.getTrimmedLength(mToken) == 30) && ((System.currentTimeMillis() - mTimeToken) < EXPIRATION)) {
|
b6313643
JLo'w
Déconnexion + ges...
|
221
|
if(mDroit >= 1){
|
520cecde
JLo'w
Un petit plus, un...
|
222
|
mState = STATE_COMMANDE;
|
76de4d29
JLo'w
Connexion et NFC ...
|
223
224
225
|
Bundle b = new Bundle();
b.putString("token", mToken);
b.putInt("state", mState);
|
76de4d29
JLo'w
Connexion et NFC ...
|
226
227
|
NFCFragment nfc = new NFCFragment();
|
76de4d29
JLo'w
Connexion et NFC ...
|
228
|
|
b6313643
JLo'w
Déconnexion + ges...
|
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
|
switch (v.getId()){
case R.id.commande_validation:
EditText champMontant = (EditText) findViewById(R.id.commande_prix);
float montant = 0.0f;
try{
montant = Float.parseFloat(champMontant.getText().toString().replace(",", "."));
}
catch (Throwable t)
{
Toast.makeText(this, "Remplir le prix avec un nombre: " + t.toString(), Toast.LENGTH_SHORT).show();
}
if ((montant > 0.0f) && (montant < 200.0f)) {
champMontant.setText(null);
b.putFloat("montant", montant);
b.putInt("quantite", 0);
}
else{
Toast.makeText(this, "Valeur incorrecte.", Toast.LENGTH_SHORT).show();
}
break;
case R.id.button1:
b.putInt("quantite", 1);
break;
case R.id.button2:
b.putInt("quantite", 2);
break;
case R.id.button3:
b.putInt("quantite", 3);
break;
case R.id.button4:
b.putInt("quantite", 4);
break;
case R.id.button5:
b.putInt("quantite", 5);
break;
case R.id.button6:
b.putInt("quantite", 6);
break;
}
nfc.setArguments(b);
|
76de4d29
JLo'w
Connexion et NFC ...
|
271
|
getFragmentManager().beginTransaction().replace(R.id.fragment_container, nfc).addToBackStack(null).commit();
|
520cecde
JLo'w
Un petit plus, un...
|
272
|
}
|
c66109e1
JLo'w
Ajout du code des...
|
273
|
else{
|
b6313643
JLo'w
Déconnexion + ges...
|
274
|
Toast.makeText(this, "Droit insuffisant.", Toast.LENGTH_SHORT).show();
|
c66109e1
JLo'w
Ajout du code des...
|
275
|
}
|
520cecde
JLo'w
Un petit plus, un...
|
276
277
|
}
else{
|
28dc4009
JLo'w
Déconnexion !!!!!
|
278
|
disconnect();
|
520cecde
JLo'w
Un petit plus, un...
|
279
280
281
282
283
|
}
}
public void valideRechargement(View v)
{
|
e274d65a
JLo'w
Meilleur vérifica...
|
284
|
if((TextUtils.getTrimmedLength(mToken) == 30) && ((System.currentTimeMillis() - mTimeToken) < EXPIRATION)) {
|
c66109e1
JLo'w
Ajout du code des...
|
285
286
287
|
EditText champMontant = (EditText) findViewById(R.id.rechargement_champ_montant);
float montant = 0.0f;
|
e274d65a
JLo'w
Meilleur vérifica...
|
288
289
290
291
292
293
294
295
296
297
298
299
300
|
if(!TextUtils.isEmpty(champMontant.getText().toString())){
try{
montant = Float.parseFloat(champMontant.getText().toString());
}
catch (Throwable t){
Toast.makeText(this, "Remplir le champ montant avec un nombre: " + t.toString(), Toast.LENGTH_LONG).show();
}
if(mDroit >= 2){
if((montant > 0.0f) && (montant < 200.0f)){
mState = STATE_RECHARGEMENT;
champMontant.setText(null);
|
76de4d29
JLo'w
Connexion et NFC ...
|
301
302
303
304
305
306
307
308
309
|
Bundle b = new Bundle();
b.putString("token", mToken);
b.putInt("state", mState);
b.putFloat("montant", montant);
NFCFragment nfc = new NFCFragment();
nfc.setArguments(b);
getFragmentManager().beginTransaction().replace(R.id.fragment_container, nfc).addToBackStack(null).commit();
|
e274d65a
JLo'w
Meilleur vérifica...
|
310
311
312
313
314
315
316
317
|
}
else{
Toast.makeText(this, "Valeur incorrecte.", Toast.LENGTH_LONG).show();
}
}
else{
Toast.makeText(this, "Droit insuffisant.", Toast.LENGTH_LONG).show();
}
|
c66109e1
JLo'w
Ajout du code des...
|
318
319
|
}
else{
|
e274d65a
JLo'w
Meilleur vérifica...
|
320
|
champMontant.setError("Montant requis.");
|
c66109e1
JLo'w
Ajout du code des...
|
321
|
}
|
520cecde
JLo'w
Un petit plus, un...
|
322
323
|
}
else{
|
28dc4009
JLo'w
Déconnexion !!!!!
|
324
|
disconnect();
|
520cecde
JLo'w
Un petit plus, un...
|
325
326
327
328
329
330
331
332
|
}
}
public void valideConnection(View v)
{
EditText viewUser = (EditText) findViewById(R.id.connection_username);
EditText viewPsw = (EditText) findViewById(R.id.connection_password);
|
c1f92981
JLo'w
Implémentation de...
|
333
334
335
|
String user = viewUser.getText().toString();
String password = viewPsw.getText().toString();
|
e274d65a
JLo'w
Meilleur vérifica...
|
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
|
if (!TextUtils.isEmpty(user)) {
if(!TextUtils.isEmpty(password)){
mState = STATE_CONNEXION;
viewUser.setText(null);
viewPsw.setText(null);
try{
SharedPreferences settings = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
URL url = new URL(settings.getString("server_address", null) + "api/utilisateur/connexion");
HashMap<String, String> param = new HashMap<String, String>();
param.put("login", URLEncoder.encode(user, "UTF-8"));
param.put("mdp", URLEncoder.encode(password, "UTF-8"));
NetworkThread nt = new NetworkThread(url, param);
nt.delegate = this;
nt.execute();
}
catch (Throwable t) {
Toast.makeText(this, "Erreur: " + t.toString(), Toast.LENGTH_LONG).show();
System.out.println("Exception: " + t.toString());
}
|
c1f92981
JLo'w
Implémentation de...
|
357
|
}
|
e274d65a
JLo'w
Meilleur vérifica...
|
358
359
|
else {
viewPsw.setError("Mot de passe requis.");
|
c1f92981
JLo'w
Implémentation de...
|
360
|
}
|
520cecde
JLo'w
Un petit plus, un...
|
361
|
}
|
c66109e1
JLo'w
Ajout du code des...
|
362
|
else{
|
e274d65a
JLo'w
Meilleur vérifica...
|
363
|
viewUser.setError("Utilisateur requis.");
|
c66109e1
JLo'w
Ajout du code des...
|
364
|
}
|
520cecde
JLo'w
Un petit plus, un...
|
365
|
}
|
8d573e63
JLo'w
Mise en place de ...
|
366
367
|
public void valideVidange(View v){
|
e274d65a
JLo'w
Meilleur vérifica...
|
368
|
if((TextUtils.getTrimmedLength(mToken) == 30) && ((System.currentTimeMillis() - mTimeToken) < EXPIRATION)) {
|
8d573e63
JLo'w
Mise en place de ...
|
369
370
371
|
if((mDroit >= 2)){
mState = STATE_VIDANGE;
|
76de4d29
JLo'w
Connexion et NFC ...
|
372
373
374
375
376
377
378
379
|
Bundle b = new Bundle();
b.putString("token", mToken);
b.putInt("state", mState);
NFCFragment nfc = new NFCFragment();
nfc.setArguments(b);
getFragmentManager().beginTransaction().replace(R.id.fragment_container, nfc).addToBackStack(null).commit();
|
8d573e63
JLo'w
Mise en place de ...
|
380
381
382
383
384
385
|
}
else{
Toast.makeText(this, "Droit insuffisant.", Toast.LENGTH_LONG).show();
}
}
else{
|
28dc4009
JLo'w
Déconnexion !!!!!
|
386
|
disconnect();
|
8d573e63
JLo'w
Mise en place de ...
|
387
388
|
}
}
|
520cecde
JLo'w
Un petit plus, un...
|
389
390
|
@Override
|
76de4d29
JLo'w
Connexion et NFC ...
|
391
392
393
|
protected void onNewIntent(Intent intent){
super.onNewIntent(intent);
Fragment frag = getFragmentManager().findFragmentById(R.id.fragment_container);
|
4ef24041
JLo'w
Retour du JSONObj...
|
394
|
|
6ff8ec9b
JLo'w
Système d'héritag...
|
395
|
if(NfcAdapter.ACTION_TAG_DISCOVERED.equals(intent.getAction())){
|
9142a050
JLo'w
Ajout de l'appel ...
|
396
|
if(((mState == STATE_RECHARGEMENT) || (mState == STATE_COMMANDE) || (mState == STATE_VIDANGE) || (mState == STATE_CREATION_COMPTE)) && (frag instanceof NFCFragment)){
|
6ff8ec9b
JLo'w
Système d'héritag...
|
397
398
399
|
NFCFragment nfc = (NFCFragment) frag;
nfc.handleIntent(intent);
}
|
9142a050
JLo'w
Ajout de l'appel ...
|
400
|
else if((mState == STATE_RIEN) && (frag instanceof ConnectionFragment)){
|
6ff8ec9b
JLo'w
Système d'héritag...
|
401
402
403
404
|
mState = STATE_CONNEXION;
ConnectionFragment co = (ConnectionFragment) frag;
co.handleIntent(intent);
}
|
520cecde
JLo'w
Un petit plus, un...
|
405
|
}
|
c8059613
JLo'w
Re-fonte de l'app...
|
406
|
}
|
93f90e35
JLo'w
NFC et foreground
|
407
|
|
c1f92981
JLo'w
Implémentation de...
|
408
409
410
|
/* Retour du network thread */
@Override
public void processFinish(JSONObject output) {
|
76de4d29
JLo'w
Connexion et NFC ...
|
411
|
|
96cf88d2
JLo'w
Réception de JSON...
|
412
413
|
if(output.length() != 0){
try{
|
8cd8911a
JLo'w
Connexion enfin f...
|
414
|
if(output.get("status").toString().equals("ok")){
|
76de4d29
JLo'w
Connexion et NFC ...
|
415
416
|
switch (mState){
case STATE_COMMANDE:
|
2596297c
JLo'w
Ajout d'annuler e...
|
417
|
Snackbar.make(findViewById(R.id.coordinator), "Client débité de " + output.get("montant") + "€. " + output.get("soldeAncien") + "€ → " + output.getString("soldeNouveau") + "€", Snackbar.LENGTH_LONG).setAction("ANNULER", new viewListenerAnnulerRefaire(output.getInt("idTransaction"), this, true)).show();
|
76de4d29
JLo'w
Connexion et NFC ...
|
418
419
420
421
422
423
424
425
|
break;
case STATE_CONNEXION:
mToken = output.get("jeton").toString();
mTimeToken = System.currentTimeMillis();
mDroit = output.getInt("droit");
mUser = output.get("login").toString();
Snackbar.make(findViewById(R.id.coordinator), "Bonjour " + mUser + " vous êtes connecté pour " + EXPIRATION / (1000 * 60) + " minutes.", Snackbar.LENGTH_SHORT).show();
getFragmentManager().beginTransaction().replace(R.id.fragment_container, new main_tab_frag()).commit();
|
9f0e5ffc
JLo'w
Un petit popup de...
|
426
|
mTimerRunnable.run();
|
76de4d29
JLo'w
Connexion et NFC ...
|
427
428
|
break;
case STATE_CREATION_COMPTE:
|
2596297c
JLo'w
Ajout d'annuler e...
|
429
|
Snackbar.make(findViewById(R.id.coordinator), "Client créé avec un solde de " + output.get("soldeNouveau") + "€", Snackbar.LENGTH_LONG).setAction("ANNULER", new viewListenerAnnulerRefaire(output.getInt("idTransaction"), this, true)).show();
|
76de4d29
JLo'w
Connexion et NFC ...
|
430
431
|
break;
case STATE_RECHARGEMENT:
|
2596297c
JLo'w
Ajout d'annuler e...
|
432
|
Snackbar.make(findViewById(R.id.coordinator), "Client rechargé: " + output.get("soldeAncien") + "€ → " + output.get("soldeNouveau") + "€", Snackbar.LENGTH_LONG).setAction("ANNULER", new viewListenerAnnulerRefaire(output.getInt("idTransaction"), this, true)).show();
|
76de4d29
JLo'w
Connexion et NFC ...
|
433
434
|
break;
case STATE_VIDANGE:
|
2596297c
JLo'w
Ajout d'annuler e...
|
435
436
437
438
439
440
441
|
Snackbar.make(findViewById(R.id.coordinator), "Client vidé: " + output.get("soldeAncien") + "€ → 0€", Snackbar.LENGTH_LONG).setAction("ANNULER", new viewListenerAnnulerRefaire(output.getInt("idTransaction"), this, true)).show();
break;
case STATE_ANNULER:
Snackbar.make(findViewById(R.id.coordinator), "Transaction annulée: " + output.get("soldeAncien") + "€ → " + output.get("soldeNouveau") + "€", Snackbar.LENGTH_LONG).setAction("REFAIRE", new viewListenerAnnulerRefaire(output.getInt("idTransaction"), this, false)).show();
break;
case STATE_REFAIRE:
Snackbar.make(findViewById(R.id.coordinator), "Transaction rétablie: " + output.get("soldeAncien") + "€ → " + output.get("soldeNouveau") + "€", Snackbar.LENGTH_LONG).setAction("ANNULER", new viewListenerAnnulerRefaire(output.getInt("idTransaction"), this, true)).show();
|
76de4d29
JLo'w
Connexion et NFC ...
|
442
|
break;
|
9142a050
JLo'w
Ajout de l'appel ...
|
443
444
445
|
case STATE_DECONNEXION:
System.out.println("Déconnexion réussie.");
break;
|
76de4d29
JLo'w
Connexion et NFC ...
|
446
447
448
449
450
|
case STATE_RIEN:
default:
Toast.makeText(this, "WTF, le cancer est dans l'application!!", Toast.LENGTH_LONG).show();
break;
}
|
96cf88d2
JLo'w
Réception de JSON...
|
451
452
|
}
else{
|
76de4d29
JLo'w
Connexion et NFC ...
|
453
|
Toast.makeText(this, "Erreur: " + output.get("status"), Toast.LENGTH_LONG).show();
|
96cf88d2
JLo'w
Réception de JSON...
|
454
455
456
|
}
}
catch(Throwable t){
|
8cd8911a
JLo'w
Connexion enfin f...
|
457
|
Toast.makeText(this, "WTF, le cancer est dans l'application!!" + t.toString(), Toast.LENGTH_LONG).show();
|
96cf88d2
JLo'w
Réception de JSON...
|
458
459
460
461
462
|
}
}
else{
Toast.makeText(this, "Impossible de se connecter au serveur", Toast.LENGTH_LONG).show();
}
|
76de4d29
JLo'w
Connexion et NFC ...
|
463
464
465
|
mState = STATE_RIEN;
getFragmentManager().popBackStack();
|
c1f92981
JLo'w
Implémentation de...
|
466
|
}
|
3c5d3089
JLo'w
Work in progress ...
|
467
468
469
470
471
472
473
474
|
public String getToken(){
return mToken;
}
public long getTimeToken(){
return mTimeToken;
}
|
28dc4009
JLo'w
Déconnexion !!!!!
|
475
476
|
public void disconnect(){
|
9142a050
JLo'w
Ajout de l'appel ...
|
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
|
try{
SharedPreferences settings = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
URL url = new URL(settings.getString("server_address", null) + "api/utilisateur/deconnexion");
HashMap<String, String> param = new HashMap<String, String>();
param.put("jeton", mToken);
NetworkThread nt = new NetworkThread(url, param);
nt.delegate = this;
nt.execute();
}
catch (Throwable t){
Toast.makeText(this, "WTF, le cancer est dans l'application!!" + t.toString(), Toast.LENGTH_LONG).show();
System.out.println(t.toString());
}
|
b6313643
JLo'w
Déconnexion + ges...
|
492
|
mToken = "";
|
28dc4009
JLo'w
Déconnexion !!!!!
|
493
494
|
mDroit = 0;
mUser = null;
|
fc1fed0d
JLo'w
Restons cohérent
|
495
|
mTimeToken = -1;
|
9142a050
JLo'w
Ajout de l'appel ...
|
496
|
mState = STATE_DECONNEXION;
|
28dc4009
JLo'w
Déconnexion !!!!!
|
497
|
|
b6313643
JLo'w
Déconnexion + ges...
|
498
499
|
Snackbar.make(findViewById(R.id.coordinator), "Veuillez vous reconnecter", Snackbar.LENGTH_SHORT).show();
getFragmentManager().beginTransaction().replace(R.id.fragment_container, new ConnectionFragment()).commit();
|
28dc4009
JLo'w
Déconnexion !!!!!
|
500
|
}
|
2596297c
JLo'w
Ajout d'annuler e...
|
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
|
public void annulerTransaction(int idTransaction, boolean annuler){
try{
HashMap<String, String> param = new HashMap<String, String>();
param.put("idTransaction", URLEncoder.encode(String.valueOf(idTransaction), "UTF-8"));
param.put("jeton", URLEncoder.encode(mToken, "UTF-8"));
SharedPreferences settings = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
URL url;
if(annuler){
mState = STATE_ANNULER;
url = new URL(settings.getString("server_address", null) + "api/annuler");
}
else{
mState = STATE_REFAIRE;
url = new URL(settings.getString("server_address", null) + "api/refaire");
}
NetworkThread nt = new NetworkThread(url, param);
nt.delegate = this;
nt.execute();
}
catch (Throwable t){
System.out.println(t.toString());
}
}
|
9f0e5ffc
JLo'w
Un petit popup de...
|
529
530
531
532
533
534
|
public void afficherPopup(){
Dialogue d = new Dialogue();
d.show(getFragmentManager(), null);
}
|
c8059613
JLo'w
Re-fonte de l'app...
|
535
|
}
|