Skip to content

Commit

Permalink
Working on #2972 Template Conversion to Twig Format (modcp_modlogs) (#…
Browse files Browse the repository at this point in the history
…3211)

* Working on #2972 Template Conversion to Twig Format (modcp_modlogs)

* Nested template into folder
  • Loading branch information
Starpaul20 authored and euantorano committed Jun 2, 2019
1 parent 82c97cb commit 4cf0932
Show file tree
Hide file tree
Showing 3 changed files with 154 additions and 42 deletions.
90 changes: 90 additions & 0 deletions inc/views/base/modcp/modlogs.twig
@@ -0,0 +1,90 @@
{% extends 'layouts/master.twig' %}

{% block head %}
<title>{{ mybb.settings.bbname }} - {{ lang.modlogs }}</title>
{% endblock head %}

{% block body %}
<table width="100%" border="0" align="center">
<tr>
{# To do: modcp_nav #}
<td valign="top">
<table border="0" cellspacing="{{ theme.borderwidth }}" cellpadding="{{ theme.tablespace }}" class="tborder">
<tr>
<td class="thead" align="center" colspan="5"><strong>{{ lang.modlogs }}</strong></td>
</tr>
<tr>
<td class="tcat"><span class="smalltext"><strong>{{ lang.username }}</strong></span></td>
<td class="tcat" align="center"><span class="smalltext"><strong>{{ lang.date }}</strong></span></td>
<td class="tcat" align="center"><span class="smalltext"><strong>{{ lang.action }}</strong></span></td>
<td class="tcat" align="center"><span class="smalltext"><strong>{{ lang.information }}</strong></span></td>
<td class="tcat" align="center"><span class="smalltext"><strong>{{ lang.ip }}</strong></span></td>
</tr>
{% for logitem in modlogs %}
{% include 'modcp/modlogs/item.twig' %}
{% else %}
<tr>
<td class="trow1" align="center" colspan="5">{{ lang.error_no_results }}</td>
</tr>
{% endfor %}
{% if multipage %}
<tr>
<td class="tfoot" colspan="5"><span class="smalltext"> {{ multipage|raw }}</span></td>
</tr>
{% endif %}
</table>
<br />
<form action="modcp.php?action=modlogs" method="post">
<table border="0" cellspacing="{{ theme.borderwidth }}" cellpadding="{{ theme.tablespace }}" class="tborder">
<tr>
<td class="thead" colspan="2"><strong>{{ lang.filter_modlogs }}</strong></td>
</tr>
<tr>
<td class="trow1" width="25%"><strong>{{ lang.forum }}</strong></td>
<td class="trow1" width="75%">
{{ forum_select|raw }}
</td>
</tr>
<tr>
<td class="trow1" width="25%"><strong>{{ lang.from_moderator }}</strong></td>
<td class="trow1" width="75%">
<select name="uid">
<option value="">{{ lang.all_moderators }}</option>
<option value="">----------</option>
{% for user in users %}
<option value="{{ user.uid }}"{% if user.selected %} selected="selected"{% endif %}>{{ user.username }}</option>
{% endfor %}
</select>
</td>
</tr>
<tr>
<td class="trow1" width="25%"><strong>{{ lang.sort_by }}</strong></td>
<td class="trow1" width="75%">
<select name="sortby">
<option value="dateline"{% if select.sortby.dateline %} selected="selected"{% endif %}>{{ lang.date }}</option>
<option value="username"{% if select.sortby.username %} selected="selected"{% endif %}>{{ lang.username }}</option>
<option value="forum"{% if select.sortby.forum %} selected="selected"{% endif %}>{{ lang.forum_name }}</option>
<option value="thread"{% if select.sortby.thread %} selected="selected"{% endif %}>{{ lang.thread_subject }}</option>
</select>
{{ lang.in }}
<select name="order">
<option value="asc"{% if select.order.asc %} selected="selected"{% endif %}>{{ lang.asc }}</option>
<option value="desc"{% if select.order.desc %} selected="selected"{% endif %}>{{ lang.desc }}</option>
</select>
{{ lang.order }}
</td>
</tr>
<tr>
<td class="trow1" width="25%"><strong>{{ lang.per_page }}</strong></td>
<td class="trow1" width="75%"><input type="text" name="perpage" value="{{ select.perpage }}" size="4" class="textbox" /></td>
</tr>
</table>
<br />
<div align="center">
<input type="submit" class="button" value="{{ lang.filter_logs }}" />
</div>
</form>
</td>
</tr>
</table>
{% endblock body %}
24 changes: 24 additions & 0 deletions inc/views/base/modcp/modlogs/item.twig
@@ -0,0 +1,24 @@
{% set row = alt_trow() %}
<tr>
<td class="{{ row }}" valign="top">{{ logitem.profilelink|raw }}</td>
<td class="{{ row }}" align="center" valign="top">{{ logitem.date|raw }}</td>
<td class="{{ row }}" align="center" valign="top">{{ logitem.action }}</td>
<td class="{{ row }}" align="center" valign="top">
{% if logitem.tsubject %}
<strong>{{ lang.thread }}:</strong> <a href="{{ logitem.threadlink }}" target="_blank">{{ logitem.tsubject }}</a><br />
{% endif %}
{% if logitem.fname %}
<strong>{{ lang.forum }}:</strong> <a href="{{ logitem.forumlink }}" target="_blank">{{ logitem.fname }}</a><br />
{% endif %}
{% if logitem.psubject %}
<strong>{{ lang.post }}:</strong> <a href="{{ logitem.postlink }}#pid{{ logitem.pid }}">{{ logitem.psubject }}</a>
{% endif %}
{% if logitem.logdata.uid %}
{{ trans('edited_user_info', logitem.logdata.username, logitem.logdata.profilelink) }}
{% endif %}
{% if logitem.logdata.aid %}
<strong>{{ lang.announcement }}:</strong> <a href="{{ logitem.logdata.announcement }}" target="_blank">{{ logitem.logdata.subject }}</a>
{% endif %}
</td>
<td class="{{ row }}" align="center" valign="top">{{ logitem.ipaddress }}</td>
</tr>
82 changes: 40 additions & 42 deletions modcp.php
Expand Up @@ -780,11 +780,11 @@
}
}

