begin process at 2012 05 27 19:41:32
  Trouver un code source :
 
dans
 
Accueil > Forum > 

ASP.NET

 > 

WebForms

 > 

UserControl

 > 

Control utilisateur


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Control utilisateur

jeudi 26 octobre 2006 à 18:55:06 | Control utilisateur

gatita_dev

Bonjour tout le mode,
j'ai un petit problème avec un control utilisateur que lui même contient un autre contrôl utilisateur.
le premier contient de control web textbox et button, le problème c'est quand j'execute je trouve que mes textbox ne s'execute pas en tant que contrôle serveur mais comme un simple "input" du HTML.  ce qui rend les traitement sur le serveur impossible.
quelqu'un à une idée pour resoudre ce problème, ça me rend malade.
merci d'avance
samedi 28 octobre 2006 à 01:53:04 | Re : Control utilisateur

jesusonline

Membre Club Administrateur CodeS-SourceS
Bonsoir,

on peut avoir un peu plus de détails ? un exemple de source, car la je ne vois pas trés bien quel est le problème.


Cyril - MVS - MCP
lundi 30 octobre 2006 à 10:03:40 | Re : Control utilisateur

gatita_dev

bonjour merci pour ta réponse,
en faite j'ai un contrôl utilisateur qui est un editeur html qui n'utilise que du javascript ce qui fait qu'on doit toujours ajouter l'élément <body> dans le contrôlet je pense que c'est là le problème.
dans tous les cas je pense que c'est un problème de javascript et j'ai essayé de changé de methode mais si tu veux toujours essayer je t'envoi les codes.
bonne journée

lundi 30 octobre 2006 à 13:55:17 | Re : Control utilisateur

jesusonline

Membre Club Administrateur CodeS-SourceS
Je ne comprend toujours pas ce que tu essayes de faire, j'aimerais bien un peu plus de détails :-/


Cyril - MVS - MCP
lundi 30 octobre 2006 à 16:41:13 | Re : Control utilisateur

gatita_dev

voila j'essaye de faire un site qui publie des pages pour des utilisateurs et si on se connecte en tant qu'administrateur

on a droit à gérer les utilisateurs et les pages publier.

Mon probléme se situe sur la page ajoutsNews qui nous permet de créer un article d'actualité d'envoyer toute les info le concernant sur la base de données et d'ajouter une page html sur la racine du site pour la publier.

jusqu'ici j'espére que je m'explique bien.

j'ai créer un cntrol utilisateur qui est un editeur html trouvé sur le site www.javascriptfr.com voilà le code:



editeur.ascx

<%@ Control Language="vb" AutoEventWireup="false" Codebehind="_editeur.ascx.vb" Inherits="site_admin1.__editeur" TargetSchema=" http://schemas.microsoft.com/intellisense/ie5 " %>
<LINK href="wysiwyg.css" type="text/css" rel="stylesheet">
<!--------------------------------------------------------------------->
Public Property article() As String
        Get
            article = Me.saisie.innerhtml
        End Get
        Set(ByVal Value As String)
            Me.saisie.innerhtml = Value
        End Set
    End Property

</script>
<SCRIPT src="wysiwyg.js" type="Text/JavaScript">
  </SCRIPT>

 <table id="TABLE1" height="76" border="1">
  <tr>
   <td width="144" colSpan="5">
<!~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~>
<select id="selfnt" style="WIDTH: 136px; BACKGROUND-COLOR: #ddddee" onchange="FontChx(this);"
     size="1">
     <optgroup label="Police">
      <option selected>Arial</option>
      <option>Comic sans MS</option>
      <option>Courier</option>
      <option>Courier New</option>
      <option>Fixedsys</option>
      <option>Garamond</option>
      <option>Georgia</option>
      <option>Lucida Console</option>
      <option>MS Sans Serif</option>
      <option>MS Serif</option>
      <option>Time</option>
      <option>Verdana</option>
     </optgroup></select></td>
   <!~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~>
   <td width="61" colSpan="3"><select id="seltai" style="BACKGROUND-COLOR: #ddddee" onchange="TailChx(this);" size="1">
     <optgroup label="Taille">
      <option selected>1</option>
      <option>2</option>
      <option>3</option>
      <option>4</option>
      <option>5</option>
      <option>6</option>
      <option
>7</option>
     </optgroup></select></td>
   <!~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~>
   <td><input id="Image5" title="Gras" onclick="btn1(this);return false;" type="image" src="
images\bold.gif "
     name="Image5"></td>
   <td><input title="Italique" onclick="btn1(this);return false" type="image" src="
images\Italic.gif"></td >
   <td><input title="Souligné" onclick="btn1(this);return false;" type="image" src="
\images\underline.gif"></td >
   <td><input title="Rayé" onclick="btn1(this);return false;" type="image" src="
\images\strikethrough.gif"></td >
   <td><input title="Indices" onclick="btn1(this);return false;" type="image" src="
\images\subscript.gif"></td >
   <td><input title="Exposants" onclick="btn1(this);return false;" type="image" src="
\images\superscript.gif"></td >
 
   <td><input title="Justifié à Gauche" onclick="btn1(this);return false;" type="image" src="
images\justifyleft.gif ">
   </td>
   <td height="15"><input title="Justifié à Droite" onclick="btn1(this);return false;" type="image" src="
images\justifycenter.gif ">
   </td>
   <td height="15"><input title="Centré" onclick="btn1(this);return false;" type="image" src="
\images\justifyright.gif ">
   </td>
   <td width="15" height="15"><input title="Liste numérotée" onclick="btn1(this);return false;" type="image" src="
\images\InsertOrderedList.gif ">
   </td>
   <td height="15"><input title="Liste à puces" onclick="btn1(this);return false;" type="image" src="
\images\InsertUnorderedList.gif ">
   </td>
   <td height="15"><input title="décaler à Gauche" onclick="btn1(this);return false;" type="image" src="
\images\outdent.gif ">
   </td>
   <td width="9" height="15"><input title="décaler à Droite" onclick="btn1(this);return false;" type="image" src="
images\indent.gif ">
   </td>
  </tr>
  <!------------------/TR------------------>
  <!------------------TR------------------>
  <tr>
   <div id="SiIe" style="DISPLAY: none"></div>
   <td width="16"><INPUT title="Copier" onclick="btn1(this);return false;" type="image" src="
images\copy.gif ">
   </td>
   <td width="17"><INPUT title="Couper" onclick="btn1(this);return false;" type="image" src="
images\cut.gif ">
   </td>
   <td width="25"><INPUT title="Coller" onclick="btn1(this,'false','');return false;" type="image" src="
\images\paste.gif ">
   </td>
   <td><INPUT id="save" title="Sauver" onclick="btn1(this,'false','*.html.html');return false;"
     type="image" src="
images\SaveAs.gif ">
   </td>
   <td><INPUT title="Imprimer" onclick="btn1(this,'false','');return false;" type="image" src="images\Print.gif">
   </td>
   <td><INPUT title="Insérer un ligne horizontale" onclick="btn1(this);return false;" type="image"
     src="
images\InsertHorizontalRule.gif ">
   </td>
   <td><INPUT title="Créer Lien" onclick="btn1(this,'false','');return false;" type="image" src="
images\createlink.gif ">
   </td>
   <td><INPUT title="supprimer les Liens" onclick="btn1(this);return false;" type="image" src="
images\UnLink.gif ">
   </td>
   <td><INPUT title="Image" onclick="btn1(this,'false','');return false;" type="image" src="
images\insertimage.gif"></td >
   <td height="15"><input id="Image1" title="Effacer" onclick="btn1(this);return false;" type="image" src="
images\removeformat.gif "
     name="Image1">
   </td>
   <td height="15"><input id="Image2" title="Annule actions" onclick="btn1(this);return false;" type="image"
     src="
images\Undo.gif " name="Image2">
   </td>
   <td height="15"><input id="Image3" title="refaire l'action" onclick="btn1(this);return false;" type="image"
     src="
images\Redo.gif " name="Image3">
   </td>
   <td height="15"><input id="imgSelectAll" title="tout sélectionner" onclick="btn1(this);return false;" type="image"
     src="
