]> git.atlas4tour.it Git - pia_atlas.git/commitdiff
- Modifiche
authorCostantino Vitale <costantino.vitale@dyrecta.com>
Tue, 18 Oct 2022 13:26:22 +0000 (15:26 +0200)
committerCostantino Vitale <costantino.vitale@dyrecta.com>
Tue, 18 Oct 2022 13:26:22 +0000 (15:26 +0200)
sistema/datatables.py
sistema/forms.py
sistema/models.py
sistema/templates/add_mod_percorso.html
sistema/templates/percorsi_cliente_home.html [new file with mode: 0644]
sistema/templates/registration/login.html
sistema/templates/registration/register.html
sistema/urls.py
sistema/views.py
utenti/datatables.py
utenti/templates/clienti_list.html

index 6a17edb07f045415d1c9227bd7da1a4a9fa2e0a8..016b1becdb9c541e6dc20f41dac7f963e40a772c 100644 (file)
@@ -170,7 +170,11 @@ class FeedbackDatatables(BaseDatatableView):
     order_columns = ['id', 'utente', 'valutazione', 'commento', 'del']
 
     def get_initial_queryset(self):
-        return self.model.objects.filter(is_active=True)
+        percorso = self.request.GET.get('pk')
+        if percorso:
+            return self.model.objects.filter(percorso_id=int(percorso), is_active=True)
+        else:
+            return self.model.objects.none()
 
     def render_column(self, row, column):
         if column == 'id':
index f00808f37798774c9c63e9ee15e6df2f5414d596..2c0b5c280fed85fdb517c57eb70844cd0bebbb57 100644 (file)
@@ -50,6 +50,13 @@ class TipoMultimediaForm(forms.ModelForm):
 
 
 class PoiForm(forms.ModelForm):
+
+    is_danger = forms.BooleanField(
+        label="Punto di pericolo",
+        required=False,
+        widget=forms.CheckboxInput(attrs={'class': 'form-control'})
+    )
+
     class Meta:
         model = PointOfInterest
         exclude = ('is_active',)
index bbc179205cbeeb6be61ac23673dc7a6a2abc4408..b847717a71b3ef8e3167b342e92706a1d58f89ce 100644 (file)
@@ -30,6 +30,7 @@ class PointOfInterest(models.Model):
     lat = models.FloatField()
     long = models.FloatField()
     icona = models.FileField(upload_to='icon/', null=True)
+    is_danger = models.BooleanField(default=False)
     is_active = models.BooleanField(default=True)
 
 
@@ -37,6 +38,7 @@ class Percorso(models.Model):
     nome = models.CharField(max_length=255, null=False)
     descrizione = models.CharField(max_length=255, null=False)
     testo = models.TextField(max_length=255, null=False)
+    prezzo = models.FloatField()
     is_active = models.BooleanField(default=True)
 
 
index 934a19d4756337d50d9dd8b8666590286edf3e02..cc46e579b74537e2c1351cf900599bab5c524119 100644 (file)
 
 
         $(document).ready(function () {
+            var pk_percorso = ''
+            {% if form.instance.pk %}
+                pk_percorso = {{ form.instance.pk }}
+            {% endif %}
+
             $('#feedback-table').dataTable({
                 processing: true,
                 serverSide: true,
                 ajax: {
                     "url": "{% url 'sistema:feedback_datatables' %}",
                     "type": 'GET',
+                    "data": {'pk': pk_percorso},
                 },
                 language: {
                     url: "//cdn.datatables.net/plug-ins/1.10.20/i18n/Italian.json"
                     option.value = {{ poi.id }};
                     option.text = '{{ poi.nome|safe }}';
                     selectList.appendChild(option);
+                    console.log(selectList)
                 {% endfor %}
             }
 
diff --git a/sistema/templates/percorsi_cliente_home.html b/sistema/templates/percorsi_cliente_home.html
new file mode 100644 (file)
index 0000000..ca950e0
--- /dev/null
@@ -0,0 +1,49 @@
+{% extends 'base.html' %}
+{% load static %}
+{% block content %}
+
+<div class="row">
+    <div class="col-12 col-md-12 col-lg-12">
+        <h1 class="line-listini"><i class="fa-solid fa-route clr-listini mr-2" aria-hidden="true"></i> Dettaglio percorso </h1>
+        <div class="card">
+            <div class="card-header">
+                <h4 class="clr-config">I tuoi percorsi</h4>
+            </div>
+
+            <div class="card-body">
+                <div class="row">
+
+                </div>
+            </div>
+        </div>
+
+        <div class="card">
+            <div class="card-header">
+                <h4 class="clr-config">Percorsi che puoi acquistare</h4>
+            </div>
+            <div class="card-body">
+                <div class="row">
+                    {% for percorso in list_percorsi %}
+                        <div class="card" style="width: 18rem;">
+                            <img class="card-img-top" src="{% static 'assets/img/logo.png' %}">
+                            <div class="card-body">
+                                <h5 class="card-title">{{ percorso.nome}}</h5>
+                                <p class="card-text">{{ percorso.descrizione }}</p>
+                            </div>
+                            <div class="card-footer">
+                                <div class="d-flex justify-content-between">
+                                    <h4>{{ percorso.prezzo|floatformat:2 }} €</h4>
+                                    <a href="#" class="btn btn-success">Compralo subito</a>
+                                </div>
+                            </div>
+                        <a href="{% url 'sistema:percorso_info' percorso.pk %}" class="stretched-link"></a>
+                        </div>
+                    {% endfor %}
+                </div>
+            </div>
+        </div>
+
+    </div>
+</div>
+
+{% endblock %}
\ No newline at end of file
index cd2b9f44caa7168d816645d17fb4a4d38e7eca5f..e4b5bbd0aeb7bbdf33eee37e84dbbd09cf0feacc 100644 (file)
                                         <a class="d-block small" href="{% url 'utenti:password_reset' %}">Forgot Password?</a>
                                     </div>
                                 </form>
+                                <br>
+                                <div class="text-center">
+                                    <a class="d-block" href="{% url 'utenti:register' %}">Registrati</a>
+                                </div>
                             </div>
                         </div>
                     </div>
index 361acfcfcee9c0bd2e35048100d9242d3ff71c19..a3d349c887992018a6f80dc07347ab7b99e70788 100644 (file)
@@ -46,7 +46,7 @@
             <div class="container mt-5">
                 <div class="row mb-5">
                     <div class="col-12 col-sm-8 offset-sm-2 col-md-6 offset-md-3 col-lg-6 offset-lg-3 col-xl-4 offset-xl-4 text-center">
-                        <img src="{% static 'admin/img/logo-farella-white.png' %}" width="160">
+                        <img src="{% static 'assets/img/logo.png' %}" width="160">
                     </div>
                 </div>
                 <div class="row">
@@ -63,7 +63,6 @@
                                         <br>
                                         <input class="btn btn-success" type="submit" value="Register">
                                         <br><br>
-                                        <a style="color:greenyellow" href={% url 'utenti:login' %}>Back to login</a>
                                     </form>
                                 </form>
                             </div>
index 928a187755b0b7bea8040253ce72d520485b06ff..fd37ad9c37b652096d0dbd5c2b894c485ae8b670 100644 (file)
@@ -3,7 +3,7 @@ from django.urls import path
 from sistema.datatables import LocalitaDatatables, MultimediaDatatables, TipoMultimediaDatatables, PercorsoDatatables, \
     PoiDatatables, FeedbackDatatables, GestisceLocalitaDatatables
 from sistema.views import Home, LocalitaListView, MultimediaListView, PuntiInteresseListView, \
-    TipologiaMultimediaListView, PercorsiListView, LocalitaView, TipoMultimediaView, PoiView, PercorsoView, FeedbackView
+    TipologiaMultimediaListView, PercorsiListView, LocalitaView, TipoMultimediaView, PoiView, PercorsoView, FeedbackView, PercorsoInfo
 
 urlpatterns = [
     path('', Home.as_view(), name='home'),
@@ -40,6 +40,7 @@ urlpatterns = [
     ## PERCORSO ##
     path('percorso/', PercorsoView.as_view(), name='percorso'),
     path('mod_percorso/<int:pk>/', PercorsoView.as_view(), name='mod_percorso'),
+    path('percorso_info/<int:pk>/', PercorsoInfo.as_view(), name='percorso_info'),
 
     ## FEEDBACK ##
     path('feedback/', FeedbackView.as_view(), name='feedback'),
index 596b01ab31854fb680507dd3d47b0f7c92284b02..db2dd3668be2dee97183f74d41e2452f4ba52293 100644 (file)
@@ -12,6 +12,7 @@ from rest_framework import status
 from sistema.forms import LocalitaForm, TipoMultimediaForm, PoiForm, PercorsoForm, MultimediaForm
 from sistema.models import Localita, TipologiaMultimedia, PointOfInterest, Percorso, Tappa, TappaSerializer, Multimedia, \
     Feedback, FeedbackSerializer
+from socoin_atlas import settings
 from utenti.mixins import CustomLoginRequiredMixin
 
 
@@ -39,8 +40,13 @@ class MultimediaListView(TemplateView):#PermissionRequiredMixin
     template_name = 'multimedia_list.html'
 
 
-class PercorsiListView(TemplateView):
-    template_name = 'percorsi_list.html'
+class PercorsiListView(View):
+    def get(self, request):
+        if request.session['roles'] == settings.CLIENTI_GROUPS:
+            list_percorsi = Percorso.objects.filter(is_active=True)
+            return render(request, 'percorsi_cliente_home.html', {'list_percorsi': list_percorsi})
+        else:
+            return render(request, 'percorsi_list.html', {})
 
 
 class Home(CustomLoginRequiredMixin, View):  # CustomLoginRequiredMixin
@@ -299,6 +305,10 @@ class PercorsoView(View):#PermissionRequiredMixin
         return redirect(reverse('sistema:percorsi_list'))
 
 
+class PercorsoInfo(View):
+    def get(self, request, *args, **kwargs):
+        return render(request, 'add_mod_percorso.html', {})
+
 
 class FeedbackView(View):#PermissionRequiredMixin
     #permission_required = [settings.TOUR_OPERATOR_GROUPS, settings.ADMIN_GROUPS]
index dac241e837eb0be4957dcba3eb557fef02ee48eb..e696b1bb201c0e0ae812f9cffb145257341ebb7b 100644 (file)
@@ -47,7 +47,7 @@ class UserDatatables(BaseDatatableView):
             elif self.get_role() == settings.TOUR_OPERATOR_GROUPS:
                 return '<a class="btn btn-sm btn-primary" href="/utenti/mod_tour_operator/%s/" ><i class="fas fa-edit"></i></a>' % row.pk
             else:
-                return '<a class="btn btn-sm btn-primary" href="/utenti/mod_cliente/%s/" ><i class="fas fa-edit"></i></a>' % row.pk
+                return '<a class="btn btn-sm btn-primary" href="#" ><i class="fas fa-edit"></i></a>' #% row.pk
         if column == 'del':
             return '<a class="btn btn-sm btn-danger" href="DeleteUser(%s)" ><i class="fas fa-trash"></i></a>' % row.pk
         else:
index 0da29c46a72d24d7c45a83a668ca543f4b295f73..03136926bdb5d609299155b7bd8ee92b6ff277cf 100644 (file)
@@ -8,9 +8,11 @@
             <div class="card">
                 <div class="card-header justify-content-between">
                     <h4 class="clr-bolle">Lista clienti</h4>
-                    <a href="#">
-                       <button class="btn-sm btn-primary"><i class="fa-solid fa-plus"></i>  Aggiungi un nuovo cliente</button>
-                    </a>
+                    <!--
+                        <a href="#">
+                           <button class="btn-sm btn-primary"><i class="fa-solid fa-plus"></i>  Aggiungi un nuovo cliente</button>
+                        </a>
+                    -->
                 </div>
 
                 <div class="card-body">