Passed
Push — feature/rebusify ( fe0687...495106 )
by Paul
05:25 queued 15s
created
plugin/Defaults/SlackDefaults.php 1 patch
Indentation   +15 added lines, -15 removed lines patch added patch discarded remove patch
@@ -6,19 +6,19 @@
 block discarded – undo
6 6
 
7 7
 class SlackDefaults extends Defaults
8 8
 {
9
-    /**
10
-     * @return array
11
-     */
12
-    protected function defaults()
13
-    {
14
-        return [
15
-            'button_text' => __('View Review', 'site-reviews'),
16
-            'button_url' => '',
17
-            'color' => '#665068',
18
-            'fallback' => '',
19
-            'icon_url' => glsr()->url('assets/images/icon.png'),
20
-            'pretext' => '',
21
-            'username' => glsr()->name,
22
-        ];
23
-    }
9
+	/**
10
+	 * @return array
11
+	 */
12
+	protected function defaults()
13
+	{
14
+		return [
15
+			'button_text' => __('View Review', 'site-reviews'),
16
+			'button_url' => '',
17
+			'color' => '#665068',
18
+			'fallback' => '',
19
+			'icon_url' => glsr()->url('assets/images/icon.png'),
20
+			'pretext' => '',
21
+			'username' => glsr()->name,
22
+		];
23
+	}
24 24
 }
Please login to merge, or discard this patch.
plugin/Defaults/BuilderDefaults.php 1 patch
Indentation   +15 added lines, -15 removed lines patch added patch discarded remove patch
@@ -6,19 +6,19 @@
 block discarded – undo
6 6
 
7 7
 class BuilderDefaults extends Defaults
8 8
 {
9
-    /**
10
-     * @return array
11
-     */
12
-    protected function defaults()
13
-    {
14
-        return [
15
-            'class' => '',
16
-            'id' => '',
17
-            'label' => '',
18
-            'options' => [],
19
-            'text' => '',
20
-            'type' => '',
21
-            'value' => '',
22
-        ];
23
-    }
9
+	/**
10
+	 * @return array
11
+	 */
12
+	protected function defaults()
13
+	{
14
+		return [
15
+			'class' => '',
16
+			'id' => '',
17
+			'label' => '',
18
+			'options' => [],
19
+			'text' => '',
20
+			'type' => '',
21
+			'value' => '',
22
+		];
23
+	}
24 24
 }
Please login to merge, or discard this patch.
plugin/Defaults/PostTypeDefaults.php 1 patch
Indentation   +28 added lines, -28 removed lines patch added patch discarded remove patch
@@ -6,32 +6,32 @@
 block discarded – undo
6 6
 
7 7
 class PostTypeDefaults extends Defaults
8 8
 {
9
-    /**
10
-     * @return array
11
-     */
12
-    protected function defaults()
13
-    {
14
-        return [
15
-            'columns' => [
16
-                'title' => __('Title', 'site-reviews'),
17
-                'date' => __('Date', 'site-reviews'),
18
-            ],
19
-            'has_archive' => false,
20
-            'hierarchical' => false,
21
-            'labels' => [],
22
-            'menu_icon' => null,
23
-            'menu_name' => '',
24
-            'menu_position' => 25,
25
-            'plural' => '', //Required
26
-            'post_type' => '', //Required
27
-            'public' => false,
28
-            'query_var' => true,
29
-            'rewrite' => ['with_front' => false],
30
-            'show_in_menu' => true,
31
-            'show_ui' => true,
32
-            'single' => '', //Required
33
-            'supports' => ['title', 'editor'],
34
-            'taxonomies' => [],
35
-        ];
36
-    }
9
+	/**
10
+	 * @return array
11
+	 */
12
+	protected function defaults()
13
+	{
14
+		return [
15
+			'columns' => [
16
+				'title' => __('Title', 'site-reviews'),
17
+				'date' => __('Date', 'site-reviews'),
18
+			],
19
+			'has_archive' => false,
20
+			'hierarchical' => false,
21
+			'labels' => [],
22
+			'menu_icon' => null,
23
+			'menu_name' => '',
24
+			'menu_position' => 25,
25
+			'plural' => '', //Required
26
+			'post_type' => '', //Required
27
+			'public' => false,
28
+			'query_var' => true,
29
+			'rewrite' => ['with_front' => false],
30
+			'show_in_menu' => true,
31
+			'show_ui' => true,
32
+			'single' => '', //Required
33
+			'supports' => ['title', 'editor'],
34
+			'taxonomies' => [],
35
+		];
36
+	}
37 37
 }
Please login to merge, or discard this patch.
plugin/Controllers/RestCategoryController.php 1 patch
Indentation   +22 added lines, -22 removed lines patch added patch discarded remove patch
@@ -11,27 +11,27 @@
 block discarded – undo
11 11
 
12 12
 class RestCategoryController extends RestController
13 13
 {
14
-    public function __construct()
15
-    {
16
-        $this->meta = new WP_REST_Term_Meta_Fields(Application::TAXONOMY);
17
-        $this->namespace = Application::ID.'/v1';
18
-        $this->rest_base = 'categories';
19
-        $this->taxonomy = Application::TAXONOMY;
20
-    }
14
+	public function __construct()
15
+	{
16
+		$this->meta = new WP_REST_Term_Meta_Fields(Application::TAXONOMY);
17
+		$this->namespace = Application::ID.'/v1';
18
+		$this->rest_base = 'categories';
19
+		$this->taxonomy = Application::TAXONOMY;
20
+	}
21 21
 
22
-    /**
23
-     * @return void
24
-     */
25
-    public function register_routes()
26
-    {
27
-        register_rest_route($this->namespace, '/'.$this->rest_base, [
28
-            [
29
-                'args' => $this->get_collection_params(),
30
-                'callback' => [$this, 'get_items'],
31
-                'methods' => Server::READABLE,
32
-                'permission_callback' => [$this, 'get_items_permissions_check'],
33
-            ],
34
-            'schema' => [$this, 'get_public_item_schema'],
35
-        ]);
36
-    }
22
+	/**
23
+	 * @return void
24
+	 */
25
+	public function register_routes()
26
+	{
27
+		register_rest_route($this->namespace, '/'.$this->rest_base, [
28
+			[
29
+				'args' => $this->get_collection_params(),
30
+				'callback' => [$this, 'get_items'],
31
+				'methods' => Server::READABLE,
32
+				'permission_callback' => [$this, 'get_items_permissions_check'],
33
+			],
34
+			'schema' => [$this, 'get_public_item_schema'],
35
+		]);
36
+	}
37 37
 }
