X-Git-Url: https://git.cyclocoop.org/?a=blobdiff_plain;f=www%2Fplugins%2Fauto%2Fcouteau_suisse%2Fcouteau_suisse%2Foutils%2Fverstexte_fonctions.php;fp=www%2Fplugins%2Fauto%2Fcouteau_suisse%2Fcouteau_suisse%2Foutils%2Fverstexte_fonctions.php;h=2f543ffb1168c083d815d2a6f96b7ae80cf2f9d1;hb=80b4d3e85f78d402ed2e73f8f5d1bf4c19962eed;hp=0000000000000000000000000000000000000000;hpb=aaf970bf4cdaf76689ecc10609048e18d073820c;p=velocampus%2Fweb%2Fwww.git
diff --git a/www/plugins/auto/couteau_suisse/couteau_suisse/outils/verstexte_fonctions.php b/www/plugins/auto/couteau_suisse/couteau_suisse/outils/verstexte_fonctions.php
new file mode 100644
index 0000000..2f543ff
--- /dev/null
+++ b/www/plugins/auto/couteau_suisse/couteau_suisse/outils/verstexte_fonctions.php
@@ -0,0 +1,91 @@
+'&', '"'=>'"', '<'=>'<', '>'=>'>', 'è'=>'è', 'é'=>'é', 'à' => 'à') );
+
+ $cherche = array (
+/*a1*/ ',?h1[^>]*>,',
+/*a2*/ ',?h2[^>]*>,',
+/*a3*/ ',
]*>,',
+/*a3*/ ',
]*>,',
+/*01*/ '@@si', // Supprime le javascript
+/*02*/ '@@si', // Supprime les styles inline
+/*03*/ ",]*>,Uims", // les css
+/*04*/ ",]*alt=['\"]([^'\"]*)['\"][^>]*>,Uims", // les images
+/*05*/ ',(<(div|br|p)),i',
+/*06*/ '@<[\/\!]*?[^<>]*?'.'>@si', // Supprime les balises HTML
+/*07*/ '@([\r\n])[\s]+@', // Supprime les espaces
+/*08*/ ',[\r\n][_]{2},sm',
+/*09*/ '@&(quot|#34);@i', // Remplace les entites HTML
+/*10*/ '@&(amp|#38);@i',
+/*11*/ '@&(lt|#60);@i',
+/*12*/ '@&(gt|#62);@i',
+/*13*/ '@&(nbsp|#160);@i',
+/*14*/ '@&(iexcl|#161);@i',
+/*15*/ '@&(cent|#162);@i',
+/*16*/ '@&(pound|#163);@i',
+/*17*/ '@&(copy|#169);@i',
+/*18*/ '@’@i',
+/*19*/ '@(\d+);@e'
+ );
+
+ $remplace = array (
+/*a1*/ "\n__--------------------------------------------------------\n",
+/*a2*/ "\n__...........\n",
+/*a3*/ "\n__\n__+++",
+/*a3*/ "+++",
+/*01*/ '',
+/*02*/ '',
+/*03*/ '',
+/*04*/ '[\1]',
+/*05*/ "\n__\\1",
+/*06*/ '',
+/*07*/ '\1',
+/*08*/ "\n",
+/*09*/ '"',
+/*10*/ '&',
+/*11*/ '<',
+/*12*/ '>',
+/*13*/ ' ',
+/*14*/ chr(161),
+/*15*/ chr(162),
+/*16*/ chr(163),
+/*17*/ chr(169),
+/*18*/ "'",
+/*19*/ 'chr(\1)' // Evaluation comme PHP
+ );
+
+ $texte = preg_replace($cherche, $remplace, $texte);
+ return $texte;
+}
+
+// filtre qui extrait le contenu texte d'une page html, a l'exclusion de quelques balises elementaires
+function version_texte($texte){
+ $texte = charset2unicode($texte);
+
+ // accentuer le texte avant de suprimer les tags
+ $texte = strtr($texte, array('&'=>'&', '"'=>'"', '<'=>'<', '>'=>'>', 'è'=>'è', 'é'=>'é', 'à' => 'à') );
+
+ $cherche = array (
+/*01*/ '@@si', // Supprime le javascript
+/*02*/ '@@si', // Supprime les styles inline
+/*03*/ ",]*>,Uims", // les css
+/*04*/ ",]*alt=['\"]([^'\"]*)['\"][^>]*>,Uims", // les images
+ );
+
+ $remplace = array (
+/*01*/ '',
+/*02*/ '',
+/*03*/ '',
+/*04*/ '[\1]',
+ );
+
+ // voir : TODO.txt
+
+ $texte = preg_replace($cherche, $remplace, $texte);
+ return $texte;
+}
+?>
\ No newline at end of file