Merge branch 'master' into image-view-fix

This commit is contained in:
metehancelik 2022-01-13 10:02:39 +03:00 committed by GitHub
commit 7306281aac
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
11 changed files with 111 additions and 31 deletions

View File

@ -1,3 +1,13 @@
$(".clickable-row").click(function () {
window.location = $(this).data("href");
});
});
$('.hover-area').mouseover((e) => {
var el = $(e);
var img = $(`.${$(el[0].target).data('id')}`);
img.siblings('img').hide();
img.show();
});

View File

@ -36,4 +36,6 @@ return [
'currency_converter_not_available' => 'The currency converter is not available.',
'option_saved' => 'Option Saved',
'do_you_want_to_save_the_option' => 'Do you want to save the option?',
'you_can_not_delete_a_system_status' => 'You can not delete a system status!',
'product_added_to_cart' => 'Product added to cart!',
];

View File

@ -11,10 +11,20 @@
{% for adv in advs %}
<div class="col-xl-4 col-6 p-sm-3 p-0">
<div class="d-flex flex-column product-hb gallery-card border border-top-0 pb-3 px-md-1 px-0 pt-1 shadow-sm rounded">
<div class="product-image-hb p-sm-3 p-1 mt-lg-2 mt-4">
<a href="{{ adv.detail_url }}">
<img class="product-image-in" src="{{ adv.cover_photo }}" alt="{{ adv.name }}">
<div class="d-flex flex-column product-hb gallery-card pb-3 px-1 pt-1 border shadow-sm rounded">
<div class="product-image-hb p-sm-3 p-1">
<a href="{{ adv.detail_url }}" class="imgs" id="{{ adv.id }}">
{% set slicedPhotos = adv.getViewPhotoUrl|slice(0,3) %}
{% for key,photo in slicedPhotos %}
<img src="{{ photo }}" class="product-image-in ads-img img-{{ adv.id ~ '-' ~ key }}" alt="">
{% endfor %}
<div class="hover-area">
{% for key, photo in slicedPhotos %}
<div class="hover-{{ key }}" data-parent="{{ adv.id }}" data-id="img-{{ adv.id ~ '-' ~ key }}"></div>
{% endfor %}
</div>
</a>
{{ addBlock('list/extra-actions', {'ad': adv, 'vars': _context}, ['favs'])|raw }}
</div>
@ -39,6 +49,8 @@
{% endfor %}
</div>
{{ asset_add("scripts.js", "visiosoft.module.advs::js/list-table.js") }}
{% endblock %}
{% block styles %}
@ -47,6 +59,7 @@
{% endblock %}
{% block customjs %}
{{ asset_add("scripts.js", "visiosoft.module.advs::js/list-table.js") }}
{% include "theme::scroll-modal" %}
{% endblock %}

View File

@ -1163,6 +1163,7 @@ class AdvsController extends PublicController
if ($adv and $adv->getStatus() == "approved") {
$cart = $thisModel->addCart($adv, $quantity, $name);
$response['status'] = "success";
$response['msg'] = trans('visiosoft.module.advs::message.product_added_to_cart');
$count = $cart->getItems()->count;
$response['count'] = $count;
$response['item'] = [

View File

@ -1,8 +1,16 @@
<?php namespace Visiosoft\AdvsModule\Status;
use Anomaly\Streams\Platform\Entry\Contract\EntryInterface;
use Anomaly\Streams\Platform\Entry\EntryObserver;
class StatusObserver extends EntryObserver
{
public function deleting(EntryInterface $entry)
{
if ($entry->is_system) {
abort(403, trans('visiosoft.module.advs::message.you_can_not_delete_a_system_status'));
}
parent::deleting($entry);
}
}

View File

@ -80,6 +80,7 @@
font-size: 14px;
}
.product-price-hb~p{
font-size:.7em;
}
@ -92,4 +93,38 @@
}
.gallery-card:hover>.product-info-hb>.review>p{
display: none;
.imgs{
position: relative;
}
.ads-img{
position:inherit;
}
.imgs .ads-img {
width: 100%;
height: 100%;
display: none;
}
.imgs .ads-img:first-child {
display: flex;
}
.hover-area{
position: absolute;
display: flex;
height: 100%;
width: 200px;
top: 0;
left: 0;
}
.hover-0 {
width: 33%;
height: 100%;
}
.hover-1 {
width: 33%;
height: 100%;
}
.hover-2 {
width: 33%;
height: 100%;
}

View File

@ -21,6 +21,7 @@
transform: translateX(-100%);
-webkit-transition: 300ms ease;
transition: 300ms ease;
background-color: #FCFCFC;
@media only screen and (min-width: 768px) {
height: initial;
position: initial;
@ -29,7 +30,7 @@
transform: initial;
}
@media only screen and (min-width: 992px) {
padding: 1.5rem 2.25rem;
padding: 1.5rem;
}
&.reveal {
@ -90,4 +91,4 @@
cursor: pointer;
background: #000;
opacity: .2;
}
}

