1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

Add-on TaigaChat posted threads in shoutbox

Discussion in 'Resource and Add-on Requests' started by MichaelMadman, May 29, 2012.

  1. MichaelMadman

    MichaelMadman Member

    Hi

    I was wondering if someone was able to develop TaigaChat to have the ability to post in the shoutbox like

    <username> just created the thread <nameofthread>

    Whenever someone creates a thread or

    <username just replied to the thread <nameofthread>

    and have <nameofthread> hyperlinked to the thread so users could easily click and view reply's.

    I had this when using my old shoutbox setup so it uses the DataWriter for the shoutbox at the end of every post and writes /me just posted the thread Thread name

    But I over-wrote it when upgrading the forum and now cant remember how I did it. I also noticed that Taiga Chat doesnt have /me options.

    If anyone could do this for me would be amazing :)
     
  2. Luke F

    Luke F Well-Known Member

    A 'pro' version of taigachat is in the pipeline with features like this planned :)
     
    gldtn, iTuN3r, Sylar and 7 others like this.
  3. Spiritwind

    Spiritwind Member

    Theres a pro version of Taigachat?!? I'll have to look now!
     
  4. wickedstangs

    wickedstangs Well-Known Member

    Awesome, really like that....
     
  5. Cal

    Cal Well-Known Member

    Hey DI any update on this?? :whistle:
     
    Sylar likes this.
  6. Liam23

    Liam23 Active Member

    Coming soon?
     
  7. Inflikted

    Inflikted New Member

    I am trying to do what digital doctor suggested in another thread -> http://xenforo.com/community/thread...thread-in-xfshout-shoutbox.24828/#post-395391. I found that \DataWriter\DiscussionMessage\Post.php in Digital Spy will probably work for my needs. However I am still new to xenforo and I am a bit unfamiliar with the formatting for sql inserts. Is there anyone who can pick out what I'm doing wrong with the insert. I would appreciate it
    I get this error when someone tries to make a new post/reply
    Undefined index: userid
    'XenForo_Application::handlePhpError()inDigitalPointSpy/DataWriter/DiscussionMessage/Post.phpat line41'
    Line 41 being the one starting with 'message'
    Code:
    $this->_db->insert('dark_taigachat', array(
    'user_id' => XenForo_Visitor::getUserId(),
    'username' => $this->_newData['xf_post']['username'],
    'date' => XenForo_Application::$time,
    'message' => '[url=http://seriouspants.net/members/' . $this->_newData['xf_post']['userid'] . ' ] ' .  $this->_newData['xf_post']['username'] . ' [/url] posted [url=http://seriouspants.net/posts/ ' . $this->_newData['xf_post']['post_id'] . '][/url]'
    ));
    
     
  8. Inflikted

    Inflikted New Member

    as an update I did get it succesfully running to some extent. However I am not able to call $this->_newData['xf_thread']['title'] to get the thread title for these new posts

    Code:
    //shoutbox post/thread
    if (isset($this->_newData['xf_post']['post_id']) && isset($this->_newData['xf_post']['thread_id']))
    {
    $this->_db->insert('dark_taigachat', array(
    'user_id' => XenForo_Visitor::getUserId(),
    'username' => 'PostBot',
    'date' => XenForo_Application::$time,
    'message' => '[url=http://seriouspants.net/members/' . $this->_newData['xf_post']['user_id'] . ' ] ' .  $this->_newData['xf_post']['username'] . ' [/url] posted [url=http://seriouspants.net/posts/' . $this->_newData['xf_post']['post_id'] . ']' . $this->_newData['xf_post']['post_id'] . '[/url]'
    ));
    }
    
     
    Liam23 likes this.
  9. Liam23

    Liam23 Active Member

    Keep working! :p
     
  10. Inflikted

    Inflikted New Member

    Sorry Dark for releasing this, if you wish I can remove this so you can put it in your premium version but since there hasn't been response to this post in a couple months I figured I would help a couple people out. Granted this probably can be done a much better way but I am still learning xenforo. It's only my second day. I know there is probably better way to call the threadtitle but I don't know how yet :(

    This requires you have Digital Point : Spy http://xenforo.com/community/threads/digital-point-spy.22530/ (when I understand xenforo a bit better I can make my own little addon for it to release)
    Once installed. Go here-> \library\DigitalPointSpy\DataWriter\DiscussionMessage\Post.php
    Find this line
    Code:
     
    'action' => ($this->_newData['xf_post']['position'] == 0 ? 'thread' : 'post') . '_create'
    ));
    }
     
    
    Add under it (Keep in mind you will want to modify the message line in the array to change out the url part, and the user_id/username to the appropriate username/userid you want announcing the posts. I'm still learning how to generate xenforo urls I haven't had the chance to check to see if these work
    $user_url = ( $this->_newData['xf_post']['user_id'] > 0 ? XenForo_Link::buildPublicLink('members', array('user_id' => $this->_newData['xf_post']['user_id'] , 'username' => $this->_newData['xf_post']['username'] )) : '');
    $thread_url = XenForo_Link::buildPublicLink('full:threads', $thread); (put this in the foreach $topics_query as $thread loop)

    PHP:
                //shoutbox post/thread
                
    if (isset($this->_newData['xf_post']['post_id']) && isset($this->_newData['xf_post']['thread_id']))
                { 
                if (
    $this->_newData['xf_post']['position'] == 0) {
                
    $posttype "has created";
                } else {
                
    $posttype "has replied to";
                }
                    
    $threadid $this->_newData['xf_post']['thread_id'];
                    
    $sql_forum "SELECT `title`, `thread_id` FROM `xf_thread` WHERE `thread_id` = '$threadid'";
                    
    $topics_query XenForo_Application::get('db')->fetchAll($sql_forum); 
                    foreach (
    $topics_query as $thread)
                        {
                            
    $threadTitle addslashes(XenForo_Template_Helper_Core::helperWordTrim($thread['title'], 100));
                        }     
                    
    $this->_db->insert('dark_taigachat', array(
                        
    'user_id' => '431',
                        
    'username' => 'PostBot',                 
                        
    'date' => XenForo_Application::$time,
                        
    'message' => '[url=http://seriouspants.net/members/' $this->_newData['xf_post']['user_id'] . ' ] ' .  $this->_newData['xf_post']['username'] . '[/url] '$posttype .' [url=http://seriouspants.net/posts/' $this->_newData['xf_post']['post_id'] . ']' $threadTitle '[/url]'
                    
    ));
                }
     
    sampick69 and Liam23 like this.

Share This Page