Я новичок в коде скрипта Служб Google и пытаюсь просто добавить определенное пользователем количество часов к текущему времени (например, 12 часов). Затем код вставит время и дату 12 часов в будущее в документ Google.
Я использую ui.prompt, чтобы пользователь ввел желаемое количество часов в будущем. Код, который я имею, не дает мне ошибки, но он добавляет в текущий час какое-то странное количество дней в будущем (не уверен, почему он это делает). Это код, который у меня есть, и в разделе else
я сталкиваюсь с проблемами ...
function UpdateDocument() {
var document = DocumentApp.getActiveDocument();
var date = new Date();
var tomorrow = new Date();
tomorrow.setDate(tomorrow.getDate()+1);
var ui = DocumentApp.getUi();
var regExpUpdateDate = "[A-Z]{3}, [A-Z]{3} [A-Z]{1}, [A-Z]{4}"; // Regular expression to find the correct line for the Next Update
// Ask User if the they want to include the Next Update Line
var response = ui.alert('Would you like to include the Next Update line?' , ui.ButtonSet.YES_NO);
// Process the users response.
if (response == ui.Button.YES) {
var responseNextUpdate = ui.prompt('Enter the number of hours you want until the next update (i.e. 12, 24, etc.)'
+ ' or leave blank if you only want to include the date and omit the time. Note that'
+ ' leaving it blank will default to the day 24 hours from now.'); // Prompts user for number of hours until the next update
if (responseNextUpdate.getResponseText() == '') {
document.replaceText(regExpUpdateDate, Utilities.formatDate(tomorrow, 'America/Denver', 'EEEE, MMMM d, yyyy'));
}
else { // This is the section that I am having issues with...
var userSelectedHours = new Date();
userSelectedHours.setDate(userSelectedHours.getHours() + 2);
document.replaceText(regExpUpdateDate, Utilities.formatDate(userSelectedHours, 'America/Denver', 'h a EEEE, MMMM d, yyyy'));
}
}
}