• Модуль: ui
  • Путь к файлу: ~/bitrix/modules/ui/lib/barcode/barcodegenerator.php
  • Класс: BitrixUIBarcodeBarcodeGenerator
  • Вызов: BarcodeGenerator::qr_ec_divide
private function qr_ec_divide($data, $ec_params) {
	$num_data = count($data);
	$num_error = $ec_params[1];
	$generator = $this->qr_ec_polynomials[$num_error];
	$message = $data;
	for ($i = 0; $i < $num_error; $i++) {
		$message[] = 0;
	}
	for ($i = 0; $i < $num_data; $i++) {
		if ($message[$i]) {
			$leadterm = $this->qr_log[$message[$i]];
			for ($j = 0; $j <= $num_error; $j++) {
				$term = ($generator[$j] + $leadterm) % 255;
				$message[$i + $j] ^= $this->qr_exp[$term];
			}
		}
	}
	return array_slice($message, $num_data, $num_error);
}