merged urls
This commit is contained in:
commit
f3bde41755
@ -20,7 +20,6 @@ from rest_framework.documentation import include_docs_urls
|
|||||||
from rest_framework.permissions import AllowAny
|
from rest_framework.permissions import AllowAny
|
||||||
from django.contrib.auth import views as auth_views
|
from django.contrib.auth import views as auth_views
|
||||||
|
|
||||||
|
|
||||||
urlpatterns = [
|
urlpatterns = [
|
||||||
path('admin/', admin.site.urls),
|
path('admin/', admin.site.urls),
|
||||||
path('', include('roomservice.urls')),
|
path('', include('roomservice.urls')),
|
||||||
@ -28,9 +27,8 @@ urlpatterns = [
|
|||||||
path('login/', auth_views.login, {'template_name': 'login.jinja'}, name='login'),
|
path('login/', auth_views.login, {'template_name': 'login.jinja'}, name='login'),
|
||||||
path('logout/', auth_views.logout, name='logout'),
|
path('logout/', auth_views.logout, name='logout'),
|
||||||
|
|
||||||
|
|
||||||
# APIs
|
# APIs
|
||||||
# path('api/', include('respool.api.urls')),
|
path('api/', include('roomservice.api.urls')),
|
||||||
|
|
||||||
# API Docs
|
# API Docs
|
||||||
# path('api/docs/', include_docs_urls(title='Respool API Docs', public=True,
|
# path('api/docs/', include_docs_urls(title='Respool API Docs', public=True,
|
||||||
|
|||||||
0
roofis2/roomservice/api/__init__.py
Normal file
0
roofis2/roomservice/api/__init__.py
Normal file
20
roofis2/roomservice/api/serializers.py
Normal file
20
roofis2/roomservice/api/serializers.py
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
from roomservice.models import Booking, Room
|
||||||
|
from rest_framework import serializers
|
||||||
|
|
||||||
|
|
||||||
|
class RoomSerializer(serializers.HyperlinkedModelSerializer):
|
||||||
|
class Meta:
|
||||||
|
model = Room
|
||||||
|
fields = ('id',)
|
||||||
|
|
||||||
|
|
||||||
|
class BookingSerializer(serializers.HyperlinkedModelSerializer):
|
||||||
|
room = RoomSerializer(many=False, read_only=True)
|
||||||
|
start_date = serializers.DateField(format='iso-8601')
|
||||||
|
end_date = serializers.DateField(format='iso-8601')
|
||||||
|
start_time = serializers.TimeField(format='iso-8601')
|
||||||
|
end_time = serializers.TimeField(format='iso-8601')
|
||||||
|
|
||||||
|
class Meta:
|
||||||
|
model = Booking
|
||||||
|
fields = ('id', 'room', 'start_date', 'end_date', 'start_time', 'end_time')
|
||||||
7
roofis2/roomservice/api/urls.py
Normal file
7
roofis2/roomservice/api/urls.py
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
from django.urls import path
|
||||||
|
from . import views
|
||||||
|
|
||||||
|
app_name = 'roomservice.api'
|
||||||
|
urlpatterns = [
|
||||||
|
path('booking', views.ApiBooking.as_view(), name='api-booking'),
|
||||||
|
]
|
||||||
21
roofis2/roomservice/api/views.py
Normal file
21
roofis2/roomservice/api/views.py
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
from __future__ import unicode_literals
|
||||||
|
|
||||||
|
from roomservice.models import Booking
|
||||||
|
from roomservice.api.serializers import BookingSerializer
|
||||||
|
|
||||||
|
from rest_framework import generics
|
||||||
|
from rest_framework.decorators import permission_classes
|
||||||
|
from rest_framework.permissions import IsAuthenticated, AllowAny
|
||||||
|
|
||||||
|
|
||||||
|
@permission_classes((AllowAny,))
|
||||||
|
class ApiBooking(generics.ListAPIView):
|
||||||
|
serializer_class = BookingSerializer
|
||||||
|
|
||||||
|
def get_queryset(self):
|
||||||
|
queryset = Booking.objects.all()
|
||||||
|
roomId = self.request.query_params.get('room_id')
|
||||||
|
|
||||||
|
if roomId:
|
||||||
|
queryset = queryset.filter(room=roomId)
|
||||||
|
return queryset
|
||||||
9
roofis2/roomservice/forms.py
Normal file
9
roofis2/roomservice/forms.py
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
from django.db import models
|
||||||
|
from .models import Favorite
|
||||||
|
from django.forms import ModelForm
|
||||||
|
|
||||||
|
|
||||||
|
class AuthorForm(ModelForm):
|
||||||
|
class Meta:
|
||||||
|
model = Favorite
|
||||||
|
fields = ['room', 'staff']
|
||||||
@ -142,7 +142,7 @@ def create_num_equipment():
|
|||||||
def create_access_point():
|
def create_access_point():
|
||||||
for i in range(1, 25):
|
for i in range(1, 25):
|
||||||
access_point, _ = AccessPoint.objects.get_or_create(mac_address=''.join(
|
access_point, _ = AccessPoint.objects.get_or_create(mac_address=''.join(
|
||||||
random.choices(['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F'], k=12)), )
|
random.choices(['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F'], k=12)))
|
||||||
for i in range(1, random.randint(1, 4)):
|
for i in range(1, random.randint(1, 4)):
|
||||||
access_point.rooms.add(random.choice(Room.objects.all()))
|
access_point.rooms.add(random.choice(Room.objects.all()))
|
||||||
access_point.save()
|
access_point.save()
|
||||||
|
|||||||
@ -1,12 +1,14 @@
|
|||||||
from django.urls import path
|
from django.urls import path, include
|
||||||
from . import views
|
from . import views
|
||||||
|
|
||||||
app_name = 'roomservice'
|
app_name = 'roomservice'
|
||||||
urlpatterns = [
|
urlpatterns = [
|
||||||
path('', views.favorites, name='home'),
|
path('', views.favorites, name='home'),
|
||||||
|
path('favorite', views.add_favorites, name='add-fav'),
|
||||||
|
|
||||||
path('adminpage', views.admin, name='admin'),
|
path('adminpage', views.admin, name='admin'),
|
||||||
path('booking', views.booking, name='booking'),
|
path('booking', views.booking, name='booking'),
|
||||||
path('search', views.search, name='search'),
|
path('search', views.search, name='search'),
|
||||||
path('location_search', views.location_based_search, name='location-based-search'),
|
path('location_search', views.location_based_search, name='location-based-search'),
|
||||||
path('filter_search', views.filter_search, name='filter-search'),
|
path('filter_search', views.filter_search, name='filter-search')]
|
||||||
]
|
|
||||||
|
|||||||
@ -1,5 +1,6 @@
|
|||||||
from roomservice.models import Room, Favorite
|
from roomservice.models import Room, Favorite, Booking
|
||||||
from django.shortcuts import render, redirect
|
import datetime
|
||||||
|
from django.shortcuts import render
|
||||||
import logging
|
import logging
|
||||||
|
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
@ -14,9 +15,47 @@ def search(request):
|
|||||||
def booking(request):
|
def booking(request):
|
||||||
room_id = request.POST["room"]
|
room_id = request.POST["room"]
|
||||||
room = Room.objects.get(id=room_id)
|
room = Room.objects.get(id=room_id)
|
||||||
logger.info(room_id)
|
startdate = datetime.date.today()
|
||||||
logger.info(room)
|
weekday = startdate.weekday()
|
||||||
return render(request, 'booking.jinja', {"title": "rooF(i)S is love rooF(i)S is live!!", "room": room})
|
logger.info(weekday)
|
||||||
|
enddate = startdate + datetime.timedelta(7)
|
||||||
|
multd = []
|
||||||
|
bookings = Booking.objects.filter(room_id=room.id, start_date__gte=startdate, end_date__lte=enddate)
|
||||||
|
logger.info(bookings)
|
||||||
|
for booking in bookings:
|
||||||
|
logger.info(booking)
|
||||||
|
sdate = booking.start_date
|
||||||
|
logger.info(sdate)
|
||||||
|
edate = booking.end_date
|
||||||
|
logger.info(edate)
|
||||||
|
stime = booking.start_time.hour
|
||||||
|
logger.info(stime)
|
||||||
|
etime = booking.end_time.hour + 1
|
||||||
|
logger.info(etime)
|
||||||
|
if edate != sdate:
|
||||||
|
break
|
||||||
|
else:
|
||||||
|
if weekday == 0:
|
||||||
|
day = "Monday"
|
||||||
|
elif weekday == 1:
|
||||||
|
day = "Tuesday"
|
||||||
|
elif weekday == 2:
|
||||||
|
day = "Wednesday"
|
||||||
|
elif weekday == 3:
|
||||||
|
day = "Thursday"
|
||||||
|
elif weekday == 4:
|
||||||
|
day = "Friday"
|
||||||
|
elif weekday == 5:
|
||||||
|
day = "Saturday"
|
||||||
|
elif weekday == 6:
|
||||||
|
day = "Sunday"
|
||||||
|
timediff = etime - stime
|
||||||
|
if timediff > 1:
|
||||||
|
while timediff > 1:
|
||||||
|
multd.append(day + (stime + timediff - 1).__str__() + "-" + (stime + timediff).__str__())
|
||||||
|
timediff = timediff - 1
|
||||||
|
logger.info(multd)
|
||||||
|
return render(request, 'booking.jinja', {"title": "rooF(i)S is love rooF(i)S is live!!", "multd": multd})
|
||||||
|
|
||||||
|
|
||||||
def admin(request):
|
def admin(request):
|
||||||
@ -32,6 +71,13 @@ def favorites(request):
|
|||||||
{"title": "rooF(i)S is love rooF(i)S is live!!"})
|
{"title": "rooF(i)S is love rooF(i)S is live!!"})
|
||||||
|
|
||||||
|
|
||||||
|
def add_favorites(request):
|
||||||
|
if request.method == 'POST':
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
return render(request, 'add_fav.jinja', {"title": "Add a new Favorite"})
|
||||||
|
|
||||||
|
|
||||||
def location_based_search(request):
|
def location_based_search(request):
|
||||||
return render(request, 'favorites.jinja', {"title": "rooF(i)S is love rooF(i)S is live!!"})
|
return render(request, 'favorites.jinja', {"title": "rooF(i)S is love rooF(i)S is live!!"})
|
||||||
|
|
||||||
|
|||||||
@ -5,4 +5,10 @@
|
|||||||
line-height: 3.5em;
|
line-height: 3.5em;
|
||||||
vertical-align: middle;
|
vertical-align: middle;
|
||||||
padding-left: -1em;
|
padding-left: -1em;
|
||||||
|
}
|
||||||
|
td{
|
||||||
|
background-color: lawngreen;
|
||||||
|
}
|
||||||
|
.booked{
|
||||||
|
background-color: red;
|
||||||
}
|
}
|
||||||
15
roofis2/templates/add_fav.jinja
Normal file
15
roofis2/templates/add_fav.jinja
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
{% extends 'base.jinja' %}
|
||||||
|
{% block content %}
|
||||||
|
<div class="row container">
|
||||||
|
<div class="col-12"><h2>Add Favorite</h2></div>
|
||||||
|
<div class="col-2"></div>
|
||||||
|
<div class="col-8">
|
||||||
|
<form method="post">
|
||||||
|
<input type="hidden" name="csrfmiddlewaretoken" value="{{ csrf_token }}">
|
||||||
|
{{ form.as_p() }}
|
||||||
|
<button type="submit">Login</button>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
<div class="col-2"></div>
|
||||||
|
</div>
|
||||||
|
{% endblock %}
|
||||||
@ -1,6 +1,12 @@
|
|||||||
{% extends 'base.jinja' %}
|
{% extends 'base.jinja' %}
|
||||||
{% block content %}
|
{% block content %}
|
||||||
<table class="table table-hover table-light">
|
{% for day in multd%}
|
||||||
|
<script>
|
||||||
|
var el = document.getElementById("{{day}}");
|
||||||
|
el.classList.add("booked");
|
||||||
|
</script>
|
||||||
|
{% endfor %}
|
||||||
|
<table class="table table-light">
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<th scope="col">Time</th>
|
<th scope="col">Time</th>
|
||||||
@ -12,157 +18,147 @@
|
|||||||
<th scope="col">Saturday</th>
|
<th scope="col">Saturday</th>
|
||||||
<th scope="col">Sunday</th>
|
<th scope="col">Sunday</th>
|
||||||
</tr>
|
</tr>
|
||||||
</head>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
<th scope="row">6:00 - 7:00</th>
|
<th scope="row">6:00 - 7:00</th>
|
||||||
<td></td>
|
<td id="Monday6-7" class=""></td>
|
||||||
<td></td>
|
<td id="Tuesday6-7" class=""></td>
|
||||||
<td></td>
|
<td id="Wednesday6-7" class=""></td>
|
||||||
<td></td>
|
<td id="Thursday6-7" class=""></td>
|
||||||
<td></td>
|
<td id="Friday6-7" class=""></td>
|
||||||
<td></td>
|
<td id="Saturday6-7" class=""></td>
|
||||||
<td></td>
|
<td id="Sunday6-7" class=""></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<th scope="row">7:00 - 8:00</th>
|
<th scope="row">7:00 - 8:00</th>
|
||||||
<td></td>
|
<td id="Monday7-8" class=""></td>
|
||||||
<td></td>
|
<td id="Tuesday7-8" class=""></td>
|
||||||
<td></td>
|
<td id="Wednesday7-8" class=""></td>
|
||||||
<td></td>
|
<td id="Thursday7-8" class=""></td>
|
||||||
<td></td>
|
<td id="Friday7-8" class=""></td>
|
||||||
<td></td>
|
<td id="Saturday7-8" class=""></td>
|
||||||
<td></td>
|
<td id="Sunday7-8" class=""></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<th scope="row">8:00 - 9:00</th>
|
<th scope="row">8:00 - 9:00</th>
|
||||||
<td></td>
|
<td id="Monday8-9" class=""></td>
|
||||||
<td></td>
|
<td id="Tuesday8-9" class=""></td>
|
||||||
<td></td>
|
<td id="Wednesday8-9" class=""></td>
|
||||||
<td></td>
|
<td id="Thursday8-9" class=""></td>
|
||||||
<td></td>
|
<td id="Friday8-9" class=""></td>
|
||||||
<td></td>
|
<td id="Saturday8-9" class=""></td>
|
||||||
<td></td>
|
<td id="Sunday8-9" class=""></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<th scope="row">9:00 - 10:00</th>
|
<th scope="row">9:00 - 10:00</th>
|
||||||
<td></td>
|
<td id="Monday9-10" class=""></td>
|
||||||
<td></td>
|
<td id="Tuesday9-10" class=""></td>
|
||||||
<td></td>
|
<td id="Wednesday9-10" class=""></td>
|
||||||
<td></td>
|
<td id="Thursday9-10" class=""></td>
|
||||||
<td></td>
|
<td id="Friday9-10" class=""></td>
|
||||||
<td></td>
|
<td id="Saturday9-10" class=""></td>
|
||||||
<td></td>
|
<td id="Sunday9-10" class=""></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<th scope="row">10:00 - 11:00</th>
|
<th scope="row">10:00 - 11:00</th>
|
||||||
<td></td>
|
<td id="Monday10-11" class=""></td>
|
||||||
<td></td>
|
<td id="Tuesday10-11" class=""></td>
|
||||||
<td></td>
|
<td id="Wednesday10-11" class=""></td>
|
||||||
<td></td>
|
<td id="Thursday10-11" class=""></td>
|
||||||
<td></td>
|
<td id="Friday10-11" class=""></td>
|
||||||
<td></td>
|
<td id="Saturday10-11" class=""></td>
|
||||||
<td></td>
|
<td id="Sunday10-11" class=""></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<th scope="row">11:00 - 12:00</th>
|
<th scope="row">11:00 - 12:00</th>
|
||||||
<td></td>
|
<td id="Monday11-12" class=""></td>
|
||||||
<td></td>
|
<td id="Tuesday11-12" class=""></td>
|
||||||
<td></td>
|
<td id="Wednesday11-12" class=""></td>
|
||||||
<td></td>
|
<td id="Thursday11-12" class=""></td>
|
||||||
<td></td>
|
<td id="Friday11-12" class=""></td>
|
||||||
<td></td>
|
<td id="Saturday11-12" class=""></td>
|
||||||
<td></td>
|
<td id="Sunday11-12" class=""></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<th scope="row">12:00 - 13:00</th>
|
<th scope="row">12:00 - 13:00</th>
|
||||||
<td></td>
|
<td id="Monday12-13" class=""></td>
|
||||||
<td></td>
|
<td id="Tuesday12-13" class=""></td>
|
||||||
<td></td>
|
<td id="Wednesday12-13" class=""></td>
|
||||||
<td></td>
|
<td id="Thursday12-13" class=""></td>
|
||||||
<td></td>
|
<td id="Friday12-13" class=""></td>
|
||||||
<td></td>
|
<td id="Saturday12-13" class=""></td>
|
||||||
<td></td>
|
<td id="Sunday12-13" class=""></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<th scope="row">13:00 - 14:00</th>
|
<th scope="row">13:00 - 14:00</th>
|
||||||
<td></td>
|
<td id="Monday13-14" class=""></td>
|
||||||
<td></td>
|
<td id="Tuesday13-14" class=""></td>
|
||||||
<td></td>
|
<td id="Wednesday13-14" class=""></td>
|
||||||
<td></td>
|
<td id="Thursday13-14" class=""></td>
|
||||||
<td></td>
|
<td id="Friday13-14" class=""></td>
|
||||||
<td></td>
|
<td id="Saturday13-14" class=""></td>
|
||||||
<td></td>
|
<td id="Sunday13-14" class=""></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<th scope="row">14:00 - 15:00</th>
|
<th scope="row">14:00 - 15:00</th>
|
||||||
<td></td>
|
<td id="Monday14-15" class=""></td>
|
||||||
<td></td>
|
<td id="Tuesday14-15" class=""></td>
|
||||||
<td></td>
|
<td id="Wednesday14-15" class=""></td>
|
||||||
<td></td>
|
<td id="Thursday14-15" class=""></td>
|
||||||
<td></td>
|
<td id="Friday14-15" class=""></td>
|
||||||
<td></td>
|
<td id="Saturday14-15" class=""></td>
|
||||||
<td></td>
|
<td id="Sunday14-15" class=""></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<th scope="row">15:00 - 16:00</th>
|
<th scope="row">15:00 - 16:00</th>
|
||||||
<td></td>
|
<td id="Monday15-16" class=""></td>
|
||||||
<td></td>
|
<td id="Tuesday15-16" class=""></td>
|
||||||
<td></td>
|
<td id="Wednesday15-16" class=""></td>
|
||||||
<td></td>
|
<td id="Thursday15-16" class=""></td>
|
||||||
<td></td>
|
<td id="Friday15-16" class=""></td>
|
||||||
<td></td>
|
<td id="Saturday15-16" class=""></td>
|
||||||
<td></td>
|
<td id="Sunday15-16" class=""></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<th scope="row">16:00 - 17:00</th>
|
<th scope="row">16:00 - 17:00</th>
|
||||||
<td></td>
|
<td id="Monday16-17" class=""></td>
|
||||||
<td></td>
|
<td id="Tuesday16-17" class=""></td>
|
||||||
<td></td>
|
<td id="Wednesday16-17" class=""></td>
|
||||||
<td></td>
|
<td id="Thursday16-17" class=""></td>
|
||||||
<td></td>
|
<td id="Friday16-17" class=""></td>
|
||||||
<td></td>
|
<td id="Saturday16-17" class=""></td>
|
||||||
<td></td>
|
<td id="Sunday16-17" class=""></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<th scope="row">17:00 - 18:00</th>
|
<th scope="row">17:00 - 18:00</th>
|
||||||
<td></td>
|
<td id="Monday17-18" class=""></td>
|
||||||
<td></td>
|
<td id="Tuesday17-18" class=""></td>
|
||||||
<td></td>
|
<td id="Wednesday17-18" class=""></td>
|
||||||
<td></td>
|
<td id="Thursday17-18" class=""></td>
|
||||||
<td></td>
|
<td id="Friday17-18" class=""></td>
|
||||||
<td></td>
|
<td id="Saturday17-18" class=""></td>
|
||||||
<td></td>
|
<td id="Sunday17-18" class=""></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<th scope="row">18:00 - 19:00</th>
|
<th scope="row">18:00 - 19:00</th>
|
||||||
<td></td>
|
<td id="Monday18-19" class=""></td>
|
||||||
<td></td>
|
<td id="Tuesday18-19" class=""></td>
|
||||||
<td></td>
|
<td id="Wednesday18-19" class=""></td>
|
||||||
<td></td>
|
<td id="Thursday18-19" class=""></td>
|
||||||
<td></td>
|
<td id="Friday18-19" class=""></td>
|
||||||
<td></td>
|
<td id="Saturday18-19" class=""></td>
|
||||||
<td></td>
|
<td id="Sunday18-19" class=""></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<th scope="row">19:00 - 20:00</th>
|
<th scope="row">19:00 - 20:00</th>
|
||||||
<td></td>
|
<td id="Monday19-20" class=""></td>
|
||||||
<td></td>
|
<td id="Tuesday19-20" class=""></td>
|
||||||
<td></td>
|
<td id="Wednesday19-20" class=""></td>
|
||||||
<td></td>
|
<td id="Thursday19-20" class=""></td>
|
||||||
<td></td>
|
<td id="Friday19-20" class=""></td>
|
||||||
<td></td>
|
<td id="Saturday19-20" class=""></td>
|
||||||
<td></td>
|
<td id="Sunday19-20" class=""></td>
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<th scope="row">20:00 - 6:00</th>
|
|
||||||
<td></td>
|
|
||||||
<td></td>
|
|
||||||
<td></td>
|
|
||||||
<td></td>
|
|
||||||
<td></td>
|
|
||||||
<td></td>
|
|
||||||
<td></td>
|
|
||||||
</tr>
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
|
|||||||
@ -18,7 +18,7 @@
|
|||||||
</div>
|
</div>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
<div class="col-6">
|
<div class="col-6">
|
||||||
{{ macros.home_item_with_icon(icon='fa-plus', icon_size='fa-4x', url_id='', link='', title='Add Fav', attr='') }}
|
{{ macros.home_item_with_icon(icon='fa-plus', icon_size='fa-4x', url_id='roomservice:add-fav', link='', title='Add Fav', attr='') }}
|
||||||
</div>
|
</div>
|
||||||
{% if request.user.is_superuser %}
|
{% if request.user.is_superuser %}
|
||||||
<div class="col-6">
|
<div class="col-6">
|
||||||
|
|||||||
Reference in New Issue
Block a user