EESoc's Website
Switch branches/tags
Nothing to show
Latest commit 1748acf Oct 21, 2017 @hsed hsed Autumn 2017 Changes (#44)
* Test travis build command

* Update .travis.yml

* test for phar file for use with travis build

* not working need to upload again later

* Update .travis.yml

* Update

* Update .travis.yml

* Update .travis.yml

* Update database.sample.php

* Update .travis.yml

* Update .travis.yml

* Update phpunit.xml

* Update .travis.yml

* Update .travis.yml

* Update .travis.yml

* Update ExampleTest.php

* Update

* Updated eactivities member list sync

Member list sync feature was broken, this has now been updated to use
the newest API from union. CSV files are no longer in use, instead JSON
strings are returned which are converted into objects/arrays directly.
The sale sync is still broken, it will be fixed in future.

* Some old book sync code

Old book sync command not yet uploaded to github.

* Assorted Changes (CSS + API + Old Stuff)

- Updated few css styles for animation
- Updated homepage slightly
- Updated API calls to beter support eactivities sync
- Updated API call for locker sales (work-in-progress)
- Added unsynced changes from last year
- Added new and older (unsynced) db migrations

* Locker + EActivitiesSync Improvements

- Improved locker auditing, now admins can directly edit status from
- Changed locker product id (this may need more testing)
- Added gross price for products as calc field only (removed from
database earlier)
- Improved error handling in eactivies:sales:sync

* API Webhook + Email Editor Enhancements

- Created new API Webhooks to create events using bots
- Added enhancement to email editor, now content loads on startup
without updating text editor

* Added more API changes and better slack support

* Delete Issue Fixes

Fix deletable issues, made easier to delete events, layout changes in

* Fix for travis build

* Debug => true

* For testing only (editing in future).

* Update

EESoc Website Source Code

Minimum PHP Version Build Status

Imperial College London EESoc's Offical Website Source Code

Major Technologies Used


  1. Rename app/config/database.sample.php to app/config/database.php and make modifications as necessary.
  2. Rename bootstrap/start.sample.php to bootstrap/start.php and replace your-machine-name with the hostname of your local machine is. This can be found by the hostname command.
  3. Install Composer by running curl -sS | php
  4. Run php composer.phar install to download and install dependencies.
  5. Run php artisan migrate to run database migrations (make sure database has already been created).
  6. If you're on PHP 5.4, run php artisan serve to start the built-in web server.
  7. Enjoy!


  • php artisan admin:become <imperial-college-login> - Promotes a user to admin.
  • php artisan eactivities:sales:sync - Sync online sales.
  • php artisan eactivities:sync - Sync membership with EActivities.
  • php artisan eepeople:sync - Sync user info with the departmental directory.
  • php artisan instagram:sync - Syncs Instagram feed.
  • php artisan ldap:sync - Sync user info with LDAP.
  • php artisan locker:remind - Remind users via email to claim their locker.
  • php artisan locker:send_terms - Send locker terms and conditions to all owners.

Writeable folders

Certain folders within the repo must be write-able by the web process in order for the site to operate. They are:

  • /app/storage
  • /public/files
  • /public/assets


Heres the todo for 2017/18, most items may not be completable due to time constraints but should be looked into in future.

  • Use new API from union for sync functions
  • Upgrade laravel at least to level of PHP5.5
  • Upgrade bootstrap to v4
  • Create user/admin dashboard
  • Create minimalist + responsive public pages
  • Re-design website
  • Create custom subscribable lists for categorical newsletters