Passed
Push — master ( ff717e...ba0f3b )
by Paul
08:41 queued 04:33
created
plugin/Modules/Html/Field.php 1 patch
Indentation   +237 added lines, -237 removed lines patch added patch discarded remove patch
@@ -9,241 +9,241 @@
 block discarded – undo
9 9
 
10 10
 class Field
11 11
 {
12
-    /**
13
-     * @var array
14
-     */
15
-    public $field;
16
-
17
-    public function __construct(array $field = [])
18
-    {
19
-        $this->field = wp_parse_args($field, [
20
-            'errors' => false,
21
-            'is_hidden' => false,
22
-            'is_multi' => false,
23
-            'is_public' => false,
24
-            'is_raw' => false,
25
-            'is_setting' => false,
26
-            'is_valid' => true,
27
-            'is_widget' => false,
28
-            'path' => '',
29
-        ]);
30
-        $this->normalize();
31
-    }
32
-
33
-    /**
34
-     * @return string
35
-     */
36
-    public function __toString()
37
-    {
38
-        return (string) $this->build();
39
-    }
40
-
41
-    /**
42
-     * @return void|string
43
-     */
44
-    public function build()
45
-    {
46
-        if (!$this->field['is_valid']) {
47
-            return;
48
-        }
49
-        if ($this->field['is_raw']) {
50
-            return glsr(Builder::class)->{$this->field['type']}($this->field);
51
-        }
52
-        if (!$this->field['is_setting']) {
53
-            return $this->buildField();
54
-        }
55
-        if (!$this->field['is_multi']) {
56
-            return $this->buildSettingField();
57
-        }
58
-        return $this->buildSettingMultiField();
59
-    }
60
-
61
-    /**
62
-     * @return void
63
-     */
64
-    public function render()
65
-    {
66
-        echo $this->build();
67
-    }
68
-
69
-    /**
70
-     * @return string
71
-     */
72
-    protected function buildField()
73
-    {
74
-        $field = glsr(Template::class)->build('templates/form/field_'.$this->field['type'], [
75
-            'context' => [
76
-                'class' => $this->getFieldClass(),
77
-                'errors' => $this->getFieldErrors(),
78
-                'field' => glsr(Builder::class)->raw($this->field),
79
-                'label' => glsr(Builder::class)->label([
80
-                    'class' => 'glsr-'.$this->field['type'].'-label',
81
-                    'for' => $this->field['id'],
82
-                    'is_public' => $this->field['is_public'],
83
-                    'text' => $this->field['label'].'<span></span>',
84
-                    'type' => $this->field['type'],
85
-                ]),
86
-            ],
87
-            'field' => $this->field,
88
-        ]);
89
-        return apply_filters('site-reviews/rendered/field', $field, $this->field['type'], $this->field);
90
-    }
91
-
92
-    /**
93
-     * @return string
94
-     */
95
-    protected function buildSettingField()
96
-    {
97
-        return glsr(Template::class)->build('partials/form/table-row', [
98
-            'context' => [
99
-                'class' => $this->getFieldClass(),
100
-                'field' => glsr(Builder::class)->{$this->field['type']}($this->field),
101
-                'label' => glsr(Builder::class)->label($this->field['legend'], ['for' => $this->field['id']]),
102
-            ],
103
-            'field' => $this->field,
104
-        ]);
105
-    }
106
-
107
-    /**
108
-     * @return string
109
-     */
110
-    protected function buildSettingMultiField()
111
-    {
112
-        $dependsOn = $this->getFieldDependsOn();
113
-        unset($this->field['data-depends']);
114
-        return glsr(Template::class)->build('partials/form/table-row-multiple', [
115
-            'context' => [
116
-                'class' => $this->getFieldClass(),
117
-                'depends_on' => $dependsOn,
118
-                'field' => glsr(Builder::class)->{$this->field['type']}($this->field),
119
-                'label' => glsr(Builder::class)->label($this->field['legend'], ['for' => $this->field['id']]),
120
-                'legend' => $this->field['legend'],
121
-            ],
122
-            'field' => $this->field,
123
-        ]);
124
-    }
125
-
126
-    /**
127
-     * @return string
128
-     */
129
-    protected function getFieldClass()
130
-    {
131
-        $classes = [];
132
-        if (!empty($this->field['errors'])) {
133
-            $classes[] = 'glsr-has-error';
134
-        }
135
-        if ($this->field['is_hidden']) {
136
-            $classes[] = 'hidden';
137
-        }
138
-        if (!empty($this->field['required'])) {
139
-            $classes[] = 'glsr-required';
140
-        }
141
-        $classes = apply_filters('site-reviews/rendered/field/classes', $classes, $this->field);
142
-        return implode(' ', $classes);
143
-    }
144
-
145
-    /**
146
-     * @return string
147
-     */
148
-    protected function getFieldDependsOn()
149
-    {
150
-        return !empty($this->field['data-depends'])
151
-            ? $this->field['data-depends']
152
-            : '';
153
-    }
154
-
155
-    /**
156
-     * @return void|string
157
-     */
158
-    protected function getFieldErrors()
159
-    {
160
-        if (empty($this->field['errors']) || !is_array($this->field['errors'])) {
161
-            return;
162
-        }
163
-        $errors = array_reduce($this->field['errors'], function ($carry, $error) {
164
-            return $carry.glsr(Builder::class)->span($error, ['class' => 'glsr-field-error']);
165
-        });
166
-        return glsr(Template::class)->build('templates/form/field-errors', [
167
-            'context' => [
168
-                'errors' => $errors,
169
-            ],
170
-            'field' => $this->field,
171
-        ]);
172
-    }
173
-
174
-    /**
175
-     * @return string
176
-     */
177
-    protected function getFieldPrefix()
178
-    {
179
-        return $this->field['is_setting']
180
-            ? OptionManager::databaseKey()
181
-            : Application::ID;
182
-    }
183
-
184
-    /**
185
-     * @return bool
186
-     */
187
-    protected function isFieldValid()
188
-    {
189
-        $missingValues = [];
190
-        $requiredValues = [
191
-            'name', 'type',
192
-        ];
193
-        foreach ($requiredValues as $value) {
194
-            if (isset($this->field[$value])) {
195
-                continue;
196
-            }
197
-            $missingValues[] = $value;
198
-            $this->field['is_valid'] = false;
199
-        }
200
-        if (!empty($missingValues)) {
201
-            glsr_log()
202
-                ->warning('Field is missing: '.implode(', ', $missingValues))
203
-                ->debug($this->field);
204
-        }
205
-        return $this->field['is_valid'];
206
-    }
207
-
208
-    /**
209
-     * @return void
210
-     */
211
-    protected function normalize()
212
-    {
213
-        if (!$this->isFieldValid()) {
214
-            return;
215
-        }
216
-        $this->field['path'] = $this->field['name'];
217
-        $className = Helper::buildClassName($this->field['type'], __NAMESPACE__.'\Fields');
218
-        if (class_exists($className)) {
219
-            $this->field = $className::merge($this->field);
220
-        }
221
-        $this->normalizeFieldId();
222
-        $this->normalizeFieldName();
223
-    }
224
-
225
-    /**
226
-     * @return void
227
-     */
228
-    protected function normalizeFieldId()
229
-    {
230
-        if (isset($this->field['id']) || $this->field['is_raw']) {
231
-            return;
232
-        }
233
-        $this->field['id'] = Str::convertPathToId(
234
-            $this->field['path'],
235
-            $this->getFieldPrefix()
236
-        );
237
-    }
238
-
239
-    /**
240
-     * @return void
241
-     */
242
-    protected function normalizeFieldName()
243
-    {
244
-        $this->field['name'] = Str::convertPathToName(
245
-            $this->field['path'],
246
-            $this->getFieldPrefix()
247
-        );
248
-    }
12
+	/**
13
+	 * @var array
14
+	 */
15
+	public $field;
16
+
17
+	public function __construct(array $field = [])
18
+	{
19
+		$this->field = wp_parse_args($field, [
20
+			'errors' => false,
21
+			'is_hidden' => false,
22
+			'is_multi' => false,
23
+			'is_public' => false,
24
+			'is_raw' => false,
25
+			'is_setting' => false,
26
+			'is_valid' => true,
27
+			'is_widget' => false,
28
+			'path' => '',
29
+		]);
30
+		$this->normalize();
31
+	}
32
+
33
+	/**
34
+	 * @return string
35
+	 */
36
+	public function __toString()
37
+	{
38
+		return (string) $this->build();
39
+	}
40
+
41
+	/**
42
+	 * @return void|string
43
+	 */
44
+	public function build()
45
+	{
46
+		if (!$this->field['is_valid']) {
47
+			return;
48
+		}
49
+		if ($this->field['is_raw']) {
50
+			return glsr(Builder::class)->{$this->field['type']}($this->field);
51
+		}
52
+		if (!$this->field['is_setting']) {
53
+			return $this->buildField();
54
+		}
55
+		if (!$this->field['is_multi']) {
56
+			return $this->buildSettingField();
57
+		}
58
+		return $this->buildSettingMultiField();
59
+	}
60
+
61
+	/**
62
+	 * @return void
63
+	 */
64
+	public function render()
65
+	{
66
+		echo $this->build();
67
+	}
68
+
69
+	/**
70
+	 * @return string
71
+	 */
72
+	protected function buildField()
73
+	{
74
+		$field = glsr(Template::class)->build('templates/form/field_'.$this->field['type'], [
75
+			'context' => [
76
+				'class' => $this->getFieldClass(),
77
+				'errors' => $this->getFieldErrors(),
78
+				'field' => glsr(Builder::class)->raw($this->field),
79
+				'label' => glsr(Builder::class)->label([
80
+					'class' => 'glsr-'.$this->field['type'].'-label',
81
+					'for' => $this->field['id'],
82
+					'is_public' => $this->field['is_public'],
83
+					'text' => $this->field['label'].'<span></span>',
84
+					'type' => $this->field['type'],
85
+				]),
86
+			],
87
+			'field' => $this->field,
88
+		]);
89
+		return apply_filters('site-reviews/rendered/field', $field, $this->field['type'], $this->field);
90
+	}
91
+
92
+	/**
93
+	 * @return string
94
+	 */
95
+	protected function buildSettingField()
96
+	{
97
+		return glsr(Template::class)->build('partials/form/table-row', [
98
+			'context' => [
99
+				'class' => $this->getFieldClass(),
100
+				'field' => glsr(Builder::class)->{$this->field['type']}($this->field),
101
+				'label' => glsr(Builder::class)->label($this->field['legend'], ['for' => $this->field['id']]),
102
+			],
103
+			'field' => $this->field,
104
+		]);
105
+	}
106
+
107
+	/**
108
+	 * @return string
109
+	 */
110
+	protected function buildSettingMultiField()
111
+	{
112
+		$dependsOn = $this->getFieldDependsOn();
113
+		unset($this->field['data-depends']);
114
+		return glsr(Template::class)->build('partials/form/table-row-multiple', [
115
+			'context' => [
116
+				'class' => $this->getFieldClass(),
117
+				'depends_on' => $dependsOn,
118
+				'field' => glsr(Builder::class)->{$this->field['type']}($this->field),
119
+				'label' => glsr(Builder::class)->label($this->field['legend'], ['for' => $this->field['id']]),
120
+				'legend' => $this->field['legend'],
121
+			],
122
+			'field' => $this->field,
123
+		]);
124
+	}
125
+
126
+	/**
127
+	 * @return string
128
+	 */
129
+	protected function getFieldClass()
130
+	{
131
+		$classes = [];
132
+		if (!empty($this->field['errors'])) {
133
+			$classes[] = 'glsr-has-error';
134
+		}
135
+		if ($this->field['is_hidden']) {
136
+			$classes[] = 'hidden';
137
+		}
138
+		if (!empty($this->field['required'])) {
139
+			$classes[] = 'glsr-required';
140
+		}
141
+		$classes = apply_filters('site-reviews/rendered/field/classes', $classes, $this->field);
142
+		return implode(' ', $classes);
143
+	}
144
+
145
+	/**
146
+	 * @return string
147
+	 */
148
+	protected function getFieldDependsOn()
149
+	{
150
+		return !empty($this->field['data-depends'])
151
+			? $this->field['data-depends']
152
+			: '';
153
+	}
154
+
155
+	/**
156
+	 * @return void|string
157
+	 */
158
+	protected function getFieldErrors()
159
+	{
160
+		if (empty($this->field['errors']) || !is_array($this->field['errors'])) {
161
+			return;
162
+		}
163
+		$errors = array_reduce($this->field['errors'], function ($carry, $error) {
164
+			return $carry.glsr(Builder::class)->span($error, ['class' => 'glsr-field-error']);
165
+		});
166
+		return glsr(Template::class)->build('templates/form/field-errors', [
167
+			'context' => [
168
+				'errors' => $errors,
169
+			],
170
+			'field' => $this->field,
171
+		]);
172
+	}
173
+
174
+	/**
175
+	 * @return string
176
+	 */
177
+	protected function getFieldPrefix()
178
+	{
179
+		return $this->field['is_setting']
180
+			? OptionManager::databaseKey()
181
+			: Application::ID;
182
+	}
183
+
184
+	/**
185
+	 * @return bool
186
+	 */
187
+	protected function isFieldValid()
188
+	{
189
+		$missingValues = [];
190
+		$requiredValues = [
191
+			'name', 'type',
192
+		];
193
+		foreach ($requiredValues as $value) {
194
+			if (isset($this->field[$value])) {
195
+				continue;
196
+			}
197
+			$missingValues[] = $value;
198
+			$this->field['is_valid'] = false;
199
+		}
200
+		if (!empty($missingValues)) {
201
+			glsr_log()
202
+				->warning('Field is missing: '.implode(', ', $missingValues))
203
+				->debug($this->field);
204
+		}
205
+		return $this->field['is_valid'];
206
+	}
207
+
208
+	/**
209
+	 * @return void
210
+	 */
211
+	protected function normalize()
212
+	{
213
+		if (!$this->isFieldValid()) {
214
+			return;
215
+		}
216
+		$this->field['path'] = $this->field['name'];
217
+		$className = Helper::buildClassName($this->field['type'], __NAMESPACE__.'\Fields');
218
+		if (class_exists($className)) {
219
+			$this->field = $className::merge($this->field);
220
+		}
221
+		$this->normalizeFieldId();
222
+		$this->normalizeFieldName();
223
+	}
224
+
225
+	/**
226
+	 * @return void
227
+	 */
228
+	protected function normalizeFieldId()
229
+	{
230
+		if (isset($this->field['id']) || $this->field['is_raw']) {
231
+			return;
232
+		}
233
+		$this->field['id'] = Str::convertPathToId(
234
+			$this->field['path'],
235
+			$this->getFieldPrefix()
236
+		);
237
+	}
238
+
239
+	/**
240
+	 * @return void
241
+	 */
242
+	protected function normalizeFieldName()
243
+	{
244
+		$this->field['name'] = Str::convertPathToName(
245
+			$this->field['path'],
246
+			$this->getFieldPrefix()
247
+		);
248
+	}
249 249
 }
Please login to merge, or discard this patch.
plugin/Modules/Html/Attributes.php 1 patch
Indentation   +253 added lines, -253 removed lines patch added patch discarded remove patch
@@ -6,285 +6,285 @@
 block discarded – undo
6 6
 
7 7
 class Attributes
