Skip to content

Instantly share code, notes, and snippets.

@erikvold
erikvold / chrome.js
Created September 2, 2012 02:44 — forked from Gozala/chrome.js
API for chrome URI registration
/*jshint asi:true globalstrict:true*/
'use strict';
// Workaround for Bug 785891
// and sugar around: https://developer.mozilla.org/en-US/docs/XPCOM_Interface_Reference/nsIComponentManager#addBootstrappedManifestLocation%28
let { Cc, Ci, Cm } = require('chrome')
let ioService = Cc['@mozilla.org/network/io-service;1'].
getService(Ci.nsIIOService)
@erikvold
erikvold / resource.js
Created September 3, 2012 21:50 — forked from Gozala/resource.js
SDK API for registering new resource URIs
/*jshint asi:true globalstrict:true*/
'use strict';
let { Cc, Ci } = require('chrome')
let ioService = Cc['@mozilla.org/network/io-service;1'].
getService(Ci.nsIIOService)
let resourceHandler = ioService.getProtocolHandler('resource').
QueryInterface(Ci.nsIResProtocolHandler)
@erikvold
erikvold / policy.js
Created January 21, 2013 17:02 — forked from Gozala/policy.js
// For details see:
// https://developer.mozilla.org/en/XPCOM_Interface_Reference/nsIContentPolicy
// https://developer.mozilla.org/en/XPCOM_Interface_Reference/nsICategoryManager
const { Ci } = require('chrome')
const xpcom = require('api-utils/xpcom')
const policy = {
contractID: '@lduros.net/PreventImage-policy',
name: 'Implements content policy to prevent images from being loaded',
@erikvold
erikvold / sc-dl.js
Created February 22, 2013 09:01 — forked from pheuter/sc-dl.js
(function(d) {
var dl = d.createElement('a');
dl.innerText = 'Download MP3';
dl.href = "http://media.soundcloud.com/stream/"+d.querySelector('#main-content-inner img[class=waveform]').src.match(/\.com\/(.+)\_/)[1];
dl.download = d.querySelector('em').innerText+".mp3";
d.querySelector('.primary').appendChild(dl);
dl.style.marginLeft = '10px';
dl.style.color = 'red';
dl.style.fontWeight = 700;
})(document);
window.onload = function() {
$("#login").click(function(event) {
chrome.identity.launchWebAuthFlow(
{'url': 'http://localhost:3000/oauth/authorize?client_id=7b529aed5e89c14bd45c4cb949f220e5bc4cc440003dd7604d3fc6ed43f29844&redirect_uri=https%3A%2F%2Fhnjjholodahaklljjenjpfbkkghppdpk.chromiumapp.org%2Fvyrtex-chrome-extension&response_type=code', 'interactive': true},
function(redirect_url) {
console.log(redirect_url);
var code = redirect_url.substring(redirect_url.indexOf("=") + 1, redirect_url.length );
exchangeCodeForToken(code);
});