No problem. Closing the issue.
Feel free to open another one if you discover something else.
I recommend updating those modules to latest versions also.
Because the spammaster version 2.51 fixed issues of older 2.xx and what you are reporting is not present anymore in 2.51.
Really make sure you clean the cache. The file spammaster.services.yml in spammaster module root folder should look like this on line 31,32,33
spammaster.collect_service:
class: Drupal\spammaster\SpamMasterCollectService
arguments: ['@request_stack', '@config.factory']
I recommend these steps:
1. Upgrade those backup modules
2. If problem persists, check the server error logs to trace the error.
Is the error exactly the same? Can you post here the error log.
Thanks
I see, let me take a look. I will post back.
Great... and the database dump?
You need to clean your cache. If you are not able via frontend you can do it from backend composer or drush.
You may also do it with phpmyadmin, quick google search
https://www.zymphonies.com/blog/clear-or-rebuild-drupal-cache
Hi pascalmortier,
Thanks for posting.
Please upgrade the module to latest stable 2.51 and clear cache. Afterwards retry the database dump.
Hi pascalmortier,
Please update to version 2.51. The administrator check is not relevant in later versions.
Let us know if that worked for you.
Thx for testing.
The last 2 errors are related to media library.
The original post looks related to Ckeditor and if I recall they had issues in the past with checkAccess.
We will soon launch version 2.50 that might bypass these issues... but we can't really test using a setup exactely like yours. If you have a dev machine and some free time... maybe you can test by uninstalling spam master and install honeypot or antibot (there's an high probability to generate the same errors).
Hi Promes,
We are going to take a look. If you don't change the directory does it work?
Thank for reporting PROMES.
Fixed in version 2.48, please upgrade.
There's probably more legacy code like that. We will eventually get to it.
Thanks again.
Outstanding teknocat. Much simpler to maintain and a notch less resources when run.
Hello teknocat,
Took a quick look, looks much better. Will take a better look and test this week.
Thanks
Pedro
Fixed in version 2.45
Thanks for taking a look Teknocat, please do.
Hi tekncat,
Thanks for reporting. Yes I see the + typo... corrected in version 2.45 that should come out later this week.
Also please login to spammaster.org to check all your licenses. Use 1 single unique license per website, please don't use same license in 2 or more sites. That will eventually throw a MALFUNCTION_6.
https://www.spammaster.org/documentation/#status
Thanks again,
Pedro
Great news.
Will close this one now.
Thanks for reporting.
You may also clean the cache by truncating / deleting all database tables named cache*, cache_* with phpmyadmin.
Afterwards refresh your website page and drupal will rebuild those tables.
Hi Marceldeb,
Thanks for reporting, which version are you upgrading from?
We are using the correct interface for the dependency injection:
use Drupal\Core\Language\LanguageManagerInterface;
/**
* The language manager service.
*
* @var \Drupal\Core\Language\LanguageManagerInterface
*/
protected $languageManager;
Also used in __construct(): Argument #7
LanguageManagerInterface $language_manager,
Are you able to flush your cache in order for these lic service pick up the dependency injections?
Please advise.
Duplicate of
https://www.drupal.org/project/spammaster/issues/3438648
📌
Automated Drupal 11 compatibility fixes for spammaster
Needs review
Version 2.43 implements suggested solutions.
Version 2.43 implements suggested solutions.
Version 2.42 implements proposed solutions. Basically was just add drupal ^11 compatability to composer.json and info.yml files.
Awesome. I will close this one as fixed as all values are changed and escaped for the position function.
POSITION(spamvalue IN :straw) > :value", [
':key' => 'exempt-needle-straw',
':straw' => $spamFormId,
':value' => 0,
If you find anything else just create another issue. I'm happy to extend compatibility to PostgreSQL.
Line 398 got fixed line and jumped to line 407... that's all I wanted to test.
Please update to version 2.37 and report back.
Thanks
That looks related to PHP version. Are you running PHP 7.x.x?
We've launched version 2.36 that solves a few issues with PostgreSQL.
At a later release we will test with a PostgreSQL test bench.
I see. Same file line 400 please change and post back.
from:
':straw' => 'CAST(' . $spamFormId . ' AS TEXT)',
to:
':straw' => $spamFormId,
ah I think I see the issue. Locate is not available in PostgreSQL. Position should work for both PostgreSQL and MySQL.
If you have time please change line 398 of file [recadcted]/dev/web/modules/contrib/spammaster/src/SpamMasterElusiveService.php
from:
LOCATE(spamvalue, :straw)
to:
POSITION(spamvalue IN :straw)
The locate function is used in 2 files, but if it clears the error on 398 we can launch an update that applies to all instances.
Hi kinetix242,
Thanks for taking a look.
Since you have Postgresql are you able to make a few tests in your dev machine?
If so, please drop me a line via https://www.spammaster.org/contact/
Please test with just release version 2.35 as we needed to make a few adjustments.
Let us know if above version fixes the issue.
Hi kinetix242,
I don't see your database type, guessing your are using PostgreSQL instead of MySQL. Please install version 2.34 and let us know if that fixes the issue for you.
Great. Closing this one now.
Thanks again for reporting.
oh I see, both warnings (line 575 and 614) are a typo related to previous fix.
line 575:
if (!empty($spammasteremail) || is_array($spammasteremail)) {
should be if empty:
if (empty($spammasteremail) || is_array($spammasteremail)) {
Fixed in version 2.6.
Regarding "WSOD on anonymous" please do open a new ticket if related to the module.
Thank you again.
Hi nessunluogo,
Other users brought to my attention that version 2.4 was packaged with version 2.3.
For some reason drupal package manager gave error after uploading version 2.4 to drupal ftp and presented module version 2.3 as 2.4!!!
I uploaded version 2.5 that looks correct now and should address your issue.
When you have the time please test and post back.
Sorry for any inconveniences.
Hi nessunluogo,
Thanks for reporting. Are you by any chance using defunct PHP 5.x?
Regarding your proposed solution to use isset... creates a fatal error:
PHP Fatal error: Cannot use isset() on the result of an expression (you can use "null !== expression" instead) in /modules/spammaster/spammaster.module on line 564
So... I'm thinking of replacing isset with !empty
if (!empty($form_state->getValue('field_email')[0]['value']) && NULL !== $form_state->getValue('field_email')[0]['value']) {
I will push version 2.4.
Also thanks chetan 11. But there's a few more fixes we need to implement.
Hi Maxmendez,
Let me start by saying that your message is more of a support request and not a bug and that you could read the documentation and in case of more help you could always drop us a line at:
https://www.spammaster.org/contact/
https://www.spammaster.org/documentation/
Regarding False positives:
1. You are using the same license in 2 websites. We clearly state that you should use a single lic per website to avoid conflicts. Make sure each website uses an unique license. You can login to Spam Master website to check your available lics and also the online firewall per website.
2. At least one of your websites in using cloudflare WAF (firewall). As we also state in the documentation that when using cloudflare CDN WAF services you should activate in Configuration -> Spam Master Settings -> Protection Tools Tab -> Extra Tools Tab -> Cloudflare CDN and WAF (should be On... only on the site behind cloudflare)
3. Talking specifically about the site behind cloudflare... how do you know it's not cloudflare creating false positives? Have you configured the WAF rules and checked cloudflare activity?
Start by logging in to our website with your email (m***v@m*******z.n*t):
1. Check your available lics
2. Assign an unique individual lic to each website
3. Check the spam master firewall logs for each website
4. If you find false positives please report us the Ip's or emails via contact form. Also, use the contact form if you need further help.
Hi @pascal_meunier,
We still had a few issues in version 1.96 so, when you have time please test version 1.97 .
It's fine here @pascal_meunier.
Actually relates to the first issue. Please test version 1.96 when you have the time.
Thanks for reporting.
Hi @nessunluogo,
The issue is fixed in version 1.95 with your patch, the patch also worked in our dev machines with PHPMailer. Please update and test when you have the time.
Thanks
Hi @pascal_meunier,
The issue is fixed in version 1.95. Please update and test when you have the time.
Thanks
Hi roshni27,
Thanks for reporting. The correct branch should be stable and not dev, you may install with:
composer require 'drupal/spammaster:^1.93'
We always run:
phpcs -p -s --standard=Drupal,DrupalPractice --extensions=php,module,inc,install,test,profile,theme,css,info,txt,md,yml modules/spammaster/
with 0 warnings/errors result.
Thanks again.
Thanks for reporting and for the patch cacrody,
I see the issue spammaster.schema.yml, your patch needed a few changes to reflect the type of field:
spammaster.settings_white:
type: config_object
mapping:
white_key:
type: textfield
label: ''
We have launched version 1.88 that should fix the issue. Let us know if it works for you.