-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathrae.js
More file actions
79 lines (74 loc) · 3.3 KB
/
rae.js
File metadata and controls
79 lines (74 loc) · 3.3 KB
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
68
69
70
71
72
73
74
75
76
77
78
79
/* Roberto Huelga - rhuelga@gmail.com */
CmdUtils.CreateCommand({
names: ["rae"],
icon: "http://www.rae.es/favicon.ico",
description: "Busca la definición de la palabra indicada en el RAE.",
help: "rae [palabra a buscar].",
author: {name: "Roberto Huelga", email: "rhuelga@gmail.com"},
license: "GPL",
homepage: "http://labs.mozilla.com/",
arguments: [{role: 'object', nountype: noun_arb_text}],
preview: function preview(pblock, args) {
pblock.innerHTML = "Buscando en el diccionario...";
CmdUtils.previewGet(pblock, "http://buscon.rae.es/draeI/SrvltGUIBusUsual?LEMA=" + args.object.text +"&origen=RAE&TIPO_BUS=3", function (htm) {
pblock.innerHTML = htm;
$(pblock).find('a').attr( "href", function(ar) { return "http://buscon.rae.es/draeI/" + $(this).attr("href") });
});
},
execute: function execute(args) {
var search_string = args.object.text;
var windowManager = Components.classes["@mozilla.org/appshell/window-mediator;1"]
.getService(Components.interfaces.nsIWindowMediator);
var browserWindow = windowManager.getMostRecentWindow("navigator:browser");
var browser = browserWindow.getBrowser();
browser.loadOneTab("http://buscon.rae.es/draeI/SrvltGUIBusUsual?LEMA=" + search_string +"&origen=RAE&TIPO_BUS=3", null, null, null, false, false);
}
});
CmdUtils.CreateCommand({
names: ["conjugar"],
icon: "http://www.rae.es/favicon.ico",
description: "Busca en el RAE la conjugacion del verbo escrito.",
help: "conjugar [verbo a conjugar].",
author: {name: "Roberto Huelga", email: "rhuelga@gmail.com"},
license: "GPL",
homepage: "http://marssong.blogspot.com/",
arguments: [{role: 'object', nountype: noun_arb_text}],
_verbUrl: function rae__verbUrl( verb, callback_ok, callback_not_found ) {
$.get( "http://buscon.rae.es/draeI/SrvltGUIBusUsual?LEMA=" + verb +"&origen=RAE&TIPO_BUS=3", null, function (data, textStatus) {
var verb_addr = $(data).find('a[href^=SrvltGUIVerbos]').attr( "href" );
if( verb_addr ) {
callback_ok( "http://buscon.rae.es/draeI/" + verb_addr );
} else {
if( callback_not_found ) {
callback_not_found( data );
}
}
})
},
previewDelay: 500,
preview: function preview(pblock, args) {
pblock.innerHTML = "Buscando en el diccionario...";
this._verbUrl( args.object.text,
function (url) {
CmdUtils.previewGet(pblock, url, function (htm) {
pblock.innerHTML = htm;
$(pblock).find('a').attr( "href", function(ar) {
return "http://buscon.rae.es/draeI/" + $(this).attr("href")
});
})},
function (data) {
pblock.innerHTML = "Verbo '" + args.object.text + "' no encontrado. <hr/><div id=\"rae_data\">" + data +"</div>";
$(pblock).find('a').attr( "href", function(ar) {
return "http://buscon.rae.es/draeI/" + $(this).attr("href") });
});
},
execute: function execute(args) {
this._verbUrl( args.object.text, function (url) {
var windowManager = Components.classes["@mozilla.org/appshell/window-mediator;1"]
.getService(Components.interfaces.nsIWindowMediator);
var browserWindow = windowManager.getMostRecentWindow("navigator:browser");
var browser = browserWindow.getBrowser();
browser.loadOneTab( url , null, null, null, false, false);
})
}
});