PluginProbe ʕ •ᴥ•ʔ
Advanced Ads – Ad Manager & AdSense / 2.0.24
Advanced Ads – Ad Manager & AdSense v2.0.24
2.0.24 2.0.23 2.0.22 2.0.21 1.38.0 1.39.0 1.39.1 1.39.2 1.39.3 1.39.4 1.4.0 1.4.1 1.4.2 1.4.3 1.4.4 1.4.5 1.4.6 1.4.7 1.4.8 1.4.9 1.40.0 1.40.1 1.40.2 1.41.0 1.42.0 1.42.1 1.42.2 1.43.0 1.44.0 1.44.1 1.45.0 1.45.1 1.46.0 1.47.0 1.47.1 1.47.2 1.47.3 1.47.4 1.47.5 1.48.0 1.48.1 1.49.0 1.5.0 1.5.0.1 1.5.1 1.5.2 1.5.2.1 1.5.4 1.5.4.1 1.5.5 1.50.0 1.51.0 1.51.1 1.51.2 1.51.3 1.52.0 1.52.1 1.52.2 1.52.3 1.52.4 1.53.0 1.53.1 1.53.2 1.54.0 1.54.1 1.55.0 1.56.0 1.56.1 1.56.2 1.56.3 1.56.4 1.6 1.6.1 1.6.10 1.6.10.1 1.6.10.2 1.6.11 1.6.11.1 1.6.12 1.6.13 1.6.14 1.6.15 1.6.16 1.6.17 1.6.17.1 1.6.17.2 1.6.2 1.6.2.1 1.6.3 1.6.4 1.6.4.1 1.6.5 1.6.6 1.6.6.1 1.6.7 1.6.7.1 1.6.8 1.6.8.1 1.6.8.2 1.6.8.3 1.6.9 1.6.9.1 1.6.9.2 1.6.9.3 1.6.9.4 1.7 1.7.0.1 1.7.0.2 1.7.0.3 1.7.1 1.7.1.1 1.7.1.2 1.7.1.3 1.7.1.4 1.7.1.5 1.7.10 trunk 1.7.11 1.0.1 1.7.12 1.0.2 1.7.13 1.0.3 1.7.14 1.1.0 1.7.15 1.1.1 1.7.16 1.1.2 1.7.17 1.1.3 1.7.18 1.10 1.7.19 1.10.1 1.7.2 1.10.10 1.7.2.1 1.10.11 1.7.20 1.10.12 1.7.21 1.10.2 1.7.22 1.10.3 1.7.23 1.10.4 1.7.24 1.10.5 1.7.25 1.10.6 1.7.3 1.10.7 1.7.4 1.10.8 1.7.4.1 1.10.9 1.7.4.2 1.11 1.7.4.3 1.11.1 1.7.4.4 1.11.2 1.7.4.5 1.12 1.7.5 1.13 1.7.5.1 1.13.1 1.7.6 1.13.2 1.7.7 1.13.3 1.7.8 1.13.4 1.7.9 1.13.5 1.7.9.1 1.13.6 1.7.9.2 1.13.7 1.7.9.3 1.13.8 1.8 1.14 1.8.1 1.14.1 1.8.10 1.14.10 1.8.11 1.14.11 1.8.12 1.14.2 1.8.13 1.14.3 1.8.14 1.14.4 1.8.15 1.14.5 1.8.16 1.14.6 1.8.17 1.14.7 1.8.18 1.14.8 1.8.19 1.14.9 1.8.2 1.15 1.8.20 1.16 1.8.21 1.16.1 1.8.22 1.17 1.8.23 1.17.1 1.8.24 1.17.10 1.8.25 1.17.10-rc.1 1.8.26 1.17.11 1.8.27 1.17.12 1.8.28 1.17.12-rc.1 1.8.29 1.17.2 1.8.3 1.17.3 1.8.30 1.17.4 1.8.4 1.17.5 1.8.5 1.17.6 1.8.6 1.17.7 1.8.7 1.17.8 1.8.8 1.17.9 1.8.9 1.17.9-beta.1 1.9 1.18.0 2.0.0 1.19.0 2.0.1 1.19.1 2.0.10 1.2 2.0.11 1.2.1 2.0.12 1.2.2 2.0.13 1.2.3 2.0.14 1.2.4 2.0.15 1.2.5 2.0.16 1.2.6 2.0.17 1.2.7 2.0.18 1.20.0 2.0.19 1.20.0-rc.1 2.0.2 1.20.0-rc.2 2.0.20 1.20.1 2.0.3 1.20.2 2.0.4 1.20.3 2.0.5 1.21.0 2.0.6 1.21.1 2.0.7 1.22.0 2.0.8 1.22.1 2.0.9 1.22.2 1.23.0 1.23.1 1.23.2 1.24.0 1.24.1 1.24.2 1.25.0 1.25.1 1.26.0 1.27.0 1.28.0 1.29.0 1.29.1 1.3 1.3.1 1.3.10 1.3.11 1.3.12 1.3.13 1.3.14 1.3.15 1.3.16 1.3.17 1.3.18 1.3.2 1.3.3 1.3.4 1.3.5 1.3.6 1.3.7 1.3.8 1.3.9 1.30.0 1.30.1 1.30.2 1.30.2-rc.1 1.30.3 1.30.4 1.30.4-rc.1 1.30.5 1.31.0 1.31.1 1.32.0 1.32.0-rc.1 1.33.0 1.33.1 1.33.2 1.34.0 1.35.0 1.35.1 1.36.0 1.36.1 1.36.2 1.36.3 1.37.0 1.37.1 1.37.2
advanced-ads / includes / class-modal.php
advanced-ads / includes Last commit date
abstracts 1 day ago admin 1 week ago ads 1 week ago compatibility 1 week ago crons 1 week ago frontend 1 week ago groups 1 day ago importers 1 day ago installation 1 year ago interfaces 5 months ago license 3 months ago placements 1 week ago rest 1 day ago traits 1 week ago utilities 1 week ago cap_map.php 3 years ago class-assets-registry.php 4 weeks ago class-autoloader.php 1 week ago class-cache-invalidator.php 1 week ago class-constants.php 1 year ago class-content-injector.php 4 weeks ago class-entities.php 3 months ago class-modal.php 1 year ago class-modules.php 1 year ago class-options.php 1 year ago class-plugin.php 1 week ago class-post-data.php 10 months ago class-shortcodes.php 1 week ago class-upgrades.php 1 day ago class-widget.php 11 months ago default-hooks.php 5 months ago functions-ad.php 1 week ago functions-components.php 3 months ago functions-conditional.php 1 year ago functions-core.php 1 year ago functions-group.php 1 day ago functions-placement.php 1 week ago functions.php 1 week ago index.php 2 years ago load_modules.php 2 years ago
class-modal.php
107 lines
1 <?php
2 /**
3 * Modal.
4 *
5 * @package AdvancedAds
6 * @author Advanced Ads <info@wpadvancedads.com>
7 * @since 1.50.0
8 */
9
10 namespace AdvancedAds;
11
12 defined( 'ABSPATH' ) || exit;
13
14 /**
15 * Modal.
16 */
17 class Modal {
18 /**
19 * Default values for the view file.
20 *
21 * @var array
22 */
23 private $view_arguments = [
24 'modal_slug' => '',
25 'modal_content' => '',
26 'modal_title' => '',
27 'cancel_action' => true,
28 'close_action' => '',
29 'close_form' => '',
30 'close_validation' => '',
31 'template' => '',
32 'dismiss_button_styling' => '',
33 'container_styling' => '',
34 'background_styling' => '',
35 ];
36
37 /**
38 * Create modal.
39 *
40 * @param array $arguments The passed view arguments, overwriting the default values.
41 * @param bool $render Whether to render the modal from the constructor. Defaults to true.
42 *
43 * @return Modal
44 */
45 public static function create( array $arguments, $render = true ) {
46 return new Modal( $arguments, $render );
47 }
48
49 /**
50 * Create modal from file.
51 *
52 * @param array $arguments The passed view arguments, overwriting the default values.
53 * @param string $file File path to include content from.
54 * @param bool $render Whether to render the modal from the constructor. Defaults to true.
55 *
56 * @return Modal
57 */
58 public static function create_from_file( array $arguments, $file, $render = true ) {
59 ob_start();
60 require $file;
61
62 $arguments['modal_content'] = ob_get_clean();
63
64 return new Modal( $arguments, $render );
65 }
66
67 /**
68 * Modal constructor.
69 *
70 * @param array $arguments The passed view arguments, overwriting the default values.
71 * @param bool $render Whether to render the modal from the constructor. Defaults to true.
72 */
73 public function __construct( array $arguments, $render = true ) {
74 $this->view_arguments = array_intersect_key(
75 wp_parse_args(
76 array_map(
77 function ( $value ) {
78 return (string) $value;
79 },
80 $arguments
81 ),
82 $this->view_arguments
83 ),
84 $this->view_arguments
85 );
86
87 if ( $render ) {
88 $this->render();
89 }
90 }
91
92 /**
93 * Render the modal.
94 *
95 * @return void
96 */
97 public function render() {
98 extract( $this->view_arguments, EXTR_OVERWRITE ); // phpcs:ignore WordPress.PHP.DontExtract.extract_extract
99
100 $file = '' !== $this->view_arguments['template']
101 ? $this->view_arguments['template']
102 : ADVADS_ABSPATH . 'admin/views/modal.php';
103
104 require $file;
105 }
106 }
107