<commit_before><?php
abstract class Vpc_Abstract_List_Component extends Vpc_Abstract
{
    public static function getSettings()
    {
        $ret = array_merge(parent::getSettings(), array(
            'componentName' => 'List',
            'childModel'     => 'Vpc_Abstract_List_Model',
            'ownModel'     => 'Vpc_Abstract_List_OwnModel',
        ));
        $ret['generators']['child'] = array(
            'class' => 'Vps_Component_Generator_Table',
            'component' => null
        );
        $ret['assetsAdmin']['dep'][] = 'VpsProxyPanel';
        $ret['assetsAdmin']['dep'][] = 'VpsAutoGrid';
        $ret['assetsAdmin']['dep'][] = 'VpsMultiFileUploadPanel';
        $ret['assetsAdmin']['files'][] = 'vps/Vpc/Abstract/List/EditButton.js';
        $ret['assetsAdmin']['files'][] = 'vps/Vpc/Abstract/List/PanelWithEditButton.js';
        $ret['assetsAdmin']['files'][] = 'vps/Vpc/Abstract/List/List.js';
        $ret['assetsAdmin']['files'][] = 'vps/Vpc/Abstract/List/ListEditButton.js';
        $ret['extConfig'] = 'Vpc_Abstract_List_ExtConfigListUpload';
        $ret['hasVisible'] = true;
        return $ret;
    }

    public static function validateSettings($settings)
    {
        if (isset($settings['default'])) {
            throw new Vps_Exception("Setting default doesn't exist anymore");
        }
    }

    public function getTemplateVars()
    {
        $ret = parent::getTemplateVars();
        $children = $this->getData()->getChildComponents(array('generator' => 'child'));

        // children ist die alte methode, bleibt drin wegen kompatibilität
        $ret['children'] = $children;

        // das hier ist die neue variante und ist besser, weil man leichter mehr daten
        // zurückgeben kann, bzw. in der übersetzung überschreiben kann
        // zB: Breite bei übersetzung von Columns
        $ret['listItems'] = array();
        foreach ($children as $child) {
            $ret['listItems'][] = array(
                'data' => $child
            );
        }
        return $ret;
    }

    public function getExportData()
    {<commit_msg>- limit ist jetzt fuer list setzbar<commit_after><?php
abstract class Vpc_Abstract_List_Component extends Vpc_Abstract
{
    public static function getSettings()
    {
        $ret = array_merge(parent::getSettings(), array(
            'componentName' => 'List',
            'childModel'     => 'Vpc_Abstract_List_Model',
            'ownModel'     => 'Vpc_Abstract_List_OwnModel',
        ));
        $ret['generators']['child'] = array(
            'class' => 'Vps_Component_Generator_Table',
            'component' => null
        );
        $ret['assetsAdmin']['dep'][] = 'VpsProxyPanel';
        $ret['assetsAdmin']['dep'][] = 'VpsAutoGrid';
        $ret['assetsAdmin']['dep'][] = 'VpsMultiFileUploadPanel';
        $ret['assetsAdmin']['files'][] = 'vps/Vpc/Abstract/List/EditButton.js';
        $ret['assetsAdmin']['files'][] = 'vps/Vpc/Abstract/List/PanelWithEditButton.js';
        $ret['assetsAdmin']['files'][] = 'vps/Vpc/Abstract/List/List.js';
        $ret['assetsAdmin']['files'][] = 'vps/Vpc/Abstract/List/ListEditButton.js';
        $ret['extConfig'] = 'Vpc_Abstract_List_ExtConfigListUpload';
        $ret['hasVisible'] = true;
        return $ret;
    }

    public static function validateSettings($settings)
    {
        if (isset($settings['default'])) {
            throw new Vps_Exception("Setting default doesn't exist anymore");
        }
    }

    //kann überschrieben werden um zB ein limit einzubauen
    protected function _getSelect()
    {
        $select = new Vps_Component_Select();
        $select->whereGenerator('child');
        return $select;
    }

    public function getTemplateVars()
    {
        $ret = parent::getTemplateVars();
        $children = $this->getData()->getChildComponents($this->_getSelect());

        // children ist die alte methode, bleibt drin wegen kompatibilität
        $ret['children'] = $children;

        // das hier ist die neue variante und ist besser, weil man leichter mehr daten
        // zurückgeben kann, bzw. in der übersetzung überschreiben kann
        // zB: Breite bei übersetzung von Columns
        $ret['listItems'] = array();
        foreach ($children as $child) {
            $ret['listItems'][] = array(
                'data' => $child
            );
        }
        return $ret;
    }

    public function getExportData()
    {
{'fraction_non_alphanumeric': 0.14902758932609678, 'fraction_numerical': 0.0, 'mean_word_length': 2.6106122448979594, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 22, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4602232', 'n_tokens_mistral': 1295, 'n_tokens_neox': 1300, 'n_words': 262}