Focus.php
1.68 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
<?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', '')
);
}
}
}
}