package im.actor.sdk.controllers.pickers.file.util;
import android.content.Context;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;
import im.actor.sdk.R;
/**
* Created by kiolt_000 on 15/09/2014.
*/
public class TimeUtils {
public static int unixtime() {
return (int) (System.currentTimeMillis() / 1000);
}
static ThreadLocal<DateFormat> dateInstanceGetter = new ThreadLocal<DateFormat>() {
@Override
protected DateFormat initialValue() {
return SimpleDateFormat.getDateInstance(DateFormat.SHORT, Locale.getDefault());
}
};
static ThreadLocal<DateFormat> timeInstanceGetter = new ThreadLocal<DateFormat>() {
@Override
protected DateFormat initialValue() {
return SimpleDateFormat.getTimeInstance(DateFormat.SHORT, Locale.getDefault());
}
};
public static String formatFileTime(long time, Context context) {
Date currentDate = new Date(System.currentTimeMillis());
Date convertableDate = new Date(time);
String convertedDate = dateInstanceGetter.get().format(convertableDate);
String convertedTime = timeInstanceGetter.get().format(convertableDate);
/*if (currentDate.getYear() == convertableDate.getYear()) {
if (currentDate.getMonth() == convertableDate.getMonth()) {
if (currentDate.getDay() == convertableDate.getDay()) {
if (currentDate.getHours() == convertableDate.getHours()) {
if (currentDate.getMinutes() == convertableDate.getMinutes()) {
return context.getString(R.string.picker_time_minute_ago);
}
int minutesAgo = currentDate.getMinutes() - convertableDate.getMinutes();
return context.getResources().getQuantityString(R.plurals.picker_time_minutes_ago, minutesAgo, minutesAgo);
// to do android-i18n-plurals implementation
} else {
if (currentDate.getHours() - 1 == convertableDate.getHours()) {
return context.getString(R.string.picker_time_hour_ago);
}
}
return context.getString(R.string.picker_time_today_at, convertedTime);
} else {
if (currentDate.getDay() - 1 == convertableDate.getDay()) {
return context.getString(R.string.picker_time_yesterday_at, convertedTime);
}
}
}
int flags = DateUtils.FORMAT_SHOW_DATE | DateUtils.FORMAT_NO_YEAR;
convertedDate = DateUtils.formatDateTime(context, time, flags);
}*/
return context.getString(R.string.picker_time_at, convertedDate, convertedTime);
}
}