Forum pragmaMx France 11 Février 2012 à 13:19:35 *
Bienvenue, Invité. Veuillez vous connecter ou vous inscrire.


Connexion avec identifiant et mot de passe
 
Accueil Aide Rechercher
Pages: [1]   Bas de page
Imprimer
Auteur Fil de discussion: Integration de x7chat à SMF  (Lu 17276 fois)
algebre
Team
Membre Senior Mx
******
Hors ligne Hors ligne

Messages: 342



« le: 10 Mars 2007 à 00:58:09 »

Intégration de X7Chat

Bonjour a tous,

C’est mon premier sujet dans le forum de pragmamx.fr
Après plusieurs tentatives j’ai réussi a intégré X7Chat dans le forum SMF qui et lui aussi intégrer à  pragmaMX, je veut dire par intégré  d’utilisé la même BD que SMF, par la suite les utilisateurs enregistrés dans pragmaMX n’aurons plus obligés a s’enregistrer a nouveau dans X7Chat, et lorsqu’ils cliquent sur le lien présent dans le forum (ou un module indépendant dans pragmaMX), ils seront automatiquement reconnus sans passer par la page (login), a condition qu’on active les cookies dans le fichiers (settings.php)
Voici la procédure :
1 téléchargement de la dernière version de X7chat a : http://www.x7chat.com/
(http://x7chat.com/releases/v2/x7chat2_0_5.zip) v2.05

2 copier le contenue du repertoir x7chat » /modules/Forum/smf/chat « vous pouvez le nommé comme vous voulez ex :chat 
2 créé un fichier .php et donnez lui le nom de pragmamx.php par exemple
copier dedans ce code:
Code:
<?PHP
// PragmaMX With SMF 1.1.1

// This file holds data on authentication
      $auth_ucookie = "X7C2U";
$auth_pcookie = "X7C2P";
$auth_register_link = "../../../../modules.php?name=Your_Account&op=new_user";
$auth_disable_guest = false;

// Preserve X7 Chat $prefix variable
$temp_prefix = $prefix;
include("./pragmamx.php"); // get configuration from SMF setting file.
      //include("../../../../modules/Userinfo/view.php");
$pragmamx_prefix = $prefix."_";     
$prefix = $temp_prefix;

// Make a database connection to the PragmaMX database
$pragmamxdb = new x7chat_db($dbhost,$dbuname,$dbpass,$dbname);

if(isset($HTTP_COOKIE_VARS['user']) && @$HTTP_COOKIE_VARS['user'] != ""){
$cookie = $HTTP_COOKIE_VARS['user'];
$cookie = base64_decode($cookie);
$cookie = explode(":", $cookie);
$_COOKIE['X7C2U'] = @$cookie[1];
$_COOKIE['X7C2P'] = @$cookie[2];
}

function auth_encrypt($data){
return md5($data);
}

function auth_getpass($auth_ucookie){
GLOBAL $pragmamxdb,$pragmamx_prefix,$txt,$db,$g_default_settings,$prefix,$x7c;
$query = $pragmamxdb->DoQuery("SELECT pass FROM {$pragmamx_prefix}users WHERE uname='$_COOKIE[$auth_ucookie]'");
$password = $pragmamxdb->Do_Fetch_Row($query);
// Check if they have an X7 Chat account
if($password[0] != ""){
$query = $db->DoQuery("SELECT * FROM {$prefix}users WHERE username='$_COOKIE[$auth_ucookie]'");
$row = $db->Do_Fetch_Row($query);
if($row[0] == ""){
// Create an X7 Chat account for them.
$time = time();
$ip = $_SERVER['REMOTE_ADDR'];
$db->DoQuery("INSERT INTO {$prefix}users (id,username,password,status,user_group,time,settings,hideemail,ip) VALUES('0','$_COOKIE[$auth_ucookie]','$password[0]','$txt[150]','{$x7c->settings['usergroup_default']}','$time','{$g_default_settings}','0','$ip')");
}
}
return $password[0];
}

function change_pass($user,$newpass){
GLOBAL $pragmamxdb,$pragmamx_prefix;
$newpass = auth_encrypt($newpass);
$query = $pragmamxdb->DoQuery("UPDATE {$pragmamx_prefix}members SET passwd='$newpass' WHERE membername='$user'");
}
?>
Mettez ce fichier dans /modules/Forum/smf/chat/lib/auth
Créé un autre fichier , nommé le pragmamx.php, mettez le dans /modules/Forum/smf/chat
Voici son contenue :
Code:
<?php

$dbhost 
"";  //nom du serveur (localhost)
$dbuname "";//tapez nom d'utilisateur de la BD
$dbpass ""// tappez le mot de psse
$dbname ""// le nom de la BD de pragmamx
$prefix ""// le préfix de la table
$user_prefix ""//......
$dbtype "MySQL";
$gfx_chk 0;
$subscription_url "";
$admin_file "admin";
$nuke_editor 1;
$display_errors false;
//$cookiename = "mx";

?>


il ne reste plus qu' lancer l'installation de x7chat,
dans la première phase de l'installtion il ya une liste déroulante des mode d'integration. choisissez  le fichier que vous avez créé
(pragmamx), lasuite et un peut facile..
n'oubliez pas d'activer les cookies dans config.php

Code:
$mxConf['mxCreateNukeCookie']    = '1';
pour le module, créé un répertoir ex "chat" dans /modules/
créé un fichier index.php
mettez dedans ce code:
Code:
<?PHP

    if (!eregi("modules.php", $_SERVER['PHP_SELF'])) {
die ("Vous ne pouvez pas accéder à ce dossier directement...");
    }

   $module_name = basename(dirname(__FILE__));

    include("header.php");
    OpenTable();
    echo ' <script language="javascript" type="text/javascript">
window.open(".http://votre-site/modules/Forum/smf/chat/","Chat"); // changer votre-site par ????
</script>
Le Chat ce charge dans une nouvelle fenêtre......';
    CloseTable();
    include("footer.php");

?>


pour le lien dans le forum (c + pratique) ça sera pour la prochaine x
je vous consiel de tester dabord en local(c'est plus sûr)
merci.
« Dernière édition: 18 Mars 2007 à 16:40:10 par Diabolo » Journalisée
Diabolo
Administrateur
Ultra membre Mx
******
Hors ligne Hors ligne

Messages: 5480



« Répondre #1 le: 10 Mars 2007 à 10:07:39 »

Slt,

Merci pour l'info  bien joué
Journalisée

..:: Veuillez consulter les règles du forum ::..- Avez-vous consulté notre documentation avant de poser votre question ?-Pas de support en MP ou par courriel, le forum est là pour ça !Nouvelle question=Nouveau Sujet
fonfonsd
Beta-Testeur
Ultra membre Mx
******
Hors ligne Hors ligne

Messages: 1039



« Répondre #2 le: 10 Mars 2007 à 20:00:28 »

pas beaucoup de post mais efficace
Journalisée

jacquouille69
Membre Junior Mx
**
Hors ligne Hors ligne

Messages: 46


« Répondre #3 le: 20 Mars 2007 à 11:10:35 »

hello

y aurait il un moyen lorsque des utilisateurs sont connectés sur le x7chat, d'avoir en page d'accueil du site un block (droite ou gauche)indiquant qui est connecté sur le tchat (voir meme d'afficher, le contenu du tchat libre) ?
Journalisée
algebre
Team
Membre Senior Mx
******
Hors ligne Hors ligne

Messages: 342



« Répondre #4 le: 20 Mars 2007 à 13:45:11 »

normalement c possible
donner moi un peut de temps pour voir sur mon site (mes installation en local sont en grève" trops de d'experiences")
  Sourire
Journalisée
jacquouille69
Membre Junior Mx
**
Hors ligne Hors ligne

Messages: 46


« Répondre #5 le: 20 Mars 2007 à 15:17:49 »

installation bien passée
le tchat fonctionne.......
reste a trouver comment mettre les infos et texte dans un block....
mais pour un debut c'est pas mal.....

merci pour les tutos de l'installation
Journalisée
algebre
Team
Membre Senior Mx
******
Hors ligne Hors ligne

Messages: 342



« Répondre #6 le: 20 Mars 2007 à 18:40:33 »

slt
Pour un block indépendant (détaillé) ça demande beaucoup de travail( c pas si simple)
Et pour ne pas te décevoir voici un truc qui affiche le nombre total (dans tous les salons)
Dans le block qui est en ligne

ouvrer le block " block-Who_is_Online.php"
cherche ceci
Code:
list($userCount2) = sql_fetch_row(sql_query($qry));

ajouter après:
Code:
//membres dans les salons ............................................

     
   $exptime = time()-30; // depuis 30 secondes
   $member_onchat_num = 0;
       $result = sql_query("SELECT  Count(name) FROM x7chat2_online WHERE invisible<>'1'"); //change le prefix si besoin
       list($member_onchat_num) = sql_fetch_row($result);

qulque ligne après tu trouve
Code:
. "\n<tr>\n<td>" . _BWOGUESTES . "</td>\n<td align=\"right\">\n<b>$guest_online_num</b></td>\n</tr>\n"
ajoute après:
Code:
. "\n<tr>\n<td>" . _CHATMEMBER . "</td>\n<td align=\"right\">\n<b>$member_onchat_num</b></td>\n</tr>\n"

maintenant ouvre le fichier (/language/lang-french.php)
ajoute cette ligne
Code:
define("_CHATMEMBER", "dans le Tchatche"); // tu ecrir ce que tu veut
faite la meme chose avec les autre fichier de langues.
 Sourire
Journalisée
jacquouille69
Membre Junior Mx
**
Hors ligne Hors ligne

Messages: 46


« Répondre #7 le: 20 Mars 2007 à 21:24:30 »

merci... bien joué
Journalisée
algebre
Team
Membre Senior Mx
******
Hors ligne Hors ligne

Messages: 342



« Répondre #8 le: 21 Mars 2007 à 00:34:07 »

salut
j'ai oublié quleque chose dans ce code

Code:
//membres dans les salons ............................................

     
   $exptime = time()-30; // depuis 30 secondes
   $member_onchat_num = 0;
       $result = sql_query("SELECT  Count(name) FROM x7chat2_online WHERE invisible<>'1'"); //change le prefix si besoin
       list($member_onchat_num) = sql_fetch_row($result);


il falait faire ça:
Code:
//membres dans les salons ............................................

     
   $exptime = time()-30; // depuis 30 secondes
   $member_onchat_num = 0;
       $result = sql_query("SELECT  Count(name) FROM x7chat2_online WHERE invisible<>'1' AND time>'$exptime'");
       list($member_onchat_num) = sql_fetch_row($result);
si tu as laissé les valeurs par défaut, ce code est valable par contre si tu as chager le prefix durant l'installation tu doit  changer x7chat2 par celui que tu as  mis, c'est tout.

merci
Journalisée
jacquouille69
Membre Junior Mx
**
Hors ligne Hors ligne

Messages: 46


« Répondre #9 le: 21 Mars 2007 à 14:46:31 »

hello

merci pour la correction..mais apres moultes essais, je me suis aperçus que l'integration malgré qu'elle ce soit bien passé, ne correspondait pas a ce que j'attendais....sur ma page d'accueil.....

encore merci...
Journalisée
gnark
Néophyte Mx
*
Hors ligne Hors ligne

Messages: 22


« Répondre #10 le: 29 Avril 2007 à 04:07:47 »

Bon...soir,
y'a t'il des "pieges" pour le newbie ..,j'ai fait 2 x l'install le chat se lance mais impossible d'entrer dedans..
-cookies débrayé dans config.php
-la base se creer bien
-les fichiers crees et bien placé (ya pas des modifs pieges dedans?..hormis celle décrites..?)
par contre a l'install il trouve automatiqument les "reference"s Msql  ..mot de passe,seveur..etc.. sans que je specifie le fichier Pragmamx.php..

Moi qui voulait me coucher tot...
 Pleurs
Journalisée
kawa
Invité
« Répondre #11 le: 04 Juin 2007 à 17:06:20 »

Refait ton install, il faut donner la réfférance du fichier Pragmamx, pour un bon fonctionnement.
Chez moi cela fonctionne nickel.  Clin d'oeil
Journalisée
kawa
Invité
« Répondre #12 le: 04 Juin 2007 à 17:09:26 »

Rebonjour,
J'aimerais savoir si un gentil créateur pourait créer un bloc pour completer ce travail.
Un bloc qui permet d'afficher les membres connecté au  x7chat  etc...

@++
Journalisée
gnark
Néophyte Mx
*
Hors ligne Hors ligne

Messages: 22


« Répondre #13 le: 30 Juin 2007 à 22:55:42 »


Bon ,je confirme apres une petite deprime ,j'ai tout reinstallé calmement ça marche au Poil ...  bien joué

thanks Sourire
Journalisée
Pages: [1]   Haut de page
Imprimer
Forum pragmaMx France  |  Modules spécifiques & Blocs  |  Forum SMF (Modérateurs: Diabolo, kroms, phi56360)  |  Fil de discussion: Integration de x7chat à SMF
 
Aller à:  

Powered by SMF 1.1.15 | SMF © 2006-2009, Simple Machines

Plus