1/** 2 * Securelogin Dokuwiki Plugin 3 * 4 * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) 5 * @author Mikhail I. Izmestev 6 * @maintainer Matt Bagley 7 * 8 * @see also https://www.dokuwiki.org/plugin:securelogin 9 */ 10 11var securelogin_forms = new Array(); 12 13function securelogin_add_js(source) { 14 var jsNode = document.createElement('script'); 15 jsNode.setAttribute('type', 'text/javascript'); 16 jsNode.setAttribute('src', source); 17 document.getElementsByTagName('head')[0].appendChild(jsNode); 18} 19 20function securelogin_get_form(el) { 21 while(el && el.nodeName != 'FORM') 22 el = el.parentNode; 23 return el; 24} 25 26jQuery(function() { 27 var forms = new Array('dw__login', 'dw__register', 'test__publicKey', 'add_userid', 'modify_userid'); 28 29 var jsNeeded = false; 30 for (var i = 0; i < forms.length; ++i) { 31 var form = securelogin_get_form(jQuery("#" + forms[i])[0]); 32 if(!form) continue; 33 if(!jsNeeded) 34 jsNeeded = true; 35 var slNode = document.createElement('input'); 36 slNode.setAttribute('type', 'hidden'); 37 slNode.setAttribute('name', 'securelogin'); 38 slNode.setAttribute('id', 'securelogin'); 39 form.appendChild(slNode); 40 securelogin_forms.push(new Array(forms[i], form)); 41 } 42 43 if(jsNeeded) { 44 securelogin_add_js(DOKU_BASE+'lib/plugins/securelogin/rsalib.js'); 45 securelogin_add_js(DOKU_BASE+'lib/plugins/securelogin/securelogin.js'); 46 } 47}); 48