<?php
namespace DrupalmymodAccess;
use DrupalCoreRoutingAccessAccessInterface;
use DrupalCoreAccessAccessResult;
use DrupalmymodStoreService;
class CardEditAccessChecker implements AccessInterface {
// injected StoreService
private $ss = NULL;
public function __construct(StoreService $ss) {
$this->ss = $ss;
}
public function access($product_id) {
// marketplace manager can edit all...
if ($this->ss->isMarketPlaceManager()) {
return AccessResult::allowed();
}
// product owner can edit...
if ($this->ss->ownsProduct($product_id)) {
return AccessResult::allowed();
}
return AccessResult::forbidden();
}
}