Changeset 31909
- Timestamp:
- 2017-08-21T13:39:49+12:00 (6 years ago)
- Location:
- main/trunk/greenstone3/web/interfaces/default/js
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
main/trunk/greenstone3/web/interfaces/default/js/documentedit_scripts.js
r31770 r31909 20 20 */ 21 21 var new_metadata_field_input_type = "plain"; 22 /* add all metadata button? only valid with fixedlist or autocomplete metadata element selection */ 23 var enable_add_all_metadata_button = true; 24 22 25 /* Metadata elements to be used in the fixedlist/autocomplete options above */ 23 26 var availableMetadataElements = ["dc.Title", "dc.Subject"]; … … 30 33 */ 31 34 32 33 35 /************************ 34 36 * METADATA EDIT SCRIPTS * … … 40 42 var id = cell.attr("id").substring(6); 41 43 var metaTable = gs.jqGet("meta" + id); 42 43 44 var row = cell.parent(); 44 45 var newCell = $("<td>", {"style": "font-size:0.7em; padding:0px 10px", "class": "editMetadataButton"}); … … 68 69 metaTable.css("display", "block"); 69 70 metaTable.metaNameField.css("display", "inline"); 70 metaTable.addRowButton.css("display", "inline"); 71 metaTable.addRowButton.css("display", "inline"); 72 if (enable_add_all_metadata_button == true) { 73 metaTable.addAllButton.css("display", "inline"); 74 } 71 75 } 72 76 else … … 76 80 metaTable.css("display", "none"); 77 81 metaTable.metaNameField.css("display", "none"); 78 metaTable.addRowButton.css("display", "none"); 82 metaTable.addRowButton.css("display", "none"); 83 if (enable_add_all_metadata_button == true) { 84 metaTable.addAllButton.css("display", "none"); 85 } 79 86 } 80 87 }); … … 87 94 addFunctionalityToTable(metaTable); 88 95 metaTable.metaNameField.css("display", "none"); 89 metaTable.addRowButton.css("display", "none"); 96 metaTable.addRowButton.css("display", "none"); 97 if (enable_add_all_metadata_button == true) { 98 metaTable.addAllButton.css("display", "none"); 99 } 90 100 } 91 101 … … 120 130 $(this).css("display", "none"); 121 131 $(this.metaNameField).css("display", "none"); 122 $(this.addRowButton).css("display", "none"); 132 $(this.addRowButton).css("display", "none"); 133 if (enable_add_all_metadata_button == true) { 134 $(this.addAllButton).css("display", "none"); 135 } 123 136 } 124 137 }); … … 137 150 addCKEEditableState(evt,editableInitStates); 138 151 }); 139 140 152 if($("#metadataSetList").length) 141 153 { … … 378 390 379 391 } 380 return true; 381 } 382 392 // if get here, this must be a new node, as wasn't in init states 393 // make sure its not empty - we won't add empty nodes. 394 if (StateToCheck.initHTML == "") { 395 return false; 396 } 397 return true; 398 399 } 400 -
main/trunk/greenstone3/web/interfaces/default/js/documentedit_scripts_util.js
r31748 r31909 830 830 table.metaNameField = metaNameField; 831 831 832 var addRowButton = $("<button>",{"class": "ui-state-default ui-corner-all", "style": "margin: 5px;"}); 832 /* add the buttons */ 833 // check enable_add_all_button - only valid for fixedlist and autocomplete 834 if (enable_add_all_metadata_button == true) { 835 if (new_metadata_field_input_type != "fixedlist" && new_metadata_field_input_type != "autocomplete") { 836 enable_add_all_metadata_button = false; 837 } 838 } 839 840 // add single metadata button 841 var addRowButton = $("<button>",{"class": "ui-state-default ui-corner-all", "style": "margin: 5px;"}); 842 833 843 addRowButton.html(gs.text.de.add_new_metadata); 834 844 addRowButton.click(function() … … 840 850 return; 841 851 } 842 var clean_name = name.replace(/[\.-]/g, ""); 843 var newRow = $("<tr>", {"style": "display: table-row;"}); 844 var nameCell = $("<td>" + name + "</td>"); 845 nameCell.attr("class", "metaTableCellName"); 846 var valueCell = $("<td>", {"class": "metaTableCell"}); 847 var textValue = $("<textarea>", {"class": "metaTableCellArea "+ clean_name}); 848 849 if (jQuery.inArray(name, autocompleteMetadata) != -1) { 850 var source_obje = window[clean_name +"_values"]; 851 if (source_obje) { 852 textValue.autocomplete({ 853 minLength: 0, 854 source: source_obje 855 }); 856 } 857 } 858 valueCell.append(textValue); 859 newRow.append(nameCell); 860 newRow.append(valueCell); 861 addRemoveLinkToRow(newRow.get(0)); 862 table.append(newRow); 863 864 var undo = new Array(); 865 undo.op = "delMeta"; 866 undo.srcElem = newRow; 867 undo.removeTransaction = false; 868 _undoOperations.push(undo); 869 if ( hierarchyStorage && hierarchyStorage[name]) 870 { 871 setHierarchyEventsWrappers(name); 872 } 852 addNewMetadataRow(table, name); 873 853 874 854 875 855 }); 876 table.addRowButton = addRowButton; 877 metaNameField.after(addRowButton); 878 856 table.addRowButton = addRowButton; 857 metaNameField.after(addRowButton); 858 859 // add all metadata button 860 if (enable_add_all_metadata_button == true) { 861 var addAllButton = $("<button>",{"class": "ui-state-default ui-corner-all", "style": "margin: 5px;"}); 862 addAllButton.html(gs.text.de.add_all_metadata); 863 addAllButton.click(function() 864 { 865 for(var i=0; i<availableMetadataElements.length; i++) { 866 867 addNewMetadataRow(table, availableMetadataElements[i]) 868 } 869 870 }); 871 table.addAllButton = addAllButton; 872 addRowButton.after(addAllButton); 873 874 } 875 876 } 877 878 function addNewMetadataRow(table, name) { 879 880 var clean_name = name.replace(/[\.-]/g, ""); 881 var newRow = $("<tr>", {"style": "display: table-row;"}); 882 var nameCell = $("<td>" + name + "</td>"); 883 nameCell.attr("class", "metaTableCellName"); 884 var valueCell = $("<td>", {"class": "metaTableCell"}); 885 var textValue = $("<textarea>", {"class": "metaTableCellArea "+ clean_name}); 886 887 if (jQuery.inArray(name, autocompleteMetadata) != -1) { 888 var source_obje = window[clean_name +"_values"]; 889 if (source_obje) { 890 textValue.autocomplete({ 891 minLength: 0, 892 source: source_obje 893 }); 894 } 895 } 896 valueCell.append(textValue); 897 newRow.append(nameCell); 898 newRow.append(valueCell); 899 addRemoveLinkToRow(newRow.get(0)); 900 table.append(newRow); 901 902 var undo = new Array(); 903 undo.op = "delMeta"; 904 undo.srcElem = newRow; 905 undo.removeTransaction = false; 906 _undoOperations.push(undo); 907 if ( hierarchyStorage && hierarchyStorage[name]) 908 { 909 setHierarchyEventsWrappers(name); 910 } 879 911 } 880 912
Note:
See TracChangeset
for help on using the changeset viewer.