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

Dojo Course 3 videos in docs (Lombiq Technologies: OCORE-137) #15475

Merged
merged 3 commits into from Mar 18, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
4 changes: 1 addition & 3 deletions src/README.md
Expand Up @@ -72,12 +72,10 @@ Here is a more detailed [roadmap](https://github.com/OrchardCMS/OrchardCore/wiki
## Getting Started

- Clone the repository using the command `git clone https://github.com/OrchardCMS/OrchardCore.git` and checkout the `main` branch for the latest release, or the `dev` branch for the cutting-edge version.

- Watch the ASP.NET Community Standup video where Orchard Core was demonstrated: <https://www.youtube.com/watch?v=HeDjv3blBjQ&t=2246s&list=PL1rZQsJPBU2StolNg0aqvQswETPcYnNKL&index=24>

- Follow the samples on <https://github.com/OrchardCMS/OrchardCore.Samples> that will guide you on how to build **modular** and **multi-tenant** applications

- Follow the tutorial inside the [Training Demo Module](https://github.com/Lombiq/Orchard-Training-Demo-Module) to learn how to develop Orchard Core modules.
- Follow [Dojo Course 3 - the full Orchard Core tutorial](https://orcharddojo.net/orchard-training/dojo-course-3-the-full-orchard-core-tutorial).

### Command line

Expand Down
4 changes: 4 additions & 0 deletions src/docs/reference/core/Modules/README.md
Expand Up @@ -66,3 +66,7 @@ The following configuration values are used by default for module embedded stati
"CacheControl": "public, max-age=2592000, s-maxage=31557600"
}
```

## Video

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/yMzqwvr6Lgo" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
6 changes: 5 additions & 1 deletion src/docs/reference/core/Placement/README.md
Expand Up @@ -369,6 +369,10 @@ Our placement would look like this (note the `_Summary` suffix to ContentPart na

This setup would then show your template (e.g. `GalleryPart.cshtml` or `GalleryPart.Summary.cshtml`) where `DisplayAsync` was called.

## Video
## Videos

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/h0lZMQkUApo" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/YR8QzyAEgo4" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/pGLggL_T9jc" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
6 changes: 6 additions & 0 deletions src/docs/reference/modules/AdminMenu/README.md
Expand Up @@ -211,3 +211,9 @@ jquery.ui.sortable.js 1.10+
Copyright (c) 2010-2016 Manuele J Sarfatti and contributors
Licensed under the MIT License
<http://www.opensource.org/licenses/mit-license.php>

## Videos

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/R_Z6gPoAfHE" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/3w68lDwUzFQ" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
2 changes: 2 additions & 0 deletions src/docs/reference/modules/AuditTrail/README.md
Expand Up @@ -49,6 +49,8 @@ Orchard Core is built to be extended, and the Audit Trail module is no different

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/t28rnjYtlJc" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/uMBN6TVhaMg" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

## CREDITS

### jsdiff
Expand Down
4 changes: 4 additions & 0 deletions src/docs/reference/modules/BackgroundTasks/README.md
@@ -1,3 +1,7 @@
# Background Tasks (`OrchardCore.BackgroundTasks`)

This module provides tools to manage background tasks. This includes an admin UI to show which background tasks are registered with the ability to enable and disable them.

## Video

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/Rx11bdawew0" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
6 changes: 6 additions & 0 deletions src/docs/reference/modules/ContentFields/README.md
Expand Up @@ -368,3 +368,9 @@ and register `MyCustomTextFieldDisplayDriver` to resolve for only the custom edi
When registering a custom display mode or editor driver you must alter the registrations for existing drivers.
You should also take a dependency in your modules `Manifest.cs` on the module that the fields reside in.
This will make your modules `Startup.cs` run later, and allow your registrations to override the original modules.

## Videos

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/NDUjn5_KdEM" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/bayT58i7DVY" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>
4 changes: 4 additions & 0 deletions src/docs/reference/modules/ContentLocalization/README.md
Expand Up @@ -92,3 +92,7 @@ The following configuration is used by default and can be customized:
}
}
```

## Video

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/cwKa1OA48-4" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
8 changes: 8 additions & 0 deletions src/docs/reference/modules/ContentParts/README.md
Expand Up @@ -24,3 +24,11 @@ Orchard Core allows you to add Parts to a content type.
| [`ReCaptcha`](../../modules/ReCaptcha/README.md) | Allows you to add a ReCaptcha. |
| [`SeoMeta`](../../modules/Seo/README.md) | Allows you to configure SEO meta tags. |
| [`AuditTrail`](../../modules/AuditTrail/README.md) | Allows you to add a comment describing the changes of a content item, to be recorded to the Audit Trail. |

## Videos

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/bayT58i7DVY" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/zp1veioH1CQ" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/Wjizx4XU2V4" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>
4 changes: 4 additions & 0 deletions src/docs/reference/modules/ContentPreview/README.md
Expand Up @@ -12,3 +12,7 @@ A `Preview` button is available in the action buttons when you create or edit a

Copyright 2006, 2015 Klaus Hartl & Fagner Brack
Released under the MIT license

## Video

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/NDUjn5_KdEM" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
6 changes: 6 additions & 0 deletions src/docs/reference/modules/ContentTypes/README.md
Expand Up @@ -212,3 +212,9 @@ public class ProductController : Controller
}
}
```

## Videos

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/NDUjn5_KdEM" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/bayT58i7DVY" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>
4 changes: 4 additions & 0 deletions src/docs/reference/modules/Deployment.Remote/README.md
@@ -1,3 +1,7 @@
# Remote Deployment (`OrchardCore.Deployment.Remote`)

Provides the ability to export and import to and from a remote server via [Deployment](../Deployment/README.md). This way, you can move your content and configuration between remote Orchard Core sites.

## Video

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/2c5pbXuJJb0" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
4 changes: 3 additions & 1 deletion src/docs/reference/modules/Deployment/README.md
Expand Up @@ -2,6 +2,8 @@

Provides features to move content and configuration between Orchard Core sites via [Recipes](../Recipes/README.md). Also see [Remote Deployment](../Deployment.Remote/README.md).

## Video
## Videos

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/wBWa28iHWHI" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/2c5pbXuJJb0" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
4 changes: 4 additions & 0 deletions src/docs/reference/modules/DynamicCache/README.md
Expand Up @@ -226,3 +226,7 @@ Each item that is displayed by the query will now add its own cache dependency t

!!! note
This has been renamed from `<cache>` to `<dynamic-cache>` to prevent collisions with the ASP.NET Core cache tag helper.

## Video

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/Fx2e-Sy9FF8" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
4 changes: 4 additions & 0 deletions src/docs/reference/modules/Email/README.md
Expand Up @@ -100,3 +100,7 @@ After configuring a provider, you may test it by visiting `Configuration` → `S
## Events

You can easily monitor various events triggered during the message-sending process by either implementing the `IEmailServiceEvents` or inheriting from `EmailServiceEventsBase` base class, then registering your service.

## Video

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/FmgZHpFHCcg" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
4 changes: 4 additions & 0 deletions src/docs/reference/modules/Flow/BagPart.md
Expand Up @@ -106,3 +106,7 @@ The name of a BagPart is used as the differentiator in `placement.json`
}
]
```

## Video

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/JYES1i6BdWs" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
6 changes: 5 additions & 1 deletion src/docs/reference/modules/Flow/README.md
Expand Up @@ -28,6 +28,10 @@ And if you'd like to use the same template for Flow parts that have items and Fl
]
```

## Video
## Videos

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/ufEhMXYZPy4" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/9gARrrvoAY4" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/JYES1i6BdWs" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
4 changes: 4 additions & 0 deletions src/docs/reference/modules/Forms/README.md
Expand Up @@ -219,3 +219,7 @@ The final workflow should look like this:

Implementing a workflow that handles form submissions is easy, but the workflow becomes big quite quickly as soon as you start adding validation logic to the mix. In the next version of the Forms module, there will be an easier way to validate Form submissions in combination with the Form widget. The Form widget will contain all of the validation settings, and there will be a single workflow activity that validates the submitted values against those settings.
The low-level validation activities will remain part of the toolbox to support workflow validation for forms that are not built with the Form widget, but implemented as raw HTML for example.

## Video

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/Sd-aYy5DblI" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
6 changes: 6 additions & 0 deletions src/docs/reference/modules/Indexing/README.md
Expand Up @@ -6,3 +6,9 @@ be either an `Update` or a `Deletion` task. This list of tasks can also be seen

