Add portfolio logic

This commit is contained in:
Alexander Hosking 2022-07-13 02:28:07 -04:00
parent facb3ce6c7
commit a6dbd0a7c1
27 changed files with 484 additions and 253 deletions

View File

@ -42,7 +42,7 @@
<link rel="stylesheet" href="/static/css/rev-settings.css"type="text/css"> <link rel="stylesheet" href="/static/css/rev-settings.css"type="text/css">
</head> </head>
<body id="homepage"> <body id="homepage" class="page-projects">
<div id="wrapper"> <div id="wrapper">
@ -206,7 +206,7 @@
<li><a href="pricing-4-cols.html">Pricing 4 Cols</a></li> <li><a href="pricing-4-cols.html">Pricing 4 Cols</a></li>
</ul> </ul>
</li> --> </li> -->
<li><a href="/gallery/">Gallery</a></li> <li><a href="/portfolio/">Gallery</a></li>
<!-- <li><a href="blog.html">Blog</a></li> <!-- <li><a href="blog.html">Blog</a></li>
<li><a href="shop.html">Shop</a></li> <li><a href="shop.html">Shop</a></li>
<li><a href="contact.html">Contact</a></li> --> <li><a href="contact.html">Contact</a></li> -->
@ -221,7 +221,7 @@
</header> </header>
<!-- header close --> <!-- header close -->
<main class="content">
<!-- child template --> <!-- child template -->
@ -412,7 +412,7 @@
<!-- section close --> <!-- section close -->
</main>

View File

