diff options
author | Caroline Chao <caroline.chao@digia.com> | 2014-02-20 16:10:27 +0100 |
---|---|---|
committer | Caroline Chao <caroline.chao@digia.com> | 2014-02-27 13:49:01 +0100 |
commit | 2117732be5762810e58fbf6cf576440f1b3a8166 (patch) | |
tree | 0859a4c8d0b3ca4c32b9013b1e7260a36673a1a7 /qml/js | |
parent | 249b65d84e09c11676199a48da8ac0e8533a55e2 (diff) |
Update date time handling
Limit strings manipulation by using Date instead. Use system
locale to retrieve date and time formats to display.
Change-Id: Ib9b3be727546a031bcb9c8f231fa77091bdc7587
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
Diffstat (limited to 'qml/js')
-rw-r--r-- | qml/js/utils.js | 44 |
1 files changed, 20 insertions, 24 deletions
diff --git a/qml/js/utils.js b/qml/js/utils.js index b419f0e..1ae2cfb 100644 --- a/qml/js/utils.js +++ b/qml/js/utils.js @@ -39,6 +39,7 @@ ****************************************************************************/ .pragma library +.import QtQml 2.2 as QtQml // LongTermPage utils @@ -87,17 +88,17 @@ function isNegative(val) // OneDayPage utils function getFromTime(index, dayModel) { - var timerange = dayModel.getDayDetails(index, 'timeRange') - var pattern_time = /(.*) - .*/ - var time = timerange.replace(pattern_time, "$1") - return time + var fromDate = dayModel.getDayDetails(index, 'from') + var fromTime = Qt.formatTime(new Date(fromDate), Qt.locale().timeFormat(QtQml.Locale.ShortFormat)) + fromTime = fromTime.replace(/(:00) /, "") // save some space if display like 11:00 am + return fromTime } function getToTime(index, dayModel) { - var timerange = dayModel.getDayDetails(index, 'timeRange') - var pattern_time = /.* - (.*)/ - var time = timerange.replace(pattern_time, "$1") - return time + var toDate = dayModel.getDayDetails(index, 'to') + var toTime = Qt.formatTime(new Date(toDate), Qt.locale().timeFormat(QtQml.Locale.ShortFormat)) + toTime = toTime.replace(/(:00) /, "") // save some space if display like 11:00 am + return toTime } function getMaxMinTemp(dayModel) { @@ -166,10 +167,7 @@ function updateDayModel(dayModel, item) { var windIconUrl = getWindSymbolUrl(item.windSpeed, item.windDirectionDeg) var weatherUrl = extractSymbolUrl(item.symbolcode) - var day = Qt.formatDate(new Date(dayModel.date), "dddd") - var timeRange = getTimeRange(item) - - dayModel.addRow(day, weatherUrl, timeRange, item.temperature, item.windSpeed, windIconUrl, item.rain, item.period) + dayModel.addRow(weatherUrl, item.from, item.to, item.temperature, item.windSpeed, windIconUrl, item.rain, item.period) } function getItemDate(item) @@ -180,14 +178,6 @@ function getItemDate(item) return date } -function getTimeRange(item) -{ - var fromDateTime = parseDateTime(item.from) - var toDateTime = parseDateTime(item.to) - var timeRange = fromDateTime[1] + " - " + toDateTime[1] - return timeRange -} - function parseDateTime(dt) { var pattern_date = /(.*)T.*/ @@ -229,18 +219,24 @@ function extractSymbolUrl(code) function getDay(index, dayModel) { - var day = dayModel.getDayDetails(index, "day") - return day + var dayDate = new Date(dayModel.date) + return Qt.locale().dayName(dayDate.getDay()) } function getShortDate(date) { - return date.substr(8, 2) + "." + date.substr(5, 2) // dd.MM + var d = new Date(date) + var formatWithYear = Qt.locale().dateFormat(QtQml.Locale.ShortFormat) + var formatWithoutYear = formatWithYear.replace(/[y]{1,4}/, "") + formatWithoutYear = formatWithoutYear.replace(/^\W/, "") + formatWithoutYear = formatWithoutYear.replace(/\W$/, "") + return Qt.formatDate(d, formatWithoutYear) } function getLongDate(date) { - return date.substr(8, 2) + "." + date.substr(5, 2) + "." + date.substr(0, 4) // dd.MM.yyyy + var d = new Date(date) + return Qt.formatDate(d, Qt.locale().dateFormat(QtQml.Locale.ShortFormat)) } function getRain(index, dayModel) |