aboutsummaryrefslogtreecommitdiffstats
path: root/multi_requester.js
diff options
context:
space:
mode:
authorsuVene2008-12-09 12:50:34 +0000
committersuVene2008-12-09 12:50:34 +0000
commitbb351bc24a1942be38ce955874c99ce9dfe7f03d (patch)
tree65ae473b10abe60c341a0749a926a402a1ae7f41 /multi_requester.js
parent6de3fa6a8a6777c30f6b8e5ae4180c091995acd9 (diff)
downloadvimperator-plugins-bb351bc24a1942be38ce955874c99ce9dfe7f03d.tar.bz2
* _libly.js ver.0.1.4にあわせた修正 [26222]
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@26225 d0d07461-0603-4401-acd4-de1884942a52
Diffstat (limited to 'multi_requester.js')
-rw-r--r--multi_requester.js29
1 files changed, 14 insertions, 15 deletions
diff --git a/multi_requester.js b/multi_requester.js
index f6d6ce7..b9d9e07 100644
--- a/multi_requester.js
+++ b/multi_requester.js
@@ -5,13 +5,14 @@ var PLUGIN_INFO =
<description>request, and the result is displayed to the buffer.</description>
<description lang="ja">リクエストの結果をバッファに出力する。</description>
<author mail="suvene@zeromemory.info" homepage="http://zeromemory.sblo.jp/">suVene</author>
- <version>0.4.4</version>
+ <version>0.4.5</version>
<minVersion>2.0pre</minVersion>
<maxVersion>2.0pre</maxVersion>
<detail><![CDATA[
== NEEDS LIBLARY ==
-_libly.js
+_libly.js(ver.0.1.4)
@see http://coderepos.org/share/browser/lang/javascript/vimperator-plugins/trunk/_libly.js
+
== Usage ==
command[!] subcommand [ANY_TEXT]
- ! create new tab.
@@ -70,7 +71,7 @@ let g:multi_requester_use_wedata = "false" // true by default
//}}}
(function() {
if (!liberator.plugins.libly) {
- liberator.log('multi_requester: needs libly.js');
+ liberator.log('multi_requester: needs _libly.js');
return;
}
@@ -92,8 +93,8 @@ var SITEINFO = [
urlEncode: 'UTF-8'
},
];
-var lib = liberator.plugins.libly;
-var $U = lib.$U;
+var libly = liberator.plugins.libly;
+var $U = libly.$U;
var logger = $U.getLogger('multi_requester');
var mergedSiteinfo = {};
//}}}
@@ -209,7 +210,7 @@ var DataAccess = {
return $U.A(mergedSiteinfo);
},
getWedata: function(func) {
- var req = new lib.Request(
+ var req = new libly.Request(
'http://wedata.net/databases/Multi%20Requester/items.json'
);
req.addEventListener('onSuccess', function(res) {
@@ -271,7 +272,7 @@ var MultiRequester = {
if (bang) {
liberator.open(url, liberator.NEW_TAB);
} else {
- let req = new lib.Request(url, null, {
+ let req = new libly.Request(url, null, {
encoding: srcEncode,
siteinfo: info,
args: {
@@ -336,9 +337,8 @@ var MultiRequester = {
var el = res.getHTMLDocument(extractLink);
if (!el) throw 'extract link failed.: extractLink -> ' + extractLink;
- var a = el.firstChild;
- var url = $U.pathToURL((a.href || a.action || a.value));
- var req = new lib.Request(url, null, $U.extend(res.req.options, {extractLink: true}));
+ var url = $U.pathToURL(el[0]);
+ var req = new libly.Request(url, null, $U.extend(res.req.options, {extractLink: true}));
req.addEventListener('onException', $U.bind(this, this.onException));
req.addEventListener('onSuccess', $U.bind(this, this.onSuccess));
req.addEventListener('onFailure', $U.bind(this, this.onFailure));
@@ -375,14 +375,13 @@ var MultiRequester = {
this.extractLink(res, extractLink);
return;
}
-
- doc = res.getHTMLDocument(xpath, null, res.req.options.siteinfo.ignoreTags);
+ var ignoreTags = ['script'].concat(libly.$U.A(res.req.options.siteinfo.ignoreTags));
+ doc = document.createElementNS(null, 'div');
+ res.getHTMLDocument(xpath, null, ignoreTags, function(node, i) { doc.appendChild(node) } );
if (!doc) throw 'XPath result is undefined or null.: XPath -> ' + xpath;
html = '<a href="' + escapedUrl + '" class="hl-Title" target="_self">' + escapedUrl + '</a>' +
- (new XMLSerializer()).serializeToString(doc)
- .replace(/<!--(?:[^-]|-(?!->))*-->/g, '')
- .replace(/<[^>]+>/g, function(all) all.toLowerCase());
+ $U.xmlSerialize(doc);
MultiRequester.echoHash[res.req.options.siteinfo.name] = html;