update
This commit is contained in:
94
modules/anblog/classes/anBlogLikes.php
Normal file
94
modules/anblog/classes/anBlogLikes.php
Normal file
@@ -0,0 +1,94 @@
|
||||
<?php
|
||||
/**
|
||||
* 2024 Anvanto
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Academic Free License (AFL 3.0)
|
||||
*
|
||||
* @author Anvanto <anvantoco@gmail.com>
|
||||
* @copyright 2024 Anvanto
|
||||
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
|
||||
*/
|
||||
|
||||
if (!defined('_PS_VERSION_')) {
|
||||
exit;
|
||||
}
|
||||
|
||||
class anBlogLikes extends ObjectModel
|
||||
{
|
||||
|
||||
public $id_like;
|
||||
|
||||
public $id;
|
||||
|
||||
public $id_customer_guest;
|
||||
|
||||
public $id_post;
|
||||
public $id_shop;
|
||||
public $date_upd;
|
||||
|
||||
public static $definition = [
|
||||
'table' => 'anblog_likes',
|
||||
'primary' => 'id_like',
|
||||
'multilang' => false,
|
||||
'fields' => [
|
||||
'id_customer_guest' => ['type' =>self::TYPE_INT ],
|
||||
'id_post' => ['type' =>self::TYPE_INT ],
|
||||
'id_shop' => ['type' =>self::TYPE_INT ],
|
||||
|
||||
'date_upd' => ['type' => self::TYPE_DATE, 'validate' => 'isDate'],
|
||||
],
|
||||
];
|
||||
|
||||
public static function getIdLike($idCustomerGuest, $idPost)
|
||||
{
|
||||
|
||||
if (!$idCustomerGuest) {
|
||||
return false;
|
||||
}
|
||||
|
||||
$sql = '
|
||||
SELECT `id_like`
|
||||
FROM `' . _DB_PREFIX_ . 'anblog_likes`
|
||||
WHERE `id_customer_guest` = ' . (int)$idCustomerGuest . '
|
||||
AND `id_post` = ' . $idPost . '
|
||||
AND `id_shop` = ' . (int) Context::getContext()->shop->id;
|
||||
;
|
||||
|
||||
return Db::getInstance(_PS_USE_SQL_SLAVE_)->getValue($sql);
|
||||
}
|
||||
|
||||
|
||||
|
||||
public static function addLike($idCustomerGuest, $idPost)
|
||||
{
|
||||
$objLikes = new anBlogLikes;
|
||||
|
||||
$objLikes->id_customer_guest = $idCustomerGuest;
|
||||
$objLikes->id_post = $idPost;
|
||||
$objLikes->id_shop = (int) Context::getContext()->shop->id;
|
||||
$objLikes->save();
|
||||
|
||||
Db::getInstance(_PS_USE_SQL_SLAVE_)->execute('
|
||||
UPDATE '._DB_PREFIX_.'anblog_blog SET likes = likes + 1 WHERE id_anblog_blog = '. $idPost .'
|
||||
');
|
||||
|
||||
}
|
||||
public static function deleteLike($idLike, $idPost)
|
||||
{
|
||||
$objLikes = new anBlogLikes($idLike);
|
||||
$objLikes->delete();
|
||||
|
||||
Db::getInstance(_PS_USE_SQL_SLAVE_)->execute('
|
||||
UPDATE '._DB_PREFIX_.'anblog_blog SET likes = likes - 1 WHERE id_anblog_blog = '. $idPost .'
|
||||
');
|
||||
}
|
||||
|
||||
public static function getCountLikes($idPost)
|
||||
{
|
||||
$objLikes = new AnblogBlog($idPost);
|
||||
return $objLikes->likes;
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user