diff options
Diffstat (limited to 'src/guff/views/html/test')
-rw-r--r-- | src/guff/views/html/test/auth.cr | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/src/guff/views/html/test/auth.cr b/src/guff/views/html/test/auth.cr index bdada74..b21ebf6 100644 --- a/src/guff/views/html/test/auth.cr +++ b/src/guff/views/html/test/auth.cr @@ -5,6 +5,37 @@ class Guff::TestAuthHTMLView TITLE = "Guff Auth Test" FEATURES = %w{bootstrap font-awesome} + TEMPLATES = TemplateCache.new({ + user: "<a + href='#' + class='list-group-item %{css}' + title='Set user to \"%{name}.\"' + data-user_id='%{id}' + >%{name}</a>" + }) + + MOCK_USERS = [{ + "id": "0", + "name": "Guest", + "active": "1", + }, { + "id": "1", + "name": "Admin", + "active": "0", + }, { + "id": "2", + "name": "Test User 1", + "active": "0", + }, { + "id": "2", + "name": "Test User 2", + "active": "0", + }, { + "id": "3", + "name": "Test User<<<<>>>>>&&&&&&2", + "active": "0", + }] + def self.run(models, context : HTTP::Server::Context) new(models).run(context) end @@ -19,6 +50,15 @@ class Guff::TestAuthHTMLView context.response.puts page end + def users + MOCK_USERS.map { |row| + TEMPLATES[:user].run(row.merge({ + "name": h(row["name"]), + "css": (row["active"] == "1") ? "active" : "", + })) + }.join("") + end + def h(s : String) HTML.escape(s || "") end |