// Created by Robin Wilson 08-28-2018 var spreadsheetID = "1kLH8MbcOh50OlNIRs6GdEqvsgb3RIZMQda3gOhKprCw"; var worksheetName = "Auto_Checkin"; var spreadsheet = SpreadsheetApp.openById(spreadsheetID); var sheet = spreadsheet.getSheetByName(worksheetName); var data = sheet.getDataRange().getValues(); var col_Usernames = sheet.getRange("Usernames").getColumn(); var col_CheckedIn = sheet.getRange("Checkin").getColumn(); var success = ContentService.createTextOutput("Success"); var failureUsername = ContentService.createTextOutput("Not found username"); var failureError = ContentService.createTextOutput(JSON.stringify({ response: "There was a problem please let Hifi know" })); // onDomainEnter // Calls this method function doGet(e) { Logger.log(JSON.stringify(e)); var username = e.parameter.username, date = e.parameter.date; if (username) { // search for username var usernameRow = getUsernameRow(username); if (usernameRow === -1) { // no username found return false return failureUsername; } else { // username found mark as present and return true markPresent(usernameRow); return success; } } else { return failureError; } } // ------ Helper functions ------ // function markPresent(rowIdx) { var cell = sheet.getRange(rowIdx + 1, col_CheckedIn); // index to column cell.setValue([1]); } // return the row with the found username function getUsernameRow(username) { var searchUsername = username.toString().toLowerCase(); return search(searchUsername, col_Usernames); } // Search for searchTerm inside the searchCol function search(searchTerm, searchCol) { for (var row = 0; row < data.length; row++) { var rowData = data[row]; var cur = rowData[searchCol - 1]; // convert column to index if (cur) cur = cur.toLowerCase(); if (cur === searchTerm) return row; } return -1; }