174 lines
5.5 KiB
PHP
174 lines
5.5 KiB
PHP
<?php
|
|
/**
|
|
* 2007-2015 Apollotheme
|
|
*
|
|
* NOTICE OF LICENSE
|
|
*
|
|
* ApPageBuilder is module help you can build content for your shop
|
|
*
|
|
* DISCLAIMER
|
|
*
|
|
* @author Apollotheme <apollotheme@gmail.com>
|
|
* @copyright 2007-2019 Apollotheme
|
|
* @license http://apollotheme.com - prestashop template provider
|
|
*/
|
|
|
|
if (!defined('_PS_VERSION_')) {
|
|
# module validation
|
|
exit;
|
|
}
|
|
|
|
class ApFontAwesome extends ApShortCodeBase
|
|
{
|
|
public $name = 'ApFontAwesome';
|
|
public $for_module = 'manage';
|
|
|
|
public function getInfo()
|
|
{
|
|
return array('label' => $this->l('Font Awesome'),
|
|
'position' => 5,
|
|
'desc' => $this->l('Add a font Awesome'),
|
|
'icon_class' => 'icon icon-font',
|
|
'tag' => 'content control');
|
|
}
|
|
|
|
public function getConfigList()
|
|
{
|
|
$rotate = array(
|
|
array(
|
|
'value' => 'normal',
|
|
'text' => $this->l('Normal')
|
|
),
|
|
array(
|
|
'value' => 'icon-rotate-90',
|
|
'text' => $this->l('Rotate Left')
|
|
),
|
|
array(
|
|
'value' => 'icon-rotate-180',
|
|
'text' => $this->l('Rotate Inverser')
|
|
),
|
|
array(
|
|
'value' => 'icon-rotate-270',
|
|
'text' => $this->l('Rotate Right')
|
|
),
|
|
array(
|
|
'value' => 'icon-flip-horizontal',
|
|
'text' => $this->l('Flip Horizontal')
|
|
),
|
|
array(
|
|
'value' => 'icon-flip-vertical',
|
|
'text' => $this->l('Flip Vertical')
|
|
),
|
|
);
|
|
$sizes = array(
|
|
array(
|
|
'value' => 'size-default',
|
|
'text' => $this->l('Size Default')
|
|
),
|
|
array(
|
|
'value' => 'icon-large',
|
|
'text' => $this->l('Size Large')
|
|
),
|
|
array(
|
|
'value' => 'icon-2x',
|
|
'text' => $this->l('Size 2x')
|
|
),
|
|
array(
|
|
'value' => 'icon-3x',
|
|
'text' => $this->l('Size 3x')
|
|
),
|
|
array(
|
|
'value' => 'icon-4x',
|
|
'text' => $this->l('Size 4x')
|
|
)
|
|
);
|
|
$default_font = Tools::getIsset('font_name') ? Tools::getValue('font_name') : 'icon-font';
|
|
$inputs = array(
|
|
array(
|
|
'type' => 'text',
|
|
'name' => 'title',
|
|
'label' => $this->l('Title'),
|
|
'desc' => $this->l('Auto hide if leave it blank'),
|
|
'lang' => 'true',
|
|
'form_group_class' => 'aprow_general',
|
|
'default' => ''
|
|
),
|
|
array(
|
|
'type' => 'textarea',
|
|
'name' => 'sub_title',
|
|
'label' => $this->l('Sub Title'),
|
|
'lang' => true,
|
|
'values' => '',
|
|
'autoload_rte' => false,
|
|
'default' => '',
|
|
),
|
|
array(
|
|
'type' => 'html',
|
|
'name' => 'default_html',
|
|
'html_content' => '<input type="text" name="font_name" id="font_name" value="'.$default_font.
|
|
'"/><div class="box-list-font-awesome">'.$this->renderListFont($default_font).'</div>'
|
|
),
|
|
array(
|
|
'type' => 'html',
|
|
'name' => 'default_html',
|
|
'html_content' => '<hr/><div class="preview-widget"><i class="icon '.$default_font.
|
|
'" data-default="'.$default_font.'"></i></div>'
|
|
),
|
|
array(
|
|
'type' => 'select',
|
|
'label' => $this->l('Font Rotate'),
|
|
'name' => 'font_type',
|
|
'options' => array('query' => $rotate,
|
|
'id' => 'value',
|
|
'name' => 'text'),
|
|
'default' => '',
|
|
),
|
|
array(
|
|
'type' => 'select',
|
|
'label' => $this->l('Font Size'),
|
|
'name' => 'font_size',
|
|
'options' => array('query' => $sizes,
|
|
'id' => 'value',
|
|
'name' => 'text'),
|
|
'default' => 'size-default',
|
|
),
|
|
array(
|
|
'type' => 'select',
|
|
'label' => $this->l('Is Spin'),
|
|
'name' => 'is_spin',
|
|
'options' => array('query' => array(
|
|
array('value' => '', 'text' => $this->l('No spin')),
|
|
array('value' => 'icon-spin', 'text' => $this->l('Spin')),
|
|
),
|
|
'id' => 'value',
|
|
'name' => 'text'),
|
|
'default' => 'btn-lg',
|
|
),
|
|
);
|
|
return $inputs;
|
|
}
|
|
|
|
public function renderListFont($default = 'icon-font')
|
|
{
|
|
$list = ApPageSetting::listFontAwesome();
|
|
$result = '';
|
|
foreach ($list as $item) {
|
|
$cls = '';
|
|
if ($default === $item['value']) {
|
|
$cls = 'selected';
|
|
}
|
|
$result .= '<li class="'.$cls.'"><i class="icon '.$item['value'].'" data-default="'.$item['value'].'"></i>';
|
|
}
|
|
return "<ul class='list-font-awesome'>$result</ul>";
|
|
}
|
|
|
|
public function prepareFontContent($assign, $module = null)
|
|
{
|
|
// validate module
|
|
unset($module);
|
|
$assign['formAtts']['font_name'] = str_replace('icon', 'fa', $assign['formAtts']['font_name']);
|
|
|
|
return $assign;
|
|
}
|
|
}
|