Skip to content

Commit 83f9e01

Browse files
authored
Merge pull request #859 from pengkev/dev
added medals to sponsor cards
2 parents cb8d41b + 8fd4bbc commit 83f9e01

6 files changed

Lines changed: 69 additions & 0 deletions

File tree

client/src/pages/Home/Home.jsx

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,11 @@ import facultylogo from '../../assets/misc/facultylogo.png';
3030
import bsologo from '../../assets/misc/bsologo.svg';
3131
import slideshow1 from '../../assets/homeSlideshow/2T5/back.jpg';
3232

33+
import DiamondMedal from './sponsormedals/diamond.png';
34+
import GoldMedal from './sponsormedals/gold.png';
35+
import SilverMedal from './sponsormedals/silver.png';
36+
import BronzeMedal from './sponsormedals/bronze.png';
37+
3338
const PageHome = () => {
3439
return (
3540
<>
@@ -319,6 +324,9 @@ const HomePageSponsors = () => {
319324
const rankClass = item.rank ? `sponsor-card--${item.rank.toLowerCase()}` : '';
320325
// Extract only the sponsor's name from the label
321326
const sponsorName = item.label.includes(':') ? item.label.split(': ')[1] : item.label;
327+
// Get the appropriate medal icon
328+
const medalIcon = getMedalIcon(item.rank);
329+
322330
return (
323331
<div key={`${item.name}-${index}`} className={`sponsor-card ${rankClass}`}>
324332
<a
@@ -327,6 +335,13 @@ const HomePageSponsors = () => {
327335
rel="noreferrer"
328336
className="sponsor-card-link"
329337
>
338+
{medalIcon && (
339+
<img
340+
src={medalIcon}
341+
alt={`${item.rank} sponsor`}
342+
className="sponsor-medal-icon"
343+
/>
344+
)}
330345
<div className="sponsor-image-wrapper">
331346
{darkMode ? (
332347
<LazyLoadImage
@@ -370,4 +385,20 @@ const PleaseSponsor = () => {
370385
);
371386
};
372387

388+
// Create a helper function to map ranks to medal images
389+
const getMedalIcon = (rank) => {
390+
switch (rank?.toLowerCase()) {
391+
case 'diamond':
392+
return DiamondMedal;
393+
case 'gold':
394+
return GoldMedal;
395+
case 'silver':
396+
return SilverMedal;
397+
case 'bronze':
398+
return BronzeMedal;
399+
default:
400+
return null;
401+
}
402+
};
403+
373404
export { PageHome };

client/src/pages/Home/Home.scss

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -466,6 +466,23 @@
466466

467467
&:hover {
468468
transform: translateY(-8px);
469+
&.sponsor-card--diamond {
470+
// Change from var(--jam) (purple) to a diamond-like color
471+
border-bottom-color: #a0d8ef; // Light blue diamond color
472+
// Optional: Add a subtle shine/sparkle with box-shadow
473+
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08),
474+
0 8px 15px rgba(160, 216, 239, 0.3),
475+
0 0 5px rgba(255, 255, 255, 0.6);
476+
}
477+
&.sponsor-card--gold {
478+
border-bottom-color: var(--mikado);
479+
}
480+
&.sponsor-card--silver {
481+
border-bottom-color: #c0c0c0;
482+
}
483+
&.sponsor-card--bronze {
484+
border-bottom-color: #cd7f32;
485+
}
469486
}
470487

471488
// This pseudo-element creates the unobtrusive but obvious border glow
@@ -588,4 +605,25 @@
588605
}
589606
}
590607

608+
.sponsor-card {
609+
// existing styles...
610+
position: relative; // Ensure relative positioning for absolute medal positioning
611+
}
612+
613+
.sponsor-medal-icon {
614+
position: absolute;
615+
top: 10px;
616+
right: 10px;
617+
width: 35px;
618+
height: 35px;
619+
object-fit: contain;
620+
z-index: 2;
621+
filter: drop-shadow(0 2px 3px rgba(0, 0, 0, 0.2));
622+
623+
// Add a subtle shine to the medal icons
624+
&:hover {
625+
filter: drop-shadow(0 2px 3px rgba(0, 0, 0, 0.2)) brightness(1.1);
626+
}
627+
}
628+
591629
// --- END: Sponsor styles replacement ---
3.03 KB
Loading
10 KB
Loading
3.06 KB
Loading
3.04 KB
Loading

0 commit comments

Comments
 (0)