Commit c33bfdf2 authored by Rafal's avatar Rafal

add beacons end point

parent c7421378
<div class="container">
<table class="table borderless">
<thead>
<tr>
<th class="col-md-2">Beacon</th>
<th>Linki</th>
</tr>
</thead>
</table>
{% for beacon_manager in user_project.beacon_managers.all %}
{{ beacon_manager.beacon.uuid }}
{% endfor %}
{% for beacon_data in beacon_display %}
{% include 'user_panel/content/beacon_detail.html' %}
{% endfor %}
</div>
\ No newline at end of file
......@@ -7,6 +7,7 @@
<div class="container">
<div class="row">
{% for project in user_projects %}
<a href="/project/{{ project.id }}">
<div class="col-xs-12 col-sm-6 col-md-6 col-lg-6 col-lg-offset-3" >
<div class="box opacity" >
......@@ -14,27 +15,14 @@
<span class="fa fa-4x fa-html5"></span>
</div>
<div class="info">
<h4 class="text-center">Gra miejska</h4>
<p>Gra miejska Juwenalia 2015</p>
<h4 class="text-center">{{ project.name }}</h4>
<p>{{ project.description }}</p>
</div>
</div>
</div>
</a>
<a href="/project/{{ project.id }}">
<div class="col-xs-12 col-sm-6 col-md-6 col-lg-6 col-lg-offset-3" >
<div class="box opacity" >
<div class="box-icon">
<span class="fa fa-4x fa-html5"></span>
</div>
<div class="info">
<h4 class="text-center">Gra miejska</h4>
<p>Gra miejska Juwenalia 2015</p>
</div>
</div>
</div>
</a>
{% endfor %}
</div>
</div>
......
......@@ -9,6 +9,7 @@ from django.template import RequestContext
# Create your views here.
from rest_framework import viewsets
import rest_framework
from rest_framework.decorators import detail_route
from rest_framework.response import Response
from rest_framework.views import APIView
from Hub.models import Beacon, BeaconManager, Site, Category, UserProject
......@@ -45,6 +46,17 @@ class UserProjectViewSet(viewsets.ModelViewSet):
queryset = UserProject.objects.all()
serializer_class = UserProjectSerializer
@detail_route()
def beacons(self, request, pk=None):
user_project = UserProject.objects.get(pk=pk)
beacons = []
beacon_managers = user_project.beacon_managers.all()
for beacon_manager in beacon_managers:
serializer_beacon = BeaconSerializer(beacon_manager.beacon, context={'request': request})
beacons.append(serializer_beacon.data)
return Response(data=beacons)
class SiteViewSet(viewsets.ModelViewSet):
"""
......@@ -131,23 +143,26 @@ def main_page(request):
def dashboard(request):
context = RequestContext(request)
return render_to_response('user_panel/content/dashboard.html', {}, context)
user_projects = UserProject.objects.filter(author = request.user)
data = {}
data['user_projects'] = user_projects
return render_to_response('user_panel/content/dashboard.html', data, context)
def project(request, project_id):
context = RequestContext(request)
data = {}
user_project = UserProject.objects.get(id=project_id)
user_project_serializer = UserProjectSerializer(user_project, context={'request': request})
data['project_data'] = user_project_serializer.data
data['project_id'] = project_id
data['beacon_display'] = []
beacon_managers = user_project.beacon_managers.all()
for beacon_manager in beacon_managers:
beacon_serializer = BeaconSerializer(beacon_manager.beacon,context={'request': request})
beacon_data = beacon_serializer.data
my_sites = beacon_manager.sites.filter(author=request.user.pk)
site_serializer = SiteSerializer(my_sites, many=True, context={'request': request})
sites_data = site_serializer.data
data['beacon_display'].append({'beacon':beacon_data,'sites' :sites_data})
data['user_project'] = user_project
#user_project_serializer = UserProjectSerializer(user_project, context={'request': request})
#data['project_data'] = user_project_serializer.data
#data['project_id'] = project_id
#data['beacon_display'] = []
# beacon_managers = user_project.beacon_managers.all()
# for beacon_manager in beacon_managers:
# beacon_serializer = BeaconSerializer(beacon_manager.beacon,context={'request': request})
# beacon_data = beacon_serializer.data
# my_sites = beacon_manager.sites.filter(author=request.user.pk)
# site_serializer = SiteSerializer(my_sites, many=True, context={'request': request})
# sites_data = site_serializer.data
# data['beacon_display'].append({'beacon':beacon_data,'sites' :sites_data})
return render_to_response('user_panel/content/project.html', data, context)
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment