[aur-dev] [PATCH 1/2] Add a new AUR_LOCATION setting
Dan McGee
dan at archlinux.org
Fri Oct 21 16:15:55 EDT 2011
This should be set to something like 'http://localhost' for development
or 'https://aur.archlinux.org' in production. It ensures all links in
the site stay in the development site and there is no sudden jump from
development to production environments.
Signed-off-by: Dan McGee <dan at archlinux.org>
---
Resubmit v2- tested the pages, correct syntax on variable definition, and
use 'global' keyword where appropriate.
web/html/passreset.php | 2 +-
web/lib/aur.inc.php | 1 +
web/lib/config.inc.php.proto | 3 +++
web/lib/pkgfuncs.inc.php | 6 +++++-
web/template/header.php | 2 +-
web/template/login_form.php | 2 +-
web/template/pkg_comment_form.php | 4 ++--
7 files changed, 14 insertions(+), 6 deletions(-)
diff --git a/web/html/passreset.php b/web/html/passreset.php
index 01f3204..47d649d 100644
--- a/web/html/passreset.php
+++ b/web/html/passreset.php
@@ -67,7 +67,7 @@ if (isset($_GET['resetkey'], $_POST['email'], $_POST['password'], $_POST['confir
'your password follow the link below, otherwise ignore '.
'this message and nothing will happen.').
"\n\n".
- 'https://aur.archlinux.org/passreset.php?'.
+ "{$AUR_LOCATION}/passreset.php?".
"resetkey={$resetkey}";
$body = wordwrap($body, 70);
$headers = "To: {$email}\nReply-to: nobody at archlinux.org\nFrom:aur-notify at archlinux.org\nX-Mailer: PHP\nX-MimeOLE: Produced By AUR";
diff --git a/web/lib/aur.inc.php b/web/lib/aur.inc.php
index f432697..315092c 100644
--- a/web/lib/aur.inc.php
+++ b/web/lib/aur.inc.php
@@ -327,6 +327,7 @@ function html_header($title="") {
global $LANG;
global $SUPPORTED_LANGS;
global $DISABLE_HTTP_LOGIN;
+ global $AUR_LOCATION;
if (!$DISABLE_HTTP_LOGIN || (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'])) {
$login = try_login();
diff --git a/web/lib/config.inc.php.proto b/web/lib/config.inc.php.proto
index fbade86..3230815 100644
--- a/web/lib/config.inc.php.proto
+++ b/web/lib/config.inc.php.proto
@@ -77,3 +77,6 @@ $MAX_FILESIZE_UNCOMPRESSED = 1024 * 1024 * 8;
# Allow HTTPs logins only
$DISABLE_HTTP_LOGIN = true;
+
+# Web URL used in email links and absolute redirects, no trailing slash
+$AUR_LOCATION = "http://localhost";
diff --git a/web/lib/pkgfuncs.inc.php b/web/lib/pkgfuncs.inc.php
index 3e89fa3..f3e9134 100644
--- a/web/lib/pkgfuncs.inc.php
+++ b/web/lib/pkgfuncs.inc.php
@@ -301,6 +301,8 @@ function pkgname_is_blacklisted($name, $dbh=NULL) {
# display package details
#
function package_details($id=0, $SID="", $dbh=NULL) {
+ global $AUR_LOCATION;
+
if(!$dbh) {
$dbh = db_connect();
}
@@ -620,6 +622,8 @@ function sanitize_ids($ids) {
* @return string Translated success or error messages
*/
function pkg_flag ($atype, $ids, $action=true, $dbh=NULL) {
+ global $AUR_LOCATION;
+
if (!$atype) {
if ($action) {
return __("You must be logged in before you can flag packages.");
@@ -666,7 +670,7 @@ function pkg_flag ($atype, $ids, $action=true, $dbh=NULL) {
if (mysql_num_rows($result)) {
while ($row = mysql_fetch_assoc($result)) {
# construct email
- $body = "Your package " . $row['Name'] . " has been flagged out of date by " . $f_name . " [1]. You may view your package at:\nhttps://aur.archlinux.org/packages.php?ID=" . $row['ID'] . "\n\n[1] - https://aur.archlinux.org/account.php?Action=AccountInfo&ID=" . $f_uid;
+ $body = "Your package " . $row['Name'] . " has been flagged out of date by " . $f_name . " [1]. You may view your package at:\n" . $AUR_LOCATION . "/packages.php?ID=" . $row['ID'] . "\n\n[1] - " . $AUR_LOCATION . "/account.php?Action=AccountInfo&ID=" . $f_uid;
$body = wordwrap($body, 70);
$headers = "Reply-to: nobody at archlinux.org\nFrom:aur-notify at archlinux.org\nX-Mailer: PHP\nX-MimeOLE: Produced By AUR\n";
@mail($row['Email'], "AUR Out-of-date Notification for ".$row['Name'], $body, $headers);
diff --git a/web/template/header.php b/web/template/header.php
index 8313bb3..73486b4 100644
--- a/web/template/header.php
+++ b/web/template/header.php
@@ -23,7 +23,7 @@
<li id="anb-forums"><a href="https://bbs.archlinux.org/" title="Community forums">Forums</a></li>
<li id="anb-wiki"><a href="https://wiki.archlinux.org/" title="Community documentation">Wiki</a></li>
<li id="anb-bugs"><a href="https://bugs.archlinux.org/" title="Report and track bugs">Bugs</a></li>
- <li id="anb-aur"><a href="https://aur.archlinux.org/" title="Arch Linux User Repository">AUR</a></li>
+ <li id="anb-aur"><a href="/" title="Arch Linux User Repository">AUR</a></li>
<li id="anb-download"><a href="http://www.archlinux.org/download/" title="Get Arch Linux">Download</a></li>
</ul>
</div>
diff --git a/web/template/login_form.php b/web/template/login_form.php
index c27e9ba..21bdaa7 100644
--- a/web/template/login_form.php
+++ b/web/template/login_form.php
@@ -32,7 +32,7 @@ else {
?>
<span class='error'>
<?php printf(__("HTTP login is disabled. Please %sswitch to HTTPs%s if you want to login."),
- '<a href="https://aur.archlinux.org' . htmlspecialchars($_SERVER['REQUEST_URI'], ENT_QUOTES) . '">', '</a>'); ?>
+ '<a href="' . $AUR_LOCATION . htmlspecialchars($_SERVER['REQUEST_URI'], ENT_QUOTES) . '">', '</a>'); ?>
</span>
<?php } ?>
</div>
diff --git a/web/template/pkg_comment_form.php b/web/template/pkg_comment_form.php
index e52c92d..c6ed69a 100644
--- a/web/template/pkg_comment_form.php
+++ b/web/template/pkg_comment_form.php
@@ -35,9 +35,9 @@ if (isset($_REQUEST['comment'])) {
# Simply making these strings translatable won't work, users would be
# getting emails in the language that the user who posted the comment was in
$body =
- 'from https://aur.archlinux.org/packages.php?ID='
+ 'from ' . $AUR_LOCATION . '/packages.php?ID='
. $_REQUEST['ID'] . "\n"
- . username_from_sid($_COOKIE['AURSID']) . " wrote:\n\n"
+ . username_from_sid($_COOKIE['AURSID'], $dbh) . " wrote:\n\n"
. $_POST['comment']
. "\n\n---\nIf you no longer wish to receive notifications about this package, please go the the above package page and click the UnNotify button.";
$body = wordwrap($body, 70);
--
1.7.7
More information about the aur-dev
mailing list