i0n_rails3_generators 0.2.2 → 0.2.3

Sign up to get free protection for your applications and to get access to all the features.
data/config/version.yml CHANGED
@@ -1,4 +1,4 @@
1
1
  ---
2
2
  :version_major: 0
3
3
  :version_minor: 2
4
- :version_patch: 2
4
+ :version_patch: 3
@@ -0,0 +1,9 @@
1
+ require 'rails/generators/named_base'
2
+
3
+ module Authlogic
4
+ module Generators
5
+ class Base < Rails::Generators::NamedBase
6
+
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,6 @@
1
+ Description:
2
+ Creates a compass and sass based default layout
3
+
4
+ Example:
5
+ rails generate layout
6
+
@@ -0,0 +1,32 @@
1
+ module I0n
2
+ module Generators
3
+ class LayoutGenerator < Rails::Generators::Base
4
+
5
+ source_root File.expand_path('../templates', __FILE__)
6
+
7
+ def setup_application_for_haml
8
+ inject_into_file 'config/application.rb', IO.read("#{LayoutGenerator.source_root}/config/_application.rb", :after => 'config.encoding = "utf-8"'
9
+ end
10
+
11
+ def create_compass_config
12
+ copy_file 'config/initializers/compass.rb', 'config/initializers/compass.rb'
13
+ copy_file 'config/compass.rb', 'config/compass.rb'
14
+ end
15
+
16
+ def create_sass_extensions
17
+ copy_file 'lib/sass_extensions', 'lib/sass_extensions'
18
+ end
19
+
20
+ def create_sass_directory
21
+ directory 'app/sass', 'app/sass'
22
+ end
23
+
24
+ def create_layout
25
+ copy_file 'app/views/layout/application.haml', 'app/views/layout/application.haml'
26
+ copy_file 'app/views/shared/_error_messages.haml', 'app/views/shared/_error_messages.haml'
27
+ end
28
+
29
+ end
30
+ end
31
+ end
32
+
@@ -0,0 +1,77 @@
1
+ //**
2
+ // Susy: Un-obtrusive grids for designers
3
+ // By: Eric A. Meyer and OddBird
4
+ // Site: susy.oddbird.net
5
+ //**
6
+
7
+ // Font Sizes --------------------------------------------------------------
8
+
9
+ $base-font-size: 16px
10
+ $base-line-height: 24px
11
+
12
+ // Grid --------------------------------------------------------------
13
+
14
+ $grid_unit = "em"
15
+ $total-cols: 15
16
+ $col-width: 3em
17
+ $gutter-width: 2em
18
+ $side-gutter-width: $gutter-width
19
+
20
+ // Don't move this @import above the GRID and FONT-SIZE variables.
21
+ @import susy/susy
22
+
23
+ // Colors --------------------------------------------------------------
24
+
25
+ $background: #ffffff
26
+ $base: #181818
27
+ $alt: #005498
28
+
29
+ $box: #daf4f7
30
+ $feint_grey: #D7D7D7
31
+ $dark_grey: #333333
32
+
33
+ $error_background: #FFE5E5
34
+ $error_shadow: #973333
35
+ $error_text: #710000
36
+
37
+ $notice_background: #caf3ba
38
+ $notice_shadow: #339733
39
+ $notice_text: #007100
40
+
41
+ // Rounded Corners --------------------------------------------------------------
42
+
43
+ $radius: 1em
44
+
45
+ // Fonts --------------------------------------------------------------
46
+
47
+ =sans-family
48
+ font-family: "Helvetica Neue", Helvetica, Arial, sans-serif
49
+
50
+ =serif-family
51
+ font-family: minion-pro-1, minion-pro-2, Georgia, serif
52
+
53
+ =monospace-family
54
+ font-family: "Andale Mono WT", "Andale Mono", "Lucida Console", "Lucida Sans Typewriter", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Liberation Mono", "Nimbus Mono L", Monaco, Courier, monospace, sans-serif
55
+
56
+ // OTHER MIXINS --------------------------------------------------------------
57
+ // Mixins set here will be available in defaults, screen, print and IE
58
+ // Or anywhere you import either base.sass or defaults.sass
59
+
60
+ =linear-gradient($linear-gradient-start: 15%, $linear-gradient-end: 86%, $linear-gradient-angle: 90deg, $linear-gradient-start-color: #4F8E97 , $linear-gradient-end-color: #77D5E3, $linear-gradient-color-stop-color: #A1F3FF, $linear-gradient-color-stop-percentage: 70% )
61
+ $linear-gradient-color-stop-value-for-webkit: 1 - (integer($linear-gradient-color-stop-percentage)/100)
62
+ background: -webkit-gradient(linear, 0% $linear-gradient-start, 0% $linear-gradient-end, from($linear-gradient-color-stop-color), to($linear-gradient-start-color), color-stop($linear-gradient-color-stop-value-for-webkit, $linear-gradient-end-color))
63
+ background: -moz-linear-gradient($linear-gradient-start $linear-gradient-end $linear-gradient-angle, $linear-gradient-start-color, $linear-gradient-end-color, $linear-gradient-color-stop-color $linear-gradient-color-stop-percentage)
64
+ -pie-background: linear-gradient($linear-gradient-start $linear-gradient-end $linear-gradient-angle, $linear-gradient-start-color, $linear-gradient-end-color, $linear-gradient-color-stop-color $linear-gradient-color-stop-percentage)
65
+ // -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr= #{$linear-gradient-end-color}, endColorstr= #{$linear-gradient-start-color})"
66
+
67
+ =box-shadow($horizontal:0, $vertical:0, $blur:0.4em, $color:($box / 1.4))
68
+ box-shadow: $horizontal $vertical $blur $color
69
+ -webkit-box-shadow: $horizontal $vertical $blur $color
70
+ -moz-box-shadow: $horizontal $vertical $blur $color
71
+
72
+ =button_active($background_color:$notice_text, $shadow_color:rgba(0, 77, 0, 0.398438))
73
+ background: $background_color
74
+ -webkit-box-shadow: $shadow_color 0 0 0.417em 0.417em inset
75
+ -moz-box-shadow: $shadow_color 0 0 0.417em 0.417em inset
76
+ box-shadow: $shadow_color 0 0 0.417em 0.417em inset
77
+
@@ -0,0 +1,257 @@
1
+ //** DEFAULT STYLES **//
2
+
3
+ // Based heavily on the work of:
4
+ // Andy Clarke: http://forabeautifulweb.com/
5
+ // Paul Irish & Divya Manian: http://html5boilerplate.com/
6
+ // And many others, less directly...
7
+
8
+ // Imports --------------------------------------------------------------
9
+
10
+ @import base
11
+ @import susy/reset
12
+
13
+ /* Typography --------------------------------------------------------------
14
+ /* The following classes are for use with @extend.
15
+
16
+ html
17
+ word-wrap: break-word
18
+ text-rendering: optimizeLegibility
19
+ -webkit-font-smoothing: antialiased
20
+ // -webkit-text-size-adjust: none
21
+
22
+ .serif
23
+ +serif-family
24
+
25
+ .sans
26
+ +sans-family
27
+
28
+ .mono
29
+ +monospace-family
30
+
31
+ .caps
32
+ letter-spacing: 0.1em
33
+
34
+ .allcaps
35
+ @extend .caps
36
+ text-transform: uppercase
37
+
38
+ .smallcaps
39
+ @extend .caps
40
+ font-variant: small-caps
41
+
42
+ /* Body --------------------------------------------------------------
43
+
44
+ body
45
+ @extend .sans
46
+ color: $base
47
+
48
+ /* Selected Text --------------------------------------------------------------
49
+ /* -moz- must be declared separately
50
+
51
+ =accessible-color($background)
52
+ @if lightness($background) >= 65%
53
+ color: $base
54
+ @else
55
+ color: $background
56
+
57
+ \::-moz-selection
58
+ +accessible-color($alt)
59
+ background: $alt
60
+ text-shadow: none
61
+
62
+ \::selection
63
+ +accessible-color($alt)
64
+ background: $alt
65
+ text-shadow: none
66
+
67
+ /* Links --------------------------------------------------------------
68
+
69
+ a
70
+ &:link, &:visited
71
+ color: $alt
72
+ text-decoration: none
73
+ &:link, &:visited, &:hover, &:active
74
+ outline: none
75
+ &:focus, &:hover, &:active
76
+ border-bottom: thin dotted
77
+ &:focus
78
+ outline: thin dotted
79
+
80
+ /* Headings --------------------------------------------------------------
81
+
82
+ h1, h2, h3, h4, h5, h6
83
+ +trailer
84
+ @extend .serif
85
+
86
+ /* Inline --------------------------------------------------------------
87
+
88
+ cite, em, dfn, address, i
89
+ font-style: italic
90
+
91
+ strong, dfn, b
92
+ font-weight: bold
93
+
94
+ sup, sub
95
+ font-size: smaller
96
+ line-height: 0
97
+
98
+ sup
99
+ vertical-align: super
100
+
101
+ sub
102
+ vertical-align: sub
103
+
104
+ abbr, acronym
105
+ border-bottom: 1px dotted
106
+ cursor: help
107
+
108
+ ins
109
+ text-decoration: underline
110
+
111
+ del
112
+ text-decoration: line-through
113
+
114
+ mark
115
+ background: #ffff99
116
+ background-color: rgba(yellow, 0.5)
117
+ text-shadow: none
118
+
119
+ small
120
+ +adjust-font-size-to(12px)
121
+
122
+ q
123
+ font-style: italic
124
+ em
125
+ font-style: normal
126
+
127
+ pre, code, tt
128
+ @extend .mono
129
+
130
+ /* Block --------------------------------------------------------------
131
+
132
+ p
133
+ +trailer
134
+
135
+ pre
136
+ margin: $base-rhythm-unit
137
+ white-space: pre
138
+ white-space: pre-wrap
139
+ white-space: pre-line
140
+ word-wrap: break-word
141
+
142
+ blockquote
143
+ margin: $base-rhythm-unit
144
+ font-style: italic
145
+
146
+ /* Replaced --------------------------------------------------------------
147
+
148
+ img
149
+ vertical-align: text-bottom
150
+ max-width: 100%
151
+ -ms-interpolation-mode: bicubic
152
+
153
+ /* Lists --------------------------------------------------------------
154
+
155
+ ol, ul, dl
156
+ +trailer
157
+ margin-left: $base-rhythm-unit
158
+
159
+ ol
160
+ list-style: decimal
161
+
162
+ ul
163
+ list-style: disc
164
+ li &
165
+ list-style-type: circle
166
+
167
+ dt
168
+ +leader
169
+ font-style: italic
170
+
171
+ dd
172
+ padding-left: $base-rhythm-unit
173
+
174
+ /* Tables --------------------------------------------------------------
175
+ /* tables still need 'cellspacing="0"' in the markup
176
+
177
+ table
178
+ +trailer
179
+ width: 100%
180
+ border-collapse: separate
181
+ border-spacing: 0
182
+
183
+ table, td, th
184
+ vertical-align: top
185
+
186
+ th, thead th
187
+ font-weight: bold
188
+
189
+ th, td, caption
190
+ padding: $base-rhythm-unit * 0.5
191
+ text-align: left
192
+ font-weight: normal
193
+
194
+ table, th
195
+ +trailing-border(1px, 0.5)
196
+
197
+ tfoot
198
+ +adjust-font-size-to(14px)
199
+
200
+ caption
201
+ @extend .allcaps
202
+
203
+ /* Forms --------------------------------------------------------------
204
+
205
+ fieldset
206
+ +trailer
207
+ +rhythm-borders(1px)
208
+
209
+ legend
210
+ +adjust-font-size-to(18px)
211
+ font-weight: bold
212
+
213
+ input[type="radio"], input[type="checkbox"]
214
+ vertical-align: baseline
215
+
216
+ label, input[type=button], input[type=submit], button
217
+ cursor: pointer
218
+
219
+ // box-sizing helps us control the width of inputs
220
+ // which are otherwise very hard to manage in the grid.
221
+
222
+ .textinput
223
+ +sans-family
224
+ +adjust-font-size-to(14px, 1, 16px)
225
+ +box-sizing(border-box)
226
+ width: 100%
227
+ margin-top: 0
228
+ border: 1px solid ($base * 7)
229
+ @include trailer(0.75)
230
+ -webkit-appearance: none
231
+ +border-radius(!radius / 2)
232
+ padding: 0.5em
233
+ background: $background
234
+ background: -moz-linear-gradient(0 12% 90deg, $background, #d2d2d2)
235
+ background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#d2d2d2), color-stop(0.12, $background))
236
+ +box-shadow(1px, 1px, 1px, $background)
237
+
238
+ textarea
239
+ @extend .textinput
240
+ vertical-align: text-bottom
241
+ height: 15em + ((15 * 2) /14)
242
+ resize: none
243
+ background: -moz-linear-gradient(0 2% 90deg, $background, #d2d2d2)
244
+ background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#d2d2d2), color-stop(0.02, $background))
245
+
246
+ input
247
+ &[type=text], &[type=password], &[type=email], &[type=url], &[type=tel],
248
+ &[type=date], &[type=datetime], &[type=datetime-local], &[type=month], &[type=week], &[type=time],
249
+ &[type=number], &[type=range], &[type=search], &[type=color]
250
+ @extend .textinput
251
+
252
+ select
253
+ +adjust-font-size-to(16px)
254
+
255
+ button
256
+ width: auto
257
+ overflow: visible
@@ -0,0 +1,8 @@
1
+ /* Welcome to Susy. Use this file to write IE specific override styles.
2
+ * Import this file using the following HTML or equivalent:
3
+ * <!--[if IE]>
4
+ * <link href="/stylesheets/ie.css" media="screen, projection" rel="stylesheet" type="text/css" />
5
+ * <![endif]-->
6
+
7
+ // Imports --------------------------------------------------------------*/
8
+ // @import base
@@ -0,0 +1,52 @@
1
+ //** PRINT STYLES **//
2
+
3
+ // Based heavily on the work of:
4
+ // Paul Irish & Divya Manian: http://html5boilerplate.com/
5
+ // And many others, less directly...
6
+
7
+ // Imports --------------------------------------------------------------
8
+
9
+ @import defaults
10
+
11
+ /* Print Defaults --------------------------------------------------------------
12
+
13
+ nav
14
+ display: none
15
+
16
+ *
17
+ background: transparent !important
18
+ color: #444444 !important
19
+ float: none !important
20
+ text-shadow: none !important
21
+
22
+ body
23
+ +serif-family
24
+ font-size: 12pt
25
+ background: white
26
+ color: black
27
+
28
+ a
29
+ &:link, &:visited
30
+ color: #444444 !important
31
+ text-decoration: underline
32
+ &:after
33
+ content: " (" attr(href) ") "
34
+ font-size: smaller
35
+
36
+ abbr:after
37
+ content: " (" attr(title) ")"
38
+ font-size: smaller
39
+
40
+ pre, blockquote, img
41
+ page-break-inside: avoid
42
+
43
+ @page
44
+ margin: 0.5cm
45
+
46
+
47
+ p, h2, h3
48
+ orphans: 3
49
+ widows: 3
50
+
51
+ h2, h3
52
+ page-break-after: avoid
@@ -0,0 +1,71 @@
1
+ //** SCREEN STYLES **//
2
+
3
+ // Imports --------------------------------------------------------------
4
+
5
+ @import defaults
6
+
7
+ /* Layout --------------------------------------------------------------
8
+
9
+ +susy
10
+
11
+ // change '.container' to match your HTML container element
12
+ // or @extend it to apply multiple containers on your site.
13
+
14
+ .container
15
+ +container
16
+ // +show-grid("grid.png")
17
+
18
+ // show-grid loads a 64+16x24 grid image by default
19
+ // For other grid settings, run `compass grid-img 48+32x24`
20
+ // Where 30 is the column width, 10 is the gutter width,
21
+ // and 20 is the (optional) line-height.
22
+
23
+ /* Global Styles --------------------------------------------------------------
24
+
25
+ header
26
+ +columns(15)
27
+ +alpha
28
+ +leader(3)
29
+ +trailer(2)
30
+
31
+ article
32
+ @include columns(15)
33
+ @include alpha
34
+ @include omega
35
+
36
+ footer
37
+ background-color: $base
38
+
39
+ .hidden
40
+ display: none
41
+
42
+ .error_explanation, .flash_error
43
+ background-color: $error_background
44
+ background: -moz-linear-gradient(0 100% 90deg, $error_background, $background )
45
+ background: -webkit-gradient(linear, 0 0, 0 100%, from($background), to($error_background))
46
+ @include trailer(1)
47
+ +border-radius(!radius)
48
+ padding: 1em 2em
49
+ color: $error_text
50
+ -webkit-box-shadow: 0 0 0.3em $error_shadow
51
+ -moz-box-shadow: 0 0 0.3em $error_shadow
52
+ box-shadow: 0 0 0.3em $error_shadow
53
+
54
+ h3
55
+ +trailer(0)
56
+ +adjust-font-size-to(25px)
57
+
58
+ .flash_notice
59
+ background-color: $notice_background
60
+ background: -moz-linear-gradient(0 100% 90deg, $notice_background, $background )
61
+ background: -webkit-gradient(linear, 0 0, 0 100%, from($background), to($notice_background))
62
+ @include trailer(1)
63
+ +border-radius($radius)
64
+ padding: 1em 2em
65
+ color: $notice_text
66
+ -webkit-box-shadow: 0 0 0.3em $notice_shadow
67
+ -moz-box-shadow: 0 0 0.3em $notice_shadow
68
+ box-shadow: 0 0 0.3em $notice_shadow
69
+
70
+ .clear
71
+ clear: both
@@ -0,0 +1,30 @@
1
+ !!! 5
2
+ %html
3
+ %head
4
+ %meta{ :content => "text/html;charset=UTF-8", "http-equiv" => "content-type" }
5
+ %meta{:name => 'description', :content => "#{yield :description}"}
6
+ %meta{:name => 'keywords', :content => "#{yield :keywords}"}
7
+ = csrf_meta_tag
8
+ %title
9
+ #{yield :title}
10
+ = stylesheet_link_tag 'screen.css', :media => 'screen, projection'
11
+ /[if IE 7]
12
+ = stylesheet_link_tag 'ie', :media => 'screen, projection'
13
+ /[if lt IE 9]
14
+ %script{ :src => "http://ie7-js.googlecode.com/svn/version/2.1(beta4)/IE9.js" }
15
+ %body{:id => "#{yield :body_id}"}
16
+ .container
17
+ %header
18
+ %h1
19
+ #{yield :h1}
20
+ - if flash[:notice] != nil
21
+ %p{:class => "flash_notice"}
22
+ = flash[:notice]
23
+ - elsif flash[:error] != nil
24
+ %p{:class => "flash_error"}
25
+ = flash[:error]
26
+ = yield
27
+ %footer
28
+ .container
29
+ .container{:class => "sub_footer"}
30
+ %p &copy; #{Time.now.year}
@@ -0,0 +1,9 @@
1
+ - if target.errors.any?
2
+ .error_explanation
3
+ %h3
4
+ = pluralize(target.errors.count, "error")
5
+ found in your entry:
6
+ %ul
7
+ - target.errors.full_messages.each do |msg|
8
+ %li
9
+ = msg
@@ -0,0 +1,4 @@
1
+ config.generators do |g|
2
+ g.stylesheets false
3
+ g.template_engine :haml
4
+ end
@@ -0,0 +1,15 @@
1
+ # This configuration file works with both the Compass command line tool and within Rails.
2
+ require 'susy'
3
+ # Require any additional compass plugins here.
4
+
5
+ project_type = :rails
6
+ project_path = Compass::AppIntegration::Rails.root
7
+ # Set this to the root of your project when deployed:
8
+ http_path = "/"
9
+ css_dir = "public/stylesheets"
10
+ sass_dir = "app/sass"
11
+ environment = Compass::AppIntegration::Rails.env
12
+ # To enable relative paths to assets via compass helper functions. Uncomment:
13
+ # relative_assets = true
14
+ preferred_syntax = :sass
15
+ output_style = :compressed if Rails.env.production?
@@ -0,0 +1,3 @@
1
+ require 'compass'
2
+ require 'compass/app_integration/rails'
3
+ Compass::AppIntegration::Rails.initialize!
@@ -0,0 +1,10 @@
1
+ require 'sass'
2
+ module Sass::Script::Functions
3
+
4
+ # Converts a number into an integer (Useful for converting percentages etc)
5
+ def integer(number)
6
+ assert_type number, :Number
7
+ Sass::Script::Number.new(number.to_i)
8
+ end
9
+
10
+ end
metadata CHANGED
@@ -1,12 +1,8 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: i0n_rails3_generators
3
3
  version: !ruby/object:Gem::Version
4
- prerelease: false
5
- segments:
6
- - 0
7
- - 2
8
- - 2
9
- version: 0.2.2
4
+ prerelease:
5
+ version: 0.2.3
10
6
  platform: ruby
11
7
  authors:
12
8
  - Ian Alexander Wood (i0n)
@@ -14,7 +10,7 @@ autorequire:
14
10
  bindir: bin
15
11
  cert_chain: []
16
12
 
17
- date: 2010-09-08 00:00:00 +01:00
13
+ date: 2011-03-18 00:00:00 +00:00
18
14
  default_executable:
19
15
  dependencies:
20
16
  - !ruby/object:Gem::Dependency
@@ -25,8 +21,6 @@ dependencies:
25
21
  requirements:
26
22
  - - ">="
27
23
  - !ruby/object:Gem::Version
28
- segments:
29
- - 0
30
24
  version: "0"
31
25
  type: :development
32
26
  version_requirements: *id001
@@ -38,8 +32,6 @@ dependencies:
38
32
  requirements:
39
33
  - - ">="
40
34
  - !ruby/object:Gem::Version
41
- segments:
42
- - 0
43
35
  version: "0"
44
36
  type: :development
45
37
  version_requirements: *id002
@@ -71,6 +63,20 @@ files:
71
63
  - lib/generators/authlogic/complete/templates/users.yml
72
64
  - lib/generators/authlogic/complete/templates/users_controller.rb
73
65
  - lib/generators/authlogic/complete/templates/users_controller_test.rb
66
+ - lib/generators/i0n/i0n.rb
67
+ - lib/generators/i0n/layout/layout_generator.rb
68
+ - lib/generators/i0n/layout/templates/app/sass/_base.sass
69
+ - lib/generators/i0n/layout/templates/app/sass/_defaults.sass
70
+ - lib/generators/i0n/layout/templates/app/sass/ie.sass
71
+ - lib/generators/i0n/layout/templates/app/sass/print.sass
72
+ - lib/generators/i0n/layout/templates/app/sass/screen.sass
73
+ - lib/generators/i0n/layout/templates/app/views/layouts/application.haml
74
+ - lib/generators/i0n/layout/templates/app/views/shared/_error_messages.haml
75
+ - lib/generators/i0n/layout/templates/config/_application.rb
76
+ - lib/generators/i0n/layout/templates/config/compass.rb
77
+ - lib/generators/i0n/layout/templates/config/initializers/compass.rb
78
+ - lib/generators/i0n/layout/templates/lib/sass_extensions.rb
79
+ - lib/generators/i0n/layout/USAGE
74
80
  - lib/i0n_rails3_generators.rb
75
81
  - test/helper.rb
76
82
  - test/test_i0n_rails3_generators.rb
@@ -91,23 +97,17 @@ required_ruby_version: !ruby/object:Gem::Requirement
91
97
  requirements:
92
98
  - - ">="
93
99
  - !ruby/object:Gem::Version
94
- segments:
95
- - 0
96
100
  version: "0"
97
101
  required_rubygems_version: !ruby/object:Gem::Requirement
98
102
  none: false
99
103
  requirements:
100
104
  - - ">="
101
105
  - !ruby/object:Gem::Version
102
- segments:
103
- - 1
104
- - 3
105
- - 7
106
106
  version: 1.3.7
107
107
  requirements: []
108
108
 
109
109
  rubyforge_project:
110
- rubygems_version: 1.3.7
110
+ rubygems_version: 1.6.2
111
111
  signing_key:
112
112
  specification_version: 3
113
113
  summary: Custom Rails 3 Generators