namespace BookStack\Theming;
-use BookStack\Access\SocialAuthService;
+use BookStack\Access\SocialDriverManager;
use BookStack\Exceptions\ThemeException;
use Illuminate\Console\Application;
use Illuminate\Console\Application as Artisan;
*/
protected array $listeners = [];
+ /**
+ * Get the currently configured theme.
+ * Returns an empty string if not configured.
+ */
+ public function getTheme(): string
+ {
+ return config('view.theme') ?? '';
+ }
+
/**
* Listen to a given custom theme event,
* setting up the action to be ran when the event occurs.
return null;
}
+ /**
+ * Check if there are listeners registered for the given event name.
+ */
+ public function hasListeners(string $event): bool
+ {
+ return count($this->listeners[$event] ?? []) > 0;
+ }
+
/**
* Register a new custom artisan command to be available.
*/
}
/**
- * @see SocialAuthService::addSocialDriver
+ * @see SocialDriverManager::addSocialDriver
*/
- public function addSocialDriver(string $driverName, array $config, string $socialiteHandler, callable $configureForRedirect = null): void
+ public function addSocialDriver(string $driverName, array $config, string $socialiteHandler, ?callable $configureForRedirect = null): void
{
- $socialAuthService = app()->make(SocialAuthService::class);
- $socialAuthService->addSocialDriver($driverName, $config, $socialiteHandler, $configureForRedirect);
+ $driverManager = app()->make(SocialDriverManager::class);
+ $driverManager->addSocialDriver($driverName, $config, $socialiteHandler, $configureForRedirect);
}
}