HEX
Server: Apache
System: Linux WWW 6.1.0-40-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.153-1 (2025-09-20) x86_64
User: web11 (1011)
PHP: 8.2.29
Disabled: NONE
Upload Files
File: /var/www/apklausos/application/extensions/AccordionWidget/AccordionWidget.php
<?php

class AccordionWidget extends CWidget
{
    public $id = null;
    public $items = [];
    public $class = null;

    /**
     * @return void
     * @throws CException
     */
    public function run()
    {
        $this->render('accordion', [
            'id' => $this->id ?? 'accordion_' . bin2hex(random_bytes(2)),
            'items' => $this->normaliseItems($this->items),
            'class' => $this->class
        ]);
    }

    public function normaliseItems($items)
    {
        return array_map(function ($item) {
            return [
                'id' => $item['id'] ?? $this->id . '_item_' . bin2hex(random_bytes(2)),
                'title' => $item['title'] ?? null,
                'content' => $item['content'] ?? null,
                'open' => $item['open'] ?? true,
                'style' => $item['style'] ?? ''
            ];
        }, $items);
    }
}