示例#1
0
        public HttpResponseMessage GetAllAnnouncements(string output)
        {
            try
            {
                var mc      = new ModuleController();
                var results = new List <AnnouncementInfo>();
                // get list of all announcements modules in the site
                var annModules = mc.GetModulesByDefinition(PortalSettings.PortalId, "Announcements");
                // loop through all the modules
                foreach (ModuleInfo m in annModules)
                {
                    // make sure to only include modules the user actually has access to
                    if (ModulePermissionController.HasModuleAccess(SecurityAccessLevel.View, "VIEW", m))
                    {
                        // get the current announcements of the module
                        IEnumerable <Components.Business.AnnouncementInfo> baseResults = new Components.Business.AnnouncementsController().GetCurrentAnnouncements(m.ModuleID);
                        // add to the total results list
                        results.AddRange(baseResults.Select(announcementInfo => new AnnouncementInfo(announcementInfo)).ToList());
                    }
                }

                return(GenerateOutput(results.OrderByDescending(a => a.PublishDate).ToList(), output));
            }
            catch (Exception ex)
            {
                DnnLog.Error(ex);
                return(Request.CreateResponse(HttpStatusCode.InternalServerError, ex.Message));
            }
        }
        public HttpResponseMessage GetAllAnnouncements(string output)
        {
            try
            {
                var mc = new ModuleController();
                var results = new List<AnnouncementInfo>();
                // get list of all announcements modules in the site
                var annModules = mc.GetModulesByDefinition(PortalSettings.PortalId, "Announcements");
                // loop through all the modules
                foreach (ModuleInfo m in annModules )
                {
                   // make sure to only include modules the user actually has access to
                   if (ModulePermissionController.HasModuleAccess(SecurityAccessLevel.View, "VIEW", m))
                   {
                       // get the current announcements of the module
                       IEnumerable<Components.Business.AnnouncementInfo> baseResults = new Components.Business.AnnouncementsController().GetCurrentAnnouncements(m.ModuleID);
                       // add to the total results list
                       results.AddRange(baseResults.Select(announcementInfo => new AnnouncementInfo(announcementInfo)).ToList());
                   }  
                }

                return GenerateOutput(results.OrderByDescending(a => a.PublishDate).ToList(), output);
            }
            catch (Exception ex)
            {
                DnnLog.Error(ex);
                return Request.CreateResponse(HttpStatusCode.InternalServerError, ex.Message);
            }

        }
示例#3
0
 public HttpResponseMessage GetCurrentAnnouncements(string output)
 {
     try
     {
         IEnumerable <Components.Business.AnnouncementInfo> baseResults =
             new Components.Business.AnnouncementsController().GetCurrentAnnouncements(ActiveModule.ModuleID);
         List <AnnouncementInfo> results =
             baseResults.Select(announcementInfo => new AnnouncementInfo(announcementInfo)).ToList();
         return(GenerateOutput(results, output));
     }
     catch (Exception ex)
     {
         DnnLog.Error(ex);
         return(Request.CreateResponse(HttpStatusCode.InternalServerError, ex.Message));
     }
 }
        public HttpResponseMessage GetCurrentAnnouncements(string output)
        {
            try
            {

                IEnumerable<Components.Business.AnnouncementInfo> baseResults = 
                    new Components.Business.AnnouncementsController().GetCurrentAnnouncements(ActiveModule.ModuleID);
                List<AnnouncementInfo> results = 
                    baseResults.Select(announcementInfo => new AnnouncementInfo(announcementInfo)).ToList();
                return GenerateOutput(results, output);
            }
            catch (Exception ex)
            {
                DnnLog.Error(ex);
                return Request.CreateResponse(HttpStatusCode.InternalServerError, ex.Message);
            }

        }