beta bug fixes 2

This commit is contained in:
cimenmus
2017-10-28 18:47:33 +03:00
parent 5d5b9c5af7
commit 6491c37fc9
18 changed files with 431 additions and 246 deletions

View File

@@ -9,6 +9,7 @@ import com.badoualy.stepperindicator.StepperIndicator;
import butterknife.BindView;
import butterknife.ButterKnife;
import ch.pizzalink.android.R;
import ch.pizzalink.android.fragment.createOrder.CreateOrderNoteFragment;
import ch.pizzalink.android.fragment.createOrder.CreateOrderResultFragment;
import ch.pizzalink.android.fragment.createOrder.CreateOrderSummaryFragment;
import ch.pizzalink.android.fragment.createOrder.PaymentMethodFragment;
@@ -30,6 +31,7 @@ public class CreateOrderActivity extends BaseActivity {
private ShippingMethodModel selectedShippingMethod;
private AddressModel selectedShippingAddress;
private PaymentMethodModel selectedPaymentMethod;
private String orderNote;
@Override
protected void onCreate(Bundle savedInstanceState) {
@@ -57,9 +59,9 @@ public class CreateOrderActivity extends BaseActivity {
private void initStepIndicator(){
/*
5 fragment var, ama sonuncu step'te tik göstersin diye step sayısını, fragment sayısı - 1 yaptık
6 fragment var, ama sonuncu step'te tik göstersin diye step sayısını, fragment sayısı - 1 yaptık
*/
stepperIndicator.setStepCount(4);
stepperIndicator.setStepCount(5);
/*
stepperIndicator.addOnStepClickListener(new StepperIndicator.OnStepClickListener() {
@Override
@@ -86,9 +88,14 @@ public class CreateOrderActivity extends BaseActivity {
break;
case 3:
fragmentManager.beginTransaction().replace(R.id.orderFragmentsContainer,
CreateOrderSummaryFragment.newInstance()).commit();
CreateOrderNoteFragment.newInstance()).commit();
break;
case 4:
fragmentManager.beginTransaction().replace(R.id.orderFragmentsContainer,
CreateOrderSummaryFragment.newInstance()).commit();
break;
case 5:
fragmentManager.beginTransaction().replace(R.id.orderFragmentsContainer,
CreateOrderResultFragment.newInstance()).commit();
break;
@@ -107,9 +114,12 @@ public class CreateOrderActivity extends BaseActivity {
case PaymentMethodFragment.FRAGMENT_NAME:
openFragment(3);
break;
case CreateOrderSummaryFragment.FRAGMENT_NAME:
case CreateOrderNoteFragment.FRAGMENT_NAME:
openFragment(4);
break;
case CreateOrderSummaryFragment.FRAGMENT_NAME:
openFragment(5);
break;
case CreateOrderResultFragment.FRAGMENT_NAME:
Intent mainActivityIntent = new Intent(this, MainActivity.class);
mainActivityIntent.putExtra("isStartWithOrderHistory", true);
@@ -128,9 +138,12 @@ public class CreateOrderActivity extends BaseActivity {
case PaymentMethodFragment.FRAGMENT_NAME:
openFragment(1);
break;
case CreateOrderSummaryFragment.FRAGMENT_NAME:
case CreateOrderNoteFragment.FRAGMENT_NAME:
openFragment(2);
break;
case CreateOrderSummaryFragment.FRAGMENT_NAME:
openFragment(3);
break;
}
}
@@ -161,4 +174,14 @@ public class CreateOrderActivity extends BaseActivity {
public void setSelectedPaymentMethod(PaymentMethodModel selectedPaymentMethod){
this.selectedPaymentMethod = selectedPaymentMethod;
}
public String getOrderNote(){
if(orderNote == null)
orderNote = "";
return orderNote;
}
public void setOrderNote(String orderNote){
this.orderNote = orderNote;
}
}

View File

@@ -233,7 +233,7 @@ public class MainActivity extends BaseActivity {
itemHolder.rootView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
openProductsScreen(categoryList.get(pstn));
openProductsScreen(list.get(position));
}
});
}

View File

@@ -101,7 +101,7 @@ public class SplashActivity extends BaseActivity {
response.body().isSuccess()){
CategoryModel.checkNull(response.body().getData());
SharedPrefsHelper.saveCategoryList(response.body().getData());
checkCustomerToken();
getIgnoredCategoryIds();
}
else
ApiErrorUtils.parseError(response);
@@ -114,6 +114,29 @@ public class SplashActivity extends BaseActivity {
});
}
private void getIgnoredCategoryIds(){
Call<ResponseArray<Integer>> call = ApiService.apiInterface.getIgnoredCategoryIds();
call.enqueue(new Callback<ResponseArray<Integer>>() {
@Override
public void onResponse(Call<ResponseArray<Integer>> call, Response<ResponseArray<Integer>> response) {
if(response.isSuccessful() &&
response.body().getData() != null &&
response.body().isSuccess()){
SharedPrefsHelper.saveIgnoredCategoryIdList(response.body().getData());
checkCustomerToken();
}
else {
ApiErrorUtils.parseError(response);
}
}
@Override
public void onFailure(Call<ResponseArray<Integer>> call, Throwable t) {
DialogHelper.showFailedDialog();
}
});
}
/*
private void checkCustomerToken(){

View File

@@ -30,6 +30,7 @@ public class MenuProductRecyclerAdapter extends RecyclerView.Adapter<RecyclerVie
private ArrayList<MenuProductModel> menuProductList = new ArrayList<>();
private RecyclerItemClickListener recyclerItemClickListener;
private boolean isDescriptionVisible;
public static class MenuProductViewHolder extends RecyclerView.ViewHolder {
@@ -66,9 +67,11 @@ public class MenuProductRecyclerAdapter extends RecyclerView.Adapter<RecyclerVie
}
public MenuProductRecyclerAdapter(ArrayList<MenuProductModel> menuProductList,
boolean isDescriptionVisible,
RecyclerItemClickListener recyclerItemClickListener){
this.menuProductList = menuProductList;
this.recyclerItemClickListener = recyclerItemClickListener;
this.isDescriptionVisible = isDescriptionVisible;
}
@Override
@@ -110,17 +113,15 @@ public class MenuProductRecyclerAdapter extends RecyclerView.Adapter<RecyclerVie
menuProductViewHolder.productNameTextView.setText(menuProductList.get(position).getName());
menuProductViewHolder.productPriceTextView.setText(
PriceHelper.getPriceWithCurreny(menuProductList.get(position).getPrice()));
TextHelper.setTextFromHTML(menuProductViewHolder.productIngredientsTextView, menuProductList.get(position).getDescription());
/*
if(menuProductList.get(position).isDescriptionAvailable()){
if(isDescriptionVisible){
menuProductViewHolder.productIngredientsLayout.setVisibility(View.VISIBLE);
menuProductViewHolder.productIngredientsTextView.setText(menuProductList.get(position).getDescription());
}
else
else {
menuProductViewHolder.productIngredientsLayout.setVisibility(View.GONE);
*/
}
break;

View File

@@ -6,6 +6,7 @@ public class ApiEndPoints {
private static final String SUFFIX = "&is_mobile=1";
public static final String API_GET_ALL_CATEGORIES = PREFIX + "getAllCategories" + SUFFIX;
public static final String API_GET_IGNORED_CATEGORI_IDS= PREFIX + "getIgnoredCategory" + SUFFIX;
public static final String API_REGISTER = PREFIX + "signUp" + SUFFIX;
public static final String API_LOGIN = PREFIX + "login" + SUFFIX;
public static final String API_LOGOUT = PREFIX + "logout" + SUFFIX;

View File

@@ -22,19 +22,23 @@ public class ApiErrorUtils {
BaseResponse baseResponse = (BaseResponse) response.body();
if(baseResponse != null &&baseResponse.getErrorCode() == ApiConstants.APP_ERROR_CODE_AUTHORIZATION){
SharedPrefsHelper.clearCustomerInfo();
SharedPrefsHelper.clearCustomerToken();
SharedPrefsHelper.setCustomerLoggedIn(false);
BaseActivity.currentActivity.startActivity(new Intent(BaseActivity.currentActivity, LoginActivity.class));
BaseActivity.currentActivity.finishAffinity();
return;
if(baseResponse != null){
if(baseResponse.getErrorCode() == ApiConstants.APP_ERROR_CODE_AUTHORIZATION){
SharedPrefsHelper.clearCustomerInfo();
SharedPrefsHelper.clearCustomerToken();
SharedPrefsHelper.setCustomerLoggedIn(false);
BaseActivity.currentActivity.startActivity(new Intent(BaseActivity.currentActivity, LoginActivity.class));
BaseActivity.currentActivity.finishAffinity();
return;
}
if(baseResponse.getMessage() != null && !baseResponse.getMessage().isEmpty()){
DialogHelper.showAlertDialog(BaseActivity.currentActivity, baseResponse.getMessage());
return;
}
}
if(baseResponse.getMessage() != null && !baseResponse.getMessage().isEmpty()){
DialogHelper.showAlertDialog(BaseActivity.currentActivity, baseResponse.getMessage());
return;
}
try {
error = converter.convert(response.errorBody());

View File

@@ -37,29 +37,13 @@ public interface ApiInterface {
@GET(ApiEndPoints.API_GET_ALL_CATEGORIES)
Call<ResponseArray<CategoryModel>> getAllCategories();
/*
@FormUrlEncoded
@POST(ApiEndPoints.API_REGISTER)
Call<ResponseObject<UserModel>> register(@Field("firstname") String firstname,
@Field("lastname") String lastname,
@Field("telephone") String telephone,
@Field("email") String email,
@Field("password") String passsword,
@Field("password1") String passswordRetype,
@Field("address_1") String addressLine1,
@Field("address_2") String addressLine2,
@Field("city") String passswocityrd,
@Field("postcode") String postcode,
@Field("country_id") String country_id,
@Field("zone_id") String zone_id);
*/
@GET(ApiEndPoints.API_GET_IGNORED_CATEGORI_IDS)
Call<ResponseArray<Integer>> getIgnoredCategoryIds();
@FormUrlEncoded
@POST(ApiEndPoints.API_REGISTER)
Call<ResponseObject<UserModel>> register(@FieldMap HashMap<String, Object> body);
@FormUrlEncoded
@POST(ApiEndPoints.API_LOGIN)
Call<ResponseObject<UserModel>> login(@Field("email") String email, @Field("password") String password);

View File

@@ -80,12 +80,15 @@ public class MenuFragment extends BaseFragment {
private void initRecyclerView(){
GridLayoutManager layoutManager = new GridLayoutManager(BaseActivity.currentActivity, 2);
menuProductRecyclerView.setLayoutManager(layoutManager);
menuProductRecyclerAdapter = new MenuProductRecyclerAdapter(menuProductList, new RecyclerItemClickListener() {
@Override
public void onItemClick(View view, int position) {
showBottomsheetDialog(menuProductList.get(position));
}
});
menuProductRecyclerAdapter = new MenuProductRecyclerAdapter(
menuProductList,
categoryModel.isDescriptionVisible(),
new RecyclerItemClickListener() {
@Override
public void onItemClick(View view, int position) {
showBottomsheetDialog(menuProductList.get(position));
}
});
menuProductRecyclerView.addItemDecoration(new GridSpacesItemDecoration(DisplayHelper.dpToPx(12)));
menuProductRecyclerView.setAdapter(menuProductRecyclerAdapter);
}

View File

@@ -79,12 +79,15 @@ public class ProductFragment extends BaseFragment {
private void initRecyclerView(){
GridLayoutManager layoutManager = new GridLayoutManager(BaseActivity.currentActivity, 2);
customProductRecyclerView.setLayoutManager(layoutManager);
menuProductRecyclerAdapter = new MenuProductRecyclerAdapter(productList, new RecyclerItemClickListener() {
@Override
public void onItemClick(View view, int position) {
showBottomsheetDialog(productList.get(position));
}
});
menuProductRecyclerAdapter = new MenuProductRecyclerAdapter(
productList,
categoryModel.isDescriptionVisible(),
new RecyclerItemClickListener() {
@Override
public void onItemClick(View view, int position) {
showBottomsheetDialog(productList.get(position));
}
});
customProductRecyclerView.addItemDecoration(new GridSpacesItemDecoration(DisplayHelper.dpToPx(12)));
customProductRecyclerView.setAdapter(menuProductRecyclerAdapter);
}

View File

@@ -0,0 +1,74 @@
package ch.pizzalink.android.fragment.createOrder;
import android.os.Bundle;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import java.util.ArrayList;
import butterknife.BindString;
import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.OnClick;
import ch.pizzalink.android.R;
import ch.pizzalink.android.activity.BaseActivity;
import ch.pizzalink.android.activity.CreateOrderActivity;
import ch.pizzalink.android.adapter.recycler.PaymentMethodsRecyclerAdapter;
import ch.pizzalink.android.api.ApiErrorUtils;
import ch.pizzalink.android.api.ApiService;
import ch.pizzalink.android.api.ResponseObject;
import ch.pizzalink.android.helper.DialogHelper;
import ch.pizzalink.android.helper.SessionHelper;
import ch.pizzalink.android.interfaces.RecyclerItemClickListener;
import ch.pizzalink.android.model.PaymentMethodModel;
import ch.pizzalink.android.model.PaymentMethodsResponseModel;
import ch.pizzalink.android.view.PizzalinkEditText;
import retrofit2.Call;
import retrofit2.Callback;
import retrofit2.Response;
/**
* Created by cimenmus on 28.10.2017.
*/
public class CreateOrderNoteFragment extends CreateOrderBaseFragment {
@BindView(R.id.orderNotePizzalinkEditText) PizzalinkEditText orderNotePizzalinkEditText;
public static final java.lang.String FRAGMENT_NAME = "createOrderNoteFragment";
public CreateOrderNoteFragment() {}
public static CreateOrderNoteFragment newInstance() {
return new CreateOrderNoteFragment();
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_create_order_note, container, false);
ButterKnife.bind(this, view);
return view;
}
@OnClick({R.id.previousTextView, R.id.nextTextView})
protected void onClick(View view){
CreateOrderActivity createOrderActivity = (CreateOrderActivity) getActivity();
switch (view.getId()){
case R.id.previousTextView:
createOrderActivity.onPreviousClicked(FRAGMENT_NAME);
break;
case R.id.nextTextView:
createOrderActivity.setOrderNote(orderNotePizzalinkEditText.getText());
createOrderActivity.onNextClicked(FRAGMENT_NAME);
break;
}
}
}

View File

@@ -35,6 +35,7 @@ public class CreateOrderSummaryFragment extends CreateOrderBaseFragment {
@BindView(R.id.orderShippingAddressPizzalinkInfoLayout) PizzalinkInfoView orderShippingAddressPizzalinkInfoLayout;
@BindView(R.id.orderPaymentMethodPizzalinkInfoLayout) PizzalinkInfoView orderPaymentMethodPizzalinkInfoLayout;
@BindView(R.id.orderTotalPizzalinkInfoLayout) PizzalinkInfoView orderTotalPizzalinkInfoLayout;
@BindView(R.id.orderNotePizzalinkInfoLayout) PizzalinkInfoView orderNotePizzalinkInfoLayout;
@BindString(R.string.confirm_order) String confirmOrderText;
@@ -84,6 +85,13 @@ public class CreateOrderSummaryFragment extends CreateOrderBaseFragment {
orderShippingAddressPizzalinkInfoLayout.setText(createOrderActivity.getSelectedShippingAddress().getAddress());
orderPaymentMethodPizzalinkInfoLayout.setText(createOrderActivity.getSelectedPaymentMethod().getTitle());
orderTotalPizzalinkInfoLayout.setText(createOrderActivity.getCartInfo().getTotals().get(0).getText());
if(createOrderActivity.getOrderNote().isEmpty()){
orderNotePizzalinkInfoLayout.setVisibility(View.GONE);
}
else {
orderNotePizzalinkInfoLayout.setVisibility(View.VISIBLE);
orderNotePizzalinkInfoLayout.setText(createOrderActivity.getOrderNote());
}
}
private void createOrder(){
@@ -118,6 +126,7 @@ public class CreateOrderSummaryFragment extends CreateOrderBaseFragment {
params.put("address_id", createOrderActivity.getSelectedShippingAddress().getId());
params.put("payment_method_title", createOrderActivity.getSelectedPaymentMethod().getTitle());
params.put("payment_method_code", createOrderActivity.getSelectedPaymentMethod().getCode());
params.put("comment", createOrderActivity.getOrderNote());
return params;
}
}

View File

@@ -27,6 +27,7 @@ public class SharedPrefsHelper {
private static final String SHARED_PREFS_NAME = "ch.pizzalink.android.preferences.";
private static final String PREF_KEY_CATEGORY_LIST = SHARED_PREFS_NAME + "categoryList";
private static final String PREF_KEY_IGNORED_CATEGORY_ID_LIST = SHARED_PREFS_NAME + "ignoredCategoryIdList";
private static final String PREF_KEY_USER = SHARED_PREFS_NAME + "user";
private static final String PREF_KEY_CUSTOMER_TOKEN = SHARED_PREFS_NAME + "customerToken";
private static final String PREF_KEY_USER_LOG_IN_STATUS = SHARED_PREFS_NAME + "userLoginStatus";
@@ -50,6 +51,17 @@ public class SharedPrefsHelper {
return gson.fromJson(sharedPreferences.getString(PREF_KEY_CATEGORY_LIST, ""), categoryListType);
}
public static void saveIgnoredCategoryIdList(ArrayList<Integer> ignoredCategoryIdList){
String ignoredCategoryIdsJsonString = gson.toJson(ignoredCategoryIdList, new TypeToken<ArrayList<Integer>>() {}.getType());
editor.putString(PREF_KEY_IGNORED_CATEGORY_ID_LIST, ignoredCategoryIdsJsonString);
editor.apply();
}
public static ArrayList<Integer> readIgnoredCategoryIdList(){
Type ignoredCategoryIdListType = new TypeToken<ArrayList<Integer>>(){}.getType();
return gson.fromJson(sharedPreferences.getString(PREF_KEY_IGNORED_CATEGORY_ID_LIST, ""), ignoredCategoryIdListType);
}
public static void saveUser(UserModel user){
editor.putString(PREF_KEY_USER, gson.toJson(user));

View File

@@ -7,6 +7,7 @@ import java.io.Serializable;
import java.util.ArrayList;
import ch.pizzalink.android.api.ApiConstants;
import ch.pizzalink.android.helper.SharedPrefsHelper;
/**
* Created by cimenmus on 26/09/2017.
@@ -43,6 +44,10 @@ public class CategoryModel implements Serializable{
}
}
public boolean isDescriptionVisible(){
return !SharedPrefsHelper.readIgnoredCategoryIdList().contains(id);
}
public String getCategoryIdString(){
return String.valueOf(id);
}

View File

@@ -96,22 +96,12 @@ public class PizzalinkEditText extends LinearLayout implements View.OnClickListe
case "address":
editText.setInputType(InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS | InputType.TYPE_CLASS_TEXT |
InputType.TYPE_TEXT_FLAG_CAP_WORDS | InputType.TYPE_TEXT_FLAG_MULTI_LINE);
editText.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {}
@Override
public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {}
@Override
public void afterTextChanged(Editable editable) {
// if edittext has 10chars & this is not called yet, add new line
if(editText.getText().length() == 40 * editText.getLineCount()) {
editText.append("\n");
}
}
});
goNextLineWhenEndOfLine();
break;
case "multiline":
editText.setInputType(InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS | InputType.TYPE_CLASS_TEXT |
InputType.TYPE_TEXT_FLAG_MULTI_LINE);
goNextLineWhenEndOfLine();
break;
default:
editText.setInputType(InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS | InputType.TYPE_CLASS_TEXT |
@@ -141,6 +131,24 @@ public class PizzalinkEditText extends LinearLayout implements View.OnClickListe
inputMethodManager.toggleSoftInput(InputMethodManager.SHOW_FORCED,0);
}
private void goNextLineWhenEndOfLine(){
editText.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {}
@Override
public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {}
@Override
public void afterTextChanged(Editable editable) {
// if edittext has 10chars & this is not called yet, add new line
if(editText.getText().length() == 40 * editText.getLineCount()) {
editText.append("\n");
}
}
});
}
public boolean isEmpty(){
return editText.getText().toString().isEmpty();
}

View File

@@ -0,0 +1,20 @@
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/white"
android:focusable="true"
android:focusableInTouchMode="true">
<ch.pizzalink.android.view.PizzalinkEditText
android:id="@+id/orderNotePizzalinkEditText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:hint="@string/order_note"
app:inputType="multiline"/>
<include layout="@layout/layout_orders_bottom"/>
</RelativeLayout>

View File

@@ -12,7 +12,8 @@
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_above="@id/ordersBottomLayout">
android:layout_above="@id/ordersBottomLayout"
android:scrollbars="vertical">
<LinearLayout
android:layout_width="match_parent"
@@ -49,6 +50,11 @@
android:layout_height="wrap_content"
app:description="@string/order_total" />
<ch.pizzalink.android.view.PizzalinkInfoView
android:id="@+id/orderNotePizzalinkInfoLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:description="@string/order_notee" />
</LinearLayout>

View File

@@ -12,6 +12,7 @@
<declare-styleable name="PizzalinkEditText">
<attr name="hint" format="string" />
<attr name="inputType" format="string" />
<attr name="lineCount" format="integer" />
</declare-styleable>
<declare-styleable name="PizzalinkButton">

View File

@@ -1,199 +1,207 @@
<resources>
<!-- General-->
<string name="app_name">Pizzalink</string> <!--bu alanı alanını değiştirmyin !!!-->
<string name="something_went_wrong">Bir hata oluştu.</string>
<string name="alert">Uyarı</string>
<string name="error_message">Bir hata oluştu.</string>
<string name="bad_request">Bad Request</string>
<string name="failed">Connection failed</string>
<string name="ok">Tamam</string>
<string name="cancel">İptal</string>
<string name="loading">Lütfen bekleyiniz...</string>
<string name="month_name_january">Jan.</string>
<string name="month_name_february">Feb.</string>
<string name="month_name_march">Mar.</string>
<string name="month_name_april">Apr.</string>
<string name="month_name_may">May</string>
<string name="month_name_jun">June</string>
<string name="month_name_july">July</string>
<string name="month_name_august">Aug.</string>
<string name="month_name_september">Sept</string>
<string name="month_name_october">Oct.</string>
<string name="month_name_november">Nov.</string>
<string name="month_name_december">Dec.</string>
<string name="chf">CHF</string>
<string name="empty_description">..</string>
<string name="choose">Seçiniz</string>
<!-- General-->
    <string name="app_name">Pizzalink</string>  <!--bu alanı alanını değiştirmyin !!!-->
    <string name="something_went_wrong">Es ist ein Fehler aufgetreten.</string>
    <string name="alert">Warnung</string>
    <string name="error_message">Es ist ein Fehler aufgetreten.</string>
    <string name="bad_request">Bad Request</string>
    <string name="failed">Connection failed</string>
    <string name="ok">Ok</string>
    <string name="cancel">Beenden</string>
    <string name="loading">Bitte warten...</string>
    <string name="month_name_january">Jan.</string>
    <string name="month_name_february">Feb.</string>
    <string name="month_name_march">Mar.</string>
    <string name="month_name_april">Apr.</string>
    <string name="month_name_may">May</string>
    <string name="month_name_jun">June</string>
    <string name="month_name_july">July</string>
    <string name="month_name_august">Aug.</string>
    <string name="month_name_september">Sept</string>
    <string name="month_name_october">Oct.</string>
    <string name="month_name_november">Nov.</string>
    <string name="month_name_december">Dec.</string>
    <string name="chf">CHF</string>
    <string name="empty_description">..</string>
    <string name="choose">Wählen</string>
    <!-- General-->
<!-- uygulamının ilk açılan ekranı. pizzlink logosunun oldugu ekran -->
<!-- SplashActivity -->
<string name="no_network_message">İnternet bağlantısı yok. Lütfen daha sonra tekrar deneyiniz.</string>
<string name="alert_update_app">Pizzalink uygulamasını kullanabilmek için uygulamanızı güncellemeniz gerekmektedir.</string>
<string name="update_app">GÜNCELLE</string>
<!-- SplashActivity -->
    <!-- uygulamının ilk açılan ekranı. pizzlink logosunun oldugu ekran -->
    <!-- SplashActivity -->
    <string name="no_network_message">Keine Internetverbindung. Bitte versuchen Sie es später noch einmal.</string>
    <string name="alert_update_app">Sie müssen die Pizzalink-Applikation aktualisieren, um sie zu verwenden.</string>
    <string name="update_app">AKTUALISIEREN</string>
    <!-- SplashActivity -->
<!-- giriş yap ekranı -->
<!-- LoginActivity-->
<string name="activity_title_login">Giriş Yap</string>
<string name="button_login">GİRİŞ YAP</string>
<string name="not_have_an_accaount">Hesabın yok mu?</string>
<string name="register_text">KAYIT OL</string>
<string name="forgot_password_hint">Şifreni mi unuttun?</string>
<string name="reset_password">ŞİFRENİ SIFIRLA</string>
<!-- LoginActivity-->
    <!-- giriş yap ekranı -->
    <!-- LoginActivity-->
    <string name="activity_title_login">Einloggen</string>
    <string name="button_login">EINLOGGEN</string>
    <string name="not_have_an_accaount">Sie haben kein Konto?</string>
    <string name="register_text">REGISTRIEREN</string>
    <string name="forgot_password_hint">Haben Sie Ihr Passwort vergessen?</string>
    <string name="reset_password">PASSWORT ZURÜCKSETZEN</string>
    <!-- LoginActivity-->
<!-- şifremi unuttum ekranı -->
<!-- ForgotPasswordActivity-->
<string name="activity_title_forgot_password">Şifremi Unuttum</string>
<string name="reset_password_hint">Kayıt olurken mail adresini giriniz ve gelen maildeki yönergeleri takip ediniz.</string>
<string name="reset_password_button">NDER</string>
<string name="password_reset">Mail adresinize gerekli bilgiler gönderilmiştir. İlgili maildeki yönergeleri takip ederek şifrenizi sıfırlayabilirsiniz.</string>
<!-- ForgotPasswordActivity-->
    <!-- şifremi unuttum ekranı -->
    <!-- ForgotPasswordActivity-->
    <string name="activity_title_forgot_password">Passwort vergessen</string>
    <string name="reset_password_hint"> Geben sie beim registrieren ihre E-Mail-Adresse ein und folgen Sie den Anweisungen.</string>
    <string name="reset_password_button">SENDEN</string>
    <string name="password_reset">Erforderliche Informationen wurden an Ihre E-Mail-Adresse geschickt. Folgen Sie den Anweisungen um Ihr Passwort zurückzusetzen.</string>
    <!-- ForgotPasswordActivity-->
<!-- kayıt ol ekranı -->
<!-- RegisterActivity-->
<string name="activity_title_register">Kayıt Ol</string>
<string name="firstname">Ad</string>
<string name="lastname">Soyad</string>
<string name="telephone">Telefon Numarası</string>
<string name="email">Email</string>
<string name="password">Şifre</string>
<string name="password_again">Şifre (Tekrar)</string>
<string name="addres_line_1">Adres</string>
<string name="addres_line_2">Adres 2</string>
<string name="city">Şehir</string>
<string name="postcode">Posta Kodu</string>
<string name="zone">Bölge</string>
<string name="country">Ülke</string>
<string name="alert_fill_all_fields">Lütfen istenen tüm bigileri doldurunuz.</string>
<string name="alert_invalid_email">Lütfen geçerli bir mail adresi giriniz.</string>
<string name="alert_passwords_not_matched">Şifreler uyuşmuyor..</string>
<string name="alert_invalid_post_code">Lütfen geçerli bir posta kodu giriniz.</string>
<string name="alert_select_country_first">Lütfen önce ülke seçimini yapınız.</string>
<string name="button_register">KAYIT OL</string>
<!-- RegisterActivity-->
    <!-- kayıt ol ekranı -->
    <!-- RegisterActivity-->
    <string name="activity_title_register">Registrieren</string>
    <string name="firstname">Vorname</string>
    <string name="lastname">Nachname</string>
    <string name="telephone">Telefonnummer</string>
    <string name="email">E-Mail-Adresse</string>
    <string name="password">Passwort</string>
    <string name="password_again">Passwort (erneut eingeben)</string>
    <string name="addres_line_1">Adresse</string>
    <string name="addres_line_2">Adresse 2</string>
    <string name="city">Stadt</string>
    <string name="postcode">Postleitzahl</string>
    <string name="zone">Gebiet</string>
    <string name="country">Land</string>
    <string name="alert_fill_all_fields">Bitte füllen Sie alle Felder aus.</string>
    <string name="alert_invalid_email">Bitte geben sie eine gültige E-Mail-Adresse ein.</string>
    <string name="alert_passwords_not_matched">Passwörter stimmen nicht überein.</string>
    <string name="alert_invalid_post_code">Bitte geben sie eine gültige Postleitzahl ein.</string>
    <string name="alert_select_country_first">Bitte wählen Sie zuerst ein Land.</string>
    <string name="button_register">REGISTRIEREN</string>
    <!-- RegisterActivity-->
<!-- ana ekrandaki alt menuler -->
<!-- MainAcitivity -->
<string name="bottom_nav_menu_item_menu">Menu</string>
<string name="bottom_nav_menu_item_cart">Cart</string>
<string name="bottom_nav_menu_item_history">History</string>
<string name="bottom_nav_menu_item_profile">Profile</string>
<string name="bottom_nav_menu_item_info">Info</string>
<!-- MainAcitivity -->
    <!-- ana ekrandaki alt menuler -->
    <!-- MainAcitivity -->
    <string name="bottom_nav_menu_item_menu">Menu</string>
    <string name="bottom_nav_menu_item_cart">Cart</string>
    <string name="bottom_nav_menu_item_history">History</string>
    <string name="bottom_nav_menu_item_profile">Profile</string>
    <string name="bottom_nav_menu_item_info">Info</string>
    <!-- MainAcitivity -->
<!-- ürün sayısı, bouyutu ve içeriklerinin seçilip sepete ekleme işleminin yapıldıgı ekran -->
<!-- ProductPropertiesBottomSheetDialog -->
<string name="add_to_cart">SEPETE EKLE</string>
<string name="count">Count</string>
<string name="no_options_selected_part">is not selected.</string>
<!-- ProductPropertiesBottomSheetDialog -->
    <!-- ürün sayısı, bouyutu ve içeriklerinin seçilip sepete ekleme işleminin yapıldıgı ekran -->
    <!-- ProductPropertiesBottomSheetDialog -->
    <string name="add_to_cart">IN DEN WARENKORB LEGEN</string>
    <string name="count">Count</string>
    <string name="no_options_selected_part">is not selected.</string>
    <!-- ProductPropertiesBottomSheetDialog -->
<!-- sepet ekranı -->
<!-- CartFragment-->
<string name="continue_cart">DEVAM</string>
<string name="clear_cart">TEMİZLE</string>
<string name="no_product_on_cart">Sepetinizde ürün bulunmamaktadır.</string>
<string name="alert_remove_prdocut_from_cart">Bu ürünü sepetinizden silmek istediğinize emin misiniz?</string>
<string name="product_removed_from_cart">Ürün sepetinizden silindi.</string>
<string name="alert_clear_cart">Sepetinizdeki ürünleri silmek istediğinize emin misiniz?</string>
<!-- CartFragment-->
    <!-- sepet ekranı -->
    <!-- CartFragment-->
    <string name="continue_cart">WEITER</string>
    <string name="clear_cart">LÖSCHEN</string>
    <string name="no_product_on_cart">Es befindet sich kein Produkt im Warenkorb.</string>
    <string name="alert_remove_prdocut_from_cart">Möchten Sie das Produkt aus dem Warenkorb entfernen?</string>
    <string name="product_removed_from_cart">Produkt wurde aus dem Warenkorb entfernt.</string>
    <string name="alert_clear_cart">Möchten Sie alle Produkte aus dem Warenkorb entfernen?</string>
    <!-- CartFragment-->
<!-- sipariş geçmişi ekranı -->
<!-- OrderHistoryFragment-->
<string name="order_history_total">Total :</string>
<string name="order_history_date">Date</string>
<string name="order_history_status">Status</string>
<!-- OrderHistoryFragment-->
    <!-- sipariş geçmişi ekranı -->
    <!-- OrderHistoryFragment-->
    <string name="order_history_total">Total :</string>
    <string name="order_history_date">Date</string>
    <string name="order_history_status">Status</string>
    <!-- OrderHistoryFragment-->
<!-- sipariş oluşturma ekranı -->
<!-- CreateOrderActivity -->
<string name="activity_title_create_order">Sipariş Ver</string>
<string name="next">NEXT</string>
<string name="previous">PREVIOUS</string>
<string name="confirm_order">APPROVE</string>
<string name="done_order">DONE</string>
<string-array name="stepperLabels">
<item>Shipping Method</item>
<item>Shipping Address</item>
<item>Payment Method</item>
<item>Summary</item>
</string-array>
<!-- CreateOrderActivity -->
    <!-- sipariş oluşturma ekranı -->
    <!-- CreateOrderActivity -->
    <string name="activity_title_create_order">Bestellen</string>
    <string name="next">NEXT</string>
    <string name="previous">PREVIOUS</string>
    <string name="confirm_order">APPROVE</string>
    <string name="done_order">DONE</string>
    <string-array name="stepperLabels">
        <item>Versandart</item>
        <item>Versandadresse</item>
        <item>Bezahlverfahren</item>
<item>Nachricht</item>
        <item>Betrag</item>
    </string-array>
    <!-- CreateOrderActivity -->
<!-- teslimat yöntemi seçme ekranı -->
<!-- ShippingMethodFragment-->
<string name="alert_choose_shipping_method">Lütfen bir teslimat yöntemi seçiniz.</string>
<!-- ShippingMethodFragment-->
<!-- teslimat adresi seçme ekranı -->
<!-- ShippingAddressFragment-->
<string name="alert_choose_shipping_address">Lütfen bir teslimat adresi seçiniz ya da yeni bir teslimat adresi ekleyiniz.</string>
<!-- ShippingAddressFragment-->
    <!-- teslimat yöntemi seçme ekranı -->
    <!-- ShippingMethodFragment-->
    <string name="alert_choose_shipping_method">Lütfen bir teslimat yöntemi seçiniz.</string>
    <!-- ShippingMethodFragment-->
    
    <!-- teslimat adresi seçme ekranı -->
    <!-- ShippingAddressFragment-->
    <string name="alert_choose_shipping_address">Bitte wählen Sie eine Versandadresse aus oder fügen Sie eine neue Versandadresse hinzu.</string>
    <!-- ShippingAddressFragment-->
<!-- ödeme yöntemi seçme ekranı -->
<!-- PaymentMethodFragment-->
<string name="alert_choose_payment_method">Lütfen bir ödeme yöntemi seçiniz.</string>
<!-- PaymentMethodFragment-->
    <!-- ödeme yöntemi seçme ekranı -->
    <!-- PaymentMethodFragment-->
    <string name="alert_choose_payment_method">Bitte wählen Sie ein Bezahlverfahren aus.</string>
    <!-- PaymentMethodFragment-->
<!-- sipariş özet ekranı -->
<!-- CreateOrderSummaryFragment-->
<string name="order_person_fullname">TO</string>
<string name="order_shipping_method">SHIPPING METHOD</string>
<string name="order_shipping_address">SHIPPING ADDRESS</string>
<string name="order_payment_method">PAYMENT METHOD</string>
<string name="order_total">TOTAL</string>
<!-- CreateOrderSummaryFragment-->
<!-- sipariş notu ekranı -->
<!-- CreateOrderNoteFragment-->
<string name="order_note">Nachricht (Optional)</string>
<!-- CreateOrderNoteFragment-->
<!-- sipariş sınucu ekranı -->
<!-- CreateOrderResultFragment-->
<string name="order_successed">Siparişiniz başarı ile alınmıştır. Siparişinizin detaylarını sipariş geçmişinden görebilir ve siparişinizi takip edebilirsiniz.</string>
<!-- CreateOrderSummaryFragment-->
    <!-- sipariş özet ekranı -->
    <!-- CreateOrderSummaryFragment-->
    <string name="order_person_fullname">TO</string>
    <string name="order_shipping_method">SHIPPING METHOD</string>
    <string name="order_shipping_address">SHIPPING ADDRESS</string>
    <string name="order_payment_method">PAYMENT METHOD</string>
    <string name="order_total">TOTAL</string>
<string name="order_notee">NACHRICHT</string>
    <!-- CreateOrderSummaryFragment-->
<!-- profil ekranı -->
<!-- ProfileFragment-->
<string name="profile_firstname">AD</string>
<string name="profile_lastname">SOYAD</string>
<string name="profile_telephone">TELEFON NUMARASI</string>
<string name="profile_email">EMAIL</string>
<string name="my_addresses">Adreslerim</string>
<string name="update_profile">Profilimi Güncelle</string>
<string name="update_password">Şifremi Güncelle</string>
<string name="button_logout">Çıkış Yap</string>
<string name="alert_logout">Çıkış yapmak istediğinize emin misiniz?</string>
<!-- ProfileFragment-->
    <!-- sipariş sınucu ekranı -->
    <!-- CreateOrderResultFragment-->
    <string name="order_successed">Ihre Bestellung ist erfolgreich. Ihre Bestellübersicht werden in der Bestellungshistorie angezeigt und kann dort verfolgt werden.</string>
    <!-- CreateOrderSummaryFragment-->
<!-- profil bilgilerini güncelleme ekranı -->
<!-- UpdateProfilectivity-->
<string name="activity_title_update_profile">Profilimi Güncelle</string>
<string name="profile_updated">Profil bilgileriniz başarı ile güncellenmiştir.</string>
<!-- UpdateProfilectivity-->
    <!-- profil ekranı -->
    <!-- ProfileFragment-->
    <string name="profile_firstname">VORNAME</string>
    <string name="profile_lastname">NACHNAME</string>
    <string name="profile_telephone">TELEFONNUMMER</string>
    <string name="profile_email">E-MAIL-ADRESSE</string>
    <string name="my_addresses">Meine Adressen</string>
    <string name="update_profile">Profil aktualisieren</string>
    <string name="update_password">Passwort aktualisieren</string>
    <string name="button_logout">Abmelden</string>
    <string name="alert_logout">Möchten Sie sich abmelden?</string>
    <!-- ProfileFragment-->
<!-- şifre güncelleme ekranı -->
<!-- UpdatePasswordActivity-->
<string name="activity_title_update_password">Şifre Güncelle</string>
<string name="hint_old_password">Eski Şifre</string>
<string name="hint_new_password">Yeni Şifre</string>
<string name="hint_confirm_new_password">Yeni Şifre (Tekrar)</string>
<string name="password_updated">Şifreniz başarı ile güncellenmiştir.</string>
<!-- UpdatePasswordActivity-->
    <!-- profil bilgilerini güncelleme ekranı -->
    <!-- UpdateProfilectivity-->
    <string name="activity_title_update_profile">Profil Aktualisieren</string>
    <string name="profile_updated">Ihr Profil wurde erfolgreich aktualisiert..</string>
    <!-- UpdateProfilectivity-->
<!-- adreslerini görüntüleme ekranı -->
<!-- MyAddressesActivity-->
<string name="activity_title_my_addresses">Adreslerim</string>
<string name="add_new_address">YENİ ADRES EKLE</string>
<string name="alert_delete_address">Adresinizi silmek istediğinize emin misiniz?</string>
<string name="address_deleted">Adresiniz başarı ile silindi.</string>
<!-- MyAddressesActivity-->
    <!-- şifre güncelleme ekranı -->
    <!-- UpdatePasswordActivity-->
    <string name="activity_title_update_password">Passwort Aktualisieren</string>
    <string name="hint_old_password">Altes Passwort</string>
    <string name="hint_new_password">Neues Passwort</string>
    <string name="hint_confirm_new_password">Neues Passwort (erneut eingeben)</string>
    <string name="password_updated">Ihr Passwort wurde erfolgreich aktualisiert.</string>
    <!-- UpdatePasswordActivity-->
    <!-- adreslerini görüntüleme ekranı -->
    <!-- MyAddressesActivity-->
    <string name="activity_title_my_addresses">Meine Adressen</string>
    <string name="add_new_address">NEUE ADRESSE HINZUFÜGEN</string>
    <string name="alert_delete_address">Möchten Sie diese Adresse löschen?</string>
    <string name="address_deleted">Ihre Adresse wurde erfolgreich gelöscht.</string>
    <!-- MyAddressesActivity-->
    <!-- yeni adres ekleme ekranı -->
    <!-- AddAddressActivity-->
    <string name="activity_title_add_address">Neue Adresse hinzufügen</string>
    <string name="add">HINZUFÜGEN</string>
    <string name="new_address_added">Adresse wurde erfolgreich hinzugefügt.</string>
    <!-- AddAddressActivity-->
<!-- yeni adres ekleme ekranı -->
<!-- AddAddressActivity-->
<string name="activity_title_add_address">Yeni Adres Ekle</string>
<string name="add">KAYDET</string>
<string name="new_address_added">Adresiniz başarı ile eklendi.</string>
<!-- AddAddressActivity-->
</resources>