]> www.average.org Git - WhereAmI.git/blobdiff - src/org/average/whereami/PhoneLog.java
fix grammar of the message
[WhereAmI.git] / src / org / average / whereami / PhoneLog.java
index dde2a1a582a5f02458661533995d4863e135e24f..00de54578c712e35b2674c8811022a38afcfc579 100644 (file)
@@ -1,6 +1,7 @@
 package org.average.whereami;
 
 import org.average.whereami.PersistentStore;
+import org.average.whereami.SayWhen;
 
 import java.io.IOException;
 
@@ -32,12 +33,30 @@ public final class PhoneLog extends Oracle {
        private String calendar_id;
        private String nocalendar;
        private String noevents;
+       private String last_call;
+       private String in_call;
+       private String out_call;
+       private String duration;
+       private String lessthan;
+       private String minutes1;
+       private String minutes2to4;
+       private String minutes5up;
+       private SayWhen sayWhen;
 
        public PhoneLog(final Resources res, final PersistentStore store) {
                super(res, store);
                this.store = store;
                nocalendar = res.getString(R.string.nocalendar);
                noevents = res.getString(R.string.noevents);
+               last_call = res.getString(R.string.last_call);
+               in_call = res.getString(R.string.in_call);
+               out_call = res.getString(R.string.out_call);
+               duration = res.getString(R.string.duration);
+               lessthan = res.getString(R.string.lessthan);
+               minutes1 = res.getString(R.string.minutes1);
+               minutes2to4 = res.getString(R.string.minutes2to4);
+               minutes5up = res.getString(R.string.minutes5up);
+               sayWhen = new SayWhen(res);
                calendar_name = store.get("calendar_name");
                peer_name = store.get("peer_name");
                calendar_id = store.get("calendar_id");
@@ -62,14 +81,14 @@ public final class PhoneLog extends Oracle {
                                return scanEvents(calendar_id, peer_name);
                        }
                } catch (GoogleJsonResponseException e) {
-                       Log.v(TAG, "GoogleJsonResponseException: " + e);
+                       Log.e(TAG, "GoogleJsonResponseException: " + e);
                        if (e.getResponse().getStatusCode() == 401) {
                                return authErrorMessage;
                        } else {
                                return e.getMessage();
                        }
                } catch (HttpResponseException e) {
-                       Log.v(TAG, "HttpResponseException: " + e);
+                       Log.e(TAG, "HttpResponseException: " + e);
                        return e.getMessage();
                } catch (IOException e) {
                        e.printStackTrace();
@@ -167,12 +186,26 @@ public final class PhoneLog extends Oracle {
                                        Boolean latestWasOutgoing) {
                Time stime = new Time();
                stime.set(latestStartTime);
-               Long durms = latestStopTime - latestStartTime;
+               Long dur = (latestStopTime - latestStartTime) / 60000L;
                Log.v(TAG, "Chosen event: start " + stime +
-                       " for " + durms + " msec");
-               Long nowms = System.currentTimeMillis();
-               return "" + (latestWasOutgoing?"Out ":"In  ") +
-                       (durms/3600000) + " min " +
-                       stime.format("%H:%M");
+                       " for " + dur + " min");
+               String minutes;
+               String howlong = dur.toString();
+               if (dur == 0) {
+                       howlong = lessthan;
+                       minutes = minutes2to4;
+               } else if ((dur / 10) == 1) {
+                       minutes = minutes5up;
+               } else if ((dur % 10) == 1) {
+                       minutes = minutes1;
+               } else if ((dur % 10) < 5) {
+                       minutes = minutes2to4;
+               } else {
+                       minutes = minutes5up;
+               }
+               return last_call +
+                       " " + (latestWasOutgoing?out_call:in_call) +
+                       " " + sayWhen.say(latestStartTime) +
+                       " " + duration + " " + howlong + " " + minutes;
        }
 }