PluginProbe
Depicter — Popup & Slider Builder / 1.6.2
Depicter — Popup & Slider Builder v1.6.2
4.8.1 trunk 1.0.0 1.1.0 1.1.2 1.1.4 1.1.6 1.1.7 1.1.8 1.1.9 1.2.0 1.3.0 1.3.1 1.3.2 1.3.3 1.3.5 1.3.8 1.5.0 1.5.1 1.5.2 1.5.5 1.6.0 1.6.1 1.6.2 1.7.0 All 76 releases
depicter / vendor / htmlburger / wpemerge / src / Routing / Conditions / MultipleCondition.php

MultipleCondition.php in Depicter — Popup & Slider Builder 1.6.2, at vendor/htmlburger/wpemerge/src/Routing/Conditions/MultipleCondition.php

70 lines 1.4 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * @package WPEmerge
4 * @author Atanas Angelov <[email protected]>
5 * @copyright 2017-2019 Atanas Angelov
6 * @license https://www.gnu.org/licenses/gpl-2.0.html GPL-2.0
7 * @link https://wpemerge.com/
8 */
9
10 namespace WPEmerge\Routing\Conditions;
11
12 use WPEmerge\Requests\RequestInterface;
13
14 /**
15 * Check against an array of conditions in an AND logical relationship.
16 */
17 class MultipleCondition implements ConditionInterface {
18 /**
19 * Array of conditions to check.
20 *
21 * @var ConditionInterface[]
22 */
23 protected $conditions = [];
24
25 /**
26 * Constructor.
27 *
28 * @codeCoverageIgnore
29 * @param ConditionInterface[] $conditions
30 */
31 public function __construct( $conditions ) {
32 $this->conditions = $conditions;
33 }
34
35 /**
36 * Get all assigned conditions
37 *
38 * @codeCoverageIgnore
39 * @return ConditionInterface[]
40 */
41 public function getConditions() {
42 return $this->conditions;
43 }
44
45 /**
46 * {@inheritDoc}
47 */
48 public function isSatisfied( RequestInterface $request ) {
49 foreach ( $this->conditions as $condition ) {
50 if ( ! $condition->isSatisfied( $request ) ) {
51 return false;
52 }
53 }
54 return true;
55 }
56
57 /**
58 * {@inheritDoc}
59 */
60 public function getArguments( RequestInterface $request ) {
61 $arguments = [];
62
63 foreach ( $this->conditions as $condition ) {
64 $arguments = array_merge( $arguments, $condition->getArguments( $request ) );
65 }
66
67 return $arguments;
68 }
69 }
70