EnguerrandP
Messages postés295Date d'inscriptionvendredi 26 avril 2013StatutMembreDernière intervention15 juillet 2015
-
15 avril 2014 à 13:20
EnguerrandP
Messages postés295Date d'inscriptionvendredi 26 avril 2013StatutMembreDernière intervention15 juillet 2015
-
15 avril 2014 à 13:51
Bonjour,
<script>
$(function()
{
$('#inlineDatepick').datepick
({onSelect:
function(dates)
{
var dateText = $.datepick.formatDate(dates[0]);
var dateArr = dateText.split("/");
var IDfromDateText= dateArr[2] + dateArr[0] + dateArr[1];
if ($("#myDiv_TJour_"+IDfromDateText).length > 0)
{
// Il existe... donc j'affiche le tableau
AffichDiv(IDfromDateText);
}
else
{
// L'element n'existe pas... je le crée ...
CreaTable(IDfromDateText,dates);
// ...puis j'affiche le tableau
AffichDiv(IDfromDateText);
}
}
});
});
function CreaTable(idJour,dates)
{
//Je crée un nouveau div pour le clone du tableau d'origine
$("#Zone_Tab").append("<div name='MesTBL' id='myDiv_" + "TJour_" + idJour + "'></div>");
//On crée un tableau pour le jour X
$("#myDiv_" +"TJour_" + idJour).append('<table border="2" id="TJour_' + idJour + '"></table>').css("border","2px inset #000000");
$("#TJour_" + idJour).append('<tr align="center" id="Row1_' + idJour + '"></tr>');
//On crée un Bouton New Line
$("#Row1_" + idJour).append('<td bgcolor="#F0FFFF">New Line</td>');
//On crée un Input pour la date
$("#Row1_" + idJour).append('<td bgcolor="#F0FFFF">Date</td>');
//On crée un Select pour la tache
$("#Row1_" + idJour).append('<td bgcolor="#F0FFFF" width="160px">Request</td>');
//On crée un Input pour le Temps
$("#Row1_" + idJour).append('<td bgcolor="#F0FFFF">Time (h)</td>');
//On crée une Zone de texte pour la description
$("#Row1_" + idJour).append('<td bgcolor="#F0FFFF">Description</td>');
//On crée un Select pour le travailleur
$("#Row1_" + idJour).append('<td bgcolor="#F0FFFF"width="170px">Worker</td>');
$("#TJour_" + idJour).append('<tr align="center" id="Row2_' + idJour + '"></tr>');
//On crée un Bouton New Line
$("#Row2_" + idJour).append('<td><input type="button" value="New" style="width: 100%;" onclick="CloneLine(this.parentNode.parentNode);" id="TNewLine_' + idJour + '"></input></td>');
//On crée un Input pour la date
$("#Row2_" + idJour).append('<td><input type="date" style="width: 100%;" id="TDate_' + idJour + '"></input></td>');
//On crée un Select pour la tache
$("#Row2_" + idJour).append('<td><?php
$sql = "SELECT caetbl_people.PeopleID, caetbl_people.LastName, caetbl_people.FirstName
FROM caetbl_people
INNER JOIN caetbl_GroupList
ON caetbl_GroupList.GroupID = caetbl_people.Group
WHERE caetbl_GroupList.Group_Name='C&EA'
ORDER BY caetbl_people.LastName;";
$result = mysql_query($sql)or die("Requete pas comprise");
echo "<select style=\"width: 100%;\" id=\"TSRequest_' + idJour + '\" name=\"Table_Worker\" >" ;
while ($row=mysql_fetch_assoc($result))
{
echo "<option value=\"". $row['LastName'] ." ". $row['FirstName'] ."\">". $row['LastName'] ." ". $row['FirstName'] ."</option>\n";
}
echo "</select></td></tr>\n
</form>\n";
?></td>');
//On crée un Input pour le Temps
$("#Row2_" + idJour).append('<td><input type="text" style="width: 100%;" id="TTime_' + idJour + '"></input>');
//On crée une Zone de texte pour la description
$("#Row2_" + idJour).append('<td><textarea rows="2" cols="25" style="resize: none;" id="TTADescription_' + idJour + '"></textarea></td>');
//On crée un Select pour le travailleur
$("#Row2_" + idJour).append('<td><select style="width: 100%;" onChange="saveValue(this)" id="TSWorker_' + idJour + '"></select></td>');
// On met la valeur de la date sélectionner dans l'input TDate+idJour
var dateText = $.datepick.formatDate(dates[0]);
$("#TDate_"+idJour).val(dateText);
}
function AffichDiv(idJour)
{
//On masque TOUS les tableaux
$('div[name="MesTBL"]').hide();
// On affiche celui que l'on a selectionné
$('#myDiv_' + "TJour_" + idJour).show();
}
function CloneLine(Line)
{
newLine = Line.cloneNode(true);
Line.parentNode.insertBefore(newLine,Line);
//Line.parentNode.appendChild(newLine);
}
</script>
Es ce que cette fonction JavaScript peut être transformer en une "Class" PHP me permettant :
- Vérifier si un tableau existe déjà :
->Si oui le mettre à jour, puis l'afficher
->Sinon, le crée, vérifier dans la BD le nombre de ligne pour cette journée, les crées puis les remplir.
(PS : Toute la partie remplissage des tableau a partir de la BD et en cour de réalisation)