private static void InitializeKeywordGroups() { foreach (var group in Groups) { SdMxf.GetKeywordGroup(group, "m1"); } }
private static void DetermineProgramKeywords(MxfProgram mxfProgram, SchedulesDirect.Program sdProgram) { // determine primary group of program var group = keygroups.UNKNOWN; if (mxfProgram.IsMovie) { group = keygroups.MOVIES; } else if (mxfProgram.IsPaidProgramming) { group = keygroups.PAIDPROGRAMMING; } else if (mxfProgram.IsSports) { group = keygroups.SPORTS; } else if (mxfProgram.IsKids) { group = keygroups.KIDS; } else if (mxfProgram.IsEducational) { group = keygroups.EDUCATIONAL; } else if (mxfProgram.IsNews) { group = keygroups.NEWS; } else if (mxfProgram.IsSpecial) { group = keygroups.SPECIAL; } else if (mxfProgram.IsReality) { group = keygroups.REALITY; } else if (mxfProgram.IsSeries) { group = keygroups.SERIES; } // build the keywords/categories if (group == keygroups.UNKNOWN) { return; } var mxfKeyGroup = SdMxf.GetKeywordGroup(Groups[(int)group]); mxfProgram.mxfKeywords.Add(new MxfKeyword { Index = mxfKeyGroup.Index, Word = Groups[(int)group] }); // add premiere categories as necessary if (mxfProgram.IsSeasonPremiere || mxfProgram.IsSeriesPremiere) { var premiere = SdMxf.GetKeywordGroup(Groups[(int)keygroups.PREMIERES]); mxfProgram.mxfKeywords.Add(new MxfKeyword { Index = premiere.Index, Word = "Premieres" }); if (mxfProgram.IsSeasonPremiere) { mxfProgram.mxfKeywords.Add(premiere.GetKeyword("Season Premiere")); } if (mxfProgram.IsSeriesPremiere) { mxfProgram.mxfKeywords.Add(premiere.GetKeyword("Series Premiere")); } } else if (mxfProgram.extras["premiere"]) { if (group == keygroups.MOVIES) { mxfProgram.mxfKeywords.Add(mxfKeyGroup.GetKeyword("Premiere")); } else if (Helper.TableContains(sdProgram.Genres, "miniseries")) { var premiere = SdMxf.GetKeywordGroup(Groups[(int)keygroups.PREMIERES]); mxfProgram.mxfKeywords.Add(new MxfKeyword { Index = premiere.Index, Word = "Premieres" }); mxfProgram.mxfKeywords.Add(premiere.GetKeyword("Miniseries Premiere")); } } // now add the real categories if (sdProgram.Genres != null) { foreach (var genre in sdProgram.Genres) { mxfProgram.mxfKeywords.Add(mxfKeyGroup.GetKeyword(genre)); } } // ensure there is at least 1 category to present in category search if (mxfProgram.mxfKeywords.Count > 1) { return; } mxfProgram.mxfKeywords.Add(mxfKeyGroup.GetKeyword("Uncategorized")); }