add to cart actions

This commit is contained in:
2017-10-15 17:47:42 +03:00
parent 1b53949ef3
commit 7214dc296c
15 changed files with 124 additions and 213 deletions

View File

@@ -45,6 +45,7 @@ dependencies {
compile 'com.github.AndroidDeveloperLB:DialogShard:3' compile 'com.github.AndroidDeveloperLB:DialogShard:3'
compile 'com.github.HITGIF:TextFieldBoxes:1.3.3' compile 'com.github.HITGIF:TextFieldBoxes:1.3.3'
compile 'io.github.luizgrp.sectionedrecyclerviewadapter:sectionedrecyclerviewadapter:1.1.3' compile 'io.github.luizgrp.sectionedrecyclerviewadapter:sectionedrecyclerviewadapter:1.1.3'
compile 'com.squareup.okhttp3:logging-interceptor:3.9.0'
compile 'q.rorbin:badgeview:1.1.0' compile 'q.rorbin:badgeview:1.1.0'
testCompile 'junit:junit:4.12' testCompile 'junit:junit:4.12'
annotationProcessor 'com.jakewharton:butterknife-compiler:8.5.1' annotationProcessor 'com.jakewharton:butterknife-compiler:8.5.1'

View File

@@ -131,6 +131,7 @@ public class LoginActivity extends BaseActivity {
response.body().isSuccess()){ response.body().isSuccess()){
SharedPrefsHelper.setCartItemCount(response.body().getData().getProducts().size()); SharedPrefsHelper.setCartItemCount(response.body().getData().getProducts().size());
startActivity(new Intent(LoginActivity.this, MainActivity.class)); startActivity(new Intent(LoginActivity.this, MainActivity.class));
finishAffinity();
} }
else else

View File

