This also required a change to flow all .js source files through the TypeScript transpiler and let TypeScript do the concatenation/bundling where applicable. This has the added bonus of catching more errors in plain .js files as the TypeScript compiler applies its structural and semantic understanding of the JavaScript code.
JobsQueue now works in batches to prevent transaction timeouts and the manual job execution feature uses batches as well. This is a fix for the immediate issue, further fixes are needed around the background task infrastructure, see the linked issue.
Fixes#7413
* Taxonomies:
- AdminController: Added Actions to AdminController in order to manage Create/Edit: Only Users with Permission.CreateTaxonomy can Edit/Create a Taxonomy
- Views/Admin/Index.cshtml: Conditional display of ActionLink Create/Edit in Admin/Index.cshtml based on Permission.CreateTaxonomy
- Views/Admin/Index.cshtml: Conditional display of ActionLink Delete in Admin/Index.cshtml based on Permission.ManageTaxonomies
- TaxonomyPartHandler: Adding context.Metadata.EditorRouteValues for Taxonomy
Terms:
- Paring Action/Permission based on existing Permissions
- Views/TermAdmin/Index.cshtml: Conditional display of ActionLink Create/Edit/Move/Delete based on right Permissions
- TermPartHandler: Adding context.Metadata.EditorRouteValues for Taxonomy
AdminMenu:
- The AdminMenu was shown only if a User had ManageTaxonomies Permission; In that way, Roles who have the Create/Edit/Delete Term Permission could not access Index/Edit forms: specializing permissions on Navigation grants access to users belonging to those Roles.
* Removed redundant check over SiteOwner permission
The SummaryAdmin was not using the dedicated permissions.
The default content handler can convert to the owner variation before the blogpost handler.
Fixes#7427
- Defined a new interface IProjectionManagerExtension that inherits from IProjectionManager
- ProjectionManager now implements IProjectionManagerExtension, so we can pass a part to GetCount and GetContentItems
- GetCount and GetContentItems transform the part into a Content token, so you can filter data with informations contained in the Projection itself