Automatically un-vet members away for more than a year
This commit is contained in:
@@ -124,7 +124,7 @@ let prevAutoscan = '';
|
||||
export function AdminMemberCards(props) {
|
||||
const { token, result, refreshResult } = props;
|
||||
const cards = result.cards;
|
||||
const startDimmed = Boolean((result.member.paused_date || !result.member.is_allowed_entry) && cards.length);
|
||||
const startDimmed = Boolean((result.member.paused_date || !result.member.is_allowed_entry || !result.member.vetted_date) && cards.length);
|
||||
const [dimmed, setDimmed] = useState(startDimmed);
|
||||
const [input, setInput] = useState({ active_status: 'card_active' });
|
||||
const [error, setError] = useState(false);
|
||||
@@ -134,7 +134,7 @@ export function AdminMemberCards(props) {
|
||||
const { id } = useParams();
|
||||
|
||||
useEffect(() => {
|
||||
const startDimmed = Boolean((result.member.paused_date || !result.member.is_allowed_entry) && cards.length);
|
||||
const startDimmed = Boolean((result.member.paused_date || !result.member.is_allowed_entry || !result.member.vetted_date) && cards.length);
|
||||
setDimmed(startDimmed);
|
||||
}, [result.member]);
|
||||
|
||||
@@ -298,7 +298,7 @@ export function AdminMemberCards(props) {
|
||||
|
||||
<Dimmer active={dimmed}>
|
||||
<p>
|
||||
Member paused or not allowed entry, {cards.length} card{cards.length === 1 ? '' : 's'} ignored anyway.
|
||||
Member paused, unvetted or not allowed entry. {cards.length} card{cards.length === 1 ? '' : 's'} ignored anyway.
|
||||
</p>
|
||||
<p>
|
||||
<Button size='tiny' onClick={() => setDimmed(false)}>Close</Button>
|
||||
@@ -363,15 +363,45 @@ export function AdminMemberPause(props) {
|
||||
<div>
|
||||
<Header size='medium'>Pause / Unpause Membership</Header>
|
||||
|
||||
<p>Pause members who are inactive, former, or on vacation.</p>
|
||||
|
||||
<p>
|
||||
{result.member.paused_date ?
|
||||
<Button onClick={handleUnpause} loading={loading}>
|
||||
Unpause
|
||||
</Button>
|
||||
result.member.vetted_date && moment().diff(moment(result.member.paused_date), 'days') > 370 ?
|
||||
<>
|
||||
<p>
|
||||
{result.member.preferred_name} has been away for more than a year and will need to be re-vetted according to our
|
||||
<a href='https://wiki.protospace.ca/Approved_policies/Membership' target='_blank' rel='noopener noreferrer'> policy</a>.
|
||||
</p>
|
||||
<p>
|
||||
<Form.Checkbox
|
||||
name='told_subscriptions'
|
||||
value={told1}
|
||||
label='Told member to get re-vetted'
|
||||
required
|
||||
onChange={(e, v) => setTold1(v.checked)}
|
||||
/>
|
||||
</p>
|
||||
<p>
|
||||
<Form.Checkbox
|
||||
name='told_shelves'
|
||||
value={told2}
|
||||
label='Collected payment for member dues'
|
||||
required
|
||||
onChange={(e, v) => setTold2(v.checked)}
|
||||
/>
|
||||
</p>
|
||||
|
||||
<Button onClick={handleUnpause} loading={loading} disabled={!told1 || !told2}>
|
||||
Unpause
|
||||
</Button>
|
||||
</>
|
||||
:
|
||||
<Button onClick={handleUnpause} loading={loading}>
|
||||
Unpause
|
||||
</Button>
|
||||
:
|
||||
<>
|
||||
<p>Pause members who are inactive, former, or on vacation.</p>
|
||||
|
||||
<p>
|
||||
<Form.Checkbox
|
||||
name='told_subscriptions'
|
||||
|
Reference in New Issue
Block a user