par
jeff » 22 déc. 2005, 14:32
tout le code
c'est a dire parceque ma premiere fonction fait appel a ajax bon aller
pourquoi pas ca va etre long
deja le fichier template
Code : Tout sélectionner
<p id="etat"></p>
<form action="#" method="POST" name="frm" id='frm'>
<fieldset><legend>administration des comptes</legend>
<div>
<div>
<label>administrateur produit<img src="template/templates/admin/img/info.gif" alt="info" title="info" onclick='display("ad_prod","getGroupData")'/></label>
{mySelect label=$ad_prod valeur='user' id="ad_prod" size="10" }
</div>
<div>
<img src="template/templates/admin/img/leftrow.jpg" class="left" onclick="moveField('ad_comm','ad_prod');"/>
<img src="template/templates/admin/img/rightrow.jpg" class="right" onclick="moveField('ad_prod','ad_comm');"/>
</div>
<div>
<label>administrateur formation<img src="template/templates/admin/img/info.gif" alt="info" title="info" onclick='display("ad_comm","getGroupData")'/></label>
{mySelect label=$ad_comm valeur='user' id="ad_comm" size="10" }
</div>
</fieldset>
<fieldset>
<legend>utilisatuer</legend>
<dd>
<dl><label for="login">login:</label><input id="login" type="text" name="login" value=""/></dl>
<dl><label for="groupe">groupe:</label><select name="groupe" id="groupe">
<option value="">ad_prod</option>
<option value="">ad_comm</option>
</select></dl>
<dl><label for="email">email:</label><input id="email" type="text" name="email" value=""/></dl>
<input type="image" name="send" onclick="verifData()"/>
</dd>
</fieldset>
</form>
<div id="info">
</div>
les fonctions javascript
la fonction formRadio qui pren en parametre le fichier xml, ce fichier
va etre transformer pour l'affichage HTML
l'aafichege ce fait sous forme de tableau avec a la fin des boutons radio pour dire si l'action est permise ou non
function formRadio(xml,args)
{
var buffer=''
buffer+='<h2>'+xml.getElementsByTagName('groupe')[0].firstChild.nodeValue+'</h2>';
buffer+='<a onclick="hidden();">fermer</a>';
buffer+='<form action="" method="POST" id="frm1"/>';
buffer+='<table><th>module</th><th>action</th><th>allowed</th><th>denied</th>';
var node = xml.getElementsByTagName('module');
for(i=0;i<node.length;i++){
if(node[i].nodeName != "#text" && node[i].hasAttributes()){
buffer+='<tr style="background-color:';
if(node[i].getAttribute('auth')=="1"){
buffer+='green">';
}else{
buffer+='red">';
}
buffer+='<td>'+node[i].getAttribute('module')+'</td>';
buffer+='<td>'+node[i].getAttribute('action')+'</td>';
if(node[i].getAttribute('auth')==1){
window.id="radio"+node[i].getAttribute('name');
buffer+='<td><input id="'+id+'" "type="radio" name="'+node[i].getAttribute('name')+'" value="" checked="checked" onclick="Apermit(window.id);"/></td>';
buffer+='<td><input id="'+id+'" type="radio" name="'+node[i].getAttribute('name')+'" value="" onclick="Apermit(window.id);"/></td>';
}else{
buffer+='<td><input id="'+id+'" type="radio" name="'+node[i].getAttribute('name')+'" value="" onclick="Apermit(window.id);"/></td>';
buffer+='<td><input id="'+id+'" type="radio" name="'+node[i].getAttribute('name')+'" value="" checked="checked" onclick="Apermit(window.id);"/></td>';
}
}
buffer+='</tr>';
}
buffer+='</table></form>';
document.getElementById(args[0]).innerHTML=buffer;
}
mais bouton radion font appel a un fonction Apermit celle ci prend en parametre l'id du bouton modifier(

je viens de me rendre compte quesur une meme ligne mes bouton aurons le meme id)
en fait on arrive a un autre probleme comment distinguer si on permet ou non une action (peut etre qu'une case a cocher serait finalement plus adapter)
function Apermit(id){
alert(id);
//alert(document.getElementById(id).hasAttributes());
de mon cote je vais reflechir au checbox
question subsidiare avec vous des ressource sur la modification de l'apparence de tel bouton
merci pour tout
