DG MS did some basic work on the dashboard controller and some super basic fallback partial view

This commit is contained in:
maxwell 2010-06-15 21:08:29 -07:00
parent e6f3fc1d38
commit 9e89b2e0a7
10 changed files with 62 additions and 5 deletions

View file

@ -0,0 +1,14 @@
class DashboardController < ApplicationController
before_filter :authenticate_user!
def index
@posts = Post.all
@bookmarks = Bookmark.all
@status_messages = StatusMessage.all
@blogs = Blog.all
#@status_messages = @posts.select{ |x| x._type == "StatusMessage"}
#@blogs = @posts.select{ |x| x._type == "Blog"}
#@bookmarks = @posts.select{ |x| x._type == "Bookmarks"}
end
end

View file

@ -1,2 +1,9 @@
module ApplicationHelper
def object_path(object)
eval("#{object.class.to_s.underscore}_path(object)")
end
def object_fields(object)
object.attributes.keys
end
end

View file

@ -0,0 +1,2 @@
module DashboardHelper
end

View file

@ -16,6 +16,7 @@ class Post
before_create :set_defaults
#after_update :notify_friends
protected
@ -25,6 +26,14 @@ class Post
self.source ||= user_email
self.snippet ||= user_email
end
#def notify_friends
#friends = Permissions.get_list_for(self)
#xml = self.to_xml_to_s
#friends.each{|friend| ping friend :with => xml }
#end
end

View file

@ -0,0 +1,9 @@
- title "Dashboard"
%ul
- for post in @posts
%li
= render "shared/post", :post =>post
%br
%br

View file

@ -0,0 +1,5 @@
%ul
%h3= link_to post.class, object_path(post)
- for field in object_fields(post)
%li= "#{field}: #{post.attributes[field]}"

View file

@ -2,9 +2,10 @@
# Add new inflection rules using the following format
# (all these examples are active by default):
# ActiveSupport::Inflector.inflections do |inflect|
ActiveSupport::Inflector.inflections do |inflect|
# inflect.plural /^(ox)$/i, '\1en'
# inflect.singular /^(ox)en/i, '\1'
# inflect.irregular 'person', 'people'
# inflect.uncountable %w( fish sheep )
# end
inflect.uncountable %w(dashboard)
end

View file

@ -17,7 +17,6 @@ Diaspora::Application.routes.draw do |map|
resources :users
resources :status_messages
match 'dashboard', :to => 'status_messages#index'
# The priority is based upon order of creation:
@ -77,6 +76,6 @@ Diaspora::Application.routes.draw do |map|
# Note: This route will make all actions in every controller accessible via GET requests.
# match ':controller(/:action(/:id(.:format)))'
root :to => 'status_messages#index'
root :to => 'dashboard#index'
end

View file

@ -0,0 +1,11 @@
require File.dirname(__FILE__) + '/../spec_helper'
describe DashboardController do
fixtures :all
integrate_views
it "index action should render index template" do
get :index
response.should render_template(:index)
end
end