@ -42,7 +42,7 @@
<link rel="stylesheet" href="/static/css/rev-settings.css"type="text/css"> <link rel="stylesheet" href="/static/css/rev-settings.css"type="text/css">
</head> </head>
<body id="homepage"> <body id="homepage" class="page-projects">
<div id="wrapper"> <div id="wrapper">
@ -206,7 +206,7 @@
<li><a href="pricing-4-cols.html">Pricing 4 Cols</a></li> <li><a href="pricing-4-cols.html">Pricing 4 Cols</a></li>
</ul> </ul>
</li> --> </li> -->
<li><a href="/gallery/">Gallery</a></li> <li><a href="/portfolio/">Gallery</a></li>
<!-- <li><a href="blog.html">Blog</a></li> <!-- <li><a href="blog.html">Blog</a></li>
<li><a href="shop.html">Shop</a></li> <li><a href="shop.html">Shop</a></li>
<li><a href="contact.html">Contact</a></li> --> <li><a href="contact.html">Contact</a></li> -->
@ -221,13 +221,389 @@
</header> </header>
<!-- header close --> <!-- header close -->
<main class="content">
<!-- child template --> <!-- child template -->
<body class="page-projects">
<!-- subheader -->
<section id="subheader" data-speed="8" data-type="background">
<div class="container">
<div class="row">
<div class="col-md-12">
<h1>Gallery</h1>
<ul class="crumb">
<li><a href="index.html">Home</a></li>
<li class="sep">/</li>
<li>Gallery</li>
</ul>
</div>
</div>
</div>
</section>
<!-- subheader close -->
<!-- content begin -->
<div id="content" class="no-top no-bottom">
<!-- section begin -->
<section id="section-portfolio" class="no-top no-bottom" aria-label="section-portfolio">
<div class="container">
<div class="spacer-single"></div>
<!-- portfolio filter begin -->
<div class="row">
<div class="col-md-12 text-center">
<ul id="filters" class="wow fadeInUp" data-wow-delay="0s">
<li><a href="#" data-filter="*" class="selected">All Projects</a></li>
<li><a href="#" data-filter=".residential">Residential</a></li>
<!-- <li><a href="#" data-filter=".hospitaly">Hospitaly</a></li>
<li><a href="#" data-filter=".office">Office</a></li>
<li><a href="#" data-filter=".commercial">Commercial</a></li> -->
</ul>
</div>
</div>
<!-- portfolio filter close -->
<div id="gallery" class="row grid_gallery gallery de-gallery wow fadeInUp" data-wow-delay=".3s">
<!-- gallery item -->
<div class="col-md-3 item residential">
<div class="picframe">
<a class="image-popup-gallery" href="../portfolio/residential/residential(15).jpeg">
<span class="overlay">
<span class="pf_text">
<span class="project-name"></span>
</span>
</span>
</a>
<img src="/portfolio/residential/residential(15).jpeg" alt="" />
</div>
</div>
<!-- close gallery item -->
<!-- gallery item -->
<div class="col-md-3 item residential">
<div class="picframe">
<a class="image-popup-gallery" href="../portfolio/residential/residential(17).jpeg">
<span class="overlay">
<span class="pf_text">
<span class="project-name"></span>
</span>
</span>
</a>
<img src="/portfolio/residential/residential(17).jpeg" alt="" />
</div>
</div>
<!-- close gallery item -->
<!-- gallery item -->
<div class="col-md-3 item residential">
<div class="picframe">
<a class="image-popup-gallery" href="../portfolio/residential/residential(18).jpeg">
<span class="overlay">
<span class="pf_text">
<span class="project-name"></span>
</span>
</span>
</a>
<img src="/portfolio/residential/residential(18).jpeg" alt="" />
</div>
</div>
<!-- close gallery item -->
<!-- gallery item -->
<div class="col-md-3 item residential">
<div class="picframe">
<a class="image-popup-gallery" href="../portfolio/residential/residential(13).jpeg">
<span class="overlay">
<span class="pf_text">
<span class="project-name"></span>
</span>
</span>
</a>
<img src="/portfolio/residential/residential(13).jpeg" alt="" />
</div>
</div>
<!-- close gallery item -->
<!-- gallery item -->
<div class="col-md-3 item residential">
<div class="picframe">
<a class="image-popup-gallery" href="../portfolio/residential/residential(11).jpeg">
<span class="overlay">
<span class="pf_text">
<span class="project-name"></span>
</span>
</span>
</a>
<img src="/portfolio/residential/residential(11).jpeg" alt="" />
</div>
</div>
<!-- close gallery item -->
<!-- gallery item -->
<div class="col-md-3 item residential">
<div class="picframe">
<a class="image-popup-gallery" href="../portfolio/residential/residential(12).jpeg">
<span class="overlay">
<span class="pf_text">
<span class="project-name"></span>
</span>
</span>
</a>
<img src="/portfolio/residential/residential(12).jpeg" alt="" />
</div>
</div>
<!-- close gallery item -->
<!-- gallery item -->
<div class="col-md-3 item residential">
<div class="picframe">
<a class="image-popup-gallery" href="../portfolio/residential/residential(3).jpeg">
<span class="overlay">
<span class="pf_text">
<span class="project-name"></span>
</span>
</span>
</a>
<img src="/portfolio/residential/residential(3).jpeg" alt="" />
</div>
</div>
<!-- close gallery item -->
<!-- gallery item -->
<div class="col-md-3 item residential">
<div class="picframe">
<a class="image-popup-gallery" href="../portfolio/residential/residential(5).jpeg">
<span class="overlay">
<span class="pf_text">
<span class="project-name"></span>
</span>
</span>
</a>
<img src="/portfolio/residential/residential(5).jpeg" alt="" />
</div>
</div>
<!-- close gallery item -->
<!-- gallery item -->
<div class="col-md-3 item residential">
<div class="picframe">
<a class="image-popup-gallery" href="../portfolio/residential/residential(4).jpeg">
<span class="overlay">
<span class="pf_text">
<span class="project-name"></span>
</span>
</span>
</a>
<img src="/portfolio/residential/residential(4).jpeg" alt="" />
</div>
</div>
<!-- close gallery item -->
<!-- gallery item -->
<div class="col-md-3 item residential">
<div class="picframe">
<a class="image-popup-gallery" href="../portfolio/residential/residential(10).jpeg">
<span class="overlay">
<span class="pf_text">
<span class="project-name"></span>
</span>
</span>
</a>
<img src="/portfolio/residential/residential(10).jpeg" alt="" />
</div>
</div>
<!-- close gallery item -->
<!-- gallery item -->
<div class="col-md-3 item residential">
<div class="picframe">
<a class="image-popup-gallery" href="../portfolio/residential/residential(16).jpeg">
<span class="overlay">
<span class="pf_text">
<span class="project-name"></span>
</span>
</span>
</a>
<img src="/portfolio/residential/residential(16).jpeg" alt="" />
</div>
</div>
<!-- close gallery item -->
<!-- gallery item -->
<div class="col-md-3 item residential">
<div class="picframe">
<a class="image-popup-gallery" href="../portfolio/residential/residential(20).jpeg">
<span class="overlay">
<span class="pf_text">
<span class="project-name"></span>
</span>
</span>
</a>
<img src="/portfolio/residential/residential(20).jpeg" alt="" />
</div>
</div>
<!-- close gallery item -->
<!-- gallery item -->
<div class="col-md-3 item residential">
<div class="picframe">
<a class="image-popup-gallery" href="../portfolio/residential/residential(21).jpeg">
<span class="overlay">
<span class="pf_text">
<span class="project-name"></span>
</span>
</span>
</a>
<img src="/portfolio/residential/residential(21).jpeg" alt="" />
</div>
</div>
<!-- close gallery item -->
<!-- gallery item -->
<div class="col-md-3 item residential">
<div class="picframe">
<a class="image-popup-gallery" href="../portfolio/residential/residential(2).jpeg">
<span class="overlay">
<span class="pf_text">
<span class="project-name"></span>
</span>
</span>
</a>
<img src="/portfolio/residential/residential(2).jpeg" alt="" />
</div>
</div>
<!-- close gallery item -->
<!-- gallery item -->
<div class="col-md-3 item residential">
<div class="picframe">
<a class="image-popup-gallery" href="../portfolio/residential/residential(14).jpeg">
<span class="overlay">
<span class="pf_text">
<span class="project-name"></span>
</span>
</span>
</a>
<img src="/portfolio/residential/residential(14).jpeg" alt="" />
</div>
</div>
<!-- close gallery item -->
<!-- gallery item -->
<div class="col-md-3 item residential">
<div class="picframe">
<a class="image-popup-gallery" href="../portfolio/residential/residential(9).jpeg">
<span class="overlay">
<span class="pf_text">
<span class="project-name"></span>
</span>
</span>
</a>
<img src="/portfolio/residential/residential(9).jpeg" alt="" />
</div>
</div>
<!-- close gallery item -->
<!-- gallery item -->
<div class="col-md-3 item residential">
<div class="picframe">
<a class="image-popup-gallery" href="../portfolio/residential/residential(1).jpeg">
<span class="overlay">
<span class="pf_text">
<span class="project-name"></span>
</span>
</span>
</a>
<img src="/portfolio/residential/residential(1).jpeg" alt="" />
</div>
</div>
<!-- close gallery item -->
<!-- gallery item -->
<div class="col-md-3 item residential">
<div class="picframe">
<a class="image-popup-gallery" href="../portfolio/residential/residential(8).jpeg">
<span class="overlay">
<span class="pf_text">
<span class="project-name"></span>
</span>
</span>
</a>
<img src="/portfolio/residential/residential(8).jpeg" alt="" />
</div>
</div>
<!-- close gallery item -->
<!-- gallery item -->
<div class="col-md-3 item residential">
<div class="picframe">
<a class="image-popup-gallery" href="../portfolio/residential/residential(7).jpeg">
<span class="overlay">
<span class="pf_text">
<span class="project-name"></span>
</span>
</span>
</a>
<img src="/portfolio/residential/residential(7).jpeg" alt="" />
</div>
</div>
<!-- close gallery item -->
<!-- gallery item -->
<div class="col-md-3 item residential">
<div class="picframe">
<a class="image-popup-gallery" href="../portfolio/residential/residential(19).jpeg">
<span class="overlay">
<span class="pf_text">
<span class="project-name"></span>
</span>
</span>
</a>
<img src="/portfolio/residential/residential(19).jpeg" alt="" />
</div>
</div>
<!-- close gallery item -->
<!-- gallery item -->
<div class="col-md-3 item residential">
<div class="picframe">
<a class="image-popup-gallery" href="../portfolio/residential/residential(6).jpeg">
<span class="overlay">
<span class="pf_text">
<span class="project-name"></span>
</span>
</span>
</a>
<img src="/portfolio/residential/residential(6).jpeg" alt="" />
</div>
</div>
<!-- close gallery item -->
</div>
</div>
</section>
<!-- section close -->
<!-- section begin -->
<!-- <section id="call-to-action" class="call-to-action bg-color dark text-center" data-speed="5" data-type="background" aria-label="call-to-action">
<a href="contact.html" class="btn btn-line-black btn-big">Get Quotation</a>
</section> -->
<!-- logo carousel section close -->
</div>
</main>

