Linux ip-172-31-23-120.eu-west-1.compute.internal 5.10.245-245.983.amzn2.x86_64 #1 SMP Wed Dec 3 00:02:10 UTC 2025 x86_64
Apache/2.4.65 () OpenSSL/1.0.2k-fips
: 172.31.23.120 | : 64.252.114.129
Cant Read [ /etc/named.conf ]
8.2.29
apache
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
README
+ Create Folder
+ Create File
/
var /
www /
html /
produccion /
presta /
classes /
[ HOME SHELL ]
Name
Size
Permission
Action
cache
[ DIR ]
drwxrwxr--
controller
[ DIR ]
drwxrwxr--
db
[ DIR ]
drwxrwxr--
exception
[ DIR ]
drwxrwxr--
helper
[ DIR ]
drwxrwxr--
log
[ DIR ]
drwxrwxr--
module
[ DIR ]
drwxrwxr--
order
[ DIR ]
drwxrwxr--
pdf
[ DIR ]
drwxrwxr--
range
[ DIR ]
drwxrwxr--
shop
[ DIR ]
drwxrwxr--
stock
[ DIR ]
drwxrwxr--
tax
[ DIR ]
drwxrwxr--
tree
[ DIR ]
drwxrwxr--
webservice
[ DIR ]
drwxrwxr--
.htaccess
31
B
-rwxrwxr--
Address.php
13.21
KB
-rwxrwxr--
AddressFormat.php
17.47
KB
-rwxrwxr--
AdminTab.php
95.55
KB
-rwxrwxr--
Alias.php
3.83
KB
-rwxrwxr--
Attachment.php
5.85
KB
-rwxrwxr--
Attribute.php
11.16
KB
-rwxrwxr--
AttributeGroup.php
9.91
KB
-rwxrwxr--
Blowfish.php
18.39
KB
-rwxrwxr--
CMS.php
7.34
KB
-rwxrwxr--
CMSCategory.php
20.65
KB
-rwxrwxr--
CSV.php
2.61
KB
-rwxrwxr--
Carrier.php
43
KB
-rwxrwxr--
Cart.php
134.47
KB
-rwxrwxr--
CartRule.php
54.99
KB
-rwxrwxr--
Category.php
55.61
KB
-rwxrwxr--
Chart.php
4.48
KB
-rwxrwxr--
Combination.php
9.85
KB
-rwxrwxr--
CompareProduct.php
4.75
KB
-rwxrwxr--
Configuration.php
18.05
KB
-rwxrwxr--
ConfigurationKPI.php
4.93
KB
-rwxrwxr--
ConfigurationTest.php
8.74
KB
-rwxrwxr--
Connection.php
8.68
KB
-rwxrwxr--
ConnectionsSource.php
4.45
KB
-rwxrwxr--
Contact.php
2.84
KB
-rwxrwxr--
Context.php
5.18
KB
-rwxrwxr--
ControllerFactory.php
1.96
KB
-rwxrwxr--
Cookie.php
11.35
KB
-rwxrwxr--
Country.php
11.96
KB
-rwxrwxr--
County.php
3.22
KB
-rwxrwxr--
Currency.php
13.13
KB
-rwxrwxr--
Customer.php
27.3
KB
-rwxrwxr--
CustomerMessage.php
3.63
KB
-rwxrwxr--
CustomerThread.php
7.16
KB
-rwxrwxr--
Customization.php
8.47
KB
-rwxrwxr--
CustomizationField.php
2.11
KB
-rwxrwxr--
DateRange.php
2.08
KB
-rwxrwxr--
Delivery.php
2.8
KB
-rwxrwxr--
Discount.php
7.4
KB
-rwxrwxr--
Dispatcher.php
28.87
KB
-rwxrwxr--
Employee.php
13.68
KB
-rwxrwxr--
Feature.php
10.15
KB
-rwxrwxr--
FeatureValue.php
6.12
KB
-rwxrwxr--
FileUploader.php
9.28
KB
-rwxrwxr--
Gender.php
2.06
KB
-rwxrwxr--
Group.php
11.13
KB
-rwxrwxr--
GroupReduction.php
8.05
KB
-rwxrwxr--
Guest.php
6.32
KB
-rwxrwxr--
Hook.php
23.5
KB
-rwxrwxr--
Image.php
20.66
KB
-rwxrwxr--
ImageManager.php
15.48
KB
-rwxrwxr--
ImageType.php
5.14
KB
-rwxrwxr--
Language.php
32.21
KB
-rwxrwxr--
Link.php
25.38
KB
-rwxrwxr--
LocalizationPack.php
13.54
KB
-rwxrwxr--
Mail.php
18.04
KB
-rwxrwxr--
Mail.php.comprado
15.56
KB
-rwxrwxr--
Mail.php.original
16.12
KB
-rwxrwxr--
Manufacturer.php
14.99
KB
-rwxrwxr--
Media.php
29.59
KB
-rwxrwxr--
Message.php
5.28
KB
-rwxrwxr--
Meta.php
14.92
KB
-rwxrwxr--
Notification.php
5.68
KB
-rwxrwxr--
ObjectModel.php
52.92
KB
-rwxrwxr--
Pack.php
13.29
KB
-rwxrwxr--
Page.php
3.68
KB
-rwxrwxr--
PaymentCC.php
2.34
KB
-rwxrwxr--
PaymentModule.php
41.77
KB
-rwxrwxr--
PrestaShopAutoload.php
6.78
KB
-rwxrwxr--
PrestaShopBackup.php
8.64
KB
-rwxrwxr--
PrestaShopCollection.php
16.84
KB
-rwxrwxr--
PrestaShopLogger.php
5.38
KB
-rwxrwxr--
Product.php
193.96
KB
-rwxrwxr--
ProductDownload.php
8.74
KB
-rwxrwxr--
ProductSale.php
10
KB
-rwxrwxr--
ProductSupplier.php
6.71
KB
-rwxrwxr--
Profile.php
4.53
KB
-rwxrwxr--
QuickAccess.php
2.4
KB
-rwxrwxr--
Referrer.php
14.72
KB
-rwxrwxr--
RequestSql.php
15.76
KB
-rwxrwxr--
Rijndael.php
2.27
KB
-rwxrwxr--
Risk.php
2.16
KB
-rwxrwxr--
Scene.php
8.28
KB
-rwxrwxr--
Search.php
31.89
KB
-rwxrwxr--
SearchEngine.php
2.25
KB
-rwxrwxr--
SmartyCacheResourceMysql.php
4.41
KB
-rwxrwxr--
SpecificPrice.php
16.33
KB
-rwxrwxr--
SpecificPriceRule.php
10.91
KB
-rwxrwxr--
State.php
5.91
KB
-rwxrwxr--
Store.php
4.34
KB
-rwxrwxr--
Supplier.php
13.34
KB
-rwxrwxr--
Tab.php
16.24
KB
-rwxrwxr--
Tag.php
6.81
KB
-rwxrwxr--
Theme.php
10.65
KB
-rwxrwxr--
Tools.php
99.37
KB
-rwxrwxr--
Translate.php
9.55
KB
-rwxrwxr--
TranslatedConfiguration.php
3.59
KB
-rwxrwxr--
Upgrader.php
9.06
KB
-rwxrwxr--
Uploader.php
6.85
KB
-rwxrwxr--
Validate.php
27.63
KB
-rwxrwxr--
Zone.php
2.98
KB
-rwxrwxr--
index.php
1.24
KB
-rwxrwxr--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : ProductSale.php
<?php /* * 2007-2015 PrestaShop * * NOTICE OF LICENSE * * This source file is subject to the Open Software License (OSL 3.0) * that is bundled with this package in the file LICENSE.txt. * It is also available through the world-wide-web at this URL: * http://opensource.org/licenses/osl-3.0.php * If you did not receive a copy of the license and are unable to * obtain it through the world-wide-web, please send an email * to license@prestashop.com so we can send you a copy immediately. * * DISCLAIMER * * Do not edit or add to this file if you wish to upgrade PrestaShop to newer * versions in the future. If you wish to customize PrestaShop for your * needs please refer to http://www.prestashop.com for more information. * * @author PrestaShop SA <contact@prestashop.com> * @copyright 2007-2015 PrestaShop SA * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) * International Registered Trademark & Property of PrestaShop SA */ class ProductSaleCore { /* ** Fill the `product_sale` SQL table with data from `order_detail` ** @return bool True on success */ public static function fillProductSales() { $sql = 'REPLACE INTO '._DB_PREFIX_.'product_sale (`id_product`, `quantity`, `sale_nbr`, `date_upd`) SELECT od.product_id, SUM(od.product_quantity), COUNT(od.product_id), NOW() FROM '._DB_PREFIX_.'order_detail od GROUP BY od.product_id'; return Db::getInstance()->execute($sql); } /* ** Get number of actives products sold ** @return int number of actives products listed in product_sales */ public static function getNbSales() { $sql = 'SELECT COUNT(ps.`id_product`) AS nb FROM `'._DB_PREFIX_.'product_sale` ps LEFT JOIN `'._DB_PREFIX_.'product` p ON p.`id_product` = ps.`id_product` '.Shop::addSqlAssociation('product', 'p', false).' WHERE product_shop.`active` = 1'; return (int)Db::getInstance(_PS_USE_SQL_SLAVE_)->getValue($sql); } /* ** Get required informations on best sales products ** ** @param integer $id_lang Language id ** @param integer $page_number Start from (optional) ** @param integer $nb_products Number of products to return (optional) ** @return array from Product::getProductProperties */ public static function getBestSales($id_lang, $page_number = 0, $nb_products = 10, $order_by = null, $order_way = null) { if ($page_number < 0) $page_number = 0; if ($nb_products < 1) $nb_products = 10; $final_order_by = $order_by; $order_table = ''; if ($order_by == 'date_add' || $order_by == 'date_upd') $order_table = 'product_shop'; if (is_null($order_way) || $order_by == 'sales') $order_way = 'DESC'; $interval = Validate::isUnsignedInt(Configuration::get('PS_NB_DAYS_NEW_PRODUCT')) ? Configuration::get('PS_NB_DAYS_NEW_PRODUCT') : 20; $sql = 'SELECT p.*, product_shop.*, stock.out_of_stock, IFNULL(stock.quantity, 0) as quantity, pl.`description`, pl.`description_short`, pl.`link_rewrite`, pl.`meta_description`, pl.`meta_keywords`, pl.`meta_title`, pl.`name`, pl.`available_now`, pl.`available_later`, m.`name` AS manufacturer_name, p.`id_manufacturer` as id_manufacturer, MAX(image_shop.`id_image`) id_image, il.`legend`, ps.`quantity` AS sales, t.`rate`, pl.`meta_keywords`, pl.`meta_title`, pl.`meta_description`, DATEDIFF(p.`date_add`, DATE_SUB(NOW(), INTERVAL '.(int)$interval.' DAY)) > 0 AS new'.(Combination::isFeatureActive() ? ', MAX(product_attribute_shop.minimal_quantity) AS product_attribute_minimal_quantity' : '') .' FROM `'._DB_PREFIX_.'product_sale` ps LEFT JOIN `'._DB_PREFIX_.'product` p ON ps.`id_product` = p.`id_product` '.Shop::addSqlAssociation('product', 'p', false).' LEFT JOIN `'._DB_PREFIX_.'product_attribute` pa ON (p.`id_product` = pa.`id_product`) '.(Combination::isFeatureActive() ? Shop::addSqlAssociation('product_attribute', 'pa', false, 'product_attribute_shop.`default_on` = 1').' '.Product::sqlStock('p', 'product_attribute_shop', false, Context::getContext()->shop) : Product::sqlStock('p', 'product', false, Context::getContext()->shop)).' LEFT JOIN `'._DB_PREFIX_.'product_lang` pl ON p.`id_product` = pl.`id_product` AND pl.`id_lang` = '.(int)$id_lang.Shop::addSqlRestrictionOnLang('pl').' LEFT JOIN `'._DB_PREFIX_.'image` i ON (i.`id_product` = p.`id_product`)'. Shop::addSqlAssociation('image', 'i', false, 'image_shop.cover=1').' LEFT JOIN `'._DB_PREFIX_.'image_lang` il ON (i.`id_image` = il.`id_image` AND il.`id_lang` = '.(int)$id_lang.') LEFT JOIN `'._DB_PREFIX_.'manufacturer` m ON (m.`id_manufacturer` = p.`id_manufacturer`) LEFT JOIN `'._DB_PREFIX_.'tax_rule` tr ON (product_shop.`id_tax_rules_group` = tr.`id_tax_rules_group`) AND tr.`id_country` = '.(int)Context::getContext()->country->id.' AND tr.`id_state` = 0 LEFT JOIN `'._DB_PREFIX_.'tax` t ON (t.`id_tax` = tr.`id_tax`)'; if (Group::isFeatureActive()) { $groups = FrontController::getCurrentCustomerGroups(); $sql .= ' JOIN `'._DB_PREFIX_.'category_product` cp ON (cp.`id_product` = p.`id_product`) JOIN `'._DB_PREFIX_.'category_group` cg ON (cp.id_category = cg.id_category AND cg.`id_group` '.(count($groups) ? 'IN ('.implode(',', $groups).')' : '= 1').')'; } $sql .= ' WHERE product_shop.`active` = 1 AND p.`visibility` != \'none\' GROUP BY product_shop.id_product'; if ($final_order_by != 'price') $sql .= ' ORDER BY '.(!empty($order_table) ? '`'.pSQL($order_table).'`.' : '').'`'.pSQL($order_by).'` '.pSQL($order_way).' LIMIT '.(int)($page_number * $nb_products).', '.(int)$nb_products; $result = Db::getInstance(_PS_USE_SQL_SLAVE_)->executeS($sql); if ($final_order_by == 'price') Tools::orderbyPrice($result, $order_way); if (!$result) return false; return Product::getProductsProperties($id_lang, $result); } /* ** Get required informations on best sales products ** ** @param integer $id_lang Language id ** @param integer $page_number Start from (optional) ** @param integer $nb_products Number of products to return (optional) ** @return array keys : id_product, link_rewrite, name, id_image, legend, sales, ean13, upc, link */ public static function getBestSalesLight($id_lang, $page_number = 0, $nb_products = 10, Context $context = null) { if (!$context) $context = Context::getContext(); if ($page_number < 0) $page_number = 0; if ($nb_products < 1) $nb_products = 10; $sql = ' SELECT p.id_product, MAX(product_attribute_shop.id_product_attribute) id_product_attribute, pl.`link_rewrite`, pl.`name`, pl.`description_short`, product_shop.`id_category_default`, MAX(image_shop.`id_image`) id_image, il.`legend`, ps.`quantity` AS sales, p.`ean13`, p.`upc`, cl.`link_rewrite` AS category, p.show_price, p.available_for_order, IFNULL(stock.quantity, 0) as quantity, p.customizable, IFNULL(pa.minimal_quantity, p.minimal_quantity) as minimal_quantity, stock.out_of_stock, product_shop.`date_add` > "'.date('Y-m-d', strtotime('-'.(Configuration::get('PS_NB_DAYS_NEW_PRODUCT') ? (int)Configuration::get('PS_NB_DAYS_NEW_PRODUCT') : 20).' DAY')).'" as new, product_shop.`on_sale`, MAX(product_attribute_shop.minimal_quantity) AS product_attribute_minimal_quantity FROM `'._DB_PREFIX_.'product_sale` ps LEFT JOIN `'._DB_PREFIX_.'product` p ON ps.`id_product` = p.`id_product` '.Shop::addSqlAssociation('product', 'p').' LEFT JOIN `'._DB_PREFIX_.'product_attribute` pa ON (p.`id_product` = pa.`id_product`) '.Shop::addSqlAssociation('product_attribute', 'pa', false, 'product_attribute_shop.`default_on` = 1').' '.Product::sqlStock('p', 'product_attribute_shop', false, $context->shop).' LEFT JOIN `'._DB_PREFIX_.'product_lang` pl ON p.`id_product` = pl.`id_product` AND pl.`id_lang` = '.(int)$id_lang.Shop::addSqlRestrictionOnLang('pl').' LEFT JOIN `'._DB_PREFIX_.'image` i ON (i.`id_product` = p.`id_product`)'. Shop::addSqlAssociation('image', 'i', false, 'image_shop.cover=1').' LEFT JOIN `'._DB_PREFIX_.'image_lang` il ON (i.`id_image` = il.`id_image` AND il.`id_lang` = '.(int)$id_lang.') LEFT JOIN `'._DB_PREFIX_.'category_lang` cl ON cl.`id_category` = product_shop.`id_category_default` AND cl.`id_lang` = '.(int)$id_lang.Shop::addSqlRestrictionOnLang('cl'); if (Group::isFeatureActive()) { $groups = FrontController::getCurrentCustomerGroups(); $sql .= ' JOIN `'._DB_PREFIX_.'category_product` cp ON (cp.`id_product` = p.`id_product`) JOIN `'._DB_PREFIX_.'category_group` cg ON (cp.id_category = cg.id_category AND cg.`id_group` '.(count($groups) ? 'IN ('.implode(',', $groups).')' : '= 1').')'; } $sql.= ' WHERE product_shop.`active` = 1 AND p.`visibility` != \'none\' GROUP BY product_shop.id_product ORDER BY sales DESC LIMIT '.(int)($page_number * $nb_products).', '.(int)$nb_products; if (!$result = Db::getInstance(_PS_USE_SQL_SLAVE_)->executeS($sql)) return false; return Product::getProductsProperties($id_lang, $result); } public static function addProductSale($product_id, $qty = 1) { return Db::getInstance()->execute(' INSERT INTO '._DB_PREFIX_.'product_sale (`id_product`, `quantity`, `sale_nbr`, `date_upd`) VALUES ('.(int)$product_id.', '.(int)$qty.', 1, NOW()) ON DUPLICATE KEY UPDATE `quantity` = `quantity` + '.(int)$qty.', `sale_nbr` = `sale_nbr` + 1, `date_upd` = NOW()'); } public static function getNbrSales($id_product) { $result = Db::getInstance()->getRow('SELECT `sale_nbr` FROM '._DB_PREFIX_.'product_sale WHERE `id_product` = '.(int)$id_product); if (!$result || empty($result) || !array_key_exists('sale_nbr', $result)) return -1; return (int)$result['sale_nbr']; } public static function removeProductSale($id_product, $qty = 1) { $total_sales = ProductSale::getNbrSales($id_product); if ($total_sales > 1) return Db::getInstance()->execute(' UPDATE '._DB_PREFIX_.'product_sale SET `quantity` = `quantity` - '.(int)$qty.', `sale_nbr` = `sale_nbr` - 1, `date_upd` = NOW() WHERE `id_product` = '.(int)$id_product ); elseif ($total_sales == 1) return Db::getInstance()->delete('product_sale', 'id_product = '.(int)$id_product); return true; } }
Close