throw new \RuntimeException(sprintf('Unable to write in the cache directory (%s).', $dir));
}
$tmpFile = tempnam($dir, basename($key));
if (false !== @file_put_contents($tmpFile, $content) && @rename($tmpFile, $key)) {
@chmod($key, 0666 & ~umask());
if (self::FORCE_BYTECODE_INVALIDATION == ($this->options & self::FORCE_BYTECODE_INVALIDATION)) {
// Compile cached file into bytecode cache
if (\function_exists('opcache_invalidate') && filter_var(ini_get('opcache.enable'), FILTER_VALIDATE_BOOLEAN)) {
@opcache_invalidate($key, true);
} elseif (\function_exists('apc_compile_file')) {
apc_compile_file($key);
}
}
return;
}
throw new \RuntimeException(sprintf('Failed to write cache file "%s".', $key));
}
public function getTimestamp($key)
{
if (!file_exists($key)) {
return 0;
}
return (int) @filemtime($key);
}
}
class_alias('Twig\Cache\FilesystemCache', 'Twig_Cache_Filesystem');
if (!$this->isAutoReload() || $this->isTemplateFresh($name, $this->cache->getTimestamp($key))) {
$this->cache->load($key);
}
$source = null;
if (!class_exists($cls, false)) {
$loader = $this->getLoader();
if (!$loader instanceof SourceContextLoaderInterface) {
$source = new Source($loader->getSource($name), $name);
} else {
$source = $loader->getSourceContext($name);
}
$content = $this->compileSource($source);
if ($this->bcWriteCacheFile) {
$this->writeCacheFile($key, $content);
} else {
$this->cache->write($key, $content);
$this->cache->load($key);
}
if (!class_exists($mainCls, false)) {
/* Last line of defense if either $this->bcWriteCacheFile was used,
* $this->cache is implemented as a no-op or we have a race condition
* where the cache was cleared between the above calls to write to and load from
* the cache.
*/
eval('?>'.$content);
}
}
if (!class_exists($cls, false)) {
throw new RuntimeError(sprintf('Failed to load Twig template "%s", index "%s": cache might be corrupted.', $name, $index), -1, $source);
}
}
if (!$this->runtimeInitialized) {
$this->initRuntime();
/**
* Loads a template internal representation.
*
* This method is for internal use only and should never be called
* directly.
*
* @param string $name The template name
* @param int $index The index if it is an embedded template
*
* @return \Twig_TemplateInterface A template instance representing the given template name
*
* @throws LoaderError When the template cannot be found
* @throws RuntimeError When a previously generated cache is corrupted
* @throws SyntaxError When an error occurred during compilation
*
* @internal
*/
public function loadTemplate($name, $index = null)
{
return $this->loadClass($this->getTemplateClass($name), $name, $index);
}
/**
* @internal
*/
public function loadClass($cls, $name, $index = null)
{
$mainCls = $cls;
if (null !== $index) {
$cls .= '___'.$index;
}
if (isset($this->loadedTemplates[$cls])) {
return $this->loadedTemplates[$cls];
}
if (!class_exists($cls, false)) {
if ($this->bcGetCacheFilename) {
$key = $this->getCacheFilename($name);
} else {
*
* @param string|TemplateWrapper|\Twig\Template $name The template name
*
* @throws LoaderError When the template cannot be found
* @throws RuntimeError When a previously generated cache is corrupted
* @throws SyntaxError When an error occurred during compilation
*
* @return TemplateWrapper
*/
public function load($name)
{
if ($name instanceof TemplateWrapper) {
return $name;
}
if ($name instanceof Template) {
return new TemplateWrapper($this, $name);
}
return new TemplateWrapper($this, $this->loadTemplate($name));
}
/**
* Loads a template internal representation.
*
* This method is for internal use only and should never be called
* directly.
*
* @param string $name The template name
* @param int $index The index if it is an embedded template
*
* @return \Twig_TemplateInterface A template instance representing the given template name
*
* @throws LoaderError When the template cannot be found
* @throws RuntimeError When a previously generated cache is corrupted
* @throws SyntaxError When an error occurred during compilation
*
* @internal
*/
public function loadTemplate($name, $index = null)
}
$key = null;
$output = false;
if ( false !== $expires ) {
ksort($data);
$key = md5($file.json_encode($data));
$output = $this->get_cache($key, self::CACHEGROUP, $cache_mode);
}
if ( false === $output || null === $output ) {
$twig = $this->get_twig();
if ( strlen($file) ) {
$loader = $this->get_loader();
$result = $loader->getCacheKey($file);
do_action('timber_loader_render_file', $result);
}
$data = apply_filters('timber_loader_render_data', $data);
$data = apply_filters('timber/loader/render_data', $data, $file);
$template = $twig->load($file);
$output = $template->render($data);
}
if ( false !== $output && false !== $expires && null !== $key ) {
$this->delete_cache();
$this->set_cache($key, $output, self::CACHEGROUP, $expires, $cache_mode);
}
$output = apply_filters('timber_output', $output);
return apply_filters('timber/output', $output, $data, $file);
}
protected function delete_cache() {
Cleaner::delete_transients();
}
/**
* Get first existing template.
*
* @param array|string $templates Name(s) of the Twig template(s) to choose from.
* @return string|bool Name of chosen template, otherwise false.
if ( $via_render ) {
$file = apply_filters('timber_render_file', $file);
} else {
$file = apply_filters('timber_compile_file', $file);
}
$output = false;
if ($file !== false) {
if ( is_null($data) ) {
$data = array();
}
if ( $via_render ) {
$data = apply_filters('timber_render_data', $data);
} else {
$data = apply_filters('timber_compile_data', $data);
}
$output = $loader->render($file, $data, $expires, $cache_mode);
} else {
if ( is_array($filenames) ) {
$filenames = implode(", ", $filenames);
}
Helper::error_log( 'Error loading your template files: '.$filenames.'. Make sure one of these files exists.' );
}
do_action('timber_compile_done');
return $output;
}
/**
* Compile a string.
*
* @api
* @example
* ```php
* $data = array(
* 'username' => 'Jane Doe',
* );
$twig = $dummy_loader->get_twig();
$template = $twig->createTemplate($string);
return $template->render($data);
}
/**
* Fetch function.
*
* @api
* @param array|string $filenames Name of the Twig file to render. If this is an array of files, Timber will
* render the first file that exists.
* @param array $data Optional. An array of data to use in Twig template.
* @param bool|int $expires Optional. In seconds. Use false to disable cache altogether. When passed an
* array, the first value is used for non-logged in visitors, the second for users.
* Default false.
* @param string $cache_mode Optional. Any of the cache mode constants defined in TimberLoader.
* @return bool|string The returned output.
*/
public static function fetch( $filenames, $data = array(), $expires = false, $cache_mode = Loader::CACHE_USE_DEFAULT ) {
$output = self::compile($filenames, $data, $expires, $cache_mode, true);
$output = apply_filters('timber_compile_result', $output);
return $output;
}
/**
* Render function.
*
* Passes data to a Twig file and echoes the output.
*
* @api
* @example
* ```php
* $context = Timber::context();
*
* Timber::render( 'index.twig', $context );
* ```
* @param array|string $filenames Name of the Twig file to render. If this is an array of files, Timber will
* render the first file that exists.
* @param array $data Optional. An array of data to use in Twig template.
* @param bool|int $expires Optional. In seconds. Use false to disable cache altogether. When passed an
* Passes data to a Twig file and echoes the output.
*
* @api
* @example
* ```php
* $context = Timber::context();
*
* Timber::render( 'index.twig', $context );
* ```
* @param array|string $filenames Name of the Twig file to render. If this is an array of files, Timber will
* render the first file that exists.
* @param array $data Optional. An array of data to use in Twig template.
* @param bool|int $expires Optional. In seconds. Use false to disable cache altogether. When passed an
* array, the first value is used for non-logged in visitors, the second for users.
* Default false.
* @param string $cache_mode Optional. Any of the cache mode constants defined in TimberLoader.
* @return bool|string The echoed output.
*/
public static function render( $filenames, $data = array(), $expires = false, $cache_mode = Loader::CACHE_USE_DEFAULT ) {
$output = self::fetch($filenames, $data, $expires, $cache_mode);
echo $output;
return $output;
}
/**
* Render a string with Twig variables.
*
* @api
* @example
* ```php
* $data = array(
* 'username' => 'Jane Doe',
* );
*
* Timber::render_string( 'Hi {{ username }}, I’m a string with a custom Twig variable', $data );
* ```
* @param string $string A string with Twig variables.
* @param array $data An array of data to use in Twig template.
* @return bool|string
*/
use Timber\Timber;
/*
* The Template for displaying all single posts
*/
$gantry = Gantry\Framework\Gantry::instance();
$theme = $gantry['theme'];
// We need to render contents of <head> before plugin content gets added.
$context = Timber::get_context();
$context['page_head'] = $theme->render('partials/page_head.html.twig', $context);
$post = Timber::query_post();
$context['post'] = $post;
$context['wp_title'] .= ' - ' . $post->title();
Timber::render(['single-' . $post->ID . '.html.twig', 'single-' . $post->post_type . '.html.twig', 'single.html.twig'], $context);
}
break;
}
}
if ( ! $template ) {
$template = get_index_template();
}
/**
* Filters the path of the current template before including it.
*
* @since 3.0.0
*
* @param string $template The path of the template to include.
*/
$template = apply_filters( 'template_include', $template );
if ( $template ) {
include $template;
} elseif ( current_user_can( 'switch_themes' ) ) {
$theme = wp_get_theme();
if ( $theme->errors() ) {
wp_die( $theme->errors() );
}
}
return;
}
<?php
/**
* Loads the WordPress environment and template.
*
* @package WordPress
*/
if ( ! isset( $wp_did_header ) ) {
$wp_did_header = true;
// Load the WordPress library.
require_once __DIR__ . '/wp-load.php';
// Set up the WordPress query.
wp();
// Load the theme template.
require_once ABSPATH . WPINC . '/template-loader.php';
}
<?php /** * Front to the WordPress application. This file doesn't do anything, but loads * wp-blog-header.php which does and tells WordPress to load the theme. * * @package WordPress */ /** * Tells WordPress to load the WordPress theme and output it. * * @var bool */ define( 'WP_USE_THEMES', true ); /** Loads the WordPress Environment and Template */ require __DIR__ . '/wp-blog-header.php';
| Key | Value |
| TCM_PostShown | WP_Post Object ( [ID] => 1292 [post_author] => 4 [post_date] => 2020-08-20 12:54:36 [post_date_gmt] => 2020-08-20 16:54:36 [post_content] => So, you have finally completed medical detox and inpatient addiction treatment. You have done all of the difficult therapeutic work, and it’s finally time to transfer to sober living - where you will have significantly more personal freedom (and therefore, personal responsibility). Sober living might seem like a scary next step to take simply because it is unknown. What should you expect? Will it be like inpatient treatment, only with fewer rules? Will you be forced to work a full-time job and take drug tests daily? Will you have to stick to a strict curfew? The truth of the matter is the rules and regulations will vary significantly based on the sober living house itself. Some sober living houses enforce strict guidelines while others are pretty lax. However, be weary - the houses that do not enforce a strict set of guidelines might not have the best interest of their residents in mind. The rule of thumb is that the houses that keep their residents accountable are typically the most reputable. At Riverbend Residence, we encourage our residents to stay accountable by sticking to some general house rules. Nothing too crazy, just a list of guidelines designed to help our residents’ transition seamlessly back into independent living while reinforcing life and coping skills and becoming functional members of society. <img class="alignleft size-full wp-image-1293" src="https://riverbendresidence.com/wp-content/uploads/2020/08/Do-Sober-Homes-Have-a-Curfew.jpg" alt="Do Sober Homes Have a Curfew?" width="600" height="400" /> <h2>Halfway Houses and Curfews</h2> Sober living houses that do not enforce a curfew are likely “flophouses,” meaning they offer no continuum of clinical care and typically only exist to take advantage of insurance policies via unnecessary drug testing. Reputable sober living houses - like Riverbend Residence - will ensure that residents are sticking to a consistent schedule so that they learn how to maintain structure once they transfer into fully independent living. Part of that structure includes a curfew. We require that our residents wake up by a certain time every morning and return home by a certain time every evening. Why? There are several reasons, which include (but are not limited to): <ul> <li>Waking up early helps residents fit more into the day, which helps them feel more productive and ultimately helps them build self-esteem.</li> <li>Enforcing a curfew at night ensures that residents can check in with support staff at night, who might need to administer medication if a resident is taking medication. Regardless of whether or not a medication is addictive, residents will not be able to hold onto their prescriptions - support staff members will hand them out whenever necessary.</li> <li>Nighttime tends to be the most triggering time for many individuals who have suffered at the hands of substance abuse and dependence. Most illicit activities happen at night - parting, heavy drinking, drug abuse. Ensuring that all residents are back by a certain time limits the amount of emotional and psychological triggers that our residents face.</li> <li>Having rules in places helps to build accountability, and building accountability is conducive to long-term sobriety. They often say that accountability is “doing the right thing, even though no one is watching.” Men and women who are new to recovery must learn this lesson early on, and begin to follow the rules because they know following the rules is the right thing to do, not always because they “believe in the” right away.</li> </ul> At <a href="https://riverbendresidence.com/">Riverbend Residence</a>, we make sure that our residents know and understand all of the rules that are in place as soon as they are admitted to our sober living houses, simply so that there is no confusion. Our on-site support staff members ensure that guidelines are being followed and that there are reasonable consequences if the guidelines are ignored. Our main priority is to continue instilling relapse prevention skills, helping our residents maintain solid sobriety for years to come. <h2>Riverbend Residence - Sober Living</h2> Our gender-specific sober living houses in the heart of Sussex County, New Jersey are reputable, luxury-style homes that offer our residents all the comforts of home along with several additional amenities. If you are ready to take the next step on your recovery journey, give us a call today. [post_title] => Do Sober Homes Have a Curfew? [post_excerpt] => [post_status] => publish [comment_status] => closed [ping_status] => open [post_password] => [post_name] => do-sober-homes-have-a-curfew [to_ping] => [pinged] => [post_modified] => 2020-08-20 12:54:36 [post_modified_gmt] => 2020-08-20 16:54:36 [post_content_filtered] => [post_parent] => 0 [guid] => https://riverbendresidence.com/?p=1292 [menu_order] => 0 [post_type] => post [post_mime_type] => [comment_count] => 0 [filter] => raw [status] => publish [id] => 1292 [slug] => do-sober-homes-have-a-curfew [custom] => Array ( [_edit_lock] => 1598303928:4 [_edit_last] => 3 [_thumbnail_id] => 1293 [_wp_page_template] => default [_yoast_wpseo_focuskw] => curfew [_yoast_wpseo_metadesc] => Reputable sober homes ensure that residents are sticking to a consistent schedule so that they learn how to maintain structure once they transfer back into independent living. [_yoast_wpseo_linkdex] => 67 [_yoast_wpseo_content_score] => 30 [_yoast_wpseo_primary_category] => 10 [_yoast_wpseo_title] => Do Sober Homes Have a Curfew? | Riverbend Residence [_wp_old_date] => 2020-08-19 ) ) |
| TCM_SnippetsWrittenIds | Array ( ) |
| TCM_SnippetsWrittenMd5 | Array ( ) |
| TCM_Cache_Query_2_ | Array ( [0] => Array ( [id] => post [text] => Post (post) [name] => Post (post) ) [1] => Array ( [id] => page [text] => Page (page) [name] => Page (page) ) ) |
| Key | Value |
| SERVER_SOFTWARE | nginx |
| REQUEST_URI | /do-sober-homes-have-a-curfew/ |
| USER | fpm200067 |
| HOME | /home/fpm200067 |
| WPENGINE_ACCOUNT | riverbendresid |
| WPENGINE_PHPSESSIONS | on |
| WPENGINE_DB_SESSIONS | off |
| SCRIPT_NAME | /index.php |
| SCRIPT_FILENAME | /nas/content/live/riverbendresid/index.php |
| HTTP_X_UA_ORIGINAL | CCBot/2.0 (https://commoncrawl.org/faq/) |
| HTTP_X_WPE_INSTALL_NAME | riverbendresid |
| REMOTE_ADDR | 18.97.9.175 |
| DOCUMENT_URI | /index.php |
| PATH_TRANSLATED | /nas/content/live/riverbendresid/index.php |
| HTTP_X_CACHE_GROUP | normal |
| HTTP_X_WORDPRESS_TYPE | DEFAULT |
| HTTP_ACCEPT_ENCODING | gzip |
| HTTP_CF_RAY | 9cb2313ced9581d0-IAD |
| HTTP_CF_CONNECTING_IP | 18.97.9.175, 18.97.9.175, 18.97.9.175 |
| HTTP_X_WPE_SSL | 1 |
| PHP_VALUE | upload_max_filesize=50M; post_max_size=100M; |
| SERVER_PROTOCOL | HTTP/1.1 |
| HTTP_X_IS_BOT | 1 |
| HTTP_RAWHOST | riverbendresidence.com |
| HTTP_CF_IPCOUNTRY | US |
| HTTP_WPE_READONLY | on |
| HTTP_X_WPE_EDGE | AN |
| HTTP_X_WPENGINE_PHP_VERSION | 7.4 |
| SYSLOG_IDENT | phperr-riverbendresid |
| SERVER_NAME | riverbendresidence.com |
| REQUEST_SCHEME | http |
| IS_WPE | 1 |
| SERVER_ADDR | 127.0.0.1 |
| REMOTE_PORT | |
| HTTP_ACCEPT_LANGUAGE | en-US,en;q=0.5 |
| CONTENT_LENGTH | 0 |
| QUERY_STRING | |
| GATEWAY_INTERFACE | CGI/1.1 |
| HTTP_VIA | 1.1 pod-404710 (Varnish/7.7) |
| HTTP_USER_AGENT | CCBot/2.0 (https://commoncrawl.org/faq/) |
| HTTP_CF_VISITOR | {\"scheme\":\"https\"} |
| HTTP_X_REAL_IP_REMOTE | 172.70.175.120 |
| HTTP_X_WPE_LOCAL_SSL | 1 |
| PHP_ADMIN_VALUE | syslog.ident=phperr-riverbendresid; newrelic.appname=riverbendresid; newrelic.browser_monitoring.auto_instrument=off; newrelic.enabled=off; newrelic.license=; sendmail_path=/bin/sendmail-wrapper.sh 5b7ea12d5efa8de29e9e6505a5de420da8ba2ef3 /usr/sbin/sendmail -t -i; |
| DOCUMENT_ROOT | /nas/content/live/riverbendresid |
| CONTENT_TYPE | |
| HTTP_X_WPE_REQUEST_ID | aeff5007ce23a82f0a4e184419bf3f4e |
| HTTP_X_FORWARDED_PROTO | https |
| HTTP_ACCEPT | text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 |
| HTTP_X_FORWARDED_HOST | riverbendresidence.com |
| REQUEST_METHOD | GET |
| REDIRECT_STATUS | 200 |
| HTTPS | on |
| SERVER_PORT | 80 |
| HTTP_HOST | riverbendresidence.com |
| HTTP_CDN_LOOP | cloudflare; loops=1 |
| PATH_INFO | |
| FCGI_ROLE | RESPONDER |
| PHP_SELF | /index.php |
| REQUEST_TIME_FLOAT | 1770627793.51 |
| REQUEST_TIME | 1770627793 |
| Key | Value |
| USER | fpm200067 |
| HOME | /home/fpm200067 |
| WPENGINE_ACCOUNT | riverbendresid |
| WPENGINE_PHPSESSIONS | on |
| WPENGINE_DB_SESSIONS | off |
| SCRIPT_NAME | /index.php |
| SCRIPT_FILENAME | /nas/content/live/riverbendresid/index.php |
| HTTP_X_UA_ORIGINAL | CCBot/2.0 (https://commoncrawl.org/faq/) |
| HTTP_X_WPE_INSTALL_NAME | riverbendresid |
| REMOTE_ADDR | 18.97.9.175 |
| DOCUMENT_URI | /index.php |
| PATH_TRANSLATED | /nas/content/live/riverbendresid/index.php |
| SERVER_SOFTWARE | nginx |
| HTTP_X_CACHE_GROUP | normal |
| HTTP_X_WORDPRESS_TYPE | DEFAULT |
| HTTP_ACCEPT_ENCODING | gzip |
| HTTP_CF_RAY | 9cb2313ced9581d0-IAD |
| HTTP_CF_CONNECTING_IP | 18.97.9.175, 18.97.9.175, 18.97.9.175 |
| HTTP_X_WPE_SSL | 1 |
| PHP_VALUE | upload_max_filesize=50M; post_max_size=100M; |
| SERVER_PROTOCOL | HTTP/1.1 |
| HTTP_X_IS_BOT | 1 |
| HTTP_RAWHOST | riverbendresidence.com |
| HTTP_CF_IPCOUNTRY | US |
| HTTP_WPE_READONLY | on |
| HTTP_X_WPE_EDGE | AN |
| HTTP_X_WPENGINE_PHP_VERSION | 7.4 |
| SYSLOG_IDENT | phperr-riverbendresid |
| SERVER_NAME | riverbendresidence.com |
| REQUEST_URI | /do-sober-homes-have-a-curfew/ |
| REQUEST_SCHEME | http |
| IS_WPE | 1 |
| SERVER_ADDR | 127.0.0.1 |
| REMOTE_PORT | |
| HTTP_ACCEPT_LANGUAGE | en-US,en;q=0.5 |
| CONTENT_LENGTH | 0 |
| QUERY_STRING | |
| GATEWAY_INTERFACE | CGI/1.1 |
| HTTP_VIA | 1.1 pod-404710 (Varnish/7.7) |
| HTTP_USER_AGENT | CCBot/2.0 (https://commoncrawl.org/faq/) |
| HTTP_CF_VISITOR | {"scheme":"https"} |
| HTTP_X_REAL_IP_REMOTE | 172.70.175.120 |
| HTTP_X_WPE_LOCAL_SSL | 1 |
| PHP_ADMIN_VALUE | syslog.ident=phperr-riverbendresid; newrelic.appname=riverbendresid; newrelic.browser_monitoring.auto_instrument=off; newrelic.enabled=off; newrelic.license=; sendmail_path=/bin/sendmail-wrapper.sh 5b7ea12d5efa8de29e9e6505a5de420da8ba2ef3 /usr/sbin/sendmail -t -i; |
| DOCUMENT_ROOT | /nas/content/live/riverbendresid |
| CONTENT_TYPE | |
| HTTP_X_WPE_REQUEST_ID | aeff5007ce23a82f0a4e184419bf3f4e |
| HTTP_X_FORWARDED_PROTO | https |
| HTTP_ACCEPT | text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 |
| HTTP_X_FORWARDED_HOST | riverbendresidence.com |
| REQUEST_METHOD | GET |
| REDIRECT_STATUS | 200 |
| HTTPS | on |
| SERVER_PORT | 80 |
| HTTP_HOST | riverbendresidence.com |
| HTTP_CDN_LOOP | cloudflare; loops=1 |
| PATH_INFO | |
| FCGI_ROLE | RESPONDER |
| PHP_SELF | /index.php |
| REQUEST_TIME_FLOAT | 1770627793.51 |
| REQUEST_TIME | 1770627793 |