jabe 0.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (106) hide show
  1. data/Gemfile +35 -0
  2. data/Gemfile.lock +217 -0
  3. data/LICENSE.txt +20 -0
  4. data/README.textile +12 -0
  5. data/Rakefile +55 -0
  6. data/VERSION +1 -0
  7. data/app/controllers/admin/base_controller.rb +3 -0
  8. data/app/controllers/admin/entries_controller.rb +42 -0
  9. data/app/controllers/admin/settings_controller.rb +11 -0
  10. data/app/controllers/comments_controller.rb +25 -0
  11. data/app/controllers/entries_controller.rb +26 -0
  12. data/app/helpers/application_helper.rb +9 -0
  13. data/app/models/admin.rb +9 -0
  14. data/app/models/comment.rb +17 -0
  15. data/app/models/entry.rb +17 -0
  16. data/app/models/settings.rb +2 -0
  17. data/app/stylesheets/_will_paginate.scss +102 -0
  18. data/app/stylesheets/application.scss +247 -0
  19. data/app/stylesheets/grid.scss +336 -0
  20. data/app/stylesheets/handheld.scss +7 -0
  21. data/app/stylesheets/style.scss +273 -0
  22. data/app/views/admin/entries/_form.html.haml +6 -0
  23. data/app/views/admin/entries/edit.html.haml +1 -0
  24. data/app/views/admin/entries/index.html.haml +43 -0
  25. data/app/views/admin/entries/new.html.haml +1 -0
  26. data/app/views/admin/settings/edit.html.haml +9 -0
  27. data/app/views/entries/_comment.html.haml +0 -0
  28. data/app/views/entries/_comment_form.html.haml +3 -0
  29. data/app/views/entries/index.html.haml +13 -0
  30. data/app/views/entries/show.html.haml +36 -0
  31. data/app/views/layouts/_footer.html.haml +2 -0
  32. data/app/views/layouts/_header.html.haml +4 -0
  33. data/app/views/layouts/_sidebar.html.haml +0 -0
  34. data/app/views/layouts/application.html.haml +59 -0
  35. data/config/initializers/sass.rb +5 -0
  36. data/config/initializers/settings.rb +5 -0
  37. data/config/initializers/time_formats.rb +4 -0
  38. data/config/routes.rb +26 -0
  39. data/features/admin.feature +30 -0
  40. data/features/entries.feature +24 -0
  41. data/features/step_definitions/admin_steps.rb +14 -0
  42. data/features/step_definitions/entry_steps.rb +35 -0
  43. data/features/step_definitions/support_steps.rb +3 -0
  44. data/features/step_definitions/web_steps.rb +219 -0
  45. data/features/support/blueprints.rb +31 -0
  46. data/features/support/env.rb +59 -0
  47. data/features/support/paths.rb +37 -0
  48. data/lib/generators/jabe/migrations/migrations_generator.rb +42 -0
  49. data/lib/generators/jabe/templates/migrations/create_comments.rb +20 -0
  50. data/lib/generators/jabe/templates/migrations/create_entries.rb +16 -0
  51. data/lib/generators/jabe/templates/migrations/create_settings.rb +21 -0
  52. data/lib/generators/jabe/templates/migrations/create_slugs.rb +18 -0
  53. data/lib/generators/jabe/templates/migrations/devise_create_admins.rb +26 -0
  54. data/lib/jabe.rb +9 -0
  55. data/public/.htaccess +220 -0
  56. data/public/apple-touch-icon.png +0 -0
  57. data/public/blackbird/blackbird.css +80 -0
  58. data/public/blackbird/blackbird.js +365 -0
  59. data/public/blackbird/blackbird.png +0 -0
  60. data/public/crossdomain.xml +25 -0
  61. data/public/images/delete_page.png +0 -0
  62. data/public/images/full_page.png +0 -0
  63. data/public/javascripts/application.js +34 -0
  64. data/public/javascripts/jquery-ui.js +11511 -0
  65. data/public/javascripts/jquery-ui.min.js +404 -0
  66. data/public/javascripts/jquery.js +7179 -0
  67. data/public/javascripts/jquery.min.js +167 -0
  68. data/public/javascripts/libs/dd_belatedpng.js +13 -0
  69. data/public/javascripts/libs/modernizr-1.6.min.js +30 -0
  70. data/public/javascripts/libs/profiling/charts.swf +0 -0
  71. data/public/javascripts/libs/profiling/config.js +59 -0
  72. data/public/javascripts/libs/profiling/yahoo-profiling.css +7 -0
  73. data/public/javascripts/libs/profiling/yahoo-profiling.min.js +39 -0
  74. data/public/javascripts/plugins.js +40 -0
  75. data/public/javascripts/rails.js +154 -0
  76. data/public/nginx.conf +108 -0
  77. data/public/robots.txt +5 -0
  78. data/spec/support/blueprints.rb +31 -0
  79. data/test/dummy/app/controllers/application_controller.rb +3 -0
  80. data/test/dummy/app/helpers/application_helper.rb +2 -0
  81. data/test/dummy/config/application.rb +45 -0
  82. data/test/dummy/config/boot.rb +10 -0
  83. data/test/dummy/config/environment.rb +5 -0
  84. data/test/dummy/config/environments/development.rb +26 -0
  85. data/test/dummy/config/environments/production.rb +49 -0
  86. data/test/dummy/config/environments/test.rb +35 -0
  87. data/test/dummy/config/initializers/backtrace_silencers.rb +7 -0
  88. data/test/dummy/config/initializers/devise.rb +142 -0
  89. data/test/dummy/config/initializers/inflections.rb +10 -0
  90. data/test/dummy/config/initializers/mime_types.rb +5 -0
  91. data/test/dummy/config/initializers/secret_token.rb +7 -0
  92. data/test/dummy/config/initializers/session_store.rb +8 -0
  93. data/test/dummy/config/routes.rb +58 -0
  94. data/test/dummy/db/migrate/20101229224027_create_settings.rb +21 -0
  95. data/test/dummy/db/migrate/20101229224028_create_slugs.rb +18 -0
  96. data/test/dummy/db/migrate/20101229224029_devise_create_admins.rb +26 -0
  97. data/test/dummy/db/migrate/20101229224030_create_entries.rb +16 -0
  98. data/test/dummy/db/migrate/20101229224031_create_comments.rb +20 -0
  99. data/test/dummy/db/schema.rb +82 -0
  100. data/test/dummy/vendor/plugins/acts_as_textiled/init.rb +8 -0
  101. data/test/dummy/vendor/plugins/acts_as_textiled/lib/acts_as_textiled.rb +108 -0
  102. data/test/dummy/vendor/plugins/acts_as_textiled/test/fixtures/author.rb +4 -0
  103. data/test/dummy/vendor/plugins/acts_as_textiled/test/fixtures/story.rb +4 -0
  104. data/test/dummy/vendor/plugins/acts_as_textiled/test/helper.rb +87 -0
  105. data/test/dummy/vendor/plugins/acts_as_textiled/test/textiled_test.rb +145 -0
  106. metadata +641 -0