Please login to merge, or discard this patch.
plugin/Controllers/PublicController.php 1 patch
Indentation   +82 added lines, -82 removed lines patch added patch discarded remove patch
@@ -13,93 +13,93 @@
 block discarded – undo
13 13
 
14 14
 class PublicController extends Controller
15 15
 {
16
-    /**
17
-     * @return void
18
-     * @action wp_enqueue_scripts
19
-     */
20
-    public function enqueueAssets()
21
-    {
22
-        (new EnqueuePublicAssets())->handle();
23
-    }
16
+	/**
17
+	 * @return void
18
+	 * @action wp_enqueue_scripts
19
+	 */
20
+	public function enqueueAssets()
21
+	{
22
+		(new EnqueuePublicAssets())->handle();
23
+	}
24 24
 
25
-    /**
26
-     * @param string $tag
27
-     * @param string $handle
28
-     * @return string
29
-     * @filter script_loader_tag
30
-     */
31
-    public function filterEnqueuedScripts($tag, $handle)
32
-    {
33
-        $scripts = [Application::ID.'/google-recaptcha'];
34
-        if (in_array($handle, apply_filters('site-reviews/async-scripts', $scripts))) {
35
-            $tag = str_replace(' src=', ' async src=', $tag);
36
-        }
37
-        if (in_array($handle, apply_filters('site-reviews/defer-scripts', $scripts))) {
38
-            $tag = str_replace(' src=', ' defer src=', $tag);
39
-        }
40
-        return $tag;
41
-    }
25
+	/**
26
+	 * @param string $tag
27
+	 * @param string $handle
28
+	 * @return string
29
+	 * @filter script_loader_tag
30
+	 */
31
+	public function filterEnqueuedScripts($tag, $handle)
32
+	{
33
+		$scripts = [Application::ID.'/google-recaptcha'];
34
+		if (in_array($handle, apply_filters('site-reviews/async-scripts', $scripts))) {
35
+			$tag = str_replace(' src=', ' async src=', $tag);
36
+		}
37
+		if (in_array($handle, apply_filters('site-reviews/defer-scripts', $scripts))) {
38
+			$tag = str_replace(' src=', ' defer src=', $tag);
39
+		}
40
+		return $tag;
41
+	}
42 42
 
43
-    /**
44
-     * @return array
45
-     * @filter site-reviews/config/forms/submission-form
46
-     */
47
-    public function filterFieldOrder(array $config)
48
-    {
49
-        $order = (array) apply_filters('site-reviews/submission-form/order', array_keys($config));
50
-        return array_intersect_key(array_merge(array_flip($order), $config), $config);
51
-    }
43
+	/**
44
+	 * @return array
45
+	 * @filter site-reviews/config/forms/submission-form
46
+	 */
47
+	public function filterFieldOrder(array $config)
48
+	{
49
+		$order = (array) apply_filters('site-reviews/submission-form/order', array_keys($config));
50
+		return array_intersect_key(array_merge(array_flip($order), $config), $config);
51
+	}
52 52
 
53
-    /**
54
-     * @param array $vars
55
-     * @return array
56
-     * @filter query_vars
57
-     */
58
-    public function filterQueryVars($vars)
59
-    {
60
-        $vars = glsr(Helper::class)->consolidateArray($vars);
61
-        $vars[] = glsr()->constant('PAGED_QUERY_VAR');
62
-        return $vars;
63
-    }
53
+	/**
54
+	 * @param array $vars
55
+	 * @return array
56
+	 * @filter query_vars
57
+	 */
58
+	public function filterQueryVars($vars)
59
+	{
60
+		$vars = glsr(Helper::class)->consolidateArray($vars);
61
+		$vars[] = glsr()->constant('PAGED_QUERY_VAR');
62
+		return $vars;
63
+	}
64 64
 
65
-    /**
66
-     * @param string $view
67
-     * @return string
68
-     * @filter site-reviews/render/view
69
-     */
70
-    public function filterRenderView($view)
71
-    {
72
-        return glsr(Style::class)->filterView($view);
73
-    }
65
+	/**
66
+	 * @param string $view
67
+	 * @return string
68
+	 * @filter site-reviews/render/view
69
+	 */
70
+	public function filterRenderView($view)
71
+	{
72
+		return glsr(Style::class)->filterView($view);
73
+	}
74 74
 
75
-    /**
76
-     * @return void
77
-     * @action site-reviews/builder
78
-     */
79
-    public function modifyBuilder(Builder $instance)
80
-    {
81
-        call_user_func_array([glsr(Style::class), 'modifyField'], [$instance]);
82
-    }
75
+	/**
76
+	 * @return void
77
+	 * @action site-reviews/builder
78
+	 */
79
+	public function modifyBuilder(Builder $instance)
80
+	{
81
+		call_user_func_array([glsr(Style::class), 'modifyField'], [$instance]);
82
+	}
83 83
 
84
-    /**
85
-     * @return void
86
-     * @action wp_footer
87
-     */
88
-    public function renderSchema()
89
-    {
90
-        glsr(Schema::class)->render();
91
-    }
84
+	/**
85
+	 * @return void
86
+	 * @action wp_footer
87
+	 */
88
+	public function renderSchema()
89
+	{
90
+		glsr(Schema::class)->render();
91
+	}
92 92
 
93
-    /**
94
-     * @return CreateReview
95
-     */
96
-    public function routerSubmitReview(array $request)
97
-    {
98
-        $validated = glsr(ValidateReview::class)->validate($request);
99
-        $command = new CreateReview($validated->request);
100
-        if (empty($validated->error) && !$validated->recaptchaIsUnset) {
101
-            $this->execute($command);
102
-        }
103
-        return $command;
104
-    }
93
+	/**
94
+	 * @return CreateReview
95
+	 */
96
+	public function routerSubmitReview(array $request)
97
+	{
98
+		$validated = glsr(ValidateReview::class)->validate($request);
99
+		$command = new CreateReview($validated->request);
100
+		if (empty($validated->error) && !$validated->recaptchaIsUnset) {
101
+			$this->execute($command);
102
+		}
103
+		return $command;
104
+	}
105 105
 }
