コード例 #1
0
        private string DeleteTopic()
        {
            int topicId = -1;
            int forumId = -1;

            if (Params.ContainsKey("topicid") && SimulateIsNumeric.IsNumeric(Params["topicid"]))
            {
                topicId = int.Parse(Params["topicid"].ToString());
            }
            if (topicId > 0)
            {
                TopicsController tc = new TopicsController();
                TopicInfo        t  = tc.Topics_Get(PortalId, ModuleId, topicId);
                Data.ForumsDB    db = new Data.ForumsDB();
                forumId = db.Forum_GetByTopicId(topicId);
                ForumController fc = new ForumController();
                Forum           f  = fc.Forums_Get(forumId, this.UserId, true);
                if (f != null)
                {
                    if (Permissions.HasPerm(f.Security.ModDelete, ForumUser.UserRoles) || (t.Author.AuthorId == this.UserId && Permissions.HasAccess(f.Security.Delete, ForumUser.UserRoles)))
                    {
                        tc.Topics_Delete(PortalId, ModuleId, forumId, topicId, MainSettings.DeleteBehavior);
                        return(BuildOutput(string.Empty, OutputCodes.Success, true));
                    }
                }
            }
            return(BuildOutput(string.Empty, OutputCodes.UnsupportedRequest, false));
        }
コード例 #2
0
 private string DeleteTopic()
 {
     int topicId = -1;
     int forumId = -1;
     if (Params.ContainsKey("topicid") && SimulateIsNumeric.IsNumeric(Params["topicid"]))
     {
         topicId = int.Parse(Params["topicid"].ToString());
     }
     if (topicId > 0)
     {
         TopicsController tc = new TopicsController();
         TopicInfo t = tc.Topics_Get(PortalId, ModuleId, topicId);
         Data.ForumsDB db = new Data.ForumsDB();
         forumId = db.Forum_GetByTopicId(topicId);
         ForumController fc = new ForumController();
         Forum f = fc.Forums_Get(forumId, this.UserId, true);
         if (f != null)
         {
             if (Permissions.HasPerm(f.Security.ModDelete, ForumUser.UserRoles) || (t.Author.AuthorId == this.UserId && Permissions.HasAccess(f.Security.Delete, ForumUser.UserRoles)))
             {
                 tc.Topics_Delete(PortalId, ModuleId, forumId, topicId, MainSettings.DeleteBehavior);
                 return BuildOutput(string.Empty, OutputCodes.Success, true);
             }
         }
     }
     return BuildOutput(string.Empty, OutputCodes.UnsupportedRequest, false);
 }