60 lines
1.7 KiB
PHP
60 lines
1.7 KiB
PHP
<?php
|
|
|
|
|
|
namespace Nextend\SmartSlider3\Slider\Feature;
|
|
|
|
|
|
use Nextend\Framework\View\Html;
|
|
|
|
class Align {
|
|
|
|
private $slider;
|
|
|
|
public $align = 'normal';
|
|
|
|
public function __construct($slider) {
|
|
|
|
$this->slider = $slider;
|
|
|
|
$this->align = $slider->params->get('align', 'normal');
|
|
}
|
|
|
|
public function renderSlider($sliderHTML, $maxWidth) {
|
|
|
|
$htmlOptions = array(
|
|
"id" => $this->slider->elementId . '-align',
|
|
"class" => "n2-ss-align",
|
|
"encode" => false
|
|
);
|
|
|
|
$htmlOptionsPadding = array(
|
|
"class" => 'n2-padding'
|
|
);
|
|
|
|
if (!$this->slider->features->responsive->scaleUp && $this->align != 'normal') {
|
|
switch ($this->align) {
|
|
case 'left':
|
|
case 'right':
|
|
$width = $this->slider->assets->sizes['width'];
|
|
$htmlOptions["style"] = "float: {$this->align}; width: {$width}px; max-width:100%;";
|
|
break;
|
|
case 'center':
|
|
$htmlOptions["style"] = "margin: 0 auto; max-width: {$maxWidth}px;";
|
|
break;
|
|
}
|
|
}
|
|
|
|
$sliderHTML = Html::tag("div", $htmlOptions, Html::tag("div", $htmlOptionsPadding, $sliderHTML));
|
|
|
|
if ($this->slider->params->get('clear-both-after', 1)) {
|
|
$sliderHTML .= Html::tag("div", array("class" => "n2_clear"), "");
|
|
}
|
|
|
|
return $sliderHTML;
|
|
}
|
|
|
|
public function makeJavaScriptProperties(&$properties) {
|
|
$properties['align'] = $this->align;
|
|
$properties['isDelayed'] = intval($this->slider->params->get('is-delayed', 0));
|
|
}
|
|
} |