Extension ext-user for sub id tracking continued:
[mailer.git] / inc / modules / admin / admin-inc.php
index b580547dd3fe7d5132d4be92d97389428a628f40..827a66f46e81bf71a37c8f8020a0023ccc69d7fd 100644 (file)
@@ -830,50 +830,6 @@ function adminChangeActivationStatus ($IDs, $table, $row, $idRow = 'id') {
        }
 }
 
-// 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
@@ -972,7 +928,7 @@ function adminBuilderStatusHandler ($mode, $tableName, $columns, $filterFunction
                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
 }
 
@@ -995,41 +951,11 @@ function adminDeleteEntriesConfirm ($tableName, $columns = array(), $filterFunct
 
        // 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 {