When making my hacklets, I use Superglobals to tell me what variables are already available on that page by default so I don't reinvent the wheel.
I have an issue in 156 with not being able to access what I could in 1.55, at the same point.
Consider this code/try this (I used it in admin root).
In 1.55 I get<?php //test_globals.php
//define('DEBUG_AUTOLOAD',true);
require('includes/application_top.php');
echo 'BEFORE HTML<pre>$languages:'; print_r($languages);echo '</pre>';
echo '<pre>$languages_array:';print_r($languages_array);echo '</pre>';
echo '$languages_selected='.$languages_selected.'<br>';
?>
<!doctype html>
<html lang="en">
<head>
<title>Test Globals</title>
<link rel="stylesheet" href="includes/stylesheet.css">
<?php
echo 'HEAD<pre>$languages:'; print_r($languages);echo '</pre>';
echo '<pre>$languages_array:';print_r($languages_array);echo '</pre>';
echo '$languages_selected='.$languages_selected.'<br>';
?>
</head>
<body onload="init()">
<?php require(DIR_WS_INCLUDES . 'header.php'); ?>
Hello World
<?php
echo 'BODY<pre>$languages:'; print_r($languages);echo '</pre>';
echo '<pre>$languages_array:'; print_r($languages_array);echo '</pre>';
echo '$languages_selected='.$languages_selected.'<br>';
?>
<div class="footer-area">
<?php require(DIR_WS_INCLUDES . 'footer.php'); ?>
</div>
</body>
</html>
<?php require(DIR_WS_INCLUDES . 'application_bottom.php'); ?>
Before HTML (ie where you would normally do php stuff)
$languages - available
$languages_array - not set
$languages_selected - not set
HEAD:
$languages - available
$languages_array - not set
$languages_selected - not set
BODY:
$languages - available
$languages_array - available
$languages_selected - available
In 1.56 I get
Before HTML:
$languages - not set
$languages_array - not set
$languages_selected - not set
HEAD:
$languages - not set
$languages_array - not set
$languages_selected - not set
BODY:
$languages - available
$languages_array - available
$languages_selected - available
The init_languages in 1.56 is a bit later than 1.5, I moved it earlier as much as possible (without breaking anything), but no change.
So, if "things have been tightened up in 1.56", the question is, what is one supposed to do to get at these variables now?
Bookmarks