Пример #1
0
    public AjaxComment PostComment(string type, string WebID, string CommentText)
    {
        AjaxComment ajaxComment = new AjaxComment();

        member = (Member)Session["Member"];

        if (type == "n")
        {
            NSpot nspot = NSpot.GetNSpotByNSpotWebID(WebID);

            NSpotComment comment = new NSpotComment();

            comment.NSpotID   = nspot.NSpotID;
            comment.MemberID  = member.MemberID;
            comment.Text      = CommentText;
            comment.DTCreated = DateTime.Now;

            comment.Save();

            ajaxComment = AjaxComment.GetAjaxNSpotCommentByNSpotCommentIDWithJoin(comment.NSpotCommentID);

            ajaxComment.TotalNumberOfComments = "0";
        }


        return(ajaxComment);
    }
Пример #2
0
        /// <summary>
        /// Gets all the PhotoComment in the database 
        /// </summary>
        public static List<AjaxComment> GetPhotoCommentsByGalleryID(int PhotoCollectionID)
        {
            Database db = DatabaseFactory.CreateDatabase();
            DbCommand dbCommand = db.GetStoredProcCommand("HG_GetPhotoCommentsByGalleryID");
            db.AddInParameter(dbCommand, "PhotoCollectionID", DbType.Int32, PhotoCollectionID);

            List<AjaxComment> commentArr = new List<AjaxComment>();

            //execute the stored procedure
            using (IDataReader dr = db.ExecuteReader(dbCommand))
            {

                while (dr.Read())
                {
                    AjaxComment ajaxComment = new AjaxComment();

                    ajaxComment.WebMemberID = (string)dr["WebMemberID"];
                    ajaxComment.WebPhotoID = (string)dr["WebPhotoID"];
                    ajaxComment.NickName = (string)dr["NickName"];
                    ajaxComment.PhotoUrl = ParallelServer.Get((string)dr["PhotoUrl"]) + "user/" + (string)dr["PhotoUrl"];
                    ajaxComment.Text = (string)dr["Text"];
                    ajaxComment.DateTimePosted = TimeDistance.TimeAgo((DateTime)dr["DTCreated"]);

                    commentArr.Add(ajaxComment);
                }


                dr.Close();
            }

            // Create the object array from the datareader
            return commentArr;
        }
Пример #3
0
    public AjaxComment PostComment(string type, string WebID, string CommentText, int Attempt)
    {
        AjaxComment ajaxComment = new AjaxComment();
        Member      member      = (Member)HttpContext.Current.Session["Member"];

        CommentType = (CommentType)Enum.Parse(typeof(CommentType), type);


        Comment comment = new Comment();

        comment.ObjectID       = GetObjectID(CommentType, WebID);
        comment.MemberIDFrom   = member.MemberID;
        comment.Text           = CommentText;
        comment.DTCreated      = DateTime.Now;
        comment.IsDeleted      = false;
        comment.CommentType    = (int)CommentType;
        comment.WebCommentID   = Next2Friends.Misc.UniqueID.NewWebID();
        comment.Path           = "/";
        comment.SentFromMobile = 0;
        comment.Save();

        // ++ the comment count for the object if applicable
        IncrementCommentCount(CommentType, comment.ObjectID);

        comment.ThreadNo           = comment.CommentID;
        comment.InReplyToCommentID = comment.CommentID;
        comment.Save();

        ajaxComment                       = AjaxComment.GetAjaxCommentByCommentIDWithJoin(comment.CommentID);
        ajaxComment.Type                  = CommentType.ToString();
        ajaxComment.WebObjectID           = WebID;
        ajaxComment.TotalNumberOfComments = AjaxComment.GetNumberOfCommentByObjectID(comment.ObjectID, (int)CommentType).ToString();

        return(ajaxComment);
    }
