diff options
author | Caroline Chao <caroline.chao@digia.com> | 2014-10-10 14:02:52 +0200 |
---|---|---|
committer | Niels Weber <niels.weber@digia.com> | 2014-10-10 14:29:37 +0200 |
commit | 07eaebaad80cdd3d125cf9460ac322e3bc975da4 (patch) | |
tree | c07372ceb132e5a2f9f1341ea5cc10deb5cd527c | |
parent | 723259c73285dc7c047f2cf103b435b7d221e91b (diff) |
Update time display in Twitter view
Show time elapsed or date if tweet created more than 6 days ago.
Change-Id: Ib72a70adaff6b4d598044b28510b914a0a1b0b34
Reviewed-by: Niels Weber <niels.weber@digia.com>
-rw-r--r-- | qml/components/HomeScreen.qml | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/qml/components/HomeScreen.qml b/qml/components/HomeScreen.qml index 4e8b40c..62eab75 100644 --- a/qml/components/HomeScreen.qml +++ b/qml/components/HomeScreen.qml @@ -407,7 +407,7 @@ Rectangle { anchors.right: parent.right anchors.rightMargin: Theme.margins.ten anchors.bottom: parent.bottom - text: model.created_at + text: getElapsedTime() font.pointSize: Theme.fonts.seven_pt color: Theme.colors.gray textFormat: Text.StyledText @@ -417,6 +417,29 @@ Rectangle { + model.user.screen_name + "/status/" + model.id_str) } + function getElapsedTime() + { + var createdAt = model.created_at.replace(" +0000", "") // UTC + var createdDate = new Date(createdAt) + var now = new Date() // Local + var localOffset = now.getTimezoneOffset() * 60 * 1000 + var diff = Math.floor((now - createdDate + localOffset) / 1000); // seconds + if (diff <= 10) + return "Now" + if (diff <= 90) + return "1m" + if (diff <= 3540) + return Math.round(diff / 60) + "m" + if (diff <= 5400) + return "1h" + if (diff <= 87000) + return Math.round(diff / 3600) + "h" + if (diff <= 130000) + return "1 day" + if (diff < 540000) + return Math.round(diff / 86400) + " days" + return Qt.formatDate(createdDate, "d MMM"); + } } } |