Example #1
0
        public HttpResponseMessage EmailLogItems(EmailLogItemsRequest request)
        {
            try
            {
                if (!this.UserInfo.IsSuperUser && request.LogIds.Any(logGuid => (LogController.Instance.GetLog(logGuid)?.LogPortalId != this.PortalId)))
                {
                    return(this.Request.CreateErrorResponse(HttpStatusCode.Unauthorized,
                                                            Localization.GetString("UnAuthorizedToSendLog", Components.Constants.LocalResourcesFile)));
                }
                string error;
                var    subject             = request.Subject;
                var    strFromEmailAddress = !string.IsNullOrEmpty(this.UserInfo.Email) ? this.UserInfo.Email : this.PortalSettings.Email;

                if (string.IsNullOrEmpty(subject))
                {
                    subject = this.PortalSettings.PortalName + @" Exceptions";
                }

                string returnMsg = this._controller.EmailLogItems(subject, strFromEmailAddress, request.Email,
                                                                  request.Message, request.LogIds, out error);
                return(this.Request.CreateResponse(HttpStatusCode.OK, new
                {
                    Success = string.IsNullOrEmpty(returnMsg) ? true : false,
                    ErrorMessage = error,
                    ReturnMessage = returnMsg,
                }));
            }
            catch (Exception exc)
            {
                Logger.Error(exc);
                return(this.Request.CreateErrorResponse(HttpStatusCode.InternalServerError, exc));
            }
        }
Example #2
0
            public static dynamic EmailLogItems(EmailLogItemsRequest request, UserInfo UserInfo, PortalSettings PortalSettings)
            {
                dynamic Result = new ExpandoObject();

                try
                {
                    if (!UserInfo.IsSuperUser && request.LogIds.Any(
                            x =>
                            ((LogInfo)
                             LogController.Instance.GetSingleLog(new LogInfo {
                        LogGUID = x
                    },
                                                                 LoggingProvider.ReturnType.LogInfoObjects))?.LogPortalID != PortalSettings.PortalId))
                    {
                        Result.Status = Localization.GetString("UnAuthorizedToSendLog", Dnn.PersonaBar.AdminLogs.Components.Constants.LocalResourcesFile);
                        return(Result);
                    }
                    string subject             = request.Subject;
                    string strFromEmailAddress = !string.IsNullOrEmpty(UserInfo.Email) ? UserInfo.Email : PortalSettings.Email;
                    if (string.IsNullOrEmpty(subject))
                    {
                        subject = PortalSettings.PortalName + @" Exceptions";
                    }
                    string returnMsg = _controller.EmailLogItems(subject, strFromEmailAddress, request.Email,
                                                                 request.Message, request.LogIds, out string error);
                    Result.Success      = string.IsNullOrEmpty(returnMsg) ? true : false;
                    Result.ErrorMessage = error;
                    Result.Status       = returnMsg;
                }
                catch (Exception ex)
                {
                    DotNetNuke.Services.Exceptions.Exceptions.LogException(ex);
                    Result.Status = ex.ToString();
                }
                return(Result);
            }
 public dynamic EmailLogItems(EmailLogItemsRequest EmailLog)
 {
     return(Managers.LogsManager.EmailLogItems(EmailLog, UserInfo, PortalSettings));
 }