Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 4 additions & 8 deletions app/controllers/admin/events/list.js
Original file line number Diff line number Diff line change
Expand Up @@ -35,22 +35,18 @@ export default class extends Controller.extend(EmberTableControllerMixin) {
valuePath : 'startsAt',
isSortable : true,
headerComponent : 'tables/headers/sort',
extraValuePaths : ['timezone'],
cellComponent : 'ui-table/cell/cell-simple-date',
width : 65,
options : {
dateFormat: 'MMMM DD, YYYY - hh:mm A'
}
width : 75
},
{
name : 'Ends At',
valuePath : 'endsAt',
isSortable : true,
extraValuePaths : ['timezone'],
headerComponent : 'tables/headers/sort',
cellComponent : 'ui-table/cell/cell-simple-date',
width : 65,
options : {
dateFormat: 'MMMM DD, YYYY - hh:mm A'
}
width : 75
},
{
name : 'State',
Expand Down
3 changes: 2 additions & 1 deletion app/controllers/events/list.js
Original file line number Diff line number Diff line change
Expand Up @@ -27,8 +27,9 @@ export default class extends Controller.extend(EmberTableControllerMixin) {
{
name : 'Date',
valuePath : 'startsAt',
extraValuePaths : ['endsAt'],
extraValuePaths : ['endsAt', 'timezone'],
isSortable : true,
width : 180,
headerComponent : 'tables/headers/sort',
cellComponent : 'ui-table/cell/cell-event-date'

Expand Down
9 changes: 9 additions & 0 deletions app/helpers/general-date.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
import Helper from '@ember/component/helper';
import moment from 'moment';

export function generalDate(params) {
let timezone = params[1] ? params[1] : moment.tz.guess();
return `${moment(params[0]).tz(timezone).format('h:mm A , MMMM Do YYYY')} (${moment.tz(params[0], timezone).zoneAbbr()})`;
}

export default Helper.helper(generalDate);
2 changes: 1 addition & 1 deletion app/helpers/header-date.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,4 @@ export function headerDate(params) {
return `${moment(params[0]).tz(timezone).format('dddd, MMMM Do YYYY, h:mm A')} (${moment.tz(params[0], timezone).zoneAbbr()})`;
}

export default Helper.helper(headerDate);
export default Helper.helper(headerDate);
2 changes: 1 addition & 1 deletion app/templates/components/event-card.hbs
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
{{/smart-overflow}}
<div class="meta">
<span class="date">
{{moment-format event.startsAt 'ddd, MMM DD h:mm A'}}
{{general-date event.startsAt event.timezone}}
</span>
</div>
{{#smart-overflow class='description'}}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,11 +36,11 @@
</tr>
<tr>
<td><strong>{{t 'Start time'}}</strong></td>
<td>{{moment-format data.event.startsAt 'h:mm A, MMMM Do YYYY'}}</td>
<td>{{general-date data.event.startsAt data.event.timezone}}</td>
</tr>
<tr>
<td><strong>{{t 'End time'}}</strong></td>
<td>{{moment-format data.event.endsAt 'h:mm A, MMMM Do YYYY'}}</td>
<td>{{general-date data.event.endsAt data.event.timezone}}</td>
</tr>
<tr>
<td><strong>{{t 'Session types'}}</strong></td>
Expand Down
4 changes: 2 additions & 2 deletions app/templates/components/ui-table/cell/cell-event-date.hbs
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
{{#if record}}
{{#if extraRecords.endsAt}}
<div>
{{moment-format record 'MMMM DD, YYYY - hh:mm A'}}
{{general-date record extraRecords.timezone}}
</div>
(to)
<div>
{{moment-format extraRecords.endsAt 'MMMM DD, YYYY - hh:mm A'}}
{{general-date extraRecords.endsAt extraRecords.timezone}}
</div>
{{else}}
<span>
Expand Down
8 changes: 4 additions & 4 deletions app/templates/components/ui-table/cell/cell-simple-date.hbs
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
{{#if record}}
{{#if extraRecords.timezone}}
<span>
{{moment-format record (if props.options.dateFormat props.options.dateFormat 'MMMM DD, YYYY - HH:mm A')}}
{{general-date record extraRecords.timezone}}
</span>
{{else}}
{{else if record}}
<span>
{{t 'No dates available.'}}
{{moment-format record (if props.options.dateFormat props.options.dateFormat 'MMMM DD, YYYY - HH:mm A')}}
</span>
{{/if}}
16 changes: 16 additions & 0 deletions tests/integration/helpers/general-date-test.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
import { module, test } from 'qunit';
import { setupIntegrationTest } from 'open-event-frontend/tests/helpers/setup-integration-test';
import hbs from 'htmlbars-inline-precompile';
import { render } from '@ember/test-helpers';
import moment from 'moment';

module('Integration | Helper | general date', function(hooks) {
setupIntegrationTest(hooks);

test('it renders', async function(assert) {
this.set('inputMomentValue', moment('2019-05-01T03:30:00+09:00'));
this.set('inputTimezoneValue', 'Japan');
await render(hbs`{{general-date inputMomentValue inputTimezoneValue}}`);
assert.equal(this.element.innerHTML.trim(), '3:30 AM , May 1st 2019 (JST)');
});
});
2 changes: 1 addition & 1 deletion tests/integration/helpers/header-date-test.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ module('Integration | Helper | header date', function(hooks) {
setupIntegrationTest(hooks);

test('it renders', async function(assert) {
this.set('inputMomentValue', moment('2019-04-30T18:30:00+00:00'));
this.set('inputMomentValue', moment('2019-05-01T03:30:00+09:00'));
this.set('inputTimezoneValue', 'Japan');
await render(hbs`{{header-date inputMomentValue inputTimezoneValue}}`);
assert.equal(this.element.innerHTML.trim(), 'Wednesday, May 1st 2019, 3:30 AM (JST)');
Expand Down