1<?php 2/** 3 * English language file for the Delete Page Guard plugin. 4 * 5 * @license GPL 2 (https://www.gnu.org/licenses/gpl-2.0.html) - see LICENSE.md 6 * @author Johann Duscher <jonny.dee@posteo.net> 7 * @copyright 2025 Johann Duscher 8 */ 9 10$lang['deny_msg'] = 'Deleting this page is not allowed.'; 11 12// Configuration Manager labels 13$lang['patterns'] = 'Protected page patterns (one PCRE per line). Examples: ^users:[^:]+:start$'; 14$lang['match_target'] = 'Match against (page ID or file path)'; 15$lang['exempt_groups'] = 'Exempt groups (comma‑separated)'; 16$lang['trim_mode'] = 'Treat whitespace‑only pages as empty'; 17 18// Pattern validation messages for administrators 19$lang['pattern_redos_warning'] = 'Pattern "%s" may cause performance issues (potential ReDoS attack)'; 20$lang['pattern_too_long'] = 'Pattern "%s" is too long (maximum 1000 characters allowed)'; 21$lang['pattern_invalid_syntax'] = 'Pattern "%s" has invalid regex syntax: %s'; 22$lang['config_validation_errors'] = 'Some regex patterns in Delete Page Guard configuration have validation errors. Please check the configuration.'; 23 24// Admin interface 25$lang['menu'] = 'Delete Page Guard'; 26$lang['admin_title'] = 'Delete Page Guard - Pattern Validation'; 27$lang['test_patterns_title'] = 'Test Pattern Configuration'; 28$lang['test_patterns_help'] = 'Enter one regular expression pattern per line to validate them. This helps you test patterns before saving them to the configuration.'; 29$lang['validate_button'] = 'Validate Patterns'; 30$lang['validation_results_title'] = 'Validation Results'; 31$lang['validation_results'] = 'Pattern Validation Results'; 32$lang['no_patterns'] = 'No patterns to validate.'; 33$lang['all_patterns_valid'] = 'All %d patterns are valid!'; 34$lang['some_patterns_invalid'] = 'Some patterns have issues. Please fix them before using.'; 35 36// Pattern matching 37$lang['show_matches_button'] = 'Show Matching Pages'; 38$lang['matching_pages_title'] = 'Pages Matching Patterns'; 39$lang['no_valid_patterns'] = 'No valid patterns to test. Please fix validation errors first.'; 40$lang['no_pages_found'] = 'No pages found in wiki.'; 41$lang['no_matching_pages'] = 'No pages match the patterns (scanned %d pages).'; 42$lang['found_matching_pages'] = 'Found %d protected pages out of %d total pages.'; 43$lang['page_id'] = 'Page ID'; 44$lang['match_target'] = 'Match Target'; 45$lang['matched_pattern'] = 'Matched Pattern'; 46 47// Detailed error messages for admin interface 48$lang['error_pattern_too_long'] = 'Pattern is too long (maximum 1000 characters allowed)'; 49$lang['error_pattern_redos'] = 'Pattern may cause performance issues (potential ReDoS attack)'; 50$lang['error_pattern_syntax'] = 'Invalid regular expression syntax'; 51 52// Legacy configuration keys (for backward compatibility) 53$lang['cfg_patterns'] = 'Protected page patterns (one per line, as PCRE)'; 54$lang['cfg_match_target'] = 'Match against'; 55$lang['cfg_match_target_o_id'] = 'Page ID (e.g. users:john:start)'; 56$lang['cfg_match_target_o_filepath'] = 'Relative file path (e.g. users/john/start.txt)'; 57$lang['cfg_exempt_groups'] = 'Extra groups allowed to delete (comma separated)'; 58$lang['cfg_trim_mode'] = 'Treat whitespace‑only pages as empty';