Salut,
Ma première bidouille de KwsPhp
J'ai amélioré l'aspect graphique du bloc "espace membre" (du moins, moi je trouve cela plus zoli)
Avant toute chose, un aperçu sur mon site :
http://beta.lsi-dev.com/index.phplogin : lsi
pass : testeur
Donc la modification concerne :
Quand on n'est pas connecté
- Pliage du formulaire de login (il n'a pas besoin d'être toujours afficher)
- Ajout d'une image pour s'enregistrer (un petit trousseau de clé) et d'une image pour se déconnecter à placer dans le dossier "images/icones_membre"



Quand on est connecté
- Si on n'affichage pas l'avatar, on n'affichage pas le nom aussi (en gros, je connais mon pseudo, donc pas utile de toujours l'avoir)
- J'ai ajouté une image quand on est connecté
- j'ai un peu réorganisé le code (pas grand chose)
Donc le code : (mes modifs sont expliqués avec un commentaire "modifications LSI")
bloc.php
Code PHP :
Pour copier le contenu exact du code,
Veuillez citer le message
-
<?php
-
// ---------------------------------------------------------------
// KwsPHP kOoGar Web System
// $Id: bloc.php 815 2008-11-03 12:38:55Z mike007.devpwsphp $
// ---------------------------------------------------------------
// Mise a jour : 18/07/06 par Ditch
// Mise a jour : 26/01/08 par Otocinclus
// ---------------------------------------------------------------
-
if (!(defined('__KWS__'))) {die ('Erreur d\'appel de fichier.');}
-
if (get_grade()>=GRD_MEMBR)
{
//taille avatar réel si < à taille spécifié de 150 px
list($image_width, $image_height, $image_type, $image_attr) = @getimagesize($K_user->avatar);
$taille_avat_bloc = $image_width <= 150 ? $image_width : '150';
-
$requete = reqmysql('
SELECT COUNT(`id`)
FROM `messages`
WHERE `messages`.`a`="'.sp($K_pseudo).'"
AND `messages`.`Cacher_Dest`="0"
AND `messages`.`lu`="0"
');
$nb = mysql_fetch_row($requete);
$nb = $nb[0];
-
$chaine = '';
if ($nb > 0 && $_COOKIE['nopopup'] == '' && $K_user->popup == '1')
{
$chaine .= '
<script type="text/javascript">
// <![CDATA[
popupcentre(\'./modules/espace_membre/popup.php?theme_popup='.$K_theme.'\',\'Information\',\'300\',\'130\',\'no\');
// ]]>
</script>';
}
/* Modification LSI
Ajout d'une image quand on est connecté */
$urlimagepass = file_exists('./themes/'.$K_theme.'/images/icones_membre/pass2.png') ? './themes/'.$K_theme.'/images/icones_membre/pass2.png' : './images/icones_membre/pass2.png' ;
list($image_width, $image_height, $image_type, $image_attr) = @getimagesize($urlimagepass); //Taille de l'image pour le style du bloc
$urlimagelogout = file_exists('./themes/'.$K_theme.'/images/icones_membre/logout2.png') ? './themes/'.$K_theme.'/images/icones_membre/logout2.png' : './images/icones_membre/logout2.png' ;
$bloc_avat ='<img src="'.$K_user->avatar.'" style="'.($K_user->invisible ? 'filter:alpha(opacity=30); opacity:0.3;':'').'margin:2px;width:'.$taille_avat_bloc.'px" alt="Votre avatar" />';
/* Modification LSI
Réorganisation du menu
Ajout d'une image pour se déconnecter plutot qu'un texte*/
$chaine .='
<div class="bloc_espace_membre_avat">
'.($result_blocs->parametre4!='non'? $bloc_avat.'<br />':'').'
'.get_grd_symbol($K_user->grade).(get_grade()>=$K_grd_user_invisible ? '<a href="./index.php?int_novisible='.($K_user->invisible ? 0:1).'" title="'.($K_user->invisible ? 'Passer visible':'Passer invisible').'">'.$K_pseudo.'</a>'.($K_user->invisible ? ' (invisible)':''): get_grd_symbol($K_user->grade).$K_pseudo ).'<br /><hr />
</div>
<div style="height:'.$image_height.'px;" class="bloc_espace_membre1">
<img '.(isset($theme_version)?'class="bloc_espace_membre_priv"':'style="float:left;padding-right:3px"').' src="'.$urlimagepass.'" alt="Privé" />
<a href="index.php?mod=espace_membre&ac=logout"><img '.(isset($theme_version)?'class="bloc_espace_membre_logout"':'style="float:right;padding-left:3px;border:none"').' src="'.$urlimagelogout.'" alt="Déconnexion" /></a>
<a href="index.php?mod=espace_membre&ac=login">Mon compte</a>
<br />';
if(!is_callable(esp_membr))
{
if ($result_blocs->parametre3=='oui')
{
include 'bloc_message.php';
$chaine .= '
<div '.($nb>0 ? (isset($themepasmenu)?'class="bloc_new_message"':'style="background-color:'.$col_msg.';"') : '' ).'>
<span style="cursor: pointer" onmouseover="javascript:window.status=\'\';return(true)" onclick="javascript:cachecache(\'bloc_messagerie\');EcrireCookie(\'messagerie\',document.getElementById(\'bloc_messagerie\').style.display);" id="bloc_messagerie_lien">
Messagerie
</span>
</div>
</div>
'.$bloc_messagerie.'';
}
elseif ($nb>0)
{
$chaine .= '
<div '.(isset($themepasmenu)?'class="bloc_new_message"':'style="background-color:'.$col_msg.';"').'>
<a href="index.php?mod=espace_membre&ac=boite">'.($nb>1?$nb.' nouveaux messages':'un nouveau message').'</a>
</div>
</div>';
}
else
{
$chaine .= '<a href="index.php?mod=espace_membre&ac=boite">Messagerie</a>
</div>';
}
}
else
{
if ($result_blocs->parametre3=='oui')
{
include 'bloc_message.php';
$messagerie .= '
<span '.($nb>0 ? (isset($themepasmenu)?'class="bloc_new_message"':'style="background-color:'.$col_msg.';"') : '' ).'>
Messagerie
</span>
</div>'
.$bloc_messagerie;
}
elseif ($nb>0)
{
$messagerie .= '
<span style="background-color:'.$col_msg.';">
<a href="index.php?mod=espace_membre&ac=boite">'.($nb>1?$nb.' nouveaux messages':'un nouveau message').'</a>
</span>
</div>';
}
else
{
$messagerie .= '<a href="index.php?mod=espace_membre&ac=boite">Messagerie</a>
</div>';
}
}
}
else
{
$urlimagepass = file_exists('./themes/'.$K_theme.'/images/icones_membre/pass2.png') ? './themes/'.$K_theme.'/images/icones_membre/pass2.png' : './images/icones_membre/pass2.png' ;
list($image_width, $image_height, $image_type, $image_attr) = @getimagesize($urlimagepass); //Taille de l'image pour le style du bloc
/* Contribution LSI : Ajout image pour s'enregistrer */
$urlimageregister = file_exists('./themes/'.$K_theme.'/images/icones_membre/register.png') ? './themes/'.$K_theme.'/images/icones_membre/register.png' : './images/icones_membre/register.png' ;
/* Contribution LSI :
Menu déroulant pour se connecter suivant les options du bloc
Réorganisation des élements
boite à cocher "Se souvenir de moi ?" : Affichage sur une ligne et avec du texte
Ajout image pour s'enregistrer */
$parametre2 = explode(' ',$result_blocs->parametre2);
$chaine = '
<script type="text/javascript">
// <![CDATA[
function verif_login_bloc(formulaire)
{
if (formulaire.sql_pseudo.value=="")
{
alert("Veuillez indiquer votre pseudo.");
formulaire.sql_pseudo.focus();
return false;
}
else if (formulaire.sql_pseudo.value.toLowerCase() == "ancien membre") {
alert("Compte réservé.");
formulaire.sql_pseudo.focus();
return false;
}
else if (formulaire.sql_pass.value=="")
{
alert("Veuillez indiquer votre mot de passe !");
formulaire.sql_pass.focus();
return false;
}
else
{
return true;
}
}
// ]]>
</script>
<div style="height:'.$image_height.'px;" class="bloc_espace_membre1">
<img '.(isset($theme_version)?'class="bloc_espace_membre_priv"':'style="float:left;padding-right:3px"').' src="'.$urlimagepass.'" alt="Privé" />';
// Se connecter
if ($parametre2[0]=='lien')
{
$chaine .= '<a href="./index.php?mod=espace_membre&ac=login">Se connecter</a>
</div>';
}
else
{
if ($parametre2[0]=='toujours')
{
$chaine .= '
Se connecter
</div>
<div id="seconnecter" >';
}
elseif ($parametre2[0]=='deplier')
{
$chaine .= '
<span style="cursor: pointer" onmouseover="javascript:window.status=\'\';return(true)" onclick="javascript:cachecache(\'seconnecter\',\'Se connecter\',\'Masquer le formulaire de connection\');EcrireCookie(\'seconnecter\',document.getElementById(\'seconnecter\').style.display);" id="seconnecter_lien">'.(empty($_COOKIE['seconnecter']) ? 'Masquer le formulaire de connection':($_COOKIE['seconnecter']=='none' ? 'Se connecter':'Masquer le formulaire de connection')).'</span>
</div>
<div id="seconnecter" style="display:'.(empty($_COOKIE['seconnecter']) ? 'block':$_COOKIE['seconnecter']).'">';
}
else
{
$chaine .= '
<span style="cursor: pointer" onmouseover="javascript:window.status=\'\';return(true)" onclick="javascript:cachecache(\'seconnecter\',\'Se connecter\',\'Masquer le formulaire de connection\');EcrireCookie(\'seconnecter\',document.getElementById(\'seconnecter\').style.display);" id="seconnecter_lien">'.(empty($_COOKIE['seconnecter']) ? 'Se connecter':($_COOKIE['seconnecter']=='block' ? 'Masquer le formulaire de connection':'Se connecter')).'</span>
</div>
<div id="seconnecter" style="display:'.(empty($_COOKIE['seconnecter']) ? 'none':$_COOKIE['seconnecter']).'">';
}
$chaine .= '
<form id="formloginbloc" name="formloginbloc" action="index.php?'.ax($_SERVER['QUERY_STRING']).'" method="post" onsubmit="return verif_login_bloc(document.formloginbloc)">
<p class="bloc_espace_membre2">
Pseudo<br />
<input name="sql_pseudo" type="text" maxlength="30" size="10" value="" /><br /><br />
Mot de passe<br />
<input name="sql_pass" type="password" size="10" value="" /><br /><br />';
if ($parametre2[1]=='oui')
{
// Case à cocher pour connexion automatique
$chaine .= '<input type="checkbox" name="auto" id="auto" /> Se souvenir de moi ?<br /><br />';
}
$chaine .= '
<input id="submit_login_bloc" type="submit" name="verifer" value=" Se connecter " />
<br /><br />
<a href="./index.php?mod=espace_membre&ac=perdu">Mot de passe oublié</a><br />
</p>
</form>
</div>';
}
//S'enregistrer
$chaine .= '
<div class="bloc_espace_membre1">
<img '.(isset($theme_version)?'class="bloc_espace_membre_priv"':'style="float:left;padding-right:3px"').' src="'.$urlimageregister.'" alt="S\'enregistrer" />
<a href="./index.php?mod=espace_membre&ac=enregistrer">S\'enregistrer</a>
</div>';
}
-
if(is_callable(esp_membr))
{
if ($result_blocs->parametre4=='non')
$bloc_avat='';
esp_membr(
ax($result_blocs->parametre1),
$bloc_avat,
'<a href="index.php?mod=espace_membre&ac=login">Mon compte</a>'.($result_blocs->parametre4=='non'? ' ('.get_grd_symbol($K_user->grade).$K_pseudo.')':'').'',
$messagerie,
'<a href="index.php?mod=espace_membre&ac=logout">Se déconnecter</a>',
$chaine
);
-
}
else
{
bloc (ax($result_blocs->parametre1), $chaine);
}
?>
-
bloc_messagerie.php
Code PHP :
Pour copier le contenu exact du code,
Veuillez citer le message
<?php
// ---------------------------------------------------------------
// KwsPHP kOoGar Web System
// $Id: bloc_message.php 804 2008-10-04 18:25:57Z mike007.devpwsphp $
// ---------------------------------------------------------------
-
if (!(defined('__KWS__'))) {die ('Erreur d\'appel de fichier.');}
-
$bloc_messagerie = '';
if (isset($_GET['dossier1']))
$dossier1 = $_GET['dossier1'] ;
else
$dossier1 = 'recep' ;
-
-
$req=reqmysql('
SELECT COUNT(`id`)
FROM `messages`
WHERE `a`="'.$pseudo.'" AND `Cacher_Dest`="0" AND `lu`="0"
UNION ALL
SELECT COUNT(`messages`.`id`)
FROM `messages`
WHERE `a`="'.$pseudo.'" AND `Cacher_Dest`="0"
UNION ALL
SELECT COUNT(`id`)
FROM `messages`
WHERE `de`="'.$pseudo.'" AND `Cacher_Exp`="0" AND `lu`="0"
UNION ALL
SELECT COUNT(`id`)
FROM `messages`
WHERE `de`="'.$pseudo.'" AND `Cacher_Exp`="0" AND `lu`="1"
UNION ALL
SELECT COUNT(`id`)
FROM `messages`
WHERE (`de`="'.$pseudo.'" and `Cacher_Exp`="1") OR (`a`="'.$pseudo.'" and `Cacher_Dest`="1")
');
$i = 0;
while ($rep = mysql_fetch_row ($req))
{
$message_nb[$i] = $rep[0];
$i ++;
}
-
/* Modification lsi
ajout d'une balise <br /> au début et à la fin de la balise <span>
*/
-
$bloc_messagerie .= '<span id="bloc_messagerie" style="display:'.(empty($_COOKIE['messagerie']) ? 'none':$_COOKIE['messagerie']).'">
<br />
<img src="./themes/'.$theme.'/images/espace_membre/dossier_recu.png" alt="image" />
<a href="index.php?mod=espace_membre&ac=boite">Réception</a> ('.($message_nb[0]>0 ? ' <b>'.$message_nb[0].'</b> / '.$message_nb[1].' ' : $message_nb[1]).')<br />';
-
$bloc_messagerie .= '<img src="./themes/'.$theme.'/images/espace_membre/dossier_envoie.png" alt="image" />
<a href="index.php?mod=espace_membre&ac=boite&dossier=envoi">Non lu par le destinataire</a> ('.$message_nb[2].')<br />';
-
$bloc_messagerie .= '<img src="./themes/'.$theme.'/images/espace_membre/dossier_envoye.png" alt="image" />
<a href="index.php?mod=espace_membre&ac=boite&dossier=envoyes">Envoyés</a> ('.$message_nb[3].')<br />';
-
$bloc_messagerie .= '<img src="./themes/'.$theme.'/images/espace_membre/corbeille.png" alt="image" />
<a href="index.php?mod=espace_membre&ac=boite&dossier=corbeille">Corbeille</a> ('.$message_nb[4].')<br />
<img src="./themes/'.$theme.'/images/espace_membre/carnet.png" alt="carnet" />
<a href="index.php?mod=espace_membre&ac=boite&dossier=carnet">Carnet d\'adresses</a><br />
<img src="./themes/'.$theme.'/images/espace_membre/mail_nv.png" alt="mail" />
<a href="index.php?mod=espace_membre&ac=message">Ecrire un message</a><br />
<br />
</span>';
-
// incohérent
/* @$total=round($message_nb[2]+$message_nb[4]);
@$nb_stat=round($total/10);
@$taille=round(100 / 100 * $nb_stat);
$bloc_messagerie .= '
<a href="index.php?mod=espace_membre&ac=boite"> '.$taille.'% d\'espace utilisé</a>
<br />
<table border="1" width="140">
<tr bgcolor="#dddddd">
<td><img src="themes/'.$theme.'/images/stats/leftbar.png" height="8" /><img src="themes/'.$theme.'/images/stats/mainbar.png" height="8" width="'.$nb_stat.'" /><img src="themes/'.$theme.'/images/stats/rightbar.png" height="8"></td>
</tr>
</table>';
*/
?>
les paramètres du bloc
admin.php
Code PHP :
Pour copier le contenu exact du code,
Veuillez citer le message
-
<?php
<?php
// $Id: admin.php 804 2008-10-04 18:25:57Z mike007.devpwsphp $
-
if (!(defined('__KWS__'))) {die ('Erreur d\'appel de fichier.');}
-
$infos = '<span style="float:right"><a href="index.php?mod=admin&ac=param&id='.ax($result_blocs->id).'">[Editer]</a></span>
Nom : '.ax($result_blocs->parametre1).'<br />
Se connecter : '.ax($result_blocs->parametre2).'<br />
Avatar : '.ax($result_blocs->parametre4).'<br />
détail mp : '.ax($result_blocs->parametre3).'<br />
<br />' ;
-
$informations = '
<strong>Nom</strong> : Espace membre<br />
<strong>Type</strong> : Bloc<br />
<br />
<strong>Description</strong> : Menu permettant un accès rapide à la messagerie, à l’administration, ...';
-
//Ajout LSI : Image dans le titre des blocs
//Ajout LSI : Options pour le formulaire de connection, voir parametre1
$new = '
<form action="modules/admin/new3.php">
Ajouter un menu d’espace membre :
<br /><br />
Ce module affiche un menu avec des liens vers la messagerie, l’administration, ...
<br /><br />
Titre du bloc :
<input type="text" value="Espace membre :" name="parametre1" size="20" maxlength="25" />
<br /><br />
Formulaire de connection :</label>
<select name="parametre2">
<option value="toujours oui" selected="selected">Toujours visible + Connection automatique</option>
<option value="toujours non" >Toujours visible</option>
<option value="deplier oui" >Visible déplié + Connection automatique</option>
<option value="deplier non" >Visible déplié</option>
<option value="plier oui" >Visible plié + Connection automatique</option>
<option value="plier non" >Visible plié</option>
<option value="lien">Lien simple</option>
</select>
<br /><br />
Afficher l’avatar :</label>
<select name="parametre4">
<option value="oui" selected="selected">Oui</option>
<option value="non">Non</option>
</select>
<br /><br />
Afficher le détail de la messagerie interne :</label>
<select name="parametre3">
<option value="oui">Oui</option>
<option value="non" selected="selected">Non</option>
</select>
<br /><br />
<input type="submit" id="submit" value="Ajouter le module">
<input type="hidden" name="emplacement" value="'.intval($_GET['emplacement']).'" />
<input type="hidden" name="module" value="espace_membre" />
</form>';
-
-
$edit = '
<form action="modules/admin/edit.php">
Modifier le menu d’espace membre :
<br /><br />Ce module affiche un menu avec des liens vers la messagerie, l’administration, ...
<br /><br />
Titre du bloc :
<input type="text" value="'.ax($result_blocs->parametre1).'" name="parametre1" size="20" maxlength="25" />
<br /><br />
Formulaire de connection :</label>
<select name="parametre2">
<option value="toujours oui" '.(ax($result_blocs->parametre2)=='toujours oui'? 'selected="selected"':'').'>Toujours affiché + Connection automatique</option>
<option value="toujours non" '.(ax($result_blocs->parametre2)=='toujours non'? 'selected="selected"':'').'>Toujours affiché</option>
<option value="deplier oui" '.(ax($result_blocs->parametre2)=='deplier oui'? 'selected="selected"':'').'>Visible déplié + Connection automatique</option>
<option value="deplier non" '.(ax($result_blocs->parametre2)=='deplier non'? 'selected="selected"':'').'>Visible déplié</option>
<option value="plier oui" '.(ax($result_blocs->parametre2)=='plier oui'? 'selected="selected"':'').'>Visible plié + Connection automatique</option>
<option value="plier non" '.(ax($result_blocs->parametre2)=='plier non'? 'selected="selected"':'').'>Visible plié</option>
<option value="lien" '.(ax($result_blocs->parametre2)=='lien'? 'selected="selected"':'').'>Lien simple</option>
</select>
<br /><br />
Afficher l’avatar :</label>
<select name="parametre4">
<option value="oui" '.(ax($result_blocs->parametre4)=='oui'? 'selected="selected"':'').'>Oui</option>
<option value="non" '.(ax($result_blocs->parametre4)=='non'? 'selected="selected"':'').'>Non</option>
</select>
<br /><br />
Afficher le détail de la messagerie interne :</label>
<select name="parametre3">
<option value="oui" '.(ax($result_blocs->parametre3)=='oui'? 'selected="selected"':'').'>Oui</option>
<option value="non" '.(ax($result_blocs->parametre3)=='non'? 'selected="selected"':'').'>Non</option>
</select>
<br /><br />
<input type="submit" id="submit" value="Modifier le module">
<input type="hidden" name="id" value="'.ax($result_blocs->id).'" />
</form>';
?>
-
-
le style.css du thème, je conseille de modifier celle-ci
Code PHP :
Pour copier le contenu exact du code,
Veuillez citer le message
<?php
#####!!!#####
-
-
.bloc_espace_membre1{
text-align:left;
font-weight:bold;
color:#000000;
}
-
-
#####!!!#####
?>
et d'ajouter
Code PHP :
Pour copier le contenu exact du code,
Veuillez citer le message
<?php
#####!!!#####
-
-
.bloc_espace_membre_logout{
float:right;
padding-left:3px;
border:none;
}
-
-
#####!!!#####
?>
J'espère que ça va vous plaire :)
Attention : ces modifs sont données sans la modiifcation de l'image dans le titre des blocs.