summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLukas Fleischer <archlinux@cryptocrack.de>2010-06-25 17:16:05 +0200
committerLoui Chang <louipc.ist@gmail.com>2010-07-02 03:19:18 +0200
commitb5bc6ab7421d8a7e88c54441431bad4e2f899e88 (patch)
tree94080043e13238a3564e52727c6af26d4e7614e5
parentf08fbbe80eba009c6f42411456479e328c92175b (diff)
downloadaur-b5bc6ab7421d8a7e88c54441431bad4e2f899e88.tar.gz
aur-b5bc6ab7421d8a7e88c54441431bad4e2f899e88.tar.xz
Confirmation when deleting packages
Signed-off-by: Loui Chang <louipc.ist@gmail.com>
-rw-r--r--web/html/packages.php9
-rw-r--r--web/lib/pkgfuncs.inc2
-rw-r--r--web/template/actions_form.php2
-rw-r--r--web/template/pkg_search_results.php3
4 files changed, 13 insertions, 3 deletions
diff --git a/web/html/packages.php b/web/html/packages.php
index 2553590c..472f6a21 100644
--- a/web/html/packages.php
+++ b/web/html/packages.php
@@ -46,8 +46,13 @@ if ($_POST['action'] == "do_Flag" || isset($_POST['do_Flag'])) {
} elseif ($_POST['action'] == "do_UnVote" || isset($_POST['do_UnVote'])) {
$output = pkg_vote($atype, $ids, False);
} elseif ($_POST['action'] == "do_Delete" || isset($_POST['do_Delete'])) {
- $output = pkg_delete($atype, $ids);
- unset($_GET['ID']);
+ if (isset($_POST['confirm_Delete'])) {
+ $output = pkg_delete($atype, $ids);
+ unset($_GET['ID']);
+ }
+ else {
+ $output = __("The selected packages have not been deleted, check the confirmation checkbox.");
+ }
} elseif ($_POST['action'] == "do_Notify" || isset($_POST['do_Notify'])) {
$output = pkg_notify($atype, $ids);
} elseif ($_POST['action'] == "do_UnNotify" || isset($_POST['do_UnNotify'])) {
diff --git a/web/lib/pkgfuncs.inc b/web/lib/pkgfuncs.inc
index 43a7a6fb..5605daa5 100644
--- a/web/lib/pkgfuncs.inc
+++ b/web/lib/pkgfuncs.inc
@@ -402,7 +402,7 @@ function package_details($id=0, $SID="") {
* do_UnFlag - Remove out-of-date flag
* do_Adopt - Adopt
* do_Disown - Disown
- * do_Delete - Delete
+ * do_Delete - Delete (requires confirm_Delete to be set)
* do_Notify - Enable notification
* do_UnNotify - Disable notification
*/
diff --git a/web/template/actions_form.php b/web/template/actions_form.php
index de77645a..d1559f57 100644
--- a/web/template/actions_form.php
+++ b/web/template/actions_form.php
@@ -47,6 +47,8 @@ if ($row["MaintainerUID"] == 0) {
if ($atype == "Trusted User" || $atype == "Developer") {
echo "<input type='submit' class='button' name='do_Delete'";
echo " value='".__("Delete Packages")."'>\n";
+ echo "<input type='checkbox' name='confirm_Delete' value='1' /> ";
+ echo __("Confirm")."\n";
}
?>
diff --git a/web/template/pkg_search_results.php b/web/template/pkg_search_results.php
index 364a3521..bb898df6 100644
--- a/web/template/pkg_search_results.php
+++ b/web/template/pkg_search_results.php
@@ -108,6 +108,9 @@ for ($i = 0; $row = mysql_fetch_assoc($result); $i++) {
<option value='do_Notify'><?php print __("Notify") ?></option>
<option value='do_UnNotify'><?php print __("UnNotify") ?></option>
</select>
+ <?php if ($atype == "Trusted User" || $atype == "Developer"): ?>
+ <input type='checkbox' name='confirm_Delete' value='1' /> <?php print __("Confirm") ?>
+ <?php endif; ?>
<input type='submit' class='button' style='width: 80px' value='<?php print __("Go") ?>' />
</div>
<?php endif; ?>