The tutorial on hosting websites with Google Drive makes use of the HTMLService of Google Apps Script. The user uploads a zip file, the file is extracted using the Utilities.unzip method (make the sure the MIME type is set to application/zip) and saved in a folder.
The setSharing method is then used for making the Google Drive folder public and the ID of the folder is passed to the user. Here’s the full code:
/* Written by Amit Agarwal on August 9, 2013 */ function doGet() { var output = HtmlService.createHtmlOutputFromFile('labnol'); output.setTitle('Publish Website on Google Drive'); return output; } function uploadWebsite(form) { try { var zip, files, name, folder, file, host, found=false; zip = form.zipFile.setContentType("application/zip"); files = Utilities.unzip(zip); // Unique folder name based on the current date and time name = Utilities.formatDate(new Date(), "GMT", "ddMMyyyyHHmmss"); folder = DriveApp.createFolder("Website #" + name); for (var i=0; iwebsite is now live on Google Drive. The URL is: ' + site; } else { // if the index.html file is not available, don't publish the website DriveApp.removeFolder(folder); } return "Sorry, we couldn't find an index.html in your zip file. Please try again."; } catch (e) { return e.toString(); } }