Execute( 'INSERT INTO ' . _DB_PREFIX_ . 'lgcomments_productcomments ' . '(date, id_customer, id_product, stars, comment, id_lang, ' . 'active, position, title, answer ) ' . 'VALUES ( "' . $date . '", "' . (int)$datos[1] . '", "' . (int)$datos[2] . '", "' . (int)$datos[3] . '", "' . pSQL($csv_comment) . '", "' . (int)$datos[5] . '", "' . (int)$datos[6] . '", "' . (int)$datos[7] . '", "' . pSQL($csv_title) . '", "' . pSQL($csv_answer) . '" )' ); } fclose($fp); $html .= $module->displayConfirmation( $module->l('The comments have been successfully added') . ' '. $module->getAnchor( array( 'lgcomments_warning_link_href' => 'index.php?controller=AdminLGCommentsProducts&token=' .$tokenPC, 'lgcomments_warning_link_target' => '_blank', 'lgcomments_warning_link_message' => $module->l( 'Click here to manage your product reviews' ), ) ) ); } } else { $html .= $module->displayError( $module->l('The format of the file is not valid, it must be saved in ".csv" format.') ); } } else { $html .= $module->displayError($module->l('An error occurred while uploading the CSV file')); } return $html; } public static function exportProductComments($module) { $html = ''; $separator1 = (int)Tools::getValue('separator1', 1); if ($separator1 == 2) { $sp = ','; } else { $sp = ';'; } $ln = "\n"; $fp = fopen(_PS_ROOT_DIR_ . '/modules/' . $module->name . '/csv/save_products.csv', 'w'); $prodComments = LGProductComment::getAllProductComments(); foreach ($prodComments as $prodComment) { fwrite( $fp, $prodComment['date'] . $sp . $prodComment['id_customer'] . $sp . $prodComment['id_product'] . $sp . $prodComment['stars'] . $sp . utf8_decode($prodComment['comment']) . '' . $sp . $prodComment['id_lang'] . $sp . $prodComment['active'] . $sp . $prodComment['position'] . $sp . utf8_decode($prodComment['title']) . $sp . utf8_decode($prodComment['answer']) . $ln ); } fclose($fp); if ($prodComments != false) { $html .= $module->displayConfirmation( $module->l('The CSV file has been successfully generated,') . ' '. $module->getAnchor( array( 'lgcomments_warning_link_href' => '../modules/' . $module->name . '/csv/save_products.csv', 'lgcomments_warning_link_message' => $module->l('click here to download it'), ) ) ); } else { $html .= $module->displayError($module->l('There are no product comments to export')); } return $html; } public static function importStorecomments($module) { $html = ''; $separator2 = (int)Tools::getValue('separator2', 1); $tokenSC = Tools::getAdminTokenLite('AdminLGCommentsStore'); if ($separator2 == 2) { $sp = ','; } else { $sp = ';'; } $encoding2 = (int)Tools::getValue('encoding2', 1); if (is_uploaded_file($_FILES['csv2']['tmp_name'])) { $type = explode(".", $_FILES['csv2']['name']); if (Tools::strtolower(end($type)) == 'csv') { if (move_uploaded_file( $_FILES['csv2']['tmp_name'], dirname(dirname(__FILE__)) . '/csv/' . $_FILES['csv2']['name'] )) { $archivo = $_FILES['csv2']['name']; $fp = fopen(dirname(dirname(__FILE__)) . '/csv/' . $archivo, 'r'); while (($datos = fgetcsv($fp, 1000, '' . $sp . '')) !== false) { $datos[0] = str_replace('/', '-', $datos[0]); $date = strtotime($datos[0]); $date = date('Y-m-d', $date); if ($encoding2 == 2) { $csv_comment = mb_convert_encoding($datos[4], 'UTF-8', 'auto'); $csv_title = mb_convert_encoding($datos[8], 'UTF-8', 'auto'); $csv_answer = mb_convert_encoding($datos[9], 'UTF-8', 'auto'); } else { $csv_comment = utf8_encode($datos[4]); $csv_title = utf8_encode($datos[8]); $csv_answer = utf8_encode($datos[9]); } Db::getInstance()->Execute( 'INSERT INTO ' . _DB_PREFIX_ . 'lgcomments_storecomments ' . '(date, id_customer, id_order, stars, comment, id_lang, active, ' . 'position, title, answer ) ' . 'VALUES ( "' . $date . '", "' . (int)$datos[1] . '", "' . (int)$datos[2] . '", "' . (int)$datos[3] . '", "' . pSQL($csv_comment) . '", "' . (int)$datos[5] . '", "' . (int)$datos[6] . '", "' . (int)$datos[7] . '", "' . pSQL($csv_title) . '", "' . pSQL($csv_answer) . '" )' ); } fclose($fp); $html .= $module->displayConfirmation( $module->l('The comments have been successfully added') . '. '. $module->getAnchor( array( 'lgcomments_warning_link_href' => 'index.php?controller=AdminLGCommentsStore&token=' .$tokenSC, 'lgcomments_warning_link_target' => '_blank', 'lgcomments_warning_link_message' => $module->l( 'Click here to manage your store reviews' ), ) ) ); } } else { $html .= $module->displayError( $module->l('The format of the file is not valid, it must be saved in ".csv" format.') ); } } else { $html .= $module->displayError($module->l('An error occurred while uploading the CSV file')); } return $html; } public static function exportStoreComments($module) { $html = ''; $separator2 = (int)Tools::getValue('separator2', 1); if ($separator2 == 2) { $sp = ','; } else { $sp = ';'; } $ln = "\n"; $fp = fopen(_PS_ROOT_DIR_ . '/modules/' . $module->name . '/csv/save_store.csv', 'w'); $storeComments = LGStoreComment::getAllStoreComments(); foreach ($storeComments as $storeComment) { fwrite( $fp, $storeComment['date'] . $sp . $storeComment['id_customer'] . $sp . $storeComment['id_order'] . $sp . $storeComment['stars'] . $sp . utf8_decode($storeComment['comment']) . '' . $sp . $storeComment['id_lang'] . $sp . $storeComment['active'] . $sp . $storeComment['position'] . $sp . utf8_decode($storeComment['title']) . $sp . utf8_decode($storeComment['answer']) . $ln ); } fclose($fp); if ($storeComments != false) { $html .= $module->displayConfirmation( $module->l('The CSV file has been successfully generated,') . ' ' .$module->getAnchor( array( 'lgcomments_warning_link_href' => 'i../modules/' . $module->name . '/csv/save_store.csv', 'lgcomments_warning_link_message' => $module->l('click here to download it'), ) ) ); } else { $html .= $module->displayError($module->l('There are no store comments to export')); } return $html; } }