Celcat XML Formatting

Formatage du XML avec CSS et Jquery pour supprimer les données inutiles, afficher uniquement les prochains événements à partir de la date et de l'heure actuelle.

by toubia95

HTML

<?xml version="1.0" encoding="iso-8859-1"?>
<?xml-stylesheet type="text/xsl" href="ttss.xsl"?>

<timetable>
<option combined="0" totalweeks="0" showemptydays="1" dayclass="alternation">
<link href="g21141.xml" class="xml">Imprimer</link>
<weeks>Semaines</weeks>
<dates>Dates</dates>
<week>Semaine</week>
<date>Date</date>
<all>Toutes les semaines</all>

<notes>Remarques</notes>
<id>ID</id>
<tag>Champs Libre</tag>
<footer>Publié le 02/12/2011 12:55:35 - INPL Nancy<br />Créé par
<a href="http://www.celcat.com" target="_parent">CELCAT Timetabler Web Publisher</a></footer>
<subheading>Emploi du temps Groupe - 1ère Année</subheading></option>
<property>
<member-of>
<title>Membre de</title></member-of>
<members>

<title>Groupes membres</title>
<item>Gr. 1A</item>
<item>Gr. 1B</item>
<item>Gr. 1C</item>
<item>Gr. 1D</item>
<item>Gr. 1E</item>
<item>Gr.1-1</item>
<item>Gr.1-2</item>
<item>Gr.1-3</item>

<item>Gr.1-4</item>
<item>Gr.1-5</item></members></property>
<span id="0" date="28/11/2011" rawix="16" rawlen="1">
<description>Sem 48, commençant le 28/11/2011</description>
<title>48</title>
<alleventweeks>NNNNNNNNNNNNNNNYNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN</alleventweeks>
<day id="0">
<name>lundi</name></day>
<day id="1">
<name>mardi</name></day>

<day id="2">
<name>mercredi</name></day>
<day id="3">
<name>jeudi</name></day>
<day id="4">
<name>vendredi</name></day></span>
<span id="1" date="05/12/2011" rawix="17" rawlen="1">
<description>Sem 49, commençant le 05/12/2011</description>
<title>49</title>
<alleventweeks>NNNNNNNNNNNNNNNNYNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN</alleventweeks>
<day id="0">

<name>lundi</name></day>
<day id="1">
<name>mardi</name></day>
<day id="2">
<name>mercredi</name></day>
<day id="3">
<name>jeudi</name></day>
<day id="4">
<name>vendredi</name></day></span>
<span id="2" date="12/12/2011" rawix="18" rawlen="1">
<description>Sem 50, commençant le...

CSS

body {
  font-family: 'Lucida Grande', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  padding: 30px;
  font-size: 12px;
}

event {
  display: block;
  background: #ddd;
  margin: 10px;
}
alleventweeks, rawweeks, property, 
subheading, option, description, name,
notes, prettytimes {
  display:none;
  }
  
resources {
  font-weight: bold;
  }
  
group {
  color: red;
  }
  
staff {
  color: green;
  }
  
module {
  color: blue;
  }
  
room {
  color: red;
  }

category {
  background:silver;
}

JavaScript

var seen = {};
$('event').each(function() {
    var txt = $(this).text();
    if (seen[txt]) {
        $(this).remove();
    }
    else {
        seen[txt] = true;
    }
});