sensei icon indicating copy to clipboard operation
sensei copied to clipboard

Start a course using the Query Loop block

Open gabrielcaires opened this issue 2 years ago • 4 comments

Goal

The goal of this card is to enable the Course Admin to add a Start this course when using a query loop with the Course Post Type.

Scope

  • Analyze the current Take Course block to identify it is possible to reuse it without breaking any logic on the editor and on component rendering.
  • Editor: Enable to Add a Start this Course button
  • Frontend: Render the Start this Course button.
  • Frontend: Render the Continue button.
  • Frontend: Render the View Results button.
  • Provide the necessary Layout Settings to reproduce the expected layout
  • This component should be available on all post-type pages.

Tech Details

  • Review the current Take Course block (Today it is only working on Course Post Type Pages)
  • Check if is possible to reuse it or is better to create a new one only using the logic.

Out of Scope

  • Paid courses, except if we are confident of reusing the already existing block, please provide visibility about it

Screenshots

buttons

Acceptance Criteria:

Scenario: [Editor] Adding the Button Given I have the Query Loop Block placed on the page When I added the Sensei Start This Course button And I publish my page And I land on the rendered page (user-facing page) Then I should see the button.

Scenario: [Student] Student is not logged in. Given I am a not logged-in student When I land on the page with Query Loop Then I should see the button Start this Course button

Scenario: [Student] Student is logged in but is not enrolled in a course. Given I am a logged-in student And I am enrolled in the course When I land on the page with Query Loop When I click on the Start This Course button Then I should follow the existing enrollment progress.

Scenario: [Student] Student is logged in AND Enrolled in a course. Given I am a logged-in student And I am not enrolled When I land on the page with Query Loop When I click on the Continue button Then I should be redirected to the course page.

Scenario: [Student] Student finished a course Given I am a logged-in student And I am already enrolled in a course When I land on the page with Query Loop AND I click on the View Results button And I should see be redirected to the course results page.

gabrielcaires avatar Aug 01 '22 15:08 gabrielcaires

@donnapep @Imran92 I am assuming that supporting paid courses is a different feature, because we need to plan if/how are going to support it on sensei-pro.

gabrielcaires avatar Aug 02 '22 16:08 gabrielcaires

@donnapep @Imran92 I am assuming that supporting paid courses is a different feature, because we need to plan if/how are going to support it on sensei-pro.

Yeah, do you think we can handle the paid course behavior the same way it's handled in the Take Course button block? If it takes a significant amount of work, we can split it into a different ticket

Imran92 avatar Aug 03 '22 11:08 Imran92

Do you think we can handle the paid course behavior the same way it's handled in the Take Course button block?

My suggestion is to evaluate, it during the card implementation because it depends if we really want to reuse the same block or if is better to create a new one, especially considering that we need to add some new features and we need to ensure retro compatibility.

gabrielcaires avatar Aug 03 '22 12:08 gabrielcaires

Do you think we can handle the paid course behavior the same way it's handled in the Take Course button block?

My suggestion is to evaluate, it during the card implementation because it depends if we really want to reuse the same block or if is better to create a new one, especially considering that we need to add some new features and we need to ensure retro compatibility.

Agreed, creating a new one probably is a cleaner path, but you're right, we can decide that after evaluating. I was just talking about the way take course button works, as it shows different content based on the course being a paid one or free, so it combines a free + pro functionality, I was thinking we can take ideas from how that's handled to implement it in our case. We can make a decision after evaluating as you've said 👍

Imran92 avatar Aug 03 '22 14:08 Imran92

Closing please reopen if still required.

gikaragia avatar Dec 05 '22 10:12 gikaragia