View File

Before

Width:  |  Height:  |  Size: 342 KiB

After

Width:  |  Height:  |  Size: 342 KiB

View File

Before

Width:  |  Height:  |  Size: 335 KiB

After

Width:  |  Height:  |  Size: 335 KiB

View File

Before

Width:  |  Height:  |  Size: 341 KiB

After

Width:  |  Height:  |  Size: 341 KiB

View File

Before

Width:  |  Height:  |  Size: 270 KiB

After

Width:  |  Height:  |  Size: 270 KiB

View File

Before

Width:  |  Height:  |  Size: 377 KiB

After

Width:  |  Height:  |  Size: 377 KiB

View File

Before

Width:  |  Height:  |  Size: 231 KiB

After

Width:  |  Height:  |  Size: 231 KiB

View File

Before

Width:  |  Height:  |  Size: 280 KiB

After

Width:  |  Height:  |  Size: 280 KiB

View File

Before

Width:  |  Height:  |  Size: 203 KiB

After

Width:  |  Height:  |  Size: 203 KiB

View File

Before

Width:  |  Height:  |  Size: 187 KiB

After

Width:  |  Height:  |  Size: 187 KiB

View File

Before

Width:  |  Height:  |  Size: 250 KiB

After

Width:  |  Height:  |  Size: 250 KiB

