Backend\Core\Installer\ModuleInstaller::insertDashboardWidget PHP Метод

insertDashboardWidget() защищенный Метод

Insert a dashboard widget
protected insertDashboardWidget ( string $module, string $widget )
$module string
$widget string
    protected function insertDashboardWidget($module, $widget)
    {
        // get db
        $db = $this->getDB();
        // fetch current settings
        $groupSettings = (array) $db->getRecords('SELECT * FROM groups_settings WHERE name = ?', array('dashboard_sequence'));
        $userSettings = (array) $db->getRecords('SELECT * FROM users_settings WHERE name = ?', array('dashboard_sequence'));
        // loop group settings
        foreach ($groupSettings as $settings) {
            // unserialize data
            $settings['value'] = unserialize($settings['value']);
            // add new widget
            $settings['value'][$module][] = $widget;
            // re-serialize value
            $settings['value'] = serialize($settings['value']);
            // update in db
            $db->update('groups_settings', $settings, 'group_id = ? AND name = ?', array($settings['group_id'], $settings['name']));
        }
        // loop user settings
        foreach ($userSettings as $settings) {
            // unserialize data
            $settings['value'] = unserialize($settings['value']);
            // add new widget
            $settings['value'][$module][] = $widget;
            // re-serialize value
            $settings['value'] = serialize($settings['value']);
            // update in db
            $db->update('users_settings', $settings, 'user_id = ? AND name = ?', array($settings['user_id'], $settings['name']));
        }
    }