[ Mini Kiebo ]
Server: Windows NT DESKTOP-5B8S0D4 6.2 build 9200 (Windows 8 Professional Edition) i586
Path:
D:
/
Backup
/
05122024
/
htdocs
/
jurnal-kesmas
/
v1
/
lib
/
pkp
/
classes
/
components
/
listPanels
/
[
Home
]
File: ListPanel.php
<?php /** * @file components/listPanels/ListPanel.php * * Copyright (c) 2014-2021 Simon Fraser University * Copyright (c) 2000-2021 John Willinsky * Distributed under the GNU GPL v3. For full terms see the file docs/COPYING. * * @class ListPanel * * @ingroup classes_components_list * * @brief A base class for ListPanel components. */ namespace PKP\components\listPanels; class ListPanel { /** @var string An optional description to add beneath the title */ public $description = ''; /** @var string An optional message to display when no items are in the list */ public $emptyLabel = ''; /** @var array Array of item ids that should be expanded on initial load */ public $expanded = []; /** @var string The appropriate heading level for this component */ public $headingLevel = 'h2'; /** @var bool Should the sidebar be visible on initial load? */ public $isSidebarVisible = false; /** @var string An ID for this component */ public $id = ''; /** @var array Items to display in the list */ public $items = []; /** @var string Title (expects a translation key) */ public $title = ''; /** * Initialize the form with config parameters * * @param string $id * @param string $title * @param array $args Configuration params */ public function __construct($id, $title, $args = []) { $this->id = $id; $this->title = $title; $this->set($args); } /** * Set configuration data for the component * * @param array $args Configuration params * */ public function set($args) { foreach ($args as $prop => $value) { if (property_exists($this, $prop)) { $this->{$prop} = $value; } } return $this; } /** * Convert the object into an assoc array ready to be json_encoded * and passed to the UI component * * @return array Configuration data */ public function getConfig() { $config = [ 'description' => $this->description, 'expanded' => $this->expanded, 'headingLevel' => $this->headingLevel, 'id' => $this->id, 'isSidebarVisible' => $this->isSidebarVisible, 'items' => $this->items, 'title' => $this->title, ]; if (strlen($this->emptyLabel)) { $config['emptyLabel'] = $this->emptyLabel; } if (!empty($this->getParams)) { $config['getParams'] = $this->getParams; } return $config; } }