WP Manifestindependent plugin directory
manifest / security / camesm-2026-secure-voting-wp-plugin

CAMeSM Secure Voting

Custom WordPress plugin for CAMeSM enabling secure, schedule-based voting with ID authentication, audit logging, and full admin control.

★ 0stars

Install

Download source zip No release zip yet

This is the repository archive. It installs, but the folder name will carry the branch suffix and updates will not flow.

Install straight from GitHub with WP-CLI:

wp plugin install https://github.com/alexandros-kordatzakis/camesm-2026-secure-voting-wp-plugin/archive/refs/heads/main.zip
No built-in updater. New versions won't appear under Dashboard → Updates. Install new releases yourself, or let Git Updater track the repository.

CAMeSM Secure Voting (WordPress Plugin)

Custom-built WordPress plugin used for managing live voting during CAMeSM 2026 (Cyprus Annual Medical Students Meeting).

Designed for controlled, time-restricted voting across roundtables and free-paper sessions, with a focus on integrity, auditability, and ease of use during a live event.


Overview

This plugin replaces generic voting tools with a system tailored to how CAMeSM operates:

  • ID-based voter authentication (no accounts required)
  • Voting only allowed during scheduled session windows
  • Strict vote limits per event and globally (for roundtables)
  • Full audit trail for every action

It is built to handle real-world constraints of a live conference environment.


Core Features

Authentication

  • Login using registration ID only
  • Session-based access with token validation
  • Login/logout and failure tracking (auth logs)

Voting System

  • Supports:
    • free_paper sessions
    • roundtable sessions
  • Voting is:
    • Time-gated (based on event schedule)
    • Limit-controlled (per event + global caps)
  • Duplicate voting for the same candidate is blocked

Event & Candidate Management

  • Create events with:
    • Start/end times
    • Vote limits
    • Event type
  • Assign candidates per event
  • Manual override:
    • Force live
    • Force closed

Admin Panel

  • Dedicated WordPress admin interface
  • Manage:
    • Voters
    • Events
    • Candidates
  • Bulk voter import via CSV
  • Full control over active/inactive states

Audit & Security

  • Every vote records:
    • Voter ID
    • IP address
    • User agent
    • Timestamp
  • Auth logs include:
    • Login attempts
    • Failures
    • Logout events
  • Tools to:
    • Delete votes (by event, voter, candidate, or individually)
    • Reset test data

Data Export

  • CSV export for:
    • Votes
    • Audit logs
  • Suitable for post-event validation and reporting

Frontend Integration

  • Shortcode-based rendering:
  • Clean UI styled via custom CSS

Architecture

  • Plugin bootstrap: :contentReference[oaicite:0]{index=0}
  • Database layer: :contentReference[oaicite:1]{index=1}
  • Frontend logic: :contentReference[oaicite:2]{index=2}

The system is split into:

  • Database management (custom tables for voters, sessions, votes, etc.)
  • Admin interface (WordPress dashboard)
  • Frontend voting portal (shortcode-rendered)

Database Design

Custom tables include:

  • voters – imported participants
  • sessions – login sessions with token hashing
  • events – voting sessions (roundtables / free papers)
  • candidates – nominees per event
  • votes – all submitted votes
  • auth_logs – login and authentication activity

Installation

  1. Upload the plugin folder or ZIP to WordPress
  2. Activate CAMeSM Secure Voting
  3. Navigate to the admin panel:
  • Events
  • Voters
  • Import
  1. Import your registration CSV
  2. Create events and assign candidates
  3. Add the shortcode to a page:

CSV Import

The importer attempts to map common fields automatically, including:

  • Unique ID
  • Name (First / Last)
  • Email
  • Institution
  • Payment status
  • IP / entry data

Usage Notes

  • Voting is only available while a session is live
  • Roundtables enforce:
  • Per-event limits
  • Global vote cap
  • Free-paper sessions enforce:
  • Per-block limits only

Limitations

  • Built specifically for CAMeSM workflows
  • Not intended as a general-purpose voting plugin
  • Assumes controlled environment (event-based deployment)

Author

Alexandros Kordatzakis
CAMeSM 2026 Workshops Coordinator / I.T. Specialist / Full-Stack Website Developer