文件
ParlzPackageManger/web/ppdm/login.php
T
JGZYES 97c262a5b2 feat: rename pmu -> ppdm (ParlzPackageDevManager) + pack/update commands
- src/pmu.c -> src/ppdm.c; web/pmu -> web/ppdm (server default https://pmm.parlz.com/ppdm,
  config ~/.ppdm).
- ppdm commands: register (local arithmetic captcha), login/logout/whoami,
  'ppdm pack <dir> [out]' (build a .pdm via pdm_pack), 'ppdm update' (download latest
  ppdm binary from GitHub release to ~/.ppdm/bin/ppdm), './x.pdm' publish, help.
- links pdm.c (+ the pmm stack) so pack works; release.yml builds 'ppdm' per-platform.
- i18n init so messages resolve.
2026-09-06 11:12:30 +08:00

17 行
537 B
PHP

<?php
/* web/pmu/login.php — verify credentials, issue a session token. */
define('PMM_SITE', 1);
require __DIR__ . '/lib.php';
$d = pmu_read_json();
$email = trim((string)($d['email'] ?? ''));
$pass = (string)($d['password'] ?? '');
$users = pmu_load('users.json');
if (!isset($users[$email]) || !password_verify($pass, $users[$email]['hash'])) pmu_fail('invalid credentials', 401);
$tok = pmu_token();
$s = pmu_load('sessions.json');
$s[$tok] = $email;
pmu_save('sessions.json', $s);
pmu_ok(['token' => $tok, 'email' => $email]);