SPB Git forge

spb/lou-ka

Public

Lou·Ka — tous les logements à louer du Québec, un seul endroit.

232commits 1branches 0releases
172.9 MBsize
maindefault branch
2 days agolast push
HTML 98.9% Python 0.6%
4.0 KB · 57 lines tsx
Raw Blame History
1// -----------------------------------------------------------------------------2// Lou-Ka — Agrégateur de logements à louer (province de Québec)3// Auteur : Simon-Pierre Boucher — contact@spboucher.ai4// fiche/SourceDisclosure.tsx : fin de fiche — « Sources et méthodologie »5//   (source · rôle · date · lien) et rangée d'actions de clôture (signaler,6//   partager, PDF, dernière mise à jour).7// -----------------------------------------------------------------------------8import { Listing, sourceName } from "../api";9import { IcoAlert, IcoDoc, IcoFolder, IcoShare } from "../components/Icons";10import { SectionCard, relTime } from "./ui";1112interface Src { n: string; r: string; d?: string; href?: string; }1314export default function SourceDisclosure({ l, onShare, dates }: {15  l: Listing; onShare: () => void; dates: { air?: number | null; gaz?: string | null; ks?: number | null };16}) {17  const maj = relTime(l.updated_at);18  const sources: Src[] = [19    { n: sourceName(l.source), r: "Annonce, prix, photos et disponibilité (source originale)", d: maj ?? undefined, href: `/passerelle/${encodeURIComponent(l.uid)}` },20    { n: "Adresses Québec", r: "Géocodage de l'adresse (position sur la carte)" },21    { n: "Statistique Canada", r: "Recensement 2021 (aire de diffusion) et mesures de proximité", d: "2021" },22    { n: "Registre des loyers (Vivre en ville)", r: "Loyers réellement payés, déclarés par des locataires", href: "https://registre-des-loyers.ca/fr/qc/carte" },23    { n: "Gouvernement du Québec (BDZI)", r: "Zones à risque d'inondation", href: "https://www.quebec.ca/agriculture-environnement-et-ressources-naturelles/eau/zones-inondables-mobilite-rives-littoral/cartographies" },24    { n: "MELCCFP (RSQAQ)", r: "Qualité de l'air — station la plus proche", d: dates.air ? String(dates.air) : undefined },25    { n: "INSPQ", r: "Îlots de chaleur et de fraîcheur urbains" },26    { n: "gazquebec.ca", r: "Prix de l'essence par station", d: dates.gaz ?? undefined, href: "https://gazquebec.ca" },27    { n: "OpenStreetMap · Mapbox", r: "Lieux à proximité, transport, fond de carte", d: dates.ks ? new Date(dates.ks * 1000).toLocaleDateString("fr-CA") : undefined },28    { n: "TAL / SOQUIJ", r: "Décisions publiques du Tribunal administratif du logement", href: "https://www.tal.gouv.qc.ca/" },29    { n: "Hydro-Québec", r: "Estimation du coût d'électricité à l'adresse" },30    { n: "Lou-Ka", r: "Juste valeur, KA Scores, Lou-Ka Score, coût réel, historique — calculs maison, indicatifs" },31  ];32  return (33    <SectionCard id="sources" title="Sources et méthodologie" icon={<IcoFolder size={18} />}34                 sub="Chaque donnée de cette fiche renvoie à sa source ; les calculs Lou-Ka sont indicatifs et documentés">35      <ul className="lk-sources">36        {sources.map((s) => (37          <li key={s.n}>38            <span className="n">{s.href ? <a href={s.href} target="_blank" rel="noopener noreferrer">{s.n}</a> : s.n}</span>39            {s.d && <span className="d">{s.d}</span>}40            <span className="r">{s.r}</span>41          </li>42        ))}43      </ul>44      <div className="lk-end" style={{ marginTop: 14 }}>45        <a href="/sources"><IcoFolder size={18} />Données et méthodologie<small>Toutes les sources Lou-Ka</small></a>46        <a href={`/contact?sujet=${encodeURIComponent(`Erreur sur la fiche ${l.uid}`)}`}><IcoAlert size={18} />Signaler une erreur<small>Prix, photos, adresse…</small></a>47        <button type="button" onClick={onShare}><IcoShare size={18} />Partager cette annonce<small>Lien de la fiche</small></button>48        <a href={`/api/listings/${encodeURIComponent(l.uid)}/pdf`} download><IcoDoc size={18} />Fiche PDF<small>{maj ? `Mise à jour ${maj}` : "Télécharger"}</small></a>49      </div>50      <p className="lk-fine" style={{ marginTop: 12 }}>51        Les prix et disponibilités sont ceux affichés par la source — chaque fiche renvoie à l'annonce originale.52        Lou-Ka est un agrégateur indépendant.53      </p>54    </SectionCard>55  );56}57