}
// Send mails for del/edit/lock build modes
-function sendAdminBuildMails ($mode, $table, $content, $id, $subjectPart = '') {
+function sendAdminBuildMails ($mode, $table, $content, $id, $subjectPart = '', $userid = 'userid') {
// Default subject is the subject part
$subject = $subjectPart;
} // END - if
// Is the raw userid set?
- if (postRequestParameter('userid_raw', $id) > 0) {
+ if (postRequestParameter($userid, $id) > 0) {
// Generate subject
$subjectLine = getMessage('MEMBER_'.strtoupper($subject).'_'.strtoupper($table).'_SUBJECT');
}
// Send email out
- sendEmail(postRequestParameter('userid_raw', $id), $subjectLine, $mail);
+ sendEmail(postRequestParameter($userid, $id), $subjectLine, $mail);
} // END - if
// Generate subject
// Send admin notification out
if (!empty($subjectPart)) {
- sendAdminNotification($subjectLine, 'admin_' . $mode . '_' . strtolower($subjectPart) . '_' . $table, $content, postRequestParameter('userid_raw', $id));
+ sendAdminNotification($subjectLine, 'admin_' . $mode . '_' . strtolower($subjectPart) . '_' . $table, $content, postRequestParameter($userid, $id));
} else {
- sendAdminNotification($subjectLine, 'admin_' . $mode . '_' . $table, $content, postRequestParameter('userid_raw', $id));
+ sendAdminNotification($subjectLine, 'admin_' . $mode . '_' . $table, $content, postRequestParameter($userid, $id));
}
}
// Build a special template list
-function adminListBuilder ($listType, $IDs, $table, $columns, $filterFunctions, $extraValues, $idColumn, $userIdColumn) {
+function adminListBuilder ($listType, $IDs, $table, $columns, $filterFunctions, $extraValues, $idColumn, $userIdColumn, $userid = 'userid') {
$OUT = ''; $SW = 2;
// "Walk" through all entries
$idx = array_search($key, $columns, true);
// Do we have a userid?
- if ($key == 'userid') {
+ if ($key == $userIdColumn) {
// Add it again as raw id
- $content['userid_raw'] = bigintval($value);
+ $content[$userIdColumn] = bigintval($value);
+ $content[$userIdColumn . '_raw'] = $content[$userIdColumn];
} // END - if
// If the key matches the idColumn variable, we need to temporary remember it
}
// Change status of "build" list
-function adminBuilderStatusHandler ($mode, $IDs, $table, $columns, $filterFunctions, $extraValues, $idColumn, $userIdColumn, $statusArray) {
+function adminBuilderStatusHandler ($mode, $IDs, $table, $columns, $filterFunctions, $extraValues, $idColumn, $userIdColumn, $statusArray, $userid = 'userid') {
// All valid entries? (We hope so here!)
if ((is_array($IDs)) && (count($IDs) > 0) && (count($columns) == count($filterFunctions)) && (count($columns) == count($extraValues)) && (count($statusArray) > 0)) {
// "Walk" through all entries
} // END - if
} elseif (isset($content[$column])) {
// Unfinished!
- app_die(__FUNCTION__, __LINE__, ":UNFINISHED: id={$id}/{$column}[".gettype($statusInfo)."] = {$content[$column]}");
+ debug_report_bug(__FUNCTION__, __LINE__, ":UNFINISHED: id={$id}/{$column}[".gettype($statusInfo)."] = {$content[$column]}");
}
} // END - foreach
logDebugMessage(__FUNCTION__, __LINE__, 'Found entry: ' . $key);
// Skip id, raw userid and 'do_$mode'
- if (!in_array($key, array($idColumn, 'userid_raw', ('do_' . $mode)))) {
+ if (!in_array($key, array($idColumn, $userid, ('do_' . $mode)))) {
// Are there brackets () at the end?
if (substr($entries[$id], -2, 2) == '()') {
// Direct SQL command found
}
// Delete rows by given id numbers
-function adminDeleteEntriesConfirm ($IDs, $table, $columns=array(), $filterFunctions=array(), $extraValues=array(), $deleteNow=false, $idColumn='id', $userIdColumn='userid') {
+function adminDeleteEntriesConfirm ($IDs, $table, $columns = array(), $filterFunctions = array(), $extraValues = array(), $deleteNow = false, $idColumn = 'id', $userIdColumn = 'userid', $userid = 'userid') {
// All valid entries? (We hope so here!)
if ((is_array($IDs)) && (count($IDs) > 0) && (count($columns) == count($filterFunctions)) && (count($columns) == count($extraValues))) {
// Shall we delete here or list for deletion?
if ($deleteNow === true) {
// The base SQL command:
- $sql = "DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_%s` WHERE %s IN (%s)";
+ $sql = "DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_%s` WHERE `%s` IN (%s)";
// Delete them all
$idList = '';
foreach ($IDs as $id => $sel) {
// Is there a userid?
- if (isPostRequestParameterSet('userid_raw', $id)) {
+ if (isPostRequestParameterSet($userid, $id)) {
// Load all data from that id
- $result = SQL_QUERY_ESC("SELECT * FROM `{?_MYSQL_PREFIX?}_%s` WHERE %s=%s LIMIT 1",
- array($table, $idColumn, $id), __FUNCTION__, __LINE__);
+ $result = SQL_QUERY_ESC("SELECT * FROM `{?_MYSQL_PREFIX?}_%s` WHERE `%s`=%s LIMIT 1",
+ array(
+ $table,
+ $idColumn,
+ $id
+ ), __FUNCTION__, __LINE__);
// Fetch the data
$content = SQL_FETCHARRAY($result);
} // END - foreach
// Run the query
- SQL_QUERY($sql, array($table, $idColumn, substr($idList, 0, -1)), __FUNCTION__, __LINE__);
+ SQL_QUERY_ESC($sql, array($table, $idColumn, substr($idList, 0, -1)), __FUNCTION__, __LINE__);
// Was this fine?
if (SQL_AFFECTEDROWS() == count($IDs)) {
}
// Edit rows by given id numbers
-function adminEditEntriesConfirm ($IDs, $table, $columns=array(), $filterFunctions=array(), $extraValues=array(), $editNow=false, $idColumn='id', $userIdColumn='userid') {
+function adminEditEntriesConfirm ($IDs, $table, $columns = array(), $filterFunctions = array(), $extraValues = array(), $editNow = false, $idColumn = 'id', $userIdColumn = 'userid', $userid = 'userid') {
// All valid entries? (We hope so here!)
if ((is_array($IDs)) && (count($IDs) > 0) && (count($columns) == count($filterFunctions)) && (count($columns) == count($extraValues))) {
// Shall we change here or list for editing?
);
foreach (postRequestArray() as $key => $entries) {
// Skip raw userid which is always invalid
- if ($key == 'userid_raw') {
+ if ($key == $userid) {
// Continue with next field
continue;
} // END - if
// Is the id not set, then we need a backtrace here... :(
if ($id <= 0) {
// Initiate backtrace
- debug_report_bug(sprintf("id is invalid: %s. row=%s, data=%s",
+ debug_report_bug(__FUNCTION__, __LINE__, sprintf("id is invalid: %s. row=%s, data=%s",
$id,
$row,
$data
$adminLink = '<a href="' . generateEmailLink(getAdminEmail($adminId), 'admins') . '" title="{--ADMIN_CONTACT_LINK_TITLE--}">' . $login . '</a>';
} else {
// Extension not found
- $adminLink = getMaskedMessage('EXTENSION_PROBLEM_NOT_INSTALLED', 'admins');
+ $adminLink = getMaskedMessage('EXTENSION_PROBLEM_EXTENSION_NOT_INSTALLED', 'admins');
}
} else {
// Maybe deleted?
return $return;
}
+// Generate link to unconfirmed mails for admin
+function generateUnconfirmedAdminLink ($id, $unconfirmed, $type = 'bid') {
+ // Init output
+ $OUT = $unconfirmed;
+
+ // Do we have unconfirmed mails?
+ if ($unconfirmed > 0) {
+ // Add link to list_unconfirmed what-file
+ $OUT = '<a href="{%url=modules.php?module=admin&what=list_unconfirmed&' . $type . '=' . $id . '%}">' . translateComma($unconfirmed) . '</a>';
+ } // END - if
+
+ // Return it
+ return $OUT;
+}
+
+// Generates a navigation row for listing emails
+function addEmailNavigation ($numPages, $offset, $show_form, $colspan, $return=false) {
+ // Don't do anything if $numPages is 1
+ if ($numPages == 1) {
+ // Abort here with empty content
+ return '';
+ } // END - if
+
+ $TOP = '';
+ if ($show_form === false) {
+ $TOP = ' top';
+ } // END - if
+
+ $NAV = '';
+ for ($page = 1; $page <= $numPages; $page++) {
+ // Is the page currently selected or shall we generate a link to it?
+ if (($page == getRequestParameter('page')) || ((!isGetRequestParameterSet('page')) && ($page == 1))) {
+ // Is currently selected, so only highlight it
+ $NAV .= '<strong>-';
+ } else {
+ // Open anchor tag and add base URL
+ $NAV .= '<a href="{%url=modules.php?module=admin&what=' . getWhat() . '&page=' . $page . '&offset=' . $offset;
+
+ // Add userid when we shall show all mails from a single member
+ if ((isGetRequestParameterSet('userid')) && (bigintval(getRequestParameter('userid')) > 0)) $NAV .= '&userid=' . bigintval(getRequestParameter('userid'));
+
+ // Close open anchor tag
+ $NAV .= '%}">';
+ }
+ $NAV .= $page;
+ if (($page == getRequestParameter('page')) || ((!isGetRequestParameterSet('page')) && ($page == 1))) {
+ // Is currently selected, so only highlight it
+ $NAV .= '-</strong>';
+ } else {
+ // Close anchor tag
+ $NAV .= '</a>';
+ }
+
+ // Add seperator if we have not yet reached total pages
+ if ($page < $numPages) {
+ // Add it
+ $NAV .= '|';
+ } // END - if
+ } // END - for
+
+ // Define constants only once
+ $content['nav'] = $NAV;
+ $content['span'] = $colspan;
+ $content['top'] = $TOP;
+
+ // Load navigation template
+ $OUT = loadTemplate('admin_email_nav_row', true, $content);
+
+ if ($return === true) {
+ // Return generated HTML-Code
+ return $OUT;
+ } else {
+ // Output HTML-Code
+ outputHtml($OUT);
+ }
+}
+
// [EOF]
?>