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