class Mymodule_Nombrecontrolador_Controller extends RMController
{
use RMModuleAjax , RMProperties , RMModels ;
public function __construct () {
parent :: __construct ();
$ this -> default = 'index' ; // default action
$ this -> controller = 'categories' ;
}
public function index () {
// Logic index action
$ This -> tpl -> header ()
requires $ this -> parent -> view ;
$ this -> tpl -> footer ();
}
}
class Mymodule_Nombremodelo_Model extends RMActiveRecord
{
use RMModels ;
public function __construct () {
parent :: __construct ( 'model' , 'module' );
/ **
* Titles table fields
* /
$ this -> titles = array (
'column' => __ ( 'Column Title' , 'module' ),
'column2' => __ ( 'Title column2' , 'module' ),
...
);
}
}
img.img-frame {
/* Couleur ombre de la photo */
box-shadow: 5px 5px 20px #404040;
/* Effet cadre vielli, pour photo noir et blanc style ancien */
/* border-color: #f5eac7; */
border-color: #ffffff;
border-style: solid;
border-width: 20px;
display: block;
margin-l;
margin-left: auto;
margin-right: auto;
margin-top: 10px;
margin-bottom: 10px;
}
$distinctDbLetters_arr = array();
$sql = 'SELECT DISTINCT (UPPER(LEFT(title, 1))) AS letter FROM ' . $xoopsDB->prefix('xoopstube_videos') ;
if ($result = $xoopsDB->query($sql)) {
while ($row = $xoopsDB->fetchArray($result)) {
$distinctDbLetters_arr[] = $row['letter'];
}
}
unset($sql);
if (in_array($ltr, $distinctDbLetters_arr)) {
$letterchoice
.= ';
} else {
$letterchoice
.= ';
}
.xoopstube_letters_green {
background-image: url(images/icon/backgnd_green.png);
}
"paste,fullscreen,visualchars,nonbreaking,inlinepopups,youtube",
"theme_advanced_buttons4" => "xoopsimagemanager,xoopsemotions,xoopsquote,xoopscode,xoopsmlcontent,youtube",
$modversion['onUpdate'] = 'include/update_function.php';
function tableExists($tablename)
{
global $xoopsDB;
$result=$xoopsDB->queryF("SHOW TABLES LIKE '$tablename'");
return($xoopsDB->getRowsNum($result) > 0);
}
function xoops_module_update_animal()
{
global $xoopsDB;
if (tableExists($xoopsDB->prefix('eigenaar'))) {
$sql = sprintf(
'ALTER TABLE ' . $xoopsDB->prefix('eigenaar') . ' RENAME ' . $xoopsDB->prefix('mod_pedigree_owner')
);
$result = $xoopsDB->queryF($sql);
if (!$result) {
echo '
' . _AM_PED_UPGRADEFAILED . ' ' . _AM_PED_UPGRADEFAILED2;
$errors++;
}
}
return TRUE;
}
<div class="comUserRank">
<div class="comUserRankText"><{$comment.poster.rank_title}>div>
<img class="comUserRankImg" src="<{$xoops_upload_url}>/<{$comment.poster.rank_image}>" alt="" />
div>
<img class="comUserImg" src="<{$xoops_upload_url}>/<{$comment.poster.avatar}>" alt="" />
<div class="comUserStat"><span class="comUserStatCaption"><{$lang_joined}>:span> <{$comment.poster.regdate}>div>
<div class="comUserStat"><span class="comUserStatCaption"><{$lang_from}>:span> <{$comment.poster.from}>div>
<div class="comUserStat"><span class="comUserStatCaption"><{$lang_posts}>:span> <{$comment.poster.postnum}>div>
<div class="comUserStatus"><{$comment.poster.status}>div>
<img class="comUserImg" src="<{$xoops_upload_url}>/<{$comment.poster.avatar}>" alt="" />
<tr>
<td class="head"><a id="comment<{$comment.id}>">a> <{$comment.poster.uname}>td>
<td class="head"><div class="comDate"><span class="comDateCaption"><{$lang_posted}>:span> <{$comment.date_posted}> <span class="comDateCaption"><{$lang_updated}>:span> <{$comment.date_modified}>div>td>
tr>
<tr>
<td><a id="comment<{$comment.id}>">a>td>
<td><{$comment.poster.uname}> said the <{$comment.date_posted}> (<{$lang_updated}>: <{$comment.date_modified}>)td>
tr>
<tr>
<td><a id="comment<{$comment.id}>">a>td>
<td><{$comment.poster.uname}> said the <{$comment.date_posted}>
<{if $comment.date_posted != $comment.date_modified}>
(modified the <{$comment.date_modified}>)
<{/if}>
td>
tr>
<div style="float:right;">
<{if $xoops_iscommentadmin == true}>
<a href="<{$editcomment_link}>&com_id=<{$comment.id}>" title="<{$lang_edit}>"><img src="<{$xoops_url}>/images/icons/edit.gif" alt="<{$lang_edit}>" />a>
<a href="<{$deletecomment_link}>&com_id=<{$comment.id}>" title="<{$lang_delete}>"><img src="<{$xoops_url}>/images/icons/delete.gif" alt="<{$lang_delete}>" />a>
<a href="<{$replycomment_link}>&com_id=<{$comment.id}>" title="<{$lang_reply}>"><img src="<{$xoops_url}>/images/icons/reply.gif" alt="<{$lang_reply}>" />a>
<{elseif $xoops_isuser == true && $xoops_userid == $comment.poster.id}>
<a href="<{$editcomment_link}>&com_id=<{$comment.id}>" title="<{$lang_edit}>"><img src="<{$xoops_url}>/images/icons/edit.gif" alt="<{$lang_edit}>" />a>
<a href="<{$replycomment_link}>&com_id=<{$comment.id}>" title="<{$lang_reply}>"><img src="<{$xoops_url}>/images/icons/reply.gif" alt="<{$lang_reply}>" />a>
<{elseif $xoops_isuser == true || $anon_canpost == true}>
<a href="<{$replycomment_link}>&com_id=<{$comment.id}>"><img src="<{$xoops_url}>/images/icons/reply.gif" alt="<{$lang_reply}>" />a>
<{/if}>
div>
<div class="comTitle"><{$comment.image}><{$comment.title}>div>
<td style="width:120px;"><a id="comment<{$comment.id}>">a>td>
<td style="text-align:center;">
<img class="comUserImg" src="<{$xoops_upload_url}>/<{$comment.poster.avatar}>" alt="" />
td>
.arrow-left {
width: 0px;
height: 0px;
border-style: solid;
border-width: 25px 20px 25px 0;
border-color: transparent #ECE9D8 transparent transparent;
}
<td>td>
<td style="width:120px;"><a id="comment<{$comment.id}>">a>td>
<td>td>
<td class="odd"><div class="comText"><{$comment.text}>div>td>
<div class="arrow-left">div>
<td style="width:20px;"><div class="arrow-left">div>td>
<td><br /><br /><{$comment.poster.uname}>
<tr>
<td style="width:120px;"><a id="comment<{$comment.id}>">a>td>
<td>td>
<td><br /><br /><{$comment.poster.uname}> a dit le <{$comment.date_posted}>
<{if $comment.date_posted != $comment.date_modified}>
(modifié le <{$comment.date_modified}>)
<{/if}>
<div style="float:right;">
<{if $xoops_iscommentadmin == true}>
<a href="<{$editcomment_link}>&com_id=<{$comment.id}>" title="<{$lang_edit}>"><img src="<{$xoops_url}>/images/icons/edit.gif" alt="<{$lang_edit}>" />a>
<a href="<{$deletecomment_link}>&com_id=<{$comment.id}>" title="<{$lang_delete}>"><img src="<{$xoops_url}>/images/icons/delete.gif" alt="<{$lang_delete}>" />a>
<a href="<{$replycomment_link}>&com_id=<{$comment.id}>" title="<{$lang_reply}>"><img src="<{$xoops_url}>/images/icons/reply.gif" alt="<{$lang_reply}>" />a>
<{elseif $xoops_isuser == true && $xoops_userid == $comment.poster.id}>
<a href="<{$editcomment_link}>&com_id=<{$comment.id}>" title="<{$lang_edit}>"><img src="<{$xoops_url}>/images/icons/edit.gif" alt="<{$lang_edit}>" />a>
<a href="<{$replycomment_link}>&com_id=<{$comment.id}>" title="<{$lang_reply}>"><img src="<{$xoops_url}>/images/icons/reply.gif" alt="<{$lang_reply}>" />a>
<{elseif $xoops_isuser == true || $anon_canpost == true}>
<a href="<{$replycomment_link}>&com_id=<{$comment.id}>"><img src="<{$xoops_url}>/images/icons/reply.gif" alt="<{$lang_reply}>" />a>
<{/if}>
div>
td>
tr>
<tr>
<{if $comment.poster.id != 0}>
<td style="text-align:center;">
<img class="comUserImg" src="<{$xoops_upload_url}>/<{$comment.poster.avatar}>" alt="" />
td>
<{else}>
<td class="odd"> td>
<{/if}>
<td style="width:20px;"><div class="arrow-left">div>td>
<td class="odd">
<div class="comText"><{$comment.text}>div>
td>
tr>
<tr><td>td><td>td><td>td>tr>
"paste,fullscreen,visualchars,nonbreaking,inlinepopups",
"paste,fullscreen,visualchars,nonbreaking,inlinepopups,template",
"theme_advanced_buttons4" => "xoopsimagemanager,xoopsemotions,xoopsquote,xoopscode,xoopsmlcontent",
"theme_advanced_buttons4" => "xoopsimagemanager,xoopsemotions,xoopsquote,xoopscode,xoopsmlcontent,template",
"template_external_list_url" => '/uploads/gabarits/liste-gabarits.js',
// JavaScript Document
var tinyMCETemplateList = [
// Nom, URL, Description
["Fiche cuisine", "/_uploads/gabarits/fiche-cooking.html", "Template for the cooking."],
["Fiche Livre", "/_uploads/gabarits/fiche-book.html", "Template for books."] ];
I will show you in this tutorial how to install a Chat for XOOPS.
Oh, I hear you here saying : "Oh no, yet another poorly designed and not user friendly chat !"
False!!! Here you can see the beautiful and friendly users interface: