-
Notifications
You must be signed in to change notification settings - Fork 0
Home
The two main goals of the current CODE portal project were to provide a landing page for branding CODE and to create an event aggregator for tech events in the Champaign Urbana Community.
- Logo and 'branding' for CODE
- Generic layout for website; Landing Page, Organization Directory, About Page & Generic Content Page
- Slideshow / Banner
- Highlighted content area
- Navigation Bar
- Footer Site-Nav Area
- Stream of recent events/news
- Login
- Login with LinkedIn Account (Any LinkedIn User not just CODE group members)
- Register an Organization
- Organizations appear in the directory after an admin 'publishes' the registration
- Once published events from the organization's feed will populate in the calendar automatically
- Monitor proprietary feeds ( Research Park / EDC )
- Proprietary feed events are unpublished until system admin marks tech events from feed
- Organization feeds are published automatically
- Provide a calendar of aggregated events
- Popup bio for event when clicked on calendar
- Browse to event page from link in Bio
With a generous DCEO grant organized by the SBDC we were able to put together a small team of local freelance developers. The project spent roughly half it's budget on Design & Cutup and the other half on feature implementation.
- Ruby 2.1
- Rails 4.0
- Postgresql
- S3
- Heroku
Create a Heroku app and add the following add-ons: Heroku PostgreSQL and Heroku Scheduler (a cron service). The other add-ons which we're using for the app aren't required. Next, set an authentication token for the cron job with:
heroku config:set --app cucode-prd CRON_TOKEN=`openssl rand -hex 32`
Create the cron job with:
heroku addons:open scheduler # This opens a web page.
# Add a "rake import_events" job.
That's it!
Who can Login? Any LinkedIn User
Assign administrator privileges
heroku run --app cucode-prd rails c
User.find_by_email("[email protected]").add_role("admin")
Static Pages
heroku run --app cucode-prd rails c
Page.create(title: "My New Contact Page", content: "Some <blink>HTML</blink> content", url: "/contact")
# You can put pages at any alpha-numeric slug on the site root.
# For security, the Pages controller scrubs out any other character.
# To add support for dashes, just modify the regex in that controller.
Register Organizations
Events from Global Feeds need to be 'published'. Events from 'published' organizations are automatically published.