Esempio n. 1
0
function error($description, $error_place = '', $params = array())
{
    if (defined('DEVELOPER_ENVIROMENT')) {
        trigger_error('error', E_USER_WARNING);
        echo $description . '<br>' . $error_place . '<br><pre>';
        print_r($params);
        echo '</pre>';
    }
    debug::write_error($description, $error_place, $params);
    rollback_user_transaction();
    if (debug::is_console_enabled()) {
        echo debug::parse_html_console();
    } else {
        $message = '';
        if ($user_id = user::get_id()) {
            $message .= "user id:\t{$user_id}\nlogin:\t\t" . user::get_login() . "\ne-mail:\t\t" . user::get_email() . "\n";
        }
        $message .= "ip:\t\t" . sys::client_ip() . "\nrequest:\t" . REQUEST_URI . "\nerror:\t\t{$title}\ndescription:\t{$msg}";
        $mail = new mime_mail();
        $mail->set_body($message);
        $mail->build_message();
        $mail->send('developer', DEVELOPER_EMAIL, '', WEBSITE_EMAIL, $_SERVER['HTTP_HOST'] . ' internal error!');
    }
    ob_end_flush();
    exit;
}
 function _displayBrowse($path, &$root_group, &$current_group)
 {
     if ($root_group != $current_group) {
         echo '<p><a href="' . $this->getBaseURL() . '?browse=' . $path . '/..">Back</a></p>';
     }
     if (is_a($current_group, 'LimbGroupTest')) {
         $group_tests = $current_group->getTestCasesHandles();
     } else {
         $group_tests = array();
     }
     $buffer = "<br><a href='" . $this->getBaseURL() . "?perform={$path}&back=1'>Run all tests from this group</a>\n";
     $buffer .= "<p>Available test groups in '" . $current_group->getLabel() . "':</p>\n";
     if (sizeof($group_tests)) {
         $buffer .= "<ul>";
         foreach ($group_tests as $index => $group_test) {
             resolve_handle($group_test);
             if (!is_a($group_test, 'LimbGroupTest')) {
                 $buffer .= "<li><a href='" . $this->getBaseURL() . "?perform={$path}/{$index}'>P</a> " . $group_test->getLabel() . "</li>\n";
             } else {
                 $buffer .= "<li><a href='" . $this->getBaseURL() . "?perform={$path}/{$index}'>P</a> <a href='" . $this->getBaseURL() . "?browse={$path}/{$index}'>B</a> " . $group_test->getLabel() . "</li>\n";
             }
         }
         $buffer .= "</ul>\n";
     } else {
         $buffer .= "<p>No groups available.</p> \n";
     }
     echo $buffer;
     echo debug::parse_html_console();
 }
Esempio n. 3
0
function error($description, $error_place='', $params=array()) 
{
	if(isset($GLOBALS['error_recursion']) && $GLOBALS['error_recursion'])
		die();
		
	$GLOBALS['error_recursion'] = true;
	
	if(defined('DEVELOPER_ENVIROMENT'))
	{
		trigger_error('error', E_USER_WARNING);
		
		echo(  $description . '<br>' . $error_place . '<br><pre>');
		print_r($params);
		echo('</pre>');
	}
	
	$description = $description . "\n\nback trace:\n" . get_trace_back();
		
	rollback_user_transaction();

	debug :: set_message_output(DEBUG_OUTPUT_MESSAGE_STORE | DEBUG_OUTPUT_MESSAGE_SEND);
	debug :: write_error($description, $error_place, $params);
	
	if (debug :: is_console_enabled())
	{
		debug :: write_error($description, $error_place, $params);
		echo debug :: parse_html_console();
	}
		
	ob_end_flush();
			
	exit;
}
  function run(&$filter_chain, &$request, &$response)
  {
    $filter_chain->next();

    if( $response->get_content_type() == 'text/html' &&
        $response->get_status() == 200)//only 200?
    {
      if (debug :: is_console_enabled())
        $response->write(debug :: parse_html_console());

      $response->write(message_box :: parse());//It definetly should be somewhere else!
    }
  }
 function run()
 {
     $request =& request::instance();
     $response =& new http_response();
     $filter_chain =& new filter_chain($request, $response);
     $this->_register_filters($filter_chain);
     $filter_chain->process();
     if ($response->get_content_type() == 'text/html' && $response->get_status() == 200) {
         if (debug::is_console_enabled()) {
             $response->write(debug::parse_html_console());
         }
         $response->write(message_box::parse());
         //It definetly should be somewhere else!
     }
     $response->commit();
 }
 function run()
 {
     $this->_inititiliaze_user_session();
     $request =& request::instance();
     $response =& new http_response();
     $filter_chain =& new filter_chain($request, $response);
     $this->_register_filters($filter_chain);
     $filter_chain->process();
     if (!$response->file_sent()) {
         if (debug::is_console_enabled()) {
             echo debug::parse_html_console();
         }
         echo message_box::parse();
         //It definetly should be somewhere else!
     }
     $response->commit();
 }
