diff --git a/index.html b/index.html
index a90c805c..e6f3c9ab 100644
--- a/index.html
+++ b/index.html
@@ -70,20 +70,38 @@
* @param {File} fileData File object to read data from.
* @param {Function} callback Function to call when the request is complete.
*/
- function insertFile(fileData, callback) {
+ function insertFile(title, content, callback) {
if(driveUpload) {
- var request = gapi.client.request({
- 'path' : '/upload/drive/v2/files',
- 'method' : 'POST',
- 'params' : { 'uploadType' : 'media' },
- 'headers' : { 'Content-Type' : 'text/plain' },
- 'body' : fileData });
- if (!callback) {
- callback = function(file) {
- console.log(file)
- };
- }
- request.execute(callback);
+ const
+ boundary = '-------314159265358979323846';
+ const
+ delimiter = "\r\n--" + boundary + "\r\n";
+ const
+ close_delim = "\r\n--" + boundary + "--";
+
+ var contentType = 'text/x-markdown';
+ var metadata = { 'title' : title, 'mimeType' : contentType };
+
+ var base64Data = btoa(content);
+ var multipartRequestBody = delimiter
+ + 'Content-Type: application/json\r\n\r\n'
+ + JSON.stringify(metadata) + delimiter + 'Content-Type: '
+ + contentType + '\r\n'
+ + 'Content-Transfer-Encoding: base64\r\n' + '\r\n' + base64Data
+ + close_delim;
+
+ var request = gapi.client.request({
+ 'path' : '/upload/drive/v2/files',
+ 'method' : 'POST',
+ 'params' : { 'uploadType' : 'multipart' },
+ 'headers' : { 'Content-Type' : 'multipart/mixed; boundary="'
+ + boundary + '"' }, 'body' : multipartRequestBody });
+ if (!callback) {
+ callback = function(file) {
+ console.log(file)
+ };
+ }
+ request.execute(callback);
}
}