Go to the source code of this file.
Functions | |
| foreach(array('/\bPDO\b/', '/\bmysqli?_/', '/->(?:query|exec|prepare)\s *\(/', '/private(?:db|tpl|h)\s *\(/',) as $forbiddenPattern) | foreach (array('create_date', 'create_uid', 'update_date', 'update_uid', 'owner',) as $systemField) |
Variables | |
| $root = dirname(__DIR__, 3) | |
| $doxyfile = $root . '/Doxyfile' | |
| $mainFile = $root . '/docs/doxygen-generated-main.dox' | |
| $referenceFile = $root . '/25_Verbindliches_Modulhandbuch.md' | |
| $referenceModule = $root . '/dbx/modules/myInvoices' | |
| $navigationFile = $root . '/docs/doxygen-navigation.dox' | |
| $updateUserFile = $root . '/docs/dbxapp-system-update-user.dox' | |
| $kiAreasFile = $root . '/28_KI_Bereiche.md' | |
| $tutorialExport = $root . '/dbx/modules/dbxContent/tools/export_doxygen_tutorials_de.php' | |
| $tutorialDir = $root . '/docs/generated/tutorials' | |
| $brandingHeader = $root . '/docs/doxygen-awesome/header.html' | |
| $brandingCss = $root . '/docs/doxygen-awesome/dbxapp-doxygen.css' | |
| $utf8Filter = $root . '/docs/tools/doxygen_php_utf8_filter.php' | |
| $releaseVersion = trim((string)file_get_contents($root . '/VERSION')) | |
| $fail | |
| foreach([ $doxyfile, $mainFile, $referenceFile, $navigationFile, $updateUserFile, $kiAreasFile, $tutorialExport, $brandingHeader, $brandingCss, $utf8Filter,] as $requiredFile) foreach(array('myInvoices.class.php', 'cfg/config.php', 'dd/invoice.dd.php', 'dd/invoiceItem.dd.php', 'fd/invoice-form.fd.php', 'fd/rpt-invoice-selection.fd.php', 'include/myInvoicesFixtures.class.php', 'include/myInvoicesService.class.php', 'tpl/htm/invoice-form.htm', 'tpl/htm/invoice-report.htm', 'tpl/htm/invoice-items-report.htm', 'tpl/htm/invoice-row-action.htm', 'tpl/htm/invoice-install.htm', 'tools/install_demo.php', 'tests/myInvoices_contract_test.php', 'tests/myInvoices_integration_test.php', 'README.md',) as $relative) | $docs = glob($root . '/[0-9][0-9]_*.md') |
| $anchors = array() | |
| $references = array() | |
| $duplicateAnchors = array() | |
| foreach($docs as $doc) foreach(array( $navigationFile, $updateUserFile) as $doxygenPageFile) if($duplicateAnchors) | $missingReferences = array_diff(array_keys($references), array_keys($anchors)) |
| if($missingReferences) | $doxyContent = (string)file_get_contents($doxyfile) |
| foreach(array('docs/doxygen-navigation.dox', 'docs/dbxapp-system-update-user.dox', 'docs/generated/tutorials', '25_Verbindliches_Modulhandbuch.md', 'files/doku',) as $editorialInput) | $mainContent = (string)file_get_contents($mainFile) |
| foreach(array(' @mainpage dbxapp Quellcode-Referenz', ' @ref annotated "Klassen"', ' @ref namespaces "Namespaces"', ' @ref files "Dateien"', ' @ref examples "Beispiele"', 'dbxapp-Dokumentationsportal öffnen',) as $needle) | $navigationContent = (string)file_get_contents($navigationFile) |
| foreach(array(' @page dbxapp_user_docs Anwenderdokumentation', ' @page dbxapp_user_start Einstieg und Bedienung', ' @page dbxapp_user_admin Administration und Systemstatus', ' @subpage dbxapp_user_system_update', ' @page dbxapp_user_content Inhalte, CMS und Medien', ' @page dbxapp_user_shop Shop bedienen und administrieren', ' @page dbxapp_user_workflows Workflows erstellen und benutzen', ' @page dbxapp_user_design Designs manuell und mit KI erstellen', ' @page dbxapp_user_ki_content KI-Bereich 1:Content', ' @page dbxapp_user_ki_design KI-Bereich 2:Design', ' @page dbxapp_user_ki_modules KI-Bereich 3:Module', ' @page dbxapp_developer_docs Entwicklerdokumentation', ' @page dbxapp_dev_orientation Architektur und Laufzeit', ' @page dbxapp_dev_modules Verbindliche Modulentwicklung', ' @page dbxapp_dev_pipelines Kernpipelines und Bibliotheken', ' @page dbxapp_dev_content_design CMS, KI, Design und Fachmodule', ' @page dbxapp_dev_operations Installation, Updates und Betrieb',) as $needle) | $updateUserContent = (string)file_get_contents($updateUserFile) |
| foreach(array(' @page dbxapp_user_system_update System-Update sicher durchführen', 'Update automatisch vorbereiten', 'Update stoppen', 'Jetzt sicher installieren', 'Letztes Update zurückrollen', 'DB3, MySQL und gemischte Installationen', 'System → System-Selbsttest', 'dokumentation-selbsttest', 'files/dbxError.log', 'dbxapp_install_update_dd_bindings.html',) as $needle) | $kiAreasContent = (string)file_get_contents($kiAreasFile) |
| foreach(array('< span class="dbx-area-number">1</span >', '< h2 >Content</h2 >', '< span class="dbx-area-number">2</span >', '< h2 >Design</h2 >', '< span class="dbx-area-number">3</span >', '< h2 >Module</h2 >', ' @subpage dbxapp_user_ki_content', ' @subpage dbxapp_user_ki_design', ' @subpage dbxapp_user_ki_modules',) as $needle) | $tutorialFiles = glob($tutorialDir . '/*.dox') |
| if(!is_array($tutorialFiles)||count($tutorialFiles) !==18) | $tutorialLabels = array() |
| foreach( $tutorialFiles as $tutorialFile) if(count($tutorialLabels) !==18) | $tutorialOverview |
| if(count($overviewMedia[1] ?? array())===0) foreach(array_unique( $overviewMedia[1]) as $asset) foreach(array_keys($tutorialLabels) as $tutorialLabel) | $tutorialExportContent = (string)file_get_contents($tutorialExport) |
| foreach(array("get_system_obj('dbxDB')", "dbxContentLng::ddContent('de')", "'folder = 15 AND activ = 1'", "'dbxMediaUsage'", "'dbxMedia'", "'--write'", "'--check'",) as $needle) foreach(array('/\bPDO\b/', '/\bmysqli?\b/i', '/\bSQLite3\b/') as $forbiddenPattern) foreach(array('PROJECT_NAME="dbxapp"', 'PROJECT_NUMBER="' . $releaseVersion . '"', 'PROJECT_LOGO=dbXapp-Logo.jpeg', 'FULL_SIDEBAR=YES', 'FULL_PATH_NAMES=NO', 'PAGE_OUTLINE_PANEL=NO', 'STRIP_FROM_PATH=.', 'FILTER_PATTERNS= *dbxApi.php="php -n docs/tools/doxygen_php_utf8_filter.php"', ' *dbxUpload.class.php="php -n docs/tools/doxygen_php_utf8_filter.php"', 'FILTER_SOURCE_FILES=YES', 'docs/doxygen-generated-main.dox', 'docs/doxygen-awesome/header.html', 'docs/doxygen-awesome/dbxapp-doxygen.css',) as $needle | $headerContent ) = (string)file_get_contents($brandingHeader) |
| $cssContent = (string)file_get_contents($brandingCss) | |
| foreach(array( 'Anwender', 'Entwickler', 'KI-Bereiche', 'data-dbx-section="user"', 'dbx-doc-nav-icon', 'dbx-doc-tools', 'dbx-doc-embedded',) as $needle) foreach(array('--dbx-brand-navy', '--dbx-brand-red', '.dbx-doc-hero', '.dbx-audience-grid', '#dbx-doc-audience a.is-active', '.dbx-doc-nav-icon', '.dbx-doc-tools', '.dbx-user-nav-grid', '.dbx-update-steps', '.dbx-update-state-grid', 'html.dbx-doc-embedded #doc-content',) as $needle) | $referenceContent = (string)file_get_contents($referenceFile) |
| foreach(array('dbxTPL', 'dbxDB', 'dbxDD', 'dbxForm', 'dbxReport', 'DD', 'FD', 'dbxAjax', 'dbxConfirm', 'Kombination aus `delete` und `rid` automatisch', 'action_url', 'invoice_report_next_record', 'invoice_items_report_next_record', '{rpt:colspan}', 'add_rep()', "\$report->_mode = 'table'", "'sum' => 'Summe'", '{report_total}', '[modul=myInvoices]dbx_run1=positions &invoice_id=', '{rpt:col_count}', '< tfoot >', '[dbx:form]', 'dbx_split', 'Verbindliche Arbeitsanweisung', 'Mindesttestmatrix', 'myInvoices_contract_test.php', 'myInvoices_integration_test.php', 'include/myInvoicesFixtures.class.php', 'Browserkonsole', ' @include dbx/modules/myInvoices/dd/invoice.dd.php', ' @include dbx/modules/myInvoices/dd/invoiceItem.dd.php', 'dbxapp-Exportformat',) as $needle) | $actualService |
| $actualFixtures | |
| if(!preg_match_all('/```php\s *(<\?php.*?)(?=```)/s', $referenceContent, $phpBlocks)||count($phpBlocks[1])< 5) foreach( $phpBlocks[1] as $index=> $phpBlock) if(!preg_match('/class myInvoicesService.*?\?>/s', $referenceContent, $serviceMatch)) | $serviceExample = $serviceMatch[0] |
| foreach(array('/private(?:db|tpl|h)\s *\(/', '/(?:private|protected|public) \w+\s *\( | foreach [^)] *\)[^{] *\{\s *return\s+dbx\(\) ->get_system_obj\s *\(/s', '/dbx\(\) ->esc\s *\(/', '/htmlspecialchars\s *\(/', '/[\'"](?:create_date|create_uid|update_date|update_uid|owner)[\'"]\s *=>\s *(?:date|dbx\(\) ->user)/',) as $forbiddenPattern)(array('automatisch von `dbxDB` gesetzt', 'Kernel-Funktionen nicht durch eigene Methoden nachbauen', 'Werte nicht pauschal escapen', 'Endsumme der Positionen', 'geschützte Modulvariablen',) as $requiredContract) |
| $modulePatternContent | |
| $formGuideContent | |
| foreach(array('/private(?:db|tpl|h)\s *\(/', '/dbx\(\) ->esc\s *\(/', '/htmlspecialchars\s *\(/',) as $forbiddenPattern | if )(preg_match('/set_post\s *\(\s *[\'"](?:create_date|create_uid|update_date|update_uid|owner)[\'"]/', $formGuideContent)) |
| foreach(array('/\bPDO\b/', '/\bmysqli?_/', '/->(?:query|exec|prepare)\s *\(/', '/private (?:db|tpl|h)\s *\(/',) as $forbiddenPattern) foreach | ( | array('create_date', 'create_uid', 'update_date', 'update_uid', 'owner',) as | $systemField | ) |
Definition at line 386 of file doxygen_structure_test.php.
References $actualFixtures, and $fail.
| $actualFixtures |
Definition at line 369 of file doxygen_structure_test.php.
Referenced by foreach().
| foreach (array( 'dbxTPL', 'dbxDB', 'dbxDD', 'dbxForm', 'dbxReport', 'DD', 'FD', 'dbxAjax', 'dbxConfirm', 'Kombination aus `delete` und `rid` automatisch', 'action_url', 'invoice_report_next_record', 'invoice_items_report_next_record', '{rpt:colspan}', 'add_rep()', "\$report->_mode = 'table'", "'sum' => 'Summe'", '{report_total}', '[modul=myInvoices]dbx_run1=positions &invoice_id=', '{rpt:col_count}', '< tfoot >', '[dbx:form]', 'dbx_split', 'Verbindliche Arbeitsanweisung', 'Mindesttestmatrix', 'myInvoices_contract_test.php', 'myInvoices_integration_test.php', 'include/myInvoicesFixtures.class.php', 'Browserkonsole', ' @include dbx/modules/myInvoices/dd/invoice.dd.php', ' @include dbx/modules/myInvoices/dd/invoiceItem.dd.php', 'dbxapp-Exportformat',) as $needle) $actualService |
Definition at line 366 of file doxygen_structure_test.php.
| $anchors = array() |
Definition at line 70 of file doxygen_structure_test.php.
| $brandingCss = $root . '/docs/doxygen-awesome/dbxapp-doxygen.css' |
Definition at line 14 of file doxygen_structure_test.php.
| $brandingHeader = $root . '/docs/doxygen-awesome/header.html' |
Definition at line 13 of file doxygen_structure_test.php.
| $cssContent = (string)file_get_contents($brandingCss) |
Definition at line 294 of file doxygen_structure_test.php.
| foreach([$doxyfile, $mainFile, $referenceFile, $navigationFile, $updateUserFile, $kiAreasFile, $tutorialExport, $brandingHeader, $brandingCss, $utf8Filter,] as $requiredFile) foreach (array( 'myInvoices.class.php', 'cfg/config.php', 'dd/invoice.dd.php', 'dd/invoiceItem.dd.php', 'fd/invoice-form.fd.php', 'fd/rpt-invoice-selection.fd.php', 'include/myInvoicesFixtures.class.php', 'include/myInvoicesService.class.php', 'tpl/htm/invoice-form.htm', 'tpl/htm/invoice-report.htm', 'tpl/htm/invoice-items-report.htm', 'tpl/htm/invoice-row-action.htm', 'tpl/htm/invoice-install.htm', 'tools/install_demo.php', 'tests/myInvoices_contract_test.php', 'tests/myInvoices_integration_test.php', 'README.md',) as $relative) $docs = glob($root . '/[0-9][0-9]_*.md') |
Definition at line 64 of file doxygen_structure_test.php.
| if ( $missingReferences) $doxyContent = (string)file_get_contents($doxyfile) |
Definition at line 125 of file doxygen_structure_test.php.
| $doxyfile = $root . '/Doxyfile' |
Definition at line 4 of file doxygen_structure_test.php.
| $duplicateAnchors = array() |
Definition at line 72 of file doxygen_structure_test.php.
| $fail |
Definition at line 18 of file doxygen_structure_test.php.
Referenced by foreach().
| $formGuideContent |
Definition at line 458 of file doxygen_structure_test.php.
| foreach(array("get_system_obj('dbxDB')", "dbxContentLng::ddContent('de')", "'folder = 15 AND activ = 1'", "'dbxMediaUsage'", "'dbxMedia'", "'--write'", "'--check'",) as $needle) foreach(array('/\bPDO\b/', '/\bmysqli?\b/i', '/\bSQLite3\b/') as $forbiddenPattern) foreach (array( 'PROJECT_NAME="dbxapp"', 'PROJECT_NUMBER="' . $releaseVersion . '"', 'PROJECT_LOGO=dbXapp-Logo.jpeg', 'FULL_SIDEBAR=YES', 'FULL_PATH_NAMES=NO', 'PAGE_OUTLINE_PANEL=NO', 'STRIP_FROM_PATH=.', 'FILTER_PATTERNS=*dbxApi.php="php -n docs/tools/doxygen_php_utf8_filter.php"', ' *dbxUpload.class.php="php -n docs/tools/doxygen_php_utf8_filter.php"', 'FILTER_SOURCE_FILES=YES', 'docs/doxygen-generated-main.dox', 'docs/doxygen-awesome/header.html', 'docs/doxygen-awesome/dbxapp-doxygen.css',) as $needle $headerContent) = (string)file_get_contents($brandingHeader) |
Definition at line 293 of file doxygen_structure_test.php.
| foreach (array( ' @page dbxapp_user_system_update System-Update sicher durchführen', 'Update automatisch vorbereiten', 'Update stoppen', 'Jetzt sicher installieren', 'Letztes Update zurückrollen', 'DB3, MySQL und gemischte Installationen', 'System → System-Selbsttest', 'dokumentation-selbsttest', 'files/dbxError.log', 'dbxapp_install_update_dd_bindings.html',) as $needle) $kiAreasContent = (string)file_get_contents($kiAreasFile) |
Definition at line 195 of file doxygen_structure_test.php.
| $kiAreasFile = $root . '/28_KI_Bereiche.md' |
Definition at line 10 of file doxygen_structure_test.php.
| foreach (array( 'docs/doxygen-navigation.dox', 'docs/dbxapp-system-update-user.dox', 'docs/generated/tutorials', '25_Verbindliches_Modulhandbuch.md', 'files/doku',) as $editorialInput) $mainContent = (string)file_get_contents($mainFile) |
Definition at line 138 of file doxygen_structure_test.php.
| $mainFile = $root . '/docs/doxygen-generated-main.dox' |
Definition at line 5 of file doxygen_structure_test.php.
| foreach( $docs as $doc) foreach(array($navigationFile, $updateUserFile) as $doxygenPageFile) if ( $duplicateAnchors) $missingReferences = array_diff(array_keys($references), array_keys($anchors)) |
Definition at line 117 of file doxygen_structure_test.php.
| $modulePatternContent |
Definition at line 455 of file doxygen_structure_test.php.
| foreach (array( ' @mainpage dbxapp Quellcode-Referenz', ' @ref annotated "Klassen"', ' @ref namespaces "Namespaces"', ' @ref files "Dateien"', ' @ref examples "Beispiele"', 'dbxapp-Dokumentationsportal öffnen',) as $needle) $navigationContent = (string)file_get_contents($navigationFile) |
Definition at line 152 of file doxygen_structure_test.php.
| $navigationFile = $root . '/docs/doxygen-navigation.dox' |
Definition at line 8 of file doxygen_structure_test.php.
| foreach(array('Anwender', 'Entwickler', 'KI-Bereiche', 'data-dbx-section="user"', 'dbx-doc-nav-icon', 'dbx-doc-tools', 'dbx-doc-embedded',) as $needle) foreach (array( '--dbx-brand-navy', '--dbx-brand-red', '.dbx-doc-hero', '.dbx-audience-grid', '#dbx-doc-audience a.is-active', '.dbx-doc-nav-icon', '.dbx-doc-tools', '.dbx-user-nav-grid', '.dbx-update-steps', '.dbx-update-state-grid', 'html.dbx-doc-embedded #doc-content',) as $needle) $referenceContent = (string)file_get_contents($referenceFile) |
Definition at line 326 of file doxygen_structure_test.php.
| $referenceFile = $root . '/25_Verbindliches_Modulhandbuch.md' |
Definition at line 6 of file doxygen_structure_test.php.
| $referenceModule = $root . '/dbx/modules/myInvoices' |
Definition at line 7 of file doxygen_structure_test.php.
| $references = array() |
Definition at line 71 of file doxygen_structure_test.php.
| $releaseVersion = trim((string)file_get_contents($root . '/VERSION')) |
Definition at line 16 of file doxygen_structure_test.php.
| $root = dirname(__DIR__, 3) |
Definition at line 3 of file doxygen_structure_test.php.
| if(!preg_match_all('/```php\s *(<\?php.*?)(?=```)/s', $referenceContent, $phpBlocks)||count( $phpBlocks[1])< 5) foreach($phpBlocks[1] as $index=> $phpBlock) if (!preg_match('/class myInvoicesService.*?\?>/s', $referenceContent, $serviceMatch)) $serviceExample = $serviceMatch[0] |
Definition at line 426 of file doxygen_structure_test.php.
| $tutorialDir = $root . '/docs/generated/tutorials' |
Definition at line 12 of file doxygen_structure_test.php.
| $tutorialExport = $root . '/dbx/modules/dbxContent/tools/export_doxygen_tutorials_de.php' |
Definition at line 11 of file doxygen_structure_test.php.
| if(count( $overviewMedia[1] ?? array())===0) foreach(array_unique($overviewMedia[1]) as $asset) foreach (array_keys( $tutorialLabels) as $tutorialLabel) $tutorialExportContent = (string)file_get_contents($tutorialExport) |
Definition at line 253 of file doxygen_structure_test.php.
| foreach (array( '< span class="dbx-area-number">1</span >', '< h2 >Content</h2 >', '< span class="dbx-area-number">2</span >', '< h2 >Design</h2 >', '< span class="dbx-area-number">3</span >', '< h2 >Module</h2 >', ' @subpage dbxapp_user_ki_content', ' @subpage dbxapp_user_ki_design', ' @subpage dbxapp_user_ki_modules',) as $needle) $tutorialFiles = glob($tutorialDir . '/*.dox') |
Definition at line 212 of file doxygen_structure_test.php.
| if (!is_array( $tutorialFiles)||count( $tutorialFiles) !==18) $tutorialLabels = array() |
Definition at line 217 of file doxygen_structure_test.php.
Definition at line 234 of file doxygen_structure_test.php.
| foreach (array( ' @page dbxapp_user_docs Anwenderdokumentation', ' @page dbxapp_user_start Einstieg und Bedienung', ' @page dbxapp_user_admin Administration und Systemstatus', ' @subpage dbxapp_user_system_update', ' @page dbxapp_user_content Inhalte, CMS und Medien', ' @page dbxapp_user_shop Shop bedienen und administrieren', ' @page dbxapp_user_workflows Workflows erstellen und benutzen', ' @page dbxapp_user_design Designs manuell und mit KI erstellen', ' @page dbxapp_user_ki_content KI-Bereich 1:Content', ' @page dbxapp_user_ki_design KI-Bereich 2:Design', ' @page dbxapp_user_ki_modules KI-Bereich 3:Module', ' @page dbxapp_developer_docs Entwicklerdokumentation', ' @page dbxapp_dev_orientation Architektur und Laufzeit', ' @page dbxapp_dev_modules Verbindliche Modulentwicklung', ' @page dbxapp_dev_pipelines Kernpipelines und Bibliotheken', ' @page dbxapp_dev_content_design CMS, KI, Design und Fachmodule', ' @page dbxapp_dev_operations Installation, Updates und Betrieb',) as $needle) $updateUserContent = (string)file_get_contents($updateUserFile) |
Definition at line 177 of file doxygen_structure_test.php.
| $updateUserFile = $root . '/docs/dbxapp-system-update-user.dox' |
Definition at line 9 of file doxygen_structure_test.php.
| $utf8Filter = $root . '/docs/tools/doxygen_php_utf8_filter.php' |
Definition at line 15 of file doxygen_structure_test.php.
| foreach(array('/private (?:db|tpl|h)\s *\(/', '/(?:private|protected|public) \w+\s *\( foreach[^)] *\)[^{] *\{\s *return\s+dbx\(\) ->get_system_obj\s *\(/s', '/dbx\(\) ->esc\s *\(/', '/htmlspecialchars\s *\(/', '/[\'"](?:create_date|create_uid|update_date|update_uid|owner)[\'"]\s *=>\s *(?:date|dbx\(\) ->user)/',) as $forbiddenPattern)(array( 'automatisch von `dbxDB` gesetzt', 'Kernel-Funktionen nicht durch eigene Methoden nachbauen', 'Werte nicht pauschal escapen', 'Endsumme der Positionen', 'geschützte Modulvariablen',) as $requiredContract) | ( | array('automatisch von `dbxDB` gesetzt', 'Kernel-Funktionen nicht durch eigene Methoden nachbauen', 'Werte nicht pauschal escapen', 'Endsumme der Positionen', 'geschützte Modulvariablen',) as | $requiredContract | ) |
Definition at line 443 of file doxygen_structure_test.php.
| foreach(array('/private (?:db|tpl|h)\s *\(/', '/dbx\(\) ->esc\s *\(/', '/htmlspecialchars\s *\(/',) as $forbiddenPattern if) (preg_match( '/set_post\s *\(\s *[\'"](?:create_date|create_uid|update_date|update_uid|owner)[\'"]/', $formGuideContent)) | ( | ) |
Definition at line 476 of file doxygen_structure_test.php.