github.com/benoitkugler/goacve@v0.0.0-20201217100549-151ce6e55dc8/server/directeurs/sanitize_test.go (about) 1 package directeurs 2 3 import ( 4 "fmt" 5 "io/ioutil" 6 "testing" 7 ) 8 9 func TestSanitize(t *testing.T) { 10 input := `<p><br></p> 11 <p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;">Adrien Grosdidier</span></p> 12 <p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;"> 13 40 rue du Pin de Barjac<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAACGSURBVFhH7ZJLCoAwEEN7CvGOHtjjaIMNjEProj9B8yBQynTyFg1CNHKkvIYEJCABCfxHYItZr+ONkgBm8aYLWISSPcZL5AQwg1ncd5GwC72EF3iabaK02AoMKye5AgoMLye+iAJTyomVsJlSTrzE1HJCiVfKyZLyXewna0k1uWU1EaJACCfwgm3rIS/X0AAAAABJRU5ErkJggg==" width="32" height="32" alt="" 14 data-mce-src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAACGSURBVFhH7ZJLCoAwEEN7CvGOHtjjaIMNjEProj9B8yBQynTyFg1CNHKkvIYEJCABCfxHYItZr+ONkgBm8aYLWISSPcZL5AQwg1ncd5GwC72EF3iabaK02AoMKye5AgoMLye+iAJTyomVsJlSTrzE1HJCiVfKyZLyXewna0k1uWU1EaJACCfwgm3rIS/X0AAAAABJRU5ErkJggg==" data-mce-selected="1"></span></p> 15 16 <p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;">07440 Alboussière</span></p> 17 <p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;">06 77 64 73 03</span></p> 18 19 <p><span style="color: #000080; font-family: arial, helvetica, sans-serif;" data-mce-style="color: #000080; font-family: arial, helvetica, sans-serif;"><u><a>adrien.grosdidier@laposte.net</a></u></span></p> 20 <p><br></p> 21 <p><br></p> 22 23 <p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;">Bonjour !</span></p> 24 <p><br></p> 25 <p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;"> 26 C'est avec joie que nous avons reçu ton inscription pour le camp Grand Bleu à La Cadière d’Azur, du dimanche 7 au mardi 16 juillet ! Nous sommes ravis de pouvoir vivre ces quelques jours de vacances avec toi.</span></p> 27 <p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;"> 28 Tu dois te poser (ainsi que tes parents...) pas mal de questions d'ordre pratique pour ce camp, alors voici quelques précisions.</span></p> 29 <p><br></p> 30 31 <p><span style="font-size: large; font-family: arial, helvetica, sans-serif;" data-mce-style="font-size: large; font-family: arial, helvetica, sans-serif;"><strong>NB : Ne pas répondre au centre d’inscription mais bien à adrien.grosdidier@laposte.net</strong></span></p> 32 <p><br></p> 33 34 <p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;"><strong>Quand et où ?</strong></span></p> 35 36 <ul><li><p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;">Arrivée le dimanche 7 juillet (entre 10h et 12h) en gare de Bandol ou sur place chez la famille Grosdidier (299 chemin de Naron, 83740 La Cadière d'Azur).</span></p> 37 38 </li></ul><p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;">Pour ceux qui viendraient du nord par train, nous aimerions que vous arriviez groupés par le TGV 6801 au départ de Valence TGV à 8h43, arrivée Marseille Saint-Charles avec une correspondance TER 81621 départ de Marseille Saint-Charles à 10h21 arrivée à Bandol à 11h13. Cela va vous permettre d’avoir un tarif de groupe intéressant et d’optimiser nos allers-retours à la réception. 39 Si ce n’était pas possible nous resterions toutefois ouverts à d’autres propositions.</span></p> 40 <ul><li><p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;">Départ le mardi 16 juillet (entre 9h et 11h00) en gare de Bandol ou sur place chez la famille Grosdidier.</span></p> 41 </li></ul> 42 <p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;">Pour ceux qui rentreraient vers le nord par train, nous aimerions que vous partiez de la gare de Bandol à 8h41 (désolé je n’ai pas eu d’autres choix judicieux, les adieux seront plus courts cette année) avec le TER 81610, correspondance à Marseille TGV 6814 à 9h46. Cela va vous permettre d’avoir un tarif de groupe intéressant et d’optimiser nos allers-retours à l’expédition. 43 Si ce n’était pas possible nous resterions toutefois ouverts à d’autres propositions.</span></p> 44 <p><br></p> 45 46 <p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;"> 47 <strong>Où dormirons-nous ?</strong></span></p> 48 <p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;"> 49 Nous logerons sous tente de 2 ou 3 personnes. Elle te sera fournie !</span></p> 50 <p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;">Nous avons spécialement aménagé une aire de dortoir plate et ombragée où tu pourras te reposer idéalement au son des cigales et ne surtout pas faire la fourmi…</span></p> 51 <p><br></p> 52 53 <p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;"><strong>Que ferons-nous ?</strong></span></p> 54 <p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;"> 55 Des activités nautiques : plage, voile, canoë, de plongée en club et découvertes des beautés de la région en mode randonneur. Nous t'avons réservé de belles surprises pour des grands jeux, des veillées ou encore des journées repos (ou pas)... Mais nous gardons la surprise !</span></p> 56 <p><br></p> 57 <p><br></p> 58 59 <p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;">Merci de nous fournir <span style="font-size: large;" data-mce-style="font-size: large;"><u><strong>avant le 10</strong></u></span><span style="color: #000000;" data-mce-style="color: #000000;"><span style="font-size: large;" data-mce-style="font-size: large;"><u><strong> juin</strong></u></span></span> 60 <span style="font-size: medium;" data-mce-style="font-size: medium;"> pour</span> la plongée et les activités nautiques:</span></p> 61 <p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;">- un certificat d’aisance aquatique le 25m qui se délivre en piscine municipale. 62 Une photo smartphone bien nette suffit amplement ( à envoyer par mail)</span></p> 63 64 <p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;">- une autorisation parentale signée autorisant à la pratique de la plongée sous-marine encadrée par le Club Azur Plongée à St Cyr sur mer</span></p> 65 66 <p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;">- un certificat médical stipulant que le docteur ne contre-indique pas la pratique de ce sport jusqu’à la profondeur de 12m</span></p> 67 68 <p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;">- merci de nous préciser aussi ton poids et ta taille</span></p> 69 <p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;">- si tu as déjà ton baptême de plongée, déjà fait un pack découverte 12 m ou un niveau 1.</span></p> 70 <p><br></p> 71 72 <p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;">Tous ces éléments nous permettront de mieux organiser les rotations de l’activité.</span></p> 73 <p style="text-align: center;" data-mce-style="text-align: center;"><span style="background-color: #f1c40f; font-size: 18pt; font-family: arial, helvetica, sans-serif;" data-mce-style="background-color: #f1c40f; font-size: 18pt; font-family: arial, helvetica, sans-serif;"> 74 <a style="background-color: #f1c40f;" href="http://free.fr" target="_blank" rel="noopener" data-mce-href="http://free.fr" data-mce-style="background-color: #f1c40f;"> ICI </a></span></p> 75 <p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;"><strong>Que faut-il amener ?</strong></span></p> 76 77 <ul><li><p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;">habits (2 pulls, 10 tee-shirts, 3 pantalons, 5 shorts et 10 sous-vêtements)</span></p> 78 </li><li><p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;">une gourde et un sac à dos</span></p> 79 </li><li><p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;">un bon k-way</span></p> 80 </li><li><p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;">une paire de basket</span></p> 81 </li><li><p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;">une paire de chaussures pouvant aller dans l'eau</span></p> 82 </li><li><p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;">une paire de chaussure multi sport pour quelques belles randos en perspective et divers crapahutes dans les pinèdes voisines</span></p> 83 </li><li><p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;">une casquette ou un bob</span></p> 84 </li><li><p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;">une paire de lunette de soleil</span></p> 85 </li><li><p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;">un ou deux maillots de bain</span></p> 86 </li><li><p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;">2 serviettes de bain</span></p> 87 </li><li><p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;">le nécessaire de toilette</span></p> 88 </li><li><p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;">une lampe de poche (avec des recharges de piles)</span></p> 89 </li><li><p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;">un bon sac de couchage</span></p> 90 </li><li><p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;">un matelas de sol gonflable (sinon nous te prêterons des carrés mats)</span></p> 91 </li><li><p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;">taie d’oreiller (nous te fournissons l’oreiller)</span></p> 92 </li><li><p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;">des jeux (si tu as des accessoires de jeux d'eau ou de société avec lesquels tu aimerais t'amuser)</span></p> 93 </li><li><p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;">masque tuba et palmes (si tu as)</span></p> 94 </li><li><p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;">ton sceau et ton râteau... Je blague !!</span></p> 95 </li><li><p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;">une Bible (si tu en possèdes une)</span></p> 96 </li><li><p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;">ha… et du spray pour la peau contre les moustiques car ça bombarde ! et de la crème solaire !</span></p> 97 </li><li><p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;">merci de prévoir une tenue un peu plus habillée (classe) pour une soirée 4 étoiles… Mais ne vient pas avec toute ta garde-robe et ta collection de belles chaussures non plus ;). On ne souhaite pas se prendre trop au sérieux durant ce séjour puisque l’on sera en mode camping et plage !</span></p> 98 </li></ul><p><br></p> 99 <p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;"><strong>Attention, il n'y aura pas de service de lingerie</strong>, si tu veux laver tes chaussettes, il faudra le faire à la main! Nous aurons des réserves de lessive.</span></p> 100 <p><br></p> 101 <p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;"><strong>!! Zone Blanche ou quasi !!</strong> : Un premier élément c’est que l’on ne capte que très peu et très mal là où nous serons. Ce n’est pas une ruse de notre part mais une vraie réalité. Ensuite, cela présente aussi des risques de casses, de vols ou de pertes dont nous ne porterons pas la responsabilité! Si tu en as malgré tout besoin, des périodes de temps libres réguliers seront établis pour téléphoner et/ou pour tes autres loisirs. Hors de ces plages horaires, les portables qui auront préférés malgré tout venir au séjour, seront conservés en sécurité par l’équipe afin de ne pas perturber le bon déroulement du camp et prévenir certains risques.</span></p> 102 <p><br></p> 103 <p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;"><strong>!! Le tabac c’est tabou on en viendra tous à bout !!</strong> Si tu es fumeur, nous aimerions le savoir avant le séjour afin d’organiser au mieux ton accueil et prendre en compte les risques d’incendie important dans le quartier. Aussi ces dix jours de colo peuvent aussi être pris comme une bonne occasion de sevrage avec le soutien des autres. C’est une opportunité.</span></p> 104 <p><br></p> 105 <p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;">Voilà, si tu as la moindre question, n'hésites pas à communiquer ave c nous via mail ou téléphone.</span></p> 106 <p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;">Nous nous réjouissons de mieux te connaître en vivant ce séjour ensemble. Nous te souhaitons une bonne fin d'année scolaire !</span></p> 107 <p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;">A très vite,</span></p> 108 <p><br></p> 109 <p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;">Adrien pour la direction,</span></p> 110 <p><span style="font-family: arial, helvetica, sans-serif;" data-mce-style="font-family: arial, helvetica, sans-serif;">Natacha, Alicia, Vivien, Camille, Clément, Lisa et Nicolas</span></p> 111 <p><br></p> 112 <p><br data-mce-bogus="1"></p> 113 <div id="mceResizeHandlenw" data-mce-bogus="all" class="mce-resizehandle" unselectable="true" data-mce-style="cursor: nw-resize; margin: 0px; padding: 0px; left: 178.153px; top: 86.6193px;" style="cursor: nw-resize; margin: 0px; padding: 0px; left: 178.153px; top: 86.6193px;"></div><div id="mceResizeHandlene" data-mce-bogus="all" class="mce-resizehandle" unselectable="true" data-mce-style="cursor: ne-resize; margin: 0px; padding: 0px; left: 210.142px; top: 86.6193px;" style="cursor: ne-resize; margin: 0px; padding: 0px; left: 210.142px; top: 86.6193px;"></div> 114 <div id="mceResizeHandlese" data-mce-bogus="all" class="mce-resizehandle" unselectable="true" data-mce-style="cursor: se-resize; margin: 0px; padding: 0px; left: 210.142px; top: 118.608px;" style="cursor: se-resize; margin: 0px; padding: 0px; left: 210.142px; top: 118.608px;"></div><div id="mceResizeHandlesw" data-mce-bogus="all" class="mce-resizehandle" unselectable="true" data-mce-style="cursor: sw-resize; margin: 0px; padding: 0px; left: 178.153px; top: 118.608px;" style="cursor: sw-resize; margin: 0px; padding: 0px; left: 178.153px; top: 118.608px;"></div>` 115 err := ioutil.WriteFile("../../local/test_sanitize.html", []byte(sanitizeHtml(input)), 0666) 116 if err != nil { 117 t.Fatal(err) 118 } 119 } 120 121 func TestLink(t *testing.T) { 122 input := `<a style="background-color: #f1c40f;" href="http://free.fr" target="_blank" rel="noopener" data-mce-href="http://free.fr" data-mce-style="background-color: #f1c40f;" data-mce-selected="inline-boundary"> ICI </a>` 123 fmt.Println(sanitizeHtml(input)) 124 } 125 126 func TestImage(t *testing.T) { 127 input := `<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAACGSURBVFhH7ZJLCoAwEEN7CvGOHtjjaIMNjEProj9B8yBQynTyFg1CNHKkvIYEJCABCfxHYItZr+ONkgBm8aYLWISSPcZL5AQwg1ncd5GwC72EF3iabaK02AoMKye5AgoMLye+iAJTyomVsJlSTrzE1HJCiVfKyZLyXewna0k1uWU1EaJACCfwgm3rIS/X0AAAAABJRU5ErkJggg==" width="32" height="32" alt="" 128 data-mce-src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAACGSURBVFhH7ZJLCoAwEEN7CvGOHtjjaIMNjEProj9B8yBQynTyFg1CNHKkvIYEJCABCfxHYItZr+ONkgBm8aYLWISSPcZL5AQwg1ncd5GwC72EF3iabaK02AoMKye5AgoMLye+iAJTyomVsJlSTrzE1HJCiVfKyZLyXewna0k1uWU1EaJACCfwgm3rIS/X0AAAAABJRU5ErkJggg==" data-mce-selected="1">` 129 fmt.Println(sanitizeHtml(input)) 130 } 131 132 func TestFont(t *testing.T) { 133 input := `<span style="color: #000080; font-family: georgia;" data-mce-style="color: #000080; font-family: arial, helvetica, sans-serif;"><u><a>adrien.grosdidier@laposte.net</a></u></span>` 134 fmt.Println(sanitizeHtml(input)) 135 }