diff --git a/app/locale/en.coffee b/app/locale/en.coffee index d2c4c9a66..adc6f5843 100644 --- a/app/locale/en.coffee +++ b/app/locale/en.coffee @@ -1145,8 +1145,8 @@ invite_link_p_1: "Give this link to students you would like to have join the course." invite_link_p_2: "Or have us email them directly:" capacity_used: "Course slots used:" - enter_emails: "Enter student emails to invite, one per line" - send_invites: "Send Invites" + enter_emails: "Separate each email address by a line break or commas" # {change} + send_invites: "Invite Students" # {change} creating_class: "Creating class..." purchasing_course: "Purchasing course..." buy_course: "Buy Course" @@ -1264,12 +1264,8 @@ welcome_back: "Hi adventurer, welcome back!" continue_playing: "Continue Playing" more_options: "More options:" - option1_header: "Option 1: Invite students via email" - option1_body: "Students will automatically be sent an invitation to join this class, and will need to create an account with a username and password." - option2_header: "Option 2: Send URL to your students" - option2_body: "Students will be asked to enter an email address, username and password to create an account." - option3_header: "Option 3: Direct students to codecombat.com/courses" - option3_body: "Give students the following passcode to enter along with an email address, username and password when they create an account." + option1_header: "Invite Students by Email" # {change} + option1_body: "Note: If your students do not have email addresses, they can enter your unique Class Code when creating a Student Account to make email addresses optional." # {change} thank_you_pref: "Thank you for your purchase! You can now assign" thank_you_suff: "more students to paid courses." return_to_class: "Return to classroom" @@ -1438,7 +1434,6 @@ earliest_incomplete: "Earliest incomplete level" latest_complete: "Latest completed level" enroll_student: "Enroll student" - adding_students: "Adding students" course_progress: "Course Progress" not_applicable: "N/A" edit: "edit" @@ -1454,10 +1449,10 @@ select_course: "Select course to view" course_overview: "Course Overview" copy_class_code: "Copy Class Code" - class_code_blurb: "New students can enter this class code on their dashboard or visit codecombat.com/courses to join the class." + class_code_blurb: "Students can join your class using this Class Code. No email address is required when creating a Student account with this Class Code." # {change} copy_class_url: "Copy Class URL" - class_join_url_blurb: "New students can visit this URL while logged in to join the class." - add_students_manually: "Add Students Manually" + class_join_url_blurb: "You can also post this unique class URL to a shared webpage." # {change} + add_students_manually: "Invite Students by Email" # {change} bulk_assign: "Bulk-assign" assign_to_selected_students: "Assign to Selected Students" assigned: "Assigned" diff --git a/app/styles/courses/teacher-class-view.sass b/app/styles/courses/teacher-class-view.sass index 375571689..c00336e24 100644 --- a/app/styles/courses/teacher-class-view.sass +++ b/app/styles/courses/teacher-class-view.sass @@ -289,6 +289,9 @@ // Code copying buttons + .class-code-blurb + margin-top: 5px + .copy-button-group input height: 50px diff --git a/app/templates/courses/invite-to-classroom-modal.jade b/app/templates/courses/invite-to-classroom-modal.jade index 7ff924d3d..05a33afbd 100644 --- a/app/templates/courses/invite-to-classroom-modal.jade +++ b/app/templates/courses/invite-to-classroom-modal.jade @@ -1,34 +1,19 @@ extends /templates/core/modal-base-flat block modal-header-content - h2(data-i18n="courses.add_students") - h3= view.classroom.get('name') block modal-body-content h3(data-i18n="courses.option1_header") - p(data-i18n="courses.option1_body") .form .form-group - textarea#invite-emails-textarea.form-control - .help-block(data-i18n="courses.enter_emails") + p.small.help-block(data-i18n="courses.enter_emails") + textarea#invite-emails-textarea.form-control(rows=10) .form-group - button#send-invites-btn.btn.btn-success(data-i18n="courses.send_invites") - #invite-emails-sending-alert.alert.alert-info.hide(data-i18n="common.sending") - #invite-emails-success-alert.alert.alert-success.hide(data-i18n="play_level.done") + .text-center + button#send-invites-btn.btn.btn-lg.btn-primary(data-i18n="courses.send_invites") + #invite-emails-sending-alert.alert.alert-info.hide(data-i18n="common.sending") + #invite-emails-success-alert.alert.alert-success.hide(data-i18n="play_level.done") + br + p.small(data-i18n="courses.option1_body") - h3(data-i18n="courses.option2_header") - p(data-i18n="courses.option2_body") - - .row - .col-sm-9 - input.form-control#join-url-input(value=view.joinURL) - .col-sm-3 - button#copy-url-btn.btn.btn-fixed.btn-default.text-uppercase Copy URL - #copied-alert.alert.alert-info.hide Copied - #copy-failed-alert.alert.alert-danger.hide Error copying - - h3(data-i18n="courses.option3_header") - p(data-i18n="courses.option3_body") - - .text-center - #class-code-well.well= view.classCode +block modal-footer-content diff --git a/app/templates/courses/teacher-class-view.jade b/app/templates/courses/teacher-class-view.jade index 223937695..1e18bc47d 100644 --- a/app/templates/courses/teacher-class-view.jade +++ b/app/templates/courses/teacher-class-view.jade @@ -103,7 +103,7 @@ block content .adding-students.col-md-5 h4.m-b-2 - span(data-i18n='teacher.adding_students') + span(data-i18n='teacher.add_students') span : +copyCodes +addStudentsButton @@ -176,7 +176,7 @@ mixin inlineUserList(users) = student.broadName() mixin addStudentsButton - .add-students.text-center + .add-students a.add-students-btn.btn.btn-lg.btn-primary(data-classroom-id=view.classroom.id) span(data-i18n='teacher.add_students_manually') @@ -369,14 +369,14 @@ mixin copyCodes input.text-h4.semibold#join-code-input(value=state.get('classCode')) button#copy-code-btn.form-control.btn.btn-lg.btn-forest span(data-i18n='teacher.copy_class_code') - div.text-center.small(data-i18n='teacher.class_code_blurb') + div.text-center.small.class-code-blurb(data-i18n='teacher.class_code_blurb') div.copy-button-group.form-inline.m-b-3 .form-group input.form-control.text-h4.semibold#join-url-input(value=state.get('joinURL')) button#copy-url-btn.form-control.btn.btn-lg.btn-forest span(data-i18n='teacher.copy_class_url') - div.text-center.small(data-i18n='teacher.class_join_url_blurb') + div.text-center.small.class-code-blurb(data-i18n='teacher.class_join_url_blurb') mixin bulkAssignControls .bulk-assign-controls.form-inline diff --git a/app/views/play/CampaignView.coffee b/app/views/play/CampaignView.coffee index 4570f4d85..a551e2b22 100644 --- a/app/views/play/CampaignView.coffee +++ b/app/views/play/CampaignView.coffee @@ -176,7 +176,7 @@ module.exports = class CampaignView extends RootView if me.level() < 12 and @terrain is 'dungeon' and not @editorMode reject = if me.getFourthLevelGroup() is 'signs-and-portents' then 'forgetful-gemsmith' else 'signs-and-portents' context.levels = _.reject context.levels, slug: reject - if me.isOnFreeOnlyServer + if me.isOnFreeOnlyServer() context.levels = _.reject context.levels, 'requiresSubscription' @annotateLevel level for level in context.levels count = @countLevels context.levels