Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
…k-in-stock into craft-5

# Conflicts:
#	CHANGELOG.md
#	composer.json
  • Loading branch information
engram-design committed Nov 19, 2024
2 parents d02a077 + 2d4b756 commit 14e332a
Show file tree
Hide file tree
Showing 4 changed files with 31 additions and 3 deletions.
14 changes: 14 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,20 @@
- Now requires Craft 5.0+.
- Now requires Craft Commerce 5.0+.

## 3.0.2 - 2024-11-20

### Added
- Logs are now sortable.
- Logs can be searched.
- Logs are now lazy-loaded for performance.

### Changed
- Logs are now paginated.
- Logs are now listed newest first by default.

### Fixed
- Fix an error where checks for out of stock variants were being performed on unsaved variants.

## 3.0.1 - 2024-11-08

### Fixed
Expand Down
2 changes: 1 addition & 1 deletion src/BackInStock.php
Original file line number Diff line number Diff line change
Expand Up @@ -120,7 +120,7 @@ private function _registerCraftEventListeners(): void
Event::on(Variant::class, Variant::EVENT_BEFORE_SAVE, function(ModelEvent $event) {
$variant = $event->sender;

if ($variant->stock > 0 || $variant->hasUnlimitedStock) {
if ($variant->id && ($variant->stock > 0 || $variant->hasUnlimitedStock)) {
$this->getService()->isBackInStock($variant);
}
});
Expand Down
8 changes: 6 additions & 2 deletions src/models/Log.php
Original file line number Diff line number Diff line change
Expand Up @@ -45,9 +45,13 @@ public function defineRules(): array
return $rules;
}

public function getVariant(): Variant
public function getVariant(): ?Variant
{
return Variant::findOne($this->variantId);
if ($this->variantId) {
return Variant::findOne($this->variantId);
}

return null;
}

public function validateVariant(string $attribute, ?array $params, InlineValidator $validator): void
Expand Down
10 changes: 10 additions & 0 deletions src/services/Service.php
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,16 @@ public function sendMail(LogRecord $log, string $subject, ?string $templatePath
$view->setTemplateMode($view::TEMPLATE_MODE_SITE);
}

if (!$log->variantId) {
$error = Craft::t('craft-commerce-back-in-stock', 'Could not find Variant for Back In Stock Notification email.');

BackInStock::error($error);

$view->setTemplateMode($oldTemplateMode);

return false;
}

$variant = Variant::findOne($log->variantId);

if (!$variant) {
Expand Down

0 comments on commit 14e332a

Please sign in to comment.