private static KeywordCondition GetCondition(SubString attributes) { KeywordCondition keywordCondition = (KeywordCondition)0; attributes.Trim(); StringReader stringReader = new StringReader(attributes); while (stringReader.hasNext) { if (stringReader.NextEquals("transfer")) { stringReader.position += "transfer".Length; keywordCondition |= KeywordCondition.Transfer; } else if (stringReader.NextEquals("deckbuild")) { stringReader.position += "deckbuild".Length; keywordCondition |= KeywordCondition.EditDeck; } else { stringReader.position++; } } return(keywordCondition); }
public KeywordReference(ObjectReference.Type type, int id, KeywordCondition conditionMask = (KeywordCondition)0) { this.type = type; this.id = id; keyword = null; this.conditionMask = conditionMask; }
public KeywordReference(string keyword, KeywordCondition conditionMask = (KeywordCondition)0) { type = ObjectReference.Type.None; id = 0; this.keyword = keyword; this.conditionMask = conditionMask; }
public static void Write(KeywordReference keywordReference, JsonTextWriter writer) { KeywordCondition keywordCondition = keywordReference.conditionMask; if (keywordReference.type == ObjectReference.Type.None) { if (keywordCondition == (KeywordCondition)0) { writer.WriteValue(keywordReference.keyword); return; } writer.WriteStartObject(); writer.WritePropertyName("condition"); writer.WriteValue((object)keywordCondition); writer.WritePropertyName("keyword"); writer.WriteValue(keywordReference.keyword); writer.WriteEndObject(); return; } writer.WriteStartObject(); if (keywordCondition != 0) { writer.WritePropertyName("condition"); writer.WriteValue((object)keywordCondition); } writer.WritePropertyName("type"); writer.WriteValue((object)keywordReference.type); writer.WritePropertyName("id"); writer.WriteValue(keywordReference.id); writer.WriteEndObject(); }
public string GetContent(string uri, string templateUri = "") { Schema schema = new Schema(); schema.Title = Randomizer.AnyString(10); Component component = new Component(); component.Title = Randomizer.AnyString(30); component.Id = Randomizer.AnyUri(16); component.Schema = schema; Field field1 = Randomizer.AnyTextField(6, 120, true); Field field2 = Randomizer.AnyTextField(8, 40, false); FieldSet fieldSet = new FieldSet(); fieldSet.Add(field1.Name, field1); fieldSet.Add(field2.Name, field2); component.Fields = fieldSet; if (templateUri == "componentlink") { CustomizeCompomentForComponentLink(component); } if (templateUri == "embedded") { CustomizeCompomentForEmbeddedField(component); } if (templateUri == "keyword") { CustomizeCompomentForKeywordField(component); } if(templateUri == "componentIgnoreCase") { CustomizeCompomentForComponentLinkIgnoreCase(component); } if (uri == "component") { return SerializerService.Serialize<Component>(component); } ComponentTemplate ct = new ComponentTemplate(); ct.Title = Randomizer.AnyString(20); Field fieldView = new Field(); fieldView.Name = "view"; fieldView.Values.Add("DefaultComponentView"); ct.MetadataFields = new FieldSet(); ct.MetadataFields.Add(fieldView.Name, fieldView); ComponentPresentation cp = new ComponentPresentation(); cp.Component = component; cp.ComponentTemplate = ct; Condition condition = new KeywordCondition() { Keyword = new Keyword() { Id = "tcm:2-123-1024", Key = "test", Title = "Test" }, Operator = NumericalConditionOperator.Equals, Value = 1 }; cp.Conditions = new List<Condition>() { condition }; return SerializerService.Serialize<ComponentPresentation>(cp); }
protected virtual KeywordCondition CreateKeywordCondition(string value, ISearchSettings settings) { var keywordCondition = new KeywordCondition { TargetFields = settings.KeywordSearchTargets.ToArray(), Keywords = value?.Split(new[] { '+' }, StringSplitOptions.RemoveEmptyEntries) ?? Array.Empty <string>(), }; return(keywordCondition); }
private KeywordCondition CreateKeywordCondition(string value, Item searchSettings) { var keywordCondition = new KeywordCondition { TargetFields = searchSettings[Templates.SearchSettings.Fields.KeywordSearchTargets].Split(new[] { '|' }, StringSplitOptions.RemoveEmptyEntries), Keywords = value?.Split(new[] { '+' }, StringSplitOptions.RemoveEmptyEntries) ?? Array.Empty <string>(), }; return(keywordCondition); }
public string GetContent(string uri, string templateUri = "") { Schema schema = new Schema(); schema.Title = Randomizer.AnyString(10); Component component = new Component(); component.Title = Randomizer.AnyString(30); component.Id = Randomizer.AnyUri(16); component.Schema = schema; Field field1 = Randomizer.AnyTextField(6, 120, true); Field field2 = Randomizer.AnyTextField(8, 40, false); FieldSet fieldSet = new FieldSet(); fieldSet.Add(field1.Name, field1); fieldSet.Add(field2.Name, field2); component.Fields = fieldSet; if (uri == "component") { return(SerializerService.Serialize <Component>(component)); } ComponentTemplate ct = new ComponentTemplate(); ct.Title = Randomizer.AnyString(20); Field fieldView = new Field(); fieldView.Name = "view"; fieldView.Values.Add("DefaultComponentView"); ct.MetadataFields = new FieldSet(); ct.MetadataFields.Add(fieldView.Name, fieldView); ComponentPresentation cp = new ComponentPresentation(); cp.Component = component; cp.ComponentTemplate = ct; Condition condition = new KeywordCondition() { Keyword = new Keyword() { Id = "tcm:2-123-1024", Key = "test", Title = "Test" }, Operator = NumericalConditionOperator.Equals, Value = 1 }; cp.Conditions = new List <Condition>() { condition }; return(SerializerService.Serialize <ComponentPresentation>(cp)); }
private static KeywordCondition MapTrackingKeyCondition(TrackingKeyCondition trackingKeyCondition, BuildManager buildManager) { var newCondition = new KeywordCondition { Keyword = KeywordBuilder.BuildKeyword(trackingKeyCondition.Keyword, buildManager), Operator = (NumericalConditionOperator)trackingKeyCondition.Operator, Negate = true, Value = trackingKeyCondition.Value }; return(newCondition); }
public static KeywordReference FromJson(JToken jToken) { //IL_0001: Unknown result type (might be due to invalid IL or missing references) //IL_0007: Invalid comparison between Unknown and I4 //IL_0017: Unknown result type (might be due to invalid IL or missing references) //IL_001d: Expected O, but got Unknown if ((int)jToken.get_Type() == 8) { return(new KeywordReference(Extensions.Value <string>((IEnumerable <JToken>)jToken))); } JObject val = jToken; KeywordCondition keywordCondition = (KeywordCondition)Serialization.JsonTokenValue <int>(val, "condition", 0); string text = Serialization.JsonTokenValue <string>(val, "keyword", (string)null); if (text != null) { return(new KeywordReference(text, keywordCondition)); } ObjectReference.Type type = (ObjectReference.Type)Serialization.JsonTokenValue <int>(val, "type", 0); int num = Serialization.JsonTokenValue <int>(val, "id", 0); return(new KeywordReference(type, num, keywordCondition)); }
protected virtual IQueryable <TResult> ApplyKeywordsCondition(IQueryable <TResult> queryable, KeywordCondition condition) { if (condition == null || condition.TargetFields == null || condition.Keywords == null || !condition.TargetFields.Any() || !condition.Keywords.Any()) { return(queryable); } var keywordsPred = PredicateBuilder.False <TResult>(); foreach (var targetField in condition.TargetFields) { var fieldContainsKeywords = condition.Keywords.Aggregate( PredicateBuilder.True <TResult>(), (pred, keyword) => pred.And(item => item[targetField].Contains(keyword))); keywordsPred = keywordsPred.Or(fieldContainsKeywords); } return(queryable.Where(keywordsPred)); }
private static KeywordCondition MapTrackingKeyCondition(TrackingKeyCondition trackingKeyCondition) { var newCondition = new KeywordCondition { Keyword = KeywordBuilder.BuildKeyword(trackingKeyCondition.Keyword), Operator = (NumericalConditionOperator)trackingKeyCondition.Operator, Negate = true, Value = trackingKeyCondition.Value }; return newCondition; }
public static bool IsValidFor(this KeywordCondition c, KeywordContext context) { return(((int)context & (int)c) == (int)c); }