PHP code example of tmonier / sylius-channel-access-plugin
1. Go to this page and download the library: Download tmonier/sylius-channel-access-plugin library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
tmonier / sylius-channel-access-plugin example snippets
use Doctrine\ORM\Mapping as ORM;
use Sylius\Component\Core\Model\Channel as BaseChannel;
use Tmonier\SyliusChannelAccessPlugin\Entity\Channel\AccessModeAwareInterface;
use Tmonier\SyliusChannelAccessPlugin\Entity\Channel\AccessModeTrait;
#[ORM\Entity]
#[ORM\Table(name: 'sylius_channel')]
class Channel extends BaseChannel implements AccessModeAwareInterface
{
use AccessModeTrait;
}
enum AccessMode: string { case Open = 'open'; case PricesHidden = 'prices_hidden'; case Closed = 'closed'; }
interface AccessModeResolverInterface
{
public function modeOf(ChannelInterface $channel): AccessMode;
public function currentMode(): AccessMode; // channel of the current HTTP request; Open without request, Closed without channel
public function isVisitorSignedIn(): bool; // the token holds a Sylius user (customer or administrator)
public function canSeeCatalog(): bool; // false: anonymous visitor of a closed channel
public function canSeePrices(): bool; // false: anonymous visitor of a channel that is not open
}
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.