View File

Before

Width:  |  Height:  |  Size: 459 KiB

After

Width:  |  Height:  |  Size: 459 KiB

View File

Before

Width:  |  Height:  |  Size: 52 KiB

After

Width:  |  Height:  |  Size: 52 KiB

View File

Before

Width:  |  Height:  |  Size: 420 KiB

After

Width:  |  Height:  |  Size: 420 KiB

View File

Before

Width:  |  Height:  |  Size: 270 KiB

After

Width:  |  Height:  |  Size: 270 KiB

View File

Before

Width:  |  Height:  |  Size: 338 KiB

After

Width:  |  Height:  |  Size: 338 KiB

View File

Before

Width:  |  Height:  |  Size: 307 KiB

After

Width:  |  Height:  |  Size: 307 KiB

View File

Before

Width:  |  Height:  |  Size: 323 KiB

After

Width:  |  Height:  |  Size: 323 KiB

View File

Before

Width:  |  Height:  |  Size: 220 KiB

After

Width:  |  Height:  |  Size: 220 KiB

View File

Before

Width:  |  Height:  |  Size: 244 KiB

After

Width:  |  Height:  |  Size: 244 KiB

View File

Before

Width:  |  Height:  |  Size: 226 KiB

After

Width:  |  Height:  |  Size: 226 KiB

View File

Before

Width:  |  Height:  |  Size: 362 KiB

After

Width:  |  Height:  |  Size: 362 KiB

View File

@ -1,5 +1,7 @@
from . import portfolio_blueprint from . import portfolio_blueprint
from flask import render_template, abort from flask import render_template, abort, send_from_directory
from os import listdir
import os
categories = ['residential', 'commercial', 'office', 'industrial'] categories = ['residential', 'commercial', 'office', 'industrial']
@ -7,6 +9,21 @@ categories = ['residential', 'commercial', 'office', 'industrial']
def index(): def index():
return render_template('index.html') return render_template('index.html')
@portfolio_blueprint.route('/gallery/') @portfolio_blueprint.route('/portfolio/')
def gallery(): def gallery():
return render_template('gallery.html') photos = listdir('portfolio/residential')
return render_template('gallery.html', photos=photos)
def photo_generator():
for photo in listdir('portfolio/residential'):
path = photo
yield ('show_photo', {'category':'residential', 'filename':path})
@portfolio_blueprint.route('/portfolio/<category>/<path:filename>')
def show_photo(category, filename):
root_dir = os.getcwd()
# print(os.getcwd())
# print(os.path.join(os.getcwd(), 'portfolio', category, filename))
# print(listdir('portfolio/residential'))
return send_from_directory(os.path.join(root_dir, 'portfolio', category), filename)

View File

