/* Ċ Ġ* ĠCopyright Ġ 2 0 1 4 - 2 0 1 8 ĠJul ien ĠGu er inet Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ Ċ package Ġcom . gu er inet . my mart let . util . manager Ċ Ċ import Ġandroid . app . Activity Ċ import Ġandroid . content . Context Ċ import Ġandroid . content . SharedPreferences Ċ import Ġandroidx . annotation . Id Res Ċ import Ġandroidx . annotation . String Res Ċ Ċ import Ġcom . gu er inet . my mart let . R Ċ import Ġcom . gu er inet . my mart let . ui . Map Activity Ċ import Ġcom . gu er inet . my mart let . ui . Schedule Activity Ċ import Ġcom . gu er inet . my mart let . ui . courses . Courses Activity Ċ import Ġcom . gu er inet . my mart let . ui . eb ill . E bill Activity Ċ import Ġcom . gu er inet . my mart let . ui . search . Search Activity Ċ import Ġcom . gu er inet . my mart let . ui . settings . Settings Activity Ċ import Ġcom . gu er inet . my mart let . ui . transcript . Transcript Activity Ċ import Ġcom . gu er inet . my mart let . ui . web . Desktop Activity Ċ import Ġcom . gu er inet . my mart let . ui . web . My Courses Activity Ċ import Ġcom . gu er inet . my mart let . ui . wishlist . Wish list Activity Ċ import Ġcom . gu er inet . suit case . prefs . Int Pref Ċ import Ġkotlin . reflect . K Class Ċ Ċ /** Ċ Ġ* ĠMan ages Ġthe Ġuser 's Ġhomepage , Ġan Ġextension Ġof Ġthe Ġ[ Int Pref ] Ċ Ġ* Ġ@ author ĠJul ien ĠGu er inet Ċ Ġ* Ġ@ since Ġ 1 . 0 . 0 Ċ Ġ* Ċ Ġ* Ġ@ param Ġprefs Ġ[ SharedPreferences ] Ġinstance Ċ Ġ* Ġ@ property Ġcontext ĠApp Ġcontext Ċ Ġ*/ Ċ class ĠHome page Manager ( prefs : ĠSharedPreferences , Ġprivate Ġval Ġcontext : ĠContext ) Ġ: ĠInt Pref ( ĊĠĠĠ Ġprefs , ĊĠĠĠ Ġ" home _ page ", ĠHome Page . SCHED ULE . ordinal Ċ ) Ġ{ ĊĊĠĠĠ Ġvar Ġhome Page : ĠHome Page ĊĠĠĠĠĠĠĠ Ġget () Ġ= ĠHome Page . values ()[ value ] ĊĠĠĠĠĠĠĠ Ġset ( value ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsuper . value Ġ= Ġvalue . ordinal ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠTitle Ġof Ġthe Ġcurrent Ġhomepage ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġval Ġtitle : ĠString ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġget Title ( home Page ) ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠTitle ĠString Ġfor Ġthe Ġsettings Ġand / or Ġthe Ġwalk through ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġval Ġtitle String : ĠString ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġcontext . getString ( R . string . settings _ homepage , Ġtitle ) ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠClass Ġto Ġopen Ġfor Ġthe Ġcurrent Ġhomepage ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġval Ġactivity : ĠClass < *> ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġhome Page . activity . java ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠReturns Ġthe Ġtitle ĠString Ġfor Ġthe Ġ[ home Page ] ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġget Title ( home Page : ĠHome Page ): ĠString Ġ= Ġcontext . getString ( home Page . title Id ) ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠConverts Ġthe Ġ[ menu Id ] Ġto Ġa Ġhome Ġpage ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġget HomePage (@ Id Res Ġmenu Id : ĠInt ): ĠHome Page Ġ= ĠHome Page . values (). first Ġ{ Ġit . menu Id Ġ== Ġmenu Id Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠA Ġpotential Ġhome Ġpage Ġfor Ġthe Ġapp ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ property Ġtitle Id ĠId Ġof Ġthe Ġtitle Ġof Ġthe Ġhis Ġhome Ġpage ĊĠĠĠĠ Ġ* Ġ@ property Ġmenu Id ĠId Ġof Ġthe Ġmenu Ġitem Ġfor Ġthis Ġhome Ġpage ĊĠĠĠĠ Ġ* Ġ@ property Ġactivity ĠCorre sponding Ġactivity Ġto Ġopen Ġfor Ġthis Ġhome Ġpage ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġenum Ġclass ĠHome Page ( ĊĠĠĠĠĠĠĠ Ġ@ String Res Ġval Ġtitle Id : ĠInt , ĊĠĠĠĠĠĠĠ Ġ@ Id Res Ġval Ġmenu Id : ĠInt , ĊĠĠĠĠĠĠĠ Ġval Ġactivity : ĠK Class < out ĠActivity > ĊĠĠĠ Ġ) Ġ{ ĊĊĠĠĠĠĠĠĠ ĠS CH ED ULE ( R . string . homepage _ schedule , ĠR . id . schedule , ĠSchedule Activity :: class ), ĊĠĠĠĠĠĠĠ ĠTRAN SCRIPT ( R . string . homepage _ transcript , ĠR . id . transcript , ĠTran script Activity :: class ), ĊĠĠĠĠĠĠĠ ĠMY _ CO UR SES ( R . string . homepage _ my courses , ĠR . id . my _ courses , ĠMy Courses Activity :: class ), ĊĠĠĠĠĠĠĠ ĠCO UR SES ( R . string . homepage _ courses , ĠR . id . courses , ĠCour ses Activity :: class ), ĊĠĠĠĠĠĠĠ ĠW ISH LIST ( R . string . homepage _ wishlist , ĠR . id . wishlist , ĠW ish list Activity :: class ), ĊĠĠĠĠĠĠĠ ĠSEARCH _ CO UR SES ( R . string . homepage _ search , ĠR . id . search , ĠSearch Activity :: class ), ĊĠĠĠĠĠĠĠ ĠEB ILL ( R . string . homepage _ eb ill , ĠR . id . eb ill , ĠE bill Activity :: class ), ĊĠĠĠĠĠĠĠ ĠMAP ( R . string . homepage _ map , ĠR . id . map , ĠMap Activity :: class ), ĊĠĠĠĠĠĠĠ ĠDES K TOP ( R . string . homepage _ desktop , ĠR . id . desktop , ĠDesktop Activity :: class ), ĊĠĠĠĠĠĠĠ ĠSET T INGS ( R . string . title _ settings , ĠR . id . settings , ĠSettings Activity :: class ) ĊĠĠĠ Ġ} Ċ } Ċ