protected function renderCSV()
 {
     if (Tools::isSubmit('ids_mvt_csv')) {
         require_once _PS_MODULE_DIR_ . 'erpillicopresta/classes/ErpProduct.php';
         $warehouseSrc = new Warehouse(Tools::getValue('id_warehouse_src'));
         $warehouseDst = new Warehouse(Tools::getValue('id_warehouse_dst'));
         //csv file name
         $file_name = 'stock_transfert_' . date('Y-m-d_His') . '.csv';
         // header
         header('Content-type: text/csv');
         header('Cache-Control: no-store, no-cache');
         header('Content-disposition: attachment; filename="' . $file_name);
         // write headers column
         $keys = array($this->l('warehouse_source_id'), $this->l('warehouse_source_name'), $this->l('warehouse_destination_id'), $this->l('warehouse_destination_name'), $this->l('id_product'), $this->l('id_product_attribute'), $this->l('sku'), $this->l('ean'), $this->l('product_name'), $this->l('quantity'));
         $keys = array_map(array('AdminStockTransferController', 'transformText'), $keys);
         echo sprintf("%s\n", implode(';', $keys));
         // call the helper "traducteur" of the transfert chain to get datas
         require_once _PS_MODULE_DIR_ . 'erpillicopresta/classes/helpers/StockTransferHelper.php';
         $data = StockTransferHelper::getTransfertDataAsArray(Tools::getValue('ids_mvt_csv'));
         // write datas
         foreach ($data as &$product) {
             // get additional informations
             $product['product_name'] = ErpProduct::getProductName($product['id_product'], $product['id_product_attribute']);
             $productInfo = ErpProduct::getProductsInfo($product['id_product'], $product['id_product_attribute']);
             $product['ean13'] = isset($productInfo['ean13']) ? $productInfo['ean13'] : '';
             $product['reference'] = isset($productInfo['reference']) ? $productInfo['reference'] : '';
             $file_content = array((int) $warehouseSrc->id, self::transformText($warehouseSrc->name), (int) $warehouseDst->id, self::transformText($warehouseDst->name), (int) $product['id_product'], (int) $product['id_product_attribute'], $product['reference'], $product['ean13'], self::transformText($product['product_name']), (int) $product['quantity'] . PHP_EOL);
             echo implode(';', $file_content);
         }
         exit;
     }
 }