[3] Preserve update site extra_query on rebuild and use extra_query from update site if update has none#32862
[3] Preserve update site extra_query on rebuild and use extra_query from update site if update has none#32862HLeithner merged 15 commits intojoomla:stagingfrom PhilETaylor:extraquery
Conversation
…update site if update has none Signed-off-by: Phil E. Taylor <phil@phil-taylor.com>
Signed-off-by: Phil E. Taylor <phil@phil-taylor.com>
Signed-off-by: Phil E. Taylor <phil@phil-taylor.com>
Co-authored-by: Brian Teeman <brian@teeman.net>
Signed-off-by: Phil E. Taylor <phil@phil-taylor.com>
Co-authored-by: Richard Fath <richard67@users.noreply.github.com>
|
@PhilETaylor Not sure if it's an issue, but theoretically, as the update sites table doesn't have any unique index on the location column, it can be that there are several update sites with the same location but different extra queries. Practically I think it's unlikely because that wouldn't make much sense. |
This comment was marked as abuse.
This comment was marked as abuse.
This comment was marked as abuse.
This comment was marked as abuse.
|
@PhilETaylor Good that we checked. |
|
Next question is where do I find an extension which needs an update query. Do you have some examples? I don't use such on my private site. |
This comment was marked as abuse.
This comment was marked as abuse.
|
@PhilETaylor Would a hello world component plus an update site which are extended as described here https://joomdonation.com/forum/os-property/24123-extra-query-not-working.html plus some redirect rules in .htaccess for the extra query URLs to make sure the an URL from version x is not used with the next media ID query parameter of version y and vice versa, i.e. return a 404 if it doesn't match, do the job? I could provide the update site with the redirect rules, but with the component I'd need help maybe. |
This comment was marked as abuse.
This comment was marked as abuse.
Bon appetite! |
This comment was marked as abuse.
This comment was marked as abuse.
|
Will test later today or tomorrow. |
|
I have spent sometime to review the code and have few questions (hopefully it is not stupid question because I don't understand the code/logic of the whole update process):
|
|
I also made PR https://github.com/PhilETaylor/joomla-cms/pull/1 to your branch with suggestion to improve code to save the system from have to run for each loop. Please review to see if it looks OK for you and If yes, merge it. Also, in the issue #32592, the author suggested this solution:
Do you know what query cache is he talking about? Would be nice if we can figure out solve all the reported issues with extra_query on this PR. |
@joomdonation I'm not sure, but maybe Nicholas means the MySQL query cache, which is something used by MySQL versions lower than 8.0.2 but has been removed with 8.0.2, while MariaDB still has that query cache. See e.g. this PR here: #32028 . |
|
@richard67 Maybe not because he mentioned about clear Joomla cache in his instructions for his customers. |
Minor improvement
That's why I wrote I'm not sure. |
|
@PhilETaylor I've found a few code standards issues, like not using names quoting in that DB query which has been modified with the last commit to use "TRIM", or with the function parameter |
This comment was marked as abuse.
This comment was marked as abuse.
That's ok for me. |
This comment was marked as abuse.
This comment was marked as abuse.
|
I don’t know when 3.9.26 will be prepared, but I’m clarifying. I am too tired now to test anything today. As said, I hope I can use our Easter weekend. |
|
@PhilETaylor I have reviewed the code and I believe that it would address the issue. However, I have few concerns which I mentioned at #32862 (comment) . Do you want to take a look at it? |
This comment was marked as abuse.
This comment was marked as abuse.
|
@PhilETaylor Leave it as how it is for now. I will test it ASAP |
|
Received. Thanks ! |
|
After looking more at how update works, I believe we should always use extra_query from #__update_sites table instead using extra_query from #__updates table. That will make it easier for users to perform an update in case they has to update the Download ID (in case he enters a wrong Download ID before) Currently, if user has to update Download ID, he will have to:
If we use extra_query directly from #___update_sites table, users will just have to:
That simplify the process and also make more sense. Users won't know that they have to clear cache, then find updates again after updating the Download ID in the extension. With that said, I made PR https://github.com/PhilETaylor/joomla-cms/pull/4 to your branch. Please think about it and if you agree, merge it so that we can move forward. |
This comment was marked as abuse.
This comment was marked as abuse.
Why wake up and answer at this time :( ? Go sleep :). |
Always use extra_query from #__update_sites
This comment was marked as abuse.
This comment was marked as abuse.
|
I have tested this item ✅ successfully on 4a52cfd This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/32862. |
|
I have tested this item ✅ successfully on 4a52cfd This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/32862. |
|
RTC This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/32862. |
This comment was marked as abuse.
This comment was marked as abuse.
You are not alone :D . |
|
Thanks |
@joomdonation @PhilETaylor Meanwhile I think he meant the Joomla cache for particular components like system, com_installer and a few others, when update sites have been rebuilt. Possibly we should check that and make a follow up PR. |
|
@richard67 Actually, he is talking about caching the updates found (Joomla! has that set to 6 hours by default). By using extra_query directly from #__update_sites instead of #__updates table as we are doing now, I think the issue with extra_query should be fully sorted by now. See the attached screenshot to see the caching I am talking about here |
This comment was marked as abuse.
This comment was marked as abuse.
This comment was marked as abuse.
This comment was marked as abuse.
This comment was marked as abuse.
This comment was marked as abuse.
administrator/components/com_installer/views/updatesites/tmpl/default.php
Show resolved
Hide resolved
* Empty State for System-> Discover * Add period * make private * Update administrator/language/en-GB/com_installer.ini Co-authored-by: Brian Teeman <brian@teeman.net> * simplify code Signed-off-by: Phil E. Taylor <phil@phil-taylor.com> * Change empty state content for com_installer * fix merge * remove unused import * no quote * oops * oops again * Squashed commit of the following: commit 9b0a9f7 Author: Hannes Papenberg <info@joomlager.de> Date: Mon May 3 17:32:57 2021 +0200 [4.0] Removing GUI parts of FTP layer (#33390) commit b013350 Author: Brian Teeman <brian@teeman.net> Date: Mon May 3 16:29:00 2021 +0100 [4.0] namespace (#33511) Minor tweaks after merge 964d90f code review commit 9e54032 Author: Richard Fath <richard67@users.noreply.github.com> Date: Mon May 3 17:06:17 2021 +0200 [4.0] Update download URL of composer 1 for appveyor (#33507) * Update download URL of composer 1 for appveyor * Fix file name in bat file, too commit 8eb9661 Author: Brian Teeman <brian@teeman.net> Date: Mon May 3 16:03:07 2021 +0100 [4.0] filter integer (#33498) In most cases a field with a type of number should also have a filter of integer For example you can not have 3.7 columns or 1.4 links This PR updates those fields where a filter was not, if appropriate. To test either code review or create a blog category menu item and set the column count to 4.1 Before this PR the value saved will be 4.1 After this PR the value saved will be 4 commit 645d8d7 Author: Christiane Maier-Stadtherr <dev@chmst.de> Date: Mon May 3 17:02:46 2021 +0200 better tags in sample data (#33502) commit 394afb7 Author: Richard Fath <richard67@users.noreply.github.com> Date: Mon May 3 16:52:05 2021 +0200 [4.0] Updated files and folders deletion on updates and remove 3.9.x update SQL scripts (#33060) commit 369b1fb Author: Brian Teeman <brian@teeman.net> Date: Mon May 3 15:50:59 2021 +0100 [4.0] br element (#33510) remove the closing slash from the br tag introduced with merge 9c3371f commit 374b2cd Author: Brian Teeman <brian@teeman.net> Date: Mon May 3 15:50:38 2021 +0100 [4.0] database fix text (#33506) After merge 05b83c9 update the string to match changes in joomla 4 commit 8947028 Author: Phil E. Taylor <phil@phil-taylor.com> Date: Mon May 3 13:53:50 2021 +0100 [4] com_modules empty state (#33398) * com_modules empty state * make button reuseable * alpha sort * cs * lowercase * make private Co-authored-by: Quy <quy@fluxbb.org> commit 8a1d803 Author: wilsonge <georgejameswilson@googlemail.com> Date: Mon May 3 11:56:54 2021 +0100 Fix namespace commit 9b54e8b Author: Saurabh Kumar Suryan <42460131+sksuryan@users.noreply.github.com> Date: Mon May 3 13:45:03 2021 +0530 ✨ fixes issue where dropdown item doesn't have border radius (#33483) Co-authored-by: Richard Fath <richard67@users.noreply.github.com> commit e9afa7c Author: wilsonge <georgejameswilson@googlemail.com> Date: Mon May 3 01:48:21 2021 +0100 PHPCS commit 904f8a4 Merge: 05b83c9 907af36 Author: wilsonge <georgejameswilson@googlemail.com> Date: Mon May 3 01:47:12 2021 +0100 Merge branch '3.10-dev' into 4.0-dev commit 907af36 Merge: 83dc4d8 69a1a58 Author: wilsonge <georgejameswilson@googlemail.com> Date: Mon May 3 01:39:00 2021 +0100 Merge branch 'staging' into 3.10-dev commit 05b83c9 Merge: fa08394 83dc4d8 Author: wilsonge <georgejameswilson@googlemail.com> Date: Mon May 3 01:33:54 2021 +0100 Merge branch '3.10-dev' into 4.0-dev commit fa08394 Merge: 4354291 8004e90 Author: wilsonge <georgejameswilson@googlemail.com> Date: Mon May 3 01:23:12 2021 +0100 Merge commit '8004e90' into 4.0-dev commit 4354291 Merge: 5ae7cb8 54c394d Author: wilsonge <georgejameswilson@googlemail.com> Date: Mon May 3 00:43:44 2021 +0100 Merge commit '54c394d' into 4.0-dev commit 5ae7cb8 Merge: 9c3371f 461c57e Author: wilsonge <georgejameswilson@googlemail.com> Date: Mon May 3 00:18:15 2021 +0100 Merge commit '461c57e' into 4.0-dev commit 9c3371f Merge: 6bfdcb2 3d8593c Author: wilsonge <georgejameswilson@googlemail.com> Date: Mon May 3 00:10:07 2021 +0100 Merge commit '3d8593c' into 4.0-dev commit 6bfdcb2 Merge: 4c84b72 30d26a1 Author: wilsonge <georgejameswilson@googlemail.com> Date: Sun May 2 23:53:05 2021 +0100 Merge commit '30d26a1' into 4.0-dev commit 4c84b72 Merge: b9ae1ca 3c08cfe Author: wilsonge <georgejameswilson@googlemail.com> Date: Sun May 2 23:31:18 2021 +0100 Merge commit '3c08cfe' into 4.0-dev commit b9ae1ca Author: Richard Fath <richard67@users.noreply.github.com> Date: Mon May 3 00:16:29 2021 +0200 [4.0] Remove display widths for integer data types from SQL scripts for MySQL and MariaDB databases (#32608) commit c590711 Author: Phil E. Taylor <phil@phil-taylor.com> Date: Sun May 2 23:10:21 2021 +0100 [4] Empty State for Checking for updates (#33474) commit e32f5d8 Author: Phil E. Taylor <phil@phil-taylor.com> Date: Sun May 2 22:30:30 2021 +0100 s/2008/2021 (#33496) commit 7b98bbb Author: Brian Teeman <brian@teeman.net> Date: Sun May 2 20:57:59 2021 +0100 [4.0] Installation Remove [a11y] (#33448) This pr moves the paragraph description from outside the table to place it correctly as a caption inside the table. It adds scope=col to the table headers and scope=row to the label commit 3258123 Author: Quy <quy@fluxbb.org> Date: Sun May 2 12:53:01 2021 -0700 Move form text below field. (#33436) Co-authored-by: Richard Fath <richard67@users.noreply.github.com> commit e22b42d Author: Christiane Maier-Stadtherr <dev@chmst.de> Date: Sun May 2 21:52:04 2021 +0200 [4.0] [UX] Use number field for num_columns in blog and featured layout (#33482) * use dropdown list for num_colums * Use number field Co-authored-by: Richard Fath <richard67@users.noreply.github.com> commit 7180483 Author: Phil E. Taylor <phil@phil-taylor.com> Date: Sun May 2 20:48:48 2021 +0100 [4] remove space in output html class list (#33456) * remove space in output html Co-authored-by: Richard Fath <richard67@users.noreply.github.com> Co-authored-by: Quy <quy@fluxbb.org> commit a1ab74a Author: Phil E. Taylor <phil@phil-taylor.com> Date: Sun May 2 20:34:48 2021 +0100 [4] Catch, translate, and expound when GD not available. (#33055) * Catch, translate, and expound when GD not available. Signed-off-by: Phil E. Taylor <phil@phil-taylor.com> * Update administrator/components/com_templates/src/View/Template/HtmlView.php Co-authored-by: Richard Fath <richard67@users.noreply.github.com> Co-authored-by: Richard Fath <richard67@users.noreply.github.com> commit 42cd2ee Author: Phil E. Taylor <phil@phil-taylor.com> Date: Sun May 2 20:30:43 2021 +0100 [4] redo the logic behind Empty State Queries. (#33471) * redo the logic behind Empty State Queries. * need to clear offset too * Add static based caching for repeated calls of getIsEmptyState * Remove resetState * Clean up * Sorry, forgot return command * remove limit and offset - these are removed by _getListCount anyway * remove return type * remove return type Co-authored-by: Tuan Pham Ngoc <github@joomdonation.com> Co-authored-by: Richard Fath <richard67@users.noreply.github.com> commit 993598a Author: Yatharth Vyas <yatharth2000.vyas@gmail.com> Date: Mon May 3 00:52:28 2021 +0530 Remove cellspacing and cellpadding (#33486) Co-authored-by: Richard Fath <richard67@users.noreply.github.com> commit 326153f Author: Yatharth Vyas <yatharth2000.vyas@gmail.com> Date: Mon May 3 00:50:45 2021 +0530 [4.0] Fix tabs in User Access levels and Joomla Update Complete View (#33473) * add tabs * remove redundant div * change fieldset to tab It doesn't make sense to enclose an alert in a fieldset * add newline after tab end commit d127585 Author: Hannes Papenberg <info@joomlager.de> Date: Sun May 2 20:05:39 2021 +0200 JS codestyle (#33484) commit 900ae17 Author: wilsonge <georgejameswilson@googlemail.com> Date: Sun May 2 01:03:30 2021 +0100 JS CS commit 53ea0df Author: Richard Fath <richard67@users.noreply.github.com> Date: Sun May 2 01:58:03 2021 +0200 PHPCS fixes after upmerge (#33479) commit a2a5c8c Author: Richard Fath <richard67@users.noreply.github.com> Date: Sun May 2 01:30:07 2021 +0200 Fix merge conflict remainder from upmerge (#33478) commit 25528e3 Merge: 964d90f 4224c76 Author: wilsonge <georgejameswilson@googlemail.com> Date: Sat May 1 23:50:44 2021 +0100 Merge branch '4.0-dev' of github.com:joomla/joomla-cms into 4.0-dev commit 964d90f Merge: 7b9449d 60260bb Author: wilsonge <georgejameswilson@googlemail.com> Date: Sat May 1 23:49:58 2021 +0100 Merge commit '60260bb' into 4.0-dev commit 4224c76 Author: Brian Teeman <brian@teeman.net> Date: Sat May 1 22:53:53 2021 +0100 [4.0] toggle editor icon (#33470) Pull Request for Issue #33465 Change the icon when the toggle editor button is toggled commit 944f5ae Author: Phil E. Taylor <phil@phil-taylor.com> Date: Sat May 1 22:51:20 2021 +0100 [4] Cleanup output html of email field (#33475) Cleanup output of email field commit 8ef49ee Author: Yatharth Vyas <yatharth2000.vyas@gmail.com> Date: Sun May 2 00:20:00 2021 +0530 [4.0] Private Messages: Add legend in Configuration Form (#33442) * add fieldset and legend in com_messages * remove unused language constant Ran a global search using IDE and couldn't find this being used anywhere in the entire repository * add new constant for configuration form * update legend text * arrange imports in lexicographic order * rename constant * rename constant in legend text Co-authored-by: Richard Fath <richard67@users.noreply.github.com> Co-authored-by: Richard Fath <richard67@users.noreply.github.com> commit 057c96f Author: Rishabh Ranjan Jha <61203226+rjharishabh@users.noreply.github.com> Date: Sun May 2 00:12:29 2021 +0530 add class options-form (#33441) commit 15c7ecb Author: Phil E. Taylor <phil@phil-taylor.com> Date: Sat May 1 19:41:41 2021 +0100 [4] Add intl extension check to system info, and while there clean up deprecations/types/[] (#33457) * add check for intl and moderise code and remove deprecated calls * php modernisation * HArd code the names of PHP Extensions to avoid them being translated commit 2c57a4a Author: Yatharth Vyas <yatharth2000.vyas@gmail.com> Date: Sat May 1 23:53:15 2021 +0530 [4.0] com_templates: Validate input for copy template form (#33444) * add required attribute to input * add invalid template name in language * display error message * revert template error message * use existing language constant for error message * Update administrator/components/com_templates/src/Controller/TemplateController.php Co-authored-by: Quy <quy@fluxbb.org> Co-authored-by: Quy <quy@fluxbb.org> commit b700e11 Author: Rishabh Ranjan Jha <61203226+rjharishabh@users.noreply.github.com> Date: Sat May 1 23:34:00 2021 +0530 [4.0] Separable buttons on Joomla Update Page (#33446) * remove btn-group * remove blank lines * indent commit b5b9b5c Author: Fedir Zinchuk <getthesite@gmail.com> Date: Sat May 1 20:56:41 2021 +0300 Fix tinymce the options form (#33464) commit ab2222b Author: Quy <quy@fluxbb.org> Date: Sat May 1 10:23:52 2021 -0700 Hide columns in mobile view (#33458) This is the same behavior as Menus > Manage to hide columns in mobile viewport. commit 41abe13 Author: Konstantin Kolos <k0nstantinkolos88@gmail.com> Date: Sat May 1 20:18:33 2021 +0300 Removed <hr> tag in installation plugins (#33462) commit c6ced8c Author: Brian Teeman <brian@teeman.net> Date: Sat May 1 18:01:13 2021 +0100 [4.0] privacy request scope (#33461) The attribute scope is essential to tell users of assistive technology if the header applies to the column or the row. However that means it can only be applied to a table header (th) and not to a table cell (td). There is a small cosmetic change as a result in that the contents of the cell are now visually displayed in bold. To test go to users-> privacy requests and create a new request and then save All the content in the Email column should be in a th with a scope of row and visually displayed as bold commit 43891a2 Author: Rishabh Ranjan Jha <61203226+rjharishabh@users.noreply.github.com> Date: Sat May 1 21:55:20 2021 +0530 remove attributes (#33469) commit cc70dbd Author: infograf768 <infografjms@gmail.com> Date: Sat May 1 00:01:11 2021 +0200 [4.0] Language switcher: improving display of dropdown with flags (#33082) Co-authored-by: Brian Teeman <brian@teeman.net> commit 6f98135 Author: Quy <quy@fluxbb.org> Date: Fri Apr 30 13:57:55 2021 -0700 Rename alert-default to alert-secondary (#33429) There is no "alert-default" in BS5. Rename it to its equivalency. commit 7b9449d Author: Brian Teeman <brian@teeman.net> Date: Fri Apr 30 18:19:07 2021 +0100 [4.0] Modules modal scope (#33427) The attribute scope is essential to tell users of assistive technology if the header applies to the column or the row. However that means it can only be applied to a table header (th) and not to a table cell (td). There is a small cosmetic change as a result in that the contents of the cell are now visually displayed in bold. Easiest way to test is to try and insert a module into an article. The module modal will be displayed All the content in the first column should be in a th with a scope of row and visually displayed as bold commit 1c74bef Author: jsanders <j53.sanders@gmail.com> Date: Fri Apr 30 19:18:25 2021 +0200 Move the dif tag (#33426) Move the div tag commit 660f084 Author: Brian Teeman <brian@teeman.net> Date: Fri Apr 30 17:44:16 2021 +0100 [4.0] Debug Group scope (#33425) The attribute scope is essential to tell users of assistive technology if the header applies to the column or the row. However that means it can only be applied to a table header (th) and not to a table cell (td). There is a small cosmetic change as a result in that the contents of the cell are now visuall displayed in bold. To test go to users-> groups and click on the permissions icon. All the content in the first column should be in a th with a scope of row and visually displayed as bold commit 949357a Author: Brian Teeman <brian@teeman.net> Date: Fri Apr 30 17:41:06 2021 +0100 [4.0] user groups - col headers (#33423) * [4.0] user groups - col headers There really is no need to hide the column header text here - there is more than enough space in the view * remove duplicate title commit c39fe3a Author: Brian Teeman <brian@teeman.net> Date: Fri Apr 30 13:34:53 2021 +0100 [4.0] behaviour plugin (#33420) change the description of the behaviour plugins to remove the word "content" to avoid confusion with the word "articles" commit 08c4dd1 Author: Rishabh Ranjan Jha <61203226+rjharishabh@users.noreply.github.com> Date: Fri Apr 30 18:01:11 2021 +0530 [4.0] click to check the checkbox in com_cache (#33413) * class-attribute two to one * add previous label commit 441f2e3 Author: Richard Fath <richard67@users.noreply.github.com> Date: Fri Apr 30 13:23:51 2021 +0200 [4.0] Add update SQL script for admin modules parameters changed by PR #33045 (#33375) commit 9c0b9f3 Author: Brian Teeman <brian@teeman.net> Date: Fri Apr 30 12:09:44 2021 +0100 [4.0] icon for non featured (#33417) commit 3239d0d Author: Phil E. Taylor <phil@phil-taylor.com> Date: Fri Apr 30 12:08:24 2021 +0100 [4] When item doesn't exist, show specific message (#33414) commit 9eef041 Author: Phil E. Taylor <phil@phil-taylor.com> Date: Fri Apr 30 12:05:01 2021 +0100 Only show versions if the article has been saved at least once (#33412) commit 3dfaeed Author: Konstantin Kolos <k0nstantinkolos88@gmail.com> Date: Fri Apr 30 14:03:41 2021 +0300 [4] [Workflow] Removed unused constants (#33377) commit 3a9ebcb Author: Phil E. Taylor <phil@phil-taylor.com> Date: Fri Apr 30 11:47:17 2021 +0100 [4] Allow banner creation if there are not categories (#33399) * add ACL check * allow adding banners from empty state if no categories commit aedf7e3 Author: Phil E. Taylor <phil@phil-taylor.com> Date: Fri Apr 30 11:10:20 2021 +0100 [4] Fix trash menu items displaying logic (#33406) Fix trashing items ACL checks commit 1e35de4 Author: Brian Teeman <brian@teeman.net> Date: Fri Apr 30 10:59:26 2021 +0100 [4.0] regenerate helptoc (#33415) Runs the buildTOC.php script. There is at least one new entry when you go to the help page Action Logs commit 3935893 Author: Brian Teeman <brian@teeman.net> Date: Fri Apr 30 10:56:32 2021 +0100 [4.0] Media Manager - Can't preview entire image (#33323) * [4.0] Media Manager - Can't preview entire image Pull request for #29149 This requires npm ci as it's a css change ### Steps to reproduce the issue - Download https://unsplash.com/photos/xnEZYWmfPwU/download?force=true (original size) - Upload to the Media Manage or place in your images directory - Double click the image to preview it ### Before Half the image is cropped and you cannot scroll down to view the other half ### After The entire image is visable * tabs * lint * portrait commit 260feca Author: Brian Teeman <brian@teeman.net> Date: Fri Apr 30 10:47:05 2021 +0100 [4.0] TinyMCE plugin layout (#33177) * [4.0] (WIP) TinyMCE plugin layout There have been multiple issues raised about the UI of the tinymce plugin and the lack of clarity that the options are for different sets. It's also a very regular topic on the forum whereby users believe they have configured the plugin and it doesn't work. When the problem is that they are simply in the wrong set. This is a work in progress attempt to improve this. The basic concept of this change it to move the "All available menus and buttons." inside each set so that the tabs are at the top. The other main change (which is not done yet) is to move the "Assign this Set to" field and label to the very first field in the tab. Hopefully this will make it much much more obvious that you are completing a set of options for a usergroup and not for the entire plugin. (If anyone has a suggestion how to display that field at the very top it would be appreciated) * access field * draft * date commit a069901 Author: Phil E. Taylor <phil@phil-taylor.com> Date: Fri Apr 30 10:40:54 2021 +0100 [4] Remove disabled and useless buttons on empty state leaving just New (#33380) * Remove disabled and useless buttons on empty state leaving just New * Hide empty trash if last status filtered was trashed * Update administrator/components/com_tags/src/View/Tags/HtmlView.php Co-authored-by: Richard Fath <richard67@users.noreply.github.com> Co-authored-by: Richard Fath <richard67@users.noreply.github.com> commit 875b8c9 Author: Phil E. Taylor <phil@phil-taylor.com> Date: Fri Apr 30 09:41:14 2021 +0100 com_csp empty state (#33416) commit 3f58bda Author: Phil E. Taylor <phil@phil-taylor.com> Date: Fri Apr 30 09:40:35 2021 +0100 com_installer warnings empty state (#33411) commit 770e24b Author: Phil E. Taylor <phil@phil-taylor.com> Date: Fri Apr 30 09:39:39 2021 +0100 [4] Empty state for com_redirect (#33384) * Empty state for com_redirect * merge from other pr * change icon * cs * alpha * Update administrator/language/en-GB/com_redirect.ini Co-authored-by: Quy <quy@fluxbb.org> * Update administrator/components/com_redirect/tmpl/links/emptystate.php Co-authored-by: Brian Teeman <brian@teeman.net> Co-authored-by: Quy <quy@fluxbb.org> Co-authored-by: Brian Teeman <brian@teeman.net> commit 1293461 Author: Phil E. Taylor <phil@phil-taylor.com> Date: Fri Apr 30 09:39:02 2021 +0100 [4] Global Check-in Empty State (#33383) * Global Check-in Empty State * remove language string not used * tabs * change text * cs * remove formURL Co-authored-by: Quy <quy@fluxbb.org> commit 4e930a7 Author: Phil E. Taylor <phil@phil-taylor.com> Date: Fri Apr 30 09:38:30 2021 +0100 [4] Empty State for Banner clients and tracks (#33381) * Empty State for Banner clients and tracks * Remove formURL Co-authored-by: Quy <quy@fluxbb.org> commit 30aa741 Author: Phil E. Taylor <phil@phil-taylor.com> Date: Fri Apr 30 09:36:26 2021 +0100 [4] Blank State for com_cache (#33325) * add com_cache blank slate * Dont display toolbar if no cache items * Add blank state language strings * namespace \count function calls * /s/you/if * Update administrator/components/com_cache/tmpl/cache/blankstate.php Co-authored-by: Brian Teeman <brian@teeman.net> * Update administrator/components/com_cache/tmpl/cache/blankstate.php Co-authored-by: Brian Teeman <brian@teeman.net> * Update administrator/language/en-GB/com_cache.ini Co-authored-by: Brian Teeman <brian@teeman.net> * Add icon Signed-off-by: Phil E. Taylor <phil@phil-taylor.com> * a-z lang strings Signed-off-by: Phil E. Taylor <phil@phil-taylor.com> * s/blankslate/emptystate * Short array syntax * Update administrator/language/en-GB/com_cache.ini Co-authored-by: Brian Teeman <brian@teeman.net> Co-authored-by: Brian Teeman <brian@teeman.net> Co-authored-by: Quy <quy@fluxbb.org> commit 9632877 Author: Phil E. Taylor <phil@phil-taylor.com> Date: Fri Apr 30 09:34:01 2021 +0100 [4] Generic Blank State for Categories of Extensions & Tags (#33286) * Blank State for Categories of Extensions Allow more generic use of filering by where Further refine use of filtering Add Tags Blank State Refine the lookup with a non-generic filter dont use input use filter update copyright date Co-authored-by: Brian Teeman <brian@teeman.net> update copyright date Co-authored-by: Brian Teeman <brian@teeman.net> refactor due to upstream changes Refactor due to upstream change convert array to short syntax correct url remove unused lang Co-authored-by: Quy <quy@fluxbb.org> Correct help url add really unhelpful documentation link reindex array remove indent Special handling for the title as com_categories is a service component Update administrator/components/com_categories/tmpl/categories/blankstate.php add correct icon Signed-off-by: Phil E. Taylor <phil@phil-taylor.com> add link for learn more button Signed-off-by: Phil E. Taylor <phil@phil-taylor.com> revert Update administrator/components/com_tags/tmpl/tags/blankstate.php Co-authored-by: Quy <quy@fluxbb.org> Align => empty state rename from blank slate * Update administrator/components/com_categories/src/Model/CategoriesModel.php * Update administrator/components/com_tags/src/Model/TagsModel.php * remove deprecated calls and ensure only new button shown on empty state * Remove spaces * Prepared statement * make private Co-authored-by: Quy <quy@fluxbb.org> commit 7d02ff8 Author: Brian Teeman <brian@teeman.net> Date: Thu Apr 29 17:01:59 2021 +0100 [4.0] Empty Trash Button (#33402) When you have filtered your items by the trashed status in most components there is an empty trash button on the toolbar. However for contacts, newsfeeds, redirects and tags the button is in the actions dropdown. For a consistent UI they should all be the same. To test apply the pr filter a component by trashed and observe the button commit fd15e91 Author: Konstantin Kolos <k0nstantinkolos88@gmail.com> Date: Thu Apr 29 17:12:36 2021 +0300 [4] [mod_tags_similar] Transferring the class from DIV to UL (#33385) * Removed unused constants * Update com_workflow.ini * Transferring the class from DIV to UL commit 4022a2e Author: Viviana Menzel <vivianamenzel@dr-menzel-it.de> Date: Thu Apr 29 16:09:09 2021 +0200 [4.0] Set color for text and links in position topbar (#33394) * Set color for text and links in position topbar * Add empty line commit a985874 Author: Phil E. Taylor <phil@phil-taylor.com> Date: Thu Apr 29 15:04:02 2021 +0100 Allow newsfeed creation if no categories (#33405) commit 0b6e297 Author: Brian Teeman <brian@teeman.net> Date: Thu Apr 29 15:03:00 2021 +0100 [4.0] Sample Data focus ring (#33407) Adds some margin so that the entire focus ring is visible. (Usually seen when you navigate using the keyboard) ### Before ### After commit 69a1a58 Author: Tuan Pham Ngoc <github@joomdonation.com> Date: Thu Apr 22 13:56:43 2021 +0700 Update field.php (#33129) Fix fieldname commit 83dc4d8 Author: Richard Fath <richard67@users.noreply.github.com> Date: Tue Apr 20 20:18:04 2021 +0200 Add database structure check to pre-update checker (#33080) commit 0dc0a3a Author: DelPoint <DelPoint@users.noreply.github.com> Date: Tue Apr 20 18:59:47 2021 +0200 Update default.php in mod_banners (#32622) * Update default.php in mod_banners Missing container element for $headerText (optional in banner module), which limits the header text's CSS styling. (While $footerText has container element.) * Update modules/mod_banners/tmpl/default.php Co-authored-by: Quy <quy@fluxbb.org> Co-authored-by: Robert Deutz <rdeutz@googlemail.com> commit 697a331 Author: Thomas Hunziker <werbemails@bakual.ch> Date: Mon Apr 19 15:04:46 2021 +0200 Reverse ordering is hardcoded to articles (#33190) Batch copying a category no enables reverse ordering only when extension = com_content commit b7fb043 Author: Phil E. Taylor <phil@phil-taylor.com> Date: Fri Apr 16 08:52:42 2021 +0100 Implement security fix (#33128) commit 7c0389a Author: eopws <xareyli@gmail.com> Date: Wed Apr 14 21:32:11 2021 +0300 Delete unnecessary code (#33115) commit d105adf Author: Brian Teeman <brian@teeman.net> Date: Tue Apr 13 22:16:10 2021 +0100 [3.9.26] typos (#33121) Fix obvious typos/spelling commit 8004e90 Merge: f9f6904 10f8eb4 Author: Harald Leithner <leithner@itronic.at> Date: Tue Apr 13 17:13:18 2021 +0200 Merge branch 'staging' into 3.10-dev # Conflicts: # administrator/language/en-GB/en-GB.xml # administrator/language/en-GB/install.xml # administrator/manifests/files/joomla.xml # administrator/manifests/packages/pkg_en-GB.xml # installation/language/en-GB/en-GB.xml # installation/language/ja-JP/ja-JP.xml # language/en-GB/en-GB.xml # language/en-GB/install.xml # libraries/src/Version.php commit 10f8eb4 Author: Harald Leithner <leithner@itronic.at> Date: Tue Apr 13 17:08:36 2021 +0200 Reset to dev commit 6c7b17c Author: Harald Leithner <leithner@itronic.at> Date: Sun Apr 11 22:53:30 2021 +0200 Prepare 3.9.26 release commit 443f593 Author: Harald Leithner <leithner@itronic.at> Date: Thu Apr 8 09:54:15 2021 +0200 Fix Typo (#33068) commit 54c394d Author: Harald Leithner <leithner@itronic.at> Date: Wed Apr 7 23:51:24 2021 +0200 Reset to dev commit 6796300 Author: Harald Leithner <leithner@itronic.at> Date: Wed Apr 7 23:45:23 2021 +0200 Prepare Joomla! 3.9.26-rc commit 21aff1d Author: Phil E. Taylor <phil@phil-taylor.com> Date: Wed Apr 7 22:31:42 2021 +0100 [3][Security] Correctly allow use of IP headers behind Load Balancers, and Not. (#32866) Co-authored-by: Richard Fath <richard67@users.noreply.github.com> Co-authored-by: Brian Teeman <brian@teeman.net> Co-authored-by: Quy <quy@fluxbb.org> commit 41566bb Author: Thomas Hunziker <werbemails@bakual.ch> Date: Wed Apr 7 21:16:08 2021 +0200 Updated japanese installation language files (#33054) commit eda4eff Author: Phil E. Taylor <phil@phil-taylor.com> Date: Tue Apr 6 22:37:17 2021 +0100 [3] Flush administrator system cache after rebuilding update sites (#33040) * Flush both system caches after rebuilding update sites * Update updatesites.php commit 461c57e Author: Tobias Zulauf <zero-24@users.noreply.github.com> Date: Tue Apr 6 19:47:14 2021 +0200 Update CodeMirror to 5.60.0 (#32926) commit 3d8593c Author: Phil E. Taylor <phil@phil-taylor.com> Date: Tue Apr 6 14:56:19 2021 +0100 s/__DEPLOY_VERSION/__DEPLOY_VERSION__ (#33038) commit 7f1ae61 Author: Phil E. Taylor <phil@phil-taylor.com> Date: Tue Apr 6 14:10:14 2021 +0100 [3] Preserve update site extra_query on rebuild and use extra_query from update site if update has none (#32862) Co-authored-by: Brian Teeman <brian@teeman.net> Co-authored-by: Richard Fath <richard67@users.noreply.github.com> Co-authored-by: Tuan Pham Ngoc <github@joomdonation.com> commit 661407c Author: George Wilson <georgejameswilson@googlemail.com> Date: Thu Apr 1 23:40:24 2021 +0100 Change deprecated version to match 4.x a2004ea commit f9f6904 Author: Richard Fath <richard67@users.noreply.github.com> Date: Tue Mar 30 22:38:33 2021 +0200 [3.10] Remove display widths for integer data types from SQL scripts for MySQL and MariaDB databases (#32607) * Remove display widths for integer types from 3.10 schema updates for mysql * 3.10 - Remove display widths for integer types from mysql/joomla.sql Co-authored-by: Tobias Zulauf <zero-24@users.noreply.github.com> commit 30d26a1 Merge: 1770ffb afc196a Author: zero-24 <zero-24@users.noreply.github.com> Date: Tue Mar 30 22:37:20 2021 +0200 Merge branch 'staging' of github.com:joomla/joomla-cms into 3.10-dev commit afc196a Author: Phil E. Taylor <phil@phil-taylor.com> Date: Tue Mar 30 06:47:50 2021 +0100 replace https://resources.joomla.org (#32907) * update url * replace redirected and dead urls Signed-off-by: Phil E. Taylor <phil@phil-taylor.com> commit 1770ffb Author: Richard Fath <richard67@users.noreply.github.com> Date: Mon Mar 29 19:04:37 2021 +0200 [3.10] Add back com_joomlaupdate default.min.js (#32883) * Add back com_joomlaupdate default.min.js * Add missing new line to end of file commit 8e8a69c Author: infograf768 <infografjms@gmail.com> Date: Sun Mar 28 13:25:05 2021 +0200 Administrator menu items type not translated (#32871) commit 0d945e4 Author: Richard Fath <richard67@users.noreply.github.com> Date: Sat Mar 27 17:10:55 2021 +0100 Fix wrong td in thead of pre-update check (#32884) commit 3c08cfe Author: Richard Fath <richard67@users.noreply.github.com> Date: Sat Mar 27 15:53:58 2021 +0100 [3.x] Remove display widths for integer data types from SQL scripts for MySQL and MariaDB databases (#32606) commit 60260bb Author: Geraint Edwards <geraint.edwards@gwesystems.com> Date: Fri Mar 26 20:41:53 2021 +0000 Pre-Upgrade Compatibility Check on Plugins That Could Kill Joomla Upgrade (#31200) * Alternative presentation of compatibility checks for Joomla 4 from Joomla 3.10 * Alternative presentation of compatibility checks for Joomla 4 from Joomla 3.10 * remove accidental commit of .gitignore * Handle situation where we are running 3.10 with an extension what doesn't say its compatible with 3.10 - was incorrectly being reported as not supporting Joomla updater * Adding user guidance notes for update check * code style * Update administrator/components/com_joomlaupdate/controllers/update.php Co-authored-by: Quy <quy@fluxbb.org> * Update administrator/components/com_joomlaupdate/controllers/update.php Co-authored-by: Quy <quy@fluxbb.org> * Changed styling of compatibility feedback columns so that they are aligned Make warning message display be conditional on being relevant to the displayed output. * Revert accidentally committed file * Use tabs for HTML spacing Alphabetical language string key definition Resolve undeclared updateInfo['current'] * Missing ->state when checking "if ($currentCompatibilityStatus->state == 1)" * implement php cs changes * Changes suggested by zero-24 * change updating icon to Joomla ajax-loader.gif * Styling the results with margin left and right Also corrected language type Jomla instead of Joomla * Revert accidentally committed file * More changes suggested by zero-24 * Remove double spacing after full stop in language strings * Changes suggested by zero-24 'is not supported' - awaiting feedback on capitalisation * Changes suggested by zero-24 * js file spacing * Changes suggested by zero-24 * Hathor template override php layout * Changes suggested by zero-24 * Add link to Joomla updater instructions for developer's benefit * Revised version to reflect some of Brian's ideas * Revised layout in traffic light colour sequence, using 'More Detail' and chevrons to indicate more detail available link and including introductory explanation * Revised layout in traffic light colour sequence, using 'More Detail' and chevrons to indicate more detail available link and including introductory explanation * Revised layout in traffic light colour sequence, using 'More Detail' and chevrons to indicate more detail available link and including introductory explanation * Update administrator/language/en-GB/en-GB.com_joomlaupdate.ini Co-authored-by: Brian Teeman <brian@teeman.net> * Update media/com_joomlaupdate/js/default.js Co-authored-by: Quy <quy@fluxbb.org> * Update media/com_joomlaupdate/js/default.js Co-authored-by: Quy <quy@fluxbb.org> * Language string tweak as per bayareajenn's suggestion * First cut at flagging plugins that need attention * Add language string, confirm dialog and messages * should not have committed .gitignore * phpcs correction * Update administrator/components/com_joomlaupdate/models/default.php Co-authored-by: Tobias Zulauf <zero-24@users.noreply.github.com> * Update administrator/components/com_joomlaupdate/models/default.php Co-authored-by: Tobias Zulauf <zero-24@users.noreply.github.com> * Update administrator/language/en-GB/en-GB.com_joomlaupdate.ini Co-authored-by: Tobias Zulauf <zero-24@users.noreply.github.com> * Update administrator/language/en-GB/en-GB.com_joomlaupdate.ini Co-authored-by: Tobias Zulauf <zero-24@users.noreply.github.com> * Update administrator/components/com_joomlaupdate/views/default/tmpl/default_update.php Co-authored-by: Tobias Zulauf <zero-24@users.noreply.github.com> * Update administrator/components/com_joomlaupdate/views/default/tmpl/default_update.php Co-authored-by: Tobias Zulauf <zero-24@users.noreply.github.com> * Update administrator/components/com_joomlaupdate/views/default/tmpl/default_update.php Co-authored-by: Tobias Zulauf <zero-24@users.noreply.github.com> * Update administrator/components/com_joomlaupdate/views/default/tmpl/default_update.php Co-authored-by: Tobias Zulauf <zero-24@users.noreply.github.com> * zero-24 suggestions * Update administrator/language/en-GB/en-GB.com_joomlaupdate.ini Co-authored-by: Brian Teeman <brian@teeman.net> * Update administrator/language/en-GB/en-GB.com_joomlaupdate.ini Co-authored-by: Brian Teeman <brian@teeman.net> * Update administrator/language/en-GB/en-GB.com_joomlaupdate.ini Co-authored-by: Brian Teeman <brian@teeman.net> * Update administrator/language/en-GB/en-GB.com_joomlaupdate.ini Co-authored-by: Brian Teeman <brian@teeman.net> * Update administrator/language/en-GB/en-GB.com_joomlaupdate.ini Co-authored-by: Brian Teeman <brian@teeman.net> * Update administrator/language/en-GB/en-GB.com_joomlaupdate.ini Co-authored-by: Brian Teeman <brian@teeman.net> * Updates as suggested in Git Discussion to make potentially serious problem message clearer and to reduce prominence of php settings check adding in More Detail option * Updates as suggested in Git Discussion * Add problem plugin author and author URL information to the warning information Fix for javascript error thrown when no no live update is available Start update checker on DOMContentLoaded * phpcs * Fix for preupdatechecker not auto-starting automatically * Change language string COM_JOOMLAUPDATE_VIEW_DEFAULT_SHOW_MORE_COMPATIBILITY_INFORMATION to COM_JOOMLAUPDATE_VIEW_DEFAULT_EXTENSIONS_SHOW_MORE_COMPATIBILITY_INFORMATION so that it fits the relevant pattern of strings better Change "Currently Compatible Version" and "Update Compatible Version" to refer to current and target Joomla versions (@particthistle) Re-ordered columns -> "Extension Name, Extension Type, Installed Version, Joomla '3.x' Compatible Version, Joomla '4.x' Compatible Version" to make it easier to read and show progression of Joomla versions (@particthistle) Hide plugin warning and table headings as soon as all the plugins have been tested if they are all 'safe' on the 'live update' tab (@zero-24) * When there are no extensions installed or no non-Core Critical Plugins installed disable the wanrning messages and immediately exit the checking process. Co-authored-by: Geraint Edwards <jevents@gwesystems.com> Co-authored-by: Quy <quy@fluxbb.org> Co-authored-by: zero-24 <zero-24@users.noreply.github.com> Co-authored-by: Brian Teeman <brian@teeman.net> Co-authored-by: Richard Fath <richard67@users.noreply.github.com> * Fix conflicts and implement new getEmptyStateQuery Co-authored-by: Quy <quy@fluxbb.org> Co-authored-by: Brian Teeman <brian@teeman.net>

Summary of Changes
This PR is a first pass attempt at resolving some of the long running issues with the storage and passing of the
extra_queryto update urls.Namely these issues are addressed in this PR:
Once an update has been discovered, the
#__updatestable is populated with a copy of theextra_queryfrom the#__update_sitestable. If a user then goes and adds a new/updates aextra_queryusing an extension (this populates the#__update_sites.extra_querytable ONLY!) then the already discovered update will fail to work, as the#__updates. extra_queryis the one appended to the update URL at update time.On clicking
Rebuildbutton on the update sites page, any previously enteredextra_querythat is stored in#__update_sites.extra_queryis lost. This PR will preserve the#__update_sites.extra_queryvalue based on the URL of thelocationof a URL. As long as the URL remains the same, the newly inserted row in#__update_sitesafter rebuild will still contain the value of the#__update_sites.extra_queryfrom before the rebuild - thus preserving this value.Updates sites do not display in the admin interface the
extra_queryvalue like Joomla 4 does.Location URLS can contain whitespace at the start and end of a URL if the XML has whitespace for formatting
Background
Well,
#__update_sites.extra_queryis any string value a developer wants to place in that table column, which, when checking for updates, will be appended to the update Url.It is commonly used to positively identify a particular user, site, subscription or "license" for commercial (but not exclusively commercial use!)
Testing Instructions
as below
Actual result BEFORE applying this Pull Request
Install an old version of an extension that requires an
extra_queryto update it later. Go to check for updates in Joomla Update Manager, see that you have discovered the update. Go to your extension and enter your new download id/extra_queryprovided by your supplier. Go back to the updates page and attempt to apply the cached update. See that the update fails! with some kind of rejection/403 from your supplier.View your
#__update_sitestable, enter some values for#__update_sites.extra_query- Click Rebuild on the Update Sites Page - note that#__update_sites.extra_queryvalues are now missing.Install an old version of an extension that requires an
extra_queryto update it later. Add the Download ID/Update Id/extra_queryprovided by the vendor. Go to the Update Sites screen and see no visual indication that there is aextra_querystored for this update site.Expected result AFTER applying this Pull Request
Install an old version of an extension that requires an
extra_queryto update it later. Go to check for updates in Joomla Update Manager, see that you have discovered the update. Go to your extension and enter your new download id/extra_queryprovided by your supplier. Go back to the updates page and attempt to apply the cached update. See that the update succeeds!View your
#__update_sitestable, enter some values for#__update_sites.extra_query- Click Rebuild on the Update Sites Page - note that#__update_sites.extra_queryvalues are now preserved.Install an old version of an extension that requires an
extra_queryto update it later. Add the Download ID/Update Id/extra_queryprovided by the vendor. Go to the Update Sites screen and see a new visual indication that there is aextra_querystored for this update site.All urls imported from XML are trimmed of their surrounding whitespace
Documentation Changes Required
None.
Testing Instructions
Edit lin 420 of administrator/components/com_installer/models/update.php to add
echo $url; die;this will echo out the URL that Joomla will attempt to download any updates from, and we can look at that debug output and see if an extra query was used or not in our tests. We are not interested in the actual download of the file or applying the update, as those code areas have not been touched, we are only interested in the URL used.Install Joomla 3
install https://www.joomlacontenteditor.net/downloads/editor/core?task=release.download&id=223
Go to Extensions -> Manage -> update -> clear cache -> find updates -> You will see JCE 2.9.4 available
Edit your
#__update_sitestable and set extra_query =ABCDEFwhere the name = JCE Editor Package (this simulated a Pro version of an extension saving an extra query)Attempt to apply the update - note that the debug print of the URL DOESNT CONTAIN THE ABCDEF appended.
Rebuild your site then Apply PR and repeat above -> Note that the debug print of the URL DOES CONTAIN THE ABCDEF appended.
Install Joomla 3
install https://www.joomlacontenteditor.net/downloads/editor/core?task=release.download&id=223
Edit your
#__update_sitestable and set extra_query =ABCDEFwhere the name = JCE Editor Package (this simulated a Pro version of an extension saving an extra query)In Joomla Admin -> Extensions-> Manage -> Update Sites -> Click rebuild
Inspect the database -
#__update_sitestable entry you added for ABCDEF is removedRebuild your site then Apply PR and repeat above, this time the ABCDEF is retained after Rebuild button is pressed, and the extra_query is also displayed on the page
Install Joomla 3
install https://www.joomlacontenteditor.net/downloads/editor/core?task=release.download&id=223
Edit your
#__update_sitestable and set extra_query =ABCDEFwhere the name = JCE Editor Package (this simulated a Pro version of an extension saving an extra query)Visit Joomla Admin -> Extensions-> Manage -> Update Sites
Note there is nothing to indicate that there is an extra_query
Apply PR
refresh the page and you can now see the extra_query in a new pre box.
Install Joomla 3
install https://www.joomlacontenteditor.net/downloads/editor/core?task=release.download&id=223
Inspect your
#__update_sitestable and see additional whitespace before the URLRebuild your site then Apply PR and repeat above
Inspect your
#__update_sitestable and see NO additional whitespace before the URLInstall Joomla 3
install an extension that has trailing or prepended space to the update server url in its XML file.
Inspect your
#__update_sitestable and see additional whitespace before the URLRebuild your site then Apply PR and repeat above
Inspect your
#__update_sitestable and see NO additional whitespace before the URLHistory
This addresses some of #32592 / #32597