Commit d51e4ac
Changed files (3)
app
javascript
packs
controllers
views
sessions
app/javascript/packs/controllers/hello_controller.js
@@ -1,4 +0,0 @@
-import { Controller } from 'stimulus'
-
-export default class extends Controller {
-}
app/javascript/packs/controllers/sessions_controller.js
@@ -0,0 +1,19 @@
+import { Controller } from 'stimulus'
+
+export default class extends Controller {
+ validate() {
+ if (this.password && this.email) {
+ console.log("valid")
+ } else {
+ console.log("invalid")
+ }
+ }
+
+ get email() {
+ return this.targets.find("email").value
+ }
+
+ get password() {
+ return this.targets.find("password").value
+ }
+}
app/views/sessions/new.html.erb
@@ -2,12 +2,12 @@
<div class="row">
<div class="col">
<h1>Login</h1>
- <%= form_for :user, url: session_path, method: :post do |form| %>
+ <%= form_for :user, url: session_path, method: :post, data: { controller: 'sessions' } do |form| %>
<div class="form-group">
- <%= form.email_field :email, class: 'form-control', placeholder: User.human_attribute_name(:email), autofocus: true, required: :required %>
+ <%= form.email_field :email, class: 'form-control', placeholder: User.human_attribute_name(:email), autofocus: true, required: :required, data: { target: 'sessions.email', action: "change->sessions#validate" } %>
</div>
<div class="form-group">
- <%= form.password_field :password, class: 'form-control', placeholder: User.human_attribute_name(:password), required: :required %>
+ <%= form.password_field :password, class: 'form-control', placeholder: User.human_attribute_name(:password), required: :required, data: { target: 'sessions.password', action: "change->sessions#validate" } %>
</div>
<%= form.button t('.login'), type: 'submit', class: 'btn btn-primary', data: { disable_with: t('.loading') } %>
<%= link_to "Register", new_registration_path %>