initial commit

This commit is contained in:
Chris Sewell
2012-11-28 03:55:08 -05:00
parent 7adb399b2e
commit cf140a2e97
3247 changed files with 492437 additions and 0 deletions

View File

@ -0,0 +1,66 @@
#!/bin/sh
# creates a symfony sandbox for this symfony version
echo ">>> initialization"
DIR=../`dirname $0`
SANDBOX_NAME=sf_sandbox
APP_NAME=frontend
PHP=php
echo ">>> project initialization"
rm -rf ${SANDBOX_NAME}
mkdir ${SANDBOX_NAME}
cd ${SANDBOX_NAME}
echo ">>> create a new project and a new app"
${PHP} ${DIR}/../../data/bin/symfony init-project ${SANDBOX_NAME}
${PHP} symfony init-app ${APP_NAME}
echo ">>> add LICENSE"
cp ${DIR}/../../LICENSE LICENSE
echo ">>> add README"
cp ${DIR}/../../data/data/SANDBOX_README README
echo ">>> add symfony command line for windows users"
cp ${DIR}/../../data/bin/symfony.bat symfony.bat
echo ">>> freeze symfony"
${PHP} symfony freeze
rm config/config.php.bak
echo ">>> default to sqlite (propel.ini)"
sed -i '' -e "s#\(propel.database *= *\)mysql#\1sqlite#" config/propel.ini
sed -i '' -e "s#\(propel.database.createUrl *= *\).*#\1sqlite://./../../../../data/sandbox.db#" config/propel.ini
sed -i '' -e "s#\(propel.database.url *= *\).*#\1sqlite://./../../../../data/sandbox.db#" config/propel.ini
echo ">>> default to sqlite (databases.yml)"
echo "all:
propel:
class: sfPropelDatabase
param:
phptype: sqlite
database: %SF_DATA_DIR%/sandbox.db
" > config/databases.yml
echo ">>> add some empty files in empty directories"
touch apps/${APP_NAME}/modules/.sf apps/${APP_NAME}/i18n/.sf doc/.sf web/images/.sf
touch log/.sf cache/.sf batch/.sf data/sql/.sf data/model/.sf
touch data/symfony/generator/sfPropelAdmin/default/skeleton/templates/.sf
touch data/symfony/generator/sfPropelAdmin/default/skeleton/validate/.sf
touch data/symfony/modules/default/config/.sf
touch lib/model/.sf plugins/.sf web/js/.sf
touch test/unit/.sf test/functional/.sf test/functional/${APP_NAME}/.sf
touch web/uploads/assets/.sf
touch data/sandbox.db
chmod 777 data
chmod 777 data/sandbox.db
echo ">>> create archive"
cd ..
tar zcpf ${SANDBOX_NAME}.tgz ${SANDBOX_NAME}
echo ">>> cleanup"
rm -rf ${SANDBOX_NAME}

116
data/symfony/bin/release.php Executable file
View File

@ -0,0 +1,116 @@
<?php
/*
* This file is part of the symfony package.
* (c) 2004-2007 Fabien Potencier <fabien.potencier@symfony-project.com>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/**
* Release script.
*
* Usage: php data/bin/release.php 1.0.0 stable
*
* @package symfony
* @author Fabien Potencier <fabien.potencier@symfony-project.com>
* @version SVN: $Id$
*/
require_once(dirname(__FILE__).'/../../lib/vendor/pake/pakeFunction.php');
require_once(dirname(__FILE__).'/../../lib/vendor/pake/pakeGetopt.class.php');
require_once(dirname(__FILE__).'/../../lib/vendor/lime/lime.php');
if (!isset($argv[1]))
{
throw new Exception('You must provide version prefix.');
}
if (!isset($argv[2]))
{
throw new Exception('You must provide stability status (alpha/beta/stable).');
}
$stability = $argv[2];
if (($stability == 'beta' || $stability == 'alpha') && count(explode('.', $argv[1])) < 2)
{
$version_prefix = $argv[1];
$result = pake_sh('svn status -u '.getcwd());
if (preg_match('/Status against revision\:\s+(\d+)\s*$/im', $result, $match))
{
$version = $match[1];
}
if (!isset($version))
{
throw new Exception('unable to find last svn revision');
}
// make a PEAR compatible version
$version = $version_prefix.'.'.$version;
}
else
{
$version = $argv[1];
}
print 'releasing symfony version "'.$version."\"\n";
// Test
$h = new lime_harness(new lime_output_color());
$h->base_dir = realpath(dirname(__FILE__).'/../../test');
// unit tests
$h->register_glob($h->base_dir.'/unit/*/*Test.php');
// functional tests
$h->register_glob($h->base_dir.'/functional/*Test.php');
$h->register_glob($h->base_dir.'/functional/*/*Test.php');
$ret = $h->run();
if (!$ret)
{
throw new Exception('Some tests failed. Release process aborted!');
}
if (is_file('package.xml'))
{
pake_remove('package.xml', getcwd());
}
pake_copy(getcwd().'/package.xml.tmpl', getcwd().'/package.xml');
// add class files
$finder = pakeFinder::type('file')->ignore_version_control()->relative();
$xml_classes = '';
$dirs = array('lib' => 'php', 'data' => 'data');
foreach ($dirs as $dir => $role)
{
$class_files = $finder->in($dir);
foreach ($class_files as $file)
{
$xml_classes .= '<file role="'.$role.'" baseinstalldir="symfony" install-as="'.$file.'" name="'.$dir.'/'.$file.'" />'."\n";
}
}
// replace tokens
pake_replace_tokens('package.xml', getcwd(), '##', '##', array(
'SYMFONY_VERSION' => $version,
'CURRENT_DATE' => date('Y-m-d'),
'CLASS_FILES' => $xml_classes,
'STABILITY' => $stability,
));
$results = pake_sh('pear package');
echo $results;
pake_remove('package.xml', getcwd());
// copy .tgz as symfony-latest.tgz
pake_copy(getcwd().'/symfony-'.$version.'.tgz', getcwd().'/symfony-latest.tgz');
exit(0);

173
data/symfony/bin/symfony.php Executable file
View File

@ -0,0 +1,173 @@
<?php
/*
* This file is part of the symfony package.
* (c) 2004-2006 Fabien Potencier <fabien.potencier@symfony-project.com>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
if (!isset($sf_symfony_lib_dir))
{
die("You must launch symfony command line with the symfony script\n");
}
if (ini_get('zend.ze1_compatibility_mode'))
{
die("symfony cannot run with zend.ze1_compatibility_mode enabled.\nPlease turn zend.ze1_compatibility_mode to Off in your php.ini.\n");
}
// check if we are using an old project
if (file_exists('config/config.php') && !isset($sf_symfony_lib_dir))
{
// allow only upgrading
if (!in_array('upgrade', $argv))
{
echo "Please upgrade your project before launching any other symfony task\n";
exit();
}
}
require_once($sf_symfony_lib_dir.'/vendor/pake/pakeFunction.php');
require_once($sf_symfony_lib_dir.'/vendor/pake/pakeGetopt.class.php');
// autoloading for pake tasks
class simpleAutoloader
{
static public
$class_paths = array(),
$autoload_callables = array();
static public function initialize($sf_symfony_lib_dir)
{
self::$class_paths = array();
self::register($sf_symfony_lib_dir, '.class.php');
self::register($sf_symfony_lib_dir.'/vendor/propel', '.php');
self::register($sf_symfony_lib_dir.'/vendor/creole', '.php');
self::register('lib/model', '.php');
self::register('plugins', '.php');
}
static public function __autoload($class)
{
if (!isset(self::$class_paths[$class]))
{
foreach ((array) self::$autoload_callables as $callable)
{
if (call_user_func($callable, $class))
{
return true;
}
}
return false;
}
require_once(self::$class_paths[$class]);
return true;
}
static public function register($dir, $ext)
{
if (!is_dir($dir))
{
return;
}
foreach (pakeFinder::type('file')->name('*'.$ext)->ignore_version_control()->follow_link()->in($dir) as $file)
{
self::$class_paths[str_replace($ext, '', str_replace('.class', '', basename($file, $ext)))] = $file;
}
}
static public function add($class, $file)
{
if (!is_file($file))
{
return;
}
self::$class_paths[$class] = $file;
}
static public function registerCallable($callable)
{
if (!is_callable($callable))
{
throw new Exception('Autoload callable does not exist');
}
self::$autoload_callables[] = $callable;
}
}
function __autoload($class)
{
static $initialized = false;
if (!$initialized)
{
simpleAutoloader::initialize(sfConfig::get('sf_symfony_lib_dir'));
$initialized = true;
}
return simpleAutoloader::__autoload($class);
}
// trap -V before pake
if (in_array('-V', $argv) || in_array('--version', $argv))
{
printf("symfony version %s\n", pakeColor::colorize(trim(file_get_contents($sf_symfony_lib_dir.'/VERSION')), 'INFO'));
exit(0);
}
if (count($argv) <= 1)
{
$argv[] = '-T';
}
require_once($sf_symfony_lib_dir.'/config/sfConfig.class.php');
sfConfig::add(array(
'sf_root_dir' => getcwd(),
'sf_symfony_lib_dir' => $sf_symfony_lib_dir,
'sf_symfony_data_dir' => $sf_symfony_data_dir,
));
// directory layout
include($sf_symfony_data_dir.'/config/constants.php');
// include path
set_include_path(
sfConfig::get('sf_lib_dir').PATH_SEPARATOR.
sfConfig::get('sf_app_lib_dir').PATH_SEPARATOR.
sfConfig::get('sf_model_dir').PATH_SEPARATOR.
sfConfig::get('sf_symfony_lib_dir').DIRECTORY_SEPARATOR.'vendor'.PATH_SEPARATOR.
get_include_path()
);
// register tasks
$dirs = array(
sfConfig::get('sf_data_dir').DIRECTORY_SEPARATOR.'tasks' => 'myPake*.php', // project tasks
sfConfig::get('sf_symfony_data_dir').DIRECTORY_SEPARATOR.'tasks' => 'sfPake*.php', // symfony tasks
sfConfig::get('sf_root_dir').'/plugins/*/data/tasks' => '*.php', // plugin tasks
);
foreach ($dirs as $globDir => $name)
{
if ($dirs = glob($globDir))
{
$tasks = pakeFinder::type('file')->name($name)->in($dirs);
foreach ($tasks as $task)
{
include_once($task);
}
}
}
// run task
pakeApp::get_instance()->run(null, null, false);
exit(0);

View File

@ -0,0 +1,59 @@
autoload:
# symfony core
symfony:
name: symfony
path: %SF_SYMFONY_LIB_DIR%
recursive: on
exclude: [vendor]
propel:
name: propel
path: %SF_SYMFONY_LIB_DIR%/vendor/propel
recursive: on
creole:
name: creole
path: %SF_SYMFONY_LIB_DIR%/vendor/creole
recursive: on
propel_addon:
name: propel addon
files:
Propel: %SF_SYMFONY_LIB_DIR%/addon/propel/sfPropelAutoload.php
# plugins
plugins_lib:
name: plugins lib
path: %SF_PLUGINS_DIR%/*/lib
recursive: on
plugins_module_lib:
name: plugins module lib
path: %SF_PLUGINS_DIR%/*/modules/*/lib
prefix: 2
recursive: on
# project
project:
name: project
path: %SF_LIB_DIR%
recursive: on
exclude: [model, symfony]
project_model:
name: project model
path: %SF_MODEL_LIB_DIR%
recursive: on
# application
application:
name: application
path: %SF_APP_LIB_DIR%
recursive: on
modules:
name: module
path: %SF_APP_DIR%/modules/*/lib
prefix: 1
recursive: on

View File

@ -0,0 +1 @@
- %SF_SYMFONY_LIB_DIR%/symfony.php

View File

@ -0,0 +1,70 @@
config/autoload.yml:
class: sfAutoloadConfigHandler
config/php.yml:
class: sfPhpConfigHandler
config/databases.yml:
class: sfDatabaseConfigHandler
config/settings.yml:
class: sfDefineEnvironmentConfigHandler
param:
prefix: sf_
config/app.yml:
class: sfDefineEnvironmentConfigHandler
param:
prefix: app_
config/factories.yml:
class: sfFactoryConfigHandler
config/bootstrap_compile.yml:
class: sfCompileConfigHandler
config/core_compile.yml:
class: sfCompileConfigHandler
config/filters.yml:
class: sfFilterConfigHandler
config/logging.yml:
class: sfLoggingConfigHandler
param:
prefix: sf_logging_
config/routing.yml:
class: sfRoutingConfigHandler
config/i18n.yml:
class: sfDefineEnvironmentConfigHandler
param:
prefix: sf_i18n_
modules/*/config/generator.yml:
class: sfGeneratorConfigHandler
modules/*/config/view.yml:
class: sfViewConfigHandler
modules/*/config/mailer.yml:
class: sfDefineEnvironmentConfigHandler
param:
prefix: sf_mailer_
module: yes
modules/*/config/security.yml:
class: sfSecurityConfigHandler
modules/*/config/cache.yml:
class: sfCacheConfigHandler
modules/*/validate/*.yml:
class: sfValidatorConfigHandler
modules/*/config/module.yml:
class: sfDefineEnvironmentConfigHandler
param:
prefix: mod_
module: yes

View File

@ -0,0 +1,81 @@
<?php
// for tracking temporary variables
$usedVars = array_keys(get_defined_vars());
$sf_root_dir = sfConfig::get('sf_root_dir');
$sf_app = sfConfig::get('sf_app');
$sf_environment = sfConfig::get('sf_environment');
sfConfig::add(array(
// root directory names
'sf_bin_dir_name' => $sf_bin_dir_name = 'batch',
'sf_cache_dir_name' => $sf_cache_dir_name = 'cache',
'sf_log_dir_name' => $sf_log_dir_name = 'log',
'sf_lib_dir_name' => $sf_lib_dir_name = 'lib',
'sf_web_dir_name' => $sf_web_dir_name = 'web',
'sf_upload_dir_name' => $sf_upload_dir_name = 'uploads',
'sf_data_dir_name' => $sf_data_dir_name = 'data',
'sf_config_dir_name' => $sf_config_dir_name = 'config',
'sf_apps_dir_name' => $sf_apps_dir_name = 'apps',
'sf_test_dir_name' => $sf_test_dir_name = 'test',
'sf_doc_dir_name' => $sf_doc_dir_name = 'doc',
'sf_plugins_dir_name' => $sf_plugins_dir_name = 'plugins',
// global directory structure
'sf_app_dir' => $sf_app_dir = $sf_root_dir.DIRECTORY_SEPARATOR.$sf_apps_dir_name.DIRECTORY_SEPARATOR.$sf_app,
'sf_lib_dir' => $sf_lib_dir = $sf_root_dir.DIRECTORY_SEPARATOR.$sf_lib_dir_name,
'sf_bin_dir' => $sf_root_dir.DIRECTORY_SEPARATOR.$sf_bin_dir_name,
'sf_web_dir' => $sf_root_dir.DIRECTORY_SEPARATOR.$sf_web_dir_name,
'sf_upload_dir' => $sf_root_dir.DIRECTORY_SEPARATOR.$sf_web_dir_name.DIRECTORY_SEPARATOR.$sf_upload_dir_name,
'sf_root_cache_dir' => $sf_root_cache_dir = $sf_root_dir.DIRECTORY_SEPARATOR.$sf_cache_dir_name,
'sf_base_cache_dir' => $sf_base_cache_dir = $sf_root_cache_dir.DIRECTORY_SEPARATOR.$sf_app,
'sf_cache_dir' => $sf_cache_dir = $sf_base_cache_dir.DIRECTORY_SEPARATOR.$sf_environment,
'sf_log_dir' => $sf_root_dir.DIRECTORY_SEPARATOR.$sf_log_dir_name,
'sf_data_dir' => $sf_root_dir.DIRECTORY_SEPARATOR.$sf_data_dir_name,
'sf_config_dir' => $sf_root_dir.DIRECTORY_SEPARATOR.$sf_config_dir_name,
'sf_test_dir' => $sf_root_dir.DIRECTORY_SEPARATOR.$sf_test_dir_name,
'sf_doc_dir' => $sf_root_dir.DIRECTORY_SEPARATOR.'data'.DIRECTORY_SEPARATOR.$sf_doc_dir_name,
'sf_plugins_dir' => $sf_root_dir.DIRECTORY_SEPARATOR.$sf_plugins_dir_name,
// lib directory names
'sf_model_dir_name' => $sf_model_dir_name = 'model',
// lib directory structure
'sf_model_lib_dir' => $sf_lib_dir.DIRECTORY_SEPARATOR.$sf_model_dir_name,
// SF_CACHE_DIR directory structure
'sf_template_cache_dir' => $sf_cache_dir.DIRECTORY_SEPARATOR.'template',
'sf_i18n_cache_dir' => $sf_cache_dir.DIRECTORY_SEPARATOR.'i18n',
'sf_config_cache_dir' => $sf_cache_dir.DIRECTORY_SEPARATOR.$sf_config_dir_name,
'sf_test_cache_dir' => $sf_cache_dir.DIRECTORY_SEPARATOR.'test',
'sf_module_cache_dir' => $sf_cache_dir.DIRECTORY_SEPARATOR.'modules',
// SF_APP_DIR sub-directories names
'sf_app_i18n_dir_name' => $sf_app_i18n_dir_name = 'i18n',
'sf_app_config_dir_name' => $sf_app_config_dir_name = 'config',
'sf_app_lib_dir_name' => $sf_app_lib_dir_name = 'lib',
'sf_app_module_dir_name' => $sf_app_module_dir_name = 'modules',
'sf_app_template_dir_name' => $sf_app_template_dir_name = 'templates',
// SF_APP_DIR directory structure
'sf_app_config_dir' => $sf_app_dir.DIRECTORY_SEPARATOR.$sf_app_config_dir_name,
'sf_app_lib_dir' => $sf_app_dir.DIRECTORY_SEPARATOR.$sf_app_lib_dir_name,
'sf_app_module_dir' => $sf_app_dir.DIRECTORY_SEPARATOR.$sf_app_module_dir_name,
'sf_app_template_dir' => $sf_app_dir.DIRECTORY_SEPARATOR.$sf_app_template_dir_name,
'sf_app_i18n_dir' => $sf_app_dir.DIRECTORY_SEPARATOR.$sf_app_i18n_dir_name,
// SF_APP_MODULE_DIR sub-directories names
'sf_app_module_action_dir_name' => 'actions',
'sf_app_module_template_dir_name' => 'templates',
'sf_app_module_lib_dir_name' => 'lib',
'sf_app_module_view_dir_name' => 'views',
'sf_app_module_validate_dir_name' => 'validate',
'sf_app_module_config_dir_name' => 'config',
'sf_app_module_i18n_dir_name' => 'i18n',
));
// Remove temporary variables
foreach (array_diff(array_keys(get_defined_vars()), $usedVars) as $var) {
unset($$var);
}

