<?php
+
namespace wcf\data\paid\subscription;
+
use wcf\data\AbstractDatabaseObjectAction;
use wcf\data\IToggleAction;
use wcf\data\TDatabaseObjectToggle;
/**
* Executes paid subscription-related actions.
- *
- * @author Marcel Werk
- * @copyright 2001-2019 WoltLab GmbH
- * @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
- * @package WoltLabSuite\Core\Data\Paid\Subscription
- *
- * @method PaidSubscriptionEditor[] getObjects()
- * @method PaidSubscriptionEditor getSingleObject()
+ *
+ * @author Marcel Werk
+ * @copyright 2001-2019 WoltLab GmbH
+ * @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
+ * @package WoltLabSuite\Core\Data\Paid\Subscription
+ *
+ * @method PaidSubscriptionEditor[] getObjects()
+ * @method PaidSubscriptionEditor getSingleObject()
*/
-class PaidSubscriptionAction extends AbstractDatabaseObjectAction implements IToggleAction {
- use TDatabaseObjectToggle;
-
- /**
- * @inheritDoc
- */
- protected $permissionsDelete = ['admin.paidSubscription.canManageSubscription'];
-
- /**
- * @inheritDoc
- */
- protected $permissionsUpdate = ['admin.paidSubscription.canManageSubscription'];
-
- /**
- * @inheritDoc
- */
- protected $requireACP = ['create', 'delete', 'toggle', 'update'];
-
- /**
- * @inheritDoc
- * @return PaidSubscription
- */
- public function create() {
- $showOrder = 0;
- if (isset($this->parameters['data']['showOrder'])) {
- $showOrder = $this->parameters['data']['showOrder'];
- unset($this->parameters['data']['showOrder']);
- }
-
- /** @var PaidSubscription $subscription */
- $subscription = parent::create();
- $editor = new PaidSubscriptionEditor($subscription);
- $editor->setShowOrder($showOrder);
-
- return new PaidSubscription($subscription->subscriptionID);
- }
-
- /**
- * @inheritDoc
- */
- public function update() {
- parent::update();
-
- if (count($this->objects) == 1 && isset($this->parameters['data']['showOrder']) && $this->parameters['data']['showOrder'] != reset($this->objects)->showOrder) {
- reset($this->objects)->setShowOrder($this->parameters['data']['showOrder']);
- }
- }
+class PaidSubscriptionAction extends AbstractDatabaseObjectAction implements IToggleAction
+{
+ use TDatabaseObjectToggle;
+
+ /**
+ * @inheritDoc
+ */
+ protected $permissionsDelete = ['admin.paidSubscription.canManageSubscription'];
+
+ /**
+ * @inheritDoc
+ */
+ protected $permissionsUpdate = ['admin.paidSubscription.canManageSubscription'];
+
+ /**
+ * @inheritDoc
+ */
+ protected $requireACP = ['create', 'delete', 'toggle', 'update'];
+
+ /**
+ * @inheritDoc
+ * @return PaidSubscription
+ */
+ public function create()
+ {
+ $showOrder = 0;
+ if (isset($this->parameters['data']['showOrder'])) {
+ $showOrder = $this->parameters['data']['showOrder'];
+ unset($this->parameters['data']['showOrder']);
+ }
+
+ /** @var PaidSubscription $subscription */
+ $subscription = parent::create();
+ $editor = new PaidSubscriptionEditor($subscription);
+ $editor->setShowOrder($showOrder);
+
+ return new PaidSubscription($subscription->subscriptionID);
+ }
+
+ /**
+ * @inheritDoc
+ */
+ public function update()
+ {
+ parent::update();
+
+ if (
+ \count($this->objects) == 1
+ && isset($this->parameters['data']['showOrder'])
+ && $this->parameters['data']['showOrder'] != \reset($this->objects)->showOrder
+ ) {
+ \reset($this->objects)->setShowOrder($this->parameters['data']['showOrder']);
+ }
+ }
}