1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
|
uzbl.formfiller = {
dump: function() {
var rv = '';
var allFrames = new Array(window);
for ( f=0; f<window.frames.length; ++f ) {
allFrames.push(window.frames[f]);
}
for ( j=0; j<allFrames.length; ++j ) {
try {
var xp_res = allFrames[j].document.evaluate(
'//input', allFrames[j].document.documentElement, null, XPathResult.ANY_TYPE,null
);
var input;
while ( input = xp_res.iterateNext() ) {
var type = (input.type?input.type:text);
if ( type == 'text' || type == 'password' || type == 'search' ) {
rv += '%' + escape(input.name) + '(' + type + '):' + input.value + '\n';
}
else if ( type == 'checkbox' || type == 'radio' ) {
rv += '%' + escape(input.name) + '(' + type + '){' + escape(input.value) + '}:' + (input.checked?'1':'0') + '\n';
}
}
xp_res = allFrames[j].document.evaluate(
'//textarea', allFrames[j].document.documentElement, null, XPathResult.ANY_TYPE,null
);
var input;
while ( input = xp_res.iterateNext() ) {
rv += '%' + escape(input.name) + '(textarea):\n' + input.value.replace(/\n%/g,"\n\\%") + '\n%\n';
}
}
catch (err) { }
}
return 'formfillerstart\n' + rv + '%!end';
}
,
insert: function(fname, ftype, fvalue, fchecked) {
fname = unescape(fname);
var allFrames = new Array(window);
for ( f=0; f<window.frames.length; ++f ) {
allFrames.push(window.frames[f]);
}
for ( j=0; j<allFrames.length; ++j ) {
try {
if ( ftype == 'text' || ftype == 'password' || ftype == 'search' || ftype == 'textarea' ) {
allFrames[j].document.getElementsByName(fname)[0].value = fvalue;
}
else if ( ftype == 'checkbox' ) {
allFrames[j].document.getElementsByName(fname)[0].checked = fchecked;
}
else if ( ftype == 'radio' ) {
fvalue = unescape(fvalue);
var radios = allFrames[j].document.getElementsByName(fname);
for ( r=0; r<radios.length; ++r ) {
if ( radios[r].value == fvalue ) {
radios[r].checked = fchecked;
}
}
}
}
catch (err) { }
}
}
}
|