Lumi/knowledge/plugins/birthday.md
2026-07-17 22:10:00 +02:00

6.0 KiB

id title scope status priority visibility category tags generated editable
plugin.birthday Birthday plugins active 10 user Plugin plugin, birthday true false

Birthday

Birthday profiles, announcements, lookup commands, and optional birthday currency gifts.

Metadata

Plugin ID: birthday Version: 0.1.2 Default state: enabled

Web Routes

  • /plugins/birthday
  • GET /plugins/birthday
  • POST /plugins/birthday/settings
  • POST /plugins/birthday/templates/create
  • POST /plugins/birthday/templates/:id/update
  • POST /plugins/birthday/templates/:id/duplicate
  • POST /plugins/birthday/templates/:id/remove
  • POST /plugins/birthday/profile
  • POST /plugins/birthday/profile/unset
  • GET /plugins/birthday/u/:username

Route Reference

MOUNT /plugins/birthday

  • Purpose: Mounts the plugin router at this base WebUI path.
  • Inputs: No request parameters detected by static analysis.
  • Response format: Plugin router mount point.
  • Access: Access is controlled by the mount options and individual plugin routes.
  • Side effects: No direct route action; child routes handle requests.
  • Limits/notes: Mount metadata is inferred from static source scanning.

GET /plugins/birthday

  • Purpose: Renders or serves the birthday plugin page.
  • Inputs: No request parameters detected by static analysis.
  • Response format: HTML page rendered from an EJS view
  • Access: admin access expected; logged-in session required or used
  • Side effects: Usually read-only.
  • Limits/notes: Generated from static route source analysis; confirm exact behavior in the handler before changing integrations.

POST /plugins/birthday/settings

  • Purpose: Processes the birthday plugin action for settings.
  • Inputs: body: announcement_channel_id, birthday_check_interval_minutes, enabled, gift_amount, gift_mode, leap_day_policy, timezone
  • Response format: HTTP redirect after handling the request
  • Access: admin access expected; logged-in session required or used
  • Side effects: writes or mutates server-side state
  • Limits/notes: Generated from static route source analysis; confirm exact behavior in the handler before changing integrations. Input length or numeric bounds are enforced by helper functions in the handler. Most non-API POST routes are browser form submissions and usually redirect after completion.

POST /plugins/birthday/templates/create

  • Purpose: Processes the birthday plugin action for templates create.
  • Inputs: body: pool, text
  • Response format: HTTP redirect after handling the request
  • Access: logged-in session required or used
  • Side effects: writes or mutates server-side state
  • Limits/notes: Generated from static route source analysis; confirm exact behavior in the handler before changing integrations. Most non-API POST routes are browser form submissions and usually redirect after completion.

POST /plugins/birthday/templates/:id/update

  • Purpose: Processes the birthday plugin action for templates id update.
  • Inputs: path params: id; body: enabled, pool, text
  • Response format: HTTP redirect after handling the request
  • Access: logged-in session required or used
  • Side effects: writes or mutates server-side state
  • Limits/notes: Generated from static route source analysis; confirm exact behavior in the handler before changing integrations. Most non-API POST routes are browser form submissions and usually redirect after completion.

POST /plugins/birthday/templates/:id/duplicate

  • Purpose: Processes the birthday plugin action for templates id duplicate.
  • Inputs: path params: id; body: pool
  • Response format: HTTP redirect after handling the request
  • Access: logged-in session required or used
  • Side effects: writes or mutates server-side state
  • Limits/notes: Generated from static route source analysis; confirm exact behavior in the handler before changing integrations. Most non-API POST routes are browser form submissions and usually redirect after completion.

POST /plugins/birthday/templates/:id/remove

  • Purpose: Processes the birthday plugin action for templates id remove.
  • Inputs: path params: id; body: pool
  • Response format: HTTP redirect after handling the request
  • Access: logged-in session required or used
  • Side effects: writes or mutates server-side state
  • Limits/notes: Generated from static route source analysis; confirm exact behavior in the handler before changing integrations. Most non-API POST routes are browser form submissions and usually redirect after completion.

POST /plugins/birthday/profile

  • Purpose: Processes the birthday plugin action for profile.
  • Inputs: body: birthday, privacy
  • Response format: HTTP redirect after handling the request
  • Access: logged-in session required or used
  • Side effects: Consumes submitted data; state mutation happens in called helpers if present.
  • Limits/notes: Generated from static route source analysis; confirm exact behavior in the handler before changing integrations. Most non-API POST routes are browser form submissions and usually redirect after completion.

POST /plugins/birthday/profile/unset

  • Purpose: Processes the birthday plugin action for profile unset.
  • Inputs: No request parameters detected by static analysis.
  • Response format: HTTP redirect after handling the request
  • Access: logged-in session required or used
  • Side effects: writes or mutates server-side state
  • Limits/notes: Generated from static route source analysis; confirm exact behavior in the handler before changing integrations. Most non-API POST routes are browser form submissions and usually redirect after completion.

GET /plugins/birthday/u/:username

  • Purpose: Renders or serves the birthday plugin page for u username.
  • Inputs: path params: username
  • Response format: HTML page rendered from an EJS view
  • Access: logged-in session required or used
  • Side effects: Usually read-only.
  • Limits/notes: Generated from static route source analysis; confirm exact behavior in the handler before changing integrations.

Commands

  • No plugin command triggers detected.

Source

Plugin folder: plugins/birthday