├── Screenshot 2020-07-05 at 16.50.54.png ├── appsscript.json ├── README.md ├── Sidebar.css.html ├── Sidebar.js.html ├── Server.gs └── Sidebar.html /Screenshot 2020-07-05 at 16.50.54.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andrewroberts/materializecss-jquery-google-apps-script-sidebar/HEAD/Screenshot 2020-07-05 at 16.50.54.png -------------------------------------------------------------------------------- /appsscript.json: -------------------------------------------------------------------------------- 1 | { 2 | "timeZone": "Europe/London", 3 | "dependencies": { 4 | }, 5 | "exceptionLogging": "STACKDRIVER", 6 | "runtimeVersion": "DEPRECATED_ES5" 7 | } -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # materializecss-jquery-google-apps-script-sidebar 2 | 3 |  4 | 5 | Create a form in the sidebar of a Google Spreadsheet using Materialize CSS, jQuery and Google Apps Script. 6 | -------------------------------------------------------------------------------- /Sidebar.css.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 16 | -------------------------------------------------------------------------------- /Sidebar.js.html: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Server.gs: -------------------------------------------------------------------------------- 1 | function onOpen() { 2 | SpreadsheetApp 3 | .getUi() 4 | .createMenu('Sidebar') 5 | .addItem('Open', 'onOpenSidebar') 6 | .addToUi() 7 | } 8 | 9 | function onOpenSidebar() { 10 | 11 | var ui = HtmlService.createTemplateFromFile('Sidebar') 12 | .evaluate() 13 | .setTitle('Materialize CSS Sidebar Example') 14 | 15 | SpreadsheetApp.getUi().showSidebar(ui) 16 | } 17 | 18 | function onFormSubmit(form) { 19 | 20 | var spreadsheet = SpreadsheetApp.getActive() 21 | var sheet = getSheet(spreadsheet) 22 | var photoUrl = (form.filepath) ? DriveApp.createFile(form.photo).getUrl() : '' 23 | 24 | sheet.appendRow([ 25 | new Date(), 26 | form.first_name, 27 | form.last_name, 28 | form.password, 29 | form.email, 30 | photoUrl 31 | ]) 32 | 33 | // Private Functions 34 | // ----------------- 35 | 36 | function getSheet(spreadsheet) { 37 | 38 | var sheet = spreadsheet.getSheetByName('Results') 39 | 40 | if (sheet === null) { 41 | sheet = spreadsheet.insertSheet().setName('Results') 42 | } 43 | 44 | if (sheet.getRange('A1').getValue() === '') { 45 | 46 | sheet 47 | .getRange('A1:F1') 48 | .setValues([['Timestamp', 'First Name', 'Last Name', 'Password', 'Email', 'Photo']]) 49 | 50 | sheet.setFrozenRows(1) 51 | } 52 | 53 | return sheet 54 | } 55 | } 56 | 57 | function include(filename) { 58 | return HtmlService.createHtmlOutputFromFile(filename).getContent() 59 | } -------------------------------------------------------------------------------- /Sidebar.html: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 |