2017-12-02 07:21:48 +08:00
|
|
|
<?php
|
|
|
|
|
|
|
|
namespace App\Services;
|
|
|
|
|
2018-03-20 09:50:40 +08:00
|
|
|
use App\Interfaces\Service;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Class ModuleService
|
|
|
|
* @package App\Services
|
|
|
|
*/
|
|
|
|
class ModuleService extends Service
|
2017-12-02 07:21:48 +08:00
|
|
|
{
|
|
|
|
protected static $adminLinks = [];
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @var array 0 == logged out, 1 == logged in
|
|
|
|
*/
|
2018-03-20 09:50:40 +08:00
|
|
|
protected static $frontendLinks = [
|
|
|
|
0 => [],
|
|
|
|
1 => []
|
|
|
|
];
|
2017-12-02 07:21:48 +08:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Add a module link in the frontend
|
|
|
|
* @param string $title
|
|
|
|
* @param string $url
|
|
|
|
* @param string $icon
|
|
|
|
*/
|
2018-03-20 09:50:40 +08:00
|
|
|
public function addFrontendLink(string $title, string $url, string $icon = '', $logged_in = true)
|
2017-12-02 07:21:48 +08:00
|
|
|
{
|
|
|
|
self::$frontendLinks[$logged_in][] = [
|
|
|
|
'title' => $title,
|
2018-03-20 09:50:40 +08:00
|
|
|
'url' => $url,
|
|
|
|
'icon' => 'pe-7s-users',
|
2017-12-02 07:21:48 +08:00
|
|
|
];
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Get all of the frontend links
|
|
|
|
* @return array
|
|
|
|
*/
|
|
|
|
public function getFrontendLinks($logged_in): array
|
|
|
|
{
|
|
|
|
return self::$frontendLinks[$logged_in];
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Add a module link in the admin panel
|
|
|
|
* @param string $title
|
|
|
|
* @param string $url
|
|
|
|
* @param string $icon
|
|
|
|
*/
|
2018-03-20 09:50:40 +08:00
|
|
|
public function addAdminLink(string $title, string $url, string $icon = '')
|
2017-12-02 07:21:48 +08:00
|
|
|
{
|
|
|
|
self::$adminLinks[] = [
|
|
|
|
'title' => $title,
|
2018-03-20 09:50:40 +08:00
|
|
|
'url' => $url,
|
|
|
|
'icon' => 'pe-7s-users'
|
2017-12-02 07:21:48 +08:00
|
|
|
];
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Get all of the module links in the admin panel
|
|
|
|
* @return array
|
|
|
|
*/
|
|
|
|
public function getAdminLinks(): array
|
|
|
|
{
|
|
|
|
return self::$adminLinks;
|
|
|
|
}
|
|
|
|
}
|