Simple Machines Community Forum

SMF Support => Language Specific Support => Français (French) => Aiheen aloitti: tsouliang - heinäkuu 29, 2009, 06:57:31 IP

Otsikko: interaction entre forum et un menu ...
Kirjoitti: tsouliang - heinäkuu 29, 2009, 06:57:31 IP
Bonjour :)
Bon, c'est plus un problème de programmation :
J'ai poser un menu fixe à gauche sur mon forum SMF, car il devient long ;)
Ce menu représente toutes les différentes sections du forum.
Maintenant, voila mon idée :
J'aimerais lier chaque ligne du menu avec un indicateur de nouveau message ...
Genre ajouter le dessin "on.gif" devant les lignes du menu représentant une section avec des nouveaux messages :)
Pour voir le menu sur mon site : www.reikirama.net/forum (http://www.reikirama.net/forum)

Voila, je ne vois pas trop comment faire, vos idées sont les bienvenues :)
Merci ;)
Otsikko: Re: interaction entre forum et un menu ...
Kirjoitti: nexxuscorp - heinäkuu 29, 2009, 07:01:22 IP
Alors la, j'peux po t'aider ....

Peut etre en jouant avec les finos sur indextemplate ou boardindextemplate ( avec les On.gif ....)

Enfin, je dis ça parce que tu semble utiliser ImageOnBoard. Et je pense que tu sais de quoi je parle ....
Otsikko: Re: interaction entre forum et un menu ...
Kirjoitti: tsouliang - heinäkuu 29, 2009, 07:07:18 IP
Pour info, le menu est appeler par ce code :
<HEAD>
<STYLE type="text/css">
<!--
A.ssmItems:link {color:navy;text-decoration:none;}
A.ssmItems:hover {color:black;text-decoration:none;}
A.ssmItems:active {color:black;text-decoration:none;}
A.ssmItems:visited {color:black;text-decoration:none;}
//-->
</STYLE>
<SCRIPT SRC="ssmItems.js"> language="JavaScript1.2"></SCRIPT>
</HEAD>


et voici le code du fichier js :
//Static Slide Menu 6.5 © MaXimuS 2000-2001, All Rights Reserved.
//Site: http://www.absolutegb.com/maximus
//E-mail: [email protected]
//Script featured on Dynamic Drive (http://www.dynamicdrive.com)

NS6 = (document.getElementById&&!document.all)
IE = (document.all)
NS = (navigator.appName=="Netscape" && navigator.appVersion.charAt(0)=="4")

tempBar='';barBuilt=0;ssmItems=new Array();


moving=setTimeout('null',1)
function moveOut() {
if ((NS6||NS)&&parseInt(ssm.left)<0 || IE && ssm.pixelLeft<0) {
clearTimeout(moving);moving = setTimeout('moveOut()', slideSpeed);slideMenu(10)}
else {clearTimeout(moving);moving=setTimeout('null',1)}};
function moveBack() {clearTimeout(moving);moving = setTimeout('moveBack1()', waitTime)}
function moveBack1() {
if ((NS6||NS) && parseInt(ssm.left)>(-menuWidth) || IE && ssm.pixelLeft>(-menuWidth)) {
clearTimeout(moving);moving = setTimeout('moveBack1()', slideSpeed);slideMenu(-10)}
else {clearTimeout(moving);moving=setTimeout('null',1)}}
function slideMenu(num){
if (IE) {ssm.pixelLeft += num;}
if (NS||NS6) {ssm.left = parseInt(ssm.left)+num;}
if (NS) {bssm.clip.right+=num;bssm2.clip.right+=num;}}

function makeStatic() {
if (NS||NS6) {winY = window.pageYOffset;}
if (IE) {winY = document.body.scrollTop;}
if (NS6||IE||NS) {
if (winY!=lastY&&winY>YOffset-staticYOffset) {
smooth = .2 * (winY - lastY - YOffset + staticYOffset);}
else if (YOffset-staticYOffset+lastY>YOffset-staticYOffset) {
smooth = .2 * (winY - lastY - (YOffset-(YOffset-winY)));}
else {smooth=0}
if(smooth > 0) smooth = Math.ceil(smooth);
else smooth = Math.floor(smooth);
if (IE) bssm.pixelTop+=smooth;
if (NS6||NS) bssm.top=parseInt(bssm.top)+smooth
lastY = lastY+smooth;
setTimeout('makeStatic()', 1)}}

function buildBar() {
if(barText.indexOf('<IMG')>-1) {tempBar=barText}
else{for (b=0;b<barText.length;b++) {tempBar+=barText.charAt(b)+"<BR>"}}
document.write('<td align="center" rowspan="100" width="'+barWidth+'" bgcolor="'+barBGColor+'" valign="'+barVAlign+'"><p align="center"><font face="'+barFontFamily+'" Size="'+barFontSize+'" COLOR="'+barFontColor+'"><B>'+tempBar+'</B></font></p></TD>')}

