upgrade
This commit is contained in:
parent
e60a90754d
commit
b6f8d378c8
4 changed files with 143 additions and 13 deletions
4
wotstats/static/js/jquery.tablesorter.min.js
vendored
Normal file
4
wotstats/static/js/jquery.tablesorter.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
|
@ -43,5 +43,6 @@
|
||||||
<!-- <button class="mui-btn mui-btn--primary mui-btn--raised">My Button</button> -->
|
<!-- <button class="mui-btn mui-btn--primary mui-btn--raised">My Button</button> -->
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
{% block js %}{% endblock %}
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|
|
@ -2,7 +2,21 @@
|
||||||
|
|
||||||
{% block content %}
|
{% block content %}
|
||||||
<h2>Техника</h2>
|
<h2>Техника</h2>
|
||||||
<table class="mui-table mui-table--bordered">
|
Категории
|
||||||
|
<input type="checkbox" name="checkall" id="checkall" value="1"> Все
|
||||||
|
<input type="checkbox" name="cat[1]" value="1"> I
|
||||||
|
<input type="checkbox" name="cat[2]" value="2"> II
|
||||||
|
<input type="checkbox" name="cat[3]" value="3"> III
|
||||||
|
<input type="checkbox" name="cat[4]" value="4"> IV
|
||||||
|
<input type="checkbox" name="cat[5]" value="5"> V
|
||||||
|
<input type="checkbox" name="cat[6]" value="6"> VI
|
||||||
|
<input type="checkbox" name="cat[7]" value="7"> VII
|
||||||
|
<input type="checkbox" name="cat[8]" value="8"> VIII
|
||||||
|
<input type="checkbox" name="cat[9]" value="9"> IX
|
||||||
|
<input type="checkbox" name="cat[10]" value="10"> X
|
||||||
|
|
||||||
|
|
||||||
|
<table id="myTable" class="mui-table mui-table--bordered tablesorter">
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<th> </th>
|
<th> </th>
|
||||||
|
@ -14,17 +28,101 @@
|
||||||
<th>Кол-во побед</th>
|
<th>Кол-во побед</th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
{% for x in account_technic %}
|
<tbody>
|
||||||
<tr>
|
|
||||||
<!-- <td>{{ x['tank_id'] }}</td> -->
|
</tbody>
|
||||||
<td><img src="{{ x['details']['image'] }}" ></td>
|
|
||||||
<td>{{ x['details']['nation'] }}</td>
|
|
||||||
<td>{{ x['details']['level'] }}</td>
|
|
||||||
<td>{{ x['details']['type'] }}</td>
|
|
||||||
<td>{{ x['details']['name'] }}</td>
|
|
||||||
<td>{{ x['statistics']['battles'] }}</td>
|
|
||||||
<td>{{ x['statistics']['wins'] }}</td>
|
|
||||||
</tr>
|
|
||||||
{% endfor %}
|
|
||||||
</table>
|
</table>
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|
||||||
|
{#
|
||||||
|
{% for x in account_technic %}
|
||||||
|
<tr>
|
||||||
|
<!-- <td>{{ x['tank_id'] }}</td> -->
|
||||||
|
<td><img src="{{ x['details']['image'] }}" ></td>
|
||||||
|
<td>{{ x['details']['nation'] }}</td>
|
||||||
|
<td>{{ x['details']['level'] }}</td>
|
||||||
|
<td>{{ x['details']['type'] }}</td>
|
||||||
|
<td>{{ x['details']['name'] }}</td>
|
||||||
|
<td>{{ x['statistics']['battles'] }}</td>
|
||||||
|
<td>{{ x['statistics']['wins'] }}</td>
|
||||||
|
</tr>
|
||||||
|
{% endfor %}
|
||||||
|
#}
|
||||||
|
|
||||||
|
{% block js %}
|
||||||
|
<script src="http://code.jquery.com/jquery-latest.min.js"></script>
|
||||||
|
<script src="/static/js/jquery.tablesorter.min.js"></script>
|
||||||
|
<script>
|
||||||
|
function checkall(selected) {
|
||||||
|
if (selected == 0 || selected == 10) {
|
||||||
|
$('#checkall').prop('checked', true);
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
};
|
||||||
|
|
||||||
|
function request_seleted(selected) {
|
||||||
|
$.getJSON( "/technic/list.json", {level: selected.concat()}, function( data ) {
|
||||||
|
$('#myTable tbody').html('');
|
||||||
|
$.each( data.technic, function(key, val) {
|
||||||
|
d = val.details;
|
||||||
|
s = val.statistics;
|
||||||
|
$('#myTable tbody').append('<tr><td><img src="'+d.image+'"></td><td><img src="https://ru-wotp.wgcdn.co/static/5.7.0_023df2/wotp_static/img/core/frontend/scss/common/components/icons/img/filter-'+d.nation+'.png"> '+d.nation_i18n+'</td><td>'+d.level+'</td><td>'+d.type_i18n+'</td><td>'+d.name_i18n+'</td><td>'+s.battles+'</td><td>'+s.wins+'</td></tr>');
|
||||||
|
});
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
$(document).ready(function() {
|
||||||
|
|
||||||
|
var inputs = $('input[name*=cat]');
|
||||||
|
|
||||||
|
var selected = [];
|
||||||
|
for(var i=0; i < inputs.length; i++) {
|
||||||
|
if (inputs[i].checked == true) {
|
||||||
|
selected.push(inputs[i].value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
request_seleted(selected);
|
||||||
|
|
||||||
|
|
||||||
|
$('#checkall').click(function(){
|
||||||
|
var checked_count = 0;
|
||||||
|
|
||||||
|
for(var i=0; i < inputs.length; i++) {
|
||||||
|
if (inputs[i].checked == false) {
|
||||||
|
checked_count += 1;
|
||||||
|
};
|
||||||
|
inputs[i].checked = $('#checkall').prop('checked');
|
||||||
|
}
|
||||||
|
checkall(checked_count);
|
||||||
|
|
||||||
|
var selected = [];
|
||||||
|
for(var i=0; i < inputs.length; i++) {
|
||||||
|
if (inputs[i].checked == true) {
|
||||||
|
selected.push(inputs[i].value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
request_seleted(selected);
|
||||||
|
});
|
||||||
|
|
||||||
|
inputs.click(function() {
|
||||||
|
var checked_count = 0;
|
||||||
|
var selected = [];
|
||||||
|
for(var i=0; i < inputs.length; i++) {
|
||||||
|
if (inputs[i].checked == false) {
|
||||||
|
checked_count += 1;
|
||||||
|
$('#checkall').prop('checked', false);
|
||||||
|
} else {
|
||||||
|
|
||||||
|
selected.push(inputs[i].value);
|
||||||
|
console.log(selected);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
checkall(checked_count);
|
||||||
|
request_seleted(selected);
|
||||||
|
});
|
||||||
|
|
||||||
|
// Sort
|
||||||
|
$("#myTable").tablesorter();
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
{% endblock %}
|
||||||
|
|
|
@ -47,3 +47,30 @@ def index():
|
||||||
'pages/account/technic.html',
|
'pages/account/technic.html',
|
||||||
account_technic=account_technic
|
account_technic=account_technic
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
@pages_technic.route('/list.json')
|
||||||
|
def list_json():
|
||||||
|
if not g.user:
|
||||||
|
return redirect(url_for('pages_home.index'))
|
||||||
|
|
||||||
|
list_levels = []
|
||||||
|
if len(request.args.getlist('level[]')) > 0:
|
||||||
|
list_levels = []
|
||||||
|
for i in request.args.getlist('level[]'):
|
||||||
|
list_levels.append(int(i))
|
||||||
|
|
||||||
|
# TODO: total accounts
|
||||||
|
#
|
||||||
|
account_technic = list()
|
||||||
|
|
||||||
|
for x in __get_technic():
|
||||||
|
if len(list_levels) == 0:
|
||||||
|
x['details'] = t.get(str(x['tank_id']))
|
||||||
|
account_technic.append(x)
|
||||||
|
else:
|
||||||
|
if t.get(str(x['tank_id'])).get('level') in list_levels:
|
||||||
|
x['details'] = t.get(str(x['tank_id']))
|
||||||
|
account_technic.append(x)
|
||||||
|
|
||||||
|
return jsonify(technic=account_technic)
|
||||||
|
|
Reference in a new issue