From c567c9ef44fbe4ad0432dcf4dbe7fd8c6e71ea9b Mon Sep 17 00:00:00 2001 From: Rumperuu Date: Tue, 27 Apr 2021 08:27:49 +0100 Subject: [PATCH] refactor: rename `Footnotes_Task` to `Footnotes_Parser` --- ...es-task.php => class-footnotes-parser.php} | 84 ++----------------- src/public/class-footnotes-public.php | 8 +- 2 files changed, 11 insertions(+), 81 deletions(-) rename src/public/{class-footnotes-task.php => class-footnotes-parser.php} (92%) diff --git a/src/public/class-footnotes-task.php b/src/public/class-footnotes-parser.php similarity index 92% rename from src/public/class-footnotes-task.php rename to src/public/class-footnotes-parser.php index 57888df..2e5431a 100644 --- a/src/public/class-footnotes-task.php +++ b/src/public/class-footnotes-parser.php @@ -2,92 +2,22 @@ /** * Includes the core function of the Plugin - Search and Replace the Footnotes. * - * @filesource - * @package footnotes * @since 1.5.0 + * @since 2.0.5 Update: Hooks: Default-enable all hooks to prevent footnotes from seeming broken in some parts. + * @since 2.2.0 Adding: Reference container: support for custom position shortcode, thanks to @hamshe issue report. + * @since 2.8.0 Rename class from `Footnotes_Task` to `Footnotes_Parser`. * - * @since 2.0.0 Bugfix: various. - * @since 2.0.4 Bugfix: Referrers and backlinks: remove hard links to streamline browsing history, thanks to @theroninjedi47 bug report. - * @since 2.0.5 Bugfix: Reference container: fix relative position through priority level, thanks to @june01 @imeson @spaceling bug reports, thanks to @spaceling code contribution. - * @since 2.0.5 Update: Hooks: Default-enable all hooks to prevent footnotes from seeming broken in some parts. - * @since 2.0.6 Bugfix: Infinite scroll: debug autoload by adding post ID, thanks to @docteurfitness issue report and code contribution. - * @since 2.0.6 Bugfix: Priority level back to PHP_INT_MAX (ref container positioning not this plugin’s responsibility). - * @since 2.0.6 Bugfix: Reference container: fix line breaking behavior in footnote number clusters. - * @since 2.0.7 BUGFIX: Hooks: Default-disable 'the_post', thanks to @spaceling @markcheret @nyamachi @whichgodsaves @spiralofhope2 @mmallett @andreasra @widecast @ymorin007 @tashi1es bug reports. - * @since 2.0.9 Bugfix: Remove the_post hook. - * @since 2.1.0 Adding: Tooltips: Read-on button: Label: configurable instead of localizable, thanks to @rovanov example provision. - * @since 2.1.1 Bugfix: Referrers, reference container: Combining identical footnotes: fix dead links and ensure referrer-backlink bijectivity, thanks to @happyches bug report. - * @since 2.1.1 Bugfix: Reference container: fix start pages by making its display optional, thanks to @dragon013 bug report. - * @since 2.1.1 Bugfix: Referrers: new setting for vertical align: superscript (default) or baseline (optional), thanks to @cwbayer bug report. - * @since 2.1.1 Bugfix: Reference container: option to append symbol (prepended by default), thanks to @spaceling code contribution. - * @since 2.1.1 Bugfix: Reference container: Backlink symbol: make optional, not suggest configuring it to invisible, thanks to @spaceling feedback. - * @since 2.1.1 Bugfix: Dashboard: priority level setting for the_content hook, thanks to @imeson bug report. - * @since 2.1.1 Bugfix: Tooltips: optional alternative JS implementation with CSS transitions to fix configuration-related outage, thanks to @andreasra feedback. - * @since 2.1.1 Bugfix: Reference container: option to restore pre-2.0.0 layout with the backlink symbol in an extra column. - * @since 2.1.2 Bugfix: Dashboard: priority level settings for all other hooks, thanks to @nikelaos bug report. - * @since 2.1.3 Bugfix: Reference container: fix width in mobile view by URL wrapping for Unicode-non-conformant browsers, thanks to @karolszakiel bug report. - * @since 2.1.4 Bugfix: Styling: Referrers and backlinks: make link elements optional to fix issues. - * @since 2.1.4 Bugfix: Reference container: Backlink symbol: support for appending when combining identicals is on. - * @since 2.1.4 Bugfix: Reference container: make separating and terminating punctuation optional and configurable, thanks to @docteurfitness issue report and code contribution. - * @since 2.1.4 Bugfix: Reference container: Backlinks: fix stacked enumerations by adding optional line breaks. - * @since 2.1.4 Bugfix: Reference container: fix layout issues by moving backlink column width to settings. - * @since 2.1.4 Bugfix: Styling: Tooltips: fix font size issue by adding font size to settings with legacy as default. - * @since 2.1.4 Bugfix: Scroll offset: make configurable to fix site-dependent issues related to fixed headers. - * @since 2.1.4 Bugfix: Scroll duration: make configurable to conform to website content and style requirements. - * @since 2.1.4 Bugfix: Tooltips: make display delays and fade durations configurable to conform to website style. - * @since 2.1.4 Bugfix: Referrers and backlinks: Styling: make link elements optional to fix issues, thanks to @docteurfitness issue report and code contribution. - * @since 2.1.4 Bugfix: Reference container, tooltips: fix line wrapping of URLs (hyperlinked or not) based on pattern, not link element. - * @since 2.1.4 Bugfix: Reference container: Backlink symbol: support for appending when combining identicals is on. - * @since 2.1.4 Bugfix: Reference container: Backlinks: fix line breaking with respect to separators and terminators. - * @since 2.1.5 Bugfix: Reference container, tooltips: URL wrap: exclude image source too, thanks to @bjrnet21 bug report. - * @since 2.1.6 Bugfix: Reference container, tooltips: URL wrap: fix regex, thanks to @a223123131 bug report. - * @since 2.1.6 Bugfix: Dashboard: URL wrap: add option to properly enable/disable URL wrap. - * @since 2.2.0 Adding: Reference container: support for custom position shortcode, thanks to @hamshe issue report. - * @since 2.2.3 Bugfix: Custom CSS: insert new CSS in the public page header element after existing CSS. - * @since 2.2.5 Bugfix: Reference container: delete position shortcode if unused because position may be widget or footer, thanks to @hamshe bug report. - * @since 2.2.5 Bugfix: Reference container: Label: make bottom border an option, thanks to @markhillyer issue report. - * @since 2.2.5 Bugfix: Reference container: Label: option to select paragraph or heading element, thanks to @markhillyer issue report. - * @since 2.2.5 Update: Tooltips: Alternative tooltips: connect to position/timing settings (for themes not supporting jQuery tooltips). - * @since 2.2.6 Bugfix: Reference container, tooltips: URL wrap: make the quotation mark optional wrt query parameters, thanks to @spiralofhope2 bug report. - * @since 2.2.7 Bugfix: Reference container, tooltips: URL wrap: remove a bug introduced in the regex, thanks to @rjl20 @spaceling @lukashuggenberg @klusik @friedrichnorth @bernardzit bug reports. - * @since 2.2.8 Bugfix: Reference container, tooltips: URL wrap: correctly make the quotation mark optional wrt query parameters, thanks to @spiralofhope2 bug report. - * @since 2.2.9 Bugfix: Reference container, tooltips: URL wrap: account for RFC 2396 allowed characters in parameter names. - * @since 2.2.9 Bugfix: Reference container, widget_text hook: support for multiple containers in a page, thanks to @justbecuz bug report. - * @since 2.2.9 Bugfix: Reference container, tooltips: URL wrap: exclude URLs also where the equals sign is preceded by an entity or character reference. - * @since 2.2.10 Bugfix: Reference container: add option for table borders to restore pre-2.0.0 design, thanks to @noobishh issue report. - * @since 2.2.10 Bugfix: Reference container, tooltips: URL wrap: support also file transfer protocol URLs. - * @since 2.3.0 Bugfix: Reference container: convert top padding to margin and make it a setting, thanks to @hamshe bug report. - * @since 2.3.0 Adding: Referrers and backlinks: optional hard links for AMP compatibility, thanks to @psykonevro issue report, thanks to @martinneumannat issue report and code contribution. - * @since 2.3.0 Bugfix: Dashboard: Custom CSS: swap migration Boolean, meaning 'show legacy' instead of 'migration complete', due to storage data structure constraints. - * @since 2.4.0 Adding: Footnote delimiters: syntax validation for balanced footnote start and end tag short codes. - * @since 2.4.0 Bugfix: Scroll offset: initialize to safer one third window height for more robustness, thanks to @lukashuggenberg bug report. - * @since 2.4.0 Bugfix: Reference container: Label: set empty label to U+202F NNBSP for more robustness, thanks to @lukashuggenberg feedback. - * @since 2.4.0 Bugfix: Templates: optimize template load and processing based on settings, thanks to @misfist code contribution. - * @since 2.4.0 Bugfix: Process: initialize hard link address variables to empty string to fix 'undefined variable' bug, thanks to @a223123131 bug report. - * @since 2.5.0 Bugfix: Hooks: support footnotes on category pages, thanks to @vitaefit bug report, thanks to @misfist code contribution. - * @since 2.5.0 Bugfix: Footnote delimiters: Syntax validation: exclude certain cases involving scripts, thanks to @andreasra bug report. - * @since 2.5.0 Bugfix: Footnote delimiters: Syntax validation: complete message with hint about setting, thanks to @andreasra bug report. - * @since 2.5.0 Bugfix: Footnote delimiters: Syntax validation: limit length of quoted string to 300 characters, thanks to @andreasra bug report. - * @since 2.5.1 Bugfix: Hooks: support footnotes in Popup Maker popups, thanks to @squatcher bug report. - * @since 2.5.2 Update: Tooltips: ability to display dedicated content before `[[/tooltip]]`, thanks to @jbj2199 issue report. - * @since 2.5.3 Bugfix: Reference container, tooltips: URL wrap: exclude URL pattern as folder name in Wayback Machine URL, thanks to @rumperuu bug report. - * @since 2.5.4 Bugfix: Referrers: optional fixes to vertical alignment, font size and position (static) for in-theme consistency and cross-theme stability, thanks to @tomturowski bug report. - * @since 2.5.4 Bugfix: Reference container, tooltips: URL wrap: account for leading space in value, thanks to @karolszakiel example provision. - * @since 2.5.4 Update: Reference container: Hard backlinks (optional): optional configurable tooltip hinting to use the backbutton instead, thanks to @theroninjedi47 bug report. - * @since 2.5.4 Bugfix: Tooltips: fix display in Popup Maker popups by correcting a coding error. - * @since 2.5.5 Bugfix: Process: fix numbering bug impacting footnote #2 with footnote #1 close to start, thanks to @rumperuu bug report, thanks to @lolzim code contribution. - * @since 2.5.6 Bugfix: Reference container: optional alternative expanding and collapsing without jQuery for use with hard links, thanks to @hopper87it @pkverma99 issue reports. - * @since 2.5.7 Bugfix: Process: fix footnote duplication by emptying the footnotes list every time the search algorithm is run on the content, thanks to @inoruhana bug report. - * @since 2.5.11 Bugfix: Forms: remove footnotes from input field values, thanks to @bogosavljev bug report. - * @since 2.5.14 Bugfix: Footnote delimiter short codes: fix numbering bug by cross-editor HTML escapement schema harmonization, thanks to @patrick_here @alifarahani8000 @gova bug reports. + * @package footnotes + * @subpackage footnotes/public */ /** * Searches and replaces the footnotes and generates the reference container. * * @since 1.5.0 + * @since 2.8.0 Rename class from `Footnotes_Task` to `Footnotes_Parser`. */ -class Footnotes_Task { +class Footnotes_Parser { /** * Contains all footnotes found in the searched content. diff --git a/src/public/class-footnotes-public.php b/src/public/class-footnotes-public.php index 598fb65..05bb174 100644 --- a/src/public/class-footnotes-public.php +++ b/src/public/class-footnotes-public.php @@ -110,8 +110,8 @@ class Footnotes_Public { * Include the following files that provide the public-facing functionality * of this plugin: * - * - `Footnotes_Task`. TODO - * - `Footnotes_Widget_Reference_Container`. TODO + * - `Footnotes_Parser`. Parses Posts and Pages for footnote shortcodes. + * - `Footnotes_Widget_Reference_Container`. Defines the Reference Container widget. * * @since 2.8.0 * @access private @@ -122,10 +122,10 @@ class Footnotes_Public { require_once plugin_dir_path( dirname( __FILE__ ) ) . 'includes/class-footnotes-settings.php'; require_once plugin_dir_path( dirname( __FILE__ ) ) . 'includes/class-footnotes-convert.php'; - require_once plugin_dir_path( dirname( __FILE__ ) ) . 'public/class-footnotes-task.php'; + require_once plugin_dir_path( dirname( __FILE__ ) ) . 'public/class-footnotes-parser.php'; require_once plugin_dir_path( dirname( __FILE__ ) ) . 'public/widget/class-footnotes-widget-base.php'; - $this->a_obj_task = new Footnotes_Task(); + $this->a_obj_task = new Footnotes_Parser(); } /**