public static string GetTagLink(RestCommand command, int tagLinkID) { TagLink tagLink = TagLinks.GetTagLink(command.LoginUser, tagLinkID); if (tagLink.OrganizationID != command.Organization.OrganizationID) { throw new RestException(HttpStatusCode.Unauthorized); } return(tagLink.GetXml("TagLink", true)); }
public IActionResult Update(int id, string name = null, string description = null, string[] tags = null) { var entity = db.Files.Include(i => i.TagLinks).FirstOrDefault(x => x.Id == id); if (entity != null) { if (name != null) { entity.Name = name; } if (description != null) { entity.Description = description; } //if (info.Tags != null) entity.Tags = info.Tags; if (tags != null) { foreach (var link in entity.TagLinks) { db.TagLinks.Remove(link); } entity.TagLinks.Clear(); foreach (var tag in tags) { var tagLink = new TagLink(); entity.TagLinks.Add(tagLink); var existingTag = db.Tags.FirstOrDefault(x => x.Name == tag.ToLower()); if (existingTag == null) { existingTag = new Tag() { Name = tag.ToLower() }; tagLink.Tag = existingTag; } else { tagLink.TagId = existingTag.Id; } } db.SaveChanges(); } db.SaveChanges(); return(Get(entity.Id)); } else { return(NotFound()); } }
public void should_only_apply_applicable_tags() { var dummyTagLink1 = new TagLink { SourceTag = "silver", DestinationTag = "werewolf", Weight = 1.0f }; var dummyTagLink2 = new TagLink { SourceTag = "silver", DestinationTag = "undead", Weight = 0.5f }; var dummyTagList = new List<TagLink>() { dummyTagLink1, dummyTagLink2 }; var dummyWeapon = new Weapon { Damage = 1.0f, Tags = { "silver" } }; var dummyTarget = new GameEntity(new List<string> { "werewolf" }); var dummyAttack = new Attack { Weapon = dummyWeapon, Target = dummyTarget }; var bonusDamageWeightEffect = new BonusDamageDependentEffect(dummyTagList); var expectedResult = 1.0f; var actualResult = bonusDamageWeightEffect.RunEffect(dummyAttack); Assert.That(actualResult, Is.EqualTo(expectedResult)); }
public void should_only_apply_applicable_tags() { var dummyTagLink1 = new TagLink { SourceTag = "magic", DestinationTag = "magic", Weight = -0.5f }; var dummyTagLink2 = new TagLink { SourceTag = "physical", DestinationTag = "stalwart", Weight = -0.3f }; var dummyTagList = new List<TagLink>() { dummyTagLink1, dummyTagLink2 }; var dummyWeapon = new Weapon { Damage = 1.0f, Tags = { "magic" } }; var dummyTarget = new GameEntity(new List<string> { "magic" }); var dummyAttack = new Attack { Weapon = dummyWeapon, Target = dummyTarget }; var resistancesLinkEffect = new ResistancesDependentEffect(dummyTagList); var expectedResult =-0.5f; var actualResult = resistancesLinkEffect.RunEffect(dummyAttack); Assert.That(actualResult, Is.EqualTo(expectedResult)); }
public Object PostTagLink([FromBody] JObject payload) { try { TagLink taglink = new TagLink() { TagName = (string)payload["TagName"], IId = (string)payload["IId"] }; _context.TagLink.Add(taglink); _context.SaveChanges(); return("success"); } catch (Exception e) { return(e); } }
public void AddTicketTag(int tagID, int ticketID) { Tag tag = Tags.GetTag(UserSession.LoginUser, tagID); Ticket ticket = Tickets.GetTicket(UserSession.LoginUser, ticketID); if (tag.OrganizationID != UserSession.LoginUser.OrganizationID || ticket.OrganizationID != UserSession.LoginUser.OrganizationID) { return; } TagLink link = TagLinks.GetTagLink(UserSession.LoginUser, ReferenceType.Tickets, ticketID, tagID); if (link == null) { TagLinks links = new TagLinks(UserSession.LoginUser); link = links.AddNewTagLink(); link.RefType = ReferenceType.Tickets; link.RefID = ticketID; link.TagID = tagID; links.Save(); } }
public static TagLink rev(this TagLink tag, LinkType value) { tag.Rev = value; return(tag); }
public static TagLink media(this TagLink tag, Media value) { tag.Media = value; return(tag); }
public static TagLink target(this TagLink tag, Target value) { tag.Target = value; return(tag); }
public static TagLink type(this TagLink tag, MimeType value) { tag.Type = value; return(tag); }
public static TagLink xmllang(this TagLink tag, string value) { tag.XmlLang = value; return(tag); }
public static TagLink ondblclick(this TagLink tag, string value) { tag.OnDblClick = value; return(tag); }
/// <summary> /// Update the Ticket related fields that live in their own table. /// </summary> /// <param name="command">Command received in the request to read and process the data in the request body.</param> /// <param name="ticketId">TicketId to update its record.</param> private static void UpdateFieldsOfSeparateTable(RestCommand command, Ticket ticket, bool isCustomerTicket = false) { try { //Add as necessary to the list and then to the switch-case below for the work to update it. List <string> fields = new List <string>() { "jirakey", "tags" }; foreach (string field in fields.Select(p => p.ToLower()).ToList()) { XmlNode node = GetNode(command, field); if (node != null) { switch (field) { case "jirakey": string jiraKey = node.InnerText; TicketLinkToJira ticketLinkToJira = new TicketLinkToJira(command.LoginUser); ticketLinkToJira.LoadByTicketID(ticket.TicketID); int?crmLinkId = null; //Next line and 2 If statements are the same as in \webapp\app_code\ticketservice.cs SetSyncWithJira(). Might need to consider making a common funcion for both crmLinkId = CRMLinkTable.GetIdBy(ticket.OrganizationID, IntegrationType.Jira.ToString().ToLower(), ticket.ProductID, command.LoginUser); //If product is not associated to an instance then get the 'default' instance if (crmLinkId == null || crmLinkId <= 0) { CRMLinkTable crmlink = new CRMLinkTable(command.LoginUser); crmlink.LoadByOrganizationID(ticket.OrganizationID); crmLinkId = crmlink.Where(p => p.InstanceName == "Default" && p.CRMType.ToLower() == IntegrationType.Jira.ToString().ToLower()) .Select(p => p.CRMLinkID).FirstOrDefault(); } if (ticketLinkToJira != null && ticketLinkToJira.Any()) { string oldJiraKey = ticketLinkToJira[0].JiraKey; ticketLinkToJira[0].JiraKey = jiraKey.ToLower() == "newjiraissue" ? null : jiraKey; ticketLinkToJira[0].CrmLinkID = crmLinkId; ticketLinkToJira.Save(); ActionLogs.AddActionLog(command.LoginUser, ActionLogType.Update, ReferenceType.Tickets, ticket.TicketID, string.Format("Changed JiraKey from '{0}' to '{1}'.", oldJiraKey, jiraKey)); } else { TicketLinkToJiraItem newJiraLink = ticketLinkToJira.AddNewTicketLinkToJiraItem(); newJiraLink.TicketID = ticket.TicketID; newJiraLink.SyncWithJira = true; newJiraLink.JiraID = null; newJiraLink.JiraKey = jiraKey.ToLower() == "newjiraissue" ? null : jiraKey; newJiraLink.JiraLinkURL = null; newJiraLink.JiraStatus = null; newJiraLink.CreatorID = command.LoginUser.UserID; newJiraLink.CrmLinkID = crmLinkId; if (newJiraLink.CrmLinkID != null && newJiraLink.CrmLinkID > 0) { newJiraLink.Collection.Save(); ActionLogs.AddActionLog(command.LoginUser, ActionLogType.Update, ReferenceType.Tickets, ticket.TicketID, string.Format("Linked to JiraKey '{0}'.", jiraKey)); } } break; case "tags": TagLinks currentTagLinks = new TagLinks(command.LoginUser); currentTagLinks.LoadByReference(ReferenceType.Tickets, ticket.TicketID); XmlNodeList nodeList = node.ChildNodes; List <int> newTags = new List <int>(); foreach (XmlNode tagNode in nodeList) { string tagValue = tagNode["Value"].InnerText; Tag newTag = Tags.GetTag(command.LoginUser, tagValue); if (newTag == null) { Tags tag = new Tags(command.LoginUser); newTag = tag.AddNewTag(); newTag.OrganizationID = isCustomerTicket ? command.Organization.ParentID ?? command.Organization.OrganizationID : command.Organization.OrganizationID; newTag.Value = tagValue; tag.Save(); } newTags.Add(newTag.TagID); } foreach (int tag in newTags) { TagLink newTagLink = currentTagLinks.Where(p => p.TagID == tag && p.RefID == ticket.TicketID).SingleOrDefault(); if (newTagLink == null) { TagLinks tagLink = new TagLinks(command.LoginUser); newTagLink = tagLink.AddNewTagLink(); newTagLink.TagID = tag; newTagLink.RefType = ReferenceType.Tickets; newTagLink.RefID = ticket.TicketID; tagLink.Save(); } } List <TagLink> deleteTagLinks = currentTagLinks.Where(p => !newTags.Contains(p.TagID)).ToList(); foreach (TagLink deleteTagLink in deleteTagLinks) { deleteTagLink.Delete(); deleteTagLink.Collection.Save(); } break; default: break; } } } } catch (Exception ex) { ExceptionLogs.LogException(command.LoginUser, ex, "API", string.Format("OrgID: {0}{1}Verb: {2}{1}Url: {3}{1}Body: {4}", command.Organization.OrganizationID, Environment.NewLine, command.Method, command.Method, command.Data)); } }
public static TagLink title(this TagLink tag, string value) { tag.Title = value; return(tag); }
public static TagLink onmouseout(this TagLink tag, string value) { tag.OnMouseOut = value; return(tag); }
public static TagLink onkeypress(this TagLink tag, string value) { tag.OnKeyPress = value; return(tag); }
public static TagLink onmousemove(this TagLink tag, string value) { tag.OnMouseMove = value; return(tag); }
public static TagLink onmouseup(this TagLink tag, string value) { tag.OnMouseUp = value; return(tag); }
public static TagLink onmousedown(this TagLink tag, string value) { tag.OnMouseDown = value; return(tag); }
public static TagLink id(this TagLink tag, string value) { tag.Id = value; return(tag); }
public static TagLink onkeyup(this TagLink tag, string value) { tag.OnKeyUp = value; return(tag); }
public static TagLink @class(this TagLink tag, string value) { tag.Class = value; return(tag); }
public static TagLink charset(this TagLink tag, Charset value) { tag.Charset = value; return(tag); }
public static TagLink lang(this TagLink tag, LangCode value) { tag.Lang = value; return(tag); }
public static TagLink href(this TagLink tag, string value) { tag.Href = value; return(tag); }
public static TagLink onkeydown(this TagLink tag, string value) { tag.OnKeyDown = value; return(tag); }
public static TagLink dir(this TagLink tag, Dir value) { tag.Dir = value; return(tag); }