Skip to content
GitLab
Menu
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
open-source
aoz-003
Commits
a81d9251
Commit
a81d9251
authored
Nov 26, 2018
by
Chrysanthi Lagodimou
Browse files
Merge branch 'BugFix/Warning-for-unsubmitted-feedback' into 'develop'
BugFix/Warning for unsubmitted feedback See merge request
!864
parents
df4493b0
b474a2b9
Pipeline
#31802
passed with stage
in 38 minutes and 39 seconds
Changes
7
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
app/helpers/notification_helper.rb
View file @
a81d9251
module
NotificationHelper
def
notification_
warning_
bubble
(
text
)
tag
.
div
(
class:
'
alert
alert-warning
alert-dismissible
'
,
role:
'alert'
)
do
def
notification_bubble
(
text
,
type
)
tag
.
div
(
class:
"
alert
#{
type
}
alert-dismissible
"
,
role:
'alert'
)
do
concat
notification_close_button
concat
raw
(
text
)
end
...
...
app/views/application/_notification.html.slim
View file @
a81d9251
-
if
alert
.
present?
=
notification_
warning_
bubble
(
alert
)
=
notification_bubble
(
alert
,
'alert-warning'
)
-
elsif
notice
.
present?
-
if
notice
.
is_a?
String
=
notification_
warning_
bubble
(
notice
)
=
notification_bubble
(
notice
,
'alert-warning'
)
-
elsif
notice
.
is_a?
Hash
=
render
'notification_alert_with_action'
,
notice:
notice
-
elsif
@custom_notice
.
present?
...
...
app/views/application/_unsubmitted_semester_feedback_notification.html.slim
View file @
a81d9251
-
if
current_user
.
volunteer?
&&
current_user
.
volunteer
.
unsubmitted_semester_feedbacks?
-
if
!
current_user
.
nil?
&&
current_user
.
volunteer?
&&
current_user
.
volunteer
.
unsubmitted_semester_feedbacks?
-
current_user
.
volunteer
.
unsubmitted_semester_feedbacks
.
each
do
|
spv
|
-
message
=
'Sie haben einen ausstehenden Halbjahres-Rapport für dieses Semester.'
-
message
=
'Sie haben einen ausstehenden Halbjahres-Rapport für dieses Semester.
'
-
message
<<
"<a href='
#{
review_semester_semester_process_volunteer_path
(
spv
)
}
'>Bitte klicken Sie hier um diesen zu bestätigen.</a>"
.
html_safe
=
notification_
warning_
bubble
(
message
)
=
notification_bubble
(
message
,
'alert-danger'
)
app/views/application/home.html.slim
View file @
a81d9251
=
render
'unsubmitted_semester_feedback_notification'
app/views/layouts/application.html.slim
View file @
a81d9251
...
...
@@ -25,6 +25,7 @@ html
=
render
'navigation'
.container-fluid
=
render
'notification'
=
render
'unsubmitted_semester_feedback_notification'
=
yield
=
render
'modal_truncate'
...
...
app/views/volunteers/show.html.slim
View file @
a81d9251
=
render
'unsubmitted_semester_feedback_notification'
h1
.m-b-20
=
@volunteer
.
contact
.
full_name
-
if
@volunteer
.
rejected?
-
if
@volunteer
.
rejection_type
.
present?
...
...
test/system/semester_feedback_test.rb
View file @
a81d9251
...
...
@@ -3,14 +3,11 @@ require 'application_system_test_case'
class
SemesterFeedbackTest
<
ApplicationSystemTestCase
setup
do
@volunteer
=
create
:volunteer_with_user
@assignment
=
create
:assignment
,
volunteer:
@volunteer
@group_assignment
=
create
:group_assignment
,
volunteer:
@volunteer
@subject
=
create
:semester_process
@s
ubject_volunteer
=
create
(
:semester_process_volunteer
,
:with_mission
,
volunteer:
@volunteer
,
@s
pv
=
create
(
:semester_process_volunteer
,
:with_mission
,
volunteer:
@volunteer
,
semester_process:
@subject
)
@mission
=
@subject_volunteer
.
semester_process_volunteer_missions
.
first
.
assignment
login_as
@volunteer
.
user
visit
review_semester_semester_process_volunteer_path
(
@s
ubject_volunteer
)
visit
review_semester_semester_process_volunteer_path
(
@s
pv
)
end
def
submit_feedback
(
semester_process_volunteer
)
...
...
@@ -28,21 +25,16 @@ class SemesterFeedbackTest < ApplicationSystemTestCase
end
test
'volunteer with unsubmitted feedback should see a warning'
do
second_spv
=
create
(
:semester_process_volunteer
,
:with_mission
,
volunteer:
@volunteer
,
semester_process:
@subject
)
visit
volunteer_path
(
@volunteer
)
assert
page
.
has_text?
'Sie haben einen ausstehenden Halbjahres-Rapport für dieses Semester.'
assert
page
.
has_link?
'Bitte klicken Sie hier um diesen zu bestätigen'
,
count:
2
visit
root_path
assert
page
.
has_text?
'Sie haben einen ausstehenden Halbjahres-Rapport für dieses Semester.'
assert
page
.
has_link?
'Bitte klicken Sie hier um diesen zu bestätigen'
,
count:
2
click_link
'Bitte klicken Sie hier um diesen zu bestätigen'
,
match: :first
submit_feedback
(
@subject_volunteer
)
assert
page
.
has_link?
'Bitte klicken Sie hier um diesen zu bestätigen'
visit
root_path
assert
page
.
has_text?
'Sie haben einen ausstehenden Halbjahres-Rapport für dieses Semester.'
assert
page
.
has_link?
'Bitte klicken Sie hier um diesen zu bestätigen'
,
count:
1
assert
page
.
has_link?
'Bitte klicken Sie hier um diesen zu bestätigen'
click_link
'Bitte klicken Sie hier um diesen zu bestätigen'
submit_feedback
(
second_spv
)
submit_feedback
(
@spv
)
visit
volunteer_path
(
@volunteer
)
assert_not
page
.
has_text?
'Sie haben einen ausstehenden Halbjahres-Rapport für dieses Semester.'
visit
root_path
assert_not
page
.
has_text?
'Sie haben einen ausstehenden Halbjahres-Rapport für dieses Semester.'
end
...
...
@@ -52,18 +44,18 @@ class SemesterFeedbackTest < ApplicationSystemTestCase
end
test
'accepting should remove submit button'
do
submit_feedback
(
@s
ubject_volunteer
)
assert_text
"Bestätigt am
#{
I18n
.
l
(
@s
ubject_volunteer
.
commited_at
.
to_date
)
}
durch
#{
(
@s
ubject_volunteer
.
commited_by
.
full_name
)
}
"
submit_feedback
(
@s
pv
)
assert_text
"Bestätigt am
#{
I18n
.
l
(
@s
pv
.
commited_at
.
to_date
)
}
durch
#{
@s
pv
.
commited_by
.
full_name
}
"
end
test
'you should be able to add hours on run'
do
fill_in_required_feedback_fields
assert_equal
@s
ubject_volunteer
.
hours
.
count
,
0
assert_equal
@s
pv
.
hours
.
count
,
0
fill_in
'Stunden'
,
with:
10
check
'Ich verzichte auf die Auszahlung von Spesen.'
click_on
'Bestätigen'
,
match: :first
@s
ubject_volunteer
.
reload
assert_equal
@s
ubject_volunteer
.
hours
.
first
.
hours
,
10
@s
pv
.
reload
assert_equal
@s
pv
.
hours
.
first
.
hours
,
10
within
'.table.table-striped.hours-table'
do
assert_text
"
#{
I18n
.
l
(
Time
.
zone
.
now
.
to_date
)
}
10.0"
end
...
...
@@ -91,12 +83,12 @@ class SemesterFeedbackTest < ApplicationSystemTestCase
fill_in
'IBAN'
,
with:
'CH59 2012 0767 0052 0024 0'
fill_in
'Name der Bank'
,
with:
'Bank'
click_on
'Bestätigen'
@s
ubject_volunteer
.
reload
assert_equal
@s
ubject_volunteer
.
volunteer
.
slice
(
:iban
,
:bank
,
:waive
),
@s
pv
.
reload
assert_equal
@s
pv
.
volunteer
.
slice
(
:iban
,
:bank
,
:waive
),
{
iban:
'CH59 2012 0767 0052 0024 0'
,
bank:
'Bank'
,
waive:
false
}.
stringify_keys
assert_equal
@s
ubject_volunteer
.
semester_feedbacks
.
last
.
slice
(
:goals
,
:achievements
,
:future
,
:comments
,
:conversation
),
assert_equal
@s
pv
.
semester_feedbacks
.
last
.
slice
(
:goals
,
:achievements
,
:future
,
:comments
,
:conversation
),
{
goals:
'being on time'
,
achievements:
'everything'
,
future:
'continue'
,
comments:
'nothing'
,
conversation:
true
}.
stringify_keys
assert_equal
@s
ubject_volunteer
.
hours
.
last
.
hours
,
33
assert_equal
@s
pv
.
hours
.
last
.
hours
,
33
end
test
'truncate_modal_shows_all_text'
do
...
...
@@ -107,7 +99,7 @@ class SemesterFeedbackTest < ApplicationSystemTestCase
@superadmin
=
create
:user
login_as
@superadmin
visit
review_semester_semester_process_volunteer_path
(
@s
ubject_volunteer
)
visit
review_semester_semester_process_volunteer_path
(
@s
pv
)
fill_in
'Was waren die wichtigsten Inhalte (oder Ziele) Ihres Einsatzes in den letzten Monaten?'
,
with:
goals
fill_in
'Was konnte in den letzten Monaten erreicht werden?'
,
with:
achievements
...
...
@@ -117,7 +109,7 @@ class SemesterFeedbackTest < ApplicationSystemTestCase
# submit feedback without revisiting review form
check
'Ich verzichte auf die Auszahlung von Spesen.'
click_on
'Bestätigen'
,
match: :first
@s
ubject_volunteer
.
reload
@s
pv
.
reload
visit
semester_process_volunteers_path
page
.
find
(
'td'
,
text:
goals
.
truncate
(
300
)).
click
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment