Пример #1
0
 public function action_messages()
 {
     $current_page = (int) $this->request->query('page');
     $message = $this->request->query('message');
     $levels = $this->request->query('levels');
     $date_from = $this->request->query('date-from');
     $date_to = $this->request->query('date-to');
     $limit = $this->request->query('limit');
     $from_id = $this->request->query('last_message_id');
     $all_matches_before_id = (int) $this->request->query('all_matches_before_id');
     if ($current_page < 1) {
         $current_page = 1;
     }
     if (!is_array($levels)) {
         $levels = array();
     }
     $all_matches_before_id = $from_id ? $all_matches_before_id : 0;
     $filters = $this->logreader->create_filters($message, $levels, $date_from, $date_to, $limit);
     $filters_for_autorefresh = $this->logreader->create_filters($message, $levels, $date_from, NULL, $limit);
     $view = View::factory('logreader/messages');
     $view->levels = $this->logreader->get_levels();
     $view->filters = $filters;
     $view->auto_refresh_time = $this->logreader_config->get_auto_refresh_interval();
     $offset = ($current_page - 1) * $filters['limit'];
     $view->messages = $this->logreader->get_messages($filters['date-from'], $filters['date-to'], $filters['limit'], $offset, $filters['message']['text'] && $filters['message']['valid'] ? $filters['message']['text'] : NULL, $filters['levels'], array(), $from_id);
     $view->all_matches = $view->messages['all_matches'];
     $view->all_matches_before_id = $view->all_matches - $offset;
     $view->messages = $view->messages['messages'];
     $view->current_page = $current_page;
     $view->auto_refresh_url = LogReader_URL::api_base() . 'messages/?' . $filters_for_autorefresh['query_string'];
     $uri = LogReader_URL::base() . "?" . $filters['query_string'];
     $view->pages = LogReader_URL::pager($current_page, ceil(($view->all_matches + $all_matches_before_id) / $filters['limit']), $uri . "&page=%(page)s", $uri);
     $this->data['html'] = (string) $view;
     $this->data['all_matches'] = $view->all_matches;
 }
Пример #2
0
 public function action_index()
 {
     $current_page = (int) $this->request->query('page');
     $message = $this->request->query('message');
     $levels = $this->request->query('levels');
     $date_from = $this->request->query('date-from');
     $date_to = $this->request->query('date-to');
     $limit = $this->request->query('limit');
     if ($current_page < 1) {
         $current_page = 1;
     }
     if (!is_array($levels)) {
         $levels = array();
     }
     $filters = $this->logreader->create_filters($message, $levels, $date_from, $date_to, $limit);
     $filters_for_autorefresh = $this->logreader->create_filters($message, $levels, $date_from, NULL, $limit);
     $view = View::factory('logreader/index');
     $view->stylesheets = array(LogReader_URL::static_base() . 'css/messages.css');
     $view->javascripts = array(LogReader_URL::static_base() . 'js/messages.js');
     $view->user = $this->user;
     $view->is_tester_available = $this->logreader_config->is_tester_available();
     $view->content = View::factory('logreader/messages');
     $view->content->name = 'messages';
     $view->content->levels = $this->logreader->get_levels();
     $view->content->filters = $filters;
     $view->content->auto_refresh_time = $this->logreader_config->get_auto_refresh_interval();
     $offset = ($current_page - 1) * $filters['limit'];
     $view->content->messages = $this->logreader->get_messages($filters['date-from'], $filters['date-to'], $filters['limit'], $offset, $filters['message']['text'] && $filters['message']['valid'] ? $filters['message']['text'] : NULL, $filters['levels'], array(), NULL);
     $view->content->all_matches = $view->content->messages['all_matches'];
     $view->content->all_matches_before_id = $view->content->all_matches - $offset;
     $view->content->messages = $view->content->messages['messages'];
     $view->content->current_page = $current_page;
     $view->content->auto_refresh_url = LogReader_URL::api_base() . 'messages/?' . $filters_for_autorefresh['query_string'];
     $uri = LogReader_URL::base() . "?" . $filters['query_string'];
     $view->content->pages = LogReader_URL::pager($current_page, ceil($view->content->all_matches / $filters['limit']), $uri . "&page=%(page)s", $uri);
     $this->response->body($view);
 }
Пример #3
0
" target="_blank"><?php 
        print $message['date'] . ' ' . $message['time'];
        ?>
</a></td>
									<td class="level"><a href="<?php 
        print LogReader_URL::log_message($message['id']);
        ?>
" target="_blank"><span class="label label-<?php 
        print $message['style'];
        ?>
"><?php 
        print $message['level'];
        ?>
</span></a></td>
									<td class="message"><a href="<?php 
        print LogReader_URL::log_message($message['id']);
        ?>
" target="_blank"><div class="outer"><div><?php 
        print htmlspecialchars($message['type']);
        ?>
 - <?php 
        print htmlspecialchars($message['message']);
        ?>
</div></div></a></td>
								</tr>
								<?php 
    }
    ?>
								<?php 
} else {
    ?>
Пример #4
0
?>
js/underscore-min.js"></script>
		<script src="<?php 
print LogReader_URL::static_base();
?>
js/jquery-1.11.1.min.js"></script>
		<script src="<?php 
print LogReader_URL::static_base();
?>
js/moment.min.js"></script>
		<script src="<?php 
print LogReader_URL::static_base();
?>
bootstrap/js/bootstrap.min.js"></script>
		<script src="<?php 
print LogReader_URL::static_base();
?>
bootstrap/js/bootstrap-datetimepicker.min.js"></script>
		<?php 
if (isset($javascripts) && $javascripts) {
    foreach ($javascripts as $javascript) {
        ?>
		<script src="<?php 
        print $javascript;
        ?>
"></script>
		<?php 
    }
}
?>
	</body>
Пример #5
0
 /**
  * Test for getting page urls.
  * 
  * @dataProvider provider_pager
  * @test
  * @covers LogReader_URL::pager
  * @param  mixed   $expected  Expected result.
  * @param  int     $current   Current page number.
  * @param  int     $total     Number of pages.
  */
 public function test_pager($expected, $current, $total)
 {
     $this->assertSame($expected, LogReader_URL::pager($current, $total, 'http://example.com/page/%(page)s/', 'http://example.com/'));
 }
Пример #6
0
<?php

defined('SYSPATH') or die('No direct script access.');
$logreader_config = new LogReader_Config(Kohana::$config->load('kohana-logreader')->as_array());
LogReader_URL::set_configuration($logreader_config);
// Set route to LogReader static files if static route is not a remote url
if (!Valid::url($logreader_config->get_static_route())) {
    Route::set('logreader/media', $logreader_config->get_static_route() . '(/<file>)', array('file' => '.+'))->defaults(array('controller' => 'LogReader', 'action' => 'media'));
}
// Set route to the LogReader API
Route::set('logreader/api', $logreader_config->get_route() . '/api(/<action>)')->defaults(array('controller' => 'LogReaderAPI', 'action' => 'index'));
// Set route to the LogReader interface to a specific message
Route::set('logreader/message', $logreader_config->get_route() . '/message/<message>', array('message' => '[0-9]+'))->defaults(array('controller' => 'LogReader', 'action' => 'message'));
// Set route to the LogReader interface
Route::set('logreader', $logreader_config->get_route() . '(/<action>)', array('action' => 'about|index'))->defaults(array('controller' => 'LogReader', 'action' => 'index'));