. */ namespace Fisharebest\Webtrees\Theme; use Fisharebest\Webtrees\I18N; use Fisharebest\Webtrees\Menu; /** * The F.A.B. theme. */ class FabTheme extends AbstractTheme implements ThemeInterface { /** * Where are our CSS, JS and other assets? * * @return string A relative path, such as "themes/foo/" */ public function assetUrl() { return 'themes/fab/css-1.7.8/'; } /** * Add markup to a flash message. * * @param \stdClass $message * * @return string */ protected function flashMessageContainer(\stdClass $message) { // This theme uses jQueryUI markup. switch ($message->status) { case 'danger': return '

' . $message->text . '

'; default: return '

' . $message->text . '

'; } } /** * Add markup to the secondary menu. * * @return string */ protected function formatSecondaryMenu() { return ''; } /** * Create the contents of the
tag. * * @return string */ protected function headerContent() { return //$this->accessibilityLinks() . $this->formatTreeTitle() . $this->formatSecondaryMenu(); } /** * Add markup to an item in the secondary menu. * * @param Menu $menu * * @return string */ protected function formatSecondaryMenuItem(Menu $menu) { return $menu->getMenuAsList(); } /** * Create a search field and submit button for the quick search form in the header. * * @return string */ protected function formQuickSearchFields() { return ''; } /** * Allow themes to add extra scripts to the page footer. * * @return string */ public function hookFooterExtraJavascript() { return '' . '' . ''; } /** * Misecellaneous dimensions, fonts, styles, etc. * * @param string $parameter_name * * @return string|int|float */ public function parameter($parameter_name) { $parameters = array( 'chart-background-f' => 'e9daf1', 'chart-background-m' => 'b1cff0', 'chart-box-x' => 260, 'chart-box-y' => 85, 'distribution-chart-high-values' => '9ca3d4', 'distribution-chart-low-values' => 'e5e6ef', ); if (array_key_exists($parameter_name, $parameters)) { return $parameters[$parameter_name]; } else { return parent::parameter($parameter_name); } } /** * A list of CSS files to include for this page. * * @return string[] */ protected function stylesheets() { return array( 'themes/fab/jquery-ui-1.11.2/jquery-ui.css', $this->assetUrl() . 'style.css', ); } /** * A fixed string to identify this theme, in settings, etc. * * @return string */ public function themeId() { return 'fab'; } /** * What is this theme called? * * @return string */ public function themeName() { return /* I18N: Name of a theme. */ I18N::translate('F.A.B.'); } }