gentelella
Version:
Gentelella Admin is a free to use Bootstrap admin template
893 lines (825 loc) • 44 kB
HTML
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<!-- Meta, title, CSS, favicons, etc. -->
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Gentelella Alela! | </title>
<!-- Bootstrap -->
<!-- Font Awesome -->
<!-- NProgress -->
<!-- Custom styling plus plugins -->
<script type="module" src="/src/main-minimal.js"></script>
</head>
<body class="nav-md page-media-gallery">
<div class="container body">
<div class="main_container">
<div class="col-md-3 left_col">
<div class="left_col scroll-view">
<div class="navbar nav_title" style="border: 0;">
<a href="index.html" class="site_title"><i class="fas fa-paw"></i> <span>Gentelella Alela!</span></a>
</div>
<div class="clearfix"></div>
<!-- menu profile quick info -->
<div class="profile clearfix">
<div class="profile_pic">
<img src="images/img.jpg" alt="..." class="img-circle profile_img">
</div>
<div class="profile_info">
<span>Welcome,</span>
<h2>John Doe</h2>
</div>
</div>
<!-- /menu profile quick info -->
<br />
<!-- sidebar menu -->
<div id="sidebar-menu" class="main_menu_side hidden-print main_menu">
<div class="menu_section">
<h3>General</h3>
<ul class="nav side-menu">
<li><a><i class="fas fa-home"></i> Home <span class="fas fa-chevron-down"></span></a>
<ul class="nav child_menu">
<li><a href="index.html">Dashboard 1</a></li>
<li><a href="index2.html">Dashboard 2</a></li>
<li><a href="index3.html">Dashboard 3</a></li><li><a href="index4.html">Dashboard 4</a></li>
<li><a href="index3.html">Dashboard 3</a></li>
</ul>
<li><a><i class="fas fa-edit"></i> Forms <span class="fas fa-chevron-down"></span></a>
<ul class="nav child_menu">
<li><a href="form.html">General Form</a></li>
<li><a href="form_advanced.html">Advanced Components</a></li>
<li><a href="form_validation.html">Form Validation</a></li>
<li><a href="form_wizards.html">Form Wizard</a></li>
<li><a href="form_upload.html">Form Upload</a></li>
<li><a href="form_buttons.html">Form Buttons</a></li>
</ul>
<li><a><i class="fas fa-desktop"></i> UI Elements <span class="fas fa-chevron-down"></span></a>
<ul class="nav child_menu">
<li><a href="general_elements.html">General Elements</a></li>
<li><a href="media_gallery.html">Media Gallery</a></li>
<li><a href="typography.html">Typography</a></li>
<li><a href="icons.html">Icons</a></li>
<li><a href="widgets.html">Widgets</a></li>
<li><a href="invoice.html">Invoice</a></li>
<li><a href="inbox.html">Inbox</a></li>
<li><a href="calendar.html">Calendar</a></li>
</ul>
<li><a><i class="fas fa-table"></i> Tables <span class="fas fa-chevron-down"></span></a>
<ul class="nav child_menu">
<li><a href="tables.html">Tables</a></li>
<li><a href="tables_dynamic.html">Table Dynamic</a></li>
</ul>
<li><a><i class="fas fa-chart-column"></i> Data Presentation <span class="fas fa-chevron-down"></span></a>
<ul class="nav child_menu">
<li><a href="chartjs.html">Chart JS</a></li>
<li><a href="chartjs2.html">Chart JS2</a></li>
<li><a href="chart3.html">Chart JS3</a></li>
<li><a href="echarts.html">ECharts</a></li>
<li><a href="other_charts.html">Other Charts</a></li>
</ul>
<li><a><i class="fas fa-clone"></i>Layouts <span class="fas fa-chevron-down"></span></a>
<ul class="nav child_menu">
<li><a href="fixed_sidebar.html">Fixed Sidebar</a></li>
<li><a href="fixed_footer.html">Fixed Footer</a></li>
</ul>
</ul>
</div>
<div class="menu_section">
<h3>Live On</h3>
<ul class="nav side-menu">
<li><a><i class="fas fa-bug"></i> Additional Pages <span class="fas fa-chevron-down"></span></a>
<ul class="nav child_menu">
<li><a href="e_commerce.html">E-commerce</a></li>
<li><a href="projects.html">Projects</a></li>
<li><a href="project_detail.html">Project Detail</a></li>
<li><a href="contacts.html">Contacts</a></li>
<li><a href="profile.html">Profile</a></li>
</ul>
<li><a><i class="fas fa-window-restore"></i> Extras <span class="fas fa-chevron-down"></span></a>
<ul class="nav child_menu">
<li><a href="page_403.html">403 Error</a></li>
<li><a href="page_404.html">404 Error</a></li>
<li><a href="page_500.html">500 Error</a></li>
<li><a href="plain_page.html">Plain Page</a></li>
<li><a href="login.html">Login Page</a></li>
<li><a href="pricing_tables.html">Pricing Tables</a></li>
</ul>
<li><a><i class="fas fa-sitemap"></i> Multilevel Menu <span class="fas fa-chevron-down"></span></a>
<ul class="nav child_menu">
<li><a href="#level1_1">Level One</a></li>
<li><a>Level One<span class="fas fa-chevron-down"></span></a>
<ul class="nav child_menu">
<li class="sub_menu"><a href="level2.html">Level Two</a>
<li><a href="#level2_1">Level Two</a>
<li><a href="#level2_2">Level Two</a>
</ul>
<li><a href="#level1_2">Level One</a></li>
</ul>
<li><a href="landing.html"><i class="fas fa-laptop"></i> Landing Page</a></li>
</ul>
</div>
</div>
<!-- /sidebar menu -->
<!-- /menu footer buttons -->
<div class="sidebar-footer hidden-small">
<a data-bs-toggle="tooltip" data-bs-placement="top" title="Settings">
<span class="fas fa-cog" aria-hidden="true"></span>
</a>
<a data-bs-toggle="tooltip" data-bs-placement="top" title="FullScreen">
<span class="fas fa-expand" aria-hidden="true"></span>
</a>
<a data-bs-toggle="tooltip" data-bs-placement="top" title="Lock">
<span class="fas fa-eye-slash" aria-hidden="true"></span>
</a>
<a data-bs-toggle="tooltip" data-bs-placement="top" title="Logout" href="login.html">
<span class="fas fa-power-off" aria-hidden="true"></span>
</a>
</div>
<!-- /menu footer buttons -->
</div>
</div>
<!-- top navigation -->
<div class="top_nav">
<div class="nav_menu">
<div class="nav toggle">
<a id="menu_toggle"><i class="fas fa-bars"></i></a>
</div>
<nav class="nav navbar-nav">
<ul class="navbar-right">
<li class="nav-item dropdown open" style="padding-left: 15px;">
<a href="javascript:;" class="user-profile dropdown-toggle" aria-haspopup="true" id="navbarDropdown" data-bs-toggle="dropdown" aria-expanded="false">
<img src="images/img.jpg" alt="">John Doe
</a>
<div class="dropdown-menu dropdown-usermenu float-end" aria-labelledby="navbarDropdown">
<a class="dropdown-item" href="javascript:;"> Profile</a>
<a class="dropdown-item" href="javascript:;">
<span class="badge bg-red float-end">50%</span>
<span>Settings</span>
</a>
<a class="dropdown-item" href="javascript:;">Help</a>
<a class="dropdown-item" href="login.html"><i class="fas fa-sign-out-alt float-end"></i> Log Out</a>
</div>
<li role="presentation" class="nav-item dropdown open">
<a href="javascript:;" class="dropdown-toggle info-number" id="navbarDropdown1" data-bs-toggle="dropdown" aria-expanded="false">
<i class="fas fa-envelope"></i>
<span class="badge bg-green">6</span>
</a>
<ul class="dropdown-menu list-unstyled msg_list" role="menu" aria-labelledby="navbarDropdown1">
<li class="nav-item">
<a class="dropdown-item">
<span class="image"><img src="images/img.jpg" alt="Profile Image" /></span>
<span>
<span>John Smith</span>
<span class="time">3 mins ago</span>
</span>
<span class="message">
Film festivals used to be do-or-die moments for movie makers. They were where...
</span>
</a>
<li class="nav-item">
<a class="dropdown-item">
<span class="image"><img src="images/img.jpg" alt="Profile Image" /></span>
<span>
<span>John Smith</span>
<span class="time">3 mins ago</span>
</span>
<span class="message">
Film festivals used to be do-or-die moments for movie makers. They were where...
</span>
</a>
<li class="nav-item">
<a class="dropdown-item">
<span class="image"><img src="images/img.jpg" alt="Profile Image" /></span>
<span>
<span>John Smith</span>
<span class="time">3 mins ago</span>
</span>
<span class="message">
Film festivals used to be do-or-die moments for movie makers. They were where...
</span>
</a>
<li class="nav-item">
<a class="dropdown-item">
<span class="image"><img src="images/img.jpg" alt="Profile Image" /></span>
<span>
<span>John Smith</span>
<span class="time">3 mins ago</span>
</span>
<span class="message">
Film festivals used to be do-or-die moments for movie makers. They were where...
</span>
</a>
<li class="nav-item">
<div class="text-center">
<a class="dropdown-item">
<strong>See All Alerts</strong>
<i class="fas fa-angle-right"></i>
</a>
</div>
</ul>
</ul>
</nav>
</div>
</div>
<!-- /top navigation -->
<!-- page content -->
<div class="right_col" role="main">
<div class="">
<div class="page-title">
<div class="title_left">
<h3> Media Gallery <small> gallery design</small> </h3>
</div>
<div class="title_right">
<div class="col-md-5 col-sm-5 mb-3 float-end top_search">
<div class="input-group search-bar-fix">
<input type="text" class="form-control" placeholder="Search gallery...">
<button class="btn btn-outline-secondary" type="button">
<i class="fas fa-search"></i>
</button>
</div>
</div>
</div>
</div>
<div class="clearfix"></div>
<!-- Gallery Filter Bar -->
<div class="row mb-4">
<div class="col-md-12">
<div class="x_panel">
<div class="x_content">
<div class="d-flex justify-content-between align-items-center flex-wrap">
<div class="gallery-filters mb-3 mb-md-0">
<button type="button" class="btn btn-outline-primary active me-2" data-filter="all">
<i class="fas fa-th-large"></i> All Photos
</button>
<button type="button" class="btn btn-outline-primary me-2" data-filter="nature">
<i class="fas fa-leaf"></i> Nature
</button>
<button type="button" class="btn btn-outline-primary me-2" data-filter="architecture">
<i class="fas fa-building"></i> Architecture
</button>
<button type="button" class="btn btn-outline-primary me-2" data-filter="people">
<i class="fas fa-users"></i> People
</button>
<button type="button" class="btn btn-outline-primary" data-filter="abstract">
<i class="fas fa-paint-brush"></i> Abstract
</button>
</div>
<div class="gallery-view-toggle">
<div class="btn-group" role="group">
<button type="button" class="btn btn-outline-secondary active" data-view="grid">
<i class="fas fa-th"></i>
</button>
<button type="button" class="btn btn-outline-secondary" data-view="list">
<i class="fas fa-list"></i>
</button>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- Gallery Grid -->
<div class="row" id="gallery-container">
<!-- Nature Photos -->
<div class="col-lg-4 col-md-6 col-sm-12 mb-4 gallery-item" data-category="nature">
<div class="card gallery-card h-100">
<div class="gallery-image-container">
<img src="images/media.jpg" class="card-img-top gallery-image" alt="Forest Landscape" data-title="Serene Forest" data-description="A peaceful forest landscape with morning mist">
<div class="gallery-overlay">
<div class="gallery-actions">
<button class="btn btn-light btn-sm me-2" data-bs-toggle="tooltip" data-bs-placement="top" title="View Full Size">
<i class="fas fa-expand"></i>
</button>
<button class="btn btn-light btn-sm me-2" data-bs-toggle="tooltip" data-bs-placement="top" title="Download">
<i class="fas fa-download"></i>
</button>
<button class="btn btn-light btn-sm" data-bs-toggle="tooltip" data-bs-placement="top" title="Share">
<i class="fas fa-share"></i>
</button>
</div>
</div>
</div>
<div class="card-body">
<h6 class="card-title mb-2">Serene Forest</h6>
<p class="card-text text-muted small">A peaceful forest landscape with morning mist filtering through ancient trees.</p>
<div class="d-flex justify-content-between align-items-center">
<span class="badge bg-success">Nature</span>
<small class="text-muted">
<i class="fas fa-heart me-1"></i> 45
<i class="fas fa-eye ms-2 me-1"></i> 234
</small>
</div>
</div>
</div>
</div>
<div class="col-lg-4 col-md-6 col-sm-12 mb-4 gallery-item" data-category="architecture">
<div class="card gallery-card h-100">
<div class="gallery-image-container">
<img src="images/media.jpg" class="card-img-top gallery-image" alt="Modern Building" data-title="Urban Architecture" data-description="Contemporary glass building with geometric patterns">
<div class="gallery-overlay">
<div class="gallery-actions">
<button class="btn btn-light btn-sm me-2" data-bs-toggle="tooltip" data-bs-placement="top" title="View Full Size">
<i class="fas fa-expand"></i>
</button>
<button class="btn btn-light btn-sm me-2" data-bs-toggle="tooltip" data-bs-placement="top" title="Download">
<i class="fas fa-download"></i>
</button>
<button class="btn btn-light btn-sm" data-bs-toggle="tooltip" data-bs-placement="top" title="Share">
<i class="fas fa-share"></i>
</button>
</div>
</div>
</div>
<div class="card-body">
<h6 class="card-title mb-2">Urban Architecture</h6>
<p class="card-text text-muted small">Contemporary glass building showcasing modern architectural design principles.</p>
<div class="d-flex justify-content-between align-items-center">
<span class="badge bg-primary">Architecture</span>
<small class="text-muted">
<i class="fas fa-heart me-1"></i> 67
<i class="fas fa-eye ms-2 me-1"></i> 189
</small>
</div>
</div>
</div>
</div>
<div class="col-lg-4 col-md-6 col-sm-12 mb-4 gallery-item" data-category="people">
<div class="card gallery-card h-100">
<div class="gallery-image-container">
<img src="images/media.jpg" class="card-img-top gallery-image" alt="Portrait" data-title="Street Portrait" data-description="Candid street photography capturing human emotion">
<div class="gallery-overlay">
<div class="gallery-actions">
<button class="btn btn-light btn-sm me-2" data-bs-toggle="tooltip" data-bs-placement="top" title="View Full Size">
<i class="fas fa-expand"></i>
</button>
<button class="btn btn-light btn-sm me-2" data-bs-toggle="tooltip" data-bs-placement="top" title="Download">
<i class="fas fa-download"></i>
</button>
<button class="btn btn-light btn-sm" data-bs-toggle="tooltip" data-bs-placement="top" title="Share">
<i class="fas fa-share"></i>
</button>
</div>
</div>
</div>
<div class="card-body">
<h6 class="card-title mb-2">Street Portrait</h6>
<p class="card-text text-muted small">Candid street photography capturing authentic human emotion and expression.</p>
<div class="d-flex justify-content-between align-items-center">
<span class="badge bg-warning">People</span>
<small class="text-muted">
<i class="fas fa-heart me-1"></i> 92
<i class="fas fa-eye ms-2 me-1"></i> 356
</small>
</div>
</div>
</div>
</div>
<div class="col-lg-4 col-md-6 col-sm-12 mb-4 gallery-item" data-category="abstract">
<div class="card gallery-card h-100">
<div class="gallery-image-container">
<img src="images/media.jpg" class="card-img-top gallery-image" alt="Abstract Art" data-title="Color Symphony" data-description="Abstract composition with vibrant colors and flowing forms">
<div class="gallery-overlay">
<div class="gallery-actions">
<button class="btn btn-light btn-sm me-2" data-bs-toggle="tooltip" data-bs-placement="top" title="View Full Size">
<i class="fas fa-expand"></i>
</button>
<button class="btn btn-light btn-sm me-2" data-bs-toggle="tooltip" data-bs-placement="top" title="Download">
<i class="fas fa-download"></i>
</button>
<button class="btn btn-light btn-sm" data-bs-toggle="tooltip" data-bs-placement="top" title="Share">
<i class="fas fa-share"></i>
</button>
</div>
</div>
</div>
<div class="card-body">
<h6 class="card-title mb-2">Color Symphony</h6>
<p class="card-text text-muted small">Abstract composition featuring vibrant colors and flowing organic forms.</p>
<div class="d-flex justify-content-between align-items-center">
<span class="badge bg-info">Abstract</span>
<small class="text-muted">
<i class="fas fa-heart me-1"></i> 78
<i class="fas fa-eye ms-2 me-1"></i> 245
</small>
</div>
</div>
</div>
</div>
<div class="col-lg-4 col-md-6 col-sm-12 mb-4 gallery-item" data-category="nature">
<div class="card gallery-card h-100">
<div class="gallery-image-container">
<img src="images/media.jpg" class="card-img-top gallery-image" alt="Mountain View" data-title="Mountain Peaks" data-description="Majestic mountain range during golden hour">
<div class="gallery-overlay">
<div class="gallery-actions">
<button class="btn btn-light btn-sm me-2" data-bs-toggle="tooltip" data-bs-placement="top" title="View Full Size">
<i class="fas fa-expand"></i>
</button>
<button class="btn btn-light btn-sm me-2" data-bs-toggle="tooltip" data-bs-placement="top" title="Download">
<i class="fas fa-download"></i>
</button>
<button class="btn btn-light btn-sm" data-bs-toggle="tooltip" data-bs-placement="top" title="Share">
<i class="fas fa-share"></i>
</button>
</div>
</div>
</div>
<div class="card-body">
<h6 class="card-title mb-2">Mountain Peaks</h6>
<p class="card-text text-muted small">Majestic mountain range captured during the magical golden hour light.</p>
<div class="d-flex justify-content-between align-items-center">
<span class="badge bg-success">Nature</span>
<small class="text-muted">
<i class="fas fa-heart me-1"></i> 134
<i class="fas fa-eye ms-2 me-1"></i> 567
</small>
</div>
</div>
</div>
</div>
<div class="col-lg-4 col-md-6 col-sm-12 mb-4 gallery-item" data-category="architecture">
<div class="card gallery-card h-100">
<div class="gallery-image-container">
<img src="images/media.jpg" class="card-img-top gallery-image" alt="Historic Architecture" data-title="Gothic Cathedral" data-description="Medieval cathedral with intricate stone work">
<div class="gallery-overlay">
<div class="gallery-actions">
<button class="btn btn-light btn-sm me-2" data-bs-toggle="tooltip" data-bs-placement="top" title="View Full Size">
<i class="fas fa-expand"></i>
</button>
<button class="btn btn-light btn-sm me-2" data-bs-toggle="tooltip" data-bs-placement="top" title="Download">
<i class="fas fa-download"></i>
</button>
<button class="btn btn-light btn-sm" data-bs-toggle="tooltip" data-bs-placement="top" title="Share">
<i class="fas fa-share"></i>
</button>
</div>
</div>
</div>
<div class="card-body">
<h6 class="card-title mb-2">Gothic Cathedral</h6>
<p class="card-text text-muted small">Medieval cathedral featuring intricate stone work and soaring spires.</p>
<div class="d-flex justify-content-between align-items-center">
<span class="badge bg-primary">Architecture</span>
<small class="text-muted">
<i class="fas fa-heart me-1"></i> 89
<i class="fas fa-eye ms-2 me-1"></i> 423
</small>
</div>
</div>
</div>
</div>
<div class="col-lg-4 col-md-6 col-sm-12 mb-4 gallery-item" data-category="people">
<div class="card gallery-card h-100">
<div class="gallery-image-container">
<img src="images/media.jpg" class="card-img-top gallery-image" alt="Group Photo" data-title="Community" data-description="People gathering in urban plaza">
<div class="gallery-overlay">
<div class="gallery-actions">
<button class="btn btn-light btn-sm me-2" data-bs-toggle="tooltip" data-bs-placement="top" title="View Full Size">
<i class="fas fa-expand"></i>
</button>
<button class="btn btn-light btn-sm me-2" data-bs-toggle="tooltip" data-bs-placement="top" title="Download">
<i class="fas fa-download"></i>
</button>
<button class="btn btn-light btn-sm" data-bs-toggle="tooltip" data-bs-placement="top" title="Share">
<i class="fas fa-share"></i>
</button>
</div>
</div>
</div>
<div class="card-body">
<h6 class="card-title mb-2">Community</h6>
<p class="card-text text-muted small">People gathering and socializing in a vibrant urban plaza setting.</p>
<div class="d-flex justify-content-between align-items-center">
<span class="badge bg-warning">People</span>
<small class="text-muted">
<i class="fas fa-heart me-1"></i> 156
<i class="fas fa-eye ms-2 me-1"></i> 678
</small>
</div>
</div>
</div>
</div>
<div class="col-lg-4 col-md-6 col-sm-12 mb-4 gallery-item" data-category="abstract">
<div class="card gallery-card h-100">
<div class="gallery-image-container">
<img src="images/media.jpg" class="card-img-top gallery-image" alt="Digital Art" data-title="Digital Dreams" data-description="Contemporary digital art with geometric patterns">
<div class="gallery-overlay">
<div class="gallery-actions">
<button class="btn btn-light btn-sm me-2" data-bs-toggle="tooltip" data-bs-placement="top" title="View Full Size">
<i class="fas fa-expand"></i>
</button>
<button class="btn btn-light btn-sm me-2" data-bs-toggle="tooltip" data-bs-placement="top" title="Download">
<i class="fas fa-download"></i>
</button>
<button class="btn btn-light btn-sm" data-bs-toggle="tooltip" data-bs-placement="top" title="Share">
<i class="fas fa-share"></i>
</button>
</div>
</div>
</div>
<div class="card-body">
<h6 class="card-title mb-2">Digital Dreams</h6>
<p class="card-text text-muted small">Contemporary digital art featuring intricate geometric patterns and gradients.</p>
<div class="d-flex justify-content-between align-items-center">
<span class="badge bg-info">Abstract</span>
<small class="text-muted">
<i class="fas fa-heart me-1"></i> 203
<i class="fas fa-eye ms-2 me-1"></i> 789
</small>
</div>
</div>
</div>
</div>
<div class="col-lg-4 col-md-6 col-sm-12 mb-4 gallery-item" data-category="nature">
<div class="card gallery-card h-100">
<div class="gallery-image-container">
<img src="images/media.jpg" class="card-img-top gallery-image" alt="Ocean Sunset" data-title="Ocean Sunset" data-description="Breathtaking sunset over calm ocean waters">
<div class="gallery-overlay">
<div class="gallery-actions">
<button class="btn btn-light btn-sm me-2" data-bs-toggle="tooltip" data-bs-placement="top" title="View Full Size">
<i class="fas fa-expand"></i>
</button>
<button class="btn btn-light btn-sm me-2" data-bs-toggle="tooltip" data-bs-placement="top" title="Download">
<i class="fas fa-download"></i>
</button>
<button class="btn btn-light btn-sm" data-bs-toggle="tooltip" data-bs-placement="top" title="Share">
<i class="fas fa-share"></i>
</button>
</div>
</div>
</div>
<div class="card-body">
<h6 class="card-title mb-2">Ocean Sunset</h6>
<p class="card-text text-muted small">Breathtaking sunset view over calm ocean waters with golden reflections.</p>
<div class="d-flex justify-content-between align-items-center">
<span class="badge bg-success">Nature</span>
<small class="text-muted">
<i class="fas fa-heart me-1"></i> 298
<i class="fas fa-eye ms-2 me-1"></i> 1.2k
</small>
</div>
</div>
</div>
</div>
</div>
<!-- Pagination -->
<div class="row">
<div class="col-md-12">
<nav aria-label="Gallery pagination">
<ul class="pagination justify-content-center">
<li class="page-item disabled">
<a class="page-link" href="#" tabindex="-1" aria-disabled="true">
<i class="fas fa-chevron-left"></i>
</a>
<li class="page-item active"><a class="page-link" href="#">1</a></li>
<li class="page-item"><a class="page-link" href="#">2</a></li>
<li class="page-item"><a class="page-link" href="#">3</a></li>
<li class="page-item">
<a class="page-link" href="#">
<i class="fas fa-chevron-right"></i>
</a>
</ul>
</nav>
</div>
</div>
</div>
</div>
<!-- /page content -->
<!-- footer content -->
<footer>
<div class="float-end">
Gentelella - Bootstrap Admin Template by <a href="https://colorlib.com">Colorlib</a>
</div>
<div class="clearfix"></div>
</footer>
<!-- /footer content -->
</div>
</div>
<!-- Image Modal for Lightbox -->
<div class="modal fade" id="imageModal" tabindex="-1" aria-labelledby="imageModalLabel" aria-hidden="true">
<div class="modal-dialog modal-xl modal-dialog-centered">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="imageModalLabel">Image Title</h5>
<button type="button" class="btn-btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<div class="modal-body text-center">
<img src="" class="img-fluid" id="modalImage" alt="">
<p class="mt-3 text-muted" id="modalDescription"></p>
</div>
<div class="modal-footer justify-content-between">
<div>
<button class="btn btn-outline-primary btn-sm">
<i class="fas fa-heart"></i> Like
</button>
<button class="btn btn-outline-secondary btn-sm">
<i class="fas fa-download"></i> Download
</button>
<button class="btn btn-outline-info btn-sm">
<i class="fas fa-share"></i> Share
</button>
</div>
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
</div>
</div>
</div>
</div>
<!-- Compiled JavaScript (includes jQuery, Bootstrap, and all vendor scripts) -->
<script type="module">
document.addEventListener('DOMContentLoaded', () => {
// Initialize tooltips
const tooltipTriggerList = Array.from(document.querySelectorAll('[data-bs-toggle="tooltip"]'));
tooltipTriggerList.forEach(el => new bootstrap.Tooltip(el));
// Gallery filtering
const filterButtons = document.querySelectorAll('[data-filter]');
const galleryItems = document.querySelectorAll('.gallery-item');
filterButtons.forEach(button => {
button.addEventListener('click', () => {
const filter = button.getAttribute('data-filter');
// Update active filter button
filterButtons.forEach(btn => btn.classList.remove('active'));
button.classList.add('active');
// Filter gallery items
galleryItems.forEach(item => {
const category = item.getAttribute('data-category');
if (filter === 'all' || category === filter) {
item.style.display = 'block';
item.classList.add('fade-in');
} else {
item.style.display = 'none';
item.classList.remove('fade-in');
}
});
});
});
// View toggle (grid/list)
const viewButtons = document.querySelectorAll('[data-view]');
const galleryContainer = document.getElementById('gallery-container');
viewButtons.forEach(button => {
button.addEventListener('click', () => {
const view = button.getAttribute('data-view');
// Update active view button
viewButtons.forEach(btn => btn.classList.remove('active'));
button.classList.add('active');
// Apply view changes
if (view === 'list') {
galleryContainer.classList.add('list-view');
galleryItems.forEach(item => {
item.className = 'col-12 mb-3 gallery-item';
});
} else {
galleryContainer.classList.remove('list-view');
galleryItems.forEach(item => {
item.className = 'col-lg-4 col-md-6 col-sm-12 mb-4 gallery-item';
});
}
});
});
// Image modal functionality
const imageModal = document.getElementById('imageModal');
const modalTitle = document.getElementById('imageModalLabel');
const modalImage = document.getElementById('modalImage');
const modalDescription = document.getElementById('modalDescription');
// Handle image clicks for lightbox
document.querySelectorAll('.gallery-image').forEach(img => {
img.addEventListener('click', (e) => {
e.preventDefault();
const title = img.getAttribute('data-title');
const description = img.getAttribute('data-description');
const src = img.src;
modalTitle.textContent = title;
modalImage.src = src;
modalDescription.textContent = description;
// Show the modal
const modal = new bootstrap.Modal(imageModal);
modal.show();
});
});
// Also handle clicks on the expand buttons in overlay
document.querySelectorAll('.gallery-actions .btn').forEach(btn => {
if (btn.title === 'View Full Size' || btn.getAttribute('data-bs-original-title') === 'View Full Size') {
btn.addEventListener('click', (e) => {
e.preventDefault();
e.stopPropagation();
const img = btn.closest('.gallery-image-container').querySelector('.gallery-image');
const title = img.getAttribute('data-title');
const description = img.getAttribute('data-description');
const src = img.src;
modalTitle.textContent = title;
modalImage.src = src;
modalDescription.textContent = description;
// Show the modal
const modal = new bootstrap.Modal(imageModal);
modal.show();
});
}
});
// Search functionality
const searchInput = document.querySelector('input[placeholder="Search gallery..."]');
if (searchInput) {
searchInput.addEventListener('input', (e) => {
const searchTerm = e.target.value.toLowerCase();
galleryItems.forEach(item => {
const title = item.querySelector('.card-title').textContent.toLowerCase();
const description = item.querySelector('.card-text').textContent.toLowerCase();
const category = item.getAttribute('data-category').toLowerCase();
if (title.includes(searchTerm) || description.includes(searchTerm) || category.includes(searchTerm)) {
item.style.display = 'block';
} else {
item.style.display = 'none';
}
});
});
}
// Hover effects for gallery cards
document.querySelectorAll('.gallery-card').forEach(card => {
card.addEventListener('mouseenter', () => {
card.style.transform = 'translateY(-5px)';
card.style.boxShadow = '0 8px 25px rgba(0,0,0,0.15)';
});
card.addEventListener('mouseleave', () => {
card.style.transform = 'translateY(0)';
card.style.boxShadow = '0 2px 10px rgba(0,0,0,0.1)';
});
});
});
</script>
<style>
.gallery-card {
transition: all 0.3s ease;
border: none;
box-shadow: 0 2px 10px rgba(0,0,0,0.1);
}
.gallery-image-container {
position: relative;
overflow: hidden;
}
.gallery-image {
height: 250px;
object-fit: cover;
transition: transform 0.3s ease;
cursor: pointer;
}
.gallery-overlay {
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: rgba(0,0,0,0.7);
display: flex;
align-items: center;
justify-content: center;
opacity: 0;
transition: opacity 0.3s ease;
}
.gallery-image-container:hover .gallery-overlay {
opacity: 1;
}
.gallery-image-container:hover .gallery-image {
transform: scale(1.05);
}
.gallery-actions {
display: flex;
gap: 0.5rem;
}
.fade-in {
animation: fadeIn 0.5s ease-in;
}
@keyframes fadeIn {
from { opacity: 0; transform: translateY(20px); }
to { opacity: 1; transform: translateY(0); }
}
.list-view .gallery-card {
display: flex;
flex-direction: row;
max-height: 200px;
}
.list-view .gallery-image-container {
flex: 0 0 300px;
}
.list-view .gallery-image {
height: 200px;
width: 300px;
}
.list-view .card-body {
flex: 1;
display: flex;
flex-direction: column;
justify-content: space-between;
}
.btn-outline-primary.active {
background-color: var(--bs-primary);
color: white;
border-color: var(--bs-primary);
}
.btn-outline-secondary.active {
background-color: var(--bs-secondary);
color: white;
border-color: var(--bs-secondary);
}
</style>
</body>
</html>