Commit 07eae83a authored by Benjamin Bellamy's avatar Benjamin Bellamy 💬 Committed by Yassine Doghri
Browse files

feat: add map analytics, add episodes analytics, clean analytics page layout, translate countries

parent 196920d6
Loading
Loading
Loading
Loading
+40 −4
Original line number Diff line number Diff line
@@ -123,10 +123,46 @@ $routes->group(
                    'as' => 'podcast-delete',
                    'filter' => 'permission:podcasts-delete',
                ]);
                $routes->get('analytics', 'Podcast::analytics/$1', [

                $routes->group('analytics', function ($routes) {
                    $routes->get('/', 'Podcast::viewAnalytics/$1', [
                        'as' => 'podcast-analytics',
                        'filter' => 'permission:podcasts-view,podcast-view',
                    ]);
                    $routes->get(
                        'webpages',
                        'Podcast::viewAnalyticsWebpages/$1',
                        [
                            'as' => 'podcast-analytics-webpages',
                            'filter' => 'permission:podcasts-view,podcast-view',
                        ]
                    );
                    $routes->get(
                        'locations',
                        'Podcast::viewAnalyticsLocations/$1',
                        [
                            'as' => 'podcast-analytics-locations',
                            'filter' => 'permission:podcasts-view,podcast-view',
                        ]
                    );
                    $routes->get(
                        'unique-listeners',
                        'Podcast::viewAnalyticsUniqueListeners/$1',
                        [
                            'as' => 'podcast-analytics-unique-listeners',
                            'filter' => 'permission:podcasts-view,podcast-view',
                        ]
                    );
                    $routes->get(
                        'players',
                        'Podcast::viewAnalyticsPlayers/$1',
                        [
                            'as' => 'podcast-analytics-players',
                            'filter' => 'permission:podcasts-view,podcast-view',
                        ]
                    );
                });

                $routes->get(
                    'analytics-data/(:segment)',
                    'AnalyticsData::getData/$1/$2',
+34 −2
Original line number Diff line number Diff line
@@ -58,12 +58,44 @@ class Podcast extends BaseController
        return view('admin/podcast/view', $data);
    }

    public function analytics()
    public function viewAnalytics()
    {
        $data = ['podcast' => $this->podcast];

        replace_breadcrumb_params([0 => $this->podcast->title]);
        return view('admin/podcast/analytics', $data);
        return view('admin/podcast/analytics/index', $data);
    }

    public function viewAnalyticsWebpages()
    {
        $data = ['podcast' => $this->podcast];

        replace_breadcrumb_params([0 => $this->podcast->title]);
        return view('admin/podcast/analytics/webpages', $data);
    }

    public function viewAnalyticsLocations()
    {
        $data = ['podcast' => $this->podcast];

        replace_breadcrumb_params([0 => $this->podcast->title]);
        return view('admin/podcast/analytics/locations', $data);
    }

    public function viewAnalyticsUniqueListeners()
    {
        $data = ['podcast' => $this->podcast];

        replace_breadcrumb_params([0 => $this->podcast->title]);
        return view('admin/podcast/analytics/unique_listeners', $data);
    }

    public function viewAnalyticsPlayers()
    {
        $data = ['podcast' => $this->podcast];

        replace_breadcrumb_params([0 => $this->podcast->title]);
        return view('admin/podcast/analytics/players', $data);
    }

    public function create()
+5 −0
Original line number Diff line number Diff line
@@ -20,4 +20,9 @@ class AnalyticsPodcastsByCountry extends Entity
        'date' => 'datetime',
        'hits' => 'integer',
    ];

    public function getLabels()
    {
        return lang('Countries.' . $this->attributes['labels']);
    }
}
+5 −0
Original line number Diff line number Diff line
@@ -23,4 +23,9 @@ class AnalyticsPodcastsByRegion extends Entity
        'date' => 'datetime',
        'hits' => 'integer',
    ];

    public function getCountryCode()
    {
        return lang('Countries.' . $this->attributes['country_code']);
    }
}
+6 −0
Original line number Diff line number Diff line
@@ -20,4 +20,10 @@ class AnalyticsWebsiteByEntryPage extends Entity
        'date' => 'datetime',
        'hits' => 'integer',
    ];

    public function getLabels()
    {
        $split = explode('/', $this->attributes['labels']);
        return $split[count($split) - 1];
    }
}
Loading