Files
citrus/resources/views/templates/odullerimiz.blade.php
T

477 lines
23 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
@extends('layouts.site', [
'header' => 'partials.header-demo1',
'footer' => 'partials.footer',
])
@section('content')
@php
$awards = \App\Models\Award::active()->ordered()->get();
// Extracted categories from active awards for dynamic filter options
$categories = $awards->pluck('category')->unique()->toArray();
$heroTitle = $page ? ($page->translate('title') ?: $page->title) : t('Ödüllerimiz ve Başarılarımız');
$heroExcerpt = $page ? ($page->translate('excerpt') ?: $page->excerpt) : t('Yenilikçi teknolojilerimizle sektöre yön veriyor, başarılarımızı küresel ödüllerle taçlandırıyoruz.');
// Timeline color palette mapping for elegant signature styles
$colors = [
'hackathon' => '#e31e24',
'export' => '#2980b9',
'innovation' => '#27ae60',
'design' => '#8e44ad',
'general' => '#f5a623'
];
$rgbColors = [
'hackathon' => '227, 30, 36',
'export' => '41, 128, 185',
'innovation' => '39, 174, 96',
'design' => '142, 68, 173',
'general' => '245, 166, 35'
];
$heroTitleBefore = t('Başarılarımızı ve ') ?? 'Başarılarımızı ve ';
$heroHighlight = t('Ödüllerimizi ') ?? 'Ödüllerimizi ';
$heroTitleAfter = t('Taçlandırıyoruz') ?? 'Taçlandırıyoruz';
$heroCtaLabel = t('Ödülleri Keşfet') ?? 'Ödülleri Keşfet';
@endphp
@include('components.company-history.fonts')
<div class="grow shrink-0 bg-[#f8fafc]">
<!-- Hero Section -->
<section class="company-history-fonts company-history-hero wrapper bg-gradient-yellow relative overflow-hidden pb-12 pt-6">
<div class="absolute inset-0 bg-[radial-gradient(circle_at_70%_20%,rgba(254,243,199,0.4),transparent_50%)]"></div>
<div class="container pt-10 xl:pt-[5rem] lg:pt-[5rem] md:pt-[5rem] pb-10 xl:pb-14 lg:pb-14 md:pb-14 relative z-10">
<div class="flex flex-wrap mx-[-15px] xl:mx-[-35px] lg:mx-[-20px] !mt-[-50px] items-center">
<div class="xl:w-6/12 lg:w-6/12 w-full flex-[0_0_auto] !px-[15px] xl:!px-[35px] lg:!px-[20px] !mt-[50px] max-w-full order-last lg:order-first">
<figure class="m-0 p-0 relative group">
<div class="absolute -inset-1 bg-gradient-to-r from-red-500 to-amber-500 rounded-2xl blur opacity-25 group-hover:opacity-40 transition duration-1000 group-hover:duration-200"></div>
<picture class="relative block bg-white/40 backdrop-blur-md p-4 rounded-2xl border border-white/50 shadow-xl">
<img
class="w-auto max-w-full h-auto rounded-xl transform hover:scale-[1.02] transition-all duration-500"
src="{{ asset('assets/img/illustrations/truncgil-odullerimiz.webp') }}"
alt="{{ t('Ödüllerimiz') }}"
style="max-height: 420px; object-fit: contain; width: 100%;"
loading="eager"
fetchpriority="high"
decoding="async"
>
</picture>
</figure>
</div>
<div class="md:w-10/12 lg:w-6/12 xl:w-6/12 md:!ml-[8.33333333%] lg:!ml-0 xl:!ml-0 flex-[0_0_auto] !px-[15px] xl:!px-[35px] lg:!px-[20px] !mt-[50px] max-w-full text-center lg:!text-left xl:!text-left">
<span class="inline-flex items-center gap-1.5 px-3 py-1 rounded-full text-xs font-bold bg-[#e31e24]/10 text-[#e31e24] mb-4">
<i class="uil uil-trophy"></i> {{ t('Gurur Tablomuz') }}
</span>
<h1 class="company-history-hero__title !mb-5 md:mx-[-1.25rem] lg:mx-0 !leading-[1.2]">
{{ $heroTitleBefore }}<span class="company-history-hero__highlight text-[#e31e24]">{{ $heroHighlight }}</span>{{ $heroTitleAfter }}
</h1>
<p class="lead !text-[1.05rem] !leading-[1.7] text-gray-600 mb-8 max-w-xl mx-auto lg:mx-0">{{ $heroExcerpt }}</p>
<div class="flex flex-wrap justify-center lg:justify-start gap-4">
<a
href="#awards-timeline-section"
class="company-history-hero__cta btn btn-red !text-white !bg-[#e31e24] border-[#e31e24] hover:text-white hover:bg-[#c8191f] hover:!border-[#c8191f] !rounded-[50rem] px-8 py-3.5 text-sm font-bold shadow-lg shadow-red-500/20 hover:shadow-red-500/30 hover:translate-y-[-0.15rem] transition-all duration-300"
>
{{ $heroCtaLabel }} <i class="uil uil-arrow-down ml-1"></i>
</a>
</div>
</div>
</div>
</div>
</section>
<!-- Main Content wrapper with Timeline -->
<section id="awards-timeline-section" class="wrapper !bg-[#f8fafc] py-16 relative">
<div class="container">
<!-- Elegant Interactive Filter Tabs -->
@if(count($categories) > 0)
<div id="awards-filter-tabs" class="flex justify-center mb-16 relative z-10">
<div class="inline-flex flex-wrap justify-center gap-2 p-1.5 bg-white/80 backdrop-blur-md rounded-2xl shadow-[0_4px_20px_rgba(0,0,0,0.03)] border border-slate-100">
<button class="filter-btn px-5 py-2.5 rounded-xl text-xs font-extrabold uppercase tracking-wider transition-all duration-300 active" data-filter="all">
<i class="uil uil-apps mr-1 text-sm align-middle"></i> {{ t('Tümü') }}
</button>
@foreach($categories as $cat)
@php
$labelKey = 'awards.category_' . $cat;
$label = Lang::has($labelKey) ? __($labelKey) : ucfirst($cat);
$icon = 'uil-award';
if($cat === 'hackathon') $icon = 'uil-trophy';
elseif($cat === 'export') $icon = 'uil-globe';
elseif($cat === 'innovation') $icon = 'uil-lightbulb';
elseif($cat === 'design') $icon = 'uil-palette';
@endphp
<button class="filter-btn px-5 py-2.5 rounded-xl text-xs font-extrabold uppercase tracking-wider transition-all duration-300 text-gray-500 hover:text-gray-900 hover:bg-slate-50" data-filter="{{ $cat }}">
<i class="uil {{ $icon }} mr-1 text-sm align-middle"></i> {{ $label }}
</button>
@endforeach
</div>
</div>
@endif
<div class="xl:w-10/12 w-full flex-[0_0_auto] !px-[15px] max-w-full !mx-auto relative z-10">
<!-- Timeline Container -->
<div class="awards-timeline" data-timeline-animate>
<div class="awards-timeline__start awards-timeline__reveal">
<span>{{ t('BAŞLANGIÇ') }}</span>
</div>
<div class="awards-timeline__track">
@foreach($awards as $index => $award)
@php
$catType = $award->category ?: 'general';
$color = $colors[$catType] ?? '#f5a623';
$rgb = $rgbColors[$catType] ?? '245, 166, 35';
$position = $index % 2 === 0 ? 'right' : 'left';
$imgSrc = str_starts_with($award->image, 'assets/') ? asset($award->image) : asset('storage/' . $award->image);
@endphp
<article class="awards-timeline__item awards-timeline__item--{{ $position }} awards-timeline__reveal" style="--item-color: {{ $color }}; --item-color-rgb: {{ $rgb }};" data-category="{{ $award->category }}">
<!-- Timeline Axis Dot & Line -->
<div class="awards-timeline__axis">
<span class="awards-timeline__dot"></span>
</div>
<!-- Timeline Card -->
<div class="awards-timeline__side awards-timeline__side--inner">
<div class="awards-timeline__content bg-white rounded-2xl border border-slate-100/80 transition-all duration-300 flex flex-col overflow-hidden group">
<!-- Ceremony Photo Banner -->
<div class="award-photo-wrapper relative overflow-hidden bg-slate-100" style="width: 100%; height: 260px;">
<img src="{{ $imgSrc }}" alt="{{ $award->translate('title') }}" style="width: 100%; height: 100%; object-fit: cover; transition: transform 0.7s cubic-bezier(0.16, 1, 0.3, 1);" class="award-photo-img group-hover:scale-105" />
<div class="absolute inset-0 bg-gradient-to-t from-black/40 via-transparent to-transparent opacity-80"></div>
<!-- Badge on Image -->
<div class="absolute top-4 left-4 flex flex-wrap gap-2">
<span class="badge backdrop-blur-md bg-white/90 text-slate-800 text-[0.65rem] font-black uppercase tracking-wider px-3 py-1.5 shadow-sm rounded-lg">
{{ $award->category === 'hackathon' ? t('Yarışma') : ($award->category === 'export' ? t('İhracat') : t('Başarı')) }}
</span>
@if($award->is_featured)
<span class="badge backdrop-blur-md bg-[#f5a623] text-white text-[0.65rem] font-black uppercase tracking-wider px-3 py-1.5 shadow-sm rounded-lg">
<i class="uil uil-star"></i> {{ t('Öne Çıkan') }}
</span>
@endif
</div>
</div>
<!-- Card Content -->
<div class="p-6 md:p-8 flex flex-col gap-4 text-start relative">
<div class="flex items-center gap-1.5 text-[0.72rem] text-slate-400 font-bold">
<i class="uil uil-calendar-alt text-[#e31e24]"></i> {{ $award->award_date ? $award->award_date->translatedFormat('d F Y') : '' }}
</div>
<h3 class="text-lg font-black text-slate-850 mb-1 leading-snug group-hover:text-[#e31e24] transition-colors duration-300">
{{ $award->translate('title') }}
</h3>
<p class="text-xs leading-relaxed text-slate-500">
{{ $award->translate('description') }}
</p>
<!-- Footer elements -->
<div class="flex items-center justify-between pt-4 border-t border-slate-100 mt-2">
<span class="text-[0.72rem] font-black text-slate-700 flex items-center gap-1.5">
<span class="w-6 h-6 rounded-full bg-slate-100 flex items-center justify-center text-[#e31e24]">
<i class="uil uil-award text-[0.85rem]"></i>
</span>
{{ $award->translate('issuer') }}
</span>
@if($award->external_link)
<a href="{{ $award->external_link }}" target="_blank" class="verify-link text-[0.72rem] font-extrabold text-[#e31e24] flex items-center gap-1">
{{ t('Doğrula') }} <i class="uil uil-external-link-alt transform group-hover:translate-x-0.5 group-hover:translate-y-[-0.5px] transition-transform duration-300"></i>
</a>
@endif
</div>
</div>
</div>
</div>
</article>
@endforeach
</div>
<div class="awards-timeline__finish awards-timeline__reveal">
<span>{{ t('BUGÜN') }}</span>
</div>
</div>
<!-- Employer Branding Closing CTA -->
<div class="my-20 bg-gradient-to-br from-[#e31e24] via-[#ea3c41] to-[#f43f5e] rounded-3xl p-8 md:p-14 !text-white text-center shadow-xl shadow-red-500/10 relative overflow-hidden group">
<div class="absolute -right-12 -top-12 w-64 h-64 rounded-full bg-white/10 opacity-20 blur-xl group-hover:scale-125 transition-transform duration-700"></div>
<div class="absolute -left-12 -bottom-12 w-64 h-64 rounded-full bg-white/10 opacity-20 blur-xl group-hover:scale-125 transition-transform duration-700"></div>
<div class="relative z-10 max-w-2xl mx-auto flex flex-col items-center">
<div class="w-14 h-14 bg-white/10 backdrop-blur-md rounded-2xl flex items-center justify-center mb-6 border border-white/20 shadow-inner group-hover:rotate-12 transition-transform duration-500">
<i class="uil uil-rocket text-2xl text-white"></i>
</div>
<h3 class="text-2xl md:text-3xl font-black !text-white mb-4 tracking-tight leading-tight">{{ t('Bu başarıları birlikte kazandık!') }}</h3>
<p class="text-sm md:text-base leading-relaxed mb-8 text-white/90 font-medium max-w-xl">{{ t('Geleceği yenilikçi teknolojilerle şekillendiren bu harika ekibin bir parçası olmak, bizimle yeni ödüllere koşmak ister misin?') }}</p>
<a href="{{ url('/kariyer') }}" class="inline-flex items-center gap-2 bg-white text-[#e31e24] px-8 py-3.5 rounded-full text-xs font-black uppercase tracking-wider hover:translate-y-[-0.2rem] hover:shadow-2xl hover:shadow-white/20 transition-all duration-350 border-0 group/btn">
{{ t('Aramıza Katıl') }}
<i class="uil uil-arrow-right text-base transform group-hover/btn:translate-x-1 transition-transform"></i>
</a>
</div>
</div>
</div>
</div>
</section>
</div>
@push('styles')
<style>
/* Premium Interactive Filter styling */
.filter-btn {
background: transparent;
border: 0;
color: #64748b;
}
.filter-btn.active {
background-color: #e31e24 !important;
border-color: #e31e24 !important;
color: #ffffff !important;
box-shadow: 0 10px 20px -5px rgba(227, 30, 36, 0.35);
}
/* Timeline Design System drawing inspiration from hakkimizda */
.awards-timeline {
max-width: 960px;
margin: 0 auto;
position: relative;
}
.awards-timeline__start,
.awards-timeline__finish {
display: flex;
justify-content: center;
margin-bottom: 2rem;
}
.awards-timeline__finish {
margin-top: 2rem;
margin-bottom: 0;
}
.awards-timeline__start span,
.awards-timeline__finish span {
display: inline-block;
padding: 0.55rem 1.6rem;
border: 2px solid #e2e8f0;
border-radius: 999px;
font-size: 0.72rem;
font-weight: 850;
letter-spacing: 0.2em;
color: #475569;
background: #fff;
box-shadow: 0 4px 12px rgba(0,0,0,0.02);
}
.awards-timeline__track {
position: relative;
padding: 0.5rem 0;
}
.awards-timeline__track::before {
content: '';
position: absolute;
left: 50%;
top: 0;
bottom: 0;
width: 4px;
transform: translateX(-50%);
background: linear-gradient(180deg, #e31e24, #f5a623, #27ae60, #2980b9, #8e44ad);
border-radius: 4px;
z-index: 0;
}
.awards-timeline__item {
position: relative;
display: grid;
grid-template-columns: 1fr 40px 1fr;
align-items: center;
gap: 0 2.5rem;
margin-bottom: 3.5rem;
z-index: 1;
transition: all 0.45s cubic-bezier(0.16, 1, 0.3, 1);
}
.awards-timeline__item:last-child {
margin-bottom: 0;
}
.awards-timeline__axis {
grid-column: 2;
display: flex;
align-items: center;
justify-content: center;
}
.awards-timeline__dot {
width: 20px;
height: 20px;
border-radius: 50%;
background: var(--item-color);
border: 4px solid #fff;
box-shadow: 0 0 0 2px var(--item-color);
transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
position: relative;
}
.awards-timeline__item:hover .awards-timeline__dot {
transform: scale(1.3);
box-shadow: 0 0 0 6px rgba(var(--item-color-rgb), 0.25), 0 0 0 2px var(--item-color);
}
/* Alternating Right side */
.awards-timeline__item--right .awards-timeline__side--inner {
grid-column: 3;
text-align: left;
}
/* Alternating Left side */
.awards-timeline__item--left .awards-timeline__side--inner {
grid-column: 1;
text-align: right;
}
/* Custom premium card shadow on hover */
.awards-timeline__content {
box-shadow: 0 4px 20px -2px rgba(0, 0, 0, 0.02), 0 2px 6px -1px rgba(0, 0, 0, 0.01);
}
.awards-timeline__item:hover .awards-timeline__content {
transform: translateY(-6px);
border-color: rgba(var(--item-color-rgb), 0.2);
box-shadow: 0 20px 35px -10px rgba(var(--item-color-rgb), 0.12), 0 10px 15px -5px rgba(0,0,0,0.02);
}
.verify-link:hover {
text-decoration: none;
opacity: 0.85;
}
/* Animations reveal */
.awards-timeline__reveal {
opacity: 0;
transform: translate3d(0, 40px, 0);
transition: opacity 0.85s cubic-bezier(0.16, 1, 0.3, 1), transform 0.85s cubic-bezier(0.16, 1, 0.3, 1);
will-change: opacity, transform;
}
.awards-timeline__reveal.is-visible {
opacity: 1;
transform: translate3d(0, 0, 0);
}
/* Dynamic hide class */
.awards-timeline__item.hidden-by-filter {
display: none !important;
}
@media (max-width: 767px) {
.awards-timeline__track::before {
left: 20px;
transform: none;
}
.awards-timeline__item {
grid-template-columns: 40px 1fr;
gap: 0 1rem;
margin-bottom: 2.5rem;
}
.awards-timeline__axis {
grid-column: 1;
align-self: start;
padding-top: 1.5rem;
}
.awards-timeline__item--left .awards-timeline__side--inner,
.awards-timeline__item--right .awards-timeline__side--inner {
grid-column: 2;
text-align: left;
}
}
</style>
@endpush
@push('scripts')
<script>
document.addEventListener('DOMContentLoaded', function() {
// Reveal animation on scroll
const revealElements = document.querySelectorAll('.awards-timeline__reveal');
const revealObserver = new IntersectionObserver(function (entries) {
entries.forEach(function (entry) {
if (entry.isIntersecting) {
entry.target.classList.add('is-visible');
}
});
}, {
root: null,
rootMargin: '0px 0px -8% 0px',
threshold: 0.05,
});
revealElements.forEach(function (element) {
revealObserver.observe(element);
});
// Filter Logic
const filterButtons = document.querySelectorAll('.filter-btn');
const timelineItems = document.querySelectorAll('.awards-timeline__item');
filterButtons.forEach(btn => {
btn.addEventListener('click', function() {
const filter = this.getAttribute('data-filter');
// Toggle active filter classes
filterButtons.forEach(b => {
b.classList.remove('active', 'bg-red', 'text-white');
b.classList.add('text-gray-500', 'hover:text-gray-900', 'hover:bg-slate-50');
});
this.classList.add('active');
this.classList.remove('text-gray-500', 'hover:text-gray-900', 'hover:bg-slate-50');
let visibleIndex = 0;
timelineItems.forEach(item => {
const category = item.getAttribute('data-category');
if (filter === 'all' || category === filter) {
item.classList.remove('hidden-by-filter');
// Re-assign alignment based on visibility index
item.classList.remove('awards-timeline__item--left', 'awards-timeline__item--right');
if (visibleIndex % 2 === 0) {
item.classList.add('awards-timeline__item--right');
} else {
item.classList.add('awards-timeline__item--left');
}
visibleIndex++;
// Re-observe since they might be newly visible
revealObserver.observe(item);
} else {
item.classList.add('hidden-by-filter');
revealObserver.unobserve(item);
}
});
// Scroll slightly to timeline section if filter is clicked and user is above/below it
const targetSec = document.getElementById('awards-timeline-section');
if (window.scrollY > targetSec.offsetTop || window.scrollY + window.innerHeight < targetSec.offsetTop) {
targetSec.scrollIntoView({ behavior: 'smooth', block: 'start' });
}
});
});
});
</script>
@endpush
@endsection