PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 3.22.2
GiveWP – Donation Plugin and Fundraising Platform v3.22.2
4.16.3 4.16.2 4.16.1 4.16.0 4.15.5 4.15.4 4.15.3 4.15.2 4.15.1 4.15.0 2.3.0 2.3.1 2.3.2 2.30.0 2.31.0 2.31.1 2.32.0 2.33.0 2.33.1 2.33.2 2.33.3 2.33.4 2.33.5 2.4.0 2.4.1 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 2.4.7 2.5.0 2.5.1 2.5.10 2.5.11 2.5.12 2.5.13 2.5.2 2.5.3 2.5.4 2.5.5 2.5.6 2.5.7 2.5.8 2.5.9 2.6.0 2.6.1 2.6.2 2.6.3 2.7.0 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.8.0 2.8.1 2.9.0 2.9.1 2.9.2 2.9.3 2.9.4 2.9.5 2.9.6 2.9.7 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.1.0 3.1.1 3.1.2 3.10.0 3.11.0 3.12.0 3.12.1 3.12.2 3.12.3 3.13.0 3.14.0 3.14.1 3.14.2 3.15.0 3.15.1 3.16.0 3.16.1 3.16.2 3.16.3 3.16.4 3.16.5 3.17.0 3.17.1 3.17.2 3.18.0 3.19.0 3.19.1 3.19.2 3.19.3 3.19.4 3.2.0 3.2.1 3.2.2 3.20.0 3.21.0 3.21.1 3.22.0 3.22.1 3.22.2 3.3.0 3.3.1 3.4.0 3.4.1 3.4.2 3.5.0 3.5.1 3.6.0 3.6.1 3.6.2 3.7.0 3.8.0 3.9.0 4.0.0 4.1.0 4.1.1 4.10.0 4.10.1 4.11.0 4.12.0 4.13.0 4.13.1 4.13.2 4.14.0 4.14.1 4.14.2 4.14.3 4.14.4 4.14.5 4.14.6 4.2.0 4.2.1 4.3.0 4.3.1 4.3.2 4.4.0 4.5.0 4.6.1 4.7.0 4.7.1 4.8.0 4.8.1 4.9.0 trunk 1.9.0 2.0.0 2.0.1 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.10.0 2.10.1 2.10.2 2.10.3 2.10.4 2.11.0 2.11.1 2.11.2 2.11.3 2.12.0 2.12.1 2.12.2 2.12.3 2.13.0 2.13.1 2.13.2 2.13.3 2.13.4 2.14.0 2.15.0 2.16.0 2.16.1 2.17.0 2.17.1 2.17.3 2.18.0 2.18.1 2.19.1 2.19.2 2.19.3 2.19.4 2.19.5 2.19.6 2.19.7 2.19.8 2.2.0 2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.6 2.20.0 2.20.1 2.20.2 2.21.0 2.21.1 2.21.2 2.21.3 2.21.4 2.22.0 2.22.1 2.22.2 2.22.3 2.23.0 2.23.1 2.23.2 2.24.0 2.24.1 2.24.2 2.25.0 2.25.1 2.25.2 2.25.3 2.26.0 2.27.0 2.27.1 2.27.2 2.27.3 2.28.0 2.29.0 2.29.1 2.29.2
give / src / FormBuilder / FormBuilderRouteBuilder.php
give / src / FormBuilder Last commit date
Actions 2 years ago BlockModels 2 years ago BlockTypes 1 year ago Controllers 1 year ago DataTransferObjects 2 years ago EmailPreview 2 years ago Routes 1 year ago ValueObjects 2 years ago ViewModels 1 year ago resources 1 year ago FormBuilderRouteBuilder.php 1 year ago ServiceProvider.php 1 year ago
FormBuilderRouteBuilder.php
85 lines
1 <?php
2
3 namespace Give\FormBuilder;
4
5 use Give\Helpers\Language;
6
7 class FormBuilderRouteBuilder
8 {
9 const SLUG = 'givewp-form-builder';
10
11 /**
12 * @var int|string
13 */
14 protected $donationFormID;
15
16 /**
17 * @var string
18 */
19 protected $locale;
20
21 /**
22 * @since 3.22.0 Add locale support
23 * @since 3.0.0
24 *
25 * @param int|string $donationFormID
26 */
27 protected function __construct($donationFormID, string $locale = '')
28 {
29 $this->donationFormID = $donationFormID;
30 $this->locale = ! empty($locale) ? $locale : Language::getLocale();
31 }
32
33 /**
34 * @since 3.22.0 Add locale support
35 * @since 3.0.0
36 */
37 public static function makeCreateFormRoute(string $locale = ''): self
38 {
39 // @todo Refactor create route so as not to mix types for $donationFormID.
40 return new self('new', $locale);
41 }
42
43 /**
44 * @since 3.22.0 Add locale support
45 * @since 3.0.0
46 */
47 public static function makeEditFormRoute(int $donationFormID, string $locale = ''): self
48 {
49 return new self($donationFormID, $locale);
50 }
51
52 /**
53 * @since 3.0.0
54 */
55 public function __toString()
56 {
57 return $this->getUrl();
58 }
59
60 /**
61 * @since 3.22.0 Add locale support
62 * @since 3.0.0
63 */
64 public function getUrl(): string
65 {
66 return add_query_arg(
67 [
68 'post_type' => 'give_forms',
69 'page' => self::SLUG,
70 'donationFormID' => $this->donationFormID,
71 'locale' => $this->locale,
72 ],
73 admin_url('edit.php')
74 );
75 }
76
77 /**
78 * @since 3.0.0
79 */
80 public static function isRoute(): bool
81 {
82 return isset($_GET['post_type'], $_GET['page']) && $_GET['post_type'] === 'give_forms' && $_GET['page'] === self::SLUG;
83 }
84 }
85