* @copyright 2007-2020 PrestaShop SA * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0) * International Registered Trademark & Property of PrestaShop SA */ /** * Class ColissimoFileHandler */ class ColissimoFileHandler extends AbstractColissimoHandler { /** @var bool|resource $fd */ protected $fd; /** * ColissimoFileHandler constructor. * @param string $file */ public function __construct($file) { $this->fd = @fopen($file, 'a+'); } /** * @param string $level * @param string $message * @param string $channel * @param array $details * @return bool */ public function log($level, $message, $channel, $details) { if (is_resource($this->fd)) { $string = sprintf('[%s] %s.%s: %s %s', date('Y-m-d H:i:s'), $channel, $level, $message, json_encode($details)); @fwrite($this->fd, $string." []\r\n"); } return true; } /** * @param string $level * @param string $message * @param string $channel * @param string $requestArray * @return bool */ public function logXml($level, $message, $channel, $requestArray) { return $this->log($level, $message, $channel, array('xml' => json_decode($requestArray, true))); } /** * @return bool */ public function close() { if (is_resource($this->fd)) { return fclose($this->fd); } return true; } }