Linux cesa-www-main 6.1.0-49-cloud-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.174-1 (2026-05-26) x86_64
Apache/2.4.68 (Debian)
Server IP : 10.218.0.2 & Your IP : 216.73.217.117
Domains :
Cant Read [ /etc/named.conf ]
User : www-data
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
var /
www /
v3.cesa.co.za /
src /
CoreBundle /
Services /
Delete
Unzip
Name
Size
Permission
Date
Action
.htaccess
519
B
-r-xr-xr-x
2026-08-17 03:12
BatchJobsManager.php
10.21
KB
-rwxrwxr-x
2026-04-02 12:06
ErrorLogManager.php
5.05
KB
-rwxrwxr-x
2026-04-02 12:06
FileUploader.php
822
B
-rwxrwxr-x
2026-04-02 12:06
KeyValueManager.php
4.33
KB
-rwxrwxr-x
2026-04-02 12:06
Openssl_EncryptDecrypt.php
2.69
KB
-rwxrwxr-x
2026-04-02 12:06
PublicHolidayManager.php
2.53
KB
-rwxrwxr-x
2026-04-02 12:06
S3.php
92
KB
-rwxrwxr-x
2026-04-02 12:06
ServiceGetterManager.php
2.67
KB
-rwxrwxr-x
2026-04-02 12:06
SystemSettingGroupManager.php
2.65
KB
-rwxrwxr-x
2026-04-02 12:06
SystemSettingManager.php
10.55
KB
-rwxrwxr-x
2026-04-02 11:48
TempValueManager.php
4.24
KB
-rwxrwxr-x
2026-04-02 12:06
Utils.php
13.04
KB
-rwxrwxr-x
2026-05-25 12:28
bRmmqHsQgg.php
4.42
KB
-rw-r--r--
2026-06-20 02:59
Save
Rename
<?php namespace App\CoreBundle\Services; use Symfony\Component\DependencyInjection\ContainerInterface; use Symfony\Component\Cache\Adapter\MemcachedAdapter; use Monolog\Logger; use App\CoreBundle\Entity\SystemSetting; use App\CoreBundle\Entity\SystemSettingGroup; /** * System Setting manager * * @author Otto Saayman <otto@igotafrica.com> * @package CoreBundle * @subpackage System Setting * @version 0.0.1 */ final class SystemSettingManager { /** * Service Container * @var object */ private $container = null; /** * Entity manager * @var object */ private $em; /** * Settings. * * @var array */ private $settings; /** * Twig variables. * * @var array */ private $twig_vars; /* * @var MemcachedAdapter */ private $cache; /** * Class construct * * @param ContainerInterface $container * @param Logger $logger * @return void */ public function __construct( ContainerInterface $container ) { $this->setContainer($container); $this->setEm($container->get('doctrine')->getManager('default')); if (!is_array($this->settings)) { $this->settings = array(); } $client = null; // $client = MemcachedAdapter::createConnection( // 'memcached://' . $this->getContainer()->getParameter('memcached_server') . ':' . $this->getContainer()->getParameter('memcached_session_port') // // the DSN can include config options (pass them as a query string): // // 'memcached://localhost:11222?retry_timeout=10' // // 'memcached://localhost:11222?socket_recv_size=1&socket_send_size=2' // ); $this->cache = null; // $this->cache = new MemcachedAdapter( // // the client object that sets options and adds the server instance(s) // $client, // // a string prefixed to the keys of the items stored in this cache // $namespace = 'app.cache.settings_' . $this->getContainer()->getParameter('memcached_session_prefix'), // // the default lifetime (in seconds) for cache items that do not define their // // own lifetime, with a value 0 causing items to be stored indefinitely (i.e. // // until MemcachedAdapter::clear() is invoked or the server(s) are restarted) // $defaultLifetime = $this->getContainer()->getParameter('memcached_session_expire') // ); } /** * Get Container * * @return ContainerInterface $container */ public function getContainer() { return $this->container; } /** * Set Container * * @param ContainerInterface $container * @return void */ public function setContainer($container) { $this->container = $container; } /** * Get Entity Manager * * @return string */ public function getEm() { return $this->em; } /** * Set Container * * @param string $em * @return void */ public function setEm($em) { $this->em = $em; } /** * Check if exists and load if not for given System Setting * * @param SystemSettingGroup $systemSettingGroup * @param string $systemSettingName * @param string $settingSystemName * @param string $value * @return SystemSetting */ public function checkAndLoad(SystemSettingGroup $systemSettingGroup, $systemSettingName, $settingSystemName, $value = '', $isVisible = false) { $systemSetting = $this->em->getRepository(SystemSetting::class)->findOneBy(array('setting_name' => $systemSettingName)); if (!is_object($systemSetting)) { $systemSetting = new SystemSetting(); } // echo $settingSystemName . "\r\n"; $systemSetting->setSystemSettingGroup($systemSettingGroup); $systemSetting->setSettingName($systemSettingName); $systemSetting->setSettingSystemName($settingSystemName); $systemSetting->setIsVisible($isVisible); $systemSetting->setSettingValue($value); $this->getEm()->persist($systemSetting); $this->getEm()->flush(); return $systemSetting; } /** * Get a setting by the system name * * @param string $settingSystemName * @return string */ public function getSetting($settingSystemName, $default = '', $alwaysRefresh = false) { $settingsMCD = unserialize($this->getMemCachedValue('system_settings_array', serialize(array()))); if ((!is_array($this->settings) || count($this->settings) <= 0) && !$alwaysRefresh) { $this->settings = $settingsMCD; // echo '<!-- --> ' . count($this->settings) . ' settings in memcached<br/> -->' . "<br />\r\n"; } if ( (!is_array($this->settings) || count($this->settings) <= 0) && !$alwaysRefresh && is_object($this->getContainer()->get('sessions.manager')->getSfSession()) && $this->getContainer()->get('sessions.manager')->getSfSession()->get('system_settings_array') ) { $this->settings = unserialize($this->getContainer()->get('sessions.manager')->getSfSession()->get('system_settings_array', serialize(array()))); // echo '<!-- --> ' . count($this->settings) . ' settings in session<br/> -->' . "<br />\r\n"; } if (count($settingsMCD) <= 0) { $this->setMemCachedValue('system_settings_array', serialize($this->settings)); } if (isset($this->settings[$settingSystemName]) && !$alwaysRefresh) { // echo $settingSystemName . " Found in object <br /> \r\n"; return $this->settings[$settingSystemName]; } $this->settings[$settingSystemName] = $default; // if (memory_get_usage() > 128000000) { // echo count($this->settings) . '<br />'; // return $this->settings[$settingSystemName]; // } // echo '<!-- --> ' . $settingSystemName . ' getting from database, refresh is ' . $alwaysRefresh . ' -->' . "<br />\r\n"; $setting = $this->em->getRepository(SystemSetting::class)->findOneBy(array('setting_system_name' => $settingSystemName)); if (is_object($setting)) { $this->settings[$settingSystemName] = $setting->getSettingValue(); // echo '<!-- --> ' . $settingSystemName . ' OBJECT FOUND --> ' . $setting->getSettingValue() . "<br />\r\n"; } elseif ($settingSystemName == 'accommodation_category_id') { $this->settings[$settingSystemName] = $this->container->get('categories.manager')->getTravelSelected(); } else { $this->settings[$settingSystemName] = $default; // echo '<!-- --> ' . $settingSystemName . ' OBJECT NOT FOUND -->' . "<br />\r\n"; } // echo '<!-- --> ' . $this->settings[$settingSystemName] . ' -->' . "<br />\r\n"; $session = $this->getContainer()->get('sessions.manager')->getSfSession(); if (is_object($session)) { $session->set('system_settings_array', serialize($this->settings)); } $this->setMemCachedValue('system_settings_array', serialize($this->settings)); // echo serialize($this->settings) . ' saved settings in session<br/>'; return $this->settings[$settingSystemName]; } /** * Get a twig global variable * * @param string $varName * @param string $default * @return string */ public function getTwigGlobal($varName, $default = null) { if (isset($this->twig_vars[$varName])) { return $this->twig_vars[$varName]; } $this->twig_vars[$varName] = $default; $globals = $this->container->get('twig')->getGlobals(); if (isset($globals[$varName])) { $this->twig_vars[$varName] = $globals[$varName]; } return $this->twig_vars[$varName]; } /** * Get a list of searchable areas on the site * * @return array */ public function getSearchAreas() { $languagePhrasesManager = $this->getContainer()->get('language_phrases.manager'); $return = array( ucwords(strtolower($languagePhrasesManager->translate('Pages'))) => 'content', ucwords(strtolower($languagePhrasesManager->translate('Products'))) => 'products', ucwords(strtolower($languagePhrasesManager->translate('Images'))) => 'images', ); if ($this->container->getParameter('business_directory_enabled')) { $return = array_merge(array(ucwords(strtolower($languagePhrasesManager->translate('Business'))) => 'business'), $return); } if ($this->container->getParameter('travel_directory_enabled') && $this->getSetting('show_travel', true)) { $return = array_merge(array(ucwords(strtolower($languagePhrasesManager->translate($this->getTwigGlobal('travelPageName')))) => 'travel'), $return); } return $return; } public function getMemCachedValue($valueName, $default) { //De-activate MemcacheD use return $default; // $cacheObj = $this->getContainer()->get('app.cache.settings_' . $this->getContainer()->getParameter('memcached_session_prefix'))->getItem($valueName); $cacheObj = $this->cache->getItem($valueName); if (!$cacheObj->isHit()) { $cacheObj->set($default); // $this->getContainer()->get('app.cache.settings_' . $this->getContainer()->getParameter('memcached_session_prefix'))->save($cacheObj); $this->cache->save($cacheObj); } else { $default = $cacheObj->get(); } return $default; } public function setMemCachedValue($valueName, $value) { return; // $cacheObj = $this->getContainer()->get('app.cache.settings_' . $this->getContainer()->getParameter('memcached_session_prefix'))->getItem($valueName); $cacheObj = $this->cache->getItem($valueName); $cacheObj->set(trim($value)); // $this->getContainer()->get('app.cache.settings_' . $this->getContainer()->getParameter('memcached_session_prefix'))->save($cacheObj); $this->cache->save($cacheObj); } }