// CheckKey returns true if key is valid func CheckKey(key dna.String) dna.Bool { for _, v := range key.Split("") { if a.IndexOf(v) == -1 { return false } } return true }
func getAnchorTagsData(data dna.String) dna.StringArray { return dna.StringArray(data.Split("|").Map(func(val dna.String, idx dna.Int) dna.String { return val.RemoveHtmlTags("").Trim() }).([]dna.String)).Filter(func(val dna.String, idx dna.Int) dna.Bool { if val != "" { return true } else { return false } }) }
// ToSeconds returns total seconds from the time format "01:02:03" func ToSeconds(str dna.String) dna.Int { if str == "" { return 0 } else { intervals := dna.IntArray(str.Split(":").Map(func(val dna.String, idx dna.Int) dna.Int { return val.ToInt() }).([]dna.Int)) switch intervals.Length() { case 3: return intervals[0]*3600 + intervals[1]*60 + intervals[2] case 2: return intervals[0]*60 + intervals[1] case 1: return intervals[0] default: return 0 } } }
// Decrypt decodes a key into an integer ID func Decrypt(key dna.String) dna.Int { return dna.ParseInt(dna.StringArray(key.Split("").Map(func(v dna.String, i dna.Int) dna.String { return b[a.IndexOf(v)] }).([]dna.String)).Join(""), 16) }