images\selectall.gif " name="imgSelectAll">
   </td>
   <td height="15"><input id="Image4" title="voir le code HTML" onclick="Voir(this);return false;" type="image"
     src="
fiimages\mode.html.gif " name="Image4">
   </td>
  </tr>
  <!------------------/TR------------------>
  <!------------------TR------------------>
  <!------------------/TR------------------>
  <tr>
   <td colSpan="23">
    <div id="div_saisie"><iframe id="Saisie" style="BORDER-RIGHT: #000000 1px solid; BORDER-TOP: #000000 1px solid; FONT-SIZE: 12px; Z-INDEX: 100; LEFT: 5px; OVERFLOW: auto; BORDER-LEFT: #000000 1px solid; WIDTH: 648px; COLOR: rgb(64,0,64); BORDER-BOTTOM: #000000 1px solid; FONT-FAMILY: Verdana; HEIGHT: 288px; BACKGROUND-COLOR: rgb(221,221,238)"
      name="Saisie" runat=server></iframe>
    </div>
   </td>
  </tr>
  <tr>
   <td colSpan="23">
    <div id="div_txt" style="DISPLAY: none"><TEXTAREA id="txt" style="BORDER-RIGHT: gray 1px inset; BORDER-TOP: gray 1px inset; FONT-SIZE: 12px; Z-INDEX: 101; LEFT: 5px; OVERFLOW: auto; BORDER-LEFT: gray 1px inset; WIDTH: 648px; COLOR: #400040; BORDER-BOTTOM: gray 1px inset; HEIGHT: 288px; BACKGROUND-COLOR: #c0c0c0; font-name: Verdana"
      name="txt" rows="19" cols="78"></TEXTAREA></div>
   </td>
  </tr>
 </table>



Fichier Javascript  " editeur.js
var

Champ,Fen,hor,ver; // Variables globales
function PosSouris(ev) //-- note position souris --
//---------------------------
{ switch (navigator.appName) {
// ===========================
case "Microsoft Internet Explorer":
// ===========================
hor= event .x;
ver=
event .y;
break ;
// =====
default : // sinon
// =====
hor=ev.pageX;
ver=ev.pageY;
break ; } }
//------------------------
function FontChx(sel) //-- police, nom --
//-------------------------
{alert(sel);
Champ.execCommand("FontName",
false , sel[sel.selectedIndex].text);
alert(sel[sel.selectedIndex].text);
Fen.focus();
}
//----------------------------
function TailChx(sel) //-- police, taille --
//---------------------------
{ Champ.execCommand("FontSize", false , sel[sel.selectedIndex].text);
Fen.focus();
}
//--------------------------
function btn1(bou,p2,p3) //-- bouton --
//--------------------------
{ p2 = p2 ? p2 : false ; // valeurs par défaut
p3 = p3 ? p3 : null ;
Champ.execCommand(bou.src.substring(bou.src.lastIndexOf("/")+1,
bou.src.lastIndexOf(".")),p2,p3);
Fen.focus(); }
//------------------------
function Voir(btn) //-- bascule html/Editeur --
//-----------------------
{ var tmp=document.getElementById("txt");
if (tmp.style.display=="none")
{ tmp.style.display="inline";
btn.title="Revoir la page";
tmp.value=Champ.body.innerHTML;
}
else { tmp.style.display="none";
btn.title="Voir le Code HTML";
Champ.body.innerHTML=tmp.value;
} }
//------------------------
function initial() //-- Initialisation --
//----------------------
{ switch (navigator.appName) {
// ===========================
case "Microsoft Internet Explorer":
// ===========================
Fen=window.frames['Saisie'];
Champ=Fen.document;
document.getElementById('SiIe').style.display="inline";
break ;
// ====
default : // sinon
// =====
Champ=document.getElementById('Saisie').contentDocument;
Fen=document.getElementById('Saisie').contentWindow;
document.captureEvents(Event.MOUSEMOVE);

break
; }
var t1=document.getElementById("selfnt");
for ( var n=0;n<t1.length;n++ ) // pointer la police utilisée
{ if ( t1[n].text=="Verdana" )
{ t1.selectedIndex=n;
n=t1.length; } }
t1=document.getElementById("seltai");
t1.selectedIndex=2;
Champ.designMode='On';
// iframe modifiable
Fen.focus();
document.onmousemove = PosSouris; }