function initSlide() {
if (NS6){
ssm=document.getElementById("thessm").style;
bssm=document.getElementById("basessm").style;
bssm.clip="rect(0 "+document.getElementById("thessm").offsetWidth+" "+document.getElementById("thessm").offsetHeight+" 0)";ssm.visibility="visible";
}else if (IE) {
ssm=document.all("thessm").style;
bssm=document.all("basessm").style;
bssm.clip="rect(0 "+thessm.offsetWidth+" "+thessm.offsetHeight+" 0)";bssm.visibility = "visible";
}else if (NS) {
bssm=document.layers["basessm1"];
bssm2=bssm.document.layers["basessm2"];ssm=bssm2.document.layers["thessm"];
bssm2.clip.left=0;ssm.visibility = "show";
}
if (menuIsStatic=="yes")
makeStatic();
}

function buildMenu() {
if (IE||NS6) {
document.write('<DIV ID="basessm" style="visibility:hidden;Position : Absolute ;Left : '+XOffset+' ;Top : '+YOffset+' ;Z-Index : 20;width:'+(menuWidth+barWidth+10)+'"><DIV ID="thessm" style="Position : Absolute ;Left : '+(-menuWidth)+' ;Top : 0 ;Z-Index : 20;" onmouseover="moveOut()" onmouseout="moveBack()">');
}
if (NS) {
document.write('<LAYER name="basessm1" top="'+YOffset+'" LEFT='+XOffset+' visibility="show"><ILAYER name="basessm2"><LAYER visibility="hide" name="thessm" bgcolor="'+menuBGColor+'" left="'+(-menuWidth)+'" onmouseover="moveOut()" onmouseout="moveBack()">');
}
if (NS6){
document.write('<table border="0" cellpadding="0" cellspacing="0" width="'+(menuWidth+barWidth+2)+'" bgcolor="'+menuBGColor+'"><TR><TD>');
}
document.write('<table border="0" cellpadding="0" cellspacing="1" width="'+(menuWidth+barWidth+2)+'" bgcolor="'+menuBGColor+'">');
for(i=0;i<ssmItems.length;i++) {
if(!ssmItems[i][3]){
ssmItems[i][3]=menuCols;
ssmItems[i][5]=menuWidth-1;
}else if(ssmItems[i][3]!=menuCols)
ssmItems[i][5]=Math.round(menuWidth*(ssmItems[i][3]/menuCols)-1);
if ( ssmItems[i-1] && ssmItems[i-1][4] != "no" ) {

document.write('<TR>');
}
if(!ssmItems[i][1]){
document.write('<td bgcolor="'+hdrBGColor+'" HEIGHT="'+hdrHeight+'" ALIGN="'+hdrAlign+'" VALIGN="'+hdrVAlign+'" WIDTH="'+ssmItems[i][5]+'" COLSPAN="'+ssmItems[i][3]+'"><font face="'+hdrFontFamily+'" Size="'+hdrFontSize+'" COLOR="'+hdrFontColor+'"> <b>'+ssmItems[i][0]+'</b></font></td>');
}else {
if(!ssmItems[i][2])
ssmItems[i][2]=linkTarget;
document.write('<TD BGCOLOR="'+linkBGColor+'" onmouseover="bgColor=\''+linkOverBGColor+'\'" onmouseout="bgColor=\''+linkBGColor+'\'" WIDTH="'+ssmItems[i][5]+'" COLSPAN="'+ssmItems[i][3]+'"><ILAYER><LAYER onmouseover="bgColor=\''+linkOverBGColor+'\'" onmouseout="bgColor=\''+linkBGColor+'\'" WIDTH="100%" ALIGN="'+linkAlign+'"><DIV  ALIGN="'+linkAlign+'"><FONT face="'+linkFontFamily+'" Size="'+linkFontSize+'"> <A HREF="'+ssmItems[i][1]+'" target="'+ssmItems[i][2]+'" CLASS="ssmItems">'+ssmItems[i][0]+'</DIV></LAYER></ILAYER></TD>');
}
if(ssmItems[i][4]!="no"&&barBuilt==0){
buildBar();
barBuilt=1;
}
if(ssmItems[i][4]!="no"){
document.write('</TR>');
}
}
document.write('</table>');
if (NS6){
document.write('</TD></TR></TABLE>');
}
if (IE||NS6) {
document.write('</DIV></DIV>');
}
if (NS) {
document.write('</LAYER></ILAYER></LAYER>');
}
theleft=-menuWidth;lastY=0;setTimeout('initSlide();', 1);
}


