Skip to content

Commit 2fa6fbf

Browse files
init
0 parents  commit 2fa6fbf

40 files changed

+5111
-0
lines changed

.gitignore

+56
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
# Cache and logs (Symfony2)
2+
/app/cache/*
3+
/app/logs/*
4+
!app/cache/.gitkeep
5+
!app/logs/.gitkeep
6+
7+
# Cache and logs (Symfony3)
8+
/var/cache/*
9+
/var/logs/*
10+
!var/cache/.gitkeep
11+
!var/logs/.gitkeep
12+
13+
# Parameters
14+
/app/config/parameters.yml
15+
/app/config/parameters.ini
16+
17+
# Managed by Composer
18+
/app/bootstrap.php.cache
19+
/var/bootstrap.php.cache
20+
/bin/*
21+
!bin/console
22+
!bin/symfony_requirements
23+
/vendor/
24+
25+
# Assets and user uploads
26+
/web/bundles/
27+
/web/uploads/
28+
29+
# PHPUnit
30+
/app/phpunit.xml
31+
/phpunit.xml
32+
33+
# Build data
34+
/build/
35+
36+
# Bower components
37+
/bower_components/
38+
39+
# Node modules
40+
/node_modules/
41+
42+
# Codeception output
43+
/tests/_output/*
44+
45+
# Composer PHAR
46+
/composer.phar
47+
.idea/*
48+
workspace.xml
49+
50+
# Blog
51+
!web/blog/.htaccess
52+
web/blog/*
53+
/web/blog/*
54+
55+
# Documentation Temp Files
56+
*.~vsdx

README.md

+4
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
api
2+
===
3+
4+
A Symfony project created on June 11, 2016, 10:14 am.

app/.htaccess

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
<IfModule mod_authz_core.c>
2+
Require all denied
3+
</IfModule>
4+
<IfModule !mod_authz_core.c>
5+
Order deny,allow
6+
Deny from all
7+
</IfModule>

app/AppCache.php

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
<?php
2+
3+
use Symfony\Bundle\FrameworkBundle\HttpCache\HttpCache;
4+
5+
class AppCache extends HttpCache
6+
{
7+
}

app/AppKernel.php

+57
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
<?php
2+
3+
use Symfony\Component\HttpKernel\Kernel;
4+
use Symfony\Component\Config\Loader\LoaderInterface;
5+
6+
class AppKernel extends Kernel
7+
{
8+
public function registerBundles()
9+
{
10+
$bundles = [
11+
new Symfony\Bundle\FrameworkBundle\FrameworkBundle(),
12+
new Symfony\Bundle\SecurityBundle\SecurityBundle(),
13+
new Symfony\Bundle\TwigBundle\TwigBundle(),
14+
new Symfony\Bundle\MonologBundle\MonologBundle(),
15+
new Symfony\Bundle\SwiftmailerBundle\SwiftmailerBundle(),
16+
new Doctrine\Bundle\DoctrineBundle\DoctrineBundle(),
17+
new Sensio\Bundle\FrameworkExtraBundle\SensioFrameworkExtraBundle(),
18+
19+
new FOS\RestBundle\FOSRestBundle(),
20+
new Nelmio\CorsBundle\NelmioCorsBundle(),
21+
new Nelmio\ApiDocBundle\NelmioApiDocBundle(),
22+
new JMS\SerializerBundle\JMSSerializerBundle(),
23+
24+
new AppBundle\AppBundle(),
25+
];
26+
27+
if (in_array($this->getEnvironment(), ['dev', 'test'], true)) {
28+
$bundles[] = new Symfony\Bundle\DebugBundle\DebugBundle();
29+
$bundles[] = new Symfony\Bundle\WebProfilerBundle\WebProfilerBundle();
30+
$bundles[] = new Sensio\Bundle\DistributionBundle\SensioDistributionBundle();
31+
$bundles[] = new Sensio\Bundle\GeneratorBundle\SensioGeneratorBundle();
32+
$bundles[] = new Bazinga\Bundle\FakerBundle\BazingaFakerBundle();
33+
}
34+
35+
return $bundles;
36+
}
37+
38+
public function getRootDir()
39+
{
40+
return __DIR__;
41+
}
42+
43+
public function getCacheDir()
44+
{
45+
return dirname(__DIR__).'/var/cache/'.$this->getEnvironment();
46+
}
47+
48+
public function getLogDir()
49+
{
50+
return dirname(__DIR__).'/var/logs';
51+
}
52+
53+
public function registerContainerConfiguration(LoaderInterface $loader)
54+
{
55+
$loader->load($this->getRootDir().'/config/config_'.$this->getEnvironment().'.yml');
56+
}
57+
}

app/Resources/views/base.html.twig

+13
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
<!DOCTYPE html>
2+
<html>
3+
<head>
4+
<meta charset="UTF-8" />
5+
<title>{% block title %}Welcome!{% endblock %}</title>
6+
{% block stylesheets %}{% endblock %}
7+
<link rel="icon" type="image/x-icon" href="{{ asset('favicon.ico') }}" />
8+
</head>
9+
<body>
10+
{% block body %}{% endblock %}
11+
{% block javascripts %}{% endblock %}
12+
</body>
13+
</html>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
{% extends 'base.html.twig' %}
2+
3+
{% block body %}
4+
<div id="wrapper">
5+
<div id="container">
6+
<div id="welcome">
7+
<h1><span>Welcome to</span> Symfony {{ constant('Symfony\\Component\\HttpKernel\\Kernel::VERSION') }}</h1>
8+
</div>
9+
10+
<div id="status">
11+
<p>
12+
<svg id="icon-status" width="1792" height="1792" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1671 566q0 40-28 68l-724 724-136 136q-28 28-68 28t-68-28l-136-136-362-362q-28-28-28-68t28-68l136-136q28-28 68-28t68 28l294 295 656-657q28-28 68-28t68 28l136 136q28 28 28 68z" fill="#759E1A"/></svg>
13+
14+
Your application is now ready. You can start working on it at:
15+
<code>{{ base_dir }}/</code>
16+
</p>
17+
</div>
18+
19+
<div id="next">
20+
<h2>What's next?</h2>
21+
<p>
22+
<svg id="icon-book" version="1.1" xmlns="http://www.w3.org/2000/svg" x="0px" y="0px" viewBox="-12.5 9 64 64" enable-background="new -12.5 9 64 64" xml:space="preserve">
23+
<path fill="#AAA" d="M6.8,40.8c2.4,0.8,4.5-0.7,4.9-2.5c0.2-1.2-0.3-2.1-1.3-3.2l-0.8-0.8c-0.4-0.5-0.6-1.3-0.2-1.9
24+
c0.4-0.5,0.9-0.8,1.8-0.5c1.3,0.4,1.9,1.3,2.9,2.2c-0.4,1.4-0.7,2.9-0.9,4.2l-0.2,1c-0.7,4-1.3,6.2-2.7,7.5
25+
c-0.3,0.3-0.7,0.5-1.3,0.6c-0.3,0-0.4-0.3-0.4-0.3c0-0.3,0.2-0.3,0.3-0.4c0.2-0.1,0.5-0.3,0.4-0.8c0-0.7-0.6-1.3-1.3-1.3
26+
c-0.6,0-1.4,0.6-1.4,1.7s1,1.9,2.4,1.8c0.8,0,2.5-0.3,4.2-2.5c2-2.5,2.5-5.4,2.9-7.4l0.5-2.8c0.3,0,0.5,0.1,0.8,0.1
27+
c2.4,0.1,3.7-1.3,3.7-2.3c0-0.6-0.3-1.2-0.9-1.2c-0.4,0-0.8,0.3-1,0.8c-0.1,0.6,0.8,1.1,0.1,1.5c-0.5,0.3-1.4,0.6-2.7,0.4l0.3-1.3
28+
c0.5-2.6,1-5.7,3.2-5.8c0.2,0,0.8,0,0.8,0.4c0,0.2,0,0.2-0.2,0.5c-0.2,0.3-0.3,0.4-0.2,0.7c0,0.7,0.5,1.1,1.2,1.1
29+
c0.9,0,1.2-1,1.2-1.4c0-1.2-1.2-1.8-2.6-1.8c-1.5,0.1-2.8,0.9-3.7,2.1c-1.1,1.3-1.8,2.9-2.3,4.5c-0.9-0.8-1.6-1.8-3.1-2.3
30+
c-1.1-0.7-2.3-0.5-3.4,0.3c-0.5,0.4-0.8,1-1,1.6c-0.4,1.5,0.4,2.9,0.8,3.4l0.9,1c0.2,0.2,0.6,0.8,0.4,1.5c-0.3,0.8-1.2,1.3-2.1,1
31+
c-0.4-0.2-1-0.5-0.9-0.9c0.1-0.2,0.2-0.3,0.3-0.5s0.1-0.3,0.1-0.3c0.2-0.6-0.1-1.4-0.7-1.6c-0.6-0.2-1.2,0-1.3,0.8
32+
C4.3,38.4,4.7,40,6.8,40.8z M46.1,20.9c0-4.2-3.2-7.5-7.1-7.5h-3.8C34.8,10.8,32.7,9,30.2,9L-2.3,9.1c-2.8,0.1-4.9,2.4-4.9,5.4
33+
L-7,58.6c0,4.8,8.1,13.9,11.6,14.1l34.7-0.1c3.9,0,7-3.4,7-7.6L46.1,20.9z M-0.3,36.4c0-8.6,6.5-15.6,14.5-15.6
34+
c8,0,14.5,7,14.5,15.6S22.1,52,14.2,52C6.1,52-0.3,45-0.3,36.4z M42.1,65.1c0,1.8-1.5,3.1-3.1,3.1H4.6c-0.7,0-3-1.8-4.5-4.4h30.4
35+
c2.8,0,5-2.4,5-5.4V17.9h3.7c1.6,0,2.9,1.4,2.9,3.1V65.1L42.1,65.1z"/>
36+
</svg>
37+
38+
Read the documentation to learn
39+
<a href="http://symfony.com/doc/{{ constant('Symfony\\Component\\HttpKernel\\Kernel::VERSION')[:3] }}/book/page_creation.html">
40+
How to create your first page in Symfony
41+
</a>
42+
</p>
43+
</div>
44+
45+
</div>
46+
</div>
47+
{% endblock %}
48+
49+
{% block stylesheets %}
50+
<style>
51+
body { background: #F5F5F5; font: 18px/1.5 sans-serif; }
52+
h1, h2 { line-height: 1.2; margin: 0 0 .5em; }
53+
h1 { font-size: 36px; }
54+
h2 { font-size: 21px; margin-bottom: 1em; }
55+
p { margin: 0 0 1em 0; }
56+
a { color: #0000F0; }
57+
a:hover { text-decoration: none; }
58+
code { background: #F5F5F5; max-width: 100px; padding: 2px 6px; word-wrap: break-word; }
59+
#wrapper { background: #FFF; margin: 1em auto; max-width: 800px; width: 95%; }
60+
#container { padding: 2em; }
61+
#welcome, #status { margin-bottom: 2em; }
62+
#welcome h1 span { display: block; font-size: 75%; }
63+
#icon-status, #icon-book { float: left; height: 64px; margin-right: 1em; margin-top: -4px; width: 64px; }
64+
#icon-book { display: none; }
65+
66+
@media (min-width: 768px) {
67+
#wrapper { width: 80%; margin: 2em auto; }
68+
#icon-book { display: inline-block; }
69+
#status a, #next a { display: block; }
70+
71+
@-webkit-keyframes fade-in { 0% { opacity: 0; } 100% { opacity: 1; } }
72+
@keyframes fade-in { 0% { opacity: 0; } 100% { opacity: 1; } }
73+
.sf-toolbar { opacity: 0; -webkit-animation: fade-in 1s .2s forwards; animation: fade-in 1s .2s forwards;}
74+
}
75+
</style>
76+
{% endblock %}

app/autoload.php

+13
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
<?php
2+
3+
use Doctrine\Common\Annotations\AnnotationRegistry;
4+
use Composer\Autoload\ClassLoader;
5+
6+
/**
7+
* @var ClassLoader $loader
8+
*/
9+
$loader = require __DIR__.'/../vendor/autoload.php';
10+
11+
AnnotationRegistry::registerLoader([$loader, 'loadClass']);
12+
13+
return $loader;

