__ __ __ __ _____ _ _ _____ _ _ _ | \/ | \ \ / / | __ \ (_) | | / ____| | | | | | \ / |_ __\ V / | |__) | __ ___ ____ _| |_ ___ | (___ | |__ ___| | | | |\/| | '__|> < | ___/ '__| \ \ / / _` | __/ _ \ \___ \| '_ \ / _ \ | | | | | | |_ / . \ | | | | | |\ V / (_| | || __/ ____) | | | | __/ | | |_| |_|_(_)_/ \_\ |_| |_| |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1 if you need WebShell for Seo everyday contact me on Telegram Telegram Address : @jackleetFor_More_Tools:
<?php
/**
* @package akeebabackup
* @copyright Copyright (c)2006-2024 Nicholas K. Dionysopoulos / Akeeba Ltd
* @license GNU General Public License version 3, or later
*/
namespace Akeeba\Component\AkeebaBackup\Administrator\Mixin;
defined('_JEXEC') || die();
use Akeeba\Component\AkeebaBackup\Administrator\Helper\PushMessages;
use Akeeba\Engine\Factory;
use Akeeba\Engine\Platform;
use Joomla\CMS\Factory as JoomlaFactory;
use Joomla\CMS\MVC\Factory\MVCFactoryInterface;
use Joomla\Database\DatabaseInterface;
trait AkeebaEngineTrait
{
public function loadAkeebaEngine(?DatabaseInterface $dbo = null, ?MVCFactoryInterface $factory = null)
{
$app = property_exists($this, 'app') ? $this->app : JoomlaFactory::getApplication();
if (empty($dbo) || empty($factory))
{
$componentExtension = $app->bootComponent('com_akeebabackup');
}
$factory = $factory ?? $componentExtension->getMVCFactory();
$dbo = $dbo ?? $componentExtension->getContainer()->get(DatabaseInterface::class);
// Load Composer dependencies
$autoloader = require_once JPATH_ADMINISTRATOR . '/components/com_akeebabackup/vendor/autoload.php';
// Necessary defines for Akeeba Engine
if (!defined('AKEEBAENGINE'))
{
define('AKEEBAENGINE', 1);
}
if (!defined('AKEEBAROOT'))
{
define('AKEEBAROOT', realpath(__DIR__ . '/../../vendor/akeeba/engine/engine'));
}
if (!defined('AKEEBA_CACERT_PEM'))
{
$caCertPath = class_exists('\\Composer\\CaBundle\\CaBundle')
? \Composer\CaBundle\CaBundle::getBundledCaBundlePath()
: JPATH_LIBRARIES . '/src/Http/Transport/cacert.pem';
define('AKEEBA_CACERT_PEM', $caCertPath);
}
// Make sure we have a profile set throughout the component's lifetime
$profile_id = $app->getSession()->get('akeebabackup.profile', null);
if (is_null($profile_id))
{
$app->getSession()->set('akeebabackup.profile', 1);
}
// Tell the Akeeba Engine where to load the platform from
Platform::addPlatform('joomla', __DIR__ . '/../../platform/Joomla');
// Apply a custom path for the encrypted settings key file
Factory::getSecureSettings()->setKeyFilename(JPATH_ADMINISTRATOR . '/components/com_akeebabackup/serverkey.php');
// Add our custom push notifications handler
Factory::setPushClass(PushMessages::class);
PushMessages::$mvcFactory = $factory;
// !!! IMPORTANT !!! DO NOT REMOVE! This triggers Akeeba Engine's autoloader. Without it the next line fails!
$DO_NOT_REMOVE = Platform::getInstance();
// Set the DBO to the Akeeba Engine platform for Joomla
Platform\Joomla::setDbDriver($dbo);
}
public function loadAkeebaEngineConfiguration()
{
$akeebaEngineConfig = Factory::getConfiguration();
Platform::getInstance()->load_configuration();
unset($akeebaEngineConfig);
}
}| Name | Type | Size | Permission | Actions |
|---|---|---|---|---|
| AkeebaEngineTrait.php | File | 2.71 KB | 0664 |
|
| ControllerAjaxTrait.php | File | 873 B | 0664 |
|
| ControllerCustomACLTrait.php | File | 2.22 KB | 0664 |
|
| ControllerEventsTrait.php | File | 1.9 KB | 0664 |
|
| ControllerProfileAccessTrait.php | File | 1.11 KB | 0664 |
|
| ControllerProfileRestrictionTrait.php | File | 961 B | 0664 |
|
| ControllerRegisterTasksTrait.php | File | 1.49 KB | 0664 |
|
| ControllerReusableModelsTrait.php | File | 2.01 KB | 0664 |
|
| GetErrorsFromExceptionsTrait.php | File | 1.26 KB | 0664 |
|
| GetPropertiesAwareTrait.php | File | 977 B | 0664 |
|
| ModelChmodTrait.php | File | 1.67 KB | 0664 |
|
| ModelExclusionFilterTrait.php | File | 3.19 KB | 0664 |
|
| ModelStateFixTrait.php | File | 1.65 KB | 0664 |
|
| RunPluginsTrait.php | File | 10.34 KB | 0664 |
|
| TriggerEventTrait.php | File | 2.64 KB | 0664 |
|
| ViewBackupStartTimeTrait.php | File | 2.44 KB | 0664 |
|
| ViewLoadAnyTemplateTrait.php | File | 7.39 KB | 0664 |
|
| ViewProfileIdAndNameTrait.php | File | 1.95 KB | 0664 |
|
| ViewProfileListTrait.php | File | 1.63 KB | 0664 |
|
| ViewTaskBasedEventsTrait.php | File | 621 B | 0664 |
|