@@ -5,6 +5,7 @@ import android.os.Bundle;
import android.view.View; import android.view.View;
import android.widget.Button; import android.widget.Button;
import java.util.HashMap;
import java.util.List; import java.util.List;
import butterknife.BindString; import butterknife.BindString;
@@ -102,12 +103,7 @@ public class RegisterActivity extends BaseActivity {
private void registerUser(){ private void registerUser(){
DialogHelper.showLoadingDialog(); DialogHelper.showLoadingDialog();
Call<ResponseObject<UserModel>> call = ApiService.apiInterface.register( Call<ResponseObject<UserModel>> call = ApiService.apiInterface.register(getRegisterParams());
pizzalinkEditTextList.get(0).getText(), pizzalinkEditTextList.get(1).getText(),
pizzalinkEditTextList.get(2).getText(), pizzalinkEditTextList.get(3).getText(),
pizzalinkEditTextList.get(4).getText(), pizzalinkEditTextList.get(5).getText(),
pizzalinkEditTextList.get(6).getText(), "",
pizzalinkEditTextList.get(7).getText(), pizzalinkEditTextList.get(8).getText(), "1","1");
call.enqueue(new Callback<ResponseObject<UserModel>>() { call.enqueue(new Callback<ResponseObject<UserModel>>() {
@Override @Override
public void onResponse(Call<ResponseObject<UserModel>> call, Response<ResponseObject<UserModel>> response) { public void onResponse(Call<ResponseObject<UserModel>> call, Response<ResponseObject<UserModel>> response) {
@@ -120,6 +116,7 @@ public class RegisterActivity extends BaseActivity {
SharedPrefsHelper.saveCustomerToken(response.body().getData().getToken()); SharedPrefsHelper.saveCustomerToken(response.body().getData().getToken());
SharedPrefsHelper.setCustomerLoggedIn(true); SharedPrefsHelper.setCustomerLoggedIn(true);
startActivity(new Intent(RegisterActivity.this, MainActivity.class)); startActivity(new Intent(RegisterActivity.this, MainActivity.class));
finishAffinity();
} }
else else
ApiErrorUtils.parseError(response); ApiErrorUtils.parseError(response);
@@ -133,11 +130,28 @@ public class RegisterActivity extends BaseActivity {
}); });
} }
private HashMap<String, Object> getRegisterParams(){
HashMap<String, Object> params = new HashMap<>();
params.put("firstname", pizzalinkEditTextList.get(0).getText());
params.put("lastname", pizzalinkEditTextList.get(1).getText());
params.put("telephone", pizzalinkEditTextList.get(2).getText());
params.put("email", pizzalinkEditTextList.get(3).getText());
params.put("password", pizzalinkEditTextList.get(4).getText());
params.put("password1", pizzalinkEditTextList.get(5).getText());
params.put("address_1", pizzalinkEditTextList.get(6).getText());
params.put("address_2", "");
params.put("city", pizzalinkEditTextList.get(7).getText());
params.put("postcode", pizzalinkEditTextList.get(8).getText());
params.put("country_id", "1");
params.put("zone_id", "1");
return params;
}
private void setTestFields(){ private void setTestFields(){
pizzalinkEditTextList.get(0).getEditText().setText("testname"); pizzalinkEditTextList.get(0).getEditText().setText("testname");
pizzalinkEditTextList.get(1).getEditText().setText("testsurname"); pizzalinkEditTextList.get(1).getEditText().setText("testsurname");
pizzalinkEditTextList.get(2).getEditText().setText("1234567890"); pizzalinkEditTextList.get(2).getEditText().setText("1234567890");
pizzalinkEditTextList.get(3).getEditText().setText("test2@test.com"); pizzalinkEditTextList.get(3).getEditText().setText("test3@test.com");
pizzalinkEditTextList.get(4).getEditText().setText("test"); pizzalinkEditTextList.get(4).getEditText().setText("test");
pizzalinkEditTextList.get(5).getEditText().setText("test"); pizzalinkEditTextList.get(5).getEditText().setText("test");
pizzalinkEditTextList.get(6).getEditText().setText("test address 1"); pizzalinkEditTextList.get(6).getEditText().setText("test address 1");

View File

@@ -41,7 +41,6 @@ public class SplashActivity extends BaseActivity {
getCategoryList(); getCategoryList();
else else
DialogHelper.showNoNetworkDialog(); DialogHelper.showNoNetworkDialog();
//startActivity(new Intent(this, MainActivity.class));
} }
private void getCategoryList(){ private void getCategoryList(){

View File

@@ -15,6 +15,7 @@ public class ApiEndPoints {
public static final String API_GET_PRODUCTS_BY_CATEGORY = PREFIX + "getProductsByCategory" + SUFFIX; public static final String API_GET_PRODUCTS_BY_CATEGORY = PREFIX + "getProductsByCategory" + SUFFIX;
public static final String API_GET_PRODUCT = PREFIX + "getProduct" + SUFFIX; public static final String API_GET_PRODUCT = PREFIX + "getProduct" + SUFFIX;
//public static final String API_ADD_PRODUCTS_TO_BASKET = PREFIX + "addProductsToBasket" + SUFFIX + "&token=sor37aVmOYP1v4OxpCsv11w3DkeGDttB"; //public static final String API_ADD_PRODUCTS_TO_BASKET = PREFIX + "addProductsToBasket" + SUFFIX + "&token=sor37aVmOYP1v4OxpCsv11w3DkeGDttB";
public static final String API_ADD_PRODUCTS_TO_BASKET = PREFIX + "addProductsToBasket" + SUFFIX; //public static final String API_ADD_PRODUCTS_TO_BASKET = PREFIX + "addProductsToBasket" + SUFFIX;
public static final String API_ADD_PRODUCTS_TO_BASKET = PREFIX + "addProductsToBasket" + SUFFIX + "&token=";
} }

View File

@@ -1,6 +1,5 @@
package ch.pizzalink.android.api; package ch.pizzalink.android.api;
import java.util.ArrayList;
import java.util.HashMap; import java.util.HashMap;
import ch.pizzalink.android.model.AddProductToBasketResponseModel; import ch.pizzalink.android.model.AddProductToBasketResponseModel;
@@ -10,14 +9,13 @@ import ch.pizzalink.android.model.OrderModel;
import ch.pizzalink.android.model.UserModel; import ch.pizzalink.android.model.UserModel;
import ch.pizzalink.android.model.menu.MenuProductModel; import ch.pizzalink.android.model.menu.MenuProductModel;
import retrofit2.Call; import retrofit2.Call;
import retrofit2.http.Body;
import retrofit2.http.Field; import retrofit2.http.Field;
import retrofit2.http.FieldMap; import retrofit2.http.FieldMap;
import retrofit2.http.FormUrlEncoded; import retrofit2.http.FormUrlEncoded;
import retrofit2.http.GET; import retrofit2.http.GET;
import retrofit2.http.Header;
import retrofit2.http.POST; import retrofit2.http.POST;
import retrofit2.http.Query; import retrofit2.http.Query;
import retrofit2.http.Url;
/** /**
* Created by cimenmus on 04/02/2017. * Created by cimenmus on 04/02/2017.
@@ -28,6 +26,7 @@ public interface ApiInterface {
@GET(ApiEndPoints.API_GET_ALL_CATEGORIES) @GET(ApiEndPoints.API_GET_ALL_CATEGORIES)
Call<ResponseArray<CategoryModel>> getAllCategories(); Call<ResponseArray<CategoryModel>> getAllCategories();
/*
@FormUrlEncoded @FormUrlEncoded
@POST(ApiEndPoints.API_REGISTER) @POST(ApiEndPoints.API_REGISTER)
Call<ResponseObject<UserModel>> register(@Field("firstname") String firstname, Call<ResponseObject<UserModel>> register(@Field("firstname") String firstname,
@@ -42,6 +41,13 @@ public interface ApiInterface {
@Field("postcode") String postcode, @Field("postcode") String postcode,
@Field("country_id") String country_id, @Field("country_id") String country_id,
@Field("zone_id") String zone_id); @Field("zone_id") String zone_id);
*/
@FormUrlEncoded
@POST(ApiEndPoints.API_REGISTER)
Call<ResponseObject<UserModel>> register(@FieldMap HashMap<String, Object> body);
@FormUrlEncoded @FormUrlEncoded
@POST(ApiEndPoints.API_LOGIN) @POST(ApiEndPoints.API_LOGIN)
@@ -67,174 +73,9 @@ public interface ApiInterface {
@POST(ApiEndPoints.API_GET_PRODUCT) @POST(ApiEndPoints.API_GET_PRODUCT)
Call<ResponseArray<MenuProductModel>> getProductById(@Field("product_id") int productId); Call<ResponseArray<MenuProductModel>> getProductById(@Field("product_id") int productId);
@POST(ApiEndPoints.API_ADD_PRODUCTS_TO_BASKET)
Call<ResponseObject<AddProductToBasketResponseModel>> addProductsToBasket(@Body HashMap<String, Object> body);
/*
// default encoded is false
@FormUrlEncoded @FormUrlEncoded
@POST(ApiEndPoints.API_ADD_PRODUCTS_TO_BASKET) @POST
Call<ResponseObject<AddProductToBasketResponseModel>> addProductsToBasket(@FieldMap(encoded = true) HashMap<String, Object> fields); Call<ResponseObject<AddProductToBasketResponseModel>> addProductsToBasket(@Url String url,
*/ @FieldMap HashMap<String, Object> body);
/*
{
"product_id": "56",
"quantity": "1",
"token": "wXTVshBk2TU4XJmb23wa320zOBRodw4K",
"options": [
{
"optionId" : "232",
"optionValue" : "34"
},
{
"optionId" : "232",
"optionValue" : "33"
},
{
"optionId" : "231",
"optionValue" : "31"
}
]
}
*/
/*
@GET(ApiEndPoints.API_GET_ALL_CATEGORIES)
Call<CategoryListResponseModel> getAllCategories();
@GET(ApiEndPoints.API_GET_ALL_AUTHORS)
Call<AuthorListResponseModel> getAllAuthors();
@GET(ApiEndPoints.API_GET_MAGAZINES)
Call<MagazineListResponseModel> getMagazineList();
@GET(ApiEndPoints.API_GET_MAIN_PAGE_NEWS)
Call<NewsListResponseModel> getMainPageNews();
@GET(ApiEndPoints.API_GET_NEWS_LIST_BY_CATEGORY)
Call<NewsListResponseModel> getNewsListByCategory(@Query("category_id") String categoryId);
@GET(ApiEndPoints.API_GET_NEWS_DETAILS)
Call<NewsDetailsResponseModel> getNewsDetails(@Query("article_id") String articleId);
@GET(ApiEndPoints.API_GET_NEWS_DETAILS)
Call<NewsDetailsResponseModel> getVideoNewsDetails(@Query("article_id") String articleId, @Query("video") String video);
@GET(ApiEndPoints.API_GET_TAGS_OF_NEWS)
Call<NewsDetailsResponseModel> getTagsOfNews(@Query("getTagsByArticle") String articleId);
// NOT : tag ları yazarken boşluk yerine %20 işreti koy
@GET(ApiEndPoints.API_GET_NEWS_LIST_BY_TAG)
Call<NewsListResponseModel> getNewsListByTag(@Query("tag_name") String tagName);
@GET(ApiEndPoints.API_GET_ARTICLES_OF_AUTHOR)
Call<NewsListResponseModel> getArticlesOfAuthor(@Query("author_id") String authorId);
@GET(ApiEndPoints.API_GET_ARTICLE_DETAILS)
Call<NewsDetailsResponseModel> getArticleDetails(@Query("article_id") String articleId);
@GET(ApiEndPoints.API_GET_EVENT_LOCATIONS)
Call<EventLocationListResponseModel> getEventLocations();
@GET(ApiEndPoints.API_GET_CURRENT_EVENTS)
Call<EventListResponseModel> getCurrentEvents();
@GET(ApiEndPoints.API_GET_CURRENT_EVENTS)
Call<EventListResponseModel> getCurrentEvents(@Query("location") String locationName);
@GET(ApiEndPoints.API_GET_UPCOMING_EVENTS)
Call<EventListResponseModel> getUpcomingEvents(@Query("day") String dayCount);
@GET(ApiEndPoints.API_GET_UPCOMING_EVENTS)
Call<EventListResponseModel> getUpcomingEvents(@Query("day") String dayCount, @Query("location") String locationName);
@GET(ApiEndPoints.API_GET_SQUARE_ADS)
Call<AdResponseModel> getSquareAds();
@GET(ApiEndPoints.API_GET_BANNER_ADS)
Call<AdResponseModel> getBannerAds();
@FormUrlEncoded
@POST(ApiEndPoints.API_CUSTOMER_LOGIN)
Call<LoginCustomerResponseModel> loginUser(@Field("email") String email, @Field("password") String password);
@FormUrlEncoded
@POST(ApiEndPoints.API_CUSTOMER_LOG_OUT)
Call<ResponseModel> logoutUser(@Field("token") String customerToken);
@FormUrlEncoded
@POST(ApiEndPoints.API_REGISTER_CUSTOMER)
Call<LoginCustomerResponseModel> registerCustomer(@Field("customer_name") String name, @Field("customer_surname") String surname,
@Field("customer_mail") String email, @Field("customer_phone") String phone,
@Field("customer_password") String password);
@FormUrlEncoded
@POST(ApiEndPoints.API_GET_CUSTOMER_INFO)
Call<CustomerInfoResponseModel> getCustomerInfo(@Field("token") String customerToken);
@FormUrlEncoded
@POST(ApiEndPoints.API_GET_STORE_CUSTOMER_INFO)
Call<StoreCustomerInfoResponseModel> getStoreCustomerInfo(@Field("token") String customerToken);
@FormUrlEncoded
@POST(ApiEndPoints.API_REFRESH_CUSTOMER_TOKEN)
Call<RefreshTokenResponseModel> refreshCustomerToken(@Field("refresh_token") String refreshToken);
@FormUrlEncoded
@POST(ApiEndPoints.API_REFRESH_STORE_CUSTOMER_TOKEN)
Call<RefreshTokenResponseModel> refreshStoreCustomerToken(@Field("refresh_token") String refreshToken);
@FormUrlEncoded
@POST(ApiEndPoints.API_GET_ALL_CAMPAIGNS)
Call<AllCampaignsResponseModel> getAllCampaigns(@Field("token") String customerToken);
@FormUrlEncoded
@POST(ApiEndPoints.API_GET_CAMPAIGN_DETAILS)
Call<AllCampaignsResponseModel> getCampaignDetails(@Field("token") String customerToken,
@Field("campaign_id") String campaignId);
@FormUrlEncoded
@POST(ApiEndPoints.API_GET_CAMPAIGN_LIST_OF_COMPANY)
Call<AllCampaignsResponseModel> getCampaingsOfCompany(@Field("token") String customerToken,
@Field("firm_barcode") String firmBarcode);
@FormUrlEncoded
@POST(ApiEndPoints.API_STORE_CUSTOMER_LOGIN)
Call<LoginStoreCustomerResponseModel> loginStoreCustomer(@Field("username") String email, @Field("password") String password);
@POST(ApiEndPoints.API_CUSTOMER_LOGIN)
Call<LoginCustomerResponseModel> loginUser(@Body HashMap<String, Object> body);
*/
} }

View File

@@ -10,6 +10,7 @@ import okhttp3.Interceptor;
import okhttp3.OkHttpClient; import okhttp3.OkHttpClient;
import okhttp3.Request; import okhttp3.Request;
import okhttp3.Response; import okhttp3.Response;
import okhttp3.logging.HttpLoggingInterceptor;
import retrofit2.Retrofit; import retrofit2.Retrofit;
import retrofit2.converter.gson.GsonConverterFactory; import retrofit2.converter.gson.GsonConverterFactory;
@@ -27,8 +28,10 @@ public class ApiService {
public void reset() { public void reset() {
Gson gson = new GsonBuilder() Gson gson = new GsonBuilder()
.setLenient()
.create(); .create();
OkHttpClient.Builder builder = new OkHttpClient().newBuilder(); OkHttpClient.Builder builder = new OkHttpClient().newBuilder();
builder.readTimeout(ApiConstants.API_READ_TIMEOUT, TimeUnit.SECONDS); builder.readTimeout(ApiConstants.API_READ_TIMEOUT, TimeUnit.SECONDS);
builder.connectTimeout(ApiConstants.API_CONNECT_TIMEOUT, TimeUnit.SECONDS); builder.connectTimeout(ApiConstants.API_CONNECT_TIMEOUT, TimeUnit.SECONDS);
@@ -45,6 +48,10 @@ public class ApiService {
} }
}); });
HttpLoggingInterceptor logging = new HttpLoggingInterceptor(); // set your desired log level
logging.setLevel(HttpLoggingInterceptor.Level.BODY);
builder.addInterceptor(logging);
OkHttpClient client = builder.build(); OkHttpClient client = builder.build();
retrofit = new Retrofit.Builder() retrofit = new Retrofit.Builder()

View File

@@ -25,6 +25,7 @@ import ch.pizzalink.android.activity.BaseActivity;
import ch.pizzalink.android.activity.MainActivity; import ch.pizzalink.android.activity.MainActivity;
import ch.pizzalink.android.adapter.recycler.ProductCheckboxOptionsRecyclerAdapter; import ch.pizzalink.android.adapter.recycler.ProductCheckboxOptionsRecyclerAdapter;
import ch.pizzalink.android.adapter.recycler.ProductRadioOptionsRecyclerAdapter; import ch.pizzalink.android.adapter.recycler.ProductRadioOptionsRecyclerAdapter;
import ch.pizzalink.android.api.ApiEndPoints;
import ch.pizzalink.android.api.ApiErrorUtils; import ch.pizzalink.android.api.ApiErrorUtils;
import ch.pizzalink.android.api.ApiService; import ch.pizzalink.android.api.ApiService;
import ch.pizzalink.android.api.ResponseObject; import ch.pizzalink.android.api.ResponseObject;
@@ -222,7 +223,7 @@ public class ProductPropertiesBottomSheetDialog extends BottomSheetDialogFragmen
private void addProductToCart(){ private void addProductToCart(){
DialogHelper.showLoadingDialog(); DialogHelper.showLoadingDialog();
Call<ResponseObject<AddProductToBasketResponseModel>> call = Call<ResponseObject<AddProductToBasketResponseModel>> call =
ApiService.apiInterface.addProductsToBasket(getAddToCartRequestParams()); ApiService.apiInterface.addProductsToBasket(ApiEndPoints.API_ADD_PRODUCTS_TO_BASKET + SessionHelper.getCustomerToken().getToken(), getAddToCartRequestParams());
call.enqueue(new Callback<ResponseObject<AddProductToBasketResponseModel>>() { call.enqueue(new Callback<ResponseObject<AddProductToBasketResponseModel>>() {
@Override @Override
public void onResponse(Call<ResponseObject<AddProductToBasketResponseModel>> call, Response<ResponseObject<AddProductToBasketResponseModel>> response) { public void onResponse(Call<ResponseObject<AddProductToBasketResponseModel>> call, Response<ResponseObject<AddProductToBasketResponseModel>> response) {
@@ -234,6 +235,8 @@ public class ProductPropertiesBottomSheetDialog extends BottomSheetDialogFragmen
SharedPrefsHelper.setCartItemCount(SharedPrefsHelper.getCartItemCount() + 1); SharedPrefsHelper.setCartItemCount(SharedPrefsHelper.getCartItemCount() + 1);
MainActivity mainActivity = (MainActivity) getActivity(); MainActivity mainActivity = (MainActivity) getActivity();
mainActivity.setCartItemCount(); mainActivity.setCartItemCount();
} }
else else
DialogHelper.showDialogWithPositiveButton(BaseActivity.currentActivity, response.body().getData().getErrorMessage()); DialogHelper.showDialogWithPositiveButton(BaseActivity.currentActivity, response.body().getData().getErrorMessage());
@@ -254,29 +257,36 @@ public class ProductPropertiesBottomSheetDialog extends BottomSheetDialogFragmen
private HashMap<String, Object> getAddToCartRequestParams(){ private HashMap<String, Object> getAddToCartRequestParams(){
HashMap<String, Object> params = new HashMap<>(); HashMap<String, Object> params = new HashMap<>();
params.put("product_id", menuProductModel.getId());
params.put("quantity", productCount);
for(MenuProductOptionModel productOptionModel : menuProductModel.getProductOptionList()){ for(MenuProductOptionModel productOptionModel : menuProductModel.getProductOptionList()){
ArrayList<String> selectedOptionsList = new ArrayList<>(); ArrayList<String> selectedCheckboxOptionList = new ArrayList<>();
for(MenuProductOptionValueModel productOptionValueModel : productOptionModel.getOptionValueModelList()){ for(MenuProductOptionValueModel productOptionValueModel : productOptionModel.getOptionValueModelList()){
if(productOptionValueModel.isSelected()){ if(productOptionValueModel.isSelected()){
selectedOptionsList.add(productOptionValueModel.getProductOptionValueId());
//params.put("product[" + productOptionModel.getProductOptionId() + "]", productOptionValueModel.getProductOptionValueId());
if(productOptionModel.getType().equals("checkbox")){
selectedCheckboxOptionList.add(productOptionValueModel.getProductOptionValueId());
}
else {
params.put("option[" + productOptionModel.getProductOptionId() + "]", productOptionValueModel.getProductOptionValueId());
}
} }
} }
params.put("product[" + productOptionModel.getProductOptionId() + "]", selectedOptionsList); if(productOptionModel.getType().equals("checkbox")){
params.put("option[" + productOptionModel.getProductOptionId() + "]", selectedCheckboxOptionList);
}
} }
params.put("product_id", menuProductModel.getId());
params.put("token", SessionHelper.getCustomerToken().getToken());
params.put("quantity", productCount);
return params; return params;
} }
private boolean checkFields(){ private boolean checkFields(){
if(radioRecyclerView.getVisibility() == View.VISIBLE && if(radioRecyclerView.getVisibility() == View.VISIBLE &&
@@ -305,12 +315,4 @@ public class ProductPropertiesBottomSheetDialog extends BottomSheetDialogFragmen
return false; return false;
} }
/*
@Override
public void onItemClick(Item item) {
mBehavior.setState(BottomSheetBehavior.STATE_HIDDEN);
}
*/
} }

View File

@@ -1,6 +1,7 @@
package ch.pizzalink.android.fragment; package ch.pizzalink.android.fragment;
import android.os.Bundle; import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.v7.widget.LinearLayoutManager; import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView; import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater; import android.view.LayoutInflater;
@@ -11,6 +12,9 @@ import android.widget.LinearLayout;
import android.widget.RelativeLayout; import android.widget.RelativeLayout;
import android.widget.TextView; import android.widget.TextView;
import com.afollestad.materialdialogs.DialogAction;
import com.afollestad.materialdialogs.MaterialDialog;
import java.util.ArrayList; import java.util.ArrayList;
import butterknife.BindColor; import butterknife.BindColor;
@@ -52,6 +56,8 @@ public class CartFragment extends BaseFragment {
@BindView(R.id.clearCartButton) Button clearCartButton; @BindView(R.id.clearCartButton) Button clearCartButton;
@BindString(R.string.bottom_nav_menu_item_cart) String fragmentTitle; @BindString(R.string.bottom_nav_menu_item_cart) String fragmentTitle;
@BindString(R.string.alert_clear_cart) String clearCartAlertText;
@BindColor(R.color.actvity_default_background_color_1) int grayColor; @BindColor(R.color.actvity_default_background_color_1) int grayColor;
@BindColor(R.color.white) int whiteColor; @BindColor(R.color.white) int whiteColor;
@@ -85,7 +91,18 @@ public class CartFragment extends BaseFragment {
protected void onClick(View view){ protected void onClick(View view){
switch (view.getId()){ switch (view.getId()){
case R.id.clearCartButton: case R.id.clearCartButton:
clearCart(); DialogHelper.showTwoButtonsDialog(BaseActivity.currentActivity, clearCartAlertText,
new MaterialDialog.SingleButtonCallback() {
@Override
public void onClick(@NonNull MaterialDialog dialog, @NonNull DialogAction which) {
clearCart();
}
}, new MaterialDialog.SingleButtonCallback() {
@Override
public void onClick(@NonNull MaterialDialog dialog, @NonNull DialogAction which) {
dialog.dismiss();
}
});
break; break;
case R.id.continueCartButton: case R.id.continueCartButton:
break; break;

View File

@@ -2,11 +2,15 @@ package ch.pizzalink.android.fragment;
import android.content.Intent; import android.content.Intent;
import android.os.Bundle; import android.os.Bundle;
import android.support.annotation.NonNull;
import android.view.LayoutInflater; import android.view.LayoutInflater;
import android.view.View; import android.view.View;
import android.view.ViewGroup; import android.view.ViewGroup;
import android.widget.Button; import android.widget.Button;
import com.afollestad.materialdialogs.DialogAction;
import com.afollestad.materialdialogs.MaterialDialog;
import butterknife.BindString; import butterknife.BindString;
import butterknife.BindView; import butterknife.BindView;
import butterknife.ButterKnife; import butterknife.ButterKnife;
@@ -33,6 +37,8 @@ public class ProfileFragment extends BaseFragment {
@BindView(R.id.logoutButton) Button logoutButton; @BindView(R.id.logoutButton) Button logoutButton;
@BindString(R.string.bottom_nav_menu_item_profile) String fragmentTitle; @BindString(R.string.bottom_nav_menu_item_profile) String fragmentTitle;
@BindString(R.string.alert_logout) String logoutAlertText;
public static final java.lang.String FRAGMENT_NAME = "profileFragment"; public static final java.lang.String FRAGMENT_NAME = "profileFragment";
@@ -57,7 +63,18 @@ public class ProfileFragment extends BaseFragment {
@OnClick(R.id.logoutButton) @OnClick(R.id.logoutButton)
public void onClick(View view){ public void onClick(View view){
logOutOnWeb(); DialogHelper.showTwoButtonsDialog(BaseActivity.currentActivity, logoutAlertText,
new MaterialDialog.SingleButtonCallback() {
@Override
public void onClick(@NonNull MaterialDialog dialog, @NonNull DialogAction which) {
logOutOnWeb();
}
}, new MaterialDialog.SingleButtonCallback() {
@Override
public void onClick(@NonNull MaterialDialog dialog, @NonNull DialogAction which) {
dialog.dismiss();
}
});
} }

View File

@@ -13,11 +13,18 @@ public class DialogHelper {
private static MaterialDialog loadingDialog; private static MaterialDialog loadingDialog;
public static void showDialogWithPositiveButton(Context context, String content) { public static void showDialogWithPositiveButton(Context context, String message) {
showDialogWithPositiveButton("", context, message);
}
public static void showDialogWithPositiveButton(String title, Context context, String message) {
if(title.isEmpty())
title = context.getString(R.string.app_name);
new MaterialDialog.Builder(context) new MaterialDialog.Builder(context)
.title(R.string.alert) .title(title)
.content(content) .content(message)
.positiveText(R.string.ok) .positiveText(R.string.ok)
.positiveColor(ContextCompat.getColor(context, R.color.colorPrimary)) .positiveColor(ContextCompat.getColor(context, R.color.colorPrimary))
.onPositive(new MaterialDialog.SingleButtonCallback() { .onPositive(new MaterialDialog.SingleButtonCallback() {
@@ -83,19 +90,17 @@ public class DialogHelper {
} }
} }
/* public static void showTwoButtonsDialog(Context context, String message,
MaterialDialog.SingleButtonCallback positiveButtonCallback,
public static void showDialogWithPositiveButtonCallback(Context context, String content, MaterialDialog.SingleButtonCallback negativeButtonCallback){
MaterialDialog.SingleButtonCallback positiveButtonCallback) {
new MaterialDialog.Builder(context) new MaterialDialog.Builder(context)
.title(R.string.alert) .title(R.string.alert)
.content(content) .content(message)
.positiveText(R.string.ok) .positiveText(R.string.ok)
.positiveColor(ContextCompat.getColor(context, R.color.colorPrimary))
.onPositive(positiveButtonCallback) .onPositive(positiveButtonCallback)
.negativeText(R.string.cancel)
.onNegative(negativeButtonCallback)
.show(); .show();
} }
*/
} }

View File

@@ -10,7 +10,8 @@ import com.google.gson.annotations.SerializedName;
public class AddProductToBasketResponseModel { public class AddProductToBasketResponseModel {
@Expose @SerializedName("success") private String successMessage; @Expose @SerializedName("success") private String successMessage;
@Expose @SerializedName("parameter") private String errorMessage; @Expose @SerializedName("option") private String errorMessage;
//@Expose @SerializedName("parameter") private String errorMessage;
public String getSuccessMessage() { public String getSuccessMessage() {
return successMessage; return successMessage;

View File

@@ -49,7 +49,8 @@
android:id="@+id/emailPizzalinkEditText" android:id="@+id/emailPizzalinkEditText"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
app:hint="@string/email"/> app:hint="@string/email"
app:inputType="email"/>
<ch.pizzalink.android.view.PizzalinkEditText <ch.pizzalink.android.view.PizzalinkEditText
android:id="@+id/passwordPizzalinkEditText" android:id="@+id/passwordPizzalinkEditText"

View File

@@ -24,6 +24,7 @@
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_above="@+id/cartInfoLayout" android:layout_above="@+id/cartInfoLayout"
android:scrollbars="vertical"
android:visibility="gone"/> android:visibility="gone"/>
<LinearLayout <LinearLayout
@@ -37,7 +38,7 @@
<View <View
android:id="@+id/cartDividerSpace" android:id="@+id/cartDividerSpace"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="2dp" android:layout_height="1dp"
android:background="@drawable/shadow" /> android:background="@drawable/shadow" />
<LinearLayout <LinearLayout

View File

@@ -96,7 +96,9 @@
<string name="bad_request">Bad Request</string> <string name="bad_request">Bad Request</string>
<string name="failed">Connection failed</string> <string name="failed">Connection failed</string>
<string name="ok">Tamam</string> <string name="ok">Tamam</string>
<string name="cancel">İptal</string>
<string name="loading">Lütfen bekleyiniz...</string> <string name="loading">Lütfen bekleyiniz...</string>
<string name="alert_logout">Çıkış yapmak istediğinize emin misiniz?</string>
<string name="month_name_january">Jan.</string> <string name="month_name_january">Jan.</string>
<string name="month_name_february">Feb.</string> <string name="month_name_february">Feb.</string>
@@ -117,6 +119,7 @@
<string name="count">Count</string> <string name="count">Count</string>
<string name="no_options_selected_part">is not selected.</string> <string name="no_options_selected_part">is not selected.</string>
<string name="alert_clear_cart">Sepetinizdeki ürünleri silmek istediğinize emin misiniz?</string>
</resources> </resources>