: str_replace(): Passing null to parameter #2 ($replace) of type array|string is deprecated in
namespace Nextend\Framework\Style;
use Nextend\Framework\Pattern\SingletonTrait;
use Nextend\Framework\Plugin;
private $styles = array();
private $stylesBySet = array();
private $stylesById = array();
protected function init() {
Plugin::addAction('systemstyleset', array(
Plugin::addAction('systemstyle', array(
Plugin::addAction('style', array(
private function load() {
Plugin::doAction('styleStorage', array(
for ($i = 0; $i < count($this->styles); $i++) {
if (!isset($this->stylesBySet[$this->styles[$i]['referencekey']])) {
$this->stylesBySet[$this->styles[$i]['referencekey']] = array();
$this->stylesBySet[$this->styles[$i]['referencekey']][] = &$this->styles[$i];
$this->stylesById[$this->styles[$i]['id']] = &$this->styles[$i];
public function styleSet($referenceKey, &$sets) {
for ($i = count($this->sets) - 1; $i >= 0; $i--) {
$this->sets[$i]['isSystem'] = 1;
$this->sets[$i]['editable'] = 0;
array_unshift($sets, $this->sets[$i]);
public function styles($referenceKey, &$styles) {
if (isset($this->stylesBySet[$referenceKey])) {
$_styles = &$this->stylesBySet[$referenceKey];
for ($i = count($_styles) - 1; $i >= 0; $i--) {
$_styles[$i]['isSystem'] = 1;
$_styles[$i]['editable'] = 0;
array_unshift($styles, $_styles[$i]);
public function style($id, &$style) {
if (isset($this->stylesById[$id])) {
$this->stylesById[$id]['isSystem'] = 1;
$this->stylesById[$id]['editable'] = 0;
$style = $this->stylesById[$id];