1
0
mirror of https://github.com/akaessens/NoFbEventScraper synced 2025-02-19 21:10:45 +01:00

fix date timezone

This commit is contained in:
akaessens 2020-03-27 19:31:28 +01:00
parent ae09cddb2e
commit 42a91802dc
2 changed files with 20 additions and 6 deletions

View File

@ -3,6 +3,8 @@ package com.akdev.nofbeventscraper;
import android.app.Activity;
import android.content.Context;
import android.os.AsyncTask;
import android.text.Editable;
import android.text.SpannableStringBuilder;
import android.util.Log;
import android.view.View;
import android.widget.Toast;
@ -51,6 +53,18 @@ public class FbScraper extends AsyncTask<Void, Void, Void> {
return name + street_address + postal_code + address_locality;
}
private String fixTimezone(String time_in) {
try {
Editable editable = new SpannableStringBuilder(time_in);
return editable.insert(22, ":").toString();
} catch (Exception e) {
return null;
}
}
private String readFromJson(JSONObject reader, String field) {
try {
@ -75,11 +89,13 @@ public class FbScraper extends AsyncTask<Void, Void, Void> {
JSONObject reader = new JSONObject(json);
String event_name = readFromJson(reader, "name");
String event_start = readFromJson(reader, "startDate");
String event_end = readFromJson(reader, "endDate");
String event_start = fixTimezone(readFromJson(reader, "startDate"));
String event_end = fixTimezone(readFromJson(reader, "endDate"));
String event_description = readFromJson(reader, "description");
String location_json = readFromJson(reader, "location");
String location = readFromLocJson(location_json);
if (event_name == null) {

View File

@ -149,15 +149,13 @@ public class MainActivity extends AppCompatActivity {
private Long convertTimeToEpoch (TextInputEditText field) {
try {
String time_str = field.getText().insert(22, ":").toString();
String time_str = field.getText().toString();
LocalDateTime datetime = LocalDateTime.parse(time_str, DateTimeFormatter.ISO_OFFSET_DATE_TIME);
ZoneId zoneId = ZoneId.systemDefault();
return datetime.atZone(zoneId).toEpochSecond() * 1000;
return datetime.atZone(ZoneId.of("UTC")).toEpochSecond() * 1000;
} catch (Exception e)
{
e.printStackTrace();
toast("Error: Invalid Time");
}
return null;
}