add standard group selector to repo edit form
This commit is contained in:
parent
bf72760af2
commit
39be7eea40
7 changed files with 33 additions and 10 deletions
|
@ -16,6 +16,8 @@ import Assistant.WebApp.SideBar
|
|||
import Utility.Yesod
|
||||
import qualified Remote
|
||||
import Logs.UUID
|
||||
import Logs.Group
|
||||
import Types.StandardGroups
|
||||
|
||||
import Yesod
|
||||
import Data.Text (Text)
|
||||
|
@ -24,16 +26,23 @@ import qualified Data.Map as M
|
|||
|
||||
data RepoConfig = RepoConfig
|
||||
{ repoDescription :: Text
|
||||
, repoGroup :: Maybe StandardGroup
|
||||
}
|
||||
deriving (Show)
|
||||
|
||||
editRepositoryAForm :: RepoConfig -> AForm WebApp WebApp RepoConfig
|
||||
editRepositoryAForm def = RepoConfig
|
||||
<$> areq textField "Description" (Just $ repoDescription def)
|
||||
<*> aopt (selectFieldList standardgroups) "Repository group" (Just $ repoGroup def)
|
||||
where
|
||||
standardgroups :: [(Text, StandardGroup)]
|
||||
standardgroups = map (\g -> (T.pack $ descStandardGroup g , g))
|
||||
[minBound :: StandardGroup .. maxBound :: StandardGroup]
|
||||
|
||||
getRepoConfig :: UUID -> Annex RepoConfig
|
||||
getRepoConfig uuid = RepoConfig
|
||||
<$> (T.pack . fromMaybe "" . M.lookup uuid <$> uuidMap)
|
||||
<*> (getStandardGroup uuid <$> groupMap)
|
||||
|
||||
getEditRepositoryR :: UUID -> Handler RepHtml
|
||||
getEditRepositoryR uuid = bootstrap (Just Config) $ do
|
||||
|
|
|
@ -29,7 +29,7 @@ import Utility.DataUnits
|
|||
import Utility.Network
|
||||
import Remote (prettyListUUIDs)
|
||||
import Annex.UUID
|
||||
import Annex.StandardGroups
|
||||
import Types.StandardGroups
|
||||
import Logs.PreferredContent
|
||||
|
||||
import Yesod
|
||||
|
|
|
@ -21,7 +21,7 @@ import qualified Remote.S3 as S3
|
|||
import Logs.Remote
|
||||
import qualified Remote
|
||||
import Types.Remote (RemoteConfig)
|
||||
import Annex.StandardGroups
|
||||
import Types.StandardGroups
|
||||
import Logs.PreferredContent
|
||||
|
||||
import Yesod
|
||||
|
|
|
@ -20,7 +20,7 @@ import Utility.Rsync (rsyncUrlIsShell)
|
|||
import Logs.Remote
|
||||
import Remote
|
||||
import Logs.PreferredContent
|
||||
import Annex.StandardGroups
|
||||
import Types.StandardGroups
|
||||
|
||||
import Yesod
|
||||
import Data.Text (Text)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue