-class KeysController < ApplicationController
+class Profiles::KeysController < ApplicationController
layout "profile"
- respond_to :js, :html
def index
@keys = current_user.keys.all
def new
@key = current_user.keys.new
-
- respond_with(@key)
end
def create
@key = current_user.keys.new(params[:key])
- @key.save
- respond_with(@key)
+ if @key.save
+ redirect_to profile_key_path(@key)
+ else
+ render 'new'
+ end
end
def destroy
@key.destroy
respond_to do |format|
- format.html { redirect_to keys_url }
+ format.html { redirect_to profile_keys_url }
format.js { render nothing: true }
end
end
-class NotificationsController < ApplicationController
+class Profiles::NotificationsController < ApplicationController
layout 'profile'
def show
-class PasswordsController < ApplicationController
+class Profiles::PasswordsController < ApplicationController
layout 'navless'
skip_before_filter :check_password_expiration
default_nav = [
{ label: "My Profile", url: profile_path },
- { label: "My SSH Keys", url: keys_path },
+ { label: "My SSH Keys", url: profile_keys_path },
{ label: "My Dashboard", url: root_path },
{ label: "Admin Section", url: admin_root_path },
]
+++ /dev/null
-%tr
- %td
- = link_to key_path(key) do
- %strong= key.title
- %td
- %span.cgray
- Added
- = time_ago_in_words(key.created_at)
- ago
- %td
- = link_to 'Remove', key, confirm: 'Are you sure?', method: :delete, class: "btn btn-small btn-remove delete-key pull-right"
-
+++ /dev/null
-%h1 Editing key
-
-= render 'form'
-
-= link_to 'Show', @key
-\|
-= link_to 'Back', keys_path
= nav_link(controller: :notifications) do
= link_to "Notifications", profile_notifications_path
= nav_link(controller: :keys) do
- = link_to keys_path do
+ = link_to profile_keys_path do
SSH Keys
%span.count= current_user.keys.count
= nav_link(path: 'profiles#design') do
%div
- = form_for @key do |f|
- -if @key.errors.any?
+ = form_for [:profile, @key] do |f|
+ - if @key.errors.any?
.alert.alert-error
%ul
- @key.errors.full_messages.each do |msg|
.actions
= f.submit 'Save', class: "btn btn-save"
- = link_to "Cancel", keys_path, class: "btn btn-cancel"
+ = link_to "Cancel", profile_keys_path, class: "btn btn-cancel"
--- /dev/null
+%tr
+ %td
+ = link_to profile_key_path(key) do
+ %strong= key.title
+ %td
+ %span.cgray
+ Added
+ = time_ago_in_words(key.created_at)
+ ago
+ %td
+ = link_to 'Remove', profile_key_path(key), confirm: 'Are you sure?', method: :delete, class: "btn btn-small btn-remove delete-key pull-right"
+
--- /dev/null
+%h1 Editing key
+
+= render 'form'
+
+= link_to 'Show', profile_keys_path(key)
+\|
+= link_to 'Back', profile_keys_path
%h3.page_title
SSH Keys
- = link_to "Add new", new_key_path, class: "btn pull-right"
+ = link_to "Add new", new_profile_key_path, class: "btn pull-right"
%hr
%p.slead
%th Name
%th Added
%th
- - @keys.each do |key|
- = render(partial: 'show', locals: {key: key})
+ = render @keys
- if @keys.blank?
%tr
%td{colspan: 3}
created at
= @key.created_at.stamp("Aug 21, 2011")
.back_link
- = link_to keys_path do
+ = link_to profile_keys_path do
← To keys list
%hr
%pre= @key.key
.pull-right
- = link_to 'Remove', @key, confirm: 'Are you sure?', method: :delete, class: "btn btn-remove delete-key"
+ = link_to 'Remove', profile_key_path(@key), confirm: 'Are you sure?', method: :delete, class: "btn btn-remove delete-key"
%legend
SSH public keys:
%span.pull-right
- = link_to pluralize(current_user.keys.count, 'key'), keys_path
+ = link_to pluralize(current_user.keys.count, 'key'), profile_keys_path
.padded
- = link_to "Add Public Key", new_key_path, class: "btn btn-small"
+ = link_to "Add Public Key", new_profile_key_path, class: "btn btn-small"
.form-actions
= f.submit 'Save', class: "btn btn-save"
put :update_username
end
- resource :notifications, only: [:show, :update]
- resource :password, only: [:new, :create]
+ scope module: :profiles do
+ resource :notifications, only: [:show, :update]
+ resource :password, only: [:new, :create]
+ resources :keys
+ end
end
- resources :keys
match "/u/:username" => "users#show", as: :user, constraints: { username: /.*/ }
key = Key.find_by_title("Laptop")
page.should have_content(key.title)
page.should have_content(key.key)
- current_path.should == key_path(key)
+ current_path.should == profile_key_path(key)
end
Given 'I click link "Work"' do
end
Then 'I visit profile keys page' do
- visit keys_path
+ visit profile_keys_path
end
And 'I should not see "Work" ssh key' do
end
step 'I visit profile SSH keys page' do
- visit keys_path
+ visit profile_keys_path
end
step 'I visit profile design page' do
require "spec_helper"
-describe NotificationsController do
+describe Profiles::NotificationsController do
describe "routing" do
it "routes to #show" do
- get("/profile/notifications").should route_to("notifications#show")
+ get("/profile/notifications").should route_to("profiles/notifications#show")
end
it "routes to #update" do
- put("/profile/notifications").should route_to("notifications#update")
+ put("/profile/notifications").should route_to("profiles/notifications#update")
end
end
end
# key GET /keys/:id(.:format) keys#show
# PUT /keys/:id(.:format) keys#update
# DELETE /keys/:id(.:format) keys#destroy
-describe KeysController, "routing" do
+describe Profiles::KeysController, "routing" do
it "to #index" do
- get("/keys").should route_to('keys#index')
+ get("/profile/keys").should route_to('profiles/keys#index')
end
it "to #create" do
- post("/keys").should route_to('keys#create')
+ post("/profile/keys").should route_to('profiles/keys#create')
end
it "to #new" do
- get("/keys/new").should route_to('keys#new')
+ get("/profile/keys/new").should route_to('profiles/keys#new')
end
it "to #edit" do
- get("/keys/1/edit").should route_to('keys#edit', id: '1')
+ get("/profile/keys/1/edit").should route_to('profiles/keys#edit', id: '1')
end
it "to #show" do
- get("/keys/1").should route_to('keys#show', id: '1')
+ get("/profile/keys/1").should route_to('profiles/keys#show', id: '1')
end
it "to #update" do
- put("/keys/1").should route_to('keys#update', id: '1')
+ put("/profile/keys/1").should route_to('profiles/keys#update', id: '1')
end
it "to #destroy" do
- delete("/keys/1").should route_to('keys#destroy', id: '1')
+ delete("/profile/keys/1").should route_to('profiles/keys#destroy', id: '1')
end
end