public void PostComment(string text, long replyCid, long replyUid, bool fromGroup, List <IOutboundAttachment> attachments, Action <bool> callback, StickerItemData stickerItemData = null, string stickerReferrer = "") { if (!this.CanPostComment(text, attachments, stickerItemData)) { callback(false); } else if (this._postingComment) { callback(false); } else { this._postingComment = true; this.SetInProgress(true, ""); // ISSUE: reference to a compiler-generated field // ISSUE: reference to a compiler-generated field // ISSUE: reference to a compiler-generated field // ISSUE: method pointer WallService.Current.AddComment(this._postId, this._ownerId, text, replyCid, fromGroup, attachments.Select <IOutboundAttachment, string>((Func <IOutboundAttachment, string>)(a => a.AttachmentId)).ToList <string>(), (Action <BackendResult <Comment, ResultCode> >)(res => { this.SetInProgress(false, ""); this._postingComment = false; Execute.ExecuteOnUIThread((Action)(() => { bool flag = res.ResultCode == ResultCode.Succeeded; if (flag) { CommentItem commentItem = this.CreateCommentItem(res.ResultData); this._runningCountOfComments = this._runningCountOfComments + 1; this.UpdateCommentsCountItem(); MyVirtualizingPanel2 panel = this._panel; int count = this._panel.VirtualizableItems.Count; List <IVirtualizable> itemsToInsert = new List <IVirtualizable>(); itemsToInsert.Add((IVirtualizable)commentItem); int num = 0; // ISSUE: variable of the null type panel.InsertRemoveItems(count, itemsToInsert, num != 0, null); this._fetchedComments.Add(res.ResultData); EventAggregator current = EventAggregator.Current; WallCommentIsAddedDeleted commentIsAddedDeleted = new WallCommentIsAddedDeleted(); commentIsAddedDeleted.Added = true; long toId = this._wallPostData.WallPost.to_id; commentIsAddedDeleted.OwnerId = toId; long id = this._wallPostData.WallPost.id; commentIsAddedDeleted.WallPostId = id; current.Publish(commentIsAddedDeleted); } callback(flag); })); }), stickerItemData == null ? 0 : stickerItemData.StickerId, stickerReferrer); } }
public void DeleteComment(CommentItem commentItem) { this._panel.RemoveItem((IVirtualizable)commentItem); this._runningCountOfComments = this._runningCountOfComments - 1; this.UpdateCommentsCountItem(); EventAggregator current = EventAggregator.Current; WallCommentIsAddedDeleted commentIsAddedDeleted = new WallCommentIsAddedDeleted(); commentIsAddedDeleted.Added = false; long id = this._wallPostData.WallPost.id; commentIsAddedDeleted.WallPostId = id; long toId = this._wallPostData.WallPost.to_id; commentIsAddedDeleted.OwnerId = toId; current.Publish((object)commentIsAddedDeleted); WallService.Current.DeleteComment(this._ownerId, commentItem.Comment.cid, (Action <BackendResult <ResponseWithId, ResultCode> >)(res => {})); }