Please login to merge, or discard this patch.
plugin/Controllers/AdminController.php 1 patch
Indentation   +215 added lines, -215 removed lines patch added patch discarded remove patch
@@ -15,219 +15,219 @@
 block discarded – undo
15 15
 
16 16
 class AdminController extends Controller
17 17
 {
18
-    /**
19
-     * @return void
20
-     * @action admin_enqueue_scripts
21
-     */
22
-    public function enqueueAssets()
23
-    {
24
-        $command = new EnqueueAdminAssets([
25
-            'pointers' => [[
26
-                'content' => __('You can pin exceptional reviews so that they are always shown first.', 'site-reviews'),
27
-                'id' => 'glsr-pointer-pinned',
28
-                'position' => [
29
-                    'edge' => 'right',
30
-                    'align' => 'middle',
31
-                ],
32
-                'screen' => Application::POST_TYPE,
33
-                'target' => '#misc-pub-pinned',
34
-                'title' => __('Pin Your Reviews', 'site-reviews'),
35
-            ]],
36
-        ]);
37
-        $this->execute($command);
38
-    }
39
-
40
-    /**
41
-     * @return array
42
-     * @filter plugin_action_links_site-reviews/site-reviews.php
43
-     */
44
-    public function filterActionLinks(array $links)
45
-    {
46
-        $links['settings'] = glsr(Builder::class)->a(__('Settings', 'site-reviews'), [
47
-            'href' => admin_url('edit.php?post_type='.Application::POST_TYPE.'&page=settings'),
48
-        ]);
49
-        return $links;
50
-    }
51
-
52
-    /**
53
-     * @param array $capabilities
54
-     * @param string $capability
55
-     * @return array
56
-     * @filter map_meta_cap
57
-     */
58
-    public function filterCreateCapability($capabilities, $capability)
59
-    {
60
-        if ($capability == 'create_'.Application::POST_TYPE) {
61
-            $capabilities[] = 'do_not_allow';
62
-        }
63
-        return $capabilities;
64
-    }
65
-
66
-    /**
67
-     * @param array $items
68
-     * @return array
69
-     * @filter dashboard_glance_items
70
-     */
71
-    public function filterDashboardGlanceItems($items)
72
-    {
73
-        $postCount = wp_count_posts(Application::POST_TYPE);
74
-        if (empty($postCount->publish)) {
75
-            return $items;
76
-        }
77
-        $text = _n('%s Review', '%s Reviews', $postCount->publish, 'site-reviews');
78
-        $text = sprintf($text, number_format_i18n($postCount->publish));
79
-        $items = glsr(Helper::class)->consolidateArray($items);
80
-        $items[] = current_user_can(get_post_type_object(Application::POST_TYPE)->cap->edit_posts)
81
-            ? glsr(Builder::class)->a($text, [
82
-                'class' => 'glsr-review-count',
83
-                'href' => 'edit.php?post_type='.Application::POST_TYPE,
84
-            ])
85
-            : glsr(Builder::class)->span($text, [
86
-                'class' => 'glsr-review-count',
87
-            ]);
88
-        return $items;
89
-    }
90
-
91
-    /**
92
-     * @param array $plugins
93
-     * @return array
94
-     * @filter mce_external_plugins
95
-     */
96
-    public function filterTinymcePlugins($plugins)
97
-    {
98
-        if (current_user_can('edit_posts') || current_user_can('edit_pages')) {
99
-            $plugins = glsr(Helper::class)->consolidateArray($plugins);
100
-            $plugins['glsr_shortcode'] = glsr()->url('assets/scripts/mce-plugin.js');
101
-        }
102
-        return $plugins;
103
-    }
104
-
105
-    /**
106
-     * @return void
107
-     * @action admin_init
108
-     */
109
-    public function registerTinymcePopups()
110
-    {
111
-        $command = new RegisterTinymcePopups([
112
-            'site_reviews' => esc_html__('Recent Reviews', 'site-reviews'),
113
-            'site_reviews_form' => esc_html__('Submit a Review', 'site-reviews'),
114
-            'site_reviews_summary' => esc_html__('Summary of Reviews', 'site-reviews'),
115
-        ]);
116
-        $this->execute($command);
117
-    }
118
-
119
-    /**
120
-     * @param string $editorId
121
-     * @return void|null
122
-     * @action media_buttons
123
-     */
124
-    public function renderTinymceButton($editorId)
125
-    {
126
-        $allowedEditors = apply_filters('site-reviews/tinymce/editor-ids', ['content'], $editorId);
127
-        if ('post' != glsr_current_screen()->base || !in_array($editorId, $allowedEditors)) {
128
-            return;
129
-        }
130
-        $shortcodes = [];
131
-        foreach (glsr()->mceShortcodes as $shortcode => $values) {
132
-            $shortcodes[$shortcode] = $values;
133
-        }
134
-        if (empty($shortcodes)) {
135
-            return;
136
-        }
137
-        glsr()->render('partials/editor/tinymce', [
138
-            'shortcodes' => $shortcodes,
139
-        ]);
140
-    }
141
-
142
-    /**
143
-     * @return void
144
-     */
145
-    public function routerClearConsole()
146
-    {
147
-        glsr(Console::class)->clear();
148
-        glsr(Notice::class)->addSuccess(__('Console cleared.', 'site-reviews'));
149
-    }
150
-
151
-    /**
152
-     * @return void
153
-     */
154
-    public function routerFetchConsole()
155
-    {
156
-        glsr(Notice::class)->addSuccess(__('Console reloaded.', 'site-reviews'));
157
-    }
158
-
159
-    /**
160
-     * @param bool $showNotice
161
-     * @return void
162
-     */
163
-    public function routerCountReviews($showNotice = true)
164
-    {
165
-        glsr(CountsManager::class)->countAll();
166
-        glsr(OptionManager::class)->set('last_review_count', current_time('timestamp'));
167
-        if ($showNotice) {
168
-            glsr(Notice::class)->clear()->addSuccess(__('Recalculated rating counts.', 'site-reviews'));
169
-        }
170
-    }
171
-
172
-    /**
173
-     * @return void
174
-     */
175
-    public function routerDownloadConsole()
176
-    {
177
-        $this->download(Application::ID.'-console.txt', glsr(Console::class)->get());
178
-    }
179
-
180
-    /**
181
-     * @return void
182
-     */
183
-    public function routerDownloadSystemInfo()
184
-    {
185
-        $this->download(Application::ID.'-system-info.txt', glsr(System::class)->get());
186
-    }
187
-
188
-    /**
189
-     * @return void
190
-     */
191
-    public function routerExportSettings()
192
-    {
193
-        $this->download(Application::ID.'-settings.json', glsr(OptionManager::class)->json());
194
-    }
195
-
196
-    /**
197
-     * @return void
198
-     */
199
-    public function routerImportSettings()
200
-    {
201
-        $file = $_FILES['import-file'];
202
-        if (UPLOAD_ERR_OK !== $file['error']) {
203
-            return glsr(Notice::class)->addError($this->getUploadError($file['error']));
204
-        }
205
-        if ('application/json' !== $file['type'] || !glsr(Helper::class)->endsWith('.json', $file['name'])) {
206
-            return glsr(Notice::class)->addError(__('Please use a valid Site Reviews settings file.', 'site-reviews'));
207
-        }
208
-        $settings = json_decode(file_get_contents($file['tmp_name']), true);
209
-        if (empty($settings)) {
210
-            return glsr(Notice::class)->addWarning(__('There were no settings found to import.', 'site-reviews'));
211
-        }
212
-        glsr(OptionManager::class)->set(glsr(OptionManager::class)->normalize($settings));
213
-        glsr(Notice::class)->addSuccess(__('Settings imported.', 'site-reviews'));
214
-    }
215
-
216
-    /**
217
-     * @param int $errorCode
218
-     * @return string
219
-     */
220
-    protected function getUploadError($errorCode)
221
-    {
222
-        $errors = [
223
-            UPLOAD_ERR_INI_SIZE => __('The uploaded file exceeds the upload_max_filesize directive in php.ini.', 'site-reviews'),
224
-            UPLOAD_ERR_FORM_SIZE => __('The uploaded file is too big.', 'site-reviews'),
225
-            UPLOAD_ERR_PARTIAL => __('The uploaded file was only partially uploaded.', 'site-reviews'),
226
-            UPLOAD_ERR_NO_FILE => __('No file was uploaded.', 'site-reviews'),
227
-            UPLOAD_ERR_NO_TMP_DIR => __('Missing a temporary folder.', 'site-reviews'),
228
-            UPLOAD_ERR_CANT_WRITE => __('Failed to write file to disk.', 'site-reviews'),
229
-            UPLOAD_ERR_EXTENSION => __('A PHP extension stopped the file upload.', 'site-reviews'),
230
-        ];
231
-        return glsr_get($errors, $errorCode, __('Unknown upload error.', 'site-reviews'));
232
-    }
18
+	/**
19
+	 * @return void
20
+	 * @action admin_enqueue_scripts
21
+	 */
22
+	public function enqueueAssets()
23
+	{
24
+		$command = new EnqueueAdminAssets([
25
+			'pointers' => [[
26
+				'content' => __('You can pin exceptional reviews so that they are always shown first.', 'site-reviews'),
27
+				'id' => 'glsr-pointer-pinned',
28
+				'position' => [
29
+					'edge' => 'right',
30
+					'align' => 'middle',
31
+				],
32
+				'screen' => Application::POST_TYPE,
33
+				'target' => '#misc-pub-pinned',
34
+				'title' => __('Pin Your Reviews', 'site-reviews'),
35
+			]],
36
+		]);
37
+		$this->execute($command);
38
+	}
39
+
40
+	/**
41
+	 * @return array
42
+	 * @filter plugin_action_links_site-reviews/site-reviews.php
43
+	 */
44
+	public function filterActionLinks(array $links)
45
+	{
46
+		$links['settings'] = glsr(Builder::class)->a(__('Settings', 'site-reviews'), [
47
+			'href' => admin_url('edit.php?post_type='.Application::POST_TYPE.'&page=settings'),
48
+		]);
49
+		return $links;
50
+	}
51
+
52
+	/**
53
+	 * @param array $capabilities
54
+	 * @param string $capability
55
+	 * @return array
56
+	 * @filter map_meta_cap
57
+	 */
58
+	public function filterCreateCapability($capabilities, $capability)
59
+	{
60
+		if ($capability == 'create_'.Application::POST_TYPE) {
61
+			$capabilities[] = 'do_not_allow';
62
+		}
63
+		return $capabilities;
64
+	}
65
+
66
+	/**
67
+	 * @param array $items
68
+	 * @return array
69
+	 * @filter dashboard_glance_items
70
+	 */
71
+	public function filterDashboardGlanceItems($items)
72
+	{
73
+		$postCount = wp_count_posts(Application::POST_TYPE);
74
+		if (empty($postCount->publish)) {
75
+			return $items;
76
+		}
77
+		$text = _n('%s Review', '%s Reviews', $postCount->publish, 'site-reviews');
78
+		$text = sprintf($text, number_format_i18n($postCount->publish));
79
+		$items = glsr(Helper::class)->consolidateArray($items);
80
+		$items[] = current_user_can(get_post_type_object(Application::POST_TYPE)->cap->edit_posts)
81
+			? glsr(Builder::class)->a($text, [
82
+				'class' => 'glsr-review-count',
83
+				'href' => 'edit.php?post_type='.Application::POST_TYPE,
84
+			])
85
+			: glsr(Builder::class)->span($text, [
86
+				'class' => 'glsr-review-count',
87
+			]);
88
+		return $items;
89
+	}
90
+
91
+	/**
92
+	 * @param array $plugins
93
+	 * @return array
94
+	 * @filter mce_external_plugins
95
+	 */
96
+	public function filterTinymcePlugins($plugins)
97
+	{
98
+		if (current_user_can('edit_posts') || current_user_can('edit_pages')) {
99
+			$plugins = glsr(Helper::class)->consolidateArray($plugins);
100
+			$plugins['glsr_shortcode'] = glsr()->url('assets/scripts/mce-plugin.js');
101
+		}
102
+		return $plugins;
103
+	}
104
+
105
+	/**
106
+	 * @return void
107
+	 * @action admin_init
108
+	 */
109
+	public function registerTinymcePopups()
110
+	{
111
+		$command = new RegisterTinymcePopups([
112
+			'site_reviews' => esc_html__('Recent Reviews', 'site-reviews'),
113
+			'site_reviews_form' => esc_html__('Submit a Review', 'site-reviews'),
114
+			'site_reviews_summary' => esc_html__('Summary of Reviews', 'site-reviews'),
115
+		]);
116
+		$this->execute($command);
117
+	}
118
+
119
+	/**
120
+	 * @param string $editorId
121
+	 * @return void|null
122
+	 * @action media_buttons
123
+	 */
124
+	public function renderTinymceButton($editorId)
125
+	{
126
+		$allowedEditors = apply_filters('site-reviews/tinymce/editor-ids', ['content'], $editorId);
127
+		if ('post' != glsr_current_screen()->base || !in_array($editorId, $allowedEditors)) {
128
+			return;
129
+		}
130
+		$shortcodes = [];
131
+		foreach (glsr()->mceShortcodes as $shortcode => $values) {
132
+			$shortcodes[$shortcode] = $values;
133
+		}
134
+		if (empty($shortcodes)) {
135
+			return;
136
+		}
137
+		glsr()->render('partials/editor/tinymce', [
138
+			'shortcodes' => $shortcodes,
139
+		]);
140
+	}
141
+
142
+	/**
143
+	 * @return void
144
+	 */
145
+	public function routerClearConsole()
146
+	{
147
+		glsr(Console::class)->clear();
148
+		glsr(Notice::class)->addSuccess(__('Console cleared.', 'site-reviews'));
149
+	}
150
+
151
+	/**
152
+	 * @return void
153
+	 */
154
+	public function routerFetchConsole()
155
+	{
156
+		glsr(Notice::class)->addSuccess(__('Console reloaded.', 'site-reviews'));
157
+	}
158
+
159
+	/**
160
+	 * @param bool $showNotice
161
+	 * @return void
162
+	 */
163
+	public function routerCountReviews($showNotice = true)
164
+	{
165
+		glsr(CountsManager::class)->countAll();
166
+		glsr(OptionManager::class)->set('last_review_count', current_time('timestamp'));
167
+		if ($showNotice) {
168
+			glsr(Notice::class)->clear()->addSuccess(__('Recalculated rating counts.', 'site-reviews'));
169
+		}
170
+	}
171
+
172
+	/**
173
+	 * @return void
174
+	 */
175
+	public function routerDownloadConsole()
176
+	{
177
+		$this->download(Application::ID.'-console.txt', glsr(Console::class)->get());
178
+	}
179
+
180
+	/**
181
+	 * @return void
182
+	 */
183
+	public function routerDownloadSystemInfo()
184
+	{
185
+		$this->download(Application::ID.'-system-info.txt', glsr(System::class)->get());
186
+	}
187
+
188
+	/**
189
+	 * @return void
190
+	 */
191
+	public function routerExportSettings()
192
+	{
193
+		$this->download(Application::ID.'-settings.json', glsr(OptionManager::class)->json());
194
+	}
195
+
196
+	/**
197
+	 * @return void
198
+	 */
199
+	public function routerImportSettings()
200
+	{
201
+		$file = $_FILES['import-file'];
202
+		if (UPLOAD_ERR_OK !== $file['error']) {
203
+			return glsr(Notice::class)->addError($this->getUploadError($file['error']));
204
+		}
205
+		if ('application/json' !== $file['type'] || !glsr(Helper::class)->endsWith('.json', $file['name'])) {
206
+			return glsr(Notice::class)->addError(__('Please use a valid Site Reviews settings file.', 'site-reviews'));
207
+		}
208
+		$settings = json_decode(file_get_contents($file['tmp_name']), true);
209
+		if (empty($settings)) {
210
+			return glsr(Notice::class)->addWarning(__('There were no settings found to import.', 'site-reviews'));
211
+		}
212
+		glsr(OptionManager::class)->set(glsr(OptionManager::class)->normalize($settings));
213
+		glsr(Notice::class)->addSuccess(__('Settings imported.', 'site-reviews'));
214
+	}
215
+
216
+	/**
217
+	 * @param int $errorCode
218
+	 * @return string
219
+	 */
220
+	protected function getUploadError($errorCode)
221
+	{
222
+		$errors = [
223
+			UPLOAD_ERR_INI_SIZE => __('The uploaded file exceeds the upload_max_filesize directive in php.ini.', 'site-reviews'),
224
+			UPLOAD_ERR_FORM_SIZE => __('The uploaded file is too big.', 'site-reviews'),
225
+			UPLOAD_ERR_PARTIAL => __('The uploaded file was only partially uploaded.', 'site-reviews'),
226
+			UPLOAD_ERR_NO_FILE => __('No file was uploaded.', 'site-reviews'),
227
+			UPLOAD_ERR_NO_TMP_DIR => __('Missing a temporary folder.', 'site-reviews'),
228
+			UPLOAD_ERR_CANT_WRITE => __('Failed to write file to disk.', 'site-reviews'),
229
+			UPLOAD_ERR_EXTENSION => __('A PHP extension stopped the file upload.', 'site-reviews'),
230
+		];
231
+		return glsr_get($errors, $errorCode, __('Unknown upload error.', 'site-reviews'));
232
+	}
233 233
 }