View File

@ -0,0 +1,37 @@
- %SF_SYMFONY_LIB_DIR%/action/sfComponent.class.php
- %SF_SYMFONY_LIB_DIR%/action/sfAction.class.php
- %SF_SYMFONY_LIB_DIR%/action/sfActions.class.php
- %SF_SYMFONY_LIB_DIR%/action/sfActionStack.class.php
- %SF_SYMFONY_LIB_DIR%/action/sfActionStackEntry.class.php
#- %SF_SYMFONY_LIB_DIR%/config/sfLoader.class.php
- %SF_SYMFONY_LIB_DIR%/controller/sfController.class.php
- %SF_SYMFONY_LIB_DIR%/database/sfDatabaseManager.class.php
- %SF_SYMFONY_LIB_DIR%/filter/sfFilter.class.php
- %SF_SYMFONY_LIB_DIR%/filter/sfCommonFilter.class.php
- %SF_SYMFONY_LIB_DIR%/filter/sfExecutionFilter.class.php
- %SF_SYMFONY_LIB_DIR%/filter/sfRenderingFilter.class.php
- %SF_SYMFONY_LIB_DIR%/filter/sfFilterChain.class.php
- %SF_SYMFONY_LIB_DIR%/request/sfRequest.class.php
- %SF_SYMFONY_LIB_DIR%/response/sfResponse.class.php
- %SF_SYMFONY_LIB_DIR%/storage/sfStorage.class.php
- %SF_SYMFONY_LIB_DIR%/user/sfUser.class.php
- %SF_SYMFONY_LIB_DIR%/util/sfContext.class.php
- %SF_SYMFONY_LIB_DIR%/validator/sfValidatorManager.class.php
#- %SF_SYMFONY_LIB_DIR%/util/sfParameterHolder.class.php
- %SF_SYMFONY_LIB_DIR%/view/sfView.class.php
# these classes are optionals but very likely to be used (in web context)
#- %SF_SYMFONY_LIB_DIR%/controller/sfRouting.class.php
- %SF_SYMFONY_LIB_DIR%/controller/sfWebController.class.php
- %SF_SYMFONY_LIB_DIR%/controller/sfFrontWebController.class.php
- %SF_SYMFONY_LIB_DIR%/request/sfWebRequest.class.php
- %SF_SYMFONY_LIB_DIR%/response/sfWebResponse.class.php
- %SF_SYMFONY_LIB_DIR%/storage/sfSessionStorage.class.php
- %SF_SYMFONY_LIB_DIR%/view/sfPHPView.class.php
# output escaper
- %SF_SYMFONY_LIB_DIR%/view/escaper/sfOutputEscaper.class.php
- %SF_SYMFONY_LIB_DIR%/view/escaper/sfOutputEscaperArrayDecorator.class.php
- %SF_SYMFONY_LIB_DIR%/view/escaper/sfOutputEscaperGetterDecorator.class.php
- %SF_SYMFONY_LIB_DIR%/view/escaper/sfOutputEscaperIteratorDecorator.class.php
- %SF_SYMFONY_LIB_DIR%/view/escaper/sfOutputEscaperObjectDecorator.class.php

View File

@ -0,0 +1,23 @@
default:
controller:
class: sfFrontWebController
request:
class: sfWebRequest
response:
class: sfWebResponse
user:
class: myUser
storage:
class: sfSessionStorage
param:
session_name: symfony
view_cache:
class: sfFileCache
param:
automaticCleaningFactor: 0
cacheDir: %SF_TEMPLATE_CACHE_DIR%

38
data/symfony/config/filters.yml Executable file
View File

@ -0,0 +1,38 @@
# rendering filter must be the first registered filter
rendering:
class: sfRenderingFilter
param:
type: rendering
web_debug:
class: sfWebDebugFilter
param:
condition: %SF_WEB_DEBUG%
# security filter must have a type of security
security:
class: sfBasicSecurityFilter
param:
type: security
condition: %SF_USE_SECURITY%
# generally, you will want to insert your own filters here
cache:
class: sfCacheFilter
param:
condition: %SF_CACHE%
common:
class: sfCommonFilter
flash:
class: sfFlashFilter
param:
condition: %SF_USE_FLASH%
# execution filter must be the last registered filter
execution:
class: sfExecutionFilter
param:
type: execution

View File

7
data/symfony/config/i18n.yml Executable file
View File

@ -0,0 +1,7 @@
default:
default_culture: en
source: XLIFF
debug: off
cache: on
untranslated_prefix: "[T]"
untranslated_suffix: "[/T]"

16
data/symfony/config/logging.yml Executable file
View File

@ -0,0 +1,16 @@
default:
enabled: on
level: debug
rotate: off
period: 7
history: 10
purge: on
loggers:
sf_web_debug:
class: sfWebDebugLogger
param:
condition: %SF_WEB_DEBUG%
sf_file_debug:
class: sfFileLogger
param:
file: %SF_LOG_DIR%/%SF_APP%_%SF_ENVIRONMENT%.log

16
data/symfony/config/mailer.yml Executable file
View File

@ -0,0 +1,16 @@
default:
deliver: on
mailer: smtp
domain: localhost.localdomain
hostname: localhost
port: 25
username: ''
password: ''
wordwrap: 80
.headers:
priority: 3
content_type: text/plain
charset: utf-8
encoding: 8bit

4
data/symfony/config/module.yml Executable file
View File

@ -0,0 +1,4 @@
default:
enabled: on
view_class: sfPHP
is_internal: off

14
data/symfony/config/php.yml Executable file
View File

@ -0,0 +1,14 @@
set:
magic_quotes_runtime: off
log_errors: on
arg_separator.output: |
&amp;
#check:
# zend.ze1_compatibility_mode: off
warn:
magic_quotes_gpc: off
register_globals: off
session.auto_start: off

View File

View File

@ -0,0 +1,82 @@
default:
.actions:
default_module: default # Default module and action to be called when
default_action: index # A routing rule doesn't set it
error_404_module: default # To be called when a 404 error is raised
error_404_action: error404 # Or when the requested URL doesn't match any route
login_module: default # To be called when a non-authenticated user
login_action: login # Tries to access a secure page
secure_module: default # To be called when a user doesn't have
secure_action: secure # The credentials required for an action
module_disabled_module: default # To be called when a user requests
module_disabled_action: disabled # A module disabled in the module.yml
unavailable_module: default # To be called when a user requests a page
unavailable_action: unavailable # From an application disabled via the available setting below
.settings:
available: on # Enable the whole application. Switch to off to redirect all requests to the unavailable module and action.
# Optional features. Deactivating unused features boots performance a bit.
use_database: on # Enable database manager. Set to off if you don't use a database.
use_security: on # Enable security features (login and credentials). Set to off for public applications.
use_flash: on # Enable flash parameter feature. Set to off if you never use the set_flash() method in actions.
i18n: off # Enable interface translation. Set to off if your application should not be translated.
check_symfony_version: off # Enable check of symfony version for every request. Set to on to have symfony clear the cache automatically when the framework is upgraded. Set to off if you always clear the cache after an upgrade.
use_process_cache: on # Enable symfony optimizations based on PHP accelerators. Set to off for tests or when you have enabled a PHP accelerator in your server but don't want symfony to use it internally.
compressed: off # Enable PHP response compression. Set to on to compress the outgoing HTML via the PHP handler.
check_lock: off # Enable the application lock system triggered by the clear-cache and disable tasks. Set to on to have all requests to disabled applications redirected to the $sf_symfony_data_dir/web/arrors/unavailable.php page.
# Output escaping settings
escaping_strategy: bc # Determines how variables are made available to templates. Accepted values: bc, both, on, off. The value off deactivates escaping completely and gives a slight boost.
escaping_method: ESC_ENTITIES # Function or helper used for escaping. Accepted values: ESC_RAW, ESC_ENTITIES, ESC_JS, ESC_JS_NO_ENTITIES.
# Routing settings
suffix: . # Default suffix for generated URLs. If set to a single dot (.), no suffix is added. Possible values: .html, .php, and so on.
no_script_name: off # Enable the front controller name in generated URLs
# Validation settings, used for error generation by the Validation helper
validation_error_prefix: ' &darr;&nbsp;'
validation_error_suffix: ' &nbsp;&darr;'
validation_error_class: form_error
validation_error_id_prefix: error_for_
# Cache settings
cache: off # Enable the template cache
etag: on # Enable etag handling
# Logging and debugging settings
web_debug: off # Enable the web debug toolbar
error_reporting: 341 # Determines which events are logged. The default value is E_PARSE | E_COMPILE_ERROR | E_ERROR | E_CORE_ERROR | E_USER_ERROR = 341
# Assets paths
rich_text_js_dir: js/tiny_mce
prototype_web_dir: /sf/prototype
admin_web_dir: /sf/sf_admin
web_debug_web_dir: /sf/sf_web_debug
calendar_web_dir: /js/calendar
# Helpers included in all templates by default
standard_helpers: [Partial, Cache, Form]
# Activated modules from plugins or from the symfony core
enabled_modules: [default]
# Charset used for the response
charset: utf-8
# Miscellaneous
strip_comments: on # Remove comments in core framework classes as defined in the core_compile.yml
autoloading_functions: ~ # Functions called when a class is requested and this it is not already loaded. Expects an array of callables. Used by the framework bridges.
timeout: 999999999 # Session timeout, in seconds
max_forwards: 5
path_info_array: SERVER
path_info_key: PATH_INFO
url_format: PATH
# ORM
orm: propel

1
data/symfony/config/view.yml Executable file
View File

@ -0,0 +1 @@
default:

100
data/symfony/data/SANDBOX_README Executable file
View File

@ -0,0 +1,100 @@
symfony sandbox
===============
Thank you for downloading the symfony sandbox. This pre-configured symfony
project will allow you to experiment with the symfony framework immediately,
without any installation or configuration.
Quick start
-----------
The sandbox project will work "out of the box", provided that you extract the
.tgz archive under the root web directory configured for your server (usually
`web/`).
After unpacking the archive, test the sandbox by requesting the following URL:
http://localhost/sf_sandbox/web/
You should see a congratulations page.
Command line
------------
If you are in the `sf_sandbox/` directory, you can use the command line to do
usual site management operations. For instance, to clear the cache, type:
$ ./symfony.sh clear-cache (*nix)
symfony clear-cache (Windows)
To discover all the available actions of the symfony command line, type:
$ ./symfony.sh -T (*nix)
symfony -T (Windows)
Environments
------------
The sandbox already contains one application called `frontend`, accessible
through two environments:
- the default environment is the `prod` one, in which the application is fast
but outputs few error messages
- the `dev` environment is slower but gives access to a lot of information
about the current request
To access the `frontend` application in the `dev` environment, type:
http://localhost/sf_sandbox/web/frontend_dev.php/
(don't forget the final /)
Modules
-------
To create a new module `mymodule`, just type in the command line:
$ ./symfony.sh init-module frontend mymodule (*nix)
symfony init-module frontend mymodule (Windows)
To access it, call:
http://localhost/sf_sandbox/web/mymodule
If, at this point, you meet an error, this means that your web server doesn't
support mod_rewrite. Delete the `.htaccess` file from the `web/` directory and
call instead:
http://localhost/sf_sandbox/web/index.php/mymodule
What's in the sandbox?
----------------------
The sandbox is an empty symfony project where all the required libraries
(symfony, pake, creole, propel and phing) are already included (in the
`sf_sandbox/lib/` directory). It is configured to work without any
configuration if unpacked under the web root, but you can install it anywhere
in your disk. In this case,
- delete the 22nd line of the `sf_sandbox/apps/frontend/config/settings.yml`
(`relative_url_root: /sf_sandbox/web/`)
- create a virtual host in your web server configuration to address the
`sf_sandbox/web` directory
The sandbox is intended for you to practice with symfony in a local computer,
not really to develop complex applications that may end up on the web.
However, the version of symfony shipped with the sandbox is fully functional
and equivalent to the one you can install via PEAR.
Beware that the sandbox is not upgradeable.
Happy symfony!
--------------
Feel free to experiment and try the various techniques described in the
www.symfony-project.com website. All the tutorials can also work in a sandbox.
But in the long run, if you decide to go on with symfony, we advise you to
switch to a PEAR installation, which will guarantee you with the possibility
to use the latest patches and enhancements.
The symfony team
http://www.symfony-project.com/

View File

@ -0,0 +1,42 @@
errors:
err0001: |
Symfony enforces some `php.ini` values threw the `php.yml` configuration file (under `check` category).
It seems you have a key in your `php.ini` configuration file with a "un-authorized" value (according to the symfony `php.yml` configuration file).
How can you fix this problem?
* change the value in `php.ini`
* change the `php.yml` file (you must copy the original file referenced in the error message to `yourpoject/config/php.yml` to override it)
* add `php_value magic_quotes_gpc 0` to the .htaccess of your project
Here is a sample `php.yml` file:
set:
magic_quotes_runtime: off
log_errors: on
arg_separator.output: \&amp;
check:
magic_quotes_gpc: off
register_globals: off
err0002: |
You want to check a `php.ini` value but the key you specified doesn't exist in `php.ini`.
err0003: |
A class failed to autoload.
If you run in your production environment and the class is located in a
symfony autoload directory (lib, app/lib, app/module/lib), you should try to clear the
symfony cache:
symfony clear-cache
The mapping between class and file names is done by the autoload.yml configuration file
and the result is cached.
For example, if you just added a new model class and launched a `symfony build-model`,
you should always clear the cache in the all environments that have SF_DEBUG to false.

61
data/symfony/data/exception.php Executable file
View File

@ -0,0 +1,61 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>symfony exception</title>
<style>
body { margin: 0; padding: 20px; margin-top: 20px; background-color: #eee }
body, td, th { font: 11px Verdana, Arial, sans-serif; color: #333 }
a { color: #333 }
h1 { margin: 0 0 0 10px; padding: 10px 0 10px 0; font-weight: bold; font-size: 120% }
h2 { margin: 0; padding: 5px 0; font-size: 110% }
ul { padding-left: 20px; list-style: decimal }
ul li { padding-bottom: 5px; margin: 0 }
ol { font-family: monospace; white-space: pre; list-style-position: inside; margin: 0; padding: 10px 0 }
ol li { margin: -5px; padding: 0 }
ol .selected { font-weight: bold; background-color: #ddd; padding: 2px 0 }
table.vars { padding: 0; margin: 0; border: 1px solid #999; background-color: #fff; }
table.vars th { padding: 2px; background-color: #ddd; font-weight: bold }
table.vars td { padding: 2px; font-family: monospace; white-space: pre }
p.error { padding: 10px; background-color: #f00; font-weight: bold; text-align: center; -moz-border-radius: 10px; }
p.error a { color: #fff }
#main { padding: 20px; padding-left: 70px; border: 1px solid #ddd; background-color: #fff; text-align:left; -moz-border-radius: 10px; min-width: 13em; max-width: 52em }
#message { padding: 10px; margin-bottom: 10px; background-color: #eee; -moz-border-radius: 10px }
</style>
<script type="text/javascript">
function toggle(id)
{
el = document.getElementById(id); el.style.display = el.style.display == 'none' ? 'block' : 'none';
}
</script>
</head>
<body>
<center><div id="main">
<div style="float: right"><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAZCAYAAAAiwE4nAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAEfklEQVRIx7VUa0wUVxT+Znd2FxZk0YKACAtaGwEDUhUTBTEIItmKYk3UNqalD7StMSQ1JKatP5omTYyx0VRrjPERX7XWAG2t9GVi3drU2h+gi4BCWV67lOe6O/uYmXtPf0BRrMBK6UlObmbON9935p6HQEQI1o7uXeSy1dsjHn2Xlpr0oKzililoEiIKymvOr9q+pzyZZN894moHcbWDZN892lOeTN9fKHgrWB5NsInZ7joOrtv4JgR2F4r0AxTpRwisEes2bsNtW+eBYHmCEqw8kVsp6oy6jMUFYIoTxFUQqWBqNzIWr4aoC9NVnlxZNSWC1mqLsa6ubd36zbug+m3gXBlypoCYAuavx4Ytu1Fbay+2VluME/GJEwHsnT3WpLlzhbi4Z6D46gBosP/gVQDA669kIzJSRWxcApLnPie0dw3cALBw0k1z5dyKrIqyWHL1/Eye7n3kcX5MH75fRAAIAJUUZ5Cnez9JPYfI1XuDKsriqOZcbtakm6alte/yqsIi6LVt4KobxAIAqSPxwUEJxAPgqgcG0YH8NS+gxT5wZVI1/PrU0q1O54OoFfmvQZZsIBYA5zIy0maOYFZmJ4GYAuIyZG8jcvLfgMPhmnHlbG7pUws2NfUeWVvyMpj3d3DVB84C4MyPxNkP+8I0TQRn/qGY6gP316J4w6uob3AceirBzw9nnBD1RmN65nLIUhOIBUBcBjEZ5viQEZx5thFcdQ+50o+A5w7SM5dBFHWhFz5bdOpJ3MLjq63mdHrIr7f6PaXbPtBGht4DUwYAQXikyVTkb/gKtbYBNFpzYYoY3egarR6D7jCcPmtly5ZEh6/ZWucfdyycPep3ycmJ2phoAzx9ziERLoMzN4hJAICI8KEkp4VxcCaP+p4zGdHTw2FOiNB2OTzfAMgf80qrjmem1zf256zf9B6kvmvgqgeqrw2qvx1cGQRxBcQV5GRFIGepaeT5cfdJXbAUPY+79z15l47MWzDmH7a3P/g2Ly9X4O6LkKUWEPeOMbwMpnANiClPDkOBXteL3OXxQnNL72UA5n/V8NLR9Bdrb/ddLN+5VvD23wTA8d9MgNH0LD759DrS5oeUbN7RWjXqSu//OXi8sCBFkN11IFJAxMZ0e4cP12+6xsUQqZC9nShclYTWtsDJUTU8cyDlsE7URqTMC4Eiu8fN+/JVF7I3NuGlna2wlDaPi1VkN1LnR0GvF00n95kPAICm+tgcQ9N9V5ll9Tz4JSem2vySE5bCFDS3+t+uPjbHIA64dF/MioU2aoYGXndgQgJLngnWL0PR1iUje0n4hHimBhA1XYA5IVz8q1eu0oSGqCc6HV4ihAIQgso6MV4flNhDUR/iYqbBI1GqZtM7zVUzZ4p3rl5rQIgxesqvVCsa0O8y4Lc/nGp8rLhcBIA7Df7C7hlKe2ZGojYmZsGUCsqygvOnf6FZsbrtm3bY+wUigiAIC/funlXR0RXYgv/BzAmGn979qGvXyOALghAJQAtAB0A/fIrDY6MNurj/LBqADW8OFYACQB4+2d80or7Ra0ZtxAAAAABJRU5ErkJggg==" /></div>
<h1>[<?php echo $name ?>]</h1>
<h2 id="message"><?php echo $message ?></h2>
<?php if ($error_reference): ?>
<p class="error"><a href='http://www.symfony-project.com/errors/<?php echo $error_reference ?>'>learn more about this issue</a></p>
<?php endif; ?>
<h2>stack trace</h2>
<ul><li><?php echo implode('</li><li>', $traces) ?></li></ul>
<h2>symfony settings <a href="#" onclick="toggle('sf_settings'); return false;">...</a></h2>
<div id="sf_settings" style="display: none"><?php echo $settingsTable ?></div>
<h2>request <a href="#" onclick="toggle('sf_request'); return false;">...</a></h2>
<div id="sf_request" style="display: none"><?php echo $requestTable ?></div>
<h2>response <a href="#" onclick="toggle('sf_response'); return false;">...</a></h2>
<div id="sf_response" style="display: none"><?php echo $responseTable ?></div>
<h2>global vars <a href="#" onclick="toggle('sf_globals'); return false;">...</a></h2>
<div id="sf_globals" style="display: none"><?php echo $globalsTable ?></div>
<p id="footer">
symfony v.<?php echo file_get_contents(sfConfig::get('sf_symfony_lib_dir').'/VERSION') ?> - php <?php echo PHP_VERSION ?><br />
for help resolving this issue, please visit <a href="http://www.symfony-project.com/">http://www.symfony-project.com/</a>.
</p>
</div></center>
</body>
</html>

11
data/symfony/data/exception.txt Executable file
View File

@ -0,0 +1,11 @@
[exception] <?php echo $name ?>
[message] <?php echo $message ?>
<?php if (count($traces) > 0): ?>
[stack trace]
<?php foreach ($traces as $line): ?>
<?php echo $line ?>
<?php endforeach; ?>
<?php endif; ?>
[symfony] v. <?php echo sfConfig::get('sf_version') ?> (symfony-project.com)
[PHP] v. <?php echo PHP_VERSION ?>

File diff suppressed because one or more lines are too long

420
data/symfony/data/mime_types.php Executable file
View File

@ -0,0 +1,420 @@
<?php
$data = preg_match_all('/^([a-z0-9\/_\.+-]+) ([a-z0-9_]+)$/mi', file_get_contents(__FILE__), $matches, PREG_SET_ORDER);
$mime_types = array();
foreach ($matches as $match)
{
$mime_types[strtolower($match[1])] = strtolower($match[2]);
}
file_put_contents(dirname(__FILE__).'/mime_types.dat', serialize($mime_types));
/*
application/andrew-inset ez
application/appledouble base64
application/applefile base64
application/commonground dp
application/cprplayer pqi
application/dsptype tsp
application/excel xls
application/font-tdpfr pfr
application/futuresplash spl
application/hstu stk
application/hyperstudio stk
application/javascript js
application/mac-binhex40 hqx
application/mac-compactpro cpt
application/mbed mbd
application/mirage mfp
application/msword doc
application/ocsp-request orq
application/ocsp-response ors
application/octet-stream bin
application/octet-stream exe
application/oda oda
application/ogg ogg
application/pdf pdf
application/pgp-encrypted 7bit
application/pgp-keys 7bit
application/pgp-signature sig
application/pkcs10 p10
application/pkcs7-mime p7m
application/pkcs7-signature p7s
application/pkix-cert cer
application/pkix-crl crl
application/pkix-pkipath pkipath
application/pkixcmp pki
application/postscript ai
application/postscript eps
application/postscript ps
application/presentations shw
application/prs.cww cw
application/prs.nprend rnd
application/quest qrt
application/rtf rtf
application/sgml-open-catalog soc
application/sieve siv
application/smil smi
application/toolbook tbk
application/vnd.3gpp.pic-bw-large plb
application/vnd.3gpp.pic-bw-small psb
application/vnd.3gpp.pic-bw-var pvb
application/vnd.3gpp.sms sms
application/vnd.acucorp atc
application/vnd.adobe.xfdf xfdf
application/vnd.amiga.amu ami
application/vnd.blueice.multipass mpm
application/vnd.cinderella cdy
application/vnd.cosmocaller cmc
application/vnd.criticaltools.wbs+xml wbs
application/vnd.curl curl
application/vnd.data-vision.rdz rdz
application/vnd.dreamfactory dfac
application/vnd.fsc.weblauch fsc
application/vnd.genomatix.tuxedo txd
application/vnd.hbci hbci
application/vnd.hhe.lesson-player les
application/vnd.hp-hpgl plt
application/vnd.ibm.electronic-media emm
application/vnd.ibm.rights-management irm
application/vnd.ibm.secure-container sc
application/vnd.ipunplugged.rcprofile rcprofile
application/vnd.irepository.package+xml irp
application/vnd.jisp jisp
application/vnd.kde.karbon karbon
application/vnd.kde.kchart chrt
application/vnd.kde.kformula kfo
application/vnd.kde.kivio flw
application/vnd.kde.kontour kon
application/vnd.kde.kpresenter kpr
application/vnd.kde.kspread ksp
application/vnd.kde.kword kwd
application/vnd.kenameapp htke
application/vnd.kidspiration kia
application/vnd.kinar kne
application/vnd.llamagraphics.life-balance.desktop lbd
application/vnd.llamagraphics.life-balance.exchange+xml lbe
application/vnd.lotus-1-2-3 wks
application/vnd.mcd mcd
application/vnd.mfmp mfm
application/vnd.micrografx.flo flo
application/vnd.micrografx.igx igx
application/vnd.mif mif
application/vnd.mophun.application mpn
application/vnd.mophun.certificate mpc
application/vnd.mozilla.xul+xml xul
application/vnd.ms-artgalry cil
application/vnd.ms-asf asf
application/vnd.ms-excel xls
application/vnd.ms-lrm lrm
application/vnd.ms-powerpoint ppt
application/vnd.ms-project mpp
application/vnd.ms-tnef base64
application/vnd.ms-works base64
application/vnd.ms-wpl wpl
application/vnd.mseq mseq
application/vnd.nervana ent
application/vnd.nokia.radio-preset rpst
application/vnd.nokia.radio-presets rpss
application/vnd.palm prc
application/vnd.picsel efif
application/vnd.pvi.ptid1 pti
application/vnd.quark.quarkxpress qxd
application/vnd.sealed.doc sdoc
application/vnd.sealed.eml seml
application/vnd.sealed.mht smht
application/vnd.sealed.ppt sppt
application/vnd.sealed.xls sxls
application/vnd.sealedmedia.softseal.html stml
application/vnd.sealedmedia.softseal.pdf spdf
application/vnd.seemail see
application/vnd.smaf mmf
application/vnd.sun.xml.calc sxc
application/vnd.sun.xml.calc.template stc
application/vnd.sun.xml.draw sxd
application/vnd.sun.xml.draw.template std
application/vnd.sun.xml.impress sxi
application/vnd.sun.xml.impress.template sti
application/vnd.sun.xml.math sxm
application/vnd.sun.xml.writer sxw
application/vnd.sun.xml.writer.global sxg
application/vnd.sun.xml.writer.template stw
application/vnd.sus-calendar sus
application/vnd.vidsoft.vidconference vsc
application/vnd.visio vsd
application/vnd.visionary vis
application/vnd.wap.sic sic
application/vnd.wap.slc slc
application/vnd.wap.wbxml wbxml
application/vnd.wap.wmlc wmlc
application/vnd.wap.wmlscriptc wmlsc
application/vnd.webturbo wtb
application/vnd.wordperfect wpd
application/vnd.wqd wqd
application/vnd.wv.csp+wbxml wv
application/vnd.wv.csp+xml 8bit
application/vnd.wv.ssp+xml 8bit
application/vnd.yamaha.hv-dic hvd
application/vnd.yamaha.hv-script hvs
application/vnd.yamaha.hv-voice hvp
application/vnd.yamaha.smaf-audio saf
application/vnd.yamaha.smaf-phrase spf
application/vocaltec-media-desc vmd
application/vocaltec-media-file vmf
application/vocaltec-talker vtk
application/watcherinfo+xml wif
application/wordperfect5.1 wp5
application/x-123 wk
application/x-7th_level_event 7ls
application/x-authorware-bin aab
application/x-authorware-map aam
application/x-authorware-seg aas
application/x-bcpio bcpio
application/x-bleeper bleep
application/x-bzip2 bz2
application/x-cdlink vcd
application/x-chat chat
application/x-chess-pgn pgn
application/x-compress z
application/x-cpio cpio
application/x-cprplayer pqf
application/x-csh csh
application/x-cu-seeme csm
application/x-cult3d-object co
application/x-debian-package deb
application/x-director dcr
application/x-director dir
application/x-director dxr
application/x-dvi dvi
application/x-envoy evy
application/x-futuresplash spl
application/x-gtar gtar
application/x-gzip gz
application/x-hdf hdf
application/x-hep hep
application/x-html+ruby rhtml
application/x-httpd-miva mv
application/x-httpd-php phtml
application/x-ica ica
application/x-imagemap imagemap
application/x-ipix ipx
application/x-ipscript ips
application/x-java-archive jar
application/x-java-jnlp-file jnlp
application/x-java-serialized-object ser
application/x-java-vm class
application/x-javascript js
application/x-koan skp
application/x-latex latex
application/x-mac-compactpro cpt
application/x-maker frm
application/x-mathcad mcd
application/x-midi mid
application/x-mif mif
application/x-msaccess mda
application/x-msdos-program cmd
application/x-msdos-program com
application/x-msdownload base64
application/x-msexcel xls
application/x-msword doc
application/x-netcdf nc
application/x-ns-proxy-autoconfig pac
application/x-pagemaker pm5
application/x-perl pl
application/x-pn-realmedia rp
application/x-python py
application/x-quicktimeplayer qtl
application/x-rar-compressed rar
application/x-ruby rb
application/x-sh sh
application/x-shar shar
application/x-shockwave-flash swf
application/x-sprite spr
application/x-spss sav
application/x-spt spt
application/x-stuffit sit
application/x-sv4cpio sv4cpio
application/x-sv4crc sv4crc
application/x-tar tar
application/x-tcl tcl
application/x-tex tex
application/x-texinfo texinfo
application/x-troff t
application/x-troff-man man
application/x-troff-me me
application/x-troff-ms ms
application/x-twinvq vqf
application/x-twinvq-plugin vqe
application/x-ustar ustar
application/x-vmsbackup bck
application/x-wais-source src
application/x-wingz wz
application/x-word base64
application/x-wordperfect6.1 wp6
application/x-x509-ca-cert crt
application/x-zip-compressed zip
application/xhtml+xml xhtml
application/zip zip
audio/3gpp 3gpp
audio/amr amr
audio/amr-wb awb
audio/basic au
audio/evrc evc
audio/l16 l16
audio/midi mid
audio/mpeg mp3
audio/mpeg mpga
audio/prs.sid sid
audio/qcelp qcp
audio/smv smv
audio/vnd.audiokoz koz
audio/vnd.digital-winds eol
audio/vnd.everad.plj plj
audio/vnd.lucent.voice lvp
audio/vnd.nokia.mobile-xmf mxmf
audio/vnd.nortel.vbk vbk
audio/vnd.nuera.ecelp4800 ecelp4800
audio/vnd.nuera.ecelp7470 ecelp7470
audio/vnd.nuera.ecelp9600 ecelp9600
audio/vnd.sealedmedia.softseal.mpeg smp3
audio/voxware vox
audio/x-aiff aif
audio/x-mid mid
audio/x-midi mid
audio/x-mpeg mp2
audio/x-mpegurl mpu
audio/x-pn-realaudio ra
audio/x-pn-realaudio rm
audio/x-pn-realaudio-plugin rpm
audio/x-realaudio ra
audio/x-wav wav
chemical/x-csml csm
chemical/x-embl-dl-nucleotide emb
chemical/x-gaussian-cube cube
chemical/x-gaussian-input gau
chemical/x-jcamp-dx jdx
chemical/x-mdl-molfile mol
chemical/x-mdl-rxnfile rxn
chemical/x-mdl-tgf tgf
chemical/x-mopac-input mop
chemical/x-pdb pdb
chemical/x-rasmol scr
chemical/x-xyz xyz
drawing/dwf dwf
drawing/x-dwf dwf
i-world/i-vrml ivr
image/bmp bmp
image/cewavelet wif
image/cis-cod cod
image/fif fif
image/gif gif
image/ief ief
image/jp2 jp2
image/jpeg jpeg
image/jpeg jpg
image/jpm jpm
image/jpx jpf
image/pict pic
image/pjpeg jpg
image/png png
image/targa tga
image/tiff tif
image/tiff tiff
image/vn-svf svf
image/vnd.dgn dgn
image/vnd.djvu djvu
image/vnd.dwg dwg
image/vnd.glocalgraphics.pgb pgb
image/vnd.microsoft.icon ico
image/vnd.ms-modi mdi
image/vnd.sealed.png spng
image/vnd.sealedmedia.softseal.gif sgif
image/vnd.sealedmedia.softseal.jpg sjpg
image/vnd.wap.wbmp wbmp
image/x-bmp bmp
image/x-cmu-raster ras
image/x-freehand fh4
image/x-png png
image/x-portable-anymap pnm
image/x-portable-bitmap pbm
image/x-portable-graymap pgm
image/x-portable-pixmap ppm
image/x-rgb rgb
image/x-xbitmap xbm
image/x-xpixmap xpm
image/x-xwindowdump xwd
message/external-body 8bit
message/news 8bit
message/partial 8bit
message/rfc822 8bit
model/iges igs
model/mesh msh
model/vnd.parasolid.transmit.binary x_b
model/vnd.parasolid.transmit.text x_t
model/vrml vrm
model/vrml wrl
multipart/alternative 8bit
multipart/appledouble 8bit
multipart/digest 8bit
multipart/mixed 8bit
multipart/parallel 8bit
text/comma-separated-values csv
text/css css
text/html htm
text/html html
text/plain txt
text/prs.fallenstein.rst rst
text/richtext rtx
text/rtf rtf
text/sgml sgm
text/sgml sgml
text/tab-separated-values tsv
text/vnd.net2phone.commcenter.command ccc
text/vnd.sun.j2me.app-descriptor jad
text/vnd.wap.si si
text/vnd.wap.sl sl
text/vnd.wap.wml wml
text/vnd.wap.wmlscript wmls
text/x-hdml hdml
text/x-setext etx
text/x-sgml sgml
text/x-speech talk
text/x-vcalendar vcs
text/x-vcard vcf
text/xml xml
ulead/vrml uvr
video/3gpp 3gp
video/dl dl
video/gl gl
video/mj2 mj2
video/mpeg mp2
video/mpeg mpeg
video/mpeg mpg
video/quicktime mov
video/quicktime qt
video/vdo vdo
video/vivo viv
video/vnd.fvt fvt
video/vnd.mpegurl mxu
video/vnd.nokia.interleaved-multimedia nim
video/vnd.objectvideo mp4
video/vnd.sealed.mpeg1 s11
video/vnd.sealed.mpeg4 smpg
video/vnd.sealed.swf sswf
video/vnd.sealedmedia.softseal.mov smov
video/vnd.vivo viv
video/vnd.vivo vivo
video/x-fli fli
video/x-ms-asf asf
video/x-ms-wmv wmv
video/x-msvideo avi
video/x-sgi-movie movie
x-chemical/x-pdb pdb
x-chemical/x-xyz xyz
x-conference/x-cooltalk ice
x-drawing/dwf dwf
x-world/x-d96 d
x-world/x-svr svr
x-world/x-vream vrw
x-world/x-vrml wrl
*/

View File

@ -0,0 +1,13 @@
<?php
/**
* ##MODULE_NAME## actions.
*
* @package ##PROJECT_NAME##
* @subpackage ##MODULE_NAME##
* @author ##AUTHOR_NAME##
* @version SVN: $Id: actions.class.php 2288 2006-10-02 15:22:13Z fabien $
*/
class ##MODULE_NAME##Actions extends auto##MODULE_NAME##Actions
{
}

View File

@ -0,0 +1,5 @@
generator:
class: sfPropelAdminGenerator
param:
model_class: ##MODEL_CLASS##
theme: ##THEME##

View File

@ -0,0 +1,435 @@
[?php
/**
* <?php echo $this->getGeneratedModuleName() ?> actions.
*
* @package ##PROJECT_NAME##
* @subpackage <?php echo $this->getGeneratedModuleName() ?>
* @author Fabien Potencier <fabien.potencier@symfony-project.com>
* @version SVN: $Id: actions.class.php 3501 2007-02-18 10:28:17Z fabien $
*/
class <?php echo $this->getGeneratedModuleName() ?>Actions extends sfActions
{
public function executeIndex()
{
return $this->forward('<?php echo $this->getModuleName() ?>', 'list');
}
public function executeList()
{
$this->processSort();
$this->processFilters();
<?php if ($this->getParameterValue('list.filters')): ?>
$this->filters = $this->getUser()->getAttributeHolder()->getAll('sf_admin/<?php echo $this->getSingularName() ?>/filters');
<?php endif ?>
// pager
$this->pager = new sfPropelPager('<?php echo $this->getClassName() ?>', <?php echo $this->getParameterValue('list.max_per_page', 20) ?>);
$c = new Criteria();
$this->addSortCriteria($c);
$this->addFiltersCriteria($c);
$this->pager->setCriteria($c);
$this->pager->setPage($this->getRequestParameter('page', 1));
<?php if ($this->getParameterValue('list.peer_method')): ?>
$this->pager->setPeerMethod('<?php echo $this->getParameterValue('list.peer_method') ?>');
<?php endif ?>
<?php if ($this->getParameterValue('list.peer_count_method')): ?>
$this->pager->setPeerCountMethod('<?php echo $this->getParameterValue('list.peer_count_method') ?>');
<?php endif ?>
$this->pager->init();
}
public function executeCreate()
{
return $this->forward('<?php echo $this->getModuleName() ?>', 'edit');
}
public function executeSave()
{
return $this->forward('<?php echo $this->getModuleName() ?>', 'edit');
}
public function executeEdit()
{
$this-><?php echo $this->getSingularName() ?> = $this->get<?php echo $this->getClassName() ?>OrCreate();
if ($this->getRequest()->getMethod() == sfRequest::POST)
{
$this->update<?php echo $this->getClassName() ?>FromRequest();
$this->save<?php echo $this->getClassName() ?>($this-><?php echo $this->getSingularName() ?>);
$this->setFlash('notice', 'Your modifications have been saved');
if ($this->getRequestParameter('save_and_add'))
{
return $this->redirect('<?php echo $this->getModuleName() ?>/create');
}
else if ($this->getRequestParameter('save_and_list'))
{
return $this->redirect('<?php echo $this->getModuleName() ?>/list');
}
else
{
return $this->redirect('<?php echo $this->getModuleName() ?>/edit?<?php echo $this->getPrimaryKeyUrlParams('this->') ?>);
}
}
else
{
$this->labels = $this->getLabels();
}
}
public function executeDelete()
{
$this-><?php echo $this->getSingularName() ?> = <?php echo $this->getClassName() ?>Peer::retrieveByPk(<?php echo $this->getRetrieveByPkParamsForAction(40) ?>);
$this->forward404Unless($this-><?php echo $this->getSingularName() ?>);
try
{
$this->delete<?php echo $this->getClassName() ?>($this-><?php echo $this->getSingularName() ?>);
}
catch (PropelException $e)
{
$this->getRequest()->setError('delete', 'Could not delete the selected <?php echo sfInflector::humanize($this->getSingularName()) ?>. Make sure it does not have any associated items.');
return $this->forward('<?php echo $this->getModuleName() ?>', 'list');
}
<?php foreach ($this->getColumnCategories('edit.display') as $category): ?>
<?php foreach ($this->getColumns('edit.display', $category) as $name => $column): ?>
<?php $input_type = $this->getParameterValue('edit.fields.'.$column->getName().'.type') ?>
<?php if ($input_type == 'admin_input_file_tag'): ?>
<?php $upload_dir = $this->replaceConstants($this->getParameterValue('edit.fields.'.$column->getName().'.upload_dir')) ?>
$currentFile = sfConfig::get('sf_upload_dir')."/<?php echo $upload_dir ?>/".$this-><?php echo $this->getSingularName() ?>->get<?php echo $column->getPhpName() ?>();
if (is_file($currentFile))
{
unlink($currentFile);
}
<?php endif; ?>
<?php endforeach; ?>
<?php endforeach; ?>
return $this->redirect('<?php echo $this->getModuleName() ?>/list');
}
public function handleErrorEdit()
{
$this->preExecute();
$this-><?php echo $this->getSingularName() ?> = $this->get<?php echo $this->getClassName() ?>OrCreate();
$this->update<?php echo $this->getClassName() ?>FromRequest();
$this->labels = $this->getLabels();
return sfView::SUCCESS;
}
protected function save<?php echo $this->getClassName() ?>($<?php echo $this->getSingularName() ?>)
{
$<?php echo $this->getSingularName() ?>->save();
<?php foreach ($this->getColumnCategories('edit.display') as $category): ?>
<?php foreach ($this->getColumns('edit.display', $category) as $name => $column): $type = $column->getCreoleType(); ?>
<?php $name = $column->getName() ?>
<?php if ($column->isPrimaryKey()) continue ?>
<?php $credentials = $this->getParameterValue('edit.fields.'.$column->getName().'.credentials') ?>
<?php $input_type = $this->getParameterValue('edit.fields.'.$column->getName().'.type') ?>
<?php
$user_params = $this->getParameterValue('edit.fields.'.$column->getName().'.params');
$user_params = is_array($user_params) ? $user_params : sfToolkit::stringToArray($user_params);
$through_class = isset($user_params['through_class']) ? $user_params['through_class'] : '';
?>
<?php if ($through_class): ?>
<?php
$class = $this->getClassName();
$related_class = sfPropelManyToMany::getRelatedClass($class, $through_class);
$related_table = constant($related_class.'Peer::TABLE_NAME');
$middle_table = constant($through_class.'Peer::TABLE_NAME');
$this_table = constant($class.'Peer::TABLE_NAME');
$related_column = sfPropelManyToMany::getRelatedColumn($class, $through_class);
$column = sfPropelManyToMany::getColumn($class, $through_class);
?>
<?php if ($input_type == 'admin_double_list' || $input_type == 'admin_check_list' || $input_type == 'admin_select_list'): ?>
<?php if ($credentials): $credentials = str_replace("\n", ' ', var_export($credentials, true)) ?>
if ($this->getUser()->hasCredential(<?php echo $credentials ?>))
{
<?php endif; ?>
// Update many-to-many for "<?php echo $name ?>"
$c = new Criteria();
$c->add(<?php echo $through_class ?>Peer::<?php echo strtoupper($column->getColumnName()) ?>, $<?php echo $this->getSingularName() ?>->getPrimaryKey());
<?php echo $through_class ?>Peer::doDelete($c);
$ids = $this->getRequestParameter('associated_<?php echo $name ?>');
if (is_array($ids))
{
foreach ($ids as $id)
{
$<?php echo ucfirst($through_class) ?> = new <?php echo $through_class ?>();
$<?php echo ucfirst($through_class) ?>->set<?php echo $column->getPhpName() ?>($<?php echo $this->getSingularName() ?>->getPrimaryKey());
$<?php echo ucfirst($through_class) ?>->set<?php echo $related_column->getPhpName() ?>($id);
$<?php echo ucfirst($through_class) ?>->save();
}
}
<?php if ($credentials): ?>
}
<?php endif; ?>
<?php endif; ?>
<?php endif; ?>
<?php endforeach; ?>
<?php endforeach; ?>
}
protected function delete<?php echo $this->getClassName() ?>($<?php echo $this->getSingularName() ?>)
{
$<?php echo $this->getSingularName() ?>->delete();
}
protected function update<?php echo $this->getClassName() ?>FromRequest()
{
$<?php echo $this->getSingularName() ?> = $this->getRequestParameter('<?php echo $this->getSingularName() ?>');
<?php foreach ($this->getColumnCategories('edit.display') as $category): ?>
<?php foreach ($this->getColumns('edit.display', $category) as $name => $column): $type = $column->getCreoleType(); ?>
<?php $name = $column->getName() ?>
<?php if ($column->isPrimaryKey()) continue ?>
<?php $credentials = $this->getParameterValue('edit.fields.'.$column->getName().'.credentials') ?>
<?php $input_type = $this->getParameterValue('edit.fields.'.$column->getName().'.type') ?>
<?php if ($credentials): $credentials = str_replace("\n", ' ', var_export($credentials, true)) ?>
if ($this->getUser()->hasCredential(<?php echo $credentials ?>))
{
<?php endif; ?>
<?php if ($input_type == 'admin_input_file_tag'): ?>
<?php $upload_dir = $this->replaceConstants($this->getParameterValue('edit.fields.'.$column->getName().'.upload_dir')) ?>
$currentFile = sfConfig::get('sf_upload_dir')."/<?php echo $upload_dir ?>/".$this-><?php echo $this->getSingularName() ?>->get<?php echo $column->getPhpName() ?>();
if (!$this->getRequest()->hasErrors() && isset($<?php echo $this->getSingularName() ?>['<?php echo $name ?>_remove']))
{
$this-><?php echo $this->getSingularName() ?>->set<?php echo $column->getPhpName() ?>('');
if (is_file($currentFile))
{
unlink($currentFile);
}
}
if (!$this->getRequest()->hasErrors() && $this->getRequest()->getFileSize('<?php echo $this->getSingularName() ?>[<?php echo $name ?>]'))
{
<?php elseif ($type != CreoleTypes::BOOLEAN): ?>
if (isset($<?php echo $this->getSingularName() ?>['<?php echo $name ?>']))
{
<?php endif; ?>
<?php if ($input_type == 'admin_input_file_tag'): ?>
<?php if ($this->getParameterValue('edit.fields.'.$column->getName().'.filename')): ?>
$fileName = "<?php echo str_replace('"', '\\"', $this->replaceConstants($this->getParameterValue('edit.fields.'.$column->getName().'.filename'))) ?>";
<?php else: ?>
$fileName = md5($this->getRequest()->getFileName('<?php echo $this->getSingularName() ?>[<?php echo $name ?>]').time().rand(0, 99999));
<?php endif ?>
$ext = $this->getRequest()->getFileExtension('<?php echo $this->getSingularName() ?>[<?php echo $name ?>]');
if (is_file($currentFile))
{
unlink($currentFile);
}
$this->getRequest()->moveFile('<?php echo $this->getSingularName() ?>[<?php echo $name ?>]', sfConfig::get('sf_upload_dir')."/<?php echo $upload_dir ?>/".$fileName.$ext);
$this-><?php echo $this->getSingularName() ?>->set<?php echo $column->getPhpName() ?>($fileName.$ext);
<?php elseif ($type == CreoleTypes::DATE || $type == CreoleTypes::TIMESTAMP): ?>
if ($<?php echo $this->getSingularName() ?>['<?php echo $name ?>'])
{
try
{
$dateFormat = new sfDateFormat($this->getUser()->getCulture());
<?php $inputPattern = $type == CreoleTypes::DATE ? 'd' : 'g'; ?>
<?php $outputPattern = $type == CreoleTypes::DATE ? 'i' : 'I'; ?>
if (!is_array($<?php echo $this->getSingularName() ?>['<?php echo $name ?>']))
{
$value = $dateFormat->format($<?php echo $this->getSingularName() ?>['<?php echo $name ?>'], '<?php echo $outputPattern ?>', $dateFormat->getInputPattern('<?php echo $inputPattern ?>'));
}
else
{
$value_array = $<?php echo $this->getSingularName() ?>['<?php echo $name ?>'];
$value = $value_array['year'].'-'.$value_array['month'].'-'.$value_array['day'].(isset($value_array['hour']) ? ' '.$value_array['hour'].':'.$value_array['minute'].(isset($value_array['second']) ? ':'.$value_array['second'] : '') : '');
}
$this-><?php echo $this->getSingularName() ?>->set<?php echo $column->getPhpName() ?>($value);
}
catch (sfException $e)
{
// not a date
}
}
else
{
$this-><?php echo $this->getSingularName() ?>->set<?php echo $column->getPhpName() ?>(null);
}
<?php elseif ($type == CreoleTypes::BOOLEAN): ?>
$this-><?php echo $this->getSingularName() ?>->set<?php echo $column->getPhpName() ?>(isset($<?php echo $this->getSingularName() ?>['<?php echo $name ?>']) ? $<?php echo $this->getSingularName() ?>['<?php echo $name ?>'] : 0);
<?php elseif ($column->isForeignKey()): ?>
$this-><?php echo $this->getSingularName() ?>->set<?php echo $column->getPhpName() ?>($<?php echo $this->getSingularName() ?>['<?php echo $name ?>'] ? $<?php echo $this->getSingularName() ?>['<?php echo $name ?>'] : null);
<?php else: ?>
$this-><?php echo $this->getSingularName() ?>->set<?php echo $column->getPhpName() ?>($<?php echo $this->getSingularName() ?>['<?php echo $name ?>']);
<?php endif; ?>
<?php if ($type != CreoleTypes::BOOLEAN): ?>
}
<?php endif; ?>
<?php if ($credentials): ?>
}
<?php endif; ?>
<?php endforeach; ?>
<?php endforeach; ?>
}
protected function get<?php echo $this->getClassName() ?>OrCreate(<?php echo $this->getMethodParamsForGetOrCreate() ?>)
{
if (<?php echo $this->getTestPksForGetOrCreate() ?>)
{
$<?php echo $this->getSingularName() ?> = new <?php echo $this->getClassName() ?>();
}
else
{
$<?php echo $this->getSingularName() ?> = <?php echo $this->getClassName() ?>Peer::retrieveByPk(<?php echo $this->getRetrieveByPkParamsForGetOrCreate() ?>);
$this->forward404Unless($<?php echo $this->getSingularName() ?>);
}
return $<?php echo $this->getSingularName() ?>;
}
protected function processFilters()
{
<?php if ($this->getParameterValue('list.filters')): ?>
if ($this->getRequest()->hasParameter('filter'))
{
$filters = $this->getRequestParameter('filters');
<?php foreach ($this->getColumns('list.filters') as $column): $type = $column->getCreoleType() ?>
<?php if ($type == CreoleTypes::DATE || $type == CreoleTypes::TIMESTAMP): ?>
if (isset($filters['<?php echo $column->getName() ?>']['from']) && $filters['<?php echo $column->getName() ?>']['from'] !== '')
{
$filters['<?php echo $column->getName() ?>']['from'] = sfI18N::getTimestampForCulture($filters['<?php echo $column->getName() ?>']['from'], $this->getUser()->getCulture());
}
if (isset($filters['<?php echo $column->getName() ?>']['to']) && $filters['<?php echo $column->getName() ?>']['to'] !== '')
{
$filters['<?php echo $column->getName() ?>']['to'] = sfI18N::getTimestampForCulture($filters['<?php echo $column->getName() ?>']['to'], $this->getUser()->getCulture());
}
<?php endif; ?>
<?php endforeach; ?>
$this->getUser()->getAttributeHolder()->removeNamespace('sf_admin/<?php echo $this->getSingularName() ?>/filters');
$this->getUser()->getAttributeHolder()->add($filters, 'sf_admin/<?php echo $this->getSingularName() ?>/filters');
}
<?php endif; ?>
}
protected function processSort()
{
if ($this->getRequestParameter('sort'))
{
$this->getUser()->setAttribute('sort', $this->getRequestParameter('sort'), 'sf_admin/<?php echo $this->getSingularName() ?>/sort');
$this->getUser()->setAttribute('type', $this->getRequestParameter('type', 'asc'), 'sf_admin/<?php echo $this->getSingularName() ?>/sort');
}
if (!$this->getUser()->getAttribute('sort', null, 'sf_admin/<?php echo $this->getSingularName() ?>/sort'))
{
<?php if ($sort = $this->getParameterValue('list.sort')): ?>
<?php if (is_array($sort)): ?>
$this->getUser()->setAttribute('sort', '<?php echo $sort[0] ?>', 'sf_admin/<?php echo $this->getSingularName() ?>/sort');
$this->getUser()->setAttribute('type', '<?php echo $sort[1] ?>', 'sf_admin/<?php echo $this->getSingularName() ?>/sort');
<?php else: ?>
$this->getUser()->setAttribute('sort', '<?php echo $sort ?>', 'sf_admin/<?php echo $this->getSingularName() ?>/sort');
$this->getUser()->setAttribute('type', 'asc', 'sf_admin/<?php echo $this->getSingularName() ?>/sort');
<?php endif; ?>
<?php endif; ?>
}
}
protected function addFiltersCriteria($c)
{
<?php if ($this->getParameterValue('list.filters')): ?>
<?php foreach ($this->getColumns('list.filters') as $column): $type = $column->getCreoleType() ?>
<?php if (($column->isPartial() || $column->isComponent()) && $this->getParameterValue('list.fields.'.$column->getName().'.filter_criteria_disabled')) continue ?>
if (isset($this->filters['<?php echo $column->getName() ?>_is_empty']))
{
$criterion = $c->getNewCriterion(<?php echo $this->getPeerClassName() ?>::<?php echo strtoupper($column->getName()) ?>, '');
$criterion->addOr($c->getNewCriterion(<?php echo $this->getPeerClassName() ?>::<?php echo strtoupper($column->getName()) ?>, null, Criteria::ISNULL));
$c->add($criterion);
}
<?php if ($type == CreoleTypes::DATE || $type == CreoleTypes::TIMESTAMP): ?>
else if (isset($this->filters['<?php echo $column->getName() ?>']))
{
if (isset($this->filters['<?php echo $column->getName() ?>']['from']) && $this->filters['<?php echo $column->getName() ?>']['from'] !== '')
{
<?php if ($type == CreoleTypes::DATE): ?>
$criterion = $c->getNewCriterion(<?php echo $this->getPeerClassName() ?>::<?php echo strtoupper($column->getName()) ?>, date('Y-m-d', $this->filters['<?php echo $column->getName() ?>']['from']), Criteria::GREATER_EQUAL);
<?php else: ?>
$criterion = $c->getNewCriterion(<?php echo $this->getPeerClassName() ?>::<?php echo strtoupper($column->getName()) ?>, $this->filters['<?php echo $column->getName() ?>']['from'], Criteria::GREATER_EQUAL);
<?php endif; ?>
}
if (isset($this->filters['<?php echo $column->getName() ?>']['to']) && $this->filters['<?php echo $column->getName() ?>']['to'] !== '')
{
if (isset($criterion))
{
<?php if ($type == CreoleTypes::DATE): ?>
$criterion->addAnd($c->getNewCriterion(<?php echo $this->getPeerClassName() ?>::<?php echo strtoupper($column->getName()) ?>, date('Y-m-d', $this->filters['<?php echo $column->getName() ?>']['to']), Criteria::LESS_EQUAL));
<?php else: ?>
$criterion->addAnd($c->getNewCriterion(<?php echo $this->getPeerClassName() ?>::<?php echo strtoupper($column->getName()) ?>, $this->filters['<?php echo $column->getName() ?>']['to'], Criteria::LESS_EQUAL));
<?php endif; ?>
}
else
{
<?php if ($type == CreoleTypes::DATE): ?>
$criterion = $c->getNewCriterion(<?php echo $this->getPeerClassName() ?>::<?php echo strtoupper($column->getName()) ?>, date('Y-m-d', $this->filters['<?php echo $column->getName() ?>']['to']), Criteria::LESS_EQUAL);
<?php else: ?>
$criterion = $c->getNewCriterion(<?php echo $this->getPeerClassName() ?>::<?php echo strtoupper($column->getName()) ?>, $this->filters['<?php echo $column->getName() ?>']['to'], Criteria::LESS_EQUAL);
<?php endif; ?>
}
}
if (isset($criterion))
{
$c->add($criterion);
}
}
<?php else: ?>
else if (isset($this->filters['<?php echo $column->getName() ?>']) && $this->filters['<?php echo $column->getName() ?>'] !== '')
{
<?php if ($type == CreoleTypes::CHAR || $type == CreoleTypes::VARCHAR || $type == CreoleTypes::LONGVARCHAR): ?>
$c->add(<?php echo $this->getPeerClassName() ?>::<?php echo strtoupper($column->getName()) ?>, strtr($this->filters['<?php echo $column->getName() ?>'], '*', '%'), Criteria::LIKE);
<?php else: ?>
$c->add(<?php echo $this->getPeerClassName() ?>::<?php echo strtoupper($column->getName()) ?>, $this->filters['<?php echo $column->getName() ?>']);
<?php endif; ?>
}
<?php endif; ?>
<?php endforeach; ?>
<?php endif; ?>
}
protected function addSortCriteria($c)
{
if ($sort_column = $this->getUser()->getAttribute('sort', null, 'sf_admin/<?php echo $this->getSingularName() ?>/sort'))
{
$sort_column = <?php echo $this->getClassName() ?>Peer::translateFieldName($sort_column, BasePeer::TYPE_FIELDNAME, BasePeer::TYPE_COLNAME);
if ($this->getUser()->getAttribute('type', null, 'sf_admin/<?php echo $this->getSingularName() ?>/sort') == 'asc')
{
$c->addAscendingOrderByColumn($sort_column);
}
else
{
$c->addDescendingOrderByColumn($sort_column);
}
}
}
protected function getLabels()
{
return array(
<?php foreach ($this->getColumnCategories('edit.display') as $category): ?>
<?php foreach ($this->getColumns('edit.display', $category) as $name => $column): ?>
'<?php echo $this->getSingularName() ?>{<?php echo $column->getName() ?>}' => '<?php $label_name = str_replace("'", "\\'", $this->getParameterValue('edit.fields.'.$column->getName().'.name')); echo $label_name ?><?php if ($label_name): ?>:<?php endif ?>',
<?php endforeach; ?>
<?php endforeach; ?>
);
}
}

View File

@ -0,0 +1,13 @@
<ul class="sf_admin_actions">
<?php $editActions = $this->getParameterValue('edit.actions') ?>
<?php if (null !== $editActions): ?>
<?php foreach ((array) $editActions as $actionName => $params): ?>
<?php if ($actionName == '_delete') continue ?>
<?php echo $this->addCredentialCondition($this->getButtonToAction($actionName, $params, true), $params) ?>
<?php endforeach; ?>
<?php else: ?>
<?php echo $this->getButtonToAction('_list', array(), true) ?>
<?php echo $this->getButtonToAction('_save', array(), true) ?>
<?php echo $this->getButtonToAction('_save_and_add', array(), true) ?>
<?php endif; ?>
</ul>

View File

@ -0,0 +1,86 @@
[?php echo form_tag('<?php echo $this->getModuleName() ?>/save', array(
'id' => 'sf_admin_edit_form',
'name' => 'sf_admin_edit_form',
'multipart' => true,
<?php foreach ($this->getColumnCategories('edit.display') as $category): ?>
<?php foreach ($this->getColumns('edit.display', $category) as $name => $column): ?>
<?php if (false !== strpos($this->getParameterValue('edit.fields.'.$column->getName().'.type'), 'admin_double_list')): ?>
'onsubmit' => 'double_list_submit(); return true;'
<?php break 2; ?>
<?php endif; ?>
<?php endforeach; ?>
<?php endforeach; ?>
)) ?]
<?php foreach ($this->getPrimaryKey() as $pk): ?>
[?php echo object_input_hidden_tag($<?php echo $this->getSingularName() ?>, 'get<?php echo $pk->getPhpName() ?>') ?]
<?php endforeach; ?>
<?php $first = true ?>
<?php foreach ($this->getColumnCategories('edit.display') as $category): ?>
<?php
if ($category[0] == '-')
{
$category_name = substr($category, 1);
$collapse = true;
if ($first)
{
$first = false;
echo "[?php use_javascript(sfConfig::get('sf_prototype_web_dir').'/js/prototype') ?]\n";
echo "[?php use_javascript(sfConfig::get('sf_admin_web_dir').'/js/collapse') ?]\n";
}
}
else
{
$category_name = $category;
$collapse = false;
}
?>
<fieldset id="sf_fieldset_<?php echo preg_replace('/[^a-z0-9_]/', '_', strtolower($category_name)) ?>" class="<?php if ($collapse): ?> collapse<?php endif; ?>">
<?php if ($category != 'NONE'): ?><h2>[?php echo __('<?php echo $category_name ?>') ?]</h2>
<?php endif; ?>
<?php $hides = $this->getParameterValue('edit.hide', array()) ?>
<?php foreach ($this->getColumns('edit.display', $category) as $name => $column): ?>
<?php if (in_array($column->getName(), $hides)) continue ?>
<?php if ($column->isPrimaryKey()) continue ?>
<?php $credentials = $this->getParameterValue('edit.fields.'.$column->getName().'.credentials') ?>
<?php if ($credentials): $credentials = str_replace("\n", ' ', var_export($credentials, true)) ?>
[?php if ($sf_user->hasCredential(<?php echo $credentials ?>)): ?]
<?php endif; ?>
<div class="form-row">
[?php echo label_for('<?php echo $this->getParameterValue("edit.fields.".$column->getName().".label_for", $this->getSingularName()."[".$column->getName()."]") ?>', __($labels['<?php echo $this->getSingularName() ?>{<?php echo $column->getName() ?>}']), '<?php if ($column->isNotNull()): ?>class="required" <?php endif; ?>') ?]
<div class="content[?php if ($sf_request->hasError('<?php echo $this->getSingularName() ?>{<?php echo $column->getName() ?>}')): ?] form-error[?php endif; ?]">
[?php if ($sf_request->hasError('<?php echo $this->getSingularName() ?>{<?php echo $column->getName() ?>}')): ?]
[?php echo form_error('<?php echo $this->getSingularName() ?>{<?php echo $column->getName() ?>}', array('class' => 'form-error-msg')) ?]
[?php endif; ?]
[?php $value = <?php echo $this->getColumnEditTag($column); ?>; echo $value ? $value : '&nbsp;' ?]
<?php echo $this->getHelp($column, 'edit') ?>
</div>
</div>
<?php if ($credentials): ?>
[?php endif; ?]
<?php endif; ?>
<?php endforeach; ?>
</fieldset>
<?php endforeach; ?>
[?php include_partial('edit_actions', array('<?php echo $this->getSingularName() ?>' => $<?php echo $this->getSingularName() ?>)) ?]
</form>
<ul class="sf_admin_actions">
<?php
/*
* WARNING: delete is a form, it must be outside the main form
*/
$editActions = $this->getParameterValue('edit.actions');
?>
<?php if (null === $editActions || (null !== $editActions && array_key_exists('_delete', $editActions))): ?>
<?php echo $this->addCredentialCondition($this->getButtonToAction('_delete', $editActions['_delete'], true), $editActions['_delete']) ?>
<?php endif; ?>
</ul>

View File

@ -0,0 +1,15 @@
[?php if ($sf_request->hasErrors()): ?]
<div class="form-errors">
<h2>[?php echo __('There are some errors that prevent the form to validate') ?]</h2>
<dl>
[?php foreach ($sf_request->getErrorNames() as $name): ?]
<dt>[?php echo __($labels[$name]) ?]</dt>
<dd>[?php echo $sf_request->getError($name) ?]</dd>
[?php endforeach; ?]
</dl>
</div>
[?php elseif ($sf_flash->has('notice')): ?]
<div class="save-ok">
<h2>[?php echo __($sf_flash->get('notice')) ?]</h2>
</div>
[?php endif; ?]

View File

@ -0,0 +1,37 @@
[?php use_helper('Object') ?]
<?php if ($this->getParameterValue('list.filters')): ?>
<div class="sf_admin_filters">
[?php echo form_tag('<?php echo $this->getModuleName() ?>/list', array('method' => 'get')) ?]
<fieldset>
<h2>[?php echo __('filters') ?]</h2>
<?php foreach ($this->getColumns('list.filters') as $column): $type = $column->getCreoleType() ?>
<?php $credentials = $this->getParameterValue('list.fields.'.$column->getName().'.credentials') ?>
<?php if ($credentials): $credentials = str_replace("\n", ' ', var_export($credentials, true)) ?>
[?php if ($sf_user->hasCredential(<?php echo $credentials ?>)): ?]
<?php endif; ?>
<div class="form-row">
<label for="<?php echo $column->getName() ?>">[?php echo __('<?php echo str_replace("'", "\\'", $this->getParameterValue('list.fields.'.$column->getName().'.name')) ?>:') ?]</label>
<div class="content">
[?php echo <?php echo $this->getColumnFilterTag($column) ?> ?]
<?php if ($this->getParameterValue('list.fields.'.$column->getName().'.filter_is_empty')): ?>
<div>[?php echo checkbox_tag('filters[<?php echo $column->getName() ?>_is_empty]', 1, isset($filters['<?php echo $column->getName() ?>_is_empty']) ? $filters['<?php echo $column->getName() ?>_is_empty'] : null) ?]&nbsp;<label for="filters[<?php echo $column->getName() ?>_is_empty]">[?php echo __('is empty') ?]</label></div>
<?php endif; ?>
</div>
</div>
<?php if ($credentials): ?>
[?php endif; ?]
<?php endif; ?>
<?php endforeach; ?>
</fieldset>
<ul class="sf_admin_actions">
<li>[?php echo button_to(__('reset'), '<?php echo $this->getModuleName() ?>/list?filter=filter', 'class=sf_admin_action_reset_filter') ?]</li>
<li>[?php echo submit_tag(__('filter'), 'name=filter class=sf_admin_action_filter') ?]</li>
</ul>
</form>
</div>
<?php endif; ?>

View File

@ -0,0 +1,36 @@
<table cellspacing="0" class="sf_admin_list">
<thead>
<tr>
[?php include_partial('list_th_<?php echo $this->getParameterValue('list.layout', 'tabular') ?>') ?]
<?php if ($this->getParameterValue('list.object_actions')): ?>
<th id="sf_admin_list_th_sf_actions">[?php echo __('Actions') ?]</th>
<?php endif; ?>
</tr>
</thead>
<tbody>
[?php $i = 1; foreach ($pager->getResults() as $<?php echo $this->getSingularName() ?>): $odd = fmod(++$i, 2) ?]
<tr class="sf_admin_row_[?php echo $odd ?]">
[?php include_partial('list_td_<?php echo $this->getParameterValue('list.layout', 'tabular') ?>', array('<?php echo $this->getSingularName() ?>' => $<?php echo $this->getSingularName() ?>)) ?]
[?php include_partial('list_td_actions', array('<?php echo $this->getSingularName() ?>' => $<?php echo $this->getSingularName() ?>)) ?]
</tr>
[?php endforeach; ?]
</tbody>
<tfoot>
<tr><th colspan="<?php echo $this->getParameterValue('list.object_actions') ? count($this->getColumns('list.display')) + 1 : count($this->getColumns('list.display')) ?>">
<div class="float-right">
[?php if ($pager->haveToPaginate()): ?]
[?php echo link_to(image_tag(sfConfig::get('sf_admin_web_dir').'/images/first.png', array('align' => 'absmiddle', 'alt' => __('First'), 'title' => __('First'))), '<?php echo $this->getModuleName() ?>/list?page=1') ?]
[?php echo link_to(image_tag(sfConfig::get('sf_admin_web_dir').'/images/previous.png', array('align' => 'absmiddle', 'alt' => __('Previous'), 'title' => __('Previous'))), '<?php echo $this->getModuleName() ?>/list?page='.$pager->getPreviousPage()) ?]
[?php foreach ($pager->getLinks() as $page): ?]
[?php echo link_to_unless($page == $pager->getPage(), $page, '<?php echo $this->getModuleName() ?>/list?page='.$page) ?]
[?php endforeach; ?]
[?php echo link_to(image_tag(sfConfig::get('sf_admin_web_dir').'/images/next.png', array('align' => 'absmiddle', 'alt' => __('Next'), 'title' => __('Next'))), '<?php echo $this->getModuleName() ?>/list?page='.$pager->getNextPage()) ?]
[?php echo link_to(image_tag(sfConfig::get('sf_admin_web_dir').'/images/last.png', array('align' => 'absmiddle', 'alt' => __('Last'), 'title' => __('Last'))), '<?php echo $this->getModuleName() ?>/list?page='.$pager->getLastPage()) ?]
[?php endif; ?]
</div>
[?php echo format_number_choice('[0] no result|[1] 1 result|(1,+Inf] %1% results', array('%1%' => $pager->getNbResults()), $pager->getNbResults()) ?]
</th></tr>
</tfoot>
</table>

View File

@ -0,0 +1,10 @@
<ul class="sf_admin_actions">
<?php $listActions = $this->getParameterValue('list.actions') ?>
<?php if (null !== $listActions): ?>
<?php foreach ((array) $listActions as $actionName => $params): ?>
<?php echo $this->addCredentialCondition($this->getButtonToAction($actionName, $params, false), $params) ?>
<?php endforeach; ?>
<?php else: ?>
<?php echo $this->getButtonToAction('_create', array(), false) ?>
<?php endif; ?>
</ul>

View File

@ -0,0 +1,8 @@
[?php if ($sf_request->getError('delete')): ?]
<div class="form-errors">
<h2>Could not delete the selected <?php echo sfInflector::humanize($this->getSingularName()) ?></h2>
<ul>
<li>[?php echo $sf_request->getError('delete') ?]</li>
</ul>
</div>
[?php endif; ?]

View File

@ -0,0 +1,9 @@
<?php if ($this->getParameterValue('list.object_actions')): ?>
<td>
<ul class="sf_admin_td_actions">
<?php foreach ($this->getParameterValue('list.object_actions') as $actionName => $params): ?>
<?php echo $this->addCredentialCondition($this->getLinkToAction($actionName, $params, true), $params) ?>
<?php endforeach; ?>
</ul>
</td>
<?php endif; ?>

View File

@ -0,0 +1,16 @@
<td colspan="<?php echo count($this->getColumns('list.display')) ?>">
<?php if ($this->getParameterValue('list.params')): ?>
<?php echo $this->getI18NString('list.params') ?>
<?php else: ?>
<?php $hides = $this->getParameterValue('list.hide', array()) ?>
<?php foreach ($this->getColumns('list.display') as $column): ?>
<?php if (in_array($column->getName(), $hides)) continue ?>
<?php if ($column->isLink()): ?>
[?php echo link_to(<?php echo $this->getColumnListTag($column) ?> ? <?php echo $this->getColumnListTag($column) ?> : __('-'), '<?php echo $this->getModuleName() ?>/edit?<?php echo $this->getPrimaryKeyUrlParams() ?>) ?]
<?php else: ?>
[?php echo <?php echo $this->getColumnListTag($column) ?> ?]
<?php endif; ?>
-
<?php endforeach; ?>
<?php endif; ?>
</td>

View File

@ -0,0 +1,16 @@
<?php $hs = $this->getParameterValue('list.hide', array()) ?>
<?php foreach ($this->getColumns('list.display') as $column): ?>
<?php if (in_array($column->getName(), $hs)) continue ?>
<?php $credentials = $this->getParameterValue('list.fields.'.$column->getName().'.credentials') ?>
<?php if ($credentials): $credentials = str_replace("\n", ' ', var_export($credentials, true)) ?>
[?php if ($sf_user->hasCredential(<?php echo $credentials ?>)): ?]
<?php endif; ?>
<?php if ($column->isLink()): ?>
<td>[?php echo link_to(<?php echo $this->getColumnListTag($column) ?> ? <?php echo $this->getColumnListTag($column) ?> : __('-'), '<?php echo $this->getModuleName() ?>/edit?<?php echo $this->getPrimaryKeyUrlParams() ?>) ?]</td>
<?php else: ?>
<td>[?php echo <?php echo $this->getColumnListTag($column) ?> ?]</td>
<?php endif; ?>
<?php if ($credentials): ?>
[?php endif; ?]
<?php endif; ?>
<?php endforeach; ?>

View File

@ -0,0 +1 @@
[?php include_partial('list_th_tabular') ?]

View File

@ -0,0 +1,24 @@
<?php $hides = $this->getParameterValue('list.hide', array()) ?>
<?php foreach ($this->getColumns('list.display') as $column): ?>
<?php if (in_array($column->getName(), $hides)) continue ?>
<?php $credentials = $this->getParameterValue('list.fields.'.$column->getName().'.credentials') ?>
<?php if ($credentials): $credentials = str_replace("\n", ' ', var_export($credentials, true)) ?>
[?php if ($sf_user->hasCredential(<?php echo $credentials ?>)): ?]
<?php endif; ?>
<th id="sf_admin_list_th_<?php echo $column->getName() ?>">
<?php if ($column->isReal()): ?>
[?php if ($sf_user->getAttribute('sort', null, 'sf_admin/<?php echo $this->getSingularName() ?>/sort') == '<?php echo $column->getName() ?>'): ?]
[?php echo link_to(__('<?php echo str_replace("'", "\\'", $this->getParameterValue('list.fields.'.$column->getName().'.name')) ?>'), '<?php echo $this->getModuleName() ?>/list?sort=<?php echo $column->getName() ?>&type='.($sf_user->getAttribute('type', 'asc', 'sf_admin/<?php echo $this->getSingularName() ?>/sort') == 'asc' ? 'desc' : 'asc')) ?]
([?php echo __($sf_user->getAttribute('type', 'asc', 'sf_admin/<?php echo $this->getSingularName() ?>/sort')) ?])
[?php else: ?]
[?php echo link_to(__('<?php echo str_replace("'", "\\'", $this->getParameterValue('list.fields.'.$column->getName().'.name')) ?>'), '<?php echo $this->getModuleName() ?>/list?sort=<?php echo $column->getName() ?>&type=asc') ?]
[?php endif; ?]
<?php else: ?>
[?php echo __('<?php echo str_replace("'", "\\'", $this->getParameterValue('list.fields.'.$column->getName().'.name')) ?>') ?]
<?php endif; ?>
<?php echo $this->getHelpAsIcon($column, 'list') ?>
</th>
<?php if ($credentials): ?>
[?php endif; ?]
<?php endif; ?>
<?php endforeach; ?>

View File

@ -0,0 +1,22 @@
[?php use_helper('Object', 'Validation', 'ObjectAdmin', 'I18N', 'Date') ?]
[?php use_stylesheet('<?php echo $this->getParameterValue('css', sfConfig::get('sf_admin_web_dir').'/css/main') ?>') ?]
<div id="sf_admin_container">
<h1><?php echo $this->getI18NString('edit.title', 'edit '.$this->getModuleName()) ?></h1>
<div id="sf_admin_header">
[?php include_partial('<?php echo $this->getModuleName() ?>/edit_header', array('<?php echo $this->getSingularName() ?>' => $<?php echo $this->getSingularName() ?>)) ?]
</div>
<div id="sf_admin_content">
[?php include_partial('<?php echo $this->getModuleName() ?>/edit_messages', array('<?php echo $this->getSingularName() ?>' => $<?php echo $this->getSingularName() ?>, 'labels' => $labels)) ?]
[?php include_partial('<?php echo $this->getModuleName() ?>/edit_form', array('<?php echo $this->getSingularName() ?>' => $<?php echo $this->getSingularName() ?>, 'labels' => $labels)) ?]
</div>
<div id="sf_admin_footer">
[?php include_partial('<?php echo $this->getModuleName() ?>/edit_footer', array('<?php echo $this->getSingularName() ?>' => $<?php echo $this->getSingularName() ?>)) ?]
</div>
</div>

View File

@ -0,0 +1,33 @@
[?php use_helper('I18N', 'Date') ?]
[?php use_stylesheet('<?php echo $this->getParameterValue('css', sfConfig::get('sf_admin_web_dir').'/css/main') ?>') ?]
<div id="sf_admin_container">
<h1><?php echo $this->getI18NString('list.title', $this->getModuleName().' list') ?></h1>
<div id="sf_admin_header">
[?php include_partial('<?php echo $this->getModuleName() ?>/list_header', array('pager' => $pager)) ?]
[?php include_partial('<?php echo $this->getModuleName() ?>/list_messages', array('pager' => $pager)) ?]
</div>
<div id="sf_admin_bar">
<?php if ($this->getParameterValue('list.filters')): ?>
[?php include_partial('filters', array('filters' => $filters)) ?]
<?php endif; ?>
</div>
<div id="sf_admin_content">
[?php if (!$pager->getNbResults()): ?]
[?php echo __('no result') ?]
[?php else: ?]
[?php include_partial('<?php echo $this->getModuleName() ?>/list', array('pager' => $pager)) ?]
[?php endif; ?]
[?php include_partial('list_actions') ?]
</div>
<div id="sf_admin_footer">
[?php include_partial('<?php echo $this->getModuleName() ?>/list_footer', array('pager' => $pager)) ?]
</div>
</div>

View File

@ -0,0 +1,13 @@
<?php
/**
* ##MODULE_NAME## actions.
*
* @package ##PROJECT_NAME##
* @subpackage ##MODULE_NAME##
* @author ##AUTHOR_NAME##
* @version SVN: $Id: actions.class.php 2288 2006-10-02 15:22:13Z fabien $
*/
class ##MODULE_NAME##Actions extends auto##MODULE_NAME##Actions
{
}

View File

@ -0,0 +1,5 @@
generator:
class: sfPropelCrudGenerator
param:
model_class: ##MODEL_CLASS##
theme: default

View File

@ -0,0 +1,89 @@
[?php
/**
* <?php echo $this->getGeneratedModuleName() ?> actions.
*
* @package ##PROJECT_NAME##
* @subpackage <?php echo $this->getGeneratedModuleName() ?>
* @author ##AUTHOR_NAME##
* @version SVN: $Id: actions.class.php 3335 2007-01-23 16:19:56Z fabien $
*/
class <?php echo $this->getGeneratedModuleName() ?>Actions extends sfActions
{
public function executeIndex()
{
return $this->forward('<?php echo $this->getModuleName() ?>', 'list');
}
public function executeList()
{
$this-><?php echo $this->getPluralName() ?> = <?php echo $this->getClassName() ?>Peer::doSelect(new Criteria());
}
public function executeShow()
{
$this-><?php echo $this->getSingularName() ?> = <?php echo $this->getClassName() ?>Peer::retrieveByPk(<?php echo $this->getRetrieveByPkParamsForAction(49) ?>);
$this->forward404Unless($this-><?php echo $this->getSingularName() ?>);
}
public function executeCreate()
{
$this-><?php echo $this->getSingularName() ?> = new <?php echo $this->getClassName() ?>();
$this->setTemplate('edit');
}
public function executeEdit()
{
$this-><?php echo $this->getSingularName() ?> = <?php echo $this->getClassName() ?>Peer::retrieveByPk(<?php echo $this->getRetrieveByPkParamsForAction(49) ?>);
$this->forward404Unless($this-><?php echo $this->getSingularName() ?>);
}
public function executeUpdate()
{
if (<?php echo $this->getTestPksForGetOrCreate(false) ?>)
{
$<?php echo $this->getSingularName() ?> = new <?php echo $this->getClassName() ?>();
}
else
{
$<?php echo $this->getSingularName() ?> = <?php echo $this->getClassName() ?>Peer::retrieveByPk(<?php echo $this->getRetrieveByPkParamsForAction(45) ?>);
$this->forward404Unless($<?php echo $this->getSingularName() ?>);
}
<?php foreach ($this->getTableMap()->getColumns() as $name => $column): $type = $column->getCreoleType(); ?>
<?php if ($name == 'CREATED_AT' || $name == 'UPDATED_AT') continue ?>
<?php $name = sfInflector::underscore($column->getPhpName()) ?>
<?php if ($type == CreoleTypes::DATE || $type == CreoleTypes::TIMESTAMP): ?>
if ($this->getRequestParameter('<?php echo $name ?>'))
{
list($d, $m, $y) = sfI18N::getDateForCulture($this->getRequestParameter('<?php echo $name ?>'), $this->getUser()->getCulture());
$<?php echo $this->getSingularName() ?>->set<?php echo $column->getPhpName() ?>("$y-$m-$d");
}
<?php elseif ($type == CreoleTypes::BOOLEAN): ?>
$<?php echo $this->getSingularName() ?>->set<?php echo $column->getPhpName() ?>($this->getRequestParameter('<?php echo $name ?>', 0));
<?php elseif ($column->isForeignKey()): ?>
$<?php echo $this->getSingularName() ?>->set<?php echo $column->getPhpName() ?>($this->getRequestParameter('<?php echo $name ?>') ? $this->getRequestParameter('<?php echo $name ?>') : null);
<?php else: ?>
$<?php echo $this->getSingularName() ?>->set<?php echo $column->getPhpName() ?>($this->getRequestParameter('<?php echo $name ?>'));
<?php endif; ?>
<?php endforeach; ?>
$<?php echo $this->getSingularName() ?>->save();
return $this->redirect('<?php echo $this->getModuleName() ?>/show?<?php echo $this->getPrimaryKeyUrlParams() ?>);
<?php //' ?>
}
public function executeDelete()
{
$<?php echo $this->getSingularName() ?> = <?php echo $this->getClassName() ?>Peer::retrieveByPk(<?php echo $this->getRetrieveByPkParamsForAction(43) ?>);
$this->forward404Unless($<?php echo $this->getSingularName() ?>);
$<?php echo $this->getSingularName() ?>->delete();
return $this->redirect('<?php echo $this->getModuleName() ?>/list');
}
}

View File

@ -0,0 +1,29 @@
[?php use_helper('Object') ?]
[?php echo form_tag('<?php echo $this->getModuleName() ?>/update') ?]
<?php foreach ($this->getPrimaryKey() as $pk): ?>
[?php echo object_input_hidden_tag($<?php echo $this->getSingularName() ?>, 'get<?php echo $pk->getPhpName() ?>') ?]
<?php endforeach; ?>
<table>
<tbody>
<?php foreach ($this->getTableMap()->getColumns() as $name => $column): ?>
<?php if ($column->isPrimaryKey()) continue ?>
<?php if ($name == 'CREATED_AT' || $name == 'UPDATED_AT') continue ?>
<tr>
<th><?php echo sfInflector::humanize(sfInflector::underscore($column->getPhpName())) ?><?php if ($column->isNotNull()): ?>*<?php endif; ?>:</th>
<td>[?php echo <?php echo $this->getCrudColumnEditTag($column) ?> ?]</td>
</tr>
<?php endforeach; ?>
</tbody>
</table>
<hr />
[?php echo submit_tag('save') ?]
[?php if (<?php echo $this->getPrimaryKeyIsSet() ?>): ?]
&nbsp;[?php echo link_to('delete', '<?php echo $this->getModuleName() ?>/delete?<?php echo $this->getPrimaryKeyUrlParams() ?>, 'post=true&confirm=Are you sure?') ?]
&nbsp;[?php echo link_to('cancel', '<?php echo $this->getModuleName() ?>/show?<?php echo $this->getPrimaryKeyUrlParams() ?>) ?]
[?php else: ?]
&nbsp;[?php echo link_to('cancel', '<?php echo $this->getModuleName() ?>/list') ?]
[?php endif; ?]
</form>

View File

@ -0,0 +1,26 @@
<h1><?php echo $this->getModuleName() ?></h1>
<table>
<thead>
<tr>
<?php foreach ($this->getTableMap()->getColumns() as $column): ?>
<th><?php echo sfInflector::humanize(sfInflector::underscore($column->getPhpName())) ?></th>
<?php endforeach; ?>
</tr>
</thead>
<tbody>
[?php foreach ($<?php echo $this->getPluralName() ?> as $<?php echo $this->getSingularName() ?>): ?]
<tr>
<?php foreach ($this->getTableMap()->getColumns() as $column): ?>
<?php if ($column->isPrimaryKey()): ?>
<td>[?php echo link_to($<?php echo $this->getSingularName() ?>->get<?php echo $column->getPhpName() ?>(), '<?php echo $this->getModuleName() ?>/show?<?php echo $this->getPrimaryKeyUrlParams() ?>) ?]</td>
<?php else: ?>
<td>[?php echo $<?php echo $this->getSingularName() ?>->get<?php echo $column->getPhpName() ?>() ?]</td>
<?php endif; ?>
<?php endforeach; ?>
</tr>
[?php endforeach; ?]
</tbody>
</table>
[?php echo link_to ('create', '<?php echo $this->getModuleName() ?>/create') ?]

View File

@ -0,0 +1,13 @@
<table>
<tbody>
<?php foreach ($this->getTableMap()->getColumns() as $column): ?>
<tr>
<th><?php echo sfInflector::humanize(sfInflector::underscore($column->getPhpName())) ?>: </th>
<td>[?= $<?php echo $this->getSingularName() ?>->get<?php echo $column->getPhpName() ?>() ?]</td>
</tr>
<?php endforeach; ?>
</tbody>
</table>
<hr />
[?php echo link_to('edit', '<?php echo $this->getModuleName() ?>/edit?<?php echo $this->getPrimaryKeyUrlParams() ?>) ?]
&nbsp;[?php echo link_to('list', '<?php echo $this->getModuleName() ?>/list') ?]

1
data/symfony/i18n/af.dat Executable file

File diff suppressed because one or more lines are too long

1
data/symfony/i18n/af_ZA.dat Executable file
View File

@ -0,0 +1 @@
a:3:{s:14:"NumberPatterns";a:4:{i:0;s:20:"#,##0.###;-#,##0.###";i:1;s:22:"¤#,##0.00;-¤#,##0.00";i:2;s:6:"#,##0%";i:3;s:3:"#E0";}s:7:"Version";a:1:{i:0;s:3:"1.2";}s:8:"calendar";a:1:{s:9:"gregorian";a:1:{s:16:"DateTimePatterns";a:9:{i:0;s:9:"h:mm:ss a";i:1;s:9:"h:mm:ss a";i:2;s:9:"h:mm:ss a";i:3;s:6:"h:mm a";i:4;s:17:"EEEE dd MMMM yyyy";i:5;s:12:"dd MMMM yyyy";i:6;s:11:"dd MMM yyyy";i:7;s:10:"yyyy/MM/dd";i:8;s:7:"{1} {0}";}}}}

1
data/symfony/i18n/am.dat Executable file

File diff suppressed because one or more lines are too long

1
data/symfony/i18n/am_ET.dat Executable file
View File

@ -0,0 +1 @@
a:4:{s:10:"Currencies";a:2:{s:3:"ETB";a:2:{i:0;s:1:"$";i:1;s:3:"ETB";}s:3:"USD";a:2:{i:0;s:3:"US$";i:1;s:3:"USD";}}s:14:"NumberPatterns";a:4:{i:0;s:20:"#,##0.###;-#,##0.###";i:1;s:22:"¤#,##0.00;-¤#,##0.00";i:2;s:6:"#,##0%";i:3;s:3:"#E0";}s:7:"Version";a:1:{i:0;s:3:"1.2";}s:8:"calendar";a:1:{s:9:"gregorian";a:2:{s:11:"AmPmMarkers";a:2:{i:0;s:9:"ጡዋት";i:1;s:12:"ከሳዓት";}s:16:"DateTimePatterns";a:9:{i:0;s:10:"hh:mm:ss a";i:1;s:10:"hh:mm:ss a";i:2;s:9:"h:mm:ss a";i:3;s:6:"h:mm a";i:4;s:29:"EEEE፣ dd MMMM ቀን yyyy G";i:5;s:12:"dd MMMM yyyy";i:6;s:9:"dd-MMM-yy";i:7;s:8:"dd/MM/yy";i:8;s:7:"{1} {0}";}}}}

1
data/symfony/i18n/ar.dat Executable file

File diff suppressed because one or more lines are too long

1
data/symfony/i18n/ar_AE.dat Executable file
View File

@ -0,0 +1 @@
a:1:{s:7:"Version";a:1:{i:0;s:3:"1.2";}}

1
data/symfony/i18n/ar_BH.dat Executable file
View File

@ -0,0 +1 @@
a:1:{s:7:"Version";a:1:{i:0;s:3:"1.2";}}

1
data/symfony/i18n/ar_DZ.dat Executable file
View File

@ -0,0 +1 @@
a:2:{s:14:"NumberElements";a:12:{i:0;s:2:"٫";i:1;s:2:"٬";i:2;s:1:";";i:3;s:2:"٪";i:4;s:1:"0";i:5;s:1:"#";i:6;s:1:"-";i:7;s:1:"E";i:8;s:3:"‰";i:9;s:3:"∞";i:10;s:3:"<22>";i:11;s:1:"+";}s:7:"Version";a:1:{i:0;s:3:"1.2";}}

1
data/symfony/i18n/ar_EG.dat Executable file
View File

@ -0,0 +1 @@
a:2:{s:7:"Version";a:1:{i:0;s:3:"1.2";}s:8:"calendar";a:1:{s:9:"gregorian";a:1:{s:17:"weekend:intvector";a:4:{i:0;i:6;i:1;i:0;i:2;i:7;i:3;i:86400000;}}}}

1
data/symfony/i18n/ar_IN.dat Executable file
View File

@ -0,0 +1 @@
a:3:{s:14:"NumberPatterns";a:4:{i:0;s:28:"##,##,##0.###;-##,##,##0.###";i:1;s:32:"¤ ##,##,##0.00;-¤ ##,##,##0.00";i:2;s:10:"##,##,##0%";i:3;s:3:"#E0";}s:7:"Version";a:1:{i:0;s:3:"1.2";}s:8:"calendar";a:1:{s:9:"gregorian";a:3:{s:26:"DateTimeElements:intvector";a:2:{i:0;i:2;i:1;i:1;}s:16:"DateTimePatterns";a:9:{i:0;s:11:"h:mm:ss a z";i:1;s:11:"h:mm:ss a z";i:2;s:9:"h:mm:ss a";i:3;s:6:"h:mm a";i:4;s:16:"EEEE d MMMM yyyy";i:5;s:11:"d MMMM yyyy";i:6;s:10:"dd-MM-yyyy";i:7;s:6:"d-M-yy";i:8;s:7:"{1} {0}";}s:17:"weekend:intvector";a:4:{i:0;i:1;i:1;i:0;i:2;i:1;i:3;i:86400000;}}}}

1
data/symfony/i18n/ar_IQ.dat Executable file
View File

@ -0,0 +1 @@
a:2:{s:14:"NumberPatterns";a:4:{i:0;s:20:"#,##0.###;#,##0.###-";i:1;s:26:"¤ #,##0.000;¤ #,##0.000-";i:2;s:6:"#,##0%";i:3;s:3:"#E0";}s:7:"Version";a:1:{i:0;s:3:"1.2";}}

1
data/symfony/i18n/ar_JO.dat Executable file
View File

@ -0,0 +1 @@
a:3:{s:14:"NumberPatterns";a:4:{i:0;s:20:"#,##0.###;#,##0.###-";i:1;s:26:"¤ #,##0.000;¤ #,##0.000-";i:2;s:6:"#,##0%";i:3;s:3:"#E0";}s:7:"Version";a:1:{i:0;s:3:"1.2";}s:8:"calendar";a:1:{s:9:"gregorian";a:2:{s:8:"dayNames";a:1:{s:6:"format";a:1:{s:11:"abbreviated";a:7:{i:0;s:10:"الأحد";i:1;s:14:"الاثنين";i:2;s:16:"الثلاثاء";i:3;s:16:"الأربعاء";i:4;s:12:"الخميس";i:5;s:12:"الجمعة";i:6;s:10:"السبت";}}}s:10:"monthNames";a:1:{s:6:"format";a:2:{s:11:"abbreviated";a:12:{i:0;s:23:"كانون الثاني";i:1;s:8:"شباط";i:2;s:8:"آذار";i:3;s:10:"نيسان";i:4;s:8:"أيار";i:5;s:12:"حزيران";i:6;s:8:"تموز";i:7;s:4:"آب";i:8;s:10:"أيلول";i:9;s:21:"تشرين الأول";i:10;s:23:"تشرين الثاني";i:11;s:21:"كانون الأول";}s:4:"wide";a:12:{i:0;s:23:"كانون الثاني";i:1;s:8:"شباط";i:2;s:8:"آذار";i:3;s:10:"نيسان";i:4;s:8:"أيار";i:5;s:12:"حزيران";i:6;s:8:"تموز";i:7;s:4:"آب";i:8;s:10:"أيلول";i:9;s:21:"تشرين الأول";i:10;s:23:"تشرين الثاني";i:11;s:21:"كانون الأول";}}}}}}

1
data/symfony/i18n/ar_KW.dat Executable file
View File

@ -0,0 +1 @@
a:2:{s:14:"NumberPatterns";a:4:{i:0;s:20:"#,##0.###;#,##0.###-";i:1;s:26:"¤ #,##0.000;¤ #,##0.000-";i:2;s:6:"#,##0%";i:3;s:3:"#E0";}s:7:"Version";a:1:{i:0;s:3:"1.2";}}

1
data/symfony/i18n/ar_LB.dat Executable file
View File

@ -0,0 +1 @@
a:2:{s:7:"Version";a:1:{i:0;s:3:"1.2";}s:8:"calendar";a:1:{s:9:"gregorian";a:2:{s:8:"dayNames";a:1:{s:6:"format";a:1:{s:11:"abbreviated";a:7:{i:0;s:10:"الأحد";i:1;s:14:"الاثنين";i:2;s:16:"الثلاثاء";i:3;s:16:"الأربعاء";i:4;s:12:"الخميس";i:5;s:12:"الجمعة";i:6;s:10:"السبت";}}}s:10:"monthNames";a:1:{s:6:"format";a:2:{s:11:"abbreviated";a:12:{i:0;s:23:"كانون الثاني";i:1;s:8:"شباط";i:2;s:8:"آذار";i:3;s:10:"نيسان";i:4;s:8:"نوار";i:5;s:12:"حزيران";i:6;s:8:"تموز";i:7;s:4:"آب";i:8;s:10:"أيلول";i:9;s:21:"تشرين الأول";i:10;s:23:"تشرين الثاني";i:11;s:21:"كانون الأول";}s:4:"wide";a:12:{i:0;s:23:"كانون الثاني";i:1;s:8:"شباط";i:2;s:8:"آذار";i:3;s:10:"نيسان";i:4;s:8:"نوار";i:5;s:12:"حزيران";i:6;s:8:"تموز";i:7;s:4:"آب";i:8;s:10:"أيلول";i:9;s:21:"تشرين الأول";i:10;s:23:"تشرين الثاني";i:11;s:21:"كانون الأول";}}}}}}

1
data/symfony/i18n/ar_LY.dat Executable file
View File

@ -0,0 +1 @@
a:2:{s:14:"NumberPatterns";a:4:{i:0;s:20:"#,##0.###;#,##0.###-";i:1;s:26:"¤ #,##0.000;¤ #,##0.000-";i:2;s:6:"#,##0%";i:3;s:3:"#E0";}s:7:"Version";a:1:{i:0;s:3:"1.2";}}

1
data/symfony/i18n/ar_MA.dat Executable file
View File

@ -0,0 +1 @@
a:2:{s:14:"NumberElements";a:12:{i:0;s:2:"٫";i:1;s:2:"٬";i:2;s:1:";";i:3;s:2:"٪";i:4;s:1:"0";i:5;s:1:"#";i:6;s:1:"-";i:7;s:1:"E";i:8;s:3:"‰";i:9;s:3:"∞";i:10;s:3:"<22>";i:11;s:1:"+";}s:7:"Version";a:1:{i:0;s:3:"1.2";}}

1
data/symfony/i18n/ar_OM.dat Executable file
View File

@ -0,0 +1 @@
a:1:{s:7:"Version";a:1:{i:0;s:3:"1.2";}}

1
data/symfony/i18n/ar_QA.dat Executable file
View File

@ -0,0 +1 @@
a:3:{s:14:"NumberPatterns";a:4:{i:0;s:18:"###0.###;###0.###-";i:1;s:20:"¤###0.00;-¤###0.00";i:2;s:6:"#,##0%";i:3;s:3:"#E0";}s:7:"Version";a:1:{i:0;s:3:"1.2";}s:8:"calendar";a:1:{s:9:"gregorian";a:1:{s:8:"dayNames";a:1:{s:6:"format";a:1:{s:11:"abbreviated";a:7:{i:0;s:10:"الأحد";i:1;s:14:"الاثنين";i:2;s:16:"الثلاثاء";i:3;s:16:"الأربعاء";i:4;s:12:"الخميس";i:5;s:12:"الجمعة";i:6;s:10:"السبت";}}}}}}

1
data/symfony/i18n/ar_SA.dat Executable file
View File

@ -0,0 +1 @@
a:3:{s:14:"NumberPatterns";a:4:{i:0;s:18:"###0.###;###0.###-";i:1;s:20:"¤###0.00;-¤###0.00";i:2;s:6:"#,##0%";i:3;s:3:"#E0";}s:7:"Version";a:1:{i:0;s:3:"1.2";}s:8:"calendar";a:1:{s:9:"gregorian";a:1:{s:8:"dayNames";a:1:{s:6:"format";a:1:{s:11:"abbreviated";a:7:{i:0;s:10:"الأحد";i:1;s:14:"الاثنين";i:2;s:16:"الثلاثاء";i:3;s:16:"الأربعاء";i:4;s:12:"الخميس";i:5;s:12:"الجمعة";i:6;s:10:"السبت";}}}}}}

1
data/symfony/i18n/ar_SD.dat Executable file
View File

@ -0,0 +1 @@
a:1:{s:7:"Version";a:1:{i:0;s:3:"1.2";}}

1
data/symfony/i18n/ar_SY.dat Executable file
View File

@ -0,0 +1 @@
a:3:{s:14:"NumberPatterns";a:4:{i:0;s:18:"###0.###;###0.###-";i:1;s:20:"¤###0.00;-¤###0.00";i:2;s:6:"#,##0%";i:3;s:3:"#E0";}s:7:"Version";a:1:{i:0;s:3:"1.2";}s:8:"calendar";a:1:{s:9:"gregorian";a:4:{s:26:"DateTimeElements:intvector";a:2:{i:0;i:5;i:1;i:1;}s:8:"dayNames";a:1:{s:6:"format";a:1:{s:11:"abbreviated";a:7:{i:0;s:10:"الأحد";i:1;s:14:"الاثنين";i:2;s:16:"الثلاثاء";i:3;s:16:"الأربعاء";i:4;s:12:"الخميس";i:5;s:12:"الجمعة";i:6;s:10:"السبت";}}}s:10:"monthNames";a:1:{s:6:"format";a:2:{s:11:"abbreviated";a:12:{i:0;s:23:"كانون الثاني";i:1;s:8:"شباط";i:2;s:8:"آذار";i:3;s:10:"نيسان";i:4;s:8:"نوار";i:5;s:12:"حزيران";i:6;s:8:"تموز";i:7;s:4:"آب";i:8;s:10:"أيلول";i:9;s:21:"تشرين الأول";i:10;s:23:"تشرين الثاني";i:11;s:21:"كانون الأول";}s:4:"wide";a:12:{i:0;s:23:"كانون الثاني";i:1;s:8:"شباط";i:2;s:8:"آذار";i:3;s:10:"نيسان";i:4;s:8:"نوار";i:5;s:12:"حزيران";i:6;s:8:"تموز";i:7;s:4:"آب";i:8;s:10:"أيلول";i:9;s:21:"تشرين الأول";i:10;s:23:"تشرين الثاني";i:11;s:21:"كانون الأول";}}}s:17:"weekend:intvector";a:4:{i:0;i:6;i:1;i:0;i:2;i:7;i:3;i:86400000;}}}}

1
data/symfony/i18n/ar_TN.dat Executable file
View File

@ -0,0 +1 @@
a:4:{s:14:"NumberElements";a:12:{i:0;s:2:"٫";i:1;s:2:"٬";i:2;s:1:";";i:3;s:2:"٪";i:4;s:1:"0";i:5;s:1:"#";i:6;s:1:"-";i:7;s:1:"E";i:8;s:3:"‰";i:9;s:3:"∞";i:10;s:3:"<22>";i:11;s:1:"+";}s:14:"NumberPatterns";a:4:{i:0;s:18:"###0.###;###0.###-";i:1;s:20:"¤###0.00;-¤###0.00";i:2;s:6:"#,##0%";i:3;s:3:"#E0";}s:7:"Version";a:1:{i:0;s:3:"1.2";}s:8:"calendar";a:1:{s:9:"gregorian";a:1:{s:8:"dayNames";a:1:{s:6:"format";a:1:{s:11:"abbreviated";a:7:{i:0;s:10:"الأحد";i:1;s:14:"الاثنين";i:2;s:16:"الثلاثاء";i:3;s:16:"الأربعاء";i:4;s:12:"الخميس";i:5;s:12:"الجمعة";i:6;s:10:"السبت";}}}}}}

1
data/symfony/i18n/ar_YE.dat Executable file
View File

@ -0,0 +1 @@
a:3:{s:14:"NumberPatterns";a:4:{i:0;s:18:"###0.###;###0.###-";i:1;s:20:"¤###0.00;-¤###0.00";i:2;s:6:"#,##0%";i:3;s:3:"#E0";}s:7:"Version";a:1:{i:0;s:3:"1.2";}s:8:"calendar";a:1:{s:9:"gregorian";a:1:{s:8:"dayNames";a:1:{s:6:"format";a:1:{s:11:"abbreviated";a:7:{i:0;s:10:"الأحد";i:1;s:14:"الاثنين";i:2;s:16:"الثلاثاء";i:3;s:16:"الأربعاء";i:4;s:12:"الخميس";i:5;s:12:"الجمعة";i:6;s:10:"السبت";}}}}}}

1
data/symfony/i18n/be.dat Executable file
View File

@ -0,0 +1 @@
a:8:{s:9:"Countries";a:1:{s:2:"BY";a:1:{i:0;s:16:"Беларусь";}}s:10:"Currencies";a:1:{s:3:"BYB";a:2:{i:0;s:6:"Руб";i:1;s:3:"BYB";}}s:9:"Languages";a:1:{s:2:"be";a:1:{i:0;s:18:"Беларускі";}}s:12:"LocaleScript";a:1:{i:0;s:4:"Cyrl";}s:14:"NumberElements";a:12:{i:0;s:1:",";i:1;s:2:" ";i:2;s:1:";";i:3;s:1:"%";i:4;s:1:"0";i:5;s:1:"#";i:6;s:1:"-";i:7;s:1:"E";i:8;s:3:"‰";i:9;s:3:"∞";i:10;s:3:"<22>";i:11;s:1:"+";}s:7:"Version";a:1:{i:0;s:3:"1.2";}s:8:"calendar";a:1:{s:9:"gregorian";a:5:{s:26:"DateTimeElements:intvector";a:2:{i:0;i:2;i:1;i:1;}s:16:"DateTimePatterns";a:9:{i:0;s:10:"HH.mm.ss z";i:1;s:10:"HH.mm.ss z";i:2;s:8:"HH.mm.ss";i:3;s:5:"HH.mm";i:4;s:17:"EEEE, d MMMM yyyy";i:5;s:11:"d MMMM yyyy";i:6;s:8:"d.M.yyyy";i:7;s:6:"d.M.yy";i:8;s:7:"{1} {0}";}s:8:"dayNames";a:1:{s:6:"format";a:2:{s:11:"abbreviated";a:7:{i:0;s:4:"нд";i:1;s:4:"пн";i:2;s:4:"аў";i:3;s:4:"ср";i:4;s:4:"чц";i:5;s:4:"пт";i:6;s:4:"сб";}s:4:"wide";a:7:{i:0;s:14:"нядзеля";i:1;s:20:"панядзелак";i:2;s:14:"аўторак";i:3;s:12:"серада";i:4;s:12:"чацвер";i:5;s:14:"пятніца";i:6;s:12:"субота";}}}s:4:"eras";a:1:{s:11:"abbreviated";a:2:{i:0;s:11:"да н.е.";i:1;s:6:"н.е.";}}s:10:"monthNames";a:1:{s:6:"format";a:2:{s:11:"abbreviated";a:12:{i:0;s:6:"сту";i:1;s:6:"лют";i:2;s:6:"сак";i:3;s:6:"кра";i:4;s:6:"май";i:5;s:6:"чэр";i:6;s:6:"ліп";i:7;s:6:"жні";i:8;s:6:"вер";i:9;s:6:"кас";i:10;s:6:"ліс";i:11;s:6:"сне";}s:4:"wide";a:12:{i:0;s:16:"студзень";i:1;s:8:"люты";i:2;s:14:"сакавік";i:3;s:16:"красавік";i:4;s:6:"май";i:5;s:14:"чэрвень";i:6;s:12:"ліпень";i:7;s:14:"жнівень";i:8;s:16:"верасень";i:9;s:20:"кастрычнік";i:10;s:16:"лістапад";i:11;s:14:"снежань";}}}}}s:17:"localPatternChars";a:1:{i:0;s:24:"GanjkHmsSEDFwWxhKzAeugXZ";}}

1
data/symfony/i18n/be_BY.dat Executable file
View File

@ -0,0 +1 @@
a:2:{s:14:"NumberPatterns";a:4:{i:0;s:20:"#,##0.###;-#,##0.###";i:1;s:16:"¤#,##0;-¤#,##0";i:2;s:6:"#,##0%";i:3;s:3:"#E0";}s:7:"Version";a:1:{i:0;s:3:"1.2";}}

1
data/symfony/i18n/bg.dat Executable file

File diff suppressed because one or more lines are too long

1
data/symfony/i18n/bg_BG.dat Executable file
View File

@ -0,0 +1 @@
a:2:{s:14:"NumberPatterns";a:4:{i:0;s:20:"#,##0.###;-#,##0.###";i:1;s:24:"#,##0.00 ¤;-#,##0.00 ¤";i:2;s:6:"#,##0%";i:3;s:3:"#E0";}s:7:"Version";a:1:{i:0;s:3:"1.2";}}

1
data/symfony/i18n/bn.dat Executable file

File diff suppressed because one or more lines are too long

1
data/symfony/i18n/bn_IN.dat Executable file
View File

@ -0,0 +1 @@
a:3:{s:14:"NumberPatterns";a:4:{i:0;s:28:"##,##,##0.###;-##,##,##0.###";i:1;s:32:"¤ ##,##,##0.00;-¤ ##,##,##0.00";i:2;s:10:"##,##,##0%";i:3;s:3:"#E0";}s:7:"Version";a:1:{i:0;s:3:"1.2";}s:8:"calendar";a:1:{s:9:"gregorian";a:3:{s:26:"DateTimeElements:intvector";a:2:{i:0;i:2;i:1;i:1;}s:16:"DateTimePatterns";a:9:{i:0;s:11:"h:mm:ss a z";i:1;s:11:"h:mm:ss a z";i:2;s:9:"h:mm:ss a";i:3;s:6:"h:mm a";i:4;s:16:"EEEE d MMMM yyyy";i:5;s:11:"d MMMM yyyy";i:6;s:10:"dd-MM-yyyy";i:7;s:6:"d-M-yy";i:8;s:7:"{1} {0}";}s:17:"weekend:intvector";a:4:{i:0;i:1;i:1;i:0;i:2;i:1;i:3;i:86400000;}}}}

1
data/symfony/i18n/ca.dat Executable file

File diff suppressed because one or more lines are too long

1
data/symfony/i18n/ca_ES.dat Executable file
View File

@ -0,0 +1 @@
a:2:{s:14:"NumberPatterns";a:4:{i:0;s:20:"#,##0.###;-#,##0.###";i:1;s:24:"#,##0.00 ¤;-#,##0.00 ¤";i:2;s:6:"#,##0%";i:3;s:3:"#E0";}s:7:"Version";a:1:{i:0;s:3:"1.2";}}

1
data/symfony/i18n/cs.dat Executable file

File diff suppressed because one or more lines are too long

1
data/symfony/i18n/cs_CZ.dat Executable file
View File

@ -0,0 +1 @@
a:2:{s:14:"NumberPatterns";a:4:{i:0;s:18:"#,##0.##;-#,##0.##";i:1;s:24:"#,##0.00 ¤;-#,##0.00 ¤";i:2;s:6:"#,##0%";i:3;s:3:"#E0";}s:7:"Version";a:1:{i:0;s:3:"1.2";}}

1
data/symfony/i18n/cy.dat Executable file
View File

@ -0,0 +1 @@
a:5:{s:9:"Countries";a:1:{s:2:"GB";a:1:{i:0;s:12:"Prydain Fawr";}}s:9:"Languages";a:1:{s:2:"cy";a:1:{i:0;s:7:"Cymraeg";}}s:12:"LocaleScript";a:1:{i:0;s:4:"Latn";}s:7:"Version";a:1:{i:0;s:3:"1.2";}s:8:"calendar";a:1:{s:9:"gregorian";a:2:{s:8:"dayNames";a:1:{s:6:"format";a:2:{s:11:"abbreviated";a:7:{i:0;s:3:"Sul";i:1;s:4:"Llun";i:2;s:3:"Maw";i:3;s:3:"Mer";i:4;s:3:"Iau";i:5;s:4:"Gwen";i:6;s:3:"Sad";}s:4:"wide";a:7:{i:0;s:8:"Dydd Sul";i:1;s:9:"Dydd Llun";i:2;s:11:"Dydd Mawrth";i:3;s:12:"Dydd Mercher";i:4;s:8:"Dydd Iau";i:5;s:11:"Dydd Gwener";i:6;s:11:"Dydd Sadwrn";}}}s:10:"monthNames";a:1:{s:6:"format";a:2:{s:11:"abbreviated";a:12:{i:0;s:3:"Ion";i:1;s:5:"Chwef";i:2;s:6:"Mawrth";i:3;s:6:"Ebrill";i:4;s:3:"Mai";i:5;s:3:"Meh";i:6;s:5:"Gorff";i:7;s:4:"Awst";i:8;s:4:"Medi";i:9;s:3:"Hyd";i:10;s:4:"Tach";i:11;s:4:"Rhag";}s:4:"wide";a:12:{i:0;s:6:"Ionawr";i:1;s:8:"Chwefror";i:2;s:6:"Mawrth";i:3;s:6:"Ebrill";i:4;s:3:"Mai";i:5;s:7:"Mehefin";i:6;s:9:"Gorffenaf";i:7;s:4:"Awst";i:8;s:4:"Medi";i:9;s:6:"Hydref";i:10;s:8:"Tachwedd";i:11;s:7:"Rhagfyr";}}}}}}

1
data/symfony/i18n/cy_GB.dat Executable file
View File

@ -0,0 +1 @@
a:3:{s:14:"NumberPatterns";a:4:{i:0;s:20:"#,##0.###;-#,##0.###";i:1;s:22:"¤#,##0.00;-¤#,##0.00";i:2;s:6:"#,##0%";i:3;s:3:"#E0";}s:7:"Version";a:1:{i:0;s:3:"1.2";}s:8:"calendar";a:1:{s:9:"gregorian";a:2:{s:26:"DateTimeElements:intvector";a:2:{i:0;i:2;i:1;i:1;}s:16:"DateTimePatterns";a:9:{i:0;s:10:"HH:mm:ss z";i:1;s:10:"HH:mm:ss z";i:2;s:8:"HH:mm:ss";i:3;s:5:"HH:mm";i:4;s:18:"EEEE, dd MMMM yyyy";i:5;s:12:"dd MMMM yyyy";i:6;s:10:"d MMM yyyy";i:7;s:10:"dd/MM/yyyy";i:8;s:7:"{1} {0}";}}}}

1
data/symfony/i18n/da.dat Executable file

File diff suppressed because one or more lines are too long

1
data/symfony/i18n/da_DK.dat Executable file
View File

@ -0,0 +1 @@
a:2:{s:14:"NumberPatterns";a:4:{i:0;s:20:"#,##0.###;-#,##0.###";i:1;s:24:"¤ #,##0.00;¤ -#,##0.00";i:2;s:6:"#,##0%";i:3;s:3:"#E0";}s:7:"Version";a:1:{i:0;s:3:"1.2";}}

1
data/symfony/i18n/de.dat Executable file

File diff suppressed because one or more lines are too long

1
data/symfony/i18n/de_AT.dat Executable file
View File

@ -0,0 +1 @@
a:2:{s:7:"Version";a:1:{i:0;s:3:"1.2";}s:8:"calendar";a:1:{s:9:"gregorian";a:2:{s:16:"DateTimePatterns";a:9:{i:0;s:13:"HH:mm' Uhr 'z";i:1;s:10:"HH:mm:ss z";i:2;s:8:"HH:mm:ss";i:3;s:5:"HH:mm";i:4;s:19:"EEEE, dd. MMMM yyyy";i:5;s:13:"dd. MMMM yyyy";i:6;s:10:"dd.MM.yyyy";i:7;s:8:"dd.MM.yy";i:8;s:7:"{1} {0}";}s:10:"monthNames";a:1:{s:6:"format";a:2:{s:11:"abbreviated";a:12:{i:0;s:4:"Jän";i:1;s:3:"Feb";i:2;s:4:"Mär";i:3;s:3:"Apr";i:4;s:3:"Mai";i:5;s:3:"Jun";i:6;s:3:"Jul";i:7;s:3:"Aug";i:8;s:3:"Sep";i:9;s:3:"Okt";i:10;s:3:"Nov";i:11;s:3:"Dez";}s:4:"wide";a:12:{i:0;s:7:"Jänner";i:1;s:7:"Februar";i:2;s:5:"März";i:3;s:5:"April";i:4;s:3:"Mai";i:5;s:4:"Juni";i:6;s:4:"Juli";i:7;s:6:"August";i:8;s:9:"September";i:9;s:7:"Oktober";i:10;s:8:"November";i:11;s:8:"Dezember";}}}}}}

1
data/symfony/i18n/de_BE.dat Executable file
View File

@ -0,0 +1 @@
a:4:{s:10:"Currencies";a:1:{s:3:"FRF";a:2:{i:0;s:2:"FF";i:1;s:7:"Franken";}}s:14:"NumberPatterns";a:4:{i:0;s:20:"#,##0.###;-#,##0.###";i:1;s:24:"#,##0.00 ¤;-#,##0.00 ¤";i:2;s:6:"#,##0%";i:3;s:3:"#E0";}s:7:"Version";a:1:{i:0;s:3:"1.2";}s:8:"calendar";a:1:{s:9:"gregorian";a:3:{s:16:"DateTimePatterns";a:9:{i:0;s:24:"HH 'h' mm 'min' ss 's' z";i:1;s:10:"HH:mm:ss z";i:2;s:8:"HH:mm:ss";i:3;s:5:"HH:mm";i:4;s:16:"EEEE d MMMM yyyy";i:5;s:11:"d MMMM yyyy";i:6;s:8:"d-MMM-yy";i:7;s:7:"d/MM/yy";i:8;s:7:"{1} {0}";}s:8:"dayNames";a:1:{s:6:"format";a:1:{s:11:"abbreviated";a:7:{i:0;s:3:"Son";i:1;s:3:"Mon";i:2;s:3:"Die";i:3;s:3:"Mit";i:4;s:3:"Don";i:5;s:3:"Fre";i:6;s:3:"Sam";}}}s:10:"monthNames";a:1:{s:6:"format";a:1:{s:11:"abbreviated";a:12:{i:0;s:3:"Jan";i:1;s:3:"Feb";i:2;s:4:"Mär";i:3;s:3:"Apr";i:4;s:3:"Mai";i:5;s:3:"Jun";i:6;s:3:"Jul";i:7;s:3:"Aug";i:8;s:3:"Sep";i:9;s:3:"Okt";i:10;s:3:"Nov";i:11;s:3:"Dez";}}}}}}

1
data/symfony/i18n/de_CH.dat Executable file
View File

@ -0,0 +1 @@
a:4:{s:9:"Countries";a:11:{s:2:"BD";a:1:{i:0;s:10:"Bangladesh";}s:2:"BN";a:1:{i:0;s:6:"Brunei";}s:2:"BW";a:1:{i:0;s:8:"Botswana";}s:2:"CV";a:1:{i:0;s:9:"Kapverden";}s:2:"DJ";a:1:{i:0;s:8:"Djibouti";}s:2:"GB";a:1:{i:0;s:15:"Grossbritannien";}s:2:"MH";a:1:{i:0;s:15:"Marshall-Inseln";}s:2:"RW";a:1:{i:0;s:6:"Rwanda";}s:2:"SB";a:1:{i:0;s:14:"Salomon-Inseln";}s:2:"ST";a:1:{i:0;s:22:"Sao Tomé und Principe";}s:2:"ZW";a:1:{i:0;s:8:"Zimbabwe";}}s:14:"NumberElements";a:12:{i:0;s:1:".";i:1;s:1:"'";i:2;s:1:";";i:3;s:1:"%";i:4;s:1:"0";i:5;s:1:"#";i:6;s:1:"-";i:7;s:1:"E";i:8;s:3:"‰";i:9;s:3:"∞";i:10;s:3:"<22>";i:11;s:1:"+";}s:14:"NumberPatterns";a:4:{i:0;s:20:"#,##0.###;-#,##0.###";i:1;s:23:"¤ #,##0.00;¤-#,##0.00";i:2;s:6:"#,##0%";i:3;s:3:"#E0";}s:7:"Version";a:1:{i:0;s:3:"1.2";}}

1
data/symfony/i18n/de_DE.dat Executable file
View File

@ -0,0 +1 @@
a:2:{s:14:"NumberPatterns";a:4:{i:0;s:20:"#,##0.###;-#,##0.###";i:1;s:24:"#,##0.00 ¤;-#,##0.00 ¤";i:2;s:6:"#,##0%";i:3;s:3:"#E0";}s:7:"Version";a:1:{i:0;s:3:"1.2";}}

1
data/symfony/i18n/de_LU.dat Executable file
View File

@ -0,0 +1 @@
a:3:{s:10:"Currencies";a:1:{s:3:"LUF";a:3:{i:0;s:1:"F";i:1;s:21:"Luxemburgischer Franc";i:2;a:3:{i:0;s:18:"#,##0 ¤;-#,##0 ¤";i:1;s:1:".";i:2;s:1:",";}}}s:14:"NumberPatterns";a:4:{i:0;s:20:"#,##0.###;-#,##0.###";i:1;s:24:"#,##0.00 ¤;-#,##0.00 ¤";i:2;s:6:"#,##0%";i:3;s:3:"#E0";}s:7:"Version";a:1:{i:0;s:3:"1.2";}}

1
data/symfony/i18n/el.dat Executable file

File diff suppressed because one or more lines are too long

1
data/symfony/i18n/el_GR.dat Executable file
View File

@ -0,0 +1 @@
a:3:{s:10:"Currencies";a:1:{s:3:"GRD";a:3:{i:0;s:6:"Δρχ";i:1;s:6:"Δρχ";i:2;a:3:{i:0;s:24:"#,##0.00 ¤;-#,##0.00 ¤";i:1;s:1:",";i:2;s:1:".";}}}s:14:"NumberPatterns";a:4:{i:0;s:20:"#,##0.###;-#,##0.###";i:1;s:22:"#,##0.00¤;-¤#,##0.00";i:2;s:6:"#,##0%";i:3;s:3:"#E0";}s:7:"Version";a:1:{i:0;s:3:"1.2";}}

Some files were not shown because too many files have changed in this diff Show More