8 8
 {
9
-    const ATTRIBUTES_A = [
10
-        'download', 'href', 'hreflang', 'ping', 'referrerpolicy', 'rel', 'target', 'type',
11
-    ];
9
+	const ATTRIBUTES_A = [
10
+		'download', 'href', 'hreflang', 'ping', 'referrerpolicy', 'rel', 'target', 'type',
11
+	];
12 12
 
13
-    const ATTRIBUTES_BUTTON = [
14
-        'autofocus', 'disabled', 'form', 'formaction', 'formenctype', 'formmethod',
15
-        'formnovalidate', 'formtarget', 'name', 'type', 'value',
16
-    ];
13
+	const ATTRIBUTES_BUTTON = [
14
+		'autofocus', 'disabled', 'form', 'formaction', 'formenctype', 'formmethod',
15
+		'formnovalidate', 'formtarget', 'name', 'type', 'value',
16
+	];
17 17
 
18
-    const ATTRIBUTES_FORM = [
19
-        'accept', 'accept-charset', 'action', 'autocapitalize', 'autocomplete', 'enctype', 'method',
20
-        'name', 'novalidate', 'target',
21
-    ];
18
+	const ATTRIBUTES_FORM = [
19
+		'accept', 'accept-charset', 'action', 'autocapitalize', 'autocomplete', 'enctype', 'method',
20
+		'name', 'novalidate', 'target',
21
+	];
22 22
 
23
-    const ATTRIBUTES_IMG = [
24
-        'alt', 'crossorigin', 'decoding', 'height', 'ismap', 'referrerpolicy', 'sizes', 'src',
25
-        'srcset', 'width', 'usemap',
26
-    ];
23
+	const ATTRIBUTES_IMG = [
24
+		'alt', 'crossorigin', 'decoding', 'height', 'ismap', 'referrerpolicy', 'sizes', 'src',
25
+		'srcset', 'width', 'usemap',
26
+	];
27 27
 
28
-    const ATTRIBUTES_INPUT = [
29
-        'accept', 'autocomplete', 'autocorrect', 'autofocus', 'capture', 'checked', 'disabled',
30
-        'form', 'formaction', 'formenctype', 'formmethod', 'formnovalidate', 'formtarget', 'height',
31
-        'incremental', 'inputmode', 'list', 'max', 'maxlength', 'min', 'minlength', 'multiple',
32
-        'name', 'pattern', 'placeholder', 'readonly', 'results', 'required', 'selectionDirection',
33
-        'selectionEnd', 'selectionStart', 'size', 'spellcheck', 'src', 'step', 'tabindex', 'type',
34
-        'value', 'webkitdirectory', 'width',
35
-    ];
28
+	const ATTRIBUTES_INPUT = [
29
+		'accept', 'autocomplete', 'autocorrect', 'autofocus', 'capture', 'checked', 'disabled',
30
+		'form', 'formaction', 'formenctype', 'formmethod', 'formnovalidate', 'formtarget', 'height',
31
+		'incremental', 'inputmode', 'list', 'max', 'maxlength', 'min', 'minlength', 'multiple',
32
+		'name', 'pattern', 'placeholder', 'readonly', 'results', 'required', 'selectionDirection',
33
+		'selectionEnd', 'selectionStart', 'size', 'spellcheck', 'src', 'step', 'tabindex', 'type',
34
+		'value', 'webkitdirectory', 'width',
35
+	];
36 36
 
37
-    const ATTRIBUTES_LABEL = [
38
-        'for',
39
-    ];
37
+	const ATTRIBUTES_LABEL = [
38
+		'for',
39
+	];
40 40
 
41
-    const ATTRIBUTES_OPTION = [
42
-        'disabled', 'label', 'selected', 'value',
43
-    ];
41
+	const ATTRIBUTES_OPTION = [
42
+		'disabled', 'label', 'selected', 'value',
43
+	];
44 44
 
45
-    const ATTRIBUTES_SELECT = [
46
-        'autofocus', 'disabled', 'form', 'multiple', 'name', 'required', 'size',
47
-    ];
45
+	const ATTRIBUTES_SELECT = [
46
+		'autofocus', 'disabled', 'form', 'multiple', 'name', 'required', 'size',
47
+	];
48 48
 
49
-    const ATTRIBUTES_TEXTAREA = [
50
-        'autocapitalize', 'autocomplete', 'autofocus', 'cols', 'disabled', 'form', 'maxlength',
51
-        'minlength', 'name', 'placeholder', 'readonly', 'required', 'rows', 'spellcheck', 'wrap',
52
-    ];
49
+	const ATTRIBUTES_TEXTAREA = [
50
+		'autocapitalize', 'autocomplete', 'autofocus', 'cols', 'disabled', 'form', 'maxlength',
51
+		'minlength', 'name', 'placeholder', 'readonly', 'required', 'rows', 'spellcheck', 'wrap',
52
+	];
53 53
 
54
-    const BOOLEAN_ATTRIBUTES = [
55
-        'autofocus', 'capture', 'checked', 'disabled', 'draggable', 'formnovalidate', 'hidden',
56
-        'multiple', 'novalidate', 'readonly', 'required', 'selected', 'spellcheck',
57
-        'webkitdirectory',
58
-    ];
54
+	const BOOLEAN_ATTRIBUTES = [
55
+		'autofocus', 'capture', 'checked', 'disabled', 'draggable', 'formnovalidate', 'hidden',
56
+		'multiple', 'novalidate', 'readonly', 'required', 'selected', 'spellcheck',
57
+		'webkitdirectory',
58
+	];
59 59
 
60
-    const GLOBAL_ATTRIBUTES = [
61
-        'accesskey', 'class', 'contenteditable', 'contextmenu', 'dir', 'draggable', 'dropzone',
62
-        'hidden', 'id', 'lang', 'spellcheck', 'style', 'tabindex', 'title',
63
-    ];
60
+	const GLOBAL_ATTRIBUTES = [
61
+		'accesskey', 'class', 'contenteditable', 'contextmenu', 'dir', 'draggable', 'dropzone',
62
+		'hidden', 'id', 'lang', 'spellcheck', 'style', 'tabindex', 'title',
63
+	];
64 64
 
65
-    const GLOBAL_WILDCARD_ATTRIBUTES = [
66
-        'aria-', 'data-', 'item', 'on',
67
-    ];
65
+	const GLOBAL_WILDCARD_ATTRIBUTES = [
66
+		'aria-', 'data-', 'item', 'on',
67
+	];
68 68
 
69
-    const INPUT_TYPES = [
70
-        'button', 'checkbox', 'color', 'date', 'datetime-local', 'email', 'file', 'hidden', 'image',
71
-        'month', 'number', 'password', 'radio', 'range', 'reset', 'search', 'submit', 'tel', 'text',
72
-        'time', 'url', 'week',
73
-    ];
69
+	const INPUT_TYPES = [
70
+		'button', 'checkbox', 'color', 'date', 'datetime-local', 'email', 'file', 'hidden', 'image',
71
+		'month', 'number', 'password', 'radio', 'range', 'reset', 'search', 'submit', 'tel', 'text',
72
+		'time', 'url', 'week',
73
+	];
74 74
 
75
-    /**
76
-     * @var array
77
-     */
78
-    protected $attributes = [];
75
+	/**
76
+	 * @var array
77
+	 */
78
+	protected $attributes = [];
79 79
 
80
-    /**
81
-     * @param string $method
82
-     * @param array $args
83
-     * @return static
84
-     */
85
-    public function __call($method, $args)
86
-    {
87
-        $args += [[], false];
88
-        $constant = 'static::ATTRIBUTES_'.strtoupper($method);
89
-        $allowedAttributeKeys = defined($constant)
90
-            ? constant($constant)
91
-            : [];
92
-        $this->normalize((array) $args[0], $allowedAttributeKeys);
93
-        $this->normalizeInputType($method);
94
-        return $this;
95
-    }
80
+	/**
81
+	 * @param string $method
82
+	 * @param array $args
83
+	 * @return static
84
+	 */
85
+	public function __call($method, $args)
86
+	{
87
+		$args += [[], false];
88
+		$constant = 'static::ATTRIBUTES_'.strtoupper($method);
89
+		$allowedAttributeKeys = defined($constant)
90
+			? constant($constant)
91
+			: [];
92
+		$this->normalize((array) $args[0], $allowedAttributeKeys);
93
+		$this->normalizeInputType($method);
94
+		return $this;
95
+	}
96 96
 
97
-    /**
98
-     * @return array
99
-     */
100
-    public function toArray()
101
-    {
102
-        return $this->attributes;
103
-    }
97
+	/**
98
+	 * @return array
99
+	 */
100
+	public function toArray()
101
+	{
102
+		return $this->attributes;
103
+	}
104 104
 
105
-    /**
106
-     * @return string
107
-     */
108
-    public function toString()
109
-    {
110
-        $attributes = [];
111
-        foreach ($this->attributes as $attribute => $value) {
112
-            $quote = $this->getQuoteChar($attribute);
113
-            $attributes[] = in_array($attribute, static::BOOLEAN_ATTRIBUTES)
114
-                ? $attribute
115
-                : $attribute.'='.$quote.implode(',', (array) $value).$quote;
116
-        }
117
-        return implode(' ', $attributes);
118
-    }
105
+	/**
106
+	 * @return string
107
+	 */
108
+	public function toString()
109
+	{
110
+		$attributes = [];
111
+		foreach ($this->attributes as $attribute => $value) {
112
+			$quote = $this->getQuoteChar($attribute);
113
+			$attributes[] = in_array($attribute, static::BOOLEAN_ATTRIBUTES)
114
+				? $attribute
115
+				: $attribute.'='.$quote.implode(',', (array) $value).$quote;
116
+		}
117
+		return implode(' ', $attributes);
118
+	}
119 119
 
120
-    /**
121
-     * @return array
122
-     */
123
-    protected function filterAttributes(array $allowedAttributeKeys)
124
-    {
125
-        return array_intersect_key($this->attributes, array_flip($allowedAttributeKeys));
126
-    }
120
+	/**
121
+	 * @return array
122
+	 */
123
+	protected function filterAttributes(array $allowedAttributeKeys)
124
+	{
125
+		return array_intersect_key($this->attributes, array_flip($allowedAttributeKeys));
126
+	}
127 127
 
128
-    /**
129
-     * @return array
130
-     */
131
-    protected function filterGlobalAttributes()
132
-    {
133
-        $globalAttributes = $this->filterAttributes(static::GLOBAL_ATTRIBUTES);
134
-        $wildcards = [];
135
-        foreach (static::GLOBAL_WILDCARD_ATTRIBUTES as $wildcard) {
136
-            $newWildcards = array_filter($this->attributes, function ($key) use ($wildcard) {
137
-                return Str::startsWith($wildcard, $key);
138
-            }, ARRAY_FILTER_USE_KEY);
139
-            $wildcards = array_merge($wildcards, $newWildcards);
140
-        }
141
-        return array_merge($globalAttributes, $wildcards);
142
-    }
128
+	/**
129
+	 * @return array
130
+	 */
131
+	protected function filterGlobalAttributes()
132
+	{
133
+		$globalAttributes = $this->filterAttributes(static::GLOBAL_ATTRIBUTES);
134
+		$wildcards = [];
135
+		foreach (static::GLOBAL_WILDCARD_ATTRIBUTES as $wildcard) {
136
+			$newWildcards = array_filter($this->attributes, function ($key) use ($wildcard) {
137
+				return Str::startsWith($wildcard, $key);
138
+			}, ARRAY_FILTER_USE_KEY);
139
+			$wildcards = array_merge($wildcards, $newWildcards);
140
+		}
141
+		return array_merge($globalAttributes, $wildcards);
142
+	}
143 143
 
144
-    /**
145
-     * @return array
146
-     */
147
-    protected function getPermanentAttributes()
148
-    {
149
-        $permanentAttributes = [];
150
-        if (array_key_exists('value', $this->attributes)) {
151
-            $permanentAttributes['value'] = $this->attributes['value'];
152
-        }
153
-        return $permanentAttributes;
154
-    }
144
+	/**
145
+	 * @return array
146
+	 */
147
+	protected function getPermanentAttributes()
148
+	{
149
+		$permanentAttributes = [];
150
+		if (array_key_exists('value', $this->attributes)) {
151
+			$permanentAttributes['value'] = $this->attributes['value'];
152
+		}
153
+		return $permanentAttributes;
154
+	}
155 155
 
156
-    /**
157
-     * @param string $attribute
158
-     * @return string
159
-     */
160
-    protected function getQuoteChar($attribute)
161
-    {
162
-        return Str::startsWith('data-', $attribute)
163
-            ? '\''
164
-            : '"';
165
-    }
156
+	/**
157
+	 * @param string $attribute
158
+	 * @return string
159
+	 */
160
+	protected function getQuoteChar($attribute)
161
+	{
162
+		return Str::startsWith('data-', $attribute)
163
+			? '\''
164
+			: '"';
165
+	}
166 166
 
167
-    /**
168
-     * @param string $key
169
-     * @param mixed $value
170
-     * @return bool
171
-     */
172
-    protected function isAttributeKeyNumeric($key, $value)
173
-    {
174
-        return is_string($value)
175
-            && is_numeric($key)
176
-            && !array_key_exists($value, $this->attributes);
177
-    }
167
+	/**
168
+	 * @param string $key
169
+	 * @param mixed $value
170
+	 * @return bool
171
+	 */
172
+	protected function isAttributeKeyNumeric($key, $value)
173
+	{
174
+		return is_string($value)
175
+			&& is_numeric($key)
176
+			&& !array_key_exists($value, $this->attributes);
177
+	}
178 178
 
179
-    /**
180
-     * @return void
181
-     */
182
-    protected function normalize(array $args, array $allowedAttributeKeys)
183
-    {
184
-        $this->attributes = array_change_key_case($args, CASE_LOWER);
185
-        $this->normalizeBooleanAttributes();
186
-        $this->normalizeDataAttributes();
187
-        $this->normalizeStringAttributes();
188
-        $this->removeEmptyAttributes();
189
-        $this->removeIndexedAttributes();
190
-        $this->attributes = array_merge(
191
-            $this->filterGlobalAttributes(),
192
-            $this->filterAttributes($allowedAttributeKeys)
193
-        );
194
-    }
179
+	/**
180
+	 * @return void
181
+	 */
182
+	protected function normalize(array $args, array $allowedAttributeKeys)
183
+	{
184
+		$this->attributes = array_change_key_case($args, CASE_LOWER);
185
+		$this->normalizeBooleanAttributes();
186
+		$this->normalizeDataAttributes();
187
+		$this->normalizeStringAttributes();
188
+		$this->removeEmptyAttributes();
189
+		$this->removeIndexedAttributes();
190
+		$this->attributes = array_merge(
191
+			$this->filterGlobalAttributes(),
192
+			$this->filterAttributes($allowedAttributeKeys)
193
+		);
194
+	}
195 195
 
196
-    /**
197
-     * @return void
198
-     */
199
-    protected function normalizeBooleanAttributes()
200
-    {
201
-        foreach ($this->attributes as $key => $value) {
202
-            if ($this->isAttributeKeyNumeric($key, $value)) {
203
-                $key = $value;
204
-                $value = true;
205
-            }
206
-            if (!in_array($key, static::BOOLEAN_ATTRIBUTES)) {
207
-                continue;
208
-            }
209
-            $this->attributes[$key] = wp_validate_boolean($value);
210
-        }
211
-    }
196
+	/**
197
+	 * @return void
198
+	 */
199
+	protected function normalizeBooleanAttributes()
200
+	{
201
+		foreach ($this->attributes as $key => $value) {
202
+			if ($this->isAttributeKeyNumeric($key, $value)) {
203
+				$key = $value;
204
+				$value = true;
205
+			}
206
+			if (!in_array($key, static::BOOLEAN_ATTRIBUTES)) {
207
+				continue;
208
+			}
209
+			$this->attributes[$key] = wp_validate_boolean($value);
210
+		}
211
+	}
212 212
 
213
-    /**
214
-     * @return void
215
-     */
216
-    protected function normalizeDataAttributes()
217
-    {
218
-        foreach ($this->attributes as $key => $value) {
219
-            if ($this->isAttributeKeyNumeric($key, $value)) {
220
-                $key = $value;
221
-                $value = '';
222
-            }
223
-            if (!Str::startsWith('data-', $key)) {
224
-                continue;
225
-            }
226
-            if (is_array($value)) {
227
-                $value = json_encode($value, JSON_HEX_APOS | JSON_NUMERIC_CHECK | JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE);
228
-            }
229
-            $this->attributes[$key] = $value;
230
-        }
231
-    }
213
+	/**
214
+	 * @return void
215
+	 */
216
+	protected function normalizeDataAttributes()
217
+	{
218
+		foreach ($this->attributes as $key => $value) {
219
+			if ($this->isAttributeKeyNumeric($key, $value)) {
220
+				$key = $value;
221
+				$value = '';
222
+			}
223
+			if (!Str::startsWith('data-', $key)) {
224
+				continue;
225
+			}
226
+			if (is_array($value)) {
227
+				$value = json_encode($value, JSON_HEX_APOS | JSON_NUMERIC_CHECK | JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE);
228
+			}
229
+			$this->attributes[$key] = $value;
230
+		}
231
+	}
232 232
 
233
-    /**
234
-     * @return void
235
-     */
236
-    protected function normalizeStringAttributes()
237
-    {
238
-        foreach ($this->attributes as $key => $value) {
239
-            if (!is_string($value)) {
240
-                continue;
241
-            }
242
-            $this->attributes[$key] = trim($value);
243
-        }
244
-    }
233
+	/**
234
+	 * @return void
235
+	 */
236
+	protected function normalizeStringAttributes()
237
+	{
238
+		foreach ($this->attributes as $key => $value) {
239
+			if (!is_string($value)) {
240
+				continue;
241
+			}
242
+			$this->attributes[$key] = trim($value);
243
+		}
244
+	}
245 245
 
246
-    /**
247
-     * @param string $method
248
-     * @return void
249
-     */
250
-    protected function normalizeInputType($method)
251
-    {
252
-        if ('input' != $method) {
253
-            return;
254
-        }
255
-        $attributes = wp_parse_args($this->attributes, ['type' => '']);
256
-        if (!in_array($attributes['type'], static::INPUT_TYPES)) {
257
-            $this->attributes['type'] = 'text';
258
-        }
259
-    }
246
+	/**
247
+	 * @param string $method
248
+	 * @return void
249
+	 */
250
+	protected function normalizeInputType($method)
251
+	{
252
+		if ('input' != $method) {
253
+			return;
254
+		}
255
+		$attributes = wp_parse_args($this->attributes, ['type' => '']);
256
+		if (!in_array($attributes['type'], static::INPUT_TYPES)) {
257
+			$this->attributes['type'] = 'text';
258
+		}
259
+	}
260 260
 
261
-    /**
262
-     * @return void
263
-     */
264
-    protected function removeEmptyAttributes()
265
-    {
266
-        $attributes = $this->attributes;
267
-        $permanentAttributes = $this->getPermanentAttributes();
268
-        foreach ($this->attributes as $key => $value) {
269
-            if (in_array($key, static::BOOLEAN_ATTRIBUTES) && !$value) {
270
-                unset($attributes[$key]);
271
-            }
272
-            if (Str::startsWith('data-', $key)) {
273
-                $permanentAttributes[$key] = $value;
274
-                unset($attributes[$key]);
275
-            }
276
-        }
277
-        $this->attributes = array_merge(array_filter($attributes), $permanentAttributes);
278
-    }
261
+	/**
262
+	 * @return void
263
+	 */
264
+	protected function removeEmptyAttributes()
265
+	{
266
+		$attributes = $this->attributes;
267
+		$permanentAttributes = $this->getPermanentAttributes();
268
+		foreach ($this->attributes as $key => $value) {
269
+			if (in_array($key, static::BOOLEAN_ATTRIBUTES) && !$value) {
270
+				unset($attributes[$key]);
271
+			}
272
+			if (Str::startsWith('data-', $key)) {
273
+				$permanentAttributes[$key] = $value;
274
+				unset($attributes[$key]);
275
+			}
276
+		}
277
+		$this->attributes = array_merge(array_filter($attributes), $permanentAttributes);
278
+	}
279 279
 
280
-    /**
281
-     * @return void
282
-     */
283
-    protected function removeIndexedAttributes()
284
-    {
285
-        $this->attributes = array_diff_key(
286
-            $this->attributes,
287
-            array_filter($this->attributes, 'is_numeric', ARRAY_FILTER_USE_KEY)
288
-        );
289
-    }
280
+	/**
281
+	 * @return void
282
+	 */
283
+	protected function removeIndexedAttributes()
284
+	{
285
+		$this->attributes = array_diff_key(
286
+			$this->attributes,
287
+			array_filter($this->attributes, 'is_numeric', ARRAY_FILTER_USE_KEY)
288
+		);
289
+	}
290 290
 }