Please login to merge, or discard this patch.
plugin/Controllers/Controller.php 1 patch
Indentation   +48 added lines, -48 removed lines patch added patch discarded remove patch
@@ -10,55 +10,55 @@
 block discarded – undo
10 10
 
11 11
 abstract class Controller
12 12
 {
13
-    /**
14
-     * @return void
15
-     */
16
-    public function download($filename, $content)
17
-    {
18
-        if (!current_user_can(glsr()->constant('CAPABILITY'))) {
19
-            return;
20
-        }
21
-        nocache_headers();
22
-        header('Content-Type: text/plain');
23
-        header('Content-Disposition: attachment; filename="'.$filename.'"');
24
-        echo html_entity_decode($content);
25
-        exit;
26
-    }
13
+	/**
14
+	 * @return void
15
+	 */
16
+	public function download($filename, $content)
17
+	{
18
+		if (!current_user_can(glsr()->constant('CAPABILITY'))) {
19
+			return;
20
+		}
21
+		nocache_headers();
22
+		header('Content-Type: text/plain');
23
+		header('Content-Disposition: attachment; filename="'.$filename.'"');
24
+		echo html_entity_decode($content);
25
+		exit;
26
+	}
27 27
 
28
-    /**
29
-     * @param object $command
30
-     * @return mixed
31
-     * @throws InvalidArgumentException
32
-     */
33
-    public function execute($command)
34
-    {
35
-        $handlerClass = str_replace('Commands', 'Handlers', get_class($command));
36
-        if (!class_exists($handlerClass)) {
37
-            throw new InvalidArgumentException('Handler '.$handlerClass.' not found.');
38
-        }
39
-        try {
40
-            return glsr($handlerClass)->handle($command);
41
-        } catch (Exception $e) {
42
-            status_header(400);
43
-            glsr(Notice::class)->addError(new WP_Error('site_reviews_error', $e->getMessage()));
44
-            glsr_log()->error($e->getMessage());
45
-        }
46
-    }
28
+	/**
29
+	 * @param object $command
30
+	 * @return mixed
31
+	 * @throws InvalidArgumentException
32
+	 */
33
+	public function execute($command)
34
+	{
35
+		$handlerClass = str_replace('Commands', 'Handlers', get_class($command));
36
+		if (!class_exists($handlerClass)) {
37
+			throw new InvalidArgumentException('Handler '.$handlerClass.' not found.');
38
+		}
39
+		try {
40
+			return glsr($handlerClass)->handle($command);
41
+		} catch (Exception $e) {
42
+			status_header(400);
43
+			glsr(Notice::class)->addError(new WP_Error('site_reviews_error', $e->getMessage()));
44
+			glsr_log()->error($e->getMessage());
45
+		}
46
+	}
47 47
 
48
-    /**
49
-     * @return int
50
-     */
51
-    protected function getPostId()
52
-    {
53
-        return intval(filter_input(INPUT_GET, 'post'));
54
-    }
48
+	/**
49
+	 * @return int
50
+	 */
51
+	protected function getPostId()
52
+	{
53
+		return intval(filter_input(INPUT_GET, 'post'));
54
+	}
55 55
 
56
-    /**
57
-     * @param int $postId
58
-     * @return bool
59
-     */
60
-    protected function isReviewPostId($postId)
61
-    {
62
-        return Application::POST_TYPE == get_post_field('post_type', $postId);
63
-    }
56
+	/**
57
+	 * @param int $postId
58
+	 * @return bool
59
+	 */
60
+	protected function isReviewPostId($postId)
61
+	{
62
+		return Application::POST_TYPE == get_post_field('post_type', $postId);
63
+	}
64 64
 }
