var $appModules = '';
var $appDisabled = array(); // array of disabled modules..
// (based on config option disable)
-
+
var $authUser; // always contains the authenticated user..
var $disable_jstemplate = false; /// disable inclusion of jstemplate code..
var $serverName = false;
var $lang = false;
var $allowSignup = false;
-
+ var $_hasInit;
+ var $appNameShort;
+ var $appDisable;
+ var $uiConfig;
+
/**
* ------------- Standard getAuth/get/post methods of framework.
*
$this->appDisable = $boot->disable;
$this->appDisabled = explode(',', $boot->disable);
- $this->version = $boot->version;
+ $this->version = $boot->version;
+ $this->appVersion = $boot->version;
$this->uiConfig = empty($boot->Pman['uiConfig']) ? false : $boot->Pman['uiConfig'];
if (!empty($boot->Pman['local_autoauth']) &&
if (strlen($base) && $bits[0] != 'PasswordReset') {
- $this->jerror("BADURL","invalid url: $base");
+ $this->jerror("NOTICE-BADURL","invalid url: $base");
}
// deliver template
if (isset($_GET['onloadTrack'])) {
*/
function jerrAuth()
{
- $au = $this->authUser();
+ $au = $this->authUser;
if ($au) {
// is it an authfailure?
- $this->jerr("Permission denied to view this resource", array('authFailure' => true));
+ $this->jerror("LOGIN-NOPERM", "Permission denied to view this resource", array('authFailure' => true));
}
- $this->jerr("Not authenticated", array('authFailure' => true));
+ $this->jerror("LOGIN-NOAUTH", "Not authenticated", array('authFailure' => true));
}
if ($cli) {
echo "ERROR: " .$str . "\n"; // print the error first, as DB might fail..
}
+ $pman = HTML_FlexyFramework::get();
+
+
+
+
- if ($type !== false) {
+ if ($type !== false && empty($pman->nodatabase)) {
if(!empty($errors)){
DB_DataObject::factory('Events')->writeEventLogExtra($errors);
}
+ // various codes that are acceptable.
+ //
+ if (!preg_match('/^(ERROR|NOTICE|LOG)/', $type )) {
+ $type = 'ERROR-' . $type;
+ }
$this->addEvent($type, false, $str);
if ($retHTML) {
header('Content-type: text/html');
- echo "<HTML><HEAD></HEAD><BODY>";
+ echo "<HTML><HEAD></HEAD><BODY><![CDATA[";
// encode html characters so they can be read..
echo str_replace(array('<','>'), array('\u003c','\u003e'),
$this->jsencode(array('success' => true, 'total'=> $total, 'data' => $ar) + $extra, false));
- echo "</BODY></HTML>";
+ echo "]]></BODY></HTML>";
exit;
}
$mods = $this->modulesList();
+
$is_bootstrap = in_array('BAdmin', $mods);
foreach($mods as $mod) {
}
$this->callModules('outputJavascriptIncludes', $this);
-
+ return '';
}
var $css_includes = array();
/**
continue;
}
$this->outputCSSDir("Pman/$mod","*.css");
+
$this->outputSCSS($mod);
+
}
-
+ return ''; // needs to return something as we output it..
}
-
-
-
-
-
-
-
-
+
// --- OLD CODE - in for BC on MO project.... - needs removing...
// and finally the JsTemplate...
echo '<script type="text/javascript" src="'. $this->baseURL. '/Core/JsTemplate"></script>'."\n";
}
-
+ return '';
}
/**
* Gather infor for javascript files..
function onException($ex)
{
- static $reported = false;
+ static $reported = false;
if ($reported) {
return;
}
$reported = true;
- $out = is_a($ex,'Exception') || is_a($ex, 'Error') ? $ex->getMessage() : $ex->toString();
+ $out = (is_a($ex,'Exception') || is_a($ex, 'Error') ? $ex->getMessage() : $ex->toString()) .
+ ' ' . $_SERVER['REQUEST_METHOD'] . ' ' .
+ (empty($_SERVER['REQUEST_URI']) ? 'No URL' : $_SERVER['REQUEST_URI']) .
+ ' ' . (empty($POST) ? '' : file_get_contents('php://input')) ;
//print_R($bt); exit;
//convert the huge backtrace into something that is readable..
$out .= "\n" . implode("\n", $ret);
+
$this->addEvent("EXCEPTION", false, $out);
if ($this->showErrorToUser) {
function addEvent($act, $obj = false, $remarks = '')
{
- if (!empty(HTML_FlexyFramework::get()->Pman['disable_events'])) {
- return;
+ $ff = HTML_FlexyFramework::get();
+
+
+ if (!empty($ff->Pman['disable_events'])
+ || !empty($ff->database_is_readonly)
+ || substr($act, 0, 7) === 'NOTICE-'
+ ) {
+ if (!preg_match('/^(ERROR|EXCEPTION)/', $act)) {
+ return false;
+ }
+ $str = $obj !== false ? "{$obj->tableName()}:{$obj->id} " : '';
+ $de = ini_set('display_errors', 0);
+ trigger_error("{$act} {$str} {$remarks}" , E_USER_NOTICE);
+ ini_set('display_errors', $de );
+ return false;
}
+
$au = $this->getAuthUser();
$e = DB_DataObject::factory('Events');
$e->onInsert(isset($_REQUEST) ? $_REQUEST : array() , $this);
+ if (!preg_match('/^(ERROR|EXCEPTION)/', $act)) {
+ return $e;
+ }
+ $str = $obj !== false ? "{$obj->tableName()}:{$obj->id} " : '';
+ $de = ini_set('display_errors', 0);
+ trigger_error("{$act} [event_id={$e->id}] {$str} {$remarks}" , E_USER_NOTICE);
+ ini_set('display_errors', $de );
-
return $e;
}