rails-ext 0.3.2 → 0.3.3
Sign up to get free protection for your applications and to get access to all the features.
- data/.git/COMMIT_EDITMSG +1 -1
- data/.git/index +0 -0
- data/.git/logs/HEAD +2 -0
- data/.git/logs/refs/heads/master +2 -0
- data/.git/logs/refs/remotes/origin/master +1 -0
- data/.git/objects/08/657a1cfcf74f1f82d863b1c8ca6e9a3e94cc61 +0 -0
- data/.git/objects/15/c705282abf9721abc4c22a4ce09c3c76bcb73f +0 -0
- data/.git/objects/28/0d2d83eb4aa5fb48fefa1a8ceab6761cd9288d +0 -0
- data/.git/objects/29/9206b7fd6e97e56652dc1514355815c74573d9 +0 -0
- data/.git/objects/35/d78424bc393bb5acc12c52c031129aa3ceb8c5 +2 -0
- data/.git/objects/36/c7ec2150ecaa7af94d9556c218f723a2eff0e1 +0 -0
- data/.git/objects/3b/354d07a5bb5780eeffa4c12968214b1edb8b24 +0 -0
- data/.git/objects/3d/ce52a15f01f1a8f99e65d148341bea71065129 +0 -0
- data/.git/objects/47/468bfa5f120e264ca0217c72702928dbf01511 +0 -0
- data/.git/objects/47/4f3074d7b1360f1897d62dd54444f70e645f1e +0 -0
- data/.git/objects/60/a42d757f842f6ce1a27284630ffd3deb867857 +0 -0
- data/.git/objects/65/eb5981a1bac28b5f171c36dfbfeaae3e985a50 +0 -0
- data/.git/objects/6c/699c7999faa02e17f5e19d2598b0fd98b3e553 +1 -0
- data/.git/objects/6e/5b3a02689a2990455d28c514d8e2885d004fdb +1 -0
- data/.git/objects/6e/b67e3ad9f44898acced6d861f9743dad07e49c +0 -0
- data/.git/objects/6f/8c62387c94fbb7639a1c1f25df92cab15d2154 +0 -0
- data/.git/objects/79/4750e930e297c9616e902898f684967c2760c7 +0 -0
- data/.git/objects/7b/f12fa27542b09a968ac9b1ceedc1a71bfd6ce8 +0 -0
- data/.git/objects/96/47afbafd293f6994316b2cc0d3e813c1878f87 +0 -0
- data/.git/objects/98/8bfa77097695a4771be8e01d0aabd1a01c62fa +0 -0
- data/.git/objects/9b/11e8efda3f1354c0076a4f102fb38430f4b3b2 +3 -0
- data/.git/objects/a5/601da690031d212d8325b0c23655c6f1f24dcc +0 -0
- data/.git/objects/aa/b7becd23c1123ec701737ae5329314aea3124f +0 -0
- data/.git/objects/ab/d27aa19a08f7a172d66da7ab0125838c09317e +0 -0
- data/.git/objects/ba/2a392e35a7626a7477d1770b00cc2704916a7e +0 -0
- data/.git/objects/be/4935dda5362a24e6fae89d4cd8f3cb2d302d01 +0 -0
- data/.git/objects/c4/7ead0b6604e6627e887f2f2e8909a8b409ae5a +1 -0
- data/.git/objects/cb/52d0a9c9540d1d9aba011e8445d57236dafb74 +0 -0
- data/.git/objects/d5/7224732596609c1852e96d45130893eff75f13 +0 -0
- data/.git/objects/d6/c2636aa2b5da4a6b06dd824bd0e9a82c5765a4 +0 -0
- data/.git/objects/e1/323977dc6cda25967e6ec6166430c2c0f08e32 +2 -0
- data/.git/objects/f2/1aa127d1512cc6c8e46bf4f680a71277db8896 +0 -0
- data/.git/objects/f7/32b167a61d8db0328f0196af00b55147ebf756 +0 -0
- data/.git/refs/heads/master +1 -1
- data/.git/refs/remotes/origin/master +1 -1
- data/Rakefile +1 -1
- data/lib/interface_builder/form_builders/abstract_form_builder.rb +79 -0
- data/lib/interface_builder/form_builders/themed_form_builder.rb +46 -0
- data/lib/interface_builder/form_builders/themed_form_tag_builder.rb +13 -0
- data/lib/interface_builder/haml_builder.rb +44 -0
- data/lib/interface_builder/model_stub.rb +20 -0
- data/lib/interface_builder/support.rb +56 -0
- data/lib/interface_builder/view_builder.rb +124 -0
- data/lib/interface_builder/view_helper.rb +23 -0
- data/lib/interface_builder.rb +12 -0
- data/lib/mongo_mapper_ext/fixes.rb +21 -1
- data/lib/mongo_mapper_ext/view_helpers.rb +1 -13
- data/lib/rails_ext/action_controller/micelaneous.rb +2 -2
- data/lib/rails_ext/action_view/ruby_template.rb +13 -0
- data/lib/rails_ext/hacks/ajax_flash.rb +1 -1
- data/lib/rails_ext/hacks/ajax_redirect_to.rb +1 -1
- data/lib/rails_ext/micelaneous/defer_static_javascripts.rb +1 -1
- data/public/rails_ext/rails_ext.js +11 -7
- metadata +46 -3
data/.git/COMMIT_EDITMSG
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
add interface_builder
|
data/.git/index
CHANGED
Binary file
|
data/.git/logs/HEAD
CHANGED
@@ -47,3 +47,5 @@ ebf7fda7b05436ca8616cc3098a069cc611224b6 49b7ee2b8f19ff0639d351fd5f3616c1360ff70
|
|
47
47
|
f6b9bcda0a6940c634c0ac0d6ac626028927e1da e7391f37a0dbbb03b5444d43d9679cb0e2942128 alex <alex@amac.local> 1268891517 +0300 commit: fix
|
48
48
|
e7391f37a0dbbb03b5444d43d9679cb0e2942128 d7a33fe1ff44a661941d742270c3299a862689ca alex <alex@amac.local> 1268891528 +0300 commit: fix
|
49
49
|
d7a33fe1ff44a661941d742270c3299a862689ca f9cf98993bf7067d5b45b0f06dc36fdedba5ffcf alex <alex@amac.local> 1269033033 +0300 commit: upd
|
50
|
+
f9cf98993bf7067d5b45b0f06dc36fdedba5ffcf c47ead0b6604e6627e887f2f2e8909a8b409ae5a alex <alex@amac.local> 1269293032 +0300 commit: fixes & interface_builder
|
51
|
+
c47ead0b6604e6627e887f2f2e8909a8b409ae5a 3b354d07a5bb5780eeffa4c12968214b1edb8b24 alex <alex@amac.local> 1269314707 +0300 commit: add interface_builder
|
data/.git/logs/refs/heads/master
CHANGED
@@ -47,3 +47,5 @@ ebf7fda7b05436ca8616cc3098a069cc611224b6 49b7ee2b8f19ff0639d351fd5f3616c1360ff70
|
|
47
47
|
f6b9bcda0a6940c634c0ac0d6ac626028927e1da e7391f37a0dbbb03b5444d43d9679cb0e2942128 alex <alex@amac.local> 1268891517 +0300 commit: fix
|
48
48
|
e7391f37a0dbbb03b5444d43d9679cb0e2942128 d7a33fe1ff44a661941d742270c3299a862689ca alex <alex@amac.local> 1268891528 +0300 commit: fix
|
49
49
|
d7a33fe1ff44a661941d742270c3299a862689ca f9cf98993bf7067d5b45b0f06dc36fdedba5ffcf alex <alex@amac.local> 1269033033 +0300 commit: upd
|
50
|
+
f9cf98993bf7067d5b45b0f06dc36fdedba5ffcf c47ead0b6604e6627e887f2f2e8909a8b409ae5a alex <alex@amac.local> 1269293032 +0300 commit: fixes & interface_builder
|
51
|
+
c47ead0b6604e6627e887f2f2e8909a8b409ae5a 3b354d07a5bb5780eeffa4c12968214b1edb8b24 alex <alex@amac.local> 1269314707 +0300 commit: add interface_builder
|
@@ -37,3 +37,4 @@ d0a9b291d92a5e07655d57b9486579e56d126559 49b7ee2b8f19ff0639d351fd5f3616c1360ff70
|
|
37
37
|
49b7ee2b8f19ff0639d351fd5f3616c1360ff700 f6b9bcda0a6940c634c0ac0d6ac626028927e1da alex <alex@amac.local> 1268890693 +0300 update by push
|
38
38
|
f6b9bcda0a6940c634c0ac0d6ac626028927e1da d7a33fe1ff44a661941d742270c3299a862689ca alex <alex@amac.local> 1268891538 +0300 update by push
|
39
39
|
d7a33fe1ff44a661941d742270c3299a862689ca f9cf98993bf7067d5b45b0f06dc36fdedba5ffcf alex <alex@amac.local> 1269033043 +0300 update by push
|
40
|
+
f9cf98993bf7067d5b45b0f06dc36fdedba5ffcf 3b354d07a5bb5780eeffa4c12968214b1edb8b24 alex <alex@amac.local> 1269314724 +0300 update by push
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
@@ -0,0 +1 @@
|
|
1
|
+
xm��j1�{ާ�! ���T!�}�R���b�Jm%��}�M=�"��|3�'�����a�n-A2�/P�]1&���I�+���"�!:��J�M20&�x��<s��n�n7�h~�lES���+U��/���w+���u��X�e����ɰ�`y��5��z���g���Y44��*%��lQ�"I��?~��3��o��d�
|
@@ -0,0 +1 @@
|
|
1
|
+
x���n� �;�)N��jO�*E����j�9V�0D��!����St��; ��h��irj6��F�Q<��(�
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
@@ -0,0 +1 @@
|
|
1
|
+
x���j�0���:�2��1��7)�,�@Ҕԁ>~�=�.��_�u�;�0}����M�������U��,*%z��n�^��Tk/�KK2&A��4foք��z��l;�bO8�{��{ٔ�3�+Ո��#bп�n���=���/sV��1/����E�
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
data/.git/refs/heads/master
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
3b354d07a5bb5780eeffa4c12968214b1edb8b24
|
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
3b354d07a5bb5780eeffa4c12968214b1edb8b24
|
data/Rakefile
CHANGED
@@ -18,7 +18,7 @@ require 'fileutils'
|
|
18
18
|
|
19
19
|
spec = Gem::Specification.new do |s|
|
20
20
|
s.name = "rails-ext"
|
21
|
-
s.version = "0.3.
|
21
|
+
s.version = "0.3.3"
|
22
22
|
s.summary = "Set of common Ruby on Rails extensions"
|
23
23
|
s.description = "Set of common Ruby on Rails extensions"
|
24
24
|
s.author = "Alexey Petrushin"
|
@@ -0,0 +1,79 @@
|
|
1
|
+
module InterfaceBuilder
|
2
|
+
module FormBuilders
|
3
|
+
module AbstractFormBuilder
|
4
|
+
|
5
|
+
attr_reader :template
|
6
|
+
|
7
|
+
def line *items
|
8
|
+
template.render :partial => template.themed_partial('forms/line'), :object => {:items => items, :delimiter => false}.to_openobject
|
9
|
+
end
|
10
|
+
|
11
|
+
def submit *args
|
12
|
+
@template.submit_tag *args
|
13
|
+
end
|
14
|
+
|
15
|
+
# def hidden_field_tag *args
|
16
|
+
# result[:hidden_fields] << @template.hidden_field_tag(*args)
|
17
|
+
# end
|
18
|
+
|
19
|
+
def line_with_delimiters *items
|
20
|
+
template.render :partial => template.themed_partial('forms/line'), :object => {:items => items, :delimiter => true}.to_openobject
|
21
|
+
end
|
22
|
+
|
23
|
+
# text_field_tag, ... xxx_tag
|
24
|
+
def method_missing name, *args, &block
|
25
|
+
options = args.extract_options!.symbolize_keys
|
26
|
+
args << options
|
27
|
+
|
28
|
+
inject_styles! options, name
|
29
|
+
|
30
|
+
input = @template.send name, *args, &block
|
31
|
+
|
32
|
+
remove_styles! options
|
33
|
+
|
34
|
+
custom_helper input, options, name, options[:object], *args
|
35
|
+
end
|
36
|
+
|
37
|
+
def error_messages *errors
|
38
|
+
if errors.size == 1 and errors.first.is_a?(Array)
|
39
|
+
custom_error_messages *errors
|
40
|
+
else
|
41
|
+
custom_error_messages errors
|
42
|
+
end
|
43
|
+
end
|
44
|
+
|
45
|
+
def field_tag html, options = {}
|
46
|
+
custom_helper html, options, nil, options[:object]
|
47
|
+
end
|
48
|
+
|
49
|
+
protected
|
50
|
+
def custom_helper input, options, field, object, *args
|
51
|
+
# Input
|
52
|
+
options[:input] = input
|
53
|
+
|
54
|
+
# Errors
|
55
|
+
errors = options[:errors] || (object ? (object.errors.on(field) || []) : [])
|
56
|
+
errors = [errors] unless errors.is_a?(Array)
|
57
|
+
options[:errors] = errors
|
58
|
+
|
59
|
+
template.render :partial => template.themed_partial('forms/field'), :object => options.to_openobject
|
60
|
+
end
|
61
|
+
|
62
|
+
def custom_error_messages errors
|
63
|
+
errors = [errors] unless errors.is_a?(Array)
|
64
|
+
template.render :partial => template.themed_partial('forms/errors'), :object => errors
|
65
|
+
end
|
66
|
+
|
67
|
+
def inject_styles! options, name
|
68
|
+
name = name.to_s.sub(/_tag$/, "")
|
69
|
+
options[:class] ||= "";
|
70
|
+
options[:class] << " themed_input #{name}_input"
|
71
|
+
end
|
72
|
+
|
73
|
+
def remove_styles! options
|
74
|
+
options.delete :class
|
75
|
+
options.delete 'class' # sometimes it's a String
|
76
|
+
end
|
77
|
+
end
|
78
|
+
end
|
79
|
+
end
|
@@ -0,0 +1,46 @@
|
|
1
|
+
module InterfaceBuilder
|
2
|
+
module FormBuilders
|
3
|
+
class ThemedFormBuilder < ActionView::Helpers::FormBuilder
|
4
|
+
include AbstractFormBuilder
|
5
|
+
|
6
|
+
helpers = field_helpers +
|
7
|
+
%w{date_select datetime_select time_select} +
|
8
|
+
%w{collection_select select country_select time_zone_select} -
|
9
|
+
%w{hidden_field fields_for submit} # Don't decorate these
|
10
|
+
|
11
|
+
helpers.each do |name|
|
12
|
+
define_method(name) do |field, *args|
|
13
|
+
options = args.extract_options!
|
14
|
+
args << options
|
15
|
+
|
16
|
+
label = if object.class.respond_to? :human_attribute_name
|
17
|
+
object.class.try(:human_attribute_name, field)
|
18
|
+
else
|
19
|
+
object.t field
|
20
|
+
end
|
21
|
+
|
22
|
+
options[:label] = label unless options.include? :label
|
23
|
+
|
24
|
+
inject_styles! options, name
|
25
|
+
|
26
|
+
input = super field, *args
|
27
|
+
|
28
|
+
remove_styles! options
|
29
|
+
|
30
|
+
custom_helper input, options, field, object, *args
|
31
|
+
end
|
32
|
+
end
|
33
|
+
|
34
|
+
def error_messages
|
35
|
+
errors = object.errors.on(:base) || []
|
36
|
+
custom_error_messages errors
|
37
|
+
end
|
38
|
+
|
39
|
+
protected
|
40
|
+
|
41
|
+
def object
|
42
|
+
@object ||= @template.instance_variable_get "@#{@object_name}"
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
46
|
+
end
|
@@ -0,0 +1,44 @@
|
|
1
|
+
module InterfaceBuilder
|
2
|
+
class HamlBuilder < BlankSlate
|
3
|
+
def initialize template
|
4
|
+
@template = template
|
5
|
+
@hash, @array = OpenObject.new, []
|
6
|
+
end
|
7
|
+
|
8
|
+
def method_missing m, value = nil, &block
|
9
|
+
@hash[m] = get_input value, &block
|
10
|
+
nil
|
11
|
+
end
|
12
|
+
|
13
|
+
def add value = nil, &block
|
14
|
+
@array << get_input(value, &block)
|
15
|
+
nil
|
16
|
+
end
|
17
|
+
|
18
|
+
# def add_item content, opt = {}, &block
|
19
|
+
# opt[:content] = content
|
20
|
+
# opt[:content] ||= @template.capture &block if block
|
21
|
+
# add opt
|
22
|
+
# end
|
23
|
+
|
24
|
+
def get_value
|
25
|
+
!@array.empty? ? @array : @hash
|
26
|
+
end
|
27
|
+
|
28
|
+
protected
|
29
|
+
def get_input value, &block
|
30
|
+
if block
|
31
|
+
if block.arity <= 0
|
32
|
+
@template.should_not! :be_nil
|
33
|
+
@template.capture &block
|
34
|
+
else
|
35
|
+
b = HamlBuilder.new @template
|
36
|
+
block.call b
|
37
|
+
b.get_value
|
38
|
+
end
|
39
|
+
else
|
40
|
+
value.is_a?(Hash) ? value.to_openobject : value
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
module Samples
|
2
|
+
class Errors < OpenObject
|
3
|
+
def on key
|
4
|
+
self[key]
|
5
|
+
end
|
6
|
+
end
|
7
|
+
|
8
|
+
class ThemeSample < OpenObject
|
9
|
+
|
10
|
+
end
|
11
|
+
|
12
|
+
def self.build_stub!
|
13
|
+
s = ThemeSample.new :name => "Some Name", :active => true, :body => "Some text"
|
14
|
+
s.errors = Errors.new \
|
15
|
+
:base => ["Base Error Description", "Base Error Description 2"],
|
16
|
+
:name => ["Name Error Description 1", "Name Error Description 2"]
|
17
|
+
s
|
18
|
+
end
|
19
|
+
|
20
|
+
end
|
@@ -0,0 +1,56 @@
|
|
1
|
+
# content_or_self
|
2
|
+
[Hash, OpenObject].each do |aclass|
|
3
|
+
aclass.class_eval do
|
4
|
+
def hash?; true end
|
5
|
+
end
|
6
|
+
end
|
7
|
+
|
8
|
+
NilClass.class_eval do
|
9
|
+
def content; "" end
|
10
|
+
def hash?; false end
|
11
|
+
end
|
12
|
+
|
13
|
+
String.class_eval do
|
14
|
+
def content; self end
|
15
|
+
def hash?; false end
|
16
|
+
end
|
17
|
+
|
18
|
+
# OpenObject
|
19
|
+
OpenObject.class_eval do
|
20
|
+
HTML_ATTRIBUTES = [:id, :class]
|
21
|
+
|
22
|
+
def merge_html_attributes hash
|
23
|
+
# html attributes
|
24
|
+
result = {}
|
25
|
+
HTML_ATTRIBUTES.each{|k| result[k.to_s] = self[k] if include? k}
|
26
|
+
html_attributes.each{|k, v| result[k.to_s] = v} if html_attributes?
|
27
|
+
|
28
|
+
# merging html attributes with hash
|
29
|
+
hash.each do |k, v|
|
30
|
+
k = k.to_s
|
31
|
+
if result.include?(k) and v.is_a?(String)
|
32
|
+
string = result[k].should! :be_a, [Symbol, String]
|
33
|
+
result[k] = "#{result[k]}#{v}"
|
34
|
+
else
|
35
|
+
result[k] = v
|
36
|
+
end
|
37
|
+
end
|
38
|
+
result
|
39
|
+
end
|
40
|
+
|
41
|
+
protected
|
42
|
+
def method_missing( sym, arg=nil, &blk)
|
43
|
+
type = sym.to_s[-1,1]
|
44
|
+
key = sym.to_s.sub(/[=?!]$/,'').to_sym
|
45
|
+
if type == '='
|
46
|
+
define_slot(key,arg)
|
47
|
+
elsif type == '!'
|
48
|
+
define_slot(key,arg)
|
49
|
+
self
|
50
|
+
elsif type == '?'
|
51
|
+
!self[key].blank?
|
52
|
+
else
|
53
|
+
self[key]
|
54
|
+
end
|
55
|
+
end
|
56
|
+
end
|
@@ -0,0 +1,124 @@
|
|
1
|
+
module InterfaceBuilder
|
2
|
+
class ViewBuilder
|
3
|
+
def self.generate_helper_methods methods
|
4
|
+
methods.each do |folder, templates|
|
5
|
+
templates.each do |template|
|
6
|
+
code = <<END\
|
7
|
+
def #{template} *args, &block
|
8
|
+
render_haml_builder "#{folder}", "#{template}", *args, &block
|
9
|
+
end
|
10
|
+
END
|
11
|
+
|
12
|
+
eval code, binding, __FILE__, __LINE__
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
|
17
|
+
|
18
|
+
attr_reader :template
|
19
|
+
def initialize template
|
20
|
+
@template = template
|
21
|
+
end
|
22
|
+
|
23
|
+
|
24
|
+
#
|
25
|
+
# Template methods
|
26
|
+
#
|
27
|
+
PROXY_METHODS = %w{render themed_partial themed_resource content_for capture concat}
|
28
|
+
PROXY_METHODS.each do |m|
|
29
|
+
delegate m, :to => :template
|
30
|
+
end
|
31
|
+
|
32
|
+
|
33
|
+
#
|
34
|
+
# Builders
|
35
|
+
#
|
36
|
+
def options options = {}, &block
|
37
|
+
options.should! :be_a, Hash
|
38
|
+
block.should! :be_a, Proc
|
39
|
+
if block
|
40
|
+
b = HamlBuilder.new self.template
|
41
|
+
block.call b
|
42
|
+
options.merge b.get_value
|
43
|
+
else
|
44
|
+
options
|
45
|
+
end
|
46
|
+
end
|
47
|
+
|
48
|
+
#
|
49
|
+
# Forms
|
50
|
+
#
|
51
|
+
def form *args, &block
|
52
|
+
b = FormBuilders::ThemedFormTagBuilder.new self.template
|
53
|
+
|
54
|
+
options = {}.to_openobject
|
55
|
+
prepare_form! options, *args
|
56
|
+
|
57
|
+
concat render(:partial => themed_partial('forms/begin'), :object => options)
|
58
|
+
concat capture(b, &block)
|
59
|
+
concat render(:partial => themed_partial('forms/end'), :object => options)
|
60
|
+
end
|
61
|
+
|
62
|
+
def form_for(record_or_name_or_array, *args, &proc)
|
63
|
+
raise ArgumentError, "Missing block" unless block_given?
|
64
|
+
|
65
|
+
options = args.extract_options!
|
66
|
+
|
67
|
+
case record_or_name_or_array
|
68
|
+
when String, Symbol
|
69
|
+
object_name = record_or_name_or_array
|
70
|
+
object = instance_variable_get "@#{record_or_name_or_array}"
|
71
|
+
when Array
|
72
|
+
object = record_or_name_or_array.last
|
73
|
+
object_name = ActionController::RecordIdentifier.singular_class_name(object)
|
74
|
+
self.template.apply_form_for_options!(record_or_name_or_array, options)
|
75
|
+
args.unshift object
|
76
|
+
else
|
77
|
+
object = record_or_name_or_array
|
78
|
+
object_name = ActionController::RecordIdentifier.singular_class_name(object)
|
79
|
+
self.template.apply_form_for_options!([object], options)
|
80
|
+
args.unshift object
|
81
|
+
end
|
82
|
+
|
83
|
+
# Rendering Form
|
84
|
+
renderer_options = {}.to_openobject
|
85
|
+
prepare_form! renderer_options, options.delete(:url) || {}, options.delete(:html) || {}
|
86
|
+
|
87
|
+
concat render(:partial => themed_partial('forms/begin'), :object => renderer_options)
|
88
|
+
|
89
|
+
options[:builder] = FormBuilders::ThemedFormBuilder
|
90
|
+
self.template.fields_for(object_name, *(args << options), &proc)
|
91
|
+
|
92
|
+
concat render(:partial => themed_partial('forms/end'), :object => renderer_options)
|
93
|
+
end
|
94
|
+
|
95
|
+
|
96
|
+
private
|
97
|
+
def render_haml_builder folder, template, *args, &block
|
98
|
+
opt = args.extract_options!
|
99
|
+
args.size.should! :be_in, 0..1
|
100
|
+
opt[:content] = args.first if args.size == 1
|
101
|
+
|
102
|
+
if block
|
103
|
+
if block.arity <= 0
|
104
|
+
opt[:content] ||= self.template.capture &block
|
105
|
+
else
|
106
|
+
b = HamlBuilder.new self.template
|
107
|
+
block.call b
|
108
|
+
opt = opt.merge b.get_value
|
109
|
+
end
|
110
|
+
end
|
111
|
+
|
112
|
+
opt = opt.to_openobject
|
113
|
+
html = render :partial => themed_partial("#{folder}/#{template}"), :object => opt
|
114
|
+
|
115
|
+
block ? self.concat(html) : html
|
116
|
+
end
|
117
|
+
|
118
|
+
def prepare_form! options, *args
|
119
|
+
buff = template.form_tag *args
|
120
|
+
options[:begin] = buff
|
121
|
+
options[:end] = '</form>'
|
122
|
+
end
|
123
|
+
end
|
124
|
+
end
|
@@ -0,0 +1,23 @@
|
|
1
|
+
module InterfaceBuilder
|
2
|
+
module ViewHelper
|
3
|
+
#
|
4
|
+
# Basic
|
5
|
+
#
|
6
|
+
def b
|
7
|
+
@b ||= InterfaceBuilder::ViewBuilder.new self
|
8
|
+
end
|
9
|
+
alias_method :builder, :b
|
10
|
+
|
11
|
+
def themed_partial partial
|
12
|
+
raise "Theme not set!" unless @theme
|
13
|
+
"/themes/#{@theme}/#{partial}_t"
|
14
|
+
end
|
15
|
+
|
16
|
+
def themed_resource resource
|
17
|
+
raise "Theme not set!" unless @theme
|
18
|
+
"/interface_builder/themes/#{@theme}/#{resource}"
|
19
|
+
end
|
20
|
+
|
21
|
+
|
22
|
+
end
|
23
|
+
end
|
@@ -0,0 +1,12 @@
|
|
1
|
+
require 'interface_builder/haml_builder'
|
2
|
+
require 'interface_builder/model_stub'
|
3
|
+
require 'interface_builder/view_helper'
|
4
|
+
require 'interface_builder/support'
|
5
|
+
|
6
|
+
ActionController::Base.class_eval do
|
7
|
+
helper InterfaceBuilder::ViewHelper
|
8
|
+
end
|
9
|
+
|
10
|
+
ActionView::Base.field_error_proc = lambda do |html_tag, instance|
|
11
|
+
html_tag
|
12
|
+
end
|
@@ -9,4 +9,24 @@ Mongo::ObjectID.class_eval do
|
|
9
9
|
def to_yaml *args
|
10
10
|
to_s.to_yaml *args
|
11
11
|
end
|
12
|
-
end
|
12
|
+
end
|
13
|
+
|
14
|
+
|
15
|
+
#
|
16
|
+
# Fixes
|
17
|
+
#
|
18
|
+
if Object.const_defined?(:RAILS_ENV) and Object.const_get(:RAILS_ENV) != 'production'
|
19
|
+
MongoMapper::Document::ClassMethods.class_eval do
|
20
|
+
def ensure_index(name_or_array, options={})
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
|
26
|
+
MongoMapper::Plugins::Associations::InArrayProxy.class_eval do
|
27
|
+
def delete(doc)
|
28
|
+
ids.delete(doc.id)
|
29
|
+
klass.delete(doc.id)
|
30
|
+
reset
|
31
|
+
end
|
32
|
+
end
|
@@ -1,22 +1,10 @@
|
|
1
|
-
# TODO3 Move all this app_specific stuff to sm_commons
|
2
|
-
|
3
1
|
#
|
4
2
|
# HTML helpers
|
5
3
|
#
|
6
4
|
[MongoMapper::EmbeddedDocument::InstanceMethods, MongoMapper::Document::InstanceMethods].each do |aclass|
|
7
5
|
aclass.class_eval do
|
8
|
-
def original_id; id end
|
9
|
-
|
10
6
|
def dom_id
|
11
|
-
new_record? ? "new_#{self.class.original_class.name.underscore}" :
|
7
|
+
new_record? ? "new_#{self.class.original_class.name.underscore}" : to_param
|
12
8
|
end
|
13
|
-
|
14
|
-
def to_param; original_id.to_s end
|
15
|
-
end
|
16
|
-
end
|
17
|
-
|
18
|
-
[MongoMapper::EmbeddedDocument::ClassMethods, MongoMapper::Document::ClassMethods].each do |aclass|
|
19
|
-
aclass.class_eval do
|
20
|
-
def original_class; self end
|
21
9
|
end
|
22
10
|
end
|
@@ -53,7 +53,7 @@ ActionController::Base.class_eval do
|
|
53
53
|
rescue UserError => e
|
54
54
|
flash[:error] = e.message
|
55
55
|
do_not_persist_params do
|
56
|
-
if request.xhr?
|
56
|
+
if request.xhr? or request.format == 'js'
|
57
57
|
render :inline => "", :layout => 'application'
|
58
58
|
else
|
59
59
|
redirect_to default_path
|
@@ -66,7 +66,7 @@ ActionController::Base.class_eval do
|
|
66
66
|
class << self
|
67
67
|
def prepare_model aclass, opt = {}
|
68
68
|
id = opt.delete(:id) || :id
|
69
|
-
variable = opt.delete(:variable) || aclass.
|
69
|
+
variable = opt.delete(:variable) || aclass.model_name.underscore
|
70
70
|
finder = opt.delete(:finder) || :find!
|
71
71
|
|
72
72
|
method = "prepare_#{variable}"
|
@@ -0,0 +1,13 @@
|
|
1
|
+
# Usage: ActionView::Template.register_template_handler :rb, RubyTemplate
|
2
|
+
|
3
|
+
class RubyTemplate < ActionView::TemplateHandler
|
4
|
+
include ActionView::TemplateHandlers::Compilable
|
5
|
+
|
6
|
+
def compile(template)
|
7
|
+
# "_set_controller_content_type(Mime::XML);" +
|
8
|
+
# "xml = ::Builder::XmlMarkup.new(:indent => 2);" +
|
9
|
+
# "self.output_buffer = xml.target!;" +
|
10
|
+
"self.output_buffer = '';\n" + template.source
|
11
|
+
# ";xml.target!;"
|
12
|
+
end
|
13
|
+
end
|
@@ -1,7 +1,7 @@
|
|
1
1
|
ActionController::Base.send :class_eval do
|
2
2
|
protected
|
3
3
|
def redirect_to_with_ajax *args
|
4
|
-
if request.xhr?
|
4
|
+
if request.xhr? or request.format == 'js'
|
5
5
|
preserve_flash_for_ajax_page_update
|
6
6
|
render :inline => "window.location = '#{url_for *args}';", :layout => 'application'
|
7
7
|
else
|
@@ -5,7 +5,7 @@ ActionController::Base.class_eval do
|
|
5
5
|
|
6
6
|
def defer_static_scripts
|
7
7
|
Thread.current[:deferred_static_scripts_called] = false
|
8
|
-
Thread.current[:defer_static_scripts] = request.xhr? ? false : true
|
8
|
+
Thread.current[:defer_static_scripts] = (request.xhr? or request.format == 'js') ? false : true
|
9
9
|
end
|
10
10
|
|
11
11
|
def self.defer_static_scripts?
|
@@ -10,7 +10,15 @@ railsExt = 'defined';
|
|
10
10
|
//
|
11
11
|
// JavaScript Extension
|
12
12
|
//
|
13
|
-
|
13
|
+
String.prototype.blank = function() {
|
14
|
+
return this.replace(/[\s\n\r]+/, '').length == 0;
|
15
|
+
};
|
16
|
+
|
17
|
+
String.prototype.size = function() {
|
18
|
+
return this.length;
|
19
|
+
};
|
20
|
+
|
21
|
+
Array.prototype.size = function() {
|
14
22
|
return this.length;
|
15
23
|
};
|
16
24
|
|
@@ -45,9 +53,7 @@ decode_uri = function(uri){
|
|
45
53
|
//
|
46
54
|
$.extend({
|
47
55
|
infoMessage: function(message){
|
48
|
-
|
49
|
-
this.jGrowl(message);
|
50
|
-
}catch(e){console.log(e)};
|
56
|
+
log(message);
|
51
57
|
},
|
52
58
|
|
53
59
|
message: function(msg){
|
@@ -55,9 +61,7 @@ $.extend({
|
|
55
61
|
},
|
56
62
|
|
57
63
|
errorMessage: function(message){
|
58
|
-
|
59
|
-
this.jGrowl(message);
|
60
|
-
}catch(e){console.log(e)};
|
64
|
+
log(message);
|
61
65
|
},
|
62
66
|
|
63
67
|
checkForMessages: function(json){
|
metadata
CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
|
|
5
5
|
segments:
|
6
6
|
- 0
|
7
7
|
- 3
|
8
|
-
-
|
9
|
-
version: 0.3.
|
8
|
+
- 3
|
9
|
+
version: 0.3.3
|
10
10
|
platform: ruby
|
11
11
|
authors:
|
12
12
|
- Alexey Petrushin
|
@@ -14,7 +14,7 @@ autorequire:
|
|
14
14
|
bindir: bin
|
15
15
|
cert_chain: []
|
16
16
|
|
17
|
-
date: 2010-03-
|
17
|
+
date: 2010-03-23 00:00:00 +03:00
|
18
18
|
default_executable:
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|
@@ -72,6 +72,7 @@ files:
|
|
72
72
|
- .git/objects/06/c3225bad9d5b80e7b3bde79ff3c2da591722bf
|
73
73
|
- .git/objects/07/9ef6b10f536af792f4cf5d131857baa28751e7
|
74
74
|
- .git/objects/07/f7d26527e58caa2fa99e33b29a7791b9eb8b3e
|
75
|
+
- .git/objects/08/657a1cfcf74f1f82d863b1c8ca6e9a3e94cc61
|
75
76
|
- .git/objects/08/bba6f68e3626f05fcfa8bcd10714aac9943407
|
76
77
|
- .git/objects/08/f5dafa9123b7f8d1f22a796c4cba4a4063ad0d
|
77
78
|
- .git/objects/09/20505d42c0044b31ff7b1f86cec6e282e13414
|
@@ -94,6 +95,7 @@ files:
|
|
94
95
|
- .git/objects/15/3f845625a0f605a2a35487a32038d0349bc386
|
95
96
|
- .git/objects/15/6d9fb4d4fd605969b37fea59e57eb486d8d06f
|
96
97
|
- .git/objects/15/8eef048d128710bfc0cb60114f7405e45f9b6c
|
98
|
+
- .git/objects/15/c705282abf9721abc4c22a4ce09c3c76bcb73f
|
97
99
|
- .git/objects/16/6669449bd995b6e4901192beba9aea138415f5
|
98
100
|
- .git/objects/18/17673317d63a90369c9f7abdc6f0113f42050f
|
99
101
|
- .git/objects/18/71ebea5ace362756ec45cff59a336df5d50725
|
@@ -123,10 +125,12 @@ files:
|
|
123
125
|
- .git/objects/27/37bd94ff477fad57bb86f0a3e37110f6a75cb5
|
124
126
|
- .git/objects/27/c51d8db9f25b7b6596dceb626252c90fd26b57
|
125
127
|
- .git/objects/27/f8a63386b8acf5edba3ed9334644455045acd8
|
128
|
+
- .git/objects/28/0d2d83eb4aa5fb48fefa1a8ceab6761cd9288d
|
126
129
|
- .git/objects/28/8e20f19c6662b1425e0a0797ae443f7eddcc4a
|
127
130
|
- .git/objects/28/c44da9255a78bf7105a1c251e4e1cd643b8f44
|
128
131
|
- .git/objects/29/7a2c413b11f78b69dd8caa4f334c9536088f8a
|
129
132
|
- .git/objects/29/7c96daf8c38bcdac8a51f3c377ed789aa7afcd
|
133
|
+
- .git/objects/29/9206b7fd6e97e56652dc1514355815c74573d9
|
130
134
|
- .git/objects/29/b1f8abaed4aea1da8f8bd5f1bd81c26058c41a
|
131
135
|
- .git/objects/2a/04524c8458b2d0cd9bcec579f9d54368a9d35f
|
132
136
|
- .git/objects/2a/0ababefe6746dc4b945e3054349c31dcdd816c
|
@@ -143,15 +147,19 @@ files:
|
|
143
147
|
- .git/objects/33/9755448515fb77f691d6197bd65d5b5d53fc24
|
144
148
|
- .git/objects/34/e6093e9cd6ecc08b1a1834418e83bb277e8887
|
145
149
|
- .git/objects/35/a5ef969e9dd65a06260954e2b66f7a7f107568
|
150
|
+
- .git/objects/35/d78424bc393bb5acc12c52c031129aa3ceb8c5
|
146
151
|
- .git/objects/36/66d56066f3aeb0f9fc342de42f25e298341a61
|
147
152
|
- .git/objects/36/9902ca51d5820a02ccccbf1cac6ed09051941d
|
148
153
|
- .git/objects/36/c16174f65a0fc67c520aa36225d3e8c7a05775
|
154
|
+
- .git/objects/36/c7ec2150ecaa7af94d9556c218f723a2eff0e1
|
149
155
|
- .git/objects/38/fa364fa8743e78ec0fec702b9df1764b42ffc9
|
150
156
|
- .git/objects/3a/03b9d44de43472689300120ffb2a0a9a74f27f
|
151
157
|
- .git/objects/3a/797683953be7e6d0ffa0e34514f3e8e9c3ceb0
|
152
158
|
- .git/objects/3a/9e689945632d5c0a5e2c99096a2c66d79b17dc
|
153
159
|
- .git/objects/3a/ff2a7bfdf3a677812899ede62d084369c7c5f4
|
160
|
+
- .git/objects/3b/354d07a5bb5780eeffa4c12968214b1edb8b24
|
154
161
|
- .git/objects/3d/5b84167d35cb75647f38a6d475a452ba3c6178
|
162
|
+
- .git/objects/3d/ce52a15f01f1a8f99e65d148341bea71065129
|
155
163
|
- .git/objects/3e/c0da65fe2e572ad31203f9412baa09dfdf49d3
|
156
164
|
- .git/objects/3e/f23cf310c5eebac930a19d36a0561dd362d3ee
|
157
165
|
- .git/objects/3f/3db6bb5a5204ae58e303959c4c0da3a70d8b35
|
@@ -163,6 +171,8 @@ files:
|
|
163
171
|
- .git/objects/46/3353505eed0c799d05f025788437decbabafec
|
164
172
|
- .git/objects/46/d12e0420cd6341a2720730cc45703fc835efb6
|
165
173
|
- .git/objects/47/28fde4426b545c73552bd5e0f79296a2b4be19
|
174
|
+
- .git/objects/47/468bfa5f120e264ca0217c72702928dbf01511
|
175
|
+
- .git/objects/47/4f3074d7b1360f1897d62dd54444f70e645f1e
|
166
176
|
- .git/objects/47/afb623cc9949394fc403bc977671307c1a9eda
|
167
177
|
- .git/objects/48/0602886685e84f2a257eb8e95acfc8af1166b6
|
168
178
|
- .git/objects/49/66cd792ea3e03d5091aa7a332f2a082e479a76
|
@@ -200,6 +210,7 @@ files:
|
|
200
210
|
- .git/objects/5c/95be85f2a2a984454fed4941a5ae00062634c5
|
201
211
|
- .git/objects/5c/d7e89f2b29ed92fd51e2c6b2ee74db376d17d7
|
202
212
|
- .git/objects/5f/483b0c41645f8882f549c1c6d0274bb592140a
|
213
|
+
- .git/objects/60/a42d757f842f6ce1a27284630ffd3deb867857
|
203
214
|
- .git/objects/60/a681e873ca0ae0b7da3f37dbc5701f6e42b970
|
204
215
|
- .git/objects/61/16fb26eb219d3ac6926221d57a0342aa2a8d56
|
205
216
|
- .git/objects/61/32f3f8005ce5b88165162ac5542e54d0472a82
|
@@ -209,6 +220,7 @@ files:
|
|
209
220
|
- .git/objects/64/96d7c4cc0c824e706bf757f9ec63b5553c9caf
|
210
221
|
- .git/objects/65/51094fa3b996ff25b88d7ddb21d21a811d53fc
|
211
222
|
- .git/objects/65/e77ca17328dfeb3477287af40fb834284c8f61
|
223
|
+
- .git/objects/65/eb5981a1bac28b5f171c36dfbfeaae3e985a50
|
212
224
|
- .git/objects/66/37f98202acb1895cb347d7c5fb5c414dd9e6db
|
213
225
|
- .git/objects/66/95d9ac4648cdadd9922d3b355a1d6f56547f4c
|
214
226
|
- .git/objects/67/2396778b142df8b0b7ab212b7564039c48cf39
|
@@ -222,12 +234,16 @@ files:
|
|
222
234
|
- .git/objects/6a/90d6784ac3b6580ef470dac68c2d93c276d6a7
|
223
235
|
- .git/objects/6a/cdfb69624140a67634b65ab8230cc5e0ffd543
|
224
236
|
- .git/objects/6b/779e60dfa44ba3daa26badf65b3422f30c7b9b
|
237
|
+
- .git/objects/6c/699c7999faa02e17f5e19d2598b0fd98b3e553
|
225
238
|
- .git/objects/6c/e5f7ee8ecbaa20a264bb2f2fb2fd821b5ad478
|
226
239
|
- .git/objects/6d/6bfb690cccf36d947eaafd79a19b0974afb65a
|
227
240
|
- .git/objects/6d/85efe0589aa745a632d38314b7b5902a8874c0
|
228
241
|
- .git/objects/6d/f725e3519872a75bc763045f00d8844eb890cf
|
242
|
+
- .git/objects/6e/5b3a02689a2990455d28c514d8e2885d004fdb
|
229
243
|
- .git/objects/6e/a04c6c0a52b9c7da1de6364b530553dfd78c4a
|
244
|
+
- .git/objects/6e/b67e3ad9f44898acced6d861f9743dad07e49c
|
230
245
|
- .git/objects/6f/72c276ac50a5731aa5f7e7e01dd2793113fe5b
|
246
|
+
- .git/objects/6f/8c62387c94fbb7639a1c1f25df92cab15d2154
|
231
247
|
- .git/objects/71/e6b43e9d41f9903992fd86d483b7d3e4dd28cd
|
232
248
|
- .git/objects/72/48b407130933dbd9ce022836876a906f80cf02
|
233
249
|
- .git/objects/72/4e5bdf19f7d485735b9eb8019d21aa63dcebd5
|
@@ -242,8 +258,10 @@ files:
|
|
242
258
|
- .git/objects/77/6e03ab9139aab1e0e8d551a75c3c0145fd9322
|
243
259
|
- .git/objects/78/dfe98fd2685e6fd0b937d866e5dfb1c83ae589
|
244
260
|
- .git/objects/79/0a80b72f6f6f214ece6a3e71e818effc5c9e6e
|
261
|
+
- .git/objects/79/4750e930e297c9616e902898f684967c2760c7
|
245
262
|
- .git/objects/79/f570c126c66576fc1a5eaa52f003cf1b24e0d2
|
246
263
|
- .git/objects/7a/d62f1e2a8e4af39d293ce70c5dca999263ab4e
|
264
|
+
- .git/objects/7b/f12fa27542b09a968ac9b1ceedc1a71bfd6ce8
|
247
265
|
- .git/objects/7c/d6496ed2dbb6dc550d2080954a5485bff16e7f
|
248
266
|
- .git/objects/7d/156826045e2eef7611f3fcad3adee9c17c2c02
|
249
267
|
- .git/objects/7d/6cd855bdf8661fab653f9f2de1195a6552e458
|
@@ -282,12 +300,15 @@ files:
|
|
282
300
|
- .git/objects/94/72f3ac9e890231482aadd774bdc1c9ba742497
|
283
301
|
- .git/objects/94/afd196cc89d60f0a06d4cad619eaa79921a9ae
|
284
302
|
- .git/objects/95/a9d4abd8363e64d221e0f7d47ae69cb055ea7b
|
303
|
+
- .git/objects/96/47afbafd293f6994316b2cc0d3e813c1878f87
|
285
304
|
- .git/objects/96/48a1590ab953b7ec3bc9d06e460c0004962b77
|
286
305
|
- .git/objects/96/c46be4221984fcf1807c17d16d63abb7f2ad39
|
287
306
|
- .git/objects/97/5b5b662b4c712668b3fe5dfe917000338e6b3e
|
288
307
|
- .git/objects/98/6915a151ae2adb8f8e81e11038f7a1ca731bbc
|
308
|
+
- .git/objects/98/8bfa77097695a4771be8e01d0aabd1a01c62fa
|
289
309
|
- .git/objects/99/8afa58b56034f5458b4aef2b8255daa53a5bb1
|
290
310
|
- .git/objects/99/a23df6dd9c448928b25f2e749871c6fc696a32
|
311
|
+
- .git/objects/9b/11e8efda3f1354c0076a4f102fb38430f4b3b2
|
291
312
|
- .git/objects/9b/a1a0e6e5050444fc8743a18341ae219c54aa9b
|
292
313
|
- .git/objects/9c/20b1616810e3d1d5951ea6251ff2d28322dc16
|
293
314
|
- .git/objects/9d/9f28ff50236f1e7f78cbd17b8aa25a0bf8b6fc
|
@@ -304,13 +325,16 @@ files:
|
|
304
325
|
- .git/objects/a3/84715546f6a11dc7d56a32784dbdd5d7d92e8e
|
305
326
|
- .git/objects/a4/c75ead5dcfe97a67d302464584be205e8c48b1
|
306
327
|
- .git/objects/a5/4db1bec30f7dc8981c4d5ccf9c9a90c1e13662
|
328
|
+
- .git/objects/a5/601da690031d212d8325b0c23655c6f1f24dcc
|
307
329
|
- .git/objects/a5/9472e8ecb5d06647adeec11ae931b956508191
|
308
330
|
- .git/objects/a6/438da91846df9ac940b59f6d11d5019a5580be
|
309
331
|
- .git/objects/a7/6c4944dc009628cb65b4962464a8eb484d6a71
|
310
332
|
- .git/objects/a7/a902aeac4af3f10b474c23c2a3750fde007a02
|
311
333
|
- .git/objects/a9/d2b84a743094002fef87a193e681ee721d76ed
|
334
|
+
- .git/objects/aa/b7becd23c1123ec701737ae5329314aea3124f
|
312
335
|
- .git/objects/ab/6b7d6c5c5fee246e184a58448682b73b574d6b
|
313
336
|
- .git/objects/ab/825cde00e626431c6045e6886d470327c63001
|
337
|
+
- .git/objects/ab/d27aa19a08f7a172d66da7ab0125838c09317e
|
314
338
|
- .git/objects/ac/92bcf6c74d23824c3c7ce341f667507592c7f9
|
315
339
|
- .git/objects/ac/a1ad63cec98e0b3dae23fbe088f5a5d2125a7a
|
316
340
|
- .git/objects/ac/df4d7cb89a31894b95d8c107a4824f84c6cf55
|
@@ -335,6 +359,7 @@ files:
|
|
335
359
|
- .git/objects/b8/aaaf4949881600102a72a60f17fd58918dbd7b
|
336
360
|
- .git/objects/b8/efcaff7f11cc584ac44303449d96592853c528
|
337
361
|
- .git/objects/b9/ecca04b12de69ffab2cc5d22cb52d5babef24f
|
362
|
+
- .git/objects/ba/2a392e35a7626a7477d1770b00cc2704916a7e
|
338
363
|
- .git/objects/ba/67eef0f58a44e4b39af605d45e1e958023588d
|
339
364
|
- .git/objects/bb/05a580a8afe6e3078b8e6ec4cda41fdc266f5d
|
340
365
|
- .git/objects/bb/23236d2e8340087cc495c66310e6eb90d6fe0a
|
@@ -342,6 +367,7 @@ files:
|
|
342
367
|
- .git/objects/bd/2534abb8cf454ca08872a72624a794a367bf53
|
343
368
|
- .git/objects/bd/eab0ec8a914cdd8c9341340191c116a4bf2d3e
|
344
369
|
- .git/objects/be/29c116694d85d48cf177cf30816aa159189536
|
370
|
+
- .git/objects/be/4935dda5362a24e6fae89d4cd8f3cb2d302d01
|
345
371
|
- .git/objects/c0/22e88f31b91cecfc45b1bae611c27f5b12ca15
|
346
372
|
- .git/objects/c0/724bc45e241d336d6376f14d9b258c2e4744d4
|
347
373
|
- .git/objects/c1/3cf3c2ea85ec40544fe31702b2cfe6091aed6e
|
@@ -350,6 +376,7 @@ files:
|
|
350
376
|
- .git/objects/c3/20b469c3e447a63e887cefac9c3b5c2b1fb304
|
351
377
|
- .git/objects/c3/dd5ae1e005efb09ef758da1ec17781c616ae9d
|
352
378
|
- .git/objects/c4/524d9d99c6072949bfc565f78b7a62577ffa3f
|
379
|
+
- .git/objects/c4/7ead0b6604e6627e887f2f2e8909a8b409ae5a
|
353
380
|
- .git/objects/c5/208dea612df35fb84ceeda0649c103c32e2240
|
354
381
|
- .git/objects/c5/3b27c9641ea1c2aed192672b67ba8c4034b2ad
|
355
382
|
- .git/objects/c5/64ac68ebc8e0db7a6355a45f3299829ef2a825
|
@@ -362,6 +389,7 @@ files:
|
|
362
389
|
- .git/objects/c8/e50fcfb3ed2c892a6c75e8d703552bb8edd4ca
|
363
390
|
- .git/objects/ca/a9edd4de82aa3abec99946e92da9225efb83bc
|
364
391
|
- .git/objects/ca/c13b06411cdb70ac35d51ecf9efb0907645bd1
|
392
|
+
- .git/objects/cb/52d0a9c9540d1d9aba011e8445d57236dafb74
|
365
393
|
- .git/objects/cc/631f0ac75233f9984bbe8fadc701c3275edc20
|
366
394
|
- .git/objects/cd/cf979816bbea77b6000145a1e23921553bf497
|
367
395
|
- .git/objects/ce/558ace2912de6c83d5d7e9d49f3606af6babcf
|
@@ -374,8 +402,10 @@ files:
|
|
374
402
|
- .git/objects/d2/85be6e2891e063625d4904c9bcca42bf6f0b83
|
375
403
|
- .git/objects/d3/090290f6f317ca51efd4d2913bc079ba115078
|
376
404
|
- .git/objects/d4/1e2336bcd3ce3d09a9fa6c3af3270c29bd8457
|
405
|
+
- .git/objects/d5/7224732596609c1852e96d45130893eff75f13
|
377
406
|
- .git/objects/d5/86dc7698c6ec37db86e9f36a16bd671e0005ab
|
378
407
|
- .git/objects/d5/a2b441718a88aa08fa937352a6d80319bc91c0
|
408
|
+
- .git/objects/d6/c2636aa2b5da4a6b06dd824bd0e9a82c5765a4
|
379
409
|
- .git/objects/d6/e44f1054d3df4f8dc087d28b0eb306d54d8627
|
380
410
|
- .git/objects/d6/ff7949e59f44649d35e95ed0240ead0ce94077
|
381
411
|
- .git/objects/d7/a33fe1ff44a661941d742270c3299a862689ca
|
@@ -394,6 +424,7 @@ files:
|
|
394
424
|
- .git/objects/df/f63029f32b25c2bf18d0f3f4e7907daa7c1bca
|
395
425
|
- .git/objects/e0/444cc3908c5096319636ca42c403a78deda3f9
|
396
426
|
- .git/objects/e0/d8e7ab5a565d95d44f2a9a6246be6003a3de7b
|
427
|
+
- .git/objects/e1/323977dc6cda25967e6ec6166430c2c0f08e32
|
397
428
|
- .git/objects/e2/bc2615d3aa154bba2897c562a15ed19136d518
|
398
429
|
- .git/objects/e2/c37248908c561be703c405e237fbf0c743977a
|
399
430
|
- .git/objects/e3/771a0d9f7b7be0df4f1ad709b7d6e0fe6536a9
|
@@ -425,6 +456,7 @@ files:
|
|
425
456
|
- .git/objects/f0/cc5fe16472186b3920fefdd8e1e3ca0715ca7e
|
426
457
|
- .git/objects/f1/9154fc5093f2fd56f2660f386975b2a79be76f
|
427
458
|
- .git/objects/f2/196f15b2d432b2a2d641aed4ae5afe7190edb9
|
459
|
+
- .git/objects/f2/1aa127d1512cc6c8e46bf4f680a71277db8896
|
428
460
|
- .git/objects/f2/474d9a4174ecfa5d43a77cd7ba6063935eb335
|
429
461
|
- .git/objects/f2/efda050bcf5d33d3f8e8fb2848b0be926c1731
|
430
462
|
- .git/objects/f3/3573a82a9e7dbf9bc7f5b3feded4c223701d1f
|
@@ -436,6 +468,7 @@ files:
|
|
436
468
|
- .git/objects/f6/0fd8c2582e0f7688877f12f78ddb97a291046c
|
437
469
|
- .git/objects/f6/3ad03a8daa1602df63aab3838947c18fa63797
|
438
470
|
- .git/objects/f6/b9bcda0a6940c634c0ac0d6ac626028927e1da
|
471
|
+
- .git/objects/f7/32b167a61d8db0328f0196af00b55147ebf756
|
439
472
|
- .git/objects/f7/b177b2c6b25dd886d23d6be87bcf802af9b513
|
440
473
|
- .git/objects/f9/8d0f95460a7a3f63ab4c08ad5508fd32d1b5c2
|
441
474
|
- .git/objects/f9/cf98993bf7067d5b45b0f06dc36fdedba5ffcf
|
@@ -458,6 +491,15 @@ files:
|
|
458
491
|
- .git/refs/heads/master
|
459
492
|
- .git/refs/remotes/origin/HEAD
|
460
493
|
- .git/refs/remotes/origin/master
|
494
|
+
- lib/interface_builder/form_builders/abstract_form_builder.rb
|
495
|
+
- lib/interface_builder/form_builders/themed_form_builder.rb
|
496
|
+
- lib/interface_builder/form_builders/themed_form_tag_builder.rb
|
497
|
+
- lib/interface_builder/haml_builder.rb
|
498
|
+
- lib/interface_builder/model_stub.rb
|
499
|
+
- lib/interface_builder/support.rb
|
500
|
+
- lib/interface_builder/view_builder.rb
|
501
|
+
- lib/interface_builder/view_helper.rb
|
502
|
+
- lib/interface_builder.rb
|
461
503
|
- lib/mongo_mapper_ext/db_config.rb
|
462
504
|
- lib/mongo_mapper_ext/fixes.rb
|
463
505
|
- lib/mongo_mapper_ext/migration.rake
|
@@ -476,6 +518,7 @@ files:
|
|
476
518
|
- lib/rails_ext/action_controller/reload_page.rb
|
477
519
|
- lib/rails_ext/action_controller.rb
|
478
520
|
- lib/rails_ext/action_view/common_helper.rb
|
521
|
+
- lib/rails_ext/action_view/ruby_template.rb
|
479
522
|
- lib/rails_ext/action_view.rb
|
480
523
|
- lib/rails_ext/active_record/merge_default_scope/hash_poser.rb
|
481
524
|
- lib/rails_ext/active_record/merge_default_scope.rb
|