← back to Watches
src/components/affiliate/OmegaAffiliateGrid.jsx
168 lines
/**
* Omega Affiliate Grid - Luxury Watch Dealers
* Displays high-commission dealers with live OMEGA inventory
*/
import React from 'react';
const dealers = [
{
name: 'WatchBox',
url: 'https://www.thewatchbox.com/watches/omega/?utm_source=affiliate-dw&utm_medium=watches&utm_campaign=omega',
img: 'https://www.thewatchbox.com/media/logo/default/logo.png',
commission: '3-6%',
aov: '$5,000 - $40,000',
notes: 'Highest AOV, best luxury reputation',
program: 'Impact / CJ Affiliate',
rank: 1
},
{
name: 'Chrono24',
url: 'https://www.chrono24.com/search/index.htm?query=omega&utm_source=affiliate&utm_medium=dw-watches',
img: 'https://cdn.chrono24.com/images/default/chrono24-logo.svg',
commission: '3-5%',
aov: '$2,000 - $20,000',
notes: 'Largest global inventory, best for price tracking',
program: 'AWIN / Impact',
rank: 2
},
{
name: 'Jomashop',
url: 'https://www.jomashop.com/omega-watches.html?aff=dw-steve',
img: 'https://www.jomashop.com/media/logo/stores/1/logo.png',
commission: '4-12%',
aov: '$1,000 - $10,000',
notes: 'Highest commission %, excellent conversion',
program: 'CJ Affiliate',
rank: 3
},
{
name: 'Luxury Bazaar',
url: 'https://www.luxurybazaar.com/watches/omega/?ref=dw-steve',
img: 'https://www.luxurybazaar.com/skin/frontend/lb/default/images/lb-logo.png',
commission: '5-10%',
aov: '$3,000 - $25,000',
notes: 'Custom private deals, ideal for arbitrage',
program: 'Private / Invite',
rank: 4
},
{
name: 'Bob\'s Watches',
url: 'https://www.bobswatches.com/omega?ref=dw-affiliate',
img: 'https://www.bobswatches.com/images/bobs-watches-logo.svg',
commission: '4-8%',
aov: '$2,500 - $15,000',
notes: 'Strong pre-owned selection',
program: 'ShareASale',
rank: 5
},
{
name: 'Govberg Jewelers',
url: 'https://www.govbergwatches.com/omega/?utm_source=dw-affiliate',
img: 'https://www.govbergwatches.com/media/logo/default/govberg-logo.png',
commission: '3-6%',
aov: '$4,000 - $30,000',
notes: 'Prestige AD, merged with WatchBox',
program: 'WatchBox Affiliate',
rank: 6
}
];
export default function OmegaAffiliateGrid({ showDetails = false }) {
return (
<div className="p-6 bg-gradient-to-br from-slate-900 to-slate-800 rounded-xl">
<div className="mb-6">
<h2 className="text-2xl font-bold text-amber-400 mb-2">
🏆 Premium OMEGA Dealers
</h2>
<p className="text-slate-400 text-sm">
High-commission luxury watch dealers with verified affiliate programs
</p>
</div>
<div className="grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-4">
{dealers.map((dealer) => (
<a
href={dealer.url}
key={dealer.name}
target="_blank"
rel="noopener noreferrer"
className="group relative flex flex-col bg-slate-800 rounded-lg shadow-lg hover:shadow-2xl hover:shadow-amber-500/20 p-5 transition-all duration-300 border border-slate-700 hover:border-amber-500"
>
{/* Rank Badge */}
<div className="absolute -top-2 -right-2 bg-amber-500 text-black text-xs font-bold rounded-full w-8 h-8 flex items-center justify-center">
#{dealer.rank}
</div>
{/* Dealer Logo */}
<div className="flex items-center justify-center h-16 mb-4 bg-white rounded-lg p-2">
<img
src={dealer.img}
alt={dealer.name}
className="max-h-12 max-w-full object-contain"
onError={(e) => {
e.target.style.display = 'none';
e.target.nextSibling.style.display = 'block';
}}
/>
<span className="hidden text-slate-800 font-bold text-sm">{dealer.name}</span>
</div>
{/* Dealer Name */}
<h3 className="text-lg font-semibold text-white mb-2 text-center group-hover:text-amber-400 transition">
{dealer.name}
</h3>
{/* Commission Badge */}
<div className="flex items-center justify-center gap-2 mb-3">
<span className="px-3 py-1 bg-green-600 text-white text-xs font-bold rounded-full">
{dealer.commission}
</span>
<span className="text-slate-400 text-xs">
AOV: {dealer.aov}
</span>
</div>
{showDetails && (
<>
{/* Notes */}
<p className="text-slate-400 text-xs text-center mb-2">
{dealer.notes}
</p>
{/* Program Badge */}
<div className="text-center">
<span className="inline-block px-2 py-1 bg-slate-700 text-slate-300 text-xs rounded">
{dealer.program}
</span>
</div>
</>
)}
{/* Hover Effect */}
<div className="absolute inset-0 bg-gradient-to-t from-amber-500/10 to-transparent opacity-0 group-hover:opacity-100 transition rounded-lg pointer-events-none" />
</a>
))}
</div>
{/* Total Stats */}
<div className="mt-6 p-4 bg-slate-800/50 rounded-lg border border-slate-700">
<div className="grid grid-cols-3 gap-4 text-center">
<div>
<div className="text-2xl font-bold text-amber-400">{dealers.length}</div>
<div className="text-xs text-slate-400">Dealers</div>
</div>
<div>
<div className="text-2xl font-bold text-green-400">4-12%</div>
<div className="text-xs text-slate-400">Commission Range</div>
</div>
<div>
<div className="text-2xl font-bold text-blue-400">$1K - $40K</div>
<div className="text-xs text-slate-400">AOV Range</div>
</div>
</div>
</div>
</div>
);
}