Пример #4
0
    /// <summary>
    /// Converts the object into HTML for rendering in browser
    /// </summary>
    /// <returns></returns>
    public string ToHTML(AjaxComment cmt)
    {
        StringBuilder sbHTML = new StringBuilder();

        object[] parameters = new object[9];

        parameters[0] = cmt.PhotoUrl;
        parameters[1] = cmt.NickName;
        parameters[2] = cmt.DateTimePosted;
        parameters[3] = Next2Friends.Misc.SafeHTML.AutoLink(Next2Friends.Misc.SafeHTML.FormatForHTML(cmt.Text));
        parameters[4] = cmt.WebMemberID;
        parameters[5] = cmt.WebCommentID;
        parameters[6] = cmt.Type;
        parameters[7] = Next2Friends.Misc.SafeHTML.FormatForText(cmt.Text);

        if (cmt.SentFromMobile)
        {
            parameters[8] = "<p><i>Sent from my mobile</i></p>";
        }
        else
        {
            parameters[8] = "";
        }



        if (cmt.Type == null || cmt.Type == "")
        {
            sbHTML.AppendFormat(@"<li class='clearfix' id='li{5}'><a href='/users/{1}'><img src='{0}' alt='' width='50' height='50' class='commenter_avatar' /></a>
							<div class='comment_entry' id='{5}'>								
								<p class='commenter'> <cite><a href='/users/{1}'>{1}</a></cite><br />
								<small>{2}</small></p>
								<p id='commentBody{5}'>{3}{8}</p>                                
							</div>

						</li>"                        , parameters);
        }

        else
        {
            sbHTML.AppendFormat(@"<li class=""clearfix"" id=""li{5}""><a href='/users/{1}'><img src=""{0}"" alt="""" width=""50"" height=""50"" class=""commenter_avatar"" /></a>
							<div class=""comment_entry"" id=""{5}"">
								<p class=""reply""><small><a id=""edit{5}"" href=""javascript:editComment('{6}','{5}');void(0);"">Edit</a><a  id=""delete{5}"" href=""javascript:deleteComment('{6}','{5}');"">Delete</a></small><a id=""reply{5}"" href=""javascript:replyToComment('{6}','{5}');void(0);"">Reply</a></p>
								<p class=""commenter""> <cite><a href=""/users/{1}"">{1}</a></cite><br />
								<small>{2}</small></p>
								<p id=""commentBody{5}"">{3}{8}</p>
                                <p id=""commentBodyHidden{5}"" style=""visibility:hidden;display:none"">{7}.</p>
							</div>

						</li>"                        , parameters);
        }


        return(sbHTML.ToString());
    }
Пример #5
0
    public string DeleteComment(string type, string WebID)
    {
        CommentType = (CommentType)Enum.Parse(typeof(CommentType), type);
        Comment deleteComment = Comment.GetCommentByWebCommentID(WebID);

        Comment.DeleteComment(WebID);

        int TotalNumberOfComments = AjaxComment.GetNumberOfCommentByObjectID(deleteComment.ObjectID, (int)CommentType);

        return(TotalNumberOfComments.ToString());
    }
Пример #6
0
    //    /// <summary>
    //    /// Creates a subscribe request for the member
    //    /// </summary>
    //    /// <param name="WebMemberID">The WebMemberID of the subscribe request</param>
    //    /// <returns>1 = OK, 2 = Not logged in, 3 = already subscribed</returns>
    //    [AjaxPro.AjaxMethod]
    //    public int SubscribeToMember(string WebMemberID)
    //    {
    //        ViewingMember = Member.GetMemberViaWebMemberID(WebMemberID);
    //        member = (Member)Session["Member"];

    //        SubscriptionMember subscription = new SubscriptionMember();

    //        subscription.MemberID = member.MemberID;
    //        subscription.SubscribeToMemberID = ViewingMember.MemberID;
    //        subscription.DTCreated = DateTime.Now;
    //        subscription.SaveWithCheck();

    //        return 1;
    //    }

    //    /// <summary>
    //    /// Creates a favourite request for the member
    //    /// </summary>
    //    /// <param name="WebMemberID">The WebMemberID of the favourite request</param>
    //    /// <returns>1 = OK, 2 = Not logged in, 3 = already subscribed</returns>
    //    [AjaxPro.AjaxMethod]
    //    public int AddToFavourites(string WebMemberID)
    //    {
    //        ViewingMember = Member.GetMemberViaWebMemberID(WebMemberID);
    //        member = (Member)Session["Member"];

    //        FavouriteMember subscription = new FavouriteMember();

    //        subscription.MemberID = member.MemberID;
    //        subscription.TheFavouriteMemberID = ViewingMember.MemberID;
    //        subscription.DTCreated = DateTime.Now;
    //        subscription.SaveWithCheck();

    //        return 1;
    //    }

    //    /// <summary>
    //    /// Creates a member block
    //    /// </summary>
    //    /// <param name="WebMemberID">The WebMemberID of the block request</param>
    //    /// <returns>1 = OK, 2 = Not logged in, 3 = already blocked</returns>
    //    [AjaxPro.AjaxMethod]
    //    public int BlockMember(string WebMemberID)
    //    {
    //        ViewingMember = Member.GetMemberViaWebMemberID(WebMemberID);
    //        member = (Member)Session["Member"];

    //        MemberBlock block = new MemberBlock();

    //        block.MemberID = member.MemberID;
    //        block.BlockMemberID = ViewingMember.MemberID;
    //        block.DTCreated = DateTime.Now;

    //        block.SaveWithCheck();

    //        return 1;
    //    }

    //    /// <summary>
    //    /// Creates a friend request for the Member
    //    /// </summary>
    //    /// <param name="WebMemberID">The WebMemberID of the friend request</param>
    //    /// <returns>1 = OK, 2 = Not logged in, 3 = already a friend</returns>
    //    [AjaxPro.AjaxMethod]
    //    public bool AddToFriends(string WebMemberID)
    //    {
    //        ViewingMember = Member.GetMemberViaWebMemberID(WebMemberID);
    //        member = (Member)Session["Member"];

    //        bool MadeFriendRequest = FriendRequest.CreateWebFriendRequest(member.MemberID, ViewingMember.MemberID);

    //        return MadeFriendRequest;
    //    }


    //    private void CreateEmbeddedLinks()
    //    {
    //        if (member != null)
    //        {
    //            SubscribeLink = @"javascript:subscribeToMember('" + ViewingMember.WebMemberID + "', this);";
    //            SendMessageLink = @"Inbox.aspx?s=" + ViewingMember.WebMemberID;
    //            BlockMemberLink = @"javascript:blockMember('" + ViewingMember.WebMemberID + "', this);";
    //            AddToFriendsLink = @"javascript:addTofriends('" + ViewingMember.WebMemberID + "', this);";
    //            AddFavouritesLink = @"javascript:addToFavourites('" + ViewingMember.WebMemberID + "', this);";

    //            string param = ProfileDefaultPageType.ToString().Substring(0, 1).ToLower();

    //            DefaultVoteUpLink = @"javascript:vote('" + param + "','" + DefaultMediaID + "', true);";
    //            DefaultVoteDownLink = @"javascript:vote('" + param + "','" + DefaultMediaID + "', false);";

    //        }
    //    }

    //    [AjaxPro.AjaxMethod]
    //    public int Vote(string param, string WebID, bool up)
    //    {
    //        member = (Member)Session["Member"];

    //        Vote v = new Vote();
    //        v.MemberID = member.MemberID;
    //        v.Value = (up) ? 1 : -1;

    //        switch (param)
    //        {
    //            case "v":
    //                v.VideoID = Video.GetVideoIDByWebVideoID(WebID);
    //                break;
    //            case "p":
    //                v.PhotoID = Photo.GetPhotoIDByWebPhotoID(WebID);
    //                break;
    //        }


    //        bool value = v.SaveWithCheck();

    //        if (value)
    //        {
    //            if (up)
    //                return 1;
    //            else
    //                return -1;
    //        }
    //        else
    //        {
    //            return 0;
    //        }
    //    }

    /// <summary>
    /// Gets the Comments from the page from either Member, Photo or video (depending on the default page item)
    /// </summary>
    private void GeneratePageComments()
    {
        AjaxComment[] comments = new AjaxComment[0];

        comments = AjaxComment.GetNSpotCommentByNSpotIDWithJoin(ViewingNSpot.NSpotID);

        DefaultNewCommentParams = "'n','" + ViewingNSpot.WebNSpotID + "'";

        NumberOfComments = comments.Length;

        for (int i = 0; i < comments.Length; i++)
        {
            PageComments += comments[i].HTML;
        }
    }
Пример #7
0
    public AjaxComment GetComments(string WebID, string type)
    {   
        this.CommentType = (CommentType)Enum.Parse(typeof(CommentType),type);
        this.ObjectWebId = WebID;

        this.ObjectId = GetObjectID(this.CommentType, this.ObjectWebId);

        if (this.CommentType == CommentType.AskAFriend)
        {
            this.RedirectUrl = ASP.global_asax.WebServerRoot + "AskAFriend.aspx?q=" + WebID;
        }

        AjaxComment comm = new AjaxComment();
        comm.CommentHTML = GeneratePageComments();
        comm.TotalNumberOfComments = this.NumberOfComments.ToString();

        return comm;
    }
Пример #8
0
    public AjaxComment GetComments(string WebID, string type)
    {
        this.CommentType = (CommentType)Enum.Parse(typeof(CommentType), type);
        this.ObjectWebId = WebID;

        this.ObjectId = GetObjectID(this.CommentType, this.ObjectWebId);

        if (this.CommentType == CommentType.AskAFriend)
        {
            this.RedirectUrl = ASP.global_asax.WebServerRoot + "AskAFriend.aspx?q=" + WebID;
        }

        AjaxComment comm = new AjaxComment();

        comm.CommentHTML           = GeneratePageComments();
        comm.TotalNumberOfComments = this.NumberOfComments.ToString();

        return(comm);
    }
Пример #9
0
    private void ExtractURLParams()
    {
        ViewingMember = ExtractPageParams.GetMember(this.Page, this.Context);

        // if no member name was givent then it is likely to be a video page
        if (ViewingMember == null)
        {
            // get the video and extact the member
            DefaultVideo  = ExtractPageParams.GetVideo(this.Page, this.Context);
            ViewingMember = new Member(DefaultVideo.MemberID);
        }

        NumberOfComments          = AjaxComment.GetNumberOfCommentByObjectID(ViewingMember.MemberID, (int)CommentType.Wall);
        NumberOfMemberSubscribers = SubscriptionMember.GetSubscriberCountByMemberID(ViewingMember.MemberID).ToString();
        ViewingMemberProfile      = ViewingMember.MemberProfile[0];

        try
        {
            NumberOfVideos  = ViewingMemberProfile.NumberOfVideos;
            NumberOfPhotos  = ViewingMemberProfile.NumberOfPhotos;
            NumberOfFriends = FriendRequest.GetNumberOfFriends(ViewingMember.MemberID);
        }
        catch { }

        try
        {
            ResourceFile PhotoRes = new ResourceFile(ViewingMember.ProfilePhotoResourceFileID);
            PhotoURL      = ParallelServer.Get(PhotoRes.FullyQualifiedURL) + PhotoRes.FullyQualifiedURL;
            LargePhotoURL = ParallelServer.Get("/pmed/" + PhotoRes.FileName) + @"user/" + ViewingMember.NickName + "/pmed/" + PhotoRes.FileName;
        }
        catch { }

        ViewingMemberProfile = ViewingMember.MemberProfile[0];

        ViewingMemberProfile.NumberOfViews++;
    }
Пример #10
0
    public AjaxComment PostComment(string type, string WebID, string CommentText)
    {
        AjaxComment ajaxComment = new AjaxComment();
        member = (Member)Session["Member"];

        if (type == "n")
        {
            NSpot nspot = NSpot.GetNSpotByNSpotWebID(WebID);

            NSpotComment comment = new NSpotComment();

            comment.NSpotID = nspot.NSpotID;
            comment.MemberID = member.MemberID;
            comment.Text = CommentText;
            comment.DTCreated = DateTime.Now;

            comment.Save();

            ajaxComment = AjaxComment.GetAjaxNSpotCommentByNSpotCommentIDWithJoin(comment.NSpotCommentID);

            ajaxComment.TotalNumberOfComments = "0";

        }


        return ajaxComment;
    }
Пример #11
0
    //    /// <summary>
    //    /// Creates a subscribe request for the member
    //    /// </summary>
    //    /// <param name="WebMemberID">The WebMemberID of the subscribe request</param>
    //    /// <returns>1 = OK, 2 = Not logged in, 3 = already subscribed</returns>
    //    [AjaxPro.AjaxMethod]
    //    public int SubscribeToMember(string WebMemberID)
    //    {
    //        ViewingMember = Member.GetMemberViaWebMemberID(WebMemberID);
    //        member = (Member)Session["Member"];

    //        SubscriptionMember subscription = new SubscriptionMember();

    //        subscription.MemberID = member.MemberID;
    //        subscription.SubscribeToMemberID = ViewingMember.MemberID;
    //        subscription.DTCreated = DateTime.Now;
    //        subscription.SaveWithCheck();

    //        return 1;
    //    }

    //    /// <summary>
    //    /// Creates a favourite request for the member
    //    /// </summary>
    //    /// <param name="WebMemberID">The WebMemberID of the favourite request</param>
    //    /// <returns>1 = OK, 2 = Not logged in, 3 = already subscribed</returns>
    //    [AjaxPro.AjaxMethod]
    //    public int AddToFavourites(string WebMemberID)
    //    {
    //        ViewingMember = Member.GetMemberViaWebMemberID(WebMemberID);
    //        member = (Member)Session["Member"];

    //        FavouriteMember subscription = new FavouriteMember();

    //        subscription.MemberID = member.MemberID;
    //        subscription.TheFavouriteMemberID = ViewingMember.MemberID;
    //        subscription.DTCreated = DateTime.Now;
    //        subscription.SaveWithCheck();

    //        return 1;
    //    }

    //    /// <summary>
    //    /// Creates a member block
    //    /// </summary>
    //    /// <param name="WebMemberID">The WebMemberID of the block request</param>
    //    /// <returns>1 = OK, 2 = Not logged in, 3 = already blocked</returns>
    //    [AjaxPro.AjaxMethod]
    //    public int BlockMember(string WebMemberID)
    //    {
    //        ViewingMember = Member.GetMemberViaWebMemberID(WebMemberID);
    //        member = (Member)Session["Member"];

    //        MemberBlock block = new MemberBlock();

    //        block.MemberID = member.MemberID;
    //        block.BlockMemberID = ViewingMember.MemberID;
    //        block.DTCreated = DateTime.Now;

    //        block.SaveWithCheck();

    //        return 1;
    //    }

    //    /// <summary>
    //    /// Creates a friend request for the Member
    //    /// </summary>
    //    /// <param name="WebMemberID">The WebMemberID of the friend request</param>
    //    /// <returns>1 = OK, 2 = Not logged in, 3 = already a friend</returns>
    //    [AjaxPro.AjaxMethod]
    //    public bool AddToFriends(string WebMemberID)
    //    {
    //        ViewingMember = Member.GetMemberViaWebMemberID(WebMemberID);
    //        member = (Member)Session["Member"];

    //        bool MadeFriendRequest = FriendRequest.CreateWebFriendRequest(member.MemberID, ViewingMember.MemberID);

    //        return MadeFriendRequest;
    //    }


    //    private void CreateEmbeddedLinks()
    //    {
    //        if (member != null)
    //        {
    //            SubscribeLink = @"javascript:subscribeToMember('" + ViewingMember.WebMemberID + "', this);";
    //            SendMessageLink = @"Inbox.aspx?s=" + ViewingMember.WebMemberID;
    //            BlockMemberLink = @"javascript:blockMember('" + ViewingMember.WebMemberID + "', this);";
    //            AddToFriendsLink = @"javascript:addTofriends('" + ViewingMember.WebMemberID + "', this);";
    //            AddFavouritesLink = @"javascript:addToFavourites('" + ViewingMember.WebMemberID + "', this);";

    //            string param = ProfileDefaultPageType.ToString().Substring(0, 1).ToLower();

    //            DefaultVoteUpLink = @"javascript:vote('" + param + "','" + DefaultMediaID + "', true);";
    //            DefaultVoteDownLink = @"javascript:vote('" + param + "','" + DefaultMediaID + "', false);";

    //        }
    //    }

    //    [AjaxPro.AjaxMethod]
    //    public int Vote(string param, string WebID, bool up)
    //    {
    //        member = (Member)Session["Member"];

    //        Vote v = new Vote();
    //        v.MemberID = member.MemberID;
    //        v.Value = (up) ? 1 : -1;

    //        switch (param)
    //        {
    //            case "v":
    //                v.VideoID = Video.GetVideoIDByWebVideoID(WebID);
    //                break;
    //            case "p":
    //                v.PhotoID = Photo.GetPhotoIDByWebPhotoID(WebID);
    //                break;
    //        }


    //        bool value = v.SaveWithCheck();

    //        if (value)
    //        {
    //            if (up)
    //                return 1;
    //            else
    //                return -1;
    //        }
    //        else
    //        {
    //            return 0;
    //        }
    //    }

    /// <summary>
    /// Gets the Comments from the page from either Member, Photo or video (depending on the default page item)
    /// </summary>
    private void GeneratePageComments()
    {
        AjaxComment[] comments = new AjaxComment[0];

        comments = AjaxComment.GetNSpotCommentByNSpotIDWithJoin(ViewingNSpot.NSpotID);

        DefaultNewCommentParams = "'n','" + ViewingNSpot.WebNSpotID + "'";

        NumberOfComments = comments.Length;

        for (int i = 0; i < comments.Length; i++)
        {
            PageComments += comments[i].HTML;
        }
    }
Пример #12
0
    /// <summary>
    /// Converts the object into HTML for rendering in browser
    /// </summary>
    /// <returns></returns>
    public string ToHTML(AjaxComment cmt)
    {
        StringBuilder sbHTML = new StringBuilder();

        object[] parameters = new object[9];

        parameters[0] = cmt.PhotoUrl;
        parameters[1] = cmt.NickName;
        parameters[2] = cmt.DateTimePosted;
        parameters[3] = Next2Friends.Misc.SafeHTML.AutoLink(Next2Friends.Misc.SafeHTML.FormatForHTML(cmt.Text));
        parameters[4] = cmt.WebMemberID;
        parameters[5] = cmt.WebCommentID;
        parameters[6] = cmt.Type;
        parameters[7] = Next2Friends.Misc.SafeHTML.FormatForText(cmt.Text);

        if (cmt.SentFromMobile)
        {
            parameters[8] = "<p><i>Sent from my mobile</i></p>";
        }
        else
        {
            parameters[8] = "";
        }



        if (cmt.Type == null || cmt.Type == "")
        {
            sbHTML.AppendFormat(@"<li class='clearfix' id='li{5}'><a href='/users/{1}'><img src='{0}' alt='' width='50' height='50' class='commenter_avatar' /></a>
							<div class='comment_entry' id='{5}'>								
								<p class='commenter'> <cite><a href='/users/{1}'>{1}</a></cite><br />
								<small>{2}</small></p>
								<p id='commentBody{5}'>{3}{8}</p>                                
							</div>

						</li>", parameters);
        }

        else
        {
            sbHTML.AppendFormat(@"<li class=""clearfix"" id=""li{5}""><a href='/users/{1}'><img src=""{0}"" alt="""" width=""50"" height=""50"" class=""commenter_avatar"" /></a>
							<div class=""comment_entry"" id=""{5}"">
								<p class=""reply""><small><a id=""edit{5}"" href=""javascript:editComment('{6}','{5}');void(0);"">Edit</a><a  id=""delete{5}"" href=""javascript:deleteComment('{6}','{5}');"">Delete</a></small><a id=""reply{5}"" href=""javascript:replyToComment('{6}','{5}');void(0);"">Reply</a></p>
								<p class=""commenter""> <cite><a href=""/users/{1}"">{1}</a></cite><br />
								<small>{2}</small></p>
								<p id=""commentBody{5}"">{3}{8}</p>
                                <p id=""commentBodyHidden{5}"" style=""visibility:hidden;display:none"">{7}.</p>
							</div>

						</li>", parameters);
        }


        return sbHTML.ToString();
    }
Пример #13
0
    private string GeneratePageComments()
    {
        member = (Member)HttpContext.Current.Session["Member"];

        if (member != null)
        {
            IsLoggedIn = true;
        }

        AjaxComment[] comments = new AjaxComment[0];

        comments = AjaxComment.GetCommentByObjectIDWithJoin(ObjectId, (int)CommentType);
        DefaultNewCommentParams = "'" + CommentType.ToString() + "','" + ObjectWebId + "'";


        NumberOfComments = comments.Length;

        for (int i = 0; i < comments.Length; i++)
        {
            PageComments += comments[i].HTML;
        }

        if (NumberOfComments <= 0)
        {
            return("<p id='pBeFirst'>Be the first to post a comment</p>");
        }

        StringBuilder sbCommentHTML = new StringBuilder();
        StringBuilder sbPartialHTML = null;

        object[] parameters = new object[12];

        string HTMLItem = (@"<li class='clearfix' id='li{5}' depth='{7}'><a href='javascript:dmp(""{8}"");'><img src='{0}' alt='' width='50' height='50' class='commenter_avatar' /></a>
							<div class='comment_entry' id='{5}'>
								<p class='reply'>"                                );


        string HTMLItem2 = (@"</p>
								<p class='commenter'> <cite><a href='/users/{1}'>{1}</a></cite><br />
								<small>{2}</small></p>
								<p id='commentBody{5}'>{4}.{11}</p>
                                <p id='commentBodyHidden{5}' style='visibility:hidden;display:none'>{9}.</p>
							</div>
						</li>"                        );

        int lastReplytoID = -1;

        for (int i = 0; i < comments.Length; i++)
        {
            AjaxComment comment = comments[i];

            int CurrentCommentDepth = comment.Depth;
            int PrevCommentDepth    = 0;
            int NextCommentDepth    = 0;

            try
            {
                PrevCommentDepth = comments[i - 1].Depth;
            }
            catch { }

            try
            {
                NextCommentDepth = comments[i + 1].Depth;
            }
            catch { }

            sbPartialHTML = new StringBuilder();
            sbPartialHTML.Append(HTMLItem);

            if (member != null && comment.WebMemberID == member.WebMemberID && !comment.IsDeleted)
            {
                sbPartialHTML.Append(@"<small><a id=""edit{5}"" href=""javascript:editComment('{6}','{5}','{10}');void(0);"">Edit</a>");
                sbPartialHTML.Append(@"<a id=""delete{5}"" href=""javascript:deleteComment('{6}','{5}','{10}');"">Delete</a></small>");
            }

            if (!comment.IsDeleted)
            {
                if (IsLoggedIn)
                {
                    sbPartialHTML.Append(@"<a id=""reply{5}"" href=""javascript:replyToComment('{6}','{5}','{10}');void(0);"">Reply</a>");
                }
                else
                {
                    sbPartialHTML.Append(@"<a href=""" + LoginUrl + @""">Reply</a>");
                }
            }

            sbPartialHTML.Append(HTMLItem2);

            parameters[0]  = comment.PhotoUrl;
            parameters[1]  = comment.NickName;
            parameters[2]  = TimeDistance.TimeAgo(comment.DTCreated);
            parameters[11] = "";

            if (!comment.IsDeleted)
            {
                parameters[4] = HTMLUtility.AutoLink(comment.Text);
                parameters[9] = HTMLUtility.FormatForText(comment.Text);

                if (comment.SentFromMobile)
                {
                    parameters[11] = "<p><i>Sent from my mobile</i></p>";
                }
            }
            else
            {
                parameters[4] = @"<i style=""font-weight:lighter;color:gray"">Comment Deleted</i>";
            }

            parameters[5]  = comment.WebCommentID;
            parameters[6]  = (int)CommentType;
            parameters[7]  = comment.Depth;
            parameters[8]  = comment.WebMemberID;
            parameters[10] = ObjectWebId;


            if (PrevCommentDepth <= 1 && comment.Depth > 1)
            {
                sbCommentHTML.Append("<ol class=\"jqCmtOl\" id=\"jqCmtOl\">");
            }

            sbCommentHTML.AppendFormat(sbPartialHTML.ToString(), parameters);

            if (NextCommentDepth <= 1 && comment.Depth > 1)
            {
                sbCommentHTML.Append("</ol>");
            }

            lastReplytoID = comment.InReplyToCommentID;
        }

        //string FinalComments = "<ul id='ulCommentList' class='profile_commentlist'>" + sbCommentHTML.ToString() + "</ul>";

        return(sbCommentHTML.ToString());
    }
Пример #14
0
    public AjaxComment PostReply(string type, string WebID, string Body, string ObjWebID)
    {
        Member      mem         = (Member)HttpContext.Current.Session["Member"];
        AjaxComment ajaxComment = new AjaxComment();

        CommentType = (CommentType)Enum.Parse(typeof(CommentType), type);


        Comment inReplyToComment = null;

        if (WebID != string.Empty)
        {
            inReplyToComment = Comment.GetCommentByWebCommentID(WebID);
        }

        Comment comment = new Comment();

        comment.MemberIDFrom   = mem.MemberID;
        comment.ObjectID       = inReplyToComment.ObjectID;
        comment.DTCreated      = DateTime.Now;
        comment.IsDeleted      = false;
        comment.WebCommentID   = Next2Friends.Misc.UniqueID.NewWebID();
        comment.Text           = Body;
        comment.CommentType    = (int)CommentType;
        comment.SentFromMobile = 0;

        if (inReplyToComment != null)
        {
            comment.InReplyToCommentID = inReplyToComment.CommentID;
            comment.ThreadNo           = inReplyToComment.ThreadNo;
        }

        comment.Save();

        // ++ the comment count for the object if applicable
        IncrementCommentCount(CommentType, comment.ObjectID);


        if (inReplyToComment == null)
        {
            comment.InReplyToCommentID = comment.CommentID;
            comment.ThreadNo           = comment.CommentID;
        }


        if (inReplyToComment.Path != "/")
        {
            comment.Path = inReplyToComment.Path;
        }
        else
        {
            comment.Path = inReplyToComment.Path + inReplyToComment.CommentID + "/";
        }

        comment.Save();

        ajaxComment             = AjaxComment.GetAjaxCommentByCommentIDWithJoin(comment.CommentID);
        ajaxComment.WebObjectID = ObjWebID;
        ajaxComment.Type        = CommentType.ToString();

        ajaxComment.TotalNumberOfComments = AjaxComment.GetNumberOfCommentByObjectID(comment.ObjectID, (int)CommentType).ToString();

        return(ajaxComment);
    }
Пример #15
0
    public AjaxComment PostComment(string type, string WebID, string CommentText, int Attempt)
    {
        AjaxComment ajaxComment = new AjaxComment();
        Member member = (Member)HttpContext.Current.Session["Member"];

        CommentType = (CommentType)Enum.Parse(typeof(CommentType), type);
        

        Comment comment = new Comment();

        comment.ObjectID = GetObjectID(CommentType, WebID);
        comment.MemberIDFrom = member.MemberID;
        comment.Text = CommentText;
        comment.DTCreated = DateTime.Now;
        comment.IsDeleted = false;
        comment.CommentType = (int)CommentType;
        comment.WebCommentID = Next2Friends.Misc.UniqueID.NewWebID();
        comment.Path = "/";
        comment.SentFromMobile = 0;
        comment.Save();

        // ++ the comment count for the object if applicable        
        IncrementCommentCount(CommentType, comment.ObjectID);

        comment.ThreadNo = comment.CommentID;
        comment.InReplyToCommentID = comment.CommentID;
        comment.Save();

        ajaxComment = AjaxComment.GetAjaxCommentByCommentIDWithJoin(comment.CommentID);
        ajaxComment.Type = CommentType.ToString();
        ajaxComment.WebObjectID = WebID;
        ajaxComment.TotalNumberOfComments = AjaxComment.GetNumberOfCommentByObjectID(comment.ObjectID,(int)CommentType).ToString();

        return ajaxComment;
    }
Пример #16
0
    public AjaxComment PostReply(string type, string WebID, string Body, string ObjWebID)
    {
        Member mem = (Member)HttpContext.Current.Session["Member"];
        AjaxComment ajaxComment = new AjaxComment();

        CommentType = (CommentType)Enum.Parse(typeof(CommentType), type);
        

        Comment inReplyToComment = null;

        if (WebID != string.Empty)
            inReplyToComment = Comment.GetCommentByWebCommentID(WebID);

        Comment comment = new Comment();
        comment.MemberIDFrom = mem.MemberID;
        comment.ObjectID = inReplyToComment.ObjectID;
        comment.DTCreated = DateTime.Now;
        comment.IsDeleted = false;
        comment.WebCommentID = Next2Friends.Misc.UniqueID.NewWebID();
        comment.Text = Body;
        comment.CommentType = (int)CommentType;
        comment.SentFromMobile = 0;

        if (inReplyToComment != null)
        {
            comment.InReplyToCommentID = inReplyToComment.CommentID;
            comment.ThreadNo = inReplyToComment.ThreadNo;
        }

        comment.Save();

        // ++ the comment count for the object if applicable        
        IncrementCommentCount(CommentType, comment.ObjectID);


        if (inReplyToComment == null)
        {
            comment.InReplyToCommentID = comment.CommentID;
            comment.ThreadNo = comment.CommentID;
        }


        if (inReplyToComment.Path != "/")
        {
            comment.Path = inReplyToComment.Path;
        }
        else
        {
            comment.Path = inReplyToComment.Path + inReplyToComment.CommentID + "/";
        }

        comment.Save();

        ajaxComment = AjaxComment.GetAjaxCommentByCommentIDWithJoin(comment.CommentID);
        ajaxComment.WebObjectID = ObjWebID;
        ajaxComment.Type = CommentType.ToString();

        ajaxComment.TotalNumberOfComments = AjaxComment.GetNumberOfCommentByObjectID(comment.ObjectID, (int)CommentType).ToString();

        return ajaxComment;
    }
Пример #17
0
    private void SetVariables()
    {
        string strWebMemberID     = Request.Params["m"];
        string strWebVideoID      = Request.Params["v"];
        string strPhotoID         = Request.Params["p"];
        string strLiveBroadcastID = Request.Params["l"];

        if (strWebMemberID != null)
        {
            ViewingMember = Member.GetMembersViaWebMemberIDWithFullJoin(strWebMemberID);
            //ProfileDefaultPageType = DefaultPageType.Member;
            //ViewingMemberProfile = ViewingMember.MemberProfile[0];
            //DefaultNumberOfViews = (++ViewingMemberProfile.NumberOfViews).ToString();
            //ViewingMemberProfile.Save();
            //PermaLink = WebRoot + "view.aspx?m=" + strWebMemberID;
            MemberSubscribers = GetSubscriberLister();

            GenerateFriendLister();
        }
        else if (strWebVideoID != null)
        {
            DefaultVideo  = Video.GetVideoByWebVideoIDWithJoin(strWebVideoID);
            ViewingMember = new Member(DefaultVideo.MemberID);
            //ViewingMemberProfile = ViewingMember.MemberProfile[0];
            //ProfileDefaultPageType = DefaultPageType.Video;
            //DefaultVideoURL = DefaultVideo.VideoResourceFile.FullyQualifiedURL;
            //DefaultMediaID = strWebVideoID;
            //DefaultVoteCount = DefaultVideo.TotalVoteScore.ToString();
            //VideoURL = DefaultVideo.VideoResourceFile.FullyQualifiedURL;
            //DefaultNumberOfViews = (++DefaultVideo.NumberOfViews).ToString();
            //DefaultVideo.Save();
            //PermaLink = WebRoot + "view.aspx?v=" + strWebVideoID;
            //EmbedLink = @"<object width=""480"" height=""400""><param name=""movie"" value=""http://www.next2friends.com/flvplayer.swf""></param><param name=""wmode"" value=""transparent""></param><embed src=""http://www.next2friends.com/flvplayer.swf?file=" + VideoURL + @""" type=""application/x-shockwave-flash"" wmode=""transparent"" width=""480"" height=""400""></embed></object>";

            //MainTitle = DefaultVideo.Title;
            //MainSubTitle = DefaultVideo.Description;

            if (IsLoggedIn)
            {
                //ReportAbuseLink = "ReportAbuse.aspx?r=" + strWebVideoID;
            }
            else
            {
                //ReportAbuseLink = @"signup.aspx?u=ReportAbuse.aspx?r=" + strWebVideoID + "&url=" + Request.Url.AbsoluteUri;
            }
        }
        else if (strPhotoID != null)
        {
            DefaultPhoto = Photo.GetPhotoByWebPhotoIDWithJoin(strPhotoID);

            //DefaultNumberOfViews = (++DefaultPhoto.NumberOfViews).ToString();
            //DefaultPhoto.Save();

            ViewingMember = new Member(DefaultPhoto.MemberID);
            //ViewingMemberProfile = ViewingMember.MemberProfile[0];
            //ProfileDefaultPageType = DefaultPageType.Photo;
            //DefaultPhotoURL = ParallelServer.Get(DefaultPhoto.PhotoResourceFile.FullyQualifiedURL) + DefaultPhoto.PhotoResourceFile.FullyQualifiedURL;
            //DefaultMediaID = strPhotoID;
            //DefaultVoteCount = DefaultPhoto.TotalVoteScore.ToString();
            //PermaLink = WebRoot + "view.aspx?p=" + strPhotoID;

            MainTitle = DefaultPhoto.Caption;

            //MainSubTitle = "From Gallery " + DefaultPhoto.;

            if (IsLoggedIn)
            {
                //ReportAbuseLink = "ReportAbuse.aspx?r=" + strPhotoID;
            }
            else
            {
                //ReportAbuseLink = @"signup.aspx?u=ReportAbuse.aspx?r=" + strPhotoID + "&url=" + Request.Url.AbsoluteUri;
            }
        }
        else if (strLiveBroadcastID != null)
        {
            VideoURL = strLiveBroadcastID;
            LiveBroadcast live = LiveBroadcast.GetLiveBroadcastByWebLiveBroadcastID(strLiveBroadcastID);

            ViewingMember = new Member(live.MemberID);
            //ViewingMemberProfile = ViewingMember.MemberProfile[0];
            //ProfileDefaultPageType = DefaultPageType.LiveBroadcast;
            //PermaLink = ASP.global_asax.WebRoot + "view.aspx?v="+strWebVideoID;
        }
        else
        {
            throw new Exception("No WebID");
            //ViewingMember = new Member(1);
            //ProfileDefaultPageType = DefaultPageType.Member;
            //PermaLink = ASP.global_asax.WebRoot + "view.aspx?v="+strWebVideoID;
        }

        NumberOfComments     = AjaxComment.GetNumberOfMemberCommentByMemberID(ViewingMember.MemberID);
        ViewingMemberProfile = ViewingMember.MemberProfile[0];

        try
        {
            NumberOfVideos  = ViewingMemberProfile.NumberOfVideos;
            NumberOfPhotos  = ViewingMemberProfile.NumberOfPhotos;
            NumberOfFriends = FriendRequest.GetNumberOfFriends(ViewingMember.MemberID);
        }
        catch { }



        try
        {
            ResourceFile PhotoRes = new ResourceFile(ViewingMember.ProfilePhotoResourceFileID);
            PhotoURL      = ParallelServer.Get(PhotoRes.FullyQualifiedURL) + PhotoRes.FullyQualifiedURL;
            LargePhotoURL = ParallelServer.Get("/pmed/" + PhotoRes.FileName) + @"user/" + ViewingMember.NickName + "/pmed/" + PhotoRes.FileName;
        }
        catch { }

        ViewingMemberProfile = ViewingMember.MemberProfile[0];

        ViewingMemberProfile.NumberOfViews++;
    }
Пример #18
0
    private string GeneratePageComments()
    {
        member = (Member)HttpContext.Current.Session["Member"];

        if (member != null)
        {
            IsLoggedIn = true;
        }

        AjaxComment[] comments = new AjaxComment[0];

        comments = AjaxComment.GetCommentByObjectIDWithJoin(ObjectId, (int)CommentType);
        DefaultNewCommentParams = "'" + CommentType.ToString() + "','" + ObjectWebId + "'";


        NumberOfComments = comments.Length;

        for (int i = 0; i < comments.Length; i++)
        {
            PageComments += comments[i].HTML;
        }

        if (NumberOfComments <= 0)
        {
            return "<p id='pBeFirst'>Be the first to post a comment</p>";            
        }
        
        StringBuilder sbCommentHTML = new StringBuilder();
        StringBuilder sbPartialHTML = null;

        object[] parameters = new object[12];

        string HTMLItem = (@"<li class='clearfix' id='li{5}' depth='{7}'><a href='javascript:dmp(""{8}"");'><img src='{0}' alt='' width='50' height='50' class='commenter_avatar' /></a>
							<div class='comment_entry' id='{5}'>
								<p class='reply'>");


        string HTMLItem2 = (@"</p>
								<p class='commenter'> <cite><a href='/users/{1}'>{1}</a></cite><br />
								<small>{2}</small></p>
								<p id='commentBody{5}'>{4}.{11}</p>
                                <p id='commentBodyHidden{5}' style='visibility:hidden;display:none'>{9}.</p>
							</div>
						</li>");

        int lastReplytoID = -1;        

        for(int i=0; i < comments.Length; i++ )        
        {
            AjaxComment comment = comments[i];

            int CurrentCommentDepth = comment.Depth;
            int PrevCommentDepth = 0;
            int NextCommentDepth = 0;

            try
            {
                PrevCommentDepth = comments[i - 1].Depth;
            }
            catch { }

            try
            {
                NextCommentDepth = comments[i + 1].Depth;
            }
            catch { }

            sbPartialHTML = new StringBuilder();
            sbPartialHTML.Append(HTMLItem);

            if (member != null && comment.WebMemberID == member.WebMemberID && !comment.IsDeleted)
            {
                sbPartialHTML.Append(@"<small><a id=""edit{5}"" href=""javascript:editComment('{6}','{5}','{10}');void(0);"">Edit</a>");
                sbPartialHTML.Append(@"<a id=""delete{5}"" href=""javascript:deleteComment('{6}','{5}','{10}');"">Delete</a></small>");
            }

            if (!comment.IsDeleted)
            {
                if (IsLoggedIn)
                {
                    sbPartialHTML.Append(@"<a id=""reply{5}"" href=""javascript:replyToComment('{6}','{5}','{10}');void(0);"">Reply</a>");
                }
                else
                {
                    sbPartialHTML.Append(@"<a href=""" + LoginUrl + @""">Reply</a>");
                }
            }

            sbPartialHTML.Append(HTMLItem2);

            parameters[0] = comment.PhotoUrl;
            parameters[1] = comment.NickName;
            parameters[2] = TimeDistance.TimeAgo(comment.DTCreated);
            parameters[11] = "";

            if (!comment.IsDeleted)
            {
                parameters[4] = HTMLUtility.AutoLink(comment.Text);
                parameters[9] = HTMLUtility.FormatForText(comment.Text);

                if (comment.SentFromMobile)
                {
                    parameters[11] = "<p><i>Sent from my mobile</i></p>";
                }
            }
            else
            {
                parameters[4] = @"<i style=""font-weight:lighter;color:gray"">Comment Deleted</i>";
            }

            parameters[5] = comment.WebCommentID;
            parameters[6] = (int)CommentType;
            parameters[7] = comment.Depth;
            parameters[8] = comment.WebMemberID;
            parameters[10] = ObjectWebId;


            if (PrevCommentDepth <=1 && comment.Depth > 1)
            {
                sbCommentHTML.Append("<ol class=\"jqCmtOl\" id=\"jqCmtOl\">");
            }

            sbCommentHTML.AppendFormat(sbPartialHTML.ToString(), parameters);

            if (NextCommentDepth <= 1 && comment.Depth > 1)
            {
                sbCommentHTML.Append("</ol>");
            }

            lastReplytoID = comment.InReplyToCommentID;
        }

        //string FinalComments = "<ul id='ulCommentList' class='profile_commentlist'>" + sbCommentHTML.ToString() + "</ul>";

        return sbCommentHTML.ToString();
    }