1
0
mirror of https://github.com/phpbb/phpbb.git synced 2025-08-19 15:01:33 +02:00

[ticket/11552] Responsive member list

Responsive member list and better responsive tables

PHPBB3-11552
This commit is contained in:
Vjacheslav Trushkin
2013-10-19 21:01:25 +03:00
parent fbd57b9369
commit 734131d750
9 changed files with 103 additions and 55 deletions

View File

@@ -533,6 +533,72 @@ function insert_single_user(formId, user)
$(window).resize(check);
});
// Responsive tables
$('table.table1').not('.not-responsive').each(function() {
var $this = $(this),
th = $this.find('thead > tr > th'),
columns = th.length,
headers = [],
totalHeaders = 0,
i, headersLength;
// Find each header
th.each(function() {
var cell = $(this),
colspan = parseInt(cell.attr('colspan')),
dfn = cell.attr('data-dfn'),
text = dfn ? dfn : cell.text();
colspan = isNaN(colspan) || colspan < 1 ? 1 : colspan;
for (i=0; i<colspan; i++) {
headers.push(text);
}
totalHeaders ++;
});
headersLength = headers.length;
// Add header text to each cell as <dfn>
$this.addClass('responsive');
if (totalHeaders < 2) {
$this.addClass('show-header');
return;
}
$this.find('tbody > tr').each(function() {
var row = $(this),
cells = row.children('td'),
column = 0;
if (cells.length == 1) {
row.addClass('big-column');
return;
}
cells.each(function() {
var cell = $(this),
colspan = parseInt(cell.attr('colspan')),
text = cell.text().trim();
if (headersLength <= column) {
return;
}
if (text.length && text !== '-') {
cell.prepend('<dfn style="display: none;">' + headers[column] + '</dfn>');
}
else {
cell.addClass('empty');
}
colspan = isNaN(colspan) || colspan < 1 ? 1 : colspan;
column += colspan;
});
});
});
// Responsive link lists
$('.linklist:not(.navlinks, .skip-responsive)').each(function() {
var $this = $(this),

View File

@@ -147,7 +147,7 @@
<h3>{L_LATEST_LOGS}</h3>
<table class="table1 responsive mcp-logs" cellspacing="0">
<table class="table1" cellspacing="0">
<thead>
<tr>
<th class="name">{L_ACTION}</th>

View File

@@ -21,7 +21,7 @@
</li>
</ul>
<table cellspacing="1" class="table1 responsive mcp-logs-full">
<table cellspacing="1" class="table1">
<thead>
<tr>
<th>{L_USERNAME}</th>

View File

@@ -33,7 +33,7 @@
<h3>{L_MOST_WARNINGS}</h3>
<!-- IF .highest -->
<table class="table1 responsive mcp-warnings" cellspacing="0">
<table class="table1" cellspacing="0">
<thead>
<tr>
<th class="name">{L_USERNAME}</th>
@@ -67,7 +67,7 @@
<h3>{L_LATEST_WARNINGS}</h3>
<!-- IF .latest -->
<table class="table1 responsive mcp-warnings" cellspacing="0">
<table class="table1" cellspacing="0">
<thead>
<tr>
<th class="name">{L_USERNAME}</th>

View File

@@ -21,7 +21,7 @@
</li>
</ul>
<table class="table1 responsive mcp-warnings" cellspacing="0">
<table class="table1" cellspacing="0">
<thead>
<tr>
<th class="name">{L_USERNAME}</th>

View File

@@ -28,7 +28,7 @@
<div class="panel">
<div class="inner">
<ul class="linklist">
<ul class="linklist wrap">
<li>
<!-- IF U_FIND_MEMBER and not S_SEARCH_USER --><a href="{U_FIND_MEMBER}" id="member_search" data-alt-text="{LA_HIDE_MEMBER_SEARCH}">{L_FIND_USERNAME}</a> &bull; <!-- ELSEIF S_SEARCH_USER and U_HIDE_FIND_MEMBER and not S_IN_SEARCH_POPUP --><a href="{U_HIDE_FIND_MEMBER}" id="member_search" data-alt-text="{LA_FIND_USERNAME}">{L_HIDE_MEMBER_SEARCH}</a> &bull; <!-- ENDIF -->
<strong style="font-size: 0.95em;">
@@ -58,7 +58,7 @@
<table class="table1" cellspacing="1" id="memberlist">
<thead>
<tr>
<th class="name"><span class="rank-img"><a href="{U_SORT_RANK}">{L_RANK}</a></span><a href="{U_SORT_USERNAME}"><!-- IF S_SHOW_GROUP and .memberrow -->{L_GROUP_LEADER}<!-- ELSE -->{L_USERNAME}<!-- ENDIF --></a></th>
<th class="name" data-dfn="{L_RANK}, <!-- IF S_SHOW_GROUP and .memberrow -->{L_GROUP_LEADER}<!-- ELSE -->{L_USERNAME}<!-- ENDIF -->"><span class="rank-img"><a href="{U_SORT_RANK}">{L_RANK}</a></span><a href="{U_SORT_USERNAME}"><!-- IF S_SHOW_GROUP and .memberrow -->{L_GROUP_LEADER}<!-- ELSE -->{L_USERNAME}<!-- ENDIF --></a></th>
<th class="posts"><a href="{U_SORT_POSTS}#memberlist">{L_POSTS}</a></th>
<th class="info"><a href="{U_SORT_WEBSITE}#memberlist">{L_WEBSITE}</a>{L_COMMA_SEPARATOR}<a href="{U_SORT_LOCATION}">{L_LOCATION}</a></th>
<th class="joined"><a href="{U_SORT_JOINED}#memberlist">{L_JOINED}</a></th>

View File

@@ -105,7 +105,7 @@
<!-- BEGIN recentsearch -->
<tr class="<!-- IF recentsearch.S_ROW_COUNT is even -->bg1<!-- ELSE -->bg2<!-- ENDIF -->">
<td><a href="{recentsearch.U_KEYWORDS}">{recentsearch.KEYWORDS}</a></td>
<td class="active"><span>&nbsp;{recentsearch.TIME}</span></td>
<td class="active">{recentsearch.TIME}</td>
</tr>
<!-- BEGINELSE -->
<tr class="bg1">