diff --git a/app/src/main/kotlin/com/simplemobiletools/calendar/activities/MainActivity.kt b/app/src/main/kotlin/com/simplemobiletools/calendar/activities/MainActivity.kt index 64689e8d8..f9b4cde97 100644 --- a/app/src/main/kotlin/com/simplemobiletools/calendar/activities/MainActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/calendar/activities/MainActivity.kt @@ -120,7 +120,7 @@ class MainActivity : SimpleActivity(), NavigationListener { } if (mStoredTextColor != config.textColor || mStoredBackgroundColor != config.backgroundColor || mStoredPrimaryColor != config.primaryColor - || mStoredDayCode != Formatter.getTodayCode()) { + || mStoredDayCode != Formatter.getTodayCode(applicationContext)) { updateViewPager() } @@ -198,7 +198,7 @@ class MainActivity : SimpleActivity(), NavigationListener { mStoredBackgroundColor = backgroundColor mStoredUse24HourFormat = use24hourFormat } - mStoredDayCode = Formatter.getTodayCode() + mStoredDayCode = Formatter.getTodayCode(applicationContext) } private fun checkOpenIntents() { diff --git a/app/src/main/kotlin/com/simplemobiletools/calendar/adapters/EventListAdapter.kt b/app/src/main/kotlin/com/simplemobiletools/calendar/adapters/EventListAdapter.kt index 54c4c89e9..0afe0bb94 100644 --- a/app/src/main/kotlin/com/simplemobiletools/calendar/adapters/EventListAdapter.kt +++ b/app/src/main/kotlin/com/simplemobiletools/calendar/adapters/EventListAdapter.kt @@ -7,6 +7,7 @@ import com.simplemobiletools.calendar.R import com.simplemobiletools.calendar.activities.SimpleActivity import com.simplemobiletools.calendar.dialogs.DeleteEventDialog import com.simplemobiletools.calendar.extensions.config +import com.simplemobiletools.calendar.extensions.getNowSeconds import com.simplemobiletools.calendar.extensions.shareEvents import com.simplemobiletools.calendar.helpers.Formatter import com.simplemobiletools.calendar.interfaces.DeleteEventsListener @@ -31,7 +32,7 @@ class EventListAdapter(activity: SimpleActivity, val listItems: ArrayList() diff --git a/app/src/main/kotlin/com/simplemobiletools/calendar/dialogs/RepeatLimitTypePickerDialog.kt b/app/src/main/kotlin/com/simplemobiletools/calendar/dialogs/RepeatLimitTypePickerDialog.kt index 1057c38f6..af8137022 100644 --- a/app/src/main/kotlin/com/simplemobiletools/calendar/dialogs/RepeatLimitTypePickerDialog.kt +++ b/app/src/main/kotlin/com/simplemobiletools/calendar/dialogs/RepeatLimitTypePickerDialog.kt @@ -7,6 +7,7 @@ import android.support.v7.app.AlertDialog import android.view.View import com.simplemobiletools.calendar.R import com.simplemobiletools.calendar.extensions.config +import com.simplemobiletools.calendar.extensions.getNowSeconds import com.simplemobiletools.calendar.extensions.seconds import com.simplemobiletools.calendar.helpers.Formatter import com.simplemobiletools.commons.extensions.getDialogTheme @@ -56,7 +57,7 @@ class RepeatLimitTypePickerDialog(val activity: Activity, var repeatLimit: Int, private fun updateRepeatLimitText() { if (repeatLimit <= 0) - repeatLimit = (System.currentTimeMillis() / 1000).toInt() + repeatLimit = activity.getNowSeconds() val repeatLimitDateTime = Formatter.getDateTimeFromTS(repeatLimit) view.repeat_type_date.text = Formatter.getFullDate(activity, repeatLimitDateTime) @@ -80,8 +81,7 @@ class RepeatLimitTypePickerDialog(val activity: Activity, var repeatLimit: Int, @SuppressLint("NewApi") private fun showRepetitionLimitDialog() { - val now = (System.currentTimeMillis() / 1000).toInt() - val repeatLimitDateTime = Formatter.getDateTimeFromTS(if (repeatLimit != 0) repeatLimit else now) + val repeatLimitDateTime = Formatter.getDateTimeFromTS(if (repeatLimit != 0) repeatLimit else activity.getNowSeconds()) val datepicker = DatePickerDialog(activity, activity.getDialogTheme(), repetitionLimitDateSetListener, repeatLimitDateTime.year, repeatLimitDateTime.monthOfYear - 1, repeatLimitDateTime.dayOfMonth) diff --git a/app/src/main/kotlin/com/simplemobiletools/calendar/extensions/Context.kt b/app/src/main/kotlin/com/simplemobiletools/calendar/extensions/Context.kt index b92f5825a..6be1aeb39 100644 --- a/app/src/main/kotlin/com/simplemobiletools/calendar/extensions/Context.kt +++ b/app/src/main/kotlin/com/simplemobiletools/calendar/extensions/Context.kt @@ -39,6 +39,8 @@ val Context.config: Config get() = Config.newInstance(applicationContext) val Context.dbHelper: DBHelper get() = DBHelper.newInstance(applicationContext) +fun Context.getNowSeconds() = (System.currentTimeMillis() / 1000).toInt() + fun Context.updateWidgets() { val widgetsCnt = AppWidgetManager.getInstance(applicationContext).getAppWidgetIds(ComponentName(applicationContext, MyWidgetMonthlyProvider::class.java)) if (widgetsCnt.isNotEmpty()) { @@ -77,7 +79,7 @@ fun Context.scheduleNextEventReminder(event: Event?, dbHelper: DBHelper) { return } - val now = (System.currentTimeMillis() / 1000).toInt() + val now = getNowSeconds() val reminderSeconds = event.getReminders().reversed().map { it * 60 } dbHelper.getEvents(now, now + YEAR, event.id) { if (it.isNotEmpty()) { diff --git a/app/src/main/kotlin/com/simplemobiletools/calendar/helpers/DBHelper.kt b/app/src/main/kotlin/com/simplemobiletools/calendar/helpers/DBHelper.kt index 76acf1a93..2247e1314 100644 --- a/app/src/main/kotlin/com/simplemobiletools/calendar/helpers/DBHelper.kt +++ b/app/src/main/kotlin/com/simplemobiletools/calendar/helpers/DBHelper.kt @@ -732,7 +732,7 @@ class DBHelper private constructor(val context: Context) : SQLiteOpenHelper(cont fun getRunningEvents(): List { val events = ArrayList() - val ts = (System.currentTimeMillis() / 1000).toInt() + val ts = context.getNowSeconds() val selection = "$COL_START_TS <= ? AND $COL_END_TS >= ? AND $COL_REPEAT_INTERVAL IS 0 AND $COL_START_TS != 0" val selectionArgs = arrayOf(ts.toString(), ts.toString()) @@ -773,7 +773,7 @@ class DBHelper private constructor(val context: Context) : SQLiteOpenHelper(cont } fun getEventsToExport(includePast: Boolean): ArrayList { - val currTime = (System.currentTimeMillis() / 1000).toString() + val currTime = context.getNowSeconds().toString() var events = ArrayList() // non repeating events diff --git a/app/src/main/kotlin/com/simplemobiletools/calendar/helpers/Formatter.kt b/app/src/main/kotlin/com/simplemobiletools/calendar/helpers/Formatter.kt index 3614bdc08..ebea1ff4c 100644 --- a/app/src/main/kotlin/com/simplemobiletools/calendar/helpers/Formatter.kt +++ b/app/src/main/kotlin/com/simplemobiletools/calendar/helpers/Formatter.kt @@ -3,6 +3,7 @@ package com.simplemobiletools.calendar.helpers import android.content.Context import com.simplemobiletools.calendar.R import com.simplemobiletools.calendar.extensions.config +import com.simplemobiletools.calendar.extensions.getNowSeconds import com.simplemobiletools.calendar.extensions.seconds import org.joda.time.DateTime import org.joda.time.DateTimeZone @@ -57,7 +58,7 @@ object Formatter { return "$month $day $year" } - fun getTodayCode() = Formatter.getDayCodeFromTS((System.currentTimeMillis() / 1000).toInt()) + fun getTodayCode(context: Context) = Formatter.getDayCodeFromTS(context.getNowSeconds()) fun getHours(context: Context, dateTime: DateTime) = dateTime.toString(getHourPattern(context)) diff --git a/app/src/main/kotlin/com/simplemobiletools/calendar/helpers/MyWidgetListProvider.kt b/app/src/main/kotlin/com/simplemobiletools/calendar/helpers/MyWidgetListProvider.kt index 076f6c824..4945dd50d 100644 --- a/app/src/main/kotlin/com/simplemobiletools/calendar/helpers/MyWidgetListProvider.kt +++ b/app/src/main/kotlin/com/simplemobiletools/calendar/helpers/MyWidgetListProvider.kt @@ -12,6 +12,7 @@ import com.simplemobiletools.calendar.R import com.simplemobiletools.calendar.activities.DayActivity import com.simplemobiletools.calendar.activities.SplashActivity import com.simplemobiletools.calendar.extensions.config +import com.simplemobiletools.calendar.extensions.getNowSeconds import com.simplemobiletools.calendar.extensions.launchNewEventIntent import com.simplemobiletools.calendar.services.WidgetService import com.simplemobiletools.commons.extensions.getColoredBitmap @@ -43,8 +44,7 @@ class MyWidgetListProvider : AppWidgetProvider() { setTextSize(R.id.widget_event_list_today, fontSize) } - val now = (System.currentTimeMillis() / 1000).toInt() - val todayText = Formatter.getLongestDate(now) + val todayText = Formatter.getLongestDate(context.getNowSeconds()) views.setText(R.id.widget_event_list_today, todayText) views.setImageViewBitmap(R.id.widget_event_new_event, context.resources.getColoredBitmap(R.drawable.ic_plus, textColor))