1<?php
2
3/**
4 * Load all class via Plugin Utility
5 */
6require_once(__DIR__ . '/../ComboStrap/PluginUtility.php');
7
8use ComboStrap\AdsUtility;
9use ComboStrap\Canonical;
10use ComboStrap\ColorRgb;
11use ComboStrap\FloatAttribute;
12use ComboStrap\Icon;
13use ComboStrap\Identity;
14use ComboStrap\LazyLoad;
15use ComboStrap\MarkupRef;
16use ComboStrap\LowQualityPage;
17use ComboStrap\MediaLink;
18use ComboStrap\PageImages;
19use ComboStrap\PageProtection;
20use ComboStrap\PagePublicationDate;
21use ComboStrap\PageType;
22use ComboStrap\PageUrlType;
23use ComboStrap\Prism;
24use ComboStrap\RasterImageLink;
25use ComboStrap\Region;
26use ComboStrap\Shadow;
27use ComboStrap\SvgDocument;
28use ComboStrap\SvgImageLink;
29use ComboStrap\UrlManagerBestEndPage;
30
31
32require_once(__DIR__ . '/../syntax/related.php');
33
34
35// https://www.dokuwiki.org/devel:configuration
36$meta[syntax_plugin_combo_related::MAX_LINKS_CONF] = array('numeric');
37$meta[syntax_plugin_combo_related::EXTRA_PATTERN_CONF] = array('string');
38
39/**
40 * Disqus
41 */
42require_once(__DIR__ . '/../syntax/disqus.php');
43$meta[syntax_plugin_combo_disqus::CONF_DEFAULT_ATTRIBUTES] = array('string');
44
45
46/**
47 * Url Manager
48 */
49$meta[action_plugin_combo_router::ROUTER_ENABLE_CONF] = array('onoff');
50$meta['ShowPageNameIsNotUnique'] = array('onoff');
51$meta['ShowMessageClassic'] = array('onoff');
52
53$actionChoices = array('multichoice', '_choices' => array(
54    action_plugin_combo_router::NOTHING,
55    action_plugin_combo_router::GO_TO_BEST_END_PAGE_NAME,
56    action_plugin_combo_router::GO_TO_NS_START_PAGE,
57    action_plugin_combo_router::GO_TO_BEST_PAGE_NAME,
58    action_plugin_combo_router::GO_TO_BEST_NAMESPACE,
59    action_plugin_combo_router::GO_TO_SEARCH_ENGINE
60));
61$meta['GoToEditMode'] = array('onoff');
62$meta['ActionReaderFirst'] = $actionChoices;
63$meta['ActionReaderSecond'] = $actionChoices;
64$meta['ActionReaderThird'] = $actionChoices;
65$meta['WeightFactorForSamePageName'] = array('string');
66$meta['WeightFactorForStartPage'] = array('string');
67$meta['WeightFactorForSameNamespace'] = array('string');
68
69$meta[UrlManagerBestEndPage::CONF_MINIMAL_SCORE_FOR_REDIRECT] = array('string');
70
71$meta[Canonical::CONF_CANONICAL_LAST_NAMES_COUNT] = array('string');
72$meta[action_plugin_combo_canonical::CONF_CANONICAL_FOR_GA_PAGE_VIEW] = array('onoff');
73
74/**
75 * Icon namespace where the downloaded icon are stored
76 */
77require_once(__DIR__ . '/../syntax/icon.php');
78$meta[Icon::CONF_ICONS_MEDIA_NAMESPACE] = array('string');
79$meta[Icon::CONF_DEFAULT_ICON_LIBRARY] = array('multichoice', '_choices' => array_keys(Icon::PUBLIC_LIBRARY_ACRONYM));
80
81
82/**
83 * Css optimization
84 */
85$meta[action_plugin_combo_css::CONF_ENABLE_MINIMAL_FRONTEND_STYLESHEET] = array('onoff');
86$meta[action_plugin_combo_css::CONF_DISABLE_DOKUWIKI_STYLESHEET] = array('onoff');
87
88/**
89 * Metadata Viewer
90 */
91$meta[syntax_plugin_combo_metadata::CONF_METADATA_DEFAULT_ATTRIBUTES] = array('string');
92
93/**
94 * Badge
95 */
96$meta[syntax_plugin_combo_badge::CONF_DEFAULT_ATTRIBUTES_KEY] = array('string');
97
98/**
99 * Ads
100 */
101require_once(__DIR__ . '/../ComboStrap/AdsUtility.php');
102$meta[AdsUtility::CONF_IN_ARTICLE_PLACEHOLDER] = array('onoff');
103
104/**
105 * Code / File / Console
106 */
107$meta[syntax_plugin_combo_code::CONF_CODE_ENABLE] = array('onoff');
108$meta[Prism::CONF_PRISM_THEME] = array('multichoice', '_choices' => array_keys(Prism::THEMES_INTEGRITY));
109$meta[Prism::CONF_BASH_PROMPT] = array('string');
110$meta[Prism::CONF_BATCH_PROMPT] = array('string');
111$meta[Prism::CONF_POWERSHELL_PROMPT] = array('string');
112$meta[syntax_plugin_combo_file::CONF_FILE_ENABLE] = array('onoff');
113
114/**
115 * Quality (SEO)
116 */
117require_once(__DIR__ . '/../ComboStrap/LowQualityPage.php');
118$meta[LowQualityPage::CONF_LOW_QUALITY_PAGE_PROTECTION_ENABLE] = array('onoff');
119$meta[LowQualityPage::CONF_LOW_QUALITY_PAGE_PROTECTION_MODE] = array('multichoice', '_choices' => array(
120    PageProtection::CONF_VALUE_ROBOT,
121    PageProtection::CONF_VALUE_FEED,
122    PageProtection::CONF_VALUE_ACL,
123    PageProtection::CONF_VALUE_HIDDEN
124));
125$meta[LowQualityPage::CONF_LOW_QUALITY_PAGE_LINK_TYPE] = array('multichoice', '_choices' => array(
126    PageProtection::PAGE_PROTECTION_LINK_NORMAL,
127    PageProtection::PAGE_PROTECTION_LINK_WARNING,
128    PageProtection::PAGE_PROTECTION_LINK_LOGIN,
129));
130
131/**
132 * Preformatted mode enable
133 */
134$meta[syntax_plugin_combo_preformatted::CONF_PREFORMATTED_ENABLE] = array('onoff');
135$meta[syntax_plugin_combo_preformatted::CONF_PREFORMATTED_EMPTY_CONTENT_NOT_PRINTED_ENABLE] = array('onoff');
136
137/**
138 * The mandatory rules
139 */
140$meta[renderer_plugin_combo_analytics::CONF_MANDATORY_QUALITY_RULES] = array('multicheckbox', '_choices' => renderer_plugin_combo_analytics::QUALITY_RULES);
141
142/**
143 * The quality rules excluded from monitoring
144 */
145$meta[action_plugin_combo_qualitymessage::CONF_DISABLE_QUALITY_MONITORING] = array('onoff');
146$meta[action_plugin_combo_qualitymessage::CONF_EXCLUDED_QUALITY_RULES_FROM_DYNAMIC_MONITORING] = array('multicheckbox', '_choices' => renderer_plugin_combo_analytics::QUALITY_RULES);
147
148/**
149 * Link
150 */
151$meta[MarkupRef::CONF_USE_DOKUWIKI_CLASS_NAME] = array('onoff');
152$meta[MarkupRef::CONF_PREVIEW_LINK] = array('onoff');
153$meta[syntax_plugin_combo_link::CONF_DISABLE_LINK] = array('onoff');
154
155/**
156 * Twitter
157 */
158$meta[action_plugin_combo_metatwitter::CONF_TWITTER_SITE_HANDLE] = array('string');
159$meta[action_plugin_combo_metatwitter::CONF_TWITTER_SITE_ID] = array('string');
160$meta[action_plugin_combo_metatwitter::CONF_DEFAULT_TWITTER_IMAGE] = array('string');
161$meta[action_plugin_combo_metatwitter::CONF_DONT_NOT_TRACK] = array('multichoice', '_choices' => array(
162    action_plugin_combo_metatwitter::CONF_ON,
163    action_plugin_combo_metatwitter::CONF_OFF
164));
165$meta[syntax_plugin_combo_blockquote::CONF_TWEET_WIDGETS_THEME] = array('string');
166$meta[syntax_plugin_combo_blockquote::CONF_TWEET_WIDGETS_BORDER] = array('string');
167
168/**
169 * Page Image
170 */
171$meta[PageImages::CONF_DISABLE_FIRST_IMAGE_AS_PAGE_IMAGE] = array('onoff');
172
173/**
174 * Facebook
175 */
176$meta[action_plugin_combo_metafacebook::CONF_DEFAULT_FACEBOOK_IMAGE] = array('string');
177
178/**
179 * Language region
180 */
181$meta[Region::CONF_SITE_LANGUAGE_REGION] = array("string");
182
183/**
184 * Late publication protection
185 */
186$meta[PagePublicationDate::CONF_LATE_PUBLICATION_PROTECTION_ENABLE] = array('onoff');
187$meta[PagePublicationDate::CONF_LATE_PUBLICATION_PROTECTION_MODE] = array('multichoice', '_choices' => array(
188    PageProtection::CONF_VALUE_ROBOT,
189    PageProtection::CONF_VALUE_FEED,
190    PageProtection::CONF_VALUE_ACL,
191    PageProtection::CONF_VALUE_HIDDEN
192));
193
194/**
195 * Default Page Type
196 */
197$meta[PageType::CONF_DEFAULT_PAGE_TYPE] = array("string");
198
199/**
200 * Default Shadow level
201 */
202$meta[Shadow::CONF_DEFAULT_VALUE] = array('multichoice', '_choices' => array(
203    Shadow::CONF_SMALL_LEVEL_VALUE,
204    Shadow::CONF_MEDIUM_LEVEL_VALUE,
205    Shadow::CONF_LARGE_LEVEL_VALUE,
206    Shadow::CONF_EXTRA_LARGE_LEVEL_VALUE
207));
208
209
210/**
211 * Big Svg Lazy load
212 */
213require_once(__DIR__ . '/../ComboStrap/SvgImageLink.php');
214$meta[SvgImageLink::CONF_LAZY_LOAD_ENABLE] = array('onoff');
215
216/**
217 * Big Svg Injection
218 */
219$meta[SvgImageLink::CONF_SVG_INJECTION_ENABLE] = array('onoff');
220
221/**
222 * Svg Optimization
223 */
224$meta[SvgDocument::CONF_SVG_OPTIMIZATION_ENABLE] = array('onoff');
225
226/**
227 * Svg Optimization Inline
228 */
229$meta[SvgImageLink::CONF_MAX_KB_SIZE_FOR_INLINE_SVG] = array('string');
230
231/**
232 * Svg Upload Group Name
233 */
234$meta[action_plugin_combo_svg::CONF_SVG_UPLOAD_GROUP_NAME] = array('string');
235
236/**
237 * Svg The attribute that are deleted with the optimization
238 * {@link SvgDocument::CONF_OPTIMIZATION_ATTRIBUTES_TO_DELETE}
239 */
240$meta[SvgDocument::CONF_OPTIMIZATION_ATTRIBUTES_TO_DELETE] = array('string');
241$meta[SvgDocument::CONF_OPTIMIZATION_ELEMENTS_TO_DELETE] = array('string');
242$meta[SvgDocument::CONF_OPTIMIZATION_ELEMENTS_TO_DELETE_IF_EMPTY] = array('string');
243$meta[SvgDocument::CONF_OPTIMIZATION_NAMESPACES_TO_KEEP] = array('string');
244$meta[SvgDocument::CONF_PRESERVE_ASPECT_RATIO_DEFAULT] = array('string');
245
246/**
247 * Raster Lazy load image
248 */
249$meta[RasterImageLink::CONF_LAZY_LOADING_ENABLE] = array('onoff');
250$meta[RasterImageLink::CONF_RESPONSIVE_IMAGE_MARGIN] = array('string');
251$meta[RasterImageLink::CONF_RETINA_SUPPORT_ENABLED] = array('onoff');
252
253/**
254 * Lazy loading
255 */
256$meta[LazyLoad::CONF_LAZY_LOADING_PLACEHOLDER_COLOR] = array("string");
257
258/**
259 * Internal media
260 */
261$meta[syntax_plugin_combo_media::CONF_IMAGE_ENABLE] = array('onoff');
262
263/**
264 * Internal media default linking
265 */
266$meta[MediaLink::CONF_DEFAULT_LINKING] = array('multichoice', '_choices' => array(
267    MediaLink::LINKING_DIRECT_VALUE,
268    MediaLink::LINKING_DETAILS_VALUE,
269    MediaLink::LINKING_LINKONLY_VALUE,
270    MediaLink::LINKING_NOLINK_VALUE,
271));
272
273/**
274 * Default breakpoint
275 */
276$meta[FloatAttribute::CONF_FLOAT_DEFAULT_BREAKPOINT] = array('multichoice', '_choices' => array(
277    "xs",
278    "sm",
279    "md",
280    "lg",
281    "xl",
282    "xxl"
283));
284
285/**
286 * Outline Numbering
287 */
288$meta[action_plugin_combo_outlinenumbering::CONF_OUTLINE_NUMBERING_ENABLE] = array("onoff");
289$meta[action_plugin_combo_outlinenumbering::CONF_OUTLINE_NUMBERING_COUNTER_STYLE_LEVEL2] = array('multichoice', '_choices' => action_plugin_combo_outlinenumbering::CONF_COUNTER_STYLES_CHOICES);
290$meta[action_plugin_combo_outlinenumbering::CONF_OUTLINE_NUMBERING_COUNTER_STYLE_LEVEL3] = array('multichoice', '_choices' => action_plugin_combo_outlinenumbering::CONF_COUNTER_STYLES_CHOICES);
291$meta[action_plugin_combo_outlinenumbering::CONF_OUTLINE_NUMBERING_COUNTER_STYLE_LEVEL4] = array('multichoice', '_choices' => action_plugin_combo_outlinenumbering::CONF_COUNTER_STYLES_CHOICES);
292$meta[action_plugin_combo_outlinenumbering::CONF_OUTLINE_NUMBERING_COUNTER_STYLE_LEVEL5] = array('multichoice', '_choices' => action_plugin_combo_outlinenumbering::CONF_COUNTER_STYLES_CHOICES);
293$meta[action_plugin_combo_outlinenumbering::CONF_OUTLINE_NUMBERING_COUNTER_STYLE_LEVEL6] = array('multichoice', '_choices' => action_plugin_combo_outlinenumbering::CONF_COUNTER_STYLES_CHOICES);
294$meta[action_plugin_combo_outlinenumbering::CONF_OUTLINE_NUMBERING_COUNTER_SEPARATOR] = array("string");
295$meta[action_plugin_combo_outlinenumbering::CONF_OUTLINE_NUMBERING_PREFIX] = array("string");
296$meta[action_plugin_combo_outlinenumbering::CONF_OUTLINE_NUMBERING_SUFFIX] = array("string");
297
298/**
299 * Identity form
300 */
301$meta[Identity::CONF_ENABLE_LOGO_ON_IDENTITY_FORMS] = array("onoff");
302$meta[action_plugin_combo_registration::CONF_ENABLE_REGISTER_FORM] = array("onoff");
303$meta[action_plugin_combo_login::CONF_ENABLE_LOGIN_FORM] = array("onoff");
304$meta[action_plugin_combo_resend::CONF_ENABLE_RESEND_PWD_FORM] = array("onoff");
305$meta[action_plugin_combo_profile::CONF_ENABLE_PROFILE_UPDATE_FORM] = array("onoff");
306$meta[action_plugin_combo_profile::CONF_ENABLE_PROFILE_DELETE_FORM] = array("onoff");
307
308/**
309 * Comment
310 */
311$meta[syntax_plugin_combo_comment::CONF_OUTPUT_COMMENT] = array("onoff");
312
313/**
314 * Cache
315 */
316$meta[action_plugin_combo_staticresource::CONF_STATIC_CACHE_ENABLED] = array("onoff");
317
318/**
319 * Link Wizard
320 */
321$meta[action_plugin_combo_linkwizard::CONF_ENABLE_ENHANCED_LINK_WIZARD] = array("onoff");
322
323/**
324 * Canonical Url Type
325 */
326$meta[PageUrlType::CONF_CANONICAL_URL_TYPE] = array('multichoice', '_choices' => PageUrlType::CONF_VALUES);
327
328/**
329 * Frontmatter on sumbit
330 */
331$meta[syntax_plugin_combo_frontmatter::CONF_ENABLE_FRONT_MATTER_ON_SUBMIT] = array("onoff");
332
333/**
334 * Heading
335 */
336$meta[syntax_plugin_combo_headingwiki::CONF_WIKI_HEADING_ENABLE] = array("onoff");
337
338/**
339 * Branding Colors
340 */
341$meta[ColorRgb::PRIMARY_COLOR_CONF] = array("string");
342$meta[ColorRgb::SECONDARY_COLOR_CONF] = array("string");
343$meta[ColorRgb::BRANDING_COLOR_INHERITANCE_ENABLE_CONF] = array("onoff");
344
345/**
346 * Highlight
347 */
348$meta[syntax_plugin_combo_highlightwiki::CONF_HIGHLIGHT_WIKI_ENABLE] = array("onoff");
349