package Ġdev . lun ar coffee . bl azel ight . site . routes . forums Ċ Ċ import Ġdev . lun ar coffee . bl azel ight . model . api . categories . get Category Ċ import Ġdev . lun ar coffee . bl azel ight . model . api . users . getUser Ċ import Ġdev . lun ar coffee . bl azel ight . shared . language . s Ċ import Ġdev . lun ar coffee . bl azel ight . site . std . breadcrumbs . breadcrumbs Ċ import Ġdev . lun ar coffee . bl azel ight . site . std . padding Ċ import Ġdev . lun ar coffee . bl azel ight . site . std . path Ċ import Ġdev . lun ar coffee . bl azel ight . site . std . sessions . User Session Ċ import Ġdev . lun ar coffee . bl azel ight . site . templates . Header Bar Template Ċ import Ġio . ktor . application . call Ċ import Ġio . ktor . html . respond Html Template Ċ import Ġio . ktor . http . HttpStatusCode Ċ import Ġio . ktor . response . respond Ċ import Ġio . ktor . routing . Route Ċ import Ġio . ktor . routing . get Ċ import Ġio . ktor . sessions . get Ċ import Ġio . ktor . sessions . sessions Ċ import Ġkotlinx . html .* Ċ Ċ fun ĠRoute . forums Category Delete () Ġ= Ġget ("/ forums /{ categoryId }/ delete ") Ġ{ ĊĠĠĠ Ġval Ġuser Ġ= Ġcall . sessions . get < User Session >() !!. getUser () !! ĊĠĠĠ Ġval Ġparams Ġ= Ġcall . parameters ĊĊĠĠĠ Ġ// ĠEnsure Ġthat Ġthe Ġde leter Ġis Ġan Ġadministrator ; Ġonly Ġthey Ġcan Ġmanage Ġfor ums . ĊĠĠĠ Ġif Ġ(! user . isAdmin ) ĊĠĠĠĠĠĠĠ Ġreturn @ get Ġcall . respond ( HttpStatusCode . Forbidden ) ĊĊĠĠĠ Ġval Ġcategory Ġ= Ġparams [" categoryId "] ?. to Long OrNull ()?. get Category () ĊĠĠĠĠĠĠĠ Ġ?: Ġreturn @ get Ġcall . respond ( HttpStatusCode . NotFound ) ĊĊĠĠĠ Ġval Ġtemplate Ġ= ĠHeader Bar Template ("${ category . name } Ġ- Ġ${ s . delete Category }", Ġcall , Ġs ) ĊĠĠĠ Ġcall . respond Html Template ( template ) Ġ{ ĊĠĠĠĠĠĠĠ Ġcontent Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcat Name Ġ= Ġcategory . name ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbreadcrumb s Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcr umb ("/ forums ", Ġs . forums ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcr umb ("/ forums /$ cat Name #$ cat Name ", Ġcat Name ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthis Cr umb ( call , Ġs . delete Category ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbr () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġh 3 Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ+ s . delete Category Title ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġb Ġ{ Ġ+ category . name Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ+ ":" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġhr () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġp Ġ{ Ġ+ s . delete Category Confirm Message Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġpadding ( 2 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġa ( href Ġ= Ġ"${ call . path }/ go ", Ġclasses Ġ= Ġ" button - 1 ") Ġ{ Ġ+ s . delete Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġa ( href Ġ= Ġ"/ forums /$ cat Name #$ cat Name ", Ġclasses Ġ= Ġ" button - 1 ") Ġ{ Ġ+ s . cancel Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpadding ( 8 ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