feat: manage network partner logo defaults
This commit is contained in:
@@ -221,6 +221,7 @@ export const netzwerkFields: Field[] = [
|
|||||||
textarea('description', 'Description', netzwerkContent.partners.description),
|
textarea('description', 'Description', netzwerkContent.partners.description),
|
||||||
text('detailLabel', 'Detail label', netzwerkContent.partners.detailLabel),
|
text('detailLabel', 'Detail label', netzwerkContent.partners.detailLabel),
|
||||||
text('premiumLabel', 'Premium label', netzwerkContent.partners.premiumLabel),
|
text('premiumLabel', 'Premium label', netzwerkContent.partners.premiumLabel),
|
||||||
|
text('defaultLogoColor', 'Default logo color', netzwerkContent.partners.defaultLogoColor),
|
||||||
{
|
{
|
||||||
name: 'tiers',
|
name: 'tiers',
|
||||||
label: 'Tiers',
|
label: 'Tiers',
|
||||||
|
|||||||
@@ -1794,6 +1794,7 @@ export interface Page {
|
|||||||
description?: string | null;
|
description?: string | null;
|
||||||
detailLabel?: string | null;
|
detailLabel?: string | null;
|
||||||
premiumLabel?: string | null;
|
premiumLabel?: string | null;
|
||||||
|
defaultLogoColor?: string | null;
|
||||||
tiers?:
|
tiers?:
|
||||||
| {
|
| {
|
||||||
tier?: number | null;
|
tier?: number | null;
|
||||||
@@ -4665,6 +4666,7 @@ export interface PagesSelect<T extends boolean = true> {
|
|||||||
description?: T;
|
description?: T;
|
||||||
detailLabel?: T;
|
detailLabel?: T;
|
||||||
premiumLabel?: T;
|
premiumLabel?: T;
|
||||||
|
defaultLogoColor?: T;
|
||||||
tiers?:
|
tiers?:
|
||||||
| T
|
| T
|
||||||
| {
|
| {
|
||||||
|
|||||||
@@ -124,6 +124,7 @@ export const netzwerkContent = {
|
|||||||
description: 'Partner in drei Kategorien: Hauptsponsoren, Medienpartner und weitere Sponsoren. Klicken für Details.',
|
description: 'Partner in drei Kategorien: Hauptsponsoren, Medienpartner und weitere Sponsoren. Klicken für Details.',
|
||||||
detailLabel: 'Details',
|
detailLabel: 'Details',
|
||||||
premiumLabel: 'Premium',
|
premiumLabel: 'Premium',
|
||||||
|
defaultLogoColor: '#111D55',
|
||||||
tiers: [
|
tiers: [
|
||||||
{ tier: 1, label: 'Hauptsponsoren', note: 'Premium' },
|
{ tier: 1, label: 'Hauptsponsoren', note: 'Premium' },
|
||||||
{ tier: 2, label: 'Medienpartner', note: '' },
|
{ tier: 2, label: 'Medienpartner', note: '' },
|
||||||
|
|||||||
@@ -166,7 +166,7 @@ const JuryChairCard: React.FC<{ member: JuryMember; badge: string }> = ({ member
|
|||||||
// ── SponsorCell (tiered) ──────────────────────────────────────────────────────
|
// ── SponsorCell (tiered) ──────────────────────────────────────────────────────
|
||||||
|
|
||||||
function PartnerLogo({ partner }: { partner: Partner }) {
|
function PartnerLogo({ partner }: { partner: Partner }) {
|
||||||
const color = fallbackText(partner.logoColor, '#111D55');
|
const color = fallbackText(partner.logoColor, netzwerkContent.partners.defaultLogoColor);
|
||||||
const text = fallbackText(partner.logoText, partner.name);
|
const text = fallbackText(partner.logoText, partner.name);
|
||||||
const subtext = fallbackText(partner.logoSubtext, '');
|
const subtext = fallbackText(partner.logoSubtext, '');
|
||||||
|
|
||||||
@@ -454,7 +454,11 @@ const Netzwerk: React.FC = () => {
|
|||||||
const patronPeople = fallbackArray<PatronPerson>(patronage.people, netzwerkContent.patronage.people);
|
const patronPeople = fallbackArray<PatronPerson>(patronage.people, netzwerkContent.patronage.people);
|
||||||
const juryMembers = fallbackArray<JuryMember>(jury.members, netzwerkContent.jury.members);
|
const juryMembers = fallbackArray<JuryMember>(jury.members, netzwerkContent.jury.members);
|
||||||
const expertiseRows = fallbackArray<ExpertiseRow>(expertise.rows, netzwerkContent.expertise.rows);
|
const expertiseRows = fallbackArray<ExpertiseRow>(expertise.rows, netzwerkContent.expertise.rows);
|
||||||
const partners = fallbackArray<Partner>(partnerSection.items, netzwerkContent.partners.items as Partner[]);
|
const defaultLogoColor = fallbackText(partnerSection.defaultLogoColor, netzwerkContent.partners.defaultLogoColor);
|
||||||
|
const partners = fallbackArray<Partner>(partnerSection.items, netzwerkContent.partners.items as Partner[]).map((partner) => ({
|
||||||
|
...partner,
|
||||||
|
logoColor: fallbackText(partner.logoColor, defaultLogoColor),
|
||||||
|
}));
|
||||||
const partnerTiers = fallbackArray<PartnerTier>(partnerSection.tiers, netzwerkContent.partners.tiers);
|
const partnerTiers = fallbackArray<PartnerTier>(partnerSection.tiers, netzwerkContent.partners.tiers);
|
||||||
const mobileStats = fallbackArray<StatItem>(juryIntro.stats, netzwerkContent.juryIntro.stats);
|
const mobileStats = fallbackArray<StatItem>(juryIntro.stats, netzwerkContent.juryIntro.stats);
|
||||||
const desktopStats = fallbackArray<StatItem>(juryIntro.desktopStats, netzwerkContent.juryIntro.desktopStats);
|
const desktopStats = fallbackArray<StatItem>(juryIntro.desktopStats, netzwerkContent.juryIntro.desktopStats);
|
||||||
|
|||||||
Reference in New Issue
Block a user