mirror of
https://gitlab.archlinux.org/archlinux/aurweb.git
synced 2025-02-03 10:43:03 +01:00
Add link to flag OOD comment
Implements: FS#46546 Signed-off-by: Mark Weiman <mark.weiman@markzz.com> Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
This commit is contained in:
parent
76a589257e
commit
e9fe1a9eb1
6 changed files with 84 additions and 1 deletions
|
@ -130,6 +130,10 @@
|
||||||
top: 4px;
|
top: 4px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.flagged a {
|
||||||
|
color: inherit;
|
||||||
|
}
|
||||||
|
|
||||||
legend {
|
legend {
|
||||||
padding: 1em 0;
|
padding: 1em 0;
|
||||||
}
|
}
|
||||||
|
|
|
@ -73,6 +73,9 @@ if (!empty($tokens[1]) && '/' . $tokens[1] == get_pkg_route()) {
|
||||||
case "unflag":
|
case "unflag":
|
||||||
$_POST['do_UnFlag'] = __('UnFlag');
|
$_POST['do_UnFlag'] = __('UnFlag');
|
||||||
break;
|
break;
|
||||||
|
case "flag-comment":
|
||||||
|
include('pkgflagcomment.php');
|
||||||
|
return;
|
||||||
case "delete":
|
case "delete":
|
||||||
include('pkgdel.php');
|
include('pkgdel.php');
|
||||||
return;
|
return;
|
||||||
|
|
19
web/html/pkgflagcomment.php
Normal file
19
web/html/pkgflagcomment.php
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
set_include_path(get_include_path() . PATH_SEPARATOR . '../lib');
|
||||||
|
|
||||||
|
include_once("aur.inc.php");
|
||||||
|
include_once("pkgbasefuncs.inc.php");
|
||||||
|
|
||||||
|
set_lang();
|
||||||
|
check_sid();
|
||||||
|
|
||||||
|
if (!isset($base_id)) {
|
||||||
|
header('Location: /');
|
||||||
|
exit();
|
||||||
|
}
|
||||||
|
|
||||||
|
html_header(__("Flag Comment"));
|
||||||
|
$message = pkgbase_get_flag_comment($base_id);
|
||||||
|
include('flag_comment.php');
|
||||||
|
html_footer(AURWEB_VERSION);
|
|
@ -444,6 +444,38 @@ function pkgbase_unflag($base_ids) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get package flag OOD comment
|
||||||
|
*
|
||||||
|
* @param int $base_id
|
||||||
|
*
|
||||||
|
* @return array Tuple of pkgbase ID, reason for OOD, and user who flagged
|
||||||
|
*/
|
||||||
|
function pkgbase_get_flag_comment($base_id) {
|
||||||
|
$base_id = intval($base_id);
|
||||||
|
$dbh = DB::connect();
|
||||||
|
|
||||||
|
$q = "SELECT FlaggerComment,OutOfDateTS,Username FROM PackageBases ";
|
||||||
|
$q.= "LEFT JOIN Users ON FlaggerUID = Users.ID ";
|
||||||
|
$q.= "WHERE PackageBases.ID = " . $base_id . " ";
|
||||||
|
$q.= "AND PackageBases.OutOfDateTS IS NOT NULL";
|
||||||
|
$result = $dbh->query($q);
|
||||||
|
|
||||||
|
$row = array();
|
||||||
|
|
||||||
|
if (!$result) {
|
||||||
|
$row['error'] = __("Error retrieving package details.");
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
$row = $result->fetch(PDO::FETCH_ASSOC);
|
||||||
|
if (empty($row)) {
|
||||||
|
$row['error'] = __("Package details could not be found.");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return $row;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Delete package bases
|
* Delete package bases
|
||||||
*
|
*
|
||||||
|
|
25
web/template/flag_comment.php
Normal file
25
web/template/flag_comment.php
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
<div class="box">
|
||||||
|
<h2><?= __('Flagged Out-of-Date Comment: %s', htmlspecialchars($pkgbase_name)) ?></h2>
|
||||||
|
<p>
|
||||||
|
<?php if (isset($message['Username'])): ?>
|
||||||
|
<?= __('%s%s%s flagged %s%s%s out-of-date on %s%s%s for the following reason:',
|
||||||
|
'<strong>', html_format_username($message['Username']), '</strong>',
|
||||||
|
'<strong>', htmlspecialchars($pkgbase_name), '</strong>',
|
||||||
|
'<strong>', gmdate('Y-m-d', $message['OutOfDateTS']), '</strong>'); ?>
|
||||||
|
<?php else: ?>
|
||||||
|
<?= __('%s%s%s is not flagged out-of-date.',
|
||||||
|
'<strong>', htmlspecialchars($pkgbase_name), '</strong>'); ?>
|
||||||
|
<?php endif; ?>
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
<div class="article-content">
|
||||||
|
<blockquote><p><?= parse_comment($message['FlaggerComment']) ?></p></blockquote>
|
||||||
|
</div>
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
<form action="<?= htmlspecialchars(get_pkgbase_uri($pkgbase_name), ENT_QUOTES) ?>">
|
||||||
|
<input type="submit" value="<?= __("Return to Details") ?>" />
|
||||||
|
</form>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
|
|
@ -8,7 +8,7 @@
|
||||||
</li>
|
</li>
|
||||||
<li><a href="<?= $snapshot_uri ?>"><?= __('Download snapshot') ?></a>
|
<li><a href="<?= $snapshot_uri ?>"><?= __('Download snapshot') ?></a>
|
||||||
<li><a href="https://wiki.archlinux.org/index.php/Special:Search?search=<?= urlencode($row['Name']) ?>"><?= __('Search wiki') ?></a></li>
|
<li><a href="https://wiki.archlinux.org/index.php/Special:Search?search=<?= urlencode($row['Name']) ?>"><?= __('Search wiki') ?></a></li>
|
||||||
<li><span class="flagged"><?php if ($row["OutOfDateTS"] !== NULL) { echo __('Flagged out-of-date')." (${out_of_date_time})"; } ?></span></li>
|
<li><span class="flagged"><?= $row["OutOfDateTS"] !== NULL ? html_action_link($base_uri . 'flag-comment/', __('Flagged out-of-date %s', "(${out_of_date_time})")) : "" ?></span></li>
|
||||||
<?php if ($row["OutOfDateTS"] === NULL): ?>
|
<?php if ($row["OutOfDateTS"] === NULL): ?>
|
||||||
<li><?= html_action_link($base_uri . 'flag/', __('Flag package out-of-date')) ?></li>
|
<li><?= html_action_link($base_uri . 'flag/', __('Flag package out-of-date')) ?></li>
|
||||||
<?php elseif (($row["OutOfDateTS"] !== NULL) && has_credential(CRED_PKGBASE_UNFLAG, $unflaggers)): ?>
|
<?php elseif (($row["OutOfDateTS"] !== NULL) && has_credential(CRED_PKGBASE_UNFLAG, $unflaggers)): ?>
|
||||||
|
|
Loading…
Add table
Reference in a new issue