From 1a95118b663fcb0497b991f4918aaad2304df0bf Mon Sep 17 00:00:00 2001 From: Vanderhaegen Cedrik Date: Tue, 10 Feb 2015 14:33:02 +0100 Subject: [PATCH 1/2] remove confusing uppercasing of hardcoded list of languages --- .../admin/src/app/form/ConceptDetailList.js | 20 ++----------------- .../static/admin/src/app/form/LabelManager.js | 18 +---------------- .../static/admin/src/app/form/NoteManager.js | 19 +----------------- 3 files changed, 4 insertions(+), 53 deletions(-) diff --git a/atramhasis/static/admin/src/app/form/ConceptDetailList.js b/atramhasis/static/admin/src/app/form/ConceptDetailList.js index b823e7d6..8b98d350 100644 --- a/atramhasis/static/admin/src/app/form/ConceptDetailList.js +++ b/atramhasis/static/admin/src/app/form/ConceptDetailList.js @@ -132,7 +132,7 @@ define([ return item.type == typevalue; }); return arrayUtil.map(filteredItems, function (item) { - return {label: item.label, language: self._getLanguageToDisplay(item.language), languageValue: item.language, type: typeToBeDisplayed, typeValue: item.type}; + return {label: item.label, language: item.language, languageValue: item.language, type: typeToBeDisplayed, typeValue: item.type}; }); }, _mapNoteToDisplayInGrid: function (notes, typevalue, typeToBeDisplayed) { @@ -143,25 +143,9 @@ define([ }); return arrayUtil.map(filteredItems, function (item) { - return {label: item.note, language: self._getLanguageToDisplay(item.language), languageValue: item.language, type: typeToBeDisplayed, typeValue: item.type}; + return {label: item.note, language: item.language, languageValue: item.language, type: typeToBeDisplayed, typeValue: item.type}; }); }, - _getLanguageToDisplay: function (language) { - switch (language) { - case "nl": - return "NL"; - break; - case "fr": - return "FR"; - break; - case "en": - return "EN"; - break; - default: - return language; - break; - } - }, reset: function () { diff --git a/atramhasis/static/admin/src/app/form/LabelManager.js b/atramhasis/static/admin/src/app/form/LabelManager.js index 110669d4..cd313015 100644 --- a/atramhasis/static/admin/src/app/form/LabelManager.js +++ b/atramhasis/static/admin/src/app/form/LabelManager.js @@ -261,25 +261,9 @@ define([ return item.type == typevalue; }); return arrayUtil.map(filteredItems, function (item) { - return {label: item.label, language: self._getLanguageToDisplay(item.language), languageValue: item.language, type: item.type, typeDisplayed: typeToBeDisplayed}; + return {label: item.label, language: item.language, languageValue: item.language, type: item.type, typeDisplayed: typeToBeDisplayed}; }); }, - _getLanguageToDisplay: function (language) { - switch (language) { - case "nl": - return "NL"; - break; - case "fr": - return "FR"; - break; - case "en": - return "EN"; - break; - default: - return language; - break; - } - }, //not in use for the moment _checkPrefLabelRules: function (value) { diff --git a/atramhasis/static/admin/src/app/form/NoteManager.js b/atramhasis/static/admin/src/app/form/NoteManager.js index d4f569d6..460cf625 100644 --- a/atramhasis/static/admin/src/app/form/NoteManager.js +++ b/atramhasis/static/admin/src/app/form/NoteManager.js @@ -280,26 +280,9 @@ define([ }); return arrayUtil.map(filteredItems, function (item) { - return {label: item.note, language: self._getLanguageToDisplay(item.language), languageValue: item.language, type:item.type , typeDisplayed:typeToBeDisplayed}; + return {label: item.note, language: item.language, languageValue: item.language, type:item.type , typeDisplayed:typeToBeDisplayed}; }); }, - _getLanguageToDisplay: function (language) { - switch (language) { - case "nl": - return "NL"; - break; - case "fr": - return "FR"; - break; - case "en": - return "EN"; - break; - default: - return language; - break; - } - - }, geNotes: function () { if(this.noteGrid) { From bf8b881c3b62665da938afab7eefa68fb030aebf Mon Sep 17 00:00:00 2001 From: Vanderhaegen Cedrik Date: Tue, 10 Feb 2015 16:22:14 +0100 Subject: [PATCH 2/2] create new button & refactor functionality to remove rows --- .../static/admin/src/app/form/LabelManager.js | 55 +++++++++++++------ 1 file changed, 37 insertions(+), 18 deletions(-) diff --git a/atramhasis/static/admin/src/app/form/LabelManager.js b/atramhasis/static/admin/src/app/form/LabelManager.js index cd313015..bb62e997 100644 --- a/atramhasis/static/admin/src/app/form/LabelManager.js +++ b/atramhasis/static/admin/src/app/form/LabelManager.js @@ -204,6 +204,11 @@ define([ _createGrid: function (gridDiv) { var self = this; + + var gridStore = new Memory({ + data: [] + }); + var columns; columns = [ {label: "Title", field: "label"}, @@ -211,28 +216,42 @@ define([ {label: "Language", field: "languageValue", unhidable: true, hidden: true}, {label: "Type", field: "typeDisplayed"}, {label: "Type", field: "type", unhidable: true, hidden: true}, - editor({label: " ", field: 'button', - editorArgs: {label: "delete", showLabel: false, iconClass: 'minIcon', onClick: function (event) { - - var row = grid.row(event); - self.languageComboBox.getOptions(row.data.languageValue).disabled=false; - var itemToDelete = row.data.id; - grid.store.remove(itemToDelete); - grid.resize(); - grid.refresh(); - // self._checkPrefLabelRules(row.data.type); - } - }}, - Button) + { + label: ' ', + field: 'complexCell', + renderCell: function (object, value, node, options) { + return new Button({ + label: "remove", + onClick: function () { + //re-add fitlered data, removing items directly is not possible without id's + grid.store.data = arrayUtil.filter(grid.store.data, function (item) { + return !(object.label == item.label + && object.language == item.language + && object.type == item.type) + }); + grid.refresh(); + } + }).domNode; + } + } +// editor({label: " ", field: 'button', +// editorArgs: {label: "delete", showLabel: false, iconClass: 'minIcon', onClick: function (event) { +// console.log('deleting ', event, grid.row(event)); +// var row = grid.row(event); +// self.languageComboBox.getOptions(row.data.languageValue).disabled=false; +// var itemToDelete = row.data.id; +// grid.store.remove(itemToDelete); +// grid.resize(); +// grid.refresh(); +// // self._checkPrefLabelRules(row.data.type); +// } +// }}, +// Button) ]; - var gridStore = new Memory({ - data: [] - }); var grid = new (declare([OnDemandGrid, ColumnHider]))({ columns: columns, - store: gridStore, - selectionMode: "single" // for Selection; only select a single row at a time + store: gridStore }, gridDiv); grid.startup();