| <?php |
| /** |
| * ***************************************************************************** |
| * Copyright (c) 2016 Eclipse Foundation and others. |
| * All rights reserved. This program and the accompanying materials |
| * are made available under the terms of the Eclipse Public License v1.0 |
| * which accompanies this distribution, and is available at |
| * http://www.eclipse.org/legal/epl-v10.html |
| * |
| * Contributors: |
| * Christopher Guindon (Eclipse Foundation) - Initial implementation |
| * ***************************************************************************** |
| */ |
| |
| require_once ('solstice.class.php'); |
| class Quicksilver extends solstice { |
| |
| /** |
| * Constructor |
| */ |
| public function __construct($App = NULL) { |
| parent::__construct($App); |
| $this->setTheme('quicksilver'); |
| |
| $this->resetAttributes('header-left'); |
| $this->resetAttributes('main-menu-wrapper'); |
| $this->resetAttributes('header-right'); |
| $this->resetAttributes('main-sidebar'); |
| |
| $this->setAttributes('header-left', 'col-sm-5 col-md-4'); |
| $this->setAttributes('main-menu-wrapper', 'col-sm-19 col-md-20 margin-top-10'); |
| $this->setAttributes('main-menu-wrapper-no-header-right', 'col-sm-24 col-md-19 reset margin-top-10'); |
| |
| $this->removeAttributes('main', 'no-promo'); |
| $this->setAttributes('breadcrumbs', 'breadcrumbs-default-margin'); |
| $this->setAlternateLayout(); |
| $this->removeAttributes('img_logo_default', 'img-responsive', 'class'); |
| $this->setAttributes('img_logo_default', '160', 'width'); |
| $this->setAttributes('img_logo_mobile', '160', 'width'); |
| |
| // Featured footer |
| $this->setAttributes('featured-footer', 'featured-footer featured-footer-newsletter'); |
| |
| // Set attributes on main sidebar |
| $this->setAttributes('main-sidebar', 'main-sidebar-default-margin'); |
| |
| $this->setAttributes('btn-call-for-action', 'float-right hidden-xs'); |
| $this->setAttributes('main-menu', 'float-sm-right'); |
| $this->removeAttributes('navbar-main-menu', 'reset'); |
| } |
| |
| public function setAlternateLayout($enable = FALSE) { |
| $image_path = '//www.eclipse.org' . $this->getThemeUrl('solstice') . 'public/images/logo/'; |
| $default_logo = 'eclipse-foundation-white-orange.svg'; |
| if ($enable) { |
| $default_logo = 'eclipse-foundation-grey-orange.svg'; |
| $this->setAttributes('body', 'alternate-layout'); |
| } |
| else { |
| $this->removeAttributes('body', 'alternate-layout'); |
| } |
| |
| // Set default images |
| $this->setAttributes('img_logo_default', $image_path . $default_logo, 'src'); |
| $this->setAttributes('img_logo_eclipse_default', $image_path . $default_logo, 'src'); |
| $this->setAttributes('img_logo_eclipse_white', $image_path . 'eclipse-foundation-white.svg', 'src'); |
| $this->setAttributes('img_logo_mobile', $image_path . $default_logo, 'src'); |
| } |
| |
| /** |
| * Implement BaseTheme::_getHeaderRight(); |
| * |
| * Hide headerRight div if empty |
| * |
| * {@inheritDoc} |
| * @see BaseTheme::getHeaderRight() |
| */ |
| public function getHeaderRight(){ |
| return ""; |
| } |
| |
| /** |
| * Implement BaseTheme::getHeaderLeft(); |
| * |
| * Reset header left classes for thin layout |
| * |
| * {@inheritDoc} |
| * @see BaseTheme::getHeaderLeft() |
| */ |
| public function getHeaderLeft(){ |
| $layout_types = array( |
| 'thin', |
| 'thin-header', |
| 'thin-with-footer-min' |
| ); |
| $cfa_button = $this->getCfaButton(); |
| if (in_array($this->getLayout(), $layout_types) && (!$this->getDisplayHeaderRight() || empty($cfa_button))) { |
| $this->resetAttributes('header-left', 'class'); |
| $this->setAttributes('header-left', 'col-sm-5 col-md-4'); |
| } |
| return <<<EOHTML |
| <div{$this->getAttributes('header-left')}> |
| {$this->getLogo('default', TRUE)} |
| </div> |
| EOHTML; |
| } |
| |
| /** |
| * Get Menu Prefix |
| * |
| * @return string |
| */ |
| public function getMainMenuPrefix() { |
| return $this->getCfaButton(); |
| } |
| |
| /** |
| * Get Menu Suffix |
| * |
| * @return string |
| */ |
| public function getMenuSuffix(){ |
| $suffix_items = array(); |
| |
| $google_search = $this->getGoogleSearch(); |
| if (!empty($google_search)) { |
| $suffix_items[] = <<<EOHTML |
| <li class="dropdown eclipse-more main-menu-search"> |
| <a data-toggle="dropdown" class="dropdown-toggle" role="button"><i class="fa fa-search"></i> <b class="caret"></b></a> |
| <ul class="dropdown-menu"> |
| <li> |
| <!-- Content container to add padding --> |
| <div class="yamm-content"> |
| <div class="row"> |
| <div class="col-sm-24"> |
| <p>Search</p> |
| {$this->getGoogleSearch()} |
| </div> |
| </div> |
| </div> |
| </li> |
| </ul> |
| </li> |
| EOHTML; |
| } |
| |
| return implode('',$suffix_items); |
| } |
| |
| /** |
| * Implement BaseTheme::getFooterPrexfix() |
| * |
| * {@inheritDoc} |
| * @see BaseTheme::getFooterPrexfix() |
| */ |
| public function getFooterPrexfix() { |
| return $this->getFeaturedStoryFooter(); |
| } |
| } |