public function __construct($directPrint = 0)
{
$pC = PhocacartUtils::getComponentParameters();
$this->lineLength = $pC->get('pos_print_line_length', 42);
$this->lineLengthDoubleSize = $pC->get('pos_print_line_length_double', 21);
$this->lineSeparator = $pC->get('pos_print_line_sep', '-');
// $this->lineEnd = $pC->get( 'pos_print_line_end', "\n" );
$this->lineEnd = "\n";
if (StringHelper::strlen($this->lineSeparator) > 1) {
$this->lineSeparator = substr($this->lineSeparator, 0, 1);
}
if ($directPrint) {
$pos_print_connector = $pC->get('pos_print_connector', 1);
$pos_print_connector_file = $pC->get('pos_print_connector_file', '');
$pos_print_connector_dest = $pC->get('pos_print_connector_dest', '');
$pos_print_connector_ip = $pC->get('pos_print_connector_ip', '');
$pos_print_connector_port = $pC->get('pos_print_connector_port', "9100");
$pos_print_connector_timeout = $pC->get('pos_print_connector_timeout', 0);
switch ($pos_print_connector) {
case "2":
if ($pos_print_connector_ip != '') {
$this->connector = new Mike42\Escpos\PrintConnectors\NetworkPrintConnector($pos_print_connector_ip, $pos_print_connector_port, $pos_print_connector_timeout);
} else {
//throw new Exception('Printer Settings Error: No IP set', 500);
PhocacartLog::add(2, 'Printer Settings Error: No IP set');
return false;
}
break;
case "3":
if ($pos_print_connector_dest != '') {
$this->connector = new Mike42\Escpos\PrintConnectors\WindowsPrintConnector($pos_print_connector_dest);
} else {
//throw new Exception('Printer Settings Error: No Destination set', 500);
PhocacartLog::add(2, 'Printer Settings Error: No Destination set');
return false;
}
break;
case "4":
if ($pos_print_connector_dest != '') {
$this->connector = new Mike42\Escpos\PrintConnectors\CupsPrintConnector($pos_print_connector_dest);
} else {
//throw new Exception('Printer Settings Error: No Destination set', 500);
PhocacartLog::add(2, 'Printer Settings Error: No Destination set');
return false;
}
break;
case 1:
default:
if ($pos_print_connector_file != '') {
$this->connector = new Mike42\Escpos\PrintConnectors\FilePrintConnector($pos_print_connector_file);
} else {
//throw new Exception('Printer Settings Error: No File set', 500);
PhocacartLog::add(2, 'Printer Settings Error: No File set');
return false;
}
break;
}
}
}