@recaptime-dev's working patches + fork for Phorge, a community fork of Phabricator. (Upstream dev and stable branches are at upstream/main and upstream/stable respectively.) hq.recaptime.dev/wiki/Phorge
phorge phabricator
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Allow un-ToS'd users to view other Legalpad documents

Summary:
Fixes T7420. On Phacility, our ToS currently links to some policy documents, but users who haven't signed the ToS can't see them.

I've just created a blanket exemption and documented it; I //think// this is reasonable in all cases.

Test Plan: As an un-ToS'd user, viewed some other documents.

Reviewers: btrahan

Reviewed By: btrahan

Subscribers: epriestley

Maniphest Tasks: T7420

Differential Revision: https://secure.phabricator.com/D11923

+46 -3
+4
src/applications/legalpad/controller/LegalpadDocumentSignController.php
··· 6 6 return true; 7 7 } 8 8 9 + public function shouldAllowLegallyNonCompliantUsers() { 10 + return true; 11 + } 12 + 9 13 public function handleRequest(AphrontRequest $request) { 10 14 $viewer = $request->getUser(); 11 15
+42 -3
src/docs/user/userguide/legalpad.diviner
··· 3 3 4 4 Using Legalpad to track agreements and signatures on legal documents. 5 5 6 - = Overview = 6 + Overview 7 + ======== 7 8 8 9 Legalpad is a simple application for tracking signatures on legal agreements. 9 10 You can add legal documents, users can sign them, and you can keep track of who ··· 19 20 general document signing software. It may be useful to help you do things 20 21 beyond track CLAs, but you should evaluate its capabilities carefully. 21 22 22 - Requiring a CLA 23 + Documents 24 + ========= 25 + 26 + The primary object in legalpad is the //Legalpad Document//, which represents 27 + a written agreement, contract, policy, or other similar document. 28 + 29 + Most fields of a document are relatively straightforward, but some are unique 30 + to the application: 31 + 32 + **Who Should Sign?** This field controls what kind of signatures the document 33 + accepts. You can choose either **Individuals** (users will be prompted to sign 34 + with their name), **Corporations** (users will be prompted to enter information 35 + identifying the corporation they are signing on behalf of) or **No One** (for 36 + policy documents or other documents which do not require a signature). 37 + 38 + **Require Signature** This field allows you to create a document which all of 39 + your users must sign before they can use Phabricator, like a terms of service 40 + document. See "Use Case: Terms of Service" below for details. These documents 41 + must be signable by individuals. 42 + 43 + Use Case: Requiring a CLA 23 44 =============== 24 45 25 46 Open source projects often require contributors to sign a license agreement ··· 47 68 example, require a signature only if the revision is against certain 48 69 repositories). 49 70 50 - Document-Based Policies 71 + Use Case: Terms of Service 72 + ================================= 73 + 74 + If you have a "Terms of Service" document that you'd like users to agree to 75 + before they're allowed to use your install, you can add it to Legalpad and then 76 + check the **Require Signature** box for the document. 77 + 78 + After logging in, users will need to agree to the document before they can 79 + do other things with their account (you'll need to agree to it, too, as soon 80 + as you save your changes, so that will give you a sense of the workflow). 81 + 82 + Note that although users who have not signed all of the required documents can 83 + not use most Phabricator functions, they can browse other Legalpad documents 84 + that they have permission to see. This allows a terms document to be 85 + supplemented with additional policy or guideline documents that users are free 86 + to review before agreeing to the terms. 87 + 88 + 89 + Use Case: Document-Based Policies 51 90 ======================= 52 91 53 92 If you have a document like an NDA, you can write a policy rule which prevents