<?php defined('C5_EXECUTE') or die(_("Access Denied.")) ?>
<?php if (is_object($f)) { ?>
<form class="formify-form <?php if ($disableDefaultCSS != '1') { ?>with-style<?php } ?>"
id="formify-form-<?php echo $f->fID; ?>-<?php echo intval($bID); ?>" data-bid="<?php echo intval($bID); ?>"
data-fid="<?php echo $f->fID; ?>" data-rid="<?php echo isset($rID) ? intval($rID) : 0; ?>"
data-context="<?php echo isset($context) ?? ''; ?>" enctype="multipart/form-data" method="post"
action="<?php echo DIR_REL; ?>/index.php/formify/go/<?php echo $f->fID; ?>" novalidate>
<input type="hidden" name="rID" value="<?php echo isset($rID) ?? ''; ?>"/>
<input type="hidden" name="token" value="<?php echo isset($token) ?? ''; ?>"/>
<input type="hidden" name="source" value="<?php echo htmlentities(URL::to(Page::getCurrentPage())); ?>"/>
<input type="hidden" name="referrer" value="<?php echo htmlentities($_SERVER['HTTP_REFERER']); ?>"/>
<?php echo Core::make('token')->output('formify_submit'); ?>
<?php if (count($f->getSections()) > 0) { ?>
<?php foreach ($f->getSections() as $s) { ?>
<div class="formify-section" data-formify-section-index="<?php echo $s->index; ?>">
<?php if (count($s->getFields()) > 0) { ?>
<?php foreach ($s->getFields() as $ff) { ?>
<div
class="formify-field-container <?php echo $ff->containerClass ?? ''; ?>"
id="formify-field-container-<?php echo $ff->ffID; ?>"
data-ffid="<?php echo $ff->ffID; ?>"
data-field-type="<?php echo $ff->getType()->handle; ?>"
data-rule-count="<?php echo count((array)$ff->getRules()); ?>"
data-unmet-rule-count="<?php echo count((array)$ff->getRules()); ?>"
data-rule-action="<?php echo $ff->ruleAction ?? ''; ?>"
data-rule-requirement="<?php echo $ff->ruleRequirement ?? ''; ?>"
>
<?php $ff->render(); ?>
</div><!--/.formify-field-container-->
<?php } ?>
<?php } ?>
<?php if ($s->index == count($f->getSections())) { //Append additional info to last section ?>
"Undefined array key "HTTP_REFERER""
<?php defined('C5_EXECUTE') or die(_("Access Denied.")) ?>
<?php if (is_object($f)) { ?>
<form class="formify-form <?php if ($disableDefaultCSS != '1') { ?>with-style<?php } ?>"
id="formify-form-<?php echo $f->fID; ?>-<?php echo intval($bID); ?>" data-bid="<?php echo intval($bID); ?>"
data-fid="<?php echo $f->fID; ?>" data-rid="<?php echo isset($rID) ? intval($rID) : 0; ?>"
data-context="<?php echo isset($context) ?? ''; ?>" enctype="multipart/form-data" method="post"
action="<?php echo DIR_REL; ?>/index.php/formify/go/<?php echo $f->fID; ?>" novalidate>
<input type="hidden" name="rID" value="<?php echo isset($rID) ?? ''; ?>"/>
<input type="hidden" name="token" value="<?php echo isset($token) ?? ''; ?>"/>
<input type="hidden" name="source" value="<?php echo htmlentities(URL::to(Page::getCurrentPage())); ?>"/>
<input type="hidden" name="referrer" value="<?php echo htmlentities($_SERVER['HTTP_REFERER']); ?>"/>
<?php echo Core::make('token')->output('formify_submit'); ?>
<?php if (count($f->getSections()) > 0) { ?>
<?php foreach ($f->getSections() as $s) { ?>
<div class="formify-section" data-formify-section-index="<?php echo $s->index; ?>">
<?php if (count($s->getFields()) > 0) { ?>
<?php foreach ($s->getFields() as $ff) { ?>
<div
class="formify-field-container <?php echo $ff->containerClass ?? ''; ?>"
id="formify-field-container-<?php echo $ff->ffID; ?>"
data-ffid="<?php echo $ff->ffID; ?>"
data-field-type="<?php echo $ff->getType()->handle; ?>"
data-rule-count="<?php echo count((array)$ff->getRules()); ?>"
data-unmet-rule-count="<?php echo count((array)$ff->getRules()); ?>"
data-rule-action="<?php echo $ff->ruleAction ?? ''; ?>"
data-rule-requirement="<?php echo $ff->ruleRequirement ?? ''; ?>"
>
<?php $ff->render(); ?>
</div><!--/.formify-field-container-->
<?php } ?>
<?php } ?>
<?php if ($s->index == count($f->getSections())) { //Append additional info to last section ?>
2
"Undefined array key "HTTP_REFERER""
"/home/balance/concrete-cms/apps/public_html/application/blocks/formify_form/view.php"
14
$app = Application::getFacadeApplication();
// If you hook into this event and use `preventRendering()`,
// you can prevent the block from being displayed.
$event = new BlockBeforeRender($this->block);
$app->make('director')->dispatch('on_block_before_render', $event);
return $event->proceed();
};
if (!$shouldRender()) {
return;
}
unset($shouldRender);
extract($scopeItems);
if (!$this->outputContent) {
ob_start();
include $this->template;
$this->outputContent = ob_get_contents();
ob_end_clean();
}
// In case the view changes any scope items, the block header/footer
// could break without extracting the scope items again. This can happen
// if the block view changes any local variables such as the `$b`
// variable which is possible as they can be user defined.
extract($scopeItems);
// The translatable texts in the block header/footer need to be printed
// out in the system language.
$loc = Localization::getInstance();
$loc->pushActiveContext(Localization::CONTEXT_UI);
if ($this->blockViewHeaderFile) {
include $this->blockViewHeaderFile;
}
$this->controller->registerViewAssets($this->outputContent);
"/home/balance/concrete-cms/apps/public_html/application/blocks/formify_form/view.php"
$helpers = $this->controller->getHelperObjects();
$return = array_merge($this->scopeItems, $sets, $helpers);
} else {
$return = $this->scopeItems;
}
$return['view'] = $this;
$return['controller'] = $this->controller;
return $return;
}
public function render($state = false)
{
if ($this instanceof View) {
$this->setRequestInstance($this);
}
$this->start($state);
$this->setupRender();
$this->startRender();
$scopeItems = $this->getScopeItems();
$contents = $this->renderViewContents($scopeItems);
$contents = $this->postProcessViewContents($contents);
$response = $this->finishRender($contents);
if ($this instanceof View) {
$this->revertRequestInstance();
}
return $response;
}
public function renderViewContents($scopeItems)
{
if (file_exists($this->template)) {
extract($scopeItems);
ob_start();
$this->onBeforeGetContents();
include $this->template;
$this->onAfterGetContents();
$contents = ob_get_contents();
ob_end_clean();
array:13 [ "bID" => 474 "fID" => 6 "requireSSL" => null "disableDefaultCSS" => null "controller" => Concrete\Package\Formify\Block\FormifyForm\Controller {#4888} "captcha" => false "timestamp" => "f3ade824a0" "f" => Concrete\Package\Formify\Src\FormifyForm {#4871} "form" => Concrete\Core\Form\Service\Form {#3662} "view" => Concrete\Core\Block\View\BlockView {#4889} "b" => Concrete\Core\Block\Block {#4858} "bt" => Concrete\Core\Entity\Block\BlockType\BlockType {#4837} "a" => Concrete\Core\Area\Area {#4829} ]
$loc = Localization::getInstance();
// now, we iterate through these block groups (which are actually arrays of block objects), and display them on the page
$loc->pushActiveContext(Localization::CONTEXT_UI);
if ($this->showControls && $c->isEditMode() && $ap->canViewAreaControls()) {
View::element('block_area_header', array('a' => $this));
} else {
View::element('block_area_header_view', array('a' => $this));
}
$loc->popActiveContext();
foreach ($blocksToDisplay as $b) {
$bv = new BlockView($b);
$bv->setAreaObject($this);
$p = new Permissions($b);
if ($p->canViewBlock()) {
if (!$c->isEditMode()) {
echo $this->enclosingStart;
}
$bv->render('view');
if (!$c->isEditMode()) {
echo $this->enclosingEnd;
}
}
}
$loc->pushActiveContext(Localization::CONTEXT_UI);
if ($this->showControls && $c->isEditMode() && $ap->canViewAreaControls()) {
View::element('block_area_footer', array('a' => $this));
} else {
View::element('block_area_footer_view', array('a' => $this));
}
$loc->popActiveContext();
}
/**
* Exports the area to content format.
*
* @param \SimpleXMLElement $p
* @param Page $page
"view"
use Concrete\Core\Page\Stack\Stack;
use Concrete\Core\Permission\Checker;
defined('C5_EXECUTE') or die('Access Denied.');
/* @var int $stID */
$c = Page::getCurrentPage();
$cp = new Checker($c);
if ($cp->canViewPageVersions()) {
$stack = Stack::getByID($stID);
} else {
$stack = Stack::getByID($stID, 'ACTIVE');
}
if ($stack) {
$axp = new Checker($stack);
if ($axp->canRead()) {
$ax = Area::get($stack, STACKS_AREA_NAME);
$ax->disableControls();
$ax->display($stack);
}
}
Concrete\Core\Page\Stack\Stack {#4846}
$app = Application::getFacadeApplication();
// If you hook into this event and use `preventRendering()`,
// you can prevent the block from being displayed.
$event = new BlockBeforeRender($this->block);
$app->make('director')->dispatch('on_block_before_render', $event);
return $event->proceed();
};
if (!$shouldRender()) {
return;
}
unset($shouldRender);
extract($scopeItems);
if (!$this->outputContent) {
ob_start();
include $this->template;
$this->outputContent = ob_get_contents();
ob_end_clean();
}
// In case the view changes any scope items, the block header/footer
// could break without extracting the scope items again. This can happen
// if the block view changes any local variables such as the `$b`
// variable which is possible as they can be user defined.
extract($scopeItems);
// The translatable texts in the block header/footer need to be printed
// out in the system language.
$loc = Localization::getInstance();
$loc->pushActiveContext(Localization::CONTEXT_UI);
if ($this->blockViewHeaderFile) {
include $this->blockViewHeaderFile;
}
$this->controller->registerViewAssets($this->outputContent);
"/home/balance/concrete-cms/apps/public_html/concrete/blocks/core_stack_display/view.php"
$helpers = $this->controller->getHelperObjects();
$return = array_merge($this->scopeItems, $sets, $helpers);
} else {
$return = $this->scopeItems;
}
$return['view'] = $this;
$return['controller'] = $this->controller;
return $return;
}
public function render($state = false)
{
if ($this instanceof View) {
$this->setRequestInstance($this);
}
$this->start($state);
$this->setupRender();
$this->startRender();
$scopeItems = $this->getScopeItems();
$contents = $this->renderViewContents($scopeItems);
$contents = $this->postProcessViewContents($contents);
$response = $this->finishRender($contents);
if ($this instanceof View) {
$this->revertRequestInstance();
}
return $response;
}
public function renderViewContents($scopeItems)
{
if (file_exists($this->template)) {
extract($scopeItems);
ob_start();
$this->onBeforeGetContents();
include $this->template;
$this->onAfterGetContents();
$contents = ob_get_contents();
ob_end_clean();
array:9 [ "bID" => 273 "stID" => 228 "stIDNeutral" => null "controller" => Concrete\Block\CoreStackDisplay\Controller {#4813} "form" => Concrete\Core\Form\Service\Form {#3662} "view" => Concrete\Core\Block\View\BlockView {#4556} "b" => Concrete\Core\Block\Block {#4822} "bt" => Concrete\Core\Entity\Block\BlockType\BlockType {#4816} "a" => Concrete\Core\Area\Area {#4570} ]
$loc = Localization::getInstance();
// now, we iterate through these block groups (which are actually arrays of block objects), and display them on the page
$loc->pushActiveContext(Localization::CONTEXT_UI);
if ($this->showControls && $c->isEditMode() && $ap->canViewAreaControls()) {
View::element('block_area_header', array('a' => $this));
} else {
View::element('block_area_header_view', array('a' => $this));
}
$loc->popActiveContext();
foreach ($blocksToDisplay as $b) {
$bv = new BlockView($b);
$bv->setAreaObject($this);
$p = new Permissions($b);
if ($p->canViewBlock()) {
if (!$c->isEditMode()) {
echo $this->enclosingStart;
}
$bv->render('view');
if (!$c->isEditMode()) {
echo $this->enclosingEnd;
}
}
}
$loc->pushActiveContext(Localization::CONTEXT_UI);
if ($this->showControls && $c->isEditMode() && $ap->canViewAreaControls()) {
View::element('block_area_footer', array('a' => $this));
} else {
View::element('block_area_footer_view', array('a' => $this));
}
$loc->popActiveContext();
}
/**
* Exports the area to content format.
*
* @param \SimpleXMLElement $p
* @param Page $page
"view"
<div class="stage" role="main">
<div class="lower-content">
<div class="page-wrap">
<div class="left-stage">
<div class="subpage-breadcrumbs">
<?php include ('breadcrumbs.php'); ?>
</div>
<?php
$a = new Area('Left Content');
$a->display($c);
?>
</div>
<div class="right-stage">
<div class="right-stage-wrapper">
<?php
$a = new Area('Right Content');
$a->display($c);
?>
</div>
</div>
<div class="clearfix"></div>
</div>
</div>
</div>
<footer>
<?php require('elements/footer.php'); ?>
</footer>
</div>
</div>
<?php require('elements/foot.php'); ?>
</body>
</html>
Concrete\Core\Page\Page {#2142}
ob_end_clean();
return $innerContent;
}
/**
* Render the file set to $this->template
* @param $scopeItems
* @return string
*/
protected function renderTemplate($scopeItems, $innerContent)
{
// Extract the items into the current scope
extract($scopeItems);
ob_start();
// Fire a `before` event
$this->onBeforeGetContents();
include $this->template;
// Fire an `after` event
$this->onAfterGetContents();
$contents = ob_get_contents();
ob_end_clean();
return $contents;
}
public function finishRender($contents)
{
$event = new \Symfony\Component\EventDispatcher\GenericEvent();
$event->setArgument('view', $this);
Events::dispatch('on_render_complete', $event);
return $contents;
}
/**
* Function responsible for outputting header items.
"/home/balance/concrete-cms/apps/public_html/application/themes/ae/subpage.php"
protected function onBeforeGetContents()
{
$this->themeObject->registerAssets();
$event = new \Symfony\Component\EventDispatcher\GenericEvent();
$event->setArgument('view', $this);
Events::dispatch('on_before_render', $event);
}
public function renderViewContents($scopeItems)
{
$contents = '';
// Render the main view file
if ($this->innerContentFile) {
$contents = $this->renderInnerContents($scopeItems);
}
// Render the template around it
if (file_exists($this->template)) {
$contents = $this->renderTemplate($scopeItems, $contents);
}
return $contents;
}
/**
* Render the file set to $this->innerContentFile
* @param $scopeItems
* @return string
*/
protected function renderInnerContents($scopeItems)
{
// Extract the items into the current scope
extract($scopeItems);
ob_start();
include $this->innerContentFile;
$innerContent = ob_get_contents();
ob_end_clean();
$helpers = $this->controller->getHelperObjects();
$return = array_merge($this->scopeItems, $sets, $helpers);
} else {
$return = $this->scopeItems;
}
$return['view'] = $this;
$return['controller'] = $this->controller;
return $return;
}
public function render($state = false)
{
if ($this instanceof View) {
$this->setRequestInstance($this);
}
$this->start($state);
$this->setupRender();
$this->startRender();
$scopeItems = $this->getScopeItems();
$contents = $this->renderViewContents($scopeItems);
$contents = $this->postProcessViewContents($contents);
$response = $this->finishRender($contents);
if ($this instanceof View) {
$this->revertRequestInstance();
}
return $response;
}
public function renderViewContents($scopeItems)
{
if (file_exists($this->template)) {
extract($scopeItems);
ob_start();
$this->onBeforeGetContents();
include $this->template;
$this->onAfterGetContents();
$contents = ob_get_contents();
ob_end_clean();
$cnt = $this->app->make(PageForbidden::class);
$this->controller($cnt, $code, $headers);
}
/**
* {@inheritdoc}
*/
public function redirect($to, $code = Response::HTTP_MOVED_PERMANENTLY, $headers = [])
{
return RedirectResponse::create($to, $code, $headers);
}
/**
* {@inheritdoc}
*/
public function view(View $view, $code = Response::HTTP_OK, $headers = [])
{
$this->localization->pushActiveContext(Localization::CONTEXT_SITE);
try {
$contents = $view->render();
return $this->create($contents, $code, $headers);
} finally {
$this->localization->popActiveContext();
}
}
/**
* {@inheritdoc}
*/
public function controller(Controller $controller, $code = Response::HTTP_OK, $headers = [])
{
$this->localization->pushActiveContext(Localization::CONTEXT_SITE);
try {
$request = $this->request;
if ($response = $controller->on_start()) {
return $response;
}
if ($response = $controller->runAction('view')) {
return $response;
}
}
$view = $controller->getViewObject();
// Mobile theme
if ($this->config->get('concrete.misc.mobile_theme_id') > 0) {
$md = $this->app->make(MobileDetect::class);
if ($md->isMobile()) {
$mobileTheme = Theme::getByID($this->app->config->get('concrete.misc.mobile_theme_id'));
if ($mobileTheme instanceof Theme) {
$view->setViewTheme($mobileTheme);
$controller->setTheme($mobileTheme);
}
}
}
return $this->view($view, $code, $headers);
} finally {
$this->localization->popActiveContext();
}
}
/**
* {@inheritdoc}
*/
public function collection(Collection $collection, $code = Response::HTTP_OK, $headers = [])
{
if (!$this->app) {
throw new \RuntimeException('Cannot resolve collections without a reference to the application');
}
$dl = $this->app->make('multilingual/detector');
$request = $this->request;
if ($collection->isError() && $collection->getError() == COLLECTION_NOT_FOUND) {
if ($response = $this->collectionNotFound($collection, $request, $headers)) {
return $response;
Concrete\Core\Page\View\PageView {#2217}
200
[]
$this->app['director']->dispatch('on_page_view', $pe);
// Core menu items
$item = new RelationListItem();
$menu = $this->app->make('helper/concrete/ui/menu');
$menu->addMenuItem($item);
// Running processes item
$item = new RunningProcessesItem();
$menu->addMenuItem($item);
// Multisite item
$item = new SiteListItem();
$menu->addMenuItem($item);
$controller = $collection->getPageController();
// we update the current page with the one bound to this controller.
$collection->setController($controller);
return $this->controller($controller);
}
private function collectionNotFound(Collection $collection, Request $request, array $headers)
{
// if we don't have a path and we're doing cID, then this automatically fires a 404.
if (!$request->getPath() && $request->get('cID')) {
return $this->notFound('', Response::HTTP_NOT_FOUND, $headers);
}
// let's test to see if this is, in fact, the home page,
// and we're routing arguments onto it (which is screwing up the path.)
$home = Page::getByID(Page::getHomePageID());
$request->setCurrentPage($home);
$homeController = $home->getPageController();
$homeController->setupRequestActionAndParameters($request);
$response = $homeController->validateRequest();
if ($response instanceof \Symfony\Component\HttpFoundation\Response) {
return $response;
} elseif ($response === true) {
Concrete\Core\Page\Controller\PageController {#2212}
new DispatcherDelegate($dispatcher)
);
$stack->setApplication($this->app);
foreach($route->getMiddlewares() as $middleware) {
if (is_string($middleware->getMiddleware())) {
$inflatedMiddleware = $this->app->make($middleware->getMiddleware());
} else {
$inflatedMiddleware = $middleware->getMiddleware();
}
$stack = $stack->withMiddleware(
$inflatedMiddleware,
$middleware->getPriority()
);
}
return $stack->process($request);
} catch (ResourceNotFoundException $e) {
} catch (MethodNotAllowedException $e) {
}
$c = \Page::getFromRequest($request);
$response = $this->app->make(ResponseFactoryInterface::class)->collection($c);
return $response;
}
/**
* @param \Symfony\Component\Routing\RouteCollection $routes
* @param string $path
*
* @return \Symfony\Component\Routing\RouteCollection
*/
private function filterRouteCollectionForPath(RouteCollection $routes, $path)
{
$result = new RouteCollection();
foreach ($routes->getResources() as $resource) {
$result->addResource($resource);
}
foreach ($routes->all() as $name => $route) {
$routePath = $route->getPath();
$p = strpos($routePath, '{');
$skip = false;
Concrete\Core\Page\Page {#2142}
/**
* @param \Symfony\Component\HttpFoundation\Request $request
*
* @return SymfonyResponse
*/
public function dispatch(SymfonyRequest $request)
{
$path = rawurldecode($request->getPathInfo());
if (substr($path, 0, 3) == '../' || substr($path, -3) == '/..' || strpos($path, '/../') ||
substr($path, 0, 3) == '..\\' || substr($path, -3) == '\\..' || strpos($path, '\\..\\')) {
throw new UserMessageException(t('Invalid path traversal. Please make this request with a valid HTTP client.'));
}
$response = null;
if ($this->app->isInstalled()) {
$response = $this->getEarlyDispatchResponse();
}
if ($response === null) {
$response = $this->handleDispatch($request);
}
return $response;
}
private function getEarlyDispatchResponse()
{
$validator = $this->app->make(SessionValidator::class);
if ($validator->hasActiveSession()) {
$session = $this->app['session'];
if (!$session->has('uID')) {
User::verifyAuthTypeCookie();
}
// User may have been logged in, so lets check status again.
if ($session->has('uID') && $session->get('uID') > 0 && $response = $this->validateUser()) {
return $response;
}
}
}
Concrete\Core\Http\Request {#1500 +attributes: Symfony\Component\HttpFoundation\ParameterBag {#1653} +request: Symfony\Component\HttpFoundation\InputBag {#1264} +query: Symfony\Component\HttpFoundation\InputBag {#1499} +server: Symfony\Component\HttpFoundation\ServerBag {#1656} +files: Symfony\Component\HttpFoundation\FileBag {#1655} +cookies: Symfony\Component\HttpFoundation\InputBag {#1654} +headers: Symfony\Component\HttpFoundation\HeaderBag {#1657} #content: null #languages: null #charsets: null #encodings: null #acceptableContentTypes: null #pathInfo: "/software-solutions/turnkey-onsite-concierge-department" #requestUri: "/software-solutions/turnkey-onsite-concierge-department" #baseUrl: "" #basePath: null #method: "GET" #format: null #session: null #locale: null #defaultLocale: "en" -preferredFormat: null -isHostValid: true -isForwardedValid: true -isSafeContentPreferred: null #hasCustomRequestUser: null #customRequestUser: null #customRequestDateTime: null #c: Concrete\Core\Page\Page {#2142} : "" : "html" }
private $dispatcher;
/**
* DispatcherFrame constructor.
* @param \Concrete\Core\Http\DispatcherInterface $dispatcher
*/
public function __construct(DispatcherInterface $dispatcher)
{
$this->dispatcher = $dispatcher;
}
/**
* Dispatch the next available middleware and return the response.
*
* @param Request $request
* @return Response
*/
public function next(Request $request)
{
return $this->dispatcher->dispatch($request);
}
}
Concrete\Core\Http\Request {#1500 +attributes: Symfony\Component\HttpFoundation\ParameterBag {#1653} +request: Symfony\Component\HttpFoundation\InputBag {#1264} +query: Symfony\Component\HttpFoundation\InputBag {#1499} +server: Symfony\Component\HttpFoundation\ServerBag {#1656} +files: Symfony\Component\HttpFoundation\FileBag {#1655} +cookies: Symfony\Component\HttpFoundation\InputBag {#1654} +headers: Symfony\Component\HttpFoundation\HeaderBag {#1657} #content: null #languages: null #charsets: null #encodings: null #acceptableContentTypes: null #pathInfo: "/software-solutions/turnkey-onsite-concierge-department" #requestUri: "/software-solutions/turnkey-onsite-concierge-department" #baseUrl: "" #basePath: null #method: "GET" #format: null #session: null #locale: null #defaultLocale: "en" -preferredFormat: null -isHostValid: true -isForwardedValid: true -isSafeContentPreferred: null #hasCustomRequestUser: null #customRequestUser: null #customRequestDateTime: null #c: Concrete\Core\Page\Page {#2142} : "" : "html" }
private $config;
/**
* @var \Concrete\Core\Utility\Service\Validation\Strings
*/
private $stringValidator;
public function __construct(Repository $config, Strings $stringValidator)
{
$this->config = $config;
$this->stringValidator = $stringValidator;
}
/**
* @param \Concrete\Core\Http\Middleware\DelegateInterface $frame
* @return Response
*/
public function process(Request $request, DelegateInterface $frame)
{
$response = $frame->next($request);
if ($response->headers->has('X-Frame-Options') === false) {
$x_frame_options = $this->config->get('concrete.security.misc.x_frame_options');
if ($this->stringValidator->notempty($x_frame_options)) {
$response->headers->set('X-Frame-Options', $x_frame_options);
}
}
return $response;
}
}
Concrete\Core\Http\Request {#1500 +attributes: Symfony\Component\HttpFoundation\ParameterBag {#1653} +request: Symfony\Component\HttpFoundation\InputBag {#1264} +query: Symfony\Component\HttpFoundation\InputBag {#1499} +server: Symfony\Component\HttpFoundation\ServerBag {#1656} +files: Symfony\Component\HttpFoundation\FileBag {#1655} +cookies: Symfony\Component\HttpFoundation\InputBag {#1654} +headers: Symfony\Component\HttpFoundation\HeaderBag {#1657} #content: null #languages: null #charsets: null #encodings: null #acceptableContentTypes: null #pathInfo: "/software-solutions/turnkey-onsite-concierge-department" #requestUri: "/software-solutions/turnkey-onsite-concierge-department" #baseUrl: "" #basePath: null #method: "GET" #format: null #session: null #locale: null #defaultLocale: "en" -preferredFormat: null -isHostValid: true -isForwardedValid: true -isSafeContentPreferred: null #hasCustomRequestUser: null #customRequestUser: null #customRequestDateTime: null #c: Concrete\Core\Page\Page {#2142} : "" : "html" }
public function __construct(
MiddlewareInterface $middleware,
DelegateInterface $nextDelegate,
HttpFoundationFactory $foundationFactory
) {
$this->middleware = $middleware;
$this->nextDelegate = $nextDelegate;
$this->foundationFactory = $foundationFactory;
}
/**
* Dispatch the next available middleware and return the response.
*
* @param Request $request
* @return Response
*/
public function next(Request $request)
{
$response = $this->middleware->process($request, $this->nextDelegate);
// Negotiate PSR7 responses
if ($response instanceof ResponseInterface) {
return $this->foundationFactory->createResponse($response);
}
return $response;
}
}
Concrete\Core\Http\Request {#1500 +attributes: Symfony\Component\HttpFoundation\ParameterBag {#1653} +request: Symfony\Component\HttpFoundation\InputBag {#1264} +query: Symfony\Component\HttpFoundation\InputBag {#1499} +server: Symfony\Component\HttpFoundation\ServerBag {#1656} +files: Symfony\Component\HttpFoundation\FileBag {#1655} +cookies: Symfony\Component\HttpFoundation\InputBag {#1654} +headers: Symfony\Component\HttpFoundation\HeaderBag {#1657} #content: null #languages: null #charsets: null #encodings: null #acceptableContentTypes: null #pathInfo: "/software-solutions/turnkey-onsite-concierge-department" #requestUri: "/software-solutions/turnkey-onsite-concierge-department" #baseUrl: "" #basePath: null #method: "GET" #format: null #session: null #locale: null #defaultLocale: "en" -preferredFormat: null -isHostValid: true -isForwardedValid: true -isSafeContentPreferred: null #hasCustomRequestUser: null #customRequestUser: null #customRequestDateTime: null #c: Concrete\Core\Page\Page {#2142} : "" : "html" }
Concrete\Core\Http\Middleware\DispatcherDelegate {#1661}
/**
* @var Strings
*/
private $stringValidator;
public function __construct(Repository $config, Strings $stringValidator)
{
$this->config = $config;
$this->stringValidator = $stringValidator;
}
/**
* @param Request $request
* @param DelegateInterface $frame
*
* @return Response
*/
public function process(Request $request, DelegateInterface $frame)
{
$response = $frame->next($request);
if ($response->headers->has('Strict-Transport-Security') === false) {
$x_frame_options = $this->config->get('concrete.security.misc.strict_transport_security');
if ($this->stringValidator->notempty($x_frame_options)) {
$response->headers->set('Strict-Transport-Security', $x_frame_options);
}
}
return $response;
}
}
Concrete\Core\Http\Request {#1500 +attributes: Symfony\Component\HttpFoundation\ParameterBag {#1653} +request: Symfony\Component\HttpFoundation\InputBag {#1264} +query: Symfony\Component\HttpFoundation\InputBag {#1499} +server: Symfony\Component\HttpFoundation\ServerBag {#1656} +files: Symfony\Component\HttpFoundation\FileBag {#1655} +cookies: Symfony\Component\HttpFoundation\InputBag {#1654} +headers: Symfony\Component\HttpFoundation\HeaderBag {#1657} #content: null #languages: null #charsets: null #encodings: null #acceptableContentTypes: null #pathInfo: "/software-solutions/turnkey-onsite-concierge-department" #requestUri: "/software-solutions/turnkey-onsite-concierge-department" #baseUrl: "" #basePath: null #method: "GET" #format: null #session: null #locale: null #defaultLocale: "en" -preferredFormat: null -isHostValid: true -isForwardedValid: true -isSafeContentPreferred: null #hasCustomRequestUser: null #customRequestUser: null #customRequestDateTime: null #c: Concrete\Core\Page\Page {#2142} : "" : "html" }
public function __construct(
MiddlewareInterface $middleware,
DelegateInterface $nextDelegate,
HttpFoundationFactory $foundationFactory
) {
$this->middleware = $middleware;
$this->nextDelegate = $nextDelegate;
$this->foundationFactory = $foundationFactory;
}
/**
* Dispatch the next available middleware and return the response.
*
* @param Request $request
* @return Response
*/
public function next(Request $request)
{
$response = $this->middleware->process($request, $this->nextDelegate);
// Negotiate PSR7 responses
if ($response instanceof ResponseInterface) {
return $this->foundationFactory->createResponse($response);
}
return $response;
}
}
Concrete\Core\Http\Request {#1500 +attributes: Symfony\Component\HttpFoundation\ParameterBag {#1653} +request: Symfony\Component\HttpFoundation\InputBag {#1264} +query: Symfony\Component\HttpFoundation\InputBag {#1499} +server: Symfony\Component\HttpFoundation\ServerBag {#1656} +files: Symfony\Component\HttpFoundation\FileBag {#1655} +cookies: Symfony\Component\HttpFoundation\InputBag {#1654} +headers: Symfony\Component\HttpFoundation\HeaderBag {#1657} #content: null #languages: null #charsets: null #encodings: null #acceptableContentTypes: null #pathInfo: "/software-solutions/turnkey-onsite-concierge-department" #requestUri: "/software-solutions/turnkey-onsite-concierge-department" #baseUrl: "" #basePath: null #method: "GET" #format: null #session: null #locale: null #defaultLocale: "en" -preferredFormat: null -isHostValid: true -isForwardedValid: true -isSafeContentPreferred: null #hasCustomRequestUser: null #customRequestUser: null #customRequestDateTime: null #c: Concrete\Core\Page\Page {#2142} : "" : "html" }
Concrete\Core\Http\Middleware\MiddlewareDelegate {#1668}
/**
* @var Strings
*/
private $stringValidator;
public function __construct(Repository $config, Strings $stringValidator)
{
$this->config = $config;
$this->stringValidator = $stringValidator;
}
/**
* @param Request $request
* @param DelegateInterface $frame
*
* @return Response
*/
public function process(Request $request, DelegateInterface $frame)
{
$response = $frame->next($request);
if ($response->headers->has('Content-Security-Policy') === false) {
$csp = $this->config->get('concrete.security.misc.content_security_policy');
if ((is_array($csp) && count($csp) > 0) || $this->stringValidator->notempty($csp)) {
$response->headers->set('Content-Security-Policy', $csp);
}
}
return $response;
}
}
Concrete\Core\Http\Request {#1500 +attributes: Symfony\Component\HttpFoundation\ParameterBag {#1653} +request: Symfony\Component\HttpFoundation\InputBag {#1264} +query: Symfony\Component\HttpFoundation\InputBag {#1499} +server: Symfony\Component\HttpFoundation\ServerBag {#1656} +files: Symfony\Component\HttpFoundation\FileBag {#1655} +cookies: Symfony\Component\HttpFoundation\InputBag {#1654} +headers: Symfony\Component\HttpFoundation\HeaderBag {#1657} #content: null #languages: null #charsets: null #encodings: null #acceptableContentTypes: null #pathInfo: "/software-solutions/turnkey-onsite-concierge-department" #requestUri: "/software-solutions/turnkey-onsite-concierge-department" #baseUrl: "" #basePath: null #method: "GET" #format: null #session: null #locale: null #defaultLocale: "en" -preferredFormat: null -isHostValid: true -isForwardedValid: true -isSafeContentPreferred: null #hasCustomRequestUser: null #customRequestUser: null #customRequestDateTime: null #c: Concrete\Core\Page\Page {#2142} : "" : "html" }
public function __construct(
MiddlewareInterface $middleware,
DelegateInterface $nextDelegate,
HttpFoundationFactory $foundationFactory
) {
$this->middleware = $middleware;
$this->nextDelegate = $nextDelegate;
$this->foundationFactory = $foundationFactory;
}
/**
* Dispatch the next available middleware and return the response.
*
* @param Request $request
* @return Response
*/
public function next(Request $request)
{
$response = $this->middleware->process($request, $this->nextDelegate);
// Negotiate PSR7 responses
if ($response instanceof ResponseInterface) {
return $this->foundationFactory->createResponse($response);
}
return $response;
}
}
Concrete\Core\Http\Request {#1500 +attributes: Symfony\Component\HttpFoundation\ParameterBag {#1653} +request: Symfony\Component\HttpFoundation\InputBag {#1264} +query: Symfony\Component\HttpFoundation\InputBag {#1499} +server: Symfony\Component\HttpFoundation\ServerBag {#1656} +files: Symfony\Component\HttpFoundation\FileBag {#1655} +cookies: Symfony\Component\HttpFoundation\InputBag {#1654} +headers: Symfony\Component\HttpFoundation\HeaderBag {#1657} #content: null #languages: null #charsets: null #encodings: null #acceptableContentTypes: null #pathInfo: "/software-solutions/turnkey-onsite-concierge-department" #requestUri: "/software-solutions/turnkey-onsite-concierge-department" #baseUrl: "" #basePath: null #method: "GET" #format: null #session: null #locale: null #defaultLocale: "en" -preferredFormat: null -isHostValid: true -isForwardedValid: true -isSafeContentPreferred: null #hasCustomRequestUser: null #customRequestUser: null #customRequestDateTime: null #c: Concrete\Core\Page\Page {#2142} : "" : "html" }
Concrete\Core\Http\Middleware\MiddlewareDelegate {#1670}
* @var \Concrete\Core\Cookie\ResponseCookieJar
*/
private $responseCookieJar;
/**
* @param \Concrete\Core\Cookie\ResponseCookieJar $responseCookieJar
*/
public function __construct(ResponseCookieJar $responseCookieJar)
{
$this->responseCookieJar = $responseCookieJar;
}
/**
* {@inheritdoc}
*
* @see \Concrete\Core\Http\Middleware\MiddlewareInterface::process()
*/
public function process(Request $request, DelegateInterface $frame)
{
$response = $frame->next($request);
$cleared = $this->responseCookieJar->getClearedCookies();
foreach ($cleared as $cookie) {
$response->headers->clearCookie($cookie, DIR_REL . '/');
}
$cookies = $this->responseCookieJar->getCookies();
foreach ($cookies as $cookie) {
$response->headers->setCookie($cookie);
}
return $response;
}
}
Concrete\Core\Http\Request {#1500 +attributes: Symfony\Component\HttpFoundation\ParameterBag {#1653} +request: Symfony\Component\HttpFoundation\InputBag {#1264} +query: Symfony\Component\HttpFoundation\InputBag {#1499} +server: Symfony\Component\HttpFoundation\ServerBag {#1656} +files: Symfony\Component\HttpFoundation\FileBag {#1655} +cookies: Symfony\Component\HttpFoundation\InputBag {#1654} +headers: Symfony\Component\HttpFoundation\HeaderBag {#1657} #content: null #languages: null #charsets: null #encodings: null #acceptableContentTypes: null #pathInfo: "/software-solutions/turnkey-onsite-concierge-department" #requestUri: "/software-solutions/turnkey-onsite-concierge-department" #baseUrl: "" #basePath: null #method: "GET" #format: null #session: null #locale: null #defaultLocale: "en" -preferredFormat: null -isHostValid: true -isForwardedValid: true -isSafeContentPreferred: null #hasCustomRequestUser: null #customRequestUser: null #customRequestDateTime: null #c: Concrete\Core\Page\Page {#2142} : "" : "html" }
public function __construct(
MiddlewareInterface $middleware,
DelegateInterface $nextDelegate,
HttpFoundationFactory $foundationFactory
) {
$this->middleware = $middleware;
$this->nextDelegate = $nextDelegate;
$this->foundationFactory = $foundationFactory;
}
/**
* Dispatch the next available middleware and return the response.
*
* @param Request $request
* @return Response
*/
public function next(Request $request)
{
$response = $this->middleware->process($request, $this->nextDelegate);
// Negotiate PSR7 responses
if ($response instanceof ResponseInterface) {
return $this->foundationFactory->createResponse($response);
}
return $response;
}
}
Concrete\Core\Http\Request {#1500 +attributes: Symfony\Component\HttpFoundation\ParameterBag {#1653} +request: Symfony\Component\HttpFoundation\InputBag {#1264} +query: Symfony\Component\HttpFoundation\InputBag {#1499} +server: Symfony\Component\HttpFoundation\ServerBag {#1656} +files: Symfony\Component\HttpFoundation\FileBag {#1655} +cookies: Symfony\Component\HttpFoundation\InputBag {#1654} +headers: Symfony\Component\HttpFoundation\HeaderBag {#1657} #content: null #languages: null #charsets: null #encodings: null #acceptableContentTypes: null #pathInfo: "/software-solutions/turnkey-onsite-concierge-department" #requestUri: "/software-solutions/turnkey-onsite-concierge-department" #baseUrl: "" #basePath: null #method: "GET" #format: null #session: null #locale: null #defaultLocale: "en" -preferredFormat: null -isHostValid: true -isForwardedValid: true -isSafeContentPreferred: null #hasCustomRequestUser: null #customRequestUser: null #customRequestDateTime: null #c: Concrete\Core\Page\Page {#2142} : "" : "html" }
Concrete\Core\Http\Middleware\MiddlewareDelegate {#1672}
* Middleware for applying state changes to the application
* @package Concrete\Core\Http\Middleware
*/
class ApplicationMiddleware implements MiddlewareInterface, ApplicationAwareInterface
{
use ApplicationAwareTrait;
/**
* Apply the request instance to the request singleton
* @param \Symfony\Component\HttpFoundation\Request $request
* @param \Concrete\Core\Http\Middleware\DelegateInterface $frame
* @return \Symfony\Component\HttpFoundation\Response
*/
public function process(Request $request, DelegateInterface $frame)
{
\Concrete\Core\Http\Request::setInstance($request);
$this->app->instance('Concrete\Core\Http\Request', $request);
return $frame->next($request);
}
}
Concrete\Core\Http\Request {#1500 +attributes: Symfony\Component\HttpFoundation\ParameterBag {#1653} +request: Symfony\Component\HttpFoundation\InputBag {#1264} +query: Symfony\Component\HttpFoundation\InputBag {#1499} +server: Symfony\Component\HttpFoundation\ServerBag {#1656} +files: Symfony\Component\HttpFoundation\FileBag {#1655} +cookies: Symfony\Component\HttpFoundation\InputBag {#1654} +headers: Symfony\Component\HttpFoundation\HeaderBag {#1657} #content: null #languages: null #charsets: null #encodings: null #acceptableContentTypes: null #pathInfo: "/software-solutions/turnkey-onsite-concierge-department" #requestUri: "/software-solutions/turnkey-onsite-concierge-department" #baseUrl: "" #basePath: null #method: "GET" #format: null #session: null #locale: null #defaultLocale: "en" -preferredFormat: null -isHostValid: true -isForwardedValid: true -isSafeContentPreferred: null #hasCustomRequestUser: null #customRequestUser: null #customRequestDateTime: null #c: Concrete\Core\Page\Page {#2142} : "" : "html" }
public function __construct(
MiddlewareInterface $middleware,
DelegateInterface $nextDelegate,
HttpFoundationFactory $foundationFactory
) {
$this->middleware = $middleware;
$this->nextDelegate = $nextDelegate;
$this->foundationFactory = $foundationFactory;
}
/**
* Dispatch the next available middleware and return the response.
*
* @param Request $request
* @return Response
*/
public function next(Request $request)
{
$response = $this->middleware->process($request, $this->nextDelegate);
// Negotiate PSR7 responses
if ($response instanceof ResponseInterface) {
return $this->foundationFactory->createResponse($response);
}
return $response;
}
}
Concrete\Core\Http\Request {#1500 +attributes: Symfony\Component\HttpFoundation\ParameterBag {#1653} +request: Symfony\Component\HttpFoundation\InputBag {#1264} +query: Symfony\Component\HttpFoundation\InputBag {#1499} +server: Symfony\Component\HttpFoundation\ServerBag {#1656} +files: Symfony\Component\HttpFoundation\FileBag {#1655} +cookies: Symfony\Component\HttpFoundation\InputBag {#1654} +headers: Symfony\Component\HttpFoundation\HeaderBag {#1657} #content: null #languages: null #charsets: null #encodings: null #acceptableContentTypes: null #pathInfo: "/software-solutions/turnkey-onsite-concierge-department" #requestUri: "/software-solutions/turnkey-onsite-concierge-department" #baseUrl: "" #basePath: null #method: "GET" #format: null #session: null #locale: null #defaultLocale: "en" -preferredFormat: null -isHostValid: true -isForwardedValid: true -isSafeContentPreferred: null #hasCustomRequestUser: null #customRequestUser: null #customRequestDateTime: null #c: Concrete\Core\Page\Page {#2142} : "" : "html" }
Concrete\Core\Http\Middleware\MiddlewareDelegate {#1674}
public function withoutMiddleware(MiddlewareInterface $middleware)
{
$stack = clone $this;
$stack->middleware = array_map(function($priorityGroup) use ($middleware) {
return array_map(function($stackMiddleware) use ($middleware) {
return $middleware === $stackMiddleware ? null : $stackMiddleware;
}, $priorityGroup);
}, $stack->middleware);
return $stack;
}
/**
* @inheritdoc
*/
public function process(Request $request)
{
$stack = $this->getStack();
return $stack->next($request);
}
/**
* Reduce middleware into a stack of functions that each call the next
* @return callable
*/
private function getStack()
{
$processed = [];
foreach ($this->middlewareGenerator() as $middleware) {
$processed[] = $middleware;
}
$middleware = array_reverse($processed);
$stack = array_reduce($middleware, $this->getZipper(), $this->dispatcher);
return $stack;
}
Concrete\Core\Http\Request {#1500 +attributes: Symfony\Component\HttpFoundation\ParameterBag {#1653} +request: Symfony\Component\HttpFoundation\InputBag {#1264} +query: Symfony\Component\HttpFoundation\InputBag {#1499} +server: Symfony\Component\HttpFoundation\ServerBag {#1656} +files: Symfony\Component\HttpFoundation\FileBag {#1655} +cookies: Symfony\Component\HttpFoundation\InputBag {#1654} +headers: Symfony\Component\HttpFoundation\HeaderBag {#1657} #content: null #languages: null #charsets: null #encodings: null #acceptableContentTypes: null #pathInfo: "/software-solutions/turnkey-onsite-concierge-department" #requestUri: "/software-solutions/turnkey-onsite-concierge-department" #baseUrl: "" #basePath: null #method: "GET" #format: null #session: null #locale: null #defaultLocale: "en" -preferredFormat: null -isHostValid: true -isForwardedValid: true -isSafeContentPreferred: null #hasCustomRequestUser: null #customRequestUser: null #customRequestDateTime: null #c: Concrete\Core\Page\Page {#2142} : "" : "html" }
*/
public function removeMiddleware(MiddlewareInterface $middleware)
{
$this->stack = $this->stack->withoutMiddleware($middleware);
return $this;
}
/**
* Take a request and pass it through middleware, then return the response
* @param SymfonyRequest $request
* @return SymfonyResponse
*/
public function handleRequest(SymfonyRequest $request)
{
$stack = $this->stack;
if ($stack instanceof MiddlewareStack) {
$stack = $stack->withDispatcher($this->app->make(DispatcherDelegate::class, ['dispatcher' => $this->dispatcher]));
}
return $stack->process($request);
}
}
Concrete\Core\Http\Request {#1500 +attributes: Symfony\Component\HttpFoundation\ParameterBag {#1653} +request: Symfony\Component\HttpFoundation\InputBag {#1264} +query: Symfony\Component\HttpFoundation\InputBag {#1499} +server: Symfony\Component\HttpFoundation\ServerBag {#1656} +files: Symfony\Component\HttpFoundation\FileBag {#1655} +cookies: Symfony\Component\HttpFoundation\InputBag {#1654} +headers: Symfony\Component\HttpFoundation\HeaderBag {#1657} #content: null #languages: null #charsets: null #encodings: null #acceptableContentTypes: null #pathInfo: "/software-solutions/turnkey-onsite-concierge-department" #requestUri: "/software-solutions/turnkey-onsite-concierge-department" #baseUrl: "" #basePath: null #method: "GET" #format: null #session: null #locale: null #defaultLocale: "en" -preferredFormat: null -isHostValid: true -isForwardedValid: true -isSafeContentPreferred: null #hasCustomRequestUser: null #customRequestUser: null #customRequestDateTime: null #c: Concrete\Core\Page\Page {#2142} : "" : "html" }
// Register legacy config values
'registerLegacyConfigValues',
// Handle loading permission keys
'handlePermissionKeys',
// Handle eventing
'handleEventing',
]);
} else {
$this->initializeSystemTimezone();
$this->preloadClassAliases();
}
// Create the request to use
$request = $this->createRequest();
if (!$response) {
$response = $this->server->handleRequest($request);
}
// Prepare and return the response
return $response->prepare($request);
}
/**
* Define the base url if not defined
* This will define `BASE_URL` to whatever is resolved from the resolver.
*
* @deprecated In a future major version this will be part of HTTP middleware
*
* @return Response|void Returns a response if an error occurs
*/
protected function initializeLegacyURLDefinitions()
{
if (!defined('BASE_URL')) {
$resolver = $this->getUrlResolver();
try {
Concrete\Core\Http\Request {#1500 +attributes: Symfony\Component\HttpFoundation\ParameterBag {#1653} +request: Symfony\Component\HttpFoundation\InputBag {#1264} +query: Symfony\Component\HttpFoundation\InputBag {#1499} +server: Symfony\Component\HttpFoundation\ServerBag {#1656} +files: Symfony\Component\HttpFoundation\FileBag {#1655} +cookies: Symfony\Component\HttpFoundation\InputBag {#1654} +headers: Symfony\Component\HttpFoundation\HeaderBag {#1657} #content: null #languages: null #charsets: null #encodings: null #acceptableContentTypes: null #pathInfo: "/software-solutions/turnkey-onsite-concierge-department" #requestUri: "/software-solutions/turnkey-onsite-concierge-department" #baseUrl: "" #basePath: null #method: "GET" #format: null #session: null #locale: null #defaultLocale: "en" -preferredFormat: null -isHostValid: true -isForwardedValid: true -isSafeContentPreferred: null #hasCustomRequestUser: null #customRequestUser: null #customRequestDateTime: null #c: Concrete\Core\Page\Page {#2142} : "" : "html" }
$this->status = self::STATUS_ACTIVE;
}
}
/**
* Begin the runtime.
*/
public function run()
{
switch ($this->status) {
case self::STATUS_ENDED:
// We've already ended, lets just return
return;
case self::STATUS_INACTIVE:
throw new \RuntimeException('Runtime has not yet booted.');
}
$runner = $this->getRunner();
$response = $runner->run();
if ($response) {
$this->sendResponse($response);
}
return $response;
}
/**
* The method that handles properly sending a response.
*
* @param \Symfony\Component\HttpFoundation\Response $response
*/
protected function sendResponse(Response $response)
{
$response->send();
// Set the status to ended
$this->status = self::STATUS_ENDED;
}
* Include all autoloaders.
* ----------------------------------------------------------------------------
*/
require __DIR__ . '/bootstrap/autoload.php';
/*
* ----------------------------------------------------------------------------
* Begin Concrete startup.
* ----------------------------------------------------------------------------
*/
$app = require __DIR__ . '/bootstrap/start.php';
/** @var \Concrete\Core\Application\Application $app */
/*
* ----------------------------------------------------------------------------
* Run the runtime.
* ----------------------------------------------------------------------------
*/
$runtime = $app->getRuntime();
if ($response = $runtime->run()) {
/*
* ------------------------------------------------------------------------
* Shut it down.
* ------------------------------------------------------------------------
*/
$app->shutdown();
} else {
return $app;
}
<?php
require 'concrete/dispatcher.php';
"/home/balance/concrete-cms/apps/public_html/concrete/dispatcher.php"
Key | Value |
Version | "9.0.2"
|
Installed Version | "9.0.2"
|
Key | Value |
Version | "8.1.27"
|
Key | Value |
concrete.version | "9.0.2"
|
concrete.version_installed | "9.0.2"
|
concrete.version_db | "20220114215506"
|
concrete.installed | "true"
|
concrete.locale | "en_US"
|
concrete.charset | "UTF-8"
|
concrete.charset_bom | ""
|
concrete.maintenance_mode | "false"
|
concrete.debug.display_errors | "true"
|
concrete.debug.detail | "debug"
|
concrete.debug.error_reporting | "null"
|
concrete.debug.hide_keys | "[***]"
|
concrete.proxy.host | "null"
|
concrete.proxy.port | "null"
|
concrete.proxy.user | "null"
|
concrete.proxy.password | "***"
|
concrete.upload.extensions | "*.flv;*.jpg;*.gif;*.jpeg;*.ico;*.docx;*.xla;*.png;*.psd;*.swf;*.doc;*.txt;*.xls;*.xlsx;*.csv;*.pdf;*.tiff;*.rtf;*.m4a;*.mov;*.wmv;*.mpeg;*.mpg;*.wav;*.3gp;*.avi;*.m4v;*.mp4;*.mp3;*.qt;*.ppt;*.pptx;*.kml;*.xml;*.svg;*.webm;*.ogg;*.ogv"
|
concrete.upload.extensions_denylist | "*.php;*.php2;*.php3;*.php4;*.php5;*.php7;*.php8;*.phtml;*.phar;*.htaccess;*.pl;*.phpsh;*.pht;*.shtml;*.cgi"
|
concrete.upload.chunking.enabled | "true"
|
concrete.upload.chunking.chunkSize | "null"
|
concrete.export.csv.include_bom | "false"
|
concrete.export.csv.datetime_format | "ATOM"
|
concrete.interface.panel.page_relations | "false"
|
concrete.mail.method | "php_mail"
|
concrete.mail.methods.smtp.server | "" |
concrete.mail.methods.smtp.port | "" |
concrete.mail.methods.smtp.username | "" |
concrete.mail.methods.smtp.password | "" |
concrete.mail.methods.smtp.encryption | "" |
concrete.mail.methods.smtp.messages_per_connection | "null"
|
concrete.mail.methods.smtp.helo_domain | "localhost"
|
concrete.cache.enabled | "true"
|
concrete.cache.lifetime | "21600"
|
concrete.cache.overrides | "false"
|
concrete.cache.blocks | "false"
|
concrete.cache.theme_css | "false"
|
concrete.cache.pages | "0"
|
concrete.cache.doctrine_dev_mode | "true"
|
concrete.cache.full_page_lifetime | "default"
|
concrete.cache.full_page_lifetime_value | "null"
|
concrete.cache.full_contents_assets_hash | "false"
|
concrete.cache.directory | "/home/balance/public_html/application/files/cache"
|
concrete.cache.directory_relative | "null"
|
concrete.cache.page.directory | "/home/balance/public_html/application/files/cache/pages"
|
concrete.cache.page.adapter | "file"
|
concrete.cache.levels.overrides.drivers.core_ephemeral.class | "\Stash\Driver\Ephemeral"
|
concrete.cache.levels.overrides.drivers.core_filesystem.class | "Concrete\Core\Cache\Driver\FileSystemStashDriver"
|
concrete.cache.levels.overrides.drivers.core_filesystem.options.path | "/home/balance/public_html/application/files/cache/overrides"
|
concrete.cache.levels.overrides.drivers.core_filesystem.options.dirPermissions | "511"
|
concrete.cache.levels.overrides.drivers.core_filesystem.options.filePermissions | "438"
|
concrete.cache.levels.overrides.drivers.redis.class | "Concrete\Core\Cache\Driver\RedisStashDriver"
|
concrete.cache.levels.overrides.drivers.redis.options.prefix | "concrete_overrides"
|
concrete.cache.levels.overrides.drivers.redis.options.database | "0"
|
concrete.cache.levels.overrides.preferred_driver | "core_filesystem"
|
concrete.cache.levels.expensive.drivers.core_ephemeral.class | "\Stash\Driver\Ephemeral"
|
concrete.cache.levels.expensive.drivers.core_filesystem.class | "Concrete\Core\Cache\Driver\FileSystemStashDriver"
|
concrete.cache.levels.expensive.drivers.core_filesystem.options.path | "/home/balance/public_html/application/files/cache/expensive"
|
concrete.cache.levels.expensive.drivers.core_filesystem.options.dirPermissions | "511"
|
concrete.cache.levels.expensive.drivers.core_filesystem.options.filePermissions | "438"
|
concrete.cache.levels.expensive.drivers.redis.class | "Concrete\Core\Cache\Driver\RedisStashDriver"
|
concrete.cache.levels.expensive.drivers.redis.options.prefix | "concrete_expensive"
|
concrete.cache.levels.expensive.drivers.redis.options.database | "0"
|
concrete.cache.levels.expensive.preferred_driver | "core_filesystem"
|
concrete.cache.levels.object.drivers.core_ephemeral.class | "\Stash\Driver\Ephemeral"
|
concrete.cache.levels.object.drivers.redis.class | "Concrete\Core\Cache\Driver\RedisStashDriver"
|
concrete.cache.levels.object.drivers.redis.options.prefix | "concrete_object"
|
concrete.cache.levels.object.drivers.redis.options.database | "0"
|
concrete.cache.levels.object.preferred_driver | "core_ephemeral"
|
concrete.cache.clear.thumbnails | "false"
|
concrete.cache.assets | "false"
|
concrete.design.enable_custom | "true"
|
concrete.design.enable_layouts | "true"
|
concrete.processes.logging.method | "none"
|
concrete.processes.logging.file.directory | "" |
concrete.processes.scheduler.enable | "true"
|
concrete.processes.delete_threshold | "7"
|
concrete.messenger.default_bus | "default"
|
concrete.messenger.buses.default.default_middleware | "true"
|
concrete.messenger.routing.Concrete\Core\Foundation\Command\AsyncCommandInterface.0 | "async"
|
concrete.messenger.transports.0 | "Concrete\Core\Messenger\Transport\DefaultAsync\DefaultAsyncTransport"
|
concrete.messenger.transports.1 | "Concrete\Core\Messenger\Transport\DefaultAsync\DefaultSyncTransport"
|
concrete.messenger.consume.method | "app"
|
concrete.messenger.polling_batch.default | "10"
|
concrete.messenger.polling_batch.rescan_file | "5"
|
concrete.messenger.polling_batch.delete_page | "100"
|
concrete.messenger.polling_batch.delete_page_forever | "100"
|
concrete.messenger.polling_batch.copy_page | "10"
|
concrete.events.broadcast.driver | "" |
concrete.log.emails | "true"
|
concrete.log.errors | "true"
|
concrete.log.spam | "false"
|
concrete.log.api | "false"
|
concrete.log.enable_dashboard_report | "true"
|
concrete.log.configuration.mode | "simple"
|
concrete.log.configuration.simple.core_logging_level | "NOTICE"
|
concrete.log.configuration.simple.handler | "database"
|
concrete.log.configuration.simple.file.file | "" |
concrete.jobs.enable_scheduling | "true"
|
concrete.filesystem.temp_directory | "null"
|
concrete.filesystem.permissions.file | "438"
|
concrete.filesystem.permissions.directory | "511"
|
concrete.email.enabled | "true"
|
concrete.email.default.address | "***************************"
|
concrete.email.default.name | "Balance Concierge"
|
concrete.email.form_block.address | "***************************"
|
concrete.email.form_block.name | "Balance Concierge"
|
concrete.email.forgot_password.address | "***************************"
|
concrete.email.forgot_password.name | "Balance Concierge"
|
concrete.email.register_notification.address | "system@balanceconcierge.com"
|
concrete.email.register_notification.name | "Balance Concierge"
|
concrete.email.validate_registration.address | "***************************"
|
concrete.email.validate_registration.name | "Balance Concierge"
|
concrete.email.workflow_notification.address | "***************************"
|
concrete.email.workflow_notification.name | "Balance Concierge"
|
concrete.email.max_batch | "60"
|
concrete.form.store_form_submissions | "auto"
|
concrete.marketplace.enabled | "true"
|
concrete.marketplace.request_timeout | "30"
|
concrete.marketplace.token | "null"
|
concrete.marketplace.site_token | "null"
|
concrete.marketplace.intelligent_search | "true"
|
concrete.marketplace.log_requests | "false"
|
concrete.external.intelligent_search_help | "true"
|
concrete.external.news | "true"
|
concrete.misc.user_timezones | "false"
|
concrete.misc.package_backup_directory | "/home/balance/public_html/application/files/trash"
|
concrete.misc.display_package_delete_button | "true"
|
concrete.misc.enable_progressive_page_reindex | "true"
|
concrete.misc.mobile_theme_id | "0"
|
concrete.misc.sitemap_approve_immediately | "true"
|
concrete.misc.enable_translate_locale_en_us | "false"
|
concrete.misc.page_search_index_lifetime | "259200"
|
concrete.misc.enable_trash_can | "true"
|
concrete.misc.default_jpeg_image_compression | "80"
|
concrete.misc.default_png_image_compression | "9"
|
concrete.misc.default_thumbnail_format | "auto"
|
concrete.misc.inplace_image_operations_limit | "4194304"
|
concrete.misc.basic_thumbnailer_generation_strategy | "now"
|
concrete.misc.require_version_comments | "false"
|
concrete.misc.enable_move_blocktypes_across_sets | "false"
|
concrete.misc.generator_tag_display_in_header | "true"
|
concrete.theme.compress_preprocessor_output | "false"
|
concrete.theme.generate_less_sourcemap | "false"
|
concrete.updates.enable_auto_update_packages | "false"
|
concrete.updates.enable_permissions_protection | "true"
|
concrete.updates.check_threshold | "172800"
|
concrete.updates.services.get_available_updates | "https://marketplace.concretecms.com/tools/update_core"
|
concrete.updates.services.inspect_update | "https://marketplace.concretecms.com/tools/inspect_update"
|
concrete.updates.skip_core | "false"
|
concrete.paths.trash | "/!trash"
|
concrete.paths.drafts | "/!drafts"
|
concrete.icons.page_template.width | "120"
|
concrete.icons.page_template.height | "90"
|
concrete.icons.theme_thumbnail.width | "120"
|
concrete.icons.theme_thumbnail.height | "90"
|
concrete.icons.file_manager_listing.handle | "file_manager_listing"
|
concrete.icons.file_manager_listing.width | "120"
|
concrete.icons.file_manager_listing.height | "120"
|
concrete.icons.file_manager_detail.handle | "file_manager_detail"
|
concrete.icons.file_manager_detail.width | "500"
|
concrete.icons.file_manager_detail.height | "500"
|
concrete.icons.user_avatar.width | "80"
|
concrete.icons.user_avatar.height | "80"
|
concrete.icons.user_avatar.default | "/concrete/images/avatar_none.png"
|
concrete.file_manager.images.use_exif_data_to_rotate_images | "false"
|
concrete.file_manager.images.manipulation_library | "gd"
|
concrete.file_manager.images.create_high_dpi_thumbnails | "true"
|
concrete.file_manager.images.preview_image_size | "small"
|
concrete.file_manager.images.preview_image_popover | "true"
|
concrete.file_manager.images.svg_sanitization.action | "sanitize"
|
concrete.file_manager.images.svg_sanitization.allowed_tags | "" |
concrete.file_manager.images.svg_sanitization.allowed_attributes | "" |
concrete.file_manager.items_per_page_options.0 | "10"
|
concrete.file_manager.items_per_page_options.1 | "25"
|
concrete.file_manager.items_per_page_options.2 | "50"
|
concrete.file_manager.items_per_page_options.3 | "100"
|
concrete.file_manager.items_per_page_options.4 | "250"
|
concrete.file_manager.results | "10"
|
concrete.search_users.results | "10"
|
concrete.sitemap_xml.file | "sitemap.xml"
|
concrete.sitemap_xml.frequency | "weekly"
|
concrete.sitemap_xml.priority | "0.5"
|
concrete.accessibility.toolbar_titles | "false"
|
concrete.accessibility.toolbar_large_font | "false"
|
concrete.accessibility.toolbar_tooltips | "true"
|
concrete.i18n.choose_language_login | "false"
|
concrete.i18n.auto_install_package_languages | "true"
|
concrete.i18n.community_translation.entry_point | "https://translate.concretecms.org/api"
|
concrete.i18n.community_translation.api_token | "" |
concrete.i18n.community_translation.progress_limit | "60"
|
concrete.i18n.community_translation.cache_lifetime | "3600"
|
concrete.i18n.community_translation.package_url | "https://translate.concretecms.org/translate/package"
|
concrete.urls.concrete | "http://marketplace.concretecms.com"
|
concrete.urls.concrete_secure | "https://marketplace.concretecms.com"
|
concrete.urls.background_feed | "//backgroundimages.concrete5.org/wallpaper"
|
concrete.urls.privacy_policy | "//www.concretecms.com/about/legal/privacy-policy"
|
concrete.urls.background_feed_secure | "https://backgroundimages.concrete5.org/wallpaper"
|
concrete.urls.background_info | "http://backgroundimages.concrete5.org/get_image_data.php"
|
concrete.urls.videos | "https://www.youtube.com/user/concrete5cms/videos"
|
concrete.urls.activity_slots | "https://marketing.concretecms.com/ccm/marketing/activity_slots"
|
concrete.urls.help.developer | "https://documentation.concretecms.org/developers"
|
concrete.urls.help.user | "https://documentation.concretecms.org/user-guide"
|
concrete.urls.help.forum | "https://forums.concretecms.org"
|
concrete.urls.help.remote_search | "https://documentation.concretecms.org/ccm/documentation/remote_search"
|
concrete.urls.paths.site_page | "/private/sites"
|
concrete.urls.paths.marketplace.projects | "/profile/projects/"
|
concrete.urls.paths.marketplace.connect | "/marketplace/connect"
|
concrete.urls.paths.marketplace.connect_success | "/marketplace/connect/-/connected"
|
concrete.urls.paths.marketplace.connect_validate | "/marketplace/connect/-/validate"
|
concrete.urls.paths.marketplace.connect_new_token | "/marketplace/connect/-/generate_token"
|
concrete.urls.paths.marketplace.checkout | "/cart/-/add"
|
concrete.urls.paths.marketplace.purchases | "/marketplace/connect/-/get_available_licenses"
|
concrete.urls.paths.marketplace.item_information | "/marketplace/connect/-/get_item_information"
|
concrete.urls.paths.marketplace.item_free_license | "/marketplace/connect/-/enable_free_license"
|
concrete.urls.paths.marketplace.remote_item_list | "/marketplace/"
|
concrete.white_label.logo | "false"
|
concrete.white_label.name | "false"
|
concrete.white_label.background_image | "feed"
|
concrete.white_label.background_url | "null"
|
concrete.session.name | "CONCRETE"
|
concrete.session.handler | "file"
|
concrete.session.redis.database | "1"
|
concrete.session.save_path | "null"
|
concrete.session.max_lifetime | "180000"
|
concrete.session.gc_probability | "1"
|
concrete.session.gc_divisor | "100"
|
concrete.session.cookie.cookie_path | "false"
|
concrete.session.cookie.cookie_lifetime | "0"
|
concrete.session.cookie.cookie_domain | "false"
|
concrete.session.cookie.cookie_secure | "false"
|
concrete.session.cookie.cookie_httponly | "true"
|
concrete.session.cookie.cookie_raw | "false"
|
concrete.session.cookie.cookie_samesite | "null"
|
concrete.session.remember_me.lifetime | "1209600"
|
concrete.user.registration.enabled | "false"
|
concrete.user.registration.type | "disabled"
|
concrete.user.registration.captcha | "true"
|
concrete.user.registration.email_registration | "false"
|
concrete.user.registration.display_username_field | "true"
|
concrete.user.registration.display_confirm_password_field | "true"
|
concrete.user.registration.validate_email | "false"
|
concrete.user.registration.validate_email_threshold | "5184000"
|
concrete.user.registration.approval | "false"
|
concrete.user.registration.notification | "false"
|
concrete.user.group.badge.default_point_value | "50"
|
concrete.user.username.maximum | "64"
|
concrete.user.username.minimum | "3"
|
concrete.user.username.allowed_characters.boundary | "\S"
|
concrete.user.username.allowed_characters.middle | "\S"
|
concrete.user.username.allowed_characters.requirement_string | "Invalid Username."
|
concrete.user.username.allowed_characters.error_string | "Invalid Username."
|
concrete.user.password.maximum | "128"
|
concrete.user.password.minimum | "5"
|
concrete.user.password.required_special_characters | "0"
|
concrete.user.password.required_lower_case | "0"
|
concrete.user.password.required_upper_case | "0"
|
concrete.user.password.reuse | "0"
|
concrete.user.password.hash_algorithm | "2y"
|
concrete.user.password.hash_portable | "false"
|
concrete.user.password.hash_cost_log2 | "12"
|
concrete.user.password.legacy_salt | "" |
concrete.user.email.test_mx_record | "false"
|
concrete.user.email.strict | "true"
|
concrete.user.private_messages.throttle_max | "20"
|
concrete.user.private_messages.throttle_max_timespan | "15"
|
concrete.user.deactivation.enable_login_threshold_deactivation | "false"
|
concrete.user.deactivation.login.threshold | "120"
|
concrete.user.deactivation.authentication_failure.enabled | "false"
|
concrete.user.deactivation.authentication_failure.amount | "5"
|
concrete.user.deactivation.authentication_failure.duration | "300"
|
concrete.user.deactivation.message | "This user is inactive. Please contact us regarding this account."
|
concrete.spam.allowlist_group | "0"
|
concrete.spam.notify_email | "pcorfman@bishopairport.org"
|
concrete.calendar.colors.text | "#ffffff"
|
concrete.calendar.colors.background | "#3A87AD"
|
concrete.security.session.invalidate_on_user_agent_mismatch | "false"
|
concrete.security.session.invalidate_on_ip_mismatch | "false"
|
concrete.security.session.invalidate_inactive_users.enabled | "false"
|
concrete.security.session.invalidate_inactive_users.time | "300"
|
concrete.security.misc.content_security_policy | "false"
|
concrete.security.misc.strict_transport_security | "false"
|
concrete.security.misc.x_frame_options | "SAMEORIGIN"
|
concrete.permissions.forward_to_login | "false"
|
concrete.permissions.model | "simple"
|
concrete.seo.exclude_words | "a, an, as, at, before, but, by, for, from, is, in, into, like, of, off, on, onto, per, since, than, the, this, that, to, up, via, with"
|
concrete.seo.url_rewriting | "true"
|
concrete.seo.url_rewriting_all | "false"
|
concrete.seo.redirect_to_canonical_url | "1"
|
concrete.seo.canonical_url | "https://balanceconcierge.com"
|
concrete.seo.canonical_url_alternative | "null"
|
concrete.seo.trailing_slash | "false"
|
concrete.seo.title_format | "%2$s :: %1$s"
|
concrete.seo.title_segment_separator | " :: "
|
concrete.seo.page_path_separator | "-"
|
concrete.seo.group_name_separator | " / "
|
concrete.seo.segment_max_length | "128"
|
concrete.seo.paging_string | "ccm_paging_p"
|
concrete.statistics.track_downloads | "true"
|
concrete.limits.sitemap_pages | "100"
|
concrete.limits.page_search_index_batch | "200"
|
concrete.limits.job_queue_batch | "10"
|
concrete.limits.style_customizer.size_min | "-50"
|
concrete.limits.style_customizer.size_max | "200"
|
concrete.page.search.always_reindex | "false"
|
concrete.composer.idle_timeout | "1"
|
concrete.api.enabled | "false"
|
concrete.api.grant_types.client_credentials | "true"
|
concrete.api.grant_types.authorization_code | "true"
|
concrete.api.grant_types.password_credentials | "false"
|
concrete.api.grant_types.refresh_token | "true"
|
concrete.notification.server_sent_events | "false"
|
concrete.mutex.semaphore.priority | "100"
|
concrete.mutex.semaphore.class | "Concrete\Core\System\Mutex\SemaphoreMutex"
|
concrete.mutex.file_lock.priority | "50"
|
concrete.mutex.file_lock.class | "Concrete\Core\System\Mutex\FileLockMutex"
|
concrete.version_db_installed | "20220114215506"
|
concrete.site | "Balance Concierge"
|
Key | Value |
USER | "balance"
|
HOME | "/home/balance"
|
SCRIPT_NAME | "/index.php"
|
REQUEST_URI | "/software-solutions/turnkey-onsite-concierge-department"
|
QUERY_STRING | "" |
REQUEST_METHOD | "GET"
|
SERVER_PROTOCOL | "HTTP/1.1"
|
GATEWAY_INTERFACE | "CGI/1.1"
|
REDIRECT_URL | "/software-solutions/turnkey-onsite-concierge-department"
|
REMOTE_PORT | "35742"
|
SCRIPT_FILENAME | "/home/balance/public_html/index.php"
|
SERVER_ADMIN | "webmaster@balanceconcierge.com"
|
CONTEXT_DOCUMENT_ROOT | "/home/balance/public_html"
|
CONTEXT_PREFIX | "" |
REQUEST_SCHEME | "https"
|
DOCUMENT_ROOT | "/home/balance/public_html"
|
REMOTE_ADDR | "54.242.75.224"
|
SERVER_PORT | "443"
|
SERVER_ADDR | "172.16.184.92"
|
SERVER_NAME | "www.balanceconcierge.com"
|
SERVER_SOFTWARE | "Apache"
|
SERVER_SIGNATURE | "" |
PATH | "/usr/local/jdk/bin:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/usr/local/bin:/usr/X11R6/bin:/root/bin:/opt/bin"
|
HTTP_X_HTTPS | "1"
|
HTTP_HOST | "www.balanceconcierge.com"
|
HTTP_USER_AGENT | "claudebot"
|
HTTP_ACCEPT | "*/*"
|
proxy-nokeepalive | "1"
|
SSL_TLS_SNI | "www.balanceconcierge.com"
|
HTTPS | "on"
|
SCRIPT_URI | "https://www.balanceconcierge.com/software-solutions/turnkey-onsite-concierge-department"
|
SCRIPT_URL | "/software-solutions/turnkey-onsite-concierge-department"
|
UNIQUE_ID | "ZflvCZkk7epNg-tD-sybxwAAAFU"
|
REDIRECT_STATUS | "200"
|
REDIRECT_SSL_TLS_SNI | "www.balanceconcierge.com"
|
REDIRECT_HTTPS | "on"
|
REDIRECT_SCRIPT_URI | "https://www.balanceconcierge.com/software-solutions/turnkey-onsite-concierge-department"
|
REDIRECT_SCRIPT_URL | "/software-solutions/turnkey-onsite-concierge-department"
|
REDIRECT_UNIQUE_ID | "ZflvCZkk7epNg-tD-sybxwAAAFU"
|
FCGI_ROLE | "RESPONDER"
|
PHP_SELF | "/index.php"
|
REQUEST_TIME_FLOAT | 1710845705.0704
|
REQUEST_TIME | 1710845705
|
argv | [] |
argc | 0
|