Add waiting room to create programming groups (#1919)

Co-authored-by: Sebastian Serth <Sebastian.Serth@hpi.de>
This commit is contained in:
Kira Grammel
2023-09-21 15:07:10 +02:00
committed by GitHub
parent 1dfc306e76
commit 9f837412c7
15 changed files with 174 additions and 48 deletions

View File

@ -1,8 +1,16 @@
= form_for(@programming_group, url: exercise_programming_groups_path) do |f|
= render('shared/form_errors', object: @programming_group)
.mb-3
= f.label(:programming_partner_ids, class: 'form-label')
= f.text_field(:programming_partner_ids, class: 'form-control', required: true, value: (@programming_group.programming_partner_ids - [current_user.id_with_type]).join(', '))
/.help-block.form-text = t('.hints.programming_partner_ids')
.actions.mb-0
= render('shared/submit_button', f: f, object: @programming_group)
.form-group
.row
.col-md-6
= f.label(:programming_partner_ids, class: 'form-label')
.row
.col-md-6
.input-group.mb-3
= f.text_field(:programming_partner_ids, class: 'form-control', required: true, value: (@programming_group.programming_partner_ids - [current_user.id_with_type]).join(', '))
= render('shared/submit_button', f: f, object: @programming_group)
/.help-block.form-text = t('.hints.programming_partner_ids')
.col-md-6
.join_programming_pair.button.btn.btn-primary.d-none.d-md-block
i.fa-solid.fa-circle-notch.fa-spin.d-none
= t('programming_groups.new.find_programming_partner')

View File

@ -1,30 +1,38 @@
h1 = t('programming_groups.new.create_programming_pair')
#matching.row data-exercise-id=@exercise.id
.col-md-6
p
h1.d-inline-block = t('programming_groups.new.create_programming_pair')
.btn.btn-success.float-end data-bs-toggle= 'modal' data-bs-target= '#modal-info-pair-programming'
i.fa-solid.fa-circle-info
= t('programming_groups.new.pair_programming_info')
#matching data-exercise-id=@exercise.id.to_s
.row
.col-12.mt-2.mb-4
p = t('programming_groups.new.info_work_together', exercise_title: @exercise.title)
.text-body-tertiary == t('exercises.implement.pair_programming_feedback', url: "https://etherpad.xopic.de/p/openHPI_PairProgrammingFeedback?userName=#{CGI.escape(current_user.displayname)}")
.row
.col-md-6
h5 = t('programming_groups.new.work_with_a_friend')
p = t('programming_groups.new.enter_partner_id', exercise_title: @exercise.title)
=> t('programming_groups.new.own_user_id')
b
= current_user.id_with_type
b = current_user.id_with_type
.d-md-none
= render('form')
button.btn.btn-success data-bs-toggle= 'modal' data-bs-target= '#modal-info-pair-programming'
i.fa-solid.fa-circle-info
= t('programming_groups.new.pair_programming_info')
.col-md-6
h5 = t('programming_groups.new.find_partner_title')
p = t('programming_groups.new.find_partner_description')
p.mt-4
= t('programming_groups.new.enter_partner_id', exercise_title: @exercise.title)
= render('form')
div.mt-4
== t('programming_groups.new.work_alone', path: implement_exercise_path(@exercise))
.col-md-6
h5 = t('programming_groups.new.find_partner_title')
p
= t('programming_groups.new.find_partner_description')
- if !browser.safari?
iframe name="embed_readwrite" src="https://etherpad.xopic.de/p/find_programming_group_for_exercise_#{@exercise.id}?userName=#{CGI.escape(current_user.displayname)}&showControls=false&showChat=false&showLineNumbers=true&useMonospaceFont=false" width="100%" height="300" style='border: 1px solid black;'
- else
== t('programming_groups.new.safari_not_supported', url: "https://etherpad.xopic.de/p/find_programming_group_for_exercise_#{@exercise.id}?userName=#{CGI.escape(current_user.displayname)}&showControls=false&showChat=false&showLineNumbers=true&useMonospaceFont=false")
.join_programming_pair.button.btn.btn-primary.d-md-none.mb-3
i.fa-solid.fa-circle-notch.fa-spin.d-none
= t('programming_groups.new.find_programming_partner')
.row
.col-12.d-none.d-md-block
= render('form')
.row
.col-12
h5 = t('programming_groups.new.work_alone')
== t('programming_groups.new.work_alone_description', path: implement_exercise_path(@exercise))
= render('shared/modal', classes: 'modal-lg', id: 'modal-info-pair-programming', template: 'programming_groups/_info_pair_programming', title: t('programming_groups.new.pair_programming_info'))