Skip to content

Instantly share code, notes, and snippets.

@champierre
Created October 16, 2009 07:50
Show Gist options
  • Save champierre/211639 to your computer and use it in GitHub Desktop.
Save champierre/211639 to your computer and use it in GitHub Desktop.
// ==UserScript==
// @name atnd2gcal
// @namespace http://www.kugimiyabyou.net/
// @include http://atnd.org/events/*
// @description makoto takagi / oooooorz@gmail.com
// ==/UserScript==
(function(){
// version 1.0
// ÉoÉOóvñ]ÇÕ oooooorz@gmail.com Ç…Ç®ímÇÁÇπÇ¢ÇΩÇæÇØÇÍÇŒèoóàÇÈå¿ÇËëŒâûǵNjÇ∑ÅB
// ǧNjÇ≠ëŒâûÇ≈ǴǃǻǢatndÇÃurlÇã≥ǶǃÇ≠ÇÍÇÈÇ∆èïÇ©ÇËÇ‹Ç∑ÅB
var des = "";
var location = "";
var start = "";
var end = "";
var title_div = document.getElementById("main_title");
var title = title_div.getElementsByTagName("h1")[0].innerHTML;
des = des + title + '\n' + title_div.getElementsByTagName("p")[0].innerHTML;
des = des + '\n' + title_div.getElementsByTagName("a")[0].href;
console.log("created title");
var divs = document.getElementsByTagName('div');
for (var i = 0; i < divs.length; i++) {
var div = divs[i];
console.log(div.className);
if (div.className.indexOf("info_layout") != -1) {
start = div.getElementsByTagName('abbr')[0].title;
console.log("start =" + start);
// èIóπÇ™ê›íËÇ≥ÇÍǃǢǻǢÉCÉxÉìÉgLJdžÇÈ
if (div.getElementsByTagName('abbr').length == 2) {
end = div.getElementsByTagName('abbr')[1].title;
}
else {
// ǪÇÃèÍçágoogleÉJÉåÉìÉ_Å[Ç…ãNDZÇÁÇÍÇÈÇÃÇ≈ìKìñÇ…ê›íË
end = start;
}
console.log("end =" + end);
var dds = div.getElementsByTagName('dd');
console.log(dds[0].innerHTML);
console.log(dds[1].innerHTML);
console.log(dds[2].innerHTML);
console.log(dds[3].getElementsByTagName('a').length);
console.log(dds[4].innerHTML);
des = des + '\n' + "limit:" + dds[1].innerHTML; // íËàı
location = dds[2].getElementsByTagName('span')[0].innerHTML.replace(/[()]/g,"");
des = des + '\n' + "place:" + dds[2].innerHTML.replace(/<\/?span>/g,""); // âÔèÍ
if (dds[3].getElementsByTagName('a').length != 0) {
des = des + '\n' + "url :" + dds[3].getElementsByTagName('a')[0].innerHTML; // URL
}
des = des + '\n' + "admin:" + dds[4].getElementsByTagName('a')[0].innerHTML; // ä«óùé“
}
}
console.log("created info");
// TODO:ä˘ímÇÃñ‚ëËì_mapÇÃÉäÉìÉNÇÕéÊìæÇ≈Ç´ÇÈÇ™
// googleÉJÉåÉìÉ_Å[Ç™à‹ìxåoìxÇ≈ÇÃê›íËÇ…ëŒâûǵǃǢǻǢÇÊǧǻó\ä¥
//var map = document.getElementById("event_map");
//var locationLink = map.getElementsByTagName('a')[0].href;
console.log("map");
title = encodeURIComponent(title);
location = encodeURIComponent(location);
des = encodeURIComponent(des);
console.log(des);
// ÉäÉìÉNÇê∂ê¨
var link = document.createElement('a');
link.innerHTML = "<img src='http://www.google.com/calendar/images/ext/gc_button2.gif' border=0></a>";
link.setAttribute('href',
// 'http://www.google.com/calendar/event?action=TEMPLATE&text=' + title
'https://www.google.com/calendar/hosted/champierre.com/event?action=TEMPLATE&text=' + title
+ "&dates=" + start + "/" + end + ""
+ "&details=" + des + "&location=" + location + "&trp=false&sprop=&sprop=name") ;
title_div.appendChild(link);
})();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment