FreiChat related discussions
Kunena avatar in FrieChatX

I use FrieChatX latest version in Joomla with Kunena Forum, and my question is : Is it possible to use kunena forum avatar instead of the default avatar ? And which file should I modify ?
Thanks,
Buc

I use FrieChatX latest version in Joomla with Kunena Forum, and my question is : Is it possible to use kunena forum avatar instead of the default avatar ? And which file should I modify ? Thanks, Buc

It is possible to use Kunena avatar , I dont know much about kunena avatars
and where they store their avatar images

You have to edit the file Joomla.php
in ~freichat/server/drivers/Joomla.php

You will find there two functions getUsers() and getGuests , now it depends what you have
chosen. If you have guest in $show_name in ~freichat/arg.php , then
you will have to edit the Query in getGuests function else the other function

Frame your query in such a way that you get kunena avatar image name/url from
database

After that you will get the resultant image url in function avatar_url($avatar)
Edit it such that it returns full path to the image

Now its done , if you face any problems you can post it here

Greets

It is possible to use Kunena avatar , I dont know much about kunena avatars and where they store their avatar images You have to edit the file Joomla.php in ~freichat/server/drivers/Joomla.php You will find there two functions getUsers() and getGuests , now it depends what you have chosen. If you have guest in $show_name in ~freichat/arg.php , then you will have to edit the Query in getGuests function else the other function Frame your query in such a way that you get kunena avatar image name/url from database After that you will get the resultant image url in function avatar_url($avatar) Edit it such that it returns full path to the image Now its done , if you face any problems you can post it here Greets
Necessity is the mother of all inventions!

that is excellent, the next version(4.6) wont be having kunena support though, since the features are already implemented and is undergoing testing

we will add support for kunena from version 5.0 (The structure of freichat will have a major change in this version)

thanks a lot Buc!

that is excellent, the next version(4.6) wont be having kunena support though, since the features are already implemented and is undergoing testing we will add support for kunena from version 5.0 (The structure of freichat will have a major change in this version) thanks a lot Buc!
Necessity is the mother of all inventions!

It is finally working...
I send you my solution, maybe it would help for future versions.

In ~freichat/installation/installation.php

Change lines arround 74:

`guest` tinyint(3) NOT NULL,
PRIMARY KEY (`id`),


by:
`guest` tinyint(3) NOT NULL,
`avatar` varchar(255) NOT NULL,
PRIMARY KEY (`id`),


In ~freichat/server/drivers/Joomla.php

Change lines arround 25:
$query="SELECT DISTINCT u.".$this->displayname.",j.userid,j.guest
FROM ".DBprefix."session AS j
LEFT JOIN ".DBprefix."users AS u ON j.userid=u.id
WHERE j.session_id='$session_id'
AND j.client_id=0 LIMIT 1";


by:
$query="SELECT DISTINCT u.".$this->displayname.",j.userid,j.guest, ".DBprefix."kunena_users.avatar
FROM ".DBprefix."session AS j
LEFT JOIN ".DBprefix."users AS u ON j.userid=u.id
LEFT JOIN ".DBprefix."kunena_users ON ".DBprefix."kunena_users.userid=u.id
WHERE j.session_id='$session_id'
AND j.client_id=0 LIMIT 1";


Change lines arround 45:
if($result['guest']==0) //To check if the result from query is a guest or not
{
$_SESSION[$this->uid.'usr_name']=$result[$this->displayname];
$_SESSION[$this->uid.'usr_ses_id']=$result['userid'];
}


by:
if($result['guest']==0) //To check if the result from query is a guest or not
{
$_SESSION[$this->uid.'usr_name']=$result[$this->displayname];
$_SESSION[$this->uid.'usr_ses_id']=$result['userid'];
$_SESSION[$this->uid.'avatar']=$result['avatar'];
}



Change lines arround 61:
INSERT INTO frei_session (username,session_id,time,permanent_id,status,guest)
VALUES ('".$_SESSION[$this->uid.'usr_name']."','".$_SESSION[$this->uid.'usr_ses_id']."','$this->time_string','".$_SESSION[$this->uid.'gst_ses_id']."',1,'".$_SESSION[$this->uid.'is_guest']."')";


by:
INSERT INTO frei_session (username,session_id,time,permanent_id,status,guest,avatar)
VALUES ('".$_SESSION[$this->uid.'usr_name']."','".$_SESSION[$this->uid.'usr_ses_id']."','$this->time_string','".$_SESSION[$this->uid.'gst_ses_id']."',1,'".$_SESSION[$this->uid.'is_guest']."','".$_SESSION[$this->uid.'avatar']."')";


Change lines arround 78:
UPDATE frei_session
SET username='".$_SESSION[$this->uid.'usr_name']."',
session_id='".$_SESSION[$this->uid.'usr_ses_id']."',
time='$this->time_string',
guest='".$_SESSION[$this->uid.'is_guest']."'
WHERE permanent_id='".$_SESSION[$this->uid.'gst_ses_id']."'";


by:
UPDATE frei_session
SET username='".$_SESSION[$this->uid.'usr_name']."',
session_id='".$_SESSION[$this->uid.'usr_ses_id']."',
time='$this->time_string',
guest='".$_SESSION[$this->uid.'is_guest']."'
avatar='".$_SESSION[$this->uid.'avatar']."'
WHERE permanent_id='".$_SESSION[$this->uid.'gst_ses_id']."'";


Change lines arround 110:
$murl=str_replace("server/freichat.php", "", $this->url);
$avatar_url = $murl.'client/jquery/user.jpeg';
return $avatar_url;


