public async Task <ActionResult> Details(int?id)
        {
            #region USERVALIDATION
            token = (string)(Session["accessToken"]);
            string userID = (string)(Session["UserID"]);
            #endregion
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            List <ProjectActivityComment> projectActivityComment = new List <ProjectActivityComment>();


            using (var client = new HttpClient())
            {
                client.BaseAddress = new Uri(baseurl);
                client.DefaultRequestHeaders.Clear();
                client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
                client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token);
                HttpResponseMessage Res = await client.GetAsync($"api/ProjectActivityComments/{id}");

                if (Res.IsSuccessStatusCode)
                {
                    var projectActivityCommentResponse = Res.Content.ReadAsStringAsync().Result;
                    ProjectActivityComment myProjectActivityComment = JsonConvert.DeserializeObject <ProjectActivityComment>(projectActivityCommentResponse);
                    return(View(myProjectActivityComment));
                }
                else
                {
                    this.AddNotification("Unable to display Project Activity Comments,please contact Administrator" + Res, NotificationType.ERROR);
                    return(View());
                }
            }
        }
        public async Task <ActionResult> Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            List <ProjectActivityComment> projectActivityComment   = new List <ProjectActivityComment>();
            ProjectActivityComment        myProjectActivityComment = new ProjectActivityComment();

            using (var client = new HttpClient())
            {
                client.BaseAddress = new Uri(baseurl);
                client.DefaultRequestHeaders.Clear();
                client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
                client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token);
                HttpResponseMessage Res = await client.GetAsync($"api/ProjectActivityComments/{id}");

                if (Res.IsSuccessStatusCode)
                {
                    var projectActivityCommentResponse = Res.Content.ReadAsStringAsync().Result;
                    myProjectActivityComment = JsonConvert.DeserializeObject <ProjectActivityComment>(projectActivityCommentResponse);
                }
                else
                {
                    this.AddNotification("Unable to display Comments,please contact Administrator" + Res, NotificationType.ERROR);
                    return(View());
                }
            }

            ViewBag.OrganizationID = await OrganizationSelectListByModel(token, myProjectActivityComment.OrganizationID);

            ViewBag.ProjectActivityID = await ProjectActivitySelectListByModel(token, myProjectActivityComment.ProjectActivityID);

            return(View(myProjectActivityComment));
        }
        public async Task <ActionResult> Edit([Bind(Include = "ID,CommentTitle,CommentDescription,ProjectActivityID,OrganizationID,CreatedDate,isDeleted,TimeStamp,UserId")] ProjectActivityComment projectActivityComment)
        {
            if (ModelState.IsValid)
            {
                using (var client = new HttpClient())
                {
                    client.BaseAddress = new Uri(baseurl);
                    client.DefaultRequestHeaders.Clear();
                    client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
                    client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token);
                    HttpResponseMessage Res = await client.PutAsJsonAsync($"api/ProjectActivityComments/{projectActivityComment.ID}", projectActivityComment);

                    if (Res.IsSuccessStatusCode)
                    {
                        this.AddNotification("comment modified successfully", NotificationType.SUCCESS);
                        return(RedirectToAction("Index"));
                    }
                    else
                    {
                        this.AddNotification("comment cannot be modified at this time. Please contact Administrator", NotificationType.ERROR);
                        return(View());
                    }
                }
            }
            ViewBag.OrganizationID = await OrganizationSelectListByModel(token, projectActivityComment.OrganizationID);

            ViewBag.ProjectActivityID = await ProjectActivitySelectListByModel(token, projectActivityComment.ProjectActivityID);

            return(View(projectActivityComment));
        }
        public async Task <ActionResult> Create([Bind(Include = "ID,CommentTitle,CommentDescription,LocalFilePath,FileName,ProjectActivityID,OrganizationID,CreatedDate,isDeleted,TimeStamp,UserId")] ProjectActivityComment projectActivityComment)
        {
            #region USERVALIDATION
            token = (string)(Session["accessToken"]);
            string userID = (string)(Session["UserID"]);
            #endregion

            if (ModelState.IsValid)
            {
                HttpPostedFileBase file          = Request.Files["file"];
                string             localfilepath = string.Empty;
                string             filename      = string.Empty;
                if (file.ContentLength > 0)
                {
                    var fileName = Path.GetFileName(file.FileName);
                    var path     = Path.Combine(Server.MapPath("~/DocumentManagement/ProjectActivityComments"), fileName);
                    file.SaveAs(path);
                    localfilepath = clientpath + fileName;
                    filename      = fileName.ToString();
                }
                ;
                projectActivityComment.CreatedDate   = DateTime.Now;
                projectActivityComment.isDeleted     = false;
                projectActivityComment.LocalFilePath = localfilepath;
                projectActivityComment.FileName      = filename;
                projectActivityComment.UserId        = userID;

                using (var client = new HttpClient())
                {
                    client.BaseAddress = new Uri(baseurl);
                    client.DefaultRequestHeaders.Clear();
                    client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
                    client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token);

                    HttpResponseMessage Res = await client.PostAsJsonAsync("api/ProjectActivityComments", projectActivityComment);

                    if (Res.IsSuccessStatusCode)
                    {
                        this.AddNotification("Comment Posted successfully", NotificationType.SUCCESS);
                        return(RedirectToAction("Index"));
                    }
                    else
                    {
                        this.AddNotification("Comment cannot be posted at this time. Please contact Administrator" + Res, NotificationType.ERROR);
                        return(View());
                    }
                }
            }
            ViewBag.OrganizationID = await OrganizationSelectListByModel(token, projectActivityComment.OrganizationID);

            ViewBag.ProjectActivityID = await ProjectActivitySelectListByModel(token, projectActivityComment.ProjectActivityID);

            return(View(projectActivityComment));
        }