Ejemplo n.º 1
0
        public int CreateOrUpdateForum(Forum forum)
        {
            int existingId = GetExistingForumId(forum);

            if(existingId > 0)
            {
                forum.Id = existingId;

                //If it couldn't be updated
                if (!UpdateForum(forum))
                    return -1;

                return forum.Id;
            }

            var request = new ZenRestRequest
                              {
                                  Method = Method.POST,
                                  Resource = _forums + ".xml"
                              };
            request.AddBody(forum);

            var res = Execute(request);

            return GetIdFromLocationHeader(res);
        }
Ejemplo n.º 2
0
        public int GetExistingForumId(Forum forum)
        {
            //If it has an id use that
            if (forum.Id > 0)
                return forum.Id;

            //Otherwise get the first forum with that name
            var forums = GetForums();
            var curForum = forums.Where(x => x.Name == forum.Name);

            if (curForum.Count() > 0)
            {
                return curForum.First().Id;
            }

            //Didn't find anything
            return -1;
        }
Ejemplo n.º 3
0
        public bool UpdateForum(Forum forum)
        {
            var request = new ZenRestRequest
            {
                Method = Method.PUT,
                Resource = string.Format("{0}/{1}.xml", _forums, forum.Id)
            };

            request.AddBody(forum);

            var res = Execute(request);

            return res.StatusCode == System.Net.HttpStatusCode.OK;
        }