From c4096d07585dd325c1b02a9d36d8042c567b2fd5 Mon Sep 17 00:00:00 2001 From: Phillip Thelen Date: Mon, 30 Nov 2015 23:36:41 +0100 Subject: [PATCH 1/4] set and update timezoneOffset. Fixes #15 --- .../habitrpg/android/habitica/MainActivity.java | 15 +++++++++++++++ .../habitica/callbacks/HabitRPGUserCallback.java | 8 +++++++- .../habitrpgwrapper/lib/api/ApiService.java | 5 +++++ 3 files changed, 27 insertions(+), 1 deletion(-) diff --git a/Habitica/src/com/habitrpg/android/habitica/MainActivity.java b/Habitica/src/com/habitrpg/android/habitica/MainActivity.java index 3017688dc..01bbd98d2 100644 --- a/Habitica/src/com/habitrpg/android/habitica/MainActivity.java +++ b/Habitica/src/com/habitrpg/android/habitica/MainActivity.java @@ -39,6 +39,13 @@ import com.raizlabs.android.dbflow.sql.language.Select; import org.solovyev.android.checkout.ActivityCheckout; import org.solovyev.android.checkout.Checkout; +import java.util.Calendar; +import java.util.GregorianCalendar; +import java.util.HashMap; +import java.util.Map; +import java.util.TimeZone; +import java.util.concurrent.TimeUnit; + import butterknife.ButterKnife; import butterknife.InjectView; import de.greenrobot.event.EventBus; @@ -198,6 +205,14 @@ public class MainActivity extends InstabugAppCompatActivity implements HabitRPGU private void setUserData() { if (user != null) { + Calendar mCalendar = new GregorianCalendar(); + TimeZone mTimeZone = mCalendar.getTimeZone(); + long offset = -TimeUnit.MINUTES.convert(mTimeZone.getRawOffset(), TimeUnit.MILLISECONDS); + if (offset != user.getPreferences().getTimezoneOffset()) { + Map updateData = new HashMap(); + updateData.put("preferences.timezoneOffset", String.valueOf(offset)); + mAPIHelper.apiService.updateUser(updateData, new HabitRPGUserCallback(this)); + } runOnUiThread(new Runnable() { @Override public void run() { diff --git a/Habitica/src/com/habitrpg/android/habitica/callbacks/HabitRPGUserCallback.java b/Habitica/src/com/habitrpg/android/habitica/callbacks/HabitRPGUserCallback.java index 3c1ae86e7..e714ae35f 100644 --- a/Habitica/src/com/habitrpg/android/habitica/callbacks/HabitRPGUserCallback.java +++ b/Habitica/src/com/habitrpg/android/habitica/callbacks/HabitRPGUserCallback.java @@ -1,8 +1,15 @@ package com.habitrpg.android.habitica.callbacks; +import android.util.Log; + import com.crashlytics.android.Crashlytics; import com.magicmicky.habitrpgwrapper.lib.models.HabitRPGUser; +import java.util.Calendar; +import java.util.GregorianCalendar; +import java.util.TimeZone; +import java.util.concurrent.TimeUnit; + import retrofit.Callback; import retrofit.RetrofitError; import retrofit.client.Response; @@ -22,7 +29,6 @@ public class HabitRPGUserCallback implements Callback { public void success(HabitRPGUser habitRPGUser, Response response) { habitRPGUser.async().save(); - mCallback.onUserReceived(habitRPGUser); } diff --git a/Habitica/src/com/magicmicky/habitrpgwrapper/lib/api/ApiService.java b/Habitica/src/com/magicmicky/habitrpgwrapper/lib/api/ApiService.java index 8e055350c..151fcb823 100644 --- a/Habitica/src/com/magicmicky/habitrpgwrapper/lib/api/ApiService.java +++ b/Habitica/src/com/magicmicky/habitrpgwrapper/lib/api/ApiService.java @@ -15,7 +15,9 @@ import com.magicmicky.habitrpgwrapper.lib.models.tasks.ItemData; import com.magicmicky.habitrpgwrapper.lib.models.tasks.Task; import java.util.ArrayList; +import java.util.Dictionary; import java.util.List; +import java.util.Map; import retrofit.Callback; import retrofit.http.Body; @@ -41,6 +43,9 @@ public interface ApiService { @GET("/user/") void getUser(Callback habitRPGUserCallback); + @PUT("/user/") + void updateUser(@Body Map updateDictionary, Callback habitRPGUserCallback); + @GET("/user/inventory/buy") void getInventoryBuyableGear(Callback> buyableGearCallback); From 08e9531160d4b357aa539478b596c37ab523d437 Mon Sep 17 00:00:00 2001 From: Franze Jr Date: Mon, 30 Nov 2015 20:00:29 -0300 Subject: [PATCH 2/4] Clear database. Fixes #79 --- .../src/com/habitrpg/android/habitica/HabiticaApplication.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Habitica/src/com/habitrpg/android/habitica/HabiticaApplication.java b/Habitica/src/com/habitrpg/android/habitica/HabiticaApplication.java index 0a7fb7c94..926939d92 100644 --- a/Habitica/src/com/habitrpg/android/habitica/HabiticaApplication.java +++ b/Habitica/src/com/habitrpg/android/habitica/HabiticaApplication.java @@ -70,6 +70,9 @@ public class HabiticaApplication extends Application { @Override public boolean deleteDatabase(String name) { + if(!name.endsWith(".db")){ + name += ".db"; + } return super.deleteDatabase(getDatabasePath(name).getAbsolutePath()); } From 0e865adcdf966617f16a01d927f7105f43bf7837 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Franz=C3=A9=20Jr?= Date: Mon, 30 Nov 2015 20:24:58 -0300 Subject: [PATCH 3/4] Update changelog.json --- Habitica/assets/paperboy/changelog.json | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/Habitica/assets/paperboy/changelog.json b/Habitica/assets/paperboy/changelog.json index bf25846bc..a68e2859d 100644 --- a/Habitica/assets/paperboy/changelog.json +++ b/Habitica/assets/paperboy/changelog.json @@ -6,6 +6,14 @@ "type": "F", "title": "Moved from activities to fragments (header scrolls up on each :))" }, + { + "type": "F", + "title": "Ability to Change/See/Add checklists" + }, + { + "type": "F", + "title": "Settings Screen with logout options and account details." + }, { "type": "I", "title": "better feedback on user login" @@ -13,6 +21,10 @@ { "type": "B", "title": "fix crash when saving dailies" + }, + { + "type": "B", + "title": "fix clear database" } ] }, @@ -204,4 +216,4 @@ } ] } -] \ No newline at end of file +] From fb2745b516da2618cc1ac1b760e6cb85bd4ef8a3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Franz=C3=A9=20Jr?= Date: Mon, 30 Nov 2015 20:28:56 -0300 Subject: [PATCH 4/4] Create changelog for 0.0.11 version --- Habitica/assets/paperboy/changelog.json | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/Habitica/assets/paperboy/changelog.json b/Habitica/assets/paperboy/changelog.json index a68e2859d..5bb188f80 100644 --- a/Habitica/assets/paperboy/changelog.json +++ b/Habitica/assets/paperboy/changelog.json @@ -1,11 +1,7 @@ [ { - "name": "Version 0.0.10", + "name": "Version 0.0.11", "items":[ - { - "type": "F", - "title": "Moved from activities to fragments (header scrolls up on each :))" - }, { "type": "F", "title": "Ability to Change/See/Add checklists" @@ -14,6 +10,19 @@ "type": "F", "title": "Settings Screen with logout options and account details." }, + { + "type": "B", + "title": "fix clear database" + } + ] + }, + { + "name": "Version 0.0.10", + "items":[ + { + "type": "F", + "title": "Moved from activities to fragments (header scrolls up on each :))" + }, { "type": "I", "title": "better feedback on user login" @@ -21,10 +30,6 @@ { "type": "B", "title": "fix crash when saving dailies" - }, - { - "type": "B", - "title": "fix clear database" } ] },