pub fn login() -> Template {
    // Make list of identity providers in login configuration.
    let items: Vec<Map<String, Value>> = vec![
        item(
            GitHubOauth::login_path(),
            "btn-github mb-2",
            "Login using GitHub",
            Some("github"),
        ),
        item(
            DiscordOAuth::login_path(),
            "btn-discord mb-2",
            "Login using Discord",
            // This is manually coded for in the template file and is not
            // a Feather icon. Do not use it in other places, as it won't work.
            Some("discord"),
        ),
        item(RpiCas::login_path(), "btn-rpi", "Login using RPI CAS", None),
    ];

    // Create and return template.
    let mut template = empty();
    template[HEADER] = json!("Sign In");
    template[ITEMS] = json!(items);
    return template;
}
/// Create a template to offer the user options to login.
Create a template to offer the user options to login.
Create a template to offer the user options to login .
pub fn login() -> Template {
    // Make list of identity providers in login configuration.
    let items: Vec<Map<String, Value>> = vec![
        item(
            GitHubOauth::login_path(),
            "btn-github mb-2",
            "Login using GitHub",
            Some("github"),
        ),
        item(
            DiscordOAuth::login_path(),
            "btn-discord mb-2",
            "Login using Discord",
            // This is manually coded for in the template file and is not
            // a Feather icon. Do not use it in other places, as it won't work.
            Some("discord"),
        ),
        item(RpiCas::login_path(), "btn-rpi", "Login using RPI CAS", None),
    ];
    // Create and return template.
    let mut template = empty();
    template[HEADER] = json!("Sign In");
    template[ITEMS] = json!(items);
    return template;
}
pub fn login ( ) -> Template { // Make list of identity providers in login configuration. let items : Vec < Map < String , Value > > = vec ! [ item ( GitHubOauth login_path ( ) " " " " Some ( " " ) ) item ( DiscordOAuth login_path ( ) " " " " // This is manually coded for in the template file and is not // a Feather icon. Do not use it in other places, as it won't work. Some ( " " ) ) item ( RpiCas login_path ( ) " " " " None ) ] ; // Create and return template. let mut template = empty ( ) ; template [ HEADER ] = json ! ( " " ) ; template [ ITEMS ] = json ! ( items ) ; return template ; }
Create a template to offer the user options to login.
Create a template to offer the user options to login .