Fix bug when editing own posts in anonymous mode #233
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
🔀 Purpose of this PR:
📝 Description:
As described in #228, in an "only questioners"-anonymous mode, when a user wanted to edit a post, an error ocurred an the editing was not possible.
What was the problem?
When checking if a post is anonymous, the
post_controlclass sends the$info->discussionwith an instance of thediscussionclass to theis_post_anonymousfunction. The function although expects a simple stdClass-object and tries to read a private-accessible attribute of the class.What is the solution?
The
discussionclass is part of the new posts and discussion structure, that is not implemented in all parts of the plugin. Because of that, some functions work with the old system and the new one. A simple solution so far is the functionget_db_objectfrom the discussion class that returns a simple stdClass with the database-attributes of the object, that every function can work with. A To-Do was added for further development.📋 Checklist
Please confirm the following (check all that apply):
phpunitand/orbehattests that cover my changes or additions.var_dump()orvar_exportor any other debugging statements (or commented out code) thatshould not appear on the productive branch.
db/upgrade.phpandupdated the
version.php..minfiles with thegrunt amdcommand.version.phpand theCHANGES.md.I ran all tests thoroughly checking for errors. I checked if bootstrap had any changes/deprecations that require
changes in the plugins UI.
🔍 Related Issues