Moved Video Accordion After Images
This commit is contained in:
parent
3b91f5edbd
commit
fb1fbfb873
|
|
@ -1053,7 +1053,7 @@ abstract class AbstractType
|
|||
/**
|
||||
* Get offers lines.
|
||||
*
|
||||
* @param array $customerGroupPrice
|
||||
* @param object $customerGroupPrice
|
||||
* @return array
|
||||
*/
|
||||
public function getOfferLines($customerGroupPrice)
|
||||
|
|
|
|||
|
|
@ -17,63 +17,65 @@ use Webkul\Product\Repositories\ProductVideoRepository;
|
|||
class Bundle extends AbstractType
|
||||
{
|
||||
/**
|
||||
* ProductBundleOptionRepository instance
|
||||
* Product bundle option repository instance.
|
||||
*
|
||||
* @var \Webkul\Product\Repositories\ProductBundleOptionRepository
|
||||
*/
|
||||
protected $productBundleOptionRepository;
|
||||
|
||||
/**
|
||||
* ProductBundleOptionProductRepository instance
|
||||
* Product bundle option product repository instance.
|
||||
*
|
||||
* @var \Webkul\Product\Repositories\ProductBundleOptionProductRepository
|
||||
*/
|
||||
protected $productBundleOptionProductRepository;
|
||||
|
||||
/**
|
||||
* Bundle Option helper instance
|
||||
* Bundle Option helper instance.
|
||||
*
|
||||
* @var \Webkul\Product\Helpers\BundleOption
|
||||
*/
|
||||
*/
|
||||
protected $bundleOptionHelper;
|
||||
|
||||
/**
|
||||
* Skip attribute for Bundle product type
|
||||
* Skip attribute for Bundle product type.
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
protected $skipAttributes = ['price', 'cost', 'special_price', 'special_price_from', 'special_price_to', 'length', 'width', 'height', 'weight'];
|
||||
|
||||
/**
|
||||
* These blade files will be included in product edit page
|
||||
* These blade files will be included in product edit page.
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
protected $additionalViews = [
|
||||
'admin::catalog.products.accordians.images',
|
||||
'admin::catalog.products.accordians.videos',
|
||||
'admin::catalog.products.accordians.categories',
|
||||
'admin::catalog.products.accordians.bundle-items',
|
||||
'admin::catalog.products.accordians.channels',
|
||||
'admin::catalog.products.accordians.product-links',
|
||||
'admin::catalog.products.accordians.videos',
|
||||
];
|
||||
|
||||
/**
|
||||
* Is a composite product type
|
||||
* Is a composite product type.
|
||||
*
|
||||
* @var bool
|
||||
*/
|
||||
protected $isComposite = true;
|
||||
|
||||
/**
|
||||
* Product children price can be calculated or not
|
||||
* Product children price can be calculated or not.
|
||||
*
|
||||
* @var bool
|
||||
*/
|
||||
protected $isChildrenCalculated = true;
|
||||
|
||||
/**
|
||||
* Product Options
|
||||
* Product options.
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
protected $productOptions = [];
|
||||
|
||||
|
|
@ -101,8 +103,7 @@ class Bundle extends AbstractType
|
|||
ProductBundleOptionProductRepository $productBundleOptionProductRepository,
|
||||
BundleOption $bundleOptionHelper,
|
||||
ProductVideoRepository $productVideoRepository
|
||||
)
|
||||
{
|
||||
) {
|
||||
parent::__construct(
|
||||
$attributeRepository,
|
||||
$productRepository,
|
||||
|
|
@ -120,12 +121,14 @@ class Bundle extends AbstractType
|
|||
}
|
||||
|
||||
/**
|
||||
* Update.
|
||||
*
|
||||
* @param array $data
|
||||
* @param int $id
|
||||
* @param string $attribute
|
||||
* @return \Webkul\Product\Contracts\Product
|
||||
*/
|
||||
public function update(array $data, $id, $attribute = "id")
|
||||
public function update(array $data, $id, $attribute = 'id')
|
||||
{
|
||||
$product = parent::update($data, $id, $attribute);
|
||||
$route = request()->route() ? request()->route()->getName() : '';
|
||||
|
|
@ -138,7 +141,7 @@ class Bundle extends AbstractType
|
|||
}
|
||||
|
||||
/**
|
||||
* Returns children ids
|
||||
* Returns children ids.
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
|
|
@ -148,7 +151,7 @@ class Bundle extends AbstractType
|
|||
}
|
||||
|
||||
/**
|
||||
* Check if catalog rule can be applied
|
||||
* Check if catalog rule can be applied.
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
|
|
@ -158,7 +161,7 @@ class Bundle extends AbstractType
|
|||
}
|
||||
|
||||
/**
|
||||
* Get product minimal price
|
||||
* Get product minimal price.
|
||||
*
|
||||
* @param int $qty
|
||||
* @return float
|
||||
|
|
@ -193,7 +196,7 @@ class Bundle extends AbstractType
|
|||
}
|
||||
|
||||
/**
|
||||
* Get product regular minimal price
|
||||
* Get product regular minimal price.
|
||||
*
|
||||
* @return float
|
||||
*/
|
||||
|
|
@ -227,7 +230,7 @@ class Bundle extends AbstractType
|
|||
}
|
||||
|
||||
/**
|
||||
* Get product regular minimal price
|
||||
* Get product regular minimal price.
|
||||
*
|
||||
* @param \Webkul\Product\Contracts\ProductBundleOption $option
|
||||
* @param bool $minPrice
|
||||
|
|
@ -243,17 +246,17 @@ class Bundle extends AbstractType
|
|||
}
|
||||
|
||||
$optionPrices[] = $bundleOptionProduct->qty
|
||||
* ($minPrice
|
||||
? $bundleOptionProduct->product->getTypeInstance()->getMinimalPrice()
|
||||
: $bundleOptionProduct->product->price
|
||||
);
|
||||
* ($minPrice
|
||||
? $bundleOptionProduct->product->getTypeInstance()->getMinimalPrice()
|
||||
: $bundleOptionProduct->product->price
|
||||
);
|
||||
}
|
||||
|
||||
return $optionPrices;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if product has required options or not
|
||||
* Check if product has required options or not.
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
|
|
@ -269,7 +272,7 @@ class Bundle extends AbstractType
|
|||
}
|
||||
|
||||
/**
|
||||
* Get product maximam price
|
||||
* Get product maximum price.
|
||||
*
|
||||
* @return float
|
||||
*/
|
||||
|
|
@ -306,7 +309,7 @@ class Bundle extends AbstractType
|
|||
}
|
||||
|
||||
/**
|
||||
* Get product regular maximam price
|
||||
* Get product regular maximum price.
|
||||
*
|
||||
* @return float
|
||||
*/
|
||||
|
|
@ -343,7 +346,7 @@ class Bundle extends AbstractType
|
|||
}
|
||||
|
||||
/**
|
||||
* Get product minimal price
|
||||
* Get product minimal price.
|
||||
*
|
||||
* @param int $qty
|
||||
* @return float
|
||||
|
|
@ -354,7 +357,7 @@ class Bundle extends AbstractType
|
|||
}
|
||||
|
||||
/**
|
||||
* Returns product prices
|
||||
* Returns product prices.
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
|
|
@ -369,10 +372,10 @@ class Bundle extends AbstractType
|
|||
'final_price' => [
|
||||
'price' => core()->convertPrice($this->evaluatePrice($this->getMinimalPrice())),
|
||||
'formated_price' => core()->currency($this->evaluatePrice($this->getMinimalPrice())),
|
||||
]
|
||||
],
|
||||
],
|
||||
|
||||
'to' => [
|
||||
'to' => [
|
||||
'regular_price' => [
|
||||
'price' => core()->convertPrice($this->evaluatePrice($this->getRegularMaximamPrice())),
|
||||
'formated_price' => core()->currency($this->evaluatePrice($this->getRegularMaximamPrice())),
|
||||
|
|
@ -380,13 +383,13 @@ class Bundle extends AbstractType
|
|||
'final_price' => [
|
||||
'price' => core()->convertPrice($this->evaluatePrice($this->getMaximamPrice())),
|
||||
'formated_price' => core()->currency($this->evaluatePrice($this->getMaximamPrice())),
|
||||
]
|
||||
]
|
||||
],
|
||||
],
|
||||
];
|
||||
}
|
||||
|
||||
/**
|
||||
* Get bundle product special price
|
||||
* Get bundle product special price.
|
||||
*
|
||||
* @return boolean
|
||||
*/
|
||||
|
|
@ -405,7 +408,7 @@ class Bundle extends AbstractType
|
|||
}
|
||||
|
||||
/**
|
||||
* Get product minimal price
|
||||
* Get product minimal price.
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
|
|
@ -415,19 +418,19 @@ class Bundle extends AbstractType
|
|||
|
||||
$priceHtml = '';
|
||||
|
||||
if ($this->checkBundleProductHaveSpecialPrice())
|
||||
if ($this->checkBundleProductHaveSpecialPrice()) {
|
||||
$priceHtml .= '<div class="sticker sale">' . trans('shop::app.products.sale') . '</div>';
|
||||
}
|
||||
|
||||
$priceHtml .= '<div class="price-from">';
|
||||
|
||||
if ($prices['from']['regular_price']['price'] != $prices['from']['final_price']['price']) {
|
||||
$priceHtml .= '<span class="bundle-regular-price">' . $prices['from']['regular_price']['formated_price'] . '</span>'
|
||||
. '<span class="bundle-special-price">' . $prices['from']['final_price']['formated_price'] . '</span>';
|
||||
. '<span class="bundle-special-price">' . $prices['from']['final_price']['formated_price'] . '</span>';
|
||||
} else {
|
||||
$priceHtml .= '<span>' . $prices['from']['regular_price']['formated_price'] . '</span>';
|
||||
}
|
||||
|
||||
|
||||
if ($prices['from']['regular_price']['price'] != $prices['to']['regular_price']['price']
|
||||
|| $prices['from']['final_price']['price'] != $prices['to']['final_price']['price']
|
||||
) {
|
||||
|
|
@ -435,7 +438,7 @@ class Bundle extends AbstractType
|
|||
|
||||
if ($prices['to']['regular_price']['price'] != $prices['to']['final_price']['price']) {
|
||||
$priceHtml .= '<span class="bundle-regular-price">' . $prices['to']['regular_price']['formated_price'] . '</span>'
|
||||
. '<span class="bundle-special-price">' . $prices['to']['final_price']['formated_price'] . '</span>';
|
||||
. '<span class="bundle-special-price">' . $prices['to']['final_price']['formated_price'] . '</span>';
|
||||
} else {
|
||||
$priceHtml .= '<span>' . $prices['to']['regular_price']['formated_price'] . '</span>';
|
||||
}
|
||||
|
|
@ -552,6 +555,7 @@ class Bundle extends AbstractType
|
|||
}
|
||||
|
||||
/**
|
||||
* Compare options.
|
||||
*
|
||||
* @param array $options1
|
||||
* @param array $options2
|
||||
|
|
@ -564,17 +568,20 @@ class Bundle extends AbstractType
|
|||
}
|
||||
|
||||
if (isset($options1['bundle_options']) && isset($options2['bundle_options'])) {
|
||||
return $options1['bundle_options'] == $options2['bundle_options']
|
||||
&& $options1['bundle_option_qty'] == $this->getOptionQuantities($options2);
|
||||
} elseif (! isset($options1['bundle_options'])) {
|
||||
return $options1['bundle_options'] == $options2['bundle_options'] && $options1['bundle_option_qty'] == $this->getOptionQuantities($options2);
|
||||
}
|
||||
|
||||
if (! isset($options1['bundle_options'])) {
|
||||
return false;
|
||||
} elseif (! isset($options2['bundle_options'])) {
|
||||
}
|
||||
|
||||
if (! isset($options2['bundle_options'])) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove invalid options from add to cart request
|
||||
* Remove invalid options from add to cart request.
|
||||
*
|
||||
* @param array $data
|
||||
* @return array
|
||||
|
|
@ -585,7 +592,7 @@ class Bundle extends AbstractType
|
|||
if (is_array($value)) {
|
||||
$data[$key] = $this->validateBundleOptionForCart($value);
|
||||
} elseif ($value && $value) {
|
||||
$data[$key] = (int)$value;
|
||||
$data[$key] = (int) $value;
|
||||
} else {
|
||||
unset($data[$key]);
|
||||
}
|
||||
|
|
@ -595,7 +602,7 @@ class Bundle extends AbstractType
|
|||
}
|
||||
|
||||
/**
|
||||
* Returns additional information for items
|
||||
* Returns additional information for items.
|
||||
*
|
||||
* @param array $data
|
||||
* @return array
|
||||
|
|
@ -628,7 +635,7 @@ class Bundle extends AbstractType
|
|||
$label = $qty . ' x ' . $optionProduct->product->name;
|
||||
|
||||
$price = $optionProduct->product->getTypeInstance()->getMinimalPrice();
|
||||
if($price != 0){
|
||||
if ($price != 0) {
|
||||
$label .= ' ' . core()->currency($price);
|
||||
}
|
||||
|
||||
|
|
@ -650,7 +657,7 @@ class Bundle extends AbstractType
|
|||
}
|
||||
|
||||
/**
|
||||
* Returns additional information for items
|
||||
* Returns additional information for items.
|
||||
*
|
||||
* @param array $data
|
||||
* @return array
|
||||
|
|
@ -681,10 +688,9 @@ class Bundle extends AbstractType
|
|||
}
|
||||
|
||||
/**
|
||||
* Validate cart item product price and other things
|
||||
*
|
||||
* @param \Webkul\Checkout\Models\CartItem $item
|
||||
* Validate cart item product price and other things.
|
||||
*
|
||||
* @param \Webkul\Checkout\Models\CartItem $item
|
||||
* @return \Webkul\Product\Datatypes\CartItemValidationResult
|
||||
*/
|
||||
public function validateCartItem(CartItem $item): CartItemValidationResult
|
||||
|
|
@ -732,17 +738,23 @@ class Bundle extends AbstractType
|
|||
}
|
||||
|
||||
/**
|
||||
* get product options
|
||||
* Get product options.
|
||||
*
|
||||
* @param object $product
|
||||
* @return mixed
|
||||
*/
|
||||
public function getProductOptions($product = "")
|
||||
public function getProductOptions($product = '')
|
||||
{
|
||||
$bundleOption = app('Webkul\Product\Helpers\BundleOption');
|
||||
|
||||
$options = $bundleOption->getProductOptions($product);
|
||||
|
||||
return $options;
|
||||
}
|
||||
|
||||
/**
|
||||
* Have sufficient quantity.
|
||||
*
|
||||
* @param int $qty
|
||||
* @return bool
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -33,11 +33,11 @@ class Configurable extends AbstractType
|
|||
*/
|
||||
protected $additionalViews = [
|
||||
'admin::catalog.products.accordians.images',
|
||||
'admin::catalog.products.accordians.videos',
|
||||
'admin::catalog.products.accordians.categories',
|
||||
'admin::catalog.products.accordians.variations',
|
||||
'admin::catalog.products.accordians.channels',
|
||||
'admin::catalog.products.accordians.product-links',
|
||||
'admin::catalog.products.accordians.videos',
|
||||
];
|
||||
|
||||
/**
|
||||
|
|
@ -347,7 +347,7 @@ class Configurable extends AbstractType
|
|||
* Fill required fields.
|
||||
*
|
||||
* @param array $data
|
||||
* @param int $id
|
||||
* @param int $id
|
||||
* @return \Webkul\Product\Contracts\Product
|
||||
*/
|
||||
public function fillRequiredFields(array $data): array
|
||||
|
|
@ -365,7 +365,7 @@ class Configurable extends AbstractType
|
|||
/**
|
||||
* Check variant option availability.
|
||||
*
|
||||
* @param array $data
|
||||
* @param array $data
|
||||
* @param \Webkul\Product\Contracts\Product $product
|
||||
* @return bool
|
||||
*/
|
||||
|
|
@ -653,9 +653,13 @@ class Configurable extends AbstractType
|
|||
|
||||
if (isset($options1['selected_configurable_option']) && isset($options2['selected_configurable_option'])) {
|
||||
return $options1['selected_configurable_option'] === $options2['selected_configurable_option'];
|
||||
} elseif (! isset($options1['selected_configurable_option'])) {
|
||||
}
|
||||
|
||||
if (! isset($options1['selected_configurable_option'])) {
|
||||
return false;
|
||||
} elseif (! isset($options2['selected_configurable_option'])) {
|
||||
}
|
||||
|
||||
if (! isset($options2['selected_configurable_option'])) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -16,56 +16,58 @@ use Webkul\Product\Repositories\ProductVideoRepository;
|
|||
class Downloadable extends AbstractType
|
||||
{
|
||||
/**
|
||||
* ProductDownloadableLinkRepository instance
|
||||
* Product downloadable link repository instance.
|
||||
*
|
||||
* @var \Webkul\Product\Repositories\ProductDownloadableLinkRepository
|
||||
*/
|
||||
protected $productDownloadableLinkRepository;
|
||||
|
||||
/**
|
||||
* ProductDownloadableSampleRepository instance
|
||||
* Product downloadable sample repository instance.
|
||||
*
|
||||
* @var \Webkul\Product\Repositories\ProductDownloadableSampleRepository
|
||||
*/
|
||||
protected $productDownloadableSampleRepository;
|
||||
|
||||
/**
|
||||
* Skip attribute for downloadable product type
|
||||
* Skip attribute for downloadable product type.
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
protected $skipAttributes = ['length', 'width', 'height', 'weight', 'guest_checkout'];
|
||||
|
||||
/**
|
||||
* These blade files will be included in product edit page
|
||||
* These blade files will be included in product edit page.
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
protected $additionalViews = [
|
||||
'admin::catalog.products.accordians.images',
|
||||
'admin::catalog.products.accordians.videos',
|
||||
'admin::catalog.products.accordians.categories',
|
||||
'admin::catalog.products.accordians.downloadable',
|
||||
'admin::catalog.products.accordians.channels',
|
||||
'admin::catalog.products.accordians.product-links',
|
||||
'admin::catalog.products.accordians.videos',
|
||||
];
|
||||
|
||||
/**
|
||||
* Is a stokable product type
|
||||
* Is a stokable product type.
|
||||
*
|
||||
* @var bool
|
||||
*/
|
||||
protected $isStockable = false;
|
||||
|
||||
/**
|
||||
* Show quantity box
|
||||
* Show quantity box.
|
||||
*
|
||||
* @var bool
|
||||
*/
|
||||
protected $allowMultipleQty = false;
|
||||
|
||||
/**
|
||||
* getProductOptions
|
||||
* Get product options.
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
protected $getProductOptions = [];
|
||||
|
||||
|
|
@ -80,7 +82,6 @@ class Downloadable extends AbstractType
|
|||
* @param \Webkul\Product\Repositories\ProductDownloadableLinkRepository $productDownloadableLinkRepository
|
||||
* @param \Webkul\Product\Repositories\ProductDownloadableSampleRepository $productDownloadableSampleRepository
|
||||
* @param \Webkul\Product\Repositories\ProductVideoRepository $productVideoRepository
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function __construct(
|
||||
|
|
@ -92,8 +93,7 @@ class Downloadable extends AbstractType
|
|||
ProductDownloadableLinkRepository $productDownloadableLinkRepository,
|
||||
ProductDownloadableSampleRepository $productDownloadableSampleRepository,
|
||||
ProductVideoRepository $productVideoRepository
|
||||
)
|
||||
{
|
||||
) {
|
||||
parent::__construct(
|
||||
$attributeRepository,
|
||||
$productRepository,
|
||||
|
|
@ -109,13 +109,14 @@ class Downloadable extends AbstractType
|
|||
}
|
||||
|
||||
/**
|
||||
* @param array $data
|
||||
* @param int $id
|
||||
* @param string $attribute
|
||||
* Update.
|
||||
*
|
||||
* @param array $data
|
||||
* @param int $id
|
||||
* @param string $attribute
|
||||
* @return \Webkul\Product\Contracts\Product
|
||||
*/
|
||||
public function update(array $data, $id, $attribute = "id")
|
||||
public function update(array $data, $id, $attribute = 'id')
|
||||
{
|
||||
$product = parent::update($data, $id, $attribute);
|
||||
$route = request()->route() ? request()->route()->getName() : '';
|
||||
|
|
@ -130,7 +131,7 @@ class Downloadable extends AbstractType
|
|||
}
|
||||
|
||||
/**
|
||||
* Return true if this product type is saleable
|
||||
* Return true if this product type is saleable.
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
|
|
@ -153,14 +154,13 @@ class Downloadable extends AbstractType
|
|||
}
|
||||
|
||||
/**
|
||||
* Returns validation rules
|
||||
* Returns validation rules.
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function getTypeValidationRules()
|
||||
{
|
||||
return [
|
||||
// 'downloadable_links.*.title' => 'required',
|
||||
'downloadable_links.*.type' => 'required',
|
||||
'downloadable_links.*.file' => 'required_if:type,==,file',
|
||||
'downloadable_links.*.file_name' => 'required_if:type,==,file',
|
||||
|
|
@ -173,8 +173,7 @@ class Downloadable extends AbstractType
|
|||
/**
|
||||
* Add product. Returns error message if can't prepare product.
|
||||
*
|
||||
* @param array $data
|
||||
*
|
||||
* @param array $data
|
||||
* @return array
|
||||
*/
|
||||
public function prepareForCart($data)
|
||||
|
|
@ -200,10 +199,10 @@ class Downloadable extends AbstractType
|
|||
}
|
||||
|
||||
/**
|
||||
* Compare options.
|
||||
*
|
||||
* @param array $options1
|
||||
* @param array $options2
|
||||
*
|
||||
* @param array $options1
|
||||
* @param array $options2
|
||||
* @return bool
|
||||
*/
|
||||
public function compareOptions($options1, $options2)
|
||||
|
|
@ -214,18 +213,21 @@ class Downloadable extends AbstractType
|
|||
|
||||
if (isset($options1['links']) && isset($options2['links'])) {
|
||||
return $options1['links'] === $options2['links'];
|
||||
} elseif (! isset($options1['links'])) {
|
||||
}
|
||||
|
||||
if (! isset($options1['links'])) {
|
||||
return false;
|
||||
} elseif (! isset($options2['links'])) {
|
||||
}
|
||||
|
||||
if (! isset($options2['links'])) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns additional information for items
|
||||
*
|
||||
* @param array $data
|
||||
* Returns additional information for items.
|
||||
*
|
||||
* @param array $data
|
||||
* @return array
|
||||
*/
|
||||
public function getAdditionalOptions($data)
|
||||
|
|
@ -250,8 +252,7 @@ class Downloadable extends AbstractType
|
|||
/**
|
||||
* Validate cart item product price
|
||||
*
|
||||
* @param \Webkul\Checkout\Models\CartItem $item
|
||||
*
|
||||
* @param \Webkul\Checkout\Models\CartItem $item
|
||||
* @return \Webkul\Product\Datatypes\CartItemValidationResult
|
||||
*/
|
||||
public function validateCartItem(CartItem $item): CartItemValidationResult
|
||||
|
|
@ -292,7 +293,7 @@ class Downloadable extends AbstractType
|
|||
}
|
||||
|
||||
/**
|
||||
* Get product maximam price
|
||||
* Get product maximum price
|
||||
*
|
||||
* @return float
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -34,11 +34,11 @@ class Grouped extends AbstractType
|
|||
*/
|
||||
protected $additionalViews = [
|
||||
'admin::catalog.products.accordians.images',
|
||||
'admin::catalog.products.accordians.videos',
|
||||
'admin::catalog.products.accordians.categories',
|
||||
'admin::catalog.products.accordians.grouped-products',
|
||||
'admin::catalog.products.accordians.channels',
|
||||
'admin::catalog.products.accordians.product-links',
|
||||
'admin::catalog.products.accordians.videos',
|
||||
];
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -5,17 +5,17 @@ namespace Webkul\Product\Type;
|
|||
class Simple extends AbstractType
|
||||
{
|
||||
/**
|
||||
* These blade files will be included in product edit page
|
||||
* These blade files will be included in product edit page.
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
protected $additionalViews = [
|
||||
'admin::catalog.products.accordians.inventories',
|
||||
'admin::catalog.products.accordians.images',
|
||||
'admin::catalog.products.accordians.videos',
|
||||
'admin::catalog.products.accordians.categories',
|
||||
'admin::catalog.products.accordians.channels',
|
||||
'admin::catalog.products.accordians.product-links',
|
||||
'admin::catalog.products.accordians.videos',
|
||||
];
|
||||
|
||||
/**
|
||||
|
|
@ -52,6 +52,8 @@ class Simple extends AbstractType
|
|||
}
|
||||
|
||||
/**
|
||||
* Have sufficient quantity.
|
||||
*
|
||||
* @param int $qty
|
||||
* @return bool
|
||||
*/
|
||||
|
|
@ -59,13 +61,13 @@ class Simple extends AbstractType
|
|||
{
|
||||
$backorders = core()->getConfigData('catalog.inventory.stock_options.backorders');
|
||||
|
||||
$backorders = ! is_null ($backorders) ? $backorders : false;
|
||||
$backorders = ! is_null($backorders) ? $backorders : false;
|
||||
|
||||
return $qty <= $this->totalQuantity() ? true : $backorders;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get product maximam price
|
||||
* Get product maximum price.
|
||||
*
|
||||
* @return float
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -5,42 +5,42 @@ namespace Webkul\Product\Type;
|
|||
class Virtual extends AbstractType
|
||||
{
|
||||
/**
|
||||
* Skip attribute for virtual product type
|
||||
* Skip attribute for virtual product type.
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
protected $skipAttributes = ['length', 'width', 'height', 'weight'];
|
||||
|
||||
/**
|
||||
* These blade files will be included in product edit page
|
||||
* These blade files will be included in product edit page.
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
protected $additionalViews = [
|
||||
'admin::catalog.products.accordians.inventories',
|
||||
'admin::catalog.products.accordians.images',
|
||||
'admin::catalog.products.accordians.videos',
|
||||
'admin::catalog.products.accordians.categories',
|
||||
'admin::catalog.products.accordians.channels',
|
||||
'admin::catalog.products.accordians.product-links',
|
||||
'admin::catalog.products.accordians.videos',
|
||||
];
|
||||
|
||||
/**
|
||||
* Is a stokable product type
|
||||
* Is a stokable product type.
|
||||
*
|
||||
* @var bool
|
||||
*/
|
||||
protected $isStockable = false;
|
||||
|
||||
/**
|
||||
* Show quantity box
|
||||
* Show quantity box.
|
||||
*
|
||||
* @var bool
|
||||
*/
|
||||
protected $showQuantityBox = true;
|
||||
|
||||
/**
|
||||
* Return true if this product type is saleable
|
||||
* Return true if this product type is saleable.
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
|
|
@ -63,8 +63,9 @@ class Virtual extends AbstractType
|
|||
}
|
||||
|
||||
/**
|
||||
* @param int $qty
|
||||
* Have sufficient quantity.
|
||||
*
|
||||
* @param int $qty
|
||||
* @return bool
|
||||
*/
|
||||
public function haveSufficientQuantity(int $qty): bool
|
||||
|
|
@ -73,7 +74,7 @@ class Virtual extends AbstractType
|
|||
}
|
||||
|
||||
/**
|
||||
* Get product maximam price
|
||||
* Get product maximum price.
|
||||
*
|
||||
* @return float
|
||||
*/
|
||||
|
|
|
|||
Loading…
Reference in New Issue