13231ebaeSAnna Dabrowska<?php 23231ebaeSAnna Dabrowska 33231ebaeSAnna Dabrowskause dokuwiki\plugin\struct\meta\AggregationTable; 43231ebaeSAnna Dabrowska 53231ebaeSAnna Dabrowska/** 63231ebaeSAnna Dabrowska * DokuWiki Plugin structpublish (Syntax Component) 73231ebaeSAnna Dabrowska * 83231ebaeSAnna Dabrowska * @license GPL 2 http://www.gnu.org/licenses/gpl-2.0.html 93231ebaeSAnna Dabrowska * @author Anna Dabrowska <dokuwiki@cosmocode.de> 103231ebaeSAnna Dabrowska */ 113231ebaeSAnna Dabrowskaclass syntax_plugin_structpublish_table extends syntax_plugin_struct_serial 123231ebaeSAnna Dabrowska{ 133231ebaeSAnna Dabrowska protected $tableclass = AggregationTable::class; 143231ebaeSAnna Dabrowska 15*8b0ba635SAndreas Gohr /** @inheritdoc */ 163231ebaeSAnna Dabrowska public function connectTo($mode) 173231ebaeSAnna Dabrowska { 183231ebaeSAnna Dabrowska $this->Lexer->addSpecialPattern('----+ *structpublish *-+\n.*?\n?----+', $mode, 'plugin_structpublish_table'); 193231ebaeSAnna Dabrowska } 203231ebaeSAnna Dabrowska 21*8b0ba635SAndreas Gohr /** @inheritdoc */ 223231ebaeSAnna Dabrowska protected function addTypeFilter($config) 233231ebaeSAnna Dabrowska { 243231ebaeSAnna Dabrowska $config['schemas'][] = ['structpublish', 'structpublish']; 253231ebaeSAnna Dabrowska array_unshift($config['cols'], '%pageid%'); 263231ebaeSAnna Dabrowska $config['filter'][] = [ 27*8b0ba635SAndreas Gohr '%rowid%', 28*8b0ba635SAndreas Gohr '!=', 29*8b0ba635SAndreas Gohr (string) \dokuwiki\plugin\struct\meta\AccessTablePage::DEFAULT_PAGE_RID, 30*8b0ba635SAndreas Gohr 'AND' 313231ebaeSAnna Dabrowska ]; 323231ebaeSAnna Dabrowska $config['withpid'] = 1; // flag for the editor to distinguish data types 333231ebaeSAnna Dabrowska return $config; 343231ebaeSAnna Dabrowska } 353231ebaeSAnna Dabrowska} 363231ebaeSAnna Dabrowska 37