View File

@ -1,4 +1,20 @@
.profile-section {
h3 {
font-size: 1.25rem;
color: #707070;
@media only screen and (min-width: 768px) {
font-size: 1.5rem;
}
& + p {
color: #707070;
font-size: 13px;
@media only screen and (min-width: 768px) {
font-size: 15px;
}
}
}
.nav-tabs {
border-bottom: 1px solid #dee2e6;
padding-bottom: 10px;
@ -63,7 +79,6 @@
width: 130px;
height: 130px;
object-fit: cover;
border-radius: 50%;
@media (max-width: 992px) {
display: flex;
justify-content: center;
@ -116,22 +131,9 @@
form {
.new-profile-image {
position: relative;
bottom: 25px;
right: 30px;
top: -10px;
left: -10px;
cursor: pointer;
@media (max-width: 992px) {
bottom: 120px;
left: 100px;
top: auto;
}
@media (max-width: 576px) {
bottom: auto;
left: auto;
top: 10px;
}
}
.file-field {
visibility: hidden;
@ -176,4 +178,4 @@
height: initial;
}
}
}
}

View File

@ -504,4 +504,6 @@ return [
'undefined_member' => 'Undefined Member',
'new_membership_report' => 'New Membership Report',
'member_login_reports' => 'Member Login Reports',
'profile_instruction' => 'You can edit your profile information from this page.',
];

View File

@ -2,7 +2,7 @@
<img src="{{ img('visiosoft.module.profile::images/nav-menu.svg').url }}" alt="nav icon" id="navbarSideButton"
class="ml-2">
</div>
<div class="col-10 col-sm-6 col-md-3 profile-navigation border rounded navbar-side bg-white" id="navbarSide">
<div class="col-10 col-sm-6 col-md-3 profile-navigation border rounded navbar-side" id="navbarSide">
<span class="px-3 mb-2 link-unstyled">
{{ img('visiosoft.module.profile::images/interface.svg').data|raw }}
<p>

View File

@ -12,19 +12,25 @@
{% set profile_photo = user.file ? user.file.make.url : img('visiosoft.module.profile::images/profile-default.png').url %}
<div class="row px-3">
<!-- User Profile Form Section-->
<div class="col-md-12 bg-light profile-section pb-4 px-5">
<div class="col-md-12 bg-white profile-section pb-4 px-1 px-sm-5 border">
<div class="tab-content py-3 px-3 px-sm-0" id="nav-tabContent">
<div class="tab-pane fade show active" id="nav-profile" role="tabpanel"
aria-labelledby="nav-profile-tab">
<div class="col-12 mb-4 mb-md-5 mt-md-3 px-3 px-md-0">
<h3>{{ trans('visiosoft.module.profile::field.profile.name') }}</h3>
<p>{{ trans('visiosoft.module.profile::field.profile_instruction') }}</p>
</div>
<div>
{% set userForm = form('userProfile').entry(user.id).get() %}
{{ userForm.open()|raw }}
<div class="mt-4 d-flex profile--desc flex-column flex-lg-row">
<div class="profile-image d-flex d-sm-block m-auto m-sm-0 mr-sm-3">
<div class="profile-image d-flex d-sm-block m-auto m-sm-0 mr-sm-3 position-relative">
<img src="{{ profile_photo }}">
<i class="new-profile-image">{{ img('visiosoft.module.profile::images/camera.svg').data|raw }}</i>
<div class="new-profile-image position-absolute">
{{ img('visiosoft.module.profile::images/camera.svg').data|raw }}
</div>
{% if setting_value('visiosoft.module.profile::upload_avatar') %}
<div class="form-group">
{{ userForm.fields.file|raw }}
@ -91,4 +97,4 @@
{{ asset_script("visiosoft.module.profile::assets/js/education.js") }}
{{ asset_add("scripts.js", "visiosoft.module.profile::assets/js/profile.js") }}
{% endblock %}
{% endblock %}