@ -1,238 +0,0 @@
{% extends "gallery.html" %}
{% block content %}
<!-- content begin -->
<div id="content" class="no-top no-bottom">
<!-- section begin -->
<section id="section-portfolio" class="no-top no-bottom" aria-label="section-portfolio">
<div class="container">
<div class="spacer-single"></div>
<!-- portfolio filter begin -->
<div class="row">
<div class="col-md-12 text-center">
<ul id="filters" class="wow fadeInUp" data-wow-delay="0s">
<li><a href="#" data-filter="*" class="selected">All Projects</a></li>
<li><a href="#" data-filter=".residential">Residential</a></li>
<li><a href="#" data-filter=".hospitaly">Hospitaly</a></li>
<li><a href="#" data-filter=".office">Office</a></li>
<li><a href="#" data-filter=".commercial">Commercial</a></li>
</ul>
</div>
</div>
<!-- portfolio filter close -->
<div id="gallery" class="row grid_gallery gallery de-gallery wow fadeInUp" data-wow-delay=".3s">
<!-- gallery item -->
<div class="col-md-3 item residential">
<div class="picframe">
<a class="image-popup-gallery" href="images/portfolio/pf%20(1).jpg">
<span class="overlay">
<span class="pf_text">
<span class="project-name">Eco Green Interior</span>
</span>
</span>
</a>
<img src="images/portfolio/pf%20(1).jpg" alt="" />
</div>
</div>
<!-- close gallery item -->
<!-- gallery item -->
<div class="col-md-3 item hospitaly">
<div class="picframe">
<a class="image-popup-gallery" href="images/portfolio/pf%20(2).jpg">
<span class="overlay">
<span class="pf_text">
<span class="project-name">Modern Elegance Suite</span>
</span>
</span>
</a>
<img src="images/portfolio/pf%20(2).jpg" alt="" />
</div>
</div>
<!-- close gallery item -->
<!-- gallery item -->
<div class="col-md-3 item hospitaly">
<div class="picframe">
<a class="image-popup-gallery" href="images/portfolio/pf%20(3).jpg">
<span class="overlay">
<span class="pf_text">
<span class="project-name">Apartment Renovation</span>
</span>
</span>
</a>
<img src="images/portfolio/pf%20(3).jpg" alt="" />
</div>
</div>
<!-- close gallery item -->
<!-- gallery item -->
<div class="col-md-3 item residential">
<div class="picframe">
<a class="image-popup-gallery" href="images/portfolio/pf%20(4).jpg">
<span class="overlay">
<span class="pf_text">
<span class="project-name">Bedroom Make Over</span>
</span>
</span>
</a>
<img src="images/portfolio/pf%20(4).jpg" alt="" />
</div>
</div>
<!-- close gallery item -->
<!-- gallery item -->
<div class="col-md-3 item office">
<div class="picframe">
<a class="image-popup-gallery" href="images/portfolio/pf%20(5).jpg">
<span class="overlay">
<span class="pf_text">
<span class="project-name">Modern Office</span>
</span>
</span>
</a>
<img src="images/portfolio/pf%20(5).jpg" alt="" />
</div>
</div>
<!-- close gallery item -->
<!-- gallery item -->
<div class="col-md-3 item commercial">
<div class="picframe">
<a class="image-popup-gallery" href="images/portfolio/pf%20(6).jpg">
<span class="overlay">
<span class="pf_text">
<span class="project-name">Restaurant In Texas</span>
</span>
</span>
</a>
<img src="images/portfolio/pf%20(6).jpg" alt="" />
</div>
</div>
<!-- close gallery item -->
<!-- gallery item -->
<div class="col-md-3 item residential">
<div class="picframe">
<a class="image-popup-gallery" href="images/portfolio/pf%20(7).jpg">
<span class="overlay">
<span class="pf_text">
<span class="project-name">Summer House</span>
</span>
</span>
</a>
<img src="images/portfolio/pf%20(7).jpg" alt="" />
</div>
</div>
<!-- close gallery item -->
<!-- gallery item -->
<div class="col-md-3 item office">
<div class="picframe">
<a class="image-popup-gallery" href="images/portfolio/pf%20(8).jpg">
<span class="overlay">
<span class="pf_text">
<span class="project-name">Office On Space</span>
</span>
</span>
</a>
<img src="images/portfolio/pf%20(8).jpg" alt="" />
</div>
</div>
<!-- close gallery item -->
<!-- gallery item -->
<div class="col-md-3 item office">
<div class="picframe">
<a class="image-popup-gallery" href="images/portfolio/pf%20(9).jpg">
<span class="overlay">
<span class="pf_text">
<span class="project-name">Luxury Living Room</span>
</span>
</span>
</a>
<img src="images/portfolio/pf%20(9).jpg" alt="" />
</div>
</div>
<!-- close gallery item -->
<!-- gallery item -->
<div class="col-md-3 item residential">
<div class="picframe">
<a class="image-popup-gallery" href="images/portfolio/pf%20(10).jpg">
<span class="overlay">
<span class="pf_text">
<span class="project-name">Cozy Bedroom</span>
</span>
</span>
</a>
<img src="images/portfolio/pf%20(10).jpg" alt="" />
</div>
</div>
<!-- close gallery item -->
<!-- gallery item -->
<div class="col-md-3 item hospitaly">
<div class="picframe">
<a class="image-popup-gallery" href="images/portfolio/pf%20(11).jpg">
<span class="overlay">
<span class="pf_text">
<span class="project-name">Classic Furnishing</span>
</span>
</span>
</a>
<img src="images/portfolio/pf%20(11).jpg" alt="" />
</div>
</div>
<!-- close gallery item -->
<!-- gallery item -->
<div class="col-md-3 item commercial">
<div class="picframe">
<a class="image-popup-gallery" href="images/portfolio/pf%20(12).jpg">
<span class="overlay">
<span class="pf_text">
<span class="project-name">Restaurant In Cannes</span>
</span>
</span>
</a>
<img src="images/portfolio/pf%20(12).jpg" alt="" />
</div>
</div>
<!-- close gallery item -->
</div>
</div>
</section>
<!-- section close -->
<!-- section begin -->
<section id="call-to-action" class="call-to-action bg-color dark text-center" data-speed="5" data-type="background" aria-label="call-to-action">
<a href="contact.html" class="btn btn-line-black btn-big">Get Quotation</a>
</section>
<!-- logo carousel section close -->
</div>
{% endblock %}

