Support

Admin Tools

#35960 Watchful

Posted in ‘Admin Tools for Joomla! 4 & 5’
This is a public ticket

Everybody will be able to see its contents. Do not include usernames, passwords or any other sensitive information.

Environment Information

Joomla! version
n/a
PHP version
n/a
Admin Tools version
n/a

Latest post by on Thursday, 11 November 2021 20:17 CST

beelicomm

hi

got the first Joomla 4 site, installed Admin Tools, something on Admin Tools is blocking my Watchful App connection.

i have a lot of Jooml 3 installations witht admin Tool and Watchful, never had this problem.

can you please figure out this witch watchful

https://watchful.net

 

thank you

 

nicholas
Akeeba Staff
Manager

Admin Tools does not have a feature which would prevent Akeeba Backup's Remote JSON API from running. You can confirm this yourself.

If you are using the .htaccess Maker replace the contents of your site's .htaccess file with the contents of the htaccess.txt shipped with Joomla. This removes any customisations done by the .htaccess Maker.

Go to Components, Admin Tools, Web Application Firewall, Configure WAF, Basic Features and set “Defend against plugin deactivation” to No. Click on Save & Close. Then go to System, Plugins and disable (unpublished) the System – Admin Tools plugin. This completely disables all Admin Tools features.

You will see that this made no difference to your backups.

As far as we know, Watchful was not compatible with the Akeeba Backup Remote JSON API v2 when we released Akeeba Backup 9. Please note that the v2 API was enabled in our software for a year and a half alongside the legacy v1 API so that third party services like Watchful have the time to support it. With Akeeba Backup 9 we dropped support for the v1 API completely; Akeeba Backup 9 only supports the v2 API.

In case this is not clear: Akeeba Backup for Joomla 3 (versions 8 and below) support the Akeeba Backup Remote JSON API v1. Akeeba Backup for Joomla 4 (version 9) only supports the Akeeba Backup Remote JSON API v2. You never had a problem with your Joomla 3 site because Watchful was using the old (v1) API to talk to Akeeba Backup. With Joomla 4 they MUST use the v2 API, otherwise they cannot talk to Akeeba Backup. Therefore they need to tell you a. if they have implemented the v2 API support and b. if they have, do you need to do something special on their service to enable it for your Joomla 4 sites.

Since these issues have to do with Watchful please do contact them.  We had told them about the imminent implementation of the v2 API since December 2019, a month before we released Akeeba Backup 7.0, the first version of Akeeba Backup with support for the v2 API.

Nicholas K. Dionysopoulos

Lead Developer and Director

🇬🇷Greek: native 🇬🇧English: excellent 🇫🇷French: basic • 🕐 My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!

beelicomm

thank you

wathful wrote: 

I confirm we are now compatible with Akeeba Backup V2, anyway your issue has nothing to do with Akeeba Backup in this case.   when i uninstall admin tools, there is no problem to connect with watchful   installing admin tools pro 7.0.5 >> connection is broken   is there any setting in admin tool, i should disable or enable...?   Markus

nicholas
Akeeba Staff
Manager

I talked to their CEO and he told me that you have to select “Akeeba Pro API V2” in the backup configuration. See the attachment; it's the image he sent me as a reference.

Again, as I already told you, Admin Tools does not have a feature which would prevent Akeeba Backup's Remote JSON API from running. You can confirm this yourself.

If you are using the .htaccess Maker replace the contents of your site's .htaccess file with the contents of the htaccess.txt shipped with Joomla. This removes any customisations done by the .htaccess Maker.

Go to Components, Admin Tools, Web Application Firewall, Configure WAF, Basic Features and set “Defend against plugin deactivation” to No. Click on Save & Close. Then go to System, Plugins and disable (unpublished) the System – Admin Tools plugin. This completely disables all Admin Tools features.

After doing those changes Admin Tools is effectively disabled. Try to back up your site again with Watchful. If you can reproduce the issue then Admin Tools is not involved. I don't know how else to prove we are not an elephant.

Nicholas K. Dionysopoulos

Lead Developer and Director

🇬🇷Greek: native 🇬🇧English: excellent 🇫🇷French: basic • 🕐 My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!

beelicomm

hi nicholas, just wrote this to watchful:

 

- htacces is the original Joomla 4 file
- IP of Watchful is withelistet 
- Backup Plugin Extension is API V2

All i can see on Error Logs is:

