protected RealExTransactionRequest(string secret, string merchantId, string account, string orderId, Amount amount, Card card, Comments comments) : base(secret, merchantId, account, orderId, comments) { SignatureProperties = () => new[] { Amount.Value.ToString(), Amount.Currency.CurrencyName(), Card.Number }; Amount = amount; Card = card; }
Task<StacManResponse<Comment>> IPostMethods.GetComments(string site, IEnumerable<int> ids, string filter = null, int? page = null, int? pagesize = null, DateTime? fromdate = null, DateTime? todate = null, Comments.Sort? sort = null, DateTime? mindate = null, DateTime? maxdate = null, int? min = null, int? max = null, Order? order = null) { var filterObj = ValidateAndGetFilter(filter); ValidateString(site, "site"); ValidateEnumerable(ids, "ids"); ValidatePaging(page, pagesize); ValidateSortMinMax(sort, mindate: mindate, maxdate: maxdate, min: min, max: max); var ub = new ApiUrlBuilder(String.Format("/posts/{0}/comments", String.Join(";", ids)), useHttps: false); ub.AddParameter("site", site); ub.AddParameter("filter", filter); ub.AddParameter("page", page); ub.AddParameter("pagesize", pagesize); ub.AddParameter("fromdate", fromdate); ub.AddParameter("todate", todate); ub.AddParameter("sort", sort); ub.AddParameter("min", mindate); ub.AddParameter("max", maxdate); ub.AddParameter("min", min); ub.AddParameter("max", max); ub.AddParameter("order", order); return CreateApiTask<Comment>(ub, filterObj, "/posts/{ids}/comments"); }
public string AddComment(int postID, string commentTxt) { Comments comment = new Comments(); comment.MemberId = Context.Session["memberID"].ToString(); comment.CommentText = commentTxt; comment.PostId = postID; messageDAL.InsertComment(comment); //Insert notification NotificationDAL notificationDAL = new NotificationDAL(); Post aPost = new Post(postID); List<Member> MemberList = new List<Member>(); MemberList = notificationDAL.GetPostOwner(aPost); string friendId = MemberList[0].MemberId; Member aFriend = new Member(friendId); Member aMember = new Member(Context.Session["memberID"].ToString()); if (aMember.MemberId != aFriend.MemberId) { notificationDAL.InsertCommentedOnPostNotification(aMember, aFriend, aPost); } //Refreshing the Comment count Post post = new Post(); post.PostId = comment.PostId; return messageDAL.CountComments(post).ToString(); }
public RealEx3DVerifyRequest(string secret, string merchantId, string account, string orderId, Amount amount, Card card, string paRes, Comments comments) : base(secret, merchantId, account, orderId, amount, card, comments) { PaRes = paRes; Type = "3ds-verifysig"; IsSecure = true; }
public void CommentForumsRead_CorrectInput_ReturnsValidList() { var siteList = mocks.DynamicMock<ISiteList>(); var readerCreator = mocks.DynamicMock<IDnaDataReaderCreator>(); var reader = mocks.DynamicMock<IDnaDataReader>(); var site = mocks.DynamicMock<ISite>(); var cacheManager = mocks.DynamicMock<ICacheManager>(); var siteName = "h2g2"; var siteId = 1; site.Stub(x => x.ModerationStatus).Return(ModerationStatus.SiteStatus.UnMod); site.Stub(x => x.IsEmergencyClosed).Return(false); site.Stub(x => x.SiteName).Return(siteName); site.Stub(x => x.SiteID).Return(siteId); site.Stub(x => x.IsSiteScheduledClosed(DateTime.Now)).Return(false); reader.Stub(x => x.HasRows).Return(true); reader.Stub(x => x.Read()).Return(true).Repeat.Once(); reader.Stub(x => x.GetStringNullAsEmpty("sitename")).Return(siteName); readerCreator.Stub(x => x.CreateDnaDataReader("commentforumsreadbysitename")).Return(reader); siteList.Stub(x => x.GetSite(siteName)).Return(site); mocks.ReplayAll(); var comments = new Comments(null, readerCreator, cacheManager, siteList); var forums = comments.GetCommentForumListBySite(site); Assert.AreEqual(1, forums.CommentForums.Count); readerCreator.AssertWasCalled(x => x.CreateDnaDataReader("commentforumsreadbysitename")); }
Task<StacManResponse<Comment>> ICommentMethods.GetAll(string site, string filter = null, int? page = null, int? pagesize = null, DateTime? fromdate = null, DateTime? todate = null, Comments.Sort? sort = null, DateTime? mindate = null, DateTime? maxdate = null, int? min = null, int? max = null, Order? order = null) { var filterObj = ValidateAndGetFilter(filter); ValidateString(site, "site"); ValidatePaging(page, pagesize); ValidateSortMinMax(sort, mindate: mindate, maxdate: maxdate, min: min, max: max); var ub = new ApiUrlBuilder("/comments", useHttps: false); ub.AddParameter("site", site); ub.AddParameter("filter", filter); ub.AddParameter("page", page); ub.AddParameter("pagesize", pagesize); ub.AddParameter("fromdate", fromdate); ub.AddParameter("todate", todate); ub.AddParameter("sort", sort); ub.AddParameter("min", mindate); ub.AddParameter("max", maxdate); ub.AddParameter("min", min); ub.AddParameter("max", max); ub.AddParameter("order", order); return CreateApiTask<Comment>(ub, filterObj, "/comments"); }
public string Create(Comments Model) { //Bll实例化放action里面 为了不让每次都实例化 产生废代码 CommentsBll bll = new CommentsBll(); //控制器里直接返回Bll里的返回结果 不写任何逻辑代码 //保存的企业ID从登录信息里面取 所以必须要在这里赋值 因为登录信息是在BaseController里的 Model.EnterpriseID = LoginUser.UserBasic.EnterpriseID; return bll.AddOrUpdate(Model); }
public void GetComment() { string connectionString = ConfigurationManager.AppSettings.Get("connString"); Comments commentObj = new Comments(); commentObj.CommentId = int.Parse(Request.QueryString["CommentId"].ToString()); BusinessLayer businessObj = new BusinessLayer (); DataSet dsComment = businessObj.getComments(commentObj, connectionString); txtComment.Text = dsComment.Tables[0].Rows[0][0].ToString(); }
public void GetComments() { string connectionString = ConfigurationManager.AppSettings.Get("connString"); Comments commentObj = new Comments(); commentObj.AdviceId = int.Parse(Session["AdviceId"].ToString()); BusinessLayer businessLayerObj = new BusinessLayer(); DataSet dsComment = businessLayerObj.SelectComment(commentObj, connectionString); gvShowComments.DataSource = dsComment; gvShowComments.DataBind(); }
public RealExAuthRequest(string secret, string merchantId, string account, string orderId, Amount amount, Card card, TssInfo tssInfo, bool autoSettle, string custNum, string prodId, string varRef, Comments comments) : base(secret, merchantId, account, orderId, amount, card, comments) { TssInfo = tssInfo; CustNum = custNum; ProdId = prodId; VarRef = varRef; Type = "auth"; AutoSettle = new AutoSettle(autoSettle); }
protected void SaveComment() { string connectionString = ConfigurationManager.AppSettings.Get("connString"); Comments comment = new Comments(); comment.CommentDateTime = DateTime.Now; comment.Username = Session["Username"].ToString(); comment.AdviceId = int.Parse(Session["AdviceId"].ToString()); comment.CommentsField = txtComment.Text; BusinessLayer businessLayerObj = new BusinessLayer(); businessLayerObj.InsertComment(comment, connectionString); }
public ActionResult AddComment(FormCollection form) { int id = int.Parse(form["id"].ToString()); string comment = form["comment"].ToString(); using (var db = new RazomContext()) { Comments c = new Comments { PlaceID = id, Message = comment }; db.Comments.Add(c); db.SaveChanges(); } return RedirectToAction("Show", new { id=id}); }
public void Add_Comment() { //Act Comments testComment = new Comments("TestComment", "Comment to add for testing", m_ParentTaskID); int initalCommentCount = m_ScrumToolDBContext.Comments.Count(); //Arrange m_CommentController.Create(testComment); //Assert m_ScrumToolDBContext.Comments.Should().NotBeNullOrEmpty() .And.HaveCount(initalCommentCount + 1, "Inital Comment Count + 1"); m_ScrumToolDBContext.Comments.Last().ShouldBeEquivalentTo(testComment, options => options.Excluding(c => c.ID), "The last comment object in the table should be the testComment"); }
protected void btnPost_Click(object sender, EventArgs e) { objComments = new Comments(); objComments.CommentID = 0; objComments.BugID = intBugID; objComments.Name = Server.HtmlEncode(txtName.Text.Trim()); objComments.Comment = Server.HtmlEncode(txtComments.Text.Trim()); int i=objComments.postComments(); if (i == 1) { fillComments(); } }
public void UpdateComment() { string connectionString = ConfigurationManager.AppSettings.Get("connString"); Comments commentObj = new Comments(); if (txtComment.Text.Equals(string.Empty) == false) { commentObj.CommentsField = txtComment.Text; commentObj.CommentId = int.Parse(Request.QueryString["CommentId"].ToString()); BusinessLayer businessObj = new BusinessLayer(); businessObj.UpdateComment(commentObj, connectionString); Response.Redirect("VoteAndCommentInfo.aspx"); } else lblError.Text = "Blank Comment Cannot Be Submitted"; }
private void fillComments() { SqlDataReader dr = null; objComments = new Comments(); objComments.BugID = intBugID; dr=(SqlDataReader)objComments.getallComments(); if (dr.HasRows) { dlShowComments.DataSource = dr; dlShowComments.DataBind(); } else { lblError.Text = "No Comments Found"; } }
protected void addcomment(object sender, ImageClickEventArgs e) { Security.UserInfo usr = new Security.UserInfo(); string username = Session["USERNAME"].ToString(); Security.UserInfo usrs = usr.getUserProfileFromEmail(username); Comments com = new Comments(); string brandid = Request.QueryString["id"]; com.BrandID =""+ brandid+""; com.Comment = txtdiscption.InnerText; com.UserID = usrs.UserID; com.Deleted = false; com.Date = System.DateTime.Now; com.PostAsAnonymous = false; com.BrandCommentID = 0; com.CreateComment(com); }
public void info() { string t = Request.QueryString["id"]; Brand brand = new Brand(); int brandid = int.Parse(t); brand = brand.getBrandDetails(brandid.ToString()); brandlogo.Src = "Images/" + brand.Logo; brandlogo.Width = 100; brandlogo.Height = 80; description.InnerText = brand.BrandDescription; name.Text = brand.BrandName; website.HRef = "http://" + brand.Website; website.InnerText = brand.Website; Comments comments = new Comments(); List<Comments> topcomments = comments.TopThreeComments(5); Table tblComments = new Table(); tblComments.Width = Unit.Percentage(100); tblComments.Height = Unit.Percentage(100); TableRow tblrowcom = new TableRow(); TableCell tblcellcom = new TableCell(); for (int j = 0; j < topcomments.Count; j++) { tblcellcom.Text = topcomments[j].Comment; tblrowcom.Cells.Add(tblcellcom); tblComments.Controls.Add(tblrowcom); tblcellcom = new TableCell(); tblrowcom = new TableRow(); tblcellcom.Text = topcomments[j].Date.ToString(); tblrowcom.Cells.Add(tblcellcom); tblComments.Controls.Add(tblrowcom); tblcellcom = new TableCell(); tblrowcom = new TableRow(); } phbrand.Controls.Add(tblComments); }
void associations_can_be_added_directly_to_gemini() { before = () => { comments = new Comments(); seed = new Seed(); seed.PurgeDb(); seed.CreateTable("Blogs", new dynamic[] { new { Id = "int", Identity = true, PrimaryKey = true }, new { Title = "nvarchar(255)" }, new { Body = "nvarchar(max)" } }).ExecuteNonQuery(); seed.CreateTable("Comments", new dynamic[] { new { Id = "int", Identity = true, PrimaryKey = true }, new { BlogId = "int", ForeignKey = "Blogs(Id)" }, new { Text = "nvarchar(1000)" } }).ExecuteNonQuery(); blogId = new { Title = "Some Blog", Body = "Lorem Ipsum" }.InsertInto("Blogs"); commentId = new { BlogId = blogId, Text = "Comment 1" }.InsertInto("Comments"); }; it["change tracking methods exist when changes is mixed in"] = () => { act = () => comment = comments.Single(commentId); it["returns blog associated with comment"] = () => { (comment.Blog().Id as object).should_be(blogId as object); }; }; }
internal Values(List <IValue> values, Comments comments) : this(values) { this.Comments = comments; }
public void CreateAndUpdateCommentForum_AlreadyExists_ThenUpdate() { var siteList = mocks.DynamicMock<ISiteList>(); var readerCreator = mocks.DynamicMock<IDnaDataReaderCreator>(); var site = mocks.DynamicMock<ISite>(); var reader = mocks.DynamicMock<IDnaDataReader>(); var readerComments = mocks.DynamicMock<IDnaDataReader>(); var readerUpdate = mocks.DynamicMock<IDnaDataReader>(); var cacheManager = mocks.DynamicMock<ICacheManager>(); var siteName = "h2g2"; var uid = "uid"; var commentForum = new CommentForum { Id = uid, Title = "title", ParentUri = "https://www.bbc.co.uk" }; cacheManager.Stub(x => x.GetData("")).Return(null).Constraints(Is.Anything()); site.Stub(x => x.ModerationStatus).Return(ModerationStatus.SiteStatus.UnMod); site.Stub(x => x.IsEmergencyClosed).Return(false); site.Stub(x => x.IsSiteScheduledClosed(DateTime.Now)).Return(false); reader.Stub(x => x.HasRows).Return(true); reader.Stub(x => x.Read()).Return(true).Repeat.Twice(); reader.Stub(x => x.GetStringNullAsEmpty("sitename")).Return(siteName); reader.Stub(x => x.GetStringNullAsEmpty("UID")).Return(uid); reader.Stub(x => x.GetStringNullAsEmpty("Title")).Return(uid); reader.Stub(x => x.GetStringNullAsEmpty("Url")).Return("https://www.bbc.co.uk"); readerUpdate.Stub(x => x.HasRows).Return(true); readerUpdate.Stub(x => x.Read()).Return(true).Repeat.Once(); readerUpdate.Stub(x => x.GetStringNullAsEmpty("sitename")).Return(siteName); readerComments.Stub(x => x.HasRows).Return(true); readerComments.Stub(x => x.Read()).Return(true).Repeat.Twice(); readerComments.Stub(x => x.GetInt32NullAsZero("totalresults")).Return(1); readerCreator.Stub(x => x.CreateDnaDataReader("commentforumreadbyuid")).Return(reader); readerCreator.Stub(x => x.CreateDnaDataReader("commentsreadbyforumid")).Return(readerComments); readerCreator.Stub(x => x.CreateDnaDataReader("commentforumupdate")).Return(readerUpdate); site.Stub(x => x.SiteID).Return(1); siteList.Stub(x => x.GetSiteOptionValueString(1, "General", "ComplaintUrl")).Return("http://www.bbc.co.uk/dna/[sitename]/comments/UserComplaintPage?PostID=[postid]&s_start=1"); siteList.Stub(x => x.GetSite(siteName)).Return(site); mocks.ReplayAll(); var comments = new Comments(null, readerCreator, cacheManager, siteList); var forum = comments.CreateAndUpdateCommentForum(commentForum, site, null); Assert.IsNotNull(forum); readerCreator.AssertWasCalled(x => x.CreateDnaDataReader("commentforumreadbyuid")); readerCreator.AssertWasCalled(x => x.CreateDnaDataReader("commentforumupdate")); readerCreator.AssertWasNotCalled(x => x.CreateDnaDataReader("commentforumcreate")); }
public CommentsTests() { RequestHelper = new RequestHelper(); Comments = RequestHelper.GetResponse <Comments>(TestDataUrls.Comments); }
public string FullText( Context context, SiteSettings ss, bool backgroundTask = false, bool onCreating = false) { if (Parameters.Search.Provider != "FullText") { return(null); } if (!Parameters.Search.CreateIndexes && !backgroundTask) { return(null); } if (AccessStatus == Databases.AccessStatuses.NotFound) { return(null); } var fullText = new List <string>(); SiteInfo.TenantCaches .Get(context.TenantId)? .SiteMenu.Breadcrumb(context: context, siteId: SiteId) .FullText(context, fullText); SiteId.FullText(context, fullText); ss.EditorColumns.ForEach(columnName => { switch (columnName) { case "WikiId": WikiId.FullText(context, fullText); break; case "Title": Title.FullText(context, fullText); break; case "Body": Body.FullText(context, fullText); break; case "Comments": Comments.FullText(context, fullText); break; } }); Creator.FullText(context, fullText); Updator.FullText(context, fullText); CreatedTime.FullText(context, fullText); UpdatedTime.FullText(context, fullText); if (!onCreating) { FullTextExtensions.OutgoingMailsFullText( context: context, fullText: fullText, referenceType: "Wikis", referenceId: WikiId); } return(fullText .Where(o => !o.IsNullOrEmpty()) .Select(o => o.Trim()) .Distinct() .Join(" ")); }
internal UnqualifiedColumnNames(List <UnqualifiedColumnName> columnNames, Comments comments) : this(columnNames) { this.Comments = comments; }
protected void btnSubmit_Click(object sender, EventArgs e) { try { if (Page.IsValid) { DateTime tryInstallDate; Nullable <DateTime> installDate = null; DateTime tryDueDate; Nullable <DateTime> dueDate = null; Int32 formId; int statusId; int expediteCodeId; string emailListString = lblEmailsSentTo.Text.Replace(" ", ""); List <string> emailList = emailListString.Split(',').ToList <string>(); System.Security.Principal.IPrincipal user = System.Web.HttpContext.Current.User; UserLogic uLogic = new UserLogic(); SystemUsers currentUser = uLogic.GetCurrentUser(user); DateTime.TryParse(txtInstallDate.Value, out tryInstallDate); if (txtDueByDate.Value != "") { DateTime.TryParse(txtDueByDate.Value, out tryDueDate); if (tryDueDate.Year > 0001) { dueDate = tryDueDate; } } else { dueDate = null; } if (tryInstallDate.Year > 0001) { installDate = tryInstallDate; } expediteCodeId = Convert.ToInt32(ddlExpediteCode.SelectedValue); statusId = Convert.ToInt32(ddlStatus.SelectedValue); string accountNumber = txtAccountNumber.Text; int accountNumberLength = txtAccountNumber.Text.Length; while (accountNumberLength < 6) { accountNumber = "0" + accountNumber; accountNumberLength++; } using (FormContext ctx = new FormContext()) { var expediteCode = ctx.ExpediteCodes.FirstOrDefault(c => c.ExpediteCodeID.Equals(expediteCodeId)); var status = ctx.Statuses.FirstOrDefault(s => s.StatusId.Equals(statusId)); Int32 requestedUserId = Convert.ToInt32(ddlRequestedBy.SelectedValue); var requestedUser = ctx.SystemUsers.FirstOrDefault(x => x.SystemUserID == requestedUserId); var modifiedUser = ctx.SystemUsers.FirstOrDefault(x => x.SystemUserID == currentUser.SystemUserID); Models.DirectOrderForm newForm = new Models.DirectOrderForm { Timestamp = DateTime.Now, Company = ddlCompany.SelectedText, Customer = txtCustomer.Text, AccountNumber = accountNumber, ExpediteCode = expediteCode, OowOrderNumber = txtOowOrderNumber.Text, PurchaseOrderNumber = txtPurchaseOrderNumber.Text, InstallDate = installDate, SM = txtSM.Text, ContactName = txtContactName.Text, PhoneNumber = txtPhoneNumber.Text, Reserve = txtReserve.Text, ShipVia = txtShipVia.Text, ShipToName = txtShipToName.Text, ShipToAddress = txtShipToAddress.Text, ShipToCity = txtShipToCity.Text, ShipToState = txtShipToState.Text, ShipToZip = txtShipToZip.Text, ShipToPhone = txtShipToPhone.Text, Status = ctx.Statuses.FirstOrDefault(s => s.StatusText == ddlStatus.SelectedItem.Text), RequestedUser = requestedUser, LastModifiedUser = modifiedUser, SubmittedUser = ctx.SystemUsers.FirstOrDefault(x => x.SystemUserID == currentUser.SystemUserID), DueDate = dueDate, Priority = ctx.Priorities.FirstOrDefault(x => x.PriorityText == ddlPriority.SelectedText), LastModifiedTimestamp = DateTime.Now }; if (ddlAssignedTo.SelectedIndex != -1) { Int32 assignedUserId = Convert.ToInt32(ddlAssignedTo.SelectedValue); newForm.AssignedUser = ctx.SystemUsers.FirstOrDefault(x => x.SystemUserID == assignedUserId); } ctx.DirectOrderForms.Add(newForm); ctx.SaveChanges(); if (newForm.AssignedUser != null) { Int32 assignedUserId = Convert.ToInt32(ddlAssignedTo.SelectedValue); UserAssignmentAssociation uA = new UserAssignmentAssociation { Form = ctx.TForms.FirstOrDefault(x => x.FormName == "Direct Order"), RelatedFormId = newForm.RecordId, User = ctx.SystemUsers.FirstOrDefault(x => x.SystemUserID == assignedUserId) }; ctx.UserAssignments.Add(uA); } if (newForm.RequestedUser != null) { UserRequestAssociation uR = new UserRequestAssociation { Form = ctx.TForms.FirstOrDefault(x => x.FormName == "Direct Order"), RelatedFormId = newForm.RecordId, User = requestedUser }; ctx.UserRequests.Add(uR); } ctx.SaveChanges(); formId = newForm.RecordId; Comments systemComment = new Comments { Form = ctx.TForms.FirstOrDefault(x => x.FormName == "Direct Order"), Note = "Request Created By: " + currentUser.DisplayName, RelatedFormId = formId, SystemComment = true, Timestamp = DateTime.Now }; ctx.Comments.Add(systemComment); Comments systemComment2 = new Comments { Form = ctx.TForms.FirstOrDefault(x => x.FormName == "Direct Order"), Note = "Requested By: " + requestedUser.DisplayName, RelatedFormId = formId, SystemComment = true, Timestamp = DateTime.Now }; ctx.Comments.Add(systemComment2); if (ddlAssignedTo.SelectedIndex != -1) { Comments systemComment3 = new Comments { Form = ctx.TForms.FirstOrDefault(x => x.FormName == "Direct Order"), Note = "Request Assigned To: " + requestedUser.DisplayName, RelatedFormId = formId, SystemComment = true, Timestamp = DateTime.Now }; ctx.Comments.Add(systemComment3); } if (txtComments.Text != "") { Comments firstComment = new Comments { Form = ctx.TForms.FirstOrDefault(x => x.FormName == "Direct Order"), Note = txtComments.Text, RelatedFormId = formId, SystemComment = false, Timestamp = DateTime.Now, User = ctx.SystemUsers.FirstOrDefault(x => x.SystemUserID == currentUser.SystemUserID) }; ctx.Comments.Add(firstComment); ctx.SaveChanges(); } if (ctx.SkuQuantityItems.Any(x => x.TempId == lblRandomIdentifier.Text)) { var skus = ctx.SkuQuantityItems.Where(x => x.TempId == lblRandomIdentifier.Text); foreach (var sku in skus) { sku.DirectOrderForm = ctx.DirectOrderForms.FirstOrDefault(x => x.RecordId == formId); } ctx.SaveChanges(); } if (lblEmailsSentTo.Text != "") { Comments notifyComment = new Comments { Form = ctx.TForms.FirstOrDefault(x => x.FormName == "Direct Order"), Note = "Request Notifications Sent To: " + lblEmailsSentTo.Text, RelatedFormId = formId, SystemComment = true, Timestamp = DateTime.Now }; ctx.Comments.Add(notifyComment); ctx.SaveChanges(); TForm submittedForm = ctx.TForms.FirstOrDefault(tf => tf.FormName == "Direct Order"); SendEmail msg = new SendEmail(); StringBuilder bodyHtml = new StringBuilder(); bodyHtml.AppendLine("<div style=\"width:50%; text-align:center;\"><img src=\"http://www.wctingle.com/img/Logo.jpg\" /><br /><br />") .Append("A new Direct Order Request has been submitted.<br /><br />") .AppendLine("<table style=\"border: 4px solid #d0604c;background-color:#FFF;width:100%;margin-lefT:auto; margin-right:auto;\">") .AppendLine(" <tr>") .AppendLine(" <td colspan=\"4\" style=\"text-align: center;vertical-align: middle;font-weight: bold;font-size: 20px;border: 4px solid #d0604c; color:#FFF; background-color:#bc4445;\">Direct Order Request</td>") .AppendLine(" </tr>") .AppendLine(" <tr>") .AppendLine(" <td style=\"text-align:right;font-size:16px;font-weight:bold;width:25%;color:#bc4445;\">Company:</td>") .Append(" <td style=\"text-align:left;font-size:16px;font-weight:bold;width:25%;color:#000;\">").Append(ddlCompany.SelectedText).AppendLine("</td>") .AppendLine(" <td style=\"text-align:right;font-size:16px;font-weight:bold;width:25%; color:#bc4445\"></td>") .AppendLine(" <td style=\"text-align:left;font-size:16px;font-weight:bold;width:25%;color:#000\"></td>") .AppendLine(" </tr>") .AppendLine(" <tr>") .AppendLine(" <td style=\"text-align:right;font-size:16px;font-weight:bold;width:25%;color:#bc4445;\">Customer:</td>") .Append(" <td style=\"text-align:left;font-size:16px;font-weight:bold;width:25%;color:#000;\">").Append(txtCustomer.Text).AppendLine("</td>") .AppendLine(" <td style=\"text-align:right;font-size:16px;font-weight:bold;width:25%;color:#bc4445;\">Expedite Code:</td>") .Append(" <td style=\"text-align:left;font-size:16px;font-weight:bold;width:25%;color:#000;\">").Append(expediteCode.Code).Append(" - ").Append(expediteCode.Description).AppendLine("</td>") .AppendLine(" </tr>") .AppendLine(" <tr>") .AppendLine(" <td style=\"text-align:right;font-size:16px;font-weight:bold;width:25%;color:#bc4445;\">Contact Name:</td>") .Append(" <td style=\"text-align:left;font-size:16px;font-weight:bold;width:25%;color:#000;\">").Append(txtContactName.Text).AppendLine("</td>") .AppendLine(" <td style=\"text-align:right;font-size:16px;font-weight:bold;width:25%;color:#bc4445;\">Phone Number:</td>") .Append(" <td style=\"text-align:left;font-size:16px;font-weight:bold;width:25%;color:#000;\">").Append(txtPhoneNumber.Text).AppendLine("</td>") .AppendLine(" </tr>") .AppendLine(" <tr><td colspan=\"4\"><br /></td></tr>"); if (ctx.SkuQuantityItems.Any(x => x.DirectOrderForm.RecordId == formId)) { bodyHtml.AppendLine("<tr><td colspan=\"4\"><table>"); var skus = ctx.SkuQuantityItems.Where(x => x.DirectOrderForm.RecordId == formId); foreach (var sku in skus) { bodyHtml.AppendLine("<tr>") .AppendLine(" <td style=\"text-align:right;font-size:16px;font-weight:bold;width:20%;color:#bc4445;\">Material SKU#:</td>") .Append(" <td style=\"text-align:left;font-size:16px;font-weight:bold;width:20%;color:#000;\">").Append(sku.MaterialSku).AppendLine("</td>") .AppendLine(" <td style=\"text-align:right;font-size:16px;font-weight:bold;width:20%;color:#bc4445;\">Quantity Ordered:</td>") .Append(" <td style=\"text-align:left;font-size:16px;font-weight:bold;width:20%;color:#000;\">").Append(sku.Quantity).AppendLine("</td>") .AppendLine(" <td style=\"text-align:right;font-size:16px;font-weight:bold;width:20%;color:#bc4445;\">Completed:</td>") .Append(" <td style=\"text-align:left;font-size:16px;font-weight:bold;width:20%;color:#000;\">").Append(sku.Completed.ToString()).AppendLine("</td>") .AppendLine(" </tr>"); } bodyHtml.AppendLine(" </table></td></tr>"); } bodyHtml.AppendLine(" <tr><td colspan=\"4\"><br /></td></tr>") .AppendLine(" <tr>") .AppendLine(" <td style=\"text-align:right;font-size:16px;font-weight:bold;width:25%;color:#bc4445;\">Account Number:</td>") .Append(" <td style=\"text-align:left;font-size:16px;font-weight:bold;width:25%;color:#000;\">").Append(txtAccountNumber.Text).AppendLine("</td>") .AppendLine(" <td style=\"text-align:right;font-size:16px;font-weight:bold;width:25%;color:#bc4445;\">Purchase Order #:</td>") .Append(" <td style=\"text-align:left;font-size:16px;font-weight:bold;width:25%;color:#000;\">").Append(txtPurchaseOrderNumber.Text).AppendLine("</td>") .AppendLine(" </tr>") .AppendLine(" <tr>") .AppendLine(" <td style=\"text-align:right;font-size:16px;font-weight:bold;width:25%;color:#bc4445;\">OOW Order Number:</td>") .Append(" <td style=\"text-align:left;font-size:16px;font-weight:bold;width:25%;color:#000;\">").Append(txtOowOrderNumber.Text).AppendLine("</td>") .AppendLine(" <td style=\"text-align:right;font-size:16px;font-weight:bold;width:25%;color:#bc4445;\">S/M:</td>") .Append(" <td style=\"text-align:left;font-size:16px;font-weight:bold;width:25%;color:#000;\">").Append(txtSM.Text).AppendLine("</td>") .AppendLine(" </tr>") .AppendLine(" <tr>") .AppendLine(" <td style=\"text-align:right;font-size:16px;font-weight:bold;width:25%;color:#bc4445;\">Ship Via:</td>") .Append(" <td style=\"text-align:left;font-size:16px;font-weight:bold;width:25%;color:#000;\">").Append(txtShipVia.Text).AppendLine("</td>") .AppendLine(" <td style=\"text-align:right;font-size:16px;font-weight:bold;width:25%;color:#bc4445;\"Reserve:</td>") .Append(" <td style=\"text-align:left;font-size:16px;font-weight:bold;width:25%;color:#000;\">").Append(txtReserve.Text).AppendLine("</td>") .AppendLine(" </tr>") .AppendLine(" <tr>") .AppendLine(" <td style=\"text-align:right;font-size:16px;font-weight:bold;width:25%;color:#bc4445;\">Install Date:</td>") .Append(" <td style=\"text-align:left;font-size:16px;font-weight:bold;width:25%;color:#000;\">").Append(txtInstallDate.Value).AppendLine("</td>") .AppendLine(" <td style=\"text-align:right;font-size:16px;font-weight:bold;width:25%;color:#bc4445;\"></td>") .Append(" <td style=\"text-align:left;font-size:16px;font-weight:bold;width:25%;color:#000;\"></td>") .AppendLine(" </tr>") .AppendLine(" <tr>") .AppendLine(" <td style=\"text-align:left;font-size:16px;font-weight:bold;border: 4px solid #d0604c;color:#FFF; background-color:#bc4445;\" colspan=\"4\">Ship To</td>") .AppendLine(" </tr>") .AppendLine(" <tr>") .AppendLine(" <td style=\"text-align:right;font-size:16px;font-weight:bold;width:25%;color:#bc4445;\">Name:</td>") .Append(" <td style=\"text-align:left;font-size:16px;font-weight:bold;width:25%;color:#000;\">").Append(txtShipToName.Text).AppendLine("</td>") .AppendLine(" <td style=\"text-align:right;font-size:16px;font-weight:bold;width:25%;color:#bc4445;\">Street Address:</td>") .Append(" <td style=\"text-align:left;font-size:16px;font-weight:bold;width:25%;color:#000;\">").Append(txtShipToAddress.Text).AppendLine("</td>") .AppendLine(" </tr>") .AppendLine(" <tr>") .AppendLine(" <td style=\"text-align:right;font-size:16px;font-weight:bold;width:25%;color:#bc4445;\">City: </td>") .Append(" <td style=\"text-align:left;font-size:16px;font-weight:bold;width:25%;color:#000;\">").Append(txtShipToCity.Text).AppendLine("</td>") .AppendLine(" <td style=\"text-align:right;font-size:16px;font-weight:bold;width:25%;color:#bc4445;\">State:</td>") .Append(" <td style=\"text-align:left;font-size:16px;font-weight:bold;width:25%;color:#000;\">").Append(txtShipToState.Text).AppendLine("</td>") .AppendLine(" </tr>") .AppendLine(" <tr>") .AppendLine(" <td style=\"text-align:right;font-size:16px;font-weight:bold;width:25%;color:#bc4445;\">Zip:</td>") .Append(" <td style=\"text-align:left;font-size:16px;font-weight:bold;width:25%;color:#000;\">").Append(txtShipToZip.Text).AppendLine("</td>") .AppendLine(" <td style=\"text-align:right;font-size:16px;font-weight:bold;width:25%;color:#bc4445;\">Phone:</td>") .AppendLine(" <td style=\"text-align:left;font-size:16px;font-weight:bold;width:25%;color:#000;\">").Append(txtShipToPhone.Text).Append("</td>") .AppendLine(" </tr>") .AppendLine(" <tr>") .AppendLine(" <td style=\"width:100%;\" colspan=\"4\">") .AppendLine(" <table style=\"border:none; width:100%\">") .AppendLine(" <tr>") .AppendLine(" <td colspan=\"4\">") .AppendLine(" <span style=\"font-weight:bold; color:#bc4445; text-decoration:underline\">Assignment and Request Details:</span>") .AppendLine(" </td>") .AppendLine(" </tr>") .AppendLine(" <tr>") .AppendLine(" <td style=\"width:20%; text-align:right\"><span class=\"formRedText\">Requested By:</span></td>") .Append(" <td style=\"width:25%; text-align:left\">").AppendLine(ddlRequestedBy.SelectedItem.Text) .AppendLine(" </td>") .AppendLine(" <td style=\"width:20%; text-align:right\"><span class=\"formRedText\">Assigned To:</span></td>") .Append(" <td style=\"width:25%; text-align:left\">"); if (ddlAssignedTo.SelectedIndex != -1) { bodyHtml.AppendLine(ddlAssignedTo.SelectedItem.Text); } else { bodyHtml.AppendLine("N/A"); } bodyHtml.AppendLine(" </td>") .AppendLine(" </tr>") .AppendLine(" <tr>") .AppendLine(" <td style=\"width:18%; text-align:right\"><span class=\"formRedText\">Date Created:</span></td>") .AppendLine(" <td style=\"width:18%; text-align:left\">") .AppendLine(DateTime.Now.ToShortDateString()) .AppendLine(" </td>") .AppendLine(" <td style=\"width:18%; text-align:right\"><span class=\"formRedText\">Due By:</span></td>") .Append(" <td style=\"width:18%; text-align:left\">").Append(txtDueByDate.Value).AppendLine("</td>") .AppendLine(" </tr>") .AppendLine(" <tr>") .AppendLine(" <td style=\"width:10%; text-align:right\"><span class=\"formRedText\">Status:</span></td>") .Append(" <td style=\"width:10%; text-align:left\">").AppendLine(ddlStatus.SelectedText) .AppendLine(" </td>") .AppendLine(" <td style=\"width:10%; text-align:right\"><span class=\"formRedText\">Priority:</span></td>") .Append(" <td style=\"width:10%; text-align:left\">").AppendLine(ddlPriority.SelectedText) .AppendLine(" </td>") .AppendLine(" </tr>") .AppendLine(" </table>") .AppendLine(" </td>") .AppendLine(" </tr>") .AppendLine(" <tr>") .Append(" <td style=\"width:100%; text-align:center\" colspan=\"4\">Created By: ").AppendLine(currentUser.DisplayName) .AppendLine(" </td>") .AppendLine(" </tr>") .AppendLine(" <tr>") .Append(" <td style=\"width:100%; text-align:center\" colspan=\"4\"><span style=\"color:#bc4445; font-weight:bold\">Request Notifications Sent To:</span> <br />") .AppendLine(lblEmailsSentTo.Text) .AppendLine(" </td>") .AppendLine(" </tr>") .AppendLine(" <tr>") .AppendLine(" <td style=\"width:100%; text-align:center\" colspan=\"4\"><br /><br /></td>") .AppendLine(" </tr>") .AppendLine("</table><br /><br />"); if (cbSendComments.Checked) { bodyHtml.AppendLine("<div style=\"width:80%; color:#bc4445; margin: 0 auto; text-align:center;\">Comments<br /></div>") .AppendLine("<div style=\"width:80%; background-color:#bc4445; margin: 0 auto; text-align: left; padding:3px; color: white; \">") .Append(txtComments.Text).AppendLine("<br /><br />") .AppendLine("<span style=\"padding-right:15px\">").AppendLine(currentUser.DisplayName).AppendLine("</span>") .AppendLine(DateTime.Now.ToString("MMMM dd, yyyy")) .AppendLine("</div>"); } bodyHtml.AppendLine("</div><br /><br />"); bool result = msg.SendMail("*****@*****.**", emailList, "Direct Order Request", bodyHtml.ToString(), submittedForm, formId, currentUser); txtAccountNumber.Enabled = false; txtContactName.Enabled = false; txtCustomer.Enabled = false; txtInstallDate.Disabled = true; txtMaterialSku.Enabled = false; txtOowOrderNumber.Enabled = false; txtPhoneNumber.Enabled = false; txtPurchaseOrderNumber.Enabled = false; txtQuantityOrdered.Enabled = false; txtShipToAddress.Enabled = false; txtShipToCity.Enabled = false; txtShipToName.Enabled = false; txtShipToState.Enabled = false; txtShipToZip.Enabled = false; txtShipToPhone.Enabled = false; txtSM.Enabled = false; txtReserve.Enabled = false; txtShipVia.Enabled = false; ddlExpediteCode.Enabled = false; ddlCompany.Enabled = false; ddlRequestedBy.Enabled = false; ddlAssignedTo.Enabled = false; txtDueByDate.Disabled = true; ddlStatus.Enabled = false; ddlPriority.Enabled = false; cbNotifyStandard.Enabled = false; cbNotifyRequester.Enabled = false; cbNotifyOther.Enabled = false; cbNotifyAssignee.Enabled = false; cbSendComments.Enabled = false; txtComments.Enabled = false; btnAddSkuQuantity.Enabled = false; string pageUrl = Request.Url.AbsoluteUri.Substring(0, Request.Url.AbsoluteUri.Count() - Request.Url.Query.Count()); Response.Redirect(pageUrl + "?FormAction=add&sendEmail=" + result.ToString()); } else { string pageUrl = Request.Url.AbsoluteUri.Substring(0, Request.Url.AbsoluteUri.Count() - Request.Url.Query.Count()); Response.Redirect(pageUrl + "?FormAction=add&sendEmail=NotRequired"); } } } } catch (Exception ex) { pnlCompleted.Visible = true; pnlForm.Visible = false; lblMessage.Text = "An error occured during submission of this request. <br /><br />It is possible that the form was completed before this error occurred, <br />so please contact your System Administrator before re-submitting."; } }
public static void WriteFile(Unity_Studio.EndianStream stream, string file, int offset, int size, Ogg ogg) { // Write to disk using (BinaryWriter writer = new BinaryWriter(File.Open(file, FileMode.Create))) { // Only support header CRC 3605052372 for now OggVorbisHeader head = new OggVorbisHeader(); HeaderPacketBuilder hpb = new HeaderPacketBuilder(); CodecSetup cSetup = new CodecSetup(null); cSetup.BlockSizes[0] = 256; cSetup.BlockSizes[1] = 2048; VorbisInfo info = new VorbisInfo(cSetup, (int)ogg.channels, (int)ogg.frequency, 0); OggPacket headerInfo = hpb.BuildInfoPacket(info); Comments comments = new Comments(); if (ogg.loopStart > 0 && ogg.loopEnd > 0) { comments.AddTag("LOOP_START", ogg.loopStart.ToString()); comments.AddTag("LOOP_END", ogg.loopEnd.ToString()); } OggPacket headerComment = hpb.BuildCommentsPacket(comments); OggPacket headerSetup = new OggPacket(OggVorbisHeader.GetHeader(ogg.crc32), false, 0, 2); OggStream output = new OggStream(1); output.PacketIn(headerInfo); output.PacketIn(headerComment); output.PacketIn(headerSetup); stream.Position = offset; UInt16 packetSize = stream.ReadUInt16(); int prevPacketNo = 2; int GranulePos = 0; int prevSamples = 0; while (packetSize > 0) { OggPacket packet = new OggPacket(stream.ReadBytes(packetSize), false, 0, prevPacketNo + 1); byte firstByte = packet.PacketData[0]; // OK for stereo int noSamples = 256; if ((firstByte & 2) != 0) { noSamples = 2048; } if (prevSamples != 0) { GranulePos += (prevSamples + noSamples) / 4; } packet.GranulePosition = GranulePos; prevSamples = noSamples; if (stream.Position + 2 < offset + size) { packetSize = stream.ReadUInt16(); } else { packetSize = 0; } packet.EndOfStream = packetSize == 0; prevPacketNo = packet.PacketNumber; output.PacketIn(packet); OggPage page = null; if (output.PageOut(out page, true)) { writer.Write(page.Header); writer.Write(page.Body); } } //float vorbis_quality = ((ogg.quality - 1) + (ogg.quality - 100) * 0.1f) / 99.0f; //VorbisInfo.InitVariableBitRate(ogg.channels, ogg.frequency, ogg.) //writer.Write(); writer.Close(); } }
public void CommentsReadBySite_WithPrefixFromDbCorrectInput_ReturnsValidList() { var siteList = mocks.DynamicMock<ISiteList>(); var readerCreator = mocks.DynamicMock<IDnaDataReaderCreator>(); var site = mocks.DynamicMock<ISite>(); var readerComments = mocks.DynamicMock<IDnaDataReader>(); var cacheManager = mocks.DynamicMock<ICacheManager>(); var siteName = "h2g2"; cacheManager.Stub(x => x.GetData("")).Return(null).Constraints(Is.Anything()); site.Stub(x => x.ModerationStatus).Return(ModerationStatus.SiteStatus.UnMod); site.Stub(x => x.IsEmergencyClosed).Return(false); site.Stub(x => x.IsSiteScheduledClosed(DateTime.Now)).Return(false); readerComments.Stub(x => x.HasRows).Return(true); readerComments.Stub(x => x.Read()).Return(true).Repeat.Once(); readerComments.Stub(x => x.GetInt32NullAsZero("totalresults")).Return(1); readerCreator.Stub(x => x.CreateDnaDataReader("commentsreadbysitenameprefix")).Return(readerComments); site.Stub(x => x.SiteID).Return(1); siteList.Stub(x => x.GetSiteOptionValueString(1, "General", "ComplaintUrl")).Return("http://www.bbc.co.uk/dna/[sitename]/comments/UserComplaintPage?PostID=[postid]&s_start=1"); siteList.Stub(x => x.GetSite(siteName)).Return(site); mocks.ReplayAll(); var comments = new Comments(null, readerCreator, cacheManager, siteList); var commentList = comments.GetCommentsListBySite(site, "prefix"); Assert.IsNotNull(commentList); Assert.AreEqual(1, commentList.TotalCount); Assert.AreEqual(1, commentList.comments.Count); readerCreator.AssertWasCalled(x => x.CreateDnaDataReader("commentsreadbysitenameprefix")); }
public FileSyntax(@string Name = default, Comments Comments = default, slice <Expr> Stmt = default) { this.Name = Name; this.m_CommentsRef = new ptr <Comments>(Comments); this.Stmt = Stmt; }
public override bool Load(bool preload) { var file = new FileInfo(Filename); if (!file.Exists) { return(false); } using (var bl = BinaryStateLoader.LoadAndDetect(Filename, true)) { if (bl == null) { return(false); } ClearBeforeLoad(); ClearTasprojExtras(); bl.GetLump(BinaryStateLump.Movieheader, true, delegate(TextReader tr) { string line; while ((line = tr.ReadLine()) != null) { if (!string.IsNullOrWhiteSpace(line)) { var pair = line.Split(new[] { ' ' }, 2, StringSplitOptions.RemoveEmptyEntries); if (pair.Length > 1) { Header.Add(pair[0], pair[1]); } } } }); bl.GetLump(BinaryStateLump.Comments, true, delegate(TextReader tr) { string line; while ((line = tr.ReadLine()) != null) { if (!string.IsNullOrWhiteSpace(line)) { Comments.Add(line); } } }); bl.GetLump(BinaryStateLump.Subtitles, true, delegate(TextReader tr) { string line; while ((line = tr.ReadLine()) != null) { if (!string.IsNullOrWhiteSpace(line)) { Subtitles.AddFromString(line); } } }); bl.GetLump(BinaryStateLump.SyncSettings, true, delegate(TextReader tr) { string line; while ((line = tr.ReadLine()) != null) { if (!string.IsNullOrWhiteSpace(line)) { SyncSettingsJson = line; } } }); bl.GetLump(BinaryStateLump.Input, true, delegate(TextReader tr) // Note: ExtractInputLog will clear Lag and State data potentially, this must come before loading those { var errorMessage = string.Empty; IsCountingRerecords = false; ExtractInputLog(tr, out errorMessage); IsCountingRerecords = true; }); if (StartsFromSavestate) { bl.GetCoreState( delegate(BinaryReader br, long length) { BinarySavestate = br.ReadBytes((int)length); }, delegate(TextReader tr) { TextSavestate = tr.ReadToEnd(); }); } else if (StartsFromSaveRam) { bl.GetLump(BinaryStateLump.MovieSaveRam, false, delegate(BinaryReader br, long length) { SaveRam = br.ReadBytes((int)length); }); } // TasMovie enhanced information if (bl.HasLump(BinaryStateLump.LagLog)) { bl.GetLump(BinaryStateLump.LagLog, false, delegate(BinaryReader br, long length) { LagLog.Load(br); }); } bl.GetLump(BinaryStateLump.StateHistorySettings, false, delegate(TextReader tr) { StateManager.Settings.PopulateFromString(tr.ReadToEnd()); }); if (!preload) { if (StateManager.Settings.SaveStateHistory) { bl.GetLump(BinaryStateLump.StateHistory, false, delegate(BinaryReader br, long length) { StateManager.Load(br); }); } // Movie should always have a state at frame 0. if (!this.StartsFromSavestate) { StateManager.Capture(); } } bl.GetLump(BinaryStateLump.Markers, false, delegate(TextReader tr) { string line; while ((line = tr.ReadLine()) != null) { if (!string.IsNullOrWhiteSpace(line)) { Markers.Add(new TasMovieMarker(line)); } } }); if (GetClientSettingsOnLoad != null && bl.HasLump(BinaryStateLump.ClientSettings)) { string clientSettings = string.Empty; bl.GetLump(BinaryStateLump.ClientSettings, true, delegate(TextReader tr) { string line; while ((line = tr.ReadLine()) != null) { if (!string.IsNullOrWhiteSpace(line)) { clientSettings = line; } } }); GetClientSettingsOnLoad(clientSettings); } if (bl.HasLump(BinaryStateLump.VerificationLog)) { bl.GetLump(BinaryStateLump.VerificationLog, true, delegate(TextReader tr) { VerificationLog.Clear(); while (true) { var line = tr.ReadLine(); if (string.IsNullOrEmpty(line)) { break; } if (line.StartsWith("|")) { VerificationLog.Add(line); } } }); } Branches.Load(bl, this); if (StateManager.Settings.BranchStatesInTasproj) { bl.GetLump(BinaryStateLump.BranchStateHistory, false, delegate(BinaryReader br, long length) { StateManager.LoadBranchStates(br); }); } bl.GetLump(BinaryStateLump.Session, false, delegate(TextReader tr) { Session.PopulateFromString(tr.ReadToEnd()); }); } Changes = false; return(true); }
private void Set(Context context, SiteSettings ss, DataRow dataRow, string tableAlias = null) { AccessStatus = Databases.AccessStatuses.Selected; foreach (DataColumn dataColumn in dataRow.Table.Columns) { var column = new ColumnNameInfo(dataColumn.ColumnName); if (column.TableAlias == tableAlias) { switch (column.Name) { case "TenantId": if (dataRow[column.ColumnName] != DBNull.Value) { TenantId = dataRow[column.ColumnName].ToInt(); SavedTenantId = TenantId; } break; case "Ver": Ver = dataRow[column.ColumnName].ToInt(); SavedVer = Ver; break; case "TenantName": TenantName = dataRow[column.ColumnName].ToString(); SavedTenantName = TenantName; break; case "Title": Title = new Title(dataRow, "TenantId"); SavedTitle = Title.Value; break; case "Body": Body = dataRow[column.ColumnName].ToString(); SavedBody = Body; break; case "ContractSettings": ContractSettings = GetContractSettings(dataRow); SavedContractSettings = ContractSettings?.RecordingJson(); break; case "ContractDeadline": ContractDeadline = dataRow[column.ColumnName].ToDateTime(); SavedContractDeadline = ContractDeadline; break; case "DisableAllUsersPermission": DisableAllUsersPermission = dataRow[column.ColumnName].ToBool(); SavedDisableAllUsersPermission = DisableAllUsersPermission; break; case "LogoType": LogoType = (LogoTypes)dataRow[column.ColumnName].ToInt(); SavedLogoType = LogoType.ToInt(); break; case "HtmlTitleTop": HtmlTitleTop = dataRow[column.ColumnName].ToString(); SavedHtmlTitleTop = HtmlTitleTop; break; case "HtmlTitleSite": HtmlTitleSite = dataRow[column.ColumnName].ToString(); SavedHtmlTitleSite = HtmlTitleSite; break; case "HtmlTitleRecord": HtmlTitleRecord = dataRow[column.ColumnName].ToString(); SavedHtmlTitleRecord = HtmlTitleRecord; break; case "Comments": Comments = dataRow[column.ColumnName].ToString().Deserialize <Comments>() ?? new Comments(); SavedComments = Comments.ToJson(); break; case "Creator": Creator = SiteInfo.User(context: context, userId: dataRow.Int(column.ColumnName)); SavedCreator = Creator.Id; break; case "Updator": Updator = SiteInfo.User(context: context, userId: dataRow.Int(column.ColumnName)); SavedUpdator = Updator.Id; break; case "CreatedTime": CreatedTime = new Time(context, dataRow, column.ColumnName); SavedCreatedTime = CreatedTime.Value; break; case "UpdatedTime": UpdatedTime = new Time(context, dataRow, column.ColumnName); Timestamp = dataRow.Field <DateTime>(column.ColumnName).ToString("yyyy/M/d H:m:s.fff"); SavedUpdatedTime = UpdatedTime.Value; break; case "IsHistory": VerType = dataRow.Bool(column.ColumnName) ? Versions.VerTypes.History : Versions.VerTypes.Latest; break; default: switch (Def.ExtendedColumnTypes.Get(column.Name)) { case "Class": Class( columnName: column.Name, value: dataRow[column.ColumnName].ToString()); SavedClass( columnName: column.Name, value: Class(columnName: column.Name)); break; case "Num": Num( columnName: column.Name, value: dataRow[column.ColumnName].ToDecimal()); SavedNum( columnName: column.Name, value: Num(columnName: column.Name)); break; case "Date": Date( columnName: column.Name, value: dataRow[column.ColumnName].ToDateTime()); SavedDate( columnName: column.Name, value: Date(columnName: column.Name)); break; case "Description": Description( columnName: column.Name, value: dataRow[column.ColumnName].ToString()); SavedDescription( columnName: column.Name, value: Description(columnName: column.Name)); break; case "Check": Check( columnName: column.Name, value: dataRow[column.ColumnName].ToBool()); SavedCheck( columnName: column.Name, value: Check(columnName: column.Name)); break; case "Attachments": Attachments( columnName: column.Name, value: dataRow[column.ColumnName].ToString() .Deserialize <Attachments>() ?? new Attachments()); SavedAttachments( columnName: column.Name, value: Attachments(columnName: column.Name).ToJson()); break; } break; } } } }
public void SetByApi(Context context, SiteSettings ss) { var data = context.RequestDataString.Deserialize <TenantApiModel>(); if (data == null) { return; } if (data.TenantName != null) { TenantName = data.TenantName.ToString().ToString(); } if (data.Title != null) { Title = new Title(data.Title.ToString()); } if (data.Body != null) { Body = data.Body.ToString().ToString(); } if (data.ContractDeadline != null) { ContractDeadline = data.ContractDeadline.ToDateTime().ToDateTime().ToUniversal(context: context); } if (data.DisableAllUsersPermission != null) { DisableAllUsersPermission = data.DisableAllUsersPermission.ToBool().ToBool(); } if (data.LogoType != null) { LogoType = (LogoTypes)data.LogoType.ToInt().ToInt(); } if (data.HtmlTitleTop != null) { HtmlTitleTop = data.HtmlTitleTop.ToString().ToString(); } if (data.HtmlTitleSite != null) { HtmlTitleSite = data.HtmlTitleSite.ToString().ToString(); } if (data.HtmlTitleRecord != null) { HtmlTitleRecord = data.HtmlTitleRecord.ToString().ToString(); } if (data.Comments != null) { Comments.Prepend(context: context, ss: ss, body: data.Comments); } if (data.VerUp != null) { VerUp = data.VerUp.ToBool(); } data.ClassHash.ForEach(o => Class( columnName: o.Key, value: o.Value)); data.NumHash.ForEach(o => Num( columnName: o.Key, value: o.Value)); data.DateHash.ForEach(o => Date( columnName: o.Key, value: o.Value.ToUniversal(context: context))); data.DescriptionHash.ForEach(o => Description( columnName: o.Key, value: o.Value)); data.CheckHash.ForEach(o => Check( columnName: o.Key, value: o.Value)); data.AttachmentsHash.ForEach(o => Attachments( columnName: o.Key, value: o.Value)); }
public void AddComment(Comment comment) => Comments.Add(comment);
public void CommentForumReadByUid_FromDbNotSignedIn_ReturnsValidList() { var siteList = mocks.DynamicMock<ISiteList>(); var readerCreator = mocks.DynamicMock<IDnaDataReaderCreator>(); var site = mocks.DynamicMock<ISite>(); var reader = mocks.DynamicMock<IDnaDataReader>(); var readerComments = mocks.DynamicMock<IDnaDataReader>(); var cacheManager = mocks.DynamicMock<ICacheManager>(); var siteName = "h2g2"; var uid = ""; var userId = 1; cacheManager.Stub(x => x.GetData("")).Return(null).Constraints(Is.Anything()); site.Stub(x => x.ModerationStatus).Return(ModerationStatus.SiteStatus.UnMod); site.Stub(x => x.IsEmergencyClosed).Return(false); site.Stub(x => x.IsSiteScheduledClosed(DateTime.Now)).Return(false); reader.Stub(x => x.HasRows).Return(true); reader.Stub(x => x.Read()).Return(true).Repeat.Once(); reader.Stub(x => x.GetInt32NullAsZero("NotSignedInUserId")).Return(userId); reader.Stub(x => x.GetStringNullAsEmpty("sitename")).Return(siteName); readerComments.Stub(x => x.HasRows).Return(true); readerComments.Stub(x => x.Read()).Return(true).Repeat.Once(); readerComments.Stub(x => x.GetInt32NullAsZero("totalresults")).Return(1); readerCreator.Stub(x => x.CreateDnaDataReader("commentforumreadbyuid")).Return(reader); readerCreator.Stub(x => x.CreateDnaDataReader("commentsreadbyforumid")).Return(readerComments); site.Stub(x => x.SiteID).Return(1); siteList.Stub(x => x.GetSiteOptionValueString(1, "General", "ComplaintUrl")).Return("http://www.bbc.co.uk/dna/[sitename]/comments/UserComplaintPage?PostID=[postid]&s_start=1"); siteList.Stub(x => x.GetSite(siteName)).Return(site); mocks.ReplayAll(); var comments = new Comments(null, readerCreator, cacheManager, siteList); var forum = comments.GetCommentForumByUid(uid, site); Assert.IsNotNull(forum); Assert.IsTrue(forum.allowNotSignedInCommenting); Assert.AreEqual(userId, forum.NotSignedInUserId); Assert.AreEqual(1, forum.commentList.TotalCount); Assert.AreEqual(1, forum.commentList.comments.Count); readerCreator.AssertWasCalled(x => x.CreateDnaDataReader("commentforumreadbyuid")); }
public CommentManager(Comments comments) { this.comments = comments; }
public void CommentForumReadByUid_CacheValid_ReturnsValidList() { var lastUpdate = DateTime.Now.AddDays(1); var uid = "testUid"; var validForum = new CommentForum { Id = uid }; var comments = new Comments(null, null, null, null); var siteList = mocks.DynamicMock<ISiteList>(); var readerCreator = mocks.DynamicMock<IDnaDataReaderCreator>(); var site = mocks.DynamicMock<ISite>(); var reader = mocks.DynamicMock<IDnaDataReader>(); var readerComments = mocks.DynamicMock<IDnaDataReader>(); var readerLastUpdate = mocks.DynamicMock<IDnaDataReader>(); var cacheManager = mocks.DynamicMock<ICacheManager>(); var siteName = "h2g2"; string cacheKey = comments.CommentForumCacheKey(uid, 0); cacheManager.Stub(x => x.GetData(cacheKey + "|LASTUPDATED")).Return(lastUpdate); cacheManager.Stub(x => x.GetData(cacheKey)).Return(validForum); site.Stub(x => x.ModerationStatus).Return(ModerationStatus.SiteStatus.UnMod); site.Stub(x => x.IsEmergencyClosed).Return(false); site.Stub(x => x.IsSiteScheduledClosed(DateTime.Now)).Return(false); reader.Stub(x => x.HasRows).Return(true); reader.Stub(x => x.Read()).Return(true).Repeat.Once(); reader.Stub(x => x.GetStringNullAsEmpty("sitename")).Return(siteName); readerComments.Stub(x => x.HasRows).Return(true); readerComments.Stub(x => x.Read()).Return(true).Repeat.Once(); readerComments.Stub(x => x.GetInt32NullAsZero("totalresults")).Return(1); readerLastUpdate.Stub(x => x.HasRows).Return(true); readerLastUpdate.Stub(x => x.Read()).Return(true).Repeat.Once(); readerLastUpdate.Stub(x => x.GetDateTime("lastupdated")).Return(lastUpdate); readerCreator.Stub(x => x.CreateDnaDataReader("commentforumreadbyuid")).Return(reader); readerCreator.Stub(x => x.CreateDnaDataReader("commentsreadbyforumid")).Return(readerComments); readerCreator.Stub(x => x.CreateDnaDataReader("CommentforumGetLastUpdate")).Return(readerLastUpdate); siteList.Stub(x => x.GetSite(siteName)).Return(site); mocks.ReplayAll(); comments = new Comments(null, readerCreator, cacheManager, siteList); var forum = comments.GetCommentForumByUid(uid, site); Assert.IsNotNull(forum); Assert.AreEqual(uid, forum.Id); readerCreator.AssertWasNotCalled(x => x.CreateDnaDataReader("commentforumreadbyuid")); readerCreator.AssertWasNotCalled(x => x.CreateDnaDataReader("commentsreadbyforumid")); }
public void CommentsReadBySite_ValidCache_ReturnsValidList() { var lastUpdate = DateTime.Now.AddDays(1); var comments = new Comments(null, null, null, null); var validCommentsList = new CommentsList {comments = new List<CommentInfo>()}; var siteList = mocks.DynamicMock<ISiteList>(); var readerCreator = mocks.DynamicMock<IDnaDataReaderCreator>(); var site = mocks.DynamicMock<ISite>(); var readerComments = mocks.DynamicMock<IDnaDataReader>(); var readerLastUpdate = mocks.DynamicMock<IDnaDataReader>(); var cacheManager = mocks.DynamicMock<ICacheManager>(); var siteName = "h2g2"; string cacheKey = comments.CommentListCacheKey(0, ""); cacheManager.Stub(x => x.GetData(cacheKey)).Return(validCommentsList); cacheManager.Stub(x => x.GetData(cacheKey + "|LASTUPDATED")).Return(lastUpdate); site.Stub(x => x.ModerationStatus).Return(ModerationStatus.SiteStatus.UnMod); site.Stub(x => x.IsEmergencyClosed).Return(false); site.Stub(x => x.IsSiteScheduledClosed(DateTime.Now)).Return(false); readerComments.Stub(x => x.HasRows).Return(true); readerComments.Stub(x => x.Read()).Return(true).Repeat.Once(); readerComments.Stub(x => x.GetInt32NullAsZero("totalresults")).Return(1); readerCreator.Stub(x => x.CreateDnaDataReader("commentsreadbysitename")).Return(readerComments); readerCreator.Stub(x => x.CreateDnaDataReader("commentsgetlastupdatebysite")).Return(readerLastUpdate); readerLastUpdate.Stub(x => x.HasRows).Return(true); readerLastUpdate.Stub(x => x.Read()).Return(true).Repeat.Once(); readerLastUpdate.Stub(x => x.GetDateTime("lastupdated")).Return(lastUpdate); siteList.Stub(x => x.GetSite(siteName)).Return(site); mocks.ReplayAll(); comments = new Comments(null, readerCreator, cacheManager, siteList); var commentList = comments.GetCommentsListBySite(site); Assert.IsNotNull(commentList); readerCreator.AssertWasNotCalled(x => x.CreateDnaDataReader("commentsreadbysitename")); }
private void Set(Context context, DataRow dataRow, string tableAlias = null) { AccessStatus = Databases.AccessStatuses.Selected; foreach (DataColumn dataColumn in dataRow.Table.Columns) { var column = new ColumnNameInfo(dataColumn.ColumnName); if (column.TableAlias == tableAlias) { switch (column.Name) { case "ReferenceType": if (dataRow[column.ColumnName] != DBNull.Value) { ReferenceType = dataRow[column.ColumnName].ToString(); SavedReferenceType = ReferenceType; } break; case "ReferenceId": if (dataRow[column.ColumnName] != DBNull.Value) { ReferenceId = dataRow[column.ColumnName].ToLong(); SavedReferenceId = ReferenceId; } break; case "Title": if (dataRow[column.ColumnName] != DBNull.Value) { Title = new Title(dataRow, "ExportSettingId"); SavedTitle = Title.Value; } break; case "ExportSettingId": if (dataRow[column.ColumnName] != DBNull.Value) { ExportSettingId = dataRow[column.ColumnName].ToLong(); SavedExportSettingId = ExportSettingId; } break; case "Ver": Ver = dataRow[column.ColumnName].ToInt(); SavedVer = Ver; break; case "AddHeader": AddHeader = dataRow[column.ColumnName].ToBool(); SavedAddHeader = AddHeader; break; case "ExportColumns": ExportColumns = dataRow[column.ColumnName].ToString().Deserialize <ExportColumns>() ?? new ExportColumns(ReferenceType); SavedExportColumns = ExportColumns.ToJson(); break; case "Comments": Comments = dataRow[column.ColumnName].ToString().Deserialize <Comments>() ?? new Comments(); SavedComments = Comments.ToJson(); break; case "Creator": Creator = SiteInfo.User(context: context, userId: dataRow.Int(column.ColumnName)); SavedCreator = Creator.Id; break; case "Updator": Updator = SiteInfo.User(context: context, userId: dataRow.Int(column.ColumnName)); SavedUpdator = Updator.Id; break; case "CreatedTime": CreatedTime = new Time(dataRow, column.ColumnName); SavedCreatedTime = CreatedTime.Value; break; case "UpdatedTime": UpdatedTime = new Time(dataRow, column.ColumnName); Timestamp = dataRow.Field <DateTime>(column.ColumnName).ToString("yyyy/M/d H:m:s.fff"); SavedUpdatedTime = UpdatedTime.Value; break; case "IsHistory": VerType = dataRow[column.ColumnName].ToBool() ? Versions.VerTypes.History : Versions.VerTypes.Latest; break; } } } }
public void CommentCreate_AsPreMod_ReturnCorrectError() { var siteName = "h2g2"; var siteId = 1; var uid = "uid"; var text = "test text"; var siteList = mocks.DynamicMock<ISiteList>(); var readerCreator = mocks.DynamicMock<IDnaDataReaderCreator>(); var site = mocks.DynamicMock<ISite>(); var reader = mocks.DynamicMock<IDnaDataReader>(); var cacheManager = mocks.DynamicMock<ICacheManager>(); var callingUser = mocks.DynamicMock<ICallingUser>(); var commentForum = new CommentForum { Id = uid, SiteName = siteName, ModerationServiceGroup = ModerationStatus.ForumStatus.PreMod }; var commentInfo = new CommentInfo { text = text }; callingUser.Stub(x => x.IsSecureRequest).Return(true); callingUser.Stub(x => x.UserID).Return(1); callingUser.Stub(x => x.IsUserA(UserTypes.SuperUser)).Return(false).Constraints(Is.Anything()); cacheManager.Stub(x => x.GetData("")).Return(null).Constraints(Is.Anything()); site.Stub(x => x.SiteID).Return(siteId); site.Stub(x => x.IsEmergencyClosed).Return(false); site.Stub(x => x.IsSiteScheduledClosed(DateTime.Now)).Return(false); reader.Stub(x => x.HasRows).Return(true); reader.Stub(x => x.Read()).Return(true).Repeat.Once(); readerCreator.Stub(x => x.CreateDnaDataReader("commentcreate")).Return(reader); siteList.Stub(x => x.GetSite(siteName)).Return(site); mocks.ReplayAll(); var comments = new Comments(null, readerCreator, cacheManager, siteList); comments.CallingUser = callingUser; var comment = comments.CreateComment(commentForum, commentInfo); Assert.IsNotNull(comment); readerCreator.AssertWasCalled(x => x.CreateDnaDataReader("commentcreate")); }
private void Set(IContext context, DataRow dataRow, string tableAlias = null) { AccessStatus = Databases.AccessStatuses.Selected; foreach (DataColumn dataColumn in dataRow.Table.Columns) { var column = new ColumnNameInfo(dataColumn.ColumnName); if (column.TableAlias == tableAlias) { switch (column.Name) { case "LoginId": if (dataRow[column.ColumnName] != DBNull.Value) { LoginId = dataRow[column.ColumnName].ToString(); SavedLoginId = LoginId; } break; case "Key": if (dataRow[column.ColumnName] != DBNull.Value) { Key = dataRow[column.ColumnName].ToString(); SavedKey = Key; } break; case "Ver": Ver = dataRow[column.ColumnName].ToInt(); SavedVer = Ver; break; case "TenantNames": TenantNames = dataRow[column.ColumnName].ToString(); SavedTenantNames = TenantNames; break; case "TenantId": TenantId = dataRow[column.ColumnName].ToInt(); SavedTenantId = TenantId; break; case "UserId": UserId = dataRow[column.ColumnName].ToInt(); SavedUserId = UserId; break; case "Comments": Comments = dataRow[column.ColumnName].ToString().Deserialize <Comments>() ?? new Comments(); SavedComments = Comments.ToJson(); break; case "Creator": Creator = SiteInfo.User(context: context, userId: dataRow.Int(column.ColumnName)); SavedCreator = Creator.Id; break; case "Updator": Updator = SiteInfo.User(context: context, userId: dataRow.Int(column.ColumnName)); SavedUpdator = Updator.Id; break; case "CreatedTime": CreatedTime = new Time(context, dataRow, column.ColumnName); SavedCreatedTime = CreatedTime.Value; break; case "UpdatedTime": UpdatedTime = new Time(context, dataRow, column.ColumnName); Timestamp = dataRow.Field <DateTime>(column.ColumnName).ToString("yyyy/M/d H:m:s.fff"); SavedUpdatedTime = UpdatedTime.Value; break; case "IsHistory": VerType = dataRow[column.ColumnName].ToBool() ? Versions.VerTypes.History : Versions.VerTypes.Latest; break; } } } }
public RealExRebateRequest(string secret, string merchantId, string account, string orderId, Amount amount, string pasRef, string authCode, string refundPassword, bool autoSettle, Comments comments) : base(secret, merchantId, account, orderId, pasRef, authCode, comments) { SignatureProperties = () => new[] { Amount.Value.ToString(), Amount.Currency.CurrencyName() + "." }; Type = "rebate"; AutoSettle = new AutoSettle(autoSettle); RefundHash = refundPassword.ComputeHash(); Amount = amount; }
public CreateCommentCommand(Comments _comment) { Comment = _comment; }
public void SetByApi(Context context, SiteSettings ss) { var data = context.RequestDataString.Deserialize <GroupApiModel>(); if (data == null) { context.InvalidJsonData = !context.RequestDataString.IsNullOrEmpty(); return; } if (data.TenantId != null) { TenantId = data.TenantId.ToInt().ToInt(); } if (data.GroupName != null) { GroupName = data.GroupName.ToString().ToString(); } if (data.Body != null) { Body = data.Body.ToString().ToString(); } if (data.Disabled != null) { Disabled = data.Disabled.ToBool().ToBool(); } if (data.Comments != null) { Comments.Prepend(context: context, ss: ss, body: data.Comments); } if (data.VerUp != null) { VerUp = data.VerUp.ToBool(); } data.ClassHash?.ForEach(o => Class( columnName: o.Key, value: o.Value)); data.NumHash?.ForEach(o => Num( columnName: o.Key, value: new Num(o.Value))); data.DateHash?.ForEach(o => Date( columnName: o.Key, value: o.Value.ToDateTime().ToUniversal(context: context))); data.DescriptionHash?.ForEach(o => Description( columnName: o.Key, value: o.Value)); data.CheckHash?.ForEach(o => Check( columnName: o.Key, value: o.Value)); data.AttachmentsHash?.ForEach(o => { string columnName = o.Key; Attachments newAttachments = o.Value; Attachments oldAttachments = AttachmentsHash.Get(columnName); if (oldAttachments != null) { var newGuidSet = new HashSet <string>(newAttachments.Select(x => x.Guid).Distinct()); newAttachments.AddRange(oldAttachments.Where((oldvalue) => !newGuidSet.Contains(oldvalue.Guid))); } Attachments(columnName: columnName, value: newAttachments); }); }
public Dictionary <string, string> PropertyValues(Context context, IEnumerable <string> names) { var hash = new Dictionary <string, string>(); names?.ForEach(name => { switch (name) { case "SiteId": hash.Add("SiteId", SiteId.ToString()); break; case "UpdatedTime": hash.Add("UpdatedTime", UpdatedTime.Value.ToString()); break; case "WikiId": hash.Add("WikiId", WikiId.ToString()); break; case "Ver": hash.Add("Ver", Ver.ToString()); break; case "Title": hash.Add("Title", Title.Value); break; case "Body": hash.Add("Body", Body); break; case "TitleBody": hash.Add("TitleBody", TitleBody.ToString()); break; case "Comments": hash.Add("Comments", Comments.ToJson()); break; case "Creator": hash.Add("Creator", Creator.Id.ToString()); break; case "Updator": hash.Add("Updator", Updator.Id.ToString()); break; case "CreatedTime": hash.Add("CreatedTime", CreatedTime.Value.ToString()); break; case "VerUp": hash.Add("VerUp", VerUp.ToString()); break; case "Timestamp": hash.Add("Timestamp", Timestamp); break; } }); return(hash); }
private void Set(Context context, SiteSettings ss, DataRow dataRow, string tableAlias = null) { AccessStatus = Databases.AccessStatuses.Selected; foreach (DataColumn dataColumn in dataRow.Table.Columns) { var column = new ColumnNameInfo(dataColumn.ColumnName); if (column.TableAlias == tableAlias) { switch (column.Name) { case "TenantId": if (dataRow[column.ColumnName] != DBNull.Value) { TenantId = dataRow[column.ColumnName].ToInt(); SavedTenantId = TenantId; } break; case "GroupId": if (dataRow[column.ColumnName] != DBNull.Value) { GroupId = dataRow[column.ColumnName].ToInt(); SavedGroupId = GroupId; } break; case "Ver": Ver = dataRow[column.ColumnName].ToInt(); SavedVer = Ver; break; case "GroupName": GroupName = dataRow[column.ColumnName].ToString(); SavedGroupName = GroupName; break; case "Body": Body = dataRow[column.ColumnName].ToString(); SavedBody = Body; break; case "Disabled": Disabled = dataRow[column.ColumnName].ToBool(); SavedDisabled = Disabled; break; case "Comments": Comments = dataRow[column.ColumnName].ToString().Deserialize <Comments>() ?? new Comments(); SavedComments = Comments.ToJson(); break; case "Creator": Creator = SiteInfo.User(context: context, userId: dataRow.Int(column.ColumnName)); SavedCreator = Creator.Id; break; case "Updator": Updator = SiteInfo.User(context: context, userId: dataRow.Int(column.ColumnName)); SavedUpdator = Updator.Id; break; case "CreatedTime": CreatedTime = new Time(context, dataRow, column.ColumnName); SavedCreatedTime = CreatedTime.Value; break; case "UpdatedTime": UpdatedTime = new Time(context, dataRow, column.ColumnName); Timestamp = dataRow.Field <DateTime>(column.ColumnName).ToString("yyyy/M/d H:m:s.fff"); SavedUpdatedTime = UpdatedTime.Value; break; case "IsHistory": VerType = dataRow.Bool(column.ColumnName) ? Versions.VerTypes.History : Versions.VerTypes.Latest; break; default: switch (Def.ExtendedColumnTypes.Get(column.Name)) { case "Class": Class( columnName: column.Name, value: dataRow[column.ColumnName].ToString()); SavedClass( columnName: column.Name, value: Class(columnName: column.Name)); break; case "Num": Num( columnName: column.Name, value: new Num( dataRow: dataRow, name: column.ColumnName)); SavedNum( columnName: column.Name, value: Num(columnName: column.Name).Value); break; case "Date": Date( columnName: column.Name, value: dataRow[column.ColumnName].ToDateTime()); SavedDate( columnName: column.Name, value: Date(columnName: column.Name)); break; case "Description": Description( columnName: column.Name, value: dataRow[column.ColumnName].ToString()); SavedDescription( columnName: column.Name, value: Description(columnName: column.Name)); break; case "Check": Check( columnName: column.Name, value: dataRow[column.ColumnName].ToBool()); SavedCheck( columnName: column.Name, value: Check(columnName: column.Name)); break; case "Attachments": Attachments( columnName: column.Name, value: dataRow[column.ColumnName].ToString() .Deserialize <Attachments>() ?? new Attachments()); SavedAttachments( columnName: column.Name, value: Attachments(columnName: column.Name).ToJson()); break; } break; } } } }
private void Set(Context context, SiteSettings ss, DataRow dataRow, string tableAlias = null) { AccessStatus = Databases.AccessStatuses.Selected; foreach (DataColumn dataColumn in dataRow.Table.Columns) { var column = new ColumnNameInfo(dataColumn.ColumnName); if (column.TableAlias == tableAlias) { switch (column.Name) { case "SiteId": if (dataRow[column.ColumnName] != DBNull.Value) { SiteId = dataRow[column.ColumnName].ToLong(); SavedSiteId = SiteId; } break; case "UpdatedTime": if (dataRow[column.ColumnName] != DBNull.Value) { UpdatedTime = new Time(context, dataRow, column.ColumnName); Timestamp = dataRow.Field <DateTime>(column.ColumnName).ToString("yyyy/M/d H:m:s.fff"); SavedUpdatedTime = UpdatedTime.Value; } break; case "WikiId": if (dataRow[column.ColumnName] != DBNull.Value) { WikiId = dataRow[column.ColumnName].ToLong(); SavedWikiId = WikiId; } break; case "Ver": Ver = dataRow[column.ColumnName].ToInt(); SavedVer = Ver; break; case "Title": Title = new Title(context: context, ss: ss, dataRow: dataRow, column: column); SavedTitle = Title.Value; break; case "Body": Body = dataRow[column.ColumnName].ToString(); SavedBody = Body; break; case "Comments": Comments = dataRow[column.ColumnName].ToString().Deserialize <Comments>() ?? new Comments(); SavedComments = Comments.ToJson(); break; case "Creator": Creator = SiteInfo.User(context: context, userId: dataRow.Int(column.ColumnName)); SavedCreator = Creator.Id; break; case "Updator": Updator = SiteInfo.User(context: context, userId: dataRow.Int(column.ColumnName)); SavedUpdator = Updator.Id; break; case "CreatedTime": CreatedTime = new Time(context, dataRow, column.ColumnName); SavedCreatedTime = CreatedTime.Value; break; case "IsHistory": VerType = dataRow[column.ColumnName].ToBool() ? Versions.VerTypes.History : Versions.VerTypes.Latest; break; } } } }
public Comments Add(Comments comment) { context.Comments.Add(comment); context.SaveChanges(); return(comment); }
private void Set(Context context, DataRow dataRow, string tableAlias = null) { AccessStatus = Databases.AccessStatuses.Selected; foreach (DataColumn dataColumn in dataRow.Table.Columns) { var column = new ColumnNameInfo(dataColumn.ColumnName); if (column.TableAlias == tableAlias) { switch (column.Name) { case "ReferenceId": if (dataRow[column.ColumnName] != DBNull.Value) { ReferenceId = dataRow[column.ColumnName].ToLong(); SavedReferenceId = ReferenceId; } break; case "ReferenceType": if (dataRow[column.ColumnName] != DBNull.Value) { ReferenceType = dataRow[column.ColumnName].ToString(); SavedReferenceType = ReferenceType; } break; case "OwnerId": if (dataRow[column.ColumnName] != DBNull.Value) { OwnerId = dataRow[column.ColumnName].ToInt(); SavedOwnerId = OwnerId; } break; case "Ver": Ver = dataRow[column.ColumnName].ToInt(); SavedVer = Ver; break; case "Data": Data = dataRow[column.ColumnName].ToString().Deserialize <List <long> >() ?? new List <long>(); SavedData = Data.ToJson(); break; case "Comments": Comments = dataRow[column.ColumnName].ToString().Deserialize <Comments>() ?? new Comments(); SavedComments = Comments.ToJson(); break; case "Creator": Creator = SiteInfo.User(context: context, userId: dataRow.Int(column.ColumnName)); SavedCreator = Creator.Id; break; case "Updator": Updator = SiteInfo.User(context: context, userId: dataRow.Int(column.ColumnName)); SavedUpdator = Updator.Id; break; case "CreatedTime": CreatedTime = new Time(context, dataRow, column.ColumnName); SavedCreatedTime = CreatedTime.Value; break; case "UpdatedTime": UpdatedTime = new Time(context, dataRow, column.ColumnName); Timestamp = dataRow.Field <DateTime>(column.ColumnName).ToString("yyyy/M/d H:m:s.fff"); SavedUpdatedTime = UpdatedTime.Value; break; case "IsHistory": VerType = dataRow.Bool(column.ColumnName) ? Versions.VerTypes.History : Versions.VerTypes.Latest; break; default: switch (Def.ExtendedColumnTypes.Get(column.Name)) { case "Class": Class( columnName: column.Name, value: dataRow[column.ColumnName].ToString()); SavedClass( columnName: column.Name, value: Class(columnName: column.Name)); break; case "Num": Num( columnName: column.Name, value: dataRow[column.ColumnName].ToDecimal()); SavedNum( columnName: column.Name, value: Num(columnName: column.Name)); break; case "Date": Date( columnName: column.Name, value: dataRow[column.ColumnName].ToDateTime()); SavedDate( columnName: column.Name, value: Date(columnName: column.Name)); break; case "Description": Description( columnName: column.Name, value: dataRow[column.ColumnName].ToString()); SavedDescription( columnName: column.Name, value: Description(columnName: column.Name)); break; case "Check": Check( columnName: column.Name, value: dataRow[column.ColumnName].ToBool()); SavedCheck( columnName: column.Name, value: Check(columnName: column.Name)); break; case "Attachments": Attachments( columnName: column.Name, value: dataRow[column.ColumnName].ToString() .Deserialize <Attachments>() ?? new Attachments()); SavedAttachments( columnName: column.Name, value: Attachments(columnName: column.Name).ToJson()); break; } break; } } } }
public virtual bool Load(bool preload) { var file = new FileInfo(Filename); if (!file.Exists) { return(false); } using (var bl = BinaryStateLoader.LoadAndDetect(Filename, true)) { if (bl == null) { return(false); } ClearBeforeLoad(); bl.GetLump(BinaryStateLump.Movieheader, true, delegate(TextReader tr) { string line; while ((line = tr.ReadLine()) != null) { if (!string.IsNullOrWhiteSpace(line)) { var pair = line.Split(new[] { ' ' }, 2, StringSplitOptions.RemoveEmptyEntries); if (pair.Length > 1) { if (!Header.ContainsKey(pair[0])) { Header.Add(pair[0], pair[1]); } } } } }); bl.GetLump(BinaryStateLump.Comments, false, delegate(TextReader tr) { string line; while ((line = tr.ReadLine()) != null) { if (!string.IsNullOrWhiteSpace(line)) { Comments.Add(line); } } }); bl.GetLump(BinaryStateLump.Subtitles, false, delegate(TextReader tr) { string line; while ((line = tr.ReadLine()) != null) { if (!string.IsNullOrWhiteSpace(line)) { Subtitles.AddFromString(line); } } Subtitles.Sort(); }); bl.GetLump(BinaryStateLump.SyncSettings, false, delegate(TextReader tr) { string line; while ((line = tr.ReadLine()) != null) { if (!string.IsNullOrWhiteSpace(line)) { _syncSettingsJson = line; } } }); bl.GetLump(BinaryStateLump.Input, true, delegate(TextReader tr) { string errorMessage; IsCountingRerecords = false; ExtractInputLog(tr, out errorMessage); IsCountingRerecords = true; }); if (StartsFromSavestate) { bl.GetCoreState( delegate(BinaryReader br, long length) { BinarySavestate = br.ReadBytes((int)length); }, delegate(TextReader tr) { TextSavestate = tr.ReadToEnd(); }); bl.GetLump(BinaryStateLump.Framebuffer, false, delegate(BinaryReader br, long length) { SavestateFramebuffer = new int[length / sizeof(int)]; for (int i = 0; i < SavestateFramebuffer.Length; i++) { SavestateFramebuffer[i] = br.ReadInt32(); } }); } else if (StartsFromSaveRam) { bl.GetLump(BinaryStateLump.MovieSaveRam, false, delegate(BinaryReader br, long length) { SaveRam = br.ReadBytes((int)length); }); } } Changes = false; return(true); }
public void CreateAndUpdateCommentForum_NoExists_CreatesForum() { var siteList = mocks.DynamicMock<ISiteList>(); var readerCreator = mocks.DynamicMock<IDnaDataReaderCreator>(); var site = mocks.DynamicMock<ISite>(); var reader = mocks.DynamicMock<IDnaDataReader>(); var readerCreate = mocks.DynamicMock<IDnaDataReader>(); var readerComments = mocks.DynamicMock<IDnaDataReader>(); var cacheManager = mocks.DynamicMock<ICacheManager>(); var siteName = "h2g2"; cacheManager.Stub(x => x.GetData("")).Return(null).Constraints(Is.Anything()); site.Stub(x => x.ModerationStatus).Return(ModerationStatus.SiteStatus.UnMod); site.Stub(x => x.IsEmergencyClosed).Return(false); site.Stub(x => x.IsSiteScheduledClosed(DateTime.Now)).Return(false); reader.Stub(x => x.HasRows).Return(false); reader.Stub(x => x.Read()).Return(false); readerComments.Stub(x => x.HasRows).Return(false); readerComments.Stub(x => x.Read()).Return(false); readerCreator.Stub(x => x.CreateDnaDataReader("commentforumreadbyuid")).Return(reader); readerCreator.Stub(x => x.CreateDnaDataReader("commentsreadbyforumid")).Return(readerComments); readerCreator.Stub(x => x.CreateDnaDataReader("commentforumcreate")).Return(readerCreate); siteList.Stub(x => x.GetSite(siteName)).Return(site); var commentForum = new Forum { Id = "".PadRight(10, 'a'), ParentUri = "http://www.bbc.co.uk/dna", Title = "title", ModerationServiceGroup = ModerationStatus.ForumStatus.PostMod }; mocks.ReplayAll(); var comments = new Comments(null, readerCreator, cacheManager, siteList); var forum = comments.CreateAndUpdateCommentForum(commentForum, site, null); readerCreator.AssertWasCalled(x => x.CreateDnaDataReader("commentforumreadbyuid")); readerCreator.AssertWasCalled(x => x.CreateDnaDataReader("commentforumcreate")); }
private void Set(DataRow dataRow) { AccessStatus = Databases.AccessStatuses.Selected; foreach (DataColumn dataColumn in dataRow.Table.Columns) { var name = dataColumn.ColumnName; switch (name) { case "ReferenceId": if (dataRow[name] != DBNull.Value) { ReferenceId = dataRow[name].ToLong(); SavedReferenceId = ReferenceId; } break; case "Ver": Ver = dataRow[name].ToInt(); SavedVer = Ver; break; case "ReferenceType": ReferenceType = dataRow[name].ToString(); SavedReferenceType = ReferenceType; break; case "SiteId": SiteId = dataRow[name].ToLong(); SavedSiteId = SiteId; break; case "Title": Title = dataRow[name].ToString(); SavedTitle = Title; break; case "FullText": FullText = dataRow[name].ToString(); SavedFullText = FullText; break; case "SearchIndexCreatedTime": SearchIndexCreatedTime = dataRow[name].ToDateTime(); SavedSearchIndexCreatedTime = SearchIndexCreatedTime; break; case "Comments": Comments = dataRow["Comments"].ToString().Deserialize <Comments>() ?? new Comments(); SavedComments = Comments.ToJson(); break; case "Creator": Creator = SiteInfo.User(dataRow.Int(name)); SavedCreator = Creator.Id; break; case "Updator": Updator = SiteInfo.User(dataRow.Int(name)); SavedUpdator = Updator.Id; break; case "CreatedTime": CreatedTime = new Time(dataRow, "CreatedTime"); SavedCreatedTime = CreatedTime.Value; break; case "UpdatedTime": UpdatedTime = new Time(dataRow, "UpdatedTime"); SavedUpdatedTime = UpdatedTime.Value; break; case "IsHistory": VerType = dataRow[name].ToBool() ? Versions.VerTypes.History : Versions.VerTypes.Latest; break; } } }
private void Set(DataRow dataRow, string tableAlias = null) { AccessStatus = Databases.AccessStatuses.Selected; foreach (DataColumn dataColumn in dataRow.Table.Columns) { var column = new ColumnNameInfo(dataColumn.ColumnName); if (column.TableAlias == tableAlias) { switch (column.Name) { case "TenantId": if (dataRow[column.ColumnName] != DBNull.Value) { TenantId = dataRow[column.ColumnName].ToInt(); SavedTenantId = TenantId; } break; case "Ver": Ver = dataRow[column.ColumnName].ToInt(); SavedVer = Ver; break; case "TenantName": TenantName = dataRow[column.ColumnName].ToString(); SavedTenantName = TenantName; break; case "Title": Title = new Title(dataRow, "TenantId"); SavedTitle = Title.Value; break; case "Body": Body = dataRow[column.ColumnName].ToString(); SavedBody = Body; break; case "ContractSettings": ContractSettings = GetContractSettings(dataRow); SavedContractSettings = ContractSettings?.RecordingJson(); break; case "ContractDeadline": ContractDeadline = dataRow[column.ColumnName].ToDateTime(); SavedContractDeadline = ContractDeadline; break; case "Comments": Comments = dataRow[column.ColumnName].ToString().Deserialize <Comments>() ?? new Comments(); SavedComments = Comments.ToJson(); break; case "Creator": Creator = SiteInfo.User(dataRow[column.ColumnName].ToInt()); SavedCreator = Creator.Id; break; case "Updator": Updator = SiteInfo.User(dataRow[column.ColumnName].ToInt()); SavedUpdator = Updator.Id; break; case "CreatedTime": CreatedTime = new Time(dataRow, column.ColumnName); SavedCreatedTime = CreatedTime.Value; break; case "UpdatedTime": UpdatedTime = new Time(dataRow, column.ColumnName); Timestamp = dataRow.Field <DateTime>(column.ColumnName).ToString("yyyy/M/d H:m:s.fff"); SavedUpdatedTime = UpdatedTime.Value; break; case "IsHistory": VerType = dataRow[column.ColumnName].ToBool() ? Versions.VerTypes.History : Versions.VerTypes.Latest; break; } } } }
public RealExSettleRequest(string secret, string merchantId, string account, string orderId, string pasRef, string authCode, Comments comments) : base(secret, merchantId, account, orderId, pasRef, authCode, comments) { Type = "settle"; }
public void CommentsReadBySite_FromDbCorrectInputEditorsPicks_ReturnsValidList() { var siteList = mocks.DynamicMock<ISiteList>(); var readerCreator = mocks.DynamicMock<IDnaDataReaderCreator>(); var site = mocks.DynamicMock<ISite>(); var readerComments = mocks.DynamicMock<IDnaDataReader>(); var cacheManager = mocks.DynamicMock<ICacheManager>(); var siteName = "h2g2"; var siteId = 1; var userName = "******"; cacheManager.Stub(x => x.GetData("")).Return(null).Constraints(Is.Anything()); site.Stub(x => x.ModerationStatus).Return(ModerationStatus.SiteStatus.UnMod); site.Stub(x => x.IsEmergencyClosed).Return(false); site.Stub(x => x.IsSiteScheduledClosed(DateTime.Now)).Return(false); site.Stub(x => x.SiteID).Return(siteId); readerComments.Stub(x => x.HasRows).Return(true); readerComments.Stub(x => x.Read()).Return(true).Repeat.Once(); readerComments.Stub(x => x.DoesFieldExist("SiteSpecificDisplayName")).Return(true); readerComments.Stub(x => x.GetStringNullAsEmpty("SiteSpecificDisplayName")).Return(userName); readerComments.Stub(x => x.GetInt32NullAsZero("totalresults")).Return(1); readerCreator.Stub(x => x.CreateDnaDataReader("commentsreadbysitenameeditorpicksfilter")).Return(readerComments); site.Stub(x => x.SiteID).Return(1); siteList.Stub(x => x.GetSiteOptionValueString(1, "General", "ComplaintUrl")).Return("http://www.bbc.co.uk/dna/[sitename]/comments/UserComplaintPage?PostID=[postid]&s_start=1"); siteList.Stub(x => x.GetSite(siteName)).Return(site); siteList.Stub(x => x.GetSiteOptionValueBool(siteId, "User", "UseSiteSuffix")).Return(true); mocks.ReplayAll(); var comments = new Comments(null, readerCreator, cacheManager, siteList); comments.FilterBy = FilterBy.EditorPicks; var commentList = comments.GetCommentsListBySite(site); Assert.IsNotNull(commentList); Assert.AreEqual(1, commentList.TotalCount); Assert.AreEqual(1, commentList.comments.Count); Assert.AreEqual(userName, commentList.comments[0].User.SiteSpecificDisplayName); readerCreator.AssertWasCalled(x => x.CreateDnaDataReader("commentsreadbysitenameeditorpicksfilter")); }
public async Task <Comments> UpdateCommentsAsync([FromBody] Comments comments) { return(await _commentsService.UpdateCommentsAysnc(comments)); }
public void CommentsReadBySite_CacheInDateMissingActualObject_ReturnsValidList() { var lastUpdate = DateTime.Now.AddDays(1); var comments = new Comments(null, null, null, null); var siteList = mocks.DynamicMock<ISiteList>(); var readerCreator = mocks.DynamicMock<IDnaDataReaderCreator>(); var site = mocks.DynamicMock<ISite>(); var readerComments = mocks.DynamicMock<IDnaDataReader>(); var readerLastUpdate = mocks.DynamicMock<IDnaDataReader>(); var cacheManager = mocks.DynamicMock<ICacheManager>(); var siteName = "h2g2"; string cacheKey = comments.CommentListCacheKey(0, ""); cacheManager.Stub(x => x.GetData(cacheKey)).Return(null); cacheManager.Stub(x => x.GetData(cacheKey + "|LASTUPDATED")).Return(lastUpdate); site.Stub(x => x.ModerationStatus).Return(ModerationStatus.SiteStatus.UnMod); site.Stub(x => x.IsEmergencyClosed).Return(false); site.Stub(x => x.IsSiteScheduledClosed(DateTime.Now)).Return(false); readerComments.Stub(x => x.HasRows).Return(true); readerComments.Stub(x => x.Read()).Return(true).Repeat.Once(); readerComments.Stub(x => x.GetInt32NullAsZero("totalresults")).Return(1); readerCreator.Stub(x => x.CreateDnaDataReader("commentsreadbysitename")).Return(readerComments); readerCreator.Stub(x => x.CreateDnaDataReader("commentsgetlastupdatebysite")).Return(readerLastUpdate); readerLastUpdate.Stub(x => x.HasRows).Return(true); readerLastUpdate.Stub(x => x.Read()).Return(true).Repeat.Once(); readerLastUpdate.Stub(x => x.GetDateTime("lastupdated")).Return(lastUpdate); site.Stub(x => x.SiteID).Return(1); siteList.Stub(x => x.GetSiteOptionValueString(1, "General", "ComplaintUrl")).Return("http://www.bbc.co.uk/dna/[sitename]/comments/UserComplaintPage?PostID=[postid]&s_start=1"); siteList.Stub(x => x.GetSite(siteName)).Return(site); mocks.ReplayAll(); comments = new Comments(null, readerCreator, cacheManager, siteList); var commentList = comments.GetCommentsListBySite(site); Assert.IsNotNull(commentList); Assert.AreEqual(1, commentList.TotalCount); Assert.AreEqual(1, commentList.comments.Count); readerCreator.AssertWasCalled(x => x.CreateDnaDataReader("commentsreadbysitename")); }
private bool GetOriginalImageSize(List <string> originals, DoWorkEventArgs e) { var result = false; var setting = Application.Current.LoadSetting(); if (setting.QueryOriginalImageSize) { var args = e.Argument is PrefetchingOpts ? e.Argument as PrefetchingOpts : new PrefetchingOpts(); if (!args.PrefetchingPreview) { return(result); } State = TaskStatus.WaitingToRun; var comments = Comments.Substring(0, Comments.IndexOf("]") + 1); var count = originals.Count; bool paralllel = args.ParallelPrefetching; var parallels = args.PrefetchingDownloadParallel; if (paralllel) { var opt = new ParallelOptions(); opt.MaxDegreeOfParallelism = parallels; Parallel.ForEach(originals, opt, (url, loopstate, urlIndex) => { try { var size = url.QueryImageFileSize(cancelToken: PrefetchingTaskCancelTokenSource).GetAwaiter().GetResult(); if (size > 0) { Comments = comments.Replace("]", $"] [ Q: {--count} / {originals.Count} ]"); if (ReportProgressSlim is Action) { ReportProgressSlim.Invoke(async: false); } else if (ReportProgress is Action <double, string, TaskStatus> ) { ReportProgress.Invoke((double)Percentage, Comments, State); } this.DoEvents(); } } catch (Exception ex) { ex.ERROR("PREFETCHING"); } finally { this.DoEvents(); Task.Delay(1).GetAwaiter().GetResult(); } }); } else { SemaphoreSlim tasks = new SemaphoreSlim(parallels, parallels); foreach (var url in originals) { if (PrefetchingBgWorker.CancellationPending) { e.Cancel = true; break; } if (tasks.Wait(-1, PrefetchingTaskCancelTokenSource.Token)) { new Action(async() => { try { var size = await url.QueryImageFileSize(cancelToken: PrefetchingTaskCancelTokenSource); if (size > 0) { Comments = comments.Replace("]", $"] [ Q: {--count} / {originals.Count} ]"); if (ReportProgressSlim is Action) { ReportProgressSlim.Invoke(async: false); } else if (ReportProgress is Action <double, string, TaskStatus> ) { ReportProgress.Invoke((double)Percentage, Comments, State); } this.DoEvents(); } } catch (Exception ex) { ex.ERROR("PREFETCHING"); } finally { if (tasks is SemaphoreSlim && tasks.CurrentCount <= parallels) { tasks.Release(); } this.DoEvents(); await Task.Delay(1); } }).Invoke(async: false); } } } $"Query Original Imagee File Size : {Environment.NewLine} Done [ {originals.Count} ]".ShowToast("INFO", tag: args.Name ?? Name ?? GetType().Name); State = count <= 0 ? TaskStatus.RanToCompletion : TaskStatus.Faulted; if (ReportProgressSlim is Action) { ReportProgressSlim.Invoke(async: false); } else if (ReportProgress is Action <double, string, TaskStatus> ) { ReportProgress.Invoke(Percentage, Comments, State); } setting.SaveImageFileSizeData(); result = true; } return(result); }
public void CommentCreate_NotSignedInUserWithDisplayName_ReturnCorrectObject() { var siteName = "h2g2"; var uid = "uid"; var text = "test comment"; var displayName = "notsignedin"; var siteList = mocks.DynamicMock<ISiteList>(); var readerCreator = mocks.DynamicMock<IDnaDataReaderCreator>(); var site = mocks.DynamicMock<ISite>(); var reader = mocks.DynamicMock<IDnaDataReader>(); var cacheManager = mocks.DynamicMock<ICacheManager>(); var callingUser = mocks.DynamicMock<ICallingUser>(); var commentForum = new CommentForum { Id = uid, SiteName = siteName, allowNotSignedInCommenting=true, NotSignedInUserId=1 }; var commentInfo = new CommentInfo { text = text }; commentInfo.User = new User { DisplayName = displayName }; callingUser.Stub(x => x.IsSecureRequest).Return(true); callingUser.Stub(x => x.UserID).Return(1); callingUser.Stub(x => x.IsUserA(UserTypes.SuperUser)).Return(false).Constraints(Is.Anything()); cacheManager.Stub(x => x.GetData("")).Return(null).Constraints(Is.Anything()); site.Stub(x => x.IsEmergencyClosed).Return(false); site.Stub(x => x.IsSiteScheduledClosed(DateTime.Now)).Return(false); reader.Stub(x => x.HasRows).Return(true); reader.Stub(x => x.Read()).Return(true).Repeat.Once(); reader.Stub(x => x.GetInt32NullAsZero("postid")).Return(1); readerCreator.Stub(x => x.CreateDnaDataReader("commentcreate")).Return(reader); site.Stub(x => x.SiteID).Return(1); siteList.Stub(x => x.GetSiteOptionValueString(1, "General", "ComplaintUrl")).Return("http://www.bbc.co.uk/dna/[sitename]/comments/UserComplaintPage?PostID=[postid]&s_start=1"); siteList.Stub(x => x.GetSite(siteName)).Return(site); mocks.ReplayAll(); var comments = new Comments(null, readerCreator, cacheManager, siteList); comments.CallingUser = callingUser; var comment = comments.CreateComment(commentForum, commentInfo); Assert.IsNotNull(comment); Assert.AreEqual(displayName, comment.User.DisplayName); readerCreator.AssertWasCalled(x => x.CreateDnaDataReader("commentcreate")); reader.AssertWasCalled(x => x.AddParameter("nickname", displayName)); }
private void Set(DataRow dataRow, string tableAlias = null) { AccessStatus = Databases.AccessStatuses.Selected; foreach (DataColumn dataColumn in dataRow.Table.Columns) { var column = new ColumnNameInfo(dataColumn.ColumnName); if (column.TableAlias == tableAlias) { switch (column.Name) { case "GroupId": if (dataRow[column.ColumnName] != DBNull.Value) { GroupId = dataRow[column.ColumnName].ToInt(); SavedGroupId = GroupId; } break; case "DeptId": if (dataRow[column.ColumnName] != DBNull.Value) { DeptId = dataRow[column.ColumnName].ToInt(); SavedDeptId = DeptId; } break; case "UserId": if (dataRow[column.ColumnName] != DBNull.Value) { UserId = dataRow[column.ColumnName].ToInt(); SavedUserId = UserId; } break; case "Ver": Ver = dataRow[column.ColumnName].ToInt(); SavedVer = Ver; break; case "Admin": Admin = dataRow[column.ColumnName].ToBool(); SavedAdmin = Admin; break; case "Comments": Comments = dataRow[column.ColumnName].ToString().Deserialize <Comments>() ?? new Comments(); SavedComments = Comments.ToJson(); break; case "Creator": Creator = SiteInfo.User(dataRow[column.ColumnName].ToInt()); SavedCreator = Creator.Id; break; case "Updator": Updator = SiteInfo.User(dataRow[column.ColumnName].ToInt()); SavedUpdator = Updator.Id; break; case "CreatedTime": CreatedTime = new Time(dataRow, column.ColumnName); SavedCreatedTime = CreatedTime.Value; break; case "UpdatedTime": UpdatedTime = new Time(dataRow, column.ColumnName); Timestamp = dataRow.Field <DateTime>(column.ColumnName).ToString("yyyy/M/d H:m:s.fff"); SavedUpdatedTime = UpdatedTime.Value; break; case "IsHistory": VerType = dataRow[column.ColumnName].ToBool() ? Versions.VerTypes.History : Versions.VerTypes.Latest; break; } } } }
public void CommentCreate_BannedUser_ReturnCorrectError() { var siteName = "h2g2"; var uid = "uid"; var siteList = mocks.DynamicMock<ISiteList>(); var readerCreator = mocks.DynamicMock<IDnaDataReaderCreator>(); var site = mocks.DynamicMock<ISite>(); var reader = mocks.DynamicMock<IDnaDataReader>(); var cacheManager = mocks.DynamicMock<ICacheManager>(); var callingUser = mocks.DynamicMock<ICallingUser>(); var commentForum = new CommentForum { Id = uid, SiteName = siteName }; var commentInfo = new CommentInfo { text = "test" }; callingUser.Stub(x => x.IsSecureRequest).Return(true); callingUser.Stub(x => x.UserID).Return(1); callingUser.Stub(x => x.IsUserA(UserTypes.BannedUser)).Return(true); cacheManager.Stub(x => x.GetData("")).Return(null).Constraints(Is.Anything()); site.Stub(x => x.IsEmergencyClosed).Return(false); site.Stub(x => x.IsSiteScheduledClosed(DateTime.Now)).Return(false); reader.Stub(x => x.HasRows).Return(true); reader.Stub(x => x.Read()).Return(true).Repeat.Once(); readerCreator.Stub(x => x.CreateDnaDataReader("commentcreate")).Return(reader); siteList.Stub(x => x.GetSite(siteName)).Return(site); mocks.ReplayAll(); var comments = new Comments(null, readerCreator, cacheManager, siteList); comments.CallingUser = callingUser; try { comments.CreateComment(commentForum, commentInfo); throw new Exception("No exception thrown"); } catch (ApiException ex) { Assert.AreEqual(ErrorType.UserIsBanned, ex.type); } readerCreator.AssertWasNotCalled(x => x.CreateDnaDataReader("commentcreate")); }
public void SetByForm( Context context, SiteSettings ss, Dictionary <string, string> formData) { formData.ForEach(data => { var key = data.Key; var value = data.Value ?? string.Empty; switch (key) { case "Groups_TenantId": TenantId = value.ToInt(); break; case "Groups_GroupName": GroupName = value.ToString(); break; case "Groups_Body": Body = value.ToString(); break; case "Groups_Disabled": Disabled = value.ToBool(); break; case "Groups_Timestamp": Timestamp = value.ToString(); break; case "Comments": Comments.Prepend( context: context, ss: ss, body: value); break; case "VerUp": VerUp = value.ToBool(); break; default: if (key.RegexExists("Comment[0-9]+")) { Comments.Update( context: context, ss: ss, commentId: key.Substring("Comment".Length).ToInt(), body: value); } else { var column = ss.GetColumn( context: context, columnName: key.Split_2nd('_')); switch (Def.ExtendedColumnTypes.Get(column?.ColumnName)) { case "Class": Class( columnName: column.ColumnName, value: value); break; case "Num": Num( columnName: column.ColumnName, value: new Num( context: context, column: column, value: value)); break; case "Date": Date( columnName: column.ColumnName, value: value.ToDateTime().ToUniversal(context: context)); break; case "Description": Description( columnName: column.ColumnName, value: value); break; case "Check": Check( columnName: column.ColumnName, value: value.ToBool()); break; case "Attachments": Attachments( columnName: column.ColumnName, value: value.Deserialize <Attachments>()); break; } } break; } }); if (context.QueryStrings.ContainsKey("ver")) { Ver = context.QueryStrings.Int("ver"); } if (context.Action == "deletecomment") { DeleteCommentId = formData.Get("ControlId")? .Split(',') ._2nd() .ToInt() ?? 0; Comments.RemoveAll(o => o.CommentId == DeleteCommentId); } }