From 5e9b096257a36a397bcd3f1c0df3c7aa435c54d0 Mon Sep 17 00:00:00 2001 From: Kevin Ansfield Date: Sat, 7 Aug 2021 01:38:37 +0100 Subject: [PATCH] Added latest 5 newsletters list to labs dashboard no issue - basic functionality added, prep for dashboard re-organisation --- ghost/admin/app/controllers/dashboard-labs.js | 12 +++++++ ghost/admin/app/templates/dashboard-labs.hbs | 34 ++++++++++++++++++- 2 files changed, 45 insertions(+), 1 deletion(-) diff --git a/ghost/admin/app/controllers/dashboard-labs.js b/ghost/admin/app/controllers/dashboard-labs.js index e8e2dea699..ec9794648a 100644 --- a/ghost/admin/app/controllers/dashboard-labs.js +++ b/ghost/admin/app/controllers/dashboard-labs.js @@ -2,6 +2,7 @@ import Controller from '@ember/controller'; import {action} from '@ember/object'; import {getSymbol} from 'ghost-admin/utils/currency'; import {inject as service} from '@ember/service'; +import {task} from 'ember-concurrency-decorators'; import {tracked} from '@glimmer/tracking'; export default class DashboardController extends Controller { @@ -32,6 +33,8 @@ export default class DashboardController extends Controller { @tracked newsletterOpenRatesError = null; @tracked newsletterOpenRatesLoading = false; + @tracked latestNewsletters = null; + @tracked whatsNewEntries = null; @tracked whatsNewEntriesLoading = null; @tracked whatsNewEntriesError = null; @@ -50,6 +53,7 @@ export default class DashboardController extends Controller { this.loadEvents(); this.loadTopMembers(); this.loadCharts(); + this.loadLatestNewsletters.perform(); this.loadWhatsNew(); } @@ -169,6 +173,14 @@ export default class DashboardController extends Controller { }); } + @task + *loadLatestNewsletters() { + this.latestNewsletters = yield this.store.query('email', { + limit: 5, + order: 'created_at desc' + }); + } + loadNewsletterOpenRates() { this.newsletterOpenRatesLoading = true; this.membersStats.fetchNewsletterStats().then((results) => { diff --git a/ghost/admin/app/templates/dashboard-labs.hbs b/ghost/admin/app/templates/dashboard-labs.hbs index f260528d02..71c2cc85e7 100644 --- a/ghost/admin/app/templates/dashboard-labs.hbs +++ b/ghost/admin/app/templates/dashboard-labs.hbs @@ -135,8 +135,40 @@ {{/if}} -
+
+
+
+

Latest newsletters

+
+
+ {{#if this.loadLatestNewsletters.isRunning}} + Loading... + {{else}} +
    +
  1. +
    Title
    +
    Sends
    +
    Open %
    +
  2. + {{#each this.latestNewsletters as |newsletter|}} +
  3. + {{newsletter.subject}} +
    {{newsletter.emailCount}}
    +
    {{newsletter.openRate}}%
    +
  4. + {{else}} +
  5. No newsletters sent.
  6. + {{/each}} +
+ {{/if}} +
+ +
+
+ {{#if (not this.feature.launchComplete)}}