2021-10-11T08:30:50+00:00    CRITICAL 34.250.7.114    error    Uncaught Throwable of type TypeError thrown with message "explode(): Argument #2 ($string) must be of type string, array given". Stack trace: #0 /home/httpd/vhosts/willen-luzern.ch/httpdocs/plugins/system/admintools/src/Feature/TmplSwitch.php(47): explode(',', Array)

i made you a clone of the whole Website for analysis include FTP Access.

i have a watchful plus Subscripton paying 78$ a month, Akeeba Backup and Admintools since years and I would really appreciate it if you guys can toghether solve this problem.


Markus

nicholas
Akeeba Staff
Manager

Thank you for the additional information! It helps a lot.

The problem seems to be an issue with Admin Tools and the way PHP 8 has changed how its built–in functions work. It doesn't block Akeeba Backup, it causes PHP 8 to throw an error on any request that has a tmpl query string parameter and if the WAF configuration is of a specific type.

I am not sure why Watchful is sending a request with a tmpl query string parameter in it to access Akeeba Backup. They don't need to specify a tmpl and it's ignored anyway in this case. So, that's one part of the problem and one of the reasons why I could not reproduce this issue. Since I don't use Watchful I can only test with Akeeba Remote CLI which doesn't send a tmpl query string parameter.

The other reason I would not be able reproduce this issue is that this PHP 8 error is only triggered if your Admin Tools configuration contains an array instead of a comma separated string for the tmplwhitelist parameter which does not happen until you save the WAF configuration. I tried reproducing your issue on a new installation of Joomla 4 on PHP 8 with the latest released versions of Akeeba Backup 9 and Admin Tools 7. I only went through the Quick Setup, I didn't go through the Configure WAF page therefore I would not trigger the prerequisite for the error condition.

With the additional information you gave me, yes, I can reproduce this (using a modified version of Remote CLI to trigger this issue) and solved this issue.

Please install the following dev release https://www.akeeba.com/download/developer-releases/admin-tools-professional/reve3d8e88f.html This will be released next week as Admin Tools 7.0.6.

PS: Just FYI. You do not need to tell me how much you are paying or that you are a client for years. I am already aware and is largely irrelevant to me as a motivator. My motive for building and maintaining software is helping people. Selling subscriptions is a necessary evil inasmuch I need to make a living in a way that doesn't restrict my available time to do what I love doing. If there is an issue in our software I will fix it regardless of who you are. If it's an issue outside our software I can try to work around it but I cannot guarantee success since the root cause in this case would be outside what I can reasonably have any control over. If it's something that I cannot work around I will tell you why, who to contact and what to tell them. That's the pragmatic way I've always approached software development.

Nicholas K. Dionysopoulos

Lead Developer and Director

🇬🇷Greek: native 🇬🇧English: excellent 🇫🇷French: basic • 🕐 My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!

beelicomm

Thank you very much Nicholas!

with this DEV Version, i'm able to connect the site with watchful.

I sent the critical bug to Watchful from the start. I was sure from the start that it must have something to do with the new PHP 8, J! 4 combinations. But I'm not a programmer. And it is a bit annoying when I have to mediate between two software cracks as a „beta tester“ ;)

so i will wait until next week for the stable version of 7.0.6

 

τις καλύτερες ευχές

Markus

nicholas
Akeeba Staff
Manager

Yeah, many things have happened at once which makes it hard to narrow things down without the exact error message: Joomla 4, PHP 8, API v2. Rewriting Admin Tools for J4 had to be compressed to half the time we had allotted since Joomla decided to make a release in August instead of October. On top of that using J4 native repeatable fields (actually: subform fields) has some weirdness in that default values are comma–separated strings but when you save them they become arrays. The problem with the latter is that whether we'll run into a PHP 8 issue depends very much on whether the WAF configuration data comes from an older version, the Quick Setup Wizard or after saving the WAF Configuration — and the order you do things. This makes it very complicated to test all cases automatically so certainly there are coverage gaps we didn't have before.

Nicholas K. Dionysopoulos

Lead Developer and Director

🇬🇷Greek: native 🇬🇧English: excellent 🇫🇷French: basic • 🕐 My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!

System Task
system
This ticket has been automatically closed. All tickets which have been inactive for a long time are automatically closed. If you believe that this ticket was closed in error, please contact us.

Support Information

Working hours: We are open Monday to Friday, 9am to 7pm Cyprus timezone (EET / EEST). Support is provided by the same developers writing the software, all of which live in Europe. You can still file tickets outside of our working hours, but we cannot respond to them until we're back at the office.

Support policy: We would like to kindly inform you that when using our support you have already agreed to the Support Policy which is part of our Terms of Service. Thank you for your understanding and for helping us help you!