From 1e46767718fd70f974036041cee59a139c7c3997 Mon Sep 17 00:00:00 2001 From: Tom Willemse Date: Wed, 17 Jun 2015 10:35:01 +0200 Subject: Login to scuttle automatically if possible --- conkeror/.conkerorrc/init.js | 2 ++ conkeror/.conkerorrc/site-js/scuttle.js | 43 +++++++++++++++++++++++++-------- 2 files changed, 35 insertions(+), 10 deletions(-) (limited to 'conkeror/.conkerorrc') diff --git a/conkeror/.conkerorrc/init.js b/conkeror/.conkerorrc/init.js index 50f35c0..bb6a578 100644 --- a/conkeror/.conkerorrc/init.js +++ b/conkeror/.conkerorrc/init.js @@ -40,6 +40,8 @@ require("cdispass"); require("jira"); require('scuttle'); +scuttle_url = 'https://ryuslash.org/scuttle/'; + define_browser_object_class( "history-url", null, function (I, prompt) { diff --git a/conkeror/.conkerorrc/site-js/scuttle.js b/conkeror/.conkerorrc/site-js/scuttle.js index f173afe..fecab43 100644 --- a/conkeror/.conkerorrc/site-js/scuttle.js +++ b/conkeror/.conkerorrc/site-js/scuttle.js @@ -1,5 +1,12 @@ // define_hook('scuttle_bookmarked_hook'); +define_variable("scuttle_username", null, + "Username of te scuttle account."); +define_variable("scuttle_password", null, + "Password of the scuttle account."); +define_variable("scuttle_url", null, + "The URL where scuttle can be found."); + function scuttle_parse_xml(text) { var parser = Components @@ -8,6 +15,20 @@ function scuttle_parse_xml(text) return parser.parseFromString(text, 'text/xml'); } +function scuttle_get_url(path) +{ + let url = make_uri(scuttle_url); + + if (scuttle_username != null) + url.username = scuttle_username; + if (scuttle_password != null) + url.password = scuttle_password; + + url.path += '/api'; + + return url.spec + '/' + path; +} + function scuttle_bookmarked_widget(window) { this.class_name = 'scuttle-bookmark-widget'; @@ -23,12 +44,12 @@ scuttle_bookmarked_widget.prototype = { var obj = this; function doit() { check_buffer(obj.window.buffers.current, content_buffer); - let posturl = 'https://ryuslash.org/scuttle/api/is_bookmarked.php?url=' + - encodeURIComponent( - load_spec_uri_string( - load_spec(obj.window.buffers.current.top_frame) - ) - ); + let posturl = scuttle_get_url('is_bookmarked.php?url=' + + encodeURIComponent( + load_spec_uri_string( + load_spec(obj.window.buffers.current.top_frame) + ) + )); try { let content = yield send_http_request( @@ -51,7 +72,8 @@ interactive("scuttle-post", "bookmark the page via scuttle", function (I) { check_buffer(I.buffer, content_buffer); - let posturl = 'https://ryuslash.org/scuttle/api/posts_add.php?&url=' + + let posturl = scuttle_get_url( + 'posts_add.php?&url=' + escape(load_spec_uri_string(load_spec(I.buffer.top_frame))) + '&description=' + escape(( @@ -71,7 +93,7 @@ interactive("scuttle-post", yield I.minibuffer.read( $prompt = "extended description: " ) - )); + ))); try { var content = yield send_http_request( @@ -93,7 +115,8 @@ interactive("scuttle-post-link", var mylink = load_spec_uri_string( load_spec(encodeURIComponent(bo))); check_buffer(I.buffer, content_buffer); - let postlinkurl = 'https://ryuslash.org/scuttle/api/posts_add.php?&url=' + + let postlinkurl = scuttle_get_url( + 'posts_add.php?&url=' + mylink + '&description=' + escape(( @@ -113,7 +136,7 @@ interactive("scuttle-post-link", yield I.minibuffer.read( $prompt = "extended description: " ) - )); + ))); try { var content = yield send_http_request( -- cgit v1.2.3-54-g00ecf