search purchase area in search region

parent 1a367e33
......@@ -13,7 +13,7 @@ var polygonList;
var makeRequest = function (value) {
var pol_element = document.getElementById('polygon-list');
console.log("hola");
// city request to DB
// variable req_url in map.html
$.ajax({
......@@ -46,10 +46,15 @@ var makeRequest = function (value) {
} else {
data.polygonList.forEach(function (polygon) {
var temp = document.querySelector('#city_list_template');
let search_name = polygon.city + ", " + polygon.state;
if (!polygon.state) {
search_name = polygon.city;
}
// filling template
temp.content.querySelector('li').id = polygon.id;
temp.content.querySelectorAll('span')[0].textContent = polygon.city + ", " + polygon.state;
temp.content.querySelectorAll('span')[0].textContent = search_name;
temp.content.querySelectorAll('span')[1].textContent = polygon.description;
temp.content.querySelectorAll('div')[3].textContent = "Fuente: " + polygon.source;
......@@ -153,26 +158,24 @@ function drawPolygon(element) {
// clean product panel
erase_product_list_globe();
// set input box with polygon city name
var input_text = polygon.city + ", " + polygon.state;
$("#ajax-input").val(input_text);
$('#search_name').val(input_text);
$("#area_description").val(polygon.description)
// remove prev polygon
osmap.removePolygon();
// draw wkt polygon
// osmap.addWKTPolygon(polygon.wkt_polygon);
var input_text = polygon.city;
// format coords to draw
var coords = osmap.formatCoords(polygon.geojson.geometry.coordinates);
// get the biggest area
// var biggest = osmap.getBiggestPolygon(coords);
if (polygon.geojson.geometry) {
var coords = osmap.formatCoords(polygon.geojson.geometry.coordinates);
// var biggest = osmap.getBiggestPolygon(coords);
osmap.addPolygon(coords);
input_text += ", " + polygon.state
} else {
osmap.addWKTPolygon(polygon.wkt_polygon);
}
// draw coordsR
osmap.addPolygon(coords);
// set input box with polygon city name
$("#ajax-input").val(input_text);
$('#search_name').val(input_text);
$("#area_description").val(polygon.description)
}
});
}
......
......@@ -77,7 +77,7 @@ def requestToImage(request):
r = requests.get(img_link, auth=("emmhp", "geoemm29"), stream=True)
img_str = base64.b64encode(r.content)
#print(img_str)
img_str = img_str.decode('utf-8')
img_str = img_str.decode('utf-8')
#print(img_str)
return JsonResponse({'img': img_str})
......@@ -199,14 +199,17 @@ class SearchSubmitView(View):
def post(self, request):
template = loader.get_template(self.template)
searchValue = request.POST.get('value', '')
searchValue = self.strip_accents(searchValue).lower()
searchValue_lower = self.strip_accents(searchValue).lower()
## A simple query for Polygon objects whose name is 'searchValue'
## We exclude those polygons whose E_MUN field are NULL .encode("utf-8")since at this point we're only interested
## on polygons that represent cities (Municipios).
polygonList = Polygon.objects.filter(name__startswith=searchValue).exclude(E_MUN__isnull=True)
polygonList = Polygon.objects.filter(name__startswith=searchValue_lower).exclude(E_MUN__isnull=True)
purchased_list = Purchase.objects.values('id', 'name', 'description', 'search__area').filter(user_id=request.user.id, name__startswith=searchValue)
data_list = []
# append searched polygons from Polygon table
if len(polygonList) > 0:
for polygon in polygonList:
polygonInfo = json.loads(polygon.json_info)
......@@ -221,11 +224,22 @@ class SearchSubmitView(View):
'source': polygon.source
})
data = {
'polygonList': data_list
}
# append searched polygons from Purchase table
if len(purchased_list) > 0:
for purchase in purchased_list:
data_list.append({
'id': 'p{}'.format(purchase['id']),
'city': purchase['name'],
'state': '',
'geojson': {},
'wkt_polygon': purchase['search__area'],
'description': purchase['description'],
'source': 'Purchase'
})
return JsonResponse(data)
return JsonResponse({
'polygonList': data_list
})
# -------------------------------------------------------------------------------
......@@ -252,7 +266,7 @@ def saveInCart(request):
user = User.objects.get(id=request.user.id)
product_list = json.loads(request.POST['cart_product_list'])
search = Search.objects.filter(user=user).last()
#print("saveIncart")
#print(search)
#print(product_list)
......@@ -269,7 +283,7 @@ def saveInCart(request):
fh.close()
product['info']['img'] = img_file;
#------
print(product_list)
if (len(product_list) != 0):
cartProd = Purchase(
......@@ -519,7 +533,7 @@ def Pay(request):
user = User.objects.get(id=request.user.id)
product_list = []
product_list = Purchase.objects.values('id', 'search__area', 'user', 'user__username', 'user__email', 'search_id',
'search__clouds', 'search__startDate', 'search__endDate', 'search__process_id__name',
'search__clouds', 'search__startDate', 'search__endDate', 'search__process_id__name',
'search__process_id__productLevel','search__process_id__platform__name','search__description','search__search_name').filter(user=user, purchased=0)
for product in product_list:
......
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