From 4467d7c062571d624e4429ce111800847be5e126 Mon Sep 17 00:00:00 2001 From: LeandroNunes Date: Fri, 6 Jul 2007 19:32:02 +0000 Subject: [PATCH] ActionItem0: Adding list an link blocks --- app/controllers/application.rb | 23 +++++++++++++++++++++++ app/controllers/home_controller.rb | 15 +++++++++++++++ app/helpers/application_helper.rb | 7 +++++++ app/models/block.rb | 4 ++++ app/models/box.rb | 1 + app/models/link_block.rb | 2 ++ app/models/list_block.rb | 2 ++ app/views/layouts/application.rhtml | 16 ++++++++++++---- test/fixtures/link_blocks.yml | 5 +++++ test/fixtures/list_blocks.yml | 5 +++++ test/unit/link_block_test.rb | 10 ++++++++++ test/unit/list_block_test.rb | 10 ++++++++++ 12 files changed, 96 insertions(+), 4 deletions(-) create mode 100644 app/models/link_block.rb create mode 100644 app/models/list_block.rb create mode 100644 test/fixtures/link_blocks.yml create mode 100644 test/fixtures/list_blocks.yml create mode 100644 test/unit/link_block_test.rb create mode 100644 test/unit/list_block_test.rb diff --git a/app/controllers/application.rb b/app/controllers/application.rb index a524dcf..b3f3fe5 100644 --- a/app/controllers/application.rb +++ b/app/controllers/application.rb @@ -4,6 +4,29 @@ class ApplicationController < ActionController::Base before_filter :detect_stuff_by_domain + before_filter :detect_edit_layout + + def detect_edit_layout + @edit_layout = true unless params[:edit_layout].nil? + end + +# after_filter :render_actions + + def render_actions +@bla = 'funfou' +#return @bla + render_action('index', nil, true) +# render :update do |page| +# page.replace_html 'box_1', :partial => 'pending_todos' +# page.replace_html 'completed_todos', :partial => 'completed_todos' +# page.replace_html 'working_todos', :partial => 'working_todos' +# end + end + +# def render(type = nil) +# render_actions +# end + protected def detect_stuff_by_domain diff --git a/app/controllers/home_controller.rb b/app/controllers/home_controller.rb index fc0b474..6293db1 100644 --- a/app/controllers/home_controller.rb +++ b/app/controllers/home_controller.rb @@ -1,2 +1,17 @@ class HomeController < ApplicationController + + def index + #TODO this is a test case of owner + @owner = User.find(1) + end + +def teste + render :update do |page| + page.replace_html 'box_1', :partial => 'leo' +#'nem acredito' +# page.replace_html 'completed_todos', :partial => 'completed_todos' +# page.replace_html 'working_todos', :partial => 'working_todos' + end + +end end diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb index 22a7940..d47e9ac 100644 --- a/app/helpers/application_helper.rb +++ b/app/helpers/application_helper.rb @@ -1,3 +1,10 @@ # Methods added to this helper will be available to all templates in the application. module ApplicationHelper + + + def show_block(owner,box_number) + blocks = owner.boxes.find(:first, :conditions => ['number = ?', box_number]).blocks + @out = blocks.map {|b| b.to_html}.join('') + end + end diff --git a/app/models/block.rb b/app/models/block.rb index b0f137d..e00b993 100644 --- a/app/models/block.rb +++ b/app/models/block.rb @@ -7,4 +7,8 @@ class Block < ActiveRecord::Base # A block must be associated to a box validates_presence_of :box_id + def to_html + return '

bli

' + end + end diff --git a/app/models/box.rb b/app/models/box.rb index ea414cb..6a3bc2d 100644 --- a/app/models/box.rb +++ b/app/models/box.rb @@ -1,4 +1,5 @@ class Box < ActiveRecord::Base + has_many :blocks belongs_to :owner, :polymorphic => true #we cannot have two boxs with the same number to the same owner diff --git a/app/models/link_block.rb b/app/models/link_block.rb new file mode 100644 index 0000000..47b5780 --- /dev/null +++ b/app/models/link_block.rb @@ -0,0 +1,2 @@ +class LinkBlock < ActiveRecord::Base +end diff --git a/app/models/list_block.rb b/app/models/list_block.rb new file mode 100644 index 0000000..8657acd --- /dev/null +++ b/app/models/list_block.rb @@ -0,0 +1,2 @@ +class ListBlock < ActiveRecord::Base +end diff --git a/app/views/layouts/application.rhtml b/app/views/layouts/application.rhtml index 648f690..4673d14 100644 --- a/app/views/layouts/application.rhtml +++ b/app/views/layouts/application.rhtml @@ -6,13 +6,20 @@ <%= image_tag 'loading.gif', :id=>'spinner', :style=>"display:none; float:right;" %> + + <%= link_to _('edit layout'), params.merge({:edit_layout => true}) %> + <%= link_to _('show layout'), params.merge({:edit_layout => false}) %> + <%= link_to _('acao diferente'), :action => 'teste' %> + +teste +<%= @bla %> +oxe +
- + <%= show_block(@owner, 1)%>
+ <%= show_block(@owner, 1)%>
+ <%= show_block(@owner, 1)%>