diff options
Diffstat (limited to 'src/config.ts')
| -rw-r--r-- | src/config.ts | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/src/config.ts b/src/config.ts new file mode 100644 index 0000000..47bcd02 --- /dev/null +++ b/src/config.ts @@ -0,0 +1,29 @@ +import {ISource} from './sources/ISource'; +import {ISink} from './sinks/ISink'; +import {ILectureFilter} from './core/ILecture'; + +import {HttpSource} from './sources/HttpSource'; +import {IcalSink} from './sinks/IcalSink'; + +export interface SplusConfig { + source: ISource; + sink: ISink; + + lectureFilter?: ILectureFilter; +} + +export const config: SplusConfig = { + source: new HttpSource('http://splus.ostfalia.de/semesterplan123.php?id=1362F014835FFFD0F67159E302EC1A3C&identifier=%23SPLUS7A3292'), + sink: new IcalSink('out.ics'), + + lectureFilter: lecture => { + // Filter some lectures out + if (lecture.title === '') return false; + if (lecture.title.indexOf('Mathe-Cafe') !== -1) return false; + if (lecture.title.indexOf('Mathe-Repetitorium') !== -1) return false; + if (lecture.title.indexOf('Informatik-Lounge') !== -1) return false; + if (lecture.title.indexOf('Grundlagen des Programmierens') !== -1) return false; + if (lecture.title.indexOf('Reservierung') !== -1) return false; + return lecture.title.indexOf('Kompetenzen') === -1; + } +}; |
