Changeset 3449:bddaf36a61e9 for admin/js
- Timestamp:
- 12/09/16 13:12:02 (9 years ago)
- Branch:
- default
- Location:
- admin/js
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
admin/js/confirm-close.js
r3445 r3449 2 2 3 3 if (arguments.length > 0) { 4 for (var i =0; i<arguments.length; i++) {4 for (var i = 0; i < arguments.length; i++) { 5 5 this.forms_id.push(arguments[i]); 6 6 } … … 15 15 16 16 getCurrentForms: function() { 17 // Store current form's element's values 18 17 19 var formsInPage = this.getForms(); 18 var f ;20 var f, e; 19 21 var This = this; 20 this.forms =new Array();21 for (var i =0; i<formsInPage.length; i++) {22 this.forms = new Array(); 23 for (var i = 0; i < formsInPage.length; i++) { 22 24 f = formsInPage[i]; 23 25 var tmpForm = new Array(); 24 for (var j=0; j<f.elements.length; j++) { 25 tmpForm.push(this.getFormElementValue(f[j])); 26 for (var j = 0; j < f.elements.length; j++) { 27 e = this.getFormElementValue(f[j]); 28 if (e != undefined) { 29 tmpForm.push(e); 30 } 26 31 } 27 32 this.forms.push(tmpForm); 28 33 29 chainHandler(f, 'onsubmit',function() {34 chainHandler(f, 'onsubmit', function() { 30 35 This.formSubmit = true; 31 36 }); … … 34 39 35 40 compareForms: function() { 41 // Compare current form's element's values to their original values 42 // Return false if any difference, else true 43 36 44 if (this.forms.length == 0) { 37 45 return true; … … 39 47 40 48 var formsInPage = this.getForms(); 41 var f ;42 for (var i =0; i<formsInPage.length; i++) {49 var f, e; 50 for (var i = 0; i < formsInPage.length; i++) { 43 51 f = formsInPage[i]; 44 for (var j=0; j < Math.min(f.elements.length,this.forms[i].length); j++) { 45 if (this.forms[i][j] != this.getFormElementValue(f[j])) { 52 var tmpForm = new Array(); 53 for (var j = 0; j < f.elements.length; j++) { 54 e = this.getFormElementValue(f[j]); 55 if (e != undefined) { 56 tmpForm.push(e); 57 } 58 } 59 for (var j = 0; j < this.forms[i].length; j++) { 60 if (this.forms[i][j] != tmpForm[j]) { 46 61 return false; 47 62 } … … 53 68 54 69 getForms: function() { 70 // Get current list of forms as HTMLCollection(s) 71 55 72 if (!document.getElementsByTagName || !document.getElementById) { 56 73 return new Array(); … … 60 77 var res = new Array(); 61 78 var f; 62 for (var i =0; i<this.forms_id.length; i++) {79 for (var i = 0; i < this.forms_id.length; i++) { 63 80 f = document.getElementById(this.forms_id[i]); 64 81 if (f != undefined) { … … 75 92 76 93 getFormElementValue: function(e) { 77 if (e == undefined || e.classList.contains('meta-helper') || e.classList.contains('checkbox-helper')) { 78 return null; 94 // Return current value of an form element 95 96 if (e == undefined) { 97 // Unknown object 98 return undefined; 99 } 100 if (e.type != undefined && e.type == 'button') { 101 // Ignore button element 102 return undefined; 103 } 104 if (e.classList.contains('meta-helper') || e.classList.contains('checkbox-helper')) { 105 // Ignore some application helper element 106 return undefined; 79 107 } 80 108 if (e.type != undefined && e.type == 'radio') { 109 // Return actual radio button value if selected, else null 81 110 return this.getFormRadioValue(e); 82 111 } else if (e.type != undefined && e.type == 'checkbox') { 112 // Return actual checkbox button value if checked, else null 83 113 return this.getFormCheckValue(e); 84 } else if (e.type == 'password') { 114 } else if (e.type != undefined && e.type == 'password') { 115 // Ignore password element 85 116 return null; 86 117 } else if (e.value != undefined) { 118 // Return element value if not undefined 87 119 return e.value; 88 120 } else { 121 // Every other case, return null 89 122 return null; 90 123 } … … 99 132 100 133 getFormRadioValue: function(e) { 101 for (var i =0; i <e.length; i++) {134 for (var i = 0; i < e.length; i++) { 102 135 if (e[i].checked) { 103 136 return e[i].value; … … 112 145 var confirmClosePage = new confirmClose(); 113 146 114 chainHandler(window, 'onload',function() {147 chainHandler(window, 'onload', function() { 115 148 confirmClosePage.getCurrentForms(); 116 149 }); 117 150 118 chainHandler(window, 'onbeforeunload',function(event_) {151 chainHandler(window, 'onbeforeunload', function(event_) { 119 152 if (event_ == undefined && window.event) { 120 153 event_ = window.event; -
admin/js/meta-editor.js
r3447 r3449 81 81 for (var i=0; i < meta.length; i++) { 82 82 li = $('<li>'+meta[i]+'</li>'); 83 a_remove = $('< a href="#" type="button" class="metaRemove meta-helper"><img src="images/trash.png" alt="remove" /></a>');83 a_remove = $('<button type="button" class="metaRemove meta-helper"><img src="images/trash.png" alt="remove" /></button>'); 84 84 a_remove.get(0).caller = this; 85 85 a_remove.get(0).meta_id = meta[i]; … … 109 109 var meta_id = $(this).text(); 110 110 li = $('<li><a href="' + This.meta_url + $(this).attr('uri') + '">'+meta_id+'</a></li>'); 111 a_remove = $('< a href="#" type="button" class="metaRemove meta-helper"><img src="images/trash.png" alt="remove" /></a>');111 a_remove = $('<button type="button" class="metaRemove meta-helper"><img src="images/trash.png" alt="remove" /></button>'); 112 112 a_remove.get(0).caller = This; 113 113 a_remove.get(0).meta_id = meta_id; … … 163 163 164 164 $(data).find('meta').each(function(i) { 165 meta_link = $('< a href="#" type="button" class="metaItem meta-helper">' + $(this).text() + '</a>');165 meta_link = $('<button type="button" class="metaItem meta-helper">' + $(this).text() + '</button>'); 166 166 meta_link.get(0).meta_id = $(this).text(); 167 167 meta_link.click(function() { … … 178 178 179 179 if (list_type == 'more') { 180 var a_more = $('< a href="#" type="button" class="button metaGetMore meta-helper"></a>');180 var a_more = $('<button type="button" class="button metaGetMore meta-helper"></button>'); 181 181 a_more.append(This.text_all + String.fromCharCode(160)+String.fromCharCode(187)); 182 182 a_more.click(function() { … … 193 193 target.append(pa); 194 194 195 var a = $('< a href="#" type="button" class="button metaGetList meta-helper">' + This.text_choose + '</a>');195 var a = $('<button type="button" class="button metaGetList meta-helper">' + This.text_choose + '</button>'); 196 196 a.click(function() { 197 197 $(this).parent().next().removeClass('hide');
Note: See TracChangeset
for help on using the changeset viewer.