package org.softeg.slartus.forpdaplus.classes.common; import android.content.Context; import android.content.SharedPreferences; import android.text.TextUtils; import org.softeg.slartus.forpdaplus.App; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import java.util.GregorianCalendar; import java.util.regex.Pattern; /** * Created by IntelliJ IDEA. * User: Admin * Date: 29.09.11 * Time: 20:37 * To change this template use File | Settings | File Templates. */ public class Functions { private static SimpleDateFormat fullDateTimeFormat = new SimpleDateFormat("dd.MM.yyyy HH:mm:ss"); public static Boolean isWebviewAllowJavascriptInterface(Context context) { final SharedPreferences prefs = App.getInstance().getPreferences(); return prefs.getBoolean("system.WebviewAllowJavascriptInterface", true); // return !Build.VERSION.RELEASE.startsWith("2.3")|| Build.VERSION.RELEASE.equals("2.3.7") // || Build.VERSION.RELEASE.equals("2.3.4"); } public static String getToday() { return org.softeg.slartus.forpdacommon.Functions.getToday(); } public static String getYesterToday() { return org.softeg.slartus.forpdacommon.Functions.getYesterToday(); } public static String getForumDateTime(Date date) { return org.softeg.slartus.forpdacommon.Functions.getForumDateTime(date); } public static Date parseForumDateTime(String dateTime, String today, String yesterday) { return org.softeg.slartus.forpdacommon.Functions.parseForumDateTime(dateTime, today, yesterday); } public static String getFullDateString(Date date) { if (date == null) return ""; return fullDateTimeFormat.format(date); } public static Date getFullDate(String dateString, Date defaultValue) { if (TextUtils.isEmpty(dateString)) return defaultValue; try { return fullDateTimeFormat.parse(dateString); } catch (ParseException e) { return defaultValue; } } public static Boolean isImageUrl(String url) { return Pattern.compile("(png|jpeg|jpg)$").matcher(url).find(); } public static String getSizeText(long bytes) { if (bytes < 1000) return bytes + "Б"; if (bytes < 1000 * 1024) return String.format("%.1fКб", (float) bytes / 1024); if (bytes < 1000 * 1024 * 1024) return String.format("%.1fМб", (float) bytes / 1024 / 1024); return String.format("%.1fГб", (float) bytes / 1024 / 1024 / 1024); } public static int getUniqueDateInt() { Calendar calendar = new GregorianCalendar(); // максимум: 2147483647 // 1д22ч.74м.83с.647мс //ччммссмммм // calendar.getTimeInMillis() int res = calendar.get(Calendar.HOUR_OF_DAY) * 10000000 + calendar.get(Calendar.MINUTE) * 100000 + calendar.get(Calendar.SECOND) * 1000 + calendar.get(Calendar.MILLISECOND); return res; } }