Please login to merge, or discard this patch.
plugin/Modules/Html/Partials/SiteReviews.php 1 patch
Indentation   +353 added lines, -353 removed lines patch added patch discarded remove patch
@@ -21,382 +21,382 @@
 block discarded – undo
21 21
 
22 22
 class SiteReviews
23 23
 {
24
-    /**
25
-     * @var array
26
-     */
27
-    public $args;
24
+	/**
25
+	 * @var array
26
+	 */
27
+	public $args;
28 28
 
29
-    /**
30
-     * @var Review
31
-     */
32
-    public $current;
29
+	/**
30
+	 * @var Review
31
+	 */
32
+	public $current;
33 33
 
34
-    /**
35
-     * @var array
36
-     */
37
-    public $options;
34
+	/**
35
+	 * @var array
36
+	 */
37
+	public $options;
38 38
 
39
-    /**
40
-     * @var Reviews
41
-     */
42
-    protected $reviews;
39
+	/**
40
+	 * @var Reviews
41
+	 */
42
+	protected $reviews;
43 43
 
44
-    /**
45
-     * @param Reviews|null $reviews
46
-     * @return ReviewsHtml
47
-     */
48
-    public function build(array $args = [], $reviews = null)
49
-    {
50
-        $this->args = glsr(SiteReviewsDefaults::class)->merge($args);
51
-        $this->options = Arr::flattenArray(glsr(OptionManager::class)->all());
52
-        $this->reviews = $reviews instanceof Reviews
53
-            ? $reviews
54
-            : glsr(ReviewManager::class)->get($this->args);
55
-        $this->generateSchema();
56
-        return $this->buildReviews();
57
-    }
44
+	/**
45
+	 * @param Reviews|null $reviews
46
+	 * @return ReviewsHtml
47
+	 */
48
+	public function build(array $args = [], $reviews = null)
49
+	{
50
+		$this->args = glsr(SiteReviewsDefaults::class)->merge($args);
51
+		$this->options = Arr::flattenArray(glsr(OptionManager::class)->all());
52
+		$this->reviews = $reviews instanceof Reviews
53
+			? $reviews
54
+			: glsr(ReviewManager::class)->get($this->args);
55
+		$this->generateSchema();
56
+		return $this->buildReviews();
57
+	}
58 58
 
59
-    /**
60
-     * @return ReviewHtml
61
-     */
62
-    public function buildReview(Review $review)
63
-    {
64
-        $review = apply_filters('site-reviews/review/build/before', $review);
65
-        $this->current = $review;
66
-        $renderedFields = [];
67
-        foreach ($review as $key => $value) {
68
-            $method = Helper::buildMethodName($key, 'buildOption');
69
-            $field = method_exists($this, $method)
70
-                ? $this->$method($key, $value)
71
-                : false;
72
-            $field = apply_filters('site-reviews/review/build/'.$key, $field, $value, $this, $review);
73
-            if (false === $field) {
74
-                continue;
75
-            }
76
-            $renderedFields[$key] = $field;
77
-        }
78
-        $this->wrap($renderedFields, $review);
79
-        $renderedFields = apply_filters('site-reviews/review/build/after', $renderedFields, $review, $this);
80
-        $this->current = null;
81
-        return new ReviewHtml($review, (array) $renderedFields);
82
-    }
59
+	/**
60
+	 * @return ReviewHtml
61
+	 */
62
+	public function buildReview(Review $review)
63
+	{
64
+		$review = apply_filters('site-reviews/review/build/before', $review);
65
+		$this->current = $review;
66
+		$renderedFields = [];
67
+		foreach ($review as $key => $value) {
68
+			$method = Helper::buildMethodName($key, 'buildOption');
69
+			$field = method_exists($this, $method)
70
+				? $this->$method($key, $value)
71
+				: false;
72
+			$field = apply_filters('site-reviews/review/build/'.$key, $field, $value, $this, $review);
73
+			if (false === $field) {
74
+				continue;
75
+			}
76
+			$renderedFields[$key] = $field;
77
+		}
78
+		$this->wrap($renderedFields, $review);
79
+		$renderedFields = apply_filters('site-reviews/review/build/after', $renderedFields, $review, $this);
80
+		$this->current = null;
81
+		return new ReviewHtml($review, (array) $renderedFields);
82
+	}
83 83
 
84
-    /**
85
-     * @return ReviewsHtml
86
-     */
87
-    public function buildReviews()
88
-    {
89
-        $renderedReviews = [];
90
-        foreach ($this->reviews as $index => $review) {
91
-            $renderedReviews[] = $this->buildReview($review);
92
-        }
93
-        return new ReviewsHtml($renderedReviews, $this->reviews->max_num_pages, $this->args);
94
-    }
84
+	/**
85
+	 * @return ReviewsHtml
86
+	 */
87
+	public function buildReviews()
88
+	{
89
+		$renderedReviews = [];
90
+		foreach ($this->reviews as $index => $review) {
91
+			$renderedReviews[] = $this->buildReview($review);
92
+		}
93
+		return new ReviewsHtml($renderedReviews, $this->reviews->max_num_pages, $this->args);
94
+	}
95 95
 
96
-    /**
97
-     * @return void
98
-     */
99
-    public function generateSchema()
100
-    {
101
-        if (!wp_validate_boolean($this->args['schema'])) {
102
-            return;
103
-        }
104
-        glsr(Schema::class)->store(
105
-            glsr(Schema::class)->build($this->args)
106
-        );
107
-    }
96
+	/**
97
+	 * @return void
98
+	 */
99
+	public function generateSchema()
100
+	{
101
+		if (!wp_validate_boolean($this->args['schema'])) {
102
+			return;
103
+		}
104
+		glsr(Schema::class)->store(
105
+			glsr(Schema::class)->build($this->args)
106
+		);
107
+	}
108 108
 
109
-    /**
110
-     * @param string $key
111
-     * @param string $path
112
-     * @return bool
113
-     */
114
-    public function isHidden($key, $path = '')
115
-    {
116
-        $isOptionEnabled = !empty($path)
117
-            ? $this->isOptionEnabled($path)
118
-            : true;
119
-        return in_array($key, $this->args['hide']) || !$isOptionEnabled;
120
-    }
109
+	/**
110
+	 * @param string $key
111
+	 * @param string $path
112
+	 * @return bool
113
+	 */
114
+	public function isHidden($key, $path = '')
115
+	{
116
+		$isOptionEnabled = !empty($path)
117
+			? $this->isOptionEnabled($path)
118
+			: true;
119
+		return in_array($key, $this->args['hide']) || !$isOptionEnabled;
120
+	}
121 121
 
122
-    /**
123
-     * @param string $key
124
-     * @param string $value
125
-     * @return void|string
126
-     */
127
-    protected function buildOptionAssignedTo($key, $value)
128
-    {
129
-        if ($this->isHidden($key, 'settings.reviews.assigned_links')) {
130
-            return;
131
-        }
132
-        $post = glsr(Polylang::class)->getPost($value);
133
-        if (!($post instanceof WP_Post)) {
134
-            return;
135
-        }
136
-        $permalink = glsr(Builder::class)->a(get_the_title($post->ID), [
137
-            'href' => get_the_permalink($post->ID),
138
-        ]);
139
-        $assignedTo = sprintf(__('Review of %s', 'site-reviews'), $permalink);
140
-        return '<span>'.$assignedTo.'</span>';
141
-    }
122
+	/**
123
+	 * @param string $key
124
+	 * @param string $value
125
+	 * @return void|string
126
+	 */
127
+	protected function buildOptionAssignedTo($key, $value)
128
+	{
129
+		if ($this->isHidden($key, 'settings.reviews.assigned_links')) {
130
+			return;
131
+		}
132
+		$post = glsr(Polylang::class)->getPost($value);
133
+		if (!($post instanceof WP_Post)) {
134
+			return;
135
+		}
136
+		$permalink = glsr(Builder::class)->a(get_the_title($post->ID), [
137
+			'href' => get_the_permalink($post->ID),
138
+		]);
139
+		$assignedTo = sprintf(__('Review of %s', 'site-reviews'), $permalink);
140
+		return '<span>'.$assignedTo.'</span>';
141
+	}
142 142
 
143
-    /**
144
-     * @param string $key
145
-     * @param string $value
146
-     * @return void|string
147
-     */
148
-    protected function buildOptionAuthor($key, $value)
149
-    {
150
-        if (!$this->isHidden($key)) {
151
-            $name = Str::convertName(
152
-                $value,
153
-                glsr_get_option('reviews.name.format'),
154
-                glsr_get_option('reviews.name.initial')
155
-            );
156
-            return '<span>'.$name.'</span>';
157
-        }
158
-    }
143
+	/**
144
+	 * @param string $key
145
+	 * @param string $value
146
+	 * @return void|string
147
+	 */
148
+	protected function buildOptionAuthor($key, $value)
149
+	{
150
+		if (!$this->isHidden($key)) {
151
+			$name = Str::convertName(
152
+				$value,
153
+				glsr_get_option('reviews.name.format'),
154
+				glsr_get_option('reviews.name.initial')
155
+			);
156
+			return '<span>'.$name.'</span>';
157
+		}
158
+	}
159 159
 
160
-    /**
161
-     * @param string $key
162
-     * @param string $value
163
-     * @return void|string
164
-     */
165
-    protected function buildOptionAvatar($key, $value)
166
-    {
167
-        if ($this->isHidden($key, 'settings.reviews.avatars')) {
168
-            return;
169
-        }
170
-        $size = $this->getOption('settings.reviews.avatars_size', 40);
171
-        return glsr(Builder::class)->img([
172
-            'height' => $size,
173
-            'src' => $this->generateAvatar($value),
174
-            'style' => sprintf('width:%1$spx; height:%1$spx;', $size),
175
-            'width' => $size,
176
-        ]);
177
-    }
160
+	/**
161
+	 * @param string $key
162
+	 * @param string $value
163
+	 * @return void|string
164
+	 */
165
+	protected function buildOptionAvatar($key, $value)
166
+	{
167
+		if ($this->isHidden($key, 'settings.reviews.avatars')) {
168
+			return;
169
+		}
170
+		$size = $this->getOption('settings.reviews.avatars_size', 40);
171
+		return glsr(Builder::class)->img([
172
+			'height' => $size,
173
+			'src' => $this->generateAvatar($value),
174
+			'style' => sprintf('width:%1$spx; height:%1$spx;', $size),
175
+			'width' => $size,
176
+		]);
177
+	}
178 178
 
179
-    /**
180
-     * @param string $key
181
-     * @param string $value
182
-     * @return void|string
183
-     */
184
-    protected function buildOptionContent($key, $value)
185
-    {
186
-        $text = $this->normalizeText($value);
187
-        if (!$this->isHiddenOrEmpty($key, $text)) {
188
-            return '<p>'.$text.'</p>';
189
-        }
190
-    }
179
+	/**
180
+	 * @param string $key
181
+	 * @param string $value
182
+	 * @return void|string
183
+	 */
184
+	protected function buildOptionContent($key, $value)
185
+	{
186
+		$text = $this->normalizeText($value);
187
+		if (!$this->isHiddenOrEmpty($key, $text)) {
188
+			return '<p>'.$text.'</p>';
189
+		}
190
+	}
191 191
 
192
-    /**
193
-     * @param string $key
194
-     * @param string $value
195
-     * @return void|string
196
-     */
197
-    protected function buildOptionDate($key, $value)
198
-    {
199
-        if ($this->isHidden($key)) {
200
-            return;
201
-        }
202
-        $dateFormat = $this->getOption('settings.reviews.date.format', 'default');
203
-        if ('relative' == $dateFormat) {
204
-            $date = glsr(Date::class)->relative($value);
205
-        } else {
206
-            $format = 'custom' == $dateFormat
207
-                ? $this->getOption('settings.reviews.date.custom', 'M j, Y')
208
-                : glsr(OptionManager::class)->getWP('date_format', 'F j, Y');
209
-            $date = date_i18n($format, strtotime($value));
210
-        }
211
-        return '<span>'.$date.'</span>';
212
-    }
192
+	/**
193
+	 * @param string $key
194
+	 * @param string $value
195
+	 * @return void|string
196
+	 */
197
+	protected function buildOptionDate($key, $value)
198
+	{
199
+		if ($this->isHidden($key)) {
200
+			return;
201
+		}
202
+		$dateFormat = $this->getOption('settings.reviews.date.format', 'default');
203
+		if ('relative' == $dateFormat) {
204
+			$date = glsr(Date::class)->relative($value);
205
+		} else {
206
+			$format = 'custom' == $dateFormat
207
+				? $this->getOption('settings.reviews.date.custom', 'M j, Y')
208
+				: glsr(OptionManager::class)->getWP('date_format', 'F j, Y');
209
+			$date = date_i18n($format, strtotime($value));
210
+		}
211
+		return '<span>'.$date.'</span>';
212
+	}
213 213
 
214
-    /**
215
-     * @param string $key
216
-     * @param string $value
217
-     * @return void|string
218
-     */
219
-    protected function buildOptionRating($key, $value)
220
-    {
221
-        if (!$this->isHiddenOrEmpty($key, $value)) {
222
-            return glsr_star_rating($value);
223
-        }
224
-    }
214
+	/**
215
+	 * @param string $key
216
+	 * @param string $value
217
+	 * @return void|string
218
+	 */
219
+	protected function buildOptionRating($key, $value)
220
+	{
221
+		if (!$this->isHiddenOrEmpty($key, $value)) {
222
+			return glsr_star_rating($value);
223
+		}
224
+	}
225 225
 
226
-    /**
227
-     * @param string $key
228
-     * @param string $value
229
-     * @return void|string
230
-     */
231
-    protected function buildOptionResponse($key, $value)
232
-    {
233
-        if ($this->isHiddenOrEmpty($key, $value)) {
234
-            return;
235
-        }
236
-        $title = sprintf(__('Response from %s', 'site-reviews'), get_bloginfo('name'));
237
-        $text = $this->normalizeText($value);
238
-        $text = '<p><strong>'.$title.'</strong></p><p>'.$text.'</p>';
239
-        $response = glsr(Builder::class)->div($text, ['class' => 'glsr-review-response-inner']);
240
-        $background = glsr(Builder::class)->div(['class' => 'glsr-review-response-background']);
241
-        return $response.$background;
242
-    }
226
+	/**
227
+	 * @param string $key
228
+	 * @param string $value
229
+	 * @return void|string
230
+	 */
231
+	protected function buildOptionResponse($key, $value)
232
+	{
233
+		if ($this->isHiddenOrEmpty($key, $value)) {
234
+			return;
235
+		}
236
+		$title = sprintf(__('Response from %s', 'site-reviews'), get_bloginfo('name'));
237
+		$text = $this->normalizeText($value);
238
+		$text = '<p><strong>'.$title.'</strong></p><p>'.$text.'</p>';
239
+		$response = glsr(Builder::class)->div($text, ['class' => 'glsr-review-response-inner']);
240
+		$background = glsr(Builder::class)->div(['class' => 'glsr-review-response-background']);
241
+		return $response.$background;
242
+	}
243 243
 
244
-    /**
245
-     * @param string $key
246
-     * @param string $value
247
-     * @return void|string
248
-     */
249
-    protected function buildOptionTitle($key, $value)
250
-    {
251
-        if ($this->isHidden($key)) {
252
-            return;
253
-        }
254
-        if (empty($value)) {
255
-            $value = __('No Title', 'site-reviews');
256
-        }
257
-        return '<h3>'.$value.'</h3>';
258
-    }
244
+	/**
245
+	 * @param string $key
246
+	 * @param string $value
247
+	 * @return void|string
248
+	 */
249
+	protected function buildOptionTitle($key, $value)
250
+	{
251
+		if ($this->isHidden($key)) {
252
+			return;
253
+		}
254
+		if (empty($value)) {
255
+			$value = __('No Title', 'site-reviews');
256
+		}
257
+		return '<h3>'.$value.'</h3>';
258
+	}
259 259
 
260
-    /**
261
-     * @param string $avatarUrl
262
-     * @return string
263
-     */
264
-    protected function generateAvatar($avatarUrl)
265
-    {
266
-        if (!$this->isOptionEnabled('settings.reviews.avatars_regenerate') || 'local' != $this->current->review_type) {
267
-            return $avatarUrl;
268
-        }
269
-        $authorIdOrEmail = get_the_author_meta('ID', $this->current->user_id);
270
-        if (empty($authorIdOrEmail)) {
271
-            $authorIdOrEmail = $this->current->email;
272
-        }
273
-        if ($newAvatar = get_avatar_url($authorIdOrEmail)) {
274
-            return $newAvatar;
275
-        }
276
-        return $avatarUrl;
277
-    }
260
+	/**
261
+	 * @param string $avatarUrl
262
+	 * @return string
263
+	 */
264
+	protected function generateAvatar($avatarUrl)
265
+	{
266
+		if (!$this->isOptionEnabled('settings.reviews.avatars_regenerate') || 'local' != $this->current->review_type) {
267
+			return $avatarUrl;
268
+		}
269
+		$authorIdOrEmail = get_the_author_meta('ID', $this->current->user_id);
270
+		if (empty($authorIdOrEmail)) {
271
+			$authorIdOrEmail = $this->current->email;
272
+		}
273
+		if ($newAvatar = get_avatar_url($authorIdOrEmail)) {
274
+			return $newAvatar;
275
+		}
276
+		return $avatarUrl;
277
+	}
278 278
 
279
-    /**
280
-     * @param string $text
281
-     * @return string
282
-     */
283
-    protected function getExcerpt($text)
284
-    {
285
-        $limit = intval($this->getOption('settings.reviews.excerpts_length', 55));
286
-        $split = extension_loaded('intl')
287
-            ? $this->getExcerptIntlSplit($text, $limit)
288
-            : $this->getExcerptSplit($text, $limit);
289
-        $hiddenText = substr($text, $split);
290
-        if (!empty($hiddenText)) {
291
-            $showMore = glsr(Builder::class)->span($hiddenText, [
292
-                'class' => 'glsr-hidden glsr-hidden-text',
293
-                'data-show-less' => __('Show less', 'site-reviews'),
294
-                'data-show-more' => __('Show more', 'site-reviews'),
295
-            ]);
296
-            $text = ltrim(substr($text, 0, $split)).$showMore;
297
-        }
298
-        return $text;
299
-    }
279
+	/**
280
+	 * @param string $text
281
+	 * @return string
282
+	 */
283
+	protected function getExcerpt($text)
284
+	{
285
+		$limit = intval($this->getOption('settings.reviews.excerpts_length', 55));
286
+		$split = extension_loaded('intl')
287
+			? $this->getExcerptIntlSplit($text, $limit)
288
+			: $this->getExcerptSplit($text, $limit);
289
+		$hiddenText = substr($text, $split);
290
+		if (!empty($hiddenText)) {
291
+			$showMore = glsr(Builder::class)->span($hiddenText, [
292
+				'class' => 'glsr-hidden glsr-hidden-text',
293
+				'data-show-less' => __('Show less', 'site-reviews'),
294
+				'data-show-more' => __('Show more', 'site-reviews'),
295
+			]);
296
+			$text = ltrim(substr($text, 0, $split)).$showMore;
297
+		}
298
+		return $text;
299
+	}
300 300
 
301
-    /**
302
-     * @param string $text
303
-     * @param int $limit
304
-     * @return int
305
-     */
306
-    protected function getExcerptIntlSplit($text, $limit)
307
-    {
308
-        $words = IntlRuleBasedBreakIterator::createWordInstance('');
309
-        $words->setText($text);
310
-        $count = 0;
311
-        foreach ($words as $offset) {
312
-            if (IntlRuleBasedBreakIterator::WORD_NONE === $words->getRuleStatus()) {
313
-                continue;
314
-            }
315
-            ++$count;
316
-            if ($count != $limit) {
317
-                continue;
318
-            }
319
-            return $offset;
320
-        }
321
-        return strlen($text);
322
-    }
301
+	/**
302
+	 * @param string $text
303
+	 * @param int $limit
304
+	 * @return int
305
+	 */
306
+	protected function getExcerptIntlSplit($text, $limit)
307
+	{
308
+		$words = IntlRuleBasedBreakIterator::createWordInstance('');
309
+		$words->setText($text);
310
+		$count = 0;
311
+		foreach ($words as $offset) {
312
+			if (IntlRuleBasedBreakIterator::WORD_NONE === $words->getRuleStatus()) {
313
+				continue;
314
+			}
315
+			++$count;
316
+			if ($count != $limit) {
317
+				continue;
318
+			}
319
+			return $offset;
320
+		}
321
+		return strlen($text);
322
+	}
323 323
 
324
-    /**
325
-     * @param string $text
326
-     * @param int $limit
327
-     * @return int
328
-     */
329
-    protected function getExcerptSplit($text, $limit)
330
-    {
331
-        if (str_word_count($text, 0) > $limit) {
332
-            $words = array_keys(str_word_count($text, 2));
333
-            return $words[$limit];
334
-        }
335
-        return strlen($text);
336
-    }
324
+	/**
325
+	 * @param string $text
326
+	 * @param int $limit
327
+	 * @return int
328
+	 */
329
+	protected function getExcerptSplit($text, $limit)
330
+	{
331
+		if (str_word_count($text, 0) > $limit) {
332
+			$words = array_keys(str_word_count($text, 2));
333
+			return $words[$limit];
334
+		}
335
+		return strlen($text);
336
+	}
337 337
 
338
-    /**
339
-     * @param string $path
340
-     * @param mixed $fallback
341
-     * @return mixed
342
-     */
343
-    protected function getOption($path, $fallback = '')
344
-    {
345
-        if (array_key_exists($path, $this->options)) {
346
-            return $this->options[$path];
347
-        }
348
-        return $fallback;
349
-    }
338
+	/**
339
+	 * @param string $path
340
+	 * @param mixed $fallback
341
+	 * @return mixed
342
+	 */
343
+	protected function getOption($path, $fallback = '')
344
+	{
345
+		if (array_key_exists($path, $this->options)) {
346
+			return $this->options[$path];
347
+		}
348
+		return $fallback;
349
+	}
350 350
 
351
-    /**
352
-     * @param string $key
353
-     * @param string $value
354
-     * @return bool
355
-     */
356
-    protected function isHiddenOrEmpty($key, $value)
357
-    {
358
-        return $this->isHidden($key) || empty($value);
359
-    }
351
+	/**
352
+	 * @param string $key
353
+	 * @param string $value
354
+	 * @return bool
355
+	 */
356
+	protected function isHiddenOrEmpty($key, $value)
357
+	{
358
+		return $this->isHidden($key) || empty($value);
359
+	}
360 360
 
361
-    /**
362
-     * @param string $path
363
-     * @return bool
364
-     */
365
-    protected function isOptionEnabled($path)
366
-    {
367
-        return 'yes' == $this->getOption($path);
368
-    }
361
+	/**
362
+	 * @param string $path
363
+	 * @return bool
364
+	 */
365
+	protected function isOptionEnabled($path)
366
+	{
367
+		return 'yes' == $this->getOption($path);
368
+	}
369 369
 
370
-    /**
371
-     * @param string $text
372
-     * @return string
373
-     */
374
-    protected function normalizeText($text)
375
-    {
376
-        $text = wp_kses($text, wp_kses_allowed_html());
377
-        $text = convert_smilies(strip_shortcodes($text));
378
-        $text = str_replace(']]>', ']]&gt;', $text);
379
-        $text = preg_replace('/(\R){2,}/', '$1', $text);
380
-        if ($this->isOptionEnabled('settings.reviews.excerpts')) {
381
-            $text = $this->getExcerpt($text);
382
-        }
383
-        return wptexturize(nl2br($text));
384
-    }
370
+	/**
371
+	 * @param string $text
372
+	 * @return string
373
+	 */
374
+	protected function normalizeText($text)
375
+	{
376
+		$text = wp_kses($text, wp_kses_allowed_html());
377
+		$text = convert_smilies(strip_shortcodes($text));
378
+		$text = str_replace(']]>', ']]&gt;', $text);
379
+		$text = preg_replace('/(\R){2,}/', '$1', $text);
380
+		if ($this->isOptionEnabled('settings.reviews.excerpts')) {
381
+			$text = $this->getExcerpt($text);
382
+		}
383
+		return wptexturize(nl2br($text));
384
+	}
385 385
 
386
-    /**
387
-     * @return void
388
-     */
389
-    protected function wrap(array &$renderedFields, Review $review)
390
-    {
391
-        $renderedFields = apply_filters('site-reviews/review/wrap', $renderedFields, $review, $this);
392
-        array_walk($renderedFields, function (&$value, $key) use ($review) {
393
-            $value = apply_filters('site-reviews/review/wrap/'.$key, $value, $review);
394
-            if (empty($value)) {
395
-                return;
396
-            }
397
-            $value = glsr(Builder::class)->div($value, [
398
-                'class' => 'glsr-review-'.$key,
399
-            ]);
400
-        });
401
-    }
386
+	/**
387
+	 * @return void
388
+	 */
389
+	protected function wrap(array &$renderedFields, Review $review)
390
+	{
391
+		$renderedFields = apply_filters('site-reviews/review/wrap', $renderedFields, $review, $this);
392
+		array_walk($renderedFields, function (&$value, $key) use ($review) {
393
+			$value = apply_filters('site-reviews/review/wrap/'.$key, $value, $review);
394
+			if (empty($value)) {
395
+				return;
396
+			}
397
+			$value = glsr(Builder::class)->div($value, [
398
+				'class' => 'glsr-review-'.$key,
399
+			]);
400
+		});
401
+	}
402 402
 }