Other modules can then store their own cursor location for this list, and check for updates and deletions
of content items and do custom operations based on these changes.

## Videos

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/6jJH9ntqi_A" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/IYKEeYxeNck" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
4 changes: 4 additions & 0 deletions src/docs/reference/modules/Layers/README.md
Expand Up @@ -65,3 +65,7 @@ You must have declared the corresponding zones as sections in your theme:
``` html
@await RenderSectionAsync("Header", required: false)
```

## Video

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/NCvytsdED_o" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
4 changes: 4 additions & 0 deletions src/docs/reference/modules/Liquid/README.md
Expand Up @@ -1030,3 +1030,7 @@ Optionally you can pass a class for model binding.
<https://github.com/sebastienros/fluid>
Copyright (c) 2017 Sebastien Ros
MIT License

## Video

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/pi_WiSqp5x4" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
4 changes: 3 additions & 1 deletion src/docs/reference/modules/Lists/README.md
Expand Up @@ -84,10 +84,12 @@ The `list_count` filter counts published content items for a given `ContentItem`

The `list_items` filter loads published content items for a given `ContentItem` object or explicit `ContentItem` id given as a string in a list.

## Video
## Videos

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/a3yyR27vdQQ" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/JYES1i6BdWs" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

## Lucene Indexing

**Breaking Change**: Every content item that is contained in a list has a `ContainedPart` associated with it.
Expand Down
4 changes: 4 additions & 0 deletions src/docs/reference/modules/Localize/README.md
Expand Up @@ -166,3 +166,7 @@ Then, you will be able to run this command to generate the .po files:
``` bash
extractpo <INTPUT_PATH> <OUTPUT_PATH> [-l|--language {"C#"|"VB"}] [-t|--template {"razor"|"liquid"}]
```

## Video

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/cwKa1OA48-4" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
2 changes: 2 additions & 0 deletions src/docs/reference/modules/Lucene/README.md
Expand Up @@ -328,3 +328,5 @@ Starting from OC version 1.5 the Lucene module will automatically map text field
## Video

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/9EgZ_J1npw4" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/6jJH9ntqi_A" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
4 changes: 4 additions & 0 deletions src/docs/reference/modules/Media/README.md
Expand Up @@ -503,6 +503,10 @@ To set up indexing for Media do the following:

## Videos

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/H0jBMH8tj3A" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/monQap7FuiU" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

## Media Indexing

The `Media Indexing` feature extends the media indexing capability to also encompass searching within files with the following extensions `.txt`, `.md`, `.docx`, and `.pptx`.
Expand Down
4 changes: 3 additions & 1 deletion src/docs/reference/modules/Menu/README.md
Expand Up @@ -247,6 +247,8 @@ function activateLinks(options,cb)
<https://github.com/ilikenwf/nestedSortable>
License: MIT

## Video
## Videos

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/mOhbqHKd_CI" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/R_Z6gPoAfHE" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
6 changes: 6 additions & 0 deletions src/docs/reference/modules/Migrations/README.md
Expand Up @@ -92,3 +92,9 @@ Please refer to separate sections for more details on data migrations:

- [Data Migration of Content Types](../ContentTypes/README.md#migrations)
- [Data Migration of Recipes](../Recipes/README.md#recipe-migrations)

## Videos

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/bayT58i7DVY" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/mN4H6hIBzWI" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>
4 changes: 4 additions & 0 deletions src/docs/reference/modules/MiniProfiler/README.md
Expand Up @@ -3,3 +3,7 @@
The module lets you use [Mini Profiler](https://miniprofiler.com/) to troubleshoot performance issues and generally to profile the performance of the application. Just enable the corresponding feature.

By default, the module will display the Mini Profiler performance widget on the frontend only. If you want to enable it for the admin too then use the `AllowMiniProfilerOnAdmin()` extension method to set the `MiniProfilerOptions.EnableOnAdmin` option (see the [documentation on configuration](../../core/Configuration/README.md)).

## Video

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/tFLZ4Ha7PZE" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
4 changes: 4 additions & 0 deletions src/docs/reference/modules/Navigation/README.md
Expand Up @@ -224,3 +224,7 @@ At this time, the Admin Menu is the only navigation with code dynamically adding
return View(viewModel);
}
```

## Video

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/3w68lDwUzFQ" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>