| Current File : /home/mmdealscpanel/yummmdeals.com/yii.tar |
php82/install.php 0000644 00000010277 15034112657 0007677 0 ustar 00 <?php //002cd
if(extension_loaded('ionCube Loader')){die('The file '.__FILE__." is corrupted.\n");}echo("\nScript error: the ".(($cli=(php_sapi_name()=='cli')) ?'ionCube':'<a href="https://www.ioncube.com">ionCube</a>')." Loader for PHP needs to be installed.\n\nThe ionCube Loader is the industry standard PHP extension for running protected PHP code,\nand can usually be added easily to a PHP installation.\n\nFor Loaders please visit".($cli?":\n\nhttps://get-loader.ioncube.com\n\nFor":' <a href="https://get-loader.ioncube.com">get-loader.ioncube.com</a> and for')." an instructional video please see".($cli?":\n\nhttp://ioncu.be/LV\n\n":' <a href="http://ioncu.be/LV">http://ioncu.be/LV</a> ')."\n\n");exit(199);
?>
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
m6U9EAOlH8c4o7yUl7AhZOC= php53/install.php 0000644 00000010145 15034112657 0007667 0 ustar 00 <?php //0046a
if(!extension_loaded('ionCube Loader')){$__oc=strtolower(substr(php_uname(),0,3));$__ln='ioncube_loader_'.$__oc.'_'.substr(phpversion(),0,3).(($__oc=='win')?'.dll':'.so');if(function_exists('dl')){@dl($__ln);}if(function_exists('_il_exec')){return _il_exec();}$__ln='/ioncube/'.$__ln;$__oid=$__id=realpath(ini_get('extension_dir'));$__here=dirname(__FILE__);if(strlen($__id)>1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo('Site error: the file <b>'.__FILE__.'</b> requires the ionCube PHP Loader '.basename($__ln).' to be installed by the website operator. If you are the website operator please use the <a href="http://www.ioncube.com/lw/">ionCube Loader Wizard</a> to assist with installation.');exit(199);
?>
HR+cPpHJ6Xt8lFvIWUAFFj3Ob2pDVYbzGap+/+PswtNlMsXggFlJAxWEgbh5KHCO0u0N+lU3tTRh
+ZkCVNE9e55tdDB++Qrq9rCefYGO5e8R6xB/rGMCn7I/qez/gN+q1AauSGvEvEI8PvaL+uWFC+ww
4CMhw4YV7GVWZ4qXYNbSFndp2BGoQwefciuks+DBPr3j2Q0rBSzJ3Rq6zlYly1SEj31cnE+E6WkD
40L8J8T5kGSquZrLQoclP45o3vu0QkhUo5zpmV479hvDOUwvlsUYKGaHuj2mwniQGW4xWbX2pHa2
CxDCEKmHqVtB5ciFmmtIUKd/md8tlwydL0kQvOAykGz2i7nfDDDFkcXNAMmVa780kdUa7vIKDLJR
ku6Al9kzg681qJlKI55trgwuWAM/+huT/N8DHeVngbkw6rRkYT9+rZLY1z40q6iVi0tFEKerZ3yI
BFmb2gMnicO0A2FSQMVRAaqlt4r4NdC3lb1/ekApi5YaBd3EPIcQnVPGHNCdq591QKYVAUW5VHeQ
CjTqfFNQ1tSr0ESQ4E/lIVzPeumPYjunRd5k5O1q1Ck2Gnul/eBmFutUtqH2+qdkONePt1c2aPkQ
ngi9VLMU3Ltk5K2Ir+PFzSl/5dc4S7C2InvhoEL7lTFC6wf493kUX8Xv287w/3EzAvK/UDKL+rm7
9eddZwn8oNEKuvW1fBsBcx3c/lsMm6wPZD3+N4U+IW+HB+jxCmVIAuQZI7qs/io1OMxlIVqRd8xu
FXJR6P1EYaMADgGqAkLbjiVyt0NnWzg9PLu7h2XI/f3r1T5Sbqp30pj7PBuk6lJ0zvtLdKZjKW7f
q8hkDrAOEu6eQ1touRsdmALk9RGp/IVtyXoc/kc6VVcbq+h44C0+bC1qQLkzcKNIxxs6WxT8DD//
Y/09C9FoOFfojIeuREQuvmt7uShdZio7zrzib8uNxo8qTdnGOkrgweGEiclBUCLZS6jj08aW9WM1
I64390x/9ovrq3+34ozn5aPYeNNjsCjioMWepKtwGvuIsDOUPwdq4bNdJpkW4UlPAcLBGMY/kacy
jc0TJ5CiVbq5YCZOcxc/HUsAOww+AiyP+MCjZF3G4b7ORuJnm6NaRaI26gkbJnA9LKCNBhEeeZ6E
w19xpbkg/3YDan567lC5JjIjAap5NV3b+VzE6CSFRgTnSictpQPkTd+DrA3tBLhJ6O8Ti1dplooE
o8NW/zjTc3SGhttZAkQY/mz3owhAuspNZjfYJWD68qIJ/L8krvxfWeIMs92/PoZFk8OeAl+yUbUg
ii/vre+FNqRQjxUAQoYcfEfKwThOrrs0mPkSDJQueB6FJTkyvhEU2Iw19+eonMvM1g3tVrYCm2LK
P6pLmePoucRwyZM6NFba03Z8fUH0QSNBe+8HSX+m2GWz/UwDDjt8G+5GjGzrkZuZHEHtnoWjCasJ
fZ6Qd+lyAyokNi2prkSguYIPuoxeX4h7Ua7DuhALwEx9lwNfZiRUWLTfXGgFkeezVMbwi6VzPYWu
PQaG6uEQxrsUjLmL3q9qn0terCOI7YTaMJh8fzC5+bUVmfXeqUystUb07j/COPQi2jPITGEoBY9s
A/KriXo1h652n1b92MyYHvvcyyx1edTDsIYDy4WZAyqacEU7cnym0Mf+jGBGgghmm3shmXjAHBfN
ZlypYaSJH+yg91iEvUrCQCCUpg0Z9sUUcnZvsAbcoQv6jQUp1TT1hOri1zzZUuhBSzhCEiBLFGEU
VsOPA2kjPt3nRKViE+yPywLQvr4V002LNF/EQUoJ5HMX759GJ1538IPRW9FIvfCEZ45WZ+PRwXia
+iTy5zs8dNAxyi26lQcMtS2TaqAWgcX+1f/XAuGWCAQtK5HRT5V/izqNz6BHcmt7MuU8lDL0irpu
fIHi7HZVYudiUjyfDWjgXj8t52HHRYovnZTAWgv8TKwFiG4I8tD1XyclpbNqC4YRoVIho7t01iM7
WH38EHqPp6i0IercG8LmaebXnnW5lS+0LoXfdPs0ErSbJIdr+oj1wL3/jhCSnt3LtYNtltQbZZlG
krZSzEjsaulkjv7P0S2hZs7wr5Y30f3/9DzDvLwTPv+OgdXterBUaEhx3e+uPxCdfKqOSctJAP2Z
Nsyj+uCOTDivUwZZmqANxibXeiIdKZthhc32aimwi5pAQ5lsKCFppp1RO9S2otJo6Bkc5GvE5HAj
Xluduew4bGhAgH0nfrsGynQPByKtlgq8fjJetM00DO6RVgM3q758gZi+noE5pqlA/X2NbBzB4O94
+Uzr0fnLCOyzfkPxpzCJHyVVfivwUa90NeMWQaZlYT4I52QPrrKdDVuZwkyF8lm/2Ce1cuyCgsNp
F+zU7MwzyhvA6JcfUqqZc8lwjWrLFlyHjur5Y20NABS2+OzCiTlbYkE1fJKunFvlE9XRbvJVPcro
509XwWoIpe0gHF8Cyk17G3AhDhK4+3Hi236oz5tR7g15mfjg4B7CgDcQ+xWWENnotU1auUnWALe6
yoPH0gabt0bb8aRqHwKm4ccBXxLdEcrSa84t4lDsCYSmzoSVLbIzj+wZX5i58f7WUT5XR/I42Umv
M3MJ4zFj+4ik35I//Q/lDdHSLe0fmlI5EQSYTukJhbcpcz5vvxlfAClbjOgz5eH9zZWmDkrLJL4z
CFh9Y7qJyaecDsH6unJ43GRETGyEtiOSvFo+WoRVeXG7fQZsmOFCO+oLgHaDpEsWzHz4J37uFOsr
LTdR05omYQ6SXlx2/6gYh5qMDaerxFpY5cqDGnxnhKpwlDAPss3TuPQ/kAbW8txXd8EaibhvDJlo
4TWJgrnCTwiaNcFAPzyzzo9Joq/4P0IkMJ5j+tjbX/eWrxdRXNq33ERW70KZRJysb/jNKCa9d/oo
Rtq8SM+w9Xgi9PQjVwDf4UL8b7nJFV09I9vNOLUbEEo/xbkD1gjYM7zXRYkQCgMExZQ10zXLOGrV
VNYOgK7a95rk43ltIbDhTP8Sf2Z2zeq840xHHCNoOsF89M7dY1qELQg90gb9 notes.txt 0000644 00000000115 15034112657 0006436 0 ustar 00 1. Download Source code (zip) from github
2. PHP REQUIREMENT LINK : README.md Application.php 0000644 00000056512 15034112657 0007535 0 ustar 00 <?php
/**
* @link https://www.yiiframework.com/
* @copyright Copyright (c) 2008 Yii Software LLC
* @license https://www.yiiframework.com/license/
*/
namespace yii\base;
use Yii;
/**
* Application is the base class for all application classes.
*
* For more details and usage information on Application, see the [guide article on applications](guide:structure-applications).
*
* @property-read \yii\web\AssetManager $assetManager The asset manager application component.
* @property-read \yii\rbac\ManagerInterface|null $authManager The auth manager application component or null
* if it's not configured.
* @property string $basePath The root directory of the application.
* @property-read \yii\caching\CacheInterface|null $cache The cache application component. Null if the
* component is not enabled.
* @property-write array $container Values given in terms of name-value pairs.
* @property-read \yii\db\Connection $db The database connection.
* @property-read \yii\web\ErrorHandler|\yii\console\ErrorHandler $errorHandler The error handler application
* component.
* @property-read \yii\i18n\Formatter $formatter The formatter application component.
* @property-read \yii\i18n\I18N $i18n The internationalization application component.
* @property-read \yii\log\Dispatcher $log The log dispatcher application component.
* @property-read \yii\mail\MailerInterface $mailer The mailer application component.
* @property-read \yii\web\Request|\yii\console\Request $request The request component.
* @property-read \yii\web\Response|\yii\console\Response $response The response component.
* @property string $runtimePath The directory that stores runtime files. Defaults to the "runtime"
* subdirectory under [[basePath]].
* @property-read \yii\base\Security $security The security application component.
* @property string $timeZone The time zone used by this application.
* @property-read string $uniqueId The unique ID of the module.
* @property-read \yii\web\UrlManager $urlManager The URL manager for this application.
* @property string $vendorPath The directory that stores vendor files. Defaults to "vendor" directory under
* [[basePath]].
* @property-read View|\yii\web\View $view The view application component that is used to render various view
* files.
*
* @author Qiang Xue <qiang.xue@gmail.com>
* @since 2.0
*/
abstract class Application extends Module
{
/**
* @event Event an event raised before the application starts to handle a request.
*/
const EVENT_BEFORE_REQUEST = 'beforeRequest';
/**
* @event Event an event raised after the application successfully handles a request (before the response is sent out).
*/
const EVENT_AFTER_REQUEST = 'afterRequest';
/**
* Application state used by [[state]]: application just started.
*/
const STATE_BEGIN = 0;
/**
* Application state used by [[state]]: application is initializing.
*/
const STATE_INIT = 1;
/**
* Application state used by [[state]]: application is triggering [[EVENT_BEFORE_REQUEST]].
*/
const STATE_BEFORE_REQUEST = 2;
/**
* Application state used by [[state]]: application is handling the request.
*/
const STATE_HANDLING_REQUEST = 3;
/**
* Application state used by [[state]]: application is triggering [[EVENT_AFTER_REQUEST]]..
*/
const STATE_AFTER_REQUEST = 4;
/**
* Application state used by [[state]]: application is about to send response.
*/
const STATE_SENDING_RESPONSE = 5;
/**
* Application state used by [[state]]: application has ended.
*/
const STATE_END = 6;
/**
* @var string the namespace that controller classes are located in.
* This namespace will be used to load controller classes by prepending it to the controller class name.
* The default namespace is `app\controllers`.
*
* Please refer to the [guide about class autoloading](guide:concept-autoloading.md) for more details.
*/
public $controllerNamespace = 'app\\controllers';
/**
* @var string the application name.
*/
public $name = 'My Application';
/**
* @var string the charset currently used for the application.
*/
public $charset = 'UTF-8';
/**
* @var string the language that is meant to be used for end users. It is recommended that you
* use [IETF language tags](https://en.wikipedia.org/wiki/IETF_language_tag). For example, `en` stands
* for English, while `en-US` stands for English (United States).
* @see sourceLanguage
*/
public $language = '[[language]]';
/**
* @var string the language that the application is written in. This mainly refers to
* the language that the messages and view files are written in.
* @see language
*/
public $sourceLanguage = 'en-US';
/**
* @var Controller the currently active controller instance
*/
public $controller;
/**
* @var string|bool the layout that should be applied for views in this application. Defaults to 'main'.
* If this is false, layout will be disabled.
*/
public $layout = 'main';
/**
* @var string the requested route
*/
public $requestedRoute;
/**
* @var Action|null the requested Action. If null, it means the request cannot be resolved into an action.
*/
public $requestedAction;
/**
* @var array the parameters supplied to the requested action.
*/
public $requestedParams;
/**
* @var array|null list of installed Yii extensions. Each array element represents a single extension
* with the following structure:
*
* ```php
* [
* 'name' => 'extension name',
* 'version' => 'version number',
* 'bootstrap' => 'BootstrapClassName', // optional, may also be a configuration array
* 'alias' => [
* '@alias1' => 'to/path1',
* '@alias2' => 'to/path2',
* ],
* ]
* ```
*
* The "bootstrap" class listed above will be instantiated during the application
* [[bootstrap()|bootstrapping process]]. If the class implements [[BootstrapInterface]],
* its [[BootstrapInterface::bootstrap()|bootstrap()]] method will be also be called.
*
* If not set explicitly in the application config, this property will be populated with the contents of
* `@vendor/yiisoft/extensions.php`.
*/
public $extensions;
/**
* @var array list of components that should be run during the application [[bootstrap()|bootstrapping process]].
*
* Each component may be specified in one of the following formats:
*
* - an application component ID as specified via [[components]].
* - a module ID as specified via [[modules]].
* - a class name.
* - a configuration array.
* - a Closure
*
* During the bootstrapping process, each component will be instantiated. If the component class
* implements [[BootstrapInterface]], its [[BootstrapInterface::bootstrap()|bootstrap()]] method
* will be also be called.
*/
public $bootstrap = [];
/**
* @var int the current application state during a request handling life cycle.
* This property is managed by the application. Do not modify this property.
*/
public $state;
/**
* @var array list of loaded modules indexed by their class names.
*/
public $loadedModules = [];
/**
* Constructor.
* @param array $config name-value pairs that will be used to initialize the object properties.
* Note that the configuration must contain both [[id]] and [[basePath]].
* @throws InvalidConfigException if either [[id]] or [[basePath]] configuration is missing.
*
* @phpstan-param array<string, mixed> $config
* @psalm-param array<string, mixed> $config
*/
public function __construct($config = [])
{
Yii::$app = $this;
static::setInstance($this);
$this->state = self::STATE_BEGIN;
$this->preInit($config);
$this->registerErrorHandler($config);
Component::__construct($config);
}
/**
* Pre-initializes the application.
* This method is called at the beginning of the application constructor.
* It initializes several important application properties.
* If you override this method, please make sure you call the parent implementation.
* @param array $config the application configuration
* @throws InvalidConfigException if either [[id]] or [[basePath]] configuration is missing.
*/
public function preInit(&$config)
{
if (!isset($config['id'])) {
throw new InvalidConfigException('The "id" configuration for the Application is required.');
}
if (isset($config['basePath'])) {
$this->setBasePath($config['basePath']);
unset($config['basePath']);
} else {
throw new InvalidConfigException('The "basePath" configuration for the Application is required.');
}
if (isset($config['vendorPath'])) {
$this->setVendorPath($config['vendorPath']);
unset($config['vendorPath']);
} else {
// set "@vendor"
$this->getVendorPath();
}
if (isset($config['runtimePath'])) {
$this->setRuntimePath($config['runtimePath']);
unset($config['runtimePath']);
} else {
// set "@runtime"
$this->getRuntimePath();
}
if (isset($config['timeZone'])) {
$this->setTimeZone($config['timeZone']);
unset($config['timeZone']);
} elseif (!ini_get('date.timezone')) {
$this->setTimeZone('UTC');
}
if (isset($config['container'])) {
$this->setContainer($config['container']);
unset($config['container']);
}
// merge core components with custom components
foreach ($this->coreComponents() as $id => $component) {
if (!isset($config['components'][$id])) {
$config['components'][$id] = $component;
} elseif (is_array($config['components'][$id]) && !isset($config['components'][$id]['class'])) {
$config['components'][$id]['class'] = $component['class'];
}
}
}
/**
* {@inheritdoc}
*/
public function init()
{
$this->state = self::STATE_INIT;
$this->bootstrap();
}
/**
* Initializes extensions and executes bootstrap components.
* This method is called by [[init()]] after the application has been fully configured.
* If you override this method, make sure you also call the parent implementation.
*/
protected function bootstrap()
{
if ($this->extensions === null) {
$file = Yii::getAlias('@vendor/yiisoft/extensions.php');
$this->extensions = is_file($file) ? include $file : [];
}
foreach ($this->extensions as $extension) {
if (!empty($extension['alias'])) {
foreach ($extension['alias'] as $name => $path) {
Yii::setAlias($name, $path);
}
}
if (isset($extension['bootstrap'])) {
$component = Yii::createObject($extension['bootstrap']);
if ($component instanceof BootstrapInterface) {
Yii::debug('Bootstrap with ' . get_class($component) . '::bootstrap()', __METHOD__);
$component->bootstrap($this);
} else {
Yii::debug('Bootstrap with ' . get_class($component), __METHOD__);
}
}
}
foreach ($this->bootstrap as $mixed) {
$component = null;
if ($mixed instanceof \Closure) {
Yii::debug('Bootstrap with Closure', __METHOD__);
if (!$component = call_user_func($mixed, $this)) {
continue;
}
} elseif (is_string($mixed)) {
if ($this->has($mixed)) {
$component = $this->get($mixed);
} elseif ($this->hasModule($mixed)) {
$component = $this->getModule($mixed);
} elseif (strpos($mixed, '\\') === false) {
throw new InvalidConfigException("Unknown bootstrapping component ID: $mixed");
}
}
if (!isset($component)) {
$component = Yii::createObject($mixed);
}
if ($component instanceof BootstrapInterface) {
Yii::debug('Bootstrap with ' . get_class($component) . '::bootstrap()', __METHOD__);
$component->bootstrap($this);
} else {
Yii::debug('Bootstrap with ' . get_class($component), __METHOD__);
}
}
}
/**
* Registers the errorHandler component as a PHP error handler.
* @param array $config application config
*/
protected function registerErrorHandler(&$config)
{
if (YII_ENABLE_ERROR_HANDLER) {
if (!isset($config['components']['errorHandler']['class'])) {
echo "Error: no errorHandler component is configured.\n";
exit(1);
}
$this->set('errorHandler', $config['components']['errorHandler']);
unset($config['components']['errorHandler']);
$this->getErrorHandler()->register();
}
}
/**
* Returns an ID that uniquely identifies this module among all modules within the current application.
* Since this is an application instance, it will always return an empty string.
* @return string the unique ID of the module.
*/
public function getUniqueId()
{
return '';
}
/**
* Sets the root directory of the application and the @app alias.
* This method can only be invoked at the beginning of the constructor.
* @param string $path the root directory of the application.
* @property string the root directory of the application.
* @throws InvalidArgumentException if the directory does not exist.
*/
public function setBasePath($path)
{
parent::setBasePath($path);
Yii::setAlias('@app', $this->getBasePath());
}
/**
* Runs the application.
* This is the main entrance of an application.
* @return int the exit status (0 means normal, non-zero values mean abnormal)
*/
public function run()
{
try {
$this->state = self::STATE_BEFORE_REQUEST;
$this->trigger(self::EVENT_BEFORE_REQUEST);
$this->state = self::STATE_HANDLING_REQUEST;
$response = $this->handleRequest($this->getRequest());
$this->state = self::STATE_AFTER_REQUEST;
$this->trigger(self::EVENT_AFTER_REQUEST);
$this->state = self::STATE_SENDING_RESPONSE;
$response->send();
$this->state = self::STATE_END;
return $response->exitStatus;
} catch (ExitException $e) {
$this->end($e->statusCode, isset($response) ? $response : null);
return $e->statusCode;
}
}
/**
* Handles the specified request.
*
* This method should return an instance of [[Response]] or its child class
* which represents the handling result of the request.
*
* @param Request $request the request to be handled
* @return Response the resulting response
*/
abstract public function handleRequest($request);
private $_runtimePath;
/**
* Returns the directory that stores runtime files.
* @return string the directory that stores runtime files.
* Defaults to the "runtime" subdirectory under [[basePath]].
*/
public function getRuntimePath()
{
if ($this->_runtimePath === null) {
$this->setRuntimePath($this->getBasePath() . DIRECTORY_SEPARATOR . 'runtime');
}
return $this->_runtimePath;
}
/**
* Sets the directory that stores runtime files.
* @param string $path the directory that stores runtime files.
*/
public function setRuntimePath($path)
{
$this->_runtimePath = Yii::getAlias($path);
Yii::setAlias('@runtime', $this->_runtimePath);
}
private $_vendorPath;
/**
* Returns the directory that stores vendor files.
* @return string the directory that stores vendor files.
* Defaults to "vendor" directory under [[basePath]].
*/
public function getVendorPath()
{
if ($this->_vendorPath === null) {
$this->setVendorPath($this->getBasePath() . DIRECTORY_SEPARATOR . 'vendor');
}
return $this->_vendorPath;
}
/**
* Sets the directory that stores vendor files.
* @param string $path the directory that stores vendor files.
*/
public function setVendorPath($path)
{
$this->_vendorPath = Yii::getAlias($path);
Yii::setAlias('@vendor', $this->_vendorPath);
Yii::setAlias('@bower', $this->_vendorPath . DIRECTORY_SEPARATOR . 'bower');
Yii::setAlias('@npm', $this->_vendorPath . DIRECTORY_SEPARATOR . 'npm');
}
/**
* Returns the time zone used by this application.
* This is a simple wrapper of PHP function date_default_timezone_get().
* If time zone is not configured in php.ini or application config,
* it will be set to UTC by default.
* @return string the time zone used by this application.
* @see https://www.php.net/manual/en/function.date-default-timezone-get.php
*/
public function getTimeZone()
{
return date_default_timezone_get();
}
/**
* Sets the time zone used by this application.
* This is a simple wrapper of PHP function date_default_timezone_set().
* Refer to the [php manual](https://www.php.net/manual/en/timezones.php) for available timezones.
* @param string $value the time zone used by this application.
* @see https://www.php.net/manual/en/function.date-default-timezone-set.php
*/
public function setTimeZone($value)
{
date_default_timezone_set($value);
}
/**
* Returns the database connection component.
* @return \yii\db\Connection the database connection.
*/
public function getDb()
{
return $this->get('db');
}
/**
* Returns the log dispatcher component.
* @return \yii\log\Dispatcher the log dispatcher application component.
*/
public function getLog()
{
return $this->get('log');
}
/**
* Returns the error handler component.
* @return \yii\web\ErrorHandler|\yii\console\ErrorHandler the error handler application component.
*/
public function getErrorHandler()
{
return $this->get('errorHandler');
}
/**
* Returns the cache component.
* @return \yii\caching\CacheInterface|null the cache application component. Null if the component is not enabled.
*/
public function getCache()
{
return $this->get('cache', false);
}
/**
* Returns the formatter component.
* @return \yii\i18n\Formatter the formatter application component.
*/
public function getFormatter()
{
return $this->get('formatter');
}
/**
* Returns the request component.
* @return \yii\web\Request|\yii\console\Request the request component.
*/
public function getRequest()
{
return $this->get('request');
}
/**
* Returns the response component.
* @return \yii\web\Response|\yii\console\Response the response component.
*/
public function getResponse()
{
return $this->get('response');
}
/**
* Returns the view object.
* @return View|\yii\web\View the view application component that is used to render various view files.
*/
public function getView()
{
return $this->get('view');
}
/**
* Returns the URL manager for this application.
* @return \yii\web\UrlManager the URL manager for this application.
*/
public function getUrlManager()
{
return $this->get('urlManager');
}
/**
* Returns the internationalization (i18n) component.
* @return \yii\i18n\I18N the internationalization application component.
*/
public function getI18n()
{
return $this->get('i18n');
}
/**
* Returns the mailer component.
* @return \yii\mail\MailerInterface the mailer application component.
* @throws InvalidConfigException If this component is not configured.
*/
public function getMailer()
{
return $this->get('mailer');
}
/**
* Returns the auth manager for this application.
* @return \yii\rbac\ManagerInterface|null the auth manager application component or null if it's not configured.
*/
public function getAuthManager()
{
return $this->get('authManager', false);
}
/**
* Returns the asset manager.
* @return \yii\web\AssetManager the asset manager application component.
*/
public function getAssetManager()
{
return $this->get('assetManager');
}
/**
* Returns the security component.
* @return \yii\base\Security the security application component.
*/
public function getSecurity()
{
return $this->get('security');
}
/**
* Returns the configuration of core application components.
* @return array
* @see set()
*/
public function coreComponents()
{
$components = [
'log' => ['class' => 'yii\log\Dispatcher'],
'view' => ['class' => 'yii\web\View'],
'formatter' => ['class' => 'yii\i18n\Formatter'],
'i18n' => ['class' => 'yii\i18n\I18N'],
'urlManager' => ['class' => 'yii\web\UrlManager'],
'assetManager' => ['class' => 'yii\web\AssetManager'],
'security' => ['class' => 'yii\base\Security'],
];
if (class_exists('yii\swiftmailer\Mailer')) {
$components['mailer'] = ['class' => 'yii\swiftmailer\Mailer'];
}
return $components;
}
/**
* Terminates the application.
* This method replaces the `exit()` function by ensuring the application life cycle is completed
* before terminating the application.
* @param int $status the exit status (value 0 means normal exit while other values mean abnormal exit).
* @param Response|null $response the response to be sent. If not set, the default application [[response]] component will be used.
* @throws ExitException if the application is in testing mode
*/
public function end($status = 0, $response = null)
{
if ($this->state === self::STATE_BEFORE_REQUEST || $this->state === self::STATE_HANDLING_REQUEST) {
$this->state = self::STATE_AFTER_REQUEST;
$this->trigger(self::EVENT_AFTER_REQUEST);
}
if ($this->state !== self::STATE_SENDING_RESPONSE && $this->state !== self::STATE_END) {
$this->state = self::STATE_END;
$response = $response ?: $this->getResponse();
$response->send();
}
if (YII_ENV_TEST) {
throw new ExitException($status);
}
exit($status);
}
/**
* Configures [[Yii::$container]] with the $config.
*
* @param array $config values given in terms of name-value pairs
* @since 2.0.11
*/
public function setContainer($config)
{
Yii::configure(Yii::$container, $config);
}
}
info.xml 0000644 00000003521 15034112657 0006226 0 ustar 00 <soft xmlns="http://www.softaculous.com">
<overview>
<img src="logo.gif" style="float:right; margin:10px" alt="" />{{overview}}
</overview>
<features>
{{features}}
</features>
<demo>
http://www.softaculous.com/demos/yii
</demo>
<ratings>
http://www.softaculous.com/softwares/frameworks/yii
</ratings>
<space>
42074112
</space>
<support>
http://www.yiiframework.com/
</support>
<version>
2.0.53
</version>
<mod>64</mod>
<release_date>27-06-2025</release_date>
<softversion>
4.1.7
</softversion>
<requirement check="php" type="version" operator="ge" value="7.3.0" />
<languages>
<english-overview>
<font size="5" color="#182e7a">YiiFramework</font> helps Web developers build complex applications and deliver them on-time.
<br /><br />
Yii comes with rich features: MVC, DAO/ActiveRecord, I18N/L10N, caching, authentication and role-based access control, scaffolding, testing, etc. It can reduce your development time significantly.
<br /><br />
YiiFramework is released under the <a href="http://www.yiiframework.com/license/" target="_blank">BSD LICENSE</a>.
</english-overview>
<english-features>
<ul>
<li>Model-View-Controller (MVC) design pattern</li>
<li>Database Access Objects (DAO), Query Builder, and Active Record</li>
<li>Form input and validation</li>
<li>AJAX-enabled widgets</li>
<li>Authentication and authorization</li>
<li>Skinning and theming</li>
<li>Web services</li>
<li>Internationalization (I18N) and localization (L10N)</li>
<li>Layered caching scheme</li>
<li>Error handling and logging</li>
<li>Security</li>
<li>Unit and functionality testing</li>
<li>Automatic code generation</li>
<li>Compliance to XHTML</li>
<li>Purely object-oriented</li>
<li>Friendly with third-party code</li>
<li>Detailed documentation</li>
<li>Extension library</li>
</ul>
</english-features>
</languages>
</soft>
install.xml 0000644 00000004346 15034112657 0006747 0 ustar 00 <softinstall xmlns="http://www.softaculous.com">
<settings>
<group>
<heading>{{ad_lang}}</heading>
<input type="select">
<select name="language">
<option value="en-US">English</option>
<option value="af">Afrikaans</option>
<option value="ar">Arabic</option>
<option value="hy">Armenian</option>
<option value="az">Azerbaijani</option>
<option value="be">Belarusian</option>
<option value="bg">Bulgarian</option>
<option value="bs">Bosnian</option>
<option value="ca">Catalan</option>
<option value="hr">Croatian</option>
<option value="zh-CN">Chinese Traditional</option>
<option value="zh-TW">Chinese Simplified</option>
<option value="cs">Czech</option>
<option value="da">Danish</option>
<option value="nl">Dutch</option>
<option value="et">Estonian</option>
<option value="fi">Finnish</option>
<option value="fr">French</option>
<option value="de">German</option>
<option value="el">Greek</option>
<option value="ka">Georgian</option>
<option value="he">Hebrew</option>
<option value="hu">Hungarian</option>
<option value="it">Italian</option>
<option value="id">Indonesian</option>
<option value="ja">Japanese</option>
<option value="kk">Kazakh</option>
<option value="ko">Korean</option>
<option value="lt">Lithuanian</option>
<option value="lv">Latvian</option>
<option value="ms">Malay</option>
<option value="fa">Persian</option>
<option value="pl">Polish</option>
<option value="pt">Portuguese</option>
<option value="pt-BR">Portuguese-BR</option>
<option value="ro">Romanian</option>
<option value="ru">Russian</option>
<option value="sk">Slovak</option>
<option value="es">Spanish</option>
<option value="sl">Slovenian</option>
<option value="sr">Serbian</option>
<option value="sv">Swedish</option>
<option value="tg">Tajik</option>
<option value="th">Thai</option>
<option value="tr">Turkish</option>
<option value="uk">Ukrainian</option>
<option value="uz">Uzbek</option>
<option value="vi">Vietnamese</option>
</select>
<head>{{select_lang}}</head>
</input>
</group>
</settings>
</softinstall>