|
@@ -123,6 +123,9 @@ func (value *Value) Compare(other *Value) int {
|
|
|
}
|
|
|
return strings.Compare(v1, v2)
|
|
|
}
|
|
|
+ if nil != value.URL && nil != other.URL {
|
|
|
+ return strings.Compare(value.URL.Content, other.URL.Content)
|
|
|
+ }
|
|
|
return 0
|
|
|
}
|
|
|
|
|
@@ -238,6 +241,28 @@ func (value *Value) CompareOperator(other *Value, operator FilterOperator) bool
|
|
|
return 0 != len(value.MSelect) && !(1 == len(value.MSelect) && "" == value.MSelect[0].Content)
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+ if nil != value.URL && nil != other.URL {
|
|
|
+ switch operator {
|
|
|
+ case FilterOperatorIsEqual:
|
|
|
+ return value.URL.Content == other.URL.Content
|
|
|
+ case FilterOperatorIsNotEqual:
|
|
|
+ return value.URL.Content != other.URL.Content
|
|
|
+ case FilterOperatorContains:
|
|
|
+ return strings.Contains(value.URL.Content, other.URL.Content)
|
|
|
+ case FilterOperatorDoesNotContain:
|
|
|
+ return !strings.Contains(value.URL.Content, other.URL.Content)
|
|
|
+ case FilterOperatorStartsWith:
|
|
|
+ return strings.HasPrefix(value.URL.Content, other.URL.Content)
|
|
|
+ case FilterOperatorEndsWith:
|
|
|
+ return strings.HasSuffix(value.URL.Content, other.URL.Content)
|
|
|
+ case FilterOperatorIsEmpty:
|
|
|
+ return "" == strings.TrimSpace(value.URL.Content)
|
|
|
+ case FilterOperatorIsNotEmpty:
|
|
|
+ return "" != strings.TrimSpace(value.URL.Content)
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
return true
|
|
|
}
|
|
|
|