1ea9843dcSAndreas Gohr<?php 2ea9843dcSAndreas Gohr 3ea9843dcSAndreas Gohrnamespace dokuwiki\plugin\struct\test\mock; 4ea9843dcSAndreas Gohr 5ea9843dcSAndreas Gohruse dokuwiki\plugin\struct\meta; 6daf34b99SAndreas Gohruse dokuwiki\plugin\struct\meta\Schema; 7ea9843dcSAndreas Gohr 8ea9843dcSAndreas Gohrabstract class AccessTable extends meta\AccessTable { 9ea9843dcSAndreas Gohr 104cd5cc28SAnna Dabrowska public static function getPageAccess($tablename, $pid, $ts = 0) 114cd5cc28SAnna Dabrowska { 124cd5cc28SAnna Dabrowska $schema = new Schema($tablename, $ts); 13308cc83fSAndreas Gohr return new AccessTablePage($schema, $pid, $ts, 0); 144cd5cc28SAnna Dabrowska } 154cd5cc28SAnna Dabrowska 16*7b5b21b7SAnna Dabrowska public static function getGlobalAccess($tablename, $rid = 0) 17*7b5b21b7SAnna Dabrowska { 18*7b5b21b7SAnna Dabrowska $schema = new Schema($tablename, 0); 19*7b5b21b7SAnna Dabrowska return new AccessTableGlobal($schema, '', 0, $rid); 20*7b5b21b7SAnna Dabrowska } 21*7b5b21b7SAnna Dabrowska 22ea9843dcSAndreas Gohr /** 23ea9843dcSAndreas Gohr * @param Schema $schema 24ea9843dcSAndreas Gohr * @param int|string $pid 25daf34b99SAndreas Gohr * @param int $ts 2610575566SAnna Dabrowska * @param int $rid 27308cc83fSAndreas Gohr * @return AccessTableGlobal|AccessTablePage 28308cc83fSAndreas Gohr *@deprecated 29ea9843dcSAndreas Gohr */ 3010575566SAnna Dabrowska public static function bySchema(Schema $schema, $pid, $ts = 0, $rid = 0) { 311e11f3d9SAnna Dabrowska if (self::isTypePage($pid, $ts, $rid)) { 32308cc83fSAndreas Gohr return new AccessTablePage($schema, $pid, $ts, $rid); 33ea9843dcSAndreas Gohr } 34308cc83fSAndreas Gohr return new AccessTableGlobal($schema, $pid, $ts, $rid); 3510575566SAnna Dabrowska } 36ea9843dcSAndreas Gohr 374cd5cc28SAnna Dabrowska /** 384cd5cc28SAnna Dabrowska * @param string $tablename 394cd5cc28SAnna Dabrowska * @param string $pid 404cd5cc28SAnna Dabrowska * @param int $ts 414cd5cc28SAnna Dabrowska * @param int $rid 42308cc83fSAndreas Gohr * @return meta\AccessTablePage|AccessTableGlobal|AccessTablePage 43308cc83fSAndreas Gohr *@deprecated 444cd5cc28SAnna Dabrowska */ 4510575566SAnna Dabrowska public static function byTableName($tablename, $pid, $ts = 0, $rid = 0) { 46ea9843dcSAndreas Gohr $schema = new Schema($tablename, $ts); 47daf34b99SAndreas Gohr return self::bySchema($schema, $pid, $ts); // becuse we have a static call here we can not rely on inheritance 48ea9843dcSAndreas Gohr } 49ea9843dcSAndreas Gohr 50ea9843dcSAndreas Gohr} 51