+ if((ev.ctrlKey && key == 13) || key == 27) {
+ _hotkeys.alt = false; // cancel link selection
+ _hotkeys.focus = -1;
+ ev.cancelBubble = true;
+ if(ev.stopPropagation) ev.stopPropagation();
+ // activate submit/escape form
+ for(var j=0; j<this.forms.length; j++) {
+ var form = this.forms[j];
+ for (var i=0; i<form.elements.length; i++){
+ var el = form.elements[i];
+ var asp = el.getAttribute('aspect');
+
+
+ if (el.className!='editbutton' && (asp && asp.indexOf('selector') !== -1) && (key==13 || key==27)) {
+ passBack(key==13 ? el.getAttribute('rel') : false);
+ ev.returnValue = false;
+ return false;
+ }
+ if (((asp && asp.indexOf('default') !== -1) && key==13)||((asp && asp.indexOf('cancel') !== -1) && key==27)) {
+ if (validate(el)) {
+ if (asp.indexOf('process') !== -1)
+ JsHttpRequest.request(el, null, 60000);
+ else
+ JsHttpRequest.request(el);
+ }
+ ev.returnValue = false;
+ return false;
+ }
+ }
+ }
+ ev.returnValue = false;
+ return false;
+ }
+ if (editors && editors[key]) {
+ callEditor(key);
+ return stopEv(ev); // prevent default binding
+ }