et j'ai un cntrole utilisateur qui contient des champs de texte pour ajouter les infos sur la base de données et contient le control utilisateur Editeur.ascx, voilà le code
_ajout_news.ascx
<%@import namespace="system.data.oledb"%>
<%@ Control Language="vb" AutoEventWireup="false" Codebehind="_ajout_news.ascx.vb" Inherits="site_admin1.__ajout_news" TargetSchema="
http://schemas.microsoft.com/intellisense/ie5
" %>
<%@ Register TagPrefix="aspUC" TagName="editeur" Src="_editeur.ascx" %>
<script language="vb" runat="server">
  public Sub insert(ByVal vtitre As String, ByVal vauteur As String, ByVal vsource As String, ByVal vtype As String, ByVal vlocalisation As String, ByVal vdate As Date, ByVal vchemin As String, ByVal vdescription As String)
       Dim strsql, strcnx As String
       Dim cmd As OleDbCommand
       Dim cnx As OleDbConnection
       strcnx = System.Configuration.ConfigurationSettings.AppSettings("CONNECTION_STRING_cnx")
       cnx = New OleDbConnection(strcnx)
       cnx.Open()
       strsql = "insert into news (titre,auteur,source,type,localisation,date_création,chemin,description) values (@vtitre,@vauteur,@vsource,@vtype,@vlocalisation,@vdate,@vchemin,@vdescription)"
       cmd = New OleDbCommand(strsql, cnx)
       'paramétre titre
       Dim ptitre As OleDbParameter = New OleDbParameter("@vtitre", OleDbType.VarChar, 15)
       ptitre.Value = vtitre
       cmd.Parameters.Add(ptitre)
       'paramétre auteur
       Dim pauteur As OleDbParameter = New OleDbParameter("@vauteur", OleDbType.VarChar, 30)
       pauteur.Value = vauteur
       cmd.Parameters.Add(pauteur)
       'paramétre source
       Dim psource As OleDbParameter = New OleDbParameter("@vsource", OleDbType.VarChar, 30)
       psource.Value = vsource
       cmd.Parameters.Add(psource)
       'paramétre type
       Dim ptype As OleDbParameter = New OleDbParameter("@vtype", OleDbType.VarChar, 15)
       ptype.Value = vtype
       cmd.Parameters.Add(ptype)
       'paramétre localisation
       Dim plocalisation As OleDbParameter = New OleDbParameter("@vlocalisation", OleDbType.VarChar, 30)
       plocalisation.Value = vlocalisation
       cmd.Parameters.Add(plocalisation)
       'paramétre date
       Dim pdate As OleDbParameter = New OleDbParameter("@vdate", OleDbType.VarChar, 30)
       pdate.Value = vdate
       cmd.Parameters.Add(pdate)
       'paramétre chemin
       Dim pchemin As OleDbParameter = New OleDbParameter("@vchemin", OleDbType.VarChar, 30)
       pchemin.Value = vchemin
       cmd.Parameters.Add(pchemin)
       'paramétre description
       Dim pdescription As OleDbParameter = New OleDbParameter("@vdescription", OleDbType.VarChar, 30)
       pdescription.Value = vdescription
       cmd.Parameters.Add(pdescription)
       Try
           cmd.ExecuteNonQuery()
       Catch ex As Exception
           Throw ex
       End Try

       cnx.Close()
   End Sub
Private Sub ChargeFichier(ByVal contenu As String, ByVal filename As String, ByVal Repertoire As String)
       Dim LeCheminFichier As String
       Dim Lefichier As System.IO.FileStream
       Dim MonWriter As System.IO.StreamWriter
 LeCheminFichier = Server.MapPath(Repertoire) & filename
       Lefichier = System.IO.File.Create(Server.MapPath("./mes pages/") & filename)
       MonWriter = New System.IO.StreamWriter(Lefichier)
       MonWriter.Write(contenu)
       MonWriter.Close()