Please login to merge, or discard this patch.
plugin/Controllers/TaxonomyController.php 1 patch
Indentation   +88 added lines, -88 removed lines patch added patch discarded remove patch
@@ -7,97 +7,97 @@
 block discarded – undo
7 7
 
8 8
 class TaxonomyController
9 9
 {
10
-    /**
11
-     * @return void
12
-     * @action Application::TAXONOMY._add_form_fields
13
-     * @action Application::TAXONOMY._edit_form
14
-     */
15
-    public function disableParents()
16
-    {
17
-        global $wp_taxonomies;
18
-        $wp_taxonomies[Application::TAXONOMY]->hierarchical = false;
19
-    }
10
+	/**
11
+	 * @return void
12
+	 * @action Application::TAXONOMY._add_form_fields
13
+	 * @action Application::TAXONOMY._edit_form
14
+	 */
15
+	public function disableParents()
16
+	{
17
+		global $wp_taxonomies;
18
+		$wp_taxonomies[Application::TAXONOMY]->hierarchical = false;
19
+	}
20 20
 
21
-    /**
22
-     * @return void
23
-     * @action Application::TAXONOMY._term_edit_form_top
24
-     * @action Application::TAXONOMY._term_new_form_tag
25
-     */
26
-    public function enableParents()
27
-    {
28
-        global $wp_taxonomies;
29
-        $wp_taxonomies[Application::TAXONOMY]->hierarchical = true;
30
-    }
21
+	/**
22
+	 * @return void
23
+	 * @action Application::TAXONOMY._term_edit_form_top
24
+	 * @action Application::TAXONOMY._term_new_form_tag
25
+	 */
26
+	public function enableParents()
27
+	{
28
+		global $wp_taxonomies;
29
+		$wp_taxonomies[Application::TAXONOMY]->hierarchical = true;
30
+	}
31 31
 
32
-    /**
33
-     * @return void
34
-     * @action restrict_manage_posts
35
-     */
36
-    public function renderTaxonomyFilter()
37
-    {
38
-        if (!is_object_in_taxonomy(glsr_current_screen()->post_type, Application::TAXONOMY)) {
39
-            return;
40
-        }
41
-        echo glsr(Builder::class)->label(__('Filter by category', 'site-reviews'), [
42
-            'class' => 'screen-reader-text',
43
-            'for' => Application::TAXONOMY,
44
-        ]);
45
-        wp_dropdown_categories([
46
-            'depth' => 3,
47
-            'hide_empty' => true,
48
-            'hide_if_empty' => true,
49
-            'hierarchical' => true,
50
-            'name' => Application::TAXONOMY,
51
-            'orderby' => 'name',
52
-            'selected' => $this->getSelected(),
53
-            'show_count' => false,
54
-            'show_option_all' => $this->getShowOptionAll(),
55
-            'taxonomy' => Application::TAXONOMY,
56
-            'value_field' => 'slug',
57
-        ]);
58
-    }
32
+	/**
33
+	 * @return void
34
+	 * @action restrict_manage_posts
35
+	 */
36
+	public function renderTaxonomyFilter()
37
+	{
38
+		if (!is_object_in_taxonomy(glsr_current_screen()->post_type, Application::TAXONOMY)) {
39
+			return;
40
+		}
41
+		echo glsr(Builder::class)->label(__('Filter by category', 'site-reviews'), [
42
+			'class' => 'screen-reader-text',
43
+			'for' => Application::TAXONOMY,
44
+		]);
45
+		wp_dropdown_categories([
46
+			'depth' => 3,
47
+			'hide_empty' => true,
48
+			'hide_if_empty' => true,
49
+			'hierarchical' => true,
50
+			'name' => Application::TAXONOMY,
51
+			'orderby' => 'name',
52
+			'selected' => $this->getSelected(),
53
+			'show_count' => false,
54
+			'show_option_all' => $this->getShowOptionAll(),
55
+			'taxonomy' => Application::TAXONOMY,
56
+			'value_field' => 'slug',
57
+		]);
58
+	}
59 59
 
60
-    /**
61
-     * @param int $postId
62
-     * @param array $terms
63
-     * @param array $newTTIds
64
-     * @param string $taxonomy
65
-     * @param bool $append
66
-     * @param array $oldTTIds
67
-     * @return void
68
-     * @action set_object_terms
69
-     */
70
-    public function restrictTermSelection($postId, $terms, $newTTIds, $taxonomy, $append, $oldTTIds)
71
-    {
72
-        if (Application::TAXONOMY != $taxonomy || count($newTTIds) <= 1) {
73
-            return;
74
-        }
75
-        $diff = array_diff($newTTIds, $oldTTIds);
76
-        if (empty($newTerm = array_shift($diff))) {
77
-            $newTerm = array_shift($newTTIds);
78
-        }
79
-        if ($newTerm) {
80
-            wp_set_object_terms($postId, intval($newTerm), $taxonomy);
81
-        }
82
-    }
60
+	/**
61
+	 * @param int $postId
62
+	 * @param array $terms
63
+	 * @param array $newTTIds
64
+	 * @param string $taxonomy
65
+	 * @param bool $append
66
+	 * @param array $oldTTIds
67
+	 * @return void
68
+	 * @action set_object_terms
69
+	 */
70
+	public function restrictTermSelection($postId, $terms, $newTTIds, $taxonomy, $append, $oldTTIds)
71
+	{
72
+		if (Application::TAXONOMY != $taxonomy || count($newTTIds) <= 1) {
73
+			return;
74
+		}
75
+		$diff = array_diff($newTTIds, $oldTTIds);
76
+		if (empty($newTerm = array_shift($diff))) {
77
+			$newTerm = array_shift($newTTIds);
78
+		}
79
+		if ($newTerm) {
80
+			wp_set_object_terms($postId, intval($newTerm), $taxonomy);
81
+		}
82
+	}
83 83
 
84
-    /**
85
-     * @return string
86
-     */
87
-    protected function getSelected()
88
-    {
89
-        global $wp_query;
90
-        return glsr_get($wp_query->query, Application::TAXONOMY);
91
-    }
84
+	/**
85
+	 * @return string
86
+	 */
87
+	protected function getSelected()
88
+	{
89
+		global $wp_query;
90
+		return glsr_get($wp_query->query, Application::TAXONOMY);
91
+	}
92 92
 
93
-    /**
94
-     * @return string
95
-     */
96
-    protected function getShowOptionAll()
97
-    {
98
-        $taxonomy = get_taxonomy(Application::TAXONOMY);
99
-        return $taxonomy
100
-            ? ucfirst(strtolower($taxonomy->labels->all_items))
101
-            : '';
102
-    }
93
+	/**
94
+	 * @return string
95
+	 */
96
+	protected function getShowOptionAll()
97
+	{
98
+		$taxonomy = get_taxonomy(Application::TAXONOMY);
99
+		return $taxonomy
100
+			? ucfirst(strtolower($taxonomy->labels->all_items))
101
+			: '';
102
+	}
103 103
 }
