Merge pull request #449 from eReuse/changes/changes-filter-devices

hide submit in filter of list of devices
This commit is contained in:
cayop 2023-05-04 17:25:06 +02:00 committed by GitHub
commit 31629b3f16
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 13 additions and 19 deletions

View File

@ -1014,7 +1014,6 @@ class ExportsView(View):
return export_ids[export_id]()
def find_devices(self):
# import pdb; pdb.set_trace()
sql = """
select lot_device.device_id as id from {schema}.share_lot as share
inner join {schema}.lot_device as lot_device

View File

@ -30,6 +30,10 @@ $(document).ready(() => {
;
select_shift(); // $('#selectLot').selectpicker();
$("#filter").on("change", () => {
$("#submit_filter").click();
});
});
class TableController {
@ -211,8 +215,8 @@ function removeLot() {
}
function select_shift() {
const chkboxes = $('.deviceSelect');
var lastChecked = null;
const chkboxes = $(".deviceSelect");
let lastChecked = null;
chkboxes.click(function (e) {
if (!lastChecked) {
lastChecked = this;
@ -324,17 +328,16 @@ function export_file(type_file) {
function export_actions_erasure(type_file) {
const actions = TableController.getSelectedDevices();
const actions_id = $.map(actions, (x) => $(x).attr("data-action-erasure")).join(",");
const actions_id = $.map(actions, x => $(x).attr("data-action-erasure")).join(",");
if (actions_id) {
const url = `/inventory/export/${type_file}/?ids=${actions_id}`;
const url = "/inventory/export/".concat(type_file, "/?ids=").concat(actions_id);
window.location.href = url;
} else {
$("#exportAlertModal").click();
}
}
class lotsSearcher {
static enable() {
if (this.lotsSearchElement) this.lotsSearchElement.disabled = false;
@ -663,19 +666,14 @@ async function processSelectedDevices() {
return lot;
});
listHTML.html("");
const lot_temporary = lots.filter(lot => !lot.transfer && !lot.trade);
appendMenu(lot_temporary, listHTML, templateLot, selectedDevices, actions, "Temporary");
const lot_incoming = lots.filter(lot => lot.transfer && lot.transfer == "Incoming");
appendMenu(lot_incoming, listHTML, templateLot, selectedDevices, actions, "Incoming");
const lot_outgoing = lots.filter(lot => lot.transfer && lot.transfer == "Outgoing");
appendMenu(lot_outgoing, listHTML, templateLot, selectedDevices, actions, "Outgoing");
lotsSearcher.enable();
} catch (error) {
console.log(error);
listHTML.html("<li style=\"color: red; text-align: center\">Error feching devices and lots<br>(see console for more details)</li>");
@ -689,6 +687,6 @@ function appendMenu(lots, listHTML, templateLot, selectedDevices, actions, title
lotsList.push(lots.filter(lot => lot.state == "false").sort((a, b) => a.name.localeCompare(b.name)));
lotsList = lotsList.flat(); // flat array
listHTML.append(`<li style="color: black; text-align: center">${ title }<hr /></li>`);
listHTML.append("<li style=\"color: black; text-align: center\">".concat(title, "<hr /></li>"));
lotsList.forEach(lot => templateLot(lot, selectedDevices, listHTML, actions));
}

View File

@ -16,6 +16,9 @@ $(document).ready(() => {
};
select_shift();
// $('#selectLot').selectpicker();
$("#filter").on("change", () => {
$("#submit_filter").click();
});
})
class TableController {

View File

@ -352,12 +352,6 @@
Devices Spreadsheet
</a>
</li>
<li>
<a href="javascript:export_file('devices_lots')" class="dropdown-item">
<i class="bi bi-file-spreadsheet"></i>
Devices Lots Spreadsheet
</a>
</li>
</ul>
</div>
{% endif %}
@ -374,7 +368,7 @@
{% endfor %}
<input type="hidden" class="d-none" value="1" name="page" />
<input type="hidden" class="d-none" value="{{ devices.per_page }}" name="per_page" />
<input type="submit" class="ms-2 btn btn-primary" value="Filter" />
<input type="submit" id="submit_filter" class="d-none ms-2 btn btn-primary" value="Filter" />
</div>
</form>