for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace hiqdev\yii2\cart;
use yii\base\Widget;
use hiqdev\yii2\cart\ShoppingCart;
use Yii;
abstract class RelatedPosition implements RelatedPositionInterface
{
/** @var Widget */
public $widget;
/** @var CartPositionInterface */
public $mainPosition;
/** @var ShoppingCart */
public $cart;
public function __construct(ShoppingCart $cart, CartPositionInterface $mainPosition)
$this->cart = $cart;
$this->mainPosition = $mainPosition;
}
/** @inheritDoc */
public function setWidget($className, array $params = []): RelatedPositionInterface
$this->widget = Yii::createObject(array_merge($params, [
'class' => $className,
'relatedPosition' => $this->getRelatedPosition(),
'mainPosition' => $this->mainPosition,
'cart' => $this->cart,
]));
return $this;
public function render(): string
return $this->widget->run();