diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..3963879 --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,33 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..de2dcaa --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/app/src/androidTest/java/fr/wcs/ateliercode/ExampleInstrumentedTest.java b/app/src/androidTest/java/fr/wcs/ateliercode/ExampleInstrumentedTest.java new file mode 100644 index 0000000..107380f --- /dev/null +++ b/app/src/androidTest/java/fr/wcs/ateliercode/ExampleInstrumentedTest.java @@ -0,0 +1,26 @@ +package fr.wcs.ateliercode; + +import android.content.Context; +import android.support.test.InstrumentationRegistry; +import android.support.test.runner.AndroidJUnit4; + +import org.junit.Test; +import org.junit.runner.RunWith; + +import static org.junit.Assert.*; + +/** + * Instrumented test, which will execute on an Android device. + * + * @see Testing documentation + */ +@RunWith(AndroidJUnit4.class) +public class ExampleInstrumentedTest { + @Test + public void useAppContext() throws Exception { + // Context of the app under test. + Context appContext = InstrumentationRegistry.getTargetContext(); + + assertEquals("fr.wcs.ateliercode", appContext.getPackageName()); + } +} diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 36c818e..b325227 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -20,7 +20,7 @@ - + \ No newline at end of file diff --git a/app/src/main/java/fr/wcs/blablacrade/MainActivity.java b/app/src/main/java/fr/wcs/blablacrade/MainActivity.java index 6bce270..ea0c1b4 100644 --- a/app/src/main/java/fr/wcs/blablacrade/MainActivity.java +++ b/app/src/main/java/fr/wcs/blablacrade/MainActivity.java @@ -13,15 +13,18 @@ public class MainActivity extends AppCompatActivity { protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); + Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); setSupportActionBar(toolbar); - //bouton cherché - Button Search = (Button) findViewById(R.id.gogogo); + Button Search = (Button) findViewById(R.id.button_search); Search.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view){ - Intent intent=new Intent(MainActivity.this, SearchItineraryActivity.class);startActivity(intent); - }}); + + Intent goToItineraryActivity = new Intent(MainActivity.this, SearchItineraryActivity.class); + startActivity(goToItineraryActivity); + } + }); } } diff --git a/app/src/main/java/fr/wcs/blablacrade/SearchItineraryActivity.java b/app/src/main/java/fr/wcs/blablacrade/SearchItineraryActivity.java index 7a6c121..cce7c4d 100644 --- a/app/src/main/java/fr/wcs/blablacrade/SearchItineraryActivity.java +++ b/app/src/main/java/fr/wcs/blablacrade/SearchItineraryActivity.java @@ -21,61 +21,64 @@ protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_search_itinerary); - final EditText edit1 = (EditText) findViewById(R.id.editText1); - final EditText edit2 = (EditText) findViewById(R.id.editText2); - final EditText edit3 = (EditText) findViewById(R.id.editText3); - Button buttonSearch = (Button) findViewById(R.id.push); + final EditText editDeparture = (EditText) findViewById(R.id.edit_departure); + final EditText editDestination = (EditText) findViewById(R.id.edit_destination); + final EditText editDate = (EditText) findViewById(R.id.edit_date); + Button searchList = (Button) findViewById(R.id.button_search_list); - // clicq action - buttonSearch.setOnClickListener(new View.OnClickListener() { + searchList.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { - String text1 = edit1.getText().toString(); - String text2 = edit2.getText().toString(); - String texte = edit3.getText().toString(); - - if (text1.isEmpty() || text2.isEmpty() - ) { - Toast painGrillé = Toast.makeText(getApplicationContext(), getResources().getString(R.string.form_error), Toast.LENGTH_SHORT); - painGrillé.show(); - }else {Intent intent = new Intent(SearchItineraryActivity.this, ViewSearchItineraryResultsListActivity.class); - SearchRequestModel searchRequest=new SearchRequestModel(text1, text2, texte); intent.putExtra("searchRequest", searchRequest); - - SearchItineraryActivity.this.startActivity(intent); + String textDeparture = editDeparture.getText().toString(); + String textDestination = editDestination.getText().toString(); + String textDate = editDate.getText().toString(); + + if (textDeparture.isEmpty() || textDestination.isEmpty()) { + + Toast errorToast = Toast.makeText(getApplicationContext(), getResources().getString(R.string.form_error), Toast.LENGTH_SHORT); + errorToast.show(); + + }else { + Intent goToItineraryListActivity = new Intent(SearchItineraryActivity.this, SearchItineraryListActivity.class); + SearchRequestModel searchRequest = new SearchRequestModel(textDeparture, textDestination, textDate); + goToItineraryListActivity.putExtra("searchRequest", searchRequest); + + SearchItineraryActivity.this.startActivity(goToItineraryListActivity); } } }); - final Calendar calandréi = Calendar.getInstance(); + final Calendar calendar = Calendar.getInstance(); final DatePickerDialog.OnDateSetListener dateListener = new DatePickerDialog.OnDateSetListener() { - @Override - public void onDateSet(DatePicker view,int ané,int moi,int joure){ - calandréi.set(Calendar.YEAR, ané); - calandréi.set(Calendar.MONTH, moi); - calandréi.set(Calendar.DAY_OF_MONTH, joure); - UpdateLabel(edit3, calandréi); - }}; - - edit3.setOnClickListener(new View.OnClickListener() { + public void onDateSet(DatePicker view,int year,int month,int day){ + calendar.set(Calendar.YEAR, year); + calendar.set(Calendar.MONTH, month); + calendar.set(Calendar.DAY_OF_MONTH, day); + UpdateLabel(editDate, calendar); + } + }; + + editDate.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { - new DatePickerDialog(SearchItineraryActivity.this, - dateListener, - calandréi.get(Calendar.YEAR), - calandréi.get(Calendar.MONTH), - calandréi.get(Calendar.DAY_OF_MONTH) + new DatePickerDialog( + SearchItineraryActivity.this, + dateListener, + calendar.get(Calendar.YEAR), + calendar.get(Calendar.MONTH), + calendar.get(Calendar.DAY_OF_MONTH) ).show(); } }); } - private void UpdateLabel(EditText editText, Calendar myCalendar) { - String myFormat = "dd/MM/yyyy"; + private void UpdateLabel(EditText editText, Calendar myCalendar) { + String myFormat = "dd/MM/yyyy"; - SimpleDateFormat sdf = new SimpleDateFormat(myFormat, Locale.FRANCE); + SimpleDateFormat sdf = new SimpleDateFormat(myFormat, Locale.FRANCE); - editText.setText(sdf.format(myCalendar.getTime())); - } + editText.setText(sdf.format(myCalendar.getTime())); + } } diff --git a/app/src/main/java/fr/wcs/blablacrade/SearchItineraryListActivity.java b/app/src/main/java/fr/wcs/blablacrade/SearchItineraryListActivity.java new file mode 100644 index 0000000..0cca42b --- /dev/null +++ b/app/src/main/java/fr/wcs/blablacrade/SearchItineraryListActivity.java @@ -0,0 +1,41 @@ +package fr.wcs.blablacrade; + +import android.support.v7.app.AppCompatActivity; +import android.os.Bundle; +import android.widget.ListView; +import android.widget.Toast; + +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.ArrayList; + +public class SearchItineraryListActivity extends AppCompatActivity { + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_view_search_itinerary_results_list); + + SearchRequestModel results = getIntent().getParcelableExtra("searchRequest"); + String departureString = results.getDeparture(); + String destinationString = results.getDestination(); + String dateString = results.getDate(); + + Toast.makeText(this, dateString, Toast.LENGTH_LONG).show(); + + setTitle(departureString + " >> " + destinationString); + + ListView listView = (ListView) findViewById(R.id.listViewSearchResults); + ArrayList arrayResults = new ArrayList<>(); + SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy-hh:mm"); + try { + arrayResults.add(new TripResultModel("Bernard", sdf.parse("21/02/2017-15:30"), 15)); + arrayResults.add(new TripResultModel("Jean-Jacques", sdf.parse("21/02/2017-16:00"), 20)); + arrayResults.add(new TripResultModel("Bertrand", sdf.parse("21/02/2017-16:30"), 16)); + arrayResults.add(new TripResultModel("Gertrude", sdf.parse("21/02/2017-17:00"), 40)); + } catch (ParseException e) { + } + TripResultAdapter adapter = new TripResultAdapter(this, arrayResults); + listView.setAdapter(adapter); + } +} diff --git a/app/src/main/java/fr/wcs/blablacrade/SearchRequestModel.java b/app/src/main/java/fr/wcs/blablacrade/SearchRequestModel.java index 9b20bd2..5435f67 100644 --- a/app/src/main/java/fr/wcs/blablacrade/SearchRequestModel.java +++ b/app/src/main/java/fr/wcs/blablacrade/SearchRequestModel.java @@ -9,55 +9,61 @@ public class SearchRequestModel implements Parcelable { - private String depare; - private String oùilva; - private String quan; + private String departure; + private String destination; + private String date; - public String getDepare() { - return depare; + public String getDeparture() { + return departure; } - public String getOùilva() { - return oùilva; + public String getDestination() { + return destination; } - public SearchRequestModel(String depare, String oùilva, String quan) { - this.depare = depare; - this.oùilva = oùilva; - this.quan = quan; + public SearchRequestModel(String departure, String destination, String date) { + this.departure = departure; + this.destination = destination; + this.date = date; } - protected SearchRequestModel(Parcel in) { - depare = in.readString(); - oùilva = in.readString(); - quan = in.readString(); - } + protected SearchRequestModel(Parcel in) { + departure = in.readString(); + destination = in.readString(); + date = in.readString(); + } @Override public void writeToParcel(Parcel dest, int flags) { - dest.writeString(depare); - dest.writeString(oùilva); - dest.writeString(quan); + dest.writeString(departure); + dest.writeString(destination); + dest.writeString(date); } @Override public int describeContents() { + return 0; } public static final Creator CREATOR = new Creator() { - @Override - public SearchRequestModel createFromParcel(Parcel in) { - return new SearchRequestModel(in); - } - - @Override - public SearchRequestModel[] newArray(int size) { - return new SearchRequestModel[size]; - } + + @Override + public SearchRequestModel createFromParcel(Parcel in) { + + return new SearchRequestModel(in); + + } + + @Override + public SearchRequestModel[] newArray(int size) { + + return new SearchRequestModel[size]; + + } }; - public String getQuan() { - return quan; + public String getDate() { + return date; } } diff --git a/app/src/main/java/fr/wcs/blablacrade/TripResultAdapter.java b/app/src/main/java/fr/wcs/blablacrade/TripResultAdapter.java index 9fc3867..f2a5812 100644 --- a/app/src/main/java/fr/wcs/blablacrade/TripResultAdapter.java +++ b/app/src/main/java/fr/wcs/blablacrade/TripResultAdapter.java @@ -36,6 +36,7 @@ public Object getItem(int position) { @Override public long getItemId(int position) { + return position; } @@ -43,27 +44,22 @@ public long getItemId(int position) { public View getView(int position, View convertView, ViewGroup parent) { // inflate the layout for each list row if (convertView == null) { - convertView = LayoutInflater.from(context). - inflate(R.layout.trip_item, parent, false); + convertView = LayoutInflater.from(context).inflate(R.layout.trip_item, parent, false); } // get current item to be displayed TripResultModel currentItem = (TripResultModel) getItem(position); // get the TextView for item name and item description - TextView departure = (TextView) - convertView.findViewById(R.id.texteresu1); - TextView firstname = (TextView) - convertView.findViewById(R.id.textres2); - TextView price = (TextView) - convertView.findViewById(R.id.txt); + TextView departureResults = (TextView) convertView.findViewById(R.id.text_departure); + TextView firstnameResults = (TextView) convertView.findViewById(R.id.text_firstname); + TextView price = (TextView) convertView.findViewById(R.id.text_price); //sets the text for item name and item description from the current item object - departure.setText(currentItem.getDepare().toString()); - firstname.setText(currentItem.getPrénom()); - price.setText(String.valueOf(currentItem.getPri())); + departureResults.setText(currentItem.getDeparture().toString()); + firstnameResults.setText(currentItem.getFirstname()); + price.setText(String.valueOf(currentItem.getPrice())); - // returns the view for the current row return convertView; } } \ No newline at end of file diff --git a/app/src/main/java/fr/wcs/blablacrade/TripResultModel.java b/app/src/main/java/fr/wcs/blablacrade/TripResultModel.java index a6960ae..c9ae4a1 100644 --- a/app/src/main/java/fr/wcs/blablacrade/TripResultModel.java +++ b/app/src/main/java/fr/wcs/blablacrade/TripResultModel.java @@ -8,20 +8,27 @@ public class TripResultModel { - public Date getDepare() { - return depare; + private String firstname; + private int price; + private Date departure; + + public Date getDeparture() { + + return departure; } - public int getPri() { - return pri; + public int getPrice() { + + return price; } - private String prénom; - private int pri; - public TripResultModel(String prénom, Date depare, int pri) { - this.prénom = prénom;this.depare = depare;this.pri = pri; + public TripResultModel(String firstname, Date departure, int price) { + this.firstname = firstname; + this.departure = departure; + this.price = price; } - private Date depare; - public String getPrénom() {return prénom;} + public String getFirstname() { + return firstname; + } } diff --git a/app/src/main/java/fr/wcs/blablacrade/ViewSearchItineraryResultsListActivity.java b/app/src/main/java/fr/wcs/blablacrade/ViewSearchItineraryResultsListActivity.java deleted file mode 100644 index 546ae80..0000000 --- a/app/src/main/java/fr/wcs/blablacrade/ViewSearchItineraryResultsListActivity.java +++ /dev/null @@ -1,40 +0,0 @@ -package fr.wcs.blablacrade; - -import android.support.v7.app.AppCompatActivity; -import android.os.Bundle; -import android.widget.ListView; -import android.widget.Toast; - -import java.text.ParseException; -import java.text.SimpleDateFormat; -import java.util.ArrayList; - -public class ViewSearchItineraryResultsListActivity extends AppCompatActivity { - - @Override - protected void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - setContentView(R.layout.activity_view_search_itinerary_results_list); - - SearchRequestModel truc = getIntent().getParcelableExtra("searchRequest"); - String text1 = truc.getDepare(); - String TEXTEDEUX = truc.getOùilva(); - String texte3 = truc.getQuan(); - - Toast.makeText(this, texte3, Toast.LENGTH_LONG).show(); - - setTitle(text1 + " >> " + TEXTEDEUX); - - // TODO : add résult to tableau - ListView résultat = (ListView) findViewById(R.id.listViewSearchResults); - ArrayList tableau = new ArrayList<>();SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy-hh:mm"); - try { - tableau.add(new TripResultModel("Bernard", sdf.parse("21/02/2017-15:30"), 15)); - tableau.add(new TripResultModel("Jean-Jacques", sdf.parse("21/02/2017-16:00"), 20)); - tableau.add(new TripResultModel("Bertrand", sdf.parse("21/02/2017-16:30"), 16)); - tableau.add(new TripResultModel("Gertrude", sdf.parse("21/02/2017-17:00"), 40)); - } catch (ParseException e) { - } - TripResultAdapter adapteur = new TripResultAdapter(this, tableau);résultat.setAdapter(adapteur); - } -} diff --git a/app/src/main/res/drawable-v24/ic_launcher_foreground.xml b/app/src/main/res/drawable-v24/ic_launcher_foreground.xml new file mode 100644 index 0000000..c7bd21d --- /dev/null +++ b/app/src/main/res/drawable-v24/ic_launcher_foreground.xml @@ -0,0 +1,34 @@ + + + + + + + + + + + diff --git a/app/src/main/res/drawable/ic_launcher_background.xml b/app/src/main/res/drawable/ic_launcher_background.xml new file mode 100644 index 0000000..d5fccc5 --- /dev/null +++ b/app/src/main/res/drawable/ic_launcher_background.xml @@ -0,0 +1,170 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/app/src/main/res/layout/activity_search_itinerary.xml b/app/src/main/res/layout/activity_search_itinerary.xml index 5e8e7ca..55e6c1b 100644 --- a/app/src/main/res/layout/activity_search_itinerary.xml +++ b/app/src/main/res/layout/activity_search_itinerary.xml @@ -6,47 +6,55 @@ android:padding="20dp" tools:context="fr.wcs.blablacrade.SearchItineraryActivity"> - + + + /> + android:layout_below="@+id/edit_departure" + android:text="@string/destination" /> + + - + android:layout_below="@+id/edit_destination" + android:text="@string/date" /> - +