splummer / SRA

SRA - Squirrel Registration Authority - A convention registration system primarily aimed at gaming conventions.
6 stars 0 forks source link

SRA - Squirrel Registration Authority

This convention management registration system is born out of the old GAGG registrations system. It adds functionality to create and manage conventions.

Ideally it will be a system provided hosted convention management for many different gaming conventions and events. It also could be extended to offer community features such as comments etc.

Install Steps

Download codeigniter (CodeIgniter_2.1.0 currently) zip, just google it.
Unzip codeigniter somewhere, and steal the contents of the /system/ folder within it. Copy everything in /system/*, and paste those folders into SRA's /system/ folder to form the running core of codeigniter for SRA. (Only the /system/libraries/Zend folder need be retained)

Create Database:

optionally: create a dummy, insecure dev user for non-public development environments so that dummy password can be the one used in applications/config/database.php:
createuser -P -d -a -e dev

Modify configs files:

edit htaccess with your proper root url path
edit database settings in application/database.php to replace them with your own local settings
edit pathing settings in application/config.php to your local path. (pretty much just the base_url variable)

That should be it! Debug any issues you have, but these steps should get you most of the way there!

Features implemented

Scope of the System

This is quick outline of the things I expect the system to be able to do.

Basic Functionality:

Features it would be nice to have in the future

Links for reference

A great series on learning Codeigniter:

Authentication system based on Tank_Auth

I used a version found on github with postgres support, that I further modified the sql for.

A few items I came across that I used while reading about Tank Auth

Loading more logged in variables for all controllers:

How to redirect to the page you were on when logging in:

Possible Nice way of doing view loads (I used this saw it recommended elsewhere too):

I looked at community auth closely too but ultimately i could understand it less and there was a lot more to it I felt I would need to change than with tank_auth.

ACLs use ZendACL (for now)

I am using a hybrid of these three tutorials

Zend ACL intro:

Some tutorials on ACLs in general

I used this site to generate the random hashes I needed:

Bootstrap presentation layer

Page for fancy bootstrap buttons

Mailchimp with codeigniter:

Git branch model I would like to implement:

Touch UI possibility:

For credit card processing I think we should use Stripe:

Random Musings, things to Look into

Fonts/Icons:

Q. Should all times be stored in GMT?

The current ACL system seems extremely inefficient. The entire ACL is generated every time it is checked. We may want to look into storing the ACL somewhere.

Could be useful for redirection to the page someone was one when they login

Link: http://stackoverflow.com/questions/2652930/codeigniter-how-to-redirect-after-login-to-current-controller-php-self-in-regu