Добрый день. Делаю компонент, в котором одна из кнопок вызывает окно импорта данных из csv в таблицу БД. В одном поле выбирается файл (этот путь потом передается в процессор), а в другом поле выбирается второе необходимое для импорта значение (оно статично для всех данных импорта.).
Проблема в том, что мой процессор по итогу заносит в БД лишь одно значение - причем либо первое, либо последнее. Подскажите, где у меня ошибка, и как мне сделать выполнение моего процессора в цикле, чтобы все данных заносились? Вот код моего процессора:

<?php /** * Import an User */ class sxUserCreateProcessor extends modObjectCreateProcessor { public $objectType = 'sxUser'; public $classKey = 'sxUser'; public $languageTopics = array('sx'); public $permission = 'new_document'; /** * @return bool */ public function prepareQueryBeforeCount(xPDOQuery $c) { $c->innerJoin('sxUserGroup', 'sxUserGroup', 'sxUserGroup.id = sxUser.usergroup_id'); $c->select($this->modx->getSelectColumns('sxUser', 'sxUser')); $c->select('sxUserGroup.name as group_name'); if ($usergroup_id = $this->getProperty('usergroup_id')) { if (!empty($usergroup_id)) { $c->where(array('sxUserGroup.usergroup_id' => $usergroup_id)); } } return $c; } public function beforeSet() { $path = $this->modx->getOption('base_path'); $file_dir = $path . $this->getProperty('import_source'); // Путь к файлу $file = file_get_contents($file_dir); $lines = explode(PHP_EOL, $file); foreach ($lines as $key => $value) { $this->setProperty('email', $value); return true; } return !$this->hasErrors(); } } return 'sxUserCreateProcessor';