PluginProbe
Fluent Booking – The Ultimate Appointments Scheduling, Events Booking, Events Calendar Solution / 1.5.21
Fluent Booking – The Ultimate Appointments Scheduling, Events Booking, Events Calendar Solution v1.5.21
2.4.0 2.3.0 2.2.5 2.2.0 2.1.2 2.1.1 trunk 1.10.0 1.10.01 1.10.02 1.5.0 1.5.01 1.5.02 1.5.1 1.5.10 1.5.20 1.5.21 1.5.22 1.5.23 1.5.24 1.5.25 1.6.0 1.7.0 1.7.1 1.7.2 All 33 releases
fluent-booking / vendor / wpfluent / framework / src / WPFluent / Support / Conditionable.php

Conditionable.php in Fluent Booking – The Ultimate Appointments Scheduling, Events Booking, Events Calendar Solution 1.5.21, 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 FluentBooking\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