Please login to merge, or discard this patch.
plugin/Modules/Html/Partial.php 1 patch
Indentation   +25 added lines, -25 removed lines patch added patch discarded remove patch
@@ -6,30 +6,30 @@
 block discarded – undo
6 6
 
7 7
 class Partial
8 8
 {
9
-    /**
10
-     * @param string $partialPath
11
-     * @return string
12
-     */
13
-    public function build($partialPath, array $args = [])
14
-    {
15
-        $className = Helper::buildClassName($partialPath, 'Modules\Html\Partials');
16
-        if (!class_exists($className)) {
17
-            glsr_log()->error('Partial missing: '.$className);
18
-            return;
19
-        }
20
-        $args = apply_filters('site-reviews/partial/args/'.$partialPath, $args);
21
-        $partial = glsr($className)->build($args);
22
-        $partial = apply_filters('site-reviews/rendered/partial', $partial, $partialPath, $args);
23
-        $partial = apply_filters('site-reviews/rendered/partial/'.$partialPath, $partial, $args);
24
-        return $partial;
25
-    }
9
+	/**
10
+	 * @param string $partialPath
11
+	 * @return string
12
+	 */
13
+	public function build($partialPath, array $args = [])
14
+	{
15
+		$className = Helper::buildClassName($partialPath, 'Modules\Html\Partials');
16
+		if (!class_exists($className)) {
17
+			glsr_log()->error('Partial missing: '.$className);
18
+			return;
19
+		}
20
+		$args = apply_filters('site-reviews/partial/args/'.$partialPath, $args);
21
+		$partial = glsr($className)->build($args);
22
+		$partial = apply_filters('site-reviews/rendered/partial', $partial, $partialPath, $args);
23
+		$partial = apply_filters('site-reviews/rendered/partial/'.$partialPath, $partial, $args);
24
+		return $partial;
25
+	}
26 26
 
27
-    /**
28
-     * @param string $partialPath
29
-     * @return void
30
-     */
31
-    public function render($partialPath, array $args = [])
32
-    {
33
-        echo $this->build($partialPath, $args);
34
-    }
27
+	/**
28
+	 * @param string $partialPath
29
+	 * @return void
30
+	 */
31
+	public function render($partialPath, array $args = [])
32
+	{
33
+		echo $this->build($partialPath, $args);
34
+	}
35 35
 }
