Joomla.it Forum

Non solo Joomla... => Sviluppo => : cassin.simone 21 Apr 2010, 19:55:59

: Integrazione blueimp ajax chat e joomla
: cassin.simone 21 Apr 2010, 19:55:59
Salve a tutti! Si, sono ancora io  :D
Per integrare joomla e la blueimp ajax chat ho modificato la funzione della blueimp chat di nome getValidLoginUserData in questo modo:
:
  function getValidLoginUserData() {
    define( '_JEXEC', 1 );
    define('JPATH_BASE', ".." );
    define( 'DS', DIRECTORY_SEPARATOR );

    require_once (JPATH_BASE.DS.'includes'.DS.'defines.php');
    require_once (JPATH_BASE.DS.'includes'.DS.'framework.php');
    require('../libraries/joomla/factory.php');
    $mainframe =& JFactory::getApplication('site');
    $mainframe->initialise();
    $my =& JFactory::getUser();
        if ($my->id>0){
            $userData=array();
            $userData['userID']=$my->id;
            $userData['userName']=$my->username;
            $userData['userRole']='AJAX_CHAT_USER';
            return $userData;
        }else return NULL;
    }
Questa funzione si trova in lib/class/CustomAJAXChat.php
Ho poi modificato il file di template loggedOut.html che si trova in lib/template/loggedOut.html in questo modo:
:
<?xml version="1.0" encoding="[CONTENT_ENCODING/]"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="[LANG_CODE/]" lang="[LANG_CODE/]" dir="[BASE_DIRECTION/]">

<head>
<meta http-equiv="Content-Type" content="[CONTENT_TYPE/]" />
<title>[LANG]title[/LANG]</title>
<style type="text/css">
body {
padding:0;
margin:0;
}
</style>
[STYLE_SHEETS/]
<!--[if lt IE 7]>
<link rel="stylesheet" type="text/css" href="css/ie5-6.css"/>
<![endif]-->
<script src="js/chat.js" type="text/javascript" charset="UTF-8"></script>
<script src="js/lang/[LANG_CODE/].js" type="text/javascript" charset="UTF-8"></script>
<script src="js/config.js" type="text/javascript" charset="UTF-8"></script>
<script type="text/javascript">
// <![CDATA[
function initializeLoginPage() {
document.getElementById('userNameField').focus();
if(!ajaxChat.isCookieEnabled()) {
var node = document.createElement('div');
var text = document.createTextNode(ajaxChatLang['errorCookiesRequired']);
node.appendChild(text);
document.getElementById('errorContainer').appendChild(node);
}
}

ajaxChatConfig.sessionName = '[SESSION_NAME/]';
ajaxChatConfig.cookieExpiration = parseInt('[COOKIE_EXPIRATION/]');
ajaxChatConfig.cookiePath = '[COOKIE_PATH/]';
ajaxChatConfig.cookieDomain = '[COOKIE_DOMAIN/]';
ajaxChatConfig.cookieSecure = '[COOKIE_SECURE/]';

ajaxChat.init(ajaxChatConfig, ajaxChatLang, true, true, false);
// ]]>
</script>
</head>

<body onload="initializeLoginPage();">
<div id="loginContent">
<div id="loginHeadlineContainer">
<h1>[LANG]title[/LANG]</h1>
</div>
<form id="loginForm" name='loginForm' action="./" method="post" enctype="application/x-www-form-urlencoded">
<div id="loginFormContainer">
<input type="hidden" name="login" id="loginField" value="login"/>
<input type="hidden" name="redirect" id="redirectField" value=""/>

<div><input type="submit" name="submit" id="loginButton" value="Entra"/></div>
</div>
</form>
<div id="errorContainer"><div>Assicurati di aver fatto il login prima di procedere.</div><noscript><div>Serve il JavaScript per questa Chat.</div></noscript></div>
<!--
Please retain the full copyright notice below including the link to blueimp.net.
This not only gives respect to the amount of time given freely by the developer
but also helps build interest, traffic and use of AJAX Chat.

Thanks,
Sebastian Tschan
//-->
<div id="copyright"><a href="https://blueimp.net/ajax/">AJAX Chat</a> &copy; <a href="https://blueimp.net">blueimp.net</a></div>
</div>
</body>

</html>

Loggandosi però con joomla e cliccando sul pulsante "Entra" non succede nulla...:(
Qualcuno saprebbe darmi qualche dritta?
Grazie mille in anticipo ;)
: Re:Integrazione blueimp ajax chat e joomla
: mmleoni 22 Apr 2010, 08:56:17
ciao,
 non conosco la chat in questione, ma mi sembra che le modifiche da te apportate non abbiano senso  :(

hai letto qui:
sourceforge.net/apps/mediawiki/ajax-chat/index.php?title=Custom_integration_howto

mi pare tu stia facendo esattamente il contrario: integri joomla nella chat.

ciao,
marco
: Re:Integrazione blueimp ajax chat e joomla
: cassin.simone 22 Apr 2010, 18:48:27
ciao,
 non conosco la chat in questione, ma mi sembra che le modifiche da te apportate non abbiano senso  :(

hai letto qui:
sourceforge.net/apps/mediawiki/ajax-chat/index.php?title=Custom_integration_howto

mi pare tu stia facendo esattamente il contrario: integri joomla nella chat.

ciao,
marco

La tua logica non fa una piega ma un amico mi aveva suggerito di modificare quella funzione (getValidLoginUserData). Secondo te è corretta?
: Re:Integrazione blueimp ajax chat e joomla
: mmleoni 22 Apr 2010, 22:32:53
no, secondo me ti ha dato un suggerimento sbagliato, ma forse pensava di indicarti una via più semplice.

di fatto dovresti costruire almeno lo scheletro di un componente joomla ed all'interno di questo usare il codice della chat (il link che ti ho indicato). in questo modo potrai usare tutto il supporto dato da joomla.

purtroppo non è proprio semplicissimo...  :(

ciao,
marco
: Re:Integrazione blueimp ajax chat e joomla
: cassin.simone 23 Apr 2010, 13:22:23
Ok...il tempo di pranzare e provo ;)
Ti faccio sapere in questo topic :)