descripcion reportes

parent a5d4d557
This diff is collapsed.
......@@ -10,7 +10,7 @@ from django.http import HttpResponse, JsonResponse, HttpResponseRedirect
from django.urls import reverse
from django.views.generic.base import View
from django.template import loader, RequestContext
from django.contrib.auth.models import User
from django.contrib.auth.models import User, Permission
import requests, json, unicodedata, sys, base64
import os
from geosentinel import APISentinel, polygonToBox
......@@ -57,10 +57,17 @@ def map(request):
"""
View function for home page of site.
"""
if Permission.objects.filter(user=request.user.id):
advanced_search = True
else:
advanced_search = False
form = ASFSearchForm(request.POST)
showcart = True
# Render the HTML template index.html with the data in the context variable
return render(request, 'map.html', {"searchForm": form, "showcart": showcart})
return render(request, 'map.html', {"searchForm": form, "showcart": showcart,"advanced_search":advanced_search})
# -------------------------------------------------------------------------------
......@@ -620,11 +627,18 @@ def Registration(request):
return HttpResponse("the username or password already exist")
else:
print("agregado")
User.objects.create_user(first_name=request.POST['name'],last_name=request.POST['last_name'],username=request.POST['username'],
user = User.objects.create_user(first_name=request.POST['name'],last_name=request.POST['last_name'],username=request.POST['username'],
email=request.POST['email'],
password=request.POST['password'], is_active=False)
permissions = Permission.objects.filter(content_type__app_label='auth',
codename__in=[
'advanced_search'
])
user.user_permissions.add(*permissions.filter(content_type__model='user'))
message = "your registration is being processed"
subject = "Registro RepSat"
wsMail2(request.POST['email'],request.POST['username'],message,subject)
messages.success(request, 'your registration is being processed')
return HttpResponseRedirect('login')
.map {
height: 400px;
width: 100%;
}
.switch {
position: relative;
display: inline-block;
......
......@@ -217,3 +217,37 @@ select::-ms-expand {
-o-transition: .25s all ease;
transition: .25s all ease;
}
.arrow_box {
position: relative;
background: #ffffff;
border: 1px solid #ffa74f;
min-height: 30px;
bottom: 10px;
}
.arrow_box:after, .arrow_box:before {
top: 100%;
left: 50%;
border: solid transparent;
content: " ";
height: 0;
width: 0;
position: absolute;
pointer-events: none;
}
.arrow_box:after {
border-color: rgba(255, 255, 255, 0);
border-top-color: #ffffff;
border-width: 10px;
margin-left: -10px;
}
.arrow_box:before {
border-color: rgba(255, 167, 79, 0);
border-top-color: #ffa74f;
border-width: 11px;
margin-left: -11px;
}
......@@ -45,3 +45,4 @@ $(document).ready(function () {
order: [1, 'asc']
});
});
{% load staticfiles %}
<style>
.switch {
position: relative;
display: inline-block;
width: 30px;
height: 17px;
}
.switch input {
opacity: 0;
width: 0;
height: 0;
}
.slider {
position: absolute;
cursor: pointer;
top: 0;
left: 0;
right: 0;
bottom: 0;
background-color: #ccc;
-webkit-transition: .4s;
transition: .4s;
}
.slider:before {
position: absolute;
content: "";
height: 13px;
width: 13px;
left: 4px;
bottom: 3px;
background-color: white;
-webkit-transition: .4s;
transition: .4s;
}
input:checked + .slider {
background-color: #f38e19;
}
input:focus + .slider {
box-shadow: 0 0 1px #f38e19;
}
input:checked + .slider:before {
-webkit-transform: translateX(13px);
-ms-transform: translateX(13px);
transform: translateX(13px);
}
/* Rounded sliders */
.slider.round {
border-radius: 14px;
}
.slider.round:before {
border-radius: 50%;
}
</style>
<div class="col-md-3">
{% for data in user_data %}
......@@ -30,6 +92,23 @@
<i class="fa fa-pie-chart margin-r-5"></i> <b>Disk usage</b> <a
class="pull-right">{{ data.size }}</a>
</li>
<li class="list-group-item">
<div class="row ccontent ">
<div class="col-md-10 col-xs-10 col-lg-10 col-sm-10 col-xl-10">
<i class="fa fa-search-plus margin-r-5"></i>
<b>Advanced Search</b>
</div>
<div class="col-md-2 col-xs-2 col-lg-2 col-sm-2 col-xl-2 pull-right">
<label class="switch">
<input class="pull-right" id="{{ data.user_id }}" type="checkbox"
onclick="change_permission({{ data.user_id }})"
{% if data.advanced_search == True %} checked {% endif %}>
<span class="slider round pull-right" style="margin-right: 0px"></span>
</label>
</div>
</div>
</li>
</ul>
<!--a href="#" class="btn btn-primary btn-block"><b>Follow</b></a-->
......@@ -52,10 +131,10 @@
<div class="box-body">
<ul class="list-group list-group-unbordered">
{% for data in user_searches %}
<li class="list-group-item">
<i class="fa fa-map-marker margin-r-5"></i> <b>{{ data.search_name }}</b> <a
class="pull-right">{{ data.count }}</a>
</li>
<li class="list-group-item">
<i class="fa fa-map-marker margin-r-5"></i> <b>{{ data.search_name }}</b> <a
class="pull-right">{{ data.count }}</a>
</li>
{% endfor %}
</ul>
</div>
......@@ -64,6 +143,29 @@
</div>
<!-- /.box -->
<div><br></div>
</div>
<script>
function change_permission(user_id) {
var checkBox = document.getElementById(user_id);
if (checkBox.checked == true) {
permission(user_id, 'True');
} else {
permission(user_id, 'False');
}
}
function permission(user_id, status) {
$.ajax({
dataType: "json",
url: 'ws/change_permission',
data: {'user_id': user_id, 'status': status},
success: function (data) {
alert(data);
}
});
}
</script>
\ No newline at end of file
......@@ -27,5 +27,6 @@ urlpatterns = [
url(r'^$', views.Users, name='users'),
url(r'^(?P<user_id>(\d+))/$', views.User_id, name='user_id'),
url(r'^ws/report_table$', views.wsPurchasesPM, name='wsPurchasesPM'),
url(r'^ws/change_permission', views.wsChangePermission, name='wsChangePermission'),
]
# + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
import calendar
import os
from django.contrib.auth.models import User
from django.contrib.auth.models import User, Permission
from django.db.models import Count
from django.http import HttpResponse, Http404
from django.shortcuts import render
# Create your views here.
import json
......@@ -35,6 +36,15 @@ def Users(request):
purchases = Purchase.objects.filter(user_id=user.id)
in_process = Purchase.objects.filter(user_id=user.id).exclude(progress=100)
if Permission.objects.filter(user=user.id):
advanced_search = True
else:
advanced_search = False
print (advanced_search)
#bytes_size = 0
#for path, directories, files in os.walk(USERS_PATH + "repsat_test_dev/" + user.email):
# for filename in files:
......@@ -50,11 +60,11 @@ def Users(request):
"searches": searches.count(),
"purchases": purchases.count(),
"in_process": in_process.count(),
#"size": size_repsat,
"advanced_search" : advanced_search,
})
for search in Search.objects.values('search_name').filter(user_id=user.id).annotate(
count=Count('search_name')).order_by('-count')[:6]:
count=Count('search_name')).order_by('-count')[:5]:
user_searches.append({
"search_name": search['search_name'],
"count": search['count'],
......@@ -173,7 +183,7 @@ def User_id(request, user_id):
})
for search in Search.objects.values('search_name').filter(user_id=user.id).annotate(
count=Count('search_name')).order_by('-count')[:6]:
count=Count('search_name')).order_by('-count')[:5]:
user_searches.append({
"search_name": search['search_name'],
"count": search['count'],
......@@ -338,3 +348,52 @@ def best_unit_size(bytes_size):
return str(round(bu_size, 2)) + " " + unit
# ------------------------------------------------
@csrf_exempt
def wsChangePermission(request):
if request.is_ajax():
table_data = []
data = Purchase.objects.values('user_id', 'search__endDate', 'search__startDate', 'aggreg_date',
'search__process_id__name', 'name').filter(
user_id=request.POST.get('user_id'), purchased=True,
aggreg_date__month=to_if(request.POST.get('title'))).order_by('aggreg_date')
for producto in data:
table_data.append({
"search_name": producto['name'],
"process": producto['search__process_id__name'],
"purchase_date": str(producto['aggreg_date'])[:10],
"startDate": str(producto['search__startDate'])[:10],
"endDate": str(producto['search__endDate'])[:10],
})
return HttpResponse(json.dumps(table_data))
# return HttpResponse({'table_data':table_data})
else:
raise Http404
pass
#----------------------------------------------
@csrf_exempt
def wsChangePermission(request):
if request.is_ajax():
permissions = Permission.objects.filter(content_type__app_label='auth',
codename__in=[
'advanced_search'
])
user = User.objects.get(pk=request.GET.get("user_id"))
if request.GET.get("status") == 'True':
print ("verdadero")
user.user_permissions.add(*permissions.filter(content_type__model='user'))
else:
print ("falso")
user.user_permissions.remove(*permissions.filter(content_type__model='user'))
return HttpResponse("hola")
else:
raise Http404
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