Feature #16554
Updated by Ward Vandewege over 4 years ago
Add a feature for opt-in survey reminders. Part 1: * Ongoing survey reminders: Participants opt-in to regular email (research specified options: at least, every day, every 2 days, every 7 days) while a survey is designated as “ongoing”. => Participant interface: link to manage frequency of reminder e-mails from the google_survey 'view' page. => Researcher interface: allow them to specify possible reminder frequencies (default to 1/2/7/14/30 days?). Maybe allow them to put custom text in the reminder e-mails. New table: google_survey_reminders (user_id, google_survey_id, frequency) New fields on google_surveys table (reminder_email_subject, reminder_email_text, allowed_reminder_frequency_days) Part 2: In the reminder e-mail: * Option to select: "no symptoms" link with a single click; one use link. * for each link store generation date and when clicked date. Links can only be clicked once. => Participant interface: allow them to download the "bypass csv" (but call it whatever is in the title_for_bypass_field). The CSV will have these fields: timestamp link generated, timestamp link clicked, huid. => Researcher interface: template the links used in the reminder e-mails so that they can write all the text. Create a default template text instead of an empty body. Call the template strings %%BYPASS_URL%% and %%SURVEY_URL%%. New fields on google_surveys table google_surveys_table (bypass_field_title, required when reminder_email_frequency is not empty) New table: google_survey_bypasses google_survey_bypass (user_id, google_survey_id, token, used token_lifetime => duration, timestamp_clicked => default null). The created_at field will have the meaning of token_generation_timestamp). Each new reminder e-mail being sent will generate a new record in this table. The CSV output will only include records with used != null, and for user_id's that are not marked as 'test' users.