Civi 4.6.4 / Drupal 7.38

Goal: Require users to input an access code in order to register for an event.

Use Case: Athletes are encouraged to sign up for events before the registration end date, however, there are often exceptions. We currently use access codes to allow for those exceptions. The athlete must contact the coach, who can then provide the code so the athlete can register. Similar to the approval process within Civi, however less of a burden on the coach (he can manage simply via email) and also easier on athlete as they do not have to request, wait, then register and pay.

Our current solution (outside of civi) implements these codes at the equivalent of a civi price set. This seems a logical place, as it can work cohesively with start/end dates (ie. The code is required and shows up only after a "standard" price set expires.

Before I build, has anybody solved (either in a price-set or in another way within Civi?)



1 Answer 1


This is an interesting use case! I can see the advantages over the approval workflow.

If I were asked to do this, I'd probably:

  • Create a custom field "approval code" on the event;
  • Use hook_civicrm_buildForm and jQuery to hide the page except for an approval code submission field;
  • When the entered code matches the stored value, show the page.

This isn't completely foolproof if you rely too much on client-side jQuery though.

If you decide to go the price-set route, you might want to use CiviDiscount instead. The "discount" code can be the approval code.

  • I would have probably gone down the CiviDiscount route for this too.
    – petednz - fuzion
    Commented Jul 9, 2015 at 2:23

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.