aboutsummaryrefslogtreecommitdiff
path: root/src/guff/views
diff options
context:
space:
mode:
Diffstat (limited to 'src/guff/views')
-rw-r--r--src/guff/views/ecrs/test/auth.ecr84
-rw-r--r--src/guff/views/html/test/auth.cr24
2 files changed, 108 insertions, 0 deletions
diff --git a/src/guff/views/ecrs/test/auth.ecr b/src/guff/views/ecrs/test/auth.ecr
index c28f178..89d3283 100644
--- a/src/guff/views/ecrs/test/auth.ecr
+++ b/src/guff/views/ecrs/test/auth.ecr
@@ -46,5 +46,89 @@
</span><!-- list-group-item -->
</div><!-- list-group -->
</div><!-- panel -->
+
+ <div class='panel panel-default'>
+ <div class='panel-heading'>
+ <b>
+ <i class='fa fa-user'></i>
+ Create User
+ </b>
+ </div><!-- panel-heading -->
+
+ <div class='panel-body'>
+ <div class='form-group'>
+ <label for='user-name'>
+ Name
+ </label>
+
+ <input
+ type='text'
+ id='user-name'
+ class='form-control'
+ title='Enter name of user.'
+ placeholder='John Doe'
+ />
+ </div><!-- form-group -->
+
+ <div class='form-group'>
+ <label for='user-email'>
+ Email Address
+ </label>
+
+ <input
+ type='text'
+ id='user-email'
+ class='form-control'
+ title='Enter user email.'
+ placeholder='johndoe@example.com'
+ />
+ </div><!-- form-group -->
+
+ <div class='form-group'>
+ <label for='user-password'>
+ Password
+ </label>
+
+ <input
+ type='password'
+ id='user-password'
+ class='form-control'
+ title='Enter password.'
+ />
+ </div><!-- form-group -->
+
+ <div class='form-group'>
+ <label for='user-role'>
+ Role
+ </label>
+
+ <select
+ id='user-role'
+ class='form-control'
+ title='Choose role of user.'
+ ><%=
+ get_roles
+ %></select>
+ </div><!-- form-group -->
+
+ <div class='form-group'>
+ <button
+ id='create-user'
+ class='btn btn-primary'
+ title='Create user.'
+ >
+ <span class='hidden loading'>
+ <i class='fa fa-spinner fa-spin'></i>
+ Please Wait...
+ </span>
+
+ <span class='loading'>
+ <i class='fa fa-plus-square'></i>
+ Create User
+ </span>
+ </button>
+ </div><!-- form-group -->
+ </div><!-- panel-body -->
+ </div><!-- panel -->
</div><!-- col-md-8 -->
</div><!-- container -->
diff --git a/src/guff/views/html/test/auth.cr b/src/guff/views/html/test/auth.cr
index 9f5d1ad..1baa7de 100644
--- a/src/guff/views/html/test/auth.cr
+++ b/src/guff/views/html/test/auth.cr
@@ -5,6 +5,18 @@ class Guff::TestAuthHTMLView
TITLE = "Guff Auth Test"
FEATURES = %w{bootstrap font-awesome guff/util}
+ TEMPLATES = TemplateCache.new({
+ role: "
+ <option
+ value='%{name}'
+ title='%{text}'
+ %{selected}
+ >
+ %{name}
+ </option>
+ "
+ })
+
def self.run(models, context : HTTP::Server::Context)
new(models).run(context)
end
@@ -24,5 +36,17 @@ class Guff::TestAuthHTMLView
HTML.escape(s || "")
end
+ def get_roles
+ @models.role.get_roles.map { |row|
+ name = row["role_name"] as String
+
+ TEMPLATES[:role].run({
+ "name": h(name),
+ "text": h(row["role_desc"] as String),
+ "selected": (name == "guest") ? "selected='selected'" : ""
+ })
+ }.join
+ end
+
ECR.def_to_s("./src/guff/views/ecrs/test/auth.ecr")
end