Skip to content

Commit 101f4ab

Browse files
Guilherme CaracioloGuilherme Caraciolo
Guilherme Caraciolo
authored and
Guilherme Caraciolo
committed
Primeiro commit - adicionando todos os arquivos do FacilMVC ao projeto Git
0 parents  commit 101f4ab

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

54 files changed

+5889
-0
lines changed

.DS_Store

6 KB
Binary file not shown.

.htaccess

+278
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,278 @@
1+
#######################################################################
2+
#
3+
# Fácil MVC - Arquivo de filtro geral do framework
4+
#
5+
# Opções padrão:
6+
#
7+
# -> Indexes gera um arquivo com a lista do conteúdo
8+
# de um diretório sempre que a URL chamada apontar
9+
# pra um diretório que não tenha arquivo index
10+
# (como index.html ou index.php)
11+
#
12+
# -> - Indexes desliga essa opção e gera Forbidden nesse caso
13+
#
14+
# -> MultiViews em URLs que apontem para um diretório que não exista
15+
# faz o Apache procurar por arquivos com o mesmo nome e qualquer extensão
16+
# Assim: /caminho/pra/diretorio pode achar /caminho/pra/diretorio.php
17+
#
18+
# -> - MultiViews no nosso caso evita index (ação) ser considerado index.php
19+
# (index.php é o nosso arquivo Front-Controller)
20+
#
21+
# -> + FollowSymlinks informa ao servidor que percorra o links simbólicos.
22+
# Atalhos criados no sistema de arquivos para simplificar e reaproveitar
23+
# os endereçamentos de recursos.
24+
# Esta diretiva deve estar ligada uma vez que precisamos do mod_rewrite
25+
#
26+
########################################################################
27+
28+
options -Indexes -MultiViews +FollowSymlinks
29+
30+
31+
#######################################################################
32+
#
33+
# Configurações Gerais PHP_INI_PER_DIR
34+
#
35+
# -> Desligando opções depreciadas.
36+
# -> Ligando short_open_tag para poder permitir <?= nas templates.
37+
# A partir do PHP 5.4+ as expressões <?= não precisam desta diretiva
38+
# para funcionarem, portanto você não precisa ligá-la
39+
# apenas por este motivo.
40+
# Leia mais: https://bugs.php.net/bug.php?id=50662
41+
# -> Restringindo uso de cookies a envios HTTP, indicando ao browser
42+
# que não tente abrir esses cookies se algum Javascript solicitar.
43+
# Isso previne certos tipos de ataques XSS.
44+
# Leia mais: http://php.net/function.setcookie.php#79488
45+
#
46+
########################################################################
47+
48+
php_flag magic_quotes_gpc Off
49+
php_flag magic_quotes_runtime Off
50+
php_flag magic_quotes_sybase Off
51+
php_flag register_globals Off
52+
php_flag short_open_tag On
53+
php_flag session.cookie_httponly On
54+
55+
56+
#######################################################################
57+
#
58+
# Seguindo as sugestões do HTML5 Boilerplate para
59+
# padronização do tipo MIME de certos arquivos
60+
#
61+
#######################################################################
62+
AddType application/javascript js
63+
AddType audio/ogg oga ogg
64+
AddType audio/mp4 m4a
65+
AddType video/ogg ogv
66+
AddType video/mp4 mp4 m4v
67+
AddType video/webm webm
68+
AddType image/svg+xml svg svgz
69+
AddEncoding gzip svgz
70+
AddType application/vnd.ms-fontobject eot
71+
AddType application/x-font-ttf ttf ttc
72+
AddType font/opentype otf
73+
AddType application/x-font-woff woff
74+
AddType image/x-icon ico
75+
AddType image/webp webp
76+
AddType text/cache-manifest appcache manifest
77+
AddType text/x-component htc
78+
AddType application/x-chrome-extension crx
79+
AddType application/x-opera-extension oex
80+
AddType application/x-xpinstall xpi
81+
AddType application/octet-stream safariextz
82+
AddType application/x-web-app-manifest+json webapp
83+
AddType text/x-vcard vcf
84+
85+
86+
#######################################################################
87+
#
88+
# Ligando o ModRewrite para as principais regras de navegação
89+
#
90+
#######################################################################
91+
92+
<IfModule mod_rewrite.c>
93+
RewriteEngine On
94+
95+
###################################################################
96+
# Bloqueando acesso (Forbidden) a qualquer arquivo ou
97+
# diretório oculto. Iniciado pelo ponto
98+
###################################################################
99+
#RewriteCond %{REQUEST_FILENAME} -d
100+
#RewriteCond %{REQUEST_FILENAME} -f
101+
RewriteRule "(^|/)\." - [F,L]
102+
103+
###################################################################
104+
# Direcionando chamadas a combos de js e css por arquivo de
105+
# mapeamento de combos que devem existir com extensão
106+
# .combo.js ou .combo.css.
107+
# Eles devem ter uma lista separada por quebra de linha (\n) de
108+
# todas as URLs para arquivos .js existentes
109+
###################################################################
110+
RewriteRule .*?\.combo((\.js)|(\.css))$ index.php?_combo=$0 [L]
111+
112+
###################################################################
113+
# Direcionando chamadas a combos de js e css por pasta.
114+
# No lugar de apontar para algum arquivo específico
115+
###################################################################
116+
RewriteCond %{REQUEST_FILENAME} !-d
117+
RewriteCond %{REQUEST_FILENAME} !-f
118+
RewriteRule .*/(.*)/\1((\.js)|(\.css))$ index.php?_combodir=$0 [L]
119+
120+
###################################################################
121+
# Capturando chamadas a js, img, css e recursos
122+
# Ligar essa diretiva pode aumentar a carga no servidor uma vez
123+
# que toda requisição para arquivo estático vai passar pelo PHP.
124+
# Mas haverá a vantagem dele poder processar internacionalização
125+
# também nos arquivos .js e .css além de poder reduzir o tamanho
126+
# destes (minify) o que pode melhorar o desempenho se o gargalo
127+
# estiver no tráfego e não no processamento da máquina.
128+
###################################################################
129+
RewriteRule .*?((js/)|(css/)|(imagens/)|(recursos/))(.*) index.php?_url=$0 [L]
130+
131+
###################################################################
132+
# Direcionando toda URL que não apontar para recurso existente para
133+
# index.php passando o caminho para a variavel $url
134+
###################################################################
135+
RewriteCond %{REQUEST_FILENAME} !-d
136+
RewriteCond %{REQUEST_FILENAME} !-f
137+
RewriteRule ^(.*)$ index.php?_url=$1 [QSA,L]
138+
139+
</IfModule>
140+
141+
142+
#######################################################################
143+
#
144+
# Compactação Gzip para diminuição de tráfego
145+
#
146+
#######################################################################
147+
148+
<IfModule mod_deflate.c>
149+
# Force deflate for mangled headers developer.yahoo.com/blogs/ydn/posts/2010/12/pushing-beyond-gzipping/
150+
<IfModule mod_setenvif.c>
151+
<IfModule mod_headers.c>
152+
SetEnvIfNoCase ^(Accept-EncodXng|X-cept-Encoding|X{15}|~{15}|-{15})$ ^((gzip|deflate)\s*,?\s*)+|[X~-]{4,13}$ HAVE_Accept-Encoding
153+
RequestHeader append Accept-Encoding "gzip,deflate" env=HAVE_Accept-Encoding
154+
</IfModule>
155+
</IfModule>
156+
157+
158+
# HTML, TXT, CSS, JavaScript, JSON, XML, HTC:
159+
<IfModule filter_module>
160+
FilterDeclare COMPRESS
161+
FilterProvider COMPRESS DEFLATE resp=Content-Type $text/html
162+
FilterProvider COMPRESS DEFLATE resp=Content-Type $text/css
163+
FilterProvider COMPRESS DEFLATE resp=Content-Type $text/plain
164+
FilterProvider COMPRESS DEFLATE resp=Content-Type $text/xml
165+
FilterProvider COMPRESS DEFLATE resp=Content-Type $text/x-component
166+
FilterProvider COMPRESS DEFLATE resp=Content-Type $application/javascript
167+
FilterProvider COMPRESS DEFLATE resp=Content-Type $application/json
168+
FilterProvider COMPRESS DEFLATE resp=Content-Type $application/xml
169+
FilterProvider COMPRESS DEFLATE resp=Content-Type $application/xhtml+xml
170+
FilterProvider COMPRESS DEFLATE resp=Content-Type $application/rss+xml
171+
FilterProvider COMPRESS DEFLATE resp=Content-Type $application/atom+xml
172+
FilterProvider COMPRESS DEFLATE resp=Content-Type $application/vnd.ms-fontobject
173+
FilterProvider COMPRESS DEFLATE resp=Content-Type $image/svg+xml
174+
FilterProvider COMPRESS DEFLATE resp=Content-Type $image/x-icon
175+
FilterProvider COMPRESS DEFLATE resp=Content-Type $application/x-font-ttf
176+
FilterProvider COMPRESS DEFLATE resp=Content-Type $font/opentype
177+
FilterChain COMPRESS
178+
FilterProtocol COMPRESS DEFLATE change=yes;byteranges=no
179+
</IfModule>
180+
181+
<IfModule !mod_filter.c>
182+
# Legacy versions of Apache
183+
AddOutputFilterByType DEFLATE text/html text/plain text/css application/json
184+
AddOutputFilterByType DEFLATE application/javascript
185+
AddOutputFilterByType DEFLATE text/xml application/xml text/x-component
186+
AddOutputFilterByType DEFLATE application/xhtml+xml application/rss+xml application/atom+xml
187+
AddOutputFilterByType DEFLATE image/x-icon image/svg+xml application/vnd.ms-fontobject application/x-font-ttf font/opentype
188+
</IfModule>
189+
190+
</IfModule>
191+
192+
193+
#######################################################################
194+
#
195+
# Adicionando cabeçalhos Expires para conteúdo estático
196+
#
197+
#######################################################################
198+
199+
<IfModule mod_expires.c>
200+
ExpiresActive on
201+
202+
ExpiresDefault "access plus 1 month"
203+
ExpiresByType text/cache-manifest "access plus 0 seconds"
204+
ExpiresByType text/html "access plus 0 seconds"
205+
ExpiresByType text/xml "access plus 0 seconds"
206+
ExpiresByType application/xml "access plus 0 seconds"
207+
ExpiresByType application/json "access plus 0 seconds"
208+
ExpiresByType application/rss+xml "access plus 1 hour"
209+
ExpiresByType application/atom+xml "access plus 1 hour"
210+
ExpiresByType image/x-icon "access plus 1 week"
211+
ExpiresByType image/gif "access plus 1 month"
212+
ExpiresByType image/png "access plus 1 month"
213+
ExpiresByType image/jpg "access plus 1 month"
214+
ExpiresByType image/jpeg "access plus 1 month"
215+
ExpiresByType video/ogg "access plus 1 month"
216+
ExpiresByType audio/ogg "access plus 1 month"
217+
ExpiresByType video/mp4 "access plus 1 month"
218+
ExpiresByType video/webm "access plus 1 month"
219+
ExpiresByType text/x-component "access plus 1 month"
220+
ExpiresByType application/x-font-ttf "access plus 1 month"
221+
ExpiresByType font/opentype "access plus 1 month"
222+
ExpiresByType application/x-font-woff "access plus 1 month"
223+
ExpiresByType image/svg+xml "access plus 1 month"
224+
ExpiresByType application/vnd.ms-fontobject "access plus 1 month"
225+
ExpiresByType text/css "access plus 1 month"
226+
ExpiresByType application/javascript "access plus 1 month"
227+
228+
</IfModule>
229+
230+
231+
#######################################################################
232+
#
233+
# Removendo cabeçalho de controle de cache ETag
234+
# Não funciona em servidores clusterizados e não traz nenhuma
235+
# vantagem considerável com relação ao controle via
236+
# Last-Modified. Portanto, retirá-lo reduz um cabelo de sapo
237+
# o tamanho da resposta do servidor
238+
#
239+
#######################################################################
240+
241+
<IfModule mod_headers.c>
242+
Header unset ETag
243+
</IfModule>
244+
FileETag None
245+
246+
#######################################################################
247+
#
248+
# Redirecionando requsições que forneceram www para a opção sem www.
249+
# Colocamos as duas técnicas conforme sugerido no HTML5 Boilerplate.
250+
# No entanto não habilitamos nenhuma para que você possa escolher
251+
# ou mesmo nunca ligar em situações onde a máquina www for diferente
252+
# da máquina padrão de autoridade pelo domínio.
253+
# O que motiva esse redirecionamento são as técnicas de SEO que
254+
# consideram esse conteúdo duplicado (em duas URLs) algo ruim
255+
#
256+
#######################################################################
257+
258+
# Opção 1 (a mais indicada):
259+
# Rewrite "www.example.com -> example.com"
260+
261+
# <IfModule mod_rewrite.c>
262+
# RewriteCond %{HTTPS} !=on
263+
# RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
264+
# RewriteRule ^ http://%1%{REQUEST_URI} [R=301,L]
265+
# </IfModule>
266+
267+
# ----------------------------------------------------------------------
268+
269+
# Option 2 (só libere aqui se comentar a primeira opção):
270+
# Rewrite "example.com -> www.example.com"
271+
272+
# <IfModule mod_rewrite.c>
273+
# RewriteCond %{HTTPS} !=on
274+
# RewriteCond %{HTTP_HOST} !^www\..+$ [NC]
275+
# RewriteRule ^ http://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
276+
# </IfModule>
277+
278+

