Federated forge server

[[ 🗃 ^rjQ3E vervis ]] :: [📥 Inbox] [📤 Outbox] [🐤 Followers] [🤝 Collaborators] [🛠 Commits]

Clone

HTTPS: git clone https://vervis.peers.community/repos/rjQ3E

SSH: git clone USERNAME@vervis.peers.community:rjQ3E

Branches

Tags

main :: templates / widget /

collabs.hamlet

$# This file is part of Vervis.
$#
$# Written in 2016, 2019, 2022, 2023, 2024
$# by fr33domlover <fr33domlover@riseup.net>.
$#
$# ♡ Copying is an act of love. Please copy, reuse and share.
$#
$# The author(s) have dedicated all copyright and related and neighboring
$# rights to this software to the public domain worldwide. This software is
$# distributed without any warranty.
$#
$# You should have received a copy of the CC0 Public Domain Dedication along
$# with this software. If not, see
$# <http://creativecommons.org/publicdomain/zero/1.0/>.

$maybe ((removeTeamR, addTeamR, _approveTeamR), teams, _drafts) <- teamsAndDrafts
  <h2>Teams

  <table>
    <tr>
      <th>Role
      <th>Since
      <th>Team
      $if haveAdmin
        <th>Remove
    $forall (role, since, team, squadID) <- teams
      <tr>
        <td>#{show role}
        <td>#{showDate since}
        <td>^{groupLinkFedW team}
        $if haveAdmin
          <td>^{buttonW POST "Remove" (removeTeamR squadID)}

  $if haveAdmin
    <p>Add a team:
    <form method=POST action=@{addTeamR} enctype=#{enctypeAT}>
      ^{widgetAT}
      <input type=submit>

<h2>Collaborators

<table>
  <tr>
    <th>Role
    <th>Since
    <th>Collaborator
    $if haveAdmin
      <th>Remove
  $forall (role, since, person, collabID) <- collabs
    <tr>
      <td>#{show role}
      <td>#{showDate since}
      <td>^{personLinkFedW person}
      $if haveAdmin
        <td>^{buttonW POST "Remove" (removeR collabID)}

$if haveAdmin
  <p>Invite a collaborator:
  <form method=POST action=@{inviteR} enctype=#{enctypeIC}>
    ^{widgetIC}
    <input type=submit>

$maybe ((_removeTeamR, _addTeamR, approveTeamR), _teams, drafts) <- teamsAndDrafts
  <h2>Team Invites

  <table>
    <tr>
      <th>Inviter
      <th>Via
      <th>Invited team
      <th>I accepted?
      <th>Role
      <th>Time
      $if haveAdmin
        <th>Approve
    $forall (inviter, us, team, accept, time, role, squadID) <- drafts
      <tr>
        <td>^{actorLinkFedW inviter}
        <td>
          $if us
            Us
          $else
            Them
        <td>^{groupLinkFedW team}
        <td>
          $if accept
            [x]
          $else
            [_]
        <td>#{show role}
        <td>#{showDate time}
        $if haveAdmin && (not accept && not us)
          <td>^{buttonW POST "Approve" (approveTeamR squadID)}

<h2>Invites

<table>
  <tr>
    <th>Inviter
    <th>Role
    <th>Time
    <th>Collaborator
  $forall (role, time, inviter, invitee, _collabID) <- invites
    <tr>
      <td>^{personLinkFedW inviter}
      <td>#{show role}
      <td>#{showDate time}
      <td>^{personLinkFedW invitee}

<h2>Joins

<table>
  <tr>
    <th>Role
    <th>Time
    <th>Collaborator
  $forall (role, time, person, _collabID) <- joins
    <tr>
      <td>#{show role}
      <td>#{showDate time}
      <td>^{personLinkFedW person}

[See repo JSON]