Please upgrade here. These earlier versions are no longer being updated and have security issues.
HackerOne users: Testing against this community violates our program's Terms of Service and will result in your bounty being denied.
"New Messages" only appearing for Admins
PaulButler
New
We are running Vanilla 2.2 and we appear to have lost the ability to allow "normal" members to use the conversations piece. Also when posting a discussion "Attach a file" only appears for Admins as well.
I know this must be permissions based but I have looked everywhere and can't seen any obvious issues.
If I try to access the "messages/add" url directly as a member I get a 404 Page Not Found straight away.
Any clues as to where I need to be looking please to solve this?
Thanks
0
Comments
Check the htacsses file , delete the .ini files from the cache. If that fails, Make a test account for someone to see the issue and send via pm the link and login info.
❌ ✊ ♥. ¸. ••. ¸♥¸. ••. ¸♥ ✊ ❌
My .htaccess file looks like this:
Modified
If you modify this file then change the above line to: # Modified
RewriteEngine On
# Certain hosts may require the following line.
# If vanilla is in a subfolder then you need to specify it after the /.
# (ex. You put Vanilla in /forum so change the next line to: RewriteBase /forum)
#RewriteBase /forum
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php\?p=$1 [QSA,L]
I have also deleted all the .ini files in the cache but still no difference. It appears as if when the page is rendered that for my "standard" user this is not appearing in the html:
New Message
Happy to create a test account and let someone have a look for me but what permissions can I look at to see if there is something strange going on?
Also when making a post "Attach a file" no longer appears either
Also I set "Debug" in the Plugins to be active to display what is being looked at however for my standard user that produced no output either
Change this
#RewriteBase /forum
to this or the rewrite does not work and make sure ReWriteUrls is set to TRUE in your config.php
RewriteBase /forum
❌ ✊ ♥. ¸. ••. ¸♥¸. ••. ¸♥ ✊ ❌
Thanks for your help on this @vrijvlinder
So I made those changes. The forum page displayed just fine but when I clicked on inbox or any discussion thread I got this:
Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator, webmaster@ and inform them of the time the error occurred, and anything you might have done that may have caused the error.
More information about this error may be available in the server error log.
Additionally, a 500 Internal Server Error error was encountered while trying to use an ErrorDocument to handle the request.
Apache/2.2.29 (Unix) mod_ssl/2.2.29 OpenSSL/1.0.1e-fips DAV/2 mod_bwlimited/1.4 Server at Port 80
So I am digging into this and see that this call is made in various PHP modules that seems to determine whether a conversation can be started however what I'm struggling to find at the moment is what is actually being checked.
So what does checkPermission('Conversations.Conversations.Add' actually check to determine whether a user can start a conversation thread?
So getting closer to this now! In "/forum/applications/conversations/views/messages/popin.php" I amended the line "if (checkPermission('Conversations.Conversations.Add'))
echo anchor(t('New Message'), 'messages/add');" to remove the if statement and as if by magic when I look at my test user the "New Message" hyperlink is there. Clicking on it gives me a 404 error but at least I seem to have isolated the potential source of my problem.
How do I amend this to give all users access back to messages?
@PaulButler
You really, really shouldn't edit core files.
There is almost never a need to do that; there is almost always a better method.
Can we assume that in Dashboard - Roles and Permissions, the following is checked for relevant members?
@whu606 ; I know but when I'm trying to find out the cause of a problem I'll dig anywhere and then fill back in what I dug up
And when I said "amend" I meant that I wanted to find out where in the configuration I could fix that which in turn raises another question; I would have expected to see that category listed but when I go into Roles & Permissions it doesn't appear anywhere so what is missing here.
If I select "Add Role" to try and create a new one nowhere does "Conversations" appear in that list
@PaulButler
Could you check in Dashboard - Applications and ensure that Conversations is enabled?
It is indeed - Conversations V2.2. I have tried disabling and re-enabling it but to no avail.
I should have said that I also don't see any of the Garden permissions either and when I go into the Users list no users are displayed unless I enter something in the search bar
@PualButler
In that case, I would think that your permissions table is in some way corrupt.
You can try running
yourforum//utility/structure/all
When this has happened to me, I've set up a new Vanilla instance, made sure the permissions are OK, exported the Permissions table, then dropped the Permissions table from my live DB and imported the working one.
Thanks @whu606; I'd already thought that my best bet would be to set up a new instance.
I'll try the structure command but feel I'm into a build / repair that way
@whu606
I installed a clean version of Vanilla which I was very impressed with the ease of so doing.
I took a copy of the permissions table and then exported / imported my forum that was not behaving itself. Didn't work in the same way in the copy but as soon as I replaced the permissions table everything that should behave itself did.
Thanks for the steer; I know an awful lot more about Vanilla now which is all to the good