<!--



/*

Configure menu styles below

NOTE: To edit the link colors, go to the STYLE tags and edit the ssm2Items colors

*/



b=(screen.width==800&&screen.height==600);


if(b) YOffset=200;//0;
else YOffset=210;//10; // no quotes!!
XOffset=5;//0;
staticYOffset=200;//6; // no quotes!!
slideSpeed=10; // no quotes!!
waitTime=100; // no quotes!! this sets the time the menu stays out for after the mouse goes off it.
menuBGColor="RoyalBlue";
menuIsStatic="yes"; //this sets whether menu should stay static on the screen
if(b) menuWidth=160;
else menuWidth=180; // Must be a multiple of 10! no quotes!!
menuCols=2;
hdrFontFamily="verdana";
if(b) hdrFontSize="1";
else hdrFontSize="2";
hdrFontColor="Navy";
hdrBGColor="Orchid";
hdrAlign="center";
hdrVAlign="center";
hdrHeight="15";
linkFontFamily="Verdana";
if(b) linkFontSize="1";
else linkFontSize="2";
linkBGColor="white";
linkOverBGColor="SkyBlue";
linkTarget="_top";
linkAlign="Left";
barBGColor="BlueViolet";//"Sandybrown";
barFontFamily="Verdana";
if(b) barFontSize="1";
else barFontSize="2";
barFontColor="Navy";
barVAlign="center";
barWidth=25;//20; // no quotes!!
barText="Menu forum"; // <IMG> tag supported. Put exact html for an image to show.



///////////////////////////
// ssmItems[...]=[name, link, target, colspan, endrow?] - leave 'link' and 'target' blank to make a header

// ssmItems[0]=["Acceuil"] //create header

ssmItems[0]=["Reikirama.net le site web", "http://www.reikirama.net","_blank"]
ssmItems[1]=["Portail d'accueil", "http://www.reikirama.net/forum/index.php","_self"]
ssmItems[2]=["Haut de page", "http://www.reikirama.net/forum/index.php?action=forum","_self"]
ssmItems[3]=["Acceuil", "http://www.reikirama.net/forum/index.php?action=forum#9","_self"]
ssmItems[4]=["Reiki", "http://www.reikirama.net/forum/index.php?action=forum#3","_self"]
ssmItems[5]=["Reiki Usui", "http://www.reikirama.net/forum/index.php?action=forum#13","_self"]
ssmItems[6]=["Reiki Karuna&reg; / Reiki Karuna Ki", "http://www.reikirama.net/forum/index.php?action=forum#12", "_self"]
ssmItems[7]=["Reiki Kundalini", "http://www.reikirama.net/forum/index.php?action=forum#16","_self"]
ssmItems[8]=["Reiki LaHoChi", "http://www.reikirama.net/forum/index.php?action=forum#23","_self"]
ssmItems[9]=["Reiki OR", "http://www.reikirama.net/forum/index.php?action=forum#20","_self"]
ssmItems[10]=["Etoile d'Or Christique", "http://www.reikirama.net/forum/index.php?action=forum#21","_self"]
ssmItems[11]=["Shamballa", "http://www.reikirama.net/forum/index.php?action=forum#19","_self"]
ssmItems[12]=["Reiki du royaume des F&eacute;es", "http://www.reikirama.net/forum/index.php?action=forum#11","_self"]
ssmItems[13]=["Flamme violette-argent&eacute;e", "http://www.reikirama.net/forum/index.php?action=forum#17","_self"]
ssmItems[14]=["Flamme de protection psychique de Micha&euml;l", "http://www.reikirama.net/forum/index.php?action=forum#22","_self"]
ssmItems[15]=["Rayon d'abondance", "http://www.reikirama.net/forum/index.php?action=forum#14","_self"]
ssmItems[16]=["Marathon Reiki - Reiki &agrave; distance", "http://www.reikirama.net/forum/index.php?action=forum#8","_self"]
ssmItems[17]=["D&eacute;veloppement personnel", "http://www.reikirama.net/forum/index.php?action=forum#6","_self"]
ssmItems[18]=["Libre &eacute;change", "http://www.reikirama.net/forum/index.php?action=forum#7","_self"]

buildMenu();



//-->

Otsikko: Re: interaction entre forum et un menu ...
Kirjoitti: tsouliang - heinäkuu 29, 2009, 07:14:56 IP
Salut nexxuscorp :)

hum, c'est quoi les finos ??  :-\
Et oui j'utilise ImageOnBoard, mais j'imagineais simplement utiliser if ($board['new']) pour tester et après ... ben comment faire pour modifier un menu qui est écrit en js et appeler depuis le header ??
Mystère et boule de gomme .. est-ce seulement possible ?