Please login to merge, or discard this patch.
plugin/Modules/Upgrader/Upgrade_4_0_2.php 1 patch
Indentation   +50 added lines, -50 removed lines patch added patch discarded remove patch
@@ -9,67 +9,67 @@
 block discarded – undo
9 9
 
10 10
 class Upgrade_4_0_2
11 11
 {
12
-    public function __construct()
13
-    {
14
-        $this->migrateSettings();
15
-        $this->protectMetaKeys();
16
-        $this->deleteSessions();
17
-        delete_transient(Application::ID.'_cloudflare_ips');
18
-    }
12
+	public function __construct()
13
+	{
14
+		$this->migrateSettings();
15
+		$this->protectMetaKeys();
16
+		$this->deleteSessions();
17
+		delete_transient(Application::ID.'_cloudflare_ips');
18
+	}
19 19
 
20
-    /**
21
-     * @return void
22
-     */
23
-    public function deleteSessions()
24
-    {
25
-        global $wpdb;
26
-        $wpdb->query("
20
+	/**
21
+	 * @return void
22
+	 */
23
+	public function deleteSessions()
24
+	{
25
+		global $wpdb;
26
+		$wpdb->query("
27 27
             DELETE
28 28
             FROM {$wpdb->options}
29 29
             WHERE option_name LIKE '_glsr_session%'
30 30
         ");
31
-    }
31
+	}
32 32
 
33
-    /**
34
-     * @return void
35
-     */
36
-    public function migrateSettings()
37
-    {
38
-        if ($settings = get_option(OptionManager::databaseKey(3))) {
39
-            $multilingual = 'yes' == Arr::get($settings, 'settings.general.support.polylang')
40
-                ? 'polylang'
41
-                : '';
42
-            $settings = Arr::set($settings, 'settings.general.multilingual', $multilingual);
43
-            $settings = Arr::set($settings, 'settings.general.rebusify', 'no');
44
-            $settings = Arr::set($settings, 'settings.general.rebusify_email', '');
45
-            $settings = Arr::set($settings, 'settings.general.rebusify_serial', '');
46
-            $settings = Arr::set($settings, 'settings.reviews.name.format', '');
47
-            $settings = Arr::set($settings, 'settings.reviews.name.initial', '');
48
-            $settings = Arr::set($settings, 'settings.submissions.blacklist.integration', '');
49
-            $settings = Arr::set($settings, 'settings.submissions.limit', '');
50
-            $settings = Arr::set($settings, 'settings.submissions.limit_whitelist.email', '');
51
-            $settings = Arr::set($settings, 'settings.submissions.limit_whitelist.ip_address', '');
52
-            $settings = Arr::set($settings, 'settings.submissions.limit_whitelist.username', '');
53
-            unset($settings['settings']['general']['support']);
54
-            update_option(OptionManager::databaseKey(4), $settings);
55
-        }
56
-    }
33
+	/**
34
+	 * @return void
35
+	 */
36
+	public function migrateSettings()
37
+	{
38
+		if ($settings = get_option(OptionManager::databaseKey(3))) {
39
+			$multilingual = 'yes' == Arr::get($settings, 'settings.general.support.polylang')
40
+				? 'polylang'
41
+				: '';
42
+			$settings = Arr::set($settings, 'settings.general.multilingual', $multilingual);
43
+			$settings = Arr::set($settings, 'settings.general.rebusify', 'no');
44
+			$settings = Arr::set($settings, 'settings.general.rebusify_email', '');
45
+			$settings = Arr::set($settings, 'settings.general.rebusify_serial', '');
46
+			$settings = Arr::set($settings, 'settings.reviews.name.format', '');
47
+			$settings = Arr::set($settings, 'settings.reviews.name.initial', '');
48
+			$settings = Arr::set($settings, 'settings.submissions.blacklist.integration', '');
49
+			$settings = Arr::set($settings, 'settings.submissions.limit', '');
50
+			$settings = Arr::set($settings, 'settings.submissions.limit_whitelist.email', '');
51
+			$settings = Arr::set($settings, 'settings.submissions.limit_whitelist.ip_address', '');
52
+			$settings = Arr::set($settings, 'settings.submissions.limit_whitelist.username', '');
53
+			unset($settings['settings']['general']['support']);
54
+			update_option(OptionManager::databaseKey(4), $settings);
55
+		}
56
+	}
57 57
 
58
-    /**
59
-     * @return void
60
-     */
61
-    public function protectMetaKeys()
62
-    {
63
-        global $wpdb;
64
-        $keys = array_keys(glsr(CreateReviewDefaults::class)->defaults());
65
-        $keys = implode("','", $keys);
66
-        $postType = Application::POST_TYPE;
67
-        $wpdb->query("
58
+	/**
59
+	 * @return void
60
+	 */
61
+	public function protectMetaKeys()
62
+	{
63
+		global $wpdb;
64
+		$keys = array_keys(glsr(CreateReviewDefaults::class)->defaults());
65
+		$keys = implode("','", $keys);
66
+		$postType = Application::POST_TYPE;
67
+		$wpdb->query("
68 68
             UPDATE {$wpdb->postmeta} pm
69 69
             INNER JOIN {$wpdb->posts} p ON p.id = pm.post_id
70 70
             SET pm.meta_key = CONCAT('_', pm.meta_key)
71 71
             WHERE pm.meta_key IN ('{$keys}')
72 72
             AND p.post_type = '{$postType}'
73 73
         ");
74
-    }
74
+	}
75 75
 }
Please login to merge, or discard this patch.
plugin/Modules/Validator.php 1 patch
Indentation   +274 added lines, -274 removed lines patch added patch discarded remove patch
@@ -12,302 +12,302 @@
 block discarded – undo
12 12
  */
13 13
 class Validator
14 14
 {
15
-    use ValidationRules;
15
+	use ValidationRules;
16 16
 
17
-    /**
18
-     * @var array
19
-     */
20
-    public $errors = [];
17
+	/**
18
+	 * @var array
19
+	 */
20
+	public $errors = [];
21 21
 
22
-    /**
23
-     * The data under validation.
24
-     * @var array
25
-     */
26
-    protected $data = [];
22
+	/**
23
+	 * The data under validation.
24
+	 * @var array
25
+	 */
26
+	protected $data = [];
27 27
 
28
-    /**
29
-     * The failed validation rules.
30
-     * @var array
31
-     */
32
-    protected $failedRules = [];
28
+	/**
29
+	 * The failed validation rules.
30
+	 * @var array
31
+	 */
32
+	protected $failedRules = [];
33 33
 
34
-    /**
35
-     * The rules to be applied to the data.
36
-     * @var array
37
-     */
38
-    protected $rules = [];
34
+	/**
35
+	 * The rules to be applied to the data.
36
+	 * @var array
37
+	 */
38
+	protected $rules = [];
39 39
 
40
-    /**
41
-     * The size related validation rules.
42
-     * @var array
43
-     */
44
-    protected $sizeRules = [
45
-        'Between', 'Max', 'Min',
46
-    ];
40
+	/**
41
+	 * The size related validation rules.
42
+	 * @var array
43
+	 */
44
+	protected $sizeRules = [
45
+		'Between', 'Max', 'Min',
46
+	];
47 47
 
48
-    /**
49
-     * The validation rules that imply the field is required.
50
-     * @var array
51
-     */
52
-    protected $implicitRules = [
53
-        'Required',
54
-    ];
48
+	/**
49
+	 * The validation rules that imply the field is required.
50
+	 * @var array
51
+	 */
52
+	protected $implicitRules = [
53
+		'Required',
54
+	];
55 55
 
56
-    /**
57
-     * The numeric related validation rules.
58
-     * @var array
59
-     */
60
-    protected $numericRules = [
61
-        'Number',
62
-    ];
56
+	/**
57
+	 * The numeric related validation rules.
58
+	 * @var array
59
+	 */
60
+	protected $numericRules = [
61
+		'Number',
62
+	];
63 63
 
64
-    /**
65
-     * Run the validator's rules against its data.
66
-     * @param mixed $data
67
-     * @return array
68
-     */
69
-    public function validate($data, array $rules = [])
70
-    {
71
-        $this->normalizeData($data);
72
-        $this->setRules($rules);
73
-        foreach ($this->rules as $attribute => $rules) {
74
-            foreach ($rules as $rule) {
75
-                $this->validateAttribute($attribute, $rule);
76
-                if ($this->shouldStopValidating($attribute)) {
77
-                    break;
78
-                }
79
-            }
80
-        }
81
-        return $this->errors;
82
-    }
64
+	/**
65
+	 * Run the validator's rules against its data.
66
+	 * @param mixed $data
67
+	 * @return array
68
+	 */
69
+	public function validate($data, array $rules = [])
70
+	{
71
+		$this->normalizeData($data);
72
+		$this->setRules($rules);
73
+		foreach ($this->rules as $attribute => $rules) {
74
+			foreach ($rules as $rule) {
75
+				$this->validateAttribute($attribute, $rule);
76
+				if ($this->shouldStopValidating($attribute)) {
77
+					break;
78
+				}
79
+			}
80
+		}
81
+		return $this->errors;
82
+	}
83 83
 
84
-    /**
85
-     * Validate a given attribute against a rule.
86
-     * @param string $attribute
87
-     * @param string $rule
88
-     * @return void
89
-     * @throws BadMethodCallException
90
-     */
91
-    public function validateAttribute($attribute, $rule)
92
-    {
93
-        list($rule, $parameters) = $this->parseRule($rule);
94
-        if ('' == $rule) {
95
-            return;
96
-        }
97
-        $value = $this->getValue($attribute);
98
-        if (!method_exists($this, $method = 'validate'.$rule)) {
99
-            throw new BadMethodCallException("Method [$method] does not exist.");
100
-        }
101
-        if (!$this->$method($value, $attribute, $parameters)) {
102
-            $this->addFailure($attribute, $rule, $parameters);
103
-        }
104
-    }
84
+	/**
85
+	 * Validate a given attribute against a rule.
86
+	 * @param string $attribute
87
+	 * @param string $rule
88
+	 * @return void
89
+	 * @throws BadMethodCallException
90
+	 */
91
+	public function validateAttribute($attribute, $rule)
92
+	{
93
+		list($rule, $parameters) = $this->parseRule($rule);
94
+		if ('' == $rule) {
95
+			return;
96
+		}
97
+		$value = $this->getValue($attribute);
98
+		if (!method_exists($this, $method = 'validate'.$rule)) {
99
+			throw new BadMethodCallException("Method [$method] does not exist.");
100
+		}
101
+		if (!$this->$method($value, $attribute, $parameters)) {
102
+			$this->addFailure($attribute, $rule, $parameters);
103
+		}
104
+	}
105 105
 
106
-    /**
107
-     * Add an error message to the validator's collection of errors.
108
-     * @param string $attribute
109
-     * @param string $rule
110
-     * @return void
111
-     */
112
-    protected function addError($attribute, $rule, array $parameters)
113
-    {
114
-        $message = $this->getMessage($attribute, $rule, $parameters);
115
-        $this->errors[$attribute][] = $message;
116
-    }
106
+	/**
107
+	 * Add an error message to the validator's collection of errors.
108
+	 * @param string $attribute
109
+	 * @param string $rule
110
+	 * @return void
111
+	 */
112
+	protected function addError($attribute, $rule, array $parameters)
113
+	{
114
+		$message = $this->getMessage($attribute, $rule, $parameters);
115
+		$this->errors[$attribute][] = $message;
116
+	}
117 117
 
118
-    /**
119
-     * Add a failed rule and error message to the collection.
120
-     * @param string $attribute
121
-     * @param string $rule
122
-     * @return void
123
-     */
124
-    protected function addFailure($attribute, $rule, array $parameters)
125
-    {
126
-        $this->addError($attribute, $rule, $parameters);
127
-        $this->failedRules[$attribute][$rule] = $parameters;
128
-    }
118
+	/**
119
+	 * Add a failed rule and error message to the collection.
120
+	 * @param string $attribute
121
+	 * @param string $rule
122
+	 * @return void
123
+	 */
124
+	protected function addFailure($attribute, $rule, array $parameters)
125
+	{
126
+		$this->addError($attribute, $rule, $parameters);
127
+		$this->failedRules[$attribute][$rule] = $parameters;
128
+	}
129 129
 
130
-    /**
131
-     * Get the data type of the given attribute.
132
-     * @param string $attribute
133
-     * @return string
134
-     */
135
-    protected function getAttributeType($attribute)
136
-    {
137
-        return !$this->hasRule($attribute, $this->numericRules)
138
-            ? 'length'
139
-            : '';
140
-    }
130
+	/**
131
+	 * Get the data type of the given attribute.
132
+	 * @param string $attribute
133
+	 * @return string
134
+	 */
135
+	protected function getAttributeType($attribute)
136
+	{
137
+		return !$this->hasRule($attribute, $this->numericRules)
138
+			? 'length'
139
+			: '';
140
+	}
141 141
 
142
-    /**
143
-     * Get the validation message for an attribute and rule.
144
-     * @param string $attribute
145
-     * @param string $rule
146
-     * @return string|null
147
-     */
148
-    protected function getMessage($attribute, $rule, array $parameters)
149
-    {
150
-        if (in_array($rule, $this->sizeRules)) {
151
-            return $this->getSizeMessage($attribute, $rule, $parameters);
152
-        }
153
-        $lowerRule = Str::snakeCase($rule);
154
-        return $this->translator($lowerRule, $parameters);
155
-    }
142
+	/**
143
+	 * Get the validation message for an attribute and rule.
144
+	 * @param string $attribute
145
+	 * @param string $rule
146
+	 * @return string|null
147
+	 */
148
+	protected function getMessage($attribute, $rule, array $parameters)
149
+	{
150
+		if (in_array($rule, $this->sizeRules)) {
151
+			return $this->getSizeMessage($attribute, $rule, $parameters);
152
+		}
153
+		$lowerRule = Str::snakeCase($rule);
154
+		return $this->translator($lowerRule, $parameters);
155
+	}
156 156
 
157
-    /**
158
-     * Get a rule and its parameters for a given attribute.
159
-     * @param string $attribute
160
-     * @param string|array $rules
161
-     * @return array|null
162
-     */
163
-    protected function getRule($attribute, $rules)
164
-    {
165
-        if (!array_key_exists($attribute, $this->rules)) {
166
-            return;
167
-        }
168
-        $rules = (array) $rules;
169
-        foreach ($this->rules[$attribute] as $rule) {
170
-            list($rule, $parameters) = $this->parseRule($rule);
171
-            if (in_array($rule, $rules)) {
172
-                return [$rule, $parameters];
173
-            }
174
-        }
175
-    }
157
+	/**
158
+	 * Get a rule and its parameters for a given attribute.
159
+	 * @param string $attribute
160
+	 * @param string|array $rules
161
+	 * @return array|null
162
+	 */
163
+	protected function getRule($attribute, $rules)
164
+	{
165
+		if (!array_key_exists($attribute, $this->rules)) {
166
+			return;
167
+		}
168
+		$rules = (array) $rules;
169
+		foreach ($this->rules[$attribute] as $rule) {
170
+			list($rule, $parameters) = $this->parseRule($rule);
171
+			if (in_array($rule, $rules)) {
172
+				return [$rule, $parameters];
173
+			}
174
+		}
175
+	}
176 176
 
177
-    /**
178
-     * Get the size of an attribute.
179
-     * @param string $attribute
180
-     * @param mixed $value
181
-     * @return mixed
182
-     */
183
-    protected function getSize($attribute, $value)
184
-    {
185
-        $hasNumeric = $this->hasRule($attribute, $this->numericRules);
186
-        if (is_numeric($value) && $hasNumeric) {
187
-            return $value;
188
-        } elseif (is_array($value)) {
189
-            return count($value);
190
-        }
191
-        return function_exists('mb_strlen')
192
-            ? mb_strlen($value)
193
-            : strlen($value);
194
-    }
177
+	/**
178
+	 * Get the size of an attribute.
179
+	 * @param string $attribute
180
+	 * @param mixed $value
181
+	 * @return mixed
182
+	 */
183
+	protected function getSize($attribute, $value)
184
+	{
185
+		$hasNumeric = $this->hasRule($attribute, $this->numericRules);
186
+		if (is_numeric($value) && $hasNumeric) {
187
+			return $value;
188
+		} elseif (is_array($value)) {
189
+			return count($value);
190
+		}
191
+		return function_exists('mb_strlen')
192
+			? mb_strlen($value)
193
+			: strlen($value);
194
+	}
195 195
 
196
-    /**
197
-     * Get the proper error message for an attribute and size rule.
198
-     * @param string $attribute
199
-     * @param string $rule
200
-     * @return string|null
201
-     */
202
-    protected function getSizeMessage($attribute, $rule, array $parameters)
203
-    {
204
-        $type = $this->getAttributeType($attribute);
205
-        $lowerRule = Str::snakeCase($rule.$type);
206
-        return $this->translator($lowerRule, $parameters);
207
-    }
196
+	/**
197
+	 * Get the proper error message for an attribute and size rule.
198
+	 * @param string $attribute
199
+	 * @param string $rule
200
+	 * @return string|null
201
+	 */
202
+	protected function getSizeMessage($attribute, $rule, array $parameters)
203
+	{
204
+		$type = $this->getAttributeType($attribute);
205
+		$lowerRule = Str::snakeCase($rule.$type);
206
+		return $this->translator($lowerRule, $parameters);
207
+	}
208 208
 
209
-    /**
210
-     * Get the value of a given attribute.
211
-     * @param string $attribute
212
-     * @return mixed
213
-     */
214
-    protected function getValue($attribute)
215
-    {
216
-        if (isset($this->data[$attribute])) {
217
-            return $this->data[$attribute];
218
-        }
219
-    }
209
+	/**
210
+	 * Get the value of a given attribute.
211
+	 * @param string $attribute
212
+	 * @return mixed
213
+	 */
214
+	protected function getValue($attribute)
215
+	{
216
+		if (isset($this->data[$attribute])) {
217
+			return $this->data[$attribute];
218
+		}
219
+	}
220 220
 
221
-    /**
222
-     * Determine if the given attribute has a rule in the given set.
223
-     * @param string $attribute
224
-     * @param string|array $rules
225
-     * @return bool
226
-     */
227
-    protected function hasRule($attribute, $rules)
228
-    {
229
-        return !is_null($this->getRule($attribute, $rules));
230
-    }
221
+	/**
222
+	 * Determine if the given attribute has a rule in the given set.
223
+	 * @param string $attribute
224
+	 * @param string|array $rules
225
+	 * @return bool
226
+	 */
227
+	protected function hasRule($attribute, $rules)
228
+	{
229
+		return !is_null($this->getRule($attribute, $rules));
230
+	}
231 231
 
232
-    /**
233
-     * Normalize the provided data to an array.
234
-     * @param mixed $data
235
-     * @return void
236
-     */
237
-    protected function normalizeData($data)
238
-    {
239
-        $this->data = is_object($data)
240
-            ? get_object_vars($data)
241
-            : $data;
242
-    }
232
+	/**
233
+	 * Normalize the provided data to an array.
234
+	 * @param mixed $data
235
+	 * @return void
236
+	 */
237
+	protected function normalizeData($data)
238
+	{
239
+		$this->data = is_object($data)
240
+			? get_object_vars($data)
241
+			: $data;
242
+	}
243 243
 
244
-    /**
245
-     * Parse a parameter list.
246
-     * @param string $rule
247
-     * @param string $parameter
248
-     * @return array
249
-     */
250
-    protected function parseParameters($rule, $parameter)
251
-    {
252
-        return 'regex' == strtolower($rule)
253
-            ? [$parameter]
254
-            : str_getcsv($parameter);
255
-    }
244
+	/**
245
+	 * Parse a parameter list.
246
+	 * @param string $rule
247
+	 * @param string $parameter
248
+	 * @return array
249
+	 */
250
+	protected function parseParameters($rule, $parameter)
251
+	{
252
+		return 'regex' == strtolower($rule)
253
+			? [$parameter]
254
+			: str_getcsv($parameter);
255
+	}
256 256
 
257
-    /**
258
-     * Extract the rule name and parameters from a rule.
259
-     * @param string $rule
260
-     * @return array
261
-     */
262
-    protected function parseRule($rule)
263
-    {
264
-        $parameters = [];
265
-        if (false !== strpos($rule, ':')) {
266
-            list($rule, $parameter) = explode(':', $rule, 2);
267
-            $parameters = $this->parseParameters($rule, $parameter);
268
-        }
269
-        $rule = Str::camelCase($rule);
270
-        return [$rule, $parameters];
271
-    }
257
+	/**
258
+	 * Extract the rule name and parameters from a rule.
259
+	 * @param string $rule
260
+	 * @return array
261
+	 */
262
+	protected function parseRule($rule)
263
+	{
264
+		$parameters = [];
265
+		if (false !== strpos($rule, ':')) {
266
+			list($rule, $parameter) = explode(':', $rule, 2);
267
+			$parameters = $this->parseParameters($rule, $parameter);
268
+		}
269
+		$rule = Str::camelCase($rule);
270
+		return [$rule, $parameters];
271
+	}
272 272
 
273
-    /**
274
-     * Set the validation rules.
275
-     * @return void
276
-     */
277
-    protected function setRules(array $rules)
278
-    {
279
-        foreach ($rules as $key => $rule) {
280
-            $rules[$key] = is_string($rule)
281
-                ? explode('|', $rule)
282
-                : $rule;
283
-        }
284
-        $this->rules = $rules;
285
-    }
273
+	/**
274
+	 * Set the validation rules.
275
+	 * @return void
276
+	 */
277
+	protected function setRules(array $rules)
278
+	{
279
+		foreach ($rules as $key => $rule) {
280
+			$rules[$key] = is_string($rule)
281
+				? explode('|', $rule)
282
+				: $rule;
283
+		}
284
+		$this->rules = $rules;
285
+	}
286 286
 
287
-    /**
288
-     * Check if we should stop further validations on a given attribute.
289
-     * @param string $attribute
290
-     * @return bool
291
-     */
292
-    protected function shouldStopValidating($attribute)
293
-    {
294
-        return $this->hasRule($attribute, $this->implicitRules)
295
-            && isset($this->failedRules[$attribute])
296
-            && array_intersect(array_keys($this->failedRules[$attribute]), $this->implicitRules);
297
-    }
287
+	/**
288
+	 * Check if we should stop further validations on a given attribute.
289
+	 * @param string $attribute
290
+	 * @return bool
291
+	 */
292
+	protected function shouldStopValidating($attribute)
293
+	{
294
+		return $this->hasRule($attribute, $this->implicitRules)
295
+			&& isset($this->failedRules[$attribute])
296
+			&& array_intersect(array_keys($this->failedRules[$attribute]), $this->implicitRules);
297
+	}
298 298
 
299
-    /**
300
-     * Returns a translated message for the attribute.
301
-     * @param string $key
302
-     * @param string $attribute
303
-     * @return void|string
304
-     */
305
-    protected function translator($key, array $parameters)
306
-    {
307
-        $strings = glsr(ValidationStringsDefaults::class)->defaults();
308
-        if (isset($strings[$key])) {
309
-            return $this->replace($strings[$key], $parameters);
310
-        }
311
-        return 'error';
312
-    }
299
+	/**
300
+	 * Returns a translated message for the attribute.
301
+	 * @param string $key
302
+	 * @param string $attribute
303
+	 * @return void|string
304
+	 */
305
+	protected function translator($key, array $parameters)
306
+	{
307
+		$strings = glsr(ValidationStringsDefaults::class)->defaults();
308
+		if (isset($strings[$key])) {
309
+			return $this->replace($strings[$key], $parameters);
310
+		}
311
+		return 'error';
312
+	}
313 313
 }
Please login to merge, or discard this patch.
plugin/Modules/Schema.php 1 patch
Indentation   +267 added lines, -267 removed lines patch added patch discarded remove patch
@@ -12,291 +12,291 @@
 block discarded – undo
12 12
 
13 13
 class Schema
14 14
 {
15
-    /**
16
-     * @var array
17
-     */
18
-    protected $args;
15
+	/**
16
+	 * @var array
17
+	 */
18
+	protected $args;
19 19
 
20
-    /**
21
-     * @var array
22
-     */
23
-    protected $ratingCounts;
20
+	/**
21
+	 * @var array
22
+	 */
23
+	protected $ratingCounts;
24 24
 
25
-    /**
26
-     * @return array
27
-     */
28
-    public function build(array $args = [])
29
-    {
30
-        $this->args = $args;
31
-        $schema = $this->buildSummary($args);
32
-        $reviews = [];
33
-        foreach (glsr(ReviewManager::class)->get($this->args) as $review) {
34
-            // Only include critic reviews that have been directly produced by your site, not reviews from third-party sites or syndicated reviews.
35
-            // @see https://developers.google.com/search/docs/data-types/review
36
-            if ('local' != $review->review_type) {
37
-                continue;
38
-            }
39
-            $reviews[] = $this->buildReview($review);
40
-        }
41
-        if (!empty($reviews)) {
42
-            array_walk($reviews, function (&$review) {
43
-                unset($review['@context']);
44
-                unset($review['itemReviewed']);
45
-            });
46
-            $schema['review'] = $reviews;
47
-        }
48
-        return $schema;
49
-    }
25
+	/**
26
+	 * @return array
27
+	 */
28
+	public function build(array $args = [])
29
+	{
30
+		$this->args = $args;
31
+		$schema = $this->buildSummary($args);
32
+		$reviews = [];
33
+		foreach (glsr(ReviewManager::class)->get($this->args) as $review) {
34
+			// Only include critic reviews that have been directly produced by your site, not reviews from third-party sites or syndicated reviews.
35
+			// @see https://developers.google.com/search/docs/data-types/review
36
+			if ('local' != $review->review_type) {
37
+				continue;
38
+			}
39
+			$reviews[] = $this->buildReview($review);
40
+		}
41
+		if (!empty($reviews)) {
42
+			array_walk($reviews, function (&$review) {
43
+				unset($review['@context']);
44
+				unset($review['itemReviewed']);
45
+			});
46
+			$schema['review'] = $reviews;
47
+		}
48
+		return $schema;
49
+	}
50 50
 
51
-    /**
52
-     * @param array|null $args
53
-     * @return array
54
-     */
55
-    public function buildSummary($args = null)
56
-    {
57
-        if (is_array($args)) {
58
-            $this->args = $args;
59
-        }
60
-        $buildSummary = Helper::buildMethodName($this->getSchemaOptionValue('type'), 'buildSummaryFor');
61
-        $count = array_sum($this->getRatingCounts());
62
-        $schema = method_exists($this, $buildSummary)
63
-            ? $this->$buildSummary()
64
-            : $this->buildSummaryForCustom();
65
-        if (!empty($count)) {
66
-            $schema->aggregateRating(
67
-                $this->getSchemaType('AggregateRating')
68
-                    ->ratingValue($this->getRatingValue())
69
-                    ->reviewCount($count)
70
-                    ->bestRating(glsr()->constant('MAX_RATING', Rating::class))
71
-                    ->worstRating(glsr()->constant('MIN_RATING', Rating::class))
72
-            );
73
-        }
74
-        $schema = $schema->toArray();
75
-        return apply_filters('site-reviews/schema/'.$schema['@type'], $schema, $args);
76
-    }
51
+	/**
52
+	 * @param array|null $args
53
+	 * @return array
54
+	 */
55
+	public function buildSummary($args = null)
56
+	{
57
+		if (is_array($args)) {
58
+			$this->args = $args;
59
+		}
60
+		$buildSummary = Helper::buildMethodName($this->getSchemaOptionValue('type'), 'buildSummaryFor');
61
+		$count = array_sum($this->getRatingCounts());
62
+		$schema = method_exists($this, $buildSummary)
63
+			? $this->$buildSummary()
64
+			: $this->buildSummaryForCustom();
65
+		if (!empty($count)) {
66
+			$schema->aggregateRating(
67
+				$this->getSchemaType('AggregateRating')
68
+					->ratingValue($this->getRatingValue())
69
+					->reviewCount($count)
70
+					->bestRating(glsr()->constant('MAX_RATING', Rating::class))
71
+					->worstRating(glsr()->constant('MIN_RATING', Rating::class))
72
+			);
73
+		}
74
+		$schema = $schema->toArray();
75
+		return apply_filters('site-reviews/schema/'.$schema['@type'], $schema, $args);
76
+	}
77 77
 
78
-    /**
79
-     * @return void
80
-     */
81
-    public function render()
82
-    {
83
-        if (empty(glsr()->schemas)) {
84
-            return;
85
-        }
86
-        printf('<script type="application/ld+json">%s</script>', json_encode(
87
-            apply_filters('site-reviews/schema/all', glsr()->schemas),
88
-            JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES
89
-        ));
90
-    }
78
+	/**
79
+	 * @return void
80
+	 */
81
+	public function render()
82
+	{
83
+		if (empty(glsr()->schemas)) {
84
+			return;
85
+		}
86
+		printf('<script type="application/ld+json">%s</script>', json_encode(
87
+			apply_filters('site-reviews/schema/all', glsr()->schemas),
88
+			JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES
89
+		));
90
+	}
91 91
 
92
-    /**
93
-     * @return void
94
-     */
95
-    public function store(array $schema)
96
-    {
97
-        $schemas = glsr()->schemas;
98
-        $schemas[] = $schema;
99
-        glsr()->schemas = array_map('unserialize', array_unique(array_map('serialize', $schemas)));
100
-    }
92
+	/**
93
+	 * @return void
94
+	 */
95
+	public function store(array $schema)
96
+	{
97
+		$schemas = glsr()->schemas;
98
+		$schemas[] = $schema;
99
+		glsr()->schemas = array_map('unserialize', array_unique(array_map('serialize', $schemas)));
100
+	}
101 101
 
102
-    /**
103
-     * @param Review $review
104
-     * @return array
105
-     */
106
-    protected function buildReview($review)
107
-    {
108
-        $schema = $this->getSchemaType('Review')
109
-            ->doIf(!in_array('title', $this->args['hide']), function ($schema) use ($review) {
110
-                $schema->name($review->title);
111
-            })
112
-            ->doIf(!in_array('excerpt', $this->args['hide']), function ($schema) use ($review) {
113
-                $schema->reviewBody($review->content);
114
-            })
115
-            ->datePublished((new DateTime($review->date)))
116
-            ->author($this->getSchemaType('Person')->name($review->author))
117
-            ->itemReviewed($this->getSchemaType()->name($this->getSchemaOptionValue('name')));
118
-        if (!empty($review->rating)) {
119
-            $schema->reviewRating(
120
-                $this->getSchemaType('Rating')
121
-                    ->ratingValue($review->rating)
122
-                    ->bestRating(glsr()->constant('MAX_RATING', Rating::class))
123
-                    ->worstRating(glsr()->constant('MIN_RATING', Rating::class))
124
-            );
125
-        }
126
-        return apply_filters('site-reviews/schema/review', $schema->toArray(), $review, $this->args);
127
-    }
102
+	/**
103
+	 * @param Review $review
104
+	 * @return array
105
+	 */
106
+	protected function buildReview($review)
107
+	{
108
+		$schema = $this->getSchemaType('Review')
109
+			->doIf(!in_array('title', $this->args['hide']), function ($schema) use ($review) {
110
+				$schema->name($review->title);
111
+			})
112
+			->doIf(!in_array('excerpt', $this->args['hide']), function ($schema) use ($review) {
113
+				$schema->reviewBody($review->content);
114
+			})
115
+			->datePublished((new DateTime($review->date)))
116
+			->author($this->getSchemaType('Person')->name($review->author))
117
+			->itemReviewed($this->getSchemaType()->name($this->getSchemaOptionValue('name')));
118
+		if (!empty($review->rating)) {
119
+			$schema->reviewRating(
120
+				$this->getSchemaType('Rating')
121
+					->ratingValue($review->rating)
122
+					->bestRating(glsr()->constant('MAX_RATING', Rating::class))
123
+					->worstRating(glsr()->constant('MIN_RATING', Rating::class))
124
+			);
125
+		}
126
+		return apply_filters('site-reviews/schema/review', $schema->toArray(), $review, $this->args);
127
+	}
128 128
 
129
-    /**
130
-     * @param mixed $schema
131
-     * @return mixed
132
-     */
133
-    protected function buildSchemaValues($schema, array $values = [])
134
-    {
135
-        foreach ($values as $value) {
136
-            $option = $this->getSchemaOptionValue($value);
137
-            if (empty($option)) {
138
-                continue;
139
-            }
140
-            $schema->$value($option);
141
-        }
142
-        return $schema;
143
-    }
129
+	/**
130
+	 * @param mixed $schema
131
+	 * @return mixed
132
+	 */
133
+	protected function buildSchemaValues($schema, array $values = [])
134
+	{
135
+		foreach ($values as $value) {
136
+			$option = $this->getSchemaOptionValue($value);
137
+			if (empty($option)) {
138
+				continue;
139
+			}
140
+			$schema->$value($option);
141
+		}
142
+		return $schema;
143
+	}
144 144
 
145
-    /**
146
-     * @return mixed
147
-     */
148
-    protected function buildSummaryForCustom()
149
-    {
150
-        return $this->buildSchemaValues($this->getSchemaType(), [
151
-            'description', 'image', 'name', 'url',
152
-        ]);
153
-    }
145
+	/**
146
+	 * @return mixed
147
+	 */
148
+	protected function buildSummaryForCustom()
149
+	{
150
+		return $this->buildSchemaValues($this->getSchemaType(), [
151
+			'description', 'image', 'name', 'url',
152
+		]);
153
+	}
154 154
 
155
-    /**
156
-     * @return mixed
157
-     */
158
-    protected function buildSummaryForLocalBusiness()
159
-    {
160
-        return $this->buildSchemaValues($this->buildSummaryForCustom(), [
161
-            'address', 'priceRange', 'telephone',
162
-        ]);
163
-    }
155
+	/**
156
+	 * @return mixed
157
+	 */
158
+	protected function buildSummaryForLocalBusiness()
159
+	{
160
+		return $this->buildSchemaValues($this->buildSummaryForCustom(), [
161
+			'address', 'priceRange', 'telephone',
162
+		]);
163
+	}
164 164
 
165
-    /**
166
-     * @return mixed
167
-     */
168
-    protected function buildSummaryForProduct()
169
-    {
170
-        $offerType = $this->getSchemaOption('offerType', 'AggregateOffer');
171
-        $offers = $this->buildSchemaValues($this->getSchemaType($offerType), [
172
-            'highPrice', 'lowPrice', 'price', 'priceCurrency',
173
-        ]);
174
-        return $this->buildSummaryForCustom()
175
-            ->doIf(!empty($offers->getProperties()), function ($schema) use ($offers) {
176
-                $schema->offers($offers);
177
-            })
178
-            ->setProperty('@id', $this->getSchemaOptionValue('url').'#product');
179
-    }
165
+	/**
166
+	 * @return mixed
167
+	 */
168
+	protected function buildSummaryForProduct()
169
+	{
170
+		$offerType = $this->getSchemaOption('offerType', 'AggregateOffer');
171
+		$offers = $this->buildSchemaValues($this->getSchemaType($offerType), [
172
+			'highPrice', 'lowPrice', 'price', 'priceCurrency',
173
+		]);
174
+		return $this->buildSummaryForCustom()
175
+			->doIf(!empty($offers->getProperties()), function ($schema) use ($offers) {
176
+				$schema->offers($offers);
177
+			})
178
+			->setProperty('@id', $this->getSchemaOptionValue('url').'#product');
179
+	}
180 180
 
181
-    /**
182
-     * @return array
183
-     */
184
-    protected function getRatingCounts()
185
-    {
186
-        if (!isset($this->ratingCounts)) {
187
-            $this->ratingCounts = glsr(ReviewManager::class)->getRatingCounts($this->args);
188
-        }
189
-        return $this->ratingCounts;
190
-    }
181
+	/**
182
+	 * @return array
183
+	 */
184
+	protected function getRatingCounts()
185
+	{
186
+		if (!isset($this->ratingCounts)) {
187
+			$this->ratingCounts = glsr(ReviewManager::class)->getRatingCounts($this->args);
188
+		}
189
+		return $this->ratingCounts;
190
+	}
191 191
 
192
-    /**
193
-     * @return int|float
194
-     */
195
-    protected function getRatingValue()
196
-    {
197
-        return glsr(Rating::class)->getAverage($this->getRatingCounts());
198
-    }
192
+	/**
193
+	 * @return int|float
194
+	 */
195
+	protected function getRatingValue()
196
+	{
197
+		return glsr(Rating::class)->getAverage($this->getRatingCounts());
198
+	}
199 199
 
200
-    /**
201
-     * @param string $option
202
-     * @param string $fallback
203
-     * @return string
204
-     */
205
-    protected function getSchemaOption($option, $fallback)
206
-    {
207
-        $option = strtolower($option);
208
-        if ($schemaOption = trim((string) get_post_meta(intval(get_the_ID()), 'schema_'.$option, true))) {
209
-            return $schemaOption;
210
-        }
211
-        $setting = glsr(OptionManager::class)->get('settings.schema.'.$option);
212
-        if (is_array($setting)) {
213
-            return $this->getSchemaOptionDefault($setting, $fallback);
214
-        }
215
-        return !empty($setting)
216
-            ? $setting
217
-            : $fallback;
218
-    }
200
+	/**
201
+	 * @param string $option
202
+	 * @param string $fallback
203
+	 * @return string
204
+	 */
205
+	protected function getSchemaOption($option, $fallback)
206
+	{
207
+		$option = strtolower($option);
208
+		if ($schemaOption = trim((string) get_post_meta(intval(get_the_ID()), 'schema_'.$option, true))) {
209
+			return $schemaOption;
210
+		}
211
+		$setting = glsr(OptionManager::class)->get('settings.schema.'.$option);
212
+		if (is_array($setting)) {
213
+			return $this->getSchemaOptionDefault($setting, $fallback);
214
+		}
215
+		return !empty($setting)
216
+			? $setting
217
+			: $fallback;
218
+	}
219 219
 
220
-    /**
221
-     * @param string $fallback
222
-     * @return string
223
-     */
224
-    protected function getSchemaOptionDefault(array $setting, $fallback)
225
-    {
226
-        $setting = wp_parse_args($setting, [
227
-            'custom' => '',
228
-            'default' => $fallback,
229
-        ]);
230
-        return 'custom' != $setting['default']
231
-            ? $setting['default']
232
-            : $setting['custom'];
233
-    }
220
+	/**
221
+	 * @param string $fallback
222
+	 * @return string
223
+	 */
224
+	protected function getSchemaOptionDefault(array $setting, $fallback)
225
+	{
226
+		$setting = wp_parse_args($setting, [
227
+			'custom' => '',
228
+			'default' => $fallback,
229
+		]);
230
+		return 'custom' != $setting['default']
231
+			? $setting['default']
232
+			: $setting['custom'];
233
+	}
234 234
 
235
-    /**
236
-     * @param string $option
237
-     * @param string $fallback
238
-     * @return void|string
239
-     */
240
-    protected function getSchemaOptionValue($option, $fallback = 'post')
241
-    {
242
-        $value = $this->getSchemaOption($option, $fallback);
243
-        if ($value != $fallback) {
244
-            return $value;
245
-        }
246
-        if (!is_single() && !is_page()) {
247
-            return;
248
-        }
249
-        $method = Helper::buildMethodName($option, 'getThing');
250
-        if (method_exists($this, $method)) {
251
-            return $this->$method();
252
-        }
253
-    }
235
+	/**
236
+	 * @param string $option
237
+	 * @param string $fallback
238
+	 * @return void|string
239
+	 */
240
+	protected function getSchemaOptionValue($option, $fallback = 'post')
241
+	{
242
+		$value = $this->getSchemaOption($option, $fallback);
243
+		if ($value != $fallback) {
244
+			return $value;
245
+		}
246
+		if (!is_single() && !is_page()) {
247
+			return;
248
+		}
249
+		$method = Helper::buildMethodName($option, 'getThing');
250
+		if (method_exists($this, $method)) {
251
+			return $this->$method();
252
+		}
253
+	}
254 254
 
255
-    /**
256
-     * @param string|null $type
257
-     * @return mixed
258
-     */
259
-    protected function getSchemaType($type = null)
260
-    {
261
-        if (!is_string($type)) {
262
-            $type = $this->getSchemaOption('type', 'LocalBusiness');
263
-        }
264
-        $className = Helper::buildClassName($type, 'Modules\Schema');
265
-        return class_exists($className)
266
-            ? new $className()
267
-            : new UnknownType($type);
268
-    }
255
+	/**
256
+	 * @param string|null $type
257
+	 * @return mixed
258
+	 */
259
+	protected function getSchemaType($type = null)
260
+	{
261
+		if (!is_string($type)) {
262
+			$type = $this->getSchemaOption('type', 'LocalBusiness');
263
+		}
264
+		$className = Helper::buildClassName($type, 'Modules\Schema');
265
+		return class_exists($className)
266
+			? new $className()
267
+			: new UnknownType($type);
268
+	}
269 269
 
270
-    /**
271
-     * @return string
272
-     */
273
-    protected function getThingDescription()
274
-    {
275
-        $description = strip_shortcodes(wp_strip_all_tags(get_the_excerpt()));
276
-        return wp_trim_words($description, apply_filters('excerpt_length', 55));
277
-    }
270
+	/**
271
+	 * @return string
272
+	 */
273
+	protected function getThingDescription()
274
+	{
275
+		$description = strip_shortcodes(wp_strip_all_tags(get_the_excerpt()));
276
+		return wp_trim_words($description, apply_filters('excerpt_length', 55));
277
+	}
278 278
 
279
-    /**
280
-     * @return string
281
-     */
282
-    protected function getThingImage()
283
-    {
284
-        return (string) get_the_post_thumbnail_url(null, 'large');
285
-    }
279
+	/**
280
+	 * @return string
281
+	 */
282
+	protected function getThingImage()
283
+	{
284
+		return (string) get_the_post_thumbnail_url(null, 'large');
285
+	}
286 286
 
287
-    /**
288
-     * @return string
289
-     */
290
-    protected function getThingName()
291
-    {
292
-        return get_the_title();
293
-    }
287
+	/**
288
+	 * @return string
289
+	 */
290
+	protected function getThingName()
291
+	{
292
+		return get_the_title();
293
+	}
294 294
 
295
-    /**
296
-     * @return string
297
-     */
298
-    protected function getThingUrl()
299
-    {
300
-        return (string) get_the_permalink();
301
-    }
295
+	/**
296
+	 * @return string
297
+	 */
298
+	protected function getThingUrl()
299
+	{
300
+		return (string) get_the_permalink();
301
+	}
302 302
 }
Please login to merge, or discard this patch.
plugin/Controllers/EditorController/Metaboxes.php 1 patch
Indentation   +28 added lines, -28 removed lines patch added patch discarded remove patch
@@ -7,33 +7,33 @@
 block discarded – undo
7 7
 
8 8
 class Metaboxes
9 9
 {
10
-    /**
11
-     * @param int $postId
12
-     * @return void
13
-     */
14
-    public function saveAssignedToMetabox($postId)
15
-    {
16
-        if (!wp_verify_nonce(Helper::filterInput('_nonce-assigned-to'), 'assigned_to')) {
17
-            return;
18
-        }
19
-        $assignedTo = strval(Helper::filterInput('assigned_to'));
20
-        glsr(Database::class)->update($postId, 'assigned_to', $assignedTo);
21
-    }
10
+	/**
11
+	 * @param int $postId
12
+	 * @return void
13
+	 */
14
+	public function saveAssignedToMetabox($postId)
15
+	{
16
+		if (!wp_verify_nonce(Helper::filterInput('_nonce-assigned-to'), 'assigned_to')) {
17
+			return;
18
+		}
19
+		$assignedTo = strval(Helper::filterInput('assigned_to'));
20
+		glsr(Database::class)->update($postId, 'assigned_to', $assignedTo);
21
+	}
22 22
 
23
-    /**
24
-     * @param int $postId
25
-     * @return mixed
26
-     */
27
-    public function saveResponseMetabox($postId)
28
-    {
29
-        if (!wp_verify_nonce(Helper::filterInput('_nonce-response'), 'response')) {
30
-            return;
31
-        }
32
-        $response = strval(Helper::filterInput('response'));
33
-        glsr(Database::class)->update($postId, 'response', trim(wp_kses($response, [
34
-            'a' => ['href' => [], 'title' => []],
35
-            'em' => [],
36
-            'strong' => [],
37
-        ])));
38
-    }
23
+	/**
24
+	 * @param int $postId
25
+	 * @return mixed
26
+	 */
27
+	public function saveResponseMetabox($postId)
28
+	{
29
+		if (!wp_verify_nonce(Helper::filterInput('_nonce-response'), 'response')) {
30
+			return;
31
+		}
32
+		$response = strval(Helper::filterInput('response'));
33
+		glsr(Database::class)->update($postId, 'response', trim(wp_kses($response, [
34
+			'a' => ['href' => [], 'title' => []],
35
+			'em' => [],
36
+			'strong' => [],
37
+		])));
38
+	}
39 39
 }
Please login to merge, or discard this patch.
plugin/Controllers/MenuController.php 1 patch
Indentation   +176 added lines, -176 removed lines patch added patch discarded remove patch
@@ -14,189 +14,189 @@
 block discarded – undo
14 14
 
15 15
 class MenuController extends Controller
16 16
 {
17
-    /**
18
-     * @return void
19
-     * @action admin_menu
20
-     */
21
-    public function registerMenuCount()
22
-    {
23
-        global $menu, $typenow;
24
-        foreach ($menu as $key => $value) {
25
-            if (!isset($value[2]) || $value[2] != 'edit.php?post_type='.Application::POST_TYPE) {
26
-                continue;
27
-            }
28
-            $postCount = wp_count_posts(Application::POST_TYPE);
29
-            $pendingCount = glsr(Builder::class)->span(number_format_i18n($postCount->pending), [
30
-                'class' => 'unapproved-count',
31
-            ]);
32
-            $awaitingModeration = glsr(Builder::class)->span($pendingCount, [
33
-                'class' => 'awaiting-mod count-'.$postCount->pending,
34
-            ]);
35
-            $menu[$key][0].= ' '.$awaitingModeration;
36
-            if (Application::POST_TYPE === $typenow) {
37
-                $menu[$key][4].= ' current';
38
-            }
39
-            break;
40
-        }
41
-    }
17
+	/**
18
+	 * @return void
19
+	 * @action admin_menu
20
+	 */
21
+	public function registerMenuCount()
22
+	{
23
+		global $menu, $typenow;
24
+		foreach ($menu as $key => $value) {
25
+			if (!isset($value[2]) || $value[2] != 'edit.php?post_type='.Application::POST_TYPE) {
26
+				continue;
27
+			}
28
+			$postCount = wp_count_posts(Application::POST_TYPE);
29
+			$pendingCount = glsr(Builder::class)->span(number_format_i18n($postCount->pending), [
30
+				'class' => 'unapproved-count',
31
+			]);
32
+			$awaitingModeration = glsr(Builder::class)->span($pendingCount, [
33
+				'class' => 'awaiting-mod count-'.$postCount->pending,
34
+			]);
35
+			$menu[$key][0].= ' '.$awaitingModeration;
36
+			if (Application::POST_TYPE === $typenow) {
37
+				$menu[$key][4].= ' current';
38
+			}
39
+			break;
40
+		}
41
+	}
42 42
 
43
-    /**
44
-     * @return void
45
-     * @action admin_menu
46
-     */
47
-    public function registerSubMenus()
48
-    {
49
-        $pages = $this->parseWithFilter('submenu/pages', [
50
-            'settings' => __('Settings', 'site-reviews'),
51
-            'tools' => __('Tools', 'site-reviews'),
52
-            'addons' => __('Add-ons', 'site-reviews'),
53
-            'documentation' => __('Documentation', 'site-reviews'),
54
-        ]);
55
-        foreach ($pages as $slug => $title) {
56
-            $method = Helper::buildMethodName('render-'.$slug.'-menu');
57
-            $callback = apply_filters('site-reviews/addon/submenu/callback', [$this, $method], $slug);
58
-            if (!is_callable($callback)) {
59
-                continue;
60
-            }
61
-            add_submenu_page('edit.php?post_type='.Application::POST_TYPE, $title, $title, glsr()->getPermission($slug), $slug, $callback);
62
-        }
63
-    }
43
+	/**
44
+	 * @return void
45
+	 * @action admin_menu
46
+	 */
47
+	public function registerSubMenus()
48
+	{
49
+		$pages = $this->parseWithFilter('submenu/pages', [
50
+			'settings' => __('Settings', 'site-reviews'),
51
+			'tools' => __('Tools', 'site-reviews'),
52
+			'addons' => __('Add-ons', 'site-reviews'),
53
+			'documentation' => __('Documentation', 'site-reviews'),
54
+		]);
55
+		foreach ($pages as $slug => $title) {
56
+			$method = Helper::buildMethodName('render-'.$slug.'-menu');
57
+			$callback = apply_filters('site-reviews/addon/submenu/callback', [$this, $method], $slug);
58
+			if (!is_callable($callback)) {
59
+				continue;
60
+			}
61
+			add_submenu_page('edit.php?post_type='.Application::POST_TYPE, $title, $title, glsr()->getPermission($slug), $slug, $callback);
62
+		}
63
+	}
64 64
 
65
-    /**
66
-     * @return void
67
-     * @see $this->registerSubMenus()
68
-     * @callback add_submenu_page
69
-     */
70
-    public function renderAddonsMenu()
71
-    {
72
-        $this->renderPage('addons', [
73
-            'template' => glsr(Template::class),
74
-        ]);
75
-    }
65
+	/**
66
+	 * @return void
67
+	 * @see $this->registerSubMenus()
68
+	 * @callback add_submenu_page
69
+	 */
70
+	public function renderAddonsMenu()
71
+	{
72
+		$this->renderPage('addons', [
73
+			'template' => glsr(Template::class),
74
+		]);
75
+	}
76 76
 
77
-    /**
78
-     * @return void
79
-     * @see $this->registerSubMenus()
80
-     * @callback add_submenu_page
81
-     */
82
-    public function renderDocumentationMenu()
83
-    {
84
-        $tabs = $this->parseWithFilter('documentation/tabs', [
85
-            'support' => __('Support', 'site-reviews'),
86
-            'faq' => __('FAQ', 'site-reviews'),
87
-            'shortcodes' => __('Shortcodes', 'site-reviews'),
88
-            'hooks' => __('Hooks', 'site-reviews'),
89
-            'functions' => __('Functions', 'site-reviews'),
90
-            'addons' => __('Addons', 'site-reviews'),
91
-        ]);
92
-        $addons = apply_filters('site-reviews/addon/documentation', []);
93
-        ksort($addons);
94
-        if (empty($addons)) {
95
-            unset($tabs['addons']);
96
-        }
97
-        $this->renderPage('documentation', [
98
-            'addons' => $addons,
99
-            'tabs' => $tabs,
100
-        ]);
101
-    }
77
+	/**
78
+	 * @return void
79
+	 * @see $this->registerSubMenus()
80
+	 * @callback add_submenu_page
81
+	 */
82
+	public function renderDocumentationMenu()
83
+	{
84
+		$tabs = $this->parseWithFilter('documentation/tabs', [
85
+			'support' => __('Support', 'site-reviews'),
86
+			'faq' => __('FAQ', 'site-reviews'),
87
+			'shortcodes' => __('Shortcodes', 'site-reviews'),
88
+			'hooks' => __('Hooks', 'site-reviews'),
89
+			'functions' => __('Functions', 'site-reviews'),
90
+			'addons' => __('Addons', 'site-reviews'),
91
+		]);
92
+		$addons = apply_filters('site-reviews/addon/documentation', []);
93
+		ksort($addons);
94
+		if (empty($addons)) {
95
+			unset($tabs['addons']);
96
+		}
97
+		$this->renderPage('documentation', [
98
+			'addons' => $addons,
99
+			'tabs' => $tabs,
100
+		]);
101
+	}
102 102
 
103
-    /**
104
-     * @return void
105
-     * @see $this->registerSubMenus()
106
-     * @callback add_submenu_page
107
-     */
108
-    public function renderSettingsMenu()
109
-    {
110
-        $tabs = $this->parseWithFilter('settings/tabs', [
111
-            'general' => __('General', 'site-reviews'),
112
-            'reviews' => __('Reviews', 'site-reviews'),
113
-            'submissions' => __('Submissions', 'site-reviews'),
114
-            'schema' => __('Schema', 'site-reviews'),
115
-            'translations' => __('Translations', 'site-reviews'),
116
-            'addons' => __('Addons', 'site-reviews'),
117
-            'licenses' => __('Licenses', 'site-reviews'),
118
-        ]);
119
-        if (empty(Arr::get(glsr()->defaults, 'settings.addons'))) {
120
-            unset($tabs['addons']);
121
-        }
122
-        if (empty(Arr::get(glsr()->defaults, 'settings.licenses'))) {
123
-            unset($tabs['licenses']);
124
-        }
125
-        $this->renderPage('settings', [
126
-            'settings' => glsr(Settings::class),
127
-            'tabs' => $tabs,
128
-        ]);
129
-    }
103
+	/**
104
+	 * @return void
105
+	 * @see $this->registerSubMenus()
106
+	 * @callback add_submenu_page
107
+	 */
108
+	public function renderSettingsMenu()
109
+	{
110
+		$tabs = $this->parseWithFilter('settings/tabs', [
111
+			'general' => __('General', 'site-reviews'),
112
+			'reviews' => __('Reviews', 'site-reviews'),
113
+			'submissions' => __('Submissions', 'site-reviews'),
114
+			'schema' => __('Schema', 'site-reviews'),
115
+			'translations' => __('Translations', 'site-reviews'),
116
+			'addons' => __('Addons', 'site-reviews'),
117
+			'licenses' => __('Licenses', 'site-reviews'),
118
+		]);
119
+		if (empty(Arr::get(glsr()->defaults, 'settings.addons'))) {
120
+			unset($tabs['addons']);
121
+		}
122
+		if (empty(Arr::get(glsr()->defaults, 'settings.licenses'))) {
123
+			unset($tabs['licenses']);
124
+		}
125
+		$this->renderPage('settings', [
126
+			'settings' => glsr(Settings::class),
127
+			'tabs' => $tabs,
128
+		]);
129
+	}
130 130
 
131
-    /**
132
-     * @return void
133
-     * @see $this->registerSubMenus()
134
-     * @callback add_submenu_page
135
-     */
136
-    public function renderToolsMenu()
137
-    {
138
-        $tabs = $this->parseWithFilter('tools/tabs', [
139
-            'general' => __('General', 'site-reviews'),
140
-            'sync' => __('Sync Reviews', 'site-reviews'),
141
-            'console' => __('Console', 'site-reviews'),
142
-            'system-info' => __('System Info', 'site-reviews'),
143
-        ]);
144
-        if (!apply_filters('site-reviews/addon/sync/enable', false)) {
145
-            unset($tabs['sync']);
146
-        }
147
-        $this->renderPage('tools', [
148
-            'data' => [
149
-                'context' => [
150
-                    'base_url' => admin_url('edit.php?post_type='.Application::POST_TYPE),
151
-                    'console' => strval(glsr(Console::class)),
152
-                    'id' => Application::ID,
153
-                    'system' => strval(glsr(System::class)),
154
-                ],
155
-                'services' => apply_filters('site-reviews/addon/sync/services', []),
156
-            ],
157
-            'tabs' => $tabs,
158
-            'template' => glsr(Template::class),
159
-        ]);
160
-    }
131
+	/**
132
+	 * @return void
133
+	 * @see $this->registerSubMenus()
134
+	 * @callback add_submenu_page
135
+	 */
136
+	public function renderToolsMenu()
137
+	{
138
+		$tabs = $this->parseWithFilter('tools/tabs', [
139
+			'general' => __('General', 'site-reviews'),
140
+			'sync' => __('Sync Reviews', 'site-reviews'),
141
+			'console' => __('Console', 'site-reviews'),
142
+			'system-info' => __('System Info', 'site-reviews'),
143
+		]);
144
+		if (!apply_filters('site-reviews/addon/sync/enable', false)) {
145
+			unset($tabs['sync']);
146
+		}
147
+		$this->renderPage('tools', [
148
+			'data' => [
149
+				'context' => [
150
+					'base_url' => admin_url('edit.php?post_type='.Application::POST_TYPE),
151
+					'console' => strval(glsr(Console::class)),
152
+					'id' => Application::ID,
153
+					'system' => strval(glsr(System::class)),
154
+				],
155
+				'services' => apply_filters('site-reviews/addon/sync/services', []),
156
+			],
157
+			'tabs' => $tabs,
158
+			'template' => glsr(Template::class),
159
+		]);
160
+	}
161 161
 
162
-    /**
163
-     * @return void
164
-     * @action admin_init
165
-     */
166
-    public function setCustomPermissions()
167
-    {
168
-        foreach (wp_roles()->roles as $role => $value) {
169
-            wp_roles()->remove_cap($role, 'create_'.Application::POST_TYPE);
170
-        }
171
-    }
162
+	/**
163
+	 * @return void
164
+	 * @action admin_init
165
+	 */
166
+	public function setCustomPermissions()
167
+	{
168
+		foreach (wp_roles()->roles as $role => $value) {
169
+			wp_roles()->remove_cap($role, 'create_'.Application::POST_TYPE);
170
+		}
171
+	}
172 172
 
173
-    /**
174
-     * @return string
175
-     */
176
-    protected function getNotices()
177
-    {
178
-        return glsr(Builder::class)->div(glsr(Notice::class)->get(), [
179
-            'id' => 'glsr-notices',
180
-        ]);
181
-    }
173
+	/**
174
+	 * @return string
175
+	 */
176
+	protected function getNotices()
177
+	{
178
+		return glsr(Builder::class)->div(glsr(Notice::class)->get(), [
179
+			'id' => 'glsr-notices',
180
+		]);
181
+	}
182 182
 
183
-    /**
184
-     * @param string $hookSuffix
185
-     * @return array
186
-     */
187
-    protected function parseWithFilter($hookSuffix, array $args = [])
188
-    {
189
-        return apply_filters('site-reviews/addon/'.$hookSuffix, $args);
190
-    }
183
+	/**
184
+	 * @param string $hookSuffix
185
+	 * @return array
186
+	 */
187
+	protected function parseWithFilter($hookSuffix, array $args = [])
188
+	{
189
+		return apply_filters('site-reviews/addon/'.$hookSuffix, $args);
190
+	}
191 191
 
192
-    /**
193
-     * @param string $page
194
-     * @return void
195
-     */
196
-    protected function renderPage($page, array $data = [])
197
-    {
198
-        $data['http_referer'] = (string) wp_get_referer();
199
-        $data['notices'] = $this->getNotices();
200
-        glsr()->render('pages/'.$page.'/index', $data);
201
-    }
192
+	/**
193
+	 * @param string $page
194
+	 * @return void
195
+	 */
196
+	protected function renderPage($page, array $data = [])
197
+	{
198
+		$data['http_referer'] = (string) wp_get_referer();
199
+		$data['notices'] = $this->getNotices();
200
+		glsr()->render('pages/'.$page.'/index', $data);
201
+	}
202 202
 }
Please login to merge, or discard this patch.