The Bigfoot administration interface. Demo application using Bigfoot bundles to setup a BackOffice application. Based on symfony2 and symfony/symfony-standard.
Clone this project :
git clone firstname.lastname@example.org:c2is/Bigfoot.git your_project
Install dependencies using composer :
cd your_project curl -sS https://getcomposer.org/installer | php php composer.phar install
If you didn't set it up during the composer install, setup your database through the Symfony standard distribution configuration web interface :
If you're using a database you didn't previously create, Doctrine can do it for you (this is a safe command you can use even if the database already exists) :
Load the schema and the fixtures :
./app/console doctrine:schema:update --force ./app/console doctrine:fixtures:load
Set permissions on cache and logs directories
sudo setfacl -R -m u:www-data:rwx -m u:`whoami`:rwx app/cache/ sudo setfacl -dR -m u:www-data:rwx -m u:`whoami`:rwx app/cache/ sudo setfacl -R -m u:www-data:rwx -m u:`whoami`:rwx app/logs/ sudo setfacl -dR -m u:www-data:rwx -m u:`whoami`:rwx app/logs/
On Macosx rather do this way
sudo chmod -R +a "`whoami` allow delete,write,append,file_inherit,directory_inherit" app/cache/ sudo chmod -R +a "`whoami` allow delete,write,append,file_inherit,directory_inherit" app/logs/ sudo chmod -R +a "_www allow delete,write,append,file_inherit,directory_inherit" app/cache/ sudo chmod -R +a "_www allow delete,write,append,file_inherit,directory_inherit" app/logs/
The Bigfoot administration interface is accessed in its specific environment named admin. It means the entry point is the admin.php file (or admin_dev.php for the debug mode), and the configuration is handled in the _admin suffixed files. The configuration setup looks like :
- common.yml : contains configuration options used by both the front and back offices
- config.yml : contains configuration options for the front office
- config_admin.yml : contains configuration options for the back office
- routing.yml : contains routing configuration for both the front office and back office
- routing_admin.yml : contains routing configuration for the front office
Default configuration only includes the administration interface routes in the admin environment. The administration interface is then available at :
Bigfoot comes with the SEO and User plugins. By default, an authentication is required to access (if you loaded the bundled fixtures, you can use the admin / admin account). Feel free to change the authentication configuration in app/Resources/config/security.yml to fit your needs, though be advised that the BigfootUserBundle features won't be usable if your User class doesn't extend the Bigfoot\Bundle\UserBundle\Model\BigfootUser class.
You should create a new admin user and delete the one loaded with the BigfootUserBundle fixtures if your application is accessible from the outside.
You can comment the content of the app/Resources/config/security.yml file to disable the authentication on the application.
Bigfoot assets are not in the usual public/ directory under Resources/ ; they are not installed properly with an assets:install. To install the administration interface assets, please use :
./app/console bigfoot:theme:install (--symlink)
This command installs bigfoot assets and also executes the usual assets:install command. If executed with the symlink option, assets will be installed via a symbolic link (instead of hard copy), which is recommended during development (no need to assets:install everytime a css / js file is changed).
Bigfoot assets are loaded via Assetic and are gitignored. To have the admin interface display properly in production environment, you first must dump the assets with :
./app/console assetic:dump --env=admin