innetra-easy_generators 1.1

Sign up to get free protection for your applications and to get access to all the features.
data/Manifest ADDED
@@ -0,0 +1,12 @@
1
+ Manifest
2
+ generators/easy_layout/templates/stylesheets/sass/application.sass
3
+ generators/easy_layout/templates/helpers/layout_helper.rb
4
+ generators/easy_layout/templates/helpers/shadowbox_helper.rb
5
+ generators/easy_layout/templates/images/body_bg.svg
6
+ generators/easy_layout/templates/images/body_bg.png
7
+ generators/easy_layout/templates/config/initializers/rails_teaks.rb
8
+ generators/easy_layout/templates/layouts/application.haml
9
+ generators/easy_layout/easy_layout_generator.rb
10
+ README.rdoc
11
+ Rakefile
12
+ lib/easy_generators.rb
data/README.rdoc ADDED
@@ -0,0 +1,41 @@
1
+ = Rails Generators
2
+
3
+ A collection for generators for Ruby on Rails
4
+
5
+ == Requirements
6
+
7
+ EasyNavigtion gem (http://github.com/innetra/easy_navigation/tree/master)
8
+
9
+ == Install
10
+
11
+ gem sources -a http://gems.github.com
12
+ sudo gem install innetra-easy_generators
13
+
14
+ == Usage
15
+
16
+ This gem is intended to be used with our base_template (http://gist.github.com/105548)
17
+
18
+ rails -m http://gist.github.com/105548.txt your_app_name
19
+
20
+ == License
21
+
22
+ Copyright (c) 2008 Innetra Consultancy Services, S.C.
23
+
24
+ Permission is hereby granted, free of charge, to any person obtaining
25
+ a copy of this software and associated documentation files (the
26
+ "Software"), to deal in the Software without restriction, including
27
+ without limitation the rights to use, copy, modify, merge, publish,
28
+ distribute, sublicense, and/or sell copies of the Software, and to
29
+ permit persons to whom the Software is furnished to do so, subject to
30
+ the following conditions:
31
+
32
+ The above copyright notice and this permission notice shall be
33
+ included in all copies or substantial portions of the Software.
34
+
35
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
36
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
37
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
38
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
39
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
40
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
41
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/Rakefile ADDED
@@ -0,0 +1,12 @@
1
+ require 'rubygems'
2
+ require 'rake'
3
+ require 'echoe'
4
+
5
+ Echoe.new('easy_generators', '1.1') do |e|
6
+ e.description = "Easy Generators for Rails"
7
+ e.url = "http://github.com/innetra/haml_layout"
8
+ e.author = "Ivan Torres"
9
+ e.email = "mexpolk@gmail.com"
10
+ e.ignore_pattern = ["tmp/*", "script/*"]
11
+ e.development_dependencies = []
12
+ end
@@ -0,0 +1,31 @@
1
+ # -*- encoding: utf-8 -*-
2
+
3
+ Gem::Specification.new do |s|
4
+ s.name = %q{easy_generators}
5
+ s.version = "1.1"
6
+
7
+ s.required_rubygems_version = Gem::Requirement.new(">= 1.2") if s.respond_to? :required_rubygems_version=
8
+ s.authors = ["Ivan Torres"]
9
+ s.date = %q{2009-05-14}
10
+ s.description = %q{Easy Generators for Rails}
11
+ s.email = %q{mexpolk@gmail.com}
12
+ s.extra_rdoc_files = ["README.rdoc", "lib/easy_generators.rb"]
13
+ s.files = ["Manifest", "generators/easy_layout/templates/stylesheets/sass/application.sass", "generators/easy_layout/templates/helpers/layout_helper.rb", "generators/easy_layout/templates/helpers/shadowbox_helper.rb", "generators/easy_layout/templates/images/body_bg.svg", "generators/easy_layout/templates/images/body_bg.png", "generators/easy_layout/templates/config/initializers/rails_teaks.rb", "generators/easy_layout/templates/layouts/application.haml", "generators/easy_layout/easy_layout_generator.rb", "README.rdoc", "Rakefile", "lib/easy_generators.rb", "easy_generators.gemspec"]
14
+ s.has_rdoc = true
15
+ s.homepage = %q{http://github.com/innetra/haml_layout}
16
+ s.rdoc_options = ["--line-numbers", "--inline-source", "--title", "Easy_generators", "--main", "README.rdoc"]
17
+ s.require_paths = ["lib"]
18
+ s.rubyforge_project = %q{easy_generators}
19
+ s.rubygems_version = %q{1.3.2}
20
+ s.summary = %q{Easy Generators for Rails}
21
+
22
+ if s.respond_to? :specification_version then
23
+ current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
24
+ s.specification_version = 3
25
+
26
+ if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
27
+ else
28
+ end
29
+ else
30
+ end
31
+ end
@@ -0,0 +1,24 @@
1
+ class EasyLayoutGenerator < Rails::Generator::Base
2
+ def manifest
3
+ record do |m|
4
+
5
+ # CSS rules for EasyNavigation
6
+ m.directory("public/stylesheets/sass")
7
+ m.template "stylesheets/sass/application.sass", "public/stylesheets/sass/application.sass"
8
+
9
+ m.directory("public/images")
10
+ m.file "images/body_bg.png", "public/images/body_bg.png"
11
+
12
+ m.directory("app/helpers")
13
+ m.template "helpers/shadowbox_helper.rb", "app/helpers/shadowbox_helper.rb"
14
+ m.template "helpers/layout_helper.rb", "app/helpers/layout_helper.rb"
15
+
16
+ m.directory("app/views/layouts")
17
+ m.template "layouts/application.haml", "app/views/layouts/application.haml"
18
+
19
+ m.directory("config/initializers")
20
+ m.template "config/initializers/rails_teaks.rb", "config/initializers/rails_teaks.rb"
21
+
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,50 @@
1
+ ActionView::Base.field_error_proc = Proc.new do |html_tag, instance_tag|
2
+ "<span class='field_with_errors'>#{html_tag}</span>"
3
+ end
4
+
5
+ module ActionView::Helpers::ActiveRecordHelper
6
+ # Returns a string containing the error message attached to the +method+ on the +object+ if one exists.
7
+ # This error message is wrapped in a <tt>DIV</tt> tag, which can be extended to include a <tt>:prepend_text</tt>
8
+ # and/or <tt>:append_text</tt> (to properly explain the error), and a <tt>:css_class</tt> to style it
9
+ # accordingly. +object+ should either be the name of an instance variable or the actual object. The method can be
10
+ # passed in either as a string or a symbol.
11
+ # As an example, let's say you have a model <tt>@post</tt> that has an error message on the +title+ attribute:
12
+ #
13
+ # <%= error_message_on "post", "title" %>
14
+ # # => <div class="formError">can't be empty</div>
15
+ #
16
+ # <%= error_message_on @post, :title %>
17
+ # # => <div class="formError">can't be empty</div>
18
+ #
19
+ # <%= error_message_on "post", "title",
20
+ # :prepend_text => "Title simply ",
21
+ # :append_text => " (or it won't work).",
22
+ # :css_class => "inputError" %>
23
+ def error_message_on(object, method, *args)
24
+
25
+ options = args.extract_options!
26
+
27
+ unless args.empty?
28
+ ActiveSupport::Deprecation.warn('error_message_on takes an option hash instead of separate ' +
29
+ 'prepend_text, append_text, and css_class arguments', caller)
30
+
31
+ options[:prepend_text] = args[0] || ''
32
+ options[:append_text] = args[1] || ''
33
+ options[:css_class] = args[2] || 'form_error'
34
+ end
35
+
36
+ options.reverse_merge!(:prepend_text => '', :append_text => '', :css_class => 'form_error')
37
+
38
+ if (obj = (object.respond_to?(:errors) ? object : instance_variable_get("@#{object}"))) &&
39
+ (errors = obj.errors.on(method))
40
+ content_tag("span",
41
+ "#{options[:prepend_text]}#{ERB::Util.html_escape(errors.is_a?(Array) ? errors.first : errors)}#{options[:append_text]}",
42
+ :class => options[:css_class]
43
+ )
44
+ else
45
+ ''
46
+ end
47
+
48
+ end
49
+
50
+ end
@@ -0,0 +1,8 @@
1
+ module LayoutHelper
2
+
3
+ # Change browsers title
4
+ def title(page_title)
5
+ content_for(:title) { page_title }
6
+ end
7
+
8
+ end
@@ -0,0 +1,20 @@
1
+ module ShadowboxHelper
2
+ def shadowbox(id, options = {}, &block)
3
+ class_name = "container "
4
+ class_name << options[:class] if options.has_key?(:class)
5
+ concat content_tag(:div,
6
+ content_tag(:div,
7
+ content_tag(:div,
8
+ content_tag(:div,
9
+ capture(&block),
10
+ :class => class_name
11
+ ),
12
+ :class => "shadow2"
13
+ ),
14
+ :class => "shadow1"
15
+ ),
16
+ :id => id.downcase.strip.gsub(' ', '_'),
17
+ :class => "shadow"
18
+ )
19
+ end
20
+ end
@@ -0,0 +1,381 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <!-- Created with Inkscape (http://www.inkscape.org/) -->
3
+ <svg
4
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
5
+ xmlns:cc="http://creativecommons.org/ns#"
6
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
7
+ xmlns:svg="http://www.w3.org/2000/svg"
8
+ xmlns="http://www.w3.org/2000/svg"
9
+ xmlns:xlink="http://www.w3.org/1999/xlink"
10
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
11
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
12
+ width="744.09448819"
13
+ height="1052.3622047"
14
+ id="svg2"
15
+ sodipodi:version="0.32"
16
+ inkscape:version="0.46"
17
+ sodipodi:docname="codebase.svg"
18
+ inkscape:output_extension="org.inkscape.output.svg.inkscape">
19
+ <defs
20
+ id="defs4">
21
+ <linearGradient
22
+ id="linearGradient3316">
23
+ <stop
24
+ id="stop3318"
25
+ offset="0"
26
+ style="stop-color:#449cbe;stop-opacity:1;" />
27
+ <stop
28
+ id="stop3320"
29
+ offset="1"
30
+ style="stop-color:#257291;stop-opacity:1;" />
31
+ </linearGradient>
32
+ <linearGradient
33
+ id="linearGradient3304">
34
+ <stop
35
+ style="stop-color:#efefdf;stop-opacity:1;"
36
+ offset="0"
37
+ id="stop3306" />
38
+ <stop
39
+ style="stop-color:#ffffff;stop-opacity:1;"
40
+ offset="1"
41
+ id="stop3308" />
42
+ </linearGradient>
43
+ <linearGradient
44
+ id="linearGradient3189">
45
+ <stop
46
+ style="stop-color:#7397b5;stop-opacity:1;"
47
+ offset="0"
48
+ id="stop3191" />
49
+ <stop
50
+ style="stop-color:#3a566e;stop-opacity:1;"
51
+ offset="1"
52
+ id="stop3193" />
53
+ </linearGradient>
54
+ <inkscape:perspective
55
+ sodipodi:type="inkscape:persp3d"
56
+ inkscape:vp_x="0 : 526.18109 : 1"
57
+ inkscape:vp_y="0 : 1000 : 0"
58
+ inkscape:vp_z="744.09448 : 526.18109 : 1"
59
+ inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
60
+ id="perspective10" />
61
+ <linearGradient
62
+ inkscape:collect="always"
63
+ xlink:href="#linearGradient3316"
64
+ id="linearGradient3195"
65
+ x1="-424"
66
+ y1="99.362183"
67
+ x2="-424"
68
+ y2="30.333202"
69
+ gradientUnits="userSpaceOnUse" />
70
+ <linearGradient
71
+ inkscape:collect="always"
72
+ xlink:href="#linearGradient3189"
73
+ id="linearGradient3254"
74
+ gradientUnits="userSpaceOnUse"
75
+ x1="-456.45401"
76
+ y1="13.485125"
77
+ x2="-456.45401"
78
+ y2="113.73999"
79
+ gradientTransform="matrix(6.25e-3,0,0,1,-869.74395,0)" />
80
+ <linearGradient
81
+ inkscape:collect="always"
82
+ xlink:href="#linearGradient3189"
83
+ id="linearGradient3286"
84
+ gradientUnits="userSpaceOnUse"
85
+ gradientTransform="matrix(6.25e-3,0,0,1,-869.74395,0)"
86
+ x1="-456.45401"
87
+ y1="13.485125"
88
+ x2="-456.45401"
89
+ y2="113.73999" />
90
+ <linearGradient
91
+ inkscape:collect="always"
92
+ xlink:href="#linearGradient3189"
93
+ id="linearGradient3290"
94
+ gradientUnits="userSpaceOnUse"
95
+ gradientTransform="matrix(6.25e-3,0,0,1.4,-869.74395,-5.402011)"
96
+ x1="-456.45401"
97
+ y1="13.485125"
98
+ x2="-456.45401"
99
+ y2="113.73999" />
100
+ <linearGradient
101
+ inkscape:collect="always"
102
+ xlink:href="#linearGradient3189"
103
+ id="linearGradient3314"
104
+ gradientUnits="userSpaceOnUse"
105
+ x1="-456.45401"
106
+ y1="13.485125"
107
+ x2="-456.45401"
108
+ y2="113.73999"
109
+ gradientTransform="translate(3,546)" />
110
+ <linearGradient
111
+ inkscape:collect="always"
112
+ xlink:href="#linearGradient3316"
113
+ id="linearGradient3333"
114
+ gradientUnits="userSpaceOnUse"
115
+ x1="-424"
116
+ y1="99.362183"
117
+ x2="-424"
118
+ y2="30.333202"
119
+ gradientTransform="matrix(6.25e-3,0,0,1.4,-916.7607,-0.4020111)" />
120
+ <linearGradient
121
+ inkscape:collect="always"
122
+ xlink:href="#linearGradient3189"
123
+ id="linearGradient3335"
124
+ gradientUnits="userSpaceOnUse"
125
+ gradientTransform="matrix(6.25e-3,0,0,1.4,-869.74395,-5.402011)"
126
+ x1="-456.45401"
127
+ y1="13.485125"
128
+ x2="-456.45401"
129
+ y2="113.73999" />
130
+ <linearGradient
131
+ inkscape:collect="always"
132
+ xlink:href="#linearGradient3189"
133
+ id="linearGradient3339"
134
+ gradientUnits="userSpaceOnUse"
135
+ gradientTransform="matrix(6.25e-3,0,0,1.4,-869.74395,-5.402011)"
136
+ x1="-456.45401"
137
+ y1="13.485125"
138
+ x2="-456.45401"
139
+ y2="113.73999" />
140
+ </defs>
141
+ <sodipodi:namedview
142
+ id="base"
143
+ pagecolor="#ffffff"
144
+ bordercolor="#666666"
145
+ borderopacity="1.0"
146
+ gridtolerance="10000"
147
+ guidetolerance="10"
148
+ objecttolerance="10"
149
+ inkscape:pageopacity="0.0"
150
+ inkscape:pageshadow="2"
151
+ inkscape:zoom="1"
152
+ inkscape:cx="-765.69108"
153
+ inkscape:cy="784.75854"
154
+ inkscape:document-units="px"
155
+ inkscape:current-layer="layer1"
156
+ showgrid="false"
157
+ inkscape:window-width="1280"
158
+ inkscape:window-height="725"
159
+ inkscape:window-x="0"
160
+ inkscape:window-y="25" />
161
+ <metadata
162
+ id="metadata7">
163
+ <rdf:RDF>
164
+ <cc:Work
165
+ rdf:about="">
166
+ <dc:format>image/svg+xml</dc:format>
167
+ <dc:type
168
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
169
+ <dc:title>body_bg</dc:title>
170
+ <dc:creator>
171
+ <cc:Agent>
172
+ <dc:title>Ivan Torres</dc:title>
173
+ </cc:Agent>
174
+ </dc:creator>
175
+ <dc:rights>
176
+ <cc:Agent>
177
+ <dc:title>Innetra Consultancy Services, S.C.</dc:title>
178
+ </cc:Agent>
179
+ </dc:rights>
180
+ <dc:publisher>
181
+ <cc:Agent>
182
+ <dc:title>Innetra Consultancy Services, S.C.</dc:title>
183
+ </cc:Agent>
184
+ </dc:publisher>
185
+ </cc:Work>
186
+ </rdf:RDF>
187
+ </metadata>
188
+ <g
189
+ inkscape:label="Layer 1"
190
+ inkscape:groupmode="layer"
191
+ id="layer1">
192
+ <rect
193
+ style="opacity:1;fill:url(#linearGradient3195);fill-opacity:1;stroke:none;stroke-width:5;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
194
+ id="rect2383"
195
+ width="800"
196
+ height="100"
197
+ x="-861.14282"
198
+ y="13.505028" />
199
+ <rect
200
+ y="13.505028"
201
+ x="-861.14282"
202
+ height="25"
203
+ width="800"
204
+ id="rect2385"
205
+ style="opacity:1;fill:#333333;fill-opacity:1;stroke:none;stroke-width:5;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
206
+ <rect
207
+ style="fill:#257291;fill-opacity:1;stroke:none;stroke-width:5;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
208
+ id="rect3159"
209
+ width="100"
210
+ height="30"
211
+ x="-853.14282"
212
+ y="79.398888" />
213
+ <text
214
+ xml:space="preserve"
215
+ style="font-size:12px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr;text-anchor:start;fill:#ffff00;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Arial;-inkscape-font-specification:Arial Bold"
216
+ x="-827.87817"
217
+ y="98.623497"
218
+ id="text3161"
219
+ sodipodi:linespacing="125%"><tspan
220
+ sodipodi:role="line"
221
+ id="tspan3163"
222
+ x="-827.87817"
223
+ y="98.623497">Welcome</tspan></text>
224
+ <rect
225
+ y="113.50503"
226
+ x="-861.14282"
227
+ height="400"
228
+ width="800"
229
+ id="rect3169"
230
+ style="opacity:1;fill:#efefdf;fill-opacity:1;stroke:none;stroke-width:5;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
231
+ <text
232
+ xml:space="preserve"
233
+ style="font-size:12px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Arial;-inkscape-font-specification:Arial"
234
+ x="-156.81238"
235
+ y="29.585598"
236
+ id="text3171"
237
+ sodipodi:linespacing="125%"><tspan
238
+ sodipodi:role="line"
239
+ id="tspan3173"
240
+ x="-156.81238"
241
+ y="29.585598">Configuration</tspan></text>
242
+ <rect
243
+ y="125.50264"
244
+ x="-847.15955"
245
+ height="380"
246
+ width="500"
247
+ id="rect3185"
248
+ style="opacity:1;fill:#888a85;fill-opacity:1;stroke:none;stroke-width:5;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
249
+ <rect
250
+ style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:5;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
251
+ id="rect3175"
252
+ width="500"
253
+ height="380"
254
+ x="-848.15839"
255
+ y="123.50503" />
256
+ <rect
257
+ y="122.49391"
258
+ x="-327.01535"
259
+ height="197.46432"
260
+ width="247.46434"
261
+ id="rect3177"
262
+ style="opacity:1;fill:#888a85;fill-opacity:1;stroke:none;stroke-width:5;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
263
+ <rect
264
+ style="opacity:1;fill:#555753;fill-opacity:1;stroke:none;stroke-width:5;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
265
+ id="rect3183"
266
+ width="251.46434"
267
+ height="201.46432"
268
+ x="-331.01297"
269
+ y="119.4951" />
270
+ <rect
271
+ y="79.398888"
272
+ x="-748.38892"
273
+ height="30"
274
+ width="100"
275
+ id="rect3216"
276
+ style="fill:none;fill-opacity:1;stroke:none;stroke-width:5;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
277
+ <text
278
+ sodipodi:linespacing="125%"
279
+ id="text3218"
280
+ y="97.504356"
281
+ x="-733.99048"
282
+ style="font-size:12px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr;text-anchor:start;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Arial;-inkscape-font-specification:Arial Bold"
283
+ xml:space="preserve"><tspan
284
+ y="97.504356"
285
+ x="-733.99048"
286
+ id="tspan3220"
287
+ sodipodi:role="line">Configuration</tspan></text>
288
+ <g
289
+ id="g3345"
290
+ inkscape:export-filename="/home/itorres/code/sandbox/public/images/header_bg.png"
291
+ inkscape:export-xdpi="90"
292
+ inkscape:export-ydpi="90"
293
+ transform="translate(43,-5)">
294
+ <g
295
+ id="g3341">
296
+ <rect
297
+ y="18.505028"
298
+ x="-922.14282"
299
+ height="140"
300
+ width="5"
301
+ id="rect3331"
302
+ style="opacity:1;fill:url(#linearGradient3333);fill-opacity:1;stroke:none;stroke-width:5;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
303
+ <rect
304
+ style="fill:#333333;fill-opacity:1;stroke:none;stroke-width:5;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
305
+ id="rect3252"
306
+ width="5"
307
+ height="25"
308
+ x="-922.14282"
309
+ y="18.505028" />
310
+ </g>
311
+ </g>
312
+ <g
313
+ id="g3282"
314
+ inkscape:export-filename="/home/itorres/code/sandbox/public/images/easy_navigation/arrow.png"
315
+ inkscape:export-xdpi="90"
316
+ inkscape:export-ydpi="90"
317
+ transform="translate(-133.8,27.6)">
318
+ <rect
319
+ inkscape:export-ydpi="90"
320
+ inkscape:export-xdpi="90"
321
+ inkscape:export-filename="/home/itorres/Desktop/arrow.png"
322
+ y="59.667595"
323
+ x="-515.89069"
324
+ height="14"
325
+ width="10"
326
+ id="rect3277"
327
+ style="fill:none;fill-opacity:1;stroke:none;stroke-width:5;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
328
+ <path
329
+ inkscape:export-ydpi="90"
330
+ inkscape:export-xdpi="90"
331
+ inkscape:export-filename="/home/itorres/Desktop/arrow.png"
332
+ transform="matrix(-0.9483359,0,0,-0.821283,-496.82445,96.6195)"
333
+ d="M 18.52321,39.665869 L 14.832535,39.665869 L 11.141859,39.665869 L 12.987197,36.469651 L 14.832535,33.273432 L 16.677872,36.469651 L 18.52321,39.665869 z"
334
+ inkscape:randomized="0"
335
+ inkscape:rounded="0"
336
+ inkscape:flatsided="false"
337
+ sodipodi:arg2="1.5707963"
338
+ sodipodi:arg1="0.52359878"
339
+ sodipodi:r2="2.1308122"
340
+ sodipodi:r1="4.2616248"
341
+ sodipodi:cy="37.535057"
342
+ sodipodi:cx="14.832535"
343
+ sodipodi:sides="3"
344
+ id="path2385"
345
+ style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:5;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
346
+ sodipodi:type="star" />
347
+ </g>
348
+ <rect
349
+ y="559.505"
350
+ x="-858.14282"
351
+ height="100"
352
+ width="800"
353
+ id="rect3312"
354
+ style="opacity:1;fill:url(#linearGradient3314);fill-opacity:1;stroke:none;stroke-width:5;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
355
+ <text
356
+ xml:space="preserve"
357
+ style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#2e3436;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans"
358
+ x="-837"
359
+ y="153.36218"
360
+ id="text3322"
361
+ sodipodi:linespacing="125%"><tspan
362
+ sodipodi:role="line"
363
+ id="tspan3324"
364
+ x="-837"
365
+ y="153.36218">Some Welcome</tspan></text>
366
+ <rect
367
+ y="119.4951"
368
+ x="-331.01297"
369
+ height="197.46432"
370
+ width="247.46434"
371
+ id="rect3326"
372
+ style="opacity:1;fill:#efefdf;fill-opacity:1;stroke:#ddddca;stroke-width:5;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
373
+ <rect
374
+ y="79.398888"
375
+ x="-623.14282"
376
+ height="30"
377
+ width="100"
378
+ id="rect3350"
379
+ style="fill:#449cbe;fill-opacity:1;stroke:none;stroke-width:5;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
380
+ </g>
381
+ </svg>
@@ -0,0 +1,19 @@
1
+ !!! XML
2
+ !!! Strict
3
+ %html{ :xmlns => "http://www.w3.org/1999/xhtml" }
4
+ %head
5
+ %title= "New Rails App - #{yield :title}"
6
+ = stylesheet_link_tag :all, :media => :all
7
+ = javascript_include_tag :all, :cache => true
8
+ = yield :head
9
+ %body
10
+ #main
11
+ #head
12
+ .wrapper
13
+ #toolbar
14
+ = render 'sessions/session'
15
+ #logo
16
+ #navigation= easy_navigation :default
17
+ #content.wrapper
18
+ - feedback
19
+ = yield
@@ -0,0 +1,346 @@
1
+ // *****************************************************************************
2
+ // Layout elements color's
3
+ // *****************************************************************************
4
+ !body_background_color = #EFEFEF
5
+ !body_background_image = url(\/images\/body_bg.png)
6
+ !default_border_color = #E0E0E0
7
+ !head_color = #707070
8
+ !link_color = #21A1D5
9
+ !page_background_color = #FFF
10
+ !text_color = #696969
11
+ !toolbar_color = #FFF
12
+
13
+ // Sidebar
14
+ !sidebar_width = 350px
15
+ !sidebar_content_width = 370px
16
+ !sidebar_section_background_color = #EFEFEF
17
+ !sidebar_section_border_color = #DDD
18
+ !sidebar_section_border_width = 3px
19
+
20
+ // *****************************************************************************
21
+ // Forms
22
+ // *****************************************************************************
23
+
24
+ // Flash messages
25
+ !flash_background_color = #FFFFCC
26
+ !flash_error_color = #F00
27
+ !flash_notice_color = #000
28
+
29
+ // Input[type=text|password] and textarea colors with shadow effect
30
+ !form_input_dark_border_color = #8C8C8C
31
+ !form_input_light_border_color = #BEBEBE
32
+
33
+ // The color for * (asterisk) indicating required fields
34
+ !required_field_symbol_color = #F00
35
+
36
+ // Comment's color
37
+ !comment_color = #9E9E9E
38
+
39
+ // Errors
40
+ !form_error_color = #F00
41
+
42
+ // *****************************************************************************
43
+ // Shadowbox colors
44
+ // *****************************************************************************
45
+ !shadow1_background_color = #C9C9C9
46
+ !shadow2_background_color = #B0B0B0
47
+ !shadow3_background_color = #A9A9A9
48
+
49
+ // *****************************************************************************
50
+ // Fonts
51
+ // *****************************************************************************
52
+ !font_family = "helvetica, arial, sans-serif"
53
+ !font_size = 16px
54
+
55
+ // *****************************************************************************
56
+ // *****************************************************************************
57
+ @media all
58
+
59
+ // ***************************************************************************
60
+ // Tags
61
+ // ***************************************************************************
62
+ body *
63
+ font:
64
+ family = !font_family
65
+
66
+ a
67
+ font-weight: normal
68
+
69
+ h1
70
+ font-size: 1.7em
71
+ padding: 10px 20px
72
+ margin: -20px
73
+ margin-bottom: 20px
74
+ .comment
75
+ font:
76
+ size: 0.7em
77
+ weight: normal
78
+
79
+ h2
80
+ padding-bottom: 5px
81
+ font-size: 1.4em
82
+
83
+ h3
84
+ font-size: 1.2em
85
+
86
+ hr
87
+ border: 0
88
+ margin-top: 20px
89
+
90
+ h1, h2, hr
91
+ border-bottom:
92
+ style: solid
93
+ width: 1px
94
+
95
+ ul
96
+ margin: 0
97
+ padding: 0
98
+ li
99
+ list-style: none
100
+
101
+ table
102
+ border-spacing: 0
103
+ tr
104
+ td
105
+ margin: 0
106
+ padding: 0
107
+ vertical-align: top
108
+
109
+ // ***************************************************************************
110
+ // Special classes
111
+ // ***************************************************************************
112
+ #flash .container
113
+ .notice, .error
114
+ padding: 10px 20px
115
+ margin-bottom: 10px
116
+ p
117
+ margin: 0
118
+
119
+ .wrapper
120
+ margin: 0 20px
121
+
122
+ #sidebar
123
+ .sidebar_section
124
+ margin-bottom: 10px
125
+ h1
126
+ font-size: 1em
127
+ line-height: 1.2em
128
+ margin: 0 -10px
129
+ margin-bottom: 5px
130
+ padding: 0 10px
131
+ padding-bottom: 5px
132
+ div
133
+ float: right
134
+ font-size: 0.9em
135
+ .comment, td.label
136
+ font-size: 0.8em
137
+ td
138
+ padding-bottom: 10px
139
+ line-height: 1.4em
140
+ td.label
141
+ font-weight: bold
142
+ padding-right: 10px
143
+ padding-top: 3px
144
+ width: 60px
145
+
146
+ // ***************************************************************************
147
+ // Forms
148
+ // ***************************************************************************
149
+ form
150
+ .comment
151
+ font-size: 0.9em
152
+ .form_error
153
+ font-size: 0.9em
154
+ input[type=password],
155
+ input[type=text],
156
+ textarea
157
+ width: 350px
158
+ input[type=password],
159
+ input[type=text],
160
+ select,
161
+ textarea
162
+ font-size: 1em
163
+ margin: 5px 5px 5px 0
164
+ padding: 1px
165
+ line-height: 1em
166
+
167
+ option
168
+ font-size: 1em
169
+ line-height: 1em
170
+ a
171
+ font-size: 0.9em
172
+
173
+ // ***************************************************************************
174
+ // Head
175
+ // ***************************************************************************
176
+ #head
177
+ height: 140px
178
+ width: 100%
179
+
180
+ #toolbar
181
+ font-size: 0.9em
182
+ line-height: 1.4em
183
+ height: 25px
184
+
185
+ #logo
186
+ height: 80px
187
+
188
+ #navigation
189
+ clear: both
190
+ height: 33px
191
+ margin: 0
192
+ padding: 0
193
+ ul .navigation
194
+ display: block
195
+ float: left
196
+ margin: 0 20px
197
+
198
+ // ***************************************************************************
199
+ // Content
200
+ // ***************************************************************************
201
+ #content
202
+ padding-top: 20px
203
+ #page.sidebar
204
+ margin-right = !sidebar_content_width
205
+ #page
206
+ .container
207
+ margin: 0
208
+ h1
209
+ position: relative
210
+ div
211
+ float: right
212
+ font:
213
+ size: 0.6em
214
+ weight: normal
215
+ line-height: 2em
216
+
217
+ // ***************************************************************************
218
+ // Sidebar
219
+ // ***************************************************************************
220
+ #sidebar
221
+ float: right
222
+ width = !sidebar_width
223
+ padding: 0
224
+ margin: 0
225
+ .sidebar_section
226
+ padding: 10px
227
+
228
+ // ***************************************************************************
229
+ // Shadowbox
230
+ // ***************************************************************************
231
+ .shadow
232
+ margin:
233
+ left: 3px
234
+ top: 3px
235
+
236
+ // *****************************************************************************
237
+ // *****************************************************************************
238
+ @media screen
239
+
240
+ // ***************************************************************************
241
+ // Tags
242
+ // ***************************************************************************
243
+ body
244
+ background:
245
+ color = !body_background_color
246
+ image = !body_background_image
247
+ repeat: repeat-x
248
+ color = !text_color
249
+ font-size = !font_size
250
+ margin: 0
251
+ min-width: 980px
252
+
253
+ a
254
+ color = !link_color
255
+
256
+ hr
257
+ border-color: transparent
258
+
259
+ h1, h2, hr
260
+ border-bottom-color = !default_border_color
261
+
262
+ // ***************************************************************************
263
+ // Special classes
264
+ // ***************************************************************************
265
+ #flash .container
266
+ background-color = !flash_background_color
267
+ .notice p
268
+ color = !flash_notice_color
269
+ .error p
270
+ color = !flash_error_color
271
+
272
+ // ***************************************************************************
273
+ // Forms (screen)
274
+ // ***************************************************************************
275
+ form
276
+ .comment
277
+ color = !comment_color
278
+ .required
279
+ color = !required_field_symbol_color
280
+ .form_error
281
+ color = !form_error_color
282
+
283
+ // ***************************************************************************
284
+ // Head
285
+ // ***************************************************************************
286
+ #head
287
+ #toolbar, #toolbar a
288
+ color = !toolbar_color
289
+
290
+ // ***************************************************************************
291
+ // Content (screen)
292
+ // ***************************************************************************
293
+ #page
294
+ .container
295
+ background-color = !page_background_color
296
+ margin: -10px 0 10px
297
+ padding: 20px
298
+ h1
299
+ color = !head_color
300
+
301
+ // ***************************************************************************
302
+ // Sidebar (screen)
303
+ // ***************************************************************************
304
+ #sidebar
305
+ .sidebar_section
306
+ background-color = !sidebar_section_background_color
307
+ border:
308
+ color = !sidebar_section_border_color
309
+ style: solid
310
+ width = !sidebar_section_border_width
311
+
312
+ // ***************************************************************************
313
+ // Shadowbox (screen)
314
+ // ***************************************************************************
315
+ .shadow
316
+ .shadow1, .shadow2, .shadow3, .container
317
+ left: -1px
318
+ position: relative
319
+ top: -1px
320
+ .shadow1
321
+ background-color = !shadow1_background_color
322
+ .shadow2
323
+ background-color = !shadow2_background_color
324
+ .shadow3
325
+ background-color = !shadow3_background_color
326
+
327
+ // *****************************************************************************
328
+ // *****************************************************************************
329
+ @media print
330
+
331
+ body, html
332
+ font-size: 10pt
333
+ margin: 0
334
+ padding: 0
335
+
336
+ #head
337
+ display: none
338
+
339
+ #page .container
340
+ h1 div
341
+ display: none
342
+ margin: 0
343
+ padding: 0
344
+
345
+ .wrapper
346
+ margin: 0
@@ -0,0 +1,2 @@
1
+ module EasyGenerators
2
+ end
metadata ADDED
@@ -0,0 +1,71 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: innetra-easy_generators
3
+ version: !ruby/object:Gem::Version
4
+ version: "1.1"
5
+ platform: ruby
6
+ authors:
7
+ - Ivan Torres
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2009-05-14 00:00:00 -07:00
13
+ default_executable:
14
+ dependencies: []
15
+
16
+ description: Easy Generators for Rails
17
+ email: mexpolk@gmail.com
18
+ executables: []
19
+
20
+ extensions: []
21
+
22
+ extra_rdoc_files:
23
+ - README.rdoc
24
+ - lib/easy_generators.rb
25
+ files:
26
+ - Manifest
27
+ - generators/easy_layout/templates/stylesheets/sass/application.sass
28
+ - generators/easy_layout/templates/helpers/layout_helper.rb
29
+ - generators/easy_layout/templates/helpers/shadowbox_helper.rb
30
+ - generators/easy_layout/templates/images/body_bg.svg
31
+ - generators/easy_layout/templates/images/body_bg.png
32
+ - generators/easy_layout/templates/config/initializers/rails_teaks.rb
33
+ - generators/easy_layout/templates/layouts/application.haml
34
+ - generators/easy_layout/easy_layout_generator.rb
35
+ - README.rdoc
36
+ - Rakefile
37
+ - lib/easy_generators.rb
38
+ - easy_generators.gemspec
39
+ has_rdoc: true
40
+ homepage: http://github.com/innetra/haml_layout
41
+ post_install_message:
42
+ rdoc_options:
43
+ - --line-numbers
44
+ - --inline-source
45
+ - --title
46
+ - Easy_generators
47
+ - --main
48
+ - README.rdoc
49
+ require_paths:
50
+ - lib
51
+ required_ruby_version: !ruby/object:Gem::Requirement
52
+ requirements:
53
+ - - ">="
54
+ - !ruby/object:Gem::Version
55
+ version: "0"
56
+ version:
57
+ required_rubygems_version: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: "1.2"
62
+ version:
63
+ requirements: []
64
+
65
+ rubyforge_project: easy_generators
66
+ rubygems_version: 1.2.0
67
+ signing_key:
68
+ specification_version: 3
69
+ summary: Easy Generators for Rails
70
+ test_files: []
71
+