Esempio n. 7
0
    echo "<p><a href='" . $_SERVER['PHP_SELF'] . "'>Run more tests</a></p>";
    echo debug::parse_html_console();
    ob_end_flush();
    exit(0);
}
if (isset($_GET['group'])) {
    TestManager::runGroupTest(ucfirst($_GET['group']), $_GET['group'], new HTMLReporter());
    echo "<p><a href='" . $_SERVER['PHP_SELF'] . "'>Run more tests</a></p>";
    echo debug::parse_html_console();
    ob_end_flush();
    exit(0);
}
if (isset($_GET['case'])) {
    TestManager::runTestCase($_GET['case'], new HTMLReporter());
    echo "<p><a href='" . $_SERVER['PHP_SELF'] . "?show=cases'>Run more tests</a></p>";
    echo debug::parse_html_console();
    ob_end_flush();
    exit(0);
}
echo "<h1>Unit Test Suite</h1>\n";
echo "<p><a href='" . $_SERVER['PHP_SELF'] . "'>Test groups</a>";
echo " || <a href='" . $_SERVER['PHP_SELF'] . "?show=cases'>Test cases</a></p>";
if (isset($_GET['show']) && $_GET['show'] == 'cases') {
    echo HTMLTestManager::getGroupTestList(LIMB_DIR . '/tests/cases');
    echo HTMLTestManager::getGroupTestList(PROJECT_DIR . '/tests/cases');
} else {
    /* no group specified, so list them all */
    echo HTMLTestManager::getGroupTestList(LIMB_DIR . '/tests/groups');
    echo HTMLTestManager::getGroupTestList(PROJECT_DIR . '/tests/groups');
}
ob_end_flush();
Esempio n. 8
0
 function parse_console()
 {
     if (sys::exec_mode() == 'cli') {
         return debug::parse_cli_console();
     } else {
         return debug::parse_html_console();
     }
 }
  function run(&$filter_chain, &$request, &$response)
  { 
    debug :: add_timing_point('authentication filter started');
  	
    if(!$object_data = fetch_requested_object($request))
    {
      if(!$node = map_request_to_node($request))
      {
      	if(defined('ERROR_DOCUMENT_404'))
      		$response->redirect(ERROR_DOCUMENT_404);
      	else
      		$response->header("HTTP/1.1 404 Not found");
      	return;
      }
      
      
      $user =& user :: instance();
    	if (!$user->is_logged_in())
    	{
    		$tree = tree :: instance();
    		
    		$response->redirect('/root/login?redirect='. $tree->get_path_to_node($node));
    		return;
    	}	
    	else
    	{
    		debug :: write_error('content object not allowed or retrieved', __FILE__ . ' : ' . __LINE__ . ' : ' .  __FUNCTION__);
    		        	
    		if(defined('ERROR_DOCUMENT_403'))
    			$response->redirect(ERROR_DOCUMENT_403);
    		else
    			$response->header("HTTP/1.1 403 Access denied");
    		return;
    	}	
    }
    
    $object =& wrap_with_site_object($object_data); 

    $site_object_controller =& $object->get_controller();
    
    if(($action = $site_object_controller->determine_action($request)) === false)
    {
    	debug :: write_error('"'. $action . '" action not found', __FILE__ . ' : ' . __LINE__ . ' : ' .  __FUNCTION__);
    
    	if(defined('ERROR_DOCUMENT_404'))
    		$response->redirect(ERROR_DOCUMENT_404);
    	else
    		$response->header("HTTP/1.1 404 Not found");

      debug :: add_timing_point('authentication filter finished');
    	
    	$filter_chain->next();
    	return;
    }
        
    $actions = $object->get_attribute('actions');
    
    if(!isset($actions[$action]))
    {
    	debug :: write_error('"'. $action . '" action is not accessible', __FILE__ . ' : ' . __LINE__ . ' : ' .  __FUNCTION__);
    	
    	if (debug :: is_console_enabled())
    		echo debug :: parse_html_console();
    		
    	if(defined("ERROR_DOCUMENT_403"))
    		$response->redirect(ERROR_DOCUMENT_403);
    	else
    		$response->header("HTTP/1.1 403 Access denied");
    	return;
    }

    debug :: add_timing_point('authentication filter finished');
          
    $filter_chain->next();        
  }