Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #---------------------model----------------------------
- require "digest/sha1"
- class User < ActiveRecord::Base
- belongs_to :office
- attr_accessor :password, :balalaika
- attr_accessible :name, :password, :full_name, :office_id, :position
- validates_uniqueness_of :name
- validates_presence_of :name, :password
- def before_create
- self.hashed_password = User.hash_password(self.password)
- end
- def before_update
- self.hashed_password = User.hash_password(self.password)
- end
- def after_update
- @password = nil
- end
- def after_create
- @password = nil
- end
- def self.login(name, password)
- hashed_password = hash_password(password || "")
- find(:first,
- :conditions => ["name = ? and hashed_password = ?", name, hashed_password])
- end
- def try_to_login
- User.login(self.name, self.password) ||
- User.find_by_name_and_hashed_password_and_is_active(name, "", 1)
- end
- private
- def self.hash_password(password)
- Digest::SHA1.hexdigest(password)
- end
- end
- #------------------------controller----------------------
- def update_user_password
- @user = User.find(params[:id])
- if @user.update_attributes(params[:user])
- redirect_to :action => 'list_users'
- raise @user.errors.full_messages.inspect
- else
- render :action => 'edit_user'
- end
- end
- ------------------------View------------------------------
- <script type="text/javascript" language="JavaScript">
- function validate_form() {
- passwd1 = document.getElementById('user_password').value
- passwd2 = document.getElementById('check_check').value
- if ((passwd1 != "") && (passwd2 != "")) {
- if (passwd1 == passwd2) {
- return true;
- }
- alert ("Slaptažodžiai ne identiški! Įveskite juos pakartotinai!");
- return false;
- }
- return false;
- }
- </script>
- <br>
- <br>
- <div align="center">
- <br>
- <% @page_title = "Add a User" -%>
- <%= error_messages_for 'admin_user' %>
- <%form_tag ({:action => 'update_user', :id => @user}, :onsubmit => "return validate_form()") do %>
- <table class="simple auto">
- <tr>
- <th colspan="2">Naujo darbuotojo registracija
- <tr>
- <td>Loginas:</td>
- <td><%= hidden_field("user", "name") %><%=@user.name%></td>
- </tr>
- <tr>
- <td>Slaptažodis:</td>
- <td><%= password_field("user", "password") %></td>
- </tr>
- <tr>
- <td>Toks pats slaptažodis:</td>
- <td><%= password_field("check", "check") %></td>
- </tr>
- <tr>
- <td>Darbuotojo vardas/pavardė:</td>
- <td><%= hidden_field("user", "full_name") %><%=@user.full_name%></td>
- </tr>
- <tr>
- <td>Pareigos</td>
- <td><%= hidden_field("user", "position") %><%=@user.position%><%= hidden_field("user", "office_id") %></td>
- </tr>
- <td></td>
- <td><input type="submit" value=" Redaguoti " /></td>
- </tr>
- </table>
- <% end %>
- </div>
Add Comment
Please, Sign In to add comment