}
}
-// Send mails for del/edit/lock build modes
-function sendAdminBuildMails ($mode, $tableName, $content, $id, $subjectPart = '', $userIdColumn = array('userid')) {
- // $tableName must be an array
- if ((!is_array($tableName)) || (count($tableName) != 1)) {
- // $tableName is no array
- reportBug(__FUNCTION__, __LINE__, 'tableName[]=' . gettype($tableName) . '!=array: userIdColumn=' . $userIdColumn);
- } elseif ((!is_array($userIdColumn)) || (count($userIdColumn) != 1)) {
- // $tableName is no array
- reportBug(__FUNCTION__, __LINE__, 'userIdColumn[]=' . gettype($userIdColumn) . '!=array: userIdColumn=' . $userIdColumn);
- } // END - if
-
- // Default subject is the subject part
- $subject = $subjectPart;
-
- // Is the subject part not set?
- if (empty($subjectPart)) {
- // Then use it from the mode
- $subject = strtoupper($mode);
- } // END - if
-
- // Is the raw userid set?
- if (postRequestElement($userIdColumn[0], $id) > 0) {
- // Load email template
- if (!empty($subjectPart)) {
- $mail = loadEmailTemplate('member_' . $mode . '_' . strtolower($subjectPart) . '_' . $tableName[0], $content);
- } else {
- $mail = loadEmailTemplate('member_' . $mode . '_' . $tableName[0], $content);
- }
-
- // Send email out
- sendEmail(postRequestElement($userIdColumn[0], $id), strtoupper('{--MEMBER_' . $subject . '_' . $tableName[0] . '_SUBJECT--}'), $mail);
- } // END - if
-
- // Generate subject
- $subject = strtoupper('{--ADMIN_' . $subject . '_' . $tableName[0] . '_SUBJECT--}');
-
- // Send admin notification out
- if (!empty($subjectPart)) {
- sendAdminNotification($subject, 'admin_' . $mode . '_' . strtolower($subjectPart) . '_' . $tableName[0], $content, postRequestElement($userIdColumn[0], $id));
- } else {
- sendAdminNotification($subject, 'admin_' . $mode . '_' . $tableName[0], $content, postRequestElement($userIdColumn[0], $id));
- }
-}
-
// Build a special template list
function adminListBuilder ($listType, $tableName, $columns, $filterFunctions, $extraValues, $idColumn, $userIdColumn, $rawUserId = array('userid')) {
// Call inner (general) function
SQL_QUERY($sql, __FUNCTION__, __LINE__);
// Send "build mails" out
- sendAdminBuildMails($mode, $tableName, $content, $id, $statusInfo[$content[$column]], $userIdColumn);
+ sendGenericBuildMails($mode, $tableName, $content, $id, $statusInfo[$content[$column]], $userIdColumn);
} // END - foreach
}
// Shall we delete here or list for deletion?
if ($deleteNow[0] === true) {
- // The base SQL command:
- $sql = "DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_%s` WHERE `%s` IN (%s)";
-
- // Delete them all
- $idList = '';
- foreach (postRequestElement($idColumn[0]) as $id => $sel) {
- // Is there a userid?
- if (isPostRequestElementSet($rawUserId[0], $id)) {
- // Load all data from that id
- $result = SQL_QUERY_ESC("SELECT * FROM `{?_MYSQL_PREFIX?}_%s` WHERE `%s`=%s LIMIT 1",
- array(
- $tableName[0],
- $idColumn[0],
- $id
- ), __FUNCTION__, __LINE__);
-
- // Fetch the data
- $content = SQL_FETCHARRAY($result);
-
- // Free the result
- SQL_FREERESULT($result);
-
- // Send "build mails" out
- sendAdminBuildMails('delete', $tableName, $content, $id, '', $userIdColumn);
- } // END - if
-
- // Add id number
- $idList .= $id . ',';
- } // END - foreach
-
- // Run the query
- SQL_QUERY_ESC($sql, array($tableName[0], $idColumn[0], substr($idList, 0, -1)), __FUNCTION__, __LINE__);
+ // Call generic function
+ $affected = doGenericDeleteEntriesConfirm($tableName, $columns, $filterFunctions, $extraValues, $timeColumns, $editNow, $idColumn, $userIdColumn, $rawUserId, $cacheFiles);
// Was this fine?
- if (SQL_AFFECTEDROWS() == countPostSelection($idColumn[0])) {
+ if ($affected == countPostSelection($idColumn[0])) {
// All deleted
displayMessage('{--ADMIN_ALL_ENTRIES_REMOVED--}');
} else {