View File

@ -42,7 +42,7 @@
<link rel="stylesheet" href="{{ url_for('static', filename='css/rev-settings.css') }}"type="text/css"> <link rel="stylesheet" href="{{ url_for('static', filename='css/rev-settings.css') }}"type="text/css">
</head> </head>
<body id="homepage"> <body id="homepage" class="page-projects">
<div id="wrapper"> <div id="wrapper">
@ -221,11 +221,11 @@
</header> </header>
<!-- header close --> <!-- header close -->
<main class="content">
<!-- child template --> <!-- child template -->
{% block content %} {% block content %}
{% endblock %} {% endblock %}
</main>

View File

@ -1,6 +1,82 @@
{% extends "base.html" %} {% extends "base.html" %}
{% block content %} {% block content %}
<body class="page-projects">
<!-- subheader -->
<section id="subheader" data-speed="8" data-type="background">
<div class="container">
<div class="row">
<div class="col-md-12">
<h1>Gallery</h1>
<ul class="crumb">
<li><a href="index.html">Home</a></li>
<li class="sep">/</li>
<li>Gallery</li>
</ul>
</div>
</div>
</div>
</section>
<!-- subheader close -->
<!-- content begin -->
<div id="content" class="no-top no-bottom">
<!-- section begin -->
<section id="section-portfolio" class="no-top no-bottom" aria-label="section-portfolio">
<div class="container">
<div class="spacer-single"></div>
<!-- portfolio filter begin -->
<div class="row">
<div class="col-md-12 text-center">
<ul id="filters" class="wow fadeInUp" data-wow-delay="0s">
<li><a href="#" data-filter="*" class="selected">All Projects</a></li>
<li><a href="#" data-filter=".residential">Residential</a></li>
<!-- <li><a href="#" data-filter=".hospitaly">Hospitaly</a></li>
<li><a href="#" data-filter=".office">Office</a></li>
<li><a href="#" data-filter=".commercial">Commercial</a></li> -->
</ul>
</div>
</div>
<!-- portfolio filter close -->
{% endblock %}
<div id="gallery" class="row grid_gallery gallery de-gallery wow fadeInUp" data-wow-delay=".3s">
{% for photo in photos %}
<!-- gallery item -->
<div class="col-md-3 item residential">
<div class="picframe">
<a class="image-popup-gallery" href="../portfolio/residential/{{ photo }}">
<span class="overlay">
<span class="pf_text">
<span class="project-name"></span>
</span>
</span>
</a>
<img src="{{ url_for('portfolio.show_photo', category='residential', filename=photo) }}" alt="" />
</div>
</div>
<!-- close gallery item -->
{% endfor %}
</div>
</div>
</section>
<!-- section close -->
<!-- section begin -->
<!-- <section id="call-to-action" class="call-to-action bg-color dark text-center" data-speed="5" data-type="background" aria-label="call-to-action">
<a href="contact.html" class="btn btn-line-black btn-big">Get Quotation</a>
</section> -->
<!-- logo carousel section close -->
</div>
{% endblock %}