Commit c3163cc0 authored by Kourser's avatar Kourser
Browse files

Presse : le logotype suivait la marque, pas le nom

Renommer un média ne changeait rien à ce qui s'affichait. Un cas
particulier reconstruisait, lettre à lettre, le bandeau-titre réel de
franceinfo — « france » puis « info » en gras, deux-points rouges — sans
jamais lire le nom du média. Le nom avait changé dans les données, le
logo montrait toujours la marque.

Le bandeau-titre en dérive désormais. Il garde un trait de style, mais
GÉNÉRIQUE : un nom terminé par « : » conserve sa ponctuation en couleur.
C'est une règle du produit, pas la copie du signe distinctif de
quelqu'un.

Deux libellés en dur échappaient encore au renommage, et pour la même
raison — ils ne passaient pas par la source unique : la liste des médias
de la console, où mon remplacement précédent ne visait que la capitale
initiale, et le bandeau « LinkedIn Actualités » des réseaux. Les
monogrammes des pastilles suivent aussi : « in » est une marque autant
qu'un nom.

SECURITY.md dit ce qui reste : chaque média garde la TEINTE de celui dont
il s'inspire. Quatre lignes de CSS, groupées, et ce choix appartient à
l'exploitant — je ne l'ai pas pris à sa place.

Vérifié à l'écran, un article par média : Le Fil, El Mondo, Le Figarii,
InfoFrance:, Far-West France.

Co-Authored-By: default avatarClaude Opus 5 <noreply@anthropic.com>
parent 6eff335b
Loading
Loading
Loading
Loading
+12 −0
Changes for SECURITY.md: 12 added lines, 0 removed lines.
Original line number Diff line number Diff line
@@ -568,6 +568,18 @@ pour les plateformes. Ils étaient recopiés dans cinq fichiers, dont deux table
rien n'atteignait : elles ont divergé au premier renommage, et un écran affichait encore
l'ancien nom quand tous les autres avaient changé.

Les **logotypes** en dérivent, eux aussi. Un cas particulier reconstruisait lettre à lettre
le bandeau-titre d'un média réel, si bien que renommer celui-ci ne changeait rien à ce qui
s'affichait : le nom avait changé dans les données, le logo montrait toujours la marque.
Ne reste qu'une règle générique — un nom terminé par « : » garde sa ponctuation en couleur —
qui appartient au produit et n'imite personne. Même chose pour les monogrammes des
plateformes : un « 𝕏 » ou un « in » sont des marques autant qu'un nom.

**Reste les couleurs.** Chaque média simulé porte encore la teinte de celui dont il
s'inspire. Elles sont regroupées dans `styles.css` (`.o-lemonde`, `.o-figaro`,
`.o-franceinfo`, `.o-ouestfrance`) et se changent en quatre lignes ; ce choix appartient à
l'exploitant.

C'est délibéré. La Licence Ouverte 2.0, sous laquelle les chronogrammes REMPAR25 sont
repris, **exclut les logos et marques** de sa concession. Le bloc-marque de l'État
(Marianne) est par ailleurs réservé aux administrations : l'apposer dans un produit
+1 −1
Changes for apps/web/src/Console.tsx: 1 added line, 1 removed line.
Original line number Diff line number Diff line
@@ -1090,7 +1090,7 @@ function CreateInjectForm({
              <option value="GENERIC">{t('Générique (Le Fil)')}</option>
              <option value="LEMONDE">{outletName('LEMONDE')}</option>
              <option value="FIGARO">{outletName('FIGARO')}</option>
              <option value="FRANCEINFO">franceinfo</option>
              <option value="FRANCEINFO">{outletName('FRANCEINFO')}</option>
              <option value="OUESTFRANCE">{outletName('OUESTFRANCE')}</option>
            </select>
            <input
+20 −6
Changes for apps/web/src/News.tsx: 20 added lines, 6 removed lines.
Original line number Diff line number Diff line
@@ -50,17 +50,31 @@ export function outletClass(o: NewsOutlet | undefined): string {
  return meta(o).cls;
}

/** Bandeau-titre (wordmark) du media, avec traitement special pour franceinfo. */
/**
 * Logotype d'un média simulé.
 *
 * Il est DÉRIVÉ DU NOM, et de rien d'autre. Un cas particulier reconstruisait
 * ici, lettre à lettre, le logotype réel de franceinfo — « france » puis
 * « info » en gras, deux-points rouges — si bien que renommer le média ne
 * changeait rien à ce qui s'affichait : le nom avait changé dans les données,
 * le logo continuait d'afficher la marque.
 *
 * Il reste un trait de style, mais GÉNÉRIQUE : un nom qui se termine par « : »
 * garde sa ponctuation en couleur. C'est une règle du produit, pas la copie du
 * signe distinctif de quelqu'un.
 */
function Wordmark({ outlet }: { outlet: NewsOutlet }): JSX.Element {
  if (outlet === 'FRANCEINFO') {
  const nom = meta(outlet).name;
  const finit = /^(.*?):$/.exec(nom);
  if (finit) {
    return (
      <span className="wm wm-fi">
        france<b>info</b>
        <i>:</i>
      <span className="wm">
        {finit[1]}
        <i className="wm-ponct">:</i>
      </span>
    );
  }
  return <span className="wm">{meta(outlet).name}</span>;
  return <span className="wm">{nom}</span>;
}

export function News({
+7 −2
Changes for apps/web/src/Social.tsx: 7 added lines, 2 removed lines.
Original line number Diff line number Diff line
@@ -754,7 +754,7 @@ function LinkedInShell({

        <aside className="li-right">
          <div className="li-news">
            <b>{t('LinkedIn Actualités')}</b>
            <b>{networkName('LINKEDIN')} {t('Actualités')}</b>
            {LI_NEWS.map((n) => (
              <div key={n.title} className="li-news-item">
                <span className="li-dot">•</span>
@@ -900,7 +900,12 @@ export function SocialConsole({ exerciseId }: { exerciseId: string }): JSX.Eleme
  }

  const shown = filter === 'ALL' ? posts : posts.filter((p) => p.network === filter);
  const chipLabel: Record<SocialNetwork, string> = { X: 'X', LINKEDIN: 'in', INSTAGRAM: 'IG' };
  /*
   * Monogrammes des pastilles. Ils reprenaient ceux des vraies plateformes
   * (« in » pour LinkedIn) : ce sont des marques au même titre que les noms.
   * Ils dérivent maintenant des noms de parodie.
   */
  const chipLabel: Record<SocialNetwork, string> = { X: 'P', LINKEDIN: 'LO', INSTAGRAM: 'IG' };

  return (
    <div className="social-console">
+1 −1
Changes for apps/web/src/i18n.tsx: 1 added line, 1 removed line.
Original line number Diff line number Diff line
@@ -135,7 +135,7 @@ const EN: Record<string, string> = {
  'Vidéo': 'Video',
  Photo: 'Photo',
  'Rédiger un article': 'Write article',
  'LinkedIn Actualités': 'LinkedIn News',
  'Actualités': 'News',
  'Rechercher dans les messages': 'Search mail',

  // Presse
Loading