Skip to content
This repository has been archived by the owner on Sep 16, 2021. It is now read-only.

Commit

Permalink
Merge pull request #1 from symfony-cmf/start_se
Browse files Browse the repository at this point in the history
[WIP] Start new SE
  • Loading branch information
lsmith77 committed Apr 4, 2014
2 parents 1d2e912 + 4106dab commit e5677bd
Show file tree
Hide file tree
Showing 48 changed files with 4,157 additions and 920 deletions.
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -8,4 +8,5 @@
/build/
/vendor/
/bin/
/composer.phar
composer.phar
*.sqlite
14 changes: 12 additions & 2 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,10 +1,20 @@
language: php

php:
- 5.3.3
- 5.3
- 5.4
- 5.5

before_script: composer install -n
before_script:
- composer self-update
- composer install --prefer-source
- php app/console doctrine:database:create -e=test
- php app/console doctrine:phpcr:init:dbal -e=test
- php app/console doctrine:phpcr:workspace:create standard_test -e=test
- php app/console doctrine:phpcr:repository:init -e=test

script: phpunit -c app

notifications:
irc: "irc.freenode.org#symfony-cmf"
email: "[email protected]"
179 changes: 25 additions & 154 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,171 +1,42 @@
Symfony Standard Edition
========================
# Symfony CMF Standard Edition