$multipage = multipage($postcount, $perpage, $page, $page_url);
$resultspages = '';
if ($postcount > $perpage) {
eval("\$resultspages = \"".$templates->get("modcp_modlogs_multipage")."\";");
$multipage = multipage($postcount, $perpage, $page, $page_url);
}

$modlogs = [];
$query = $db->query("
SELECT l.*, u.username, u.usergroup, u.displaygroup, t.subject AS tsubject, f.name AS fname, p.subject AS psubject
FROM ".TABLE_PREFIX."moderatorlog l
Expand All @@ -796,67 +796,61 @@
ORDER BY {$sortby} {$order}
LIMIT {$start}, {$perpage}
");
$results = '';
while ($logitem = $db->fetch_array($query)) {
$information = '';
$logitem['action'] = htmlspecialchars_uni($logitem['action']);
$log_date = my_date('relative', $logitem['dateline']);
$trow = alt_trow();

$logitem['date'] = my_date('relative', $logitem['dateline']);

if ($logitem['username']) {
$logitem['username'] = htmlspecialchars_uni($logitem['username']);
$username = format_name($logitem['username'], $logitem['usergroup'], $logitem['displaygroup']);
$logitem['profilelink'] = build_profile_link($username, $logitem['uid']);
} else {
$username = $logitem['profilelink'] = $logitem['username'] = htmlspecialchars_uni($lang->na_deleted);
$username = $logitem['profilelink'] = $logitem['username'] = $lang->na_deleted;
}

$logitem['ipaddress'] = my_inet_ntop($db->unescape_binary($logitem['ipaddress']));

if ($logitem['tsubject']) {
$logitem['tsubject'] = htmlspecialchars_uni($parser->parse_badwords($logitem['tsubject']));
$logitem['thread'] = get_thread_link($logitem['tid']);
eval("\$information .= \"".$templates->get("modcp_modlogs_result_thread")."\";");
$logitem['tsubject'] = $parser->parse_badwords($logitem['tsubject']);
$logitem['threadlink'] = get_thread_link($logitem['tid']);
}

if ($logitem['fname']) {
$logitem['forum'] = get_forum_link($logitem['fid']);
eval("\$information .= \"".$templates->get("modcp_modlogs_result_forum")."\";");
$logitem['forumlink'] = get_forum_link($logitem['fid']);
}

if ($logitem['psubject']) {
$logitem['psubject'] = htmlspecialchars_uni($parser->parse_badwords($logitem['psubject']));
$logitem['post'] = get_post_link($logitem['pid']);
eval("\$information .= \"".$templates->get("modcp_modlogs_result_post")."\";");
$logitem['psubject'] = $parser->parse_badwords($logitem['psubject']);
$logitem['postlink'] = get_post_link($logitem['pid']);
}

// Edited a user or managed announcement?
if (!$logitem['tsubject'] || !$logitem['fname'] || !$logitem['psubject']) {
$data = my_unserialize($logitem['data']);
if (!empty($data['uid'])) {
$data['username'] = htmlspecialchars_uni($data['username']);
$information = $lang->sprintf($lang->edited_user_info, htmlspecialchars_uni($data['username']), get_profile_link($data['uid']));
$logitem['logdata'] = my_unserialize($logitem['data']);
if (!empty($logitem['logdata']['uid'])) {
$logitem['logdata']['profilelink'] = get_profile_link($logitem['logdata']['uid']);
}
if (!empty($data['aid'])) {
$data['subject'] = htmlspecialchars_uni($parser->parse_badwords($data['subject']));
$data['announcement'] = get_announcement_link($data['aid']);
eval("\$information .= \"".$templates->get("modcp_modlogs_result_announcement")."\";");

if (!empty($logitem['logdata']['aid'])) {
$logitem['logdata']['subject'] = $parser->parse_badwords($logitem['logdata']['subject']);
$logitem['logdata']['announcement'] = get_announcement_link($logitem['logdata']['aid']);
}
}

$plugins->run_hooks('modcp_modlogs_result');

eval("\$results .= \"".$templates->get("modcp_modlogs_result")."\";");
}

if (!$results) {
eval("\$results = \"".$templates->get("modcp_modlogs_noresults")."\";");
$modlogs[] = $logitem;
}

$plugins->run_hooks('modcp_modlogs_filter');

// Fetch filter options
$sortbysel = array('username' => '', 'forum' => '', 'thread' => '', 'dateline' => '');
$sortbysel[$mybb->input['sortby']] = "selected=\"selected\"";
$ordersel = array('asc' => '', 'desc' => '');
$ordersel[$order] = "selected=\"selected\"";
$user_options = '';
$select['sortby'] = array('username' => '', 'forum' => '', 'thread' => '', 'dateline' => '');
$select['sortby'][$mybb->input['sortby']] = true;
$select['order'] = array('asc' => '', 'desc' => '');
$select['order'][$order] = true;
$select['perpage'] = $perpage;

$users = [];
$query = $db->query("
SELECT DISTINCT l.uid, u.username
FROM ".TABLE_PREFIX."moderatorlog l
Expand All @@ -869,19 +863,23 @@
$user['username'] = $lang->na_deleted;
}

$selected = '';
$user['selected'] = false;
if ($mybb->get_input('uid', MyBB::INPUT_INT) == $user['uid']) {
$selected = " selected=\"selected\"";
$user['selected'] = true;
}

$user['username'] = htmlspecialchars_uni($user['username']);
eval("\$user_options .= \"".$templates->get("modcp_modlogs_user")."\";");
$users[] = $user;
}

$forum_select = build_forum_jump("", $mybb->get_input('fid', MyBB::INPUT_INT), 1, '', 0, true, '', "fid");

eval("\$modlogs = \"".$templates->get("modcp_modlogs")."\";");
output_page($modlogs);
output_page(\MyBB\template('modcp/modlogs.twig', [
'multipage' => $multipage,
'modlogs' => $modlogs,
'select' => $select,
'users' => $users,
'forum_select' => $forum_select,
]));
}

if ($mybb->input['action'] == "do_delete_announcement") {
Expand Down

0 comments on commit 4cf0932

Please sign in to comment.