End Sub
 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)

       insert(me.textbox1.text, me.textbox2.text, me.textbox3.text, me.dropdownlist1.selectedvalue,me.dropdownlist2.selectedvalue, Now, Server.MapPath("mes pages"), me.textarea1.value)
     ' ChargeFichier("<html><head><title>" & me.textbox1.text & "</title></head><body>" &editeur1.article & "</body></html>", me.textbox4.text & ".html", "mes pages")
    End Sub
</script>
<TABLE id="Table1" style="WIDTH: 728px; HEIGHT: 408px" cellSpacing="1" cellPadding="1"
 width="728" border="1">
 <TR>
  <TD>Ajouter Actualités</TD>
 </TR>
 <TR>
  <TD>
   <TABLE id="Table2">
    <TR>
     <TD style="WIDTH: 107px; HEIGHT: 20px"><asp:label id="Label1" runat="server">Type</asp:label></TD>
     <TD style="HEIGHT: 20px"><asp:dropdownlist id="DropDownList1" runat="server" Width="144px">
       <asp:ListItem Value="--S&#233;lectionner--">--S&#233;lectionner--</asp:ListItem>
       <asp:ListItem Value="Economie">Economie</asp:ListItem>
       <asp:ListItem Value="Politique">Politique</asp:ListItem>
       <asp:ListItem Value="Sciences &amp; Technologies">Sciences &amp; Technologie</asp:ListItem>
       <asp:ListItem Value="Arts &amp; Culture">Arts &amp; Culture</asp:ListItem>
      </asp:dropdownlist></TD>
    </TR>
    <TR>
     <TD style="WIDTH: 107px; HEIGHT: 18px"><asp:label id="Label2" runat="server">Localisation</asp:label></TD>
     <TD style="HEIGHT: 18px"><asp:dropdownlist id="Dropdownlist2" runat="server" Width="144px">
       <asp:ListItem Value="">--S&#233;lectionner--</asp:ListItem>
       <asp:ListItem Value="Maroc">Maroc</asp:ListItem>
       <asp:ListItem Value="Monde">Monde</asp:ListItem>
      </asp:dropdownlist></TD>
    </TR>
    <TR>
     <TD style="WIDTH: 107px"><asp:label id="Label3" runat="server">Titre</asp:label></TD>
     <TD><asp:textbox id="TextBox1" runat="server" Width="320px" TextMode="MultiLine"></asp:textbox></TD>
    </TR>
    <TR>
     <TD style="WIDTH: 107px"><asp:label id="Label4" runat="server">L'auteur</asp:label></TD>
     <TD><asp:textbox id="TextBox2" runat="server"></asp:textbox></TD>
    </TR>
    <TR>
     <TD style="WIDTH: 107px"><asp:label id="Label5" runat="server">La source</asp:label></TD>
     <TD><asp:textbox id="TextBox3" runat="server"></asp:textbox></TD>
    </TR>
    <TR>
     <TD style="WIDTH: 107px"><asp:label id="Label6" runat="server">Nom du fichier</asp:label></TD>
     <TD><asp:textbox id="Textbox4" runat="server"></asp:textbox></TD>
    </TR>
   </TABLE>
  </TD>
 </TR>
 <TR>
  <TD>&nbsp;Description de l'article:</TD>
 </TR>
 <TR>
  <TD><TEXTAREA id="TEXTAREA1" style="OVERFLOW: auto; WIDTH: 712px; HEIGHT: 120px" name="TEXTAREA1"
    rows="7" cols="86" runat="server"></TEXTAREA>
  </TD>
 </TR>
 <tr>
  <td><aspuc:editeur runat="server" id="Editeur1"></aspuc:editeur></td>
 </tr>
 <tr>
  <td>
   <asp:Button id="Button1" runat="server" Text="enregistrer"></asp:Button></td>
 </tr>
</TABLE>


