Logs table for mobiles
							parent
							
								
									e868e130b0
								
							
						
					
					
						commit
						7c87073242
					
				| 
						 | 
				
			
			@ -105,6 +105,7 @@ $sm_lang = array(
 | 
			
		|||
		'status' => 'Статус',
 | 
			
		||||
		'email' => 'Имейл',
 | 
			
		||||
		'sms' => 'SMS',
 | 
			
		||||
		'no_logs' => 'No logs',
 | 
			
		||||
	),
 | 
			
		||||
	'servers' => array(
 | 
			
		||||
		'server' => 'Сървър',
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -105,6 +105,7 @@ $sm_lang = array(
 | 
			
		|||
		'status' => 'Status',
 | 
			
		||||
		'email' => 'Email',
 | 
			
		||||
		'sms' => 'SMS',
 | 
			
		||||
		'no_logs' => 'No logs',
 | 
			
		||||
	),
 | 
			
		||||
	'servers' => array(
 | 
			
		||||
		'server' => 'Server',
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -105,6 +105,7 @@ $sm_lang = array(
 | 
			
		|||
		'status' => 'Status',
 | 
			
		||||
		'email' => 'Email',
 | 
			
		||||
		'sms' => 'SMS',
 | 
			
		||||
		'no_logs' => 'No logs',
 | 
			
		||||
	),
 | 
			
		||||
	'servers' => array(
 | 
			
		||||
		'server' => 'Server',
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -105,6 +105,7 @@ $sm_lang = array(
 | 
			
		|||
		'status' => 'Estado',
 | 
			
		||||
		'email' => 'Email',
 | 
			
		||||
		'sms' => 'SMS',
 | 
			
		||||
		'no_logs' => 'No logs',
 | 
			
		||||
	),
 | 
			
		||||
	'servers' => array(
 | 
			
		||||
		'server' => 'Servidores',
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -105,6 +105,7 @@ $sm_lang = array(
 | 
			
		|||
		'status' => 'État',
 | 
			
		||||
		'email' => 'email',
 | 
			
		||||
		'sms' => 'SMS',
 | 
			
		||||
		'no_logs' => 'Aucun événement',
 | 
			
		||||
	),
 | 
			
		||||
	'servers' => array(
 | 
			
		||||
		'server' => 'Serveur',
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -105,6 +105,7 @@ $sm_lang = array(
 | 
			
		|||
		'status' => 'Stato',
 | 
			
		||||
		'email' => 'Email',
 | 
			
		||||
		'sms' => 'SMS',
 | 
			
		||||
		'no_logs' => 'No logs',
 | 
			
		||||
	),
 | 
			
		||||
	'servers' => array(
 | 
			
		||||
		'server' => 'Server',
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -105,6 +105,7 @@ $sm_lang = array(
 | 
			
		|||
		'status' => '상태',
 | 
			
		||||
		'email' => 'email',
 | 
			
		||||
		'sms' => 'sms',
 | 
			
		||||
		'no_logs' => 'No logs',
 | 
			
		||||
	),
 | 
			
		||||
	'servers' => array(
 | 
			
		||||
		'server' => '서버',
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -105,6 +105,7 @@ $sm_lang = array(
 | 
			
		|||
		'status' => 'Status',
 | 
			
		||||
		'email' => 'Email',
 | 
			
		||||
		'sms' => 'SMS',
 | 
			
		||||
		'no_logs' => 'No logs',
 | 
			
		||||
	),
 | 
			
		||||
	'servers' => array(
 | 
			
		||||
		'server' => 'Server',
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -105,6 +105,7 @@ $sm_lang = array(
 | 
			
		|||
        'status' => 'Status',
 | 
			
		||||
        'email' => 'Email',
 | 
			
		||||
        'sms' => 'SMS',
 | 
			
		||||
		'no_logs' => 'No logs',
 | 
			
		||||
    ),
 | 
			
		||||
    'servers' => array(
 | 
			
		||||
        'server' => 'Servidor',
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -105,6 +105,7 @@ $sm_lang = array(
 | 
			
		|||
		'status' => '状态',
 | 
			
		||||
		'email' => '邮件',
 | 
			
		||||
		'sms' => '短信',
 | 
			
		||||
		'no_logs' => 'No logs',
 | 
			
		||||
	),
 | 
			
		||||
	'servers' => array(
 | 
			
		||||
		'server' => '服务器',
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -194,9 +194,6 @@ abstract class AbstractController implements ControllerInterface {
 | 
			
		|||
		// add sidebar to page?
 | 
			
		||||
		if($this->sidebar !== null) {
 | 
			
		||||
			$tpl_data['html_sidebar'] = $this->sidebar->createHTML();
 | 
			
		||||
			$tpl_data['content_span'] = '10';
 | 
			
		||||
		} else {
 | 
			
		||||
			$tpl_data['content_span'] = '12';
 | 
			
		||||
		}
 | 
			
		||||
		// add footer to page?
 | 
			
		||||
		if($this->add_footer) {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -63,19 +63,32 @@ class LogController extends AbstractServerController {
 | 
			
		|||
			$log_count = count($records);
 | 
			
		||||
 | 
			
		||||
			for ($x = 0; $x < $log_count; $x++) {
 | 
			
		||||
				$records[$x]['class'] = ($x & 1) ? 'odd' : 'even';
 | 
			
		||||
				$records[$x]['users'] = '';
 | 
			
		||||
				$records[$x]['server'] = $records[$x]['label'] . ' (' . $records[$x]['label_adv'] . ')';
 | 
			
		||||
				$records[$x]['datetime_format'] = psm_date($records[$x]['datetime']);
 | 
			
		||||
				$record = &$records[$x];
 | 
			
		||||
				$record['class'] = ($x & 1) ? 'odd' : 'even';
 | 
			
		||||
				$record['users'] = '';
 | 
			
		||||
				$record['server'] = $record['label'];
 | 
			
		||||
				$record['type_icon'] = ($record['server_type'] == 'website') ? 'icon-globe' : 'icon-cog';
 | 
			
		||||
				$record['type_title'] = psm_get_lang('servers', 'type_' . $record['server_type']);
 | 
			
		||||
				$ip = '(' . $record['ip'];
 | 
			
		||||
				if(!empty($record['port']) && (($record['server_type'] != 'website') || ($record['port'] != 80))) {
 | 
			
		||||
					$ip .= ':' . $record['port'];
 | 
			
		||||
				}
 | 
			
		||||
				$ip .= ')';
 | 
			
		||||
				$record['ip'] = $ip;
 | 
			
		||||
				$record['datetime_format'] = psm_date($record['datetime']);
 | 
			
		||||
 | 
			
		||||
				// fix up user list
 | 
			
		||||
				if($records[$x]['user_id'] == '') continue;
 | 
			
		||||
 | 
			
		||||
				$users = explode(',', $records[$x]['user_id']);
 | 
			
		||||
				foreach($users as $user_id) {
 | 
			
		||||
					if((int) $user_id == 0 || !isset($users_labels[$user_id])) continue;
 | 
			
		||||
 | 
			
		||||
					$records[$x]['users'] .= '<br/>'.$users_labels[$user_id];
 | 
			
		||||
				if(!empty($record['user_id'])) {
 | 
			
		||||
					$names = array();
 | 
			
		||||
					$users = explode(',', $record['user_id']);
 | 
			
		||||
					foreach($users as $user_id) {
 | 
			
		||||
						if(isset($users_labels[$user_id])) {
 | 
			
		||||
							$names[] = $users_labels[$user_id];
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
					sort($names);
 | 
			
		||||
					$record['users'] = implode('<br/>', $names);
 | 
			
		||||
					$record['user_list'] = implode(' • ', $names);
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -87,6 +100,7 @@ class LogController extends AbstractServerController {
 | 
			
		|||
				array(
 | 
			
		||||
					'logtitle' => $key,
 | 
			
		||||
					'?has_users' => ($key == 'status') ? false : true,
 | 
			
		||||
					'?no_logs' => ($log_count == 0) ? true : false,
 | 
			
		||||
				)
 | 
			
		||||
			);
 | 
			
		||||
			$this->tpl->addTemplateData(
 | 
			
		||||
| 
						 | 
				
			
			@ -116,11 +130,9 @@ class LogController extends AbstractServerController {
 | 
			
		|||
		$entries = $this->db->query(
 | 
			
		||||
			'SELECT '.
 | 
			
		||||
				'`servers`.`label`, '.
 | 
			
		||||
				'CONCAT_WS('.
 | 
			
		||||
					'\':\','.
 | 
			
		||||
					'`servers`.`ip`, '.
 | 
			
		||||
					'`servers`.`port`'.
 | 
			
		||||
				') AS `label_adv`, '.
 | 
			
		||||
				'`servers`.`ip`, '.
 | 
			
		||||
				'`servers`.`port`, '.
 | 
			
		||||
				'`servers`.`type` AS server_type, '.
 | 
			
		||||
				'`log`.`type`, '.
 | 
			
		||||
				'`log`.`message`, '.
 | 
			
		||||
				'`log`.`datetime`, '.
 | 
			
		||||
| 
						 | 
				
			
			@ -150,6 +162,7 @@ class LogController extends AbstractServerController {
 | 
			
		|||
				'label_message' => psm_get_lang('system', 'message'),
 | 
			
		||||
				'label_date' => psm_get_lang('system', 'date'),
 | 
			
		||||
				'label_users' => ucfirst(psm_get_lang('menu', 'user')),
 | 
			
		||||
				'label_no_logs' => psm_get_lang('log', 'no_logs'),
 | 
			
		||||
			)
 | 
			
		||||
		);
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -107,8 +107,12 @@ class ServerController extends AbstractServerController {
 | 
			
		|||
			if($servers[$x]['type'] == 'website') {
 | 
			
		||||
				$servers[$x]['type_icon'] = 'icon-globe';
 | 
			
		||||
				// add link to label
 | 
			
		||||
				$servers[$x]['ip'] = '<a href="'.$servers[$x]['ip'].'" target="_blank">'.$servers[$x]['ip'].'</a>';
 | 
			
		||||
				$servers[$x]['ip_short'] = $servers[$x]['ip'];
 | 
			
		||||
				$ip = $servers[$x]['ip'];
 | 
			
		||||
				if(!empty($servers[$x]['port']) && ($servers[$x]['port']  != 80)) {
 | 
			
		||||
					$ip .= ' : ' . $servers[$x]['port'];
 | 
			
		||||
				}
 | 
			
		||||
				$servers[$x]['ip'] = '<a href="'.$servers[$x]['ip'].'" target="_blank">'.$ip.'</a>';
 | 
			
		||||
				$servers[$x]['ip_short'] = $ip;
 | 
			
		||||
			} else {
 | 
			
		||||
				$servers[$x]['type_icon'] = 'icon-cog';
 | 
			
		||||
				$servers[$x]['ip_short'] = $servers[$x]['ip'] . ' : ' . $servers[$x]['port'];
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -22,30 +22,50 @@
 | 
			
		|||
<!--%tpl_server_log_entries-->
 | 
			
		||||
<!-- {logtitle} -->
 | 
			
		||||
<table class="table table-bordered table-striped">
 | 
			
		||||
	<colgroup>
 | 
			
		||||
		<col />
 | 
			
		||||
		<col />
 | 
			
		||||
		<col style="width: 135px" />
 | 
			
		||||
		<!--?has_users--><col /><!--??has_users-->
 | 
			
		||||
	</colgroup>
 | 
			
		||||
    <thead>
 | 
			
		||||
        <tr>
 | 
			
		||||
            <th>{label_server}</th>
 | 
			
		||||
            <th>{label_message}</th>
 | 
			
		||||
            <th>{label_date}</th>
 | 
			
		||||
			<!--?has_users--><th>{label_users}</th><!--??has_users-->
 | 
			
		||||
            <th class="hidden-phone">{label_server}</th>
 | 
			
		||||
            <th class="hidden-phone">{label_message}</th>
 | 
			
		||||
            <th class="hidden-phone">{label_date}</th>
 | 
			
		||||
            <!--?has_users--><th class="hidden-phone">{label_users}</th><!--??has_users-->
 | 
			
		||||
        </tr>
 | 
			
		||||
    </thead>
 | 
			
		||||
    <tbody>
 | 
			
		||||
        <!--%tpl_repeat_entries-->
 | 
			
		||||
        <tr class="{class}">
 | 
			
		||||
          <td>{server}</td>
 | 
			
		||||
          <td>{message}</td>
 | 
			
		||||
          <td>{datetime_format}</td>
 | 
			
		||||
          <!--?has_users--><td>{users}</td><!--??has_users-->
 | 
			
		||||
        </tr>
 | 
			
		||||
        <!--%%tpl_repeat_entries-->
 | 
			
		||||
        {entries}
 | 
			
		||||
		<!--%tpl_repeat_entries-->
 | 
			
		||||
		<tr class="{class}">
 | 
			
		||||
			<td>
 | 
			
		||||
				<div class="table-body">
 | 
			
		||||
					<div class="table-cell">
 | 
			
		||||
						<div class="visible-phone pull-right">
 | 
			
		||||
							 {datetime_format}
 | 
			
		||||
						</div>
 | 
			
		||||
						<i class="{type_icon}" title="{type_title}"></i> <span class="title">{server}</span> {ip}
 | 
			
		||||
					</div>
 | 
			
		||||
				</div>
 | 
			
		||||
				<div class="visible-phone">
 | 
			
		||||
					<div class="table-separator"/></div>
 | 
			
		||||
					<div class="table-body">
 | 
			
		||||
						<div class="table-cell-details">{message}</div>
 | 
			
		||||
					</div>
 | 
			
		||||
				</div>
 | 
			
		||||
				<!--?has_users--><div class="visible-phone">
 | 
			
		||||
					<div class="table-separator"/></div>
 | 
			
		||||
					<div class="table-body">
 | 
			
		||||
						<div class="table-cell-details">{label_users}: {user_list}</div>
 | 
			
		||||
					</div>
 | 
			
		||||
				</div><!--??has_users-->
 | 
			
		||||
			</td>
 | 
			
		||||
			<td class="hidden-phone">{message}</td>
 | 
			
		||||
			<td class="hidden-phone tight">{datetime_format}</td>
 | 
			
		||||
			<!--?has_users--><td class="hidden-phone tight">{users}</td><!--??has_users-->
 | 
			
		||||
		</tr>
 | 
			
		||||
		<!--%%tpl_repeat_entries-->
 | 
			
		||||
		{entries}
 | 
			
		||||
		<!--?no_logs-->
 | 
			
		||||
		<tr class="{class}">
 | 
			
		||||
			<td colspan="4" class="cell-center">{label_no_logs}</td>
 | 
			
		||||
		</tr>
 | 
			
		||||
		<!--??no_logs-->
 | 
			
		||||
    </tbody>
 | 
			
		||||
</table>
 | 
			
		||||
<!--%%tpl_server_log_entries-->
 | 
			
		||||
| 
						 | 
				
			
			@ -117,8 +117,18 @@ fieldset {
 | 
			
		|||
	top: -2px;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.table-separator {
 | 
			
		||||
	margin: 4px 0;
 | 
			
		||||
	border-top: 1px solid #EEE;
 | 
			
		||||
	border-bottom: 1px solid #FFF;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
td.cell-center {
 | 
			
		||||
	text-align: center;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@media (max-width: 767px) {
 | 
			
		||||
	.table-cell-title .title {
 | 
			
		||||
	.table-cell .title, .table-cell-title .title {
 | 
			
		||||
		font-size: 1.1em;
 | 
			
		||||
		font-weight: bold;
 | 
			
		||||
	}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue