Quick Reply For Guest

Quick Reply For Guest 1.0.9

No permission to download
If I choose "unspecified" forum does that mean all forums?
If anybody wants to see this in action, I've installed it on a live site at Cool Sci-Fi. Just click on any of the threads as a guest (eg: random thread). At the bottom of the screen you'll see the quick reply editor as if you were logged in. Enter a reply and hit the 'Post Reply' button. As soon as you do a pop-up overlay will be shown to you where you can register an account.

If you install it on your site, after uploading the files to your server and importing the XML file you will first need to go into your Options to explicitly specify which forums will allow quick reply for guests. It is a per forum opt-in choice, not opt-out. You won't see the quick reply box until you specify the forums.

For users who are already registered then if they do a quick reply as a guest and enter their credentials on the overlay then the post will be submitted seamlessly.
 
Nobita.Kun updated Quick Reply For Guest with a new update entry:

Version 1.0.4 released!

Features:
  • Support Captcha for guest (Attack spam)
  • Support spam message check (Attack spam)
  • Added new option to handle messages which posted by users moderated.
  • Added message notice to guest.
Bugs:
  • Fixed bypass moderate replies (per forum settings)
  • Fixed bypass user moderation. Now. Messages only publishing when user is valid (confirmed or approved)

Read the rest of this update entry...
 
Callback Nobita\QuickReplyGuest\Listener::editor_setup is invalid (Invalid Method).

...when trying to update using Chris' Add-On Installer...

...I checked the zip manually and I don't see an .xml in your .zip at all...
 
Callback Nobita\QuickReplyGuest\Listener::editor_setup is invalid (Invalid Method).

...when trying to update using Chris' Add-On Installer...

...I checked the zip manually and I don't see an .xml in your .zip at all...

You can see at: upload/libary/Nobita/QuickReplyGuest/addon-nobita_QuickReplyForGuest.xml
 
You can see at: upload/libary/Nobita/QuickReplyGuest/addon-nobita_QuickReplyForGuest.xml
Okay... usually the .xml is in the root folder of the zip, then the upload folder separately in the zip.

But thanks for letting me know...
 
BTW, this add-on doesn't support TPU Detect and Block Spam Registrations add-on.

I tested this myself now...

TPU's Registration log:

TPUDetectSpamReg checking: testsaletest, test@***.net, 91.***.***.***
AS detected: ****
+3. Username matched *sale*
Hostname detected: ****
Country detected: **
Total score: +3
New Posts Moderated. Score exceeded (+3 >= 3)


Yet the post written as a guest did not go to moderation queue (after the registration was confirmed, email confirmation successful), but was directly automatically approved & visible.

Basically you can bypass the TPU addon's moderate posts feature. :(

The reject feature of TPU works fine with this add-on though (when TPU score exceeds the reject threshold, the sign up isn't accepted).
 
Hi @markku .
First: The TPU addon prevent register. Well. It is other way. My addon just prevent message spam.
Second:

Yet the post written as a guest did not go to moderation queue (after the registration was confirmed, email confirmation successful), but was directly automatically approved & visible.
Your question was answered. If someone register and confirmed successfully. It just like someone register without addon and posting reply. Why it should move to moderated?
 
Your question was answered. If someone register and confirmed successfully. It just like someone register without addon and posting reply. Why it should move to moderated?
TPU Detect add-on has two features:

Based on a variety of rules you can specify different score thresholds for either rejecting or putting a new user into moderation.

For example, I could have this set up:

Reject registration: Score of +6 or above
Put first 5 messages of the new user into moderation queue: Score between +3 and +5

Then I could have a rule for people signing up from Pakistan:
Visitor country:
+4|PK


Now a new member signing up from Pakistan would get a score of 4, meaning that after successful confirmation of their account (default email confirmation) their first 5 messages will automatically go into moderation queue waiting for a moderator's approval, as shown in example below:

Screen Shot 2015-02-26 at 11.53.19.webp



The above process is circumvented / does not work when using this Quick Reply for Guest add-on;
e.g., when a guest with a score of +4 writes a quick reply -> signs up -> confirms email -> their first 5 posts will not go into moderation queue (even when they should go according to TPU's rules).

Basically your add-on should respect TPU's rules in the above scenario, but for some reason it doesn't.


Did I explain this clearly?
 
Last edited:
I'm tagging @W1zzard because he might be able to shed some light on the above problem and how your add-on could be made compatible with his (the moderation queue feature for first x posts if the score threshold for that is met).
 
Last edited:
Fantastic addon, thanks much! Really appreciate the improvements in the latest update as well.

@markku Keep in mind these addons are going to be looking at different database tables specific to each addon. It's often a lot of work to build an integration like this, as you're not just hooking into core, you're trying to monkey patch around something another dev has already monkey-patched to make his addon work. Plus it has to be updated whenever the other dev changes something that breaks the integration.
 
I get this error when installing,

Code:
An exception occurred: Mysqli prepare error: MySQL server has gone away in /var/www/vhosts/theforum.com/httpdocs/library/Zend/Db/Statement/Mysqli.php on line 77

Zend_Db_Statement_Mysqli->_prepare() in Zend/Db/Statement.php at line 115
Zend_Db_Statement->__construct() in Zend/Db/Adapter/Mysqli.php at line 381
Zend_Db_Adapter_Mysqli->prepare() in Zend/Db/Adapter/Abstract.php at line 478
Zend_Db_Adapter_Abstract->query() in XenForo/Model.php at line 219
XenForo_Model->fetchAllKeyed() in XenForo/Model/AdminNavigation.php at line 31
XenForo_Model_AdminNavigation->getAdminNavigationEntries() in XenForo/Model/AdminNavigation.php at line 405
XenForo_Model_AdminNavigation->getAdminNavigationForDisplay() in XenForo/Dependencies/Admin.php at line 224
XenForo_Dependencies_Admin->_getNavigationContainerParams() in XenForo/Dependencies/Admin.php at line 202
XenForo_Dependencies_Admin->getEffectiveContainerParams() in XenForo/FrontController.php at line 616
XenForo_FrontController->renderView() in XenForo/FrontController.php at line 158
XenForo_FrontController->run() in /var/www/vhosts/theforum.com/httpdocs/admin.php at line 13
 
I get this error when installing,

Code:
An exception occurred: Mysqli prepare error: MySQL server has gone away in /var/www/vhosts/theforum.com/httpdocs/library/Zend/Db/Statement/Mysqli.php on line 77

Zend_Db_Statement_Mysqli->_prepare() in Zend/Db/Statement.php at line 115
Zend_Db_Statement->__construct() in Zend/Db/Adapter/Mysqli.php at line 381
Zend_Db_Adapter_Mysqli->prepare() in Zend/Db/Adapter/Abstract.php at line 478
Zend_Db_Adapter_Abstract->query() in XenForo/Model.php at line 219
XenForo_Model->fetchAllKeyed() in XenForo/Model/AdminNavigation.php at line 31
XenForo_Model_AdminNavigation->getAdminNavigationEntries() in XenForo/Model/AdminNavigation.php at line 405
XenForo_Model_AdminNavigation->getAdminNavigationForDisplay() in XenForo/Dependencies/Admin.php at line 224
XenForo_Dependencies_Admin->_getNavigationContainerParams() in XenForo/Dependencies/Admin.php at line 202
XenForo_Dependencies_Admin->getEffectiveContainerParams() in XenForo/FrontController.php at line 616
XenForo_FrontController->renderView() in XenForo/FrontController.php at line 158
XenForo_FrontController->run() in /var/www/vhosts/theforum.com/httpdocs/admin.php at line 13

Any other errors? Can you put all stackes of error here??
 
Any other errors? Can you put all stackes of error here??

Code:
Error Info
ErrorException: Fatal Error: Class 'Nobita\QuickReplyGuest\Guest' not found - library/Nobita/QuickReplyGuest/XenForo/ControllerPublic/Thread.php:14
Generated By: Unknown Account, 6 minutes ago
Stack Trace
#0 [internal function]: XenForo_Application::handleFatalError()
#1 {main}
Request State
array(3) {
  ["url"] => string(66) "http://www.theforum.com/threads/my-redemption-starts-now.13754/"
  ["_GET"] => array(0) {
  }
  ["_POST"] => array(0) {
  }
}
 
Code:
Error Info
ErrorException: Fatal Error: Class 'Nobita\QuickReplyGuest\Guest' not found - library/Nobita/QuickReplyGuest/XenForo/ControllerPublic/Thread.php:14
Generated By: Unknown Account, 6 minutes ago
Stack Trace
#0 [internal function]: XenForo_Application::handleFatalError()
#1 {main}
Request State
array(3) {
  ["url"] => string(66) "http://www.theforum.com/threads/my-redemption-starts-now.13754/"
  ["_GET"] => array(0) {
  }
  ["_POST"] => array(0) {
  }
}

Impossible. Could you check at your hosting/server the file Guest.php is existing?
Path: library/Nobita/QuickReplyGuest/Guest.php

If not. I recommend to redownload package then upload again :)
 
@Nobita.Kun - How about having the overlay display social login buttons as well to make the entire process easier? I'd also like to display a warning message that if they do not register and activate their account in the next 30 minutes; their message will be deleted from the system.

That would motivate people to register and activate their accounts quickly.
 
Hi @TheBigK . The template overlay is default. So if you have any social button for login, it should be appear.

For message warning. I will add when next release :)
 
Updating to 1.0.4 now but I see this in my error log this morning

Code:
Error Info
XenForo_Exception: Cannot insert a message in the middle of a discussion. - library/XenForo/DataWriter/DiscussionMessage.php:449
Generated By: stephaniekocala, Today at 4:02 AM
Stack Trace
#0 /home/chefsucc/public_html/library/XenForo/DataWriter/DiscussionMessage.php(354): XenForo_DataWriter_DiscussionMessage->_setPosition()
#1 /home/chefsucc/public_html/library/XenForo/DataWriter.php(1446): XenForo_DataWriter_DiscussionMessage->_preSave()
#2 /home/chefsucc/public_html/library/XenForo/DataWriter.php(1385): XenForo_DataWriter->preSave()
#3 /home/chefsucc/public_html/library/Nobita/QuickReplyGuest/Model/GuestQueue.php(101): XenForo_DataWriter->save()
#4 /home/chefsucc/public_html/library/Nobita/QuickReplyGuest/XenForo/ControllerPublic/Login.php(16): Nobita\QuickReplyGuest\Model\GuestQueue->push('k1m4v_zs1qm-i0M...', 53210, 'stephaniekocala')
#5 /home/chefsucc/public_html/library/XenForo/FrontController.php(347): Nobita\QuickReplyGuest\XenForo\ControllerPublic\Login->actionLogin()
#6 /home/chefsucc/public_html/library/XenForo/FrontController.php(134): XenForo_FrontController->dispatch(Object(XenForo_RouteMatch))
#7 /home/chefsucc/public_html/index.php(13): XenForo_FrontController->run()
#8 {main}
Request State
array(3) {
["url"] => string(38) "http://www.chefsuccess.com/login/login"
["_GET"] => array(0) {
}
["_POST"] => array(6) {
["login"] => string(25) "XXXX"
["register"] => string(1) "0"
["password"] => string(8) "********"
["cookie_check"] => string(1) "1"
["_xfToken"] => string(8) "********"
["redirect"] => string(62) "XXXX"
}
}
 
It should be noted that this addon is not compatible with XenForo 1.2. You'll receive this error message because the the IP helper didn't exist until 1.3 I don't think.

Fatal error: Class 'XenForo_Helper_Ip' not found in .../library/Nobita/QuickReplyGuest/Guest.php on line 16
 
Updating to 1.0.4 now but I see this in my error log this morning

Code:
Error Info
XenForo_Exception: Cannot insert a message in the middle of a discussion. - library/XenForo/DataWriter/DiscussionMessage.php:449
Generated By: stephaniekocala, Today at 4:02 AM
Stack Trace
#0 /home/chefsucc/public_html/library/XenForo/DataWriter/DiscussionMessage.php(354): XenForo_DataWriter_DiscussionMessage->_setPosition()
#1 /home/chefsucc/public_html/library/XenForo/DataWriter.php(1446): XenForo_DataWriter_DiscussionMessage->_preSave()
#2 /home/chefsucc/public_html/library/XenForo/DataWriter.php(1385): XenForo_DataWriter->preSave()
#3 /home/chefsucc/public_html/library/Nobita/QuickReplyGuest/Model/GuestQueue.php(101): XenForo_DataWriter->save()
#4 /home/chefsucc/public_html/library/Nobita/QuickReplyGuest/XenForo/ControllerPublic/Login.php(16): Nobita\QuickReplyGuest\Model\GuestQueue->push('k1m4v_zs1qm-i0M...', 53210, 'stephaniekocala')
#5 /home/chefsucc/public_html/library/XenForo/FrontController.php(347): Nobita\QuickReplyGuest\XenForo\ControllerPublic\Login->actionLogin()
#6 /home/chefsucc/public_html/library/XenForo/FrontController.php(134): XenForo_FrontController->dispatch(Object(XenForo_RouteMatch))
#7 /home/chefsucc/public_html/index.php(13): XenForo_FrontController->run()
#8 {main}
Request State
array(3) {
["url"] => string(38) "http://www.chefsuccess.com/login/login"
["_GET"] => array(0) {
}
["_POST"] => array(6) {
["login"] => string(25) "XXXX"
["register"] => string(1) "0"
["password"] => string(8) "********"
["cookie_check"] => string(1) "1"
["_xfToken"] => string(8) "********"
["redirect"] => string(62) "XXXX"
}
}

How many messages you have before logged??
 
Top Bottom