@@ -0,0 +1,9 @@
1
+ module ApplicationHelper
2
+ def public_entry_path(entry)
3
+ "/#{entry.published_at.to_s(:url_part)}/#{entry.to_param}"
4
+ end
5
+
6
+ def public_entry_url(entry)
7
+ "#{SETTINGS.site_url}/#{public_entry_url(entry)}"
8
+ end
9
+ end
@@ -0,0 +1,9 @@
1
+ class Admin < ActiveRecord::Base
2
+ # Include default devise modules. Others available are:
3
+ # :token_authenticatable, :confirmable, :lockable and :timeoutable
4
+ devise :database_authenticatable, :recoverable, :rememberable, :trackable,
5
+ :validatable
6
+
7
+ # Setup accessible (or protected) attributes for your model
8
+ attr_accessible :email, :password, :password_confirmation, :remember_me
9
+ end
@@ -0,0 +1,17 @@
1
+ class Comment < ActiveRecord::Base
2
+ belongs_to :entry
3
+ default_scope :order => 'created_at ASC'
4
+ before_validation :bot_check
5
+ validates_presence_of :name, :email, :body, :message => 'Required'
6
+
7
+ attr_accessor :nickname
8
+
9
+ private
10
+
11
+ def bot_check
12
+ unless self.nickname.blank?
13
+ errors.add(:nickname, 'You shouldn\'t have seen this...')
14
+ false
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,17 @@
1
+ class Entry < ActiveRecord::Base
2
+ before_save :set_published_at
3
+
4
+ has_many :comments
5
+ has_friendly_id :title, :use_slug => true
6
+ acts_as_textiled :body
7
+
8
+ default_scope :order => 'published_at DESC'
9
+ scope :drafts, :conditions => { :draft => true }
10
+ scope :published, :conditions => { :draft => false }
11
+
12
+ private
13
+
14
+ def set_published_at
15
+ self.published_at = Time.now unless draft? || self.published_at
16
+ end
17
+ end
@@ -0,0 +1,2 @@
1
+ class Settings < ActiveRecord::Base
2
+ end
@@ -0,0 +1,102 @@
1
+ .digg_pagination {
2
+ background: white;
3
+ /* self-clearing method: */
4
+ a, span, em {
5
+ padding: .2em .5em;
6
+ display: block;
7
+ float: left;
8
+ margin-right: 1px; }
9
+ span.disabled {
10
+ color: #999;
11
+ border: 1px solid #DDD; }
12
+ em {
13
+ font-weight: bold;
14
+ background: #2E6AB1;
15
+ color: white;
16
+ border: 1px solid #2E6AB1; }
17
+ a {
18
+ text-decoration: none;
19
+ color: #105CB6;
20
+ border: 1px solid #9AAFE5;
21
+ &:hover, &:focus {
22
+ color: #003;
23
+ border-color: #003; } }
24
+ .page_info {
25
+ background: #2E6AB1;
26
+ color: white;
27
+ padding: .4em .6em;
28
+ width: 22em;
29
+ margin-bottom: .3em;
30
+ text-align: center;
31
+ b {
32
+ color: #003;
33
+ background: #6aa6ed;
34
+ padding: .1em .25em; } }
35
+ &:after {
36
+ content: ".";
37
+ display: block;
38
+ height: 0;
39
+ clear: both;
40
+ visibility: hidden; } }
41
+
42
+ * {
43
+ html .digg_pagination {
44
+ height: 1%; }
45
+ &:first-child+html .digg_pagination {
46
+ overflow: hidden; } }
47
+
48
+ .apple_pagination {
49
+ // background: #F1F1F1;
50
+ // border: 1px solid #E5E5E5;
51
+ text-align: center;
52
+ padding: 1em;
53
+ a, span {
54
+ padding: .2em .3em; } }
55
+
56
+ .digg_pagination em {
57
+ padding: .2em .3em; }
58
+
59
+ .apple_pagination {
60
+ span.disabled {
61
+ color: #AAA; }
62
+ em {
63
+ font-weight: bold;
64
+ background: transparent url(apple-circle.gif) no-repeat 50% 50%; }
65
+ a {
66
+ text-decoration: none;
67
+ // color: black;
68
+ &:hover, &:focus {
69
+ text-decoration: underline; } } }
70
+
71
+ .flickr_pagination {
72
+ text-align: center;
73
+ padding: .3em;
74
+ a, span {
75
+ padding: .2em .5em; } }
76
+
77
+ .digg_pagination em {
78
+ padding: .2em .5em; }
79
+
80
+ .flickr_pagination {
81
+ span.disabled {
82
+ color: #AAA; }
83
+ em {
84
+ font-weight: bold;
85
+ color: #FF0084; }
86
+ a {
87
+ border: 1px solid #DDDDDD;
88
+ color: #0063DC;
89
+ text-decoration: none;
90
+ &:hover, &:focus {
91
+ border-color: #003366;
92
+ background: #0063DC;
93
+ color: white; } }
94
+ .page_info {
95
+ color: #aaa;
96
+ padding-top: .8em; }
97
+ .prev_page, .next_page {
98
+ border-width: 2px; }
99
+ .prev_page {
100
+ margin-right: 1em; }
101
+ .next_page {
102
+ margin-left: 1em; } }
@@ -0,0 +1,247 @@
1
+ @import "will_paginate";
2
+
3
+ @mixin gradients {
4
+ background-image: -webkit-gradient(
5
+ linear,
6
+ left bottom,
7
+ left top,
8
+ color-stop(0.50, rgb(88,142,222)),
9
+ color-stop(1, rgb(150,206,255))
10
+ );
11
+ background-image: -moz-linear-gradient(
12
+ center bottom,
13
+ rgb(88,142,222) 50%,
14
+ rgb(150,206,255) 100%
15
+ );
16
+ }
17
+
18
+ .grid_1, .grid_2, .grid_3, .grid_4, .grid_5, .grid_6, .grid_7, .grid_8, .grid_9, .grid_10, .grid_11, .grid_12 {
19
+ background-color:#eee;
20
+ }
21
+
22
+ .grid_12 {
23
+ border-left:solid #222 1px;
24
+ border-right:solid #222 1px;
25
+ }
26
+
27
+ body {
28
+ background-color:#AAA;
29
+ }
30
+
31
+ header {
32
+ @include gradients;
33
+ border-bottom:solid 1px #222;
34
+ padding-bottom:10px;
35
+ color:#eee;
36
+ }
37
+
38
+ h1#site-title {
39
+ font-size:2.5em;
40
+ padding:10px 20px 5px;
41
+ }
42
+
43
+ h1#site-tagline {
44
+ font-size:1.5em;
45
+ padding:10px 20px 10px;
46
+ }
47
+
48
+ #main {
49
+ padding-top:20px
50
+ }
51
+
52
+ .entry {
53
+ padding:20px 0;
54
+ border-bottom:solid 1px #333;
55
+
56
+ .title {
57
+ font-size:1.5em;
58
+ }
59
+
60
+ .date {
61
+ font-size:.9em;
62
+ padding:5px 0;
63
+ }
64
+
65
+ .meta {
66
+ color:#eee;
67
+ background-color:#AAA;
68
+ font-size:.9em;
69
+ margin-top:10px;
70
+ padding:10px;
71
+ -webkit-border-radius: 5px;
72
+ -moz-border-radius: 5px;
73
+ border-radius: 5px;
74
+ a {
75
+ color:#eee;
76
+ }
77
+ }
78
+ }
79
+
80
+ .last {
81
+ border-bottom:none;
82
+ }
83
+
84
+ #site-title a, #site-title a:visited {
85
+ color:#eee;
86
+ text-decoration:none;
87
+ }
88
+
89
+ #comments {
90
+ padding-top:20px;
91
+
92
+ .author {
93
+ font-weight:bold;
94
+ padding:10px 0 5px 10px;
95
+
96
+ .when {
97
+ padding-left:10px;
98
+ font-size:.8em;
99
+ }
100
+ }
101
+
102
+ .body {
103
+ padding:5px 20px;
104
+ border-bottom:solid 1px #333;
105
+ }
106
+
107
+ #new_comment {
108
+ padding-top:20px;
109
+
110
+ }
111
+ }
112
+
113
+
114
+ .button {
115
+ @include gradients;
116
+ color:#eee;
117
+ height:30px;
118
+ -webkit-border-radius: 5px;
119
+ -moz-border-radius: 5px;
120
+ border-radius: 5px;
121
+ border:solid 1px #333;
122
+ padding: 0 10px !important;
123
+ overflow: visible;
124
+ }
125
+
126
+ pre {
127
+ color:#eee;
128
+ background-color:#222;
129
+ margin:10px auto;
130
+ padding:5px auto;
131
+ border-top:solid #777 2px;
132
+ border-bottom:solid #777 2px;
133
+ overflow-x:auto;
134
+ }
135
+
136
+ label abbr {
137
+ color:red;
138
+ padding:0 3px;
139
+ }
140
+
141
+ .inline-errors {
142
+ color:red;
143
+ }
144
+
145
+ #comment_nickname_input {
146
+ display:none;
147
+ }
148
+
149
+ .nav {
150
+ height:2.5em;
151
+ line-height:2.5em;
152
+ border-bottom:solid 1px #222;
153
+ background-image: -webkit-gradient(
154
+ linear,
155
+ left bottom,
156
+ left top,
157
+ color-stop(0.26, rgb(159,161,158)),
158
+ color-stop(0.63, rgb(210,214,214))
159
+ );
160
+ background-image: -moz-linear-gradient(
161
+ center bottom,
162
+ rgb(159,161,158) 26%,
163
+ rgb(210,214,214) 63%
164
+ );
165
+
166
+ li {
167
+ display:inline;
168
+ padding:0 0 0 10px;
169
+
170
+ a, a:visited, a:active {
171
+ color:#222;
172
+ }
173
+ }
174
+ }
175
+
176
+ .admin {
177
+ text-align:right;
178
+
179
+ li {
180
+ padding:0 10px 0 0;
181
+ }
182
+ }
183
+
184
+ h2 {
185
+ font-size:1.25em;
186
+ }
187
+
188
+ table.entries {
189
+ width:100%;
190
+
191
+ td {
192
+ font-size:1.1em;
193
+ height:32px;
194
+ line-height:32px;
195
+ padding:0 10px;
196
+ }
197
+
198
+ td.icons {
199
+ width:64px;
200
+ white-space:nowrap;
201
+ }
202
+
203
+ td.when {
204
+ text-align:right;
205
+ }
206
+ }
207
+
208
+ footer {
209
+ height:64px;
210
+ line-height:64px;
211
+ text-align:center;
212
+ }
213
+
214
+ form {
215
+ label {
216
+ padding-top:10px;
217
+ display:block;
218
+ }
219
+
220
+ select {
221
+ padding:5px !important;
222
+ font-size:1.5em !important;
223
+ }
224
+
225
+ input[type=submit] {
226
+ margin:10px 10px 10px auto !important;
227
+ }
228
+
229
+ input[type=text], input[type=url], input[type=email], input[type=password] {
230
+ width:50%;
231
+ padding:5px !important;
232
+ font-size:1.5em !important;
233
+ }
234
+
235
+ textarea {
236
+ width:100%;
237
+ height:200px;
238
+ padding:5px !important;
239
+ font-size:1.5em !important;
240
+ }
241
+
242
+ li {
243
+ list-style-type: none;
244
+ list-style-image: none;
245
+ list-style-position: outside;
246
+ }
247
+ }
@@ -0,0 +1,336 @@
1
+ /* Containers
2
+ ----------------------------------------------------------------------------------------------------*/
3
+ .container_12 {
4
+ margin-left: auto;
5
+ margin-right: auto;
6
+ width: 768px;
7
+
8
+
9
+ }
10
+
11
+ /* Grid >> Children (Alpha ~ First, Omega ~ Last)
12
+ ----------------------------------------------------------------------------------------------------*/
13
+
14
+ .alpha {
15
+ margin-left: 0 !important;
16
+ }
17
+
18
+ .omega {
19
+ margin-right: 0 !important;
20
+ }
21
+
22
+
23
+
24
+ /* Grid >> Global
25
+ ----------------------------------------------------------------------------------------------------*/
26
+
27
+ .grid_1,
28
+ .grid_2,
29
+ .grid_3,
30
+ .grid_4,
31
+ .grid_5,
32
+ .grid_6,
33
+ .grid_7,
34
+ .grid_8,
35
+ .grid_9,
36
+ .grid_10,
37
+ .grid_11,
38
+ .grid_12{
39
+ display:inline;
40
+ float: left;
41
+ position: relative;
42
+ margin-left: 10.0px;
43
+ margin-right: 10.0px;
44
+ }
45
+
46
+
47
+ /* Grid >> 2 Columns
48
+ ----------------------------------------------------------------------------------------------------*/
49
+
50
+ .container_12 .grid_1{
51
+ width:44px;
52
+ }
53
+
54
+ .container_12 .grid_2{
55
+ width:108px;
56
+ }
57
+
58
+ .container_12 .grid_3{
59
+ width:172px;
60
+ }
61
+
62
+ .container_12 .grid_4{
63
+ width:236px;
64
+ }
65
+
66
+ .container_12 .grid_5{
67
+ width:300px;
68
+ }
69
+
70
+ .container_12 .grid_6{
71
+ width:364px;
72
+ }
73
+
74
+ .container_12 .grid_7{
75
+ width:428px;
76
+ }
77
+
78
+ .container_12 .grid_8{
79
+ width:492px;
80
+ }
81
+
82
+ .container_12 .grid_9{
83
+ width:556px;
84
+ }
85
+
86
+ .container_12 .grid_10{
87
+ width:620px;
88
+ }
89
+
90
+ .container_12 .grid_11{
91
+ width:684px;
92
+ }
93
+
94
+ .container_12 .grid_12{
95
+ width:748px;
96
+ }
97
+
98
+
99
+
100
+
101
+
102
+ /* Prefix Extra Space >> 2 Columns
103
+ ----------------------------------------------------------------------------------------------------*/
104
+
105
+ .container_12 .prefix_1 {
106
+ padding-left:64px;
107
+ }
108
+
109
+ .container_12 .prefix_2 {
110
+ padding-left:128px;
111
+ }
112
+
113
+ .container_12 .prefix_3 {
114
+ padding-left:192px;
115
+ }
116
+
117
+ .container_12 .prefix_4 {
118
+ padding-left:256px;
119
+ }
120
+
121
+ .container_12 .prefix_5 {
122
+ padding-left:320px;
123
+ }
124
+
125
+ .container_12 .prefix_6 {
126
+ padding-left:384px;
127
+ }
128
+
129
+ .container_12 .prefix_7 {
130
+ padding-left:448px;
131
+ }
132
+
133
+ .container_12 .prefix_8 {
134
+ padding-left:512px;
135
+ }
136
+
137
+ .container_12 .prefix_9 {
138
+ padding-left:576px;
139
+ }
140
+
141
+ .container_12 .prefix_10 {
142
+ padding-left:640px;
143
+ }
144
+
145
+ .container_12 .prefix_11 {
146
+ padding-left:704px;
147
+ }
148
+
149
+
150
+
151
+ /* Suffix Extra Space >> 2 Columns
152
+ ----------------------------------------------------------------------------------------------------*/
153
+
154
+ .container_12 .suffix_1 {
155
+ padding-right:64px;
156
+ }
157
+
158
+ .container_12 .suffix_2 {
159
+ padding-right:128px;
160
+ }
161
+
162
+ .container_12 .suffix_3 {
163
+ padding-right:192px;
164
+ }
165
+
166
+ .container_12 .suffix_4 {
167
+ padding-right:256px;
168
+ }
169
+
170
+ .container_12 .suffix_5 {
171
+ padding-right:320px;
172
+ }
173
+
174
+ .container_12 .suffix_6 {
175
+ padding-right:384px;
176
+ }
177
+
178
+ .container_12 .suffix_7 {
179
+ padding-right:448px;
180
+ }
181
+
182
+ .container_12 .suffix_8 {
183
+ padding-right:512px;
184
+ }
185
+
186
+ .container_12 .suffix_9 {
187
+ padding-right:576px;
188
+ }
189
+
190
+ .container_12 .suffix_10 {
191
+ padding-right:640px;
192
+ }
193
+
194
+ .container_12 .suffix_11 {
195
+ padding-right:704px;
196
+ }
197
+
198
+
199
+
200
+ /* Push Space >> 2 Columns
201
+ ----------------------------------------------------------------------------------------------------*/
202
+
203
+ .container_12 .push_1 {
204
+ left:64px;
205
+ }
206
+
207
+ .container_12 .push_2 {
208
+ left:128px;
209
+ }
210
+
211
+ .container_12 .push_3 {
212
+ left:192px;
213
+ }
214
+
215
+ .container_12 .push_4 {
216
+ left:256px;
217
+ }
218
+
219
+ .container_12 .push_5 {
220
+ left:320px;
221
+ }
222
+
223
+ .container_12 .push_6 {
224
+ left:384px;
225
+ }
226
+
227
+ .container_12 .push_7 {
228
+ left:448px;
229
+ }
230
+
231
+ .container_12 .push_8 {
232
+ left:512px;
233
+ }
234
+
235
+ .container_12 .push_9 {
236
+ left:576px;
237
+ }
238
+
239
+ .container_12 .push_10 {
240
+ left:640px;
241
+ }
242
+
243
+ .container_12 .push_11 {
244
+ left:704px;
245
+ }
246
+
247
+
248
+
249
+
250
+
251
+ /* Pull Space >> 2 Columns
252
+ ----------------------------------------------------------------------------------------------------*/
253
+
254
+ .container_12 .pull_1 {
255
+ right:64px;
256
+ }
257
+
258
+ .container_12 .pull_2 {
259
+ right:128px;
260
+ }
261
+
262
+ .container_12 .pull_3 {
263
+ right:192px;
264
+ }
265
+
266
+ .container_12 .pull_4 {
267
+ right:256px;
268
+ }
269
+
270
+ .container_12 .pull_5 {
271
+ right:320px;
272
+ }
273
+
274
+ .container_12 .pull_6 {
275
+ right:384px;
276
+ }
277
+
278
+ .container_12 .pull_7 {
279
+ right:448px;
280
+ }
281
+
282
+ .container_12 .pull_8 {
283
+ right:512px;
284
+ }
285
+
286
+ .container_12 .pull_9 {
287
+ right:576px;
288
+ }
289
+
290
+ .container_12 .pull_10 {
291
+ right:640px;
292
+ }
293
+
294
+ .container_12 .pull_11 {
295
+ right:704px;
296
+ }
297
+
298
+
299
+
300
+
301
+ /* Clear Floated Elements
302
+ ----------------------------------------------------------------------------------------------------*/
303
+
304
+
305
+ .clear {
306
+ clear: both;
307
+ display: block;
308
+ overflow: hidden;
309
+ visibility: hidden;
310
+ width: 0;
311
+ height: 0;
312
+ }
313
+
314
+
315
+ .clearfix:after {
316
+ clear: both;
317
+ content: ' ';
318
+ display: block;
319
+ font-size: 0;
320
+ line-height: 0;
321
+ visibility: hidden;
322
+ width: 0;
323
+ height: 0;
324
+ }
325
+
326
+ .clearfix {
327
+ display: inline-block;
328
+ }
329
+
330
+ * html .clearfix {
331
+ height: 1%;
332
+ }
333
+
334
+ .clearfix {
335
+ display: block;
336
+ }