-
Notifications
You must be signed in to change notification settings - Fork 0
/
Ranking.cs
81 lines (71 loc) · 1.94 KB
/
Ranking.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using HdHomerunLib.Listings;
namespace HdHomerunLib.Seeker
{
public interface IRankProgram
{
int RankProgram(Program prog);
string GetName();
}
public class Ranking
{
string[] SkipExactTitles =
{
"Paid Programming",
"Celebrity Ab Secrets",
"Internet Millions",
"Your Baby Can Read",
"Select Comfort",
"Is Colon Detox Hype?",
"Bringing Wall Street to Main Street",
"Cook Healthy with the NuWave Infrared Oven Pro",
"Today"
};
string[] SkipContainedPhrases =
{
"Paid Program",
"News"
};
string[] SkipGenres =
{
"Shopping",
"Religious",
"Fundraiser",
"News",
"Consumer"
};
public bool IgnoreProgram(Program program)
{
StringComparison compareType = StringComparison.CurrentCultureIgnoreCase;
foreach (string exact in SkipExactTitles)
{
if (exact.Equals(program.Title, compareType))
{
return true;
}
}
foreach (string phrase in SkipContainedPhrases)
{
if (program.Title.ToLowerInvariant().Contains(phrase.ToLowerInvariant()))
{
return true;
}
}
foreach (string genre in SkipGenres)
{
if (program.Genres.Contains(genre))
{
return true;
}
}
return false;
}
public int RankProgram(Program program)
{
return 0;
}
}
}