Skip to main content

Wow, Handshakable Downloads!

You are just one handshake away!
Latest Version
0.2.0
Requires
Joomla 5+, PHP 8.1 or newer
Release date
15 July 2026
Made for
Joomla
License
GPL-2.0-or-later
Price

Require visitors to accept terms and conditions before downloading files in Joomla. Secure server-side validation with multilingual support.

What's new in version 0.2.0

  • Security: Path validation against allowed roots; executable extensions refused
  • New: YOOtheme Pro builder element Wow, Handshakable Downloads with per-file Download items (title, country flag)
  • New: Consent popup with terms and conditions; scope per session or per download
  • New: Server-side enforced downloads: HMAC-signed payloads, short-lived tickets, CSRF and rate limiting
  • New: {yc_handshake} shortcode for articles, modules and content inside other YOOtheme elements
  • New: Optional file size and bundled country flags (flag-icons, MIT)
  • New: Download statistics per file with dashboard tab
  • New: Six languages with per-language terms overrides
Comingsoon

    Description

    Protect your Joomla downloads with Wow, Handshakable Downloads. Require visitors to accept your terms and conditions before accessing files, with secure server-side enforcement instead of simple popups.

    Display download lists or buttons, customize terms per language or per element, and choose whether consent lasts for a session or is required before every download. Easy to use, multilingual and built for YOOtheme Pro.

    Feature request

    What is the next feature for this plugin?

    Submit your idea or vote on existing ones.


      Changelog


      v0.2.2
      Fixed
      • Consent popup title no longer inherits the theme heading colour; on
      v0.2.1
      Added
      • Installer keeps the plugin ordering after plg_system_yootheme so the
      Fixed
      • Plugin and installer script class names now keep the underscores from
      • Request parameters renamed from p/s/t to hp/hs/ht: YOOtheme Pro
      • com_ajax results are now registered through AjaxEvent::addResult()
      v0.2.0
      Added
      • YOOtheme Pro builder element "Wow, Handshakable Downloads" (parent) with
      • Consent popup (terms and conditions) with checkbox gate; consent scope
      • Server-side enforcement: com_ajax endpoint with HMAC-signed payloads,
      • {yc_handshake file="..." title="..." flag="nl" size="yes" mode="each"
      • Optional file size display (localised units) and optional country
      • Download counter per file in #__yc_wow_handshakable_downloads_stats (no
      • Terms texts in six languages (en-GB, nl-NL, de-DE, fr-FR, es-ES,
      • Installer: auto-enable, defensive schema creation, media manager
      Security
      • CSRF token required on all consent/ticket writes (5.1/6.7).
      • Path validation with realpath against allowed roots, blocked
      • Timing-safe HMAC comparisons; tickets expire after 120 seconds.