search purchase area in search region

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