Skip to content

Commit

Permalink
#125 - Added balance badge per node
Browse files Browse the repository at this point in the history
  • Loading branch information
jjoseba committed May 22, 2024
1 parent 166c2b4 commit 18b2317
Show file tree
Hide file tree
Showing 8 changed files with 91 additions and 29 deletions.
20 changes: 20 additions & 0 deletions core/migrations/0010_node_balance_badge.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# Generated by Django 5.0 on 2024-05-22 09:17

import helpers.filesystem
import imagekit.models.fields
from django.db import migrations


class Migration(migrations.Migration):

dependencies = [
('core', '0009_node_has_linked_crm_node_linked_crm_url'),
]

operations = [
migrations.AddField(
model_name='node',
name='balance_badge',
field=imagekit.models.fields.ProcessedImageField(blank=True, null=True, upload_to=helpers.filesystem.RandomFileName('badge/'), verbose_name='Imagen del distintivo de balance'),
),
]
3 changes: 3 additions & 0 deletions core/models/node.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,9 @@ class Node(models.Model):
banner_image = ProcessedImageField(null=True, blank=True, upload_to=RandomFileName('node/'),
verbose_name=_('Imagen principal'),
processors=[ResizeToFit(756, 512, upscale=False)], format='PNG')
balance_badge = ProcessedImageField(null=True, blank=True, upload_to=RandomFileName('badge/'),
verbose_name=_('Imagen del distintivo de balance'),
processors=[ResizeToFit(512, 512, upscale=False)], format='PNG')

webpage_link = models.URLField(blank=True, null=True, verbose_name=_('Página web'), max_length=250)
takahe_server = models.URLField(blank=True, null=True, verbose_name=_('Servidor de Takahe'))
Expand Down
3 changes: 2 additions & 1 deletion market/forms/market.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ class Meta:
'register_consumer_url': forms.TextInput(),
'register_provider_url': forms.TextInput(),
'info_page_url': forms.TextInput(),
'banner_image': forms.FileInput()
'banner_image': forms.FileInput(),
'balance_badge': forms.FileInput(),
}
exclude = []
2 changes: 1 addition & 1 deletion market/urls.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
# Superadmin market management
path('m/', views.MarketList.as_view(), name='market_list'),
path('m/add/', views.AddMarket.as_view(), name='add_market'),
path('m/<pk>/', views.EditMarket.as_view(), name='edit_market'),
path('m/<market>/', views.EditMarket.as_view(), name='edit_market'),

#### Market management #####
path('<int:market>/dashboard/', views.MarketDashboard.as_view(), name='market_dashboard'),
Expand Down
5 changes: 3 additions & 2 deletions market/views/market.py
Original file line number Diff line number Diff line change
Expand Up @@ -52,15 +52,16 @@ def get_success_url(self):
return reverse('market:market_list', )


class EditMarket(UpdateView, MarketFormsetView):
class EditMarket(MarketMixin, UpdateView, MarketFormsetView):
template_name = 'market/edit.html'
pk_url_kwarg = 'market'
form_class = MarketForm
model = Node
initial = {'preffered_locale': 'es-ES'}

def get_success_url(self):
messages.success(self.request, _('Datos actualizados correctamente.'))
return reverse('market:edit_market', kwargs={"pk": self.object.pk})
return reverse('market:edit_market', kwargs={"market": self.object.pk})


class MarketInfoView(MarketMixin, TemplateView):
Expand Down
2 changes: 1 addition & 1 deletion market/views/provider.py
Original file line number Diff line number Diff line change
Expand Up @@ -168,7 +168,7 @@ def get_success_url(self):
return self.reverse('market:provider_detail', kwargs={'pk': self.object.pk})


class ProviderSocialBalance(DetailView):
class ProviderSocialBalance(AccountAccessMixin, MarketMixin, DetailView):
template_name = 'balance/detail.html'
context_object_name = 'entity'
model = Provider
Expand Down
4 changes: 2 additions & 2 deletions templates/balance/detail.html
Original file line number Diff line number Diff line change
Expand Up @@ -24,9 +24,9 @@
<h4 class="text-primary font-weight-bold"><strong>{% translate 'Distintivo de calidad del MESM' %}</strong></h4>
<div class="d-fluid">
{% translate 'Al realizar el Balance Social, además de obtener el sello, infografía e informe personalizado, las entidades que lo soliciten, tendrán este Distintivo de calidad, como herramienta diferenciadora que dará visibilidad y prestigio a vuestra entidad.' %}
<img src="{% static 'imgs/sello_mes.png' %}" alt="Sello MES" class="img-fluid p-md-3 pt-4">
<div class="text-center"><img src="{% if object.node.balance_badge %}{{ object.node.balance_badge.url }}{% else %}{% static 'imgs/sello_mes.png' %}{% endif %}" alt="Sello MES" class="img-fluid p-3 pt-4"></div>
{% translate 'El distintivo contiene un QR que permite a las socias visitar un documento como el que se puede ver aquí.' %}