Welcome to the Symfony Standard Edition - a fully-functional Symfony2
application that you can use as the skeleton for your new applications.
[![Build Status](https://secure.travis-ci.org/symfony-cmf/symfony-standard.png)](http://travis-ci.org/symfony-cmf/symfony-standard)
[![Latest Stable Version](https://poser.pugx.org/symfony-cmf/standard-edition/version.png)](https://packagist.org/packages/symfony-cmf/standard-edition)
[![Total Downloads](https://poser.pugx.org/symfony-cmf/standard-edition/d/total.png)](https://packagist.org/packages/symfony-cmf/standard-edition)

This document contains information on how to download, install, and start
using Symfony. For a more detailed explanation, see the [Installation][1]
chapter of the Symfony Documentation.
The Symfony CMF Standard Edition (SE) is a distribution of the
[Symfony Content Management Framework (CMF)](http://cmf.symfony.com/)
and licensed under the [MIT License](LICENSE).

1) Installing the Standard Edition
----------------------------------
This distribution is based on all the main CMF components needed for most common
use cases, and can be used to create a new Symfony/CMF project from scratch.

When it comes to installing the Symfony Standard Edition, you have the
following options.

### Use Composer (*recommended*)
## Requirements

As Symfony uses [Composer][2] to manage its dependencies, the recommended way
to create a new project is to use it.
* Symfony 2.3.x
* See also the `require` section of [composer.json](composer.json)

If you don't have Composer yet, download it following the instructions on
http://getcomposer.org/ or just run the following command:

curl -s http://getcomposer.org/installer | php
## Documentation

Then, use the `create-project` command to generate a new Symfony application:
For the install guide and reference, see:

php composer.phar create-project symfony/framework-standard-edition path/to/install
* [symfony-standard documentation](http://symfony.com/doc/master/cmf/book/installation.html)

Composer will install Symfony and all its dependencies under the
`path/to/install` directory.
See also:

### Download an Archive File
* [All Symfony CMF documentation](http://symfony.com/doc/master/cmf/index.html) - complete Symfony CMF reference
* [Symfony CMF Website](http://cmf.symfony.com/) - introduction, live demo, support and community links

To quickly test Symfony, you can also download an [archive][3] of the Standard
Edition and unpack it somewhere under your web server root directory.

If you downloaded an archive "without vendors", you also need to install all
the necessary dependencies. Download composer (see above) and run the
following command:
## Contributing

php composer.phar install
Pull requests are welcome. Please see our [CONTRIBUTING](CONTRIBUTING.md) guide.

2) Checking your System Configuration
-------------------------------------
Unit and/or functional tests exist for this bundle. See the
[Testing documentation](http://symfony.com/doc/master/cmf/components/testing.html)
for a guide to running the tests.

Before starting coding, make sure that your local system is properly
configured for Symfony.

Execute the `check.php` script from the command line:

php app/check.php

The script returns a status code of `0` if all mandatory requirements are met,
`1` otherwise.

Access the `config.php` script from a browser:

http://localhost/path/to/symfony/app/web/config.php

If you get any warnings or recommendations, fix them before moving on.

3) Browsing the Demo Application
--------------------------------

Congratulations! You're now ready to use Symfony.

From the `config.php` page, click the "Bypass configuration and go to the
Welcome page" link to load up your first Symfony page.

You can also use a web-based configurator by clicking on the "Configure your
Symfony Application online" link of the `config.php` page.

To see a real-live Symfony page in action, access the following page:

web/app_dev.php/demo/hello/Fabien

4) Getting started with Symfony
-------------------------------

This distribution is meant to be the starting point for your Symfony
applications, but it also contains some sample code that you can learn from
and play with.

A great way to start learning Symfony is via the [Quick Tour][4], which will
take you through all the basic features of Symfony2.

Once you're feeling good, you can move onto reading the official
[Symfony2 book][5].

A default bundle, `AcmeDemoBundle`, shows you Symfony2 in action. After
playing with it, you can remove it by following these steps:

* delete the `src/Acme` directory;

* remove the routing entry referencing AcmeDemoBundle in `app/config/routing_dev.yml`;

* remove the AcmeDemoBundle from the registered bundles in `app/AppKernel.php`;

* remove the `web/bundles/acmedemo` directory;

* remove the `security.providers`, `security.firewalls.login` and
`security.firewalls.secured_area` entries in the `security.yml` file or
tweak the security configuration to fit your needs.

What's inside?
---------------

The Symfony Standard Edition is configured with the following defaults:

* Twig is the only configured template engine;

* Doctrine ORM/DBAL is configured;

* Swiftmailer is configured;

* Annotations for everything are enabled.

It comes pre-configured with the following bundles:

* **FrameworkBundle** - The core Symfony framework bundle

* [**SensioFrameworkExtraBundle**][6] - Adds several enhancements, including
template and routing annotation capability

* [**DoctrineBundle**][7] - Adds support for the Doctrine ORM

* [**TwigBundle**][8] - Adds support for the Twig templating engine

* [**SecurityBundle**][9] - Adds security by integrating Symfony's security
component

* [**SwiftmailerBundle**][10] - Adds support for Swiftmailer, a library for
sending emails

* [**MonologBundle**][11] - Adds support for Monolog, a logging library

* [**AsseticBundle**][12] - Adds support for Assetic, an asset processing
library

* **WebProfilerBundle** (in dev/test env) - Adds profiling functionality and
the web debug toolbar

* **SensioDistributionBundle** (in dev/test env) - Adds functionality for
configuring and working with Symfony distributions

* [**SensioGeneratorBundle**][13] (in dev/test env) - Adds code generation
capabilities

* **AcmeDemoBundle** (in dev/test env) - A demo bundle with some example
code

All libraries and bundles included in the Symfony Standard Edition are
released under the MIT or BSD license.

Enjoy!

[1]: http://symfony.com/doc/2.4/book/installation.html
[2]: http://getcomposer.org/
[3]: http://symfony.com/download
[4]: http://symfony.com/doc/2.4/quick_tour/the_big_picture.html
[5]: http://symfony.com/doc/2.4/index.html
[6]: http://symfony.com/doc/2.4/bundles/SensioFrameworkExtraBundle/index.html
[7]: http://symfony.com/doc/2.4/book/doctrine.html
[8]: http://symfony.com/doc/2.4/book/templating.html
[9]: http://symfony.com/doc/2.4/book/security.html
[10]: http://symfony.com/doc/2.4/cookbook/email.html
[11]: http://symfony.com/doc/2.4/cookbook/logging/monolog.html
[12]: http://symfony.com/doc/2.4/cookbook/assetic/asset_management.html
[13]: http://symfony.com/doc/2.4/bundles/SensioGeneratorBundle/index.html
Thanks to
[everyone who has contributed](https://github.com/symfony-cmf/symfony-standard/contributors) already.
20 changes: 20 additions & 0 deletions app/AppKernel.php
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ class AppKernel extends Kernel
public function registerBundles()
{
$bundles = array(
// Symfony Standard Edition Bundles
new Symfony\Bundle\FrameworkBundle\FrameworkBundle(),
new Symfony\Bundle\SecurityBundle\SecurityBundle(),
new Symfony\Bundle\TwigBundle\TwigBundle(),
Expand All @@ -16,6 +17,25 @@ public function registerBundles()
new Symfony\Bundle\AsseticBundle\AsseticBundle(),
new Doctrine\Bundle\DoctrineBundle\DoctrineBundle(),
new Sensio\Bundle\FrameworkExtraBundle\SensioFrameworkExtraBundle(),

// Symfony CMF Standard Edition Bundles
new Doctrine\Bundle\PHPCRBundle\DoctrinePHPCRBundle(),
new Doctrine\Bundle\DoctrineCacheBundle\DoctrineCacheBundle(),
new Symfony\Cmf\Bundle\CoreBundle\CmfCoreBundle(),
new Symfony\Cmf\Bundle\ContentBundle\CmfContentBundle(),
new Symfony\Cmf\Bundle\RoutingBundle\CmfRoutingBundle(),
new Symfony\Cmf\Bundle\SimpleCmsBundle\CmfSimpleCmsBundle(),

new Symfony\Cmf\Bundle\BlockBundle\CmfBlockBundle(),
new Sonata\BlockBundle\SonataBlockBundle(),
new Sonata\CoreBundle\SonataCoreBundle(),

new Symfony\Cmf\Bundle\MenuBundle\CmfMenuBundle(),
new Knp\Bundle\MenuBundle\KnpMenuBundle(),

new Symfony\Cmf\Bundle\CreateBundle\CmfCreateBundle(),
new FOS\RestBundle\FOSRestBundle(),
new JMS\SerializerBundle\JMSSerializerBundle(),
);

if (in_array($this->getEnvironment(), array('dev', 'test'))) {
Expand Down
62 changes: 51 additions & 11 deletions app/config/config.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
imports:
- { resource: parameters.yml }
- { resource: security.yml }
- { resource: @AcmeDemoBundle/Resources/config/services.yml }

framework:
#esi: ~
Expand Down Expand Up @@ -42,23 +43,62 @@ assetic:
#yui_css:
# jar: "%kernel.root_dir%/Resources/java/yuicompressor-2.4.7.jar"

# Doctrine Configuration
# Doctrine Configuration (needed for Jackalope Doctrine DBAL)
doctrine:
dbal:
driver: "%database_driver%"
host: "%database_host%"
port: "%database_port%"
dbname: "%database_name%"
user: "%database_user%"
password: "%database_password%"
charset: UTF8
# if using pdo_sqlite as your database driver, add the path in parameters.yml
# e.g. database_path: "%kernel.root_dir%/data/data.db3"
# path: "%database_path%"
path: "%database_path%"
# if using something else than pdo_sqlite as driver, add the
# parameters in parameters.yml.dist and uncomment the lines below
#host: "%database_host%"
#port: "%database_port%"
#dbname: "%database_name%"
#user: "%database_user%"
#password: "%database_password%"

orm:
auto_generate_proxy_classes: "%kernel.debug%"
# Doctrine PHPCR-ODM configuration
doctrine_phpcr:
session:
backend: "%phpcr_backend%"
workspace: "%phpcr_workspace%"
username: "%phpcr_user%"
password: "%phpcr_password%"
odm:
auto_mapping: true
auto_generate_proxy_classes: "%kernel.debug%"

# Jackalope Metadata and Node Cache services
doctrine_cache:
providers:
phpcr_meta:
type: file_system
phpcr_nodes:
type: file_system

# Cmf Configuration
cmf_core:
persistence:
phpcr: true
# if you want another basepath
# basepath: /custom/basepath
publish_workflow: false

cmf_routing:
dynamic:
templates_by_class:
Symfony\Cmf\Bundle\SimpleCmsBundle\Doctrine\Phpcr\Page: AcmeDemoBundle:Page:index.html.twig

knp_menu:
twig: true

cmf_block:
persistence:
phpcr:
block_basepath: /cms/blocks

sonata_block:
default_contexts: [cms]

# Swiftmailer Configuration
swiftmailer:
Expand Down
3 changes: 0 additions & 3 deletions app/config/config_dev.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,6 @@ monolog:
type: stream
path: "%kernel.logs_dir%/%kernel.environment%.log"
level: debug
console:
type: console
bubble: false
# uncomment to get logging in your browser
# you may have to allow bigger header sizes in your Web server configuration
#firephp:
Expand Down
2 changes: 0 additions & 2 deletions app/config/config_prod.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,5 +21,3 @@ monolog:
type: stream
path: "%kernel.logs_dir%/%kernel.environment%.log"
level: debug
console:
type: console
19 changes: 13 additions & 6 deletions app/config/parameters.yml.dist
Original file line number Diff line number Diff line change
@@ -1,10 +1,17 @@
parameters:
database_driver: pdo_mysql
database_host: 127.0.0.1
database_port: ~
database_name: symfony
database_user: root
database_password: ~
database_driver: pdo_sqlite
database_path: "%kernel.root_dir%/app.sqlite"

phpcr_backend:
# use Jackalope Doctrine DBAL
type: doctrinedbal
connection: default
caches:
meta: doctrine_cache.providers.phpcr_meta
nodes: doctrine_cache.providers.phpcr_nodes
phpcr_workspace: default
phpcr_user: admin
phpcr_password: admin

mailer_transport: smtp
mailer_host: 127.0.0.1
Expand Down
4 changes: 0 additions & 4 deletions app/config/routing_dev.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,3 @@ _configurator:

_main:
resource: routing.yml

# AcmeDemoBundle routes (to be removed)
_acme_demo:
resource: "@AcmeDemoBundle/Resources/config/routing.yml"
Loading

0 comments on commit e5677bd

Please sign in to comment.