by:
$murl=str_replace("freichat/server/freichat.php", "", $this->url);
if ($avatar)
$avatar_url = $murl.'/media/kunena/avatars/'.$avatar;
else
$avatar_url= $murl."/freichat/client/jquery/user.jpeg";
return $avatar_url;



Change lines arround 137:
SELECT DISTINCT username,session_id,status,guest
FROM frei_session
WHERE time>'$this->online_time2'
AND session_id!='".$_SESSION[$this->uid.'usr_ses_id']."'
AND guest=0
AND status!=2
AND status!=0";


by:
SELECT DISTINCT username,session_id,status,guest,avatar
FROM frei_session
WHERE time>'$this->online_time2'
AND session_id!='".$_SESSION[$this->uid.'usr_ses_id']."'
AND guest=0
AND status!=2
AND status!=0";


That's all folks...

Yours,
Buc

It is finally working... I send you my solution, maybe it would help for future versions. <strong>In ~freichat/installation/installation.php</strong> <em>Change lines arround 74:</em> <code>`guest` tinyint(3) NOT NULL, PRIMARY KEY (`id`),</code> <em>by:</em> <code>`guest` tinyint(3) NOT NULL, `avatar` varchar(255) NOT NULL, PRIMARY KEY (`id`),</code> <strong>In ~freichat/server/drivers/Joomla.php</strong> <em>Change lines arround 25:</em> <code>$query="SELECT DISTINCT u.".$this->displayname.",j.userid,j.guest FROM ".DBprefix."session AS j LEFT JOIN ".DBprefix."users AS u ON j.userid=u.id WHERE j.session_id='$session_id' AND j.client_id=0 LIMIT 1";</code> <em>by:</em> <code>$query="SELECT DISTINCT u.".$this->displayname.",j.userid,j.guest, ".DBprefix."kunena_users.avatar FROM ".DBprefix."session AS j LEFT JOIN ".DBprefix."users AS u ON j.userid=u.id LEFT JOIN ".DBprefix."kunena_users ON ".DBprefix."kunena_users.userid=u.id WHERE j.session_id='$session_id' AND j.client_id=0 LIMIT 1";</code> <em>Change lines arround 45:</em> <code>if($result['guest']==0) //To check if the result from query is a guest or not { $_SESSION[$this->uid.'usr_name']=$result[$this->displayname]; $_SESSION[$this->uid.'usr_ses_id']=$result['userid']; }</code> <em>by:</em> <code>if($result['guest']==0) //To check if the result from query is a guest or not { $_SESSION[$this->uid.'usr_name']=$result[$this->displayname]; $_SESSION[$this->uid.'usr_ses_id']=$result['userid']; $_SESSION[$this->uid.'avatar']=$result['avatar']; }</code> <em>Change lines arround 61:</em> <code>INSERT INTO frei_session (username,session_id,time,permanent_id,status,guest) VALUES ('".$_SESSION[$this->uid.'usr_name']."','".$_SESSION[$this->uid.'usr_ses_id']."','$this->time_string','".$_SESSION[$this->uid.'gst_ses_id']."',1,'".$_SESSION[$this->uid.'is_guest']."')";</code> <em>by:</em> <code>INSERT INTO frei_session (username,session_id,time,permanent_id,status,guest,avatar) VALUES ('".$_SESSION[$this->uid.'usr_name']."','".$_SESSION[$this->uid.'usr_ses_id']."','$this->time_string','".$_SESSION[$this->uid.'gst_ses_id']."',1,'".$_SESSION[$this->uid.'is_guest']."','".$_SESSION[$this->uid.'avatar']."')";</code> <em>Change lines arround 78:</em> <code>UPDATE frei_session SET username='".$_SESSION[$this->uid.'usr_name']."', session_id='".$_SESSION[$this->uid.'usr_ses_id']."', time='$this->time_string', guest='".$_SESSION[$this->uid.'is_guest']."' WHERE permanent_id='".$_SESSION[$this->uid.'gst_ses_id']."'";</code> <em>by:</em> <code>UPDATE frei_session SET username='".$_SESSION[$this->uid.'usr_name']."', session_id='".$_SESSION[$this->uid.'usr_ses_id']."', time='$this->time_string', guest='".$_SESSION[$this->uid.'is_guest']."' avatar='".$_SESSION[$this->uid.'avatar']."' WHERE permanent_id='".$_SESSION[$this->uid.'gst_ses_id']."'";</code> <em>Change lines arround 110:</em> <code>$murl=str_replace("server/freichat.php", "", $this->url); $avatar_url = $murl.'client/jquery/user.jpeg'; return $avatar_url;</code> <em>by:</em> <code>$murl=str_replace("freichat/server/freichat.php", "", $this->url); if ($avatar) $avatar_url = $murl.'/media/kunena/avatars/'.$avatar; else $avatar_url= $murl."/freichat/client/jquery/user.jpeg"; return $avatar_url;</code> <em>Change lines arround 137:</em> <code>SELECT DISTINCT username,session_id,status,guest FROM frei_session WHERE time>'$this->online_time2' AND session_id!='".$_SESSION[$this->uid.'usr_ses_id']."' AND guest=0 AND status!=2 AND status!=0";</code> <em>by:</em> <code>SELECT DISTINCT username,session_id,status,guest,avatar FROM frei_session WHERE time>'$this->online_time2' AND session_id!='".$_SESSION[$this->uid.'usr_ses_id']."' AND guest=0 AND status!=2 AND status!=0";</code> That's all folks... Yours, Buc
82
3
0
live preview
enter atleast 10 characters
WARNING: You mentioned %MENTIONS%, but they cannot see this message and will not be notified
Saving...
Saved
With selected deselect posts show selected posts
All posts under this topic will be deleted ?
Pending draft ... Click to resume editing
Discard draft