Showing
9 changed files
with
98 additions
and
9 deletions
| ... | @@ -36,7 +36,7 @@ public class SplashActivity extends BaseActivity { | ... | @@ -36,7 +36,7 @@ public class SplashActivity extends BaseActivity { |
| 36 | public void onWarplyReady() { | 36 | public void onWarplyReady() { |
| 37 | if (!WarplyDBHelper.getInstance(SplashActivity.this).isTableNotEmpty("auth")) { | 37 | if (!WarplyDBHelper.getInstance(SplashActivity.this).isTableNotEmpty("auth")) { |
| 38 | WarplyManager.getCosmoteUser(new WarplyCosmoteUserRequest() | 38 | WarplyManager.getCosmoteUser(new WarplyCosmoteUserRequest() |
| 39 | - .setGuid("7000000831"), //6012049321, 6012049322, 6012049323, 7000000831 history, 7000000826, 7000000831 shared coupons, prod 6006552990 | 39 | + .setGuid("7000000870"), //6012049321, 6012049322, 6012049323, 7000000831 history, 7000000826, 7000000831 shared coupons, prod 6006552990 |
| 40 | mLoginReceiver); | 40 | mLoginReceiver); |
| 41 | } else { | 41 | } else { |
| 42 | startNextActivity(); | 42 | startNextActivity(); | ... | ... |
| ... | @@ -2,7 +2,7 @@ apply plugin: 'com.android.library' | ... | @@ -2,7 +2,7 @@ apply plugin: 'com.android.library' |
| 2 | 2 | ||
| 3 | ext { | 3 | ext { |
| 4 | PUBLISH_GROUP_ID = 'ly.warp' | 4 | PUBLISH_GROUP_ID = 'ly.warp' |
| 5 | - PUBLISH_VERSION = '4.5.4-cosbeta95' | 5 | + PUBLISH_VERSION = '4.5.4-cosbeta96' |
| 6 | PUBLISH_ARTIFACT_ID = 'warply-android-sdk' | 6 | PUBLISH_ARTIFACT_ID = 'warply-android-sdk' |
| 7 | } | 7 | } |
| 8 | 8 | ||
| ... | @@ -62,9 +62,9 @@ dependencies { | ... | @@ -62,9 +62,9 @@ dependencies { |
| 62 | implementation 'com.google.firebase:firebase-messaging' | 62 | implementation 'com.google.firebase:firebase-messaging' |
| 63 | 63 | ||
| 64 | //------------------------------ GMS -----------------------------// | 64 | //------------------------------ GMS -----------------------------// |
| 65 | - api 'com.google.android.gms:play-services-base:18.0.1' | 65 | + api 'com.google.android.gms:play-services-base:18.1.0' |
| 66 | - implementation 'com.google.android.gms:play-services-location:19.0.1' | 66 | + implementation 'com.google.android.gms:play-services-location:21.0.0' |
| 67 | - implementation 'com.google.android.gms:play-services-maps:18.0.2' | 67 | + implementation 'com.google.android.gms:play-services-maps:18.1.0' |
| 68 | api 'com.google.maps.android:android-maps-utils:0.5' | 68 | api 'com.google.maps.android:android-maps-utils:0.5' |
| 69 | 69 | ||
| 70 | //------------------------------ Work Manager -----------------------------// | 70 | //------------------------------ Work Manager -----------------------------// | ... | ... |
| ... | @@ -5,6 +5,7 @@ import android.content.Context; | ... | @@ -5,6 +5,7 @@ import android.content.Context; |
| 5 | import android.content.Intent; | 5 | import android.content.Intent; |
| 6 | import android.graphics.Bitmap; | 6 | import android.graphics.Bitmap; |
| 7 | import android.graphics.Color; | 7 | import android.graphics.Color; |
| 8 | +import android.net.Uri; | ||
| 8 | import android.os.Build; | 9 | import android.os.Build; |
| 9 | import android.os.Bundle; | 10 | import android.os.Bundle; |
| 10 | import android.text.Html; | 11 | import android.text.Html; |
| ... | @@ -33,6 +34,7 @@ import io.github.inflationx.viewpump.ViewPumpContextWrapper; | ... | @@ -33,6 +34,7 @@ import io.github.inflationx.viewpump.ViewPumpContextWrapper; |
| 33 | import ly.warp.sdk.R; | 34 | import ly.warp.sdk.R; |
| 34 | import ly.warp.sdk.io.models.Coupon; | 35 | import ly.warp.sdk.io.models.Coupon; |
| 35 | import ly.warp.sdk.io.models.Couponset; | 36 | import ly.warp.sdk.io.models.Couponset; |
| 37 | +import ly.warp.sdk.io.models.Merchant; | ||
| 36 | import ly.warp.sdk.services.EventCouponsService; | 38 | import ly.warp.sdk.services.EventCouponsService; |
| 37 | import ly.warp.sdk.utils.WarplyManagerHelper; | 39 | import ly.warp.sdk.utils.WarplyManagerHelper; |
| 38 | import ly.warp.sdk.utils.managers.WarplyAnalyticsManager; | 40 | import ly.warp.sdk.utils.managers.WarplyAnalyticsManager; |
| ... | @@ -51,10 +53,11 @@ public class CouponInfoActivity extends Activity implements View.OnClickListener | ... | @@ -51,10 +53,11 @@ public class CouponInfoActivity extends Activity implements View.OnClickListener |
| 51 | private ImageView mIvBack, mIvCouponPhoto, mIvBarcode; | 53 | private ImageView mIvBack, mIvCouponPhoto, mIvBarcode; |
| 52 | private TextView mTvTerms, mTvCouponCode, mTvCouponTitle, mTvCouponSubtitle, mTvCouponDate, | 54 | private TextView mTvTerms, mTvCouponCode, mTvCouponTitle, mTvCouponSubtitle, mTvCouponDate, |
| 53 | mTvTermsValue, mTvFullBarcode; | 55 | mTvTermsValue, mTvFullBarcode; |
| 54 | - private LinearLayout mLlGiftIt, mLlShops, mLlBarcodeShown, mLlBarcodeContainer, mLlTerms; | 56 | + private LinearLayout mLlGiftIt, mLlShops, mLlBarcodeShown, mLlBarcodeContainer, mLlTerms, mLlWebsite; |
| 55 | private Coupon mCoupon; | 57 | private Coupon mCoupon; |
| 56 | private Couponset mCouponset; | 58 | private Couponset mCouponset; |
| 57 | private boolean mIsBarcodeShown = false, mIsTermsShown = false, mIsFromWallet = false; | 59 | private boolean mIsBarcodeShown = false, mIsTermsShown = false, mIsFromWallet = false; |
| 60 | + private Merchant mMerchant; | ||
| 58 | 61 | ||
| 59 | // =========================================================== | 62 | // =========================================================== |
| 60 | // Methods for/from SuperClass/Interfaces | 63 | // Methods for/from SuperClass/Interfaces |
| ... | @@ -78,6 +81,7 @@ public class CouponInfoActivity extends Activity implements View.OnClickListener | ... | @@ -78,6 +81,7 @@ public class CouponInfoActivity extends Activity implements View.OnClickListener |
| 78 | mIvCouponPhoto = findViewById(R.id.imageView6); | 81 | mIvCouponPhoto = findViewById(R.id.imageView6); |
| 79 | mIvBarcode = findViewById(R.id.iv_barcode); | 82 | mIvBarcode = findViewById(R.id.iv_barcode); |
| 80 | mLlShops = findViewById(R.id.ll_shops); | 83 | mLlShops = findViewById(R.id.ll_shops); |
| 84 | + mLlWebsite = findViewById(R.id.ll_website); | ||
| 81 | mLlBarcodeShown = findViewById(R.id.ll_show_barcode); | 85 | mLlBarcodeShown = findViewById(R.id.ll_show_barcode); |
| 82 | mLlBarcodeContainer = findViewById(R.id.ll_barcode_container_items); | 86 | mLlBarcodeContainer = findViewById(R.id.ll_barcode_container_items); |
| 83 | mLlTerms = findViewById(R.id.ll_terms_inner); | 87 | mLlTerms = findViewById(R.id.ll_terms_inner); |
| ... | @@ -129,9 +133,20 @@ public class CouponInfoActivity extends Activity implements View.OnClickListener | ... | @@ -129,9 +133,20 @@ public class CouponInfoActivity extends Activity implements View.OnClickListener |
| 129 | 133 | ||
| 130 | Intent intent = new Intent(CouponInfoActivity.this, ShopsActivity.class); | 134 | Intent intent = new Intent(CouponInfoActivity.this, ShopsActivity.class); |
| 131 | intent.putExtra("couponset", (Serializable) mCouponset); | 135 | intent.putExtra("couponset", (Serializable) mCouponset); |
| 136 | + intent.putExtra("merchant", (Serializable) mMerchant); | ||
| 132 | startActivity(intent); | 137 | startActivity(intent); |
| 133 | return; | 138 | return; |
| 134 | } | 139 | } |
| 140 | + if (view.getId() == R.id.ll_website) { | ||
| 141 | + WarplyAnalyticsManager.logTrackersEvent(this, "click", "SeeShopWebsite"); | ||
| 142 | + | ||
| 143 | + if (!TextUtils.isEmpty(mMerchant.getWebsite())) { | ||
| 144 | + Intent intent = new Intent(Intent.ACTION_VIEW); | ||
| 145 | + intent.setData(Uri.parse(mMerchant.getWebsite())); | ||
| 146 | + startActivity(intent); | ||
| 147 | + } | ||
| 148 | + return; | ||
| 149 | + } | ||
| 135 | if (view.getId() == R.id.ll_show_barcode) { | 150 | if (view.getId() == R.id.ll_show_barcode) { |
| 136 | if (mIsBarcodeShown) { | 151 | if (mIsBarcodeShown) { |
| 137 | mLlBarcodeContainer.setVisibility(View.GONE); | 152 | mLlBarcodeContainer.setVisibility(View.GONE); |
| ... | @@ -175,6 +190,10 @@ public class CouponInfoActivity extends Activity implements View.OnClickListener | ... | @@ -175,6 +190,10 @@ public class CouponInfoActivity extends Activity implements View.OnClickListener |
| 175 | // =========================================================== | 190 | // =========================================================== |
| 176 | 191 | ||
| 177 | private void initViews() { | 192 | private void initViews() { |
| 193 | + mLlBarcodeShown.setVisibility(View.GONE); | ||
| 194 | + mLlBarcodeContainer.setVisibility(View.GONE); | ||
| 195 | + mIvBarcode.setVisibility(View.GONE); | ||
| 196 | + | ||
| 178 | mTvCouponCode.setText(mCoupon.getCoupon()); | 197 | mTvCouponCode.setText(mCoupon.getCoupon()); |
| 179 | mTvCouponTitle.setText(mCoupon.getName()); | 198 | mTvCouponTitle.setText(mCoupon.getName()); |
| 180 | // mTvCouponSubtitle.setText(mCoupon.getDescription()); | 199 | // mTvCouponSubtitle.setText(mCoupon.getDescription()); |
| ... | @@ -189,6 +208,24 @@ public class CouponInfoActivity extends Activity implements View.OnClickListener | ... | @@ -189,6 +208,24 @@ public class CouponInfoActivity extends Activity implements View.OnClickListener |
| 189 | } | 208 | } |
| 190 | 209 | ||
| 191 | if (mCouponset != null) { | 210 | if (mCouponset != null) { |
| 211 | + if (WarplyManagerHelper.getMerchantList() != null && WarplyManagerHelper.getMerchantList().size() > 0) { | ||
| 212 | + for (Merchant merchant : WarplyManagerHelper.getMerchantList()) { | ||
| 213 | + if (merchant.getUuid().equals(mCouponset.getMerchantUuid())) { | ||
| 214 | + mMerchant = merchant; | ||
| 215 | + break; | ||
| 216 | + } | ||
| 217 | + } | ||
| 218 | + | ||
| 219 | +// if (mMerchant != null) { | ||
| 220 | +// if (mMerchant.getExtraFields() != null && mMerchant.getExtraFields().has("show_map") && (mMerchant.getExtraFields().optBoolean("show_map") || mMerchant.getExtraFields().optString("show_map").equals("true"))) { | ||
| 221 | + mLlShops.setVisibility(View.VISIBLE); | ||
| 222 | +// } | ||
| 223 | +// if (mMerchant.getExtraFields() != null && mMerchant.getExtraFields().has("eshop") && (mMerchant.getExtraFields().optBoolean("eshop") || mMerchant.getExtraFields().optString("eshop").equals("true"))) { | ||
| 224 | +// mLlWebsite.setVisibility(View.VISIBLE); | ||
| 225 | +// } | ||
| 226 | +// } | ||
| 227 | + } | ||
| 228 | + | ||
| 192 | mTvCouponSubtitle.setText(mCouponset.getShortDescription()); | 229 | mTvCouponSubtitle.setText(mCouponset.getShortDescription()); |
| 193 | if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) { | 230 | if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) { |
| 194 | mTvTermsValue.setText(Html.fromHtml(mCouponset.getTerms(), Html.FROM_HTML_MODE_COMPACT)); | 231 | mTvTermsValue.setText(Html.fromHtml(mCouponset.getTerms(), Html.FROM_HTML_MODE_COMPACT)); |
| ... | @@ -225,6 +262,7 @@ public class CouponInfoActivity extends Activity implements View.OnClickListener | ... | @@ -225,6 +262,7 @@ public class CouponInfoActivity extends Activity implements View.OnClickListener |
| 225 | // mTvTerms.setPaintFlags(mTvTerms.getPaintFlags() | Paint.UNDERLINE_TEXT_FLAG); | 262 | // mTvTerms.setPaintFlags(mTvTerms.getPaintFlags() | Paint.UNDERLINE_TEXT_FLAG); |
| 226 | mLlGiftIt.setOnClickListener(this); | 263 | mLlGiftIt.setOnClickListener(this); |
| 227 | mLlShops.setOnClickListener(this); | 264 | mLlShops.setOnClickListener(this); |
| 265 | + mLlWebsite.setOnClickListener(this); | ||
| 228 | mLlBarcodeShown.setOnClickListener(this); | 266 | mLlBarcodeShown.setOnClickListener(this); |
| 229 | mLlTerms.setOnClickListener(this); | 267 | mLlTerms.setOnClickListener(this); |
| 230 | 268 | ||
| ... | @@ -268,6 +306,8 @@ public class CouponInfoActivity extends Activity implements View.OnClickListener | ... | @@ -268,6 +306,8 @@ public class CouponInfoActivity extends Activity implements View.OnClickListener |
| 268 | 306 | ||
| 269 | } catch (Exception e) { | 307 | } catch (Exception e) { |
| 270 | e.printStackTrace(); | 308 | e.printStackTrace(); |
| 309 | + mLlBarcodeShown.setVisibility(View.GONE); | ||
| 310 | + mLlBarcodeContainer.setVisibility(View.GONE); | ||
| 271 | mIvBarcode.setVisibility(View.GONE); | 311 | mIvBarcode.setVisibility(View.GONE); |
| 272 | } | 312 | } |
| 273 | } | 313 | } | ... | ... |
| ... | @@ -16,6 +16,7 @@ import android.widget.LinearLayout; | ... | @@ -16,6 +16,7 @@ import android.widget.LinearLayout; |
| 16 | import android.widget.TextView; | 16 | import android.widget.TextView; |
| 17 | 17 | ||
| 18 | import androidx.annotation.NonNull; | 18 | import androidx.annotation.NonNull; |
| 19 | +import androidx.appcompat.app.AlertDialog; | ||
| 19 | import androidx.core.app.ActivityCompat; | 20 | import androidx.core.app.ActivityCompat; |
| 20 | import androidx.core.content.ContextCompat; | 21 | import androidx.core.content.ContextCompat; |
| 21 | import androidx.fragment.app.FragmentActivity; | 22 | import androidx.fragment.app.FragmentActivity; |
| ... | @@ -68,6 +69,8 @@ public class ShopsActivity extends FragmentActivity implements View.OnClickListe | ... | @@ -68,6 +69,8 @@ public class ShopsActivity extends FragmentActivity implements View.OnClickListe |
| 68 | private ClusterManager<Merchant> mClusterManager; | 69 | private ClusterManager<Merchant> mClusterManager; |
| 69 | SupportMapFragment mMapView; | 70 | SupportMapFragment mMapView; |
| 70 | private MerchantList mMerchantList = new MerchantList(); | 71 | private MerchantList mMerchantList = new MerchantList(); |
| 72 | + private AlertDialog mAlertDialogNoShopsAvailable; | ||
| 73 | + private Merchant mMerchant; | ||
| 71 | 74 | ||
| 72 | // =========================================================== | 75 | // =========================================================== |
| 73 | // Methods for/from SuperClass/Interfaces | 76 | // Methods for/from SuperClass/Interfaces |
| ... | @@ -79,6 +82,7 @@ public class ShopsActivity extends FragmentActivity implements View.OnClickListe | ... | @@ -79,6 +82,7 @@ public class ShopsActivity extends FragmentActivity implements View.OnClickListe |
| 79 | setContentView(R.layout.activity_shops); | 82 | setContentView(R.layout.activity_shops); |
| 80 | 83 | ||
| 81 | mCouponset = (Couponset) getIntent().getSerializableExtra("couponset"); | 84 | mCouponset = (Couponset) getIntent().getSerializableExtra("couponset"); |
| 85 | + mMerchant = (Merchant) getIntent().getSerializableExtra("merchant"); | ||
| 82 | 86 | ||
| 83 | mIvBack = findViewById(R.id.iv_shops_back); | 87 | mIvBack = findViewById(R.id.iv_shops_back); |
| 84 | mMapView = (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.mv_shops); | 88 | mMapView = (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.mv_shops); |
| ... | @@ -254,11 +258,38 @@ public class ShopsActivity extends FragmentActivity implements View.OnClickListe | ... | @@ -254,11 +258,38 @@ public class ShopsActivity extends FragmentActivity implements View.OnClickListe |
| 254 | // Methods | 258 | // Methods |
| 255 | // =========================================================== | 259 | // =========================================================== |
| 256 | 260 | ||
| 261 | + private void showNoShopsAvailableDialog() { | ||
| 262 | + mAlertDialogNoShopsAvailable = new AlertDialog.Builder(this) | ||
| 263 | + .setTitle(R.string.cos_dlg_no_shops_title) | ||
| 264 | + .setMessage(R.string.cos_dlg_no_shops) | ||
| 265 | + .setPositiveButton(R.string.cos_dlg_no_shops_positive, (dialogPositive, whichPositive) -> { | ||
| 266 | + dialogPositive.dismiss(); | ||
| 267 | + openWebsite(); | ||
| 268 | + | ||
| 269 | + }) | ||
| 270 | + .setNegativeButton(R.string.cos_dlg_negative_button2, (dialogNegative, whichNegative) -> { | ||
| 271 | + dialogNegative.dismiss(); | ||
| 272 | + onBackPressed(); | ||
| 273 | + }) | ||
| 274 | + .show(); | ||
| 275 | + } | ||
| 276 | + | ||
| 277 | + private void openWebsite() { | ||
| 278 | + WarplyAnalyticsManager.logTrackersEvent(this, "click", "SeeShopWebsite"); | ||
| 279 | + | ||
| 280 | + if (!TextUtils.isEmpty(mMerchant.getWebsite())) { | ||
| 281 | + Intent intent = new Intent(Intent.ACTION_VIEW); | ||
| 282 | + intent.setData(Uri.parse(mMerchant.getWebsite())); | ||
| 283 | + startActivity(intent); | ||
| 284 | + } | ||
| 285 | + } | ||
| 286 | + | ||
| 257 | private final CallbackReceiver<MerchantList> mMerchantsCallback = new CallbackReceiver<MerchantList>() { | 287 | private final CallbackReceiver<MerchantList> mMerchantsCallback = new CallbackReceiver<MerchantList>() { |
| 258 | @Override | 288 | @Override |
| 259 | public void onSuccess(MerchantList result) { | 289 | public void onSuccess(MerchantList result) { |
| 260 | mMerchantList.clear(); | 290 | mMerchantList.clear(); |
| 261 | mMerchantList.addAll(result); | 291 | mMerchantList.addAll(result); |
| 292 | + | ||
| 262 | new Handler(Looper.getMainLooper()).post(() -> { | 293 | new Handler(Looper.getMainLooper()).post(() -> { |
| 263 | // if (mClusterManager != null) { | 294 | // if (mClusterManager != null) { |
| 264 | // mMap.clear(); | 295 | // mMap.clear(); |
| ... | @@ -269,6 +300,18 @@ public class ShopsActivity extends FragmentActivity implements View.OnClickListe | ... | @@ -269,6 +300,18 @@ public class ShopsActivity extends FragmentActivity implements View.OnClickListe |
| 269 | // mClusterManager.cluster(); | 300 | // mClusterManager.cluster(); |
| 270 | // } | 301 | // } |
| 271 | 302 | ||
| 303 | + int nonNullCoords = 0; | ||
| 304 | + for (Merchant merchCoords : result) { | ||
| 305 | + if (merchCoords.getLatitude() != 0.0 && merchCoords.getLongitude() != 0.0) { | ||
| 306 | + nonNullCoords++; | ||
| 307 | + } | ||
| 308 | + } | ||
| 309 | + | ||
| 310 | + if (result.size() == 0 || nonNullCoords == 0) { | ||
| 311 | + showNoShopsAvailableDialog(); | ||
| 312 | + return; | ||
| 313 | + } | ||
| 314 | + | ||
| 272 | for (Merchant merch : result) { | 315 | for (Merchant merch : result) { |
| 273 | mMap.addMarker(new MarkerOptions() | 316 | mMap.addMarker(new MarkerOptions() |
| 274 | .position(new LatLng(merch.getLatitude(), merch.getLongitude())) | 317 | .position(new LatLng(merch.getLatitude(), merch.getLongitude())) | ... | ... |
| ... | @@ -210,8 +210,8 @@ public class Merchant implements Parcelable, Serializable, ClusterItem { | ... | @@ -210,8 +210,8 @@ public class Merchant implements Parcelable, Serializable, ClusterItem { |
| 210 | this.description = json.optString(DESCRIPTION); | 210 | this.description = json.optString(DESCRIPTION); |
| 211 | this.short_description = json.optString(SHORT_DESCRIPTION); | 211 | this.short_description = json.optString(SHORT_DESCRIPTION); |
| 212 | this.region = json.optString(REGION); | 212 | this.region = json.optString(REGION); |
| 213 | - this.latitude = json.optDouble(LAT); | 213 | + this.latitude = json.isNull(LAT) ? 0.0 : json.optDouble(LAT); |
| 214 | - this.longitude = json.optDouble(LON); | 214 | + this.longitude = json.isNull(LON) ? 0.0 : json.optDouble(LON); |
| 215 | this.image = json.optString(IMAGE); | 215 | this.image = json.optString(IMAGE); |
| 216 | this.extra_fields = json.optJSONObject(EXTRA_FIELDS); | 216 | this.extra_fields = json.optJSONObject(EXTRA_FIELDS); |
| 217 | this.active = json.optBoolean(ACTIVE); | 217 | this.active = json.optBoolean(ACTIVE); | ... | ... |
| ... | @@ -1224,6 +1224,7 @@ public class WarplyManagerHelper { | ... | @@ -1224,6 +1224,7 @@ public class WarplyManagerHelper { |
| 1224 | } | 1224 | } |
| 1225 | 1225 | ||
| 1226 | public static void setMerchantList(MerchantList merchantList) { | 1226 | public static void setMerchantList(MerchantList merchantList) { |
| 1227 | + mMerchantList.clear(); | ||
| 1227 | mMerchantList = merchantList; | 1228 | mMerchantList = merchantList; |
| 1228 | } | 1229 | } |
| 1229 | 1230 | ... | ... |
| ... | @@ -19,6 +19,7 @@ import java.text.ParseException; | ... | @@ -19,6 +19,7 @@ import java.text.ParseException; |
| 19 | import java.text.SimpleDateFormat; | 19 | import java.text.SimpleDateFormat; |
| 20 | import java.util.ArrayList; | 20 | import java.util.ArrayList; |
| 21 | import java.util.Date; | 21 | import java.util.Date; |
| 22 | +import java.util.Locale; | ||
| 22 | import java.util.concurrent.TimeUnit; | 23 | import java.util.concurrent.TimeUnit; |
| 23 | 24 | ||
| 24 | import io.reactivex.Observable; | 25 | import io.reactivex.Observable; |
| ... | @@ -121,7 +122,7 @@ public class SharedCouponAdapter extends RecyclerView.Adapter<SharedCouponAdapte | ... | @@ -121,7 +122,7 @@ public class SharedCouponAdapter extends RecyclerView.Adapter<SharedCouponAdapte |
| 121 | 122 | ||
| 122 | JSONObject extraFields = WarpJSONParser.getJSONFromString(couponItem.getTransactionMetadata()); | 123 | JSONObject extraFields = WarpJSONParser.getJSONFromString(couponItem.getTransactionMetadata()); |
| 123 | 124 | ||
| 124 | - SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm"); | 125 | + SimpleDateFormat simpleDateFormat = new SimpleDateFormat("E, MMM dd yyyy HH:mm:ss", Locale.US); |
| 125 | Date newDate = new Date(); | 126 | Date newDate = new Date(); |
| 126 | try { | 127 | try { |
| 127 | newDate = simpleDateFormat.parse(couponItem.getDate()); | 128 | newDate = simpleDateFormat.parse(couponItem.getDate()); | ... | ... |
This diff is collapsed. Click to expand it.
| ... | @@ -93,6 +93,7 @@ | ... | @@ -93,6 +93,7 @@ |
| 93 | <string name="cos_dlg_negative_button2">Άκυρο</string> | 93 | <string name="cos_dlg_negative_button2">Άκυρο</string> |
| 94 | <string name="cos_profile_preferences">+Προτιμήσεις</string> | 94 | <string name="cos_profile_preferences">+Προτιμήσεις</string> |
| 95 | <string name="cos_shops">Δες τα καταστήματα</string> | 95 | <string name="cos_shops">Δες τα καταστήματα</string> |
| 96 | + <string name="cos_website">Δες το eshop</string> | ||
| 96 | <string name="cos_coupon_shops_title">Καταστήματα</string> | 97 | <string name="cos_coupon_shops_title">Καταστήματα</string> |
| 97 | <string name="cos_coupon_gift">Kάνε δώρο</string> | 98 | <string name="cos_coupon_gift">Kάνε δώρο</string> |
| 98 | <string name="cos_coupon_share_gift_title">Επίλεξε το κινητό από το οποίο θα γίνει η αποστολή και συμπλήρωσε το COSMOTE κινητό που θα λάβει το δώρο.</string> | 99 | <string name="cos_coupon_share_gift_title">Επίλεξε το κινητό από το οποίο θα γίνει η αποστολή και συμπλήρωσε το COSMOTE κινητό που θα λάβει το δώρο.</string> |
| ... | @@ -144,6 +145,9 @@ | ... | @@ -144,6 +145,9 @@ |
| 144 | <string name="cos_share_no_assets">Για την αποστολή του δώρου σου χρειάζεται να έχεις κινητό COSMOTE.</string> | 145 | <string name="cos_share_no_assets">Για την αποστολή του δώρου σου χρειάζεται να έχεις κινητό COSMOTE.</string> |
| 145 | <string name="cos_dlg_coupon_depleted_title">H προσφορά δεν είναι πλέον διαθέσιμη</string> | 146 | <string name="cos_dlg_coupon_depleted_title">H προσφορά δεν είναι πλέον διαθέσιμη</string> |
| 146 | <string name="cos_dlg_coupon_depleted_message">Μείνε συντονισμένος για νέες προσφορές και κουπόνια.</string> | 147 | <string name="cos_dlg_coupon_depleted_message">Μείνε συντονισμένος για νέες προσφορές και κουπόνια.</string> |
| 148 | + <string name="cos_dlg_no_shops">Ο συνεργάτης διαθέτει μόνο ηλεκτρονικό κατάστημα για ηλεκτρονικές παραγγελίες.</string> | ||
| 149 | + <string name="cos_dlg_no_shops_title">Καταστήματα συνεργάτη</string> | ||
| 150 | + <string name="cos_dlg_no_shops_positive">Δες το eshop</string> | ||
| 147 | 151 | ||
| 148 | <string-array name="coupons_array"> | 152 | <string-array name="coupons_array"> |
| 149 | <item>Κουπόνια</item> | 153 | <item>Κουπόνια</item> | ... | ... |
-
Please register or login to post a comment