I'm using GAS to write data to a spreadsheet and everything works as expected except for the part where it saves the record TWICE each time. I don't think the client or server functions are firing twice so it could something else I missed. Any insight would be much appreciated. Thanks!
The client function:
//save data
function savedata() {
var data = $('#dataSetter');
var startTime = data.find('#startTime').val();
var firstName = data.find('#firstName').val();
var lastName = data.find('#lastName').val();
var phone = data.find('#phone').val();
var email = data.find('#email').val();
var obj = $(this).parent();
var weekDate = getSuffix(obj.attr('id'));
weekDate = weekDate.replace('-', '/');
var year = getSuffix(obj.attr('class'));
var date = weekDate+'/'+year;
google.script.run.withSuccessHandler(dataSaved).setdata(office, firstName, lastName, phone, email, date, startTime);
google.script.run.withFailureHandler(onFailure).setdata(office, firstName, lastName, phone, email, date, startTime);
}
The server function:
//saves data
function setdata(office, firstName, lastName, phone, email, date, startTime) {
var dataSheet = dataBook.getSheets()[0];
var membersSheet = membersBook.getSheets()[0];
var membersLastRow = membersSheet.getLastRow();
var lastmemberID = membersSheet.getRange('A'+membersLastRow).getValue();
var newmemberID = memberID(lastmemberID);
membersSheet.appendRow([newmemberID, lastName, firstName, phone, email]);
}