diff --git a/InvenTree/templates/js/translated/stock.js b/InvenTree/templates/js/translated/stock.js
index b7f4162621..ade8bc5a0a 100644
--- a/InvenTree/templates/js/translated/stock.js
+++ b/InvenTree/templates/js/translated/stock.js
@@ -1770,6 +1770,7 @@ function loadStockTable(table, options) {
col = {
field: 'location_detail.pathstring',
title: '{% trans "Location" %}',
+ sortName: 'location',
formatter: function(value, row) {
return locationDetail(row);
}
@@ -1912,172 +1913,8 @@ function loadStockTable(table, options) {
original: original,
showColumns: true,
columns: columns,
- {% if False %}
- groupByField: options.groupByField || 'part',
- groupBy: grouping,
- groupByFormatter: function(field, id, data) {
-
- var row = data[0];
-
- if (field == 'part_detail.full_name') {
-
- var html = imageHoverIcon(row.part_detail.thumbnail);
-
- html += row.part_detail.full_name;
- html += ` (${data.length} {% trans "items" %})`;
-
- html += makePartIcons(row.part_detail);
-
- return html;
- } else if (field == 'part_detail.IPN') {
- var ipn = row.part_detail.IPN;
-
- if (ipn) {
- return ipn;
- } else {
- return '-';
- }
- } else if (field == 'part_detail.description') {
- return row.part_detail.description;
- } else if (field == 'packaging') {
- var packaging = [];
-
- data.forEach(function(item) {
- var pkg = item.packaging;
-
- if (!pkg) {
- pkg = '-';
- }
-
- if (!packaging.includes(pkg)) {
- packaging.push(pkg);
- }
- });
-
- if (packaging.length > 1) {
- return "...";
- } else if (packaging.length == 1) {
- return packaging[0];
- } else {
- return "-";
- }
- } else if (field == 'quantity') {
- var stock = 0;
- var items = 0;
-
- data.forEach(function(item) {
- stock += parseFloat(item.quantity);
- items += 1;
- });
-
- stock = +stock.toFixed(5);
-
- return `${stock} (${items} {% trans "items" %})`;
- } else if (field == 'status') {
- var statii = [];
-
- data.forEach(function(item) {
- var status = String(item.status);
-
- if (!status || status == '') {
- status = '-';
- }
-
- if (!statii.includes(status)) {
- statii.push(status);
- }
- });
-
- // Multiple status codes
- if (statii.length > 1) {
- return "...";
- } else if (statii.length == 1) {
- return stockStatusDisplay(statii[0]);
- } else {
- return "-";
- }
- } else if (field == 'batch') {
- var batches = [];
-
- data.forEach(function(item) {
- var batch = item.batch;
-
- if (!batch || batch == '') {
- batch = '-';
- }
-
- if (!batches.includes(batch)) {
- batches.push(batch);
- }
- });
-
- if (batches.length > 1) {
- return "" + batches.length + " {% trans 'batches' %}";
- } else if (batches.length == 1) {
- if (batches[0]) {
- return batches[0];
- } else {
- return '-';
- }
- } else {
- return '-';
- }
- } else if (field == 'location_detail.pathstring') {
- /* Determine how many locations */
- var locations = [];
-
- data.forEach(function(item) {
-
- var detail = locationDetail(item);
-
- if (!locations.includes(detail)) {
- locations.push(detail);
- }
- });
-
- if (locations.length == 1) {
- // Single location, easy!
- return locations[0];
- } else if (locations.length > 1) {
- return "In " + locations.length + " {% trans 'locations' %}";
- } else {
- return "{% trans 'Undefined location' %}";
- }
- } else if (field == 'notes') {
- var notes = [];
-
- data.forEach(function(item) {
- var note = item.notes;
-
- if (!note || note == '') {
- note = '-';
- }
-
- if (!notes.includes(note)) {
- notes.push(note);
- }
- });
-
- if (notes.length > 1) {
- return '...';
- } else if (notes.length == 1) {
- return notes[0] || '-';
- } else {
- return '-';
- }
- } else {
- return '';
- }
- },
- {% endif %}
});
- /*
- if (options.buttons) {
- linkButtonsToSelection(table, options.buttons);
- }
- */
-
var buttons = [
'#stock-print-options',
'#stock-options',
@@ -2092,7 +1929,6 @@ function loadStockTable(table, options) {
buttons,
);
-
function stockAdjustment(action) {
var items = $(table).bootstrapTable('getSelections');