config/.htaccess

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
deny from all

config/Autoload.php

+22
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
<?php
2+
namespace config;
3+
/**
4+
* Classe que terá o método capaz de localizar nossas classes
5+
*/
6+
class Autoload {
7+
/**
8+
* Método que será chamado pelo PHP sob demanda para carregar as classes dos sistemas
9+
*
10+
* @param string $nome Nome da classe
11+
* @return unknown_type
12+
*/
13+
public static function load($nome) {
14+
$arquivo = RAIZ . DS . str_replace("\\", DS, $nome) . ".php";
15+
if (file_exists($arquivo)) {
16+
include $arquivo;
17+
}
18+
}
19+
}
20+
21+
spl_autoload_register(array("config\\Autoload", 'load'));
22+
?>

config/desenvolvimento.ini

+54
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
[controle]
2+
extends = padrao
3+
4+
[saida]
5+
tempo = true
6+
uso_de_memoria = true
7+
leitura_humana = true
8+
reduzir_scripts = false
9+
10+
[l10n] ; Localization (l - 10 letras - n)
11+
regiao = pt_BR, pt_BR.UTF-8, pt_BR.ISO-8859-1, ptb, portuguese_brazil
12+
timezone = America/Recife
13+
charset = UTF-8
14+
i18n = true ; Internationalization (i - 18 letras - n)
15+
16+
[erros]
17+
error_reporting = -1 ; Reporta tudo
18+
display_errors = true
19+
log_errors = false
20+
error_log =
21+
ignore_repeated_errors = false
22+
ignore_repeated_source = false
23+
html_errors = true
24+
docref_root = http://br2.php.net/manual/pt_BR/
25+
docref_ext = .php
26+
error_prepend_string =
27+
error_append_string =
28+
29+
[excecoes]
30+
; 0 - Não captura
31+
; 1 - Apenas captura
32+
; 2 - Detalha
33+
; 3 - Depura
34+
capturar = 3
35+
36+
[banco]
37+
DAO = pdo; doctrine2
38+
sgbd = pgsql; pgsql
39+
host = localhost
40+
usuario = postgres
41+
senha = postgres
42+
database = desenvolvimento
43+
porta = 5432
44+
45+
[email]
46+
smtp = true
47+
host = "localhost" ; Especificar no caso de conexão SMTP
48+
autenticar = false
49+
usuario =
50+
senha =
51+
from_email = teste
52+
from_nome = teste
53+
html = true
54+
wordwrap = 76

config/i18n/principal_en.ini

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
teste = test

config/i18n/principal_pt_br.ini

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
teste = teste

config/padrao.ini

+17
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
; Ambiente padrão caso nenhum seja sugerido
2+
ambiente_padrao = desenvolvimento
3+
4+
; Permissão para capturar o ambiente da URL
5+
sugerir_ambiente = true
6+
7+
; Módulo padrão caso nenhum seja sugerido
8+
modulo_padrao = Home
9+
10+
; Ação padrão caso nenhuma seja sugerida
11+
acao_padrao = index
12+
13+
; Diretório padrão por onde buscar arquivos HTML e recursos estáticos
14+
template_padrao = default
15+
16+
; Extensão padrão para os arquivos das templates
17+
extensao_padrao = ".html"

0 commit comments

Comments
 (0)