parent
95864628fe
commit
57424fca35
@ -0,0 +1,81 @@ |
||||
package net.pokeranalytics.android.util |
||||
|
||||
import java.text.DateFormat |
||||
import java.text.SimpleDateFormat |
||||
import java.util.* |
||||
|
||||
|
||||
// Calendar |
||||
|
||||
// Return if the calendar dates are in the same month |
||||
fun Calendar.isSameMonth(calendar: Calendar): Boolean { |
||||
return calendar.get(Calendar.YEAR) == this.get(Calendar.YEAR) && |
||||
calendar.get(Calendar.MONTH) == this.get(Calendar.MONTH) |
||||
} |
||||
// Return if the calendar dates are in the same day |
||||
fun Calendar.isSameDay(calendar: Calendar): Boolean { |
||||
return calendar.get(Calendar.YEAR) == this.get(Calendar.YEAR) && |
||||
calendar.get(Calendar.MONTH) == this.get(Calendar.MONTH) && |
||||
calendar.get(Calendar.DAY_OF_MONTH) == this.get(Calendar.DAY_OF_MONTH) |
||||
} |
||||
|
||||
// Date |
||||
|
||||
// Return a short string of the date |
||||
fun Date.shortDate(): String { |
||||
return DateFormat.getDateInstance(DateFormat.SHORT).format(this) |
||||
} |
||||
// Return a short string of the date |
||||
fun Date.mediumDate(): String { |
||||
return DateFormat.getDateInstance(DateFormat.MEDIUM).format(this) |
||||
} |
||||
// Return a long string of the date |
||||
fun Date.longDate(): String { |
||||
return DateFormat.getDateInstance(DateFormat.LONG).format(this) |
||||
} |
||||
// Return a short string of the date |
||||
fun Date.fullDate(): String { |
||||
return DateFormat.getDateInstance(DateFormat.FULL).format(this) |
||||
} |
||||
|
||||
// Return a short string of the date & time |
||||
fun Date.shortDateTime(): String { |
||||
return DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.SHORT).format(this) |
||||
} |
||||
// Return a medium string of the date & time |
||||
fun Date.mediumDateTime(): String { |
||||
return DateFormat.getDateTimeInstance(DateFormat.MEDIUM, DateFormat.MEDIUM).format(this) |
||||
} |
||||
// Return a long string of the date & time |
||||
fun Date.longDateTime(): String { |
||||
return DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.LONG).format(this) |
||||
} |
||||
// Return the full string of the date & time |
||||
fun Date.fullDateTime(): String { |
||||
return DateFormat.getDateTimeInstance(DateFormat.FULL, DateFormat.FULL).format(this) |
||||
} |
||||
// Return the day number of the date |
||||
fun Date.getDayNumber() : String { |
||||
return SimpleDateFormat("dd", Locale.getDefault()).format(this) |
||||
} |
||||
// Return the 3 first letters of the date's day |
||||
fun Date.getShortDayName() : String { |
||||
return SimpleDateFormat("EE", Locale.getDefault()).format(this).substring(0, 3) |
||||
} |
||||
// Return the month & year of the date |
||||
fun Date.getMonthAndYear(): String { |
||||
return SimpleDateFormat("MMMM YYYY", Locale.getDefault()).format(this).capitalize() |
||||
} |
||||
|
||||
// Return the duration between two dates |
||||
fun Date.getDuration(toDate: Date) : String { |
||||
val difference = (toDate.time - this.time).toInt() |
||||
val numOfDays = (difference / (1000 * 60 * 60 * 24)) |
||||
val hours = (difference / (1000 * 60 * 60)) |
||||
val minutes = (difference / (1000 * 60)) % 60 |
||||
|
||||
val hoursStr = if (hours < 10) "0$hours" else "$hours" |
||||
val minutesStr = if (minutes < 10) "0$minutes" else "$minutes" |
||||
|
||||
return "$hoursStr:$minutesStr" |
||||
} |
||||
@ -1,137 +0,0 @@ |
||||
package net.pokeranalytics.android.util |
||||
|
||||
import android.content.res.Resources |
||||
import android.widget.Toast |
||||
import net.pokeranalytics.android.ui.activity.components.PokerAnalyticsActivity |
||||
import net.pokeranalytics.android.ui.fragment.components.PokerAnalyticsFragment |
||||
import java.text.DateFormat |
||||
import java.text.DecimalFormat |
||||
import java.text.NumberFormat |
||||
import java.text.SimpleDateFormat |
||||
import java.util.* |
||||
|
||||
|
||||
|
||||
// Sizes |
||||
val Int.dp: Int |
||||
get() = (this / Resources.getSystem().displayMetrics.density).toInt() |
||||
val Int.px: Int |
||||
get() = (this * Resources.getSystem().displayMetrics.density).toInt() |
||||
val Float.dp: Float |
||||
get() = (this / Resources.getSystem().displayMetrics.density) |
||||
val Float.px: Float |
||||
get() = (this * Resources.getSystem().displayMetrics.density) |
||||
|
||||
|
||||
// Double |
||||
|
||||
fun Double.round(): String { |
||||
val formatter = DecimalFormat("##.##") |
||||
return formatter.format(this) |
||||
} |
||||
|
||||
fun Double.toCurrency(): String { |
||||
val format = NumberFormat.getCurrencyInstance() |
||||
format.maximumFractionDigits = 2 |
||||
format.minimumFractionDigits = 0 |
||||
return format.format(this) |
||||
} |
||||
|
||||
// Return the time from milliseconds to hours:minutes |
||||
fun Long.toMinutes() : String { |
||||
val totalMinutes = this / (1000 * 60) |
||||
val hours = totalMinutes / 60 |
||||
val minutesLeft = totalMinutes % 60 |
||||
var duration = "" |
||||
duration += if (hours < 10) "0$hours" else hours.toString() |
||||
duration += ":" |
||||
duration += if (minutesLeft < 10) "0$minutesLeft" else minutesLeft.toString() |
||||
return duration |
||||
|
||||
} |
||||
|
||||
// Calendar |
||||
|
||||
// Return if the calendar dates are in the same month |
||||
fun Calendar.isSameMonth(calendar: Calendar): Boolean { |
||||
return calendar.get(Calendar.YEAR) == this.get(Calendar.YEAR) && |
||||
calendar.get(Calendar.MONTH) == this.get(Calendar.MONTH) |
||||
} |
||||
// Return if the calendar dates are in the same day |
||||
fun Calendar.isSameDay(calendar: Calendar): Boolean { |
||||
return calendar.get(Calendar.YEAR) == this.get(Calendar.YEAR) && |
||||
calendar.get(Calendar.MONTH) == this.get(Calendar.MONTH) && |
||||
calendar.get(Calendar.DAY_OF_MONTH) == this.get(Calendar.DAY_OF_MONTH) |
||||
} |
||||
|
||||
|
||||
// Date |
||||
|
||||
// Return a short string of the date |
||||
fun Date.shortDate(): String { |
||||
return DateFormat.getDateInstance(DateFormat.SHORT).format(this) |
||||
} |
||||
// Return a short string of the date |
||||
fun Date.mediumDate(): String { |
||||
return DateFormat.getDateInstance(DateFormat.MEDIUM).format(this) |
||||
} |
||||
// Return a long string of the date |
||||
fun Date.longDate(): String { |
||||
return DateFormat.getDateInstance(DateFormat.LONG).format(this) |
||||
} |
||||
// Return a short string of the date |
||||
fun Date.fullDate(): String { |
||||
return DateFormat.getDateInstance(DateFormat.FULL).format(this) |
||||
} |
||||
|
||||
// Return a short string of the date & time |
||||
fun Date.shortDateTime(): String { |
||||
return DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.SHORT).format(this) |
||||
} |
||||
// Return a medium string of the date & time |
||||
fun Date.mediumDateTime(): String { |
||||
return DateFormat.getDateTimeInstance(DateFormat.MEDIUM, DateFormat.MEDIUM).format(this) |
||||
} |
||||
// Return a long string of the date & time |
||||
fun Date.longDateTime(): String { |
||||
return DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.LONG).format(this) |
||||
} |
||||
// Return the full string of the date & time |
||||
fun Date.fullDateTime(): String { |
||||
return DateFormat.getDateTimeInstance(DateFormat.FULL, DateFormat.FULL).format(this) |
||||
} |
||||
// Return the day number of the date |
||||
fun Date.getDayNumber() : String { |
||||
return SimpleDateFormat("dd", Locale.getDefault()).format(this) |
||||
} |
||||
// Return the 3 first letters of the date's day |
||||
fun Date.getShortDayName() : String { |
||||
return SimpleDateFormat("EE", Locale.getDefault()).format(this).substring(0, 3) |
||||
} |
||||
// Return the month & year of the date |
||||
fun Date.getMonthAndYear(): String { |
||||
return SimpleDateFormat("MMMM YYYY", Locale.getDefault()).format(this).capitalize() |
||||
} |
||||
|
||||
// Return the duration between two dates |
||||
fun Date.getDuration(toDate: Date) : String { |
||||
val difference = (toDate.time - this.time).toInt() |
||||
val numOfDays = (difference / (1000 * 60 * 60 * 24)) |
||||
val hours = (difference / (1000 * 60 * 60)) |
||||
val minutes = (difference / (1000 * 60)) % 60 |
||||
|
||||
val hoursStr = if (hours < 10) "0$hours" else "$hours" |
||||
val minutesStr = if (minutes < 10) "0$minutes" else "$minutes" |
||||
|
||||
return "$hoursStr:$minutesStr" |
||||
} |
||||
|
||||
// Toast |
||||
|
||||
fun PokerAnalyticsActivity.toast(message: String) { |
||||
Toast.makeText(this, message, Toast.LENGTH_SHORT).show() |
||||
} |
||||
|
||||
fun PokerAnalyticsFragment.toast(message: String) { |
||||
Toast.makeText(requireContext(), message, Toast.LENGTH_SHORT).show() |
||||
} |
||||
@ -0,0 +1,32 @@ |
||||
package net.pokeranalytics.android.util |
||||
|
||||
import java.text.DecimalFormat |
||||
import java.text.NumberFormat |
||||
|
||||
|
||||
// Double |
||||
|
||||
fun Double.round(): String { |
||||
val formatter = DecimalFormat("##.##") |
||||
return formatter.format(this) |
||||
} |
||||
|
||||
fun Double.toCurrency(): String { |
||||
val format = NumberFormat.getCurrencyInstance() |
||||
format.maximumFractionDigits = 2 |
||||
format.minimumFractionDigits = 0 |
||||
return format.format(this) |
||||
} |
||||
|
||||
// Return the time from milliseconds to hours:minutes |
||||
fun Long.toMinutes() : String { |
||||
val totalMinutes = this / (1000 * 60) |
||||
val hours = totalMinutes / 60 |
||||
val minutesLeft = totalMinutes % 60 |
||||
var duration = "" |
||||
duration += if (hours < 10) "0$hours" else hours.toString() |
||||
duration += ":" |
||||
duration += if (minutesLeft < 10) "0$minutesLeft" else minutesLeft.toString() |
||||
return duration |
||||
|
||||
} |
||||
@ -0,0 +1,29 @@ |
||||
package net.pokeranalytics.android.util |
||||
|
||||
import android.content.res.Resources |
||||
import android.widget.Toast |
||||
import net.pokeranalytics.android.ui.activity.components.PokerAnalyticsActivity |
||||
import net.pokeranalytics.android.ui.fragment.components.PokerAnalyticsFragment |
||||
|
||||
|
||||
// Sizes |
||||
val Int.dp: Int |
||||
get() = (this / Resources.getSystem().displayMetrics.density).toInt() |
||||
val Int.px: Int |
||||
get() = (this * Resources.getSystem().displayMetrics.density).toInt() |
||||
val Float.dp: Float |
||||
get() = (this / Resources.getSystem().displayMetrics.density) |
||||
val Float.px: Float |
||||
get() = (this * Resources.getSystem().displayMetrics.density) |
||||
|
||||
|
||||
|
||||
// Toast |
||||
|
||||
fun PokerAnalyticsActivity.toast(message: String) { |
||||
Toast.makeText(this, message, Toast.LENGTH_SHORT).show() |
||||
} |
||||
|
||||
fun PokerAnalyticsFragment.toast(message: String) { |
||||
Toast.makeText(requireContext(), message, Toast.LENGTH_SHORT).show() |
||||
} |
||||
Loading…
Reference in new issue