This commit is contained in:
vedatakd 2020-04-24 04:43:42 +03:00
commit 90f14e12c0
20 changed files with 102 additions and 711 deletions

View File

@ -105,13 +105,15 @@ class AdvCriteria extends EntryCriteria
{
$advModel = new AdvModel();
$adv = $advModel->newQuery()->find($id);
if (!$adv->cover_photo) {
$adv->cover_photo = $this->image->make('visiosoft.theme.base::images/no-image.png', 'path')->url();
} else if (
!empty($adv->cover_photo) &&
substr($adv->cover_photo, 0, strlen('/')) !== '/'
) {
$adv->cover_photo = '/' . $adv->cover_photo;
if ($adv) {
if (!$adv->cover_photo) {
$adv->cover_photo = $this->image->make('visiosoft.theme.base::images/no-image.png', 'path')->url();
} else if (
!empty($adv->cover_photo) &&
substr($adv->cover_photo, 0, strlen('/')) !== '/'
) {
$adv->cover_photo = '/' . $adv->cover_photo;
}
}
return $adv;
}

View File

@ -0,0 +1,2 @@
// Add phone mask
phoneMask("input.phone");

View File

@ -40,6 +40,8 @@ return [
// Login page
'or' => 'or',
'login_with_phone_number' => 'Login with Phone Number',
'login_with_email_address' => 'Login with Email Address',
// Side menu links
'company_directory' => 'Company directory',

View File

@ -1,20 +0,0 @@
{% extends "theme::layouts/default" %}
{% block ogdata %}
{% include "visiosoft.theme.sahibinden::addons/visiosoft/advs-module/ad-detail/partials/ogdata" %}
{% endblock %}
{% block content %}
<!-- breadcrumb -->
{% include "visiosoft.theme.sahibinden::addons/visiosoft/advs-module/ad-detail/partials/breadcrumb" %}
<!-- breadcrumb -->
{% include "visiosoft.module.advs::ad-detail/partials/ad-status" %}
{% include "visiosoft.theme.sahibinden::addons/visiosoft/advs-module/ad-detail/main" %}
{{ asset_add("styles.css", "visiosoft.theme.sahibinden::css/sahibinden.css") }}
{{ asset_add("scripts.js", "visiosoft.module.advs::js/viewed.js") }}
{{ asset_add("styles.css", "visiosoft.module.advs::css/detail.css") }}
{{ asset_add("styles.css", "visiosoft.theme.sahibinden::css/detail.css") }}
{% endblock %}

View File

@ -1,165 +0,0 @@
<main id="main">
<div class="container">
<section id="main" class="clearfix details-page">
<div class="container">
<div class="classified-title row mx-0">
<div class="col-12 col-sm-6 p-0 m-0">
<h1>
{{ adv.title }}
</h1>
</div>
<div class="col-6 pt-3 m-0 justify-content-end pull-right d-none d-sm-flex">
{{ addBlock('ad-detail/title/action', {'adv_id':adv.id, 'sahibinden':true})|raw }}
<a href="https://www.facebook.com/sharer/sharer.php?u={{ url_current()|url_encode }}"
class="a-sahibinden-type pl-2">
<i class="fab fa-facebook"></i>
</a>
<a href="http://twitter.com/share?url={{ url_current()|url_encode }}"
class="a-sahibinden-type pl-2">
<i class="fab fa-twitter"></i>
</a>
<a href="https://wa.me/?text={{ setting_value('visiosoft.theme.sahibinden::shareWhatsappMsg')|url_encode }}%20{{ app.request.uri|url_encode }}" target="_blank" class="a-sahibinden-type pl-2">
<i class="fab fa-whatsapp"></i>
</a>
</div>
</div>
<!--detail-ad -->
<div class="section slider mb-4">
<div class="row">
{% include "visiosoft.theme.sahibinden::addons/visiosoft/advs-module/ad-detail/partials/slider" %}
<div class="col-md-3 pl-0">
{% include "visiosoft.theme.sahibinden::addons/visiosoft/advs-module/ad-detail/partials/detail" %}
</div>
<div class="col-md-3 px-0 classified-user-section">
<div class="userBox d-none d-sm-block">
<div class="userDetail">
<div class="border-bottom pb-3 mb-3">
{{ addBlock('ad-details/user-image', {'userId': adv.created_by_id})|raw }}
<h5 class="d-inline-block">{{ adv.first_name }} {{ adv.last_name }}</h5>
</div>
<div class="d-flex justify-content-between">
<p>{{ trans('visiosoft.theme.sahibinden::field.member_since.name') }} {{ user(adv.create_by_id).created_at|date('F Y') }}</p>
{% if profile.file.url is not null %}
<img src="{{ profile.file.url }}" class="user-profile-img">
{% endif %}
</div>
<ul class="classified-owner-action list-unstyled">
<li>
{% include 'visiosoft.theme.sahibinden::addons/visiosoft/advs-module/ad-detail/partials/list-link' %}
</li>
{{ addBlock('ad-detail/seller/action',{'seller_id':adv.created_by_id, 'sahibinden':true})|raw }}
</ul>
</div>
<div class="userDetail">
{% set user = adv.created_by %}
<ul class="list-unstyled classified-owner-contact">
{% if user.gsm_phone is not null %}
<li class="row">
<div class="col-md-4 p-0 m-0">
<strong>
{{ trans('visiosoft.theme.sahibinden::field.mobile.name') }}
</strong>
</div>
<div class="col-md-8 p-0 m-0 text-right">{{ user.gsm_phone }}</div>
</li>
{% endif %}
{% if user.office_phone is not empty %}
<li class="row border-1 border-top">
<div class="col-md-4 p-0 m-0">
<strong>
{{ trans('visiosoft.theme.sahibinden::field.office_phone.name') }}
</strong>
</div>
<div class="col-md-8 p-0 m-0 text-right">{{ user.office_phone }}</div>
</li>
{% endif %}
{% if user.land_phone is not empty %}
<li class="row border-1 border-top">
<div class="col-md-4 p-0 m-0">
<strong>
{{ trans('visiosoft.theme.sahibinden::field.land_phone.name') }}
</strong>
</div>
<div class="col-md-8 p-0 m-0 text-right">{{ user.land_phone }}</div>
</li>
{% endif %}
</ul>
{% if user.gsm_phone is not null %}
<div class="d-none">
<input class="phoneCheck" type="hidden" value="{{ user.gsm_phone }}">
{{ asset_add('scripts.js','visiosoft.theme.sahibinden::js/phoneCheck.js') }}
</div>
<div class="alert alert-info hidden alert-phoneNumber">
<p>
{{ trans('visiosoft.theme.sahibinden::message.invalid_phoneNumber') }}
</p>
{% if auth_check() %}
<p>
<a href="{{ url_route('profile::profile') }}">
<b>
{{ trans('visiosoft.theme.sahibinden::button.update_profile') }}
</b>
</a>
</p>
{% endif %}
</p>
</div>
<a href="https://wa.me/{{ user.gsm_phone|replace({'+': ""}) }}" target="_blank"
class="whatsapp-link hidden">
<button type="button" class="whatsapp-message btn position-relative">
<i class="d-none d-lg-inline-block fab fa-whatsapp position-absolute"></i>
{{ trans('visiosoft.theme.sahibinden::field.whatsapp') }}
</button>
</a>
{% endif %}
{{ addBlock('ad-detail/contact-with', {'adv': adv, 'showTheme': false})|raw }}
</div>
</div>
{{ addBlock('ad-detail/widget', {'ad': adv, 'price': adv.price, 'id': adv.id, 'cat1': categories['cat1']})|raw }}
{{ addBlock('ad-detail/widget-details', {'adv': adv})|raw }}
{% if setting_value('visiosoft.theme.sahibinden::show_security_tips') %}
<div class="security-tips d-none d-sm-block">
<h6>
{{ trans('visiosoft.theme.sahibinden::field.security_tips.name') }}
</h6>
<p>
{{ setting_value('visiosoft.theme.sahibinden::security_tips_msg') }}
</p>
</div>
{% endif %}
</div>
</div>
</div>
<!--detail-ad -->
{% include "visiosoft.theme.sahibinden::addons/visiosoft/advs-module/ad-detail/partials/content" %}
</div>
</section>
</div>
</main>
{% if user.gsm_phone is not null %}
<div class="position-fixed w-100 d-block d-sm-none bg-light footer-mobile-device hidden">
<div class="row m-0 py-2 justify-content-center">
<div class="col pr-1">
<a href="tel:{{ user.gsm_phone }}" class="btn btn-primary w-100">
<i class="fas fa-phone"></i>
{{ trans('visiosoft.theme.sahibinden::field.contact_us.name') }}
</a>
</div>
<a href="https://wa.me/{{ user.gsm_phone|replace({'+': ""}) }}" target="_blank"
class="whatsapp-link hidden col pl-1">
<button type="button" class="whatsapp-message mt-0 btn position-relative">
<i class="fab fa-whatsapp"></i>
{{ trans('visiosoft.theme.sahibinden::field.whatsapp') }}
</button>
</a>
</div>
</div>
{% endif %}
{% include "visiosoft.module.advs::ad-detail/partials/dropleft-edit" %}

View File

@ -1,12 +0,0 @@
<nav aria-label="breadcrumb" class=" d-none d-sm-block">
<ol class="breadcrumb classified-breadcrumb">
<div class="container">
{% for cat in categories %}
<li class="breadcrumb-item float-left">
<a href="{{ url_route('visiosoft.module.advs::list_cat', [cat.id]) }}">{{ cat['name'] }}</a>
</li>
{% endfor %}
</div>
<input class="hidden" id="adv-id" value="{{ adv.id }}">
</ol>
</nav>

View File

@ -1,76 +0,0 @@
<div class="description-info classified-description">
<div class="row">
<div class="col-md-12 description-tabs">
<nav>
<div class="nav nav-tabs nav-fill ad-detail-tabs" id="nav-tab" role="tablist">
<a class="nav-item nav-link bg-secondary d-block d-sm-none" id="nav-info-tab"
data-toggle="tab" href="#nav-info" role="tab"
aria-controls="nav-info"
aria-selected="true">{{ trans('visiosoft.theme.sahibinden::field.ad_info.name') }}</a>
<a class="nav-item nav-link active bg-secondary" id="nav-description-tab"
data-toggle="tab" href="#nav-description" role="tab"
aria-controls="nav-description"
aria-selected="true">{{ trans('visiosoft.module.advs::field.description') }}</a>
<a class="nav-item nav-link bg-secondary" id="nav-location-tab"
data-toggle="tab" href="#nav-location" role="tab"
aria-controls="nav-location"
aria-selected="true">{{ trans('visiosoft.module.advs::field.location') }}</a>
<!-- Content Tab With Block -->
{{ addBlock('ad-detail/content-tab',{'features':features,'adv':adv})|raw }}
<!-- Content Tab With Block -->
</div>
</nav>
<div class="tab-content pb-3 px-3 px-sm-0 border-0" id="nav-tabContent">
<div class="tab-pane fade" id="nav-info" role="tabpanel"
aria-labelledby="nav-info-tab">
<ul class="list-unstyled classified-detail">
<li class="row m-0">
<div class="col-6 p-0 m-0 font-weight-bold detail-title">{{ trans('visiosoft.theme.sahibinden::field.price.name') }}</div>
<div class="col-6 p-0 m-0 text-primary detail-value">{{ adv.price.currency }}</div>
</li>
<li class="row m-0">
<div class="col-6 p-0 m-0 font-weight-bold detail-title">{{ trans('visiosoft.theme.sahibinden::field.ad.name') }}</div>
<div class="col-6 p-0 m-0 text-danger detail-value">{{ adv.id }}</div>
</li>
<li class="row m-0">
<div class="col-6 p-0 m-0 font-weight-bold detail-title">{{ trans('visiosoft.theme.sahibinden::field.ad_date.name') }}</div>
<div class="col-6 p-0 m-0 detail-value">{{ adv.created_at|date('d/m/Y') }}</div>
</li>
{{ addBlock('ad-detail/content',{'features_detail':features})|raw }}
</ul>
</div>
<div class="tab-pane fade show active" id="nav-description" role="tabpanel"
aria-labelledby="nav-description-tab">
<h4 class="subject-tab d-none d-sm-block mb-0 border">{{ trans('visiosoft.module.advs::field.explanation') }}</h4>
<div class="row mx-0 mt-0">
<div class="col-12 classified-description-row border mt-0 pt-2">
<p>{{ adv.advs_desc|raw }}</p>
</div>
</div>
{{ addBlock('ad-detail/checkboxes',{'features':features})|raw }}
</div>
<div class="tab-pane fade show" id="nav-location" role="tabpanel"
aria-labelledby="nav-location-tab">
<div class="classified-description-row px-3 border">
{% include "visiosoft.module.advs::ad-detail/partials/map" %}
</div>
</div>
<!-- Content With Block -->
{{ addBlock('ad-detail/content',{'features':features,'adv':adv, 'profile': profile, 'show':true})|raw }}
<!-- Content With Block -->
</div>
</div>
</div>
</div>
{{ addBlock('ad-detail/section',{'adv':adv})|raw }}
<div class="d-none d-sm-block">
{{ setting_value('visiosoft.theme.sahibinden::detail_bottom')|raw }}
</div>
<div class="d-block d-sm-none">
{{ setting_value('visiosoft.theme.sahibinden::detail_bottom_mobile')|raw }}
</div>

View File

@ -1,58 +0,0 @@
{% set district = getDistrict(adv.district.getObject().value) %}
{% set neighborhood = getNeighborhood(adv.neighborhood.getObject().value) %}
<div class="slider-text">
<div class="col-lg-12 col-md-12 col-sm-12 col-xs-12 offered-field offered-row p-0">
<h3 class="ad-price">
<b>{{ adv.price.currency(null,'currency') }}</b>
{{ addBlock('ad-detail/details',{'adv':adv,'theme':'sahibinden'})|raw }}
<!-- priceField with Block -->
{{ addBlock('ad-detail/priceField',{'adv':adv})|raw }}
<!-- priceField with Block -->
</h3>
<h2 class="d-none d-sm-block">
{% set lastCatId = categories|last['id'] %}
{% if setting_value('visiosoft.theme.sahibinden::show_country') %}
{{ adv.country_name }}
<span>/</span>
{% endif %}
<a href="{{ url_route('visiosoft.module.advs::list') }}?city[]={{ adv.city }}&cat={{ lastCatId }}"
class="link-unstyled">
{{ adv.city_name }}
</a>
{% if district %}
<span>/</span>
<a href="{{ url_route('visiosoft.module.advs::list') }}?city[]={{ adv.city }}&district[]={{ district.id }}&cat={{ lastCatId }}"
class="link-unstyled">
{{ district.name }}
</a>
{% endif %}
{% if neighborhood %}
<span>/</span>
<a href="{{ url_route('visiosoft.module.advs::list') }}?city[]={{ adv.city }}&district[]={{ district.id }}&neighborhood[]={{ neighborhood.id }}&cat={{ lastCatId }}"
class="link-unstyled">
{{ neighborhood.name }}
</a>
{% endif %}
</h2>
</div>
<div class="col-lg-12 col-md-12 col-sm-12 col-xs-12 p-0 d-none d-sm-block">
<ul class="list-unstyled classified-detail">
<li class="row m-0">
<div class="col-md-6 p-0 m-0 font-weight-bold">{{ trans('visiosoft.module.advs::field.ad_id') }}</div>
<div class="col-md-6 p-0 m-0 text-danger">{{ adv.id }}</div>
</li>
<li class="row m-0">
<div class="col-md-6 p-0 m-0 font-weight-bold">{{ trans('visiosoft.theme.sahibinden::field.ad_date.name') }}</div>
<div class="col-md-6 p-0 m-0">{{ adv.created_at|date('d/m/Y') }}</div>
</li>
{{ addBlock('ad-detail/content',{'features_detail':features,'adv':adv})|raw }}
<li class="row m-0">
<div class="col-md-6 p-0 m-0 font-weight-bold">{{ trans('visiosoft.module.advs::field.views') }}</div>
<div class="col-md-6 p-0 m-0 font-weight-bold viewed-ad-count">{{ adv.count_show_ad }}</div>
</li>
</ul>
</div>
</div>

View File

@ -1,7 +0,0 @@
{% if addBlock('store/link') is null %}
<a href="{{ url_route('visiosoft.module.advs::list_user_ad', [adv.created_by_id]) }}">
{{ trans('visiosoft.theme.sahibinden::field.other_ads.name') }}
</a>
{% else %}
{{ addBlock('store/link', {'userId': adv.created_by_id})|raw }}
{% endif %}

View File

@ -1,7 +0,0 @@
<meta property="og:site_name"
content="{{ template.get('og_site_name', setting_value('streams::name', config_get('streams::distribution.name'))) }}"/>
<meta property="og:description" content="{{ adv.advs_desc|striptags|raw }}"/>
<meta property="og:title" content="{{ adv.title }}"/>
<meta property="og:url" content="{{ template.get('og_url', url_current()) }}"/>
<meta property="og:image" content="{{ adv.getViewPhotoUrl|first }}">
<meta property="og:type" content="website"/>

View File

@ -1,69 +0,0 @@
<div class="col-md-6 slider-box pl-0">
{% if blocks('ad-item-picture-block-area') is null %}
<div class="fotorama"
data-width="700"
data-arrows="true"
data-allowfullscreen="true"
data-ratio="3/2"
data-nav="thumbs"
data-thumbheight="48">
{% set advPhoto = '' %}
{% if count(adv.files) == 0 %}
{% set advPhoto = img('visiosoft.module.advs::images/no-image.png').url %}
<a href="{{ image }}"><img src="{{ img('visiosoft.module.advs::images/no-image.png').url }}"></a>
{% else %}
{% for image in adv.getViewPhotoUrl %}
<a href="{{ image }}"><img src="{{ image }}"></a>
{% if loop.index == 1 %}
{% set advPhoto = image %}
{% endif %}
{% endfor %}
{% endif %}
</div>
<div class="position-absolute w-100 row pl-3 slider-controller-bar">
<div class="col-12 bg-light row m-0 py-1">
<div class="col-6">
<a href="#" class="a-sahibinden-type" onclick="fotorama.requestFullScreen()">
<i class="fas fa-search"></i>
{{ trans('visiosoft.theme.sahibinden::field.mega_photo.name') }}
</a>
</div>
<div class="col-6 text-right">
<button class="{% if adv.video_url %}a-sahibinden-type{% else %} text-secondary {% endif %} border-0 bg-light"
data-toggle="modal" data-target="#adv-video" {% if adv.video_url is null %}disabled{% endif %}>
<i class="fas fa-video"></i>
{{ trans('visiosoft.theme.sahibinden::field.video.name') }}
</button>
</div>
</div>
</div>
{% else %}
{{ blocks('ad-item-picture-block-area') }}
{% endif %}
{{ asset_add("styles.css", "visiosoft.module.advs::css/fotorama.css") }}
</div>
{% if adv.video_url %}
<div class="modal fade video-wrapper-modal" id="adv-video" tabindex="-1" role="dialog"
aria-labelledby="myModalLabel">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="close-modal text-right">
<button type="button" class="btn btn-danger" data-dismiss="modal">X
</button>
</div>
<div class="modal-body">
<video controls loop class="img-responsive"
style="text-align: center; width: 100%">
<source src="{{ adv.video_url }}" class="video-src"
type="video/mp4"/>
</video>
</div>
</div>
</div>
</div>
{{ asset_add("scripts.js", "visiosoft.module.cloudinary::js/close-btn.js") }}
{% endif %}
{{ asset_add("scripts.js", "visiosoft.module.advs::js/fotorama.js") }}
{{ asset_add("scripts.js", "visiosoft.theme.sahibinden::js/slider.js") }}

View File

@ -1,67 +0,0 @@
{% extends "theme::layouts/default" %}
{% block content %}
<!-- breadcrumb -->
{% include "visiosoft.module.advs::list/partials/breadcrumb" %}
<!-- breadcrumb -->
<section id="main" class="clearfix details-page">
<div class="container">
{{ addBlock('ads-list/user-section', {'store': store})|raw }}
<div class="row my-3">
<div class="col-md-3 d-none d-sm-block filter-section">
{% include "visiosoft.module.advs::list/partials/list-filter" %}
</div>
<div class="col-md-9">
<div class="section recommended-ads">
<div class="row breadcrumb list-header">
<div class="col-12 col-md-6 my-2 d-none d-sm-block">
{% include "visiosoft.module.advs::list/partials/list-sort-by" %}
</div>
<div class="col-12 col-md-6 my-2">
{% include "visiosoft.module.advs::list/partials/display-mode" %}
</div>
</div>
<div class="my-2 p-0 bg-light d-flex d-sm-none mobile-list-action row text-center align-items-center">
<div class="col-4" id="filter_modal_btn">
<i class="fas fa-filter w-100"></i>
<a href="javascript:;">{{ trans('visiosoft.theme.sahibinden::field.filter.name') }}</a>
</div>
<div class="col-4" id="sort_modal_btn">
<i class="fas fa-sort-amount-down w-100"></i>
<a href="javascript:;">{{ trans('visiosoft.theme.sahibinden::field.sort.name') }}</a>
</div>
{{ addBlock('ads-list/row-bottom',{'show_favorite_search':true})|raw }}
</div>
{{ addBlock('ads-list/row',{'topfields':topfields,'advs':advs})|raw }}
<div class="row justify-content-center">
{% block listContent %}
{% include "visiosoft.module.advs::list/partials/ads" %}
{% endblock %}
</div>
{% include "visiosoft.module.advs::list/partials/pagination" %}
{{ addBlock('ads-list/row-bottom')|raw }}
{# <div class="category-tabs"></div>#}
</div>
</div>
</div>
</div>
</section>
{% include "visiosoft.module.advs::list/partials/filter-modal" %}
{% include "visiosoft.module.advs::list/partials/sort-modal" %}
<script>
var select_trans = "{{ trans('visiosoft.module.advs::field.pick_option') }}";
</script>
{{ asset_add("scripts.js", "visiosoft.module.advs::js/list.js") }}
{{ asset_add("styles.css", "visiosoft.module.advs::css/list.css") }}
{{ asset_add("styles.css", "visiosoft.theme.sahibinden::css/list.css") }}
{% endblock %}
{% block customjs %}
{{ addBlock('ads-list/list',{'adv':adv})|raw }}
{% endblock %}

View File

@ -1,41 +0,0 @@
{{ addBlock('ad-list/partials/ads',{'featured_advs':featured_advs})|raw }}
{% for adv in advs %}
<div class="col-6 col-md-12 mb-2 list-classified bg-light aditem-wrapper">
<a href="{{ adv.detail_url }}" class="text-dark">
<div class="row{% if adv.doping != null %} doping_type4 {% endif %}">
<div class="col-md-2 justify-content-center align-self-center text-center border-right border-white">
<img class="img-thumbnail" src="{{ adv.cover_photo }}" alt="{{ adv.name }}"
style="max-height:80px;">
</div>
<div class="col-md-7 justify-content-center align-self-center border-right border-white">
<div class="row">
<div class="col-md-12">
<p>{{ adv.name }}</p>
</div>
<div class="col-md-12 text-truncate d-none d-md-block">
<small class="text-muted">{{ adv.cat1_name }}, {{ adv.cat2_name }}</small>
</div>
</div>
</div>
<div class="col-md-3 text-left justify-content-center align-self-center">
<div class="row price-location">
<div class="col-md-12">
<b>{{ adv.price.currency(null,'currency') }}</b>
</div>
{% if setting_value('visiosoft.module.location::list_page_location') %}
<div class="col-md-12 justify-content-center align-self-center text-truncate">
<small>{{ adv.city_name }} {{ adv.country_name }}</small>
</div>
{% endif %}
</div>
</div>
</div>
</a>
<div class="row mb-2">
<div class="col-md-2"></div>
<div class="col-md-7 justify-content-center align-self-center border-right border-white">
{{ addBlock('list/extra-actions', {'ad': adv})|raw }}
</div>
</div>
</div>
{% endfor %}

View File

@ -1,18 +0,0 @@
<nav aria-label="breadcrumb" class=" d-none d-sm-block">
<ol class="breadcrumb classified-breadcrumb">
<div class="container">
<li class="breadcrumb-item float-left">
<a href="{{ url('') }}">
{{ trans("visiosoft.module.advs::field.home") }}
</a>
</li>
<li class="breadcrumb-item float-left">
<a href="{{ url_route('visiosoft.module.advs::list') }}">
{{ trans("visiosoft.module.advs::field.list") }}
</a>
</li>
{{ addBlock('ads-list/partials/breadcrumb',{'mainCats': mainCats, 'category': categoryId})|raw }}
</div>
<input class="hidden" id="adv-id" value="{{ adv.id }}">
</ol>
</nav>

View File

@ -1,36 +0,0 @@
<section id="main" class="clearfix details-page">
<div class="container">
{% include "visiosoft.module.advs::list/partials/user-section" %}
<div class="row my-3">
<div class="col-md-3 d-none d-sm-block filter-section">
{% include "visiosoft.module.advs::list/partials/list-filter" %}
</div>
<div class="col-md-9">
<div class="section recommended-ads">
<div class="row breadcrumb list-header">
<div class="col-md-6 my-2">
{% include "visiosoft.module.advs::list/partials/list-sort-by" %}
</div>
<div class="col-md-6 my-2">
{% include "visiosoft.module.advs::list/partials/display-mode" %}
</div>
</div>
{{ addBlock('ads-list/row',{'topfields':topfields})|raw }}
<div class="row justify-content-center">
{% block listContent %}
{% include "visiosoft.module.advs::list/partials/ads" %}
{% endblock %}
</div>
{% include "visiosoft.module.advs::list/partials/pagination" %}
{# <div class="category-tabs"></div>#}
</div>
</div>
</div>
</div>
</section>

View File

@ -1,55 +0,0 @@
<div class="mb-3 p-2 price-section">
<div id="price" class="collapse show overflow-auto" aria-labelledby="priceHeading"
data-parent="#filter">
<div class="row p-0 m-0">
<div class="col-md-12 p-0 pl-3 row">
<div class="input-group-btn col-md-12 filtering-currencies-btn position-relative w-100 px-0"
data-toggle="buttons">
{% set active_currencies = setting_value('visiosoft.module.advs::enabled_currencies') %}
{% set active_currencies2 = setting_value('visiosoft.module.advs::enabled_currencies') %}
{% set selected_currency = setting_value('streams::currency') %}
{% if app.request.get('currency') %}
{% set selected_currency = app.request.get('currency') %}
{% endif %}
{% for currency in active_currencies %}
<label class="btn currency-filtering-label col
{% if selected_currency == currency %}
active
{% endif %}
" data-value="{{ currency }}">
<input type="radio" class="currency-filtering-btn">
{{ currency_symbol(currency) }}
</label>
{% endfor %}
</div>
</div>
<div class="col-md-12 p-0 pl-3 row ">
<div class="col-4 p-0">
<input type="hidden" name="currency"
value="{{ setting_value('streams::currency') }}">
<input type="text" id="min-filter" class="price-input form-control w-100"
value="{{ app.request.get('min_price') }}" name="min_price"
data-placeholder="{{ trans('visiosoft.module.advs::field.min.name') }}"
placeholder="{{ trans('visiosoft.module.advs::field.min.name')~" "~setting_value('streams::currency') }}">
</div>
<div class="col-1 p-0 text-center">-</div>
<div class="col-4 p-0">
<input id="max-filter" class="price-input form-control w-100" type="text"
value="{{ app.request.get('max_price') }}"
name="max_price"
data-placeholder="{{ trans('visiosoft.module.advs::field.max.name') }}"
placeholder="{{ trans('visiosoft.module.advs::field.max.name')~" "~setting_value('streams::currency') }}">
</div>
<div class="col-2 p-0 pl-2">
<button class="btn btn-primary price-filter-btn hidden">
{{ trans('visiosoft.theme.sahibinden::field.find.name') }}
</button>
</div>
</div>
</div>
</div>
</div>

View File

@ -1,8 +0,0 @@
<!-- breadcrumb -->
{% include "visiosoft.theme.sahibinden::addons/visiosoft/advs-module/ad-detail/partials/breadcrumb" %}
<!-- breadcrumb -->
{% include "visiosoft.theme.sahibinden::addons/visiosoft/advs-module/ad-detail/main" %}
{{ asset_add("styles.css", "visiosoft.theme.sahibinden::css/sahibinden.css") }}
{{ asset_add("styles.css", "visiosoft.theme.sahibinden::css/detail.css") }}

View File

@ -1,6 +1,7 @@
{% extends "theme::layouts/default" %}
{% block content %}
{% set phoneLogin = not setting_value('visiosoft.module.advs::register_email_field') or app.request.get('type') == 'phone' %}
<div class="row justify-content-center">
<div class="col-12 text-left m-0 row justify-content-center">
<div class="col-12 col-lg-5 m-3 login-section">
@ -8,8 +9,8 @@
.redirect(app.request.get('redirect'))
.get() %}
{{ form_open({
'class':'aaa',
'url':form.options.url
'class': 'aaa',
'url': form.options.url
})|raw }}
<div class="col-12 pt-4 pt-lg-0">
<h3 class="text-center login_subject">
@ -17,12 +18,14 @@
</h3>
<div class="form-group email-field email-field_type">
<label class="control-label">
{{ trans('visiosoft.theme.base::field.email_or_phone_number') }}
{{ phoneLogin ? trans('visiosoft.theme.base::field.phone_number') : trans('visiosoft.theme.base::field.email') }}
<span class="required">*</span>
</label>
<div class="input-wrapper">
{{ form.fields.email.input|raw }}
{{ form.fields.email.setAttributes({
'class': phoneLogin ? 'form-control phone' : 'form-control'
}).input|raw }}
</div>
</div>
</div>
@ -63,9 +66,18 @@
{{ trans('visiosoft.theme.base::field.remember_me') }}
</label>
</div>
{% if addBlock('login/oauth') %}
{% if addBlock('login/oauth') or setting_value('visiosoft.module.advs::register_email_field') %}
<div class="text-center text-muted">- {{ trans('visiosoft.theme.base::field.or') }} -</div>
<div class="social-login py-2 px-3">
{% if setting_value('visiosoft.module.advs::register_email_field') %}
<a class="btn btn-info text-white w-100 d-flex align-items-center justify-content-center position-relative mb-3"
href="{{ url_route('anomaly.module.users::login') }}{{ phoneLogin ? '' : '?type=phone' }}">
<span class="position-relative py-1">
{{ phoneLogin ? trans('visiosoft.theme.base::field.login_with_email_address') : trans('visiosoft.theme.base::field.login_with_phone_number') }}
</span>
</a>
{% endif %}
{{ addBlock('login/oauth')|raw }}
</div>
{% endif %}
@ -84,5 +96,6 @@
</div>
</div>
</div>
{{ asset_add('scripts.js','visiosoft.theme.base::js/login.js') }}
{{ asset_add('styles.css','visiosoft.theme.base::css/login.css') }}
{% endblock %}

View File

@ -1,65 +1,76 @@
{{ addBlock('index_top')|raw }}
<div class="home-container">
<div class="album bg-light">
<div class="row p-2">
{% if setting_value('visiosoft.theme.base::latest_and_view_all_btn') %}
<div class="col-md-6">
<h4 class="p-2">{{ trans('theme::field.latest_ads') }}</h4>
</div>
<div class="col-md-6 text-right">
<a class="btn btn-outline-secondary"
href="{{ url_route('visiosoft.module.advs::list') }}">{{ trans('theme::field.show_all') }}</a>
</div>
{% endif %}
</div>
<div class="container">
<div class="row">
{% for latestAd in latestAds() %}
<div class="col-sm-6 col-md-4 col-lg-3 d-flex align-items-stretch">
<div class="card mb-4 box-shadow">
<div class="row p-2" style="min-height: 150px;">
<a href="{{ latestAd.detail_url }}">
<div class="col-md-12 justify-content-center align-self-center">
<img class="card-img-top img-fluid img-thumbnail" src="{{ latestAd.cover_photo }}"
style="height: 150px">
</div>
</a>
{{ addBlock('index_top')|raw }}
<div class="row">
<div class="col-md-4">{% include "visiosoft.theme.base::partials/categories" %}</div>
<div class="col-md-8"><div class="album bg-light">
<div class="row p-2">
{% if setting_value('visiosoft.theme.base::latest_and_view_all_btn') %}
<div class="col-md-6">
<h4 class="p-2">{{ trans('theme::field.latest_ads') }}</h4>
</div>
<div class="card-body">
{% if setting_value('visiosoft.theme.base::price_fields') %}
<div class="d-flex justify-content-between align-items-center">
<b>{{ latestAd.price }} {{ latestAd.currency }}</b>
</div>
{% endif %}
<div class="d-flex justify-content-between align-items-center text-truncate">
<a href="{{ latestAd.detail_url }}">
<p class="card-title d-inline-block">{{ latestAd.name }}</p>
</a>
</div>
{% if setting_value('visiosoft.module.location::home_page_location') %}
<div class="d-flex justify-content-between align-items-center">
<small>
<i class="fas fa-location-arrow text-primary"></i>
{{ latestAd.city_name }}, {{ latestAd.country_name }}
</small>
</div>
{% endif %}
{% if setting_value('visiosoft.theme.base::date_fields') %}
<div class="d-flex justify-content-between align-items-center">
<small>
<i class="far fa-clock text-dark"></i>
{{ latestAd.created_at|date('d/m/Y') }}
</small>
</div>
{% endif %}
<div class="col-md-6 text-right">
<a class="btn btn-outline-secondary"
href="{{ url_route('visiosoft.module.advs::list') }}">{{ trans('theme::field.show_all') }}</a>
</div>
</div>
{% endif %}
</div>
{% endfor %}
</div>
</div>
</div>
{{ addBlock('index')|raw }}
<div class="row list-classified-home">
{% for latestAd in latestAds() %}
<div class="col-sm-6 col-md-4 col-lg-3 d-flex align-items-stretch">
<div class="card mb-4 box-shadow">
<div class="row p-2" style="min-height: 150px;">
<a href="{{ latestAd.detail_url }}">
<div class="col-md-12 justify-content-center align-self-center">
<img class="card-img-top img-fluid img-thumbnail" src="{{ latestAd.cover_photo }}"
style="height: 150px">
</div>
</a>
</div>
<div class="card-body">
{% if setting_value('visiosoft.theme.base::price_fields') %}
<div class="d-flex justify-content-between align-items-center">
<b>{{ latestAd.price }} {{ latestAd.currency }}</b>
</div>
{% endif %}
<div class="d-flex justify-content-between align-items-center text-truncate">
<a href="{{ latestAd.detail_url }}">
<p class="card-title d-inline-block">{{ latestAd.name }}</p>
</a>
</div>
{% if setting_value('visiosoft.module.location::home_page_location') %}
<div class="d-flex justify-content-between align-items-center">
<small>
<i class="fas fa-location-arrow text-primary"></i>
{{ latestAd.city_name }}, {{ latestAd.country_name }}
</small>
</div>
{% endif %}
{% if setting_value('visiosoft.theme.base::date_fields') %}
<div class="d-flex justify-content-between align-items-center">
<small>
<i class="far fa-clock text-dark"></i>
{{ latestAd.created_at|date('d/m/Y') }}
</small>
</div>
{% endif %}
</div>
</div>
</div>
{% endfor %}
</div>
</div></div>
</div>
{{ addBlock('index')|raw }}
</div>

View File

@ -35,8 +35,8 @@
</main>
{% include "theme::partials/footer" %}
{% include "theme::partials/settings" %}
{% include "theme::partials/assets" %}
{% include "theme::partials/settings" %}
</body>
</html>