@Александр Марков, Я переписал свой процессор таки

@Александр Марков, Я переписал свой процессор таким образом:

<?>
/**
 * Create an User
 */
class sxUserImportProcessor extends modObjectCreateProcessor {
	public $objectType = 'sxUser';
	public $classKey = 'sxUser';
	public $languageTopics = array('sx');
	public $permission = 'new_document';


	/**
	 * @return bool
	 */

	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 $value) {
			$this->setProperty('email', $value);

			$processorProps = array(
				'email' => $value,
				'usergroup_id' => $this->getProperty('usergroup_id')
			);
			$otherProps = array(
				// Здесь указываем где лежат наши процессоры
				'processors_path' => $this->modx->getOption('base_path') . 'core/components/sx/processors/'
			);
			$response = $this->modx->runProcessor('mgr/user/create', $processorProps, $otherProps);
			//print_r($response->response);
		}

		return !$this->hasErrors();
	}

}

return 'sxUserImportProcessor';

Теперь импорт данных происходит хорошо, но последние в файле данные импортируются 2 раза. Я так понимаю из-за того, что сначала происходит импорт через процессор, вызываемый в цикле, а затем последние данные заносятся через return 'sxUserImportProcessor'; ? Как исправить подскажите пожалуйста. Может быть вообще не нужен здесь процессор sxUserImportProcessor, а просто скриптом все оформить в котором будет вызываться другой процессор?