61 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			61 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
<?php
 | 
						|
 | 
						|
 | 
						|
namespace Nextend\SmartSlider3\Slider\Feature;
 | 
						|
 | 
						|
 | 
						|
use Nextend\SmartSlider3\Settings;
 | 
						|
use Nextend\SmartSlider3\Slider\Slider;
 | 
						|
 | 
						|
class Focus {
 | 
						|
 | 
						|
    /**
 | 
						|
     * @var Slider
 | 
						|
     */
 | 
						|
    private $slider;
 | 
						|
 | 
						|
    private $focusOffsetTop = '';
 | 
						|
 | 
						|
    private $focusOffsetBottom = '';
 | 
						|
 | 
						|
 | 
						|
    public function __construct($slider) {
 | 
						|
 | 
						|
        $this->slider = $slider;
 | 
						|
        $responsiveHeightOffsetValue = '#wpadminbar';
 | 
						|
 | 
						|
        $this->focusOffsetTop    = Settings::get('responsive-focus-top', $responsiveHeightOffsetValue);
 | 
						|
        $this->focusOffsetBottom = Settings::get('responsive-focus-bottom', '');
 | 
						|
    }
 | 
						|
 | 
						|
    public function makeJavaScriptProperties(&$properties) {
 | 
						|
        $properties['responsive']['focus'] = array(
 | 
						|
            'offsetTop'    => $this->focusOffsetTop,
 | 
						|
            'offsetBottom' => $this->focusOffsetBottom
 | 
						|
        );
 | 
						|
 | 
						|
        $params = $this->slider->params;
 | 
						|
 | 
						|
        if ($params->get('responsive-mode') == 'fullpage') {
 | 
						|
            if (!$params->has('responsive-focus') && $params->has('responsiveHeightOffset')) {
 | 
						|
                $old = $params->get('responsiveHeightOffset');
 | 
						|
 | 
						|
                $oldDefault = '';
 | 
						|
                $oldDefault = '#wpadminbar';
 | 
						|
            
 | 
						|
 | 
						|
                if ($old !== $oldDefault) {
 | 
						|
                    $params->set('responsive-focus', 1);
 | 
						|
                    $params->set('responsive-focus-top', $old);
 | 
						|
                }
 | 
						|
            }
 | 
						|
 | 
						|
            if ($params->get('responsive-focus', 0)) {
 | 
						|
                $properties['responsive']['focus'] = array(
 | 
						|
                    'offsetTop'    => $params->get('responsive-focus-top', ''),
 | 
						|
                    'offsetBottom' => $params->get('responsive-focus-bottom', '')
 | 
						|
                );
 | 
						|
            }
 | 
						|
        }
 | 
						|
    }
 | 
						|
} |