From 6b87175e97b691ef1e85a2138d458193df19cd3e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Omar=20Gerardo=20Soto-Fortu=C3=B1o?= Date: Fri, 12 Aug 2022 14:35:57 -0400 Subject: [PATCH] Add mobile_embed to Discussion Edit/Create view flag=none closes VICE-2967 test plan: - Tests pass - Go to /courses/[Course ID]/discussion_topics/[Discussion ID]/edit?embed=true - Shouldn't have the navigation bar and other surrounding things around the Discussion Edit/Create view. - The published/not published thing should appear on top right and adjust accordingly. qa risk: low Change-Id: I02ce835824c4035230946b88598956569c7c1977 Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/298467 Tested-by: Service Cloud Jenkins Reviewed-by: Jason Gillett Product-Review: Jason Gillett QA-Review: Chawn Neal --- app/controllers/discussion_topics_controller.rb | 7 +++++-- app/stylesheets/bundles/discussions_edit.scss | 4 ++++ .../discussion_topic_edit/backbone/views/EditView.coffee | 7 ++++++- ui/features/discussion_topic_edit/jst/EditView.handlebars | 4 ++-- 4 files changed, 17 insertions(+), 5 deletions(-) diff --git a/app/controllers/discussion_topics_controller.rb b/app/controllers/discussion_topics_controller.rb index 2cd37b27ce8..1c128332f11 100644 --- a/app/controllers/discussion_topics_controller.rb +++ b/app/controllers/discussion_topics_controller.rb @@ -662,7 +662,7 @@ class DiscussionTopicsController < ApplicationController set_master_course_js_env_data(@topic, @context) conditional_release_js_env(@topic.assignment) - render :edit + render :edit, layout: params[:embed] == "true" ? "mobile_embed" : true end def show @@ -774,9 +774,12 @@ class DiscussionTopicsController < ApplicationController end end + edit_url = context_url(@topic.context, :edit_context_discussion_topic_url, @topic) + edit_url += "?embed=true" if params[:embed] == "true" + js_env({ course_id: params[:course_id] || @context.course&.id, - EDIT_URL: context_url(@topic.context, :edit_context_discussion_topic_url, @topic), + EDIT_URL: edit_url, PEER_REVIEWS_URL: @topic.assignment ? context_url(@topic.assignment.context, :context_assignment_peer_reviews_url, @topic.assignment.id) : nil, discussion_topic_id: params[:id], manual_mark_as_read: @current_user&.manual_mark_as_read?, diff --git a/app/stylesheets/bundles/discussions_edit.scss b/app/stylesheets/bundles/discussions_edit.scss index 0512d86db3c..015d5fbe8da 100644 --- a/app/stylesheets/bundles/discussions_edit.scss +++ b/app/stylesheets/bundles/discussions_edit.scss @@ -39,3 +39,7 @@ label.short-label { display: inline-block; } + +.full-width { + width: 100%; +} diff --git a/ui/features/discussion_topic_edit/backbone/views/EditView.coffee b/ui/features/discussion_topic_edit/backbone/views/EditView.coffee index a6f9edfab44..f11bdb24ecd 100644 --- a/ui/features/discussion_topic_edit/backbone/views/EditView.coffee +++ b/ui/features/discussion_topic_edit/backbone/views/EditView.coffee @@ -139,7 +139,12 @@ export default class EditView extends ValidatedFormView if returnToHelper.isValid(params['return_to']) params['return_to'] else - @model.get 'html_url' + url = new URL(window.location.href) + searchParams = new URLSearchParams(url.search) + if searchParams.get('embed') == 'true' + (@model.get 'html_url') + "?embed=true" + else + @model.get 'html_url' redirectAfterCancel: -> location = @locationAfterCancel(deparam()) diff --git a/ui/features/discussion_topic_edit/jst/EditView.handlebars b/ui/features/discussion_topic_edit/jst/EditView.handlebars index 9b7f21b4c2b..7d2e824d8d2 100644 --- a/ui/features/discussion_topic_edit/jst/EditView.handlebars +++ b/ui/features/discussion_topic_edit/jst/EditView.handlebars @@ -21,7 +21,7 @@ {{> ui/features/discussion_topic_edit/jst/_publishedButton.handlebars }} {{else}} -
+
{{> ui/features/discussion_topic_edit/jst/_publishedButton.handlebars }}
@@ -378,4 +378,4 @@ {{/if}} - \ No newline at end of file +