package Ġcom . example . cli m by . ui . profile . view model Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroidx . lifecycle . Mutable LiveData Ċ import Ġandroidx . lifecycle . ViewModel Ċ import Ġandroidx . lifecycle . viewModel Scope Ċ import Ġcom . example . cli m by . data . model . booking . Booking Model Ċ import Ġcom . example . cli m by . data . model . trip . Trip Model Ċ import Ġcom . example . cli m by . domain . booking . Put Booking Ċ import Ġcom . example . cli m by . domain . trip . Get Trip ById Ċ import Ġcom . example . cli m by . ui . profile . Requests Activity Ċ import Ġcom . example . cli m by . utils . Common s Ċ import Ġdagger . h ilt . android . lifecycle . H ilt ViewModel Ċ import Ġkotlinx . coroutines . launch Ċ import Ġjavax . inject . Inject Ċ Ċ @ H ilt ViewModel Ċ class ĠRequests ViewModel Ġ@ Inject Ġconstructor ( private Ġval Ġput Booking : ĠPut Booking , Ġprivate Ġval Ġ_ get Trip ById : ĠGet Trip ById ): ĠViewModel () Ġ{ ĊĊĠĠĠ Ġvar Ġtrip Model Ġ= ĠMutable LiveData < Trip Model >() ĊĠĠĠ Ġlateinit Ġvar Ġresult : ĠTrip Model ĊĊĠĠĠ Ġfun Ġupdate Booking ( booking Model : ĠBook ing Model , Ġrequest : ĠString , Ġtrip : ĠTrip Model , Ġapplication Context : ĠContext , Ġrequests Activity : ĠRequests Activity ) Ġ{ ĊĠĠĠĠĠĠĠ ĠviewModel Scope . launch Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġput Booking ( booking Model ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif ( request Ġ== Ġ" accepted "){ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠCommons . send Notification ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbooking Model . pass enger ?. token !! , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtrip . driver ?. name !!. split (" Ġ" )[ 0 ] Ġ+ Ġ" Ġte Ġha Ġa cept ado Ġen Ġsu Ġgrupo ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Auth Activity ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtrip . id . toString (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Trip Users Activity ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtrip . driver . name . split (" Ġ" )[ 0 ] Ġ Ġ+ Ġ" Ġha Ġa cept ado Ġtu Ġsolicit ud Ġpara Ġla Ġsal ida Ġa Ġ" Ġ+ Ġtrip . site ?. name Ġ+ Ġ" Ġel Ġ" Ġ+ Ġtrip . depart ure . toString (). split (" Ġ" )[ 0 ]. split ("- ")[ 2 ] Ġ+ Ġ" Ġde Ġ" Ġ+ ĠCommons . getDate ( trip . depart ure . toString () Ġ+ Ġ". ĠPr onto Ġte Ġcontact arÃ¡ . Ġ"), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġapplication Context , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrequests Activity ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} else Ġif ( request Ġ== Ġ" ref use "){ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠCommons . send Notification ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbooking Model . pass enger ?. token !! , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtrip . driver ?. name !!. split (" Ġ" )[ 0 ] Ġ+ Ġ" Ġha Ġre ch az ado Ġtu Ġsolicit ud ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Auth Activity ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Profile Fragment ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtrip . driver . name . split (" Ġ" )[ 0 ] Ġ Ġ+ Ġ" Ġha Ġre ch az ado Ġtu Ġsolicit ud Ġpara Ġla Ġsal ida Ġa Ġ" Ġ+ Ġtrip . site ?. name Ġ+ Ġ" Ġel Ġ" Ġ+ Ġtrip . depart ure . toString (). split (" Ġ" )[ 0 ]. split ("- ")[ 2 ] Ġ+ Ġ" Ġde Ġ" Ġ+ ĠCommons . getDate ( trip . depart ure . toString () Ġ+ Ġ". ĠPr onto Ġte Ġcontact arÃ¡ . Ġ"), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġapplication Context , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrequests Activity ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġget Trip ById ( id Trip : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ ĠviewModel Scope . launch Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġresult Ġ= Ġ_ get Trip ById ( id Trip ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtrip Model . post Value ( result ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }