Help
Ask questions about how to do or fix things in Arrowchat
User avatar
bloggertlv
Customer
 
Posts: 18
Joined: 28 Jun 2012, 14:23

 

by bloggertlv 01 Feb 2013, 17:27

I installed the arrowchat but I only need a small detail that I would like to help, the error appears in the file integration.php

Here is my file

integration.php
Code: Select all
<?php

   /*
   || #################################################################### ||
   || #                             ArrowChat                            # ||
   || # ---------------------------------------------------------------- # ||
   || #    Copyright ©2010-2012 ArrowSuites LLC. All Rights Reserved.    # ||
   || # This file may not be redistributed in whole or significant part. # ||
   || # ---------------- ARROWCHAT IS NOT FREE SOFTWARE ---------------- # ||
   || #   http://www.arrowchat.com | http://www.arrowchat.com/license/   # ||
   || #################################################################### ||
   */

   /**
    * This function returns the user ID of the logged in user on your site.  Technical support will not
    * help you with this for stand-alone installations.  You must purchase the professional installation
    * if you are having trouble.
    *
    * Suggestion: Check out the other integration files in the functions/integrations directory for
    * many examples of how this can be done.  The easiest way is to get the user ID through a cookie.
    *
    * @return the user ID of the logged in user or NULL if not logged in
    */
   function get_user_id()
   {
      global $db;
      
      $userid = NULL;

      if (!empty($_COOKIE['pp_2b0310_sid']))
      {
         $result = $db->execute("
            SELECT session_user_id
            FROM u_sessions
            WHERE session_id = '" . $db->escape_string($_COOKIE['pp_2b0310_sid']) . "'
         ");

         if ($row = $db->fetch_array($result))
         {
            if (!empty($row['session_user_id']))
            {
               $userid = $row['session_user_id'];
            }
         }
      }

      return $userid;
   }

   /**
    * This function returns the SQL statement for the buddylist of the user.  You should retrieve
    * all ONLINE friends that the user is friends with.  Do not retrieve offline users.  You can use
    * global $online_timeout to get the online timeout.
    * ex: AND (arrowchat_status.session_time + 60 + " . $online_timeout . ") > " . time() . "
    *
    * @param userid the user ID of the person receiving the buddylist
    * @param the time of the buddylist request
    * @return the SQL statement to retrieve the user's friend list
    */
   function get_friend_list($userid, $time)
   {
      global $db;
      global $online_timeout;
      
      $sql = ("
         SELECT DISTINCT " . TABLE_PREFIX . DB_USERTABLE . "." . DB_USERTABLE_USERID . " userid, " . TABLE_PREFIX . DB_USERTABLE . "." . DB_USERTABLE_NAME . " username, arrowchat_status.session_time lastactivity, " . TABLE_PREFIX . DB_USERTABLE . "." . DB_USERTABLE_AVATAR . " avatar, " . TABLE_PREFIX . DB_USERTABLE . "." . DB_USERTABLE_NAME . " link, arrowchat_status.message, arrowchat_status.status
         FROM " . TABLE_PREFIX . DB_FRIENDSTABLE . "
         JOIN " . TABLE_PREFIX . DB_USERTABLE . "
            ON  " . TABLE_PREFIX . DB_FRIENDSTABLE . "." . DB_FRIENDSTABLE_FRIENDID . " = " . TABLE_PREFIX . DB_USERTABLE . "." . DB_USERTABLE_USERID . "
         LEFT JOIN arrowchat_status
            ON " . TABLE_PREFIX . DB_USERTABLE . "." . DB_USERTABLE_USERID . " = arrowchat_status.userid
         WHERE " . TABLE_PREFIX . DB_FRIENDSTABLE . "." . DB_FRIENDSTABLE_USERID . " = '" . $db->escape_string($userid) . "' 
            AND (arrowchat_status.session_time + 60 + " . $online_timeout . ") > " . time() . "
         ORDER BY " . TABLE_PREFIX . DB_USERTABLE . "." . DB_USERTABLE_NAME . " ASC
      ");
      
      return $sql;
   }

   /**
    * This function returns the SQL statement for all online users.  You should retrieve
    * all ONLINE users regardless of friend status.  Do not retrieve offline users.  You can use
    * global $online_timeout to get the online timeout.
    * ex: AND (arrowchat_status.session_time + 60 + " . $online_timeout . ") > " . time() . "
    *
    * @param userid the user ID of the person receiving the buddylist
    * @param the time of the buddylist request
    * @return the SQL statement to retrieve all online users
    */
   function get_online_list($userid, $time)
   {
      global $db;
      global $online_timeout;
      
      $sql = ("
         SELECT DISTINCT " . TABLE_PREFIX . DB_USERTABLE . "." . DB_USERTABLE_USERID . " userid, " . TABLE_PREFIX . DB_USERTABLE . "." . DB_USERTABLE_NAME . " username, arrowchat_status.session_time lastactivity, " . TABLE_PREFIX . DB_USERTABLE . "." . DB_USERTABLE_AVATAR . " avatar, " . TABLE_PREFIX . DB_USERTABLE . "." . DB_USERTABLE_NAME . " link, arrowchat_status.message, arrowchat_status.status
         FROM " . TABLE_PREFIX . DB_USERTABLE . "
         JOIN arrowchat_status
            ON " . TABLE_PREFIX . DB_USERTABLE . "." . DB_USERTABLE_USERID . " = arrowchat_status.userid
         WHERE ('" . time() . "' - arrowchat_status.session_time - 60 < '" . $online_timeout . "')
            AND " . TABLE_PREFIX . DB_USERTABLE . "." . DB_USERTABLE_USERID . " != '" . $db->escape_string($userid) . "'
         ORDER BY " . TABLE_PREFIX . DB_USERTABLE . "." . DB_USERTABLE_NAME . " ASC
      ");
      
      return $sql;
   }

   /**
    * This function returns the SQL statement to get the user details of a specific user.  You should
    * get the user's ID, username, last activity time in unix, link to their profile, avatar, and status.
    *
    * @param userid the user ID to get the details of
    * @return the SQL statement to retrieve the user's defaults
    */
   function get_user_details($userid)
   {
      global $db;
      
      $sql = ("
         SELECT " . TABLE_PREFIX . DB_USERTABLE . "." . DB_USERTABLE_USERID . " userid, " . TABLE_PREFIX . DB_USERTABLE . "." . DB_USERTABLE_NAME . " username, arrowchat_status.session_time lastactivity,  " . TABLE_PREFIX . DB_USERTABLE . "." . DB_USERTABLE_NAME . " link,  " . TABLE_PREFIX . DB_USERTABLE . "." . DB_USERTABLE_AVATAR . " avatar, arrowchat_status.message, arrowchat_status.status
         FROM " . TABLE_PREFIX . DB_USERTABLE . "
         LEFT JOIN arrowchat_status
            ON " . TABLE_PREFIX . DB_USERTABLE . "." . DB_USERTABLE_USERID . " = arrowchat_status.userid
         WHERE " . TABLE_PREFIX . DB_USERTABLE . "." . DB_USERTABLE_USERID . " = '" . $db->escape_string($userid) . "'
      ");
      
      return $sql;
   }

   /**
    * This function returns the profile link of the specified user ID.
    *
    * @param userid the user ID to get the profile link of
    * @return the link of the user ID's profile
    */
   function get_link($link, $user_id)
   {
      global $base_url;
      
      return $base_url . '../perfil/' . $link;
   }

   /**
    * This function returns the URL of the avatar of the specified user ID.
    *
    * @param userid the user ID of the user
    * @param image if the image includes more than just a user ID, this param is passed
    * in from the avatar row in the buddylist and get user details functions.
    * @return the link of the user ID's profile
    */
   function get_avatar($image, $user_id)
   {
      global $base_url;
      
      if (is_file(dirname(dirname(dirname(__FILE__))) . '/files/avatar/' . $user_id . '_120.jpg'))
      {
         return $base_url . '../files/avatar/' . $user_id . '_120.jpg';
      }
      else
      {
         return $base_url . AC_FOLDER_ADMIN . "/images/img-no-avatar.gif";
      }
   }

   /**
    * This function returns the name of the logged in user.  You should not need to
    * change this function.
    *
    * @param userid the user ID of the user
    * @return the name of the user
    */
   function get_username($userid)
   {
      global $db;
      global $language;
      global $show_full_username;
      
      $users_name = $language[83];

      $result = $db->execute("
         SELECT " . DB_USERTABLE_NAME . " name
         FROM " . TABLE_PREFIX . DB_USERTABLE . "
         WHERE " . DB_USERTABLE_USERID . " = '" . $db->escape_string($userid) . "'
      "); 

      if ($result AND $db->count_select() > 0) 
      {
         $row = $db->fetch_array($result);
         $users_name = $row['name'];
      }

      $pieces = explode(" ", $users_name);
      
      if ($show_full_username == 1)
      {
         return $users_name;
      }
      else
      {
         return $pieces[0];
      }
   }

?>


I reviewed the error in my web http://www.videmax.com/arrowchat/public/debug/ debug and I get the following error in the Buddy list, that's the part I do not understand that should change.

Also I leave the tables in my database to see how this set, I have no problem there. This data is in my config.php

config.php
Code: Select all
<?php 

   /*
   || #################################################################### ||
   || #                             ArrowChat                            # ||
   || # ---------------------------------------------------------------- # ||
   || #    Copyright ©2010-2012 ArrowSuites LLC. All Rights Reserved.    # ||
   || # This file may not be redistributed in whole or significant part. # ||
   || # ---------------- ARROWCHAT IS NOT FREE SOFTWARE ---------------- # ||
   || #   http://www.arrowchat.com | http://www.arrowchat.com/license/   # ||
   || #################################################################### ||
   */

   // Require any necessary external files for retrieving the user's session

      
   /**
    * The database information
    *
    * Your existing users and information should already be in this database.  Do NOT create
    * a new database for ArrowChat.
   */
   define('DB_SERVER','XXXXXXXXXXXXXXX');
   define('DB_USERNAME','XXXXXXXX');
   define('DB_PASSWORD','XXXXXXXXXXXX');
   define('DB_NAME','XXXXXXXXXX');   
      
   /**
    * The table prefix can be left blank. A quick example of what you should input here:
    *
    * Example - Pretend the following list are tables:
    * phpbb_friends
    * phpbb_threads
    * phpbb_users
    *
    * In the example above, the prefix would be phpbb_ because everything starts with it.
    *
    * Example - Pretend the following list are tables:
    * friends
    * threads
    * users
    *
    * In the example above, the prefix would be blank.
   */
   define('TABLE_PREFIX','');
   
   /**
    * These variables will help automatically connect your existing website with ArrowChat.  Please
    * review the descriptions below to better understand them. DO NOT INCLUDE THE PREFIX WITH THESE
    * VALUES!
    *
    * DB_USERTABLE               = The name of the user's table
    * DB_USERTABLE_USERID       = The field for the user ID in the user's table
    * DB_USERTABLE_NAME         = The field for the username in the user's table
    * DB_USERTABLE_AVATAR       = The field for the avatar (input the user ID field if none exists)
    *
    * DB_FRIENDSTABLE            = (Optional) The name of the friend's table
    * DB_FRIENDSTABLE_USERID   = (Optional) The field for the user ID in the friend's table
    * DB_FRIENDSTABLE_FRIENDID   = (Optional) The field for the relationship/friend ID in the firned's table
    * DB_FRIENDSTABLE_FRIENDS   = (Optional) The field to check if the users are friends
    *
    * All the friends stuff is optional.  If your site does not have a friend's system, leave the
    * values blank and change the no friend system value.
    */
   define('DB_USERTABLE','u_miembros');
   define('DB_USERTABLE_NAME','user_name');
   define('DB_USERTABLE_USERID','user_id');
   define('DB_USERTABLE_AVATAR','user_fotos');
   
   define('DB_FRIENDSTABLE','u_follows');
   define('DB_FRIENDSTABLE_USERID', 'f_user');
   define('DB_FRIENDSTABLE_FRIENDID', 'f_id');
   define('DB_FRIENDSTABLE_FRIENDS', 'Not Required');
   
   /**
    * Friend System
    *
    * If your website does not have a friend system (ex: you want to display all online users) then
    * change the value below from 0 to 1.
   */
   define('NO_FREIND_SYSTEM', '0');
   
   /**
    * MSSQL Database
    *
    * If your database is MSSQL then change the value below from 0 to 1.
   */
   define('MSSQL_DATABASE', '0');
      
   // DO NOT EDIT BELOW THIS POINT
   // Initiate a connection to the database
   if (MSSQL_DATABASE == 1)
      $db = new QuickMSDB(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_NAME, false, false);
   else
      $db = new QuickDB(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_NAME, false, false);

?>


Hopefully someone can help

My details are:

web: http://www.videmax.com
Arrowchat Version: 1.6
User avatar
Staff Bot
ArrowChat Team
 
Posts: 8996
Joined: 07 Nov 2012, 13:41

 

by Staff Bot 16 Dec 2014, 00:26

[b]This thread has been locked because the last post is greater than six months old. There is a good chance that the information in this thread is outdated. Please open a new topic if you wish to discuss this further.[/b]