Et sur la page de test on met 
test.aspx
<%@ import namespace="system.data.oledb"%>
<%@ Register TagPrefix="aspUC" TagName="ajoutnews" Src="_ajout_news.ascx" %>
<%@ Page Language="vb" AutoEventWireup="false" Codebehind="test.aspx.vb" Inherits="site_admin1.test"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
 <HEAD>
  <title>test</title>

  <script src="wysiwyg.js" type="text/javascript">
  </script>
  
 </HEAD>
 <body onload="initial();">
  <form id="Form1" method="post" runat="server">
   <aspuc:ajoutnews id="ajoutnews1" runat="server"></aspuc:ajoutnews></form>
 </body>
</HTML>


J'espére que je me suis bien expliquer.
s'il y a une autre façon de faire se site j'espére bien avoir votre avis
Merci beaucoup


lundi 30 octobre 2006 à 17:46:59 | Re : Control utilisateur

jesusonline

Membre Club Administrateur CodeS-SourceS
c'est normal que dans le fichier editeur.ascx il manque une balise <script runat="server" ?

Commencons par le plus simple : si tu remplaces ta textbox avancé par une classique textbox qui manipule du HTML ca fonctionne ? c'est à dire à la place de <td><aspuc:editeur runat="server" id="Editeur1"></aspuc:editeur></td> d'avoir <td><asp:textbox id="tb1" runat="server" /></td> ? si le comportement est logique cela vient peut etre de la textbox avancé, je te conseille d'utiliser la Freetextbox (ce dans quoi j'écris) qui est concu pour asp.net :) www.freetextbox.com




Cyril - MVS - MCP
lundi 30 octobre 2006 à 18:45:59 | Re : Control utilisateur

gatita_dev

bof ce que je fais n'est pas tout à fait professionnel il m'est demandé de le réaliser avec un editeur simple.
je vois pas bien ce que t'a voulu dire par changé le textbox avancé par un textbox classique.
tu peux t'expliquer une peu plus?
Merci



Cette discussion est classée dans : problème, textbox, utilisateur, control, contient


Répondre à ce message

Sujets en rapport avec ce message

Problème de postback avec un usercontrol dans une masterpage [ par vincenzo_id ] Bonjour,Dans une page .aspx j'utilise un control qui permet à l'utilisateur de saisir du text enrichi (gras, souligné,...)Ce control dispose d'un icon problème de session et d'authentification [ par tortuegenie ] Voilà, mon problème, je passe par l'authentification par forms pour rentrer sur un intranet, les données étant sur SQl Server 2005.Je me connecte avec Problème envoie email [ par hugo7 ] Bonjour voila mon problème : J'ai une page ou l'utilisateur peut donner son avis sur le site , pour cela il marque son avis dans une textbox et l'envo Problème Authentification forms [ par Mayzz ] Bonjour à tous ! Voila je reviens avec un petit problème d'application asp.net. J'ai donc un site avec une gestion des utilisateur classique utilisa CompositControl [ par eryver ] Bonjour,J'ai créé un compositControle qui contient une textbox et un bouton.Jusque la tout va bien.Je voudrais pouvoir lier la propriété javascript va dropdownlist et textbox [ par dufoli ] Bonjour,je sais pas trop si je suis dans la bonne partie du forum, mais je viens poser une question sur un control web que je recherche.En fait j'aura Problème C# [ par adressprov ] Voila je suis un débutant en C#, ASP.Net et je dois réaliser une application Web. Au début l'utilisateur va devoir s'identifier, une fois identifier atteintre toutes les textBox d'un FormView [ par SuperBouly ] bonjour, Je travaille sur VS2005 et asp.net 2.0 (vb)je veux attribuer à chaque controle d'un formview un petit javascript "onfocus"Mais ma sub, en asp problème d'appel d'une procédure de mon usercontrol [ par Kyoto ] Hello tout le monde!J'aimerai appeler une procedure de mon usercontrol, donc pour celà je fais comme ça :<PAR Effacer contenu textbox en cours [ par Jojo092 ] Bonjour à tous,j'ai un petit problème, comme vous pouvez vous en doutez, sinon je ne serais pas ici.... Bref, ce problème est tout bête je pense, mais


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,858 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales