Resource icon

[bd] Tag Me for XenForo 1.3 3.2.0

No permission to download
You can let admin tag unlimited number of users and limit other to maximum 10 tags / message. That way, only admin can tag @registered. User group alias sounds like a good idea.

Awesome, soon as alias' are in... im installing :D
 
Got this error when attempting to post three attachments in a private forum where no one has been tagged.


Code:
The following error occurred:
Undefined index:
 
    XenForo_Application::handlePhpError() in bdTagMe/Engine.php at line 153
    bdTagMe_Engine->searchTextForTagged() in bdTagMe/XenForo/DataWriter/DiscussionMessage/Post.php at line 18
    bdTagMe_XenForo_DataWriter_DiscussionMessage_Post->set() in XenForo/ControllerPublic/Thread.php at line 492
    XenForo_ControllerPublic_Thread->actionAddReply() in sonnbPreventDoublePost/ControllerPublic/Thread.php at line 35
    sonnbPreventDoublePost_ControllerPublic_Thread->actionAddReply() in XenForo/FrontController.php at line 310
    XenForo_FrontController->dispatch() in XenForo/FrontController.php at line 132
    XenForo_FrontController->run() in /home/user/public_html/index.php at line 13
 
Got this error when attempting to post three attachments in a private forum where no one has been tagged.


Code:
The following error occurred:
Undefined index:
 
    XenForo_Application::handlePhpError() in bdTagMe/Engine.php at line 153
    bdTagMe_Engine->searchTextForTagged() in bdTagMe/XenForo/DataWriter/DiscussionMessage/Post.php at line 18
    bdTagMe_XenForo_DataWriter_DiscussionMessage_Post->set() in XenForo/ControllerPublic/Thread.php at line 492
    XenForo_ControllerPublic_Thread->actionAddReply() in sonnbPreventDoublePost/ControllerPublic/Thread.php at line 35
    sonnbPreventDoublePost_ControllerPublic_Thread->actionAddReply() in XenForo/FrontController.php at line 310
    XenForo_FrontController->dispatch() in XenForo/FrontController.php at line 132
    XenForo_FrontController->run() in /home/user/public_html/index.php at line 13
Are you running the latest version?
 
It was updated a few days ago actually :D
You should add a note for each update even it's just minor so that people got an alert. I didn't get one for 1.6.4 but I got one for 1.6.3.
A lot of people didn't know about 1.6.4 either after installing 1.6.3 unless they read the whole thread.
 
I don't know if this has been suggested before but could it be possible to add some features like:

Today's Birthdays: @birthday
Registrated using Facebook: @facebook
Registrated using Twitter: @twitter (Social Addon by guiltar)

Wouldn't that nice?
 
You should add a note for each update even it's just minor so that people got an alert. I didn't get one for 1.6.4 but I got one for 1.6.3.
A lot of people didn't know about 1.6.4 either after installing 1.6.3 unless they read the whole thread.
Always forget adding the update note :( I will do that next time.

I don't know if this has been suggested before but could it be possible to add some features like:

Today's Birthdays: @birthday
Registrated using Facebook: @facebook
Registrated using Twitter: @twitter (Social Addon by guiltar)

Wouldn't that nice?
Sounds too much for this add-on :D
 
Custom work is always available FYI :p

Good to know :) I'll keep that in mind and send you a conversation maybe in the next couple of weeks. I wouldn't want your work to pile up and keep you from working on a -insert addon nam - certain addon :P
 
Good to know :) I'll keep that in mind and send you a conversation maybe in the next couple of weeks. I wouldn't want your work to pile up and keep you from working on a -insert addon nam - certain addon :p
Speak for yourself ;)
I wouldn't want a certain addon(s) from completion as well. hahahah
 
I don't know what addon you are working on with him but he is a very high in demand coder and doing lot of projects for various people.
I wish he can only work for me but somehow the words got out that he is really good. hahaha.
 
I don't know what addon you are working on with him but he is a very high in demand coder and doing lot of projects for various people.
I wish he can only work for me but somehow the words got out that he is really good. hahaha.

With all his excellent free stuff he is sharing with the community he deserves all credit there is. And for that reason I'm not suprised he is very busy. Very pleased with him and the work he has done for me.

Which reminds me to have a seperate thread dedicated for xfrocks to pay tribute.
 
Thanks xfRocks for the killer add-on. No wonder it is on the top downloaded and ranked, it is beautiful and works really well.

I welcome the "DEV.txt" file that you put inside. Thank you very much for that, it was really useful.
I am working on integrating this with my blogs add-on, and I'll integrate it with my groups one later on.

Some comments I have.

1) The documentation. You include the parameters for the first call, however, when coming to this line

Code:
    $engine->notifyTaggedUsers2($uniqueId, $contentType, $contentId, $contentUserId, $contentUserName, $alertAction);

You don't include some good defaults :) I know for most part is not possible, but an example would have been good, it had me hunting around. I ended up with

Code:
    $contentType = 'xfa_blog_entry';
    $contentId = $this->get('entry_id');
    $contentUserId = $this->get('user_id');
    $contentUserName = $this->getExtraData('username');
    $alertAction = 'tagged';
           
    $engine->notifyTaggedUsers2($uniqueId, $contentType, $contentId, $contentUserId, $contentUserName, $alertAction);

I think the alert action should be standardized, as in, if I don't provide an action, use "tagged".
Since already the content type is being passed, there is no problem with using the same tagged action for post, profile_post, and any other types

2) The alert handler. Word of caution for developers. It is obvious to the experienced ones, but might not be for someone starting. For this to work, besides the code in the datawriter, you also need to have:

a) An alert handler on your content type
b) The PHP class that processes that alert handler
c) A template that will be shown for the user when they have an alert, and potentially the d) phrase that goes along with that

All on all, the implementation was straighforward, and easy. I have two more pieces of advice for people adding this to their addons.

3) Developers, wrap it up into a try catch. That way, if the tag addon fails, it won't break your addon. Since you are introducing an external dependency, you don't want the external dependency breaking up your own product

4) Check for the add-on first. Since not all people will have the Tag Me add-on installed, it needs an explicit check, for example

protected function _postSaveAfterTransaction()
{
parent::_postSaveAfterTransaction();

// if the BD Tag Me engine is not installed, there is nothing to do here
if (!class_exists('bdTagMe_Engine'))
{
return;
}

That should do it. If the class does not exist, it will just not do any of the logic. Use that in the postSave too if needed.
 
Thanks xfRocks for the killer add-on. No wonder it is on the top downloaded and ranked, it is beautiful and works really well.

I welcome the "DEV.txt" file that you put inside. Thank you very much for that, it was really useful.
I am working on integrating this with my blogs add-on, and I'll integrate it with my groups one later on.

Some comments I have.

1 2 3 4

That should do it. If the class does not exist, it will just not do any of the logic. Use that in the postSave too if needed.

Awesome, I will update the dev guide according to your suggestions :D
 
Top Bottom