You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1394 lines
70 KiB
1394 lines
70 KiB
<?php |
|
/** |
|
* @file |
|
* Functions to support theming in the Magazine+ theme. |
|
*/ |
|
|
|
use Drupal\Core\Theme\ThemeSettings; |
|
use Drupal\Core\Form\FormStateInterface; |
|
use Drupal\Core\Template\Attribute; |
|
use Drupal\file\Entity\File; |
|
use Drupal\image\Entity\ImageStyle; |
|
use Drupal\Component\Utility\Html; |
|
use Drupal\Core\Url; |
|
|
|
/** |
|
* Implements hook_preprocess_HOOK() for HTML document templates. |
|
* |
|
* Adds body classes if certain regions have content. |
|
*/ |
|
function magazineplus_preprocess_html(&$variables) { |
|
// Add information about the number of sidebars. |
|
if (!empty($variables['page']['sidebar_first']) && !empty($variables['page']['sidebar_second'])) { |
|
$variables['attributes']['class'][] = 'layout-two-sidebars'; |
|
} |
|
elseif (!empty($variables['page']['sidebar_first'])) { |
|
$variables['attributes']['class'][] = 'layout-one-sidebar'; |
|
$variables['attributes']['class'][] = 'layout-sidebar-first'; |
|
} |
|
elseif (!empty($variables['page']['sidebar_second'])) { |
|
$variables['attributes']['class'][] = 'layout-one-sidebar'; |
|
$variables['attributes']['class'][] = 'layout-sidebar-second'; |
|
} |
|
else { |
|
$variables['attributes']['class'][] = 'layout-no-sidebars'; |
|
} |
|
|
|
$color_scheme_library = 'magazineplus/color-'.theme_get_setting('color_scheme'); |
|
$variables['#attached']['library'][] = $color_scheme_library; |
|
|
|
// Add class for layout mode on body tag. |
|
$variables['attributes']['class'][] = theme_get_setting('layout_mode'); |
|
|
|
$headings_font_family = theme_get_setting('headings_font_family'); |
|
$headings_wide_spacing = theme_get_setting('headings_wide_spacing'); |
|
$paragraph_font_family = theme_get_setting('paragraph_font_family'); |
|
$paragraph_responsive_typography = theme_get_setting('paragraph_responsive_typography'); |
|
$sitename_font_family = theme_get_setting('sitename_font_family'); |
|
$sitename_italic = theme_get_setting('sitename_italic'); |
|
$slogan_font_family = theme_get_setting('slogan_font_family'); |
|
|
|
$variables['attributes']['class'][] = $headings_font_family; |
|
$variables['attributes']['class'][] = $paragraph_font_family; |
|
$variables['attributes']['class'][] = $sitename_font_family; |
|
$variables['attributes']['class'][] = $slogan_font_family; |
|
if ($headings_wide_spacing) { |
|
$variables['attributes']['class'][] = "headings-wide-spacing-enabled"; |
|
} |
|
if ($paragraph_responsive_typography) { |
|
$variables['attributes']['class'][] = "paragraph-responsive-typography-enabled"; |
|
} |
|
if ($sitename_italic) { |
|
$variables['attributes']['class'][] = "sitename-italic-enabled"; |
|
} |
|
|
|
//Get the IDs for each font family |
|
$headings_font_id = substr($headings_font_family, -2); |
|
$paragraph_font_id = substr($paragraph_font_family, -2); |
|
$sitename_font_id = substr($sitename_font_family, -2); |
|
$slogan_font_id = substr($slogan_font_family, -2); |
|
|
|
//Generate the library strings |
|
$headings_font_library = 'magazineplus/fonts-id-'.$headings_font_id; |
|
$paragraph_font_library = 'magazineplus/fonts-id-'.$paragraph_font_id; |
|
$sitename_font_library = 'magazineplus/fonts-id-'.$sitename_font_id; |
|
$slogan_font_library = 'magazineplus/fonts-id-'.$slogan_font_id; |
|
|
|
//Font families with the following IDs are OS specific and should not load an external font |
|
//yf: @font-your-face, yf=fyf |
|
//13: Georgia |
|
//21: Helvetica Neue |
|
//30: Times |
|
$no_library_array = array('yf','13','21','30'); |
|
|
|
//Directly Load the font family libraries if the IDs are not in the $no_library_array |
|
if (!in_array($headings_font_id, $no_library_array)) { |
|
$variables['#attached']['library'][] = $headings_font_library; |
|
} |
|
if (!in_array($paragraph_font_id, $no_library_array)) { |
|
$variables['#attached']['library'][] = $paragraph_font_library; |
|
} |
|
if (!in_array($sitename_font_id, $no_library_array)) { |
|
$variables['#attached']['library'][] = $sitename_font_library; |
|
} |
|
if (!in_array($slogan_font_id, $no_library_array)) { |
|
$variables['#attached']['library'][] = $slogan_font_library; |
|
} |
|
|
|
$variables['#attached']['library'][] = 'magazineplus/fonts-sourcecodepro'; |
|
|
|
// Blockquote symbol |
|
$variables['#attached']['library'][] = 'magazineplus/fonts-pt-serif'; |
|
|
|
// Load libraries for Animations |
|
$animations_state = theme_get_setting('animations_state'); |
|
if ($animations_state) { |
|
$variables['#attached']['library'][] = 'magazineplus/animate-global'; |
|
$variables['#attached']['library'][] = 'magazineplus/waypoints-animations-init'; |
|
} |
|
|
|
//Load fixed-header library |
|
$fixed_header = theme_get_setting('fixed_header'); |
|
if ($fixed_header) { |
|
$variables['attributes']['class'][] = 'fixed-header-enabled'; |
|
$variables['#attached']['library'][] = 'magazineplus/fixed-header'; |
|
} |
|
|
|
//Load page-container-border |
|
$page_container_border = theme_get_setting('page_container_border'); |
|
if ($page_container_border) { |
|
$variables['attributes']['class'][] = 'page-container-border-enabled'; |
|
} |
|
|
|
// Add class for side of slideout to body. |
|
$variables['attributes']['class'][] = 'slideout-side-'.theme_get_setting('slideout_side'); |
|
|
|
//get video bg state |
|
$video_bg_state = theme_get_setting('video_bg_state'); |
|
|
|
//Load transparent-header library |
|
$transparent_header_state = theme_get_setting('transparent_header_state'); |
|
if ($transparent_header_state) { |
|
$variables['attributes']['class'][] = 'transparent-header-active'; |
|
} |
|
} |
|
|
|
function magazineplus_preprocess_breadcrumb(&$variables){ |
|
$variables['mt_setting']['breadcrumb_separator'] = theme_get_setting('breadcrumb_separator'); |
|
|
|
if($variables['breadcrumb']){ |
|
$request = \Drupal::request(); |
|
$route_match = \Drupal::routeMatch(); |
|
$page_title = \Drupal::service('title_resolver')->getTitle($request, $route_match->getRouteObject()); |
|
if (!empty($page_title)) { |
|
$variables['breadcrumb'][] = array( |
|
'text' => $page_title |
|
); |
|
// Add cache context based on url. |
|
$variables['#cache']['contexts'][] = 'url'; |
|
} |
|
} |
|
} |
|
|
|
/** |
|
* Implements hook_preprocess_HOOK() for page templates. |
|
*/ |
|
function magazineplus_preprocess_page_title(&$variables) { |
|
// Since the title and the shortcut link are both block level elements, |
|
// positioning them next to each other is much simpler with a wrapper div. |
|
if (!empty($variables['title_suffix']['add_or_remove_shortcut']) && $variables['title']) { |
|
// Add a wrapper div using the title_prefix and title_suffix render |
|
// elements. |
|
$variables['title_prefix']['shortcut_wrapper'] = array( |
|
'#markup' => '<div class="shortcut-wrapper clearfix">', |
|
'#weight' => 100, |
|
); |
|
$variables['title_suffix']['shortcut_wrapper'] = array( |
|
'#markup' => '</div>', |
|
'#weight' => -99, |
|
); |
|
// Make sure the shortcut link is the first item in title_suffix. |
|
$variables['title_suffix']['add_or_remove_shortcut']['#weight'] = -100; |
|
} |
|
} |
|
|
|
function magazineplus_preprocess_page(&$variables) { |
|
$mt_display_fixed_site_name = theme_get_setting('display_fixed_site_name'); |
|
$mt_display_fixed_logo = theme_get_setting('display_fixed_logo'); |
|
if ($mt_display_fixed_site_name) { |
|
$site_name = \Drupal::config('system.site')->get('name'); |
|
if (!empty($site_name)) { |
|
$variables['mt_site_name'] = $site_name; |
|
} |
|
} |
|
if ($mt_display_fixed_logo) { |
|
$variables['mt_logo'] = theme_get_setting('logo.url'); |
|
} |
|
|
|
$slideout = $variables['page']['slideout']; |
|
$sidebar_first = $variables['page']['sidebar_first']; |
|
$sidebar_second = $variables['page']['sidebar_second']; |
|
$content_bottom_first = $variables['page']['content_bottom_first']; |
|
$content_bottom_second = $variables['page']['content_bottom_second']; |
|
$footer_top_first = $variables['page']['footer_top_first']; |
|
$footer_top_second = $variables['page']['footer_top_second']; |
|
$footer_bottom_first = $variables['page']['footer_bottom_first']; |
|
$footer_bottom_second = $variables['page']['footer_bottom_second']; |
|
$pre_content_first = $variables['page']['pre_content_first']; |
|
$pre_content_second = $variables['page']['pre_content_second']; |
|
$footer_first = $variables['page']['footer_first']; |
|
$footer_second = $variables['page']['footer_second']; |
|
$footer_third = $variables['page']['footer_third']; |
|
$footer_fourth = $variables['page']['footer_fourth']; |
|
$footer_fifth = $variables['page']['footer_fifth']; |
|
$subfooter_second = $variables['page']['footer']; |
|
$subfooter_first = $variables['page']['sub_footer_first']; |
|
|
|
// Attach library to slideout region |
|
if ($slideout) { |
|
$variables['#attached']['library'][] = 'magazineplus/slideout-init'; |
|
} |
|
|
|
// Insert variables into the page template. |
|
|
|
// Pre Header |
|
$variables['pre_header_layout_container'] = theme_get_setting('pre_header_layout_container'); |
|
|
|
// Header Top Highlighted |
|
$variables['header_top_highlighted_layout_container'] = theme_get_setting('header_top_highlighted_layout_container'); |
|
|
|
$header_top_highlighted_first = $variables['page']['header_top_highlighted_first']; |
|
$header_top_highlighted_second = $variables['page']['header_top_highlighted_second']; |
|
|
|
if($header_top_highlighted_first && $header_top_highlighted_second) { |
|
$variables['header_top_highlighted_first_grid_class'] = 'col-sm-8'; |
|
$variables['header_top_highlighted_second_grid_class'] = 'col-sm-4'; |
|
} elseif ($header_top_highlighted_first || $header_top_highlighted_second) { |
|
$variables['header_top_highlighted_first_grid_class'] = 'col-md-12'; |
|
$variables['header_top_highlighted_second_grid_class'] = 'col-md-12'; |
|
} |
|
|
|
// Header Top |
|
$variables['header_top_layout_container'] = theme_get_setting('header_top_layout_container'); |
|
|
|
$header_top_first = $variables['page']['header_top_first']; |
|
$header_top_second = $variables['page']['header_top_second']; |
|
|
|
if($header_top_first && $header_top_second) { |
|
$variables['header_top_first_grid_class'] = 'col-sm-8'; |
|
$variables['header_top_second_grid_class'] = 'col-sm-4'; |
|
} elseif ($header_top_first || $header_top_second) { |
|
$variables['header_top_first_grid_class'] = 'col-md-12'; |
|
$variables['header_top_second_grid_class'] = 'col-md-12'; |
|
} |
|
|
|
// Header |
|
$variables['header_layout_container'] = theme_get_setting('header_layout_container'); |
|
$header_first = $variables['page']['header_first']; |
|
$header = $variables['page']['header']; |
|
$header_third = $variables['page']['header_third']; |
|
|
|
if (($header_first && !$header && $header_third) || (!$header_first && $header && $header_third)) { |
|
$variables['header_layout_columns_class'] = 'two-columns'; |
|
if ($variables['header_layout_container'] == 'container-fluid') { |
|
$variables['header_first_grid_class'] = 'col-md-8 col-md-pull-4 col-lg-9 col-lg-pull-3'; |
|
$variables['header_second_grid_class'] = 'col-md-8 col-md-pull-4 col-lg-9 col-lg-pull-3'; |
|
$variables['header_third_grid_class'] = 'col-md-4 col-md-push-8 col-lg-3 col-lg-push-9'; |
|
} else { |
|
$variables['header_first_grid_class'] = 'col-md-8 col-md-pull-4'; |
|
$variables['header_second_grid_class'] = 'col-md-8 col-md-pull-4'; |
|
$variables['header_third_grid_class'] = 'col-md-4 col-md-push-8'; |
|
} |
|
} else if ($header_first && $header) { |
|
if ($header_third) { |
|
$variables['header_layout_columns_class'] = 'three-columns'; |
|
$variables['header_first_grid_class'] = 'col-md-3 col-md-pull-2 col-sm-8 col-sm-pull-4'; |
|
$variables['header_second_grid_class'] = 'col-md-7 col-md-pull-2 col-sm-12'; |
|
$variables['header_third_grid_class'] = 'col-md-2 col-md-push-10 col-sm-4 col-sm-push-8'; |
|
} else { |
|
$variables['header_layout_columns_class'] = 'two-columns'; |
|
$variables['header_first_grid_class'] = 'col-md-4'; |
|
$variables['header_second_grid_class'] = 'col-md-8'; |
|
} |
|
} else { |
|
$variables['header_layout_columns_class'] = 'one-column'; |
|
$variables['header_first_grid_class'] = 'col-xs-12'; |
|
$variables['header_second_grid_class'] = 'col-xs-12'; |
|
$variables['header_third_grid_class'] = 'col-xs-12'; |
|
} |
|
|
|
if ($variables['header_layout_container'] == 'container-fluid') { |
|
$variables['header_layout_container_class'] = 'full-width'; |
|
} else { |
|
$variables['header_layout_container_class'] = 'fixed-width'; |
|
} |
|
|
|
// Banner |
|
$variables['banner_layout_container'] = theme_get_setting('banner_layout_container'); |
|
|
|
// Content Top |
|
$variables['content_top_layout_container'] = theme_get_setting('content_top_layout_container'); |
|
|
|
// Content Top Highlighted |
|
$variables['content_top_highlighted_layout_container'] = theme_get_setting('content_top_highlighted_layout_container'); |
|
|
|
// Main Content Layout |
|
if($sidebar_first && $sidebar_second) { |
|
$variables['main_grid_class'] = 'col-md-6 col-md-push-3'; |
|
$variables['sidebar_first_grid_class'] = 'col-md-3 col-md-pull-6'; |
|
$variables['sidebar_second_grid_class'] = 'col-md-3'; |
|
} elseif ($sidebar_first && !$sidebar_second) { |
|
$variables['main_grid_class'] = 'col-md-8 col-md-push-4'; |
|
$variables['sidebar_first_grid_class'] = 'col-md-4 col-md-pull-8'; |
|
$variables['sidebar_second_grid_class'] = ''; |
|
} elseif (!$sidebar_first && $sidebar_second) { |
|
$variables['main_grid_class'] = 'col-md-8'; |
|
$variables['sidebar_first_grid_class'] = ''; |
|
$variables['sidebar_second_grid_class'] = 'col-md-4'; |
|
} else { |
|
$variables['main_grid_class'] = 'col-md-12'; |
|
$variables['sidebar_first_grid_class'] = ''; |
|
$variables['sidebar_second_grid_class'] = ''; |
|
} |
|
|
|
// Content Bottom |
|
$variables['content_bottom_layout_container'] = theme_get_setting('content_bottom_layout_container'); |
|
|
|
if($content_bottom_second && $content_bottom_first) { |
|
$variables['content_bottom_first_grid_class'] = 'col-md-5'; |
|
$variables['content_bottom_second_grid_class'] = 'col-md-5 col-md-offset-2'; |
|
} elseif ($content_bottom_second || $content_bottom_first) { |
|
$variables['content_bottom_first_grid_class'] = 'col-md-12'; |
|
$variables['content_bottom_second_grid_class'] = 'col-md-12'; |
|
} |
|
|
|
// Featured Top |
|
$variables['featured_top_layout_container'] = theme_get_setting('featured_top_layout_container'); |
|
|
|
// Featured |
|
$variables['featured_layout_container'] = theme_get_setting('featured_layout_container'); |
|
|
|
// Featured Bottom |
|
$variables['featured_bottom_layout_container'] = theme_get_setting('featured_bottom_layout_container'); |
|
|
|
// Sub Featured |
|
$variables['sub_featured_layout_container'] = theme_get_setting('sub_featured_layout_container'); |
|
|
|
// Highlighted |
|
$variables['highlighted_layout_container'] = theme_get_setting('highlighted_layout_container'); |
|
|
|
// Highlighted Top |
|
$variables['highlighted_top_layout_container'] = theme_get_setting('highlighted_top_layout_container'); |
|
|
|
// Pre Content |
|
$variables['pre_content_layout_container'] = theme_get_setting('pre_content_layout_container'); |
|
|
|
if($pre_content_second && $pre_content_first) { |
|
$variables['pre_content_first_grid_class'] = 'col-md-8'; |
|
$variables['pre_content_second_grid_class'] = 'col-md-4'; |
|
} elseif ($pre_content_second || $pre_content_first) { |
|
$variables['pre_content_first_grid_class'] = 'col-md-12'; |
|
$variables['pre_content_second_grid_class'] = 'col-md-12'; |
|
} |
|
|
|
// Footer Top |
|
$variables['footer_top_layout_container'] = theme_get_setting('footer_top_layout_container'); |
|
|
|
if($footer_top_first && $footer_top_second) { |
|
$variables['footer_top_regions'] = 'two-regions'; |
|
$variables['footer_top_first_grid_class'] = 'col-sm-6'; |
|
$variables['footer_top_second_grid_class'] = 'col-sm-6'; |
|
} elseif ($footer_top_second || $footer_top_first) { |
|
$variables['footer_top_regions'] = 'one-region'; |
|
$variables['footer_top_first_grid_class'] = 'col-md-12'; |
|
$variables['footer_top_second_grid_class'] = 'col-md-12'; |
|
} |
|
|
|
// Footer Layout |
|
$variables['footer_layout_container'] = theme_get_setting('footer_layout_container'); |
|
|
|
if ($footer_fifth) { |
|
if ($footer_first && $footer_second && $footer_third && $footer_fourth) { |
|
$variables['footer_first_grid_class'] = 'col-sm-4 col-lg-2'; |
|
$variables['footer_second_grid_class'] = 'col-sm-4 col-lg-2'; |
|
$variables['footer_third_grid_class'] = 'col-sm-4 col-lg-2'; |
|
$variables['footer_fourth_grid_class'] = 'col-sm-6 col-lg-3'; |
|
$variables['footer_fifth_grid_class'] = 'col-sm-6 col-lg-3'; |
|
} elseif ((!$footer_first && $footer_second && $footer_third && $footer_fourth) || ($footer_first && !$footer_second && $footer_third && $footer_fourth) |
|
|| ($footer_first && $footer_second && !$footer_third && $footer_fourth) || ($footer_first && $footer_second && $footer_third && !$footer_fourth)) { |
|
$variables['footer_first_grid_class'] = 'col-sm-6 col-md-3'; |
|
$variables['footer_second_grid_class'] = 'col-sm-6 col-md-3'; |
|
$variables['footer_third_grid_class'] = 'col-sm-6 col-md-3'; |
|
$variables['footer_fourth_grid_class'] = 'col-sm-6 col-md-3'; |
|
$variables['footer_fifth_grid_class'] = 'col-sm-6 col-md-3'; |
|
} elseif ((!$footer_first && !$footer_second && $footer_third && $footer_fourth) || (!$footer_first && $footer_second && !$footer_third && $footer_fourth) |
|
|| (!$footer_first && $footer_second && $footer_third && !$footer_fourth) || ($footer_first && !$footer_second && !$footer_third && $footer_fourth) |
|
|| ($footer_first && !$footer_second && $footer_third && !$footer_fourth) || ($footer_first && $footer_second && !$footer_third && !$footer_fourth)) { |
|
$variables['footer_first_grid_class'] = 'col-sm-4'; |
|
$variables['footer_second_grid_class'] = 'col-sm-4'; |
|
$variables['footer_third_grid_class'] = 'col-sm-4'; |
|
$variables['footer_fourth_grid_class'] = 'col-sm-4'; |
|
$variables['footer_fifth_grid_class'] = 'col-sm-4'; |
|
} elseif (($footer_first && !$footer_second && !$footer_third && !$footer_fourth) || (!$footer_first && $footer_second && !$footer_third && !$footer_fourth) |
|
|| (!$footer_first && !$footer_second && $footer_third && !$footer_fourth) || (!$footer_first && !$footer_second && !$footer_third && $footer_fourth)) { |
|
$variables['footer_first_grid_class'] = 'col-sm-6'; |
|
$variables['footer_second_grid_class'] = 'col-sm-6'; |
|
$variables['footer_third_grid_class'] = 'col-sm-6'; |
|
$variables['footer_fourth_grid_class'] = 'col-sm-6'; |
|
$variables['footer_fifth_grid_class'] = 'col-sm-6'; |
|
} else { |
|
$variables['footer_fifth_grid_class'] = 'col-sm-12'; |
|
} |
|
} else { |
|
if ($footer_first && $footer_second && $footer_third && $footer_fourth) { |
|
$variables['footer_first_grid_class'] = 'col-sm-6 col-md-3'; |
|
$variables['footer_second_grid_class'] = 'col-sm-6 col-md-3'; |
|
$variables['footer_third_grid_class'] = 'col-sm-6 col-md-3'; |
|
$variables['footer_fourth_grid_class'] = 'col-sm-6 col-md-3'; |
|
} elseif ((!$footer_first && $footer_second && $footer_third && $footer_fourth) || ($footer_first && !$footer_second && $footer_third && $footer_fourth) |
|
|| ($footer_first && $footer_second && !$footer_third && $footer_fourth) || ($footer_first && $footer_second && $footer_third && !$footer_fourth)) { |
|
$variables['footer_first_grid_class'] = 'col-sm-4'; |
|
$variables['footer_second_grid_class'] = 'col-sm-4'; |
|
$variables['footer_third_grid_class'] = 'col-sm-4'; |
|
$variables['footer_fourth_grid_class'] = 'col-sm-4'; |
|
} elseif ((!$footer_first && !$footer_second && $footer_third && $footer_fourth) || (!$footer_first && $footer_second && !$footer_third && $footer_fourth) |
|
|| (!$footer_first && $footer_second && $footer_third && !$footer_fourth) || ($footer_first && !$footer_second && !$footer_third && $footer_fourth) |
|
|| ($footer_first && !$footer_second && $footer_third && !$footer_fourth) || ($footer_first && $footer_second && !$footer_third && !$footer_fourth)) { |
|
$variables['footer_first_grid_class'] = 'col-sm-6'; |
|
$variables['footer_second_grid_class'] = 'col-sm-6'; |
|
$variables['footer_third_grid_class'] = 'col-sm-6'; |
|
$variables['footer_fourth_grid_class'] = 'col-sm-6'; |
|
} else { |
|
$variables['footer_first_grid_class'] = 'col-sm-12'; |
|
$variables['footer_second_grid_class'] = 'col-sm-12'; |
|
$variables['footer_third_grid_class'] = 'col-sm-12'; |
|
$variables['footer_fourth_grid_class'] = 'col-sm-12'; |
|
} |
|
} |
|
|
|
if (($footer_first && $footer_second) && (($footer_third && $footer_fourth && !$footer_fifth) || ($footer_third && !$footer_fourth && $footer_fifth) || (!$footer_third && $footer_fourth && $footer_fifth))) { |
|
$variables['footer_4_columns_clearfix_first'] = "visible-sm-block"; |
|
} else { |
|
$variables['footer_4_columns_clearfix_first'] = "visible-xs-block"; |
|
} |
|
if (($footer_fourth && $footer_fifth) && (($footer_first && $footer_second && !$footer_third) || ($footer_first && !$footer_second && $footer_third) || (!$footer_first && $footer_second && $footer_third))) { |
|
$variables['footer_4_columns_clearfix_second'] = "visible-sm-block"; |
|
} else { |
|
$variables['footer_4_columns_clearfix_second'] = "visible-xs-block"; |
|
} |
|
if ($footer_first && $footer_second && $footer_third && $footer_fourth && $footer_fifth) { |
|
$variables['footer_5_columns_clearfix'] = "visible-sm-block visible-md-block"; |
|
} else { |
|
$variables['footer_5_columns_clearfix'] = "visible-xs-block"; |
|
} |
|
|
|
//Footer Bottom |
|
$variables['footer_bottom_layout_container'] = theme_get_setting('footer_bottom_layout_container'); |
|
|
|
if($footer_bottom_second && $footer_bottom_first) { |
|
$variables['footer_bottom_first_grid_class'] = 'col-md-4'; |
|
$variables['footer_bottom_second_grid_class'] = 'col-md-8'; |
|
} elseif ($footer_bottom_second || $footer_bottom_first) { |
|
$variables['footer_bottom_second_grid_class'] = 'col-md-12 text-center'; |
|
$variables['footer_bottom_first_grid_class'] = 'col-md-12 text-center'; |
|
} |
|
|
|
// Subfooter |
|
$variables['subfooter_layout_container'] = theme_get_setting('subfooter_layout_container'); |
|
|
|
if($subfooter_second && $subfooter_first) { |
|
$variables['subfooter_first_grid_class'] = 'col-md-6'; |
|
$variables['subfooter_second_grid_class'] = 'col-md-6'; |
|
} elseif ($subfooter_second || $subfooter_first) { |
|
$variables['subfooter_second_grid_class'] = 'col-md-12 text-center'; |
|
$variables['subfooter_first_grid_class'] = 'col-md-12 text-center'; |
|
} |
|
|
|
// Animations |
|
$animations_state = theme_get_setting('animations_state'); |
|
$variables['header_top_highlighted_animation_effect'] = theme_get_setting('header_top_highlighted_animation_effect'); |
|
if ($animations_state && $variables['header_top_highlighted_animation_effect'] != "no-animation") { |
|
$variables['header_top_highlighted_animations'] = "enabled"; |
|
} else { |
|
$variables['header_top_highlighted_animations'] = "disabled"; |
|
} |
|
|
|
$variables['header_top_animation_effect'] = theme_get_setting('header_top_animation_effect'); |
|
if ($animations_state && $variables['header_top_animation_effect'] != "no-animation") { |
|
$variables['header_top_animations'] = "enabled"; |
|
} else { |
|
$variables['header_top_animations'] = "disabled"; |
|
} |
|
|
|
$variables['content_top_animation_effect'] = theme_get_setting('content_top_animation_effect'); |
|
if ($animations_state && $variables['content_top_animation_effect'] != "no-animation") { |
|
$variables['content_top_animations'] = "enabled"; |
|
} else { |
|
$variables['content_top_animations'] = "disabled"; |
|
} |
|
|
|
$variables['content_top_highlighted_animation_effect'] = theme_get_setting('content_top_highlighted_animation_effect'); |
|
if ($animations_state && $variables['content_top_highlighted_animation_effect'] != "no-animation") { |
|
$variables['content_top_highlighted_animations'] = "enabled"; |
|
} else { |
|
$variables['content_top_highlighted_animations'] = "disabled"; |
|
} |
|
|
|
$variables['main_content_animation_effect'] = theme_get_setting('main_content_animation_effect'); |
|
if ($animations_state && $variables['main_content_animation_effect'] != "no-animation") { |
|
$variables['main_content_animations'] = "enabled"; |
|
} else { |
|
$variables['main_content_animations'] = "disabled"; |
|
} |
|
|
|
$variables['sidebar_first_animation_effect'] = theme_get_setting('sidebar_first_animation_effect'); |
|
if ($animations_state && $variables['sidebar_first_animation_effect'] != "no-animation") { |
|
$variables['sidebar_first_animations'] = "enabled"; |
|
} else { |
|
$variables['sidebar_first_animations'] = "disabled"; |
|
} |
|
|
|
$variables['sidebar_second_animation_effect'] = theme_get_setting('sidebar_second_animation_effect'); |
|
if ($animations_state && $variables['sidebar_second_animation_effect'] != "no-animation") { |
|
$variables['sidebar_second_animations'] = "enabled"; |
|
} else { |
|
$variables['sidebar_second_animations'] = "disabled"; |
|
} |
|
|
|
$variables['content_bottom_animation_effect'] = theme_get_setting('content_bottom_animation_effect'); |
|
if ($animations_state && $variables['content_bottom_animation_effect'] != "no-animation") { |
|
$variables['content_bottom_animations'] = "enabled"; |
|
} else { |
|
$variables['content_bottom_animations'] = "disabled"; |
|
} |
|
|
|
$variables['featured_top_animation_effect'] = theme_get_setting('featured_top_animation_effect'); |
|
if ($animations_state && $variables['featured_top_animation_effect'] != "no-animation") { |
|
$variables['featured_top_animations'] = "enabled"; |
|
} else { |
|
$variables['featured_top_animations'] = "disabled"; |
|
} |
|
|
|
$variables['featured_animation_effect'] = theme_get_setting('featured_animation_effect'); |
|
if ($animations_state && $variables['featured_animation_effect'] != "no-animation") { |
|
$variables['featured_animations'] = "enabled"; |
|
} else { |
|
$variables['featured_animations'] = "disabled"; |
|
} |
|
|
|
$variables['featured_bottom_animation_effect'] = theme_get_setting('featured_bottom_animation_effect'); |
|
if ($animations_state && $variables['featured_bottom_animation_effect'] != "no-animation") { |
|
$variables['featured_bottom_animations'] = "enabled"; |
|
} else { |
|
$variables['featured_bottom_animations'] = "disabled"; |
|
} |
|
|
|
$variables['sub_featured_animation_effect'] = theme_get_setting('sub_featured_animation_effect'); |
|
if ($animations_state && $variables['sub_featured_animation_effect'] != "no-animation") { |
|
$variables['sub_featured_animations'] = "enabled"; |
|
} else { |
|
$variables['sub_featured_animations'] = "disabled"; |
|
} |
|
|
|
$variables['highlighted_animation_effect'] = theme_get_setting('highlighted_animation_effect'); |
|
if ($animations_state && $variables['highlighted_animation_effect'] != "no-animation") { |
|
$variables['highlighted_animations'] = "enabled"; |
|
} else { |
|
$variables['highlighted_animations'] = "disabled"; |
|
} |
|
|
|
$variables['highlighted_top_animation_effect'] = theme_get_setting('highlighted_top_animation_effect'); |
|
if ($animations_state && $variables['highlighted_top_animation_effect'] != "no-animation") { |
|
$variables['highlighted_top_animations'] = "enabled"; |
|
} else { |
|
$variables['highlighted_top_animations'] = "disabled"; |
|
} |
|
|
|
$variables['pre_content_animation_effect'] = theme_get_setting('pre_content_animation_effect'); |
|
if ($animations_state && $variables['pre_content_animation_effect'] != "no-animation") { |
|
$variables['pre_content_animations'] = "enabled"; |
|
} else { |
|
$variables['pre_content_animations'] = "disabled"; |
|
} |
|
|
|
$variables['footer_top_animation_effect'] = theme_get_setting('footer_top_animation_effect'); |
|
if ($animations_state && $variables['footer_top_animation_effect'] != "no-animation") { |
|
$variables['footer_top_animations'] = "enabled"; |
|
} else { |
|
$variables['footer_top_animations'] = "disabled"; |
|
} |
|
|
|
$variables['footer_animation_effect'] = theme_get_setting('footer_animation_effect'); |
|
if ($animations_state && $variables['footer_animation_effect'] != "no-animation") { |
|
$variables['footer_animations'] = "enabled"; |
|
} else { |
|
$variables['footer_animations'] = "disabled"; |
|
} |
|
|
|
// Region Background Color |
|
$variables['slideout_background_color'] = theme_get_setting('slideout_background_color'); |
|
$variables['pre_header_background_color'] = theme_get_setting('pre_header_background_color'); |
|
$variables['header_top_highlighted_background_color'] = theme_get_setting('header_top_highlighted_background_color'); |
|
$variables['header_top_background_color'] = theme_get_setting('header_top_background_color'); |
|
$variables['header_background_color'] = theme_get_setting('header_background_color'); |
|
$variables['banner_background_color'] = theme_get_setting('banner_background_color'); |
|
$variables['content_top_background_color'] = theme_get_setting('content_top_background_color'); |
|
$variables['content_top_highlighted_background_color'] = theme_get_setting('content_top_highlighted_background_color'); |
|
$variables['content_bottom_background_color'] = theme_get_setting('content_bottom_background_color'); |
|
$variables['featured_top_background_color'] = theme_get_setting('featured_top_background_color'); |
|
$variables['featured_background_color'] = theme_get_setting('featured_background_color'); |
|
$variables['featured_bottom_background_color'] = theme_get_setting('featured_bottom_background_color'); |
|
$variables['sub_featured_background_color'] = theme_get_setting('sub_featured_background_color'); |
|
$variables['highlighted_background_color'] = theme_get_setting('highlighted_background_color'); |
|
$variables['highlighted_top_background_color'] = theme_get_setting('highlighted_top_background_color'); |
|
$variables['pre_content_background_color'] = theme_get_setting('pre_content_background_color'); |
|
$variables['footer_top_background_color'] = theme_get_setting('footer_top_background_color'); |
|
$variables['footer_background_color'] = theme_get_setting('footer_background_color'); |
|
$variables['footer_bottom_background_color'] = theme_get_setting('footer_bottom_background_color'); |
|
$variables['subfooter_background_color'] = theme_get_setting('subfooter_background_color'); |
|
|
|
//Region Separator |
|
$variables['content_top_highlighted_separator'] = theme_get_setting('content_top_highlighted_separator'); |
|
$variables['pre_content_separator'] = theme_get_setting('pre_content_separator'); |
|
$variables['main_content_separator'] = theme_get_setting('main_content_separator'); |
|
$variables['content_bottom_separator'] = theme_get_setting('content_bottom_separator'); |
|
$variables['featured_top_separator'] = theme_get_setting('featured_top_separator'); |
|
$variables['featured_separator'] = theme_get_setting('featured_separator'); |
|
$variables['featured_bottom_separator'] = theme_get_setting('featured_bottom_separator'); |
|
$variables['sub_featured_separator'] = theme_get_setting('sub_featured_separator'); |
|
$variables['highlighted_top_separator'] = theme_get_setting('highlighted_top_separator'); |
|
$variables['highlighted_separator'] = theme_get_setting('highlighted_separator'); |
|
$variables['footer_top_separator'] = theme_get_setting('footer_top_separator'); |
|
$variables['footer_separator'] = theme_get_setting('footer_separator'); |
|
$variables['footer_bottom_separator'] = theme_get_setting('footer_bottom_separator'); |
|
$variables['subfooter_separator'] = theme_get_setting('subfooter_separator'); |
|
|
|
// Region Blocks Paddings |
|
$variables['slideout_blocks_paddings'] = theme_get_setting('slideout_blocks_paddings'); |
|
$variables['pre_header_blocks_paddings'] = theme_get_setting('pre_header_blocks_paddings'); |
|
$variables['header_top_highlighted_blocks_paddings'] = theme_get_setting('header_top_highlighted_blocks_paddings'); |
|
$variables['header_top_blocks_paddings'] = theme_get_setting('header_top_blocks_paddings'); |
|
$variables['header_blocks_paddings'] = theme_get_setting('header_blocks_paddings'); |
|
$variables['banner_blocks_paddings'] = theme_get_setting('banner_blocks_paddings'); |
|
$variables['content_top_blocks_paddings'] = theme_get_setting('content_top_blocks_paddings'); |
|
$variables['content_top_highlighted_blocks_paddings'] = theme_get_setting('content_top_highlighted_blocks_paddings'); |
|
$variables['pre_content_blocks_paddings'] = theme_get_setting('pre_content_blocks_paddings'); |
|
$variables['main_content_blocks_paddings'] = theme_get_setting('main_content_blocks_paddings'); |
|
$variables['sidebar_first_blocks_paddings'] = theme_get_setting('sidebar_first_blocks_paddings'); |
|
$variables['sidebar_second_blocks_paddings'] = theme_get_setting('sidebar_second_blocks_paddings'); |
|
$variables['content_bottom_blocks_paddings'] = theme_get_setting('content_bottom_blocks_paddings'); |
|
$variables['featured_top_blocks_paddings'] = theme_get_setting('featured_top_blocks_paddings'); |
|
$variables['featured_blocks_paddings'] = theme_get_setting('featured_blocks_paddings'); |
|
$variables['featured_bottom_blocks_paddings'] = theme_get_setting('featured_bottom_blocks_paddings'); |
|
$variables['sub_featured_blocks_paddings'] = theme_get_setting('sub_featured_blocks_paddings'); |
|
$variables['highlighted_top_blocks_paddings'] = theme_get_setting('highlighted_top_blocks_paddings'); |
|
$variables['highlighted_blocks_paddings'] = theme_get_setting('highlighted_blocks_paddings'); |
|
$variables['footer_top_blocks_paddings'] = theme_get_setting('footer_top_blocks_paddings'); |
|
$variables['footer_blocks_paddings'] = theme_get_setting('footer_blocks_paddings'); |
|
$variables['footer_bottom_blocks_paddings'] = theme_get_setting('footer_bottom_blocks_paddings'); |
|
$variables['subfooter_blocks_paddings'] = theme_get_setting('subfooter_blocks_paddings'); |
|
|
|
// Region Region Paddings |
|
$variables['slideout_region_paddings'] = theme_get_setting('slideout_region_paddings'); |
|
$variables['pre_header_region_paddings'] = theme_get_setting('pre_header_region_paddings'); |
|
$variables['header_top_highlighted_region_paddings'] = theme_get_setting('header_top_highlighted_region_paddings'); |
|
$variables['header_top_region_paddings'] = theme_get_setting('header_top_region_paddings'); |
|
$variables['header_region_paddings'] = theme_get_setting('header_region_paddings'); |
|
$variables['banner_region_paddings'] = theme_get_setting('banner_region_paddings'); |
|
$variables['content_top_region_paddings'] = theme_get_setting('content_top_region_paddings'); |
|
$variables['content_top_highlighted_region_paddings'] = theme_get_setting('content_top_highlighted_region_paddings'); |
|
$variables['pre_content_region_paddings'] = theme_get_setting('pre_content_region_paddings'); |
|
$variables['main_content_region_paddings'] = theme_get_setting('main_content_region_paddings'); |
|
$variables['sidebar_first_region_paddings'] = theme_get_setting('sidebar_first_region_paddings'); |
|
$variables['sidebar_second_region_paddings'] = theme_get_setting('sidebar_second_region_paddings'); |
|
$variables['content_bottom_region_paddings'] = theme_get_setting('content_bottom_region_paddings'); |
|
$variables['featured_top_region_paddings'] = theme_get_setting('featured_top_region_paddings'); |
|
$variables['featured_region_paddings'] = theme_get_setting('featured_region_paddings'); |
|
$variables['featured_bottom_region_paddings'] = theme_get_setting('featured_bottom_region_paddings'); |
|
$variables['sub_featured_region_paddings'] = theme_get_setting('sub_featured_region_paddings'); |
|
$variables['highlighted_top_region_paddings'] = theme_get_setting('highlighted_top_region_paddings'); |
|
$variables['highlighted_region_paddings'] = theme_get_setting('highlighted_region_paddings'); |
|
$variables['footer_top_region_paddings'] = theme_get_setting('footer_top_region_paddings'); |
|
$variables['footer_region_paddings'] = theme_get_setting('footer_region_paddings'); |
|
$variables['footer_bottom_region_paddings'] = theme_get_setting('footer_bottom_region_paddings'); |
|
$variables['subfooter_region_paddings'] = theme_get_setting('subfooter_region_paddings'); |
|
|
|
//Load to-top library |
|
$variables['scroll_to_top_display'] = theme_get_setting('scroll_to_top_display'); |
|
$variables['scroll_to_top_region'] = theme_get_setting('scroll_to_top_region'); |
|
if ($variables['scroll_to_top_display']) { |
|
$variables['#attached']['library'][] = 'magazineplus/to-top'; |
|
$variables['scroll_to_top_icon'] = theme_get_setting('scroll_to_top_icon'); |
|
} |
|
|
|
//fixed header |
|
$variables['fixed_header'] = theme_get_setting('fixed_header'); |
|
|
|
} |
|
|
|
function magazineplus_page_attachments_alter(&$page) { |
|
|
|
// Slideshow's caption Opacity |
|
$slideshow_caption_opacity = (int) theme_get_setting('rs_slideshow_caption_opacity')/100; |
|
|
|
$page['#attached']['drupalSettings']['magazineplus']['slideshowCaptionOpacity'] = $slideshow_caption_opacity; |
|
|
|
// Full Screen Slideshow |
|
$slideshow_fullscreen_effect_time = (int) theme_get_setting('rs_slideshow_fullscreen_effect_time')*1000; |
|
$slideshow_fullscreen_navigation_style = theme_get_setting('rs_slideshow_fullscreen_navigation_style'); |
|
$slideshow_fullscreen_bullets_position = theme_get_setting('rs_slideshow_fullscreen_bullets_position'); |
|
$slideshow_fullscreen_touch_swipe = theme_get_setting('rs_slideshow_fullscreen_touch_swipe'); |
|
|
|
$page['#attached']['drupalSettings']['magazineplus']['sliderRevolutionFullScreenInit']['slideshowFullScreenEffectTime'] = $slideshow_fullscreen_effect_time; |
|
$page['#attached']['drupalSettings']['magazineplus']['sliderRevolutionFullScreenInit']['slideshowFullScreenNavigationStyle'] = $slideshow_fullscreen_navigation_style; |
|
$page['#attached']['drupalSettings']['magazineplus']['sliderRevolutionFullScreenInit']['slideshowFullScreenBulletsPosition'] = $slideshow_fullscreen_bullets_position; |
|
if ($slideshow_fullscreen_touch_swipe) { |
|
$page['#attached']['drupalSettings']['magazineplus']['sliderRevolutionFullScreenInit']['slideshowFullScreenTouchSwipe'] = "on"; |
|
} else { |
|
$page['#attached']['drupalSettings']['magazineplus']['sliderRevolutionFullScreenInit']['slideshowFullScreenTouchSwipe'] = "off"; |
|
} |
|
|
|
// Boxed Width Slideshow |
|
$slideshow_boxedwidth_effect_time = (int) theme_get_setting('rs_slideshow_boxedwidth_effect_time')*1000; |
|
$slideshow_boxedwidth_initial_height = (int) theme_get_setting('rs_slideshow_boxedwidth_initial_height'); |
|
$slideshow_boxedwidth_navigation_style = theme_get_setting('rs_slideshow_boxedwidth_navigation_style'); |
|
$slideshow_boxedwidth_bullets_position = theme_get_setting('rs_slideshow_boxedwidth_bullets_position'); |
|
$slideshow_boxedwidth_touch_swipe = theme_get_setting('rs_slideshow_boxedwidth_touch_swipe'); |
|
|
|
$page['#attached']['drupalSettings']['magazineplus']['sliderRevolutionBoxedWidthInit']['slideshowBoxedWidthEffectTime'] = $slideshow_boxedwidth_effect_time; |
|
$page['#attached']['drupalSettings']['magazineplus']['sliderRevolutionBoxedWidthInit']['slideshowBoxedWidthInitialHeight'] = $slideshow_boxedwidth_initial_height; |
|
$page['#attached']['drupalSettings']['magazineplus']['sliderRevolutionBoxedWidthInit']['slideshowBoxedWidthNavigationStyle'] = $slideshow_boxedwidth_navigation_style; |
|
$page['#attached']['drupalSettings']['magazineplus']['sliderRevolutionBoxedWidthInit']['slideshowBoxedWidthBulletsPosition'] = $slideshow_boxedwidth_bullets_position; |
|
if ($slideshow_boxedwidth_touch_swipe) { |
|
$page['#attached']['drupalSettings']['magazineplus']['sliderRevolutionBoxedWidthInit']['slideshowBoxedWidthTouchSwipe'] = "on"; |
|
} else { |
|
$page['#attached']['drupalSettings']['magazineplus']['sliderRevolutionBoxedWidthInit']['slideshowBoxedWidthTouchSwipe'] = "off"; |
|
} |
|
|
|
// Internal Banner Slideshow |
|
$slideshow_internal_banner_effect_time = (int) theme_get_setting('rs_slideshow_internal_effect_time')*1000; |
|
$slideshow_internal_banner_initial_height = (int) theme_get_setting('rs_slideshow_internal_initial_height'); |
|
$slideshow_internal_navigation_style = theme_get_setting('rs_slideshow_internal_navigation_style'); |
|
$slideshow_internal_banner_bullets_position = theme_get_setting('rs_slideshow_internal_bullets_position'); |
|
$slideshow_internal_banner_touch_swipe = theme_get_setting('rs_slideshow_internal_banner_touch_swipe'); |
|
|
|
$page['#attached']['drupalSettings']['magazineplus']['sliderRevolutionInternalBannerInit']['slideshowInternalBannerEffectTime'] = $slideshow_internal_banner_effect_time; |
|
$page['#attached']['drupalSettings']['magazineplus']['sliderRevolutionInternalBannerInit']['slideshowInternalBannerInitialHeight'] = $slideshow_internal_banner_initial_height; |
|
$page['#attached']['drupalSettings']['magazineplus']['sliderRevolutionInternalBannerInit']['slideshowInternalBannerNavigationStyle'] = $slideshow_internal_navigation_style; |
|
$page['#attached']['drupalSettings']['magazineplus']['sliderRevolutionInternalBannerInit']['slideshowInternalBannerBulletsPosition'] = $slideshow_internal_banner_bullets_position; |
|
if ($slideshow_internal_banner_touch_swipe) { |
|
$page['#attached']['drupalSettings']['magazineplus']['sliderRevolutionInternalBannerInit']['slideshowInternalBannerTouchSwipe'] = "on"; |
|
} else { |
|
$page['#attached']['drupalSettings']['magazineplus']['sliderRevolutionInternalBannerInit']['slideshowInternalBannerTouchSwipe'] = "off"; |
|
} |
|
|
|
// Posts carousel |
|
$owl_posts_autoplay = theme_get_setting('owl_posts_autoplay'); |
|
$owl_posts_effect_time = (int) theme_get_setting('owl_posts_effect_time')*1000; |
|
|
|
$page['#attached']['drupalSettings']['magazineplus']['owlCarouselPostsInit']['owlPostsAutoPlay'] = $owl_posts_autoplay; |
|
$page['#attached']['drupalSettings']['magazineplus']['owlCarouselPostsInit']['owlPostsEffectTime'] = $owl_posts_effect_time; |
|
|
|
// Square Posts carousel |
|
$owl_square_posts_autoplay = theme_get_setting('owl_square_posts_autoplay'); |
|
$owl_square_posts_effect_time = (int) theme_get_setting('owl_square_posts_effect_time')*1000; |
|
|
|
$page['#attached']['drupalSettings']['magazineplus']['owlCarouselSquarePostsInit']['owlSquarePostsAutoPlay'] = $owl_square_posts_autoplay; |
|
$page['#attached']['drupalSettings']['magazineplus']['owlCarouselSquarePostsInit']['owlSquarePostsEffectTime'] = $owl_square_posts_effect_time; |
|
|
|
// Posts slider |
|
$owl_posts_slider_autoplay = theme_get_setting('owl_posts_slider_autoplay'); |
|
$owl_posts_slider_effect_time = (int) theme_get_setting('owl_posts_slider_effect_time')*1000; |
|
|
|
$page['#attached']['drupalSettings']['magazineplus']['owlCarouselPostsSliderInit']['owlPostsSliderAutoPlay'] = $owl_posts_slider_autoplay; |
|
$page['#attached']['drupalSettings']['magazineplus']['owlCarouselPostsSliderInit']['owlPostsSliderEffectTime'] = $owl_posts_slider_effect_time; |
|
|
|
// Testimonials carousel |
|
$owl_testimonials_autoplay = theme_get_setting('owl_testimonials_autoplay'); |
|
$owl_testimonials_effect_time = (int) theme_get_setting('owl_testimonials_effect_time')*1000; |
|
|
|
$page['#attached']['drupalSettings']['magazineplus']['owlCarouselTestimonialsInit']['owlTestimonialsAutoPlay'] = $owl_testimonials_autoplay; |
|
$page['#attached']['drupalSettings']['magazineplus']['owlCarouselTestimonialsInit']['owlTestimonialsEffectTime'] = $owl_testimonials_effect_time; |
|
|
|
//In page slider |
|
$in_page_slider_effect = theme_get_setting('in_page_slider_effect'); |
|
|
|
$page['#attached']['drupalSettings']['magazineplus']['flexsliderInPageInit']['inPageSliderEffect'] = $in_page_slider_effect; |
|
|
|
// Transparent Header Opacity |
|
$transparent_header_opacity = (int) theme_get_setting('transparent_header_opacity')/100; |
|
|
|
$page['#attached']['drupalSettings']['magazineplus']['transparentHeader']['transparentHeaderOpacity'] = $transparent_header_opacity; |
|
|
|
// Slideout |
|
$slideout_side = theme_get_setting('slideout_side'); |
|
$slideout_touch_swipe = theme_get_setting('slideout_touch_swipe'); |
|
$page['#attached']['drupalSettings']['magazineplus']['slideoutInit']['slideoutSide'] = $slideout_side; |
|
if ($slideout_touch_swipe) { |
|
$page['#attached']['drupalSettings']['magazineplus']['slideoutInit']['slideoutTouchSwipe'] = true; |
|
} else { |
|
$page['#attached']['drupalSettings']['magazineplus']['slideoutInit']['slideoutTouchSwipe'] = false; |
|
} |
|
} |
|
|
|
function magazineplus_library_info_build() { |
|
$google_maps_key = theme_get_setting('google_maps_key'); |
|
if (!empty($google_maps_key)) { |
|
$google_maps_key_string = '&key='.$google_maps_key; |
|
} else { |
|
$google_maps_key_string = ''; |
|
} |
|
$libraries = []; |
|
$libraries['google-maps-dynamic'] = [ |
|
'version' => '3', |
|
'remote' => 'https://maps.googleapis.com/maps/api/js', |
|
'js' => [ |
|
'https://maps.googleapis.com/maps/api/js?v=3'.$google_maps_key_string => [ |
|
'scope' => ['footer'], |
|
], |
|
], |
|
'license' => [ |
|
'name' => ['Google Terms of Service'], |
|
'url' => ['https://developers.google.com/maps/terms'], |
|
], |
|
]; |
|
return $libraries; |
|
} |
|
|
|
/** |
|
* Implements hook_preprocess_HOOK() for node.html.twig. |
|
*/ |
|
function magazineplus_preprocess_node(&$variables) { |
|
// Remove the "Add new comment" link on teasers or when the comment form is |
|
// displayed on the page. |
|
if ($variables['teaser'] || !empty($variables['content']['comments']['comment_form'])) { |
|
unset($variables['content']['links']['comment']['#links']['comment-add']); |
|
} |
|
|
|
$variables['posted_ago'] = \Drupal::service('date.formatter') |
|
->formatInterval(REQUEST_TIME - $variables['node'] |
|
->getCreatedTime(), $granularity = 1); |
|
|
|
$node_content = $variables['content']; |
|
$node_content = render($node_content); |
|
$words = str_word_count(strip_tags($node_content)); |
|
$minutes = floor($words / 275); |
|
$variables['minutes'] = $minutes; |
|
|
|
if (isset($variables['node']->comment)) { |
|
$comment_count = $variables['node']->get('comment')->__get('comment_count'); |
|
if ($comment_count) { |
|
$variables['comment_count'] = $comment_count; |
|
} else { |
|
$variables['comment_count'] = "0"; |
|
} |
|
} |
|
|
|
$variables['mt_setting']['reading_time'] = theme_get_setting('reading_time'); |
|
$variables['mt_setting']['share_links'] = theme_get_setting('share_links'); |
|
$variables['mt_setting']['print_button'] = theme_get_setting('print_button'); |
|
$variables['mt_setting']['share_links_print_position'] = theme_get_setting('share_links_print_position'); |
|
$variables['mt_setting']['font_resize'] = theme_get_setting('font_resize'); |
|
$variables['mt_setting']['post_progress'] = theme_get_setting('post_progress'); |
|
$variables['mt_setting']['affix_side'] = theme_get_setting('affix_side'); |
|
|
|
} |
|
|
|
function magazineplus_preprocess_node__article(&$variables) { |
|
$variables['mt_setting']['reading_time'] = theme_get_setting('reading_time'); |
|
|
|
// Count the words of article in order to calculate the reading time |
|
$node_content = $variables['content']; |
|
$node_content = render($node_content); |
|
$words = str_word_count(strip_tags($node_content)); |
|
if (isset($variables['content']['comment'])) { |
|
$node_comments = $variables['content']['comment']; |
|
$node_comments = render($node_comments); |
|
$words = $words - str_word_count(strip_tags($node_comments)); |
|
} |
|
$variables['minutes'] = floor($words / 275); |
|
} |
|
|
|
/** |
|
* Implements hook_preprocess_HOOK() for block.html.twig. |
|
*/ |
|
function magazineplus_preprocess_block(&$variables) { |
|
// Add a clearfix class to blocks. |
|
$variables['attributes']['class'][] = 'clearfix'; |
|
} |
|
|
|
/** |
|
* Implements hook_preprocess_HOOK() for field--block-content--mt-google-maps.html.twig. |
|
*/ |
|
function magazineplus_preprocess_field__block_content__mt_google_maps(&$variables) { |
|
$variables['#attached']['library'][] = 'magazineplus/google-maps-init'; |
|
$variables['field_mt_latitude_value'] = $variables['element']['#object']->get('field_mt_latitude')->first()->getValue()['value']; |
|
$variables['field_mt_longitude_value'] = $variables['element']['#object']->get('field_mt_longitude')->first()->getValue()['value']; |
|
$variables['field_mt_map_zoom_value'] = $variables['element']['#object']->get('field_mt_map_zoom')->first()->getValue()['value']; |
|
} |
|
|
|
/** |
|
* Implements hook_preprocess_HOOK() for field--block-content--mt-background-image-block.html.twig. |
|
*/ |
|
function magazineplus_preprocess_field__block_content__mt_background_image_block(&$variables) { |
|
$variables['background_image_uri'] = $variables['element']['#object']->get('field_mt_background_image')->first()->entity->getFileUri(); |
|
$variables['bg_image_overlay_opacity'] = $variables['element']['#object']->get('field_mt_bg_image_opacity')->first()->getValue()['value']/100; |
|
$variables['bg_image_overlay_color'] = $variables['element']['#object']->get('field_mt_bg_image_color')->first()->getValue()['value']; |
|
$variables['bg_image_layout_mode'] = $variables['element']['#object']->get('field_mt_bg_image_layout_mode')->first()->getValue()['value']; |
|
if (!empty($variables['element']['#object']->get('field_mt_bg_image_positioning')->first()) and $variables['element']['#object']->get('field_mt_bg_image_positioning')->first()->getValue()['value'] == "1") { |
|
$variables['field_mt_bg_image_positioning_value'] = "background-image--attachment-fixed"; |
|
} else { |
|
$variables['field_mt_bg_image_positioning_value'] = "background-image--attachment-scroll"; |
|
} |
|
} |
|
|
|
/** |
|
* Implements hook_preprocess_HOOK() for field--block-content--mt-main-slideshow-block.html.twig. |
|
*/ |
|
function magazineplus_preprocess_field__block_content__mt_main_slideshow_block(&$variables) { |
|
$paragraphs = $variables['element']['#items']->referencedEntities(); |
|
if (!empty($paragraphs)) { |
|
foreach ($paragraphs as $key => $paragraph) { |
|
$slide_image = $paragraph->toArray()['field_mt_ms_slide_image']; |
|
$slide_caption = $paragraph->toArray()['field_mt_ms_slide_caption']; |
|
$slide_caption_color = $paragraph->toArray()['field_mt_ms_slide_caption_color']; |
|
$slide_caption_opacity = $paragraph->toArray()['field_mt_ms_slide_caption_opac']; |
|
$slide_title = $paragraph->toArray()['field_mt_ms_slide_title']; |
|
$slide_links = $paragraph->toArray()['field_mt_ms_slide_link']; |
|
$slide_image = $paragraph->toArray()['field_mt_ms_slide_image']; |
|
$slide_vimeo_id = $paragraph->toArray()['field_mt_ms_slide_vimeo_id']; |
|
$slide_youtube_id = $paragraph->toArray()['field_mt_ms_slide_youtube_id']; |
|
$slide_video_volume = $paragraph->toArray()['field_mt_ms_slide_volume']; |
|
|
|
if (!empty($slide_image[0])) { |
|
$file = File::load($slide_image[0]['target_id']); |
|
$path = $file->getFileUri(); |
|
$variables['items'][$key]['slide_image_url'] = $path; |
|
$variables['items'][$key]['slide_image_alt'] = $slide_image[0]['alt']; |
|
} else { |
|
$variables['items'][$key]['slide_image_url'] = ""; |
|
$variables['items'][$key]['slide_image_alt'] = ""; |
|
} |
|
if (!empty($slide_caption[0])) { |
|
$variables['items'][$key]['slide_caption'] = $slide_caption[0]['value']; |
|
} else { |
|
$variables['items'][$key]['slide_caption'] = false; |
|
} |
|
if (!empty($slide_caption_color[0])) { |
|
$variables['items'][$key]['slide_caption_color'] = $slide_caption_color[0]['value']; |
|
} else { |
|
$variables['items'][$key]['slide_caption_color'] = "region--light-typography region--dark-background"; |
|
} |
|
if (!empty($slide_caption_opacity[0])) { |
|
$variables['items'][$key]['slide_caption_opacity'] = $slide_caption_opacity[0]['value']/100; |
|
} else { |
|
$variables['items'][$key]['slide_caption_opacity'] = 0; |
|
} |
|
if (!empty($slide_title[0])) { |
|
$variables['items'][$key]['slide_title'] = $slide_title[0]['value']; |
|
} else { |
|
$variables['items'][$key]['slide_title'] = false; |
|
} |
|
if (!empty($slide_links[0])) { |
|
$variables['items'][$key]['slide_first_link_url'] = Url::fromUri($slide_links[0]['uri']); |
|
$variables['items'][$key]['slide_first_link_title'] = $slide_links[0]['title']; |
|
foreach ($slide_links as $slide_link_key => $slide_link) { |
|
$variables['items'][$key]['slide_links'][$slide_link_key]['slide_link_url'] = Url::fromUri($slide_links[$slide_link_key]['uri']); |
|
$variables['items'][$key]['slide_links'][$slide_link_key]['slide_link_title'] = $slide_links[$slide_link_key]['title']; |
|
} |
|
} else { |
|
$variables['items'][$key]['slide_first_link_url'] = false; |
|
$variables['items'][$key]['slide_first_link_title'] = false; |
|
} |
|
if (!empty($slide_vimeo_id[0])) { |
|
$variables['items'][$key]['slide_vimeo_id'] = $slide_vimeo_id[0]['value']; |
|
} else { |
|
$variables['items'][$key]['slide_vimeo_id'] = false; |
|
} |
|
if (!empty($slide_youtube_id[0])) { |
|
$variables['items'][$key]['slide_youtube_id'] = $slide_youtube_id[0]['value']; |
|
} else { |
|
$variables['items'][$key]['slide_youtube_id'] = false; |
|
} |
|
if (!empty($slide_video_volume[0]) and $slide_video_volume[0]['value'] != 0) { |
|
$variables['items'][$key]['slide_video_volume'] = $slide_video_volume[0]['value']; |
|
} else { |
|
$variables['items'][$key]['slide_video_volume'] = "mute"; |
|
} |
|
} |
|
} |
|
if ($variables['element']['#object']->get('field_mt_main_slideshow_layout')->first()->getValue()['value'] == "fullwidth") { |
|
$variables['field_mt_main_slideshow_layout_value'] = "auto"; |
|
$variables['field_mt_main_slideshow_autoheight'] = "off"; |
|
} else { |
|
$variables['field_mt_main_slideshow_layout_value'] = "fullscreen"; |
|
$variables['field_mt_main_slideshow_autoheight'] = "on"; |
|
} |
|
if (!empty($variables['element']['#object']->get('field_mt_ms_initial_height')->first())) { |
|
$variables['field_mt_ms_initial_height_value'] = (int) $variables['element']['#object']->get('field_mt_ms_initial_height')->first()->getValue()['value']; |
|
} else { |
|
$variables['field_mt_ms_initial_height_value'] = 650; |
|
} |
|
|
|
if (!empty($variables['element']['#object']->get('field_mt_ms_effect')->first())) { |
|
$variables['field_mt_ms_effect_value'] = $variables['element']['#object']->get('field_mt_ms_effect')->first()->getValue()['value']; |
|
} else { |
|
$variables['field_mt_ms_effect_value'] = "fade"; |
|
} |
|
|
|
if (!empty($variables['element']['#object']->get('field_mt_ms_effect_duration')->first())) { |
|
$variables['field_mt_ms_effect_duration_value'] = (int) $variables['element']['#object']->get('field_mt_ms_effect_duration')->first()->getValue()['value']*1000; |
|
} else { |
|
$variables['field_mt_ms_effect_duration_value'] = 9000; |
|
} |
|
|
|
if (!empty($variables['element']['#object']->get('field_mt_ms_touch_swipe_nav')->first()) and $variables['element']['#object']->get('field_mt_ms_touch_swipe_nav')->first()->getValue()['value'] == "1") { |
|
$variables['field_mt_ms_touch_swipe_nav_value'] = "on"; |
|
} else { |
|
$variables['field_mt_ms_touch_swipe_nav_value'] = "off"; |
|
} |
|
|
|
if (!empty($variables['element']['#object']->get('field_mt_ms_ignore_header_height')->first()) and $variables['element']['#object']->get('field_mt_ms_ignore_header_height')->first()->getValue()['value'] == "1") { |
|
$variables['field_mt_ms_ignore_header_height_value'] = ".header-container, .toolbar-tray-horizontal"; |
|
} else { |
|
$variables['field_mt_ms_ignore_header_height_value'] = ".toolbar-tray-horizontal"; |
|
} |
|
|
|
if (!empty($variables['element']['#object']->get('field_mt_ms_navigation_style')->first()) and $variables['element']['#object']->get('field_mt_ms_navigation_style')->first()->getValue()['value'] == "bullets") { |
|
$variables['field_mt_ms_bullets_enable'] = true; |
|
$variables['field_mt_ms_tabs_enable'] = false; |
|
$variables['field_mt_ms_thumbs_enable'] = false; |
|
} elseif (!empty($variables['element']['#object']->get('field_mt_ms_navigation_style')->first()) and $variables['element']['#object']->get('field_mt_ms_navigation_style')->first()->getValue()['value'] == "titles_carousel") { |
|
$variables['field_mt_ms_bullets_enable'] = false; |
|
$variables['field_mt_ms_tabs_enable'] = true; |
|
$variables['field_mt_ms_thumbs_enable'] = false; |
|
} elseif (!empty($variables['element']['#object']->get('field_mt_ms_navigation_style')->first()) and $variables['element']['#object']->get('field_mt_ms_navigation_style')->first()->getValue()['value'] == "vertical_thumbs") { |
|
$variables['field_mt_ms_bullets_enable'] = false; |
|
$variables['field_mt_ms_tabs_enable'] = false; |
|
$variables['field_mt_ms_thumbs_enable'] = true; |
|
} else { |
|
$variables['field_mt_ms_bullets_enable'] = false; |
|
$variables['field_mt_ms_tabs_enable'] = false; |
|
$variables['field_mt_ms_thumbs_enable'] = false; |
|
} |
|
|
|
if (!empty($variables['element']['#object']->get('field_mt_ms_bullets_position')->first())) { |
|
$variables['field_mt_ms_bullets_position_value'] = $variables['element']['#object']->get('field_mt_ms_bullets_position')->first()->getValue()['value']; |
|
} else { |
|
$variables['field_mt_ms_bullets_position_value'] = "center"; |
|
} |
|
|
|
if (!empty($variables['element']['#object']->get('field_mt_ms_background_opacity')->first())) { |
|
$variables['field_mt_ms_background_opacity_value'] = (int) $variables['element']['#object']->get('field_mt_ms_background_opacity')->first()->getValue()['value']/100; |
|
} else { |
|
$variables['field_mt_ms_background_opacity_value'] = 0; |
|
} |
|
} |
|
|
|
/** |
|
* Implements hook_preprocess_HOOK() for field--field-mt-video-gallery-slides.html.twig. |
|
*/ |
|
function magazineplus_preprocess_field__field_mt_video_gallery_slides(&$variables) { |
|
$paragraphs = $variables['element']['#items']->referencedEntities(); |
|
if (!empty($paragraphs)) { |
|
foreach ($paragraphs as $key => $paragraph) { |
|
$vimeo_id = $paragraph->toArray()['field_mt_vgs_vimeo_id']; |
|
$youtube_id = $paragraph->toArray()['field_mt_vgs_youtube_id']; |
|
$volume = $paragraph->toArray()['field_mt_vgs_volume']; |
|
$slide_title = $paragraph->toArray()['field_mt_vgs_slide_title']; |
|
$thumbnail = $paragraph->toArray()['field_mt_vgs_thumbnail']; |
|
if (!empty($vimeo_id[0])) { |
|
$variables['items'][$key]['vimeo_id'] = $vimeo_id[0]['value']; |
|
} else { |
|
$variables['items'][$key]['vimeo_id'] = false; |
|
} |
|
if (!empty($youtube_id[0])) { |
|
$variables['items'][$key]['youtube_id'] = $youtube_id[0]['value']; |
|
} else { |
|
$variables['items'][$key]['youtube_id'] = false; |
|
} |
|
if (!empty($volume[0]) and $volume[0]['value'] != 0) { |
|
$variables['items'][$key]['volume'] = $volume[0]['value']; |
|
} else { |
|
$variables['items'][$key]['volume'] = "mute"; |
|
} |
|
if (!empty($slide_title[0])) { |
|
$variables['items'][$key]['slide_title'] = $slide_title[0]['value']; |
|
} else { |
|
$variables['items'][$key]['slide_title'] = false; |
|
} |
|
if (!empty($thumbnail[0])) { |
|
$file = File::load($thumbnail[0]['target_id']); |
|
$path = $file->getFileUri(); |
|
$thumb_url = ImageStyle::load('mt_video_gallery_thumbnail')->buildUrl($path); |
|
$main_url = ImageStyle::load('mt_slideshow_boxed')->buildUrl($path); |
|
$variables['items'][$key]['thumbnail_thumb_styled_uri'] = $thumb_url; |
|
$variables['items'][$key]['thumbnail_main_styled_uri'] = $main_url; |
|
$variables['items'][$key]['thumbnail_alt'] = $thumbnail[0]['alt']; |
|
} else { |
|
$variables['items'][$key]['thumbnail_thumb_styled_uri'] = ""; |
|
$variables['items'][$key]['thumbnail_main_styled_uri'] = ""; |
|
$variables['items'][$key]['thumbnail_alt'] = ""; |
|
} |
|
} |
|
} |
|
} |
|
|
|
/** |
|
* Implements hook_preprocess_HOOK() for pager.html.twig. |
|
*/ |
|
function magazineplus_preprocess_pager(&$variables) { |
|
$variables['#attached']['library'][] = 'magazineplus/pager'; |
|
} |
|
|
|
/** |
|
* Implements hook_preprocess_HOOK() for views-mini-pager.html.twig. |
|
*/ |
|
function magazineplus_preprocess_views_mini_pager(&$variables) { |
|
$variables['#attached']['library'][] = 'magazineplus/mini-pager'; |
|
} |
|
|
|
/** |
|
* Implements hook_preprocess_HOOK() for menu.html.twig. |
|
*/ |
|
function magazineplus_preprocess_menu(&$variables) { |
|
$variables['attributes']['class'][] = 'clearfix'; |
|
} |
|
|
|
/** |
|
* Implements hook_preprocess_HOOK() for products views. |
|
*/ |
|
function magazineplus_preprocess_views_view_unformatted__mt_products(&$variables) { |
|
$variables['#attached']['library'][] = 'magazineplus/view-products-grid'; |
|
} |
|
|
|
/** |
|
* Implements hook_preprocess_HOOK() for team members grid views. |
|
*/ |
|
function magazineplus_preprocess_views_view_unformatted__mt_team_members_grid(&$variables) { |
|
$variables['#attached']['library'][] = 'magazineplus/view-team-members-grid'; |
|
} |
|
|
|
/** |
|
* Implements hook_preprocess_HOOK() for team members list views. |
|
*/ |
|
function magazineplus_preprocess_views_view_unformatted__mt_team_members_list(&$variables) { |
|
$variables['#attached']['library'][] = 'magazineplus/view-titles-list'; |
|
} |
|
|
|
/** |
|
* Implements hook_preprocess_HOOK() for latest posts views. |
|
*/ |
|
function magazineplus_preprocess_views_view_unformatted__mt_latest_posts(&$variables) { |
|
$variables['#attached']['library'][] = 'magazineplus/view-latest-posts'; |
|
} |
|
|
|
/** |
|
* Implements hook_preprocess_HOOK() for posts masonry views. |
|
*/ |
|
function magazineplus_preprocess_views_view_list__mt_posts_masonry(&$variables) { |
|
$variables['#attached']['library'][] = 'magazineplus/view-posts-masonry'; |
|
} |
|
|
|
/** |
|
* Implements hook_preprocess_HOOK() for videos grid views. |
|
*/ |
|
function magazineplus_preprocess_views_view_unformatted__mt_videos_grid(&$variables) { |
|
$variables['#attached']['library'][] = 'magazineplus/view-videos-grid'; |
|
} |
|
|
|
/** |
|
* Implements hook_preprocess_HOOK() for popular tags views. |
|
*/ |
|
function magazineplus_preprocess_views_view_unformatted__mt_popular_tags(&$variables) { |
|
$variables['#attached']['library'][] = 'magazineplus/view-popular-taxonomy'; |
|
} |
|
|
|
/** |
|
* Implements hook_preprocess_HOOK() for posts grid views. |
|
*/ |
|
function magazineplus_preprocess_views_view_unformatted__mt_posts_grid(&$variables) { |
|
$variables['#attached']['library'][] = 'magazineplus/view-posts-grid'; |
|
} |
|
|
|
/** |
|
* Implements hook_preprocess_HOOK() for posts grid views. |
|
*/ |
|
function magazineplus_preprocess_views_view_unformatted__mt_user_posts(&$variables) { |
|
$variables['#attached']['library'][] = 'magazineplus/view-posts-grid'; |
|
} |
|
|
|
/** |
|
* Implements hook_preprocess_HOOK() for posts carousel views. |
|
*/ |
|
function magazineplus_preprocess_views_view_list__mt_posts_carousel(&$variables) { |
|
$variables['#attached']['library'][] = 'magazineplus/owl-carousel-posts-init'; |
|
} |
|
|
|
/** |
|
* Implements hook_preprocess_HOOK() for square posts slider views. |
|
*/ |
|
function magazineplus_preprocess_views_view_list__mt_square_posts_carousel(&$variables) { |
|
$variables['#attached']['library'][] = 'magazineplus/owl-carousel-square-posts-init'; |
|
} |
|
|
|
/** |
|
* Implements hook_preprocess_HOOK() for posts slider views. |
|
*/ |
|
function magazineplus_preprocess_views_view_list__mt_posts_slider(&$variables) { |
|
$variables['#attached']['library'][] = 'magazineplus/owl-carousel-posts-slider-init'; |
|
} |
|
|
|
/** |
|
* Implements hook_preprocess_HOOK() for full screen slideshow. |
|
*/ |
|
function magazineplus_preprocess_views_view_list__mt_slideshow_full_screen__block(&$variables) { |
|
$rows = $variables['rows']; |
|
if (!empty($rows)) { |
|
foreach ($rows as $key => $row) { |
|
$path = $variables['rows'][$key]['content']['#row']->_entity->get('field_mt_slideshow_image')->first()->entity->getFileUri(); |
|
$variables['rows'][$key]['slide_thumbnail'] = ImageStyle::load('mt_slideshow_thumbnail')->buildUrl($path); |
|
} |
|
} |
|
$variables['mt_setting']['rs_slideshow_fullscreen_effect'] = theme_get_setting('rs_slideshow_fullscreen_effect'); |
|
//Load transparent-header library |
|
$transparent_header_state = theme_get_setting('transparent_header_state'); |
|
if ($transparent_header_state) { |
|
$variables['#attached']['library'][] = 'magazineplus/transparent-header'; |
|
} |
|
} |
|
|
|
/** |
|
* Implements hook_preprocess_HOOK() for boxed width slideshow. |
|
*/ |
|
function magazineplus_preprocess_views_view_list__mt_slideshow_boxed_width__block(&$variables) { |
|
$rows = $variables['rows']; |
|
if (!empty($rows)) { |
|
foreach ($rows as $key => $row) { |
|
$path = $variables['rows'][$key]['content']['#row']->_entity->get('field_mt_slideshow_image')->first()->entity->getFileUri(); |
|
$variables['rows'][$key]['slide_thumbnail'] = ImageStyle::load('mt_slideshow_thumbnail')->buildUrl($path); |
|
} |
|
} |
|
$variables['mt_setting']['rs_slideshow_boxedwidth_effect'] = theme_get_setting('rs_slideshow_boxedwidth_effect'); |
|
} |
|
|
|
/** |
|
* Implements hook_preprocess_HOOK() for internal banner slideshow. |
|
*/ |
|
function magazineplus_preprocess_views_view_list__mt_internal_banner__block(&$variables) { |
|
$rows = $variables['rows']; |
|
if (!empty($rows)) { |
|
foreach ($rows as $key => $row) { |
|
$path = $variables['rows'][$key]['content']['#row']->_entity->get('field_mt_banner_image')->get($key)->entity->getFileUri(); |
|
$variables['rows'][$key]['slide_thumbnail'] = ImageStyle::load('mt_slideshow_thumbnail')->buildUrl($path); |
|
} |
|
} |
|
$variables['mt_setting']['rs_slideshow_internal_effect'] = theme_get_setting('rs_slideshow_internal_effect'); |
|
} |
|
|
|
/** |
|
* Implements hook_preprocess_HOOK() for testimonials list views. |
|
*/ |
|
function magazineplus_preprocess_views_view_unformatted__mt_testimonials(&$variables) { |
|
$variables['#attached']['library'][] = 'magazineplus/view-testimonials-list'; |
|
} |
|
|
|
/** |
|
* Implements hook_preprocess_HOOK() for testimonials carousel views. |
|
*/ |
|
function magazineplus_preprocess_views_view_list__mt_testimonials_carousel(&$variables) { |
|
$variables['#attached']['library'][] = 'magazineplus/owl-carousel-testimonials-init'; |
|
} |
|
|
|
/** |
|
* Implements hook_preprocess_HOOK() for featured video views. |
|
*/ |
|
function magazineplus_preprocess_views_view_unformatted__mt_featured_video(&$variables) { |
|
$variables['#attached']['library'][] = 'magazineplus/view-featured-video'; |
|
} |
|
|
|
/** |
|
* Implements hook_theme_suggestions_HOOK_alter() for form templates. |
|
*/ |
|
function magazineplus_theme_suggestions_form_alter(array &$suggestions, array $variables) { |
|
if ($variables['element']['#form_id'] == 'search_block_form') { |
|
$suggestions[] = 'form__search_block_form'; |
|
} |
|
} |
|
|
|
/** |
|
* Implements hook_form_alter() to add classes to the search form. |
|
*/ |
|
function magazineplus_form_alter(&$form, FormStateInterface $form_state, $form_id) { |
|
if (in_array($form_id, ['search_block_form', 'search_form'])) { |
|
$key = ($form_id == 'search_block_form') ? 'actions' : 'basic'; |
|
if (!isset($form[$key]['submit']['#attributes'])) { |
|
$form[$key]['submit']['#attributes'] = new Attribute(); |
|
} |
|
$form[$key]['submit']['#attributes']->addClass('search-form__submit'); |
|
$form['keys']['#attributes']['placeholder'] = t('Search...'); |
|
} |
|
} |
|
|
|
function magazineplus_preprocess_field(&$variables) { |
|
$element = $variables['element']; |
|
$variables['view_mode'] = $element['#view_mode']; //Expose node view_mode to field templates |
|
} |
|
|
|
function magazineplus_preprocess_field__entity_reference(&$variables) { |
|
$variables['entity_reference_target_type'] = $variables['element']['#items']->getItemDefinition()->getSetting('target_type'); |
|
} |
|
|
|
function magazineplus_preprocess_field__block_content__mt_tabs_block(&$variables){ |
|
$variables['entity_reference_target_type'] = $variables['element']['#items']->getItemDefinition()->getSetting('target_type'); |
|
$block_uuid = $variables['element']['#object']->toArray()['uuid'][0]['value']; |
|
$blocks = $variables['element']['#items']->referencedEntities(); |
|
if (isset($blocks)) { |
|
foreach ($blocks as $key => $block) { |
|
$variables['items'][$key]['block_data']['label'] = $block->label(); |
|
if (!empty($block_uuid)) { |
|
$variables['items'][$key]['block_data']['id'] = Html::getUniqueId($block_uuid."-".$key); |
|
} else { |
|
$variables['items'][$key]['block_data']['id'] = Html::getUniqueId($block->id()); |
|
} |
|
} |
|
} |
|
} |
|
|
|
function magazineplus_preprocess_field__block_content__mt_collapsible_block(&$variables) { |
|
$block_uuid = $variables['element']['#object']->toArray()['uuid'][0]['value']; |
|
if (!empty($block_uuid)) { |
|
$variables['block_data']['id'] = Html::getUniqueId($block_uuid); |
|
} |
|
if (!empty($variables['element']['#object']->get('field_mt_cb_state')->first()) && $variables['element']['#object']->get('field_mt_cb_state')->first()->getValue()['value'] == "expanded") { |
|
$variables['field_mt_cb_state_value'] = "in"; |
|
$variables['field_mt_cb_trigger_state_value'] = ""; |
|
} else { |
|
$variables['field_mt_cb_state_value'] = ""; |
|
$variables['field_mt_cb_trigger_state_value'] = "collapsed"; |
|
} |
|
if (!empty($variables['element']['#object']->get('field_mt_cb_title')->first())) { |
|
$variables['field_mt_cb_title_value'] = $variables['element']['#object']->get('field_mt_cb_title')->first()->getValue()['value']; |
|
} else { |
|
$variables['field_mt_cb_title_value'] = ""; |
|
} |
|
if (!empty($variables['element']['#object']->get('field_mt_cb_trigger_position')->first())) { |
|
$variables['field_mt_cb_trigger_position_value'] = $variables['element']['#object']->get('field_mt_cb_trigger_position')->first()->getValue()['value']; |
|
} else { |
|
$variables['field_mt_cb_trigger_position_value'] = ""; |
|
} |
|
if (!empty($variables['element']['#object']->get('field_mt_cb_expand_icon')->first())) { |
|
$variables['field_mt_cb_expand_icon_value'] = $variables['element']['#object']->get('field_mt_cb_expand_icon')->first()->getValue()['value']; |
|
} else { |
|
$variables['field_mt_cb_expand_icon_value'] = ""; |
|
} |
|
if (!empty($variables['element']['#object']->get('field_mt_cb_collapse_icon')->first())) { |
|
$variables['field_mt_cb_collapse_icon_value'] = $variables['element']['#object']->get('field_mt_cb_collapse_icon')->first()->getValue()['value']; |
|
} else { |
|
$variables['field_mt_cb_collapse_icon_value'] = ""; |
|
} |
|
} |
|
|
|
function magazineplus_preprocess_field__block_content__mt_media_tabs_block(&$variables){ |
|
$current_language_id = \Drupal::languageManager()->getCurrentLanguage()->getId(); |
|
$variables['entity_reference_target_type'] = $variables['element']['#items']->getItemDefinition()->getSetting('target_type'); |
|
$paragraph_uuid = $variables['element']['#object']->toArray()['uuid'][0]['value']; |
|
$paragraphs = $variables['element']['#items']->referencedEntities(); |
|
if (isset($paragraphs)) { |
|
foreach ($paragraphs as $key => $paragraph_item) { |
|
if (!empty($paragraph_uuid)) { |
|
$variables['items'][$key]['tab_item_data']['id'] = Html::getUniqueId($paragraph_uuid."-".$key); |
|
} else { |
|
$variables['items'][$key]['tab_item_data']['id'] = Html::getUniqueId($paragraph_item->id()); |
|
} |
|
if ($paragraph_item->hasTranslation($current_language_id)) { |
|
$video_field = $paragraph_item->getTranslation($current_language_id)->get('field_mt_media_video')->view(); |
|
$media_image = $paragraph_item->getTranslation($current_language_id)->toArray()['field_mt_media_image']; |
|
} else { |
|
$media_image = $paragraph_item->toArray()['field_mt_media_image']; |
|
$video_field = $paragraph_item->get('field_mt_media_video')->view(); |
|
} |
|
if (!empty($media_image[0])) { |
|
$file = File::load($media_image[0]['target_id']); |
|
$path = $file->getFileUri(); |
|
$thumb_url = ImageStyle::load('mt_media_tab_image')->buildUrl($path); |
|
$variables['items'][$key]['media_image_styled_url'] = $thumb_url; |
|
} else { |
|
$variables['items'][$key]['media_image_styled_url'] = ""; |
|
} |
|
//get the video field from paragraph and generate render array with view() |
|
$video_field['#label_display'] = 'hidden'; //Hide the field label |
|
$video_field[0]['children']['#query']['autoplay'] = 0; //Set autoplay to false |
|
$variables['items'][$key]['video_field'] = $video_field; |
|
} |
|
} |
|
} |
|
|
|
function magazineplus_theme_suggestions_image_formatter_alter(array &$suggestions, array $variables) { |
|
$entity = $variables['item']->getEntity(); |
|
$field_name = $variables['item']->getParent()->getName(); |
|
if (isset($entity) && isset($field_name)) { |
|
$suggestions[] = 'image_formatter__' . $entity->getEntityTypeId() . '__' . $field_name; |
|
$suggestions[] = 'image_formatter__' . $entity->getEntityTypeId() . '__' . $entity->bundle() . '__' . $field_name; |
|
} |
|
}
|
|
|