/* Copyright (C) 2017-2019 Nathan Nichols This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . */ if(document.location.href.indexOf("docs.google.com") != -1){ console.log("googledocs_main.js"); function parseURL(a){ let url = new URL(a); var result = Object.create(null); for(let i of url.searchParams) { result[i[0]] = i[1]; } return JSON.stringify(result, undefined, 4); } var id; var url; function form_check(){ console.log("boop"); var format = ""; var input = document.getElementsByTagName("input"); if(input[input.length-1].value != "Expected 3 letter file extension"){ format = input[input.length-1].value; } else{ for(var i = 0; i < input.length-1; i++){ if(input[i].value != ""){ format = input[i].value; break; } } if(format == ""){ return 0; } } // Supposed to look like this: // https://docs.google.com/document/export?format=FORMAT&id=ID // Thanks to Alyssa Rosenzweig. var new_url = 'https://docs.google.com/document/export?format='+format+'&id='+id; document.location.assign(new_url); return 0; } var contains_apostrophe = "You don't really want to store your data in a cloudy service do you?"; var opts_form = '
'+ '

Google Drive without non-free Javascript

'+ ' '+contains_apostrophe+'


'+ '
'+ ' Please select the format to download in:

'+ ' Plain text ("txt")
'+ ' ODT ("odt")

'+ ' Or try to get the document in a different format, '+ ' ("png", "avi", "pdf", etc..):

'+ '

'+ '
'+ ''+ ''+ ''; // see if its a document or not. function check_valid(){ id = "no ID found."; var url_arr = document.location.href.split("/"); for(var i = 0; i < url_arr.length-1; i++){ if(url_arr[i] == "d"){ id = url_arr[i+1]; break; } if(url_arr[i].indexOf("id=") != -1){ id = document.location.href.substring(url_arr[i].indexOf("id=")+3,document.location.href.length); break; } } console.log(id); if(id == "no ID found."){ // do nothing because it could be an info page or something console.log("no id found."); return false; } else { return true; } } function main(){ if(check_valid()){ console.log("---------------------------------"+Date.now()+":Detected Google Drive."+"---------------------------------"); window.stop(); document.head.innerHTML = ""; document.body.innerHTML = opts_form; document.body.style.textAlign = "center"; document.getElementById("opts").style.textAlign = "left"; //document.getElementsById("opts").style.float = "left"; document.body.style.marginTop = "2%" document.body.style.marginLeft = "25%" document.body.style.marginRight = "25%" document.getElementById("submit").addEventListener("click",form_check); } return 0; } main(); }