Please login to merge, or discard this patch.
plugin/Controllers/BlocksController.php 1 patch
Indentation   +77 added lines, -77 removed lines patch added patch discarded remove patch
@@ -7,85 +7,85 @@
 block discarded – undo
7 7
 
8 8
 class BlocksController extends Controller
9 9
 {
10
-    /**
11
-     * @param array $categories
12
-     * @return array
13
-     * @filter block_categories
14
-     */
15
-    public function filterBlockCategories($categories)
16
-    {
17
-        $categories = glsr(Helper::class)->consolidateArray($categories);
18
-        $categories[] = [
19
-            'icon' => null,
20
-            'slug' => Application::ID,
21
-            'title' => glsr()->name,
22
-        ];
23
-        return $categories;
24
-    }
10
+	/**
11
+	 * @param array $categories
12
+	 * @return array
13
+	 * @filter block_categories
14
+	 */
15
+	public function filterBlockCategories($categories)
16
+	{
17
+		$categories = glsr(Helper::class)->consolidateArray($categories);
18
+		$categories[] = [
19
+			'icon' => null,
20
+			'slug' => Application::ID,
21
+			'title' => glsr()->name,
22
+		];
23
+		return $categories;
24
+	}
25 25
 
26
-    /**
27
-     * @param array $editors
28
-     * @param string $postType
29
-     * @return array
30
-     * @filter classic_editor_enabled_editors_for_post_type
31
-     * @plugin classic-editor/classic-editor.php
32
-     */
33
-    public function filterEnabledEditors($editors, $postType)
34
-    {
35
-        return Application::POST_TYPE == $postType
36
-            ? ['block_editor' => false, 'classic_editor' => false]
37
-            : $editors;
38
-    }
26
+	/**
27
+	 * @param array $editors
28
+	 * @param string $postType
29
+	 * @return array
30
+	 * @filter classic_editor_enabled_editors_for_post_type
31
+	 * @plugin classic-editor/classic-editor.php
32
+	 */
33
+	public function filterEnabledEditors($editors, $postType)
34
+	{
35
+		return Application::POST_TYPE == $postType
36
+			? ['block_editor' => false, 'classic_editor' => false]
37
+			: $editors;
38
+	}
39 39
 
40
-    /**
41
-     * @param bool $bool
42
-     * @param string $postType
43
-     * @return bool
44
-     * @filter use_block_editor_for_post_type
45
-     */
46
-    public function filterUseBlockEditor($bool, $postType)
47
-    {
48
-        return Application::POST_TYPE == $postType
49
-            ? false
50
-            : $bool;
51
-    }
40
+	/**
41
+	 * @param bool $bool
42
+	 * @param string $postType
43
+	 * @return bool
44
+	 * @filter use_block_editor_for_post_type
45
+	 */
46
+	public function filterUseBlockEditor($bool, $postType)
47
+	{
48
+		return Application::POST_TYPE == $postType
49
+			? false
50
+			: $bool;
51
+	}
52 52
 
53
-    /**
54
-     * @return void
55
-     */
56
-    public function registerAssets()
57
-    {
58
-        wp_register_style(
59
-            Application::ID.'/blocks',
60
-            glsr()->url('assets/styles/'.Application::ID.'-blocks.css'),
61
-            ['wp-edit-blocks'],
62
-            glsr()->version
63
-        );
64
-        wp_register_script(
65
-            Application::ID.'/blocks',
66
-            glsr()->url('assets/scripts/'.Application::ID.'-blocks.js'),
67
-            ['wp-api-fetch', 'wp-blocks', 'wp-i18n', 'wp-editor', 'wp-element', Application::ID],
68
-            glsr()->version
69
-        );
70
-    }
53
+	/**
54
+	 * @return void
55
+	 */
56
+	public function registerAssets()
57
+	{
58
+		wp_register_style(
59
+			Application::ID.'/blocks',
60
+			glsr()->url('assets/styles/'.Application::ID.'-blocks.css'),
61
+			['wp-edit-blocks'],
62
+			glsr()->version
63
+		);
64
+		wp_register_script(
65
+			Application::ID.'/blocks',
66
+			glsr()->url('assets/scripts/'.Application::ID.'-blocks.js'),
67
+			['wp-api-fetch', 'wp-blocks', 'wp-i18n', 'wp-editor', 'wp-element', Application::ID],
68
+			glsr()->version
69
+		);
70
+	}
71 71
 
72
-    /**
73
-     * @return void
74
-     * @action init
75
-     */
76
-    public function registerBlocks()
77
-    {
78
-        $blocks = [
79
-            'form', 'reviews', 'summary',
80
-        ];
81
-        foreach ($blocks as $block) {
82
-            $id = str_replace('_reviews', '', Application::ID.'_'.$block);
83
-            $blockClass = glsr(Helper::class)->buildClassName($id.'-block', 'Blocks');
84
-            if (!class_exists($blockClass)) {
85
-                glsr_log()->error(sprintf('Class missing (%s)', $blockClass));
86
-                continue;
87
-            }
88
-            glsr($blockClass)->register($block);
89
-        }
90
-    }
72
+	/**
73
+	 * @return void
74
+	 * @action init
75
+	 */
76
+	public function registerBlocks()
77
+	{
78
+		$blocks = [
79
+			'form', 'reviews', 'summary',
80
+		];
81
+		foreach ($blocks as $block) {
82
+			$id = str_replace('_reviews', '', Application::ID.'_'.$block);
83
+			$blockClass = glsr(Helper::class)->buildClassName($id.'-block', 'Blocks');
84
+			if (!class_exists($blockClass)) {
85
+				glsr_log()->error(sprintf('Class missing (%s)', $blockClass));
86
+				continue;
87
+			}
88
+			glsr($blockClass)->register($block);
89
+		}
90
+	}
91 91
 }
Please login to merge, or discard this patch.