app/config/config.yml

+119
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,119 @@
1+
imports:
2+
- { resource: parameters.yml }
3+
- { resource: security.yml }
4+
- { resource: services.yml }
5+
6+
# Put parameters here that don't need to change on each machine where the app is deployed
7+
# http://symfony.com/doc/current/best_practices/configuration.html#application-related-configuration
8+
parameters:
9+
locale: en
10+
11+
framework:
12+
#esi: ~
13+
#translator: { fallbacks: ["%locale%"] }
14+
secret: "%secret%"
15+
router:
16+
resource: "%kernel.root_dir%/config/routing.yml"
17+
strict_requirements: ~
18+
form: ~
19+
csrf_protection: ~
20+
validation: { enable_annotations: true }
21+
#serializer: { enable_annotations: true }
22+
templating:
23+
engines: ['twig']
24+
default_locale: "%locale%"
25+
trusted_hosts: ~
26+
trusted_proxies: ~
27+
session:
28+
# http://symfony.com/doc/current/reference/configuration/framework.html#handler-id
29+
handler_id: session.handler.native_file
30+
save_path: "%kernel.root_dir%/../var/sessions/%kernel.environment%"
31+
fragments: ~
32+
http_method_override: true
33+
assets: ~
34+
35+
# Twig Configuration
36+
twig:
37+
debug: "%kernel.debug%"
38+
strict_variables: "%kernel.debug%"
39+
40+
# Doctrine Configuration
41+
doctrine:
42+
dbal:
43+
driver: pdo_mysql
44+
host: "%database_host%"
45+
port: "%database_port%"
46+
dbname: "%database_name%"
47+
user: "%database_user%"
48+
password: "%database_password%"
49+
charset: UTF8
50+
# if using pdo_sqlite as your database driver:
51+
# 1. add the path in parameters.yml
52+
# e.g. database_path: "%kernel.root_dir%/data/data.db3"
53+
# 2. Uncomment database_path in parameters.yml.dist
54+
# 3. Uncomment next line:
55+
# path: "%database_path%"
56+
57+
orm:
58+
auto_generate_proxy_classes: "%kernel.debug%"
59+
naming_strategy: doctrine.orm.naming_strategy.underscore
60+
auto_mapping: true
61+
62+
# Swiftmailer Configuration
63+
swiftmailer:
64+
transport: "%mailer_transport%"
65+
host: "%mailer_host%"
66+
username: "%mailer_user%"
67+
password: "%mailer_password%"
68+
spool: { type: memory }
69+
70+
71+
72+
# Nelmio CORS
73+
nelmio_cors:
74+
defaults:
75+
allow_origin: ["%cors_allow_origin%"]
76+
allow_methods: ["POST", "PUT", "GET", "DELETE", "OPTIONS"]
77+
allow_headers: ["content-type", "authorization"]
78+
max_age: 3600
79+
paths:
80+
'^/': ~
81+
82+
# Nelmio API Doc
83+
nelmio_api_doc:
84+
sandbox:
85+
accept_type: "application/json"
86+
body_format:
87+
formats: [ "json" ]
88+
default_format: "json"
89+
request_format:
90+
formats:
91+
json: "application/json"
92+
93+
94+
# FOS REST Bundle
95+
fos_rest:
96+
body_listener: true
97+
format_listener: true
98+
param_fetcher_listener: true
99+
view:
100+
view_response_listener: 'force'
101+
exception_wrapper_handler: null
102+
formats:
103+
jsonp: true
104+
json: true
105+
xml: false
106+
rss: false
107+
mime_types:
108+
json: ['application/json', 'application/x-json']
109+
jpg: 'image/jpeg'
110+
png: 'image/png'
111+
jsonp_handler: ~
112+
routing_loader:
113+
default_format: json
114+
include_format: false
115+
format_listener:
116+
rules:
117+
- { path: ^/, priorities: [ json, jsonp ], fallback_format: ~, prefer_extension: true }
118+
exception:
119+
enabled: true

0 commit comments

Comments
 (0)