PluginProbe
FluentBoards – Project Management, Task Management, Goal Tracking, Kanban Board, and, Team Collaboration / 1.31
FluentBoards – Project Management, Task Management, Goal Tracking, Kanban Board, and, Team Collaboration v1.31
2.1.0 2.0.15 2.0.12 2.0.10 2.0.4 2.0.1 2.0.0 1.95.3 1.95.2 1.95 1.91.6 trunk 1.11 1.12 1.13 1.20 1.21 1.22 1.23 1.30 1.31 1.32 1.35 1.40 1.41 All 42 releases
fluent-boards / vendor / wpfluent / framework / src / WPFluent / Support / Conditionable.php

Conditionable.php in FluentBoards – Project Management, Task Management, Goal Tracking, Kanban Board, and, Team Collaboration 1.31, at vendor/wpfluent/framework/src/WPFluent/Support/Conditionable.php

49 lines 1.0 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace FluentBoards\Framework\Support;
4
5 trait Conditionable
6 {
7 /**
8 * Apply the callback if the given "value" is truthy.
9 *
10 * @param mixed $value
11 * @param callable $callback
12 * @param callable|null $default
13 * @return $this|mixed
14 */
15 public function when($value, $callback, $default = null)
16 {
17 if ($value) {
18 return $callback($this, $value) ?: $this;
19 }
20
21 if ($default) {
22 return $default($this, $value) ?: $this;
23 }
24
25 return $this;
26 }
27
28 /**
29 * Apply the callback if the given "value" is falsy.
30 *
31 * @param mixed $value
32 * @param callable $callback
33 * @param callable|null $default
34 * @return $this|mixed
35 */
36 public function unless($value, $callback, $default = null)
37 {
38 if (! $value) {
39 return $callback($this, $value) ?: $this;
40 }
41
42 if ($default) {
43 return $default($this, $value) ?: $this;
44 }
45
46 return $this;
47 }
48 }
49