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