UFRL
Contents
URLs
- redirect by grouping/name (e.g. http://ufrl.net/edoc/xyz)
- redirect by name without grouping (e.g. http://ufrl.net/abc)
- redirect by user, using website in user table (e.g. http://ufrl.net/brienigma) - paid?
- What about namespace collisions? User creates "abc" URL, then someone signs up to UF with the name "abc"? Which URL gets priority?
- Maybe with a prefix of some kind to resolve namespace conflicts (e.g. http://ufrl.net/~brianenigma, http://ufrl.net/users/brianenigma, http://ufrl.net/u/brianenigma) - something that won't conflict with a name or group+name
- system URLs (create, edit, login, etc.) - probably in a subdirectory for fewer namespace collision issues
Tables
See also: UFRL_Database
- PHPBB Tables:
- users
- user_groups
- groups
-
auth (needed?)
- Our extended tables:
- ufrl_admin_groups: shows which phpbb groups are considered admin and donor
- Our Tables:
- ufrl_urls: map id to URL
- ufrl_url_groups: id to group (edoc, pxc, uf, etc)
- ufrl_short_urls: URL id with text string (optional link to url_group)
- ufrl_sessions: maps cookie to user ID
UI
- the actual redirector
- login screen
- create page
- browse/search page
- admin URLs page
- admin groups page
- admin reporting/logging/abuse? page
- prefs page
- about page
- RSS (global? by grouping?)
PHP Classes
needs more work/thought
- User
- Entirely read-only. No table writes (except for session cookies.)
- Static: Retrieve by name
- Static: Retrieve by name+password
- Static: Retrieve by cookie (also updates last access in session table)
- Fields for name, homepage, isAdmin, isDonor
- Create/add cookie for user
- Clear all cookies for user
- URLs
- Retrieve by (optional) group string and name
- ...
- Maintenance
- Clear all session entries from table with access date older than ___
- ...
- Security
- PHP Safe mode
- PHP Magic quotes
- Scrub html entities from input
- Verify that URLs are actual URLs (not javascript:// or XSS)
- Scrub data to be inserted into database (SQL injection)
- Log bad login attempts (both via user+pass and by cookie)?
- ...