diff --git a/app/views/admin/emails/index.html.haml b/app/views/admin/emails/index.html.haml index fa1c075a..9ae321eb 100644 --- a/app/views/admin/emails/index.html.haml +++ b/app/views/admin/emails/index.html.haml @@ -3,69 +3,86 @@ = semantic_form_for(@settings, :url => admin_conference_email_path(@conference.short_title, @conference.email_settings),:html => {:multipart => true}) do |f| .row .col-md-12 - = f.input :send_on_registration, label: "Send an email when the user registers for the conference?", :input_html => {"data-name"=>"email_settings_registration_subject", "class"=>"send_on_radio"} - = f.input :registration_subject - = f.input :registration_email_template, :input_html => { :rows => 10, :cols => 20} - %a.btn.btn-link.control_label.load_template{"data-template"=>"Dear {name},\n\nThank you for Registering for the conference {conference}.\nPlease complete your registration by filling out your travel information.\n\nIf you are unable to attend please unregister online:\n{registrationlink}\n\nFeel free to contact us with any questions or concerns.\nWe look forward to see you there.\n\nBest wishes\n\n{conference} Team", - "data-name"=>"email_settings_registration_email_template"} Load Template - %a.btn.btn-link.control_label.template_help_link{"data-name"=>"registration_help"} Show Help - = render partial: 'help', locals: {id: 'registration_help', show_event_variables: false} - = f.input :send_on_accepted, label: "Send an email when the proposal is accepted?", :input_html => {"data-name"=>"email_settings_accepted_subject", "class"=>"send_on_radio"} - = f.input :accepted_subject - = f.input :accepted_email_template, :input_html => { :rows => 10, :cols => 20 } - %a.btn.btn-link.control_label.load_template{"data-template"=>"Dear {name}\n\nWe are very pleased to inform you that your submission {eventtitle} has been accepted for the conference {conference}.\n\nThe public page of your submission can be found at:\n{proposalslink}\nIf you haven´t already registered for {conference}, please do as soon as possible:\n{registrationlink}\n\nFeel free to contact us with any questions or concerns.\n\nWe look forward to seeing you there.\n\nBest wishes\n\n{conference} Team", - "data-name"=>"email_settings_accepted_email_template"} Load Template - %a.btn.btn-link.control_label.template_help_link{"data-name"=>"accepted_help"} Show Help - = render partial: 'help', locals: {id: 'accepted_help', show_event_variables: true} - = f.input :send_on_rejected, label: "Send an email when the proposal is rejected?", :input_html => {"data-name"=>"email_settings_rejected_subject", "class"=>"send_on_radio"} - = f.input :rejected_subject - = f.input :rejected_email_template, :input_html => { :rows => 10, :cols => 20 } - %a.btn.btn-link.control_label.load_template{"data-template"=>"Dear {name},\n\nThank you for your submission {eventtitle} for the conference {conference}.\nAfter careful consideration we are sorry to inform you that your submissionhas been rejected.\n\n\nBest wishes\n\n{conference} Team", - "data-name"=>"email_settings_rejected_email_template"} Load Template - %a.btn.btn-link.control_label.template_help_link{"data-name"=>"rejected_help"} Show Help - = render partial: 'help', locals: {id: 'rejected_help', show_event_variables: true} - = f.input :send_on_confirmed_without_registration, label: "Send an email when a user has a confirmed proposal, but isn't yet registered?", :input_html => {"data-name"=>"email_settings_confirmed_without_registration_subject", "class"=>"send_on_radio"} - = f.input :confirmed_without_registration_subject - = f.input :confirmed_email_template, :input_html => { :rows => 10, :cols => 20 } - %a.btn.btn-link.control_label.load_template{"data-template"=>"Dear {name},\n\nThank you for the confirmation of {eventtitle}. Unfortunately you are not registered for the conference {conference}. Please register as soon as possible:\n{registrationlink}\n\nFeel free to contact us with any questions or concerns.\n\nWe look forward to seeing you there.\n\nBest wishes\n\n{conference} Team", - "data-name"=>"email_settings_confirmed_email_template"} Load Template - %a.btn.btn-link.control_label.template_help_link{"data-name"=>"confirmed_help"} Show Help - = render partial: 'help', locals: {id: 'confirmed_help', show_event_variables: true} - = f.input :send_on_updated_conference_dates, label: "This is to notify all participants that the conference dates has been changed.", :input_html => {"data-name"=>"email_settings_updated_conference_dates_subject", "class"=>"send_on_radio"} - = f.input :updated_conference_dates_subject - = f.input :updated_conference_dates_template, :input_html => { :rows => 10, :cols => 20 } - %a.btn.btn-link.control_label.load_template{"data-template"=>"Dear {name},\n\nThe date of {conference} has changed.\n New Dates : {conference_start_date} - {conference_end_date}.\n\nFeel free to contact us with any questions or concerns.\n\nWe look forward to seeing you there.\n\nBest wishes\n\n{conference} Team", - "data-name"=>"email_settings_updated_conference_dates_template"} Load Template - %a.btn.btn-link.control_label.template_help_link{"data-name"=>"updated_dates_help"} Show Help - = render partial: 'help', locals: {id: 'updated_dates_help', show_event_variables: false} - = f.input :send_on_updated_conference_registration_dates, label: "This is to notify all participants that the conference registration dates has been changed.", :input_html => {"data-name"=>"email_settings_updated_conference_registration_dates_subject", "class"=>"send_on_radio"} - = f.input :updated_conference_registration_dates_subject - = f.input :updated_conference_registration_dates_template, :input_html => { :rows => 10, :cols => 20 } - %a.btn.btn-link.control_label.load_template{"data-template"=>"Dear {name},\n\nThe registration date of {conference} has changed.\n New Dates : {registration_start_date} - {registration_end_date}.\n\nFeel free to contact us with any questions or concerns.\n\nWe look forward to seeing you there.\n\nBest wishes\n\n{conference} Team", - "data-name"=>"email_settings_updated_conference_registration_dates_template"} Load Template - %a.btn.btn-link.control_label.template_help_link{"data-name"=>"updated_registrations_dates_help"} Show Help - = render partial: 'help', locals: {id: 'updated_registrations_dates_help', show_event_variables: false} - = f.input :send_on_venue_update, label: 'Send an email on updating the Venue.', :input_html => {"data-name"=>"email_settings_venue_update_subject", "class"=>"send_on_radio"} - = f.input :venue_update_subject - = f.input :venue_update_template, :input_html => { :rows => 10, :cols => 20 } - %a.btn.btn-link.control_label.load_template{"data-template"=>"Dear {name},\n\nThe Conference venue of {conference} has changed. New location is: {venue}.\n Address: {venue_address}.\n\nFeel free to contact us with any questions or concerns.\n\nWe look forward to seeing you there.\n\nBest wishes\n\n{conference} Team", - "data-name"=>"email_settings_venue_update_template"} Load Template - %a.btn.btn-link.control_label.template_help_link{"data-name"=>"updated_venue_help"} Show Help - = render partial: 'help', locals: {id: 'updated_venue_help', show_event_variables: false} - = f.input :send_on_call_for_papers_schedule_public, hint: "This will notify all participants when the dates are updated or when the schedule is made public" - = f.input :call_for_papers_schedule_public_subject, hint: "This subject will used whenever dates are updated or when the schedule is made public" - = f.input :call_for_papers_schedule_public_template, :input_html => { :rows => 10, :cols => 20 } - %a.btn.btn-link.control_label.load_template{"data-template"=>"Dear {name},\n\nThe Conference Call for Papers Details of {conference} has changed.The schedule is being made public.\n Link to Schedule {schedule_link} \n\nBest wishes\n\n{conference} Team", - "data-name"=>"email_settings_call_for_papers_schedule_public_template"} Load Template - %a.btn.btn-link.control_label.template_help_link{"data-name"=>"updated_cfp_help"} Show Help - = render partial: 'help', locals: {id: 'updated_cfp_help', show_event_variables: false} - = f.input :send_on_call_for_papers_dates_updates, hint: "This will notify all participants when the dates are updated or when the schedule is made public" - = f.input :call_for_papers_dates_updates_subject, hint: "This subject will used whenever dates are updated or when the schedule is made public" - = f.input :call_for_papers_dates_updates_template, :input_html => { :rows => 10, :cols => 20 } - %a.btn.btn-link.control_label.load_template{"data-template"=>"Dear {name},\n\nThe Conference Call for Papers Details of {conference} has changed.\nNew Dates : {cfp_start_date} - {cfp_end_date}.\n Link to Schedule {schedule_link} \n\nBest wishes\n\n{conference} Team", - "data-name"=>"email_settings_call_for_papers_dates_updates_template"} Load Template - %a.btn.btn-link.control_label.template_help_link{"data-name"=>"updated_cfp_help"} Show Help - = render partial: 'help', locals: {id: 'updated_cfp_help', show_event_variables: false} + %div{:role => "tabpanel"} + / Nav tabs + %ul.nav.nav-tabs{:role => "tablist"} + %li.active{:role => "presentation"} + %a{"aria-controls" => "onboarding", "data-toggle" => "tab", :href => "#onboarding", :role => "tab"} Onboarding + %li{:role => "presentation"} + %a{"aria-controls" => "proposal", "data-toggle" => "tab", :href => "#proposal", :role => "tab"} Proposal + %li{:role => "presentation"} + %a{"aria-controls" => "notifications", "data-toggle" => "tab", :href => "#notifications", :role => "tab"} Update Notifications + %li{:role => "presentation"} + %a{"aria-controls" => "cfp", "data-toggle" => "tab", :href => "#cfp", :role => "tab"} Call for Papers + / Tab panes + .tab-content + #onboarding.tab-pane.active{:role => "tabpanel"} + = f.input :send_on_registration, label: "Send an email when the user registers for the conference?", :input_html => {"data-name"=>"email_settings_registration_subject", "class"=>"send_on_radio"} + = f.input :registration_subject + = f.input :registration_email_template, :input_html => { :rows => 10, :cols => 20} + %a.btn.btn-link.control_label.load_template{"data-template"=>"Dear {name},\n\nThank you for Registering for the conference {conference}.\nPlease complete your registration by filling out your travel information.\n\nIf you are unable to attend please unregister online:\n{registrationlink}\n\nFeel free to contact us with any questions or concerns.\nWe look forward to see you there.\n\nBest wishes\n\n{conference} Team", + "data-name"=>"email_settings_registration_email_template"} Load Template + %a.btn.btn-link.control_label.template_help_link{"data-name"=>"registration_help"} Show Help + = render partial: 'help', locals: {id: 'registration_help', show_event_variables: false} + #proposal.tab-pane{:role => "tabpanel"} + = f.input :send_on_accepted, label: "Send an email when the proposal is accepted?", :input_html => {"data-name"=>"email_settings_accepted_subject", "class"=>"send_on_radio"} + = f.input :accepted_subject + = f.input :accepted_email_template, :input_html => { :rows => 10, :cols => 20 } + %a.btn.btn-link.control_label.load_template{"data-template"=>"Dear {name}\n\nWe are very pleased to inform you that your submission {eventtitle} has been accepted for the conference {conference}.\n\nThe public page of your submission can be found at:\n{proposalslink}\nIf you haven´t already registered for {conference}, please do as soon as possible:\n{registrationlink}\n\nFeel free to contact us with any questions or concerns.\n\nWe look forward to seeing you there.\n\nBest wishes\n\n{conference} Team", + "data-name"=>"email_settings_accepted_email_template"} Load Template + %a.btn.btn-link.control_label.template_help_link{"data-name"=>"accepted_help"} Show Help + = render partial: 'help', locals: {id: 'accepted_help', show_event_variables: true} + = f.input :send_on_rejected, label: "Send an email when the proposal is rejected?", :input_html => {"data-name"=>"email_settings_rejected_subject", "class"=>"send_on_radio"} + = f.input :rejected_subject + = f.input :rejected_email_template, :input_html => { :rows => 10, :cols => 20 } + %a.btn.btn-link.control_label.load_template{"data-template"=>"Dear {name},\n\nThank you for your submission {eventtitle} for the conference {conference}.\nAfter careful consideration we are sorry to inform you that your submissionhas been rejected.\n\n\nBest wishes\n\n{conference} Team", + "data-name"=>"email_settings_rejected_email_template"} Load Template + %a.btn.btn-link.control_label.template_help_link{"data-name"=>"rejected_help"} Show Help + = render partial: 'help', locals: {id: 'rejected_help', show_event_variables: true} + = f.input :send_on_confirmed_without_registration, label: "Send an email when a user has a confirmed proposal, but isn't yet registered?", :input_html => {"data-name"=>"email_settings_confirmed_without_registration_subject", "class"=>"send_on_radio"} + = f.input :confirmed_without_registration_subject + = f.input :confirmed_email_template, :input_html => { :rows => 10, :cols => 20 } + %a.btn.btn-link.control_label.load_template{"data-template"=>"Dear {name},\n\nThank you for the confirmation of {eventtitle}. Unfortunately you are not registered for the conference {conference}. Please register as soon as possible:\n{registrationlink}\n\nFeel free to contact us with any questions or concerns.\n\nWe look forward to seeing you there.\n\nBest wishes\n\n{conference} Team", + "data-name"=>"email_settings_confirmed_email_template"} Load Template + %a.btn.btn-link.control_label.template_help_link{"data-name"=>"confirmed_help"} Show Help + = render partial: 'help', locals: {id: 'confirmed_help', show_event_variables: true} + #notifications.tab-pane{:role => "tabpanel"} + = f.input :send_on_updated_conference_dates, label: "This is to notify all participants that the conference dates has been changed.", :input_html => {"data-name"=>"email_settings_updated_conference_dates_subject", "class"=>"send_on_radio"} + = f.input :updated_conference_dates_subject + = f.input :updated_conference_dates_template, :input_html => { :rows => 10, :cols => 20 } + %a.btn.btn-link.control_label.load_template{"data-template"=>"Dear {name},\n\nThe date of {conference} has changed.\n New Dates : {conference_start_date} - {conference_end_date}.\n\nFeel free to contact us with any questions or concerns.\n\nWe look forward to seeing you there.\n\nBest wishes\n\n{conference} Team", + "data-name"=>"email_settings_updated_conference_dates_template"} Load Template + %a.btn.btn-link.control_label.template_help_link{"data-name"=>"updated_dates_help"} Show Help + = render partial: 'help', locals: {id: 'updated_dates_help', show_event_variables: false} + = f.input :send_on_updated_conference_registration_dates, label: "This is to notify all participants that the conference registration dates has been changed.", :input_html => {"data-name"=>"email_settings_updated_conference_registration_dates_subject", "class"=>"send_on_radio"} + = f.input :updated_conference_registration_dates_subject + = f.input :updated_conference_registration_dates_template, :input_html => { :rows => 10, :cols => 20 } + %a.btn.btn-link.control_label.load_template{"data-template"=>"Dear {name},\n\nThe registration date of {conference} has changed.\n New Dates : {registration_start_date} - {registration_end_date}.\n\nFeel free to contact us with any questions or concerns.\n\nWe look forward to seeing you there.\n\nBest wishes\n\n{conference} Team", + "data-name"=>"email_settings_updated_conference_registration_dates_template"} Load Template + %a.btn.btn-link.control_label.template_help_link{"data-name"=>"updated_registrations_dates_help"} Show Help + = render partial: 'help', locals: {id: 'updated_registrations_dates_help', show_event_variables: false} + = f.input :send_on_venue_update, label: 'Send an email on updating the Venue.', :input_html => {"data-name"=>"email_settings_venue_update_subject", "class"=>"send_on_radio"} + = f.input :venue_update_subject + = f.input :venue_update_template, :input_html => { :rows => 10, :cols => 20 } + %a.btn.btn-link.control_label.load_template{"data-template"=>"Dear {name},\n\nThe Conference venue of {conference} has changed. New location is: {venue}.\n Address: {venue_address}.\n\nFeel free to contact us with any questions or concerns.\n\nWe look forward to seeing you there.\n\nBest wishes\n\n{conference} Team", + "data-name"=>"email_settings_venue_update_template"} Load Template + %a.btn.btn-link.control_label.template_help_link{"data-name"=>"updated_venue_help"} Show Help + = render partial: 'help', locals: {id: 'updated_venue_help', show_event_variables: false} + #cfp.tab-pane{:role => "tabpanel"} + = f.input :send_on_call_for_papers_schedule_public, hint: "This will notify all participants when the dates are updated or when the schedule is made public" + = f.input :call_for_papers_schedule_public_subject, hint: "This subject will used whenever dates are updated or when the schedule is made public" + = f.input :call_for_papers_schedule_public_template, :input_html => { :rows => 10, :cols => 20 } + %a.btn.btn-link.control_label.load_template{"data-template"=>"Dear {name},\n\nThe Conference Call for Papers Details of {conference} has changed.The schedule is being made public.\n Link to Schedule {schedule_link} \n\nBest wishes\n\n{conference} Team", + "data-name"=>"email_settings_call_for_papers_schedule_public_template"} Load Template + %a.btn.btn-link.control_label.template_help_link{"data-name"=>"updated_cfp_help"} Show Help + = render partial: 'help', locals: {id: 'updated_cfp_help', show_event_variables: false} + = f.input :send_on_call_for_papers_dates_updates, hint: "This will notify all participants when the dates are updated or when the schedule is made public" + = f.input :call_for_papers_dates_updates_subject, hint: "This subject will used whenever dates are updated or when the schedule is made public" + = f.input :call_for_papers_dates_updates_template, :input_html => { :rows => 10, :cols => 20 } + %a.btn.btn-link.control_label.load_template{"data-template"=>"Dear {name},\n\nThe Conference Call for Papers Details of {conference} has changed.\nNew Dates : {cfp_start_date} - {cfp_end_date}.\n Link to Schedule {schedule_link} \n\nBest wishes\n\n{conference} Team", + "data-name"=>"email_settings_call_for_papers_dates_updates_template"} Load Template + %a.btn.btn-link.control_label.template_help_link{"data-name"=>"updated_cfp_help"} Show Help + = render partial: 'help', locals: {id: 'updated_cfp_help', show_event_variables: false} .row .col-md-12 = f.action :submit, :as => :button, :button_html => {:class => "btn btn-primary"} diff --git a/spec/features/email_spec.rb b/spec/features/email_spec.rb index 7ba66e17..e58b9680 100644 --- a/spec/features/email_spec.rb +++ b/spec/features/email_spec.rb @@ -14,12 +14,12 @@ feature EmailSettings do sign_in organizer visit admin_conference_emails_path(conference.short_title) - + click_link 'Onboarding' fill_in 'email_settings_registration_subject', with: 'Registration subject' fill_in 'email_settings_registration_email_template', with: 'Registration email body' - + click_link 'Proposal' fill_in 'email_settings_accepted_subject', with: 'Accepted subject' fill_in 'email_settings_accepted_email_template', @@ -35,6 +35,7 @@ feature EmailSettings do fill_in 'email_settings_confirmed_email_template', with: 'Confirmed without registration email body' + click_link 'Update Notifications' fill_in 'email_settings_updated_conference_dates_subject', with: 'Updated conference dates subject' fill_in 'email_settings_updated_conference_dates_template', @@ -59,6 +60,7 @@ feature EmailSettings do value).to eq('Registration subject') expect(find('#email_settings_registration_email_template'). value).to eq('Registration email body') + click_link 'Proposal' expect(find('#email_settings_accepted_subject'). value).to eq('Accepted subject') expect(find('#email_settings_accepted_email_template'). @@ -71,6 +73,7 @@ feature EmailSettings do value).to eq('Confirmed without registration subject') expect(find('#email_settings_confirmed_email_template'). value).to eq('Confirmed without registration email body') + click_link 'Update Notifications' expect(find('#email_settings_updated_conference_dates_subject'). value).to eq('Updated conference dates subject') expect(find('#email_settings_updated_conference_dates_template').