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/commands/PluginCommand.php
<?php

    /*
    * LimeSurvey (tm)
    * Copyright (C) 2011-2017 The LimeSurvey Project Team / Carsten Schmitz
    * All rights reserved.
    * License: GNU/GPL License v3 or later, see LICENSE.php
    * LimeSurvey is free software. This version may have been modified pursuant
    * to the GNU General Public License, and as distributed it includes or
    * is derivative of works licensed under the GNU General Public License or
    * other free or open source software licenses.
    * See COPYRIGHT.php for copyright notices and details.
    *
    */
class PluginCommand extends CConsoleCommand
{
    public $connection;

    /**
    * register some needed or a lot used part
    */
    public function init()
    {
        parent::init();
        Yii::import('application.helpers.common_helper', true);
    }

    /**
     * Call for cron action
     * @param int $interval Minutes for interval
     * @return void
     */
    public function actionCron($interval = null)
    {
        $pm = \Yii::app()->pluginManager;
        $event = new PluginEvent('cron');
        $event->set('interval', $interval);
        $pm->dispatchEvent($event);
    }

    /**
     * Call directly an event by command (it's default)
     * @param string $target Target of action, plugin name for example
     * @param mixed $function Extra parameters for plugin
     * @param mixed $option Extra parameters for plugin
     * @return void
     */
    public function actionIndex($target, $function = null, $option = null)
    {
        $pm = \Yii::app()->pluginManager;
        $event = new PluginEvent('direct');
        $event->set('target', $target);
        $event->set('function', $function);
        $event->set('option', $option);
        $pm->dispatchEvent($event);
    }
}