Merge remote-tracking branch 'origin/main'
This commit is contained in:
@@ -39,6 +39,8 @@ def get_routes_Dict(user=None, data=None):
|
|||||||
to_el = int(val)
|
to_el = int(val)
|
||||||
|
|
||||||
routes = Route.objects.filter(**kwargs).order_by('-modifiedDT')
|
routes = Route.objects.filter(**kwargs).order_by('-modifiedDT')
|
||||||
|
routes_count = routes.count()
|
||||||
|
|
||||||
if from_el and to_el:
|
if from_el and to_el:
|
||||||
routes = routes[from_el:to_el]
|
routes = routes[from_el:to_el]
|
||||||
elif from_el:
|
elif from_el:
|
||||||
@@ -48,6 +50,10 @@ def get_routes_Dict(user=None, data=None):
|
|||||||
else:
|
else:
|
||||||
routes = routes[:25]
|
routes = routes[:25]
|
||||||
|
|
||||||
|
last_block_routes = False
|
||||||
|
if to_el and to_el >= routes_count:
|
||||||
|
last_block_routes = True
|
||||||
|
|
||||||
res_Dict = {}
|
res_Dict = {}
|
||||||
|
|
||||||
try:
|
try:
|
||||||
@@ -72,7 +78,8 @@ def get_routes_Dict(user=None, data=None):
|
|||||||
print(msg)
|
print(msg)
|
||||||
|
|
||||||
res_Dict = {
|
res_Dict = {
|
||||||
'routes': routes
|
'routes': routes,
|
||||||
|
'last_block_routes': last_block_routes
|
||||||
}
|
}
|
||||||
return res_Dict
|
return res_Dict
|
||||||
|
|
||||||
|
|||||||
@@ -169,6 +169,7 @@ def find_routes_ajax(request):
|
|||||||
|
|
||||||
res_Dict = {
|
res_Dict = {
|
||||||
'html': html,
|
'html': html,
|
||||||
|
'last_block_routes': routes_Dict['last_block_routes']
|
||||||
# 'form': RouteForm(initial=data)
|
# 'form': RouteForm(initial=data)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,3 +1,89 @@
|
|||||||
|
from sets.admin import *
|
||||||
|
from .models import *
|
||||||
from django.contrib import admin
|
from django.contrib import admin
|
||||||
|
|
||||||
# Register your models here.
|
class Admin_Subscribe(Admin_Trans_BaseModel):
|
||||||
|
fieldsets = (
|
||||||
|
(None, {
|
||||||
|
'classes': ['wide'],
|
||||||
|
'fields': ('name',
|
||||||
|
('price'),
|
||||||
|
'options',
|
||||||
|
'period_name', 'period',
|
||||||
|
'order'
|
||||||
|
)
|
||||||
|
}),
|
||||||
|
)
|
||||||
|
|
||||||
|
list_display = [
|
||||||
|
'id',
|
||||||
|
'name', 'price',
|
||||||
|
'period_name', 'period',
|
||||||
|
'order', 'modifiedDT', 'createDT'
|
||||||
|
]
|
||||||
|
|
||||||
|
list_display_links = ['id']
|
||||||
|
|
||||||
|
list_filter = ['modifiedDT', 'createDT']
|
||||||
|
search_fields = ['name', 'period_name']
|
||||||
|
filter_horizontal = ['options']
|
||||||
|
|
||||||
|
admin.site.register(Subscribe,Admin_Subscribe)
|
||||||
|
|
||||||
|
|
||||||
|
class Admin_SubscribeOption(Admin_Trans_BaseModel):
|
||||||
|
fieldsets = (
|
||||||
|
(None, {
|
||||||
|
'classes': ['wide'],
|
||||||
|
'fields': ('name',
|
||||||
|
'order'
|
||||||
|
)
|
||||||
|
}),
|
||||||
|
)
|
||||||
|
|
||||||
|
list_display = [
|
||||||
|
'id',
|
||||||
|
'name',
|
||||||
|
'order', 'modifiedDT', 'createDT'
|
||||||
|
]
|
||||||
|
|
||||||
|
list_display_links = ['id']
|
||||||
|
|
||||||
|
list_filter = ['modifiedDT', 'createDT']
|
||||||
|
search_fields = ['name']
|
||||||
|
|
||||||
|
admin.site.register(SubscribeOption,Admin_SubscribeOption)
|
||||||
|
|
||||||
|
|
||||||
|
class Admin_SubscribeForUser(Admin_Trans_BaseModel):
|
||||||
|
fieldsets = (
|
||||||
|
(None, {
|
||||||
|
'classes': ['wide'],
|
||||||
|
'fields': ('name',
|
||||||
|
'user', 'subscribe',
|
||||||
|
'last_paid_DT',
|
||||||
|
'paid_period_from_DT', 'paid_period_to_DT',
|
||||||
|
'auto_continue', 'receive_finish_subscribe_msg',
|
||||||
|
'order'
|
||||||
|
)
|
||||||
|
}),
|
||||||
|
)
|
||||||
|
|
||||||
|
list_display = [
|
||||||
|
'id',
|
||||||
|
'name', 'user', 'subscribe',
|
||||||
|
'last_paid_DT', 'paid_period_from_DT', 'paid_period_to_DT',
|
||||||
|
'auto_continue', 'receive_finish_subscribe_msg',
|
||||||
|
'order', 'modifiedDT', 'createDT'
|
||||||
|
]
|
||||||
|
|
||||||
|
list_display_links = ['id']
|
||||||
|
|
||||||
|
list_filter = [
|
||||||
|
'subscribe', 'last_paid_DT', 'paid_period_from_DT', 'paid_period_to_DT',
|
||||||
|
'auto_continue', 'receive_finish_subscribe_msg',
|
||||||
|
'modifiedDT', 'createDT'
|
||||||
|
]
|
||||||
|
search_fields = ['name']
|
||||||
|
|
||||||
|
admin.site.register(SubscribeForUser,Admin_SubscribeForUser)
|
||||||
@@ -1476,3 +1476,10 @@
|
|||||||
.loader_f_loading_routes.show{
|
.loader_f_loading_routes.show{
|
||||||
display: block;
|
display: block;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.line_separator_page_w_el{
|
||||||
|
width: 100%;
|
||||||
|
border-bottom: 1px solid #919BA5;
|
||||||
|
margin-top: 30px;
|
||||||
|
margin-bottom: 30px;
|
||||||
|
}
|
||||||
@@ -1,7 +1,42 @@
|
|||||||
let page_iterator = 2
|
let page_iterator = 2
|
||||||
|
let separator_iterator = 1
|
||||||
|
|
||||||
function load_routes (el) {
|
function load_routes (el) {
|
||||||
|
let number_last_route = el.id
|
||||||
|
let data = {
|
||||||
|
'from_el':parseInt(number_last_route) + 1,
|
||||||
|
'to_el':parseInt(number_last_route) + 11
|
||||||
|
}
|
||||||
|
let list_of_elements_form = document.querySelectorAll(".el_form_find_route");
|
||||||
|
for (let i = 0;i < list_of_elements_form.length;i++) {
|
||||||
|
// let id_el = list_of_elements_form[i].id
|
||||||
|
// if (id_el){
|
||||||
|
// if (id_el === "")
|
||||||
|
// }
|
||||||
|
let name_attr = list_of_elements_form[i].attributes["name"]
|
||||||
|
let value_el = list_of_elements_form[i].value
|
||||||
|
if (name_attr) {
|
||||||
|
if (list_of_elements_form[i].tagName === "INPUT" && list_of_elements_form[i].type === "checkbox"){
|
||||||
|
let name_el = name_attr.value
|
||||||
|
data[name_el] = ""
|
||||||
|
if (list_of_elements_form[i].checked){
|
||||||
|
|
||||||
|
if (name_el === "type_transport"){
|
||||||
|
let old_val = data["type_transport"]
|
||||||
|
if (old_val){
|
||||||
|
data["type_transport"] = `${data["type_transport"]},${value_el}`
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
data[name_el] = value_el
|
||||||
|
}
|
||||||
|
|
||||||
|
} else {
|
||||||
|
let name_el = name_attr.value
|
||||||
|
data[name_el] = value_el
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
let loader = document.querySelector(".loader_f_loading_routes")
|
let loader = document.querySelector(".loader_f_loading_routes")
|
||||||
loader.classList.toggle("show")
|
loader.classList.toggle("show")
|
||||||
el.classList.toggle("hide")
|
el.classList.toggle("hide")
|
||||||
@@ -12,11 +47,8 @@ function load_routes (el) {
|
|||||||
// if (new_el_dataset){
|
// if (new_el_dataset){
|
||||||
// let number_last_route = new_el_dataset['numberOfRoute']
|
// let number_last_route = new_el_dataset['numberOfRoute']
|
||||||
// let number_last_route = el.dataset['lastRoute']
|
// let number_last_route = el.dataset['lastRoute']
|
||||||
let number_last_route = el.id
|
|
||||||
let data = {
|
|
||||||
'from_el':parseInt(number_last_route) + 1,
|
|
||||||
'to_el':parseInt(number_last_route) + 11
|
|
||||||
}
|
|
||||||
$.ajax({
|
$.ajax({
|
||||||
headers: { "X-CSRFToken": $('input[name=csrfmiddlewaretoken]').val() },
|
headers: { "X-CSRFToken": $('input[name=csrfmiddlewaretoken]').val() },
|
||||||
url: '/ru/routes/find_routes/',
|
url: '/ru/routes/find_routes/',
|
||||||
@@ -36,18 +68,24 @@ function load_routes (el) {
|
|||||||
let old_page_iterator = page_iterator
|
let old_page_iterator = page_iterator
|
||||||
page_iterator++
|
page_iterator++
|
||||||
loader.classList.toggle("show")
|
loader.classList.toggle("show")
|
||||||
el.classList.toggle("hide")
|
if (!data.last_block_routes){
|
||||||
let el_scroll = place_ins.firstElementChild
|
el.classList.toggle("hide")
|
||||||
el_scroll.scrollIntoView(
|
}
|
||||||
{
|
// let el_scroll = place_ins.firstElementChild
|
||||||
behavior:"smooth"
|
// el_scroll.scrollIntoView(
|
||||||
}
|
// {
|
||||||
)
|
// behavior:"smooth"
|
||||||
|
// }
|
||||||
|
// )
|
||||||
let new_page_routes = document.createElement("div")
|
let new_page_routes = document.createElement("div")
|
||||||
new_page_routes.classList.add("page_routes_" + page_iterator)
|
new_page_routes.classList.add("page_routes_" + page_iterator)
|
||||||
$(new_page_routes).insertAfter(".page_routes_" + old_page_iterator);
|
$(new_page_routes).insertAfter(".page_routes_" + old_page_iterator);
|
||||||
|
let line_separator = document.createElement("div")
|
||||||
|
line_separator.classList.add("line_separator_page_w_el")
|
||||||
|
$(line_separator).insertAfter(".page_routes_" + separator_iterator);
|
||||||
// document.querySelector(".info_profile").innerHTML = data.html;
|
// document.querySelector(".info_profile").innerHTML = data.html;
|
||||||
el.setAttribute("id",parseInt(number_last_route) + 11)
|
el.setAttribute("id",parseInt(number_last_route) + 11)
|
||||||
|
separator_iterator++
|
||||||
// number_last_route = parseInt(number_last_route) + "11"
|
// number_last_route = parseInt(number_last_route) + "11"
|
||||||
},
|
},
|
||||||
error: function (data){
|
error: function (data){
|
||||||
|
|||||||
@@ -18,8 +18,8 @@ function inital_slider (){
|
|||||||
type: "double",
|
type: "double",
|
||||||
min: min,
|
min: min,
|
||||||
max: max,
|
max: max,
|
||||||
from: 100,
|
from: 0,
|
||||||
to: 900,
|
to: 1000,
|
||||||
onStart: updateInputs,
|
onStart: updateInputs,
|
||||||
onChange: updateInputs
|
onChange: updateInputs
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -39,6 +39,7 @@
|
|||||||
type="number"
|
type="number"
|
||||||
name="from_address_point"
|
name="from_address_point"
|
||||||
id="id_from_address_point"
|
id="id_from_address_point"
|
||||||
|
class="el_form_find_route"
|
||||||
hidden
|
hidden
|
||||||
class="disp-none"
|
class="disp-none"
|
||||||
{% if form.initial.from_address_point %}value="{{ form.initial.from_address_point }}"{% endif %}
|
{% if form.initial.from_address_point %}value="{{ form.initial.from_address_point }}"{% endif %}
|
||||||
@@ -77,6 +78,7 @@
|
|||||||
type="number"
|
type="number"
|
||||||
name="to_address_point"
|
name="to_address_point"
|
||||||
id="id_to_address_point"
|
id="id_to_address_point"
|
||||||
|
class="el_form_find_route"
|
||||||
hidden
|
hidden
|
||||||
class="disp-none"
|
class="disp-none"
|
||||||
{% if form.initial.to_address_point %}value="{{ form.initial.to_address_point}}"{% endif %}/>
|
{% if form.initial.to_address_point %}value="{{ form.initial.to_address_point}}"{% endif %}/>
|
||||||
@@ -101,15 +103,15 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="cont-el-form-search-carrier">
|
<div class="cont-el-form-search-carrier">
|
||||||
<label for="id_departure_DT">Дата отправки</label>
|
<label for="id_departure_DT">Дата отправки</label>
|
||||||
<input name="departure_DT" id="id_departure_DT" type="date" {% if form.fields.departure_DT.required %} {% endif %}>
|
<input class="el_form_find_route" name="departure_DT" id="id_departure_DT" type="date" {% if form.fields.departure_DT.required %} {% endif %}>
|
||||||
</div>
|
</div>
|
||||||
<div class="cont-el-form-search-carrier">
|
<div class="cont-el-form-search-carrier">
|
||||||
<label for="id_arrival_DT">Дата прибытия</label>
|
<label for="id_arrival_DT">Дата прибытия</label>
|
||||||
<input name="arrival_DT" id="id_arrival_DT" type="date" {% if form.fields.arrival_DT.required %} {% endif %}>
|
<input class="el_form_find_route" name="arrival_DT" id="id_arrival_DT" type="date" {% if form.fields.arrival_DT.required %} {% endif %}>
|
||||||
</div>
|
</div>
|
||||||
<div class="cont-el-form-search-carrier last">
|
<div class="cont-el-form-search-carrier last">
|
||||||
<label>test</label>
|
<label>test</label>
|
||||||
<select name="cargo_type" id="id_cargo_type" {% if form.fields.cargo_type.required %} {% endif %}>
|
<select class="el_form_find_route" name="cargo_type" id="id_cargo_type" {% if form.fields.cargo_type.required %} {% endif %}>
|
||||||
<option value="" selected="selected">--не имеет значения--</option>
|
<option value="" selected="selected">--не имеет значения--</option>
|
||||||
{% for item in form.fields.cargo_type.choices %}
|
{% for item in form.fields.cargo_type.choices %}
|
||||||
<option value="{{ item.0 }}">{{ item.1 }}</option>
|
<option value="{{ item.0 }}">{{ item.1 }}</option>
|
||||||
@@ -118,7 +120,7 @@
|
|||||||
|
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<div class="cont-el-form-search-carrier">
|
<div class="cont-el-form-search-carrier el_form_find_route">
|
||||||
<label style="opacity: 0">test</label>
|
<label style="opacity: 0">test</label>
|
||||||
<button onclick="filters_func_find_route_main(this)">Найти</button>
|
<button onclick="filters_func_find_route_main(this)">Найти</button>
|
||||||
</div>
|
</div>
|
||||||
@@ -142,7 +144,7 @@
|
|||||||
{% if forloop.counter0 > 0 %}
|
{% if forloop.counter0 > 0 %}
|
||||||
<div>
|
<div>
|
||||||
<input
|
<input
|
||||||
class="custom-checkbox"
|
class="custom-checkbox el_form_find_route"
|
||||||
type="checkbox"
|
type="checkbox"
|
||||||
name="type_transport"
|
name="type_transport"
|
||||||
id="id_cargo_type_car_{{ forloop.counter }}"
|
id="id_cargo_type_car_{{ forloop.counter }}"
|
||||||
@@ -171,7 +173,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="methods_transportation_form_filters">
|
<div class="methods_transportation_form_filters">
|
||||||
<div class="title_el_methods_transportation">Откуда забрать посылку</div>
|
<div class="title_el_methods_transportation">Откуда забрать посылку</div>
|
||||||
<select class="select_form_filters_find_route" name="from_place">
|
<select class="select_form_filters_find_route el_form_find_route" name="from_place">
|
||||||
<option value="" selected="selected">--не имеет значения--</option>
|
<option value="" selected="selected">--не имеет значения--</option>
|
||||||
{% for item in form.fields.from_place.choices %}
|
{% for item in form.fields.from_place.choices %}
|
||||||
<option value="{{ item.0 }}">{{ item.1 }}</option>
|
<option value="{{ item.0 }}">{{ item.1 }}</option>
|
||||||
@@ -183,7 +185,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="methods_transportation_form_filters">
|
<div class="methods_transportation_form_filters">
|
||||||
<div class="title_el_methods_transportation">Куда доставить посылку</div>
|
<div class="title_el_methods_transportation">Куда доставить посылку</div>
|
||||||
<select class="select_form_filters_find_route" name="to_place">
|
<select class="select_form_filters_find_route el_form_find_route" name="to_place">
|
||||||
<option value="" selected="selected">--не имеет значения--</option>
|
<option value="" selected="selected">--не имеет значения--</option>
|
||||||
{% for item in form.fields.to_place.choices %}
|
{% for item in form.fields.to_place.choices %}
|
||||||
<option value="{{ item.0 }}">{{ item.1 }}</option>
|
<option value="{{ item.0 }}">{{ item.1 }}</option>
|
||||||
@@ -193,7 +195,7 @@
|
|||||||
<div class="methods_transportation_form_filters">
|
<div class="methods_transportation_form_filters">
|
||||||
<label for="weight">Вес посылки (кг)</label>
|
<label for="weight">Вес посылки (кг)</label>
|
||||||
<div class="range-slider">
|
<div class="range-slider">
|
||||||
<input type="text" class="range_slider_form_filters" name="weight" value="{{ form.fields.weight.initial }}" />
|
<input type="text" class="range_slider_form_filters el_form_find_route" name="weight" value="{{ form.fields.weight.initial }}" />
|
||||||
</div>
|
</div>
|
||||||
<div class="inputs_for_slider_cont">
|
<div class="inputs_for_slider_cont">
|
||||||
<input type="text" class="input_f_slider_start" value="100" />
|
<input type="text" class="input_f_slider_start" value="100" />
|
||||||
@@ -204,7 +206,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="methods_transportation_form_filters">
|
<div class="methods_transportation_form_filters">
|
||||||
<div class="title_el_methods_transportation">Сортировать по:</div>
|
<div class="title_el_methods_transportation">Сортировать по:</div>
|
||||||
<select name="sort" class="select_form_filters_find_route">
|
<select name="sort" class="select_form_filters_find_route el_form_find_route">
|
||||||
<option value="last">По последним</option>
|
<option value="last">По последним</option>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
Reference in New Issue
Block a user