Commit a72d73c47824abc1b8a1015ee5e40984434b8f55
1 parent
3dc52ca9
Event ?
Showing
13 changed files
with
240 additions
and
70 deletions
Show diff stats
app/src/main/java/net/plil/clubinfo/etunicorn/app/Event/CreateEvent.java
... | ... | @@ -41,6 +41,9 @@ import java.util.Map; |
41 | 41 | |
42 | 42 | public class CreateEvent extends DialogFragment { |
43 | 43 | |
44 | + private DialogInterface.OnDismissListener onDismissListener; | |
45 | + | |
46 | + | |
44 | 47 | Calendar myCalendar = Calendar.getInstance(); |
45 | 48 | |
46 | 49 | |
... | ... | @@ -186,10 +189,22 @@ public class CreateEvent extends DialogFragment { |
186 | 189 | } |
187 | 190 | |
188 | 191 | private void updateLabel() { |
189 | - String myFormat = "yyyy-MM-dd"; //In which you need put here | |
192 | + String myFormat = "yyyy-MM-dd"; | |
190 | 193 | SimpleDateFormat sdf = new SimpleDateFormat(myFormat, Locale.FRANCE); |
191 | 194 | arraySpinnerDate[0] = sdf.format(myCalendar.getTime()); |
192 | 195 | adapterDate.notifyDataSetChanged(); |
193 | 196 | } |
194 | 197 | |
198 | + public void setOnDismissListener(DialogInterface.OnDismissListener onDismissListener) { | |
199 | + this.onDismissListener = onDismissListener; | |
200 | + } | |
201 | + | |
202 | + @Override | |
203 | + public void onDismiss(DialogInterface dialog) { | |
204 | + super.onDismiss(dialog); | |
205 | + if (onDismissListener != null) { | |
206 | + onDismissListener.onDismiss(dialog); | |
207 | + } | |
208 | + } | |
209 | + | |
195 | 210 | } | ... | ... |
app/src/main/java/net/plil/clubinfo/etunicorn/app/Event/DeleteEvent.java
... | ... | @@ -31,6 +31,9 @@ import java.util.Map; |
31 | 31 | |
32 | 32 | public class DeleteEvent extends DialogFragment { |
33 | 33 | |
34 | + private DialogInterface.OnDismissListener onDismissListener; | |
35 | + | |
36 | + | |
34 | 37 | ProgressBar mProgressBar; |
35 | 38 | |
36 | 39 | public DeleteEvent() { |
... | ... | @@ -84,7 +87,7 @@ public class DeleteEvent extends DialogFragment { |
84 | 87 | public void onClick(View v) { |
85 | 88 | mProgressBar.setVisibility(View.VISIBLE); |
86 | 89 | |
87 | - JsonObjectRequest jsonObjectRequest = new JsonObjectRequest(Request.Method.DELETE, VolleyUtils.baseUri + "/evenement/" + event.getIdEvent(), null, new Response.Listener<JSONObject>() { | |
90 | + JsonObjectRequest jsonObjectRequest = new JsonObjectRequest(Request.Method.DELETE, VolleyUtils.baseUri + "/evenement/" + event.getId(), null, new Response.Listener<JSONObject>() { | |
88 | 91 | @Override |
89 | 92 | public void onResponse(JSONObject response) { |
90 | 93 | mProgressBar.setVisibility(View.GONE); |
... | ... | @@ -122,4 +125,16 @@ public class DeleteEvent extends DialogFragment { |
122 | 125 | super.onStop(); |
123 | 126 | } |
124 | 127 | |
128 | + public void setOnDismissListener(DialogInterface.OnDismissListener onDismissListener) { | |
129 | + this.onDismissListener = onDismissListener; | |
130 | + } | |
131 | + | |
132 | + @Override | |
133 | + public void onDismiss(DialogInterface dialog) { | |
134 | + super.onDismiss(dialog); | |
135 | + if (onDismissListener != null) { | |
136 | + onDismissListener.onDismiss(dialog); | |
137 | + } | |
138 | + } | |
139 | + | |
125 | 140 | } | ... | ... |
app/src/main/java/net/plil/clubinfo/etunicorn/app/Event/EventFragment.java
1 | 1 | package net.plil.clubinfo.etunicorn.app.event; |
2 | 2 | |
3 | 3 | import android.content.Context; |
4 | +import android.content.DialogInterface; | |
4 | 5 | import android.os.Bundle; |
5 | 6 | import android.support.design.widget.FloatingActionButton; |
6 | 7 | import android.support.v4.app.Fragment; |
8 | +import android.support.v4.widget.SwipeRefreshLayout; | |
7 | 9 | import android.support.v7.widget.LinearLayoutManager; |
8 | 10 | import android.support.v7.widget.RecyclerView; |
9 | 11 | import android.view.LayoutInflater; |
... | ... | @@ -11,14 +13,31 @@ import android.view.View; |
11 | 13 | import android.view.ViewGroup; |
12 | 14 | import android.widget.Toast; |
13 | 15 | |
16 | +import com.android.volley.AuthFailureError; | |
17 | +import com.android.volley.Request; | |
18 | +import com.android.volley.Response; | |
19 | +import com.android.volley.VolleyError; | |
20 | +import com.android.volley.toolbox.JsonArrayRequest; | |
21 | + | |
14 | 22 | import net.plil.clubinfo.etunicorn.R; |
23 | +import net.plil.clubinfo.etunicorn.app.MainActivity; | |
15 | 24 | import net.plil.clubinfo.etunicorn.app.NFCSupport; |
25 | +import net.plil.clubinfo.etunicorn.app.personne.ModifyPersonne; | |
16 | 26 | import net.plil.clubinfo.etunicorn.data.Event; |
27 | +import net.plil.clubinfo.etunicorn.data.Personne; | |
28 | +import net.plil.clubinfo.etunicorn.utils.ConvertBytesToString; | |
29 | +import net.plil.clubinfo.etunicorn.utils.JsonConverter; | |
30 | +import net.plil.clubinfo.etunicorn.utils.VolleyUtils; | |
31 | + | |
32 | +import org.json.JSONArray; | |
33 | +import org.json.JSONException; | |
17 | 34 | |
18 | 35 | import java.sql.Date; |
19 | 36 | import java.util.ArrayList; |
20 | 37 | import java.util.Calendar; |
38 | +import java.util.HashMap; | |
21 | 39 | import java.util.List; |
40 | +import java.util.Map; | |
22 | 41 | |
23 | 42 | /** |
24 | 43 | * A fragment representing a list of Items. |
... | ... | @@ -26,9 +45,13 @@ import java.util.List; |
26 | 45 | * Activities containing this fragment MUST implement the {@link OnListFragmentInteractionListener} |
27 | 46 | * interface. |
28 | 47 | */ |
29 | -public class EventFragment extends Fragment implements NFCSupport { | |
48 | +public class EventFragment extends Fragment implements NFCSupport, DialogInterface.OnDismissListener { | |
30 | 49 | |
31 | 50 | private OnListFragmentInteractionListener mListener; |
51 | + private SwipeRefreshLayout mSwipeRefreshLayout; | |
52 | + | |
53 | + private List<Event> events; | |
54 | + private RecyclerView.Adapter mAdapter; | |
32 | 55 | |
33 | 56 | public EventFragment() { |
34 | 57 | } |
... | ... | @@ -48,30 +71,39 @@ public class EventFragment extends Fragment implements NFCSupport { |
48 | 71 | Bundle savedInstanceState) { |
49 | 72 | View view = inflater.inflate(R.layout.fragment_event_list, container, false); |
50 | 73 | |
51 | - // Set the adapter | |
52 | 74 | Context context = view.getContext(); |
75 | + | |
53 | 76 | RecyclerView recyclerView = (RecyclerView) view.findViewById(R.id.event_list); |
54 | 77 | recyclerView.setLayoutManager(new LinearLayoutManager(context)); |
55 | 78 | |
56 | - List<Event> events = new ArrayList<>(); | |
57 | - for (int i = 0; i < 150; ++i) { | |
58 | - Event ev = new Event(); | |
59 | - ev.setNomEvent("Hello " + i); | |
60 | - ev.setPrice(15.52); | |
61 | - ev.setDate(new Date(Calendar.getInstance().getTimeInMillis())); | |
62 | - events.add(ev); | |
63 | - } | |
79 | + events = new ArrayList<>(); | |
80 | + updateEvents(); | |
81 | + mAdapter = new MyEventRecyclerViewAdapter(events, mListener, getActivity(), this); | |
82 | + recyclerView.setAdapter(mAdapter); | |
64 | 83 | |
65 | 84 | FloatingActionButton fAB = (FloatingActionButton) view.findViewById(R.id.event_add); |
66 | 85 | fAB.setOnClickListener(new View.OnClickListener() { |
67 | 86 | @Override |
68 | 87 | public void onClick(View v) { |
69 | 88 | CreateEvent newFragment = new CreateEvent(); |
89 | + newFragment.setOnDismissListener(new DialogInterface.OnDismissListener() { | |
90 | + @Override | |
91 | + public void onDismiss(DialogInterface dialog) { | |
92 | + updateEvents(); | |
93 | + } | |
94 | + }); | |
70 | 95 | newFragment.show(getFragmentManager(), "CreateEvent"); |
71 | 96 | } |
72 | 97 | }); |
73 | 98 | |
74 | - recyclerView.setAdapter(new MyEventRecyclerViewAdapter(events, mListener, getActivity())); | |
99 | + mSwipeRefreshLayout = (SwipeRefreshLayout) view.findViewById(R.id.event_swipeRefresh); | |
100 | + mSwipeRefreshLayout.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() { | |
101 | + @Override | |
102 | + public void onRefresh() { | |
103 | + updateEvents(); | |
104 | + } | |
105 | + }); | |
106 | + | |
75 | 107 | return view; |
76 | 108 | } |
77 | 109 | |
... | ... | @@ -93,6 +125,43 @@ public class EventFragment extends Fragment implements NFCSupport { |
93 | 125 | mListener = null; |
94 | 126 | } |
95 | 127 | |
128 | + private void updateEvents(){ | |
129 | + JsonArrayRequest jsonArrayRequest = new JsonArrayRequest(Request.Method.GET, VolleyUtils.baseUri + "/evenement", null, new Response.Listener<JSONArray>() { | |
130 | + @Override | |
131 | + public void onResponse(JSONArray response) { | |
132 | + try { | |
133 | + events.clear(); | |
134 | + for (int i = 0; i < response.length(); ++i) { | |
135 | + events.add(JsonConverter.getConverter().fromJson(String.valueOf(response.getJSONObject(i)), Event.class)); | |
136 | + } | |
137 | + mAdapter.notifyDataSetChanged(); | |
138 | + mSwipeRefreshLayout.setRefreshing(false); | |
139 | + } catch (JSONException e) { | |
140 | + e.printStackTrace(); | |
141 | + } | |
142 | + | |
143 | + } | |
144 | + }, new Response.ErrorListener() { | |
145 | + @Override | |
146 | + public void onErrorResponse(VolleyError error) { | |
147 | + if (error.networkResponse == null) | |
148 | + Toast.makeText(getActivity(), "Unknow error SORRY", Toast.LENGTH_LONG).show(); | |
149 | + else | |
150 | + Toast.makeText(getActivity(), ConvertBytesToString.bytesToStringVolLey(error.networkResponse.data), Toast.LENGTH_LONG).show(); | |
151 | + } | |
152 | + } | |
153 | + ) { | |
154 | + @Override | |
155 | + public Map<String, String> getHeaders() throws AuthFailureError { | |
156 | + Map<String, String> headers = new HashMap<>(); | |
157 | + headers.put("Authorization", MainActivity.session.getToken()); | |
158 | + return headers; | |
159 | + } | |
160 | + }; | |
161 | + jsonArrayRequest.setTag(ModifyPersonne.class); | |
162 | + VolleyUtils.getInstance(getContext()).addToRequestQueue(jsonArrayRequest); | |
163 | + } | |
164 | + | |
96 | 165 | @Override |
97 | 166 | public void processNFC(String idCardUser) { |
98 | 167 | PaiementEvent paiementEvent = (PaiementEvent) getFragmentManager().findFragmentByTag("paiementEvent"); |
... | ... | @@ -103,6 +172,11 @@ public class EventFragment extends Fragment implements NFCSupport { |
103 | 172 | } |
104 | 173 | } |
105 | 174 | |
175 | + @Override | |
176 | + public void onDismiss(DialogInterface dialog) { | |
177 | + updateEvents(); | |
178 | + } | |
179 | + | |
106 | 180 | /** |
107 | 181 | * This interface must be implemented by activities that contain this |
108 | 182 | * fragment to allow an interaction in this fragment to be communicated | ... | ... |
app/src/main/java/net/plil/clubinfo/etunicorn/app/Event/ModifyEvent.java
... | ... | @@ -42,6 +42,9 @@ import java.util.Map; |
42 | 42 | |
43 | 43 | public class ModifyEvent extends DialogFragment { |
44 | 44 | |
45 | + private DialogInterface.OnDismissListener onDismissListener; | |
46 | + | |
47 | + | |
45 | 48 | Calendar myCalendar = Calendar.getInstance(); |
46 | 49 | EditText mNom; |
47 | 50 | EditText mPrice; |
... | ... | @@ -100,8 +103,8 @@ public class ModifyEvent extends DialogFragment { |
100 | 103 | R.layout.simple_item_layout, arraySpinnerDate); |
101 | 104 | mDate.setAdapter(adapterDate); |
102 | 105 | |
103 | - mNom.setText(event.getNomEvent()); | |
104 | - mPrice.setText(String.format(Locale.US, "%.2f", event.getPrice())); | |
106 | + mNom.setText(event.getNom()); | |
107 | + mPrice.setText(String.format(Locale.US, "%.2f", event.getPrix())); | |
105 | 108 | |
106 | 109 | AlertDialog dialog = new AlertDialog.Builder(getActivity()) |
107 | 110 | .setTitle(R.string.modify) |
... | ... | @@ -138,14 +141,14 @@ public class ModifyEvent extends DialogFragment { |
138 | 141 | mDate.setVisibility(View.GONE); |
139 | 142 | JSONObject jsonObject = new JSONObject(); |
140 | 143 | try { |
141 | - jsonObject.put("nomEvenement", mNom.getText().toString()); | |
144 | + jsonObject.put("nom", mNom.getText().toString()); | |
142 | 145 | if (!mPrice.getText().toString().isEmpty()) |
143 | 146 | jsonObject.put("prix", Double.parseDouble(mPrice.getText().toString())); |
144 | 147 | jsonObject.put("date", mDate.getSelectedItem()); |
145 | 148 | } catch (JSONException e) { |
146 | 149 | e.printStackTrace(); |
147 | 150 | } |
148 | - JsonObjectRequest jsonObjectRequest = new JsonObjectRequest(Request.Method.POST, VolleyUtils.baseUri + "/evenement/" + event.getIdEvent(), jsonObject, new Response.Listener<JSONObject>() { | |
151 | + JsonObjectRequest jsonObjectRequest = new JsonObjectRequest(Request.Method.PUT, VolleyUtils.baseUri + "/evenement/" + event.getId(), jsonObject, new Response.Listener<JSONObject>() { | |
149 | 152 | @Override |
150 | 153 | public void onResponse(JSONObject response) { |
151 | 154 | mProgressBar.setVisibility(View.GONE); |
... | ... | @@ -161,7 +164,6 @@ public class ModifyEvent extends DialogFragment { |
161 | 164 | mNomInput.setVisibility(View.VISIBLE); |
162 | 165 | mDate.setVisibility(View.VISIBLE); |
163 | 166 | Toast.makeText(getContext(), R.string.modify_refused, Toast.LENGTH_LONG).show(); |
164 | - | |
165 | 167 | } |
166 | 168 | } |
167 | 169 | ) { |
... | ... | @@ -196,4 +198,17 @@ public class ModifyEvent extends DialogFragment { |
196 | 198 | adapterDate.notifyDataSetChanged(); |
197 | 199 | } |
198 | 200 | |
201 | + public void setOnDismissListener(DialogInterface.OnDismissListener onDismissListener) { | |
202 | + this.onDismissListener = onDismissListener; | |
203 | + } | |
204 | + | |
205 | + @Override | |
206 | + public void onDismiss(DialogInterface dialog) { | |
207 | + super.onDismiss(dialog); | |
208 | + if (onDismissListener != null) { | |
209 | + onDismissListener.onDismiss(dialog); | |
210 | + } | |
211 | + } | |
212 | + | |
213 | + | |
199 | 214 | } |
200 | 215 | \ No newline at end of file | ... | ... |
app/src/main/java/net/plil/clubinfo/etunicorn/app/Event/MyEventRecyclerViewAdapter.java
1 | 1 | package net.plil.clubinfo.etunicorn.app.event; |
2 | 2 | |
3 | 3 | import android.content.Context; |
4 | +import android.content.DialogInterface; | |
4 | 5 | import android.support.v7.app.AppCompatActivity; |
5 | 6 | import android.support.v7.widget.PopupMenu; |
6 | 7 | import android.support.v7.widget.RecyclerView; |
... | ... | @@ -22,11 +23,13 @@ class MyEventRecyclerViewAdapter extends RecyclerView.Adapter<MyEventRecyclerVie |
22 | 23 | private final List<Event> mEvents; |
23 | 24 | private final EventFragment.OnListFragmentInteractionListener mListener; |
24 | 25 | private final Context context; |
26 | + DialogInterface.OnDismissListener mOnDismissListener; | |
25 | 27 | |
26 | - MyEventRecyclerViewAdapter(List<Event> items, EventFragment.OnListFragmentInteractionListener listener, Context context) { | |
28 | + MyEventRecyclerViewAdapter(List<Event> items, EventFragment.OnListFragmentInteractionListener listener, Context context, DialogInterface.OnDismissListener mOnDismissListener) { | |
27 | 29 | mEvents = items; |
28 | 30 | mListener = listener; |
29 | 31 | this.context = context; |
32 | + this.mOnDismissListener = mOnDismissListener; | |
30 | 33 | } |
31 | 34 | |
32 | 35 | @Override |
... | ... | @@ -39,9 +42,9 @@ class MyEventRecyclerViewAdapter extends RecyclerView.Adapter<MyEventRecyclerVie |
39 | 42 | @Override |
40 | 43 | public void onBindViewHolder(final ViewHolder holder, int position) { |
41 | 44 | holder.mItem = mEvents.get(position); |
42 | - holder.mContentView.setText(mEvents.get(position).getNomEvent()); | |
43 | - holder.mPriceView.setText(String.format(Locale.US, "%.2f", mEvents.get(position).getPrice())); | |
44 | - holder.mId = mEvents.get(position).getIdEvent(); | |
45 | + holder.mContentView.setText(mEvents.get(position).getNom()); | |
46 | + holder.mPriceView.setText(String.format(Locale.US, "%.2f", mEvents.get(position).getPrix())); | |
47 | + holder.mId = mEvents.get(position).getId(); | |
45 | 48 | |
46 | 49 | holder.mView.setOnClickListener(new View.OnClickListener() { |
47 | 50 | @Override |
... | ... | @@ -65,10 +68,12 @@ class MyEventRecyclerViewAdapter extends RecyclerView.Adapter<MyEventRecyclerVie |
65 | 68 | switch (item.getItemId()) { |
66 | 69 | case R.id.delete: |
67 | 70 | DeleteEvent deleteEvent = DeleteEvent.newInstance(holder.mItem); |
71 | + deleteEvent.setOnDismissListener(mOnDismissListener); | |
68 | 72 | deleteEvent.show(((AppCompatActivity) context).getSupportFragmentManager(), "deleteConsommation"); |
69 | 73 | break; |
70 | 74 | case R.id.modify: |
71 | 75 | ModifyEvent modifyEvent = ModifyEvent.newInstance(holder.mItem); |
76 | + modifyEvent.setOnDismissListener(mOnDismissListener); | |
72 | 77 | modifyEvent.show(((AppCompatActivity) context).getSupportFragmentManager(), "modifyConsommation"); |
73 | 78 | break; |
74 | 79 | } | ... | ... |
app/src/main/java/net/plil/clubinfo/etunicorn/app/Event/PaiementEvent.java
... | ... | @@ -65,10 +65,10 @@ public class PaiementEvent extends DialogFragment implements NFCSupport { |
65 | 65 | Event event = (Event) getArguments().getSerializable("event"); |
66 | 66 | assert event != null; |
67 | 67 | |
68 | - mPaiementEventName.setText(event.getNomEvent()); | |
69 | - mPaiementEventPrice.setText(String.format(Locale.US, "%.2f โฌ", event.getPrice())); | |
68 | + mPaiementEventName.setText(event.getNom()); | |
69 | + mPaiementEventPrice.setText(String.format(Locale.US, "%.2f โฌ", event.getPrix())); | |
70 | 70 | |
71 | - eventId = event.getIdEvent(); | |
71 | + eventId = event.getId(); | |
72 | 72 | |
73 | 73 | AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); |
74 | 74 | builder | ... | ... |
app/src/main/java/net/plil/clubinfo/etunicorn/app/personne/DeletePersonne.java
... | ... | @@ -31,6 +31,9 @@ import java.util.Map; |
31 | 31 | |
32 | 32 | public class DeletePersonne extends DialogFragment { |
33 | 33 | |
34 | + private DialogInterface.OnDismissListener onDismissListener; | |
35 | + | |
36 | + | |
34 | 37 | ProgressBar mProgressBar; |
35 | 38 | |
36 | 39 | public DeletePersonne() { |
... | ... | @@ -120,4 +123,16 @@ public class DeletePersonne extends DialogFragment { |
120 | 123 | super.onStop(); |
121 | 124 | } |
122 | 125 | |
126 | + public void setOnDismissListener(DialogInterface.OnDismissListener onDismissListener) { | |
127 | + this.onDismissListener = onDismissListener; | |
128 | + } | |
129 | + | |
130 | + @Override | |
131 | + public void onDismiss(DialogInterface dialog) { | |
132 | + super.onDismiss(dialog); | |
133 | + if (onDismissListener != null) { | |
134 | + onDismissListener.onDismiss(dialog); | |
135 | + } | |
136 | + } | |
137 | + | |
123 | 138 | } | ... | ... |
app/src/main/java/net/plil/clubinfo/etunicorn/app/personne/ModifyPersonne.java
... | ... | @@ -50,6 +50,8 @@ import java.util.Map; |
50 | 50 | |
51 | 51 | public class ModifyPersonne extends DialogFragment implements NFCSupport { |
52 | 52 | |
53 | + private DialogInterface.OnDismissListener onDismissListener; | |
54 | + | |
53 | 55 | Calendar myCalendar = Calendar.getInstance(); |
54 | 56 | |
55 | 57 | EditText mCarte; |
... | ... | @@ -275,4 +277,17 @@ public class ModifyPersonne extends DialogFragment implements NFCSupport { |
275 | 277 | public void processNFC(String idCard) { |
276 | 278 | mCarte.setText(idCard); |
277 | 279 | } |
280 | + | |
281 | + public void setOnDismissListener(DialogInterface.OnDismissListener onDismissListener) { | |
282 | + this.onDismissListener = onDismissListener; | |
283 | + } | |
284 | + | |
285 | + @Override | |
286 | + public void onDismiss(DialogInterface dialog) { | |
287 | + super.onDismiss(dialog); | |
288 | + if (onDismissListener != null) { | |
289 | + onDismissListener.onDismiss(dialog); | |
290 | + } | |
291 | + } | |
292 | + | |
278 | 293 | } | ... | ... |
app/src/main/java/net/plil/clubinfo/etunicorn/app/personne/MyPersonneRecyclerViewAdapter.java
1 | 1 | package net.plil.clubinfo.etunicorn.app.personne; |
2 | 2 | |
3 | 3 | import android.content.Context; |
4 | +import android.content.DialogInterface; | |
4 | 5 | import android.support.v7.app.AppCompatActivity; |
5 | 6 | import android.support.v7.widget.PopupMenu; |
6 | 7 | import android.support.v7.widget.RecyclerView; |
... | ... | @@ -18,15 +19,18 @@ import java.util.Locale; |
18 | 19 | |
19 | 20 | class MyPersonneRecyclerViewAdapter extends RecyclerView.Adapter<MyPersonneRecyclerViewAdapter.ViewHolder> { |
20 | 21 | |
22 | + private DialogInterface.OnDismissListener mOnDismissListener; | |
23 | + | |
21 | 24 | private final List<Personne> mValues; |
22 | 25 | private final PersonneFragment.OnListFragmentInteractionListener mListener; |
23 | 26 | private final Context context; |
24 | 27 | |
25 | 28 | |
26 | - MyPersonneRecyclerViewAdapter(List<Personne> items, PersonneFragment.OnListFragmentInteractionListener listener, Context context) { | |
29 | + MyPersonneRecyclerViewAdapter(List<Personne> items, PersonneFragment.OnListFragmentInteractionListener listener, Context context, DialogInterface.OnDismissListener mOnDismissListener) { | |
27 | 30 | mValues = items; |
28 | 31 | mListener = listener; |
29 | 32 | this.context = context; |
33 | + this.mOnDismissListener = mOnDismissListener; | |
30 | 34 | } |
31 | 35 | |
32 | 36 | @Override |
... | ... | @@ -66,10 +70,12 @@ class MyPersonneRecyclerViewAdapter extends RecyclerView.Adapter<MyPersonneRecyc |
66 | 70 | switch (item.getItemId()) { |
67 | 71 | case R.id.delete: |
68 | 72 | DeletePersonne deletePersonne = DeletePersonne.newInstance(holder.mItem); |
73 | + deletePersonne.setOnDismissListener(mOnDismissListener); | |
69 | 74 | deletePersonne.show(((AppCompatActivity) context).getSupportFragmentManager(), context.getString(R.string.tag_delete_personne)); |
70 | 75 | break; |
71 | 76 | case R.id.modify: |
72 | 77 | ModifyPersonne modifyPersonne = ModifyPersonne.newInstance(holder.mItem); |
78 | + modifyPersonne.setOnDismissListener(mOnDismissListener); | |
73 | 79 | modifyPersonne.show(((AppCompatActivity) context).getSupportFragmentManager(), context.getString(R.string.tag_modify_personne)); |
74 | 80 | break; |
75 | 81 | } | ... | ... |
app/src/main/java/net/plil/clubinfo/etunicorn/app/personne/PersonneFragment.java
... | ... | @@ -40,7 +40,7 @@ import java.util.Map; |
40 | 40 | * Activities containing this fragment MUST implement the {@link OnListFragmentInteractionListener} |
41 | 41 | * interface. |
42 | 42 | */ |
43 | -public class PersonneFragment extends Fragment implements NFCSupport { | |
43 | +public class PersonneFragment extends Fragment implements NFCSupport, DialogInterface.OnDismissListener { | |
44 | 44 | |
45 | 45 | private OnListFragmentInteractionListener mListener; |
46 | 46 | private ArrayList<Personne> personnes = new ArrayList<>(); |
... | ... | @@ -72,9 +72,9 @@ public class PersonneFragment extends Fragment implements NFCSupport { |
72 | 72 | Context context = view.getContext(); |
73 | 73 | RecyclerView recyclerView = (RecyclerView) view.findViewById(R.id.personne_list); |
74 | 74 | recyclerView.setLayoutManager(new LinearLayoutManager(context)); |
75 | - mAdapter = new MyPersonneRecyclerViewAdapter(personnes, mListener, getActivity()); | |
75 | + mAdapter = new MyPersonneRecyclerViewAdapter(personnes, mListener, getActivity(), this); | |
76 | 76 | recyclerView.setAdapter(mAdapter); |
77 | - setPersonnes(); | |
77 | + updatePersonnes(); | |
78 | 78 | FloatingActionButton fAB = (FloatingActionButton) view.findViewById(R.id.personne_add); |
79 | 79 | fAB.setOnClickListener(new View.OnClickListener() { |
80 | 80 | @Override |
... | ... | @@ -83,7 +83,7 @@ public class PersonneFragment extends Fragment implements NFCSupport { |
83 | 83 | newFragment.setOnDismissListener(new DialogInterface.OnDismissListener() { |
84 | 84 | @Override |
85 | 85 | public void onDismiss(DialogInterface dialog) { |
86 | - setPersonnes(); | |
86 | + updatePersonnes(); | |
87 | 87 | } |
88 | 88 | }); |
89 | 89 | newFragment.show(getFragmentManager(), getString(R.string.tag_create_personne)); |
... | ... | @@ -94,7 +94,7 @@ public class PersonneFragment extends Fragment implements NFCSupport { |
94 | 94 | mSwipeRefreshLayout.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() { |
95 | 95 | @Override |
96 | 96 | public void onRefresh() { |
97 | - setPersonnes(); | |
97 | + updatePersonnes(); | |
98 | 98 | } |
99 | 99 | }); |
100 | 100 | |
... | ... | @@ -119,7 +119,7 @@ public class PersonneFragment extends Fragment implements NFCSupport { |
119 | 119 | mListener = null; |
120 | 120 | } |
121 | 121 | |
122 | - private void setPersonnes() { | |
122 | + private void updatePersonnes() { | |
123 | 123 | JsonArrayRequest jsonArrayRequest = new JsonArrayRequest(Request.Method.GET, VolleyUtils.baseUri + "/personne", null, new Response.Listener<JSONArray>() { |
124 | 124 | @Override |
125 | 125 | public void onResponse(JSONArray response) { |
... | ... | @@ -170,6 +170,11 @@ public class PersonneFragment extends Fragment implements NFCSupport { |
170 | 170 | |
171 | 171 | } |
172 | 172 | |
173 | + @Override | |
174 | + public void onDismiss(DialogInterface dialog) { | |
175 | + updatePersonnes(); | |
176 | + } | |
177 | + | |
173 | 178 | /** |
174 | 179 | * This interface must be implemented by activities that contain this |
175 | 180 | * fragment to allow an interaction in this fragment to be communicated | ... | ... |
app/src/main/java/net/plil/clubinfo/etunicorn/data/Event.java
... | ... | @@ -9,36 +9,36 @@ import java.util.Date; |
9 | 9 | |
10 | 10 | public class Event implements Serializable{ |
11 | 11 | |
12 | - private int idEvent; | |
13 | - private String nomEvent; | |
14 | - private double price; | |
12 | + private int id; | |
13 | + private String nom; | |
14 | + private double prix; | |
15 | 15 | private Date date; |
16 | 16 | |
17 | 17 | public Event() { |
18 | 18 | } |
19 | 19 | |
20 | - public int getIdEvent() { | |
21 | - return idEvent; | |
20 | + public int getId() { | |
21 | + return id; | |
22 | 22 | } |
23 | 23 | |
24 | - public void setIdEvent(int idEvent) { | |
25 | - this.idEvent = idEvent; | |
24 | + public void setId(int id) { | |
25 | + this.id = id; | |
26 | 26 | } |
27 | 27 | |
28 | - public String getNomEvent() { | |
29 | - return nomEvent; | |
28 | + public String getNom() { | |
29 | + return nom; | |
30 | 30 | } |
31 | 31 | |
32 | - public void setNomEvent(String nomEvent) { | |
33 | - this.nomEvent = nomEvent; | |
32 | + public void setNom(String nom) { | |
33 | + this.nom = nom; | |
34 | 34 | } |
35 | 35 | |
36 | - public double getPrice() { | |
37 | - return price; | |
36 | + public double getPrix() { | |
37 | + return prix; | |
38 | 38 | } |
39 | 39 | |
40 | - public void setPrice(double price) { | |
41 | - this.price = price; | |
40 | + public void setPrix(double prix) { | |
41 | + this.prix = prix; | |
42 | 42 | } |
43 | 43 | |
44 | 44 | public Date getDate() { | ... | ... |
app/src/main/res/layout/fragment_event.xml
1 | 1 | <?xml version="1.0" encoding="utf-8"?> |
2 | -<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" | |
3 | - android:layout_width="wrap_content" | |
2 | +<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" | |
3 | + android:layout_width="match_parent" | |
4 | 4 | android:layout_height="wrap_content" |
5 | 5 | xmlns:tools="http://schemas.android.com/tools" |
6 | 6 | android:orientation="horizontal" |
... | ... | @@ -8,30 +8,30 @@ |
8 | 8 | |
9 | 9 | <TextView |
10 | 10 | android:id="@+id/event_name" |
11 | - android:layout_width="wrap_content" | |
11 | + android:layout_width="match_parent" | |
12 | 12 | android:layout_height="wrap_content" |
13 | + android:layout_weight="17" | |
13 | 14 | android:layout_margin="@dimen/text_margin" |
14 | 15 | android:textAppearance="?attr/textAppearanceListItem" /> |
15 | 16 | |
16 | 17 | <TextView |
17 | 18 | android:id="@+id/event_price" |
18 | - android:layout_width="wrap_content" | |
19 | + android:layout_width="match_parent" | |
19 | 20 | android:layout_height="wrap_content" |
20 | 21 | android:layout_margin="@dimen/text_margin" |
21 | - android:textAppearance="?attr/textAppearanceListItem" | |
22 | - android:layout_toRightOf="@id/event_name"/> | |
22 | + android:layout_weight="7" | |
23 | + android:textAppearance="?attr/textAppearanceListItem" /> | |
23 | 24 | |
24 | 25 | <TextView |
25 | 26 | android:id="@+id/event_options" |
26 | - android:layout_width="wrap_content" | |
27 | - android:layout_height="match_parent" | |
28 | - android:layout_alignParentRight="true" | |
27 | + android:layout_width="match_parent" | |
28 | + android:layout_height="wrap_content" | |
29 | + android:layout_weight="20" | |
30 | + android:layout_margin="@dimen/text_margin" | |
29 | 31 | android:paddingRight="@dimen/activity_horizontal_margin" |
30 | - android:layout_alignParentTop="true" | |
31 | 32 | android:paddingLeft="@dimen/activity_horizontal_margin" |
32 | 33 | android:text="⋮" |
33 | 34 | android:textAppearance="?android:textAppearanceLarge" |
34 | 35 | tools:ignore="RtlHardcoded,RtlSymmetry" |
35 | - android:textStyle="normal|bold" | |
36 | - android:translationY="10dp" /> | |
37 | -</RelativeLayout> | |
36 | + android:textStyle="normal|bold" /> | |
37 | +</LinearLayout> | ... | ... |
app/src/main/res/layout/fragment_event_list.xml
... | ... | @@ -6,17 +6,22 @@ |
6 | 6 | android:layout_width="match_parent" |
7 | 7 | android:layout_height="match_parent"> |
8 | 8 | |
9 | - <android.support.v7.widget.RecyclerView | |
10 | - android:id="@+id/event_list" | |
11 | - android:name="net.plil.clubinfo.etunicorn.app.event.EventFragment" | |
9 | + <android.support.v4.widget.SwipeRefreshLayout | |
10 | + android:id="@+id/event_swipeRefresh" | |
12 | 11 | android:layout_width="match_parent" |
13 | - android:layout_height="match_parent" | |
14 | - android:layout_marginLeft="16dp" | |
15 | - android:layout_marginRight="16dp" | |
16 | - app:layoutManager="LinearLayoutManager" | |
17 | - tools:context="net.plil.clubinfo.etunicorn.app.event.EventFragment" | |
18 | - tools:listitem="@layout/fragment_event" | |
19 | - /> | |
12 | + android:layout_height="match_parent"> | |
13 | + <android.support.v7.widget.RecyclerView | |
14 | + android:id="@+id/event_list" | |
15 | + android:name="net.plil.clubinfo.etunicorn.app.event.EventFragment" | |
16 | + android:layout_width="match_parent" | |
17 | + android:layout_height="match_parent" | |
18 | + android:layout_marginLeft="16dp" | |
19 | + android:layout_marginRight="16dp" | |
20 | + app:layoutManager="LinearLayoutManager" | |
21 | + tools:context="net.plil.clubinfo.etunicorn.app.event.EventFragment" | |
22 | + tools:listitem="@layout/fragment_event" | |
23 | + /> | |
24 | + </android.support.v4.widget.SwipeRefreshLayout> | |
20 | 25 | |
21 | 26 | <android.support.design.widget.FloatingActionButton |
22 | 27 | android:layout_width="wrap_content" | ... | ... |