Some checks are pending
Module sub-split / Sub-split (push) Waiting to run
- Base: wintercms/winter branch 1.2 (full framework) - Theme vivespos: Canvas 7 + Bootstrap 5 CDN, custom CSS - Layout: deferred GTM/GA4 tracking, JSON-LD SoftwareApplication - Partials: hero (offline-first), features, modes (offline/nube toggle), screenshots, pricing (3 planes), comparison, FAQ, CTA - Plugin VivesPOS.Site with ContactForm - Dockerfile: PHP 8.2 Apache, port 80, healthcheck - Added winter/wn-pages, blog, sitemap, seo plugins - Active theme set to vivespos
60 lines
1.2 KiB
PHP
60 lines
1.2 KiB
PHP
<?php namespace Backend\FormWidgets;
|
|
|
|
use Backend\Classes\FormWidgetBase;
|
|
use File;
|
|
use Url;
|
|
use Yaml;
|
|
|
|
/**
|
|
* Icon picker
|
|
* Renders an icon picker field.
|
|
*
|
|
* @package winter\wn-backend-module
|
|
* @author Robert Alexa, Jack Wilkinson
|
|
*/
|
|
class IconPicker extends FormWidgetBase
|
|
{
|
|
public const DEFAULT_LIBRARIES = '~/modules/backend/formwidgets/iconpicker/meta/libraries.yaml';
|
|
|
|
/**
|
|
* @inheritDoc
|
|
*/
|
|
protected $defaultAlias = 'iconpicker';
|
|
|
|
/**
|
|
* @inheritDoc
|
|
*/
|
|
public function render()
|
|
{
|
|
$this->prepareVars();
|
|
return $this->makePartial('iconpicker');
|
|
}
|
|
|
|
/**
|
|
* Prepares the list data
|
|
*/
|
|
public function prepareVars()
|
|
{
|
|
$this->vars['field'] = $this;
|
|
}
|
|
|
|
/**
|
|
* @inheritDoc
|
|
*/
|
|
public function loadAssets(): void
|
|
{
|
|
$this->addJs('js/dist/iconpicker.js', 'core');
|
|
}
|
|
|
|
public function onLoadIconLibrary()
|
|
{
|
|
$libraries = $this->config->libraries ?? static::DEFAULT_LIBRARIES;
|
|
|
|
if (is_string($libraries)) {
|
|
$libraries = Yaml::parseFile(File::symbolizePath($libraries));
|
|
}
|
|
|
|
return json_encode($libraries);
|
|
}
|
|
}
|