@@ -14,154 +14,154 @@ |
||
| 14 | 14 | |
| 15 | 15 | abstract class AbstractCollecteur { |
| 16 | 16 | |
| 17 | - protected static string $markPrefix = 'COLLECT'; |
|
| 18 | - protected string $markId; |
|
| 19 | - |
|
| 20 | - /** |
|
| 21 | - * Collecteur générique des occurences d'une preg dans un texte avec leurs positions et longueur |
|
| 22 | - * @param string $texte |
|
| 23 | - * texte à analyser pour la collecte |
|
| 24 | - * @param string $if_chars |
|
| 25 | - * caractere(s) à tester avant de tenter la preg |
|
| 26 | - * @param string $start_with |
|
| 27 | - * caractere(s) par lesquels commencent l'expression recherchée (permet de démarrer la preg à la prochaine occurence de cette chaine) |
|
| 28 | - * @param string $preg |
|
| 29 | - * preg utilisée pour la collecte |
|
| 30 | - * @param int $max_items |
|
| 31 | - * pour limiter le nombre de preg collectée (pour la detection simple de présence par exemple) |
|
| 32 | - * @return array |
|
| 33 | - */ |
|
| 34 | - protected static function collecteur(string $texte, string $if_chars, string $start_with, string $preg, int $max_items = 0): array { |
|
| 35 | - |
|
| 36 | - $collection = []; |
|
| 37 | - $pos = 0; |
|
| 38 | - while ( |
|
| 39 | - (!$if_chars || strpos($texte, $if_chars, $pos) !== false) |
|
| 40 | - and ($next = ($start_with ? strpos($texte, $start_with, $pos) : $pos)) !== false |
|
| 41 | - and preg_match($preg, $texte, $r, PREG_OFFSET_CAPTURE, $next)) { |
|
| 42 | - |
|
| 43 | - $found_pos = $r[0][1]; |
|
| 44 | - $found_length = strlen($r[0][0]); |
|
| 45 | - $match = [ |
|
| 46 | - 'raw' => $r[0][0], |
|
| 47 | - 'match' => array_column($r, 0), |
|
| 48 | - 'pos' => $found_pos, |
|
| 49 | - 'length' => $found_length |
|
| 50 | - ]; |
|
| 51 | - |
|
| 52 | - $collection[] = $match; |
|
| 53 | - |
|
| 54 | - if ($max_items and count($collection) === $max_items) { |
|
| 55 | - break; |
|
| 56 | - } |
|
| 57 | - |
|
| 58 | - $pos = $match['pos'] + $match['length']; |
|
| 59 | - } |
|
| 60 | - |
|
| 61 | - return $collection; |
|
| 62 | - } |
|
| 63 | - |
|
| 64 | - /** |
|
| 65 | - * Sanitizer une collection d'occurences |
|
| 66 | - * |
|
| 67 | - * @param array $collection |
|
| 68 | - * @param string $sanitize_callback |
|
| 69 | - * @return array |
|
| 70 | - */ |
|
| 71 | - protected function sanitizer_collection(array $collection, string $sanitize_callback): array { |
|
| 72 | - foreach ($collection as &$c) { |
|
| 73 | - $c['raw'] = $sanitize_callback($c['raw']); |
|
| 74 | - } |
|
| 75 | - |
|
| 76 | - return $collection; |
|
| 77 | - } |
|
| 78 | - |
|
| 79 | - /** |
|
| 80 | - * @param string $texte |
|
| 81 | - * @param array $options |
|
| 82 | - * @return array |
|
| 83 | - */ |
|
| 84 | - public function collecter(string $texte, array $options = []): array { |
|
| 85 | - $collection = []; |
|
| 86 | - return $collection; |
|
| 87 | - } |
|
| 88 | - |
|
| 89 | - public function detecter($texte): bool { |
|
| 90 | - if (!empty($this->markId) and strpos($texte, $this->markId) !== false) { |
|
| 91 | - return true; |
|
| 92 | - } |
|
| 93 | - return !empty($this->collecter($texte, ['detecter_presence' => true])); |
|
| 94 | - } |
|
| 95 | - |
|
| 96 | - /** |
|
| 97 | - * Echapper les occurences de la collecte par un texte neutre du point de vue HTML |
|
| 98 | - * |
|
| 99 | - * @see retablir() |
|
| 100 | - * @param string $texte |
|
| 101 | - * @param array $options |
|
| 102 | - * string $sanitize_callback |
|
| 103 | - * @return array |
|
| 104 | - * texte, marqueur utilise pour echapper les modeles |
|
| 105 | - */ |
|
| 106 | - public function echapper(string $texte, array $options = []): string { |
|
| 107 | - if (!function_exists('creer_uniqid')) { |
|
| 108 | - include_spip('inc/acces'); |
|
| 109 | - } |
|
| 110 | - |
|
| 111 | - $collection = $this->collecter($texte, $options); |
|
| 112 | - if (!empty($options['sanitize_callback']) and is_callable($options['sanitize_callback'])) { |
|
| 113 | - $collection = $this->sanitizer_collection($collection, $options['sanitize_callback']); |
|
| 114 | - } |
|
| 115 | - |
|
| 116 | - if (!empty($collection)) { |
|
| 117 | - if (empty($this->markId)) { |
|
| 118 | - // generer un marqueur qui n'existe pas dans le texte |
|
| 119 | - do { |
|
| 120 | - $this->markId = substr(md5(uniqid(static::class, 1)), 0, 7); |
|
| 121 | - $this->markId = "@|".static::$markPrefix . $this->markId . "|"; |
|
| 122 | - } while (strpos($texte, $this->markId) !== false); |
|
| 123 | - } |
|
| 124 | - |
|
| 125 | - $offset_pos = 0; |
|
| 126 | - foreach ($collection as $c) { |
|
| 127 | - $rempl = $this->markId . base64_encode($c['raw']) . '|@'; |
|
| 128 | - $texte = substr_replace($texte, $rempl, $c['pos'] + $offset_pos, $c['length']); |
|
| 129 | - $offset_pos += strlen($rempl) - $c['length']; |
|
| 130 | - } |
|
| 131 | - } |
|
| 132 | - |
|
| 133 | - return $texte; |
|
| 134 | - } |
|
| 135 | - |
|
| 136 | - |
|
| 137 | - /** |
|
| 138 | - * Retablir les occurences échappées précédemment |
|
| 139 | - * |
|
| 140 | - * @see echapper() |
|
| 141 | - * @param string $texte |
|
| 142 | - * @return string |
|
| 143 | - */ |
|
| 144 | - function retablir(string $texte): string { |
|
| 145 | - |
|
| 146 | - if (!empty($this->markId)) { |
|
| 147 | - $lm = strlen($this->markId); |
|
| 148 | - $pos = 0; |
|
| 149 | - while ( |
|
| 150 | - ($p = strpos($texte, $this->markId, $pos)) !== false |
|
| 151 | - and $end = strpos($texte, '|@', $p + $lm) |
|
| 152 | - ) { |
|
| 153 | - $base64 = substr($texte, $p + $lm, $end - ($p + $lm)); |
|
| 154 | - if ($c = base64_decode($base64, true)) { |
|
| 155 | - $texte = substr_replace($texte, $c, $p, $end + 2 - $p); |
|
| 156 | - $pos = $p + strlen($c); |
|
| 157 | - } |
|
| 158 | - else { |
|
| 159 | - $pos = $end; |
|
| 160 | - } |
|
| 161 | - } |
|
| 162 | - } |
|
| 163 | - |
|
| 164 | - return $texte; |
|
| 165 | - } |
|
| 17 | + protected static string $markPrefix = 'COLLECT'; |
|
| 18 | + protected string $markId; |
|
| 19 | + |
|
| 20 | + /** |
|
| 21 | + * Collecteur générique des occurences d'une preg dans un texte avec leurs positions et longueur |
|
| 22 | + * @param string $texte |
|
| 23 | + * texte à analyser pour la collecte |
|
| 24 | + * @param string $if_chars |
|
| 25 | + * caractere(s) à tester avant de tenter la preg |
|
| 26 | + * @param string $start_with |
|
| 27 | + * caractere(s) par lesquels commencent l'expression recherchée (permet de démarrer la preg à la prochaine occurence de cette chaine) |
|
| 28 | + * @param string $preg |
|
| 29 | + * preg utilisée pour la collecte |
|
| 30 | + * @param int $max_items |
|
| 31 | + * pour limiter le nombre de preg collectée (pour la detection simple de présence par exemple) |
|
| 32 | + * @return array |
|
| 33 | + */ |
|
| 34 | + protected static function collecteur(string $texte, string $if_chars, string $start_with, string $preg, int $max_items = 0): array { |
|
| 35 | + |
|
| 36 | + $collection = []; |
|
| 37 | + $pos = 0; |
|
| 38 | + while ( |
|
| 39 | + (!$if_chars || strpos($texte, $if_chars, $pos) !== false) |
|
| 40 | + and ($next = ($start_with ? strpos($texte, $start_with, $pos) : $pos)) !== false |
|
| 41 | + and preg_match($preg, $texte, $r, PREG_OFFSET_CAPTURE, $next)) { |
|
| 42 | + |
|
| 43 | + $found_pos = $r[0][1]; |
|
| 44 | + $found_length = strlen($r[0][0]); |
|
| 45 | + $match = [ |
|
| 46 | + 'raw' => $r[0][0], |
|
| 47 | + 'match' => array_column($r, 0), |
|
| 48 | + 'pos' => $found_pos, |
|
| 49 | + 'length' => $found_length |
|
| 50 | + ]; |
|
| 51 | + |
|
| 52 | + $collection[] = $match; |
|
| 53 | + |
|
| 54 | + if ($max_items and count($collection) === $max_items) { |
|
| 55 | + break; |
|
| 56 | + } |
|
| 57 | + |
|
| 58 | + $pos = $match['pos'] + $match['length']; |
|
| 59 | + } |
|
| 60 | + |
|
| 61 | + return $collection; |
|
| 62 | + } |
|
| 63 | + |
|
| 64 | + /** |
|
| 65 | + * Sanitizer une collection d'occurences |
|
| 66 | + * |
|
| 67 | + * @param array $collection |
|
| 68 | + * @param string $sanitize_callback |
|
| 69 | + * @return array |
|
| 70 | + */ |
|
| 71 | + protected function sanitizer_collection(array $collection, string $sanitize_callback): array { |
|
| 72 | + foreach ($collection as &$c) { |
|
| 73 | + $c['raw'] = $sanitize_callback($c['raw']); |
|
| 74 | + } |
|
| 75 | + |
|
| 76 | + return $collection; |
|
| 77 | + } |
|
| 78 | + |
|
| 79 | + /** |
|
| 80 | + * @param string $texte |
|
| 81 | + * @param array $options |
|
| 82 | + * @return array |
|
| 83 | + */ |
|
| 84 | + public function collecter(string $texte, array $options = []): array { |
|
| 85 | + $collection = []; |
|
| 86 | + return $collection; |
|
| 87 | + } |
|
| 88 | + |
|
| 89 | + public function detecter($texte): bool { |
|
| 90 | + if (!empty($this->markId) and strpos($texte, $this->markId) !== false) { |
|
| 91 | + return true; |
|
| 92 | + } |
|
| 93 | + return !empty($this->collecter($texte, ['detecter_presence' => true])); |
|
| 94 | + } |
|
| 95 | + |
|
| 96 | + /** |
|
| 97 | + * Echapper les occurences de la collecte par un texte neutre du point de vue HTML |
|
| 98 | + * |
|
| 99 | + * @see retablir() |
|
| 100 | + * @param string $texte |
|
| 101 | + * @param array $options |
|
| 102 | + * string $sanitize_callback |
|
| 103 | + * @return array |
|
| 104 | + * texte, marqueur utilise pour echapper les modeles |
|
| 105 | + */ |
|
| 106 | + public function echapper(string $texte, array $options = []): string { |
|
| 107 | + if (!function_exists('creer_uniqid')) { |
|
| 108 | + include_spip('inc/acces'); |
|
| 109 | + } |
|
| 110 | + |
|
| 111 | + $collection = $this->collecter($texte, $options); |
|
| 112 | + if (!empty($options['sanitize_callback']) and is_callable($options['sanitize_callback'])) { |
|
| 113 | + $collection = $this->sanitizer_collection($collection, $options['sanitize_callback']); |
|
| 114 | + } |
|
| 115 | + |
|
| 116 | + if (!empty($collection)) { |
|
| 117 | + if (empty($this->markId)) { |
|
| 118 | + // generer un marqueur qui n'existe pas dans le texte |
|
| 119 | + do { |
|
| 120 | + $this->markId = substr(md5(uniqid(static::class, 1)), 0, 7); |
|
| 121 | + $this->markId = "@|".static::$markPrefix . $this->markId . "|"; |
|
| 122 | + } while (strpos($texte, $this->markId) !== false); |
|
| 123 | + } |
|
| 124 | + |
|
| 125 | + $offset_pos = 0; |
|
| 126 | + foreach ($collection as $c) { |
|
| 127 | + $rempl = $this->markId . base64_encode($c['raw']) . '|@'; |
|
| 128 | + $texte = substr_replace($texte, $rempl, $c['pos'] + $offset_pos, $c['length']); |
|
| 129 | + $offset_pos += strlen($rempl) - $c['length']; |
|
| 130 | + } |
|
| 131 | + } |
|
| 132 | + |
|
| 133 | + return $texte; |
|
| 134 | + } |
|
| 135 | + |
|
| 136 | + |
|
| 137 | + /** |
|
| 138 | + * Retablir les occurences échappées précédemment |
|
| 139 | + * |
|
| 140 | + * @see echapper() |
|
| 141 | + * @param string $texte |
|
| 142 | + * @return string |
|
| 143 | + */ |
|
| 144 | + function retablir(string $texte): string { |
|
| 145 | + |
|
| 146 | + if (!empty($this->markId)) { |
|
| 147 | + $lm = strlen($this->markId); |
|
| 148 | + $pos = 0; |
|
| 149 | + while ( |
|
| 150 | + ($p = strpos($texte, $this->markId, $pos)) !== false |
|
| 151 | + and $end = strpos($texte, '|@', $p + $lm) |
|
| 152 | + ) { |
|
| 153 | + $base64 = substr($texte, $p + $lm, $end - ($p + $lm)); |
|
| 154 | + if ($c = base64_decode($base64, true)) { |
|
| 155 | + $texte = substr_replace($texte, $c, $p, $end + 2 - $p); |
|
| 156 | + $pos = $p + strlen($c); |
|
| 157 | + } |
|
| 158 | + else { |
|
| 159 | + $pos = $end; |
|
| 160 | + } |
|
| 161 | + } |
|
| 162 | + } |
|
| 163 | + |
|
| 164 | + return $texte; |
|
| 165 | + } |
|
| 166 | 166 | |
| 167 | 167 | } |
@@ -23,115 +23,115 @@ |
||
| 23 | 23 | */ |
| 24 | 24 | class Idiomes extends AbstractCollecteur { |
| 25 | 25 | |
| 26 | - protected static string $markPrefix = 'IDIOME'; |
|
| 27 | - |
|
| 28 | - /** |
|
| 29 | - * La preg pour découper et collecter les modèles |
|
| 30 | - * @var string |
|
| 31 | - */ |
|
| 32 | - protected string $preg_idiome; |
|
| 33 | - |
|
| 34 | - public function __construct(?string $preg = null) { |
|
| 35 | - |
|
| 36 | - $this->preg_idiome = ($preg ?: '@<:(?:([a-z0-9_]+):)?([a-z0-9_]+):>@isS'); |
|
| 37 | - } |
|
| 38 | - |
|
| 39 | - /** |
|
| 40 | - * Sanitizer une collection d'occurences d'idiomes : on ne fait rien |
|
| 41 | - * |
|
| 42 | - * @param array $collection |
|
| 43 | - * @param string $sanitize_callback |
|
| 44 | - * @return array |
|
| 45 | - */ |
|
| 46 | - protected function sanitizer_collection(array $collection, string $sanitize_callback): array { |
|
| 47 | - |
|
| 48 | - return $collection; |
|
| 49 | - } |
|
| 50 | - |
|
| 51 | - |
|
| 52 | - /** |
|
| 53 | - * @param string $texte |
|
| 54 | - * @param array $options |
|
| 55 | - * bool $collecter_liens |
|
| 56 | - * @return array |
|
| 57 | - */ |
|
| 58 | - public function collecter(string $texte, array $options = []): array { |
|
| 59 | - if (!$texte) { |
|
| 60 | - return []; |
|
| 61 | - } |
|
| 62 | - |
|
| 63 | - // collecter les matchs de la preg |
|
| 64 | - $idiomes = $this->collecteur($texte, '', '<:', $this->preg_idiome, empty($options['detecter_presence']) ? 0 : 1); |
|
| 65 | - |
|
| 66 | - // si on veut seulement detecter la présence, on peut retourner tel quel |
|
| 67 | - if (empty($options['detecter_presence'])) { |
|
| 68 | - |
|
| 69 | - $pos_prev = 0; |
|
| 70 | - foreach ($idiomes as $k => &$idiome) { |
|
| 71 | - |
|
| 72 | - $idiome['module'] = $idiome['match'][1]; |
|
| 73 | - $idiome['chaine'] = $idiome['match'][2]; |
|
| 74 | - } |
|
| 75 | - } |
|
| 76 | - |
|
| 77 | - return $idiomes; |
|
| 78 | - } |
|
| 79 | - |
|
| 80 | - /** |
|
| 81 | - * Traiter les idiomes d'un texte |
|
| 82 | - * |
|
| 83 | - * @uses inc_traduire_dist() |
|
| 84 | - * @uses code_echappement() |
|
| 85 | - * @uses echappe_retour() |
|
| 86 | - * |
|
| 87 | - * @param string $texte |
|
| 88 | - * @param array $options |
|
| 89 | - * ?string $lang |
|
| 90 | - * ?bool echappe_span |
|
| 91 | - * @return string |
|
| 92 | - */ |
|
| 93 | - public function traiter(string $texte, array $options) { |
|
| 94 | - static $traduire; |
|
| 95 | - if ($texte) { |
|
| 96 | - |
|
| 97 | - $idiomes = $this->collecter($texte); |
|
| 98 | - if (!empty($idiomes)) { |
|
| 99 | - $lang = $options['lang'] ?? $GLOBALS['spip_lang']; |
|
| 100 | - $echappe_span = $options['echappe_span'] ?? false; |
|
| 101 | - |
|
| 102 | - if (is_null($traduire)) { |
|
| 103 | - $traduire = charger_fonction('traduire', 'inc'); |
|
| 104 | - include_spip('inc/lang'); |
|
| 105 | - } |
|
| 106 | - |
|
| 107 | - $offset_pos = 0; |
|
| 108 | - foreach ($idiomes as $idiome) { |
|
| 109 | - |
|
| 110 | - $cle = ($idiome['module'] ? $idiome['module'] . ':' : '') . $idiome['chaine']; |
|
| 111 | - $desc = $traduire($cle, $lang, true); |
|
| 112 | - $l = $desc->langue; |
|
| 113 | - |
|
| 114 | - // si pas de traduction, on laissera l'écriture de l'idiome entier dans le texte. |
|
| 115 | - if (strlen($desc->texte ?? '')) { |
|
| 116 | - $trad = code_echappement($desc->texte, 'idiome', false); |
|
| 117 | - if ($l !== $lang) { |
|
| 118 | - $trad = str_replace("'", '"', inserer_attribut($trad, 'lang', $l)); |
|
| 119 | - } |
|
| 120 | - if (lang_dir($l) !== lang_dir($lang)) { |
|
| 121 | - $trad = str_replace("'", '"', inserer_attribut($trad, 'dir', lang_dir($l))); |
|
| 122 | - } |
|
| 123 | - if (!$echappe_span) { |
|
| 124 | - $trad = echappe_retour($trad, 'idiome'); |
|
| 125 | - } |
|
| 126 | - $texte = substr_replace($texte, $trad, $idiome['pos'] + $offset_pos, $idiome['length']); |
|
| 127 | - $offset_pos += strlen($trad) - $idiome['length']; |
|
| 128 | - } |
|
| 129 | - |
|
| 130 | - } |
|
| 131 | - } |
|
| 132 | - } |
|
| 133 | - |
|
| 134 | - return $texte; |
|
| 135 | - } |
|
| 26 | + protected static string $markPrefix = 'IDIOME'; |
|
| 27 | + |
|
| 28 | + /** |
|
| 29 | + * La preg pour découper et collecter les modèles |
|
| 30 | + * @var string |
|
| 31 | + */ |
|
| 32 | + protected string $preg_idiome; |
|
| 33 | + |
|
| 34 | + public function __construct(?string $preg = null) { |
|
| 35 | + |
|
| 36 | + $this->preg_idiome = ($preg ?: '@<:(?:([a-z0-9_]+):)?([a-z0-9_]+):>@isS'); |
|
| 37 | + } |
|
| 38 | + |
|
| 39 | + /** |
|
| 40 | + * Sanitizer une collection d'occurences d'idiomes : on ne fait rien |
|
| 41 | + * |
|
| 42 | + * @param array $collection |
|
| 43 | + * @param string $sanitize_callback |
|
| 44 | + * @return array |
|
| 45 | + */ |
|
| 46 | + protected function sanitizer_collection(array $collection, string $sanitize_callback): array { |
|
| 47 | + |
|
| 48 | + return $collection; |
|
| 49 | + } |
|
| 50 | + |
|
| 51 | + |
|
| 52 | + /** |
|
| 53 | + * @param string $texte |
|
| 54 | + * @param array $options |
|
| 55 | + * bool $collecter_liens |
|
| 56 | + * @return array |
|
| 57 | + */ |
|
| 58 | + public function collecter(string $texte, array $options = []): array { |
|
| 59 | + if (!$texte) { |
|
| 60 | + return []; |
|
| 61 | + } |
|
| 62 | + |
|
| 63 | + // collecter les matchs de la preg |
|
| 64 | + $idiomes = $this->collecteur($texte, '', '<:', $this->preg_idiome, empty($options['detecter_presence']) ? 0 : 1); |
|
| 65 | + |
|
| 66 | + // si on veut seulement detecter la présence, on peut retourner tel quel |
|
| 67 | + if (empty($options['detecter_presence'])) { |
|
| 68 | + |
|
| 69 | + $pos_prev = 0; |
|
| 70 | + foreach ($idiomes as $k => &$idiome) { |
|
| 71 | + |
|
| 72 | + $idiome['module'] = $idiome['match'][1]; |
|
| 73 | + $idiome['chaine'] = $idiome['match'][2]; |
|
| 74 | + } |
|
| 75 | + } |
|
| 76 | + |
|
| 77 | + return $idiomes; |
|
| 78 | + } |
|
| 79 | + |
|
| 80 | + /** |
|
| 81 | + * Traiter les idiomes d'un texte |
|
| 82 | + * |
|
| 83 | + * @uses inc_traduire_dist() |
|
| 84 | + * @uses code_echappement() |
|
| 85 | + * @uses echappe_retour() |
|
| 86 | + * |
|
| 87 | + * @param string $texte |
|
| 88 | + * @param array $options |
|
| 89 | + * ?string $lang |
|
| 90 | + * ?bool echappe_span |
|
| 91 | + * @return string |
|
| 92 | + */ |
|
| 93 | + public function traiter(string $texte, array $options) { |
|
| 94 | + static $traduire; |
|
| 95 | + if ($texte) { |
|
| 96 | + |
|
| 97 | + $idiomes = $this->collecter($texte); |
|
| 98 | + if (!empty($idiomes)) { |
|
| 99 | + $lang = $options['lang'] ?? $GLOBALS['spip_lang']; |
|
| 100 | + $echappe_span = $options['echappe_span'] ?? false; |
|
| 101 | + |
|
| 102 | + if (is_null($traduire)) { |
|
| 103 | + $traduire = charger_fonction('traduire', 'inc'); |
|
| 104 | + include_spip('inc/lang'); |
|
| 105 | + } |
|
| 106 | + |
|
| 107 | + $offset_pos = 0; |
|
| 108 | + foreach ($idiomes as $idiome) { |
|
| 109 | + |
|
| 110 | + $cle = ($idiome['module'] ? $idiome['module'] . ':' : '') . $idiome['chaine']; |
|
| 111 | + $desc = $traduire($cle, $lang, true); |
|
| 112 | + $l = $desc->langue; |
|
| 113 | + |
|
| 114 | + // si pas de traduction, on laissera l'écriture de l'idiome entier dans le texte. |
|
| 115 | + if (strlen($desc->texte ?? '')) { |
|
| 116 | + $trad = code_echappement($desc->texte, 'idiome', false); |
|
| 117 | + if ($l !== $lang) { |
|
| 118 | + $trad = str_replace("'", '"', inserer_attribut($trad, 'lang', $l)); |
|
| 119 | + } |
|
| 120 | + if (lang_dir($l) !== lang_dir($lang)) { |
|
| 121 | + $trad = str_replace("'", '"', inserer_attribut($trad, 'dir', lang_dir($l))); |
|
| 122 | + } |
|
| 123 | + if (!$echappe_span) { |
|
| 124 | + $trad = echappe_retour($trad, 'idiome'); |
|
| 125 | + } |
|
| 126 | + $texte = substr_replace($texte, $trad, $idiome['pos'] + $offset_pos, $idiome['length']); |
|
| 127 | + $offset_pos += strlen($trad) - $idiome['length']; |
|
| 128 | + } |
|
| 129 | + |
|
| 130 | + } |
|
| 131 | + } |
|
| 132 | + } |
|
| 133 | + |
|
| 134 | + return $texte; |
|
| 135 | + } |
|
| 136 | 136 | |
| 137 | 137 | } |
@@ -22,202 +22,202 @@ |
||
| 22 | 22 | */ |
| 23 | 23 | class Modeles extends AbstractCollecteur { |
| 24 | 24 | |
| 25 | - protected static string $markPrefix = 'MODELE'; |
|
| 26 | - |
|
| 27 | - /** |
|
| 28 | - * La preg pour découper et collecter les modèles |
|
| 29 | - * @var string |
|
| 30 | - */ |
|
| 31 | - protected string $preg_modele; |
|
| 32 | - |
|
| 33 | - public function __construct(?string $preg = null) { |
|
| 34 | - |
|
| 35 | - $this->preg_modele = ($preg ?: |
|
| 36 | - '@<([a-z_-]{3,})' # <modele |
|
| 37 | - . '\s*([0-9]*)\s*' # id |
|
| 38 | - . '([|](?:<[^<>]*>|[^>])*?)?' # |arguments (y compris des tags <...>) |
|
| 39 | - . '\s*/?' . '>@isS' # fin du modele > |
|
| 40 | - ); |
|
| 41 | - } |
|
| 42 | - |
|
| 43 | - /** |
|
| 44 | - * Sanitizer une collection d'occurences de modèle : on ne fait rien |
|
| 45 | - * |
|
| 46 | - * @param array $collection |
|
| 47 | - * @param string $sanitize_callback |
|
| 48 | - * @return array |
|
| 49 | - */ |
|
| 50 | - protected function sanitizer_collection(array $collection, string $sanitize_callback): array { |
|
| 51 | - |
|
| 52 | - return $collection; |
|
| 53 | - } |
|
| 54 | - |
|
| 55 | - /** |
|
| 56 | - * @param string $texte |
|
| 57 | - * @param array $options |
|
| 58 | - * bool $collecter_liens |
|
| 59 | - * @return array |
|
| 60 | - */ |
|
| 61 | - public function collecter(string $texte, array $options = []): array { |
|
| 62 | - if (!$texte) { |
|
| 63 | - return []; |
|
| 64 | - } |
|
| 65 | - |
|
| 66 | - // collecter les matchs de la preg |
|
| 67 | - $modeles = $this->collecteur($texte, '', '<', $this->preg_modele); |
|
| 68 | - |
|
| 69 | - $pos_prev = 0; |
|
| 70 | - foreach ($modeles as $k => &$modele) { |
|
| 71 | - $pos = $modele['pos']; |
|
| 72 | - $modele['type'] = $modele['match'][1]; |
|
| 73 | - $modele['id'] = $modele['match'][2] ?? ''; |
|
| 74 | - $modele['params'] = $modele['match'][3] ?? ''; |
|
| 75 | - |
|
| 76 | - $longueur = $modele['length']; |
|
| 77 | - $end = $pos + $longueur; |
|
| 78 | - |
|
| 79 | - // il faut avoir un id ou des params commençant par un | sinon c'est une simple balise html |
|
| 80 | - if (empty($modele['id']) and empty($modele['params'])) { |
|
| 81 | - unset($modeles[$k]); |
|
| 82 | - continue; |
|
| 83 | - } |
|
| 84 | - |
|
| 85 | - // si on veut seulement detecter la présence, on peut retourner tel quel |
|
| 86 | - if (!empty($options['detecter_presence'])) { |
|
| 87 | - break; |
|
| 88 | - } |
|
| 89 | - |
|
| 90 | - $modele['lien'] = false; |
|
| 91 | - if (!empty($options['collecter_liens']) |
|
| 92 | - and $pos_fermeture_lien = stripos($texte, '</a>', $end) |
|
| 93 | - and !strlen(trim(substr($texte, $end, $pos_fermeture_lien - $end)))) { |
|
| 94 | - |
|
| 95 | - $pos_lien_ouvrant = stripos($texte, '<a', $pos_prev); |
|
| 96 | - if ($pos_lien_ouvrant !== false |
|
| 97 | - and $pos_lien_ouvrant < $pos |
|
| 98 | - and preg_match('/<a\s[^<>]*>\s*$/i', substr($texte, $pos_prev, $pos - $pos_prev), $r) |
|
| 99 | - ) { |
|
| 100 | - $modele['lien'] = [ |
|
| 101 | - 'href' => extraire_attribut($r[0], 'href'), |
|
| 102 | - 'class' => extraire_attribut($r[0], 'class'), |
|
| 103 | - 'mime' => extraire_attribut($r[0], 'type'), |
|
| 104 | - 'title' => extraire_attribut($r[0], 'title'), |
|
| 105 | - 'hreflang' => extraire_attribut($r[0], 'hreflang') |
|
| 106 | - ]; |
|
| 107 | - $n = strlen($r[0]); |
|
| 108 | - $pos -= $n; |
|
| 109 | - $longueur = $pos_fermeture_lien - $pos + 4; |
|
| 110 | - $end = $pos + $longueur; |
|
| 111 | - } |
|
| 112 | - } |
|
| 113 | - |
|
| 114 | - |
|
| 115 | - $modele['pos'] = $pos; |
|
| 116 | - $modele['length'] = $longueur; |
|
| 117 | - $pos_prev = $end; |
|
| 118 | - } |
|
| 119 | - |
|
| 120 | - return $modeles; |
|
| 121 | - } |
|
| 122 | - |
|
| 123 | - /** |
|
| 124 | - * Traiter les modeles d'un texte |
|
| 125 | - * @param string $texte |
|
| 126 | - * @param array $options |
|
| 127 | - * bool|array $doublons |
|
| 128 | - * string $echap |
|
| 129 | - * ?Spip\Texte\CollecteurLiens $collecteurLiens |
|
| 130 | - * ?array $env |
|
| 131 | - * ?string $connect |
|
| 132 | - * @return string |
|
| 133 | - */ |
|
| 134 | - public function traiter(string $texte, array $options) { |
|
| 135 | - if ($texte) { |
|
| 136 | - $doublons = $options['doublons'] ?? false; |
|
| 137 | - $echap = $options['echap'] ?? ''; |
|
| 138 | - $collecteurLiens = $options['collecteurLiens'] ?? null; |
|
| 139 | - $env = $options['env'] ?? []; |
|
| 140 | - $connect = $options['connect'] ?? ''; |
|
| 141 | - |
|
| 142 | - // preserver la compatibilite : true = recherche des documents |
|
| 143 | - if ($doublons === true) { |
|
| 144 | - $doublons = ['documents' => ['doc', 'emb', 'img']]; |
|
| 145 | - } |
|
| 146 | - |
|
| 147 | - $modeles = $this->collecter($texte, ['collecter_liens' => true]); |
|
| 148 | - if (!empty($modeles)) { |
|
| 149 | - include_spip('public/assembler'); |
|
| 150 | - $wrap_embed_html = charger_fonction('wrap_embed_html', 'inc', true); |
|
| 151 | - |
|
| 152 | - $offset_pos = 0; |
|
| 153 | - foreach ($modeles as $m) { |
|
| 154 | - // calculer le modele |
|
| 155 | - # hack indexation |
|
| 156 | - if ($doublons) { |
|
| 157 | - $texte .= preg_replace(',[|][^|=]*,s', ' ', $m['params']); |
|
| 158 | - } # version normale |
|
| 159 | - else { |
|
| 160 | - // si un tableau de liens a ete passe, reinjecter le contenu d'origine |
|
| 161 | - // dans les parametres, plutot que les liens echappes |
|
| 162 | - $params = $m['params']; |
|
| 163 | - if (!is_null($collecteurLiens)) { |
|
| 164 | - $params = $collecteurLiens->retablir($params); |
|
| 165 | - } |
|
| 166 | - |
|
| 167 | - $modele = inclure_modele($m['type'], $m['id'], $params, $m['lien'], $connect ?? '', $env); |
|
| 168 | - |
|
| 169 | - // en cas d'echec, |
|
| 170 | - // si l'objet demande a une url, |
|
| 171 | - // creer un petit encadre vers elle |
|
| 172 | - if ($modele === false) { |
|
| 173 | - $modele = $m['raw']; |
|
| 174 | - |
|
| 175 | - if (!is_null($collecteurLiens)) { |
|
| 176 | - $modele = $collecteurLiens->retablir($modele); |
|
| 177 | - } |
|
| 178 | - |
|
| 179 | - $contexte = array_merge($env, ['id' => $m['id'], 'type' => $m['type'], 'modele' => $modele]); |
|
| 180 | - |
|
| 181 | - if (!empty($m['lien'])) { |
|
| 182 | - # un eventuel guillemet (") sera reechappe par #ENV |
|
| 183 | - $contexte['lien'] = str_replace('"', '"', $m['lien']['href']); |
|
| 184 | - $contexte['lien_class'] = $m['lien']['class']; |
|
| 185 | - $contexte['lien_mime'] = $m['lien']['mime']; |
|
| 186 | - $contexte['lien_title'] = $m['lien']['title']; |
|
| 187 | - $contexte['lien_hreflang'] = $m['lien']['hreflang']; |
|
| 188 | - } |
|
| 189 | - |
|
| 190 | - $modele = recuperer_fond('modeles/dist', $contexte, [], $connect ?? ''); |
|
| 191 | - } |
|
| 192 | - |
|
| 193 | - // le remplacer dans le texte |
|
| 194 | - if ($modele !== false) { |
|
| 195 | - $modele = protege_js_modeles($modele); |
|
| 196 | - |
|
| 197 | - if ($wrap_embed_html) { |
|
| 198 | - $modele = $wrap_embed_html($m['raw'], $modele); |
|
| 199 | - } |
|
| 200 | - |
|
| 201 | - $rempl = code_echappement($modele, $echap); |
|
| 202 | - $texte = substr_replace($texte, $rempl, $m['pos'] + $offset_pos, $m['length']); |
|
| 203 | - $offset_pos += strlen($rempl) - $m['length']; |
|
| 204 | - } |
|
| 205 | - } |
|
| 206 | - |
|
| 207 | - // hack pour tout l'espace prive |
|
| 208 | - if ((test_espace_prive() or ($doublons)) and !empty($m['id'])) { |
|
| 209 | - $type = strtolower($m['type']); |
|
| 210 | - foreach ($doublons ?: ['documents' => ['doc', 'emb', 'img']] as $quoi => $type_modeles) { |
|
| 211 | - if (in_array($type, $type_modeles)) { |
|
| 212 | - $GLOBALS["doublons_{$quoi}_inclus"][] = $m['id']; |
|
| 213 | - } |
|
| 214 | - } |
|
| 215 | - } |
|
| 216 | - } |
|
| 217 | - } |
|
| 218 | - } |
|
| 219 | - |
|
| 220 | - return $texte; |
|
| 221 | - } |
|
| 25 | + protected static string $markPrefix = 'MODELE'; |
|
| 26 | + |
|
| 27 | + /** |
|
| 28 | + * La preg pour découper et collecter les modèles |
|
| 29 | + * @var string |
|
| 30 | + */ |
|
| 31 | + protected string $preg_modele; |
|
| 32 | + |
|
| 33 | + public function __construct(?string $preg = null) { |
|
| 34 | + |
|
| 35 | + $this->preg_modele = ($preg ?: |
|
| 36 | + '@<([a-z_-]{3,})' # <modele |
|
| 37 | + . '\s*([0-9]*)\s*' # id |
|
| 38 | + . '([|](?:<[^<>]*>|[^>])*?)?' # |arguments (y compris des tags <...>) |
|
| 39 | + . '\s*/?' . '>@isS' # fin du modele > |
|
| 40 | + ); |
|
| 41 | + } |
|
| 42 | + |
|
| 43 | + /** |
|
| 44 | + * Sanitizer une collection d'occurences de modèle : on ne fait rien |
|
| 45 | + * |
|
| 46 | + * @param array $collection |
|
| 47 | + * @param string $sanitize_callback |
|
| 48 | + * @return array |
|
| 49 | + */ |
|
| 50 | + protected function sanitizer_collection(array $collection, string $sanitize_callback): array { |
|
| 51 | + |
|
| 52 | + return $collection; |
|
| 53 | + } |
|
| 54 | + |
|
| 55 | + /** |
|
| 56 | + * @param string $texte |
|
| 57 | + * @param array $options |
|
| 58 | + * bool $collecter_liens |
|
| 59 | + * @return array |
|
| 60 | + */ |
|
| 61 | + public function collecter(string $texte, array $options = []): array { |
|
| 62 | + if (!$texte) { |
|
| 63 | + return []; |
|
| 64 | + } |
|
| 65 | + |
|
| 66 | + // collecter les matchs de la preg |
|
| 67 | + $modeles = $this->collecteur($texte, '', '<', $this->preg_modele); |
|
| 68 | + |
|
| 69 | + $pos_prev = 0; |
|
| 70 | + foreach ($modeles as $k => &$modele) { |
|
| 71 | + $pos = $modele['pos']; |
|
| 72 | + $modele['type'] = $modele['match'][1]; |
|
| 73 | + $modele['id'] = $modele['match'][2] ?? ''; |
|
| 74 | + $modele['params'] = $modele['match'][3] ?? ''; |
|
| 75 | + |
|
| 76 | + $longueur = $modele['length']; |
|
| 77 | + $end = $pos + $longueur; |
|
| 78 | + |
|
| 79 | + // il faut avoir un id ou des params commençant par un | sinon c'est une simple balise html |
|
| 80 | + if (empty($modele['id']) and empty($modele['params'])) { |
|
| 81 | + unset($modeles[$k]); |
|
| 82 | + continue; |
|
| 83 | + } |
|
| 84 | + |
|
| 85 | + // si on veut seulement detecter la présence, on peut retourner tel quel |
|
| 86 | + if (!empty($options['detecter_presence'])) { |
|
| 87 | + break; |
|
| 88 | + } |
|
| 89 | + |
|
| 90 | + $modele['lien'] = false; |
|
| 91 | + if (!empty($options['collecter_liens']) |
|
| 92 | + and $pos_fermeture_lien = stripos($texte, '</a>', $end) |
|
| 93 | + and !strlen(trim(substr($texte, $end, $pos_fermeture_lien - $end)))) { |
|
| 94 | + |
|
| 95 | + $pos_lien_ouvrant = stripos($texte, '<a', $pos_prev); |
|
| 96 | + if ($pos_lien_ouvrant !== false |
|
| 97 | + and $pos_lien_ouvrant < $pos |
|
| 98 | + and preg_match('/<a\s[^<>]*>\s*$/i', substr($texte, $pos_prev, $pos - $pos_prev), $r) |
|
| 99 | + ) { |
|
| 100 | + $modele['lien'] = [ |
|
| 101 | + 'href' => extraire_attribut($r[0], 'href'), |
|
| 102 | + 'class' => extraire_attribut($r[0], 'class'), |
|
| 103 | + 'mime' => extraire_attribut($r[0], 'type'), |
|
| 104 | + 'title' => extraire_attribut($r[0], 'title'), |
|
| 105 | + 'hreflang' => extraire_attribut($r[0], 'hreflang') |
|
| 106 | + ]; |
|
| 107 | + $n = strlen($r[0]); |
|
| 108 | + $pos -= $n; |
|
| 109 | + $longueur = $pos_fermeture_lien - $pos + 4; |
|
| 110 | + $end = $pos + $longueur; |
|
| 111 | + } |
|
| 112 | + } |
|
| 113 | + |
|
| 114 | + |
|
| 115 | + $modele['pos'] = $pos; |
|
| 116 | + $modele['length'] = $longueur; |
|
| 117 | + $pos_prev = $end; |
|
| 118 | + } |
|
| 119 | + |
|
| 120 | + return $modeles; |
|
| 121 | + } |
|
| 122 | + |
|
| 123 | + /** |
|
| 124 | + * Traiter les modeles d'un texte |
|
| 125 | + * @param string $texte |
|
| 126 | + * @param array $options |
|
| 127 | + * bool|array $doublons |
|
| 128 | + * string $echap |
|
| 129 | + * ?Spip\Texte\CollecteurLiens $collecteurLiens |
|
| 130 | + * ?array $env |
|
| 131 | + * ?string $connect |
|
| 132 | + * @return string |
|
| 133 | + */ |
|
| 134 | + public function traiter(string $texte, array $options) { |
|
| 135 | + if ($texte) { |
|
| 136 | + $doublons = $options['doublons'] ?? false; |
|
| 137 | + $echap = $options['echap'] ?? ''; |
|
| 138 | + $collecteurLiens = $options['collecteurLiens'] ?? null; |
|
| 139 | + $env = $options['env'] ?? []; |
|
| 140 | + $connect = $options['connect'] ?? ''; |
|
| 141 | + |
|
| 142 | + // preserver la compatibilite : true = recherche des documents |
|
| 143 | + if ($doublons === true) { |
|
| 144 | + $doublons = ['documents' => ['doc', 'emb', 'img']]; |
|
| 145 | + } |
|
| 146 | + |
|
| 147 | + $modeles = $this->collecter($texte, ['collecter_liens' => true]); |
|
| 148 | + if (!empty($modeles)) { |
|
| 149 | + include_spip('public/assembler'); |
|
| 150 | + $wrap_embed_html = charger_fonction('wrap_embed_html', 'inc', true); |
|
| 151 | + |
|
| 152 | + $offset_pos = 0; |
|
| 153 | + foreach ($modeles as $m) { |
|
| 154 | + // calculer le modele |
|
| 155 | + # hack indexation |
|
| 156 | + if ($doublons) { |
|
| 157 | + $texte .= preg_replace(',[|][^|=]*,s', ' ', $m['params']); |
|
| 158 | + } # version normale |
|
| 159 | + else { |
|
| 160 | + // si un tableau de liens a ete passe, reinjecter le contenu d'origine |
|
| 161 | + // dans les parametres, plutot que les liens echappes |
|
| 162 | + $params = $m['params']; |
|
| 163 | + if (!is_null($collecteurLiens)) { |
|
| 164 | + $params = $collecteurLiens->retablir($params); |
|
| 165 | + } |
|
| 166 | + |
|
| 167 | + $modele = inclure_modele($m['type'], $m['id'], $params, $m['lien'], $connect ?? '', $env); |
|
| 168 | + |
|
| 169 | + // en cas d'echec, |
|
| 170 | + // si l'objet demande a une url, |
|
| 171 | + // creer un petit encadre vers elle |
|
| 172 | + if ($modele === false) { |
|
| 173 | + $modele = $m['raw']; |
|
| 174 | + |
|
| 175 | + if (!is_null($collecteurLiens)) { |
|
| 176 | + $modele = $collecteurLiens->retablir($modele); |
|
| 177 | + } |
|
| 178 | + |
|
| 179 | + $contexte = array_merge($env, ['id' => $m['id'], 'type' => $m['type'], 'modele' => $modele]); |
|
| 180 | + |
|
| 181 | + if (!empty($m['lien'])) { |
|
| 182 | + # un eventuel guillemet (") sera reechappe par #ENV |
|
| 183 | + $contexte['lien'] = str_replace('"', '"', $m['lien']['href']); |
|
| 184 | + $contexte['lien_class'] = $m['lien']['class']; |
|
| 185 | + $contexte['lien_mime'] = $m['lien']['mime']; |
|
| 186 | + $contexte['lien_title'] = $m['lien']['title']; |
|
| 187 | + $contexte['lien_hreflang'] = $m['lien']['hreflang']; |
|
| 188 | + } |
|
| 189 | + |
|
| 190 | + $modele = recuperer_fond('modeles/dist', $contexte, [], $connect ?? ''); |
|
| 191 | + } |
|
| 192 | + |
|
| 193 | + // le remplacer dans le texte |
|
| 194 | + if ($modele !== false) { |
|
| 195 | + $modele = protege_js_modeles($modele); |
|
| 196 | + |
|
| 197 | + if ($wrap_embed_html) { |
|
| 198 | + $modele = $wrap_embed_html($m['raw'], $modele); |
|
| 199 | + } |
|
| 200 | + |
|
| 201 | + $rempl = code_echappement($modele, $echap); |
|
| 202 | + $texte = substr_replace($texte, $rempl, $m['pos'] + $offset_pos, $m['length']); |
|
| 203 | + $offset_pos += strlen($rempl) - $m['length']; |
|
| 204 | + } |
|
| 205 | + } |
|
| 206 | + |
|
| 207 | + // hack pour tout l'espace prive |
|
| 208 | + if ((test_espace_prive() or ($doublons)) and !empty($m['id'])) { |
|
| 209 | + $type = strtolower($m['type']); |
|
| 210 | + foreach ($doublons ?: ['documents' => ['doc', 'emb', 'img']] as $quoi => $type_modeles) { |
|
| 211 | + if (in_array($type, $type_modeles)) { |
|
| 212 | + $GLOBALS["doublons_{$quoi}_inclus"][] = $m['id']; |
|
| 213 | + } |
|
| 214 | + } |
|
| 215 | + } |
|
| 216 | + } |
|
| 217 | + } |
|
| 218 | + } |
|
| 219 | + |
|
| 220 | + return $texte; |
|
| 221 | + } |
|
| 222 | 222 | |
| 223 | 223 | } |
@@ -17,103 +17,103 @@ |
||
| 17 | 17 | */ |
| 18 | 18 | class Liens extends AbstractCollecteur { |
| 19 | 19 | |
| 20 | - protected static string $markPrefix = 'LIEN'; |
|
| 21 | - |
|
| 22 | - /** |
|
| 23 | - * La preg pour découper et collecter les modèles |
|
| 24 | - * @var string |
|
| 25 | - */ |
|
| 26 | - protected string $preg_lien; |
|
| 27 | - |
|
| 28 | - public function __construct(?string $preg = null) { |
|
| 29 | - |
|
| 30 | - // Regexp des raccourcis, aussi utilisee pour la fusion de sauvegarde Spip |
|
| 31 | - // Laisser passer des paires de crochets pour la balise multi |
|
| 32 | - // mais refuser plus d'imbrications ou de mauvaises imbrications |
|
| 33 | - // sinon les crochets ne peuvent plus servir qu'a ce type de raccourci |
|
| 34 | - $this->preg_lien = ($preg ?: '/\[([^][]*?([[][^]>-]*[]][^][]*)*)->(>?)([^]]*)\]/msS'); |
|
| 35 | - } |
|
| 36 | - |
|
| 37 | - |
|
| 38 | - /** |
|
| 39 | - * Sanitizer une collection d'occurences de liens : il faut sanitizer le href et le texte uniquement |
|
| 40 | - * |
|
| 41 | - * @param array $collection |
|
| 42 | - * @param string $sanitize_callback |
|
| 43 | - * @return array |
|
| 44 | - */ |
|
| 45 | - protected function sanitizer_collection(array $collection, string $sanitize_callback): array { |
|
| 46 | - foreach ($collection as &$lien) { |
|
| 47 | - $t = $sanitize_callback($lien['texte']); |
|
| 48 | - if ($t !== $lien['texte']) { |
|
| 49 | - $lien['raw'] = str_replace($lien['texte'], $t, $lien['raw']); |
|
| 50 | - $lien['texte'] = $t; |
|
| 51 | - } |
|
| 52 | - $href = $sanitize_callback($lien['href']); |
|
| 53 | - if ($href !== $lien['href']) { |
|
| 54 | - $lien['raw'] = str_replace($lien['href'], $href, $lien['raw']); |
|
| 55 | - $lien['href'] = $href; |
|
| 56 | - } |
|
| 57 | - } |
|
| 58 | - |
|
| 59 | - return $collection; |
|
| 60 | - } |
|
| 61 | - |
|
| 62 | - /** |
|
| 63 | - * @param string $texte |
|
| 64 | - * @param array $options |
|
| 65 | - * bool $collecter_liens |
|
| 66 | - * @return array |
|
| 67 | - */ |
|
| 68 | - public function collecter(string $texte, array $options = []): array { |
|
| 69 | - if (!$texte) { |
|
| 70 | - return []; |
|
| 71 | - } |
|
| 72 | - |
|
| 73 | - $liens = []; |
|
| 74 | - if (strpos($texte, '->') !== false) { |
|
| 75 | - |
|
| 76 | - $desechappe_crochets = false; |
|
| 77 | - // si il y a un crochet ouvrant échappé ou un crochet fermant échappé, les substituer pour les ignorer |
|
| 78 | - if (strpos($texte, '\[') !== false or strpos($texte, '\]') !== false) { |
|
| 79 | - $texte = str_replace(['\[', '\]'], ["\x1\x5", "\x1\x6"], $texte); |
|
| 80 | - $desechappe_crochets = true; |
|
| 81 | - } |
|
| 82 | - |
|
| 83 | - // collecter les matchs de la preg |
|
| 84 | - $liens = $this->collecteur($texte, '->', '[', $this->preg_lien, empty($options['detecter_presence']) ? 0 : 1); |
|
| 85 | - |
|
| 86 | - // si on veut seulement detecter la présence, on peut retourner tel quel |
|
| 87 | - if (empty($options['detecter_presence'])) { |
|
| 88 | - |
|
| 89 | - foreach ($liens as $k => &$lien) { |
|
| 90 | - |
|
| 91 | - $lien['href'] = end($lien['match']); |
|
| 92 | - $lien['texte'] = $lien['match'][1]; |
|
| 93 | - $lien['ouvrant'] = $lien['match'][3] ?? ''; |
|
| 94 | - |
|
| 95 | - // la mise en lien automatique est passee par la a tort ! |
|
| 96 | - // corrigeons pour eviter d'avoir un <a...> dans un href... |
|
| 97 | - if (strncmp($lien['href'], '<a', 2) == 0) { |
|
| 98 | - $href = extraire_attribut($lien['href'], 'href'); |
|
| 99 | - // remplacons dans la source qui peut etre reinjectee dans les arguments |
|
| 100 | - // d'un modele |
|
| 101 | - $lien['raw'] = str_replace($lien['href'], $href, $lien['raw']); |
|
| 102 | - // et prenons le href comme la vraie url a linker |
|
| 103 | - $lien['href'] = $href; |
|
| 104 | - } |
|
| 105 | - |
|
| 106 | - if ($desechappe_crochets and strpos($lien['raw'], "\x1") !== false) { |
|
| 107 | - $lien['raw'] = str_replace(["\x1\x5", "\x1\x6"], ['[', ']'], $lien['raw']); |
|
| 108 | - $lien['texte'] = str_replace(["\x1\x5", "\x1\x6"], ['[', ']'], $lien['texte']); |
|
| 109 | - $lien['href'] = str_replace(["\x1\x5", "\x1\x6"], ['[', ']'], $lien['href']); |
|
| 110 | - } |
|
| 111 | - |
|
| 112 | - } |
|
| 113 | - } |
|
| 114 | - } |
|
| 115 | - |
|
| 116 | - return $liens; |
|
| 117 | - } |
|
| 20 | + protected static string $markPrefix = 'LIEN'; |
|
| 21 | + |
|
| 22 | + /** |
|
| 23 | + * La preg pour découper et collecter les modèles |
|
| 24 | + * @var string |
|
| 25 | + */ |
|
| 26 | + protected string $preg_lien; |
|
| 27 | + |
|
| 28 | + public function __construct(?string $preg = null) { |
|
| 29 | + |
|
| 30 | + // Regexp des raccourcis, aussi utilisee pour la fusion de sauvegarde Spip |
|
| 31 | + // Laisser passer des paires de crochets pour la balise multi |
|
| 32 | + // mais refuser plus d'imbrications ou de mauvaises imbrications |
|
| 33 | + // sinon les crochets ne peuvent plus servir qu'a ce type de raccourci |
|
| 34 | + $this->preg_lien = ($preg ?: '/\[([^][]*?([[][^]>-]*[]][^][]*)*)->(>?)([^]]*)\]/msS'); |
|
| 35 | + } |
|
| 36 | + |
|
| 37 | + |
|
| 38 | + /** |
|
| 39 | + * Sanitizer une collection d'occurences de liens : il faut sanitizer le href et le texte uniquement |
|
| 40 | + * |
|
| 41 | + * @param array $collection |
|
| 42 | + * @param string $sanitize_callback |
|
| 43 | + * @return array |
|
| 44 | + */ |
|
| 45 | + protected function sanitizer_collection(array $collection, string $sanitize_callback): array { |
|
| 46 | + foreach ($collection as &$lien) { |
|
| 47 | + $t = $sanitize_callback($lien['texte']); |
|
| 48 | + if ($t !== $lien['texte']) { |
|
| 49 | + $lien['raw'] = str_replace($lien['texte'], $t, $lien['raw']); |
|
| 50 | + $lien['texte'] = $t; |
|
| 51 | + } |
|
| 52 | + $href = $sanitize_callback($lien['href']); |
|
| 53 | + if ($href !== $lien['href']) { |
|
| 54 | + $lien['raw'] = str_replace($lien['href'], $href, $lien['raw']); |
|
| 55 | + $lien['href'] = $href; |
|
| 56 | + } |
|
| 57 | + } |
|
| 58 | + |
|
| 59 | + return $collection; |
|
| 60 | + } |
|
| 61 | + |
|
| 62 | + /** |
|
| 63 | + * @param string $texte |
|
| 64 | + * @param array $options |
|
| 65 | + * bool $collecter_liens |
|
| 66 | + * @return array |
|
| 67 | + */ |
|
| 68 | + public function collecter(string $texte, array $options = []): array { |
|
| 69 | + if (!$texte) { |
|
| 70 | + return []; |
|
| 71 | + } |
|
| 72 | + |
|
| 73 | + $liens = []; |
|
| 74 | + if (strpos($texte, '->') !== false) { |
|
| 75 | + |
|
| 76 | + $desechappe_crochets = false; |
|
| 77 | + // si il y a un crochet ouvrant échappé ou un crochet fermant échappé, les substituer pour les ignorer |
|
| 78 | + if (strpos($texte, '\[') !== false or strpos($texte, '\]') !== false) { |
|
| 79 | + $texte = str_replace(['\[', '\]'], ["\x1\x5", "\x1\x6"], $texte); |
|
| 80 | + $desechappe_crochets = true; |
|
| 81 | + } |
|
| 82 | + |
|
| 83 | + // collecter les matchs de la preg |
|
| 84 | + $liens = $this->collecteur($texte, '->', '[', $this->preg_lien, empty($options['detecter_presence']) ? 0 : 1); |
|
| 85 | + |
|
| 86 | + // si on veut seulement detecter la présence, on peut retourner tel quel |
|
| 87 | + if (empty($options['detecter_presence'])) { |
|
| 88 | + |
|
| 89 | + foreach ($liens as $k => &$lien) { |
|
| 90 | + |
|
| 91 | + $lien['href'] = end($lien['match']); |
|
| 92 | + $lien['texte'] = $lien['match'][1]; |
|
| 93 | + $lien['ouvrant'] = $lien['match'][3] ?? ''; |
|
| 94 | + |
|
| 95 | + // la mise en lien automatique est passee par la a tort ! |
|
| 96 | + // corrigeons pour eviter d'avoir un <a...> dans un href... |
|
| 97 | + if (strncmp($lien['href'], '<a', 2) == 0) { |
|
| 98 | + $href = extraire_attribut($lien['href'], 'href'); |
|
| 99 | + // remplacons dans la source qui peut etre reinjectee dans les arguments |
|
| 100 | + // d'un modele |
|
| 101 | + $lien['raw'] = str_replace($lien['href'], $href, $lien['raw']); |
|
| 102 | + // et prenons le href comme la vraie url a linker |
|
| 103 | + $lien['href'] = $href; |
|
| 104 | + } |
|
| 105 | + |
|
| 106 | + if ($desechappe_crochets and strpos($lien['raw'], "\x1") !== false) { |
|
| 107 | + $lien['raw'] = str_replace(["\x1\x5", "\x1\x6"], ['[', ']'], $lien['raw']); |
|
| 108 | + $lien['texte'] = str_replace(["\x1\x5", "\x1\x6"], ['[', ']'], $lien['texte']); |
|
| 109 | + $lien['href'] = str_replace(["\x1\x5", "\x1\x6"], ['[', ']'], $lien['href']); |
|
| 110 | + } |
|
| 111 | + |
|
| 112 | + } |
|
| 113 | + } |
|
| 114 | + } |
|
| 115 | + |
|
| 116 | + return $liens; |
|
| 117 | + } |
|
| 118 | 118 | |
| 119 | 119 | } |
@@ -11,7 +11,7 @@ discard block |
||
| 11 | 11 | \***************************************************************************/ |
| 12 | 12 | |
| 13 | 13 | if (!defined('_ECRIRE_INC_VERSION')) { |
| 14 | - return; |
|
| 14 | + return; |
|
| 15 | 15 | } |
| 16 | 16 | |
| 17 | 17 | /** |
@@ -26,16 +26,16 @@ discard block |
||
| 26 | 26 | */ |
| 27 | 27 | function traiter_modeles($texte, $doublons = false, $echap = '', string $connect = '', ?Spip\Texte\Collecteur\Liens $collecteurLiens = null, $env = []) { |
| 28 | 28 | |
| 29 | - include_spip("src/Texte/Collecteur/AbstractCollecteur"); |
|
| 30 | - include_spip("src/Texte/Collecteur/Modeles"); |
|
| 31 | - $collecteurModeles = new Spip\Texte\Collecteur\Modeles(); |
|
| 29 | + include_spip("src/Texte/Collecteur/AbstractCollecteur"); |
|
| 30 | + include_spip("src/Texte/Collecteur/Modeles"); |
|
| 31 | + $collecteurModeles = new Spip\Texte\Collecteur\Modeles(); |
|
| 32 | 32 | |
| 33 | - $options = [ |
|
| 34 | - 'doublons' => $doublons, |
|
| 35 | - 'echap' => $echap, |
|
| 36 | - 'connect' => $connect, |
|
| 37 | - 'collecteurLiens' => $collecteurLiens, |
|
| 38 | - 'env' => $env |
|
| 39 | - ]; |
|
| 40 | - return $collecteurModeles->traiter($texte ?? '', $options); |
|
| 33 | + $options = [ |
|
| 34 | + 'doublons' => $doublons, |
|
| 35 | + 'echap' => $echap, |
|
| 36 | + 'connect' => $connect, |
|
| 37 | + 'collecteurLiens' => $collecteurLiens, |
|
| 38 | + 'env' => $env |
|
| 39 | + ]; |
|
| 40 | + return $collecteurModeles->traiter($texte ?? '', $options); |
|
| 41 | 41 | } |
@@ -11,5 +11,5 @@ |
||
| 11 | 11 | \***************************************************************************/ |
| 12 | 12 | |
| 13 | 13 | if (!defined('_ECRIRE_INC_VERSION')) { |
| 14 | - return; |
|
| 14 | + return; |
|
| 15 | 15 | } |
@@ -11,7 +11,7 @@ discard block |
||
| 11 | 11 | \***************************************************************************/ |
| 12 | 12 | |
| 13 | 13 | if (!defined('_ECRIRE_INC_VERSION')) { |
| 14 | - return; |
|
| 14 | + return; |
|
| 15 | 15 | } |
| 16 | 16 | |
| 17 | 17 | include_spip('public/decompiler'); |
@@ -68,133 +68,133 @@ discard block |
||
| 68 | 68 | * - true si $opt 'erreurs' = 'reset' |
| 69 | 69 | **/ |
| 70 | 70 | function public_debusquer_dist($message = '', $lieu = '', $opt = []) { |
| 71 | - static $should_log; |
|
| 72 | - static $tableau_des_erreurs = []; |
|
| 73 | - |
|
| 74 | - // Pour des tests unitaires, pouvoir récupérer les erreurs générées |
|
| 75 | - if (isset($opt['erreurs'])) { |
|
| 76 | - if ($opt['erreurs'] == 'get') { |
|
| 77 | - return $tableau_des_erreurs; |
|
| 78 | - } |
|
| 79 | - if ($opt['erreurs'] == 'reset') { |
|
| 80 | - $tableau_des_erreurs = []; |
|
| 81 | - |
|
| 82 | - return true; |
|
| 83 | - } |
|
| 84 | - } |
|
| 85 | - |
|
| 86 | - if (is_null($should_log)) { |
|
| 87 | - $should_log = (empty($GLOBALS['visiteur_session']) || !include_spip('inc/autoriser') || !autoriser('debug')); |
|
| 88 | - } |
|
| 89 | - |
|
| 90 | - // Erreur ou appel final ? |
|
| 91 | - if ($message) { |
|
| 92 | - $message = debusquer_compose_message($message); |
|
| 93 | - $tableau_des_erreurs[] = [$message, $lieu]; |
|
| 94 | - set_request('var_mode', 'debug'); |
|
| 95 | - $GLOBALS['bouton_admin_debug'] = true; |
|
| 96 | - // Permettre a la compil de continuer |
|
| 97 | - if (is_object($lieu) and (!isset($lieu->code) or !$lieu->code)) { |
|
| 98 | - $lieu->code = "''"; |
|
| 99 | - } |
|
| 100 | - // loger si personne ne verra l'erreur |
|
| 101 | - if ($should_log) { |
|
| 102 | - debusquer_loger_erreur($message, $lieu); |
|
| 103 | - } |
|
| 104 | - // forcer l'appel au debusqueur en cas de boucles infernales |
|
| 105 | - $urgence = (_DEBUG_MAX_SQUELETTE_ERREURS and (is_countable($tableau_des_erreurs) ? count($tableau_des_erreurs) : 0) > _DEBUG_MAX_SQUELETTE_ERREURS); |
|
| 106 | - if (!$urgence) { |
|
| 107 | - return; |
|
| 108 | - } |
|
| 109 | - } |
|
| 110 | - if (empty($GLOBALS['debug_objets']['principal'])) { |
|
| 111 | - // espace public ? |
|
| 112 | - if (isset($GLOBALS['fond'])) { |
|
| 113 | - $GLOBALS['debug_objets']['principal'] = $GLOBALS['fond']; |
|
| 114 | - } |
|
| 115 | - } |
|
| 116 | - |
|
| 117 | - include_spip('inc/autoriser'); |
|
| 118 | - if (!autoriser('debug')) { |
|
| 119 | - return; |
|
| 120 | - } |
|
| 121 | - include_spip('inc/headers'); |
|
| 122 | - include_spip('inc/filtres'); |
|
| 123 | - |
|
| 124 | - lang_select($GLOBALS['visiteur_session']['lang'] ?? null); |
|
| 125 | - $fonc = preg_replace(',\W,', '_', _request('var_mode_objet') ?? ''); |
|
| 126 | - $mode = preg_replace(',\W,', '_', _request('var_mode_affiche') ?? ''); |
|
| 127 | - |
|
| 128 | - $self = str_replace("\\'", ''', self()); |
|
| 129 | - $self = parametre_url($self, 'var_mode', 'debug'); |
|
| 130 | - |
|
| 131 | - $res = debusquer_bandeau($tableau_des_erreurs) |
|
| 132 | - . '<br />' |
|
| 133 | - . debusquer_squelette($fonc, $mode, $self); |
|
| 134 | - |
|
| 135 | - if (!_DIR_RESTREINT or headers_sent()) { |
|
| 136 | - return $res; |
|
| 137 | - } |
|
| 138 | - if ($tableau_des_erreurs) { |
|
| 139 | - http_response_code(503); |
|
| 140 | - } |
|
| 141 | - |
|
| 142 | - http_no_cache(); |
|
| 143 | - if (isset($_GET['var_profile'])) { |
|
| 144 | - $titre = parametre_url($GLOBALS['REQUEST_URI'], 'var_profile', ''); |
|
| 145 | - $titre = parametre_url($titre, 'var_mode', ''); |
|
| 146 | - } else { |
|
| 147 | - if (!$fonc) { |
|
| 148 | - $fonc = $GLOBALS['debug_objets']['principal']; |
|
| 149 | - } |
|
| 150 | - $titre = !$mode ? $fonc : ($mode . (isset($GLOBALS['debug_objets']['sourcefile'][$fonc]) ? ' ' . $GLOBALS['debug_objets']['sourcefile'][$fonc] : '')); |
|
| 151 | - } |
|
| 152 | - if ($message === false) { |
|
| 153 | - lang_select(); |
|
| 154 | - |
|
| 155 | - return debusquer_entete($titre, $res); |
|
| 156 | - } else { |
|
| 157 | - echo debusquer_entete($titre, $res); |
|
| 158 | - } |
|
| 159 | - exit; |
|
| 71 | + static $should_log; |
|
| 72 | + static $tableau_des_erreurs = []; |
|
| 73 | + |
|
| 74 | + // Pour des tests unitaires, pouvoir récupérer les erreurs générées |
|
| 75 | + if (isset($opt['erreurs'])) { |
|
| 76 | + if ($opt['erreurs'] == 'get') { |
|
| 77 | + return $tableau_des_erreurs; |
|
| 78 | + } |
|
| 79 | + if ($opt['erreurs'] == 'reset') { |
|
| 80 | + $tableau_des_erreurs = []; |
|
| 81 | + |
|
| 82 | + return true; |
|
| 83 | + } |
|
| 84 | + } |
|
| 85 | + |
|
| 86 | + if (is_null($should_log)) { |
|
| 87 | + $should_log = (empty($GLOBALS['visiteur_session']) || !include_spip('inc/autoriser') || !autoriser('debug')); |
|
| 88 | + } |
|
| 89 | + |
|
| 90 | + // Erreur ou appel final ? |
|
| 91 | + if ($message) { |
|
| 92 | + $message = debusquer_compose_message($message); |
|
| 93 | + $tableau_des_erreurs[] = [$message, $lieu]; |
|
| 94 | + set_request('var_mode', 'debug'); |
|
| 95 | + $GLOBALS['bouton_admin_debug'] = true; |
|
| 96 | + // Permettre a la compil de continuer |
|
| 97 | + if (is_object($lieu) and (!isset($lieu->code) or !$lieu->code)) { |
|
| 98 | + $lieu->code = "''"; |
|
| 99 | + } |
|
| 100 | + // loger si personne ne verra l'erreur |
|
| 101 | + if ($should_log) { |
|
| 102 | + debusquer_loger_erreur($message, $lieu); |
|
| 103 | + } |
|
| 104 | + // forcer l'appel au debusqueur en cas de boucles infernales |
|
| 105 | + $urgence = (_DEBUG_MAX_SQUELETTE_ERREURS and (is_countable($tableau_des_erreurs) ? count($tableau_des_erreurs) : 0) > _DEBUG_MAX_SQUELETTE_ERREURS); |
|
| 106 | + if (!$urgence) { |
|
| 107 | + return; |
|
| 108 | + } |
|
| 109 | + } |
|
| 110 | + if (empty($GLOBALS['debug_objets']['principal'])) { |
|
| 111 | + // espace public ? |
|
| 112 | + if (isset($GLOBALS['fond'])) { |
|
| 113 | + $GLOBALS['debug_objets']['principal'] = $GLOBALS['fond']; |
|
| 114 | + } |
|
| 115 | + } |
|
| 116 | + |
|
| 117 | + include_spip('inc/autoriser'); |
|
| 118 | + if (!autoriser('debug')) { |
|
| 119 | + return; |
|
| 120 | + } |
|
| 121 | + include_spip('inc/headers'); |
|
| 122 | + include_spip('inc/filtres'); |
|
| 123 | + |
|
| 124 | + lang_select($GLOBALS['visiteur_session']['lang'] ?? null); |
|
| 125 | + $fonc = preg_replace(',\W,', '_', _request('var_mode_objet') ?? ''); |
|
| 126 | + $mode = preg_replace(',\W,', '_', _request('var_mode_affiche') ?? ''); |
|
| 127 | + |
|
| 128 | + $self = str_replace("\\'", ''', self()); |
|
| 129 | + $self = parametre_url($self, 'var_mode', 'debug'); |
|
| 130 | + |
|
| 131 | + $res = debusquer_bandeau($tableau_des_erreurs) |
|
| 132 | + . '<br />' |
|
| 133 | + . debusquer_squelette($fonc, $mode, $self); |
|
| 134 | + |
|
| 135 | + if (!_DIR_RESTREINT or headers_sent()) { |
|
| 136 | + return $res; |
|
| 137 | + } |
|
| 138 | + if ($tableau_des_erreurs) { |
|
| 139 | + http_response_code(503); |
|
| 140 | + } |
|
| 141 | + |
|
| 142 | + http_no_cache(); |
|
| 143 | + if (isset($_GET['var_profile'])) { |
|
| 144 | + $titre = parametre_url($GLOBALS['REQUEST_URI'], 'var_profile', ''); |
|
| 145 | + $titre = parametre_url($titre, 'var_mode', ''); |
|
| 146 | + } else { |
|
| 147 | + if (!$fonc) { |
|
| 148 | + $fonc = $GLOBALS['debug_objets']['principal']; |
|
| 149 | + } |
|
| 150 | + $titre = !$mode ? $fonc : ($mode . (isset($GLOBALS['debug_objets']['sourcefile'][$fonc]) ? ' ' . $GLOBALS['debug_objets']['sourcefile'][$fonc] : '')); |
|
| 151 | + } |
|
| 152 | + if ($message === false) { |
|
| 153 | + lang_select(); |
|
| 154 | + |
|
| 155 | + return debusquer_entete($titre, $res); |
|
| 156 | + } else { |
|
| 157 | + echo debusquer_entete($titre, $res); |
|
| 158 | + } |
|
| 159 | + exit; |
|
| 160 | 160 | } |
| 161 | 161 | |
| 162 | 162 | function debusquer_compose_message($msg) { |
| 163 | - if (is_array($msg)) { |
|
| 164 | - // si c'est un texte, c'est une traduction a faire, mais |
|
| 165 | - // sqlite renvoit aussi des erreurs alpha num (mais avec 3 arguments) |
|
| 166 | - if (!is_numeric($msg[0]) and count($msg) == 2) { |
|
| 167 | - // message avec argument: instancier |
|
| 168 | - $msg = _T($msg[0], $msg[1], 'spip-debug-arg'); |
|
| 169 | - } else { |
|
| 170 | - // message SQL: interpreter |
|
| 171 | - $msg = debusquer_requete($msg); |
|
| 172 | - } |
|
| 173 | - } |
|
| 174 | - // FIXME: le fond n'est pas la si on n'est pas dans un squelette |
|
| 175 | - // cela dit, ca serait bien d'indiquer tout de meme d'ou vient l'erreur |
|
| 176 | - $fond = $GLOBALS['fond'] ?? ''; |
|
| 177 | - // une erreur critique sort $message en array |
|
| 178 | - $debug = is_array($msg) ? $msg[1] : $msg; |
|
| 179 | - spip_log('Debug: ' . $debug . ' (' . $fond . ')'); |
|
| 180 | - |
|
| 181 | - return $msg; |
|
| 163 | + if (is_array($msg)) { |
|
| 164 | + // si c'est un texte, c'est une traduction a faire, mais |
|
| 165 | + // sqlite renvoit aussi des erreurs alpha num (mais avec 3 arguments) |
|
| 166 | + if (!is_numeric($msg[0]) and count($msg) == 2) { |
|
| 167 | + // message avec argument: instancier |
|
| 168 | + $msg = _T($msg[0], $msg[1], 'spip-debug-arg'); |
|
| 169 | + } else { |
|
| 170 | + // message SQL: interpreter |
|
| 171 | + $msg = debusquer_requete($msg); |
|
| 172 | + } |
|
| 173 | + } |
|
| 174 | + // FIXME: le fond n'est pas la si on n'est pas dans un squelette |
|
| 175 | + // cela dit, ca serait bien d'indiquer tout de meme d'ou vient l'erreur |
|
| 176 | + $fond = $GLOBALS['fond'] ?? ''; |
|
| 177 | + // une erreur critique sort $message en array |
|
| 178 | + $debug = is_array($msg) ? $msg[1] : $msg; |
|
| 179 | + spip_log('Debug: ' . $debug . ' (' . $fond . ')'); |
|
| 180 | + |
|
| 181 | + return $msg; |
|
| 182 | 182 | } |
| 183 | 183 | |
| 184 | 184 | function debusquer_bandeau($erreurs) { |
| 185 | 185 | |
| 186 | - if (!empty($erreurs)) { |
|
| 187 | - $n = [(is_countable($erreurs) ? count($erreurs) : 0) . ' ' . _T('zbug_erreur_squelette')]; |
|
| 186 | + if (!empty($erreurs)) { |
|
| 187 | + $n = [(is_countable($erreurs) ? count($erreurs) : 0) . ' ' . _T('zbug_erreur_squelette')]; |
|
| 188 | 188 | |
| 189 | - return debusquer_navigation($erreurs, $n); |
|
| 190 | - } elseif (!empty($GLOBALS['tableau_des_temps'])) { |
|
| 191 | - include_spip('public/tracer'); |
|
| 192 | - [$temps, $nav] = chrono_requete($GLOBALS['tableau_des_temps']); |
|
| 189 | + return debusquer_navigation($erreurs, $n); |
|
| 190 | + } elseif (!empty($GLOBALS['tableau_des_temps'])) { |
|
| 191 | + include_spip('public/tracer'); |
|
| 192 | + [$temps, $nav] = chrono_requete($GLOBALS['tableau_des_temps']); |
|
| 193 | 193 | |
| 194 | - return debusquer_navigation($temps, $nav, 'debug-profile'); |
|
| 195 | - } else { |
|
| 196 | - return ''; |
|
| 197 | - } |
|
| 194 | + return debusquer_navigation($temps, $nav, 'debug-profile'); |
|
| 195 | + } else { |
|
| 196 | + return ''; |
|
| 197 | + } |
|
| 198 | 198 | } |
| 199 | 199 | |
| 200 | 200 | /** |
@@ -204,63 +204,63 @@ discard block |
||
| 204 | 204 | * @return string Code HTML |
| 205 | 205 | **/ |
| 206 | 206 | function debusquer_contexte($env) { |
| 207 | - if (is_string($env) and is_array($env_tab = @unserialize($env))) { |
|
| 208 | - $env = $env_tab; |
|
| 209 | - } |
|
| 210 | - |
|
| 211 | - if (!$env) { |
|
| 212 | - return ''; |
|
| 213 | - } |
|
| 214 | - $res = ''; |
|
| 215 | - foreach ($env as $nom => $valeur) { |
|
| 216 | - if (is_array($valeur)) { |
|
| 217 | - $valeur_simple = []; |
|
| 218 | - foreach ($valeur as $v) { |
|
| 219 | - if (is_array($v)) { |
|
| 220 | - $valeur_simple[] = 'array:' . count($v); |
|
| 221 | - } elseif (is_object($v)) { |
|
| 222 | - $valeur_simple[] = get_class($v); |
|
| 223 | - } elseif (is_string($v)) { |
|
| 224 | - $valeur_simple[] = "'" . $v . "'"; |
|
| 225 | - } else { |
|
| 226 | - $valeur_simple[] = $v; |
|
| 227 | - } |
|
| 228 | - } |
|
| 229 | - $n = count($valeur); |
|
| 230 | - $valeur = (($n > 3) ? 'array:' . $n . ' ' : ''); |
|
| 231 | - $valeur .= '[' . join(', ', $valeur_simple) . ']'; |
|
| 232 | - } elseif (is_object($valeur)) { |
|
| 233 | - $valeur = get_class($valeur); |
|
| 234 | - } elseif (is_string($valeur)) { |
|
| 235 | - $valeur = "'" . $valeur . "'"; |
|
| 236 | - } |
|
| 237 | - $res .= "\n<tr><td><strong>" . nl2br((string) entites_html($nom)) |
|
| 238 | - . '</strong></td><td>: ' . nl2br((string) entites_html($valeur)) |
|
| 239 | - . "</td></tr>\n"; |
|
| 240 | - } |
|
| 241 | - |
|
| 242 | - return "<div class='spip-env'><fieldset><legend onclick=\"this.parentElement.classList.toggle('expanded');\">#ENV</legend>\n<div><table>$res</table></div></fieldset></div>\n"; |
|
| 207 | + if (is_string($env) and is_array($env_tab = @unserialize($env))) { |
|
| 208 | + $env = $env_tab; |
|
| 209 | + } |
|
| 210 | + |
|
| 211 | + if (!$env) { |
|
| 212 | + return ''; |
|
| 213 | + } |
|
| 214 | + $res = ''; |
|
| 215 | + foreach ($env as $nom => $valeur) { |
|
| 216 | + if (is_array($valeur)) { |
|
| 217 | + $valeur_simple = []; |
|
| 218 | + foreach ($valeur as $v) { |
|
| 219 | + if (is_array($v)) { |
|
| 220 | + $valeur_simple[] = 'array:' . count($v); |
|
| 221 | + } elseif (is_object($v)) { |
|
| 222 | + $valeur_simple[] = get_class($v); |
|
| 223 | + } elseif (is_string($v)) { |
|
| 224 | + $valeur_simple[] = "'" . $v . "'"; |
|
| 225 | + } else { |
|
| 226 | + $valeur_simple[] = $v; |
|
| 227 | + } |
|
| 228 | + } |
|
| 229 | + $n = count($valeur); |
|
| 230 | + $valeur = (($n > 3) ? 'array:' . $n . ' ' : ''); |
|
| 231 | + $valeur .= '[' . join(', ', $valeur_simple) . ']'; |
|
| 232 | + } elseif (is_object($valeur)) { |
|
| 233 | + $valeur = get_class($valeur); |
|
| 234 | + } elseif (is_string($valeur)) { |
|
| 235 | + $valeur = "'" . $valeur . "'"; |
|
| 236 | + } |
|
| 237 | + $res .= "\n<tr><td><strong>" . nl2br((string) entites_html($nom)) |
|
| 238 | + . '</strong></td><td>: ' . nl2br((string) entites_html($valeur)) |
|
| 239 | + . "</td></tr>\n"; |
|
| 240 | + } |
|
| 241 | + |
|
| 242 | + return "<div class='spip-env'><fieldset><legend onclick=\"this.parentElement.classList.toggle('expanded');\">#ENV</legend>\n<div><table>$res</table></div></fieldset></div>\n"; |
|
| 243 | 243 | } |
| 244 | 244 | |
| 245 | 245 | |
| 246 | 246 | function debusquer_loger_erreur($msg, $lieu) { |
| 247 | - $boucle = $ligne = $skel = ''; |
|
| 248 | - if (is_object($lieu)) { |
|
| 249 | - $ligne = ($lieu->ligne ?? ''); |
|
| 250 | - $boucle = ($lieu->id_boucle ?? ''); |
|
| 251 | - $skel = ($lieu->descr['sourcefile'] ?? ''); |
|
| 252 | - } |
|
| 253 | - $msg = (is_array($msg) ? implode('', $msg) : $msg); |
|
| 254 | - if ($skel) { |
|
| 255 | - $msg .= " Squelette $skel"; |
|
| 256 | - } |
|
| 257 | - if ($boucle) { |
|
| 258 | - $msg .= " Boucle $boucle"; |
|
| 259 | - } |
|
| 260 | - if ($ligne) { |
|
| 261 | - $msg .= " L$ligne"; |
|
| 262 | - } |
|
| 263 | - spip_log($msg, "debusquer" . _LOG_ERREUR); |
|
| 247 | + $boucle = $ligne = $skel = ''; |
|
| 248 | + if (is_object($lieu)) { |
|
| 249 | + $ligne = ($lieu->ligne ?? ''); |
|
| 250 | + $boucle = ($lieu->id_boucle ?? ''); |
|
| 251 | + $skel = ($lieu->descr['sourcefile'] ?? ''); |
|
| 252 | + } |
|
| 253 | + $msg = (is_array($msg) ? implode('', $msg) : $msg); |
|
| 254 | + if ($skel) { |
|
| 255 | + $msg .= " Squelette $skel"; |
|
| 256 | + } |
|
| 257 | + if ($boucle) { |
|
| 258 | + $msg .= " Boucle $boucle"; |
|
| 259 | + } |
|
| 260 | + if ($ligne) { |
|
| 261 | + $msg .= " L$ligne"; |
|
| 262 | + } |
|
| 263 | + spip_log($msg, "debusquer" . _LOG_ERREUR); |
|
| 264 | 264 | } |
| 265 | 265 | |
| 266 | 266 | |
@@ -269,66 +269,66 @@ discard block |
||
| 269 | 269 | |
| 270 | 270 | function debusquer_navigation($tableau, $caption = [], $id = 'debug-nav') { |
| 271 | 271 | |
| 272 | - if (_request('exec') == 'valider_xml') { |
|
| 273 | - return ''; |
|
| 274 | - } |
|
| 275 | - $GLOBALS['bouton_admin_debug'] = true; |
|
| 276 | - $res = ''; |
|
| 277 | - $href = quote_amp(parametre_url($GLOBALS['REQUEST_URI'], 'var_mode', 'debug')); |
|
| 278 | - foreach ($tableau as $i => $err) { |
|
| 279 | - $boucle = $ligne = $skel = ''; |
|
| 280 | - [$msg, $lieu] = $err; |
|
| 281 | - if (is_object($lieu)) { |
|
| 282 | - $ligne = $lieu->ligne; |
|
| 283 | - $boucle = !empty($lieu->id_boucle) ? $lieu->id_boucle : ''; |
|
| 284 | - if (isset($lieu->descr['nom'])) { |
|
| 285 | - $nom_code = $lieu->descr['nom']; |
|
| 286 | - $skel = $lieu->descr['sourcefile']; |
|
| 287 | - $h2 = parametre_url($href, 'var_mode_objet', $nom_code); |
|
| 288 | - $h3 = parametre_url($h2, 'var_mode_affiche', 'squelette') . '#L' . $ligne; |
|
| 289 | - $skel = "<a href='$h3'><b>$skel</b></a>"; |
|
| 290 | - if ($boucle) { |
|
| 291 | - $h3 = parametre_url($h2 . $boucle, 'var_mode_affiche', 'boucle'); |
|
| 292 | - $boucle = "<a href='$h3'><b>$boucle</b></a>"; |
|
| 293 | - } |
|
| 294 | - } |
|
| 295 | - } |
|
| 296 | - |
|
| 297 | - $j = ($i + 1); |
|
| 298 | - $res .= "<tr id='req$j'><td style='text-align: right'>" |
|
| 299 | - . $j |
|
| 300 | - . " </td><td style='text-align: left'>" |
|
| 301 | - . (is_array($msg) ? implode('', $msg) : $msg) |
|
| 302 | - . "</td><td style='text-align: left'>" |
|
| 303 | - . ($skel ?: ' / ') |
|
| 304 | - . "</td><td class='spip-debug-arg' style='text-align: left'>" |
|
| 305 | - . ($boucle ?: ' / ') |
|
| 306 | - . "</td><td style='text-align: right'>" |
|
| 307 | - . $ligne |
|
| 308 | - . "</td></tr>\n"; |
|
| 309 | - } |
|
| 310 | - |
|
| 311 | - return "\n<table id='$id'>" |
|
| 312 | - . "<caption onclick=\"x = document.getElementById('$id'); (x.style.display == '' ? x.style.display = 'none' : x.style.display = '');\">" |
|
| 313 | - . $caption[0] |
|
| 272 | + if (_request('exec') == 'valider_xml') { |
|
| 273 | + return ''; |
|
| 274 | + } |
|
| 275 | + $GLOBALS['bouton_admin_debug'] = true; |
|
| 276 | + $res = ''; |
|
| 277 | + $href = quote_amp(parametre_url($GLOBALS['REQUEST_URI'], 'var_mode', 'debug')); |
|
| 278 | + foreach ($tableau as $i => $err) { |
|
| 279 | + $boucle = $ligne = $skel = ''; |
|
| 280 | + [$msg, $lieu] = $err; |
|
| 281 | + if (is_object($lieu)) { |
|
| 282 | + $ligne = $lieu->ligne; |
|
| 283 | + $boucle = !empty($lieu->id_boucle) ? $lieu->id_boucle : ''; |
|
| 284 | + if (isset($lieu->descr['nom'])) { |
|
| 285 | + $nom_code = $lieu->descr['nom']; |
|
| 286 | + $skel = $lieu->descr['sourcefile']; |
|
| 287 | + $h2 = parametre_url($href, 'var_mode_objet', $nom_code); |
|
| 288 | + $h3 = parametre_url($h2, 'var_mode_affiche', 'squelette') . '#L' . $ligne; |
|
| 289 | + $skel = "<a href='$h3'><b>$skel</b></a>"; |
|
| 290 | + if ($boucle) { |
|
| 291 | + $h3 = parametre_url($h2 . $boucle, 'var_mode_affiche', 'boucle'); |
|
| 292 | + $boucle = "<a href='$h3'><b>$boucle</b></a>"; |
|
| 293 | + } |
|
| 294 | + } |
|
| 295 | + } |
|
| 296 | + |
|
| 297 | + $j = ($i + 1); |
|
| 298 | + $res .= "<tr id='req$j'><td style='text-align: right'>" |
|
| 299 | + . $j |
|
| 300 | + . " </td><td style='text-align: left'>" |
|
| 301 | + . (is_array($msg) ? implode('', $msg) : $msg) |
|
| 302 | + . "</td><td style='text-align: left'>" |
|
| 303 | + . ($skel ?: ' / ') |
|
| 304 | + . "</td><td class='spip-debug-arg' style='text-align: left'>" |
|
| 305 | + . ($boucle ?: ' / ') |
|
| 306 | + . "</td><td style='text-align: right'>" |
|
| 307 | + . $ligne |
|
| 308 | + . "</td></tr>\n"; |
|
| 309 | + } |
|
| 310 | + |
|
| 311 | + return "\n<table id='$id'>" |
|
| 312 | + . "<caption onclick=\"x = document.getElementById('$id'); (x.style.display == '' ? x.style.display = 'none' : x.style.display = '');\">" |
|
| 313 | + . $caption[0] |
|
| 314 | 314 | ## aide locale courte a ecrire, avec lien vers une grosse page de documentation |
| 315 | 315 | # aider('erreur_compilation'), |
| 316 | - . '</caption>' |
|
| 317 | - // fausse caption du chrono (mais vraie nav) |
|
| 318 | - . (!empty($caption[1]) ? $caption[1] : '') |
|
| 319 | - . '<tr><th>' |
|
| 320 | - . _T('numero') |
|
| 321 | - . '</th><th>' |
|
| 322 | - . _T('public:message') |
|
| 323 | - . '</th><th>' |
|
| 324 | - . _T('squelette') |
|
| 325 | - . '</th><th>' |
|
| 326 | - . _T('zbug_boucle') |
|
| 327 | - . '</th><th>' |
|
| 328 | - . _T('ligne') |
|
| 329 | - . '</th></tr>' |
|
| 330 | - . $res |
|
| 331 | - . '</table>'; |
|
| 316 | + . '</caption>' |
|
| 317 | + // fausse caption du chrono (mais vraie nav) |
|
| 318 | + . (!empty($caption[1]) ? $caption[1] : '') |
|
| 319 | + . '<tr><th>' |
|
| 320 | + . _T('numero') |
|
| 321 | + . '</th><th>' |
|
| 322 | + . _T('public:message') |
|
| 323 | + . '</th><th>' |
|
| 324 | + . _T('squelette') |
|
| 325 | + . '</th><th>' |
|
| 326 | + . _T('zbug_boucle') |
|
| 327 | + . '</th><th>' |
|
| 328 | + . _T('ligne') |
|
| 329 | + . '</th></tr>' |
|
| 330 | + . $res |
|
| 331 | + . '</table>'; |
|
| 332 | 332 | } |
| 333 | 333 | |
| 334 | 334 | |
@@ -348,514 +348,514 @@ discard block |
||
| 348 | 348 | * ou un tableau si l'erreur est critique |
| 349 | 349 | **/ |
| 350 | 350 | function debusquer_requete($message) { |
| 351 | - [$errno, $msg, $query] = $message; |
|
| 352 | - |
|
| 353 | - // FIXME: ces écritures mélangent divers syntaxe des moteurs SQL |
|
| 354 | - // il serait plus prudent certainement d'avoir une fonction d'analyse par moteur |
|
| 355 | - if (preg_match(',err(no|code):?[[:space:]]*([0-9]+),i', $msg, $regs)) { |
|
| 356 | - $errno = $regs[2]; |
|
| 357 | - } elseif ( |
|
| 358 | - is_numeric($errno) and ($errno == 1030 or $errno <= 1026) |
|
| 359 | - and preg_match(',[^[:alnum:]]([0-9]+)[^[:alnum:]],', $msg, $regs) |
|
| 360 | - ) { |
|
| 361 | - $errno = $regs[1]; |
|
| 362 | - } |
|
| 363 | - |
|
| 364 | - // Erreur systeme |
|
| 365 | - if (is_numeric($errno) and $errno > 0 and $errno < 200) { |
|
| 366 | - $retour = '<tt><br /><br /><blink>' |
|
| 367 | - . _T('info_erreur_systeme', ['errsys' => $errno]) |
|
| 368 | - . "</blink><br />\n<b>" |
|
| 369 | - . _T( |
|
| 370 | - 'info_erreur_systeme2', |
|
| 371 | - ['script' => generer_url_ecrire('base_repair')] |
|
| 372 | - ) |
|
| 373 | - . '</b><br />'; |
|
| 374 | - spip_log("Erreur systeme $errno"); |
|
| 375 | - |
|
| 376 | - return [$retour, '']; |
|
| 377 | - } |
|
| 378 | - |
|
| 379 | - // Requete erronee |
|
| 380 | - $err = '<b>' . _T('avis_erreur_mysql') . " $errno</b><br /><tt>\n" |
|
| 381 | - . spip_htmlspecialchars($msg) |
|
| 382 | - . "\n<br /><span style='color: red'><b>" |
|
| 383 | - . spip_htmlspecialchars($query) |
|
| 384 | - . '</b></span></tt><br />'; |
|
| 385 | - |
|
| 386 | - //. aider('erreur_mysql'); |
|
| 387 | - |
|
| 388 | - return $err; |
|
| 351 | + [$errno, $msg, $query] = $message; |
|
| 352 | + |
|
| 353 | + // FIXME: ces écritures mélangent divers syntaxe des moteurs SQL |
|
| 354 | + // il serait plus prudent certainement d'avoir une fonction d'analyse par moteur |
|
| 355 | + if (preg_match(',err(no|code):?[[:space:]]*([0-9]+),i', $msg, $regs)) { |
|
| 356 | + $errno = $regs[2]; |
|
| 357 | + } elseif ( |
|
| 358 | + is_numeric($errno) and ($errno == 1030 or $errno <= 1026) |
|
| 359 | + and preg_match(',[^[:alnum:]]([0-9]+)[^[:alnum:]],', $msg, $regs) |
|
| 360 | + ) { |
|
| 361 | + $errno = $regs[1]; |
|
| 362 | + } |
|
| 363 | + |
|
| 364 | + // Erreur systeme |
|
| 365 | + if (is_numeric($errno) and $errno > 0 and $errno < 200) { |
|
| 366 | + $retour = '<tt><br /><br /><blink>' |
|
| 367 | + . _T('info_erreur_systeme', ['errsys' => $errno]) |
|
| 368 | + . "</blink><br />\n<b>" |
|
| 369 | + . _T( |
|
| 370 | + 'info_erreur_systeme2', |
|
| 371 | + ['script' => generer_url_ecrire('base_repair')] |
|
| 372 | + ) |
|
| 373 | + . '</b><br />'; |
|
| 374 | + spip_log("Erreur systeme $errno"); |
|
| 375 | + |
|
| 376 | + return [$retour, '']; |
|
| 377 | + } |
|
| 378 | + |
|
| 379 | + // Requete erronee |
|
| 380 | + $err = '<b>' . _T('avis_erreur_mysql') . " $errno</b><br /><tt>\n" |
|
| 381 | + . spip_htmlspecialchars($msg) |
|
| 382 | + . "\n<br /><span style='color: red'><b>" |
|
| 383 | + . spip_htmlspecialchars($query) |
|
| 384 | + . '</b></span></tt><br />'; |
|
| 385 | + |
|
| 386 | + //. aider('erreur_mysql'); |
|
| 387 | + |
|
| 388 | + return $err; |
|
| 389 | 389 | } |
| 390 | 390 | |
| 391 | 391 | |
| 392 | 392 | function trouve_boucle_debug($n, $nom, $debut = 0, $boucle = '') { |
| 393 | 393 | |
| 394 | - $id = $nom . $boucle; |
|
| 395 | - if (is_array($GLOBALS['debug_objets']['sequence'][$id])) { |
|
| 396 | - foreach ($GLOBALS['debug_objets']['sequence'][$id] as $v) { |
|
| 397 | - if (!preg_match('/^(.*)(<\?.*\?>)(.*)$/s', $v[0], $r)) { |
|
| 398 | - $y = substr_count($v[0], "\n"); |
|
| 399 | - } else { |
|
| 400 | - if ($v[1][0] == '#') { // balise dynamique |
|
| 401 | - $incl = $GLOBALS['debug_objets']['resultat'][$v[2]]; |
|
| 402 | - } else // inclusion |
|
| 403 | - { |
|
| 404 | - $incl = $GLOBALS['debug_objets']['squelette'][trouve_squelette_inclus($v[0])]; |
|
| 405 | - } |
|
| 406 | - $y = substr_count($incl, "\n") |
|
| 407 | - + substr_count($r[1], "\n") |
|
| 408 | - + substr_count($r[3], "\n"); |
|
| 409 | - } |
|
| 410 | - if ($n <= ($y + $debut)) { |
|
| 411 | - if ($v[1][0] == '?') { |
|
| 412 | - return trouve_boucle_debug($n, $nom, $debut, substr($v[1], 1)); |
|
| 413 | - } elseif ($v[1][0] == '!') { |
|
| 414 | - if ($incl = trouve_squelette_inclus($v[1])) { |
|
| 415 | - return trouve_boucle_debug($n, $incl, $debut); |
|
| 416 | - } |
|
| 417 | - } |
|
| 418 | - |
|
| 419 | - return [$nom, $boucle, $v[2] - 1 + $n - $debut]; |
|
| 420 | - } |
|
| 421 | - $debut += $y; |
|
| 422 | - } |
|
| 423 | - } |
|
| 424 | - |
|
| 425 | - return [$nom, $boucle, $n - $debut]; |
|
| 394 | + $id = $nom . $boucle; |
|
| 395 | + if (is_array($GLOBALS['debug_objets']['sequence'][$id])) { |
|
| 396 | + foreach ($GLOBALS['debug_objets']['sequence'][$id] as $v) { |
|
| 397 | + if (!preg_match('/^(.*)(<\?.*\?>)(.*)$/s', $v[0], $r)) { |
|
| 398 | + $y = substr_count($v[0], "\n"); |
|
| 399 | + } else { |
|
| 400 | + if ($v[1][0] == '#') { // balise dynamique |
|
| 401 | + $incl = $GLOBALS['debug_objets']['resultat'][$v[2]]; |
|
| 402 | + } else // inclusion |
|
| 403 | + { |
|
| 404 | + $incl = $GLOBALS['debug_objets']['squelette'][trouve_squelette_inclus($v[0])]; |
|
| 405 | + } |
|
| 406 | + $y = substr_count($incl, "\n") |
|
| 407 | + + substr_count($r[1], "\n") |
|
| 408 | + + substr_count($r[3], "\n"); |
|
| 409 | + } |
|
| 410 | + if ($n <= ($y + $debut)) { |
|
| 411 | + if ($v[1][0] == '?') { |
|
| 412 | + return trouve_boucle_debug($n, $nom, $debut, substr($v[1], 1)); |
|
| 413 | + } elseif ($v[1][0] == '!') { |
|
| 414 | + if ($incl = trouve_squelette_inclus($v[1])) { |
|
| 415 | + return trouve_boucle_debug($n, $incl, $debut); |
|
| 416 | + } |
|
| 417 | + } |
|
| 418 | + |
|
| 419 | + return [$nom, $boucle, $v[2] - 1 + $n - $debut]; |
|
| 420 | + } |
|
| 421 | + $debut += $y; |
|
| 422 | + } |
|
| 423 | + } |
|
| 424 | + |
|
| 425 | + return [$nom, $boucle, $n - $debut]; |
|
| 426 | 426 | } |
| 427 | 427 | |
| 428 | 428 | function trouve_squelette_inclus($script) { |
| 429 | 429 | |
| 430 | - preg_match('/include\(.(.*).php3?.\);/', $script, $reg); |
|
| 431 | - // si le script X.php n'est pas ecrire/public.php |
|
| 432 | - // on suppose qu'il prend le squelette X.html (pas sur, mais y a pas mieux) |
|
| 433 | - if ($reg[1] == 'ecrire/public') { // si c'est bien ecrire/public on cherche le param 'fond' |
|
| 434 | - if (!preg_match("/'fond' => '([^']*)'/", $script, $reg)) { // a defaut on cherche le param 'page' |
|
| 435 | - if (!preg_match("/'param' => '([^']*)'/", $script, $reg)) { |
|
| 436 | - $reg[1] = 'inconnu'; |
|
| 437 | - } |
|
| 438 | - } |
|
| 439 | - } |
|
| 440 | - $incl = ',' . $reg[1] . '[.]\w$,'; |
|
| 441 | - |
|
| 442 | - foreach ($GLOBALS['debug_objets']['sourcefile'] as $k => $v) { |
|
| 443 | - if (preg_match($incl, $v)) { |
|
| 444 | - return $k; |
|
| 445 | - } |
|
| 446 | - } |
|
| 447 | - |
|
| 448 | - return ''; |
|
| 430 | + preg_match('/include\(.(.*).php3?.\);/', $script, $reg); |
|
| 431 | + // si le script X.php n'est pas ecrire/public.php |
|
| 432 | + // on suppose qu'il prend le squelette X.html (pas sur, mais y a pas mieux) |
|
| 433 | + if ($reg[1] == 'ecrire/public') { // si c'est bien ecrire/public on cherche le param 'fond' |
|
| 434 | + if (!preg_match("/'fond' => '([^']*)'/", $script, $reg)) { // a defaut on cherche le param 'page' |
|
| 435 | + if (!preg_match("/'param' => '([^']*)'/", $script, $reg)) { |
|
| 436 | + $reg[1] = 'inconnu'; |
|
| 437 | + } |
|
| 438 | + } |
|
| 439 | + } |
|
| 440 | + $incl = ',' . $reg[1] . '[.]\w$,'; |
|
| 441 | + |
|
| 442 | + foreach ($GLOBALS['debug_objets']['sourcefile'] as $k => $v) { |
|
| 443 | + if (preg_match($incl, $v)) { |
|
| 444 | + return $k; |
|
| 445 | + } |
|
| 446 | + } |
|
| 447 | + |
|
| 448 | + return ''; |
|
| 449 | 449 | } |
| 450 | 450 | |
| 451 | 451 | function reference_boucle_debug($n, $nom, $self) { |
| 452 | - [$skel, $boucle, $ligne] = trouve_boucle_debug($n, $nom); |
|
| 453 | - |
|
| 454 | - if (!$boucle) { |
|
| 455 | - return !$ligne ? '' : |
|
| 456 | - (' (' . |
|
| 457 | - (($nom != $skel) ? _T('squelette_inclus_ligne') : |
|
| 458 | - _T('squelette_ligne')) . |
|
| 459 | - " <a href='$self&var_mode_objet=$skel&var_mode_affiche=squelette&var_mode_ligne=$ligne#L$ligne'>$ligne</a>)"); |
|
| 460 | - } else { |
|
| 461 | - $self .= "&var_mode_objet=$skel$boucle&var_mode_affiche=boucle"; |
|
| 462 | - |
|
| 463 | - return !$ligne ? " (boucle\n<a href='$self#$skel$boucle'>$boucle</a>)" : |
|
| 464 | - " (boucle $boucle ligne\n<a href='$self&var_mode_ligne=$ligne#L$ligne'>$ligne</a>)"; |
|
| 465 | - } |
|
| 452 | + [$skel, $boucle, $ligne] = trouve_boucle_debug($n, $nom); |
|
| 453 | + |
|
| 454 | + if (!$boucle) { |
|
| 455 | + return !$ligne ? '' : |
|
| 456 | + (' (' . |
|
| 457 | + (($nom != $skel) ? _T('squelette_inclus_ligne') : |
|
| 458 | + _T('squelette_ligne')) . |
|
| 459 | + " <a href='$self&var_mode_objet=$skel&var_mode_affiche=squelette&var_mode_ligne=$ligne#L$ligne'>$ligne</a>)"); |
|
| 460 | + } else { |
|
| 461 | + $self .= "&var_mode_objet=$skel$boucle&var_mode_affiche=boucle"; |
|
| 462 | + |
|
| 463 | + return !$ligne ? " (boucle\n<a href='$self#$skel$boucle'>$boucle</a>)" : |
|
| 464 | + " (boucle $boucle ligne\n<a href='$self&var_mode_ligne=$ligne#L$ligne'>$ligne</a>)"; |
|
| 465 | + } |
|
| 466 | 466 | } |
| 467 | 467 | |
| 468 | 468 | // affiche un texte avec numero de ligne et ancre. |
| 469 | 469 | |
| 470 | 470 | function ancre_texte($texte, $fautifs = [], $nocpt = false) { |
| 471 | 471 | |
| 472 | - $var_mode_ligne = _request('var_mode_ligne'); |
|
| 473 | - if ($var_mode_ligne) { |
|
| 474 | - $fautifs[] = [$var_mode_ligne]; |
|
| 475 | - } |
|
| 476 | - $res = ''; |
|
| 477 | - |
|
| 478 | - $s = highlight_string($texte, true); |
|
| 479 | - if (substr($s, 0, 6) == '<code>') { |
|
| 480 | - $s = substr($s, 6); |
|
| 481 | - $res = '<code>'; |
|
| 482 | - } |
|
| 483 | - |
|
| 484 | - $s = preg_replace( |
|
| 485 | - ',<(\w[^<>]*)>([^<]*)<br />([^<]*)</\1>,', |
|
| 486 | - '<\1>\2</\1><br />' . "\n" . '<\1>\3</\1>', |
|
| 487 | - $s |
|
| 488 | - ); |
|
| 489 | - |
|
| 490 | - |
|
| 491 | - $tableau = explode('<br />', $s); |
|
| 492 | - |
|
| 493 | - $format = "<span style='float:left;display:block;width:50px;height:1px'><a id='L%d' style='background-color: white; visibility: " . ($nocpt ? 'hidden' : 'visible') . ";%s' href='#T%s' title=\"%s\">%0" . strval(@strlen(count($tableau))) . "d</a></span> %s<br />\n"; |
|
| 494 | - |
|
| 495 | - $format10 = str_replace('white', 'lightgrey', $format); |
|
| 496 | - $formaterr = 'color: red;'; |
|
| 497 | - $i = 1; |
|
| 498 | - $flignes = []; |
|
| 499 | - $loc = [0, 0]; |
|
| 500 | - foreach ($fautifs as $lc) { |
|
| 501 | - if (is_array($lc)) { |
|
| 502 | - $l = array_shift($lc); |
|
| 503 | - $flignes[$l] = $lc; |
|
| 504 | - } else { |
|
| 505 | - $flignes[$lc] = $loc; |
|
| 506 | - } |
|
| 507 | - } |
|
| 508 | - |
|
| 509 | - $ancre = md5($texte); |
|
| 510 | - foreach ($tableau as $ligne) { |
|
| 511 | - if (isset($flignes[$i])) { |
|
| 512 | - $ligne = str_replace(' ', ' ', $ligne); |
|
| 513 | - $indexmesg = $flignes[$i][1]; |
|
| 514 | - $err = textebrut($flignes[$i][2]); |
|
| 515 | - // tentative de pointer sur la colonne fautive; |
|
| 516 | - // marche pas car highlight_string rajoute des entites. A revoir. |
|
| 517 | - // $m = $flignes[$i][0]; |
|
| 518 | - // $ligne = substr($ligne, 0, $m-1) . |
|
| 519 | - // sprintf($formaterr, substr($ligne,$m)); |
|
| 520 | - $bg = $formaterr; |
|
| 521 | - } else { |
|
| 522 | - $indexmesg = $ancre; |
|
| 523 | - $err = $bg = ''; |
|
| 524 | - } |
|
| 525 | - $res .= sprintf((($i % 10) ? $format : $format10), $i, $bg, $indexmesg, $err, $i, $ligne); |
|
| 526 | - $i++; |
|
| 527 | - } |
|
| 528 | - |
|
| 529 | - return "<div id='T$ancre'>" |
|
| 530 | - . '<div onclick="' |
|
| 531 | - . "jQuery(this).parent().find('a').toggle();" |
|
| 532 | - . '" title="' |
|
| 533 | - . _T('masquer_colonne') |
|
| 534 | - . '" style="cursor: pointer;">' |
|
| 535 | - . ($nocpt ? '' : _T('info_numero_abbreviation')) |
|
| 536 | - . '</div> |
|
| 472 | + $var_mode_ligne = _request('var_mode_ligne'); |
|
| 473 | + if ($var_mode_ligne) { |
|
| 474 | + $fautifs[] = [$var_mode_ligne]; |
|
| 475 | + } |
|
| 476 | + $res = ''; |
|
| 477 | + |
|
| 478 | + $s = highlight_string($texte, true); |
|
| 479 | + if (substr($s, 0, 6) == '<code>') { |
|
| 480 | + $s = substr($s, 6); |
|
| 481 | + $res = '<code>'; |
|
| 482 | + } |
|
| 483 | + |
|
| 484 | + $s = preg_replace( |
|
| 485 | + ',<(\w[^<>]*)>([^<]*)<br />([^<]*)</\1>,', |
|
| 486 | + '<\1>\2</\1><br />' . "\n" . '<\1>\3</\1>', |
|
| 487 | + $s |
|
| 488 | + ); |
|
| 489 | + |
|
| 490 | + |
|
| 491 | + $tableau = explode('<br />', $s); |
|
| 492 | + |
|
| 493 | + $format = "<span style='float:left;display:block;width:50px;height:1px'><a id='L%d' style='background-color: white; visibility: " . ($nocpt ? 'hidden' : 'visible') . ";%s' href='#T%s' title=\"%s\">%0" . strval(@strlen(count($tableau))) . "d</a></span> %s<br />\n"; |
|
| 494 | + |
|
| 495 | + $format10 = str_replace('white', 'lightgrey', $format); |
|
| 496 | + $formaterr = 'color: red;'; |
|
| 497 | + $i = 1; |
|
| 498 | + $flignes = []; |
|
| 499 | + $loc = [0, 0]; |
|
| 500 | + foreach ($fautifs as $lc) { |
|
| 501 | + if (is_array($lc)) { |
|
| 502 | + $l = array_shift($lc); |
|
| 503 | + $flignes[$l] = $lc; |
|
| 504 | + } else { |
|
| 505 | + $flignes[$lc] = $loc; |
|
| 506 | + } |
|
| 507 | + } |
|
| 508 | + |
|
| 509 | + $ancre = md5($texte); |
|
| 510 | + foreach ($tableau as $ligne) { |
|
| 511 | + if (isset($flignes[$i])) { |
|
| 512 | + $ligne = str_replace(' ', ' ', $ligne); |
|
| 513 | + $indexmesg = $flignes[$i][1]; |
|
| 514 | + $err = textebrut($flignes[$i][2]); |
|
| 515 | + // tentative de pointer sur la colonne fautive; |
|
| 516 | + // marche pas car highlight_string rajoute des entites. A revoir. |
|
| 517 | + // $m = $flignes[$i][0]; |
|
| 518 | + // $ligne = substr($ligne, 0, $m-1) . |
|
| 519 | + // sprintf($formaterr, substr($ligne,$m)); |
|
| 520 | + $bg = $formaterr; |
|
| 521 | + } else { |
|
| 522 | + $indexmesg = $ancre; |
|
| 523 | + $err = $bg = ''; |
|
| 524 | + } |
|
| 525 | + $res .= sprintf((($i % 10) ? $format : $format10), $i, $bg, $indexmesg, $err, $i, $ligne); |
|
| 526 | + $i++; |
|
| 527 | + } |
|
| 528 | + |
|
| 529 | + return "<div id='T$ancre'>" |
|
| 530 | + . '<div onclick="' |
|
| 531 | + . "jQuery(this).parent().find('a').toggle();" |
|
| 532 | + . '" title="' |
|
| 533 | + . _T('masquer_colonne') |
|
| 534 | + . '" style="cursor: pointer;">' |
|
| 535 | + . ($nocpt ? '' : _T('info_numero_abbreviation')) |
|
| 536 | + . '</div> |
|
| 537 | 537 | ' . $res . "</div>\n"; |
| 538 | 538 | } |
| 539 | 539 | |
| 540 | 540 | // l'environnement graphique du debuggueur |
| 541 | 541 | |
| 542 | 542 | function debusquer_squelette($fonc, $mode, $self) { |
| 543 | - $legend = null; |
|
| 544 | - $texte = ''; |
|
| 545 | - |
|
| 546 | - if ($mode !== 'validation') { |
|
| 547 | - if (isset($GLOBALS['debug_objets']['sourcefile']) and $GLOBALS['debug_objets']['sourcefile']) { |
|
| 548 | - $res = "<div id='spip-boucles'>\n" |
|
| 549 | - . debusquer_navigation_squelettes($self) |
|
| 550 | - . '</div>'; |
|
| 551 | - } else { |
|
| 552 | - $res = ''; |
|
| 553 | - } |
|
| 554 | - if ($fonc) { |
|
| 555 | - $id = " id='$fonc'"; |
|
| 556 | - if (!empty($GLOBALS['debug_objets'][$mode][$fonc])) { |
|
| 557 | - [$legend, $texte, $res2] = debusquer_source($fonc, $mode); |
|
| 558 | - $texte .= $res2; |
|
| 559 | - } elseif (!empty($GLOBALS['debug_objets'][$mode][$fonc . 'tout'])) { |
|
| 560 | - $legend = _T('zbug_' . $mode); |
|
| 561 | - $texte = $GLOBALS['debug_objets'][$mode][$fonc . 'tout']; |
|
| 562 | - $texte = ancre_texte($texte, ['', '']); |
|
| 563 | - } |
|
| 564 | - } else { |
|
| 565 | - if (strlen(trim($res))) { |
|
| 566 | - return "<img src='" . chemin_image('debug-xx.svg') . "' alt='afficher-masquer le debug' id='spip-debug-toggle' onclick=\"var x = document.getElementById('spip-debug'); (x.style.display == '' ? x.style.display = 'none' : x.style.display = '');\" /><div id='spip-debug'>$res</div>"; |
|
| 567 | - } else { |
|
| 568 | - // cas de l'appel sur erreur: montre la page |
|
| 569 | - return $GLOBALS['debug_objets']['resultat']['tout'] ?? ''; |
|
| 570 | - } |
|
| 571 | - } |
|
| 572 | - } else { |
|
| 573 | - $valider = charger_fonction('valider', 'xml'); |
|
| 574 | - $val = $valider($GLOBALS['debug_objets']['validation'][$fonc . 'tout']); |
|
| 575 | - // Si erreur, signaler leur nombre dans le formulaire admin |
|
| 576 | - $GLOBALS['debug_objets']['validation'] = $val->err ? count($val->err) : ''; |
|
| 577 | - [$texte, $err] = emboite_texte($val, $fonc, $self); |
|
| 578 | - if ($err === false) { |
|
| 579 | - $err = _T('impossible'); |
|
| 580 | - } elseif ($err === true) { |
|
| 581 | - $err = _T('correcte'); |
|
| 582 | - } else { |
|
| 583 | - $err = ": $err"; |
|
| 584 | - } |
|
| 585 | - $legend = _T('validation') . ' ' . $err; |
|
| 586 | - $res = $id = ''; |
|
| 587 | - } |
|
| 588 | - |
|
| 589 | - return !trim($texte) ? '' : ( |
|
| 590 | - "<img src='" . chemin_image('debug-xx.svg') . "' alt='afficher-masquer le debug' id='spip-debug-toggle' onclick=\"var x = document.getElementById('spip-debug'); (x.style.display == '' ? x.style.display = 'none' : x.style.display = '');\" /><div id='spip-debug'>$res" |
|
| 591 | - . "<div id='debug_boucle'><fieldset$id><legend>" |
|
| 592 | - . "<a href='" . $self . '#f_' . substr($fonc, 0, 37) . "'> ↑ " |
|
| 593 | - . ($legend ?: $mode) |
|
| 594 | - . '</a></legend>' |
|
| 595 | - . $texte |
|
| 596 | - . '</fieldset></div>' |
|
| 597 | - . '</div>'); |
|
| 543 | + $legend = null; |
|
| 544 | + $texte = ''; |
|
| 545 | + |
|
| 546 | + if ($mode !== 'validation') { |
|
| 547 | + if (isset($GLOBALS['debug_objets']['sourcefile']) and $GLOBALS['debug_objets']['sourcefile']) { |
|
| 548 | + $res = "<div id='spip-boucles'>\n" |
|
| 549 | + . debusquer_navigation_squelettes($self) |
|
| 550 | + . '</div>'; |
|
| 551 | + } else { |
|
| 552 | + $res = ''; |
|
| 553 | + } |
|
| 554 | + if ($fonc) { |
|
| 555 | + $id = " id='$fonc'"; |
|
| 556 | + if (!empty($GLOBALS['debug_objets'][$mode][$fonc])) { |
|
| 557 | + [$legend, $texte, $res2] = debusquer_source($fonc, $mode); |
|
| 558 | + $texte .= $res2; |
|
| 559 | + } elseif (!empty($GLOBALS['debug_objets'][$mode][$fonc . 'tout'])) { |
|
| 560 | + $legend = _T('zbug_' . $mode); |
|
| 561 | + $texte = $GLOBALS['debug_objets'][$mode][$fonc . 'tout']; |
|
| 562 | + $texte = ancre_texte($texte, ['', '']); |
|
| 563 | + } |
|
| 564 | + } else { |
|
| 565 | + if (strlen(trim($res))) { |
|
| 566 | + return "<img src='" . chemin_image('debug-xx.svg') . "' alt='afficher-masquer le debug' id='spip-debug-toggle' onclick=\"var x = document.getElementById('spip-debug'); (x.style.display == '' ? x.style.display = 'none' : x.style.display = '');\" /><div id='spip-debug'>$res</div>"; |
|
| 567 | + } else { |
|
| 568 | + // cas de l'appel sur erreur: montre la page |
|
| 569 | + return $GLOBALS['debug_objets']['resultat']['tout'] ?? ''; |
|
| 570 | + } |
|
| 571 | + } |
|
| 572 | + } else { |
|
| 573 | + $valider = charger_fonction('valider', 'xml'); |
|
| 574 | + $val = $valider($GLOBALS['debug_objets']['validation'][$fonc . 'tout']); |
|
| 575 | + // Si erreur, signaler leur nombre dans le formulaire admin |
|
| 576 | + $GLOBALS['debug_objets']['validation'] = $val->err ? count($val->err) : ''; |
|
| 577 | + [$texte, $err] = emboite_texte($val, $fonc, $self); |
|
| 578 | + if ($err === false) { |
|
| 579 | + $err = _T('impossible'); |
|
| 580 | + } elseif ($err === true) { |
|
| 581 | + $err = _T('correcte'); |
|
| 582 | + } else { |
|
| 583 | + $err = ": $err"; |
|
| 584 | + } |
|
| 585 | + $legend = _T('validation') . ' ' . $err; |
|
| 586 | + $res = $id = ''; |
|
| 587 | + } |
|
| 588 | + |
|
| 589 | + return !trim($texte) ? '' : ( |
|
| 590 | + "<img src='" . chemin_image('debug-xx.svg') . "' alt='afficher-masquer le debug' id='spip-debug-toggle' onclick=\"var x = document.getElementById('spip-debug'); (x.style.display == '' ? x.style.display = 'none' : x.style.display = '');\" /><div id='spip-debug'>$res" |
|
| 591 | + . "<div id='debug_boucle'><fieldset$id><legend>" |
|
| 592 | + . "<a href='" . $self . '#f_' . substr($fonc, 0, 37) . "'> ↑ " |
|
| 593 | + . ($legend ?: $mode) |
|
| 594 | + . '</a></legend>' |
|
| 595 | + . $texte |
|
| 596 | + . '</fieldset></div>' |
|
| 597 | + . '</div>'); |
|
| 598 | 598 | } |
| 599 | 599 | |
| 600 | 600 | |
| 601 | 601 | function emboite_texte($res, $fonc = '', $self = '') { |
| 602 | - $errs = $res->err; |
|
| 603 | - $texte = $res->entete . ($errs ? '' : $res->page); |
|
| 604 | - |
|
| 605 | - if (!$texte and !$errs) { |
|
| 606 | - return [ancre_texte('', ['', '']), false]; |
|
| 607 | - } |
|
| 608 | - if (!$errs) { |
|
| 609 | - return [ancre_texte($texte, ['', '']), true]; |
|
| 610 | - } |
|
| 611 | - |
|
| 612 | - if (!isset($GLOBALS['debug_objets'])) { |
|
| 613 | - $colors = ['#e0e0f0', '#f8f8ff']; |
|
| 614 | - $encore = count_occ($errs); |
|
| 615 | - $encore2 = []; |
|
| 616 | - $fautifs = []; |
|
| 617 | - |
|
| 618 | - $err = '<tr><th>' |
|
| 619 | - . _T('numero') |
|
| 620 | - . '</th><th>' |
|
| 621 | - . _T('occurence') |
|
| 622 | - . '</th><th>' |
|
| 623 | - . _T('ligne') |
|
| 624 | - . '</th><th>' |
|
| 625 | - . _T('colonne') |
|
| 626 | - . '</th><th>' |
|
| 627 | - . _T('erreur') |
|
| 628 | - . '</th></tr>'; |
|
| 629 | - |
|
| 630 | - $i = 0; |
|
| 631 | - $style = "style='text-align: right; padding-right: 5px'"; |
|
| 632 | - foreach ($errs as $r) { |
|
| 633 | - $i++; |
|
| 634 | - [$msg, $ligne, $col] = $r; |
|
| 635 | - #spip_log("$r = list($msg, $ligne, $col"); |
|
| 636 | - if (isset($encore2[$msg])) { |
|
| 637 | - $ref = ++$encore2[$msg]; |
|
| 638 | - } else { |
|
| 639 | - $encore2[$msg] = $ref = 1; |
|
| 640 | - } |
|
| 641 | - $err .= "<tr style='background-color: " |
|
| 642 | - . $colors[$i % 2] |
|
| 643 | - . "'><td $style><a href='#debut_err'>" |
|
| 644 | - . $i |
|
| 645 | - . "</a></td><td $style>" |
|
| 646 | - . "$ref/$encore[$msg]</td>" |
|
| 647 | - . "<td $style><a href='#L" |
|
| 648 | - . $ligne |
|
| 649 | - . "' id='T$i'>" |
|
| 650 | - . $ligne |
|
| 651 | - . "</a></td><td $style>" |
|
| 652 | - . $col |
|
| 653 | - . "</td><td>$msg</td></tr>\n"; |
|
| 654 | - $fautifs[] = [$ligne, $col, $i, $msg]; |
|
| 655 | - } |
|
| 656 | - $err = "<h2 style='text-align: center'>" |
|
| 657 | - . $i |
|
| 658 | - . "<a href='#fin_err'>" |
|
| 659 | - . ' ' . _T('erreur_texte') |
|
| 660 | - . "</a></h2><table id='debut_err' style='width: 100%'>" |
|
| 661 | - . $err |
|
| 662 | - . " </table><a id='fin_err'></a>"; |
|
| 663 | - |
|
| 664 | - return [ancre_texte($texte, $fautifs), $err]; |
|
| 665 | - } else { |
|
| 666 | - [$msg, $fermant, $ouvrant] = $errs[0]; |
|
| 667 | - $rf = reference_boucle_debug($fermant, $fonc, $self); |
|
| 668 | - $ro = reference_boucle_debug($ouvrant, $fonc, $self); |
|
| 669 | - $err = $msg . |
|
| 670 | - "<a href='#L" . $fermant . "'>$fermant</a>$rf<br />" . |
|
| 671 | - "<a href='#L" . $ouvrant . "'>$ouvrant</a>$ro"; |
|
| 672 | - |
|
| 673 | - return [ancre_texte($texte, [[$ouvrant], [$fermant]]), $err]; |
|
| 674 | - } |
|
| 602 | + $errs = $res->err; |
|
| 603 | + $texte = $res->entete . ($errs ? '' : $res->page); |
|
| 604 | + |
|
| 605 | + if (!$texte and !$errs) { |
|
| 606 | + return [ancre_texte('', ['', '']), false]; |
|
| 607 | + } |
|
| 608 | + if (!$errs) { |
|
| 609 | + return [ancre_texte($texte, ['', '']), true]; |
|
| 610 | + } |
|
| 611 | + |
|
| 612 | + if (!isset($GLOBALS['debug_objets'])) { |
|
| 613 | + $colors = ['#e0e0f0', '#f8f8ff']; |
|
| 614 | + $encore = count_occ($errs); |
|
| 615 | + $encore2 = []; |
|
| 616 | + $fautifs = []; |
|
| 617 | + |
|
| 618 | + $err = '<tr><th>' |
|
| 619 | + . _T('numero') |
|
| 620 | + . '</th><th>' |
|
| 621 | + . _T('occurence') |
|
| 622 | + . '</th><th>' |
|
| 623 | + . _T('ligne') |
|
| 624 | + . '</th><th>' |
|
| 625 | + . _T('colonne') |
|
| 626 | + . '</th><th>' |
|
| 627 | + . _T('erreur') |
|
| 628 | + . '</th></tr>'; |
|
| 629 | + |
|
| 630 | + $i = 0; |
|
| 631 | + $style = "style='text-align: right; padding-right: 5px'"; |
|
| 632 | + foreach ($errs as $r) { |
|
| 633 | + $i++; |
|
| 634 | + [$msg, $ligne, $col] = $r; |
|
| 635 | + #spip_log("$r = list($msg, $ligne, $col"); |
|
| 636 | + if (isset($encore2[$msg])) { |
|
| 637 | + $ref = ++$encore2[$msg]; |
|
| 638 | + } else { |
|
| 639 | + $encore2[$msg] = $ref = 1; |
|
| 640 | + } |
|
| 641 | + $err .= "<tr style='background-color: " |
|
| 642 | + . $colors[$i % 2] |
|
| 643 | + . "'><td $style><a href='#debut_err'>" |
|
| 644 | + . $i |
|
| 645 | + . "</a></td><td $style>" |
|
| 646 | + . "$ref/$encore[$msg]</td>" |
|
| 647 | + . "<td $style><a href='#L" |
|
| 648 | + . $ligne |
|
| 649 | + . "' id='T$i'>" |
|
| 650 | + . $ligne |
|
| 651 | + . "</a></td><td $style>" |
|
| 652 | + . $col |
|
| 653 | + . "</td><td>$msg</td></tr>\n"; |
|
| 654 | + $fautifs[] = [$ligne, $col, $i, $msg]; |
|
| 655 | + } |
|
| 656 | + $err = "<h2 style='text-align: center'>" |
|
| 657 | + . $i |
|
| 658 | + . "<a href='#fin_err'>" |
|
| 659 | + . ' ' . _T('erreur_texte') |
|
| 660 | + . "</a></h2><table id='debut_err' style='width: 100%'>" |
|
| 661 | + . $err |
|
| 662 | + . " </table><a id='fin_err'></a>"; |
|
| 663 | + |
|
| 664 | + return [ancre_texte($texte, $fautifs), $err]; |
|
| 665 | + } else { |
|
| 666 | + [$msg, $fermant, $ouvrant] = $errs[0]; |
|
| 667 | + $rf = reference_boucle_debug($fermant, $fonc, $self); |
|
| 668 | + $ro = reference_boucle_debug($ouvrant, $fonc, $self); |
|
| 669 | + $err = $msg . |
|
| 670 | + "<a href='#L" . $fermant . "'>$fermant</a>$rf<br />" . |
|
| 671 | + "<a href='#L" . $ouvrant . "'>$ouvrant</a>$ro"; |
|
| 672 | + |
|
| 673 | + return [ancre_texte($texte, [[$ouvrant], [$fermant]]), $err]; |
|
| 674 | + } |
|
| 675 | 675 | } |
| 676 | 676 | |
| 677 | 677 | function count_occ($regs) { |
| 678 | - $encore = []; |
|
| 679 | - foreach ($regs as $r) { |
|
| 680 | - if (isset($encore[$r[0]])) { |
|
| 681 | - $encore[$r[0]]++; |
|
| 682 | - } else { |
|
| 683 | - $encore[$r[0]] = 1; |
|
| 684 | - } |
|
| 685 | - } |
|
| 686 | - |
|
| 687 | - return $encore; |
|
| 678 | + $encore = []; |
|
| 679 | + foreach ($regs as $r) { |
|
| 680 | + if (isset($encore[$r[0]])) { |
|
| 681 | + $encore[$r[0]]++; |
|
| 682 | + } else { |
|
| 683 | + $encore[$r[0]] = 1; |
|
| 684 | + } |
|
| 685 | + } |
|
| 686 | + |
|
| 687 | + return $encore; |
|
| 688 | 688 | } |
| 689 | 689 | |
| 690 | 690 | function debusquer_navigation_squelettes($self) { |
| 691 | 691 | |
| 692 | - $res = ''; |
|
| 693 | - $boucles = !empty($GLOBALS['debug_objets']['boucle']) ? $GLOBALS['debug_objets']['boucle'] : ''; |
|
| 694 | - $contexte = $GLOBALS['debug_objets']['contexte']; |
|
| 695 | - $t_skel = _T('squelette'); |
|
| 696 | - foreach ($GLOBALS['debug_objets']['sourcefile'] as $nom => $sourcefile) { |
|
| 697 | - $self2 = parametre_url($self, 'var_mode_objet', $nom); |
|
| 698 | - $nav = !$boucles ? '' : debusquer_navigation_boucles($boucles, $nom, $self, $sourcefile); |
|
| 699 | - $temps = !isset($GLOBALS['debug_objets']['profile'][$sourcefile]) ? '' : _T( |
|
| 700 | - 'zbug_profile', |
|
| 701 | - ['time' => $GLOBALS['debug_objets']['profile'][$sourcefile]] |
|
| 702 | - ); |
|
| 703 | - |
|
| 704 | - $res .= "<fieldset id='f_" . $nom . "'><legend>" |
|
| 705 | - . $t_skel |
|
| 706 | - . ' ' |
|
| 707 | - . $sourcefile |
|
| 708 | - . " :\n<a href='$self2&var_mode_affiche=squelette#f_$nom'>" |
|
| 709 | - . $t_skel |
|
| 710 | - . "</a>\n<a href='$self2&var_mode_affiche=resultat#f_$nom'>" |
|
| 711 | - . _T('zbug_resultat') |
|
| 712 | - . "</a>\n<a href='$self2&var_mode_affiche=code#f_$nom'>" |
|
| 713 | - . _T('zbug_code') |
|
| 714 | - . "</a>\n<a href='" |
|
| 715 | - . str_replace('var_mode=debug', 'var_profile=1&var_mode=recalcul', $self) |
|
| 716 | - . "'>" |
|
| 717 | - . _T('zbug_calcul') |
|
| 718 | - . '</a></legend>' |
|
| 719 | - . (!$temps ? '' : ("\n<span style='display:block;float:" . $GLOBALS['spip_lang_right'] . "'>$temps</span><br />")) |
|
| 720 | - . debusquer_contexte($contexte[$sourcefile]) |
|
| 721 | - . (!$nav ? '' : ("<table width='100%'>\n$nav</table>\n")) |
|
| 722 | - . "</fieldset>\n"; |
|
| 723 | - } |
|
| 724 | - |
|
| 725 | - return $res; |
|
| 692 | + $res = ''; |
|
| 693 | + $boucles = !empty($GLOBALS['debug_objets']['boucle']) ? $GLOBALS['debug_objets']['boucle'] : ''; |
|
| 694 | + $contexte = $GLOBALS['debug_objets']['contexte']; |
|
| 695 | + $t_skel = _T('squelette'); |
|
| 696 | + foreach ($GLOBALS['debug_objets']['sourcefile'] as $nom => $sourcefile) { |
|
| 697 | + $self2 = parametre_url($self, 'var_mode_objet', $nom); |
|
| 698 | + $nav = !$boucles ? '' : debusquer_navigation_boucles($boucles, $nom, $self, $sourcefile); |
|
| 699 | + $temps = !isset($GLOBALS['debug_objets']['profile'][$sourcefile]) ? '' : _T( |
|
| 700 | + 'zbug_profile', |
|
| 701 | + ['time' => $GLOBALS['debug_objets']['profile'][$sourcefile]] |
|
| 702 | + ); |
|
| 703 | + |
|
| 704 | + $res .= "<fieldset id='f_" . $nom . "'><legend>" |
|
| 705 | + . $t_skel |
|
| 706 | + . ' ' |
|
| 707 | + . $sourcefile |
|
| 708 | + . " :\n<a href='$self2&var_mode_affiche=squelette#f_$nom'>" |
|
| 709 | + . $t_skel |
|
| 710 | + . "</a>\n<a href='$self2&var_mode_affiche=resultat#f_$nom'>" |
|
| 711 | + . _T('zbug_resultat') |
|
| 712 | + . "</a>\n<a href='$self2&var_mode_affiche=code#f_$nom'>" |
|
| 713 | + . _T('zbug_code') |
|
| 714 | + . "</a>\n<a href='" |
|
| 715 | + . str_replace('var_mode=debug', 'var_profile=1&var_mode=recalcul', $self) |
|
| 716 | + . "'>" |
|
| 717 | + . _T('zbug_calcul') |
|
| 718 | + . '</a></legend>' |
|
| 719 | + . (!$temps ? '' : ("\n<span style='display:block;float:" . $GLOBALS['spip_lang_right'] . "'>$temps</span><br />")) |
|
| 720 | + . debusquer_contexte($contexte[$sourcefile]) |
|
| 721 | + . (!$nav ? '' : ("<table width='100%'>\n$nav</table>\n")) |
|
| 722 | + . "</fieldset>\n"; |
|
| 723 | + } |
|
| 724 | + |
|
| 725 | + return $res; |
|
| 726 | 726 | } |
| 727 | 727 | |
| 728 | 728 | function debusquer_navigation_boucles($boucles, $nom_skel, $self, $nom_source) { |
| 729 | - $i = 0; |
|
| 730 | - $res = ''; |
|
| 731 | - $var_mode_objet = _request('var_mode_objet'); |
|
| 732 | - $gram = preg_match('/[.](\w+)$/', $nom_source, $r) ? $r[1] : ''; |
|
| 733 | - |
|
| 734 | - foreach ($boucles as $objet => $boucle) { |
|
| 735 | - if (substr($objet, 0, strlen($nom_skel)) == $nom_skel) { |
|
| 736 | - $i++; |
|
| 737 | - $nom = $boucle->id_boucle; |
|
| 738 | - $req = $boucle->type_requete; |
|
| 739 | - $crit = public_decompiler($boucle, $gram, 0, 'criteres'); |
|
| 740 | - $self2 = $self . '&var_mode_objet=' . $objet; |
|
| 741 | - |
|
| 742 | - $res .= "\n<tr style='background-color: " . |
|
| 743 | - ($i % 2 ? '#e0e0f0' : '#f8f8ff') . |
|
| 744 | - "'><td align='right'>$i</td><td>\n" . |
|
| 745 | - "<a class='debug_link_boucle' href='" . |
|
| 746 | - $self2 . |
|
| 747 | - "&var_mode_affiche=boucle#f_$nom_skel'>" . |
|
| 748 | - _T('zbug_boucle') . |
|
| 749 | - "</a></td><td>\n<a class='debug_link_boucle' href='" . |
|
| 750 | - $self2 . |
|
| 751 | - "&var_mode_affiche=resultat#f_$nom_skel'>" . |
|
| 752 | - _T('zbug_resultat') . |
|
| 753 | - "</a></td><td>\n<a class='debug_link_resultat' href='" . |
|
| 754 | - $self2 . |
|
| 755 | - "&var_mode_affiche=code#f_$nom_skel'>" . |
|
| 756 | - _T('zbug_code') . |
|
| 757 | - "</a></td><td>\n<a class='debug_link_resultat' href='" . |
|
| 758 | - str_replace('var_mode=', 'var_profile=', $self2) . |
|
| 759 | - "'>" . |
|
| 760 | - _T('zbug_calcul') . |
|
| 761 | - "</a></td><td>\n" . |
|
| 762 | - (($var_mode_objet == $objet) ? "<b>$nom</b>" : $nom) . |
|
| 763 | - "</td><td>\n" . |
|
| 764 | - $req . |
|
| 765 | - "</td><td>\n" . |
|
| 766 | - spip_htmlspecialchars($crit) . |
|
| 767 | - '</td></tr>'; |
|
| 768 | - } |
|
| 769 | - } |
|
| 770 | - |
|
| 771 | - return $res; |
|
| 729 | + $i = 0; |
|
| 730 | + $res = ''; |
|
| 731 | + $var_mode_objet = _request('var_mode_objet'); |
|
| 732 | + $gram = preg_match('/[.](\w+)$/', $nom_source, $r) ? $r[1] : ''; |
|
| 733 | + |
|
| 734 | + foreach ($boucles as $objet => $boucle) { |
|
| 735 | + if (substr($objet, 0, strlen($nom_skel)) == $nom_skel) { |
|
| 736 | + $i++; |
|
| 737 | + $nom = $boucle->id_boucle; |
|
| 738 | + $req = $boucle->type_requete; |
|
| 739 | + $crit = public_decompiler($boucle, $gram, 0, 'criteres'); |
|
| 740 | + $self2 = $self . '&var_mode_objet=' . $objet; |
|
| 741 | + |
|
| 742 | + $res .= "\n<tr style='background-color: " . |
|
| 743 | + ($i % 2 ? '#e0e0f0' : '#f8f8ff') . |
|
| 744 | + "'><td align='right'>$i</td><td>\n" . |
|
| 745 | + "<a class='debug_link_boucle' href='" . |
|
| 746 | + $self2 . |
|
| 747 | + "&var_mode_affiche=boucle#f_$nom_skel'>" . |
|
| 748 | + _T('zbug_boucle') . |
|
| 749 | + "</a></td><td>\n<a class='debug_link_boucle' href='" . |
|
| 750 | + $self2 . |
|
| 751 | + "&var_mode_affiche=resultat#f_$nom_skel'>" . |
|
| 752 | + _T('zbug_resultat') . |
|
| 753 | + "</a></td><td>\n<a class='debug_link_resultat' href='" . |
|
| 754 | + $self2 . |
|
| 755 | + "&var_mode_affiche=code#f_$nom_skel'>" . |
|
| 756 | + _T('zbug_code') . |
|
| 757 | + "</a></td><td>\n<a class='debug_link_resultat' href='" . |
|
| 758 | + str_replace('var_mode=', 'var_profile=', $self2) . |
|
| 759 | + "'>" . |
|
| 760 | + _T('zbug_calcul') . |
|
| 761 | + "</a></td><td>\n" . |
|
| 762 | + (($var_mode_objet == $objet) ? "<b>$nom</b>" : $nom) . |
|
| 763 | + "</td><td>\n" . |
|
| 764 | + $req . |
|
| 765 | + "</td><td>\n" . |
|
| 766 | + spip_htmlspecialchars($crit) . |
|
| 767 | + '</td></tr>'; |
|
| 768 | + } |
|
| 769 | + } |
|
| 770 | + |
|
| 771 | + return $res; |
|
| 772 | 772 | } |
| 773 | 773 | |
| 774 | 774 | function debusquer_source($objet, $affiche) { |
| 775 | - $quoi = $GLOBALS['debug_objets'][$affiche][$objet]; |
|
| 776 | - if (!empty($GLOBALS['debug_objets']['boucle'][$objet]->id_boucle)) { |
|
| 777 | - $nom = $GLOBALS['debug_objets']['boucle'][$objet]->id_boucle; |
|
| 778 | - } else { |
|
| 779 | - $nom = $GLOBALS['debug_objets']['sourcefile'][$objet]; |
|
| 780 | - } |
|
| 781 | - $res2 = ''; |
|
| 782 | - |
|
| 783 | - if ($affiche == 'resultat') { |
|
| 784 | - $legend = $nom; |
|
| 785 | - $req = $GLOBALS['debug_objets']['requete'][$objet]; |
|
| 786 | - if (function_exists('_mysql_traite_query')) { |
|
| 787 | - $c = strtolower(_request('connect') ?? ''); |
|
| 788 | - $c = $GLOBALS['connexions'][$c ?: 0]['prefixe']; |
|
| 789 | - $req = _mysql_traite_query($req, '', $c); |
|
| 790 | - } |
|
| 791 | - // permettre le copier/coller facile |
|
| 792 | - // $res = ancre_texte($req, array(), true); |
|
| 793 | - $res = "<div id='T" . md5($req) . "'>\n<pre>\n" . $req . "</pre>\n</div>\n"; |
|
| 794 | - // formatage et affichage des resultats bruts de la requete |
|
| 795 | - $ress_req = spip_query($req); |
|
| 796 | - $brut_sql = ''; |
|
| 797 | - $num = 1; |
|
| 798 | - // eviter l'affichage de milliers de lignes |
|
| 799 | - // personnalisation possible dans mes_options |
|
| 800 | - $max_aff = defined('_MAX_DEBUG_AFF') ? _MAX_DEBUG_AFF : 50; |
|
| 801 | - while ($retours_sql = sql_fetch($ress_req)) { |
|
| 802 | - if ($num <= $max_aff) { |
|
| 803 | - $brut_sql .= '<h3>' . ($num == 1 ? $num . ' sur ' . sql_count($ress_req) : $num) . '</h3>'; |
|
| 804 | - $brut_sql .= '<p>'; |
|
| 805 | - foreach ($retours_sql as $key => $val) { |
|
| 806 | - $brut_sql .= '<strong>' . $key . '</strong> => ' . spip_htmlspecialchars(couper($val, 150)) . "<br />\n"; |
|
| 807 | - } |
|
| 808 | - $brut_sql .= '</p>'; |
|
| 809 | - } |
|
| 810 | - $num++; |
|
| 811 | - } |
|
| 812 | - $res2 = interdire_scripts($brut_sql); |
|
| 813 | - foreach ($quoi as $view) { |
|
| 814 | - // ne pas afficher les $contexte_inclus |
|
| 815 | - $view = preg_replace(',<\?php.+\?[>],Uims', '', $view); |
|
| 816 | - if ($view) { |
|
| 817 | - $res2 .= "\n<br /><fieldset>" . interdire_scripts($view) . '</fieldset>'; |
|
| 818 | - } |
|
| 819 | - } |
|
| 820 | - } elseif ($affiche == 'code') { |
|
| 821 | - $legend = $nom; |
|
| 822 | - $res = ancre_texte('<' . "?php\n" . $quoi . "\n?" . '>'); |
|
| 823 | - } elseif ($affiche == 'boucle') { |
|
| 824 | - $legend = _T('zbug_boucle') . ' ' . $nom; |
|
| 825 | - // Le compilateur prefixe le nom des boucles par l'extension du fichier source. |
|
| 826 | - $gram = preg_match('/^([^_]+)_/', $objet, $r) ? $r[1] : ''; |
|
| 827 | - $res = ancre_texte(public_decompiler($quoi, $gram, 0, 'boucle')); |
|
| 828 | - } elseif ($affiche == 'squelette') { |
|
| 829 | - $legend = $GLOBALS['debug_objets']['sourcefile'][$objet]; |
|
| 830 | - $res = ancre_texte($GLOBALS['debug_objets']['squelette'][$objet]); |
|
| 831 | - } |
|
| 832 | - |
|
| 833 | - return [$legend, $res, $res2]; |
|
| 775 | + $quoi = $GLOBALS['debug_objets'][$affiche][$objet]; |
|
| 776 | + if (!empty($GLOBALS['debug_objets']['boucle'][$objet]->id_boucle)) { |
|
| 777 | + $nom = $GLOBALS['debug_objets']['boucle'][$objet]->id_boucle; |
|
| 778 | + } else { |
|
| 779 | + $nom = $GLOBALS['debug_objets']['sourcefile'][$objet]; |
|
| 780 | + } |
|
| 781 | + $res2 = ''; |
|
| 782 | + |
|
| 783 | + if ($affiche == 'resultat') { |
|
| 784 | + $legend = $nom; |
|
| 785 | + $req = $GLOBALS['debug_objets']['requete'][$objet]; |
|
| 786 | + if (function_exists('_mysql_traite_query')) { |
|
| 787 | + $c = strtolower(_request('connect') ?? ''); |
|
| 788 | + $c = $GLOBALS['connexions'][$c ?: 0]['prefixe']; |
|
| 789 | + $req = _mysql_traite_query($req, '', $c); |
|
| 790 | + } |
|
| 791 | + // permettre le copier/coller facile |
|
| 792 | + // $res = ancre_texte($req, array(), true); |
|
| 793 | + $res = "<div id='T" . md5($req) . "'>\n<pre>\n" . $req . "</pre>\n</div>\n"; |
|
| 794 | + // formatage et affichage des resultats bruts de la requete |
|
| 795 | + $ress_req = spip_query($req); |
|
| 796 | + $brut_sql = ''; |
|
| 797 | + $num = 1; |
|
| 798 | + // eviter l'affichage de milliers de lignes |
|
| 799 | + // personnalisation possible dans mes_options |
|
| 800 | + $max_aff = defined('_MAX_DEBUG_AFF') ? _MAX_DEBUG_AFF : 50; |
|
| 801 | + while ($retours_sql = sql_fetch($ress_req)) { |
|
| 802 | + if ($num <= $max_aff) { |
|
| 803 | + $brut_sql .= '<h3>' . ($num == 1 ? $num . ' sur ' . sql_count($ress_req) : $num) . '</h3>'; |
|
| 804 | + $brut_sql .= '<p>'; |
|
| 805 | + foreach ($retours_sql as $key => $val) { |
|
| 806 | + $brut_sql .= '<strong>' . $key . '</strong> => ' . spip_htmlspecialchars(couper($val, 150)) . "<br />\n"; |
|
| 807 | + } |
|
| 808 | + $brut_sql .= '</p>'; |
|
| 809 | + } |
|
| 810 | + $num++; |
|
| 811 | + } |
|
| 812 | + $res2 = interdire_scripts($brut_sql); |
|
| 813 | + foreach ($quoi as $view) { |
|
| 814 | + // ne pas afficher les $contexte_inclus |
|
| 815 | + $view = preg_replace(',<\?php.+\?[>],Uims', '', $view); |
|
| 816 | + if ($view) { |
|
| 817 | + $res2 .= "\n<br /><fieldset>" . interdire_scripts($view) . '</fieldset>'; |
|
| 818 | + } |
|
| 819 | + } |
|
| 820 | + } elseif ($affiche == 'code') { |
|
| 821 | + $legend = $nom; |
|
| 822 | + $res = ancre_texte('<' . "?php\n" . $quoi . "\n?" . '>'); |
|
| 823 | + } elseif ($affiche == 'boucle') { |
|
| 824 | + $legend = _T('zbug_boucle') . ' ' . $nom; |
|
| 825 | + // Le compilateur prefixe le nom des boucles par l'extension du fichier source. |
|
| 826 | + $gram = preg_match('/^([^_]+)_/', $objet, $r) ? $r[1] : ''; |
|
| 827 | + $res = ancre_texte(public_decompiler($quoi, $gram, 0, 'boucle')); |
|
| 828 | + } elseif ($affiche == 'squelette') { |
|
| 829 | + $legend = $GLOBALS['debug_objets']['sourcefile'][$objet]; |
|
| 830 | + $res = ancre_texte($GLOBALS['debug_objets']['squelette'][$objet]); |
|
| 831 | + } |
|
| 832 | + |
|
| 833 | + return [$legend, $res, $res2]; |
|
| 834 | 834 | } |
| 835 | 835 | |
| 836 | 836 | function debusquer_entete($titre, $corps) { |
| 837 | 837 | |
| 838 | - include_spip('balise/formulaire_admin'); |
|
| 839 | - include_spip('public/assembler'); // pour inclure_balise_dynamique |
|
| 840 | - include_spip('inc/texte'); // pour corriger_typo |
|
| 841 | - |
|
| 842 | - return _DOCTYPE_ECRIRE . |
|
| 843 | - html_lang_attributes() . |
|
| 844 | - "<head>\n<title>" . |
|
| 845 | - ('SPIP ' . $GLOBALS['spip_version_affichee'] . ' ' . |
|
| 846 | - _T('admin_debug') . ' ' . spip_htmlspecialchars($titre) . ' (' . |
|
| 847 | - supprimer_tags(corriger_typo($GLOBALS['meta']['nom_site']))) . |
|
| 848 | - ")</title>\n" . |
|
| 849 | - "<meta http-equiv='Content-Type' content='text/html" . |
|
| 850 | - (($c = $GLOBALS['meta']['charset']) ? "; charset=$c" : '') . |
|
| 851 | - "' />\n" . |
|
| 852 | - http_script('', 'jquery.js') |
|
| 853 | - . "<link rel='stylesheet' href='" . url_absolue(find_in_path('spip_admin.css')) |
|
| 854 | - . "' type='text/css' />" . |
|
| 855 | - "</head>\n" . |
|
| 856 | - "<body style='margin:0 10px;'>\n" . |
|
| 857 | - "<div id='spip-debug-header'>" . |
|
| 858 | - $corps . |
|
| 859 | - inclure_balise_dynamique(balise_FORMULAIRE_ADMIN_dyn('spip-admin-float', $GLOBALS['debug_objets']), false) . |
|
| 860 | - '</div></body></html>'; |
|
| 838 | + include_spip('balise/formulaire_admin'); |
|
| 839 | + include_spip('public/assembler'); // pour inclure_balise_dynamique |
|
| 840 | + include_spip('inc/texte'); // pour corriger_typo |
|
| 841 | + |
|
| 842 | + return _DOCTYPE_ECRIRE . |
|
| 843 | + html_lang_attributes() . |
|
| 844 | + "<head>\n<title>" . |
|
| 845 | + ('SPIP ' . $GLOBALS['spip_version_affichee'] . ' ' . |
|
| 846 | + _T('admin_debug') . ' ' . spip_htmlspecialchars($titre) . ' (' . |
|
| 847 | + supprimer_tags(corriger_typo($GLOBALS['meta']['nom_site']))) . |
|
| 848 | + ")</title>\n" . |
|
| 849 | + "<meta http-equiv='Content-Type' content='text/html" . |
|
| 850 | + (($c = $GLOBALS['meta']['charset']) ? "; charset=$c" : '') . |
|
| 851 | + "' />\n" . |
|
| 852 | + http_script('', 'jquery.js') |
|
| 853 | + . "<link rel='stylesheet' href='" . url_absolue(find_in_path('spip_admin.css')) |
|
| 854 | + . "' type='text/css' />" . |
|
| 855 | + "</head>\n" . |
|
| 856 | + "<body style='margin:0 10px;'>\n" . |
|
| 857 | + "<div id='spip-debug-header'>" . |
|
| 858 | + $corps . |
|
| 859 | + inclure_balise_dynamique(balise_FORMULAIRE_ADMIN_dyn('spip-admin-float', $GLOBALS['debug_objets']), false) . |
|
| 860 | + '</div></body></html>'; |
|
| 861 | 861 | } |
@@ -4,507 +4,507 @@ discard block |
||
| 4 | 4 | // ** ne pas modifier le fichier ** |
| 5 | 5 | |
| 6 | 6 | if (!defined('_ECRIRE_INC_VERSION')) { |
| 7 | - return; |
|
| 7 | + return; |
|
| 8 | 8 | } |
| 9 | 9 | |
| 10 | 10 | $GLOBALS[$GLOBALS['idx_lang']] = array( |
| 11 | 11 | |
| 12 | - // A |
|
| 13 | - 'access_interface_graphique' => 'Tornar a l’interfàcia grafica completa', |
|
| 14 | - 'access_mode_texte' => 'Afichar l’interfàcia textuala simplificada', |
|
| 15 | - 'admin_debug' => 'desbugatge', |
|
| 16 | - 'admin_modifier_article' => 'Modificar aquel article', |
|
| 17 | - 'admin_modifier_auteur' => 'Modificar aquel autor', |
|
| 18 | - 'admin_modifier_breve' => 'Modificar aquela brèva', |
|
| 19 | - 'admin_modifier_mot' => 'Modificar aquel mot clau', |
|
| 20 | - 'admin_modifier_rubrique' => 'Modificar aquela rubrica', |
|
| 21 | - 'admin_recalculer' => 'Tornar calcular la pagina', |
|
| 22 | - 'afficher_trad' => 'mostrar las reviradas', |
|
| 23 | - 'alerte_maj_impossible' => '<b>Alèrta!</b> Es impossible d’actualizar la basa SQL vèrs la version @version@; saique i a un problèma relatiu al drech de modificar la basa de donadas. Volgatz contactar vòstre albergador.', |
|
| 24 | - 'analyse_xml' => 'Analisi XML', |
|
| 25 | - 'annuler' => 'Anullar', |
|
| 26 | - 'antispam_champ_vide' => 'Volgatz daissar aquel camp void :', |
|
| 27 | - 'articles_recents' => 'Los articles mai recents', |
|
| 28 | - 'avis_archive_incorrect' => 'lo fichièr archiu es pas un fichièr SPIP', |
|
| 29 | - 'avis_archive_invalide' => 'lo fichièr archiu es pas valid', |
|
| 30 | - 'avis_attention' => 'ATENCION!', |
|
| 31 | - 'avis_champ_incorrect_type_objet' => 'Nom de camp incorrècte @name@ per objècte de tipe @type@', |
|
| 32 | - 'avis_colonne_inexistante' => 'La colomna @col@ existís pas', |
|
| 33 | - 'avis_erreur' => 'Error: vejatz çai jos', |
|
| 34 | - 'avis_erreur_connexion' => 'Error de connexion', |
|
| 35 | - 'avis_erreur_cookie' => 'problèma de cookie', |
|
| 36 | - 'avis_erreur_fonction_contexte' => 'Error de programacion. Cal pas apelar aquela foncion dins aquel contèxt.', |
|
| 37 | - 'avis_erreur_mysql' => 'Error SQL ', |
|
| 38 | - 'avis_erreur_sauvegarde' => 'Error dins la salvagarda (@type@ @id_objet@)! ', |
|
| 39 | - 'avis_erreur_visiteur' => 'Problèma per accedir a l’espaci privat', |
|
| 12 | + // A |
|
| 13 | + 'access_interface_graphique' => 'Tornar a l’interfàcia grafica completa', |
|
| 14 | + 'access_mode_texte' => 'Afichar l’interfàcia textuala simplificada', |
|
| 15 | + 'admin_debug' => 'desbugatge', |
|
| 16 | + 'admin_modifier_article' => 'Modificar aquel article', |
|
| 17 | + 'admin_modifier_auteur' => 'Modificar aquel autor', |
|
| 18 | + 'admin_modifier_breve' => 'Modificar aquela brèva', |
|
| 19 | + 'admin_modifier_mot' => 'Modificar aquel mot clau', |
|
| 20 | + 'admin_modifier_rubrique' => 'Modificar aquela rubrica', |
|
| 21 | + 'admin_recalculer' => 'Tornar calcular la pagina', |
|
| 22 | + 'afficher_trad' => 'mostrar las reviradas', |
|
| 23 | + 'alerte_maj_impossible' => '<b>Alèrta!</b> Es impossible d’actualizar la basa SQL vèrs la version @version@; saique i a un problèma relatiu al drech de modificar la basa de donadas. Volgatz contactar vòstre albergador.', |
|
| 24 | + 'analyse_xml' => 'Analisi XML', |
|
| 25 | + 'annuler' => 'Anullar', |
|
| 26 | + 'antispam_champ_vide' => 'Volgatz daissar aquel camp void :', |
|
| 27 | + 'articles_recents' => 'Los articles mai recents', |
|
| 28 | + 'avis_archive_incorrect' => 'lo fichièr archiu es pas un fichièr SPIP', |
|
| 29 | + 'avis_archive_invalide' => 'lo fichièr archiu es pas valid', |
|
| 30 | + 'avis_attention' => 'ATENCION!', |
|
| 31 | + 'avis_champ_incorrect_type_objet' => 'Nom de camp incorrècte @name@ per objècte de tipe @type@', |
|
| 32 | + 'avis_colonne_inexistante' => 'La colomna @col@ existís pas', |
|
| 33 | + 'avis_erreur' => 'Error: vejatz çai jos', |
|
| 34 | + 'avis_erreur_connexion' => 'Error de connexion', |
|
| 35 | + 'avis_erreur_cookie' => 'problèma de cookie', |
|
| 36 | + 'avis_erreur_fonction_contexte' => 'Error de programacion. Cal pas apelar aquela foncion dins aquel contèxt.', |
|
| 37 | + 'avis_erreur_mysql' => 'Error SQL ', |
|
| 38 | + 'avis_erreur_sauvegarde' => 'Error dins la salvagarda (@type@ @id_objet@)! ', |
|
| 39 | + 'avis_erreur_visiteur' => 'Problèma per accedir a l’espaci privat', |
|
| 40 | 40 | |
| 41 | - // B |
|
| 42 | - 'barre_a_accent_grave' => 'Inserir una A accent grèu majuscula', |
|
| 43 | - 'barre_aide' => 'Utilizar las acorchas tipograficas per enriquir vòstra compaginacion', |
|
| 44 | - 'barre_e_accent_aigu' => 'Inserir una E accent agut majuscula', |
|
| 45 | - 'barre_eo' => 'Inserir una E dins l’O', |
|
| 46 | - 'barre_eo_maj' => 'Inserir una E dins la O majuscula', |
|
| 47 | - 'barre_euro' => 'Inserir lo simbèl de l’èuro: €', |
|
| 48 | - 'barre_gras' => 'Metre en {{gras}}', |
|
| 49 | - 'barre_guillemets' => 'Enrodar amb de « verguetas »', |
|
| 50 | - 'barre_guillemets_simples' => 'Enrodar amb de „verguetas“', |
|
| 51 | - 'barre_intertitre' => 'Transformar en {{{intertítol}}}', |
|
| 52 | - 'barre_italic' => 'Metre en {italics}', |
|
| 53 | - 'barre_lien' => 'Transformar en [ligam ipertèxt->http://...]', |
|
| 54 | - 'barre_lien_input' => 'Volgatz indicar l’adreiça de vòstre ligam (podètz indicar una adreiça web jos la forma http://www.lomieusit.com o simplament indicar lo numèro d’un article d’aquel sit).', |
|
| 55 | - 'barre_note' => 'Transformar en [[Nòta de pè]]', |
|
| 56 | - 'barre_quote' => '<quote>Citar un messatge</quote>', |
|
| 57 | - 'bouton_changer' => 'Cambiar', |
|
| 58 | - 'bouton_chercher' => 'Cercar', |
|
| 59 | - 'bouton_choisir' => 'Causir', |
|
| 60 | - 'bouton_download' => 'Telecargar', # MODIF |
|
| 61 | - 'bouton_enregistrer' => 'Registrar', |
|
| 62 | - 'bouton_radio_desactiver_messagerie_interne' => 'Desactivar la messatjariá intèrna', |
|
| 63 | - 'bouton_radio_envoi_annonces' => 'Mandar los anoncis editorials', |
|
| 64 | - 'bouton_radio_non_envoi_annonces' => 'Mandar pas d’anoncis', |
|
| 65 | - 'bouton_radio_non_envoi_liste_nouveautes' => 'Mandar pas la tièra de las novetats', |
|
| 66 | - 'bouton_recharger_page' => 'tornar cargar aquela pagina', |
|
| 67 | - 'bouton_telecharger' => 'Telecargar', |
|
| 68 | - 'bouton_upload' => 'Telecargar', # MODIF |
|
| 69 | - 'bouton_valider' => 'Validar', |
|
| 41 | + // B |
|
| 42 | + 'barre_a_accent_grave' => 'Inserir una A accent grèu majuscula', |
|
| 43 | + 'barre_aide' => 'Utilizar las acorchas tipograficas per enriquir vòstra compaginacion', |
|
| 44 | + 'barre_e_accent_aigu' => 'Inserir una E accent agut majuscula', |
|
| 45 | + 'barre_eo' => 'Inserir una E dins l’O', |
|
| 46 | + 'barre_eo_maj' => 'Inserir una E dins la O majuscula', |
|
| 47 | + 'barre_euro' => 'Inserir lo simbèl de l’èuro: €', |
|
| 48 | + 'barre_gras' => 'Metre en {{gras}}', |
|
| 49 | + 'barre_guillemets' => 'Enrodar amb de « verguetas »', |
|
| 50 | + 'barre_guillemets_simples' => 'Enrodar amb de „verguetas“', |
|
| 51 | + 'barre_intertitre' => 'Transformar en {{{intertítol}}}', |
|
| 52 | + 'barre_italic' => 'Metre en {italics}', |
|
| 53 | + 'barre_lien' => 'Transformar en [ligam ipertèxt->http://...]', |
|
| 54 | + 'barre_lien_input' => 'Volgatz indicar l’adreiça de vòstre ligam (podètz indicar una adreiça web jos la forma http://www.lomieusit.com o simplament indicar lo numèro d’un article d’aquel sit).', |
|
| 55 | + 'barre_note' => 'Transformar en [[Nòta de pè]]', |
|
| 56 | + 'barre_quote' => '<quote>Citar un messatge</quote>', |
|
| 57 | + 'bouton_changer' => 'Cambiar', |
|
| 58 | + 'bouton_chercher' => 'Cercar', |
|
| 59 | + 'bouton_choisir' => 'Causir', |
|
| 60 | + 'bouton_download' => 'Telecargar', # MODIF |
|
| 61 | + 'bouton_enregistrer' => 'Registrar', |
|
| 62 | + 'bouton_radio_desactiver_messagerie_interne' => 'Desactivar la messatjariá intèrna', |
|
| 63 | + 'bouton_radio_envoi_annonces' => 'Mandar los anoncis editorials', |
|
| 64 | + 'bouton_radio_non_envoi_annonces' => 'Mandar pas d’anoncis', |
|
| 65 | + 'bouton_radio_non_envoi_liste_nouveautes' => 'Mandar pas la tièra de las novetats', |
|
| 66 | + 'bouton_recharger_page' => 'tornar cargar aquela pagina', |
|
| 67 | + 'bouton_telecharger' => 'Telecargar', |
|
| 68 | + 'bouton_upload' => 'Telecargar', # MODIF |
|
| 69 | + 'bouton_valider' => 'Validar', |
|
| 70 | 70 | |
| 71 | - // C |
|
| 72 | - 'cal_apresmidi' => 'tantòst', |
|
| 73 | - 'cal_jour_entier' => 'jorn entièr', |
|
| 74 | - 'cal_matin' => 'matin', |
|
| 75 | - 'cal_par_jour' => 'calendièr per jorn', |
|
| 76 | - 'cal_par_mois' => 'calendièr per mes', |
|
| 77 | - 'cal_par_semaine' => 'calendièr per setmana', |
|
| 78 | - 'choix_couleur_interface' => 'color ', |
|
| 79 | - 'choix_interface' => 'causir l’interfàcia', |
|
| 80 | - 'colonne' => 'Colomna', |
|
| 81 | - 'confirm_changer_statut' => 'Atencion, avètz demandat de cambiar l’estatut d’aquel element. Desiratz de contunhar? ', |
|
| 82 | - 'correcte' => 'corrècte', |
|
| 71 | + // C |
|
| 72 | + 'cal_apresmidi' => 'tantòst', |
|
| 73 | + 'cal_jour_entier' => 'jorn entièr', |
|
| 74 | + 'cal_matin' => 'matin', |
|
| 75 | + 'cal_par_jour' => 'calendièr per jorn', |
|
| 76 | + 'cal_par_mois' => 'calendièr per mes', |
|
| 77 | + 'cal_par_semaine' => 'calendièr per setmana', |
|
| 78 | + 'choix_couleur_interface' => 'color ', |
|
| 79 | + 'choix_interface' => 'causir l’interfàcia', |
|
| 80 | + 'colonne' => 'Colomna', |
|
| 81 | + 'confirm_changer_statut' => 'Atencion, avètz demandat de cambiar l’estatut d’aquel element. Desiratz de contunhar? ', |
|
| 82 | + 'correcte' => 'corrècte', |
|
| 83 | 83 | |
| 84 | - // D |
|
| 85 | - 'date_aujourdhui' => 'uèi', |
|
| 86 | - 'date_avant_jc' => 'abans lo Crist', |
|
| 87 | - 'date_dans' => 'd’aquí @delai@', |
|
| 88 | - 'date_de_mois_1' => '@j@ de genièr', |
|
| 89 | - 'date_de_mois_10' => '@j@ d’octobre', |
|
| 90 | - 'date_de_mois_11' => '@j@ de novembre', |
|
| 91 | - 'date_de_mois_12' => '@j@ de decembre', |
|
| 92 | - 'date_de_mois_2' => '@j@ de febrièr', |
|
| 93 | - 'date_de_mois_3' => '@j@ de març', |
|
| 94 | - 'date_de_mois_4' => '@j@ d’abril', |
|
| 95 | - 'date_de_mois_5' => '@j@ de mai', |
|
| 96 | - 'date_de_mois_6' => '@j@ de junh', |
|
| 97 | - 'date_de_mois_7' => '@j@ de julh', |
|
| 98 | - 'date_de_mois_8' => '@j@ d’agost', |
|
| 99 | - 'date_de_mois_9' => '@j@ de setembre', |
|
| 100 | - 'date_demain' => 'deman', |
|
| 101 | - 'date_fmt_heures_minutes' => '@h@h@m@min', |
|
| 102 | - 'date_fmt_jour_heure' => '@jour@ a @heure@', |
|
| 103 | - 'date_fmt_jour_mois' => '@jourmois@', |
|
| 104 | - 'date_fmt_jour_mois_annee' => '@jourmois@ de @annee@', |
|
| 105 | - 'date_fmt_mois_annee' => '@nommois@ de @annee@', |
|
| 106 | - 'date_fmt_nomjour_date' => 'lo @nomjour@ @date@', |
|
| 107 | - 'date_heures' => 'oras', |
|
| 108 | - 'date_hier' => 'ièr', |
|
| 109 | - 'date_il_y_a' => 'fa @delai@', |
|
| 110 | - 'date_jnum1' => '1r', |
|
| 111 | - 'date_jnum10' => '10', |
|
| 112 | - 'date_jnum11' => '11', |
|
| 113 | - 'date_jnum12' => '12', |
|
| 114 | - 'date_jnum13' => '13', |
|
| 115 | - 'date_jnum14' => '14', |
|
| 116 | - 'date_jnum15' => '15', |
|
| 117 | - 'date_jnum16' => '16', |
|
| 118 | - 'date_jnum17' => '17', |
|
| 119 | - 'date_jnum18' => '18', |
|
| 120 | - 'date_jnum19' => '19', |
|
| 121 | - 'date_jnum2' => '2', |
|
| 122 | - 'date_jnum20' => '20', |
|
| 123 | - 'date_jnum21' => '21', |
|
| 124 | - 'date_jnum22' => '22', |
|
| 125 | - 'date_jnum23' => '23', |
|
| 126 | - 'date_jnum24' => '24', |
|
| 127 | - 'date_jnum25' => '25', |
|
| 128 | - 'date_jnum26' => '26', |
|
| 129 | - 'date_jnum27' => '27', |
|
| 130 | - 'date_jnum28' => '28', |
|
| 131 | - 'date_jnum29' => '29', |
|
| 132 | - 'date_jnum3' => '3', |
|
| 133 | - 'date_jnum30' => '30', |
|
| 134 | - 'date_jnum31' => '31', |
|
| 135 | - 'date_jnum4' => '4', |
|
| 136 | - 'date_jnum5' => '5', |
|
| 137 | - 'date_jnum6' => '6', |
|
| 138 | - 'date_jnum7' => '7', |
|
| 139 | - 'date_jnum8' => '8', |
|
| 140 | - 'date_jnum9' => '9', |
|
| 141 | - 'date_jour_1' => 'dimenge', |
|
| 142 | - 'date_jour_1_abbr' => 'dmg.', |
|
| 143 | - 'date_jour_1_initiale' => 'dg.', |
|
| 144 | - 'date_jour_2' => 'diluns', |
|
| 145 | - 'date_jour_2_abbr' => 'dil.', |
|
| 146 | - 'date_jour_2_initiale' => 'dl.', |
|
| 147 | - 'date_jour_3' => 'dimars', |
|
| 148 | - 'date_jour_3_abbr' => 'dmr.', |
|
| 149 | - 'date_jour_3_initiale' => 'dm.', |
|
| 150 | - 'date_jour_4' => 'dimècres', |
|
| 151 | - 'date_jour_4_abbr' => 'dmc.', |
|
| 152 | - 'date_jour_4_initiale' => 'dc.', |
|
| 153 | - 'date_jour_5' => 'dijòus', |
|
| 154 | - 'date_jour_5_abbr' => 'dij.', |
|
| 155 | - 'date_jour_5_initiale' => 'dj.', |
|
| 156 | - 'date_jour_6' => 'divendres', |
|
| 157 | - 'date_jour_6_abbr' => 'div.', |
|
| 158 | - 'date_jour_6_initiale' => 'dv.', |
|
| 159 | - 'date_jour_7' => 'dissabte', |
|
| 160 | - 'date_jour_7_abbr' => 'dis.', |
|
| 161 | - 'date_jour_7_initiale' => 'ds.', |
|
| 162 | - 'date_jours' => 'jorns', |
|
| 163 | - 'date_minutes' => 'minutas', |
|
| 164 | - 'date_mois' => 'mes(es)', |
|
| 165 | - 'date_mois_1' => 'genièr', |
|
| 166 | - 'date_mois_10' => 'octobre', |
|
| 167 | - 'date_mois_11' => 'novembre', |
|
| 168 | - 'date_mois_12' => 'decembre', |
|
| 169 | - 'date_mois_2' => 'febrièr', |
|
| 170 | - 'date_mois_3' => 'març', |
|
| 171 | - 'date_mois_4' => 'abril', |
|
| 172 | - 'date_mois_5' => 'mai', |
|
| 173 | - 'date_mois_6' => 'junh', |
|
| 174 | - 'date_mois_7' => 'julh', |
|
| 175 | - 'date_mois_8' => 'agost', |
|
| 176 | - 'date_mois_9' => 'setembre', |
|
| 177 | - 'date_saison_1' => 'ivèrn', |
|
| 178 | - 'date_saison_2' => 'prima', |
|
| 179 | - 'date_saison_3' => 'estiu', |
|
| 180 | - 'date_saison_4' => 'davalada', |
|
| 181 | - 'date_semaines' => 'setmana(s)', |
|
| 182 | - 'dirs_commencer' => 'per començar vertadièrament l’installacion', |
|
| 183 | - 'dirs_preliminaire' => 'Preliminar: <b>Reglar los dreches d’accès</b>', |
|
| 184 | - 'dirs_probleme_droits' => 'Problèma de dreches d’accès', |
|
| 185 | - 'dirs_repertoires_absents' => '<p><b>S’es pas trobat los repertòris seguents: </b></p> <ul>@bad_dirs@.</ul> |
|
| 84 | + // D |
|
| 85 | + 'date_aujourdhui' => 'uèi', |
|
| 86 | + 'date_avant_jc' => 'abans lo Crist', |
|
| 87 | + 'date_dans' => 'd’aquí @delai@', |
|
| 88 | + 'date_de_mois_1' => '@j@ de genièr', |
|
| 89 | + 'date_de_mois_10' => '@j@ d’octobre', |
|
| 90 | + 'date_de_mois_11' => '@j@ de novembre', |
|
| 91 | + 'date_de_mois_12' => '@j@ de decembre', |
|
| 92 | + 'date_de_mois_2' => '@j@ de febrièr', |
|
| 93 | + 'date_de_mois_3' => '@j@ de març', |
|
| 94 | + 'date_de_mois_4' => '@j@ d’abril', |
|
| 95 | + 'date_de_mois_5' => '@j@ de mai', |
|
| 96 | + 'date_de_mois_6' => '@j@ de junh', |
|
| 97 | + 'date_de_mois_7' => '@j@ de julh', |
|
| 98 | + 'date_de_mois_8' => '@j@ d’agost', |
|
| 99 | + 'date_de_mois_9' => '@j@ de setembre', |
|
| 100 | + 'date_demain' => 'deman', |
|
| 101 | + 'date_fmt_heures_minutes' => '@h@h@m@min', |
|
| 102 | + 'date_fmt_jour_heure' => '@jour@ a @heure@', |
|
| 103 | + 'date_fmt_jour_mois' => '@jourmois@', |
|
| 104 | + 'date_fmt_jour_mois_annee' => '@jourmois@ de @annee@', |
|
| 105 | + 'date_fmt_mois_annee' => '@nommois@ de @annee@', |
|
| 106 | + 'date_fmt_nomjour_date' => 'lo @nomjour@ @date@', |
|
| 107 | + 'date_heures' => 'oras', |
|
| 108 | + 'date_hier' => 'ièr', |
|
| 109 | + 'date_il_y_a' => 'fa @delai@', |
|
| 110 | + 'date_jnum1' => '1r', |
|
| 111 | + 'date_jnum10' => '10', |
|
| 112 | + 'date_jnum11' => '11', |
|
| 113 | + 'date_jnum12' => '12', |
|
| 114 | + 'date_jnum13' => '13', |
|
| 115 | + 'date_jnum14' => '14', |
|
| 116 | + 'date_jnum15' => '15', |
|
| 117 | + 'date_jnum16' => '16', |
|
| 118 | + 'date_jnum17' => '17', |
|
| 119 | + 'date_jnum18' => '18', |
|
| 120 | + 'date_jnum19' => '19', |
|
| 121 | + 'date_jnum2' => '2', |
|
| 122 | + 'date_jnum20' => '20', |
|
| 123 | + 'date_jnum21' => '21', |
|
| 124 | + 'date_jnum22' => '22', |
|
| 125 | + 'date_jnum23' => '23', |
|
| 126 | + 'date_jnum24' => '24', |
|
| 127 | + 'date_jnum25' => '25', |
|
| 128 | + 'date_jnum26' => '26', |
|
| 129 | + 'date_jnum27' => '27', |
|
| 130 | + 'date_jnum28' => '28', |
|
| 131 | + 'date_jnum29' => '29', |
|
| 132 | + 'date_jnum3' => '3', |
|
| 133 | + 'date_jnum30' => '30', |
|
| 134 | + 'date_jnum31' => '31', |
|
| 135 | + 'date_jnum4' => '4', |
|
| 136 | + 'date_jnum5' => '5', |
|
| 137 | + 'date_jnum6' => '6', |
|
| 138 | + 'date_jnum7' => '7', |
|
| 139 | + 'date_jnum8' => '8', |
|
| 140 | + 'date_jnum9' => '9', |
|
| 141 | + 'date_jour_1' => 'dimenge', |
|
| 142 | + 'date_jour_1_abbr' => 'dmg.', |
|
| 143 | + 'date_jour_1_initiale' => 'dg.', |
|
| 144 | + 'date_jour_2' => 'diluns', |
|
| 145 | + 'date_jour_2_abbr' => 'dil.', |
|
| 146 | + 'date_jour_2_initiale' => 'dl.', |
|
| 147 | + 'date_jour_3' => 'dimars', |
|
| 148 | + 'date_jour_3_abbr' => 'dmr.', |
|
| 149 | + 'date_jour_3_initiale' => 'dm.', |
|
| 150 | + 'date_jour_4' => 'dimècres', |
|
| 151 | + 'date_jour_4_abbr' => 'dmc.', |
|
| 152 | + 'date_jour_4_initiale' => 'dc.', |
|
| 153 | + 'date_jour_5' => 'dijòus', |
|
| 154 | + 'date_jour_5_abbr' => 'dij.', |
|
| 155 | + 'date_jour_5_initiale' => 'dj.', |
|
| 156 | + 'date_jour_6' => 'divendres', |
|
| 157 | + 'date_jour_6_abbr' => 'div.', |
|
| 158 | + 'date_jour_6_initiale' => 'dv.', |
|
| 159 | + 'date_jour_7' => 'dissabte', |
|
| 160 | + 'date_jour_7_abbr' => 'dis.', |
|
| 161 | + 'date_jour_7_initiale' => 'ds.', |
|
| 162 | + 'date_jours' => 'jorns', |
|
| 163 | + 'date_minutes' => 'minutas', |
|
| 164 | + 'date_mois' => 'mes(es)', |
|
| 165 | + 'date_mois_1' => 'genièr', |
|
| 166 | + 'date_mois_10' => 'octobre', |
|
| 167 | + 'date_mois_11' => 'novembre', |
|
| 168 | + 'date_mois_12' => 'decembre', |
|
| 169 | + 'date_mois_2' => 'febrièr', |
|
| 170 | + 'date_mois_3' => 'març', |
|
| 171 | + 'date_mois_4' => 'abril', |
|
| 172 | + 'date_mois_5' => 'mai', |
|
| 173 | + 'date_mois_6' => 'junh', |
|
| 174 | + 'date_mois_7' => 'julh', |
|
| 175 | + 'date_mois_8' => 'agost', |
|
| 176 | + 'date_mois_9' => 'setembre', |
|
| 177 | + 'date_saison_1' => 'ivèrn', |
|
| 178 | + 'date_saison_2' => 'prima', |
|
| 179 | + 'date_saison_3' => 'estiu', |
|
| 180 | + 'date_saison_4' => 'davalada', |
|
| 181 | + 'date_semaines' => 'setmana(s)', |
|
| 182 | + 'dirs_commencer' => 'per començar vertadièrament l’installacion', |
|
| 183 | + 'dirs_preliminaire' => 'Preliminar: <b>Reglar los dreches d’accès</b>', |
|
| 184 | + 'dirs_probleme_droits' => 'Problèma de dreches d’accès', |
|
| 185 | + 'dirs_repertoires_absents' => '<p><b>S’es pas trobat los repertòris seguents: </b></p> <ul>@bad_dirs@.</ul> |
|
| 186 | 186 | <p>Se pòt que venga d’un problèma de majusculas o minusculas mal mesas. |
| 187 | 187 | Verificatz que las minusculas e majusculas d’aqueles repertòris correspondan ben amb çò afichat |
| 188 | 188 | çai subre; s’es pas lo cas, tornatz nommar los repertòris amb vòstre logicial FTP en corregir l’error.</p> |
| 189 | 189 | <p>Un còp qu’auretz fach aquò, poiretz ', |
| 190 | - 'dirs_repertoires_suivants' => '<p><b>Los repertòris seguents son pas accessibles en escritura: </b></p><ul>@bad_dirs@.</ul> </b> |
|
| 190 | + 'dirs_repertoires_suivants' => '<p><b>Los repertòris seguents son pas accessibles en escritura: </b></p><ul>@bad_dirs@.</ul> </b> |
|
| 191 | 191 | <p>Per adobar aquò, utilizatz vòstre client FTP per tal de reglar los dreches d’accès de cadun |
| 192 | 192 | d’aqueles repertòris. La guida d’installacion explica en detalh cossí cal procedir.</p> |
| 193 | 193 | <p>Tre qu’auretz facha aquela manipulacion, poiretz ', |
| 194 | - 'double_occurrence' => 'Dobla ocurréncia', # MODIF |
|
| 194 | + 'double_occurrence' => 'Dobla ocurréncia', # MODIF |
|
| 195 | 195 | |
| 196 | - // E |
|
| 197 | - 'envoi_via_le_site' => 'Mandadís amb lo biais del sit web', |
|
| 198 | - 'erreur' => 'Error', |
|
| 199 | - 'erreur_balise_non_fermee' => 'darrièra balisa non tampada :', |
|
| 200 | - 'erreur_texte' => 'error(s)', |
|
| 196 | + // E |
|
| 197 | + 'envoi_via_le_site' => 'Mandadís amb lo biais del sit web', |
|
| 198 | + 'erreur' => 'Error', |
|
| 199 | + 'erreur_balise_non_fermee' => 'darrièra balisa non tampada :', |
|
| 200 | + 'erreur_texte' => 'error(s)', |
|
| 201 | 201 | |
| 202 | - // F |
|
| 203 | - 'fichier_introuvable' => 'S’es pas pogut trobar lo fichièr @fichier@.', # MODIF |
|
| 204 | - 'form_deja_inscrit' => 'Sètz ja inscrich(a).', |
|
| 205 | - 'form_email_non_valide' => 'Vòstra adreiça e-mail es pas valida.', |
|
| 206 | - 'form_forum_access_refuse' => 'Podètz pas mai accedir a aquel sit.', |
|
| 207 | - 'form_forum_bonjour' => 'Bonjorn @nom@,,', |
|
| 208 | - 'form_forum_email_deja_enregistre' => 'Aquela adreiça e-mail ja es registrada, adoncas podètz utilizar vòstre mot de santa Clara costumièr.', |
|
| 209 | - 'form_forum_identifiant_mail' => 'Vos avèm mandat vòstre identificant novèl per e-mail.', |
|
| 210 | - 'form_forum_identifiants' => 'Identificants personals', |
|
| 211 | - 'form_forum_indiquer_nom_email' => 'Indicatz aquí vòstre nom e vòstra adreiça e-mail. Vòstre identificant personal arribarà lèu-lèu, per e-mail.', |
|
| 212 | - 'form_forum_login' => 'login :', |
|
| 213 | - 'form_forum_message_auto' => '(aquò’s un messatge automatic)', |
|
| 214 | - 'form_forum_pass' => 'mot de santa Clara :', |
|
| 215 | - 'form_forum_probleme_mail' => 'Problèma d’e-mail: se pòt pas mandar l’identificant.', |
|
| 216 | - 'form_forum_voici1' => 'Vaicí vòstres identificants per poder participar a la vida |
|
| 202 | + // F |
|
| 203 | + 'fichier_introuvable' => 'S’es pas pogut trobar lo fichièr @fichier@.', # MODIF |
|
| 204 | + 'form_deja_inscrit' => 'Sètz ja inscrich(a).', |
|
| 205 | + 'form_email_non_valide' => 'Vòstra adreiça e-mail es pas valida.', |
|
| 206 | + 'form_forum_access_refuse' => 'Podètz pas mai accedir a aquel sit.', |
|
| 207 | + 'form_forum_bonjour' => 'Bonjorn @nom@,,', |
|
| 208 | + 'form_forum_email_deja_enregistre' => 'Aquela adreiça e-mail ja es registrada, adoncas podètz utilizar vòstre mot de santa Clara costumièr.', |
|
| 209 | + 'form_forum_identifiant_mail' => 'Vos avèm mandat vòstre identificant novèl per e-mail.', |
|
| 210 | + 'form_forum_identifiants' => 'Identificants personals', |
|
| 211 | + 'form_forum_indiquer_nom_email' => 'Indicatz aquí vòstre nom e vòstra adreiça e-mail. Vòstre identificant personal arribarà lèu-lèu, per e-mail.', |
|
| 212 | + 'form_forum_login' => 'login :', |
|
| 213 | + 'form_forum_message_auto' => '(aquò’s un messatge automatic)', |
|
| 214 | + 'form_forum_pass' => 'mot de santa Clara :', |
|
| 215 | + 'form_forum_probleme_mail' => 'Problèma d’e-mail: se pòt pas mandar l’identificant.', |
|
| 216 | + 'form_forum_voici1' => 'Vaicí vòstres identificants per poder participar a la vida |
|
| 217 | 217 | del sit "@nom_site_spip@" (@adresse_site@) :', |
| 218 | - 'form_forum_voici2' => 'Vaquí vòstres identificants per prepausar d’articles |
|
| 218 | + 'form_forum_voici2' => 'Vaquí vòstres identificants per prepausar d’articles |
|
| 219 | 219 | sul sit "@nom_site_spip@" (@adresse_login@) :', |
| 220 | - 'form_indiquer_email' => 'Volgatz indicar vòstra adreiça e-mail.', |
|
| 221 | - 'form_indiquer_nom' => 'Volgatz indicar vòstre nom.', |
|
| 222 | - 'form_indiquer_nom_site' => 'Volgatz indicar lo nom de vòstre sit.', |
|
| 223 | - 'form_pet_deja_enregistre' => 'Ja aquel sit es registrat', |
|
| 224 | - 'form_pet_signature_pasprise' => 'Vòstra signatura es pas presa en compte.', |
|
| 225 | - 'form_prop_confirmer_envoi' => 'Confirmar lo mandadís', |
|
| 226 | - 'form_prop_description' => 'Descripcion/comentari', |
|
| 227 | - 'form_prop_enregistre' => 'Vòstra proposicion es plan registrada, apareisserà en linha tre que los responsables del sit l’auràn validada .', |
|
| 228 | - 'form_prop_envoyer' => 'Mandar un messatge', |
|
| 229 | - 'form_prop_indiquer_email' => 'Volgatz indicar una adreiça e-mail valida', |
|
| 230 | - 'form_prop_indiquer_nom_site' => 'Volgatz indicar lo nom del sit.', |
|
| 231 | - 'form_prop_indiquer_sujet' => 'Volgatz indicar un subjècte', |
|
| 232 | - 'form_prop_message_envoye' => 'Messatge mandat', |
|
| 233 | - 'form_prop_non_enregistre' => 'Vòstra proposicion es pas estada registrada.', |
|
| 234 | - 'form_prop_sujet' => 'Subjècte', |
|
| 235 | - 'form_prop_url_site' => 'Adreiça (URL) del sit', # MODIF |
|
| 236 | - 'forum_non_inscrit' => 'Siá sètz pas inscrich(a), siá avètz fach una error d’adreiça o de mot de santa Clara. ', |
|
| 237 | - 'forum_par_auteur' => 'per @auteur@', |
|
| 238 | - 'forum_titre_erreur' => 'Error...', |
|
| 220 | + 'form_indiquer_email' => 'Volgatz indicar vòstra adreiça e-mail.', |
|
| 221 | + 'form_indiquer_nom' => 'Volgatz indicar vòstre nom.', |
|
| 222 | + 'form_indiquer_nom_site' => 'Volgatz indicar lo nom de vòstre sit.', |
|
| 223 | + 'form_pet_deja_enregistre' => 'Ja aquel sit es registrat', |
|
| 224 | + 'form_pet_signature_pasprise' => 'Vòstra signatura es pas presa en compte.', |
|
| 225 | + 'form_prop_confirmer_envoi' => 'Confirmar lo mandadís', |
|
| 226 | + 'form_prop_description' => 'Descripcion/comentari', |
|
| 227 | + 'form_prop_enregistre' => 'Vòstra proposicion es plan registrada, apareisserà en linha tre que los responsables del sit l’auràn validada .', |
|
| 228 | + 'form_prop_envoyer' => 'Mandar un messatge', |
|
| 229 | + 'form_prop_indiquer_email' => 'Volgatz indicar una adreiça e-mail valida', |
|
| 230 | + 'form_prop_indiquer_nom_site' => 'Volgatz indicar lo nom del sit.', |
|
| 231 | + 'form_prop_indiquer_sujet' => 'Volgatz indicar un subjècte', |
|
| 232 | + 'form_prop_message_envoye' => 'Messatge mandat', |
|
| 233 | + 'form_prop_non_enregistre' => 'Vòstra proposicion es pas estada registrada.', |
|
| 234 | + 'form_prop_sujet' => 'Subjècte', |
|
| 235 | + 'form_prop_url_site' => 'Adreiça (URL) del sit', # MODIF |
|
| 236 | + 'forum_non_inscrit' => 'Siá sètz pas inscrich(a), siá avètz fach una error d’adreiça o de mot de santa Clara. ', |
|
| 237 | + 'forum_par_auteur' => 'per @auteur@', |
|
| 238 | + 'forum_titre_erreur' => 'Error...', |
|
| 239 | 239 | |
| 240 | - // I |
|
| 241 | - 'ical_texte_rss_articles' => 'Lo fichièr "backend" dels articles d’aqueste sit se tròba a l’adreiça:', |
|
| 242 | - 'ical_texte_rss_articles2' => 'Atanben podètz obténer de fichièrs "backend" pels articles de cada rubrica del sit:', |
|
| 243 | - 'ical_texte_rss_breves' => 'Existisson mai d’un fichièr contenent las brèvas del sit. En precisar un numèro de rubrica, obtendretz sonque las brèvas de la rubrica aquela.', |
|
| 244 | - 'icone_a_suivre' => 'De seguir', |
|
| 245 | - 'icone_admin_site' => 'Administracion del sit', |
|
| 246 | - 'icone_agenda' => 'Agenda', |
|
| 247 | - 'icone_aide_ligne' => 'Ajuda', |
|
| 248 | - 'icone_articles' => 'Articles', |
|
| 249 | - 'icone_auteurs' => 'Autors', |
|
| 250 | - 'icone_brouteur' => 'Navigacion rapida', |
|
| 251 | - 'icone_configuration_site' => 'Configuracion', |
|
| 252 | - 'icone_configurer_site' => 'Configurar vòstre sit', |
|
| 253 | - 'icone_creer_nouvel_auteur' => 'Crear un autor nòu', |
|
| 254 | - 'icone_creer_rubrique' => 'Crear una rubrica', |
|
| 255 | - 'icone_creer_sous_rubrique' => 'Crear una sosrubrica', |
|
| 256 | - 'icone_deconnecter' => 'Se desconnectar', |
|
| 257 | - 'icone_discussions' => 'Discussions', |
|
| 258 | - 'icone_doc_rubrique' => 'Documents de las rubricas', |
|
| 259 | - 'icone_ecrire_article' => 'Escriure un article nòu', |
|
| 260 | - 'icone_edition_site' => 'Edicion', |
|
| 261 | - 'icone_gestion_langues' => 'Gestion de las lengas', |
|
| 262 | - 'icone_informations_personnelles' => 'Informacions personalas', |
|
| 263 | - 'icone_interface_complet' => 'Interfàcia completa', |
|
| 264 | - 'icone_interface_simple' => 'Interfàcia simplificada', |
|
| 265 | - 'icone_maintenance_site' => 'Mantenença del sit', |
|
| 266 | - 'icone_messagerie_personnelle' => 'Messatjariá personala', |
|
| 267 | - 'icone_repartition_debut' => 'Afichar la reparticion dempuèi la començança', |
|
| 268 | - 'icone_rubriques' => 'Rubricas', |
|
| 269 | - 'icone_sauver_site' => 'Salvagarda del sit', |
|
| 270 | - 'icone_site_entier' => 'Tot lo sit ', |
|
| 271 | - 'icone_sites_references' => 'Sits referenciats', |
|
| 272 | - 'icone_statistiques' => 'Estadisticas del sit', |
|
| 273 | - 'icone_suivi_activite' => 'Seguir la vida del sit', |
|
| 274 | - 'icone_suivi_actualite' => 'Evolucion del sit', |
|
| 275 | - 'icone_suivi_pettions' => 'Seguir/gerir las peticions', |
|
| 276 | - 'icone_suivi_revisions' => 'Modificacions dels articles', |
|
| 277 | - 'icone_supprimer_document' => 'Suprimir aquel document', |
|
| 278 | - 'icone_supprimer_image' => 'Suprimir aquel imatge', |
|
| 279 | - 'icone_tous_articles' => 'Totes vòstres articles ', |
|
| 280 | - 'icone_tous_auteur' => 'Totes los autors ', |
|
| 281 | - 'icone_visiter_site' => 'Vesitar', # MODIF |
|
| 282 | - 'icone_voir_en_ligne' => 'Veire en linha', |
|
| 283 | - 'img_indisponible' => 'imatge indisponible', |
|
| 284 | - 'impossible' => 'impossible', |
|
| 285 | - 'info_a_suivre' => 'DE SEGUIR>>', |
|
| 286 | - 'info_acces_interdit' => 'Accès proïbit', |
|
| 287 | - 'info_acces_refuse' => 'Accès refusat', |
|
| 288 | - 'info_action' => 'Accion : @action@', |
|
| 289 | - 'info_administrer_rubriques' => 'Podètz administrar aquela rubrica e sas sosrubricas', |
|
| 290 | - 'info_adresse_non_indiquee' => 'Avètz pas indicat l’adreiça de testar !', |
|
| 291 | - 'info_aide' => 'AJUDA :', |
|
| 292 | - 'info_ajouter_mot' => 'Apondre aquel mot', |
|
| 293 | - 'info_annonce' => 'ANONCI', |
|
| 294 | - 'info_annonces_generales' => 'Anoncis generals:', |
|
| 295 | - 'info_article_propose' => 'Article prepausat', |
|
| 296 | - 'info_article_publie' => 'Article publicat', |
|
| 297 | - 'info_article_redaction' => 'Article en cors de redaccion', |
|
| 298 | - 'info_article_refuse' => 'Article refusat', |
|
| 299 | - 'info_article_supprime' => 'Article suprimit', |
|
| 300 | - 'info_articles' => 'Articles', |
|
| 301 | - 'info_articles_a_valider' => 'Los articles de validar', |
|
| 302 | - 'info_articles_proposes' => 'Articles prepausats', |
|
| 303 | - 'info_auteurs_nombre' => 'autor(s)', |
|
| 304 | - 'info_authentification_ftp' => 'autentificacion (per FTP).', |
|
| 305 | - 'info_breves_2' => 'brèvas', |
|
| 306 | - 'info_connexion_refusee' => 'Connexion refusada', |
|
| 307 | - 'info_contact_developpeur' => 'Volgatz contactar un desvolopaire.', |
|
| 308 | - 'info_contenance' => 'Aquel sit conten:', |
|
| 309 | - 'info_contribution' => 'Contribucions de forum', # MODIF |
|
| 310 | - 'info_copyright' => '@spip@ es un logicial liure distribuit @lien_gpl@.', |
|
| 311 | - 'info_copyright_doc' => ' Per mai d’informacions, veire lo sit <a href="@spipnet@">http://www.spip.net/oc</a>.', # MODIF |
|
| 312 | - 'info_copyright_gpl' => 'jos licéncia GPL', |
|
| 313 | - 'info_cours_edition' => 'Vòstres articles en cors de redaccion', # MODIF |
|
| 314 | - 'info_creer_repertoire' => 'Volgatz crear un fichièr o un repertòri nommat', |
|
| 315 | - 'info_creer_repertoire_2' => 'dintre lo sosrepertòri <b>@repertoire@</b>, puèi:', |
|
| 316 | - 'info_creer_vignette' => 'creacion automatica de la vinheta', |
|
| 317 | - 'info_deplier' => 'Desplegar', |
|
| 318 | - 'info_descriptif_nombre' => 'descriptiu(s) :', |
|
| 319 | - 'info_description' => 'Descripcion :', |
|
| 320 | - 'info_description_2' => 'Descripcion :', |
|
| 321 | - 'info_dimension' => 'Dimensions :', |
|
| 322 | - 'info_ecire_message_prive' => 'Escriure un messatge privat', |
|
| 323 | - 'info_email_invalide' => 'Adreiça e-mail invalida', |
|
| 324 | - 'info_en_cours_validation' => 'Vòstres articles en cors de redaccion', |
|
| 325 | - 'info_en_ligne' => 'Ara en linha:', |
|
| 326 | - 'info_envoyer_message_prive' => 'Mandar un messatge privat a aquel autor', |
|
| 327 | - 'info_erreur_requete' => 'Error dins la requista', |
|
| 328 | - 'info_erreur_squelette2' => 'Ges d’esqueleta <b>@fichier@</b> es pas disponibla...', |
|
| 329 | - 'info_erreur_systeme' => 'Error sistèma (errno @errsys@)', |
|
| 330 | - 'info_erreur_systeme2' => 'Lo disc dur es benlèu plen, o la basa de donadas degalhada.<br /> |
|
| 240 | + // I |
|
| 241 | + 'ical_texte_rss_articles' => 'Lo fichièr "backend" dels articles d’aqueste sit se tròba a l’adreiça:', |
|
| 242 | + 'ical_texte_rss_articles2' => 'Atanben podètz obténer de fichièrs "backend" pels articles de cada rubrica del sit:', |
|
| 243 | + 'ical_texte_rss_breves' => 'Existisson mai d’un fichièr contenent las brèvas del sit. En precisar un numèro de rubrica, obtendretz sonque las brèvas de la rubrica aquela.', |
|
| 244 | + 'icone_a_suivre' => 'De seguir', |
|
| 245 | + 'icone_admin_site' => 'Administracion del sit', |
|
| 246 | + 'icone_agenda' => 'Agenda', |
|
| 247 | + 'icone_aide_ligne' => 'Ajuda', |
|
| 248 | + 'icone_articles' => 'Articles', |
|
| 249 | + 'icone_auteurs' => 'Autors', |
|
| 250 | + 'icone_brouteur' => 'Navigacion rapida', |
|
| 251 | + 'icone_configuration_site' => 'Configuracion', |
|
| 252 | + 'icone_configurer_site' => 'Configurar vòstre sit', |
|
| 253 | + 'icone_creer_nouvel_auteur' => 'Crear un autor nòu', |
|
| 254 | + 'icone_creer_rubrique' => 'Crear una rubrica', |
|
| 255 | + 'icone_creer_sous_rubrique' => 'Crear una sosrubrica', |
|
| 256 | + 'icone_deconnecter' => 'Se desconnectar', |
|
| 257 | + 'icone_discussions' => 'Discussions', |
|
| 258 | + 'icone_doc_rubrique' => 'Documents de las rubricas', |
|
| 259 | + 'icone_ecrire_article' => 'Escriure un article nòu', |
|
| 260 | + 'icone_edition_site' => 'Edicion', |
|
| 261 | + 'icone_gestion_langues' => 'Gestion de las lengas', |
|
| 262 | + 'icone_informations_personnelles' => 'Informacions personalas', |
|
| 263 | + 'icone_interface_complet' => 'Interfàcia completa', |
|
| 264 | + 'icone_interface_simple' => 'Interfàcia simplificada', |
|
| 265 | + 'icone_maintenance_site' => 'Mantenença del sit', |
|
| 266 | + 'icone_messagerie_personnelle' => 'Messatjariá personala', |
|
| 267 | + 'icone_repartition_debut' => 'Afichar la reparticion dempuèi la començança', |
|
| 268 | + 'icone_rubriques' => 'Rubricas', |
|
| 269 | + 'icone_sauver_site' => 'Salvagarda del sit', |
|
| 270 | + 'icone_site_entier' => 'Tot lo sit ', |
|
| 271 | + 'icone_sites_references' => 'Sits referenciats', |
|
| 272 | + 'icone_statistiques' => 'Estadisticas del sit', |
|
| 273 | + 'icone_suivi_activite' => 'Seguir la vida del sit', |
|
| 274 | + 'icone_suivi_actualite' => 'Evolucion del sit', |
|
| 275 | + 'icone_suivi_pettions' => 'Seguir/gerir las peticions', |
|
| 276 | + 'icone_suivi_revisions' => 'Modificacions dels articles', |
|
| 277 | + 'icone_supprimer_document' => 'Suprimir aquel document', |
|
| 278 | + 'icone_supprimer_image' => 'Suprimir aquel imatge', |
|
| 279 | + 'icone_tous_articles' => 'Totes vòstres articles ', |
|
| 280 | + 'icone_tous_auteur' => 'Totes los autors ', |
|
| 281 | + 'icone_visiter_site' => 'Vesitar', # MODIF |
|
| 282 | + 'icone_voir_en_ligne' => 'Veire en linha', |
|
| 283 | + 'img_indisponible' => 'imatge indisponible', |
|
| 284 | + 'impossible' => 'impossible', |
|
| 285 | + 'info_a_suivre' => 'DE SEGUIR>>', |
|
| 286 | + 'info_acces_interdit' => 'Accès proïbit', |
|
| 287 | + 'info_acces_refuse' => 'Accès refusat', |
|
| 288 | + 'info_action' => 'Accion : @action@', |
|
| 289 | + 'info_administrer_rubriques' => 'Podètz administrar aquela rubrica e sas sosrubricas', |
|
| 290 | + 'info_adresse_non_indiquee' => 'Avètz pas indicat l’adreiça de testar !', |
|
| 291 | + 'info_aide' => 'AJUDA :', |
|
| 292 | + 'info_ajouter_mot' => 'Apondre aquel mot', |
|
| 293 | + 'info_annonce' => 'ANONCI', |
|
| 294 | + 'info_annonces_generales' => 'Anoncis generals:', |
|
| 295 | + 'info_article_propose' => 'Article prepausat', |
|
| 296 | + 'info_article_publie' => 'Article publicat', |
|
| 297 | + 'info_article_redaction' => 'Article en cors de redaccion', |
|
| 298 | + 'info_article_refuse' => 'Article refusat', |
|
| 299 | + 'info_article_supprime' => 'Article suprimit', |
|
| 300 | + 'info_articles' => 'Articles', |
|
| 301 | + 'info_articles_a_valider' => 'Los articles de validar', |
|
| 302 | + 'info_articles_proposes' => 'Articles prepausats', |
|
| 303 | + 'info_auteurs_nombre' => 'autor(s)', |
|
| 304 | + 'info_authentification_ftp' => 'autentificacion (per FTP).', |
|
| 305 | + 'info_breves_2' => 'brèvas', |
|
| 306 | + 'info_connexion_refusee' => 'Connexion refusada', |
|
| 307 | + 'info_contact_developpeur' => 'Volgatz contactar un desvolopaire.', |
|
| 308 | + 'info_contenance' => 'Aquel sit conten:', |
|
| 309 | + 'info_contribution' => 'Contribucions de forum', # MODIF |
|
| 310 | + 'info_copyright' => '@spip@ es un logicial liure distribuit @lien_gpl@.', |
|
| 311 | + 'info_copyright_doc' => ' Per mai d’informacions, veire lo sit <a href="@spipnet@">http://www.spip.net/oc</a>.', # MODIF |
|
| 312 | + 'info_copyright_gpl' => 'jos licéncia GPL', |
|
| 313 | + 'info_cours_edition' => 'Vòstres articles en cors de redaccion', # MODIF |
|
| 314 | + 'info_creer_repertoire' => 'Volgatz crear un fichièr o un repertòri nommat', |
|
| 315 | + 'info_creer_repertoire_2' => 'dintre lo sosrepertòri <b>@repertoire@</b>, puèi:', |
|
| 316 | + 'info_creer_vignette' => 'creacion automatica de la vinheta', |
|
| 317 | + 'info_deplier' => 'Desplegar', |
|
| 318 | + 'info_descriptif_nombre' => 'descriptiu(s) :', |
|
| 319 | + 'info_description' => 'Descripcion :', |
|
| 320 | + 'info_description_2' => 'Descripcion :', |
|
| 321 | + 'info_dimension' => 'Dimensions :', |
|
| 322 | + 'info_ecire_message_prive' => 'Escriure un messatge privat', |
|
| 323 | + 'info_email_invalide' => 'Adreiça e-mail invalida', |
|
| 324 | + 'info_en_cours_validation' => 'Vòstres articles en cors de redaccion', |
|
| 325 | + 'info_en_ligne' => 'Ara en linha:', |
|
| 326 | + 'info_envoyer_message_prive' => 'Mandar un messatge privat a aquel autor', |
|
| 327 | + 'info_erreur_requete' => 'Error dins la requista', |
|
| 328 | + 'info_erreur_squelette2' => 'Ges d’esqueleta <b>@fichier@</b> es pas disponibla...', |
|
| 329 | + 'info_erreur_systeme' => 'Error sistèma (errno @errsys@)', |
|
| 330 | + 'info_erreur_systeme2' => 'Lo disc dur es benlèu plen, o la basa de donadas degalhada.<br /> |
|
| 331 | 331 | <span style="color:red;">Assajatz de <a href=\'@script@\'>reparar la basa</a>, o contactatz vòstre albergador.</span>', |
| 332 | - 'info_fini' => 'Es acabat !', |
|
| 333 | - 'info_format_image' => 'Formats d’imatges que se pòdon utilizar per crear de vinhetas: @gd_formats@.', |
|
| 334 | - 'info_format_non_defini' => 'format non definit', |
|
| 335 | - 'info_grand_ecran' => 'Ecran grand', |
|
| 336 | - 'info_image_aide' => 'AJUDA', |
|
| 337 | - 'info_image_process_titre' => 'Metòde de fabricacion de las vinhetas', |
|
| 338 | - 'info_impossible_lire_page' => '<b>Error!</b> Impossible de legir la pagina <tt><html>@test_proxy@</html></tt> a travèrs del proxy <tt>', |
|
| 339 | - 'info_installation_systeme_publication' => 'Installacion del sistèma de publicacion...', |
|
| 340 | - 'info_installer_documents' => 'Podètz installar automaticament totes los documents contenguts dins lo repertòri @upload@.', |
|
| 341 | - 'info_installer_ftp' => 'Coma administrator, podètz installar (per FTP) de fichièrs dins lo repertòri @upload@, puèi los seleccionar dirèctament aicí.', |
|
| 342 | - 'info_installer_images' => 'Podètz installar d’imatges als formats JPEG, GIF e PNG.', |
|
| 343 | - 'info_installer_images_dossier' => 'Installar d’imatges dins lo reprtòri @upload@ per los poder seleccionar aicí.', |
|
| 344 | - 'info_interface_complete' => 'Interfàcia completa', |
|
| 345 | - 'info_interface_simple' => 'Interfàcia simplificada', |
|
| 346 | - 'info_joindre_document_article' => 'Podètz jónher a aquel article de documents de la mena de', |
|
| 347 | - 'info_joindre_document_rubrique' => 'Podètz apondre a aquela rubrica de documents de la mena de', |
|
| 348 | - 'info_joindre_documents_article' => 'Podètz jónher a aquel article de documents de la mena de:', |
|
| 349 | - 'info_l_article' => 'l’article', |
|
| 350 | - 'info_la_breve' => 'la brèva', |
|
| 351 | - 'info_la_rubrique' => 'la rubrica', |
|
| 352 | - 'info_langue_principale' => 'Lenga majorala del sit', |
|
| 353 | - 'info_largeur_vignette' => '@largeur_vignette@ x @hauteur_vignette@ pixèls', |
|
| 354 | - 'info_les_auteurs_1' => 'per @les_auteurs@ ', |
|
| 355 | - 'info_logo_format_interdit' => 'Los lògos de formats @formats@ son sols autorizats.', |
|
| 356 | - 'info_logo_max_poids' => 'Los lògos an de far mens de @maxi@ (aqueste fichièr fa @actuel@).', |
|
| 357 | - 'info_mail_fournisseur' => '[email protected]', |
|
| 358 | - 'info_message_2' => 'MESSATGE', |
|
| 359 | - 'info_message_supprime' => 'MESSATGE SUPRIMIT', |
|
| 360 | - 'info_mise_en_ligne' => 'Data de mesa en linha:', |
|
| 361 | - 'info_modification_parametres_securite' => 'modificacions dels paramètres de seguretat', |
|
| 362 | - 'info_mois_courant' => 'Dins lo corrent del mes:', |
|
| 363 | - 'info_mot_cle_ajoute' => 'S’es apondut lo mot clau seguent a ', |
|
| 364 | - 'info_multi_herit' => 'Lenga predefinida', |
|
| 365 | - 'info_multi_langues_soulignees' => 'Las <u>lengas solinhadas</u> benefícian d’una revirada de totes los tèxtes de l’interfàcia. Se seleccionatz aquelas lengas, fòrça elements del sit public (datas, formularis) se reviraràn automaticament. Per las lengas non solinhadas, aqueles elements apareisseràn dins la lenga principala del sit.', # MODIF |
|
| 366 | - 'info_multilinguisme' => 'Multilingüisme', |
|
| 367 | - 'info_nom_non_utilisateurs_connectes' => 'Vòstre nom apareis pas dins la tièra dels utilizaires connectats.', |
|
| 368 | - 'info_nom_utilisateurs_connectes' => 'Lo vòstre nom apareis dins la tièra dels utilizaires connectats.', |
|
| 369 | - 'info_nombre_en_ligne' => 'Ara en linha:', |
|
| 370 | - 'info_non_resultat' => 'Pas cap de resultat per "@cherche_mot@"', |
|
| 371 | - 'info_non_utilisation_messagerie' => 'Utilizatz pas la messatjariá intèrna d’aquel sit.', |
|
| 372 | - 'info_nouveau_message' => 'AVÈTZ UN MESSATGE NÒU', |
|
| 373 | - 'info_nouveaux_messages' => 'AVÈTZ @total_messages@ MESSATGES NÒUS', |
|
| 374 | - 'info_numero_abbreviation' => 'N° ', |
|
| 375 | - 'info_pense_bete' => 'MEMENTO', |
|
| 376 | - 'info_petit_ecran' => 'Ecran pichòt ', |
|
| 377 | - 'info_pixels' => 'pixèls', |
|
| 378 | - 'info_plusieurs_mots_trouves' => 'Mai d’un mot clau trobat per "@cherche_mot@" :', |
|
| 379 | - 'info_portfolio_automatique' => 'Pòrtfòlio automatic:', |
|
| 380 | - 'info_premier_resultat' => '[@debut_limit@ primièrs resultats de @total@]', |
|
| 381 | - 'info_premier_resultat_sur' => ' [@debut_limit@ primièrs resultats de @total@]', |
|
| 382 | - 'info_propose_1' => '[@nom_site_spip@] Prepausa: @titre@', |
|
| 383 | - 'info_propose_2' => 'Article prepausat |
|
| 332 | + 'info_fini' => 'Es acabat !', |
|
| 333 | + 'info_format_image' => 'Formats d’imatges que se pòdon utilizar per crear de vinhetas: @gd_formats@.', |
|
| 334 | + 'info_format_non_defini' => 'format non definit', |
|
| 335 | + 'info_grand_ecran' => 'Ecran grand', |
|
| 336 | + 'info_image_aide' => 'AJUDA', |
|
| 337 | + 'info_image_process_titre' => 'Metòde de fabricacion de las vinhetas', |
|
| 338 | + 'info_impossible_lire_page' => '<b>Error!</b> Impossible de legir la pagina <tt><html>@test_proxy@</html></tt> a travèrs del proxy <tt>', |
|
| 339 | + 'info_installation_systeme_publication' => 'Installacion del sistèma de publicacion...', |
|
| 340 | + 'info_installer_documents' => 'Podètz installar automaticament totes los documents contenguts dins lo repertòri @upload@.', |
|
| 341 | + 'info_installer_ftp' => 'Coma administrator, podètz installar (per FTP) de fichièrs dins lo repertòri @upload@, puèi los seleccionar dirèctament aicí.', |
|
| 342 | + 'info_installer_images' => 'Podètz installar d’imatges als formats JPEG, GIF e PNG.', |
|
| 343 | + 'info_installer_images_dossier' => 'Installar d’imatges dins lo reprtòri @upload@ per los poder seleccionar aicí.', |
|
| 344 | + 'info_interface_complete' => 'Interfàcia completa', |
|
| 345 | + 'info_interface_simple' => 'Interfàcia simplificada', |
|
| 346 | + 'info_joindre_document_article' => 'Podètz jónher a aquel article de documents de la mena de', |
|
| 347 | + 'info_joindre_document_rubrique' => 'Podètz apondre a aquela rubrica de documents de la mena de', |
|
| 348 | + 'info_joindre_documents_article' => 'Podètz jónher a aquel article de documents de la mena de:', |
|
| 349 | + 'info_l_article' => 'l’article', |
|
| 350 | + 'info_la_breve' => 'la brèva', |
|
| 351 | + 'info_la_rubrique' => 'la rubrica', |
|
| 352 | + 'info_langue_principale' => 'Lenga majorala del sit', |
|
| 353 | + 'info_largeur_vignette' => '@largeur_vignette@ x @hauteur_vignette@ pixèls', |
|
| 354 | + 'info_les_auteurs_1' => 'per @les_auteurs@ ', |
|
| 355 | + 'info_logo_format_interdit' => 'Los lògos de formats @formats@ son sols autorizats.', |
|
| 356 | + 'info_logo_max_poids' => 'Los lògos an de far mens de @maxi@ (aqueste fichièr fa @actuel@).', |
|
| 357 | + 'info_mail_fournisseur' => '[email protected]', |
|
| 358 | + 'info_message_2' => 'MESSATGE', |
|
| 359 | + 'info_message_supprime' => 'MESSATGE SUPRIMIT', |
|
| 360 | + 'info_mise_en_ligne' => 'Data de mesa en linha:', |
|
| 361 | + 'info_modification_parametres_securite' => 'modificacions dels paramètres de seguretat', |
|
| 362 | + 'info_mois_courant' => 'Dins lo corrent del mes:', |
|
| 363 | + 'info_mot_cle_ajoute' => 'S’es apondut lo mot clau seguent a ', |
|
| 364 | + 'info_multi_herit' => 'Lenga predefinida', |
|
| 365 | + 'info_multi_langues_soulignees' => 'Las <u>lengas solinhadas</u> benefícian d’una revirada de totes los tèxtes de l’interfàcia. Se seleccionatz aquelas lengas, fòrça elements del sit public (datas, formularis) se reviraràn automaticament. Per las lengas non solinhadas, aqueles elements apareisseràn dins la lenga principala del sit.', # MODIF |
|
| 366 | + 'info_multilinguisme' => 'Multilingüisme', |
|
| 367 | + 'info_nom_non_utilisateurs_connectes' => 'Vòstre nom apareis pas dins la tièra dels utilizaires connectats.', |
|
| 368 | + 'info_nom_utilisateurs_connectes' => 'Lo vòstre nom apareis dins la tièra dels utilizaires connectats.', |
|
| 369 | + 'info_nombre_en_ligne' => 'Ara en linha:', |
|
| 370 | + 'info_non_resultat' => 'Pas cap de resultat per "@cherche_mot@"', |
|
| 371 | + 'info_non_utilisation_messagerie' => 'Utilizatz pas la messatjariá intèrna d’aquel sit.', |
|
| 372 | + 'info_nouveau_message' => 'AVÈTZ UN MESSATGE NÒU', |
|
| 373 | + 'info_nouveaux_messages' => 'AVÈTZ @total_messages@ MESSATGES NÒUS', |
|
| 374 | + 'info_numero_abbreviation' => 'N° ', |
|
| 375 | + 'info_pense_bete' => 'MEMENTO', |
|
| 376 | + 'info_petit_ecran' => 'Ecran pichòt ', |
|
| 377 | + 'info_pixels' => 'pixèls', |
|
| 378 | + 'info_plusieurs_mots_trouves' => 'Mai d’un mot clau trobat per "@cherche_mot@" :', |
|
| 379 | + 'info_portfolio_automatique' => 'Pòrtfòlio automatic:', |
|
| 380 | + 'info_premier_resultat' => '[@debut_limit@ primièrs resultats de @total@]', |
|
| 381 | + 'info_premier_resultat_sur' => ' [@debut_limit@ primièrs resultats de @total@]', |
|
| 382 | + 'info_propose_1' => '[@nom_site_spip@] Prepausa: @titre@', |
|
| 383 | + 'info_propose_2' => 'Article prepausat |
|
| 384 | 384 | ---------------', |
| 385 | - 'info_propose_3' => 'L’article "@titre@" es prepausat a la publicacion.', |
|
| 386 | - 'info_propose_4' => 'Vos convidam a lo venir consultar e a donar vòstre vejaire', |
|
| 387 | - 'info_propose_5' => 'dins lo forum que li es estacat. Es disponible a l’adreiça:', |
|
| 388 | - 'info_publie_01' => 'L’article "@titre@" es estat validat per @connect_nom@.', |
|
| 389 | - 'info_publie_1' => '[@nom_site_spip@] PUBLICA: @titre@', |
|
| 390 | - 'info_publie_2' => 'Article publicat |
|
| 385 | + 'info_propose_3' => 'L’article "@titre@" es prepausat a la publicacion.', |
|
| 386 | + 'info_propose_4' => 'Vos convidam a lo venir consultar e a donar vòstre vejaire', |
|
| 387 | + 'info_propose_5' => 'dins lo forum que li es estacat. Es disponible a l’adreiça:', |
|
| 388 | + 'info_publie_01' => 'L’article "@titre@" es estat validat per @connect_nom@.', |
|
| 389 | + 'info_publie_1' => '[@nom_site_spip@] PUBLICA: @titre@', |
|
| 390 | + 'info_publie_2' => 'Article publicat |
|
| 391 | 391 | --------------', |
| 392 | - 'info_rechercher' => 'Cercar', |
|
| 393 | - 'info_rechercher_02' => 'Cercar:', |
|
| 394 | - 'info_remplacer_vignette' => 'Remplaçar la vinheta predefinida per un lògo personalizat:', |
|
| 395 | - 'info_sans_titre_2' => 'sens títol', |
|
| 396 | - 'info_selectionner_fichier' => 'Podètz seleccionar un fichièr del dorsièr @upload@', |
|
| 397 | - 'info_selectionner_fichier_2' => 'Seleccionar un fichièr:', |
|
| 398 | - 'info_supprimer_vignette' => 'suprimir la vinheta', |
|
| 399 | - 'info_symbole_bleu' => 'Lo simbèl <b>blau</b> marca un <b>memento</b>: valent a dire un messatge per vòstre usatge personal.', |
|
| 400 | - 'info_symbole_jaune' => 'Lo simbèl <b>jaune</b> marca un <b>anonci per totes los redactors </b>: los administrators lo pòdon modificar, cada redactor lo pòt veire.', |
|
| 401 | - 'info_symbole_vert' => 'Lo simbèl <b>verd</b> marca los <b>messatges escambiats amb d’autres utilizaires</b> del sit.', |
|
| 402 | - 'info_telecharger_nouveau_logo' => 'Telecargar un lògo nòu:', |
|
| 403 | - 'info_telecharger_ordinateur' => 'Telecargar a partir de vòstre ordenador:', |
|
| 404 | - 'info_tous_resultats_enregistres' => '[totes los resultats son registrats]', |
|
| 405 | - 'info_tout_afficher' => 'O afichar tot', |
|
| 406 | - 'info_travaux_texte' => 'Aquel sit es pas encara configurat. Tornatz mai tard...', |
|
| 407 | - 'info_travaux_titre' => 'Sit en òbras', |
|
| 408 | - 'info_trop_resultat' => 'Tròp de resultats per "@cherche_mot@"; volgatz afinar la recèrca.', |
|
| 409 | - 'info_utilisation_messagerie_interne' => 'Utilizatz la messatjariá intèrna d’aquel sit.', |
|
| 410 | - 'info_valider_lien' => 'validar aquel ligam', |
|
| 411 | - 'info_verifier_image' => ', volgatz verificar que los imatges se sián plan transferits.', |
|
| 412 | - 'info_vignette_defaut' => 'Vinheta predefinida', |
|
| 413 | - 'info_vignette_personnalisee' => 'Vinheta personalizada', |
|
| 414 | - 'info_visite' => 'vesita:', |
|
| 415 | - 'info_vos_rendez_vous' => 'Los vòstres rendètz-vos venents', |
|
| 416 | - 'infos_vos_pense_bete' => 'Vòstres mementos', # MODIF |
|
| 392 | + 'info_rechercher' => 'Cercar', |
|
| 393 | + 'info_rechercher_02' => 'Cercar:', |
|
| 394 | + 'info_remplacer_vignette' => 'Remplaçar la vinheta predefinida per un lògo personalizat:', |
|
| 395 | + 'info_sans_titre_2' => 'sens títol', |
|
| 396 | + 'info_selectionner_fichier' => 'Podètz seleccionar un fichièr del dorsièr @upload@', |
|
| 397 | + 'info_selectionner_fichier_2' => 'Seleccionar un fichièr:', |
|
| 398 | + 'info_supprimer_vignette' => 'suprimir la vinheta', |
|
| 399 | + 'info_symbole_bleu' => 'Lo simbèl <b>blau</b> marca un <b>memento</b>: valent a dire un messatge per vòstre usatge personal.', |
|
| 400 | + 'info_symbole_jaune' => 'Lo simbèl <b>jaune</b> marca un <b>anonci per totes los redactors </b>: los administrators lo pòdon modificar, cada redactor lo pòt veire.', |
|
| 401 | + 'info_symbole_vert' => 'Lo simbèl <b>verd</b> marca los <b>messatges escambiats amb d’autres utilizaires</b> del sit.', |
|
| 402 | + 'info_telecharger_nouveau_logo' => 'Telecargar un lògo nòu:', |
|
| 403 | + 'info_telecharger_ordinateur' => 'Telecargar a partir de vòstre ordenador:', |
|
| 404 | + 'info_tous_resultats_enregistres' => '[totes los resultats son registrats]', |
|
| 405 | + 'info_tout_afficher' => 'O afichar tot', |
|
| 406 | + 'info_travaux_texte' => 'Aquel sit es pas encara configurat. Tornatz mai tard...', |
|
| 407 | + 'info_travaux_titre' => 'Sit en òbras', |
|
| 408 | + 'info_trop_resultat' => 'Tròp de resultats per "@cherche_mot@"; volgatz afinar la recèrca.', |
|
| 409 | + 'info_utilisation_messagerie_interne' => 'Utilizatz la messatjariá intèrna d’aquel sit.', |
|
| 410 | + 'info_valider_lien' => 'validar aquel ligam', |
|
| 411 | + 'info_verifier_image' => ', volgatz verificar que los imatges se sián plan transferits.', |
|
| 412 | + 'info_vignette_defaut' => 'Vinheta predefinida', |
|
| 413 | + 'info_vignette_personnalisee' => 'Vinheta personalizada', |
|
| 414 | + 'info_visite' => 'vesita:', |
|
| 415 | + 'info_vos_rendez_vous' => 'Los vòstres rendètz-vos venents', |
|
| 416 | + 'infos_vos_pense_bete' => 'Vòstres mementos', # MODIF |
|
| 417 | 417 | |
| 418 | - // L |
|
| 419 | - 'lien_afficher_icones_seuls' => 'Afichar sonque las icònas', |
|
| 420 | - 'lien_afficher_texte_icones' => 'Afichar las icònas e lo tèxt', |
|
| 421 | - 'lien_afficher_texte_seul' => 'Afichar sonque lo tèxt', |
|
| 422 | - 'lien_liberer' => 'liberar', |
|
| 423 | - 'lien_liberer_tous' => 'liberar aqueles articles', # MODIF |
|
| 424 | - 'lien_nouvea_pense_bete' => 'MEMENTO NÒU', |
|
| 425 | - 'lien_nouveau_message' => 'MESSATGE NÒU', |
|
| 426 | - 'lien_nouvelle_annonce' => 'ANONCI NOVÈL', |
|
| 427 | - 'lien_petitions' => 'PETICION', |
|
| 428 | - 'lien_popularite' => 'popularitat: @popularite@%', |
|
| 429 | - 'lien_racine_site' => 'RAIÇ DEL SIT', |
|
| 430 | - 'lien_reessayer' => 'tornar ensajar', |
|
| 431 | - 'lien_repondre_message' => 'Respondre a aquel messatge', |
|
| 432 | - 'lien_supprimer' => 'suprimir', |
|
| 433 | - 'lien_tout_afficher' => 'O afichar tot', |
|
| 434 | - 'lien_visite_site' => 'vesitar aquel sit', |
|
| 435 | - 'lien_visites' => '@visites@ vesitas', |
|
| 436 | - 'lien_voir_auteur' => 'Veire aquel autor', |
|
| 437 | - 'ligne' => 'Linha', |
|
| 438 | - 'login_acces_prive' => 'accès a l’espaci privat', |
|
| 439 | - 'login_autre_identifiant' => 'se connectar amb un autre identificant', |
|
| 440 | - 'login_cookie_accepte' => 'Volgatz configurar vòstre navigador per que los accèpte (almens per aquel sit).', |
|
| 441 | - 'login_cookie_oblige' => 'Per vos identificar d’un biais segur sus aqueste sit, vos cal acceptar los cookies.', |
|
| 442 | - 'login_deconnexion_ok' => 'Sètz desconnectat/ada.', |
|
| 443 | - 'login_erreur_pass' => 'Error de mot de santa Clara.', |
|
| 444 | - 'login_espace_prive' => 'espaci privat', |
|
| 445 | - 'login_identifiant_inconnu' => 'L’identificant «@login@» es inconegut.', |
|
| 446 | - 'login_login' => 'Login :', |
|
| 447 | - 'login_login2' => 'Login (identificant de connexion al sit) :', # MODIF |
|
| 448 | - 'login_login_pass_incorrect' => '(Login o mot de santa Clara incorrècte.)', |
|
| 449 | - 'login_motpasseoublie' => 'mot de santa Clara oblidat ?', |
|
| 450 | - 'login_non_securise' => 'Atencion, aquel formulari es pas securizat. |
|
| 418 | + // L |
|
| 419 | + 'lien_afficher_icones_seuls' => 'Afichar sonque las icònas', |
|
| 420 | + 'lien_afficher_texte_icones' => 'Afichar las icònas e lo tèxt', |
|
| 421 | + 'lien_afficher_texte_seul' => 'Afichar sonque lo tèxt', |
|
| 422 | + 'lien_liberer' => 'liberar', |
|
| 423 | + 'lien_liberer_tous' => 'liberar aqueles articles', # MODIF |
|
| 424 | + 'lien_nouvea_pense_bete' => 'MEMENTO NÒU', |
|
| 425 | + 'lien_nouveau_message' => 'MESSATGE NÒU', |
|
| 426 | + 'lien_nouvelle_annonce' => 'ANONCI NOVÈL', |
|
| 427 | + 'lien_petitions' => 'PETICION', |
|
| 428 | + 'lien_popularite' => 'popularitat: @popularite@%', |
|
| 429 | + 'lien_racine_site' => 'RAIÇ DEL SIT', |
|
| 430 | + 'lien_reessayer' => 'tornar ensajar', |
|
| 431 | + 'lien_repondre_message' => 'Respondre a aquel messatge', |
|
| 432 | + 'lien_supprimer' => 'suprimir', |
|
| 433 | + 'lien_tout_afficher' => 'O afichar tot', |
|
| 434 | + 'lien_visite_site' => 'vesitar aquel sit', |
|
| 435 | + 'lien_visites' => '@visites@ vesitas', |
|
| 436 | + 'lien_voir_auteur' => 'Veire aquel autor', |
|
| 437 | + 'ligne' => 'Linha', |
|
| 438 | + 'login_acces_prive' => 'accès a l’espaci privat', |
|
| 439 | + 'login_autre_identifiant' => 'se connectar amb un autre identificant', |
|
| 440 | + 'login_cookie_accepte' => 'Volgatz configurar vòstre navigador per que los accèpte (almens per aquel sit).', |
|
| 441 | + 'login_cookie_oblige' => 'Per vos identificar d’un biais segur sus aqueste sit, vos cal acceptar los cookies.', |
|
| 442 | + 'login_deconnexion_ok' => 'Sètz desconnectat/ada.', |
|
| 443 | + 'login_erreur_pass' => 'Error de mot de santa Clara.', |
|
| 444 | + 'login_espace_prive' => 'espaci privat', |
|
| 445 | + 'login_identifiant_inconnu' => 'L’identificant «@login@» es inconegut.', |
|
| 446 | + 'login_login' => 'Login :', |
|
| 447 | + 'login_login2' => 'Login (identificant de connexion al sit) :', # MODIF |
|
| 448 | + 'login_login_pass_incorrect' => '(Login o mot de santa Clara incorrècte.)', |
|
| 449 | + 'login_motpasseoublie' => 'mot de santa Clara oblidat ?', |
|
| 450 | + 'login_non_securise' => 'Atencion, aquel formulari es pas securizat. |
|
| 451 | 451 | Se volètz pas que vòstre mot de santa Clara siá |
| 452 | 452 | interceptat sul ret, volgatz activar Javascript |
| 453 | 453 | dins vòstre navigador e', |
| 454 | - 'login_nouvelle_tentative' => 'novèl ensag', |
|
| 455 | - 'login_par_ici' => 'Sètz registrat/ada... per aquí...', |
|
| 456 | - 'login_pass2' => 'Mot de santa Clara :', |
|
| 457 | - 'login_preferez_refuser' => '<b>Se vos agrada mai de refusar los cookies</b>, un autre metòde de connexion (mens securizat) es a vòstra disposicion:', |
|
| 458 | - 'login_recharger' => 'tornar cargar aquela pagina', |
|
| 459 | - 'login_rester_identifie' => 'Demorar identificat qualques jorns', # MODIF |
|
| 460 | - 'login_retour_public' => 'Tornar al sit public', |
|
| 461 | - 'login_retour_site' => 'Tornar al sit public', |
|
| 462 | - 'login_retoursitepublic' => 'tornar al sit public', |
|
| 463 | - 'login_sinscrire' => 's’inscriure', # MODIF |
|
| 464 | - 'login_test_navigateur' => 'Ensag navigador/tornar connectar', |
|
| 465 | - 'login_verifiez_navigateur' => '(ça que la verificatz que vòstre navigador aja pas servat vòstre mot de santa Clara en memòria...)', |
|
| 454 | + 'login_nouvelle_tentative' => 'novèl ensag', |
|
| 455 | + 'login_par_ici' => 'Sètz registrat/ada... per aquí...', |
|
| 456 | + 'login_pass2' => 'Mot de santa Clara :', |
|
| 457 | + 'login_preferez_refuser' => '<b>Se vos agrada mai de refusar los cookies</b>, un autre metòde de connexion (mens securizat) es a vòstra disposicion:', |
|
| 458 | + 'login_recharger' => 'tornar cargar aquela pagina', |
|
| 459 | + 'login_rester_identifie' => 'Demorar identificat qualques jorns', # MODIF |
|
| 460 | + 'login_retour_public' => 'Tornar al sit public', |
|
| 461 | + 'login_retour_site' => 'Tornar al sit public', |
|
| 462 | + 'login_retoursitepublic' => 'tornar al sit public', |
|
| 463 | + 'login_sinscrire' => 's’inscriure', # MODIF |
|
| 464 | + 'login_test_navigateur' => 'Ensag navigador/tornar connectar', |
|
| 465 | + 'login_verifiez_navigateur' => '(ça que la verificatz que vòstre navigador aja pas servat vòstre mot de santa Clara en memòria...)', |
|
| 466 | 466 | |
| 467 | - // M |
|
| 468 | - 'masquer_trad' => 'escondre las reviradas', |
|
| 469 | - 'module_fichiers_langues' => 'Fichièrs de lenga', |
|
| 467 | + // M |
|
| 468 | + 'masquer_trad' => 'escondre las reviradas', |
|
| 469 | + 'module_fichiers_langues' => 'Fichièrs de lenga', |
|
| 470 | 470 | |
| 471 | - // N |
|
| 472 | - 'navigateur_pas_redirige' => 'Se vòstre navigador es pas redirigit, clicatz aicí per contunhar.', |
|
| 473 | - 'numero' => 'Numèro', |
|
| 471 | + // N |
|
| 472 | + 'navigateur_pas_redirige' => 'Se vòstre navigador es pas redirigit, clicatz aicí per contunhar.', |
|
| 473 | + 'numero' => 'Numèro', |
|
| 474 | 474 | |
| 475 | - // O |
|
| 476 | - 'occurence' => 'Ocurréncia', |
|
| 477 | - 'onglet_affacer_base' => 'Escafar la basa', |
|
| 478 | - 'onglet_auteur' => 'L’autor', |
|
| 479 | - 'onglet_contenu_site' => 'Contengut del sit', |
|
| 480 | - 'onglet_evolution_visite_mod' => 'Evolucion', |
|
| 481 | - 'onglet_fonctions_avances' => 'Foncions avançadas', |
|
| 482 | - 'onglet_informations_personnelles' => 'Informacions personalas', |
|
| 483 | - 'onglet_interactivite' => 'Interactivitat', |
|
| 484 | - 'onglet_messagerie' => 'Messatjariá', |
|
| 485 | - 'onglet_repartition_rubrique' => 'Reparticion per rubricas', |
|
| 486 | - 'onglet_save_restaur_base' => 'Salvagardar/restaurar la basa', |
|
| 487 | - 'onglet_vider_cache' => 'Vojar l’escondedor', |
|
| 475 | + // O |
|
| 476 | + 'occurence' => 'Ocurréncia', |
|
| 477 | + 'onglet_affacer_base' => 'Escafar la basa', |
|
| 478 | + 'onglet_auteur' => 'L’autor', |
|
| 479 | + 'onglet_contenu_site' => 'Contengut del sit', |
|
| 480 | + 'onglet_evolution_visite_mod' => 'Evolucion', |
|
| 481 | + 'onglet_fonctions_avances' => 'Foncions avançadas', |
|
| 482 | + 'onglet_informations_personnelles' => 'Informacions personalas', |
|
| 483 | + 'onglet_interactivite' => 'Interactivitat', |
|
| 484 | + 'onglet_messagerie' => 'Messatjariá', |
|
| 485 | + 'onglet_repartition_rubrique' => 'Reparticion per rubricas', |
|
| 486 | + 'onglet_save_restaur_base' => 'Salvagardar/restaurar la basa', |
|
| 487 | + 'onglet_vider_cache' => 'Vojar l’escondedor', |
|
| 488 | 488 | |
| 489 | - // P |
|
| 490 | - 'pass_choix_pass' => 'Volgatz causir vòstre mot de santa Clara novèl:', |
|
| 491 | - 'pass_erreur' => 'Error', |
|
| 492 | - 'pass_erreur_acces_refuse' => '<b>Error :</b> podètz pas pus accedir a aquel sit.', |
|
| 493 | - 'pass_erreur_code_inconnu' => '<b>Error :</b> aquel còde correspond pas a cap de vesitaire que pòsca accedir a aquel sit.', |
|
| 494 | - 'pass_erreur_non_enregistre' => '<b>Error:</b> l’adreiça <tt>@email_oubli@</tt> es pas registrada sus aquel sit.', |
|
| 495 | - 'pass_erreur_non_valide' => '<b>Error:</b> aquel e-mail <tt>@email_oubli@</tt> es pas valid!', |
|
| 496 | - 'pass_erreur_probleme_technique' => '<b>Error:</b> pr’amor d’un problèma tecnic, l’e-mail se pòt pas mandar. ', |
|
| 497 | - 'pass_espace_prive_bla' => 'L’espaci privat d’aqueste sit es dobèrt als |
|
| 489 | + // P |
|
| 490 | + 'pass_choix_pass' => 'Volgatz causir vòstre mot de santa Clara novèl:', |
|
| 491 | + 'pass_erreur' => 'Error', |
|
| 492 | + 'pass_erreur_acces_refuse' => '<b>Error :</b> podètz pas pus accedir a aquel sit.', |
|
| 493 | + 'pass_erreur_code_inconnu' => '<b>Error :</b> aquel còde correspond pas a cap de vesitaire que pòsca accedir a aquel sit.', |
|
| 494 | + 'pass_erreur_non_enregistre' => '<b>Error:</b> l’adreiça <tt>@email_oubli@</tt> es pas registrada sus aquel sit.', |
|
| 495 | + 'pass_erreur_non_valide' => '<b>Error:</b> aquel e-mail <tt>@email_oubli@</tt> es pas valid!', |
|
| 496 | + 'pass_erreur_probleme_technique' => '<b>Error:</b> pr’amor d’un problèma tecnic, l’e-mail se pòt pas mandar. ', |
|
| 497 | + 'pass_espace_prive_bla' => 'L’espaci privat d’aqueste sit es dobèrt als |
|
| 498 | 498 | vesitaires que se son inscriches. Un còp registrat/ada, |
| 499 | 499 | poiretz consultar los articles en cors de redaccion, |
| 500 | 500 | prepausar d’articles novèls e participar a totes los forums.', |
| 501 | - 'pass_forum_bla' => 'Avètz demandat d’intervenir dins un forum |
|
| 501 | + 'pass_forum_bla' => 'Avètz demandat d’intervenir dins un forum |
|
| 502 | 502 | reservat als vesitaires registrats.', |
| 503 | - 'pass_indiquez_cidessous' => 'Marcatz çai sota l’adreiça e-mail ont |
|
| 503 | + 'pass_indiquez_cidessous' => 'Marcatz çai sota l’adreiça e-mail ont |
|
| 504 | 504 | vos registrèretz lo còp passat. |
| 505 | 505 | Recebretz un e-mail que vos bailarà lo biais de |
| 506 | 506 | tornar trobar vòstre accès.', |
| 507 | - 'pass_mail_passcookie' => '(aquò’s un messatge automatic) |
|
| 507 | + 'pass_mail_passcookie' => '(aquò’s un messatge automatic) |
|
| 508 | 508 | Per tornar trobar vòstre accès al sit |
| 509 | 509 | @nom_site_spip@ (@adresse_site@) |
| 510 | 510 | |
@@ -516,126 +516,126 @@ discard block |
||
| 516 | 516 | e vos tornar connectar al sit. |
| 517 | 517 | |
| 518 | 518 | ', |
| 519 | - 'pass_mot_oublie' => 'Mot de santa Clara desmembrat', |
|
| 520 | - 'pass_nouveau_enregistre' => 'Vòstre mot de santa Clara novèl es estat registrat.', |
|
| 521 | - 'pass_nouveau_pass' => 'Mot de santa Clara novèl', |
|
| 522 | - 'pass_ok' => 'D’acòrdi', |
|
| 523 | - 'pass_oubli_mot' => 'Mot de santa Clara desmembrat', |
|
| 524 | - 'pass_quitter_fenetre' => 'Quitar aquesta fenèstra ', |
|
| 525 | - 'pass_rappel_login' => 'Remembrança: vòstre identificant (login) es « @login@ ».', |
|
| 526 | - 'pass_recevoir_mail' => 'Recebretz un e-mail que vos explicarà cossí tornar trobar vòstre accès al sit.', # MODIF |
|
| 527 | - 'pass_retour_public' => 'Tornar al sit public', |
|
| 528 | - 'pass_rien_a_faire_ici' => 'Pas res a faire aicí.', |
|
| 529 | - 'pass_vousinscrire' => 'S’inscriure sus aqueste sit', |
|
| 530 | - 'precedent' => 'precedent', |
|
| 531 | - 'previsualisation' => 'Previsualizacion', |
|
| 532 | - 'previsualiser' => 'Previsualizar', |
|
| 519 | + 'pass_mot_oublie' => 'Mot de santa Clara desmembrat', |
|
| 520 | + 'pass_nouveau_enregistre' => 'Vòstre mot de santa Clara novèl es estat registrat.', |
|
| 521 | + 'pass_nouveau_pass' => 'Mot de santa Clara novèl', |
|
| 522 | + 'pass_ok' => 'D’acòrdi', |
|
| 523 | + 'pass_oubli_mot' => 'Mot de santa Clara desmembrat', |
|
| 524 | + 'pass_quitter_fenetre' => 'Quitar aquesta fenèstra ', |
|
| 525 | + 'pass_rappel_login' => 'Remembrança: vòstre identificant (login) es « @login@ ».', |
|
| 526 | + 'pass_recevoir_mail' => 'Recebretz un e-mail que vos explicarà cossí tornar trobar vòstre accès al sit.', # MODIF |
|
| 527 | + 'pass_retour_public' => 'Tornar al sit public', |
|
| 528 | + 'pass_rien_a_faire_ici' => 'Pas res a faire aicí.', |
|
| 529 | + 'pass_vousinscrire' => 'S’inscriure sus aqueste sit', |
|
| 530 | + 'precedent' => 'precedent', |
|
| 531 | + 'previsualisation' => 'Previsualizacion', |
|
| 532 | + 'previsualiser' => 'Previsualizar', |
|
| 533 | 533 | |
| 534 | - // R |
|
| 535 | - 'retour' => 'Tornar', |
|
| 534 | + // R |
|
| 535 | + 'retour' => 'Tornar', |
|
| 536 | 536 | |
| 537 | - // S |
|
| 538 | - 'spip_conforme_dtd' => 'SPIP considèra aquel document coma confòrm a son DOCTYPE :', |
|
| 539 | - 'squelette' => 'esqueleta', |
|
| 540 | - 'squelette_inclus_ligne' => 'esqueleta inclusa, linha', |
|
| 541 | - 'squelette_ligne' => 'esqueleta, linha', |
|
| 542 | - 'stats_visites_et_popularite' => '@visites@ vesitas; popularitat: @popularite@', |
|
| 543 | - 'suivant' => 'seguent', |
|
| 537 | + // S |
|
| 538 | + 'spip_conforme_dtd' => 'SPIP considèra aquel document coma confòrm a son DOCTYPE :', |
|
| 539 | + 'squelette' => 'esqueleta', |
|
| 540 | + 'squelette_inclus_ligne' => 'esqueleta inclusa, linha', |
|
| 541 | + 'squelette_ligne' => 'esqueleta, linha', |
|
| 542 | + 'stats_visites_et_popularite' => '@visites@ vesitas; popularitat: @popularite@', |
|
| 543 | + 'suivant' => 'seguent', |
|
| 544 | 544 | |
| 545 | - // T |
|
| 546 | - 'taille_ko' => '@taille@ Ko', |
|
| 547 | - 'taille_mo' => '@taille@ Mo', |
|
| 548 | - 'taille_octets' => '@taille@ octets', |
|
| 549 | - 'texte_actualite_site_1' => 'Quand vos seretz familharizat/ada amb l’interfàcia, poiretz clicar sus «', |
|
| 550 | - 'texte_actualite_site_2' => 'Interfàcia completa', |
|
| 551 | - 'texte_actualite_site_3' => '" per dobrir mai de possibilitats.', |
|
| 552 | - 'texte_creation_automatique_vignette' => 'La creacion automatica de vinhetas de previsualizacion es activada sus aquel sit. S’installatz a partir d’aquel formulari d’imatges al(s) format(s) @gd_formats@, s’acompanharàn d’una vinheta d’una talha maximala de @taille_preview@ pixèls.', |
|
| 553 | - 'texte_documents_associes' => 'Los documents seguents s’assòcian a l’article, |
|
| 545 | + // T |
|
| 546 | + 'taille_ko' => '@taille@ Ko', |
|
| 547 | + 'taille_mo' => '@taille@ Mo', |
|
| 548 | + 'taille_octets' => '@taille@ octets', |
|
| 549 | + 'texte_actualite_site_1' => 'Quand vos seretz familharizat/ada amb l’interfàcia, poiretz clicar sus «', |
|
| 550 | + 'texte_actualite_site_2' => 'Interfàcia completa', |
|
| 551 | + 'texte_actualite_site_3' => '" per dobrir mai de possibilitats.', |
|
| 552 | + 'texte_creation_automatique_vignette' => 'La creacion automatica de vinhetas de previsualizacion es activada sus aquel sit. S’installatz a partir d’aquel formulari d’imatges al(s) format(s) @gd_formats@, s’acompanharàn d’una vinheta d’una talha maximala de @taille_preview@ pixèls.', |
|
| 553 | + 'texte_documents_associes' => 'Los documents seguents s’assòcian a l’article, |
|
| 554 | 554 | mas s’inserisson pas |
| 555 | 555 | dirèctament. Segon la compaginacion del sit public, |
| 556 | 556 | poiràn aparéisser jos forma de documents jonches.', |
| 557 | - 'texte_erreur_mise_niveau_base' => 'Error de basa de donadas pendent la mesa a nivèl. L’imatge <b>@fichier@</b> es pas passat (article @id_article@). |
|
| 557 | + 'texte_erreur_mise_niveau_base' => 'Error de basa de donadas pendent la mesa a nivèl. L’imatge <b>@fichier@</b> es pas passat (article @id_article@). |
|
| 558 | 558 | Notatz plan aquela referéncia, tornatz ensajar la mesa a |
| 559 | 559 | nivèl, e verificatz puèi que los imatges aparescan |
| 560 | 560 | encara dins los articles.', |
| 561 | - 'texte_erreur_visiteur' => 'Avètz assajat d’accedir a l’espaci privat amb un identificant qu’o permet pas.', |
|
| 562 | - 'texte_inc_auth_1' => 'Sètz identificat/ada coma |
|
| 561 | + 'texte_erreur_visiteur' => 'Avètz assajat d’accedir a l’espaci privat amb un identificant qu’o permet pas.', |
|
| 562 | + 'texte_inc_auth_1' => 'Sètz identificat/ada coma |
|
| 563 | 563 | <b>@auth_login@</b>, mas aquel login existís pas o pas mai dins la basa. |
| 564 | 564 | Ensajatz de vos', # MODIF |
| 565 | - 'texte_inc_auth_2' => 'tornar connectar', |
|
| 566 | - 'texte_inc_auth_3' => ', aprèp qu’auretz quitat eventualament, puèi |
|
| 565 | + 'texte_inc_auth_2' => 'tornar connectar', |
|
| 566 | + 'texte_inc_auth_3' => ', aprèp qu’auretz quitat eventualament, puèi |
|
| 567 | 567 | tornat lançar vòstre navigador.', |
| 568 | - 'texte_inc_config' => 'Las modificacions fachas dins aquestas paginas influéncian bravament lo |
|
| 568 | + 'texte_inc_config' => 'Las modificacions fachas dins aquestas paginas influéncian bravament lo |
|
| 569 | 569 | foncionament de vòstre sit. Vos aconselham d’i intervenir pas tant que siatz pas |
| 570 | 570 | acostumat/ada al foncionament del sistèma SPIP. <br /><br /><b> |
| 571 | 571 | En general, se conselha fòrt |
| 572 | 572 | de daissar la carga d’aquestas paginas al webmèstre principal de vòstre sit.</b>', |
| 573 | - 'texte_inc_meta_1' => 'Lo sistèma a rescontrat una error dins l’escritura del fichièr <code>@fichier@</code>.Volgatz, coma administrator/tritz del sit,', |
|
| 574 | - 'texte_inc_meta_2' => 'verificar los dreches d’escritura', |
|
| 575 | - 'texte_inc_meta_3' => 'dins lo repertòri <code>@repertoire@</code>.', |
|
| 576 | - 'texte_statut_en_cours_redaction' => 'en cors de redaccion', |
|
| 577 | - 'texte_statut_poubelle' => 'al bordilhièr', |
|
| 578 | - 'texte_statut_propose_evaluation' => 'prepausat per avaloracion', |
|
| 579 | - 'texte_statut_publie' => 'publicat en linha', |
|
| 580 | - 'texte_statut_refuse' => 'refusat', |
|
| 581 | - 'titre_ajouter_mot_cle' => 'APONDRE UN MOT CLAU:', |
|
| 582 | - 'titre_cadre_raccourcis' => 'ACORCHAS:', |
|
| 583 | - 'titre_changer_couleur_interface' => 'Cambiar la color de l’interfàcia', |
|
| 584 | - 'titre_image_admin_article' => 'Podètz administrar aqueste article', |
|
| 585 | - 'titre_image_administrateur' => 'Administrator', |
|
| 586 | - 'titre_image_aide' => 'D’ajuda subre aquel element', |
|
| 587 | - 'titre_image_auteur_supprime' => 'Autor suprimit', |
|
| 588 | - 'titre_image_redacteur' => 'Redactor sens accès', |
|
| 589 | - 'titre_image_redacteur_02' => 'Redactor', |
|
| 590 | - 'titre_image_visiteur' => 'Vesitaire', |
|
| 591 | - 'titre_joindre_document' => 'JÓNHER UN DOCUMENT', |
|
| 592 | - 'titre_mots_cles' => 'MOTS CLAU', |
|
| 593 | - 'titre_probleme_technique' => 'Atencion: un problèma tecnic (servidor SQL) empacha d’accedir a aquela part del sit. Mercés de vòstra indulgéncia.', |
|
| 594 | - 'titre_publier_document' => 'PUBLICAR UN DOCUMENT DINS AQUELA RUBRICA', |
|
| 595 | - 'titre_statistiques' => 'Estadisticas del sit', |
|
| 596 | - 'titre_titre_document' => 'Títol del document:', |
|
| 597 | - 'trad_reference' => '(article de referéncia)', # MODIF |
|
| 573 | + 'texte_inc_meta_1' => 'Lo sistèma a rescontrat una error dins l’escritura del fichièr <code>@fichier@</code>.Volgatz, coma administrator/tritz del sit,', |
|
| 574 | + 'texte_inc_meta_2' => 'verificar los dreches d’escritura', |
|
| 575 | + 'texte_inc_meta_3' => 'dins lo repertòri <code>@repertoire@</code>.', |
|
| 576 | + 'texte_statut_en_cours_redaction' => 'en cors de redaccion', |
|
| 577 | + 'texte_statut_poubelle' => 'al bordilhièr', |
|
| 578 | + 'texte_statut_propose_evaluation' => 'prepausat per avaloracion', |
|
| 579 | + 'texte_statut_publie' => 'publicat en linha', |
|
| 580 | + 'texte_statut_refuse' => 'refusat', |
|
| 581 | + 'titre_ajouter_mot_cle' => 'APONDRE UN MOT CLAU:', |
|
| 582 | + 'titre_cadre_raccourcis' => 'ACORCHAS:', |
|
| 583 | + 'titre_changer_couleur_interface' => 'Cambiar la color de l’interfàcia', |
|
| 584 | + 'titre_image_admin_article' => 'Podètz administrar aqueste article', |
|
| 585 | + 'titre_image_administrateur' => 'Administrator', |
|
| 586 | + 'titre_image_aide' => 'D’ajuda subre aquel element', |
|
| 587 | + 'titre_image_auteur_supprime' => 'Autor suprimit', |
|
| 588 | + 'titre_image_redacteur' => 'Redactor sens accès', |
|
| 589 | + 'titre_image_redacteur_02' => 'Redactor', |
|
| 590 | + 'titre_image_visiteur' => 'Vesitaire', |
|
| 591 | + 'titre_joindre_document' => 'JÓNHER UN DOCUMENT', |
|
| 592 | + 'titre_mots_cles' => 'MOTS CLAU', |
|
| 593 | + 'titre_probleme_technique' => 'Atencion: un problèma tecnic (servidor SQL) empacha d’accedir a aquela part del sit. Mercés de vòstra indulgéncia.', |
|
| 594 | + 'titre_publier_document' => 'PUBLICAR UN DOCUMENT DINS AQUELA RUBRICA', |
|
| 595 | + 'titre_statistiques' => 'Estadisticas del sit', |
|
| 596 | + 'titre_titre_document' => 'Títol del document:', |
|
| 597 | + 'trad_reference' => '(article de referéncia)', # MODIF |
|
| 598 | 598 | |
| 599 | - // Z |
|
| 600 | - 'zbug_balise_b_aval' => ' : balisa B en aval', |
|
| 601 | - 'zbug_boucle' => 'bloca', |
|
| 602 | - 'zbug_boucle_recursive_undef' => 'bloca recursiva non definida', # MODIF |
|
| 603 | - 'zbug_champ_hors_boucle' => 'Camp @champ@ fòra bloca', |
|
| 604 | - 'zbug_champ_hors_motif' => 'Camp @champ@ en defòra d’una bloca de motiu @motif@', # MODIF |
|
| 605 | - 'zbug_code' => 'còde', |
|
| 606 | - 'zbug_critere_inconnu' => 'critèri inconegut @critere@', # MODIF |
|
| 607 | - 'zbug_distant_interdit' => 'extèrne enebit', # MODIF |
|
| 608 | - 'zbug_doublon_table_sans_index' => 'doblons sus una taula sens indèx', # MODIF |
|
| 609 | - 'zbug_erreur_boucle_double' => 'BLOCA@id@: definicion dobla', # MODIF |
|
| 610 | - 'zbug_erreur_boucle_fermant' => 'BLOCA@id@: lo tag barrador manca', # MODIF |
|
| 611 | - 'zbug_erreur_boucle_syntaxe' => 'Sintaxi bloca incorrècta', # MODIF |
|
| 612 | - 'zbug_erreur_compilation' => 'Error de compilacion', |
|
| 613 | - 'zbug_erreur_execution_page' => 'error d’execucion de la pagina', # MODIF |
|
| 614 | - 'zbug_erreur_filtre' => 'Error: filtre <b>« @filtre@ »</b> non definit', # MODIF |
|
| 615 | - 'zbug_erreur_meme_parent' => '{meme_parent} s’aplica sonque a las blocas (FORUMS) o (RUBRIQUES)', # MODIF |
|
| 616 | - 'zbug_erreur_squelette' => 'Error(s) dins l’esqueleta', |
|
| 617 | - 'zbug_info_erreur_squelette' => 'Error subre lo sit', |
|
| 618 | - 'zbug_inversion_ordre_inexistant' => 'inversion d’un òrdre inexistent', # MODIF |
|
| 619 | - 'zbug_pagination_sans_critere' => '#PAGINATION sens critèri {pagination} o emplegat dins una bocla recursiva', # MODIF |
|
| 620 | - 'zbug_parametres_inclus_incorrects' => 'Paramètres d’inclusion incorrèctes', # MODIF |
|
| 621 | - 'zbug_profile' => 'Temps de calcul: @time@', |
|
| 622 | - 'zbug_resultat' => 'resultat', |
|
| 623 | - 'zbug_serveur_indefini' => 'servidor SQL indefinit', # MODIF |
|
| 624 | - 'zbug_table_inconnue' => 'Taula SQL « @table@ » inconeguda', |
|
| 625 | - 'zxml_connus_attributs' => 'atributs coneguts', |
|
| 626 | - 'zxml_de' => 'de', |
|
| 627 | - 'zxml_inconnu_attribut' => 'atribut inconegut', |
|
| 628 | - 'zxml_inconnu_balise' => 'balisa inconeguda', |
|
| 629 | - 'zxml_inconnu_entite' => 'entitat inconeguda', |
|
| 630 | - 'zxml_inconnu_id' => 'ID inconegut', |
|
| 631 | - 'zxml_mais_de' => 'mas de', |
|
| 632 | - 'zxml_non_conforme' => 'es pas confòrm al motiu', |
|
| 633 | - 'zxml_non_fils' => 'es pas un filh de', |
|
| 634 | - 'zxml_nonvide_balise' => 'balisa non voida', |
|
| 635 | - 'zxml_obligatoire_attribut' => 'atribut obligatòri mas absent dins', |
|
| 636 | - 'zxml_succession_fils_incorrecte' => 'succession dels filhs incorrècte', |
|
| 637 | - 'zxml_survoler' => 'susvolar per veire los corrèctes', |
|
| 638 | - 'zxml_valeur_attribut' => 'valor de l’atribut', |
|
| 639 | - 'zxml_vide_balise' => 'balise voida', |
|
| 640 | - 'zxml_vu' => 'vist aperavant' |
|
| 599 | + // Z |
|
| 600 | + 'zbug_balise_b_aval' => ' : balisa B en aval', |
|
| 601 | + 'zbug_boucle' => 'bloca', |
|
| 602 | + 'zbug_boucle_recursive_undef' => 'bloca recursiva non definida', # MODIF |
|
| 603 | + 'zbug_champ_hors_boucle' => 'Camp @champ@ fòra bloca', |
|
| 604 | + 'zbug_champ_hors_motif' => 'Camp @champ@ en defòra d’una bloca de motiu @motif@', # MODIF |
|
| 605 | + 'zbug_code' => 'còde', |
|
| 606 | + 'zbug_critere_inconnu' => 'critèri inconegut @critere@', # MODIF |
|
| 607 | + 'zbug_distant_interdit' => 'extèrne enebit', # MODIF |
|
| 608 | + 'zbug_doublon_table_sans_index' => 'doblons sus una taula sens indèx', # MODIF |
|
| 609 | + 'zbug_erreur_boucle_double' => 'BLOCA@id@: definicion dobla', # MODIF |
|
| 610 | + 'zbug_erreur_boucle_fermant' => 'BLOCA@id@: lo tag barrador manca', # MODIF |
|
| 611 | + 'zbug_erreur_boucle_syntaxe' => 'Sintaxi bloca incorrècta', # MODIF |
|
| 612 | + 'zbug_erreur_compilation' => 'Error de compilacion', |
|
| 613 | + 'zbug_erreur_execution_page' => 'error d’execucion de la pagina', # MODIF |
|
| 614 | + 'zbug_erreur_filtre' => 'Error: filtre <b>« @filtre@ »</b> non definit', # MODIF |
|
| 615 | + 'zbug_erreur_meme_parent' => '{meme_parent} s’aplica sonque a las blocas (FORUMS) o (RUBRIQUES)', # MODIF |
|
| 616 | + 'zbug_erreur_squelette' => 'Error(s) dins l’esqueleta', |
|
| 617 | + 'zbug_info_erreur_squelette' => 'Error subre lo sit', |
|
| 618 | + 'zbug_inversion_ordre_inexistant' => 'inversion d’un òrdre inexistent', # MODIF |
|
| 619 | + 'zbug_pagination_sans_critere' => '#PAGINATION sens critèri {pagination} o emplegat dins una bocla recursiva', # MODIF |
|
| 620 | + 'zbug_parametres_inclus_incorrects' => 'Paramètres d’inclusion incorrèctes', # MODIF |
|
| 621 | + 'zbug_profile' => 'Temps de calcul: @time@', |
|
| 622 | + 'zbug_resultat' => 'resultat', |
|
| 623 | + 'zbug_serveur_indefini' => 'servidor SQL indefinit', # MODIF |
|
| 624 | + 'zbug_table_inconnue' => 'Taula SQL « @table@ » inconeguda', |
|
| 625 | + 'zxml_connus_attributs' => 'atributs coneguts', |
|
| 626 | + 'zxml_de' => 'de', |
|
| 627 | + 'zxml_inconnu_attribut' => 'atribut inconegut', |
|
| 628 | + 'zxml_inconnu_balise' => 'balisa inconeguda', |
|
| 629 | + 'zxml_inconnu_entite' => 'entitat inconeguda', |
|
| 630 | + 'zxml_inconnu_id' => 'ID inconegut', |
|
| 631 | + 'zxml_mais_de' => 'mas de', |
|
| 632 | + 'zxml_non_conforme' => 'es pas confòrm al motiu', |
|
| 633 | + 'zxml_non_fils' => 'es pas un filh de', |
|
| 634 | + 'zxml_nonvide_balise' => 'balisa non voida', |
|
| 635 | + 'zxml_obligatoire_attribut' => 'atribut obligatòri mas absent dins', |
|
| 636 | + 'zxml_succession_fils_incorrecte' => 'succession dels filhs incorrècte', |
|
| 637 | + 'zxml_survoler' => 'susvolar per veire los corrèctes', |
|
| 638 | + 'zxml_valeur_attribut' => 'valor de l’atribut', |
|
| 639 | + 'zxml_vide_balise' => 'balise voida', |
|
| 640 | + 'zxml_vu' => 'vist aperavant' |
|
| 641 | 641 | ); |
@@ -4,247 +4,247 @@ discard block |
||
| 4 | 4 | // ** ne pas modifier le fichier ** |
| 5 | 5 | |
| 6 | 6 | if (!defined('_ECRIRE_INC_VERSION')) { |
| 7 | - return; |
|
| 7 | + return; |
|
| 8 | 8 | } |
| 9 | 9 | |
| 10 | 10 | $GLOBALS[$GLOBALS['idx_lang']] = array( |
| 11 | 11 | |
| 12 | - // A |
|
| 13 | - 'access_interface_graphique' => 'Retour à l’interface graphique complète', |
|
| 14 | - 'access_mode_texte' => 'Afficher l’interface textuelle simplifiée', |
|
| 15 | - 'admin_debug' => 'debug', |
|
| 16 | - 'admin_modifier_article' => 'Modifier cet article', |
|
| 17 | - 'admin_modifier_auteur' => 'Modifier cette autrice', |
|
| 18 | - 'admin_modifier_breve' => 'Modifier cette brève', |
|
| 19 | - 'admin_modifier_mot' => 'Modifier ce mot-clé', |
|
| 20 | - 'admin_modifier_rubrique' => 'Modifier cette rubrique', |
|
| 21 | - 'admin_recalculer' => 'Recalculer cette page', |
|
| 22 | - 'afficher_calendrier' => 'Afficher le calendrier', |
|
| 23 | - 'afficher_trad' => 'afficher les traductions', |
|
| 24 | - 'alerte_maj_impossible' => '<b>Alerte !</b> La mise à jour de la base SQL vers la version @version@ est impossible, peut-être à cause d’un problème de droit de modification sur la base de données. Veuillez contacter votre hébergeur.', |
|
| 25 | - 'alerte_modif_info_concourante' => 'ATTENTION : Cette information a été modifiée par ailleurs. La valeur actuelle est :', |
|
| 26 | - 'analyse_xml' => 'Analyse XML', |
|
| 27 | - 'annuler' => 'Annuler', |
|
| 28 | - 'antispam_champ_vide' => 'Veuillez laisser ce champ vide :', |
|
| 29 | - 'articles_recents' => 'Articles les plus récents', |
|
| 30 | - 'attention_champ_mini_nb_caractères' => 'Attention ! @nb@ caractères au minimum', |
|
| 31 | - 'avis_1_erreur_saisie' => 'Il y a 1 erreur dans votre saisie, veuillez vérifier les informations.', |
|
| 32 | - 'avis_archive_incorrect' => 'le fichier archive n’est pas un fichier SPIP', |
|
| 33 | - 'avis_archive_invalide' => 'le fichier archive n’est pas valide', |
|
| 34 | - 'avis_attention' => 'ATTENTION !', |
|
| 35 | - 'avis_champ_incorrect_type_objet' => 'Nom de champ incorrect @name@ pour objet de type @type@', |
|
| 36 | - 'avis_colonne_inexistante' => 'La colonne @col@ n’existe pas', |
|
| 37 | - 'avis_erreur' => 'Erreur : voir ci-dessous', |
|
| 38 | - 'avis_erreur_connexion' => 'Erreur de connexion', |
|
| 39 | - 'avis_erreur_cookie' => 'problème de cookie', |
|
| 40 | - 'avis_erreur_fonction_contexte' => 'Erreur de programmation. Cette fonction ne doit pas être appelée dans ce contexte.', |
|
| 41 | - 'avis_erreur_mysql' => 'Erreur SQL', |
|
| 42 | - 'avis_erreur_sauvegarde' => 'Erreur dans la sauvegarde (@type@ @id_objet@) !', |
|
| 43 | - 'avis_erreur_visiteur' => 'Problème d’accès à l’espace privé', |
|
| 44 | - 'avis_nb_erreurs_saisie' => 'Il y a @nb@ erreurs dans votre saisie, veuillez vérifier les informations.', |
|
| 12 | + // A |
|
| 13 | + 'access_interface_graphique' => 'Retour à l’interface graphique complète', |
|
| 14 | + 'access_mode_texte' => 'Afficher l’interface textuelle simplifiée', |
|
| 15 | + 'admin_debug' => 'debug', |
|
| 16 | + 'admin_modifier_article' => 'Modifier cet article', |
|
| 17 | + 'admin_modifier_auteur' => 'Modifier cette autrice', |
|
| 18 | + 'admin_modifier_breve' => 'Modifier cette brève', |
|
| 19 | + 'admin_modifier_mot' => 'Modifier ce mot-clé', |
|
| 20 | + 'admin_modifier_rubrique' => 'Modifier cette rubrique', |
|
| 21 | + 'admin_recalculer' => 'Recalculer cette page', |
|
| 22 | + 'afficher_calendrier' => 'Afficher le calendrier', |
|
| 23 | + 'afficher_trad' => 'afficher les traductions', |
|
| 24 | + 'alerte_maj_impossible' => '<b>Alerte !</b> La mise à jour de la base SQL vers la version @version@ est impossible, peut-être à cause d’un problème de droit de modification sur la base de données. Veuillez contacter votre hébergeur.', |
|
| 25 | + 'alerte_modif_info_concourante' => 'ATTENTION : Cette information a été modifiée par ailleurs. La valeur actuelle est :', |
|
| 26 | + 'analyse_xml' => 'Analyse XML', |
|
| 27 | + 'annuler' => 'Annuler', |
|
| 28 | + 'antispam_champ_vide' => 'Veuillez laisser ce champ vide :', |
|
| 29 | + 'articles_recents' => 'Articles les plus récents', |
|
| 30 | + 'attention_champ_mini_nb_caractères' => 'Attention ! @nb@ caractères au minimum', |
|
| 31 | + 'avis_1_erreur_saisie' => 'Il y a 1 erreur dans votre saisie, veuillez vérifier les informations.', |
|
| 32 | + 'avis_archive_incorrect' => 'le fichier archive n’est pas un fichier SPIP', |
|
| 33 | + 'avis_archive_invalide' => 'le fichier archive n’est pas valide', |
|
| 34 | + 'avis_attention' => 'ATTENTION !', |
|
| 35 | + 'avis_champ_incorrect_type_objet' => 'Nom de champ incorrect @name@ pour objet de type @type@', |
|
| 36 | + 'avis_colonne_inexistante' => 'La colonne @col@ n’existe pas', |
|
| 37 | + 'avis_erreur' => 'Erreur : voir ci-dessous', |
|
| 38 | + 'avis_erreur_connexion' => 'Erreur de connexion', |
|
| 39 | + 'avis_erreur_cookie' => 'problème de cookie', |
|
| 40 | + 'avis_erreur_fonction_contexte' => 'Erreur de programmation. Cette fonction ne doit pas être appelée dans ce contexte.', |
|
| 41 | + 'avis_erreur_mysql' => 'Erreur SQL', |
|
| 42 | + 'avis_erreur_sauvegarde' => 'Erreur dans la sauvegarde (@type@ @id_objet@) !', |
|
| 43 | + 'avis_erreur_visiteur' => 'Problème d’accès à l’espace privé', |
|
| 44 | + 'avis_nb_erreurs_saisie' => 'Il y a @nb@ erreurs dans votre saisie, veuillez vérifier les informations.', |
|
| 45 | 45 | |
| 46 | - // B |
|
| 47 | - 'barre_a_accent_grave' => 'Insérer un A accent grave majuscule', |
|
| 48 | - 'barre_aide' => 'Utilisez les raccourcis typographiques pour enrichir votre mise en page', |
|
| 49 | - 'barre_e_accent_aigu' => 'Insérer un E accent aigu majuscule', |
|
| 50 | - 'barre_eo' => 'Insérer un E dans l’O', |
|
| 51 | - 'barre_eo_maj' => 'Insérer un E dans l’O majuscule', |
|
| 52 | - 'barre_euro' => 'Insérer le symbole €', |
|
| 53 | - 'barre_gras' => 'Mettre en {{gras}}', |
|
| 54 | - 'barre_guillemets' => 'Entourer de « guillemets »', |
|
| 55 | - 'barre_guillemets_simples' => 'Entourer de “guillemets de second niveau”', |
|
| 56 | - 'barre_intertitre' => 'Transformer en {{{intertitre}}}', |
|
| 57 | - 'barre_italic' => 'Mettre en {italique}', |
|
| 58 | - 'barre_lien' => 'Transformer en [lien hypertexte->http://...]', |
|
| 59 | - 'barre_lien_input' => 'Veuillez indiquer l’adresse de votre lien (vous pouvez indiquer une adresse Web sous la forme http://www.monsite/com ou simplement indiquer le numéro d’un article de ce site.', |
|
| 60 | - 'barre_note' => 'Transformer en [[Note de bas de page]]', |
|
| 61 | - 'barre_paragraphe' => 'Créer un paragraphe', |
|
| 62 | - 'barre_quote' => '<quote>Citer un message</quote>', |
|
| 63 | - 'bouton_changer' => 'Changer', |
|
| 64 | - 'bouton_chercher' => 'Chercher', |
|
| 65 | - 'bouton_choisir' => 'Choisir', |
|
| 66 | - 'bouton_deplacer' => 'Déplacer', |
|
| 67 | - 'bouton_download' => 'Télécharger', |
|
| 68 | - 'bouton_enregistrer' => 'Enregistrer', |
|
| 69 | - 'bouton_radio_desactiver_messagerie_interne' => 'Désactiver la messagerie interne', |
|
| 70 | - 'bouton_radio_envoi_annonces' => 'Envoyer les annonces éditoriales', |
|
| 71 | - 'bouton_radio_non_envoi_annonces' => 'Ne pas envoyer d’annonces', |
|
| 72 | - 'bouton_radio_non_envoi_liste_nouveautes' => 'Ne pas envoyer la liste des nouveautés', |
|
| 73 | - 'bouton_recharger_page' => 'recharger cette page', |
|
| 74 | - 'bouton_telecharger' => 'Télécharger', |
|
| 75 | - 'bouton_upload' => 'Téléverser', |
|
| 76 | - 'bouton_valider' => 'Valider', |
|
| 46 | + // B |
|
| 47 | + 'barre_a_accent_grave' => 'Insérer un A accent grave majuscule', |
|
| 48 | + 'barre_aide' => 'Utilisez les raccourcis typographiques pour enrichir votre mise en page', |
|
| 49 | + 'barre_e_accent_aigu' => 'Insérer un E accent aigu majuscule', |
|
| 50 | + 'barre_eo' => 'Insérer un E dans l’O', |
|
| 51 | + 'barre_eo_maj' => 'Insérer un E dans l’O majuscule', |
|
| 52 | + 'barre_euro' => 'Insérer le symbole €', |
|
| 53 | + 'barre_gras' => 'Mettre en {{gras}}', |
|
| 54 | + 'barre_guillemets' => 'Entourer de « guillemets »', |
|
| 55 | + 'barre_guillemets_simples' => 'Entourer de “guillemets de second niveau”', |
|
| 56 | + 'barre_intertitre' => 'Transformer en {{{intertitre}}}', |
|
| 57 | + 'barre_italic' => 'Mettre en {italique}', |
|
| 58 | + 'barre_lien' => 'Transformer en [lien hypertexte->http://...]', |
|
| 59 | + 'barre_lien_input' => 'Veuillez indiquer l’adresse de votre lien (vous pouvez indiquer une adresse Web sous la forme http://www.monsite/com ou simplement indiquer le numéro d’un article de ce site.', |
|
| 60 | + 'barre_note' => 'Transformer en [[Note de bas de page]]', |
|
| 61 | + 'barre_paragraphe' => 'Créer un paragraphe', |
|
| 62 | + 'barre_quote' => '<quote>Citer un message</quote>', |
|
| 63 | + 'bouton_changer' => 'Changer', |
|
| 64 | + 'bouton_chercher' => 'Chercher', |
|
| 65 | + 'bouton_choisir' => 'Choisir', |
|
| 66 | + 'bouton_deplacer' => 'Déplacer', |
|
| 67 | + 'bouton_download' => 'Télécharger', |
|
| 68 | + 'bouton_enregistrer' => 'Enregistrer', |
|
| 69 | + 'bouton_radio_desactiver_messagerie_interne' => 'Désactiver la messagerie interne', |
|
| 70 | + 'bouton_radio_envoi_annonces' => 'Envoyer les annonces éditoriales', |
|
| 71 | + 'bouton_radio_non_envoi_annonces' => 'Ne pas envoyer d’annonces', |
|
| 72 | + 'bouton_radio_non_envoi_liste_nouveautes' => 'Ne pas envoyer la liste des nouveautés', |
|
| 73 | + 'bouton_recharger_page' => 'recharger cette page', |
|
| 74 | + 'bouton_telecharger' => 'Télécharger', |
|
| 75 | + 'bouton_upload' => 'Téléverser', |
|
| 76 | + 'bouton_valider' => 'Valider', |
|
| 77 | 77 | |
| 78 | - // C |
|
| 79 | - 'cal_apresmidi' => 'après-midi', |
|
| 80 | - 'cal_jour_entier' => 'jour entier', |
|
| 81 | - 'cal_matin' => 'matin', |
|
| 82 | - 'cal_par_jour' => 'calendrier par jour', |
|
| 83 | - 'cal_par_mois' => 'calendrier par mois', |
|
| 84 | - 'cal_par_semaine' => 'calendrier par semaine', |
|
| 85 | - 'choix_couleur_interface' => 'couleur ', |
|
| 86 | - 'choix_interface' => 'choix de l’interface', |
|
| 87 | - 'colonne' => 'Colonne', |
|
| 88 | - 'confirm_changer_statut' => 'Attention, vous avez demandé à changer le statut de cet élément. Souhaitez-vous continuer ?', |
|
| 89 | - 'correcte' => 'correcte', |
|
| 78 | + // C |
|
| 79 | + 'cal_apresmidi' => 'après-midi', |
|
| 80 | + 'cal_jour_entier' => 'jour entier', |
|
| 81 | + 'cal_matin' => 'matin', |
|
| 82 | + 'cal_par_jour' => 'calendrier par jour', |
|
| 83 | + 'cal_par_mois' => 'calendrier par mois', |
|
| 84 | + 'cal_par_semaine' => 'calendrier par semaine', |
|
| 85 | + 'choix_couleur_interface' => 'couleur ', |
|
| 86 | + 'choix_interface' => 'choix de l’interface', |
|
| 87 | + 'colonne' => 'Colonne', |
|
| 88 | + 'confirm_changer_statut' => 'Attention, vous avez demandé à changer le statut de cet élément. Souhaitez-vous continuer ?', |
|
| 89 | + 'correcte' => 'correcte', |
|
| 90 | 90 | |
| 91 | - // D |
|
| 92 | - 'date_aujourdhui' => 'aujourd’hui', |
|
| 93 | - 'date_avant_jc' => 'av. J.C.', |
|
| 94 | - 'date_dans' => 'dans @delai@', |
|
| 95 | - 'date_de_mois_1' => '@j@ @nommois@', |
|
| 96 | - 'date_de_mois_10' => '@j@ @nommois@', |
|
| 97 | - 'date_de_mois_11' => '@j@ @nommois@', |
|
| 98 | - 'date_de_mois_12' => '@j@ @nommois@', |
|
| 99 | - 'date_de_mois_2' => '@j@ @nommois@', |
|
| 100 | - 'date_de_mois_3' => '@j@ @nommois@', |
|
| 101 | - 'date_de_mois_4' => '@j@ @nommois@', |
|
| 102 | - 'date_de_mois_5' => '@j@ @nommois@', |
|
| 103 | - 'date_de_mois_6' => '@j@ @nommois@', |
|
| 104 | - 'date_de_mois_7' => '@j@ @nommois@', |
|
| 105 | - 'date_de_mois_8' => '@j@ @nommois@', |
|
| 106 | - 'date_de_mois_9' => '@j@ @nommois@', |
|
| 107 | - 'date_demain' => 'demain', |
|
| 108 | - 'date_fmt_heures_minutes' => '@h@h@m@min', |
|
| 109 | - 'date_fmt_heures_minutes_court' => '@h@h@m@', |
|
| 110 | - 'date_fmt_jour' => '@nomjour@ @jour@', |
|
| 111 | - 'date_fmt_jour_heure' => '@jour@ à @heure@', |
|
| 112 | - 'date_fmt_jour_heure_debut_fin' => '@jour@ de @heure_debut@ à @heure_fin@', |
|
| 113 | - 'date_fmt_jour_heure_debut_fin_abbr' => '@dtstart@@jour@ de @heure_debut@@dtabbr@ à @dtend@@heure_fin@@dtabbr@', |
|
| 114 | - 'date_fmt_jour_mois' => '@jour@ @nommois@', |
|
| 115 | - 'date_fmt_jour_mois_annee' => '@jour@ @nommois@ @annee@', |
|
| 116 | - 'date_fmt_mois_annee' => '@nommois@ @annee@', |
|
| 117 | - 'date_fmt_nomjour' => '@nomjour@ @date@', |
|
| 118 | - 'date_fmt_nomjour_date' => 'le @nomjour@ @date@', |
|
| 119 | - 'date_fmt_periode' => 'Du @date_debut@ au @date_fin@', |
|
| 120 | - 'date_fmt_periode_abbr' => 'Du @dtart@@date_debut@@dtabbr@ au @dtend@@date_fin@@dtabbr@', |
|
| 121 | - 'date_fmt_periode_from' => 'Du', |
|
| 122 | - 'date_fmt_periode_to' => 'au', |
|
| 123 | - 'date_fmt_saison_annee' => '@saison@ @annee@', |
|
| 124 | - 'date_heures' => 'heures', |
|
| 125 | - 'date_hier' => 'hier', |
|
| 126 | - 'date_il_y_a' => 'il y a @delai@', |
|
| 127 | - 'date_jnum1' => '1er', |
|
| 128 | - 'date_jnum10' => '10', |
|
| 129 | - 'date_jnum11' => '11', |
|
| 130 | - 'date_jnum12' => '12', |
|
| 131 | - 'date_jnum13' => '13', |
|
| 132 | - 'date_jnum14' => '14', |
|
| 133 | - 'date_jnum15' => '15', |
|
| 134 | - 'date_jnum16' => '16', |
|
| 135 | - 'date_jnum17' => '17', |
|
| 136 | - 'date_jnum18' => '18', |
|
| 137 | - 'date_jnum19' => '19', |
|
| 138 | - 'date_jnum2' => '2', |
|
| 139 | - 'date_jnum20' => '20', |
|
| 140 | - 'date_jnum21' => '21', |
|
| 141 | - 'date_jnum22' => '22', |
|
| 142 | - 'date_jnum23' => '23', |
|
| 143 | - 'date_jnum24' => '24', |
|
| 144 | - 'date_jnum25' => '25', |
|
| 145 | - 'date_jnum26' => '26', |
|
| 146 | - 'date_jnum27' => '27', |
|
| 147 | - 'date_jnum28' => '28', |
|
| 148 | - 'date_jnum29' => '29', |
|
| 149 | - 'date_jnum3' => '3', |
|
| 150 | - 'date_jnum30' => '30', |
|
| 151 | - 'date_jnum31' => '31', |
|
| 152 | - 'date_jnum4' => '4', |
|
| 153 | - 'date_jnum5' => '5', |
|
| 154 | - 'date_jnum6' => '6', |
|
| 155 | - 'date_jnum7' => '7', |
|
| 156 | - 'date_jnum8' => '8', |
|
| 157 | - 'date_jnum9' => '9', |
|
| 158 | - 'date_jour_1' => 'dimanche', |
|
| 159 | - 'date_jour_1_abbr' => 'dim.', |
|
| 160 | - 'date_jour_1_initiale' => 'd.', |
|
| 161 | - 'date_jour_2' => 'lundi', |
|
| 162 | - 'date_jour_2_abbr' => 'lun.', |
|
| 163 | - 'date_jour_2_initiale' => 'l.', |
|
| 164 | - 'date_jour_3' => 'mardi', |
|
| 165 | - 'date_jour_3_abbr' => 'mar.', |
|
| 166 | - 'date_jour_3_initiale' => 'm.', |
|
| 167 | - 'date_jour_4' => 'mercredi', |
|
| 168 | - 'date_jour_4_abbr' => 'mer.', |
|
| 169 | - 'date_jour_4_initiale' => 'm.', |
|
| 170 | - 'date_jour_5' => 'jeudi', |
|
| 171 | - 'date_jour_5_abbr' => 'jeu.', |
|
| 172 | - 'date_jour_5_initiale' => 'j.', |
|
| 173 | - 'date_jour_6' => 'vendredi', |
|
| 174 | - 'date_jour_6_abbr' => 'ven.', |
|
| 175 | - 'date_jour_6_initiale' => 'v.', |
|
| 176 | - 'date_jour_7' => 'samedi', |
|
| 177 | - 'date_jour_7_abbr' => 'sam.', |
|
| 178 | - 'date_jour_7_initiale' => 's.', |
|
| 179 | - 'date_jours' => 'jours', |
|
| 180 | - 'date_minutes' => 'minutes', |
|
| 181 | - 'date_mois' => 'mois', |
|
| 182 | - 'date_mois_1' => 'janvier', |
|
| 183 | - 'date_mois_10' => 'octobre', |
|
| 184 | - 'date_mois_10_abbr' => 'oct.', |
|
| 185 | - 'date_mois_11' => 'novembre', |
|
| 186 | - 'date_mois_11_abbr' => 'nov.', |
|
| 187 | - 'date_mois_12' => 'décembre', |
|
| 188 | - 'date_mois_12_abbr' => 'déc.', |
|
| 189 | - 'date_mois_1_abbr' => 'janv.', |
|
| 190 | - 'date_mois_2' => 'février', |
|
| 191 | - 'date_mois_2_abbr' => 'févr.', |
|
| 192 | - 'date_mois_3' => 'mars', |
|
| 193 | - 'date_mois_3_abbr' => 'mars', |
|
| 194 | - 'date_mois_4' => 'avril', |
|
| 195 | - 'date_mois_4_abbr' => 'avr.', |
|
| 196 | - 'date_mois_5' => 'mai', |
|
| 197 | - 'date_mois_5_abbr' => 'mai', |
|
| 198 | - 'date_mois_6' => 'juin', |
|
| 199 | - 'date_mois_6_abbr' => 'juin', |
|
| 200 | - 'date_mois_7' => 'juillet', |
|
| 201 | - 'date_mois_7_abbr' => 'juil.', |
|
| 202 | - 'date_mois_8' => 'août', |
|
| 203 | - 'date_mois_8_abbr' => 'août', |
|
| 204 | - 'date_mois_9' => 'septembre', |
|
| 205 | - 'date_mois_9_abbr' => 'sept.', |
|
| 206 | - 'date_saison_1' => 'hiver', |
|
| 207 | - 'date_saison_2' => 'printemps', |
|
| 208 | - 'date_saison_3' => 'été', |
|
| 209 | - 'date_saison_4' => 'automne', |
|
| 210 | - 'date_secondes' => 'secondes', |
|
| 211 | - 'date_semaines' => 'semaines', |
|
| 212 | - 'date_un_mois' => 'mois', |
|
| 213 | - 'date_une_heure' => 'heure', |
|
| 214 | - 'date_une_minute' => 'minute', |
|
| 215 | - 'date_une_seconde' => 'seconde', |
|
| 216 | - 'date_une_semaine' => 'semaine', |
|
| 217 | - 'dirs_commencer' => ' afin de commencer réellement l’installation', |
|
| 218 | - 'dirs_preliminaire' => 'Préliminaire : <b>Régler les droits d’accès</b>', |
|
| 219 | - 'dirs_probleme_droits' => 'Problème de droits d’accès', |
|
| 220 | - 'dirs_repertoires_absents' => '<p><b>Les répertoires suivants n’ont pas été trouvés :</b></p><ul>@bad_dirs@</ul> |
|
| 91 | + // D |
|
| 92 | + 'date_aujourdhui' => 'aujourd’hui', |
|
| 93 | + 'date_avant_jc' => 'av. J.C.', |
|
| 94 | + 'date_dans' => 'dans @delai@', |
|
| 95 | + 'date_de_mois_1' => '@j@ @nommois@', |
|
| 96 | + 'date_de_mois_10' => '@j@ @nommois@', |
|
| 97 | + 'date_de_mois_11' => '@j@ @nommois@', |
|
| 98 | + 'date_de_mois_12' => '@j@ @nommois@', |
|
| 99 | + 'date_de_mois_2' => '@j@ @nommois@', |
|
| 100 | + 'date_de_mois_3' => '@j@ @nommois@', |
|
| 101 | + 'date_de_mois_4' => '@j@ @nommois@', |
|
| 102 | + 'date_de_mois_5' => '@j@ @nommois@', |
|
| 103 | + 'date_de_mois_6' => '@j@ @nommois@', |
|
| 104 | + 'date_de_mois_7' => '@j@ @nommois@', |
|
| 105 | + 'date_de_mois_8' => '@j@ @nommois@', |
|
| 106 | + 'date_de_mois_9' => '@j@ @nommois@', |
|
| 107 | + 'date_demain' => 'demain', |
|
| 108 | + 'date_fmt_heures_minutes' => '@h@h@m@min', |
|
| 109 | + 'date_fmt_heures_minutes_court' => '@h@h@m@', |
|
| 110 | + 'date_fmt_jour' => '@nomjour@ @jour@', |
|
| 111 | + 'date_fmt_jour_heure' => '@jour@ à @heure@', |
|
| 112 | + 'date_fmt_jour_heure_debut_fin' => '@jour@ de @heure_debut@ à @heure_fin@', |
|
| 113 | + 'date_fmt_jour_heure_debut_fin_abbr' => '@dtstart@@jour@ de @heure_debut@@dtabbr@ à @dtend@@heure_fin@@dtabbr@', |
|
| 114 | + 'date_fmt_jour_mois' => '@jour@ @nommois@', |
|
| 115 | + 'date_fmt_jour_mois_annee' => '@jour@ @nommois@ @annee@', |
|
| 116 | + 'date_fmt_mois_annee' => '@nommois@ @annee@', |
|
| 117 | + 'date_fmt_nomjour' => '@nomjour@ @date@', |
|
| 118 | + 'date_fmt_nomjour_date' => 'le @nomjour@ @date@', |
|
| 119 | + 'date_fmt_periode' => 'Du @date_debut@ au @date_fin@', |
|
| 120 | + 'date_fmt_periode_abbr' => 'Du @dtart@@date_debut@@dtabbr@ au @dtend@@date_fin@@dtabbr@', |
|
| 121 | + 'date_fmt_periode_from' => 'Du', |
|
| 122 | + 'date_fmt_periode_to' => 'au', |
|
| 123 | + 'date_fmt_saison_annee' => '@saison@ @annee@', |
|
| 124 | + 'date_heures' => 'heures', |
|
| 125 | + 'date_hier' => 'hier', |
|
| 126 | + 'date_il_y_a' => 'il y a @delai@', |
|
| 127 | + 'date_jnum1' => '1er', |
|
| 128 | + 'date_jnum10' => '10', |
|
| 129 | + 'date_jnum11' => '11', |
|
| 130 | + 'date_jnum12' => '12', |
|
| 131 | + 'date_jnum13' => '13', |
|
| 132 | + 'date_jnum14' => '14', |
|
| 133 | + 'date_jnum15' => '15', |
|
| 134 | + 'date_jnum16' => '16', |
|
| 135 | + 'date_jnum17' => '17', |
|
| 136 | + 'date_jnum18' => '18', |
|
| 137 | + 'date_jnum19' => '19', |
|
| 138 | + 'date_jnum2' => '2', |
|
| 139 | + 'date_jnum20' => '20', |
|
| 140 | + 'date_jnum21' => '21', |
|
| 141 | + 'date_jnum22' => '22', |
|
| 142 | + 'date_jnum23' => '23', |
|
| 143 | + 'date_jnum24' => '24', |
|
| 144 | + 'date_jnum25' => '25', |
|
| 145 | + 'date_jnum26' => '26', |
|
| 146 | + 'date_jnum27' => '27', |
|
| 147 | + 'date_jnum28' => '28', |
|
| 148 | + 'date_jnum29' => '29', |
|
| 149 | + 'date_jnum3' => '3', |
|
| 150 | + 'date_jnum30' => '30', |
|
| 151 | + 'date_jnum31' => '31', |
|
| 152 | + 'date_jnum4' => '4', |
|
| 153 | + 'date_jnum5' => '5', |
|
| 154 | + 'date_jnum6' => '6', |
|
| 155 | + 'date_jnum7' => '7', |
|
| 156 | + 'date_jnum8' => '8', |
|
| 157 | + 'date_jnum9' => '9', |
|
| 158 | + 'date_jour_1' => 'dimanche', |
|
| 159 | + 'date_jour_1_abbr' => 'dim.', |
|
| 160 | + 'date_jour_1_initiale' => 'd.', |
|
| 161 | + 'date_jour_2' => 'lundi', |
|
| 162 | + 'date_jour_2_abbr' => 'lun.', |
|
| 163 | + 'date_jour_2_initiale' => 'l.', |
|
| 164 | + 'date_jour_3' => 'mardi', |
|
| 165 | + 'date_jour_3_abbr' => 'mar.', |
|
| 166 | + 'date_jour_3_initiale' => 'm.', |
|
| 167 | + 'date_jour_4' => 'mercredi', |
|
| 168 | + 'date_jour_4_abbr' => 'mer.', |
|
| 169 | + 'date_jour_4_initiale' => 'm.', |
|
| 170 | + 'date_jour_5' => 'jeudi', |
|
| 171 | + 'date_jour_5_abbr' => 'jeu.', |
|
| 172 | + 'date_jour_5_initiale' => 'j.', |
|
| 173 | + 'date_jour_6' => 'vendredi', |
|
| 174 | + 'date_jour_6_abbr' => 'ven.', |
|
| 175 | + 'date_jour_6_initiale' => 'v.', |
|
| 176 | + 'date_jour_7' => 'samedi', |
|
| 177 | + 'date_jour_7_abbr' => 'sam.', |
|
| 178 | + 'date_jour_7_initiale' => 's.', |
|
| 179 | + 'date_jours' => 'jours', |
|
| 180 | + 'date_minutes' => 'minutes', |
|
| 181 | + 'date_mois' => 'mois', |
|
| 182 | + 'date_mois_1' => 'janvier', |
|
| 183 | + 'date_mois_10' => 'octobre', |
|
| 184 | + 'date_mois_10_abbr' => 'oct.', |
|
| 185 | + 'date_mois_11' => 'novembre', |
|
| 186 | + 'date_mois_11_abbr' => 'nov.', |
|
| 187 | + 'date_mois_12' => 'décembre', |
|
| 188 | + 'date_mois_12_abbr' => 'déc.', |
|
| 189 | + 'date_mois_1_abbr' => 'janv.', |
|
| 190 | + 'date_mois_2' => 'février', |
|
| 191 | + 'date_mois_2_abbr' => 'févr.', |
|
| 192 | + 'date_mois_3' => 'mars', |
|
| 193 | + 'date_mois_3_abbr' => 'mars', |
|
| 194 | + 'date_mois_4' => 'avril', |
|
| 195 | + 'date_mois_4_abbr' => 'avr.', |
|
| 196 | + 'date_mois_5' => 'mai', |
|
| 197 | + 'date_mois_5_abbr' => 'mai', |
|
| 198 | + 'date_mois_6' => 'juin', |
|
| 199 | + 'date_mois_6_abbr' => 'juin', |
|
| 200 | + 'date_mois_7' => 'juillet', |
|
| 201 | + 'date_mois_7_abbr' => 'juil.', |
|
| 202 | + 'date_mois_8' => 'août', |
|
| 203 | + 'date_mois_8_abbr' => 'août', |
|
| 204 | + 'date_mois_9' => 'septembre', |
|
| 205 | + 'date_mois_9_abbr' => 'sept.', |
|
| 206 | + 'date_saison_1' => 'hiver', |
|
| 207 | + 'date_saison_2' => 'printemps', |
|
| 208 | + 'date_saison_3' => 'été', |
|
| 209 | + 'date_saison_4' => 'automne', |
|
| 210 | + 'date_secondes' => 'secondes', |
|
| 211 | + 'date_semaines' => 'semaines', |
|
| 212 | + 'date_un_mois' => 'mois', |
|
| 213 | + 'date_une_heure' => 'heure', |
|
| 214 | + 'date_une_minute' => 'minute', |
|
| 215 | + 'date_une_seconde' => 'seconde', |
|
| 216 | + 'date_une_semaine' => 'semaine', |
|
| 217 | + 'dirs_commencer' => ' afin de commencer réellement l’installation', |
|
| 218 | + 'dirs_preliminaire' => 'Préliminaire : <b>Régler les droits d’accès</b>', |
|
| 219 | + 'dirs_probleme_droits' => 'Problème de droits d’accès', |
|
| 220 | + 'dirs_repertoires_absents' => '<p><b>Les répertoires suivants n’ont pas été trouvés :</b></p><ul>@bad_dirs@</ul> |
|
| 221 | 221 | <p>Il est probable que cela soit dû à un problème de mauvaise mise en majuscules ou minuscules. |
| 222 | 222 | Vérifiez que les minuscules et majuscules de ces répertoires concordent bien avec ce qui est affiché |
| 223 | 223 | ci-dessus ; si ce n’est pas le cas, renommez les répertoires avec votre logiciel FTP de façon à corriger l’erreur.</p> |
| 224 | 224 | <p>Une fois cette manipulation effectuée, vous pourrez ', |
| 225 | - 'dirs_repertoires_suivants' => '<p><b>Les répertoires suivants ne sont pas accessibles en écriture :</b></p> <ul>@bad_dirs@</ul> |
|
| 225 | + 'dirs_repertoires_suivants' => '<p><b>Les répertoires suivants ne sont pas accessibles en écriture :</b></p> <ul>@bad_dirs@</ul> |
|
| 226 | 226 | <p>Pour y remédier, utilisez votre client FTP afin de régler les droits d’accès de chacun |
| 227 | 227 | de ces répertoires. La procédure est expliquée en détail dans le guide d’installation.</p> |
| 228 | 228 | <p>Une fois cette manipulation effectuée, vous pourrez ', |
| 229 | - 'double_occurrence' => 'Double occurrence de @balise@', |
|
| 229 | + 'double_occurrence' => 'Double occurrence de @balise@', |
|
| 230 | 230 | |
| 231 | - // E |
|
| 232 | - 'en_cours' => 'en cours', |
|
| 233 | - 'envoi_via_le_site' => 'Envoi via le site', |
|
| 234 | - 'erreur' => 'Erreur', |
|
| 235 | - 'erreur_balise_non_fermee' => 'dernière balise non refermée :', |
|
| 236 | - 'erreur_technique_ajaxform' => 'Oups. Une erreur inattendue a empêché de soumettre le formulaire. Vous pouvez essayer à nouveau.', |
|
| 237 | - 'erreur_technique_enregistrement_champs' => 'Une erreur technique a empêché l’enregistrement correct du champ @champs@.', |
|
| 238 | - 'erreur_technique_enregistrement_impossible' => 'Une erreur technique a empêché l’enregistrement.', |
|
| 239 | - 'erreur_texte' => 'erreur(s)', |
|
| 240 | - 'etape' => 'Étape', |
|
| 231 | + // E |
|
| 232 | + 'en_cours' => 'en cours', |
|
| 233 | + 'envoi_via_le_site' => 'Envoi via le site', |
|
| 234 | + 'erreur' => 'Erreur', |
|
| 235 | + 'erreur_balise_non_fermee' => 'dernière balise non refermée :', |
|
| 236 | + 'erreur_technique_ajaxform' => 'Oups. Une erreur inattendue a empêché de soumettre le formulaire. Vous pouvez essayer à nouveau.', |
|
| 237 | + 'erreur_technique_enregistrement_champs' => 'Une erreur technique a empêché l’enregistrement correct du champ @champs@.', |
|
| 238 | + 'erreur_technique_enregistrement_impossible' => 'Une erreur technique a empêché l’enregistrement.', |
|
| 239 | + 'erreur_texte' => 'erreur(s)', |
|
| 240 | + 'etape' => 'Étape', |
|
| 241 | 241 | |
| 242 | - // F |
|
| 243 | - 'fichier_introuvable' => 'Fichier @fichier@ introuvable', # MODIF |
|
| 244 | - 'form_auteur_confirmation' => 'Confirmez votre adresse email', |
|
| 245 | - 'form_auteur_email_modifie' => 'Votre adresse email a été modifiée.', |
|
| 246 | - 'form_auteur_envoi_mail_confirmation' => 'Un courrier électronique de confirmation vient d’être envoyé à @email@. Vous devrez visiter l’adresse Web mentionnée dans ce courrier pour valider votre adresse mail.', |
|
| 247 | - 'form_auteur_mail_confirmation' => 'Bonjour, |
|
| 242 | + // F |
|
| 243 | + 'fichier_introuvable' => 'Fichier @fichier@ introuvable', # MODIF |
|
| 244 | + 'form_auteur_confirmation' => 'Confirmez votre adresse email', |
|
| 245 | + 'form_auteur_email_modifie' => 'Votre adresse email a été modifiée.', |
|
| 246 | + 'form_auteur_envoi_mail_confirmation' => 'Un courrier électronique de confirmation vient d’être envoyé à @email@. Vous devrez visiter l’adresse Web mentionnée dans ce courrier pour valider votre adresse mail.', |
|
| 247 | + 'form_auteur_mail_confirmation' => 'Bonjour, |
|
| 248 | 248 | |
| 249 | 249 | Vous avez demandé à changer votre adresse email. |
| 250 | 250 | Pour confirmer votre nouvelle adresse, il suffit de vous connecter à |
@@ -253,346 +253,346 @@ discard block |
||
| 253 | 253 | |
| 254 | 254 | @url@ |
| 255 | 255 | ', |
| 256 | - 'form_deja_inscrit' => 'Vous êtes déjà inscrite.', |
|
| 257 | - 'form_email_non_valide' => 'Votre adresse email n’est pas valide.', |
|
| 258 | - 'form_forum_access_refuse' => 'Vous n’avez plus accès à ce site.', |
|
| 259 | - 'form_forum_bonjour' => 'Bonjour @nom@,', |
|
| 260 | - 'form_forum_confirmer_email' => 'Pour confirmer votre adresse email, rendez-vous à cette adresse : @url_confirm@', |
|
| 261 | - 'form_forum_email_deja_enregistre' => 'Cette adresse email est déjà enregistrée, vous pouvez donc utiliser votre mot de passe habituel.', |
|
| 262 | - 'form_forum_identifiant_mail' => 'Votre nouvel identifiant vient de vous être envoyé par email.', |
|
| 263 | - 'form_forum_identifiants' => 'Identifiants personnels', |
|
| 264 | - 'form_forum_indiquer_nom_email' => 'Indiquez ici votre nom et votre adresse email. Votre identifiant personnel vous parviendra rapidement, par courrier électronique.', |
|
| 265 | - 'form_forum_login' => 'login :', |
|
| 266 | - 'form_forum_message_auto' => '(ceci est un message automatique)', |
|
| 267 | - 'form_forum_pass' => 'mot de passe :', |
|
| 268 | - 'form_forum_probleme_mail' => 'Problème de mail : l’identifiant ne peut pas être envoyé.', |
|
| 269 | - 'form_forum_voici1' => 'Voici vos identifiants pour pouvoir participer à la vie du site "@nom_site_spip@" (@adresse_site@) :', |
|
| 270 | - 'form_forum_voici2' => 'Voici vos identifiants pour proposer des articles sur |
|
| 256 | + 'form_deja_inscrit' => 'Vous êtes déjà inscrite.', |
|
| 257 | + 'form_email_non_valide' => 'Votre adresse email n’est pas valide.', |
|
| 258 | + 'form_forum_access_refuse' => 'Vous n’avez plus accès à ce site.', |
|
| 259 | + 'form_forum_bonjour' => 'Bonjour @nom@,', |
|
| 260 | + 'form_forum_confirmer_email' => 'Pour confirmer votre adresse email, rendez-vous à cette adresse : @url_confirm@', |
|
| 261 | + 'form_forum_email_deja_enregistre' => 'Cette adresse email est déjà enregistrée, vous pouvez donc utiliser votre mot de passe habituel.', |
|
| 262 | + 'form_forum_identifiant_mail' => 'Votre nouvel identifiant vient de vous être envoyé par email.', |
|
| 263 | + 'form_forum_identifiants' => 'Identifiants personnels', |
|
| 264 | + 'form_forum_indiquer_nom_email' => 'Indiquez ici votre nom et votre adresse email. Votre identifiant personnel vous parviendra rapidement, par courrier électronique.', |
|
| 265 | + 'form_forum_login' => 'login :', |
|
| 266 | + 'form_forum_message_auto' => '(ceci est un message automatique)', |
|
| 267 | + 'form_forum_pass' => 'mot de passe :', |
|
| 268 | + 'form_forum_probleme_mail' => 'Problème de mail : l’identifiant ne peut pas être envoyé.', |
|
| 269 | + 'form_forum_voici1' => 'Voici vos identifiants pour pouvoir participer à la vie du site "@nom_site_spip@" (@adresse_site@) :', |
|
| 270 | + 'form_forum_voici2' => 'Voici vos identifiants pour proposer des articles sur |
|
| 271 | 271 | le site "@nom_site_spip@" (@adresse_login@) :', |
| 272 | - 'form_indiquer_email' => 'Veuillez indiquer votre adresse email.', |
|
| 273 | - 'form_indiquer_nom' => 'Veuillez indiquer votre nom.', |
|
| 274 | - 'form_indiquer_nom_site' => 'Veuillez indiquer le nom de votre site.', |
|
| 275 | - 'form_pet_deja_enregistre' => 'Ce site est déjà enregistré', |
|
| 276 | - 'form_pet_signature_pasprise' => 'Votre signature n’est pas prise en compte.', |
|
| 277 | - 'form_prop_confirmer_envoi' => 'Confirmer l’envoi', |
|
| 278 | - 'form_prop_description' => 'Description/commentaire', |
|
| 279 | - 'form_prop_enregistre' => 'Votre proposition est enregistrée, elle apparaîtra en ligne après validation par les responsables de ce site.', |
|
| 280 | - 'form_prop_envoyer' => 'Envoyer un message', |
|
| 281 | - 'form_prop_indiquer_email' => 'Veuillez indiquer une adresse email valide', |
|
| 282 | - 'form_prop_indiquer_nom_site' => 'Veuillez indiquer le nom du site.', |
|
| 283 | - 'form_prop_indiquer_sujet' => 'Veuillez indiquer un sujet', |
|
| 284 | - 'form_prop_message_envoye' => 'Message envoyé', |
|
| 285 | - 'form_prop_non_enregistre' => 'Votre proposition n’a pas été enregistrée.', |
|
| 286 | - 'form_prop_sujet' => 'Sujet', |
|
| 287 | - 'form_prop_url_site' => 'Adresse URL du site', |
|
| 288 | - 'format_date_attendu' => 'Saisir une date au format jj/mm/aaaa.', |
|
| 289 | - 'format_date_incorrecte' => 'La date ou son format est incorrect', |
|
| 290 | - 'format_heure_attendu' => 'Saisir une heure au format hh:mm.', |
|
| 291 | - 'format_heure_incorrecte' => 'L’heure ou son format est incorrect', |
|
| 292 | - 'forum_non_inscrit' => 'Vous n’êtes pas inscrite, ou l’adresse ou le mot de passe sont erronés.', |
|
| 293 | - 'forum_par_auteur' => 'par @auteur@', |
|
| 294 | - 'forum_titre_erreur' => 'Erreur...', |
|
| 272 | + 'form_indiquer_email' => 'Veuillez indiquer votre adresse email.', |
|
| 273 | + 'form_indiquer_nom' => 'Veuillez indiquer votre nom.', |
|
| 274 | + 'form_indiquer_nom_site' => 'Veuillez indiquer le nom de votre site.', |
|
| 275 | + 'form_pet_deja_enregistre' => 'Ce site est déjà enregistré', |
|
| 276 | + 'form_pet_signature_pasprise' => 'Votre signature n’est pas prise en compte.', |
|
| 277 | + 'form_prop_confirmer_envoi' => 'Confirmer l’envoi', |
|
| 278 | + 'form_prop_description' => 'Description/commentaire', |
|
| 279 | + 'form_prop_enregistre' => 'Votre proposition est enregistrée, elle apparaîtra en ligne après validation par les responsables de ce site.', |
|
| 280 | + 'form_prop_envoyer' => 'Envoyer un message', |
|
| 281 | + 'form_prop_indiquer_email' => 'Veuillez indiquer une adresse email valide', |
|
| 282 | + 'form_prop_indiquer_nom_site' => 'Veuillez indiquer le nom du site.', |
|
| 283 | + 'form_prop_indiquer_sujet' => 'Veuillez indiquer un sujet', |
|
| 284 | + 'form_prop_message_envoye' => 'Message envoyé', |
|
| 285 | + 'form_prop_non_enregistre' => 'Votre proposition n’a pas été enregistrée.', |
|
| 286 | + 'form_prop_sujet' => 'Sujet', |
|
| 287 | + 'form_prop_url_site' => 'Adresse URL du site', |
|
| 288 | + 'format_date_attendu' => 'Saisir une date au format jj/mm/aaaa.', |
|
| 289 | + 'format_date_incorrecte' => 'La date ou son format est incorrect', |
|
| 290 | + 'format_heure_attendu' => 'Saisir une heure au format hh:mm.', |
|
| 291 | + 'format_heure_incorrecte' => 'L’heure ou son format est incorrect', |
|
| 292 | + 'forum_non_inscrit' => 'Vous n’êtes pas inscrite, ou l’adresse ou le mot de passe sont erronés.', |
|
| 293 | + 'forum_par_auteur' => 'par @auteur@', |
|
| 294 | + 'forum_titre_erreur' => 'Erreur...', |
|
| 295 | 295 | |
| 296 | - // I |
|
| 297 | - 'ical_texte_rss_articles' => 'Le fichier « backend » des articles de ce site se trouve à l’adresse :', |
|
| 298 | - 'ical_texte_rss_articles2' => 'Vous pouvez également obtenir des fichiers « backend » pour les articles de chaque rubrique du site :', |
|
| 299 | - 'ical_texte_rss_breves' => 'Il existe de plus un fichier contenant les brèves du site. En précisant un numéro de rubrique, vous obtiendrez uniquement les brèves de cette rubrique.', |
|
| 300 | - 'icone_a_suivre' => 'À suivre', |
|
| 301 | - 'icone_admin_site' => 'Administration du site', |
|
| 302 | - 'icone_agenda' => 'Agenda', |
|
| 303 | - 'icone_aide_ligne' => 'Aide', |
|
| 304 | - 'icone_articles' => 'Articles', |
|
| 305 | - 'icone_auteurs' => 'Autrices', |
|
| 306 | - 'icone_brouteur' => 'Navigation rapide', |
|
| 307 | - 'icone_configuration_site' => 'Configuration', |
|
| 308 | - 'icone_configurer_site' => 'Configurer votre site', |
|
| 309 | - 'icone_creer_nouvel_auteur' => 'Créer une nouvelle autrice', |
|
| 310 | - 'icone_creer_rubrique' => 'Créer une rubrique', |
|
| 311 | - 'icone_creer_sous_rubrique' => 'Créer une sous-rubrique', |
|
| 312 | - 'icone_deconnecter' => 'Se déconnecter', |
|
| 313 | - 'icone_discussions' => 'Discussions', |
|
| 314 | - 'icone_doc_rubrique' => 'Documents des rubriques', |
|
| 315 | - 'icone_ecrire_article' => 'Écrire un nouvel article', |
|
| 316 | - 'icone_edition_site' => 'Édition', |
|
| 317 | - 'icone_gestion_langues' => 'Gestion des langues', |
|
| 318 | - 'icone_informations_personnelles' => 'Informations personnelles', |
|
| 319 | - 'icone_interface_complet' => 'interface complète', |
|
| 320 | - 'icone_interface_simple' => 'Interface simplifiée', |
|
| 321 | - 'icone_maintenance_site' => 'Maintenance du site', |
|
| 322 | - 'icone_messagerie_personnelle' => 'Messagerie personnelle', |
|
| 323 | - 'icone_repartition_debut' => 'Afficher la répartition depuis le début', |
|
| 324 | - 'icone_rubriques' => 'Rubriques', |
|
| 325 | - 'icone_sauver_site' => 'Sauvegarde du site', |
|
| 326 | - 'icone_site_entier' => 'Tout le site', |
|
| 327 | - 'icone_sites_references' => 'Sites référencés', |
|
| 328 | - 'icone_statistiques' => 'Statistiques du site', |
|
| 329 | - 'icone_suivi_activite' => 'Suivre la vie du site', |
|
| 330 | - 'icone_suivi_actualite' => 'Évolution du site', |
|
| 331 | - 'icone_suivi_pettions' => 'Suivre/gérer les pétitions', |
|
| 332 | - 'icone_suivi_revisions' => 'Modifications des articles', |
|
| 333 | - 'icone_supprimer_document' => 'Supprimer ce document', |
|
| 334 | - 'icone_supprimer_image' => 'Supprimer cette image', |
|
| 335 | - 'icone_tous_articles' => 'Tous vos articles', |
|
| 336 | - 'icone_tous_auteur' => 'Toutes les autrices', |
|
| 337 | - 'icone_tous_visiteur' => 'Toutes les visiteuses', |
|
| 338 | - 'icone_visiter_site' => 'Voir le site public', |
|
| 339 | - 'icone_voir_en_ligne' => 'Voir en ligne', |
|
| 340 | - 'img_indisponible' => 'image indisponible', |
|
| 341 | - 'impossible' => 'impossible', |
|
| 342 | - 'info_a_suivre' => 'À SUIVRE »', |
|
| 343 | - 'info_acces_interdit' => 'Accès interdit', |
|
| 344 | - 'info_acces_refuse' => 'Accès refusé', |
|
| 345 | - 'info_action' => 'Action : @action@', |
|
| 346 | - 'info_administrer_rubriques' => 'Vous pouvez administrer cette rubrique et ses sous-rubriques', |
|
| 347 | - 'info_adresse_non_indiquee' => 'Vous n’avez pas indiqué d’adresse à tester !', |
|
| 348 | - 'info_aide' => 'AIDE :', |
|
| 349 | - 'info_ajouter_mot' => 'Ajouter ce mot', |
|
| 350 | - 'info_annonce' => 'ANNONCE', |
|
| 351 | - 'info_annonces_generales' => 'Annonces générales :', |
|
| 352 | - 'info_article_propose' => 'Article proposé', |
|
| 353 | - 'info_article_publie' => 'Article publié', |
|
| 354 | - 'info_article_redaction' => 'Article en cours de rédaction', |
|
| 355 | - 'info_article_refuse' => 'Article refusé', |
|
| 356 | - 'info_article_supprime' => 'Article supprimé', |
|
| 357 | - 'info_articles' => 'Articles', |
|
| 358 | - 'info_articles_a_valider' => 'Les articles à valider', |
|
| 359 | - 'info_articles_nb' => '@nb@ articles', |
|
| 360 | - 'info_articles_proposes' => 'Articles proposés', |
|
| 361 | - 'info_articles_un' => '1 article', |
|
| 362 | - 'info_auteurs_nombre' => 'autrice(s) :', |
|
| 363 | - 'info_authentification_ftp' => 'Authentification (par FTP).', |
|
| 364 | - 'info_breves_2' => 'brèves', |
|
| 365 | - 'info_breves_nb' => '@nb@ brèves', |
|
| 366 | - 'info_breves_un' => '1 brève', |
|
| 367 | - 'info_connexion_refusee' => 'Connexion refusée', |
|
| 368 | - 'info_contact_developpeur' => 'Veuillez contacter une développeuse.', |
|
| 369 | - 'info_contenance' => 'Ce site contient :', |
|
| 370 | - 'info_contribution' => 'contributions', |
|
| 371 | - 'info_copyright' => '@spip@ est un logiciel libre distribué @lien_gpl@.', |
|
| 372 | - 'info_copyright_doc' => 'Pour plus d’informations, voir le site <a href="@spipnet@">@spipnet_affiche@</a>.', |
|
| 373 | - 'info_copyright_gpl' => 'sous licence GPL', |
|
| 374 | - 'info_cours_edition' => 'En cours de modification', |
|
| 375 | - 'info_creer_repertoire' => 'Veuillez créer un fichier ou un répertoire nommé :', |
|
| 376 | - 'info_creer_repertoire_2' => 'à l’intérieur du sous-répertoire <b>@repertoire@</b>, puis :', |
|
| 377 | - 'info_creer_vignette' => 'création automatique de la vignette', |
|
| 378 | - 'info_creerdansrubrique_non_autorise' => 'Vous n’avez pas de droits suffisants pour créer un contenu dans cette rubrique', |
|
| 379 | - 'info_deplier' => 'Déplier', |
|
| 380 | - 'info_descriptif_nombre' => 'descriptif(s) :', |
|
| 381 | - 'info_description' => 'Description :', |
|
| 382 | - 'info_description_2' => 'Description :', |
|
| 383 | - 'info_dimension' => 'Dimensions :', |
|
| 384 | - 'info_documents_nb' => '@nb@ documents', |
|
| 385 | - 'info_documents_un' => '1 document', |
|
| 386 | - 'info_ecire_message_prive' => 'Écrire un message privé', |
|
| 387 | - 'info_email_invalide' => 'Adresse email invalide.', |
|
| 388 | - 'info_en_cours_validation' => 'Vos articles en cours de rédaction', |
|
| 389 | - 'info_en_ligne' => 'Actuellement en ligne :', |
|
| 390 | - 'info_envoyer_message_prive' => 'Envoyer un message privé à cette autrice', |
|
| 391 | - 'info_erreur_requete' => 'Erreur dans la requête :', |
|
| 392 | - 'info_erreur_squelette2' => 'Aucun squelette <b>@fichier@</b> n’est disponible...', |
|
| 393 | - 'info_erreur_systeme' => 'Erreur système (errno @errsys@)', |
|
| 394 | - 'info_erreur_systeme2' => 'Le disque dur est peut-être plein, ou la base de données endommagée.<br /> |
|
| 296 | + // I |
|
| 297 | + 'ical_texte_rss_articles' => 'Le fichier « backend » des articles de ce site se trouve à l’adresse :', |
|
| 298 | + 'ical_texte_rss_articles2' => 'Vous pouvez également obtenir des fichiers « backend » pour les articles de chaque rubrique du site :', |
|
| 299 | + 'ical_texte_rss_breves' => 'Il existe de plus un fichier contenant les brèves du site. En précisant un numéro de rubrique, vous obtiendrez uniquement les brèves de cette rubrique.', |
|
| 300 | + 'icone_a_suivre' => 'À suivre', |
|
| 301 | + 'icone_admin_site' => 'Administration du site', |
|
| 302 | + 'icone_agenda' => 'Agenda', |
|
| 303 | + 'icone_aide_ligne' => 'Aide', |
|
| 304 | + 'icone_articles' => 'Articles', |
|
| 305 | + 'icone_auteurs' => 'Autrices', |
|
| 306 | + 'icone_brouteur' => 'Navigation rapide', |
|
| 307 | + 'icone_configuration_site' => 'Configuration', |
|
| 308 | + 'icone_configurer_site' => 'Configurer votre site', |
|
| 309 | + 'icone_creer_nouvel_auteur' => 'Créer une nouvelle autrice', |
|
| 310 | + 'icone_creer_rubrique' => 'Créer une rubrique', |
|
| 311 | + 'icone_creer_sous_rubrique' => 'Créer une sous-rubrique', |
|
| 312 | + 'icone_deconnecter' => 'Se déconnecter', |
|
| 313 | + 'icone_discussions' => 'Discussions', |
|
| 314 | + 'icone_doc_rubrique' => 'Documents des rubriques', |
|
| 315 | + 'icone_ecrire_article' => 'Écrire un nouvel article', |
|
| 316 | + 'icone_edition_site' => 'Édition', |
|
| 317 | + 'icone_gestion_langues' => 'Gestion des langues', |
|
| 318 | + 'icone_informations_personnelles' => 'Informations personnelles', |
|
| 319 | + 'icone_interface_complet' => 'interface complète', |
|
| 320 | + 'icone_interface_simple' => 'Interface simplifiée', |
|
| 321 | + 'icone_maintenance_site' => 'Maintenance du site', |
|
| 322 | + 'icone_messagerie_personnelle' => 'Messagerie personnelle', |
|
| 323 | + 'icone_repartition_debut' => 'Afficher la répartition depuis le début', |
|
| 324 | + 'icone_rubriques' => 'Rubriques', |
|
| 325 | + 'icone_sauver_site' => 'Sauvegarde du site', |
|
| 326 | + 'icone_site_entier' => 'Tout le site', |
|
| 327 | + 'icone_sites_references' => 'Sites référencés', |
|
| 328 | + 'icone_statistiques' => 'Statistiques du site', |
|
| 329 | + 'icone_suivi_activite' => 'Suivre la vie du site', |
|
| 330 | + 'icone_suivi_actualite' => 'Évolution du site', |
|
| 331 | + 'icone_suivi_pettions' => 'Suivre/gérer les pétitions', |
|
| 332 | + 'icone_suivi_revisions' => 'Modifications des articles', |
|
| 333 | + 'icone_supprimer_document' => 'Supprimer ce document', |
|
| 334 | + 'icone_supprimer_image' => 'Supprimer cette image', |
|
| 335 | + 'icone_tous_articles' => 'Tous vos articles', |
|
| 336 | + 'icone_tous_auteur' => 'Toutes les autrices', |
|
| 337 | + 'icone_tous_visiteur' => 'Toutes les visiteuses', |
|
| 338 | + 'icone_visiter_site' => 'Voir le site public', |
|
| 339 | + 'icone_voir_en_ligne' => 'Voir en ligne', |
|
| 340 | + 'img_indisponible' => 'image indisponible', |
|
| 341 | + 'impossible' => 'impossible', |
|
| 342 | + 'info_a_suivre' => 'À SUIVRE »', |
|
| 343 | + 'info_acces_interdit' => 'Accès interdit', |
|
| 344 | + 'info_acces_refuse' => 'Accès refusé', |
|
| 345 | + 'info_action' => 'Action : @action@', |
|
| 346 | + 'info_administrer_rubriques' => 'Vous pouvez administrer cette rubrique et ses sous-rubriques', |
|
| 347 | + 'info_adresse_non_indiquee' => 'Vous n’avez pas indiqué d’adresse à tester !', |
|
| 348 | + 'info_aide' => 'AIDE :', |
|
| 349 | + 'info_ajouter_mot' => 'Ajouter ce mot', |
|
| 350 | + 'info_annonce' => 'ANNONCE', |
|
| 351 | + 'info_annonces_generales' => 'Annonces générales :', |
|
| 352 | + 'info_article_propose' => 'Article proposé', |
|
| 353 | + 'info_article_publie' => 'Article publié', |
|
| 354 | + 'info_article_redaction' => 'Article en cours de rédaction', |
|
| 355 | + 'info_article_refuse' => 'Article refusé', |
|
| 356 | + 'info_article_supprime' => 'Article supprimé', |
|
| 357 | + 'info_articles' => 'Articles', |
|
| 358 | + 'info_articles_a_valider' => 'Les articles à valider', |
|
| 359 | + 'info_articles_nb' => '@nb@ articles', |
|
| 360 | + 'info_articles_proposes' => 'Articles proposés', |
|
| 361 | + 'info_articles_un' => '1 article', |
|
| 362 | + 'info_auteurs_nombre' => 'autrice(s) :', |
|
| 363 | + 'info_authentification_ftp' => 'Authentification (par FTP).', |
|
| 364 | + 'info_breves_2' => 'brèves', |
|
| 365 | + 'info_breves_nb' => '@nb@ brèves', |
|
| 366 | + 'info_breves_un' => '1 brève', |
|
| 367 | + 'info_connexion_refusee' => 'Connexion refusée', |
|
| 368 | + 'info_contact_developpeur' => 'Veuillez contacter une développeuse.', |
|
| 369 | + 'info_contenance' => 'Ce site contient :', |
|
| 370 | + 'info_contribution' => 'contributions', |
|
| 371 | + 'info_copyright' => '@spip@ est un logiciel libre distribué @lien_gpl@.', |
|
| 372 | + 'info_copyright_doc' => 'Pour plus d’informations, voir le site <a href="@spipnet@">@spipnet_affiche@</a>.', |
|
| 373 | + 'info_copyright_gpl' => 'sous licence GPL', |
|
| 374 | + 'info_cours_edition' => 'En cours de modification', |
|
| 375 | + 'info_creer_repertoire' => 'Veuillez créer un fichier ou un répertoire nommé :', |
|
| 376 | + 'info_creer_repertoire_2' => 'à l’intérieur du sous-répertoire <b>@repertoire@</b>, puis :', |
|
| 377 | + 'info_creer_vignette' => 'création automatique de la vignette', |
|
| 378 | + 'info_creerdansrubrique_non_autorise' => 'Vous n’avez pas de droits suffisants pour créer un contenu dans cette rubrique', |
|
| 379 | + 'info_deplier' => 'Déplier', |
|
| 380 | + 'info_descriptif_nombre' => 'descriptif(s) :', |
|
| 381 | + 'info_description' => 'Description :', |
|
| 382 | + 'info_description_2' => 'Description :', |
|
| 383 | + 'info_dimension' => 'Dimensions :', |
|
| 384 | + 'info_documents_nb' => '@nb@ documents', |
|
| 385 | + 'info_documents_un' => '1 document', |
|
| 386 | + 'info_ecire_message_prive' => 'Écrire un message privé', |
|
| 387 | + 'info_email_invalide' => 'Adresse email invalide.', |
|
| 388 | + 'info_en_cours_validation' => 'Vos articles en cours de rédaction', |
|
| 389 | + 'info_en_ligne' => 'Actuellement en ligne :', |
|
| 390 | + 'info_envoyer_message_prive' => 'Envoyer un message privé à cette autrice', |
|
| 391 | + 'info_erreur_requete' => 'Erreur dans la requête :', |
|
| 392 | + 'info_erreur_squelette2' => 'Aucun squelette <b>@fichier@</b> n’est disponible...', |
|
| 393 | + 'info_erreur_systeme' => 'Erreur système (errno @errsys@)', |
|
| 394 | + 'info_erreur_systeme2' => 'Le disque dur est peut-être plein, ou la base de données endommagée.<br /> |
|
| 395 | 395 | <span style="color:red;">Essayez de <a href=\'@script@\'>réparer la base</a>, ou contactez votre hébergeur.</span>', |
| 396 | - 'info_fini' => 'C’est fini !', |
|
| 397 | - 'info_format_image' => 'Formats d’images pouvant être utilisées pour créer des vignettes : @gd_formats@.', |
|
| 398 | - 'info_format_non_defini' => 'format non défini', |
|
| 399 | - 'info_grand_ecran' => 'Grand écran', |
|
| 400 | - 'info_image_aide' => 'AIDE', |
|
| 401 | - 'info_image_process_titre' => 'Méthode de fabrication des vignettes', |
|
| 402 | - 'info_impossible_lire_page' => '<b>Erreur !</b> Impossible de lire la page <tt><html>@test_proxy@</html></tt> à travers le proxy ', |
|
| 403 | - 'info_installation_systeme_publication' => 'Installation du système de publication...', |
|
| 404 | - 'info_installer_documents' => 'Vous pouvez installer automatiquement tous les documents contenus dans le dossier @upload@.', |
|
| 405 | - 'info_installer_ftp' => 'En tant qu’administratrice, vous pouvez installer (par FTP) des fichiers dans le dossier @upload@ pour ensuite les sélectionner directement ici.', |
|
| 406 | - 'info_installer_images' => 'Vous pouvez installer des images aux formats JPEG, GIF et PNG.', |
|
| 407 | - 'info_installer_images_dossier' => 'Installer des images dans le dossier @upload@ pour pouvoir les sélectionner ici.', |
|
| 408 | - 'info_interface_complete' => 'interface complète', |
|
| 409 | - 'info_interface_simple' => 'Interface simplifiée', |
|
| 410 | - 'info_joindre_document_article' => 'Vous pouvez joindre à cet article des documents de type', |
|
| 411 | - 'info_joindre_document_rubrique' => 'Vous pouvez ajouter dans cette rubrique des documents de type', |
|
| 412 | - 'info_joindre_documents_article' => 'Vous pouvez joindre à votre article des documents de type :', |
|
| 413 | - 'info_l_article' => 'l’article', |
|
| 414 | - 'info_la_breve' => 'la brève', |
|
| 415 | - 'info_la_rubrique' => 'la rubrique', |
|
| 416 | - 'info_langue_principale' => 'Langue principale du site', |
|
| 417 | - 'info_largeur_vignette' => '@largeur_vignette@ × @hauteur_vignette@ pixels', |
|
| 418 | - 'info_les_auteurs_1' => 'par @les_auteurs@', |
|
| 419 | - 'info_logo_format_interdit' => 'Seuls les logos aux formats @formats@ sont autorisés.', |
|
| 420 | - 'info_logo_max_poids' => 'Les logos doivent obligatoirement faire moins de @maxi@ (ce fichier fait @actuel@).', |
|
| 421 | - 'info_mail_fournisseur' => '[email protected]', |
|
| 422 | - 'info_message_2' => 'MESSAGE', |
|
| 423 | - 'info_message_supprime' => 'MESSAGE SUPPRIMÉ', |
|
| 424 | - 'info_messages_nb' => '@nb@ messages', |
|
| 425 | - 'info_messages_un' => '1 message', |
|
| 426 | - 'info_mise_en_ligne' => 'Date de mise en ligne :', |
|
| 427 | - 'info_modification_parametres_securite' => 'modifications des paramètres de sécurité', |
|
| 428 | - 'info_mois_courant' => 'Dans le courant du mois :', |
|
| 429 | - 'info_mot_cle_ajoute' => 'Le mot-clé suivant a été ajouté à', |
|
| 430 | - 'info_multi_herit' => 'Langue par défaut', |
|
| 431 | - 'info_multi_langues_soulignees' => 'Les <u>langues soulignées</u> bénéficient d’une traduction totale ou partielle des textes de l’interface. Si vous sélectionnez ces langues, de nombreux éléments du site public (dates, formulaires) seront automatiquement traduits. Pour les langues non soulignées, ces éléments apparaîtront dans la langue principale du site.', |
|
| 432 | - 'info_multilinguisme' => 'Multilinguisme', |
|
| 433 | - 'info_nom_non_utilisateurs_connectes' => 'Votre nom n’apparaît pas dans la liste des utilisatrices connectées.', |
|
| 434 | - 'info_nom_utilisateurs_connectes' => 'Votre nom apparaît dans la liste des utilisatrices connectées.', |
|
| 435 | - 'info_nombre_en_ligne' => 'Actuellement en ligne :', |
|
| 436 | - 'info_non_resultat' => 'Aucun résultat pour "@cherche_mot@"', |
|
| 437 | - 'info_non_utilisation_messagerie' => 'Vous n’utilisez pas la messagerie interne de ce site.', |
|
| 438 | - 'info_nouveau_message' => 'VOUS AVEZ UN NOUVEAU MESSAGE', |
|
| 439 | - 'info_nouveaux_messages' => 'VOUS AVEZ @total_messages@ NOUVEAUX MESSAGES', |
|
| 440 | - 'info_numero_abbreviation' => 'N° ', |
|
| 441 | - 'info_obligatoire' => 'Cette information est obligatoire', |
|
| 442 | - 'info_page_actuelle' => 'Page actuelle', |
|
| 443 | - 'info_pense_bete' => 'PENSE-BÊTE', |
|
| 444 | - 'info_petit_ecran' => 'Petit écran', |
|
| 445 | - 'info_petition_close' => 'Pétition close', |
|
| 446 | - 'info_pixels' => 'pixels', |
|
| 447 | - 'info_plusieurs_mots_trouves' => 'Plusieurs mots-clés trouvés pour "@cherche_mot@" :', |
|
| 448 | - 'info_portfolio_automatique' => 'Portfolio automatique :', |
|
| 449 | - 'info_premier_resultat' => '[@debut_limit@ premiers résultats sur @total@]', |
|
| 450 | - 'info_premier_resultat_sur' => '[@debut_limit@ premiers résultats sur @total@]', |
|
| 451 | - 'info_propose_1' => '[@nom_site_spip@] Propose : @titre@', |
|
| 452 | - 'info_propose_2' => 'Article proposé |
|
| 396 | + 'info_fini' => 'C’est fini !', |
|
| 397 | + 'info_format_image' => 'Formats d’images pouvant être utilisées pour créer des vignettes : @gd_formats@.', |
|
| 398 | + 'info_format_non_defini' => 'format non défini', |
|
| 399 | + 'info_grand_ecran' => 'Grand écran', |
|
| 400 | + 'info_image_aide' => 'AIDE', |
|
| 401 | + 'info_image_process_titre' => 'Méthode de fabrication des vignettes', |
|
| 402 | + 'info_impossible_lire_page' => '<b>Erreur !</b> Impossible de lire la page <tt><html>@test_proxy@</html></tt> à travers le proxy ', |
|
| 403 | + 'info_installation_systeme_publication' => 'Installation du système de publication...', |
|
| 404 | + 'info_installer_documents' => 'Vous pouvez installer automatiquement tous les documents contenus dans le dossier @upload@.', |
|
| 405 | + 'info_installer_ftp' => 'En tant qu’administratrice, vous pouvez installer (par FTP) des fichiers dans le dossier @upload@ pour ensuite les sélectionner directement ici.', |
|
| 406 | + 'info_installer_images' => 'Vous pouvez installer des images aux formats JPEG, GIF et PNG.', |
|
| 407 | + 'info_installer_images_dossier' => 'Installer des images dans le dossier @upload@ pour pouvoir les sélectionner ici.', |
|
| 408 | + 'info_interface_complete' => 'interface complète', |
|
| 409 | + 'info_interface_simple' => 'Interface simplifiée', |
|
| 410 | + 'info_joindre_document_article' => 'Vous pouvez joindre à cet article des documents de type', |
|
| 411 | + 'info_joindre_document_rubrique' => 'Vous pouvez ajouter dans cette rubrique des documents de type', |
|
| 412 | + 'info_joindre_documents_article' => 'Vous pouvez joindre à votre article des documents de type :', |
|
| 413 | + 'info_l_article' => 'l’article', |
|
| 414 | + 'info_la_breve' => 'la brève', |
|
| 415 | + 'info_la_rubrique' => 'la rubrique', |
|
| 416 | + 'info_langue_principale' => 'Langue principale du site', |
|
| 417 | + 'info_largeur_vignette' => '@largeur_vignette@ × @hauteur_vignette@ pixels', |
|
| 418 | + 'info_les_auteurs_1' => 'par @les_auteurs@', |
|
| 419 | + 'info_logo_format_interdit' => 'Seuls les logos aux formats @formats@ sont autorisés.', |
|
| 420 | + 'info_logo_max_poids' => 'Les logos doivent obligatoirement faire moins de @maxi@ (ce fichier fait @actuel@).', |
|
| 421 | + 'info_mail_fournisseur' => '[email protected]', |
|
| 422 | + 'info_message_2' => 'MESSAGE', |
|
| 423 | + 'info_message_supprime' => 'MESSAGE SUPPRIMÉ', |
|
| 424 | + 'info_messages_nb' => '@nb@ messages', |
|
| 425 | + 'info_messages_un' => '1 message', |
|
| 426 | + 'info_mise_en_ligne' => 'Date de mise en ligne :', |
|
| 427 | + 'info_modification_parametres_securite' => 'modifications des paramètres de sécurité', |
|
| 428 | + 'info_mois_courant' => 'Dans le courant du mois :', |
|
| 429 | + 'info_mot_cle_ajoute' => 'Le mot-clé suivant a été ajouté à', |
|
| 430 | + 'info_multi_herit' => 'Langue par défaut', |
|
| 431 | + 'info_multi_langues_soulignees' => 'Les <u>langues soulignées</u> bénéficient d’une traduction totale ou partielle des textes de l’interface. Si vous sélectionnez ces langues, de nombreux éléments du site public (dates, formulaires) seront automatiquement traduits. Pour les langues non soulignées, ces éléments apparaîtront dans la langue principale du site.', |
|
| 432 | + 'info_multilinguisme' => 'Multilinguisme', |
|
| 433 | + 'info_nom_non_utilisateurs_connectes' => 'Votre nom n’apparaît pas dans la liste des utilisatrices connectées.', |
|
| 434 | + 'info_nom_utilisateurs_connectes' => 'Votre nom apparaît dans la liste des utilisatrices connectées.', |
|
| 435 | + 'info_nombre_en_ligne' => 'Actuellement en ligne :', |
|
| 436 | + 'info_non_resultat' => 'Aucun résultat pour "@cherche_mot@"', |
|
| 437 | + 'info_non_utilisation_messagerie' => 'Vous n’utilisez pas la messagerie interne de ce site.', |
|
| 438 | + 'info_nouveau_message' => 'VOUS AVEZ UN NOUVEAU MESSAGE', |
|
| 439 | + 'info_nouveaux_messages' => 'VOUS AVEZ @total_messages@ NOUVEAUX MESSAGES', |
|
| 440 | + 'info_numero_abbreviation' => 'N° ', |
|
| 441 | + 'info_obligatoire' => 'Cette information est obligatoire', |
|
| 442 | + 'info_page_actuelle' => 'Page actuelle', |
|
| 443 | + 'info_pense_bete' => 'PENSE-BÊTE', |
|
| 444 | + 'info_petit_ecran' => 'Petit écran', |
|
| 445 | + 'info_petition_close' => 'Pétition close', |
|
| 446 | + 'info_pixels' => 'pixels', |
|
| 447 | + 'info_plusieurs_mots_trouves' => 'Plusieurs mots-clés trouvés pour "@cherche_mot@" :', |
|
| 448 | + 'info_portfolio_automatique' => 'Portfolio automatique :', |
|
| 449 | + 'info_premier_resultat' => '[@debut_limit@ premiers résultats sur @total@]', |
|
| 450 | + 'info_premier_resultat_sur' => '[@debut_limit@ premiers résultats sur @total@]', |
|
| 451 | + 'info_propose_1' => '[@nom_site_spip@] Propose : @titre@', |
|
| 452 | + 'info_propose_2' => 'Article proposé |
|
| 453 | 453 | ---------------', |
| 454 | - 'info_propose_3' => 'L’article "@titre@" est proposé à la publication.', |
|
| 455 | - 'info_propose_4' => 'Vous êtes invitée à venir le consulter et à donner votre opinion', |
|
| 456 | - 'info_propose_5' => 'dans le forum qui lui est attaché. Il est disponible à l’adresse :', |
|
| 457 | - 'info_publie_01' => 'L’article "@titre@" a été validé par @connect_nom@.', |
|
| 458 | - 'info_publie_1' => '[@nom_site_spip@] PUBLIE : @titre@', |
|
| 459 | - 'info_publie_2' => 'Article publié |
|
| 454 | + 'info_propose_3' => 'L’article "@titre@" est proposé à la publication.', |
|
| 455 | + 'info_propose_4' => 'Vous êtes invitée à venir le consulter et à donner votre opinion', |
|
| 456 | + 'info_propose_5' => 'dans le forum qui lui est attaché. Il est disponible à l’adresse :', |
|
| 457 | + 'info_publie_01' => 'L’article "@titre@" a été validé par @connect_nom@.', |
|
| 458 | + 'info_publie_1' => '[@nom_site_spip@] PUBLIE : @titre@', |
|
| 459 | + 'info_publie_2' => 'Article publié |
|
| 460 | 460 | --------------', |
| 461 | - 'info_rechercher' => 'Rechercher', |
|
| 462 | - 'info_rechercher_02' => 'Rechercher :', |
|
| 463 | - 'info_remplacer_vignette' => 'Remplacer la vignette par défaut par un logo personnalisé :', |
|
| 464 | - 'info_rubriques_nb' => '@nb@ rubriques', |
|
| 465 | - 'info_rubriques_un' => '1 rubrique', |
|
| 466 | - 'info_sans_titre_2' => 'sans titre', |
|
| 467 | - 'info_selectionner_fichier' => 'Vous pouvez sélectionner un fichier du dossier @upload@', |
|
| 468 | - 'info_selectionner_fichier_2' => 'Sélectionner un fichier :', |
|
| 469 | - 'info_sites_nb' => '@nb@ sites', |
|
| 470 | - 'info_sites_un' => '1 site', |
|
| 471 | - 'info_supprimer_vignette' => 'supprimer la vignette', |
|
| 472 | - 'info_symbole_bleu' => 'Le symbole <b>bleu</b> indique un <b>pense-bête</b> : c’est-à-dire un message à votre usage personnel.', |
|
| 473 | - 'info_symbole_jaune' => 'Le symbole <b>jaune</b> indique une <b>annonce à toutes les rédactrices</b> : modifiable par toutes les administratrices, et visible par toutes les rédactrices.', |
|
| 474 | - 'info_symbole_vert' => 'Le symbole <b>vert</b> indique les <b>messages échangés avec d’autres utilisatrices</b> du site.', |
|
| 475 | - 'info_telecharger_nouveau_logo' => 'Télécharger un nouveau logo :', |
|
| 476 | - 'info_telecharger_ordinateur' => 'Télécharger depuis votre ordinateur :', |
|
| 477 | - 'info_tous_resultats_enregistres' => '[tous les résultats sont enregistrés]', |
|
| 478 | - 'info_tout_afficher' => 'Tout afficher', |
|
| 479 | - 'info_travaux_texte' => 'Ce site n’est pas encore configuré. Revenez plus tard...', |
|
| 480 | - 'info_travaux_titre' => 'Site en travaux', |
|
| 481 | - 'info_trop_resultat' => 'Trop de résultats pour "@cherche_mot@" ; veuillez affiner la recherche.', |
|
| 482 | - 'info_utilisation_messagerie_interne' => 'Vous utilisez la messagerie interne de ce site.', |
|
| 483 | - 'info_valider_lien' => 'valider ce lien', |
|
| 484 | - 'info_verifier_image' => ', veuillez vérifier que vos images ont été transférées correctement.', |
|
| 485 | - 'info_vignette_defaut' => 'Vignette par défaut', |
|
| 486 | - 'info_vignette_personnalisee' => 'Vignette personnalisée', |
|
| 487 | - 'info_visite' => 'visite :', |
|
| 488 | - 'info_vos_rendez_vous' => 'Vos rendez-vous à venir', |
|
| 489 | - 'infos_vos_pense_bete' => 'Vos pense-bêtes', |
|
| 461 | + 'info_rechercher' => 'Rechercher', |
|
| 462 | + 'info_rechercher_02' => 'Rechercher :', |
|
| 463 | + 'info_remplacer_vignette' => 'Remplacer la vignette par défaut par un logo personnalisé :', |
|
| 464 | + 'info_rubriques_nb' => '@nb@ rubriques', |
|
| 465 | + 'info_rubriques_un' => '1 rubrique', |
|
| 466 | + 'info_sans_titre_2' => 'sans titre', |
|
| 467 | + 'info_selectionner_fichier' => 'Vous pouvez sélectionner un fichier du dossier @upload@', |
|
| 468 | + 'info_selectionner_fichier_2' => 'Sélectionner un fichier :', |
|
| 469 | + 'info_sites_nb' => '@nb@ sites', |
|
| 470 | + 'info_sites_un' => '1 site', |
|
| 471 | + 'info_supprimer_vignette' => 'supprimer la vignette', |
|
| 472 | + 'info_symbole_bleu' => 'Le symbole <b>bleu</b> indique un <b>pense-bête</b> : c’est-à-dire un message à votre usage personnel.', |
|
| 473 | + 'info_symbole_jaune' => 'Le symbole <b>jaune</b> indique une <b>annonce à toutes les rédactrices</b> : modifiable par toutes les administratrices, et visible par toutes les rédactrices.', |
|
| 474 | + 'info_symbole_vert' => 'Le symbole <b>vert</b> indique les <b>messages échangés avec d’autres utilisatrices</b> du site.', |
|
| 475 | + 'info_telecharger_nouveau_logo' => 'Télécharger un nouveau logo :', |
|
| 476 | + 'info_telecharger_ordinateur' => 'Télécharger depuis votre ordinateur :', |
|
| 477 | + 'info_tous_resultats_enregistres' => '[tous les résultats sont enregistrés]', |
|
| 478 | + 'info_tout_afficher' => 'Tout afficher', |
|
| 479 | + 'info_travaux_texte' => 'Ce site n’est pas encore configuré. Revenez plus tard...', |
|
| 480 | + 'info_travaux_titre' => 'Site en travaux', |
|
| 481 | + 'info_trop_resultat' => 'Trop de résultats pour "@cherche_mot@" ; veuillez affiner la recherche.', |
|
| 482 | + 'info_utilisation_messagerie_interne' => 'Vous utilisez la messagerie interne de ce site.', |
|
| 483 | + 'info_valider_lien' => 'valider ce lien', |
|
| 484 | + 'info_verifier_image' => ', veuillez vérifier que vos images ont été transférées correctement.', |
|
| 485 | + 'info_vignette_defaut' => 'Vignette par défaut', |
|
| 486 | + 'info_vignette_personnalisee' => 'Vignette personnalisée', |
|
| 487 | + 'info_visite' => 'visite :', |
|
| 488 | + 'info_vos_rendez_vous' => 'Vos rendez-vous à venir', |
|
| 489 | + 'infos_vos_pense_bete' => 'Vos pense-bêtes', |
|
| 490 | 490 | |
| 491 | - // L |
|
| 492 | - 'label_ajout_id_rapide' => 'Ajout rapide', |
|
| 493 | - 'label_poids_fichier' => 'Taille', |
|
| 494 | - 'label_ponctuer' => '@label@ :', |
|
| 495 | - 'lien_afficher_icones_seuls' => 'Afficher uniquement les icones', |
|
| 496 | - 'lien_afficher_texte_icones' => 'Afficher les icones et le texte', |
|
| 497 | - 'lien_afficher_texte_seul' => 'Afficher uniquement le texte', |
|
| 498 | - 'lien_aller_a_la_derniere_page' => 'Aller à la dernière page', |
|
| 499 | - 'lien_aller_a_la_page_nb' => 'Aller à la page @nb@', |
|
| 500 | - 'lien_aller_a_la_page_precedente' => 'Aller à la page précédente', |
|
| 501 | - 'lien_aller_a_la_page_suivante' => 'Aller à la page suivante', |
|
| 502 | - 'lien_aller_a_la_premiere_page' => 'Aller à la première page', |
|
| 503 | - 'lien_liberer' => 'libérer', |
|
| 504 | - 'lien_liberer_tous' => 'Tout libérer', |
|
| 505 | - 'lien_nouvea_pense_bete' => 'NOUVEAU PENSE-BÊTE', |
|
| 506 | - 'lien_nouveau_message' => 'NOUVEAU MESSAGE', |
|
| 507 | - 'lien_nouvelle_annonce' => 'NOUVELLE ANNONCE', |
|
| 508 | - 'lien_petitions' => 'PÉTITION', |
|
| 509 | - 'lien_popularite' => 'popularité : @popularite@%', |
|
| 510 | - 'lien_racine_site' => 'RACINE DU SITE', |
|
| 511 | - 'lien_reessayer' => 'réessayer', |
|
| 512 | - 'lien_repondre_message' => 'Répondre à ce message', |
|
| 513 | - 'lien_supprimer' => 'supprimer', |
|
| 514 | - 'lien_tout_afficher' => 'Tout afficher', |
|
| 515 | - 'lien_visite_site' => 'visiter ce site', |
|
| 516 | - 'lien_visites' => '@visites@ visites', |
|
| 517 | - 'lien_voir_auteur' => 'Voir cette autrice', |
|
| 518 | - 'ligne' => 'Ligne', |
|
| 519 | - 'login' => 'Connexion', |
|
| 520 | - 'login_acces_prive' => 'accès à l’espace privé', |
|
| 521 | - 'login_autre_identifiant' => 'se connecter sous un autre identifiant', |
|
| 522 | - 'login_cookie_accepte' => 'Veuillez régler votre navigateur pour qu’il les accepte (au moins pour ce site).', |
|
| 523 | - 'login_cookie_oblige' => 'Pour vous identifier de façon sûre sur ce site, vous devez accepter les cookies.', |
|
| 524 | - 'login_deconnexion_ok' => 'Déconnexion effectuée.', |
|
| 525 | - 'login_erreur_pass' => 'Erreur de mot de passe.', |
|
| 526 | - 'login_espace_prive' => 'espace privé', |
|
| 527 | - 'login_identifiant_inconnu' => 'L’identifiant « @login@ » est inconnu.', |
|
| 528 | - 'login_login' => 'Login :', |
|
| 529 | - 'login_login2' => 'Login ou adresse email :', |
|
| 530 | - 'login_login_pass_incorrect' => '(Login ou mot de passe incorrect.)', |
|
| 531 | - 'login_motpasseoublie' => 'mot de passe oublié ?', |
|
| 532 | - 'login_non_securise' => 'Attention, ce formulaire n’est pas sécurisé. |
|
| 491 | + // L |
|
| 492 | + 'label_ajout_id_rapide' => 'Ajout rapide', |
|
| 493 | + 'label_poids_fichier' => 'Taille', |
|
| 494 | + 'label_ponctuer' => '@label@ :', |
|
| 495 | + 'lien_afficher_icones_seuls' => 'Afficher uniquement les icones', |
|
| 496 | + 'lien_afficher_texte_icones' => 'Afficher les icones et le texte', |
|
| 497 | + 'lien_afficher_texte_seul' => 'Afficher uniquement le texte', |
|
| 498 | + 'lien_aller_a_la_derniere_page' => 'Aller à la dernière page', |
|
| 499 | + 'lien_aller_a_la_page_nb' => 'Aller à la page @nb@', |
|
| 500 | + 'lien_aller_a_la_page_precedente' => 'Aller à la page précédente', |
|
| 501 | + 'lien_aller_a_la_page_suivante' => 'Aller à la page suivante', |
|
| 502 | + 'lien_aller_a_la_premiere_page' => 'Aller à la première page', |
|
| 503 | + 'lien_liberer' => 'libérer', |
|
| 504 | + 'lien_liberer_tous' => 'Tout libérer', |
|
| 505 | + 'lien_nouvea_pense_bete' => 'NOUVEAU PENSE-BÊTE', |
|
| 506 | + 'lien_nouveau_message' => 'NOUVEAU MESSAGE', |
|
| 507 | + 'lien_nouvelle_annonce' => 'NOUVELLE ANNONCE', |
|
| 508 | + 'lien_petitions' => 'PÉTITION', |
|
| 509 | + 'lien_popularite' => 'popularité : @popularite@%', |
|
| 510 | + 'lien_racine_site' => 'RACINE DU SITE', |
|
| 511 | + 'lien_reessayer' => 'réessayer', |
|
| 512 | + 'lien_repondre_message' => 'Répondre à ce message', |
|
| 513 | + 'lien_supprimer' => 'supprimer', |
|
| 514 | + 'lien_tout_afficher' => 'Tout afficher', |
|
| 515 | + 'lien_visite_site' => 'visiter ce site', |
|
| 516 | + 'lien_visites' => '@visites@ visites', |
|
| 517 | + 'lien_voir_auteur' => 'Voir cette autrice', |
|
| 518 | + 'ligne' => 'Ligne', |
|
| 519 | + 'login' => 'Connexion', |
|
| 520 | + 'login_acces_prive' => 'accès à l’espace privé', |
|
| 521 | + 'login_autre_identifiant' => 'se connecter sous un autre identifiant', |
|
| 522 | + 'login_cookie_accepte' => 'Veuillez régler votre navigateur pour qu’il les accepte (au moins pour ce site).', |
|
| 523 | + 'login_cookie_oblige' => 'Pour vous identifier de façon sûre sur ce site, vous devez accepter les cookies.', |
|
| 524 | + 'login_deconnexion_ok' => 'Déconnexion effectuée.', |
|
| 525 | + 'login_erreur_pass' => 'Erreur de mot de passe.', |
|
| 526 | + 'login_espace_prive' => 'espace privé', |
|
| 527 | + 'login_identifiant_inconnu' => 'L’identifiant « @login@ » est inconnu.', |
|
| 528 | + 'login_login' => 'Login :', |
|
| 529 | + 'login_login2' => 'Login ou adresse email :', |
|
| 530 | + 'login_login_pass_incorrect' => '(Login ou mot de passe incorrect.)', |
|
| 531 | + 'login_motpasseoublie' => 'mot de passe oublié ?', |
|
| 532 | + 'login_non_securise' => 'Attention, ce formulaire n’est pas sécurisé. |
|
| 533 | 533 | Si vous ne voulez pas que votre mot de passe puisse être |
| 534 | 534 | intercepté sur le réseau, veuillez activer Javascript |
| 535 | 535 | dans votre navigateur et', |
| 536 | - 'login_nouvelle_tentative' => 'Nouvelle tentative', |
|
| 537 | - 'login_par_ici' => 'Vous êtes enregistrée... par ici...', |
|
| 538 | - 'login_pass2' => 'Mot de passe :', |
|
| 539 | - 'login_preferez_refuser' => '<b>Si vous préférez refuser les cookies</b>, une autre méthode de connexion (moins sécurisée) est à votre disposition :', |
|
| 540 | - 'login_recharger' => 'recharger cette page', |
|
| 541 | - 'login_rester_identifie' => 'Se souvenir de moi', |
|
| 542 | - 'login_retour_public' => 'Retour au site public', |
|
| 543 | - 'login_retour_site' => 'Retour au site public', |
|
| 544 | - 'login_retoursitepublic' => 'retour au site public', |
|
| 545 | - 'login_sans_cookie' => 'Identification sans cookie', |
|
| 546 | - 'login_securise' => 'Login sécurisé', |
|
| 547 | - 'login_sinscrire' => 's’inscrire', # MODIF |
|
| 548 | - 'login_test_navigateur' => 'test navigateur/reconnexion', |
|
| 549 | - 'login_verifiez_navigateur' => '(Vérifiez toutefois que votre navigateur n’a pas mémorisé votre mot de passe...)', |
|
| 536 | + 'login_nouvelle_tentative' => 'Nouvelle tentative', |
|
| 537 | + 'login_par_ici' => 'Vous êtes enregistrée... par ici...', |
|
| 538 | + 'login_pass2' => 'Mot de passe :', |
|
| 539 | + 'login_preferez_refuser' => '<b>Si vous préférez refuser les cookies</b>, une autre méthode de connexion (moins sécurisée) est à votre disposition :', |
|
| 540 | + 'login_recharger' => 'recharger cette page', |
|
| 541 | + 'login_rester_identifie' => 'Se souvenir de moi', |
|
| 542 | + 'login_retour_public' => 'Retour au site public', |
|
| 543 | + 'login_retour_site' => 'Retour au site public', |
|
| 544 | + 'login_retoursitepublic' => 'retour au site public', |
|
| 545 | + 'login_sans_cookie' => 'Identification sans cookie', |
|
| 546 | + 'login_securise' => 'Login sécurisé', |
|
| 547 | + 'login_sinscrire' => 's’inscrire', # MODIF |
|
| 548 | + 'login_test_navigateur' => 'test navigateur/reconnexion', |
|
| 549 | + 'login_verifiez_navigateur' => '(Vérifiez toutefois que votre navigateur n’a pas mémorisé votre mot de passe...)', |
|
| 550 | 550 | |
| 551 | - // M |
|
| 552 | - 'masquer_colonne' => 'Masquer cette colonne', |
|
| 553 | - 'masquer_trad' => 'masquer les traductions', |
|
| 554 | - 'message_nouveaux_identifiants_echec' => 'Impossible de générer de nouveaux identifiants.', |
|
| 555 | - 'message_nouveaux_identifiants_echec_envoi' => 'Les nouveaux identifiants de connexion n’ont pas pu être envoyés.', |
|
| 556 | - 'message_nouveaux_identifiants_ok' => 'Les nouveaux identifiants de connexion ont été envoyés à @email@.', |
|
| 557 | - 'module_fichiers_langues' => 'Fichiers de langue', |
|
| 551 | + // M |
|
| 552 | + 'masquer_colonne' => 'Masquer cette colonne', |
|
| 553 | + 'masquer_trad' => 'masquer les traductions', |
|
| 554 | + 'message_nouveaux_identifiants_echec' => 'Impossible de générer de nouveaux identifiants.', |
|
| 555 | + 'message_nouveaux_identifiants_echec_envoi' => 'Les nouveaux identifiants de connexion n’ont pas pu être envoyés.', |
|
| 556 | + 'message_nouveaux_identifiants_ok' => 'Les nouveaux identifiants de connexion ont été envoyés à @email@.', |
|
| 557 | + 'module_fichiers_langues' => 'Fichiers de langue', |
|
| 558 | 558 | |
| 559 | - // N |
|
| 560 | - 'navigateur_pas_redirige' => 'Si votre navigateur n’est pas redirigé, cliquez ici pour continuer.', |
|
| 561 | - 'numero' => 'Numéro', |
|
| 559 | + // N |
|
| 560 | + 'navigateur_pas_redirige' => 'Si votre navigateur n’est pas redirigé, cliquez ici pour continuer.', |
|
| 561 | + 'numero' => 'Numéro', |
|
| 562 | 562 | |
| 563 | - // O |
|
| 564 | - 'occurence' => 'Occurrence', |
|
| 565 | - 'onglet_affacer_base' => 'Effacer la base', |
|
| 566 | - 'onglet_auteur' => 'L’autrice', |
|
| 567 | - 'onglet_contenu_site' => 'Contenu du site', |
|
| 568 | - 'onglet_evolution_visite_mod' => 'Évolution', |
|
| 569 | - 'onglet_fonctions_avances' => 'Fonctions avancées', |
|
| 570 | - 'onglet_informations_personnelles' => 'Informations personnelles', |
|
| 571 | - 'onglet_interactivite' => 'Interactivité', |
|
| 572 | - 'onglet_messagerie' => 'Messagerie', |
|
| 573 | - 'onglet_repartition_rubrique' => 'Répartition par rubriques', |
|
| 574 | - 'onglet_save_restaur_base' => 'Sauvegarder/restaurer la base', |
|
| 575 | - 'onglet_vider_cache' => 'Vider le cache', |
|
| 563 | + // O |
|
| 564 | + 'occurence' => 'Occurrence', |
|
| 565 | + 'onglet_affacer_base' => 'Effacer la base', |
|
| 566 | + 'onglet_auteur' => 'L’autrice', |
|
| 567 | + 'onglet_contenu_site' => 'Contenu du site', |
|
| 568 | + 'onglet_evolution_visite_mod' => 'Évolution', |
|
| 569 | + 'onglet_fonctions_avances' => 'Fonctions avancées', |
|
| 570 | + 'onglet_informations_personnelles' => 'Informations personnelles', |
|
| 571 | + 'onglet_interactivite' => 'Interactivité', |
|
| 572 | + 'onglet_messagerie' => 'Messagerie', |
|
| 573 | + 'onglet_repartition_rubrique' => 'Répartition par rubriques', |
|
| 574 | + 'onglet_save_restaur_base' => 'Sauvegarder/restaurer la base', |
|
| 575 | + 'onglet_vider_cache' => 'Vider le cache', |
|
| 576 | 576 | |
| 577 | - // P |
|
| 578 | - 'pass_choix_pass' => 'Veuillez choisir votre nouveau mot de passe :', |
|
| 579 | - 'pass_erreur' => 'Erreur', |
|
| 580 | - 'pass_erreur_acces_refuse' => '<b>Erreur :</b> vous n’avez plus accès à ce site.', |
|
| 581 | - 'pass_erreur_code_inconnu' => '<b>Erreur :</b> ce code ne correspond à aucune des visiteuses ayant accès à ce site.', |
|
| 582 | - 'pass_erreur_non_enregistre' => '<b>Erreur :</b> l’adresse <tt>@email_oubli@</tt> n’est pas enregistrée sur ce site.', |
|
| 583 | - 'pass_erreur_non_valide' => '<b>Erreur :</b> cet email <tt>@email_oubli@</tt> n’est pas valide !', |
|
| 584 | - 'pass_erreur_probleme_technique' => '<b>Erreur :</b> à cause d’un problème technique, l’email ne peut pas être envoyé.', |
|
| 585 | - 'pass_espace_prive_bla' => 'L’espace privé de ce site est ouvert aux |
|
| 577 | + // P |
|
| 578 | + 'pass_choix_pass' => 'Veuillez choisir votre nouveau mot de passe :', |
|
| 579 | + 'pass_erreur' => 'Erreur', |
|
| 580 | + 'pass_erreur_acces_refuse' => '<b>Erreur :</b> vous n’avez plus accès à ce site.', |
|
| 581 | + 'pass_erreur_code_inconnu' => '<b>Erreur :</b> ce code ne correspond à aucune des visiteuses ayant accès à ce site.', |
|
| 582 | + 'pass_erreur_non_enregistre' => '<b>Erreur :</b> l’adresse <tt>@email_oubli@</tt> n’est pas enregistrée sur ce site.', |
|
| 583 | + 'pass_erreur_non_valide' => '<b>Erreur :</b> cet email <tt>@email_oubli@</tt> n’est pas valide !', |
|
| 584 | + 'pass_erreur_probleme_technique' => '<b>Erreur :</b> à cause d’un problème technique, l’email ne peut pas être envoyé.', |
|
| 585 | + 'pass_espace_prive_bla' => 'L’espace privé de ce site est ouvert aux |
|
| 586 | 586 | visiteuses, après inscription. Une fois enregistrée, |
| 587 | 587 | vous pourrez consulter les articles en cours de rédaction, |
| 588 | 588 | proposer des articles et participer à tous les forums.', |
| 589 | - 'pass_forum_bla' => 'Vous avez demandé à intervenir sur un forum |
|
| 589 | + 'pass_forum_bla' => 'Vous avez demandé à intervenir sur un forum |
|
| 590 | 590 | réservé aux visiteuses enregistrées.', |
| 591 | - 'pass_indiquez_cidessous' => 'Indiquez ci-dessous l’adresse email sous laquelle vous |
|
| 591 | + 'pass_indiquez_cidessous' => 'Indiquez ci-dessous l’adresse email sous laquelle vous |
|
| 592 | 592 | vous êtes précédemment enregistrée. Vous |
| 593 | 593 | recevrez un email vous indiquant la marche à suivre pour |
| 594 | 594 | récupérer votre accès.', |
| 595 | - 'pass_mail_passcookie' => '(ceci est un message automatique) |
|
| 595 | + 'pass_mail_passcookie' => '(ceci est un message automatique) |
|
| 596 | 596 | Pour retrouver votre accès au site |
| 597 | 597 | @nom_site_spip@ (@adresse_site@) |
| 598 | 598 | |
@@ -604,146 +604,146 @@ discard block |
||
| 604 | 604 | et vous reconnecter au site. |
| 605 | 605 | |
| 606 | 606 | ', |
| 607 | - 'pass_mot_oublie' => 'Mot de passe oublié', |
|
| 608 | - 'pass_nouveau_enregistre' => 'Votre nouveau mot de passe a été enregistré.', |
|
| 609 | - 'pass_nouveau_pass' => 'Nouveau mot de passe', |
|
| 610 | - 'pass_ok' => 'OK', |
|
| 611 | - 'pass_oubli_mot' => 'Oubli du mot de passe', |
|
| 612 | - 'pass_procedure_changer' => 'Pour modifier votre mot de passe, merci d’indiquer l’adresse email associée à votre compte.', |
|
| 613 | - 'pass_quitter_fenetre' => 'Quitter cette fenêtre', |
|
| 614 | - 'pass_rappel_login' => 'Rappel : votre identifiant (login) est « @login@ ».', |
|
| 615 | - 'pass_recevoir_mail' => 'Un lien de réinitialisation de votre mot de passe vous a été envoyé sur votre adresse email (si celle-ci est valide).', |
|
| 616 | - 'pass_retour_public' => 'Retour sur le site public', |
|
| 617 | - 'pass_rien_a_faire_ici' => 'Rien à faire ici.', |
|
| 618 | - 'pass_vousinscrire' => 'Vous inscrire sur ce site', |
|
| 619 | - 'precedent' => 'précédent', |
|
| 620 | - 'previsualisation' => 'Prévisualisation', |
|
| 621 | - 'previsualiser' => 'Prévisualiser', |
|
| 607 | + 'pass_mot_oublie' => 'Mot de passe oublié', |
|
| 608 | + 'pass_nouveau_enregistre' => 'Votre nouveau mot de passe a été enregistré.', |
|
| 609 | + 'pass_nouveau_pass' => 'Nouveau mot de passe', |
|
| 610 | + 'pass_ok' => 'OK', |
|
| 611 | + 'pass_oubli_mot' => 'Oubli du mot de passe', |
|
| 612 | + 'pass_procedure_changer' => 'Pour modifier votre mot de passe, merci d’indiquer l’adresse email associée à votre compte.', |
|
| 613 | + 'pass_quitter_fenetre' => 'Quitter cette fenêtre', |
|
| 614 | + 'pass_rappel_login' => 'Rappel : votre identifiant (login) est « @login@ ».', |
|
| 615 | + 'pass_recevoir_mail' => 'Un lien de réinitialisation de votre mot de passe vous a été envoyé sur votre adresse email (si celle-ci est valide).', |
|
| 616 | + 'pass_retour_public' => 'Retour sur le site public', |
|
| 617 | + 'pass_rien_a_faire_ici' => 'Rien à faire ici.', |
|
| 618 | + 'pass_vousinscrire' => 'Vous inscrire sur ce site', |
|
| 619 | + 'precedent' => 'précédent', |
|
| 620 | + 'previsualisation' => 'Prévisualisation', |
|
| 621 | + 'previsualiser' => 'Prévisualiser', |
|
| 622 | 622 | |
| 623 | - // R |
|
| 624 | - 'retour' => 'Retour', |
|
| 623 | + // R |
|
| 624 | + 'retour' => 'Retour', |
|
| 625 | 625 | |
| 626 | - // S |
|
| 627 | - 'spip_conforme_dtd' => 'SPIP considère ce document comme conforme à son DOCTYPE :', |
|
| 628 | - 'squelette' => 'squelette', |
|
| 629 | - 'squelette_inclus_ligne' => 'squelette inclus, ligne', |
|
| 630 | - 'squelette_ligne' => 'squelette, ligne', |
|
| 631 | - 'stats_visites_et_popularite' => '@visites@ visites ; popularité : @popularite@', |
|
| 632 | - 'suivant' => 'suivant', |
|
| 626 | + // S |
|
| 627 | + 'spip_conforme_dtd' => 'SPIP considère ce document comme conforme à son DOCTYPE :', |
|
| 628 | + 'squelette' => 'squelette', |
|
| 629 | + 'squelette_inclus_ligne' => 'squelette inclus, ligne', |
|
| 630 | + 'squelette_ligne' => 'squelette, ligne', |
|
| 631 | + 'stats_visites_et_popularite' => '@visites@ visites ; popularité : @popularite@', |
|
| 632 | + 'suivant' => 'suivant', |
|
| 633 | 633 | |
| 634 | - // T |
|
| 635 | - 'taille_go' => '@taille@ Go', |
|
| 636 | - 'taille_ko' => '@taille@ ko', |
|
| 637 | - 'taille_mo' => '@taille@ Mo', |
|
| 638 | - 'taille_octets' => '@taille@ octets', |
|
| 639 | - 'texte_actualite_site_1' => 'Quand vous serez familiarisée avec l’interface, vous pourrez cliquer sur « ', |
|
| 640 | - 'texte_actualite_site_2' => 'interface complète', |
|
| 641 | - 'texte_actualite_site_3' => ' » pour ouvrir plus de possibilités.', |
|
| 642 | - 'texte_creation_automatique_vignette' => 'La création automatique de vignettes de prévisualisation est activée sur ce site. Si vous installez à partir de ce formulaire des images au(x) format(s) @gd_formats@, elles seront accompagnées d’une vignette d’une taille maximale de @taille_preview@ pixels.', |
|
| 643 | - 'texte_documents_associes' => 'Les documents suivants sont associés à l’article, |
|
| 634 | + // T |
|
| 635 | + 'taille_go' => '@taille@ Go', |
|
| 636 | + 'taille_ko' => '@taille@ ko', |
|
| 637 | + 'taille_mo' => '@taille@ Mo', |
|
| 638 | + 'taille_octets' => '@taille@ octets', |
|
| 639 | + 'texte_actualite_site_1' => 'Quand vous serez familiarisée avec l’interface, vous pourrez cliquer sur « ', |
|
| 640 | + 'texte_actualite_site_2' => 'interface complète', |
|
| 641 | + 'texte_actualite_site_3' => ' » pour ouvrir plus de possibilités.', |
|
| 642 | + 'texte_creation_automatique_vignette' => 'La création automatique de vignettes de prévisualisation est activée sur ce site. Si vous installez à partir de ce formulaire des images au(x) format(s) @gd_formats@, elles seront accompagnées d’une vignette d’une taille maximale de @taille_preview@ pixels.', |
|
| 643 | + 'texte_documents_associes' => 'Les documents suivants sont associés à l’article, |
|
| 644 | 644 | mais ils n’y ont pas été directement |
| 645 | 645 | insérés. Selon la mise en page du site public, |
| 646 | 646 | ils pourront apparaître sous forme de documents joints.', |
| 647 | - 'texte_erreur_mise_niveau_base' => 'Erreur de base de données lors de la mise à niveau. |
|
| 647 | + 'texte_erreur_mise_niveau_base' => 'Erreur de base de données lors de la mise à niveau. |
|
| 648 | 648 | L’image <b>@fichier@</b> n’est pas passée (article @id_article@). |
| 649 | 649 | Notez bien cette référence, réessayez la mise à |
| 650 | 650 | niveau, et enfin vérifiez que les images apparaissent |
| 651 | 651 | toujours dans les articles.', |
| 652 | - 'texte_erreur_visiteur' => 'Vous avez tenté d’accéder à l’espace privé avec un login qui ne le permet pas.', |
|
| 653 | - 'texte_inc_auth_1' => 'Vous êtes identifiée sous le |
|
| 652 | + 'texte_erreur_visiteur' => 'Vous avez tenté d’accéder à l’espace privé avec un login qui ne le permet pas.', |
|
| 653 | + 'texte_inc_auth_1' => 'Vous êtes identifiée sous le |
|
| 654 | 654 | login <b>@auth_login@</b>, mais celui-ci n’existe pas/plus dans la base. |
| 655 | 655 | Essayez de vous', |
| 656 | - 'texte_inc_auth_2' => 'reconnecter', |
|
| 657 | - 'texte_inc_auth_3' => ', après avoir éventuellement quitté puis |
|
| 656 | + 'texte_inc_auth_2' => 'reconnecter', |
|
| 657 | + 'texte_inc_auth_3' => ', après avoir éventuellement quitté puis |
|
| 658 | 658 | redémarré votre navigateur.', |
| 659 | - 'texte_inc_config' => 'Les modifications effectuées dans ces pages influent notablement sur le |
|
| 659 | + 'texte_inc_config' => 'Les modifications effectuées dans ces pages influent notablement sur le |
|
| 660 | 660 | fonctionnement de votre site. Nous vous recommandons de ne pas y intervenir tant que vous n’êtes pas |
| 661 | 661 | familière du fonctionnement du système SPIP. <br /><br /><b>Plus |
| 662 | 662 | généralement, il est fortement conseillé |
| 663 | 663 | de laisser la charge de ces pages à la webmestre principale de votre site.</b>', |
| 664 | - 'texte_inc_meta_1' => 'Le système a rencontré une erreur lors de l’écriture du fichier <code>@fichier@</code>. Veuillez, en tant qu’administratrice du site,', |
|
| 665 | - 'texte_inc_meta_2' => 'vérifier les droits d’écriture', |
|
| 666 | - 'texte_inc_meta_3' => 'sur le répertoire <code>@repertoire@</code>.', |
|
| 667 | - 'texte_statut_en_cours_redaction' => 'en cours de rédaction', |
|
| 668 | - 'texte_statut_poubelle' => 'à la poubelle', |
|
| 669 | - 'texte_statut_propose_evaluation' => 'proposé à l’évaluation', |
|
| 670 | - 'texte_statut_publie' => 'publié en ligne', |
|
| 671 | - 'texte_statut_refuse' => 'refusé', |
|
| 672 | - 'titre_ajouter_mot_cle' => 'AJOUTER UN MOT-CLÉ :', |
|
| 673 | - 'titre_cadre_raccourcis' => 'RACCOURCIS :', |
|
| 674 | - 'titre_changer_couleur_interface' => 'Changer la couleur de l’interface', |
|
| 675 | - 'titre_image_admin_article' => 'Vous pouvez administrer cet article', |
|
| 676 | - 'titre_image_administrateur' => 'Administratrice', |
|
| 677 | - 'titre_image_aide' => 'De l’aide sur cet élément', |
|
| 678 | - 'titre_image_auteur_supprime' => 'Autrice supprimée', |
|
| 679 | - 'titre_image_redacteur' => 'Rédactrice sans accès', |
|
| 680 | - 'titre_image_redacteur_02' => 'Rédactrice', |
|
| 681 | - 'titre_image_selecteur' => 'Afficher la liste', |
|
| 682 | - 'titre_image_visiteur' => 'Visiteur', |
|
| 683 | - 'titre_joindre_document' => 'JOINDRE UN DOCUMENT', |
|
| 684 | - 'titre_mots_cles' => 'MOTS-CLÉS', |
|
| 685 | - 'titre_probleme_technique' => 'Attention : un problème technique (serveur SQL) empêche l’accès à cette partie du site. Merci de votre compréhension.', |
|
| 686 | - 'titre_publier_document' => 'PUBLIER UN DOCUMENT DANS CETTE RUBRIQUE', |
|
| 687 | - 'titre_signatures_attente' => 'Signatures en attente de validation', |
|
| 688 | - 'titre_signatures_confirmees' => 'Signatures confirmées', |
|
| 689 | - 'titre_statistiques' => 'Statistiques du site', |
|
| 690 | - 'titre_titre_document' => 'Titre du document :', |
|
| 691 | - 'todo' => 'à venir', |
|
| 692 | - 'trad_definir_reference' => 'Choisir "@titre@" comme référence des traductions', |
|
| 693 | - 'trad_reference' => '(référence des traductions)', |
|
| 664 | + 'texte_inc_meta_1' => 'Le système a rencontré une erreur lors de l’écriture du fichier <code>@fichier@</code>. Veuillez, en tant qu’administratrice du site,', |
|
| 665 | + 'texte_inc_meta_2' => 'vérifier les droits d’écriture', |
|
| 666 | + 'texte_inc_meta_3' => 'sur le répertoire <code>@repertoire@</code>.', |
|
| 667 | + 'texte_statut_en_cours_redaction' => 'en cours de rédaction', |
|
| 668 | + 'texte_statut_poubelle' => 'à la poubelle', |
|
| 669 | + 'texte_statut_propose_evaluation' => 'proposé à l’évaluation', |
|
| 670 | + 'texte_statut_publie' => 'publié en ligne', |
|
| 671 | + 'texte_statut_refuse' => 'refusé', |
|
| 672 | + 'titre_ajouter_mot_cle' => 'AJOUTER UN MOT-CLÉ :', |
|
| 673 | + 'titre_cadre_raccourcis' => 'RACCOURCIS :', |
|
| 674 | + 'titre_changer_couleur_interface' => 'Changer la couleur de l’interface', |
|
| 675 | + 'titre_image_admin_article' => 'Vous pouvez administrer cet article', |
|
| 676 | + 'titre_image_administrateur' => 'Administratrice', |
|
| 677 | + 'titre_image_aide' => 'De l’aide sur cet élément', |
|
| 678 | + 'titre_image_auteur_supprime' => 'Autrice supprimée', |
|
| 679 | + 'titre_image_redacteur' => 'Rédactrice sans accès', |
|
| 680 | + 'titre_image_redacteur_02' => 'Rédactrice', |
|
| 681 | + 'titre_image_selecteur' => 'Afficher la liste', |
|
| 682 | + 'titre_image_visiteur' => 'Visiteur', |
|
| 683 | + 'titre_joindre_document' => 'JOINDRE UN DOCUMENT', |
|
| 684 | + 'titre_mots_cles' => 'MOTS-CLÉS', |
|
| 685 | + 'titre_probleme_technique' => 'Attention : un problème technique (serveur SQL) empêche l’accès à cette partie du site. Merci de votre compréhension.', |
|
| 686 | + 'titre_publier_document' => 'PUBLIER UN DOCUMENT DANS CETTE RUBRIQUE', |
|
| 687 | + 'titre_signatures_attente' => 'Signatures en attente de validation', |
|
| 688 | + 'titre_signatures_confirmees' => 'Signatures confirmées', |
|
| 689 | + 'titre_statistiques' => 'Statistiques du site', |
|
| 690 | + 'titre_titre_document' => 'Titre du document :', |
|
| 691 | + 'todo' => 'à venir', |
|
| 692 | + 'trad_definir_reference' => 'Choisir "@titre@" comme référence des traductions', |
|
| 693 | + 'trad_reference' => '(référence des traductions)', |
|
| 694 | 694 | |
| 695 | - // U |
|
| 696 | - 'upload_limit' => 'Ce fichier est trop gros pour le serveur ; la taille maximum autorisée en <i>upload</i> est de @max@.', |
|
| 695 | + // U |
|
| 696 | + 'upload_limit' => 'Ce fichier est trop gros pour le serveur ; la taille maximum autorisée en <i>upload</i> est de @max@.', |
|
| 697 | 697 | |
| 698 | - // Z |
|
| 699 | - 'zbug_balise_b_aval' => ' : balise B en aval', |
|
| 700 | - 'zbug_balise_inexistante' => 'Balise @balise@ mal déclarée pour @from@', |
|
| 701 | - 'zbug_balise_sans_argument' => 'Argument manquant dans la balise @balise@', |
|
| 702 | - 'zbug_boucle' => 'boucle', |
|
| 703 | - 'zbug_boucle_recursive_undef' => 'Boucle récursive non définie : @nom@', |
|
| 704 | - 'zbug_calcul' => 'calcul', |
|
| 705 | - 'zbug_champ_hors_boucle' => 'Champ @champ@ hors boucle', |
|
| 706 | - 'zbug_champ_hors_critere' => 'Champ @champ@ hors critère @critere@', |
|
| 707 | - 'zbug_champ_hors_motif' => 'Champ @champ@ hors d’un contexte @motif@', |
|
| 708 | - 'zbug_code' => 'code', |
|
| 709 | - 'zbug_critere_inconnu' => 'Critère inconnu @critere@', |
|
| 710 | - 'zbug_critere_sur_table_sans_cle_primaire' => '{@critere@} sur une table sans clef primaire atomique', |
|
| 711 | - 'zbug_distant_interdit' => 'Externe interdit', |
|
| 712 | - 'zbug_doublon_table_sans_cle_primaire' => 'Doublons sur une table sans clef primaire atomique', |
|
| 713 | - 'zbug_doublon_table_sans_index' => 'Doublons sur une table sans index', |
|
| 714 | - 'zbug_erreur_boucle_double' => 'Double définition de la boucle @id@', |
|
| 715 | - 'zbug_erreur_boucle_fermant' => 'Boucle @id@ non fermée', |
|
| 716 | - 'zbug_erreur_boucle_syntaxe' => 'Syntaxe de la boucle @id@ incorrecte', |
|
| 717 | - 'zbug_erreur_compilation' => 'Erreur de compilation', |
|
| 718 | - 'zbug_erreur_execution_page' => 'Erreur d’exécution', |
|
| 719 | - 'zbug_erreur_filtre' => 'Filtre @filtre@ non défini', |
|
| 720 | - 'zbug_erreur_filtre_nbarg_min' => 'Filtre @filtre@ : il manque @nb@ argument(s)', |
|
| 721 | - 'zbug_erreur_meme_parent' => 'Le critère {meme_parent} ne s’applique qu’aux boucles (FORUMS) ou (RUBRIQUES)', |
|
| 722 | - 'zbug_erreur_squelette' => 'Erreur(s) dans le squelette', |
|
| 723 | - 'zbug_hors_compilation' => 'Hors Compilation', |
|
| 724 | - 'zbug_info_erreur_squelette' => 'Erreur sur le site', |
|
| 725 | - 'zbug_inversion_ordre_inexistant' => 'Inversion d’un ordre inexistant', |
|
| 726 | - 'zbug_pagination_sans_critere' => 'Balise #PAGINATION sans critère {pagination} ou employé dans une boucle récursive', |
|
| 727 | - 'zbug_parametres_inclus_incorrects' => 'Paramètre d’inclusion incorrect : @param@', |
|
| 728 | - 'zbug_profile' => 'Temps de calcul : @time@', |
|
| 729 | - 'zbug_resultat' => 'résultat', |
|
| 730 | - 'zbug_serveur_indefini' => 'Serveur SQL indéfini', |
|
| 731 | - 'zbug_statistiques' => 'Statistiques des requêtes SQL classées par durée', |
|
| 732 | - 'zbug_table_inconnue' => 'Table SQL « @table@ » inconnue', |
|
| 733 | - 'zxml_connus_attributs' => 'attributs connus', |
|
| 734 | - 'zxml_de' => 'de', |
|
| 735 | - 'zxml_inconnu_attribut' => 'attribut inconnu', |
|
| 736 | - 'zxml_inconnu_balise' => 'balise inconnue', |
|
| 737 | - 'zxml_inconnu_entite' => 'entité inconnue', |
|
| 738 | - 'zxml_inconnu_id' => 'ID inconnu', |
|
| 739 | - 'zxml_mais_de' => 'mais de', |
|
| 740 | - 'zxml_non_conforme' => 'n’est pas conforme au motif', |
|
| 741 | - 'zxml_non_fils' => 'n’est pas un fils de', |
|
| 742 | - 'zxml_nonvide_balise' => 'balise non vide', |
|
| 743 | - 'zxml_obligatoire_attribut' => 'attribut obligatoire mais absent dans', |
|
| 744 | - 'zxml_succession_fils_incorrecte' => 'succession des fils incorrecte', |
|
| 745 | - 'zxml_survoler' => 'survoler pour voir les corrects', |
|
| 746 | - 'zxml_valeur_attribut' => 'valeur de l’attribut', |
|
| 747 | - 'zxml_vide_balise' => 'balise vide', |
|
| 748 | - 'zxml_vu' => 'vu auparavant' |
|
| 698 | + // Z |
|
| 699 | + 'zbug_balise_b_aval' => ' : balise B en aval', |
|
| 700 | + 'zbug_balise_inexistante' => 'Balise @balise@ mal déclarée pour @from@', |
|
| 701 | + 'zbug_balise_sans_argument' => 'Argument manquant dans la balise @balise@', |
|
| 702 | + 'zbug_boucle' => 'boucle', |
|
| 703 | + 'zbug_boucle_recursive_undef' => 'Boucle récursive non définie : @nom@', |
|
| 704 | + 'zbug_calcul' => 'calcul', |
|
| 705 | + 'zbug_champ_hors_boucle' => 'Champ @champ@ hors boucle', |
|
| 706 | + 'zbug_champ_hors_critere' => 'Champ @champ@ hors critère @critere@', |
|
| 707 | + 'zbug_champ_hors_motif' => 'Champ @champ@ hors d’un contexte @motif@', |
|
| 708 | + 'zbug_code' => 'code', |
|
| 709 | + 'zbug_critere_inconnu' => 'Critère inconnu @critere@', |
|
| 710 | + 'zbug_critere_sur_table_sans_cle_primaire' => '{@critere@} sur une table sans clef primaire atomique', |
|
| 711 | + 'zbug_distant_interdit' => 'Externe interdit', |
|
| 712 | + 'zbug_doublon_table_sans_cle_primaire' => 'Doublons sur une table sans clef primaire atomique', |
|
| 713 | + 'zbug_doublon_table_sans_index' => 'Doublons sur une table sans index', |
|
| 714 | + 'zbug_erreur_boucle_double' => 'Double définition de la boucle @id@', |
|
| 715 | + 'zbug_erreur_boucle_fermant' => 'Boucle @id@ non fermée', |
|
| 716 | + 'zbug_erreur_boucle_syntaxe' => 'Syntaxe de la boucle @id@ incorrecte', |
|
| 717 | + 'zbug_erreur_compilation' => 'Erreur de compilation', |
|
| 718 | + 'zbug_erreur_execution_page' => 'Erreur d’exécution', |
|
| 719 | + 'zbug_erreur_filtre' => 'Filtre @filtre@ non défini', |
|
| 720 | + 'zbug_erreur_filtre_nbarg_min' => 'Filtre @filtre@ : il manque @nb@ argument(s)', |
|
| 721 | + 'zbug_erreur_meme_parent' => 'Le critère {meme_parent} ne s’applique qu’aux boucles (FORUMS) ou (RUBRIQUES)', |
|
| 722 | + 'zbug_erreur_squelette' => 'Erreur(s) dans le squelette', |
|
| 723 | + 'zbug_hors_compilation' => 'Hors Compilation', |
|
| 724 | + 'zbug_info_erreur_squelette' => 'Erreur sur le site', |
|
| 725 | + 'zbug_inversion_ordre_inexistant' => 'Inversion d’un ordre inexistant', |
|
| 726 | + 'zbug_pagination_sans_critere' => 'Balise #PAGINATION sans critère {pagination} ou employé dans une boucle récursive', |
|
| 727 | + 'zbug_parametres_inclus_incorrects' => 'Paramètre d’inclusion incorrect : @param@', |
|
| 728 | + 'zbug_profile' => 'Temps de calcul : @time@', |
|
| 729 | + 'zbug_resultat' => 'résultat', |
|
| 730 | + 'zbug_serveur_indefini' => 'Serveur SQL indéfini', |
|
| 731 | + 'zbug_statistiques' => 'Statistiques des requêtes SQL classées par durée', |
|
| 732 | + 'zbug_table_inconnue' => 'Table SQL « @table@ » inconnue', |
|
| 733 | + 'zxml_connus_attributs' => 'attributs connus', |
|
| 734 | + 'zxml_de' => 'de', |
|
| 735 | + 'zxml_inconnu_attribut' => 'attribut inconnu', |
|
| 736 | + 'zxml_inconnu_balise' => 'balise inconnue', |
|
| 737 | + 'zxml_inconnu_entite' => 'entité inconnue', |
|
| 738 | + 'zxml_inconnu_id' => 'ID inconnu', |
|
| 739 | + 'zxml_mais_de' => 'mais de', |
|
| 740 | + 'zxml_non_conforme' => 'n’est pas conforme au motif', |
|
| 741 | + 'zxml_non_fils' => 'n’est pas un fils de', |
|
| 742 | + 'zxml_nonvide_balise' => 'balise non vide', |
|
| 743 | + 'zxml_obligatoire_attribut' => 'attribut obligatoire mais absent dans', |
|
| 744 | + 'zxml_succession_fils_incorrecte' => 'succession des fils incorrecte', |
|
| 745 | + 'zxml_survoler' => 'survoler pour voir les corrects', |
|
| 746 | + 'zxml_valeur_attribut' => 'valeur de l’attribut', |
|
| 747 | + 'zxml_vide_balise' => 'balise vide', |
|
| 748 | + 'zxml_vu' => 'vu auparavant' |
|
| 749 | 749 | ); |