/// <summary>
        /// Creates new <see cref="AuditLog" /> object and fills it with provided data.
        /// </summary>
        /// <param name="description">Audit Log entry description.</param>
        /// <param name="dateTime">Audit Log entry created date/time.</param>
        /// <param name="userId">Audit Log entry DNN user ID.</param>
        /// <returns>Newly created <see cref="AuditLog" /> object or null if object creation failed.</returns>
        /// <exception cref="ArgumentNullException"><paramref name="description" /> is a null reference.</exception>
        static public AuditLog AddLog(string description, DateTime dateTime, string keywords, int userId)
        {
            // Exceptions
            if (description == null)
            {
                throw new ArgumentNullException("description");
            }

            // Create and fill new AuditLog object
            AuditLog newAuditLog = (AuditLog)AuditLogManager.CreateObject();

            newAuditLog.Description = description;
            newAuditLog.DateTime    = dateTime;
            newAuditLog.UserId      = userId;
            newAuditLog.Keywords    = keywords;

            // Return newly created object if it was saved in the DB
            return(newAuditLog.Save() ? newAuditLog : null);
        }