wintercms / wintercms/wn-docs-plugin

Support permissions for guides / manuals & Table of Contents

Open
#12 1 comment 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Priority: Medium Status: Accepted Type: Conceptual Enhancement
Dominant language
PHP
Stars
6
Forks
8
PR merge metrics
No merged PRs in 30d

Description

We should support documentation to be locked behind permissions, both on the overall guides / manuals as well as on the individual permissions.

This will make it a lot easier for developers to automatically scope the content that is presented to the end user because they can reuse the same permissions that any given functionality is locked behind in order to block access to the documentation for that functionality; thus ensuring that users without access to do a given action won't have to see the documentation for something they cannot themselves do. We can also make this system optional by way of a winter.docs.view_all permission that can bypass any permissions set on the documentation content if desired.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The issue does not name files or tests. Start by mapping the plugin entry points for guides, manuals, and the Table of Contents, then determine where documentation permissions and the optional winter.docs.view_all bypass should be defined. Done means access is restricted at both levels and the bypass behavior is covered.

Written by the indexing model from the issue text.

Assessment

Tech stack
php
Domain
authorization, documentation
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.