{% translate 'El distintivo contiene un QR que permite a las socias visitar un documento como el que se puede ver aquí.' %}
</div>
</div>
</div>
Expand Down
81 changes: 59 additions & 22 deletions templates/market/form.html
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,45 @@

<div class="col-sm-9 col-md-7 ">
<div class="card mb-4">
<div class="card-body">
<div class="card-body py-3">
{% include "common/forms/field.html" with field=form.name %}

{% include "common/forms/field.html" with field=form.shortname %}

<label class="mt-3 mb-2">{% translate 'Logo del mercado (preferiblemente PNG con transparencia)' %}</label>


{% include "common/forms/field.html" with field=form.preferred_locale %}


<div class="mt-5 mb-3">

</div>
<div class="mt-5">
{% include "common/forms/switch.html" with field=form.visible %}
{% include "common/forms/switch.html" with field=form.self_register_allowed %}
{% include "common/forms/switch.html" with field=form.member_card_enabled %}
</div>
<div class="mt-3" data-visible-by="#id_self_register_allowed">
{% include "common/forms/field.html" with field=form.register_provider_url %}
{% include "common/forms/field.html" with field=form.register_consumer_url %}
</div>
{% include "common/forms/switch.html" with field=form.has_linked_crm %}
<div class="mt-3" data-visible-by="#id_has_linked_crm">
{% include "common/forms/field.html" with field=form.linked_crm_url %}
</div>

</div>
</div>

<div class="card mb-4">
<div class="card-body">
<h4 class="card-title"><i class="material-icons">edit_location</i> {% translate 'Datos públicos' %}</h4>

{% include "common/forms/field.html" with field=form.info_page_url %}

{% include "common/forms/field.html" with field=form.contact_email %}

<label class="mt-3 mb-2">{% translate 'Logo del mercado (preferiblemente PNG con transparencia)' %}</label>
<div class="card form-photo mb-3">
<div class="bg-checkers p-4">
<img class="img-fluid" id="offer-thumb" src="{% if object.banner_image %}{{ object.banner_image.url }}{% else %}{% static 'imgs/brand.png' %}{% endif %}" alt="{{object.title}}">
Expand All @@ -29,32 +62,36 @@
</div>
</div>

{% include "common/forms/field.html" with field=form.preferred_locale %}
<div class="row mt-5">

{% include "common/forms/field.html" with field=form.contact_email %}
<div class="col-sm-7 ">
<h5 class="mb-0 text-primary">{% translate 'Distintivo de balance social' %} </h5>
<p>{% translate 'Imagen (preferiblemente PNG con transparencia) para representar el distintivo de balance social de este mercado. ' %}</p>
{% translate 'Se utiliza desde la app para acceder al detalle de balance de cada proveedora' %}
</div>

<div class="mt-5">
{% include "common/forms/switch.html" with field=form.self_register_allowed %}
{% include "common/forms/switch.html" with field=form.member_card_enabled %}
</div>
<div class="mt-3" data-visible-by="#id_self_register_allowed">
{% include "common/forms/field.html" with field=form.register_provider_url %}
{% include "common/forms/field.html" with field=form.register_consumer_url %}
</div>
<div class="mt-5 mb-3">
{% include "common/forms/switch.html" with field=form.visible %}
</div>
<div class="col-sm-5">
<div class="card form-photo mb-3">
<div class="bg-checkers px-4 py-2">
<img class="img-fluid" id="badge-thumb" src="{% if object.balance_badge %}{{ object.balance_badge.url }}{% else %}{% static 'imgs/sello_mes.png' %}{% endif %}" alt="{{object.title}}">

{% include "common/forms/field.html" with field=form.info_page_url %}
{% include "common/forms/switch.html" with field=form.has_linked_crm %}
<div class="mt-3" data-visible-by="#id_has_linked_crm">
{% include "common/forms/field.html" with field=form.linked_crm_url %}
</div>
</div>

</div>
</div>
<div class=" action-btns outside">
<a class="btn btn-primary text-light btn-float btn-lg btn-fab-photo" href="#" data-toggle="tooltip" data-placement="bottom" title="Editar imagen"><i class="material-icons">edit</i></a>
</div>

<div class="file-field" data-img-target="#badge-thumb">
<div class="uploaded">
{{ form.balance_badge }}
</div>
</div>
</div>
</div>
</div>

</div>
</div>
</div>

<div class="col-sm-12 col-md-5">
Expand Down

0 comments on commit 18b2317

Please sign in to comment.