Commit 97ac9301

mo khan <mo@mokhan.ca>
2013-07-01 01:48:14
create route to settings#index path
1 parent 9b0f283
Changed files (4)
app/controllers/settings_controller.rb
@@ -1,20 +1,9 @@
 class SettingsController < ApplicationController
   before_filter :authenticate_user!
 
-  def change_password
-    if params[:user][:password] != params[:user][:password_confirmation]
-      flash[:alert] = "Passwords must match." 
-      redirect_to :back
-      return
-    end
-    @user = User.find(current_user.id)
-    @user.password=params[:user][:password]
-    if @user.save
-      sign_in @user, :bypass => true
-      redirect_to profile_path(current_user), notice: 'Your password has been changed!'
-    else
-      flash[:alert] = "Invalid password, must be at least 6 charactors."
-      redirect_to :back
-    end
+  def index
+  end
+
+  def update
   end
 end
app/views/registrations/edit.html.erb
@@ -9,107 +9,88 @@ $(function(){
 
 <%= render :partial => "shared/account_nav" %>
 
-  <div class="row">
-    <div class="span3">
-      <%= render "profiles/me_box" %>
-    </div>
-    <div class="span7">
-      <h1>My Settings</h1>
-      <%= form_for(resource, :as => resource_name, :url => registration_path(resource_name), :html => { :method => :put, :class=> "form-horizontal" }) do |f| %>
-        <fieldset>
-          <div class="control-group">
-            <%= f.label :name, :class => "control-label"  %>
-            <div class="controls"> <%= f.text_field :name, :class => "input-xlarge" %> </div>
-          </div>
-          <div class="control-group">
-            <%= f.label :email, :class => "control-label"  %>
-            <div class="controls"> <%= f.email_field :email, :class => "input-xlarge"  %> </div>
-          </div>
-          <div class="control-group">
-            <%= f.label :city, :class => 'control-label' %>
-            <div class="controls"> <%= f.text_field :city, :class => "input-xlarge" %> </div>
-          </div>
-          <div class="control-group">
-            <%= f.label :website, :class => "control-label" %> 
-            <div class="controls"> <%= f.url_field :website, :class => "input-xlarge, url", :placeholder => "http://cakeside.com" %> </div>
-          </div>
-          <div class="control-group">
-            <%= f.label :twitter, "Twitter username @", :class => "control-label" %> 
-            <div class="controls"> <%= f.text_field :twitter, :class => "input-xlarge", :placeholder => "without the @ sign", :maxlength => "255" %> </div>
-          </div>
-          <div class="control-group">
-            <%= f.label :facebook, :class => "control-label" %> 
-            <div class="controls"> <%= f.text_field :facebook, :class => "input-xlarge", :placeholder => "http://www.facebook.com/your_profile", :maxlength => "255" %> </div>
-          </div>
-          <p class="help-block">
-          <strong>Note:</strong> Help us better serve you by checking off what best describes you?
-          </p>
-          <div class="control-group">
-            <label class="control-label">About me:</label>
-            <div class="controls">
-              <% for interest in Interest.all %>
-                <label class="checkbox">
-                  <%= check_box_tag "user[interest_ids][]", interest.id, current_user.interests.include?(interest) %>
-                  <%= interest.name %>
-                </label>
-              <% end %>
-            </div>
-          </div><!-- /control-group -->
-          <div class="form-actions">
-            <input type="submit" class="btn btn-primary" value="Save changes" />
-            <button type="reset" class="btn">Cancel</button>
-          </div>
-          <%= f.hidden_field :latitude %>
-          <%= f.hidden_field :longitude %>
-        </fieldset>
-      <% end %>
-    </div>
-    <div class="span2">
-      <p><a id="change-avatar" class="btn btn-primary" data-toggle="modal" href="#change-avatar-dialog">Change My Picture</a></p>
-      <p><a id="change-password-button" class="btn btn-primary" data-toggle="modal" href="#change-password-dialog">Change My Password</a></p>
-      <!--
-      <h4>Cancel My Account</h4>
-      <p>Unhappy? <%= button_to "Cancel my account", registration_path(resource_name), :confirm => "Are you sure?", :method => :delete, :class => "btn btn-danger" %></p>
-      -->
-    </div>
+<div class="row">
+  <div class="span3">
+    <%= render "profiles/me_box" %>
   </div>
-  <div id="change-avatar-dialog" class="modal hide fade">
-    <%= form_tag(avatars_path(current_user), :method => "post", :multipart => true) do |f| %>
-      <div class="modal-header">
-        <button type="button" class="close" data-dismiss="modal">x</button>
-        <h3>Change My Picture</h3>
-      </div>
-      <div class="modal-body">
-        <p style="margin-left:auto; margin-right:auto;text-align:center;"> 
-          <%= avatar_for(current_user) %>
-        </p>
-        <p style="margin-left:auto; margin-right:auto;text-align:center;">
-        <%= fields_for Avatar.new do |f| %>
-          <%= f.file_field :avatar, :rel => avatars_path(current_user) %>
-        <% end %>
+  <div class="span7">
+    <h1>My Settings</h1>
+    <%= form_for(resource, :as => resource_name, :url => registration_path(resource_name), :html => { :method => :put, :class=> "form-horizontal" }) do |f| %>
+      <fieldset>
+        <div class="control-group">
+          <%= f.label :name, :class => "control-label"  %>
+          <div class="controls"> <%= f.text_field :name, :class => "input-xlarge" %> </div>
+        </div>
+        <div class="control-group">
+          <%= f.label :email, :class => "control-label"  %>
+          <div class="controls"> <%= f.email_field :email, :class => "input-xlarge"  %> </div>
+        </div>
+        <div class="control-group">
+          <%= f.label :city, :class => 'control-label' %>
+          <div class="controls"> <%= f.text_field :city, :class => "input-xlarge" %> </div>
+        </div>
+        <div class="control-group">
+          <%= f.label :website, :class => "control-label" %> 
+          <div class="controls"> <%= f.url_field :website, :class => "input-xlarge, url", :placeholder => "http://cakeside.com" %> </div>
+        </div>
+        <div class="control-group">
+          <%= f.label :twitter, "Twitter username @", :class => "control-label" %> 
+          <div class="controls"> <%= f.text_field :twitter, :class => "input-xlarge", :placeholder => "without the @ sign", :maxlength => "255" %> </div>
+        </div>
+        <div class="control-group">
+          <%= f.label :facebook, :class => "control-label" %> 
+          <div class="controls"> <%= f.text_field :facebook, :class => "input-xlarge", :placeholder => "http://www.facebook.com/your_profile", :maxlength => "255" %> </div>
+        </div>
+        <p class="help-block">
+        <strong>Note:</strong> Help us better serve you by checking off what best describes you?
         </p>
-      </div>
-      <div class="modal-footer">
-        <input type="submit" class="btn btn-primary" value="Save changes" />
-        <a href="#" class="btn" data-dismiss="modal">Close</a>
-      </div>
+        <div class="control-group">
+          <label class="control-label">About me:</label>
+          <div class="controls">
+            <% for interest in Interest.all %>
+              <label class="checkbox">
+                <%= check_box_tag "user[interest_ids][]", interest.id, current_user.interests.include?(interest) %>
+                <%= interest.name %>
+              </label>
+            <% end %>
+          </div>
+        </div><!-- /control-group -->
+        <div class="form-actions">
+          <input type="submit" class="btn btn-primary" value="Save changes" />
+          <button type="reset" class="btn">Cancel</button>
+        </div>
+        <%= f.hidden_field :latitude %>
+        <%= f.hidden_field :longitude %>
+      </fieldset>
     <% end %>
   </div>
-  <div id="change-password-dialog" class="modal hide fade">
-    <%= form_for(@user, :url => settings_change_password_path(@user), :html => { :method => :post }) do |f| %>
-      <div class="modal-header">
-        <button type="button" class="close" data-dismiss="modal">x</button>
-        <h3>Change My Password</h3>
-      </div>
-      <div class="modal-body">
-        <%= f.label :password, "New Password" %>
-        <%= f.password_field :password %>
-        <%= f.label :password_confirmation, "Confirm New Password" %>
-        <%= f.password_field :password_confirmation %>
-      </div>
-      <div class="modal-footer">
-        <%= f.submit "Change My Password", :class=>"btn btn-primary" %>
-        <a href="#" class="btn" data-dismiss="modal">Close</a>
-      </div>
-    <% end %>
+  <div class="span2">
+    <p><a id="change-avatar" class="btn btn-primary" data-toggle="modal" href="#change-avatar-dialog">Change My Picture</a></p>
+    <!--
+    <h4>Cancel My Account</h4>
+    <p>Unhappy? <%= button_to "Cancel my account", registration_path(resource_name), :confirm => "Are you sure?", :method => :delete, :class => "btn btn-danger" %></p>
+    -->
   </div>
+</div>
+<div id="change-avatar-dialog" class="modal hide fade">
+  <%= form_tag(avatars_path(current_user), :method => "post", :multipart => true) do |f| %>
+    <div class="modal-header">
+      <button type="button" class="close" data-dismiss="modal">x</button>
+      <h3>Change My Picture</h3>
+    </div>
+    <div class="modal-body">
+      <p style="margin-left:auto; margin-right:auto;text-align:center;"> 
+        <%= avatar_for(current_user) %>
+      </p>
+      <p style="margin-left:auto; margin-right:auto;text-align:center;">
+      <%= fields_for Avatar.new do |f| %>
+        <%= f.file_field :avatar, :rel => avatars_path(current_user) %>
+      <% end %>
+      </p>
+    </div>
+    <div class="modal-footer">
+      <input type="submit" class="btn btn-primary" value="Save changes" />
+      <a href="#" class="btn" data-dismiss="modal">Close</a>
+    </div>
+  <% end %>
+</div>
app/views/shared/_account_nav.html.erb
@@ -1,7 +1,7 @@
 <div class="row">
   <div class="span12">
     <ul class="nav nav-tabs">
-      <li><a href="#">Basic info</a></li>
+      <li><%= link_to "Basic info", settings_path %></li>
       <li><a href="#">Additional info</a></li>
       <li><%= link_to "Password", passwords_path %></li>
       <li><%= link_to "Picture", passwords_path %></li>
config/routes.rb
@@ -43,8 +43,7 @@ Cake::Application.routes.draw do
   # sitemap
   match "/sitemap.xml", :to => "sitemap#index", :defaults => {:format => :xml}
 
-  match 'settings/change_password' => 'settings#change_password', :as => 'settings_change_password', :method => 'POST'
-
+  resources :settings, :only => [:index, :update]
   resources :passwords, :only => [:index, :update]
 
   ActiveAdmin.routes(self)