forum topic subscri...
 
Notifications
Clear all

Limited Support

Our team is currently on holiday, so support will be limited during this period. Response times may be slower than usual, and some inquiries may be delayed.
We appreciate your patience and understanding, and we’ll resume our usual support by the end of August.

 

[Solved] forum topic subscribed by user is set to ADMIN not to him ?!

6 Posts
2 Users
0 Reactions
694 Views
Posts: 5
Topic starter
(@mahi33)
Active Member
Joined: 3 years ago

Hi,

I have a strange behaviour or bug on a private forum.

On the same computer...
1° in Firefox I have page /participant/maxgarin/subscriptions open. This user has one forum-topic subscription "Envoi à tous" and wants to add the topic "Agriculture et élevage"
2° When submitting the "Agriculture et élevage" topic is not added to the user's maxgarin list, BUT TO ADMIN ?!
3° in Brave where admin is logged I have on /participant/{admin}/subscriptions page the forum topic added by user maxgarin (see attached JPG)

This is really odd. User subscriptions on page /participant/{user}/subscriptions are set to the
/participant/{admin}/subscriptions.

I checked the wpforo_subscribes SQL table and confirms the subscription transfer from user to admin.

Can you please help me trace and fix the problem ?

thank you

Topic Tags
5 Replies
Posts: 5
Topic starter
(@mahi33)
Active Member
Joined: 3 years ago

Additionnal information...

The subscription submission form "wpf_sbs_form" contains a hidden field "wpforo[userid]" with  value = 1 (this is ADMIN). It should be 7 for user "maxgarin" (see JPG test with another user). This explains why ADMIN is getting the user subscription.

Now why is the user ID getting lost when displaying page : /participant/{user}/subscriptions and falls back to 1 ?

The Wordpress login cookies are correct :
- domain : federation-francaise-de-geobiologie.org
- name : wordpress_logged_in_7e3863606bc70e6f2e98232e1eba9c04
- value : maxgarin%7C1671300294%7CQaO5vbcmAIgWltPeSgDYThJUY6iwg04itakB1GPHZTK%7C8d5d9b71952dbc99616393cf0474c6ee605ef6dd273475363f59a9f33985dea6

any idea ?

 

Posts: 5
Topic starter
(@mahi33)
Active Member
Joined: 3 years ago

OK, I found the problem and patched

wpforo/modules/subscriptions/classes/Template.php

Same behaviour on PHP 7.4 and PHP 8.1 with wpForo 2.1.1 and Wordpress 6.1.1

On line 32 in Template.php => $userid is assigned to 0

public function manager_form( $userid = 0 ) {

In my case however $userid is an ARRAY() with the following values being connected as "maxgarin" and the default value 0 is not taken.

userid[0] = Array
val[subid] = 93
val[itemid] = 8
val[type] = forum-topic
val[confirmkey] = 1d989ced9d29275b5185ea66f171ac7e
val[userid] = 7
val[active] = 1
val[user_name] =
val[user_email] =

On line 43 we have

$userid = intval( $userid );

But intval( array() ) returns 1 if not empty => which is the ADMIN userid in my case

I patched this line and changed it to

$userid = (is_array($userid)) ? 0 : intval( $userid );

And the userid is retrieved correctly and is 7 (in this example) and this solves the problem.

Does this makes sense to you ? Will you include the patch in the next wpForo release ?

thank you

 

3 Replies
Chris
(@chris)
Joined: 4 years ago

Famed Member
Posts: 3611

Hi @marc-hild,

We will take a look on this and late you know.

Thank you very much.

Chris
(@chris)
Joined: 4 years ago

Famed Member
Posts: 3611

Hi @mahi33,

We have found the problem and we are working on it, The issue would be fixed in the new version.

Thanks

(@mahi33)
Joined: 3 years ago

Active Member
Posts: 5

Hi @chris 

Thank you for your support !