<script lang="ts">
  export let login: string;
  export let owner: string;
  export let repo: string;
  export let perms: number;
  export let everybody: boolean = false;
  export let n: number;
  export let token: string;

  const p = [
    'Read',
    'Create discussion',
    'Edit discussion',
    'Tag discussion',
    'Apply changes',
    'Edit channels',
    'Edit tags',
    'Edit permissions'
  ];
</script>

<form method="POST" action="/api/admin/{owner}/{repo}/permission">
  <input type="hidden" name="token" value={token} />
  <div class="flex flex-col mt-10">
    <div>
      <input
        id="login"
        type="text"
        class="input input-sm"
        name={everybody ? '' : 'login'}
        value={login}
        disabled={everybody || login == owner} />
    </div>
    <div class="flex flex-wrap gap-5 mt-3">
      {#each p as label, k}
        <div>
          <input
            class="checkbox checkbox-sm"
            type="checkbox"
            name="p{k}"
            disabled={login == owner}
            checked={!!(perms & (1 << k))}
            id="{n}-{k}" />
          <label class="label ms-1" for="{n}-{k}"> {label} </label>
        </div>
      {/each}
    </div>
    <div class="mt-5">
      <button class="btn btn-sm btn-secondary" disabled={login == owner}>Ok</button>
    </div>
  </div>
</form>