Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

NEST-522: Recipe, Readme, tooltips clean-up #6

Merged
merged 11 commits into from
Jan 31, 2024
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,15 @@ namespace Lombiq.Walkthroughs.Tests.UI.Extensions;

public static class UITestContextExtensions
{
public static async Task RunSetupAndTestWalkthroughsBehaviorAsync(this UITestContext context)
{
await context.GoToSetupPageAndSetupOrchardCoreWithWalkthroughsRecipeAsync();
await context.TestWalkthroughsBehaviorAsync();
}

public static Task GoToSetupPageAndSetupOrchardCoreWithWalkthroughsRecipeAsync(this UITestContext context) =>
context.GoToSetupPageAndSetupOrchardCoreAsync("Lombiq.Walkthroughs.Setup");

public static Task EnableWalkthroughsFeatureAsync(this UITestContext context) =>
context.EnableFeatureDirectlyAsync("Lombiq.Walkthroughs");
}
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,9 @@
<Title>Lombiq Walkthroughs for Orchard Core - UI Test Extensions</Title>
<Authors>Lombiq Technologies</Authors>
<Copyright>Copyright © 2023, Lombiq Technologies Ltd.</Copyright>
<Description>Lombiq Walkthroughs for Orchard Core - UI Test Extensions: Extensions to aid in UI testing Lombiq Walkthroughs for Orchard Core.</Description>
<Description>Lombiq Walkthroughs for Orchard Core - UI Test Extensions: Extensions to aid in UI testing Lombiq Walkthroughs for Orchard Core. See the project website for detailed documentation.</Description>
<PackageIcon>NuGetIcon.png</PackageIcon>
<PackageTags>OrchardCore;Lombiq;AspNetCore;Walkthroughs</PackageTags>
<PackageTags>OrchardCore;Lombiq;AspNetCore;Walkthroughs;Tutorial</PackageTags>
<RepositoryUrl>https://github.com/Lombiq/Orchard-Walkthroughs</RepositoryUrl>
<PackageProjectUrl>https://github.com/Lombiq/Orchard-Walkthroughs/tree/dev/Lombiq.Walkthroughs.Tests.UI</PackageProjectUrl>
<PackageLicenseFile>License.md</PackageLicenseFile>
Expand Down
35 changes: 20 additions & 15 deletions Lombiq.Walkthroughs/Assets/Scripts/walkthroughs.js
Original file line number Diff line number Diff line change
Expand Up @@ -155,7 +155,8 @@ jQuery(($) => {
action: function () {
removeShepherdQueryParams();
walkthroughs.orchardCoreAdminWalkthrough.complete();
// The walkthroughSelector is later defined and orchardCoreAdminWalkthrough is only used later.
// The walkthroughSelector is later defined and orchardCoreAdminWalkthrough is only
// used later.
// eslint-disable-next-line no-use-before-define
walkthroughSelector.start();
},
Expand All @@ -168,14 +169,15 @@ jQuery(($) => {
},
{
title: 'Setup recipe',
text: 'The setup recipe in <a href="https://github.com/Lombiq/Orchard-Walkthroughs" target="_blank">Lombiq.Walkthroughs module</a> ' +
'(named Walkthroughs) used the <a href="https://github.com/OrchardCMS/OrchardCore/blob/main/src/OrchardCore.Themes/TheBlogTheme/Recipes/blog.recipe.json" target="_blank">Blog recipe</a> ' +
text: 'The setup recipe in the Walkthroughs module</a> used the ' +
'<a href="https://github.com/OrchardCMS/OrchardCore/blob/main/src/OrchardCore.Themes/TheBlogTheme/Recipes/blog.recipe.json" target="_blank">Blog recipe</a> ' +
'as a base recipe. In Orchard Core, a <a href="https://docs.orchardcore.net/en/main/docs/reference/modules/Recipes/" target="_blank">recipe</a> ' +
'is a JSON file that defines a set of instructions for setting up and configuring an ' +
'Orchard Core application. Recipes can include predefined content types, widgets, menus, content items, and other ' +
'configurations. They are used to streamline the setup of an Orchard Core site, making it easier ' +
'to create consistent site structures and content. Recipes can be executed during the initial ' +
'setup of a site or at any point to apply configurations or import content.',
'Orchard Core application. Recipes can include predefined content types, widgets, menus, ' +
'content items, and other configuration. They are used to streamline the setup of an ' +
'Orchard Core site, making it easier to create consistent site structures and content. ' +
'Setup recipes can be executed during the initial setup of a site, and non-setup recipes ' +
'at any point to apply configuration or import content.',
buttons: [
backButton,
nextButton,
Expand All @@ -184,8 +186,8 @@ jQuery(($) => {
},
{
title: 'Site setup',
text: 'To get to this point (a set up site), first you will need to get through the ' +
'setup screen. Where you can decide which setup recipe you\'d like to use. Currently, ' +
text: 'To get to this point (a set up site), first you will need to get through the setup ' +
'screen. There you can decide which setup recipe you\'d like to use. Currently, ' +
'we are using the Walkthroughs recipe.',
buttons: [
backButton,
Expand Down Expand Up @@ -1698,8 +1700,7 @@ jQuery(($) => {
{
title: 'Flow parts',
text: 'Now click on the <i>"Content Items"</i> button.',
// There is no proper basic JS selector, to select the element, so we need to use a
// function.
// There is no proper basic JS selector, to select the element, so we need to use a function.
savedElement: $('[title="Content Items"]').parent().get(0),
attachTo: {

Expand Down Expand Up @@ -3738,10 +3739,14 @@ jQuery(($) => {
steps: [
{
title: 'Select walkthrough!',
text: 'Welcome! The <a href="https://github.com/Lombiq/Orchard-Walkthroughs" target="_blank">Lombiq.Walkthroughs module</a> ' +
'is active. This module includes various walkthroughs. You can get back here, by ' +
'canceling the current walkthrough and pressing the button on the homepage. Please only use, ' +
'the walkthroughs\' built-in navigations! Please select a walkthrough to start:',
text: '<p>Welcome! The <a href="https://github.com/Lombiq/Orchard-Walkthroughs" target="_blank">' +
'Lombiq.Walkthroughs module</a> is active. This module includes various walkthroughs that ' +
'provide hands-on tutorials guided by interactive tooltips.</p><p>Do you prefer tutorial ' +
'videos or deep-diving into the code instead? Check out ' +
'<a href="https://orcharddojo.net/orchard-training/dojo-course-3-the-full-orchard-core-tutorial" target="_blank">' +
'Dojo Course 3</a>!</p><p>You can get back here by canceling the current walkthrough and ' +
'pressing the below button on the homepage. Please only use the walkthroughs\' built-in ' +
'navigation! Please select a walkthrough to start:</p>',
buttons: [
{
text: 'Orchard Core Admin Walkthrough',
Expand Down
21 changes: 10 additions & 11 deletions Lombiq.Walkthroughs/Lombiq.Walkthroughs.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,16 @@
<PropertyGroup>
<TargetFramework>net6.0</TargetFramework>
<AddRazorSupportForMvc>true</AddRazorSupportForMvc>
<Title>Lombiq Walkthroughs for Orchard Core</Title>
<Description>Orchard Core Walkthroughs module for teaching Orchard Core fundamentals by guiding through the user in step by step guides.</Description>
<PackageTags>Orchard Core, Orchard CMS, walkthroughs</PackageTags>
<DefaultItemExcludes>$(DefaultItemExcludes);.git*;node_modules\**;Tests\**</DefaultItemExcludes>
</PropertyGroup>

<PropertyGroup>
<Title>Lombiq Walkthroughs for Orchard Core</Title>
<Authors>Lombiq Technologies</Authors>
<Copyright>Copyright © 2023, Lombiq Technologies Ltd.</Copyright>
<Description>Orchard Core module to teach you the fundamentals of using the CMS features with step-by-step guides. See the project website for detailed documentation.</Description>
<PackageIcon>NuGetIcon.png</PackageIcon>
<PackageTags>OrchardCore;Lombiq;AspNetCore;Walkthroughs;Tutorial</PackageTags>
<RepositoryUrl>https://github.com/Lombiq/Orchard-Walkthroughs</RepositoryUrl>
<PackageProjectUrl>https://github.com/Lombiq/Orchard-Walkthroughs</PackageProjectUrl>
<PackageLicenseFile>License.md</PackageLicenseFile>
Expand Down Expand Up @@ -39,21 +45,14 @@

<ItemGroup Condition="'$(NuGetBuild)' != 'true'">
<ProjectReference Include="..\..\..\Utilities\Lombiq.NodeJs.Extensions\Lombiq.NodeJs.Extensions\Lombiq.NodeJs.Extensions.csproj" />
</ItemGroup>

<ItemGroup Condition="'$(NuGetBuild)' == 'true'">
<PackageReference Include="Lombiq.NodeJs.Extensions" Version="1.3.2" />
</ItemGroup>

<ItemGroup Condition="'$(NuGetBuild)' != 'true'">
<ProjectReference Include="..\..\..\Libraries\Lombiq.HelpfulLibraries\Lombiq.HelpfulLibraries.OrchardCore\Lombiq.HelpfulLibraries.OrchardCore.csproj" />
</ItemGroup>

<ItemGroup Condition="'$(NuGetBuild)' == 'true'">
<PackageReference Include="Lombiq.NodeJs.Extensions" Version="1.3.2" />
<PackageReference Include="Lombiq.HelpfulLibraries" Version="8.1.0" />
</ItemGroup>

<Import Condition="'$(NuGetBuild)' != 'true'" Project="..\..\..\Utilities\Lombiq.NodeJs.Extensions\Lombiq.NodeJs.Extensions\Lombiq.NodeJs.Extensions.targets" />


</Project>
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "Lombiq.Walkthroughs",
"name": "Lombiq.Walkthroughs.Setup",
"displayName": "Walkthroughs",
"description": "Orchard Core site using the Blog setup recipe, with the Lombiq.Walkthroughs module enabled.",
"description": "Sets up the site using the Blog setup recipe, and then provides you with walkthroughs of Orchard Core features using interactive tooltips.",
"author": "Lombiq",
"website": "https://github.com/Lombiq/Orchard-Walkthroughs",
"version": "1.0.0",
Expand Down
9 changes: 6 additions & 3 deletions Readme.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,16 @@

# Lombiq Walkthroughs for Orchard Core

[![Lombiq.Walkthroughs NuGet](https://img.shields.io/nuget/v/Lombiq.Walkthroughs)](https://www.nuget.org/packages/Lombiq.Walkthroughs/) [![Lombiq.Walkthroughs.Test.UI NuGet](https://img.shields.io/nuget/v/Lombiq.Walkthroughs.Tests.UI)](https://www.nuget.org/packages/Lombiq.Walkthroughs.Tests.UI/)

## About

Orchard Core Walkthroughs module for teaching Orchard Core fundamentals by guiding through the user in step by step guides.
Do you want to learn about the most important [Orchard Core](https://orchardcore.net/) features with a hands-on tutorial that guides you with interactive tooltips, right there in Orchard Core? This module is for you! Check out a demo video of it [here](https://www.youtube.com/watch?v=mWfngBADvX0).
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You were faster than me! Since you've already started to link this, you can add this video to the root readme of OSOCE too. :)

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah, yes, thanks.


The module is also available on all sites of [DotNest, the Orchard Core SaaS](https://dotnest.com/), so you can quickly create a site there and start learning.

Do you prefer tutorial videos or deep-diving into the code instead? Check out [Dojo Course 3](https://orcharddojo.net/orchard-training/dojo-course-3-the-full-orchard-core-tutorial)!

The module uses [shepherd.js](https://shepherdjs.dev/), for the walkthroughs.
The module uses [shepherd.js](https://shepherdjs.dev/) for the walkthroughs.

Do you want to quickly try out this project and see it in action? Check it out in our [Open-Source Orchard Core Extensions](https://github.com/Lombiq/Open-Source-Orchard-Core-Extensions) full Orchard Core solution and also see our other useful Orchard Core-related open-source projects! You can use the setup recipe called _Walkthroughs_ to setup a site using this feature.

Expand Down