goldberg_generator 0.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (186) hide show
  1. data/USAGE +34 -0
  2. data/goldberg_generator.rb +463 -0
  3. data/templates/README_GOLDBERG +22 -0
  4. data/templates/app/views/layouts/application.rhtml +80 -0
  5. data/templates/layouts/ewnf/README +8 -0
  6. data/templates/layouts/ewnf/app/views/layouts/application.rhtml +74 -0
  7. data/templates/layouts/ewnf/public/images/bg.gif +0 -0
  8. data/templates/layouts/ewnf/public/images/daddy_rightarrow.gif +0 -0
  9. data/templates/layouts/ewnf/public/images/sample.jpg +0 -0
  10. data/templates/layouts/ewnf/public/images/title_img.jpg +0 -0
  11. data/templates/layouts/ewnf/public/stylesheets/layout.css +223 -0
  12. data/templates/layouts/snooker/app/views/layouts/application.rhtml +74 -0
  13. data/templates/layouts/snooker/public/images/column_200.png +0 -0
  14. data/templates/layouts/snooker/public/images/daddy_rightarrow.gif +0 -0
  15. data/templates/layouts/snooker/public/images/footer_bg.png +0 -0
  16. data/templates/layouts/snooker/public/images/logo.jpg +0 -0
  17. data/templates/layouts/snooker/public/stylesheets/layout.css +183 -0
  18. data/templates/layouts/spoiled_brat/LICENSE.txt +211 -0
  19. data/templates/layouts/spoiled_brat/README +8 -0
  20. data/templates/layouts/spoiled_brat/app/views/layouts/application.rhtml +71 -0
  21. data/templates/layouts/spoiled_brat/public/images/blockquote-bg.gif +0 -0
  22. data/templates/layouts/spoiled_brat/public/images/body-bg.jpg +0 -0
  23. data/templates/layouts/spoiled_brat/public/images/centerColumn-bg.jpg +0 -0
  24. data/templates/layouts/spoiled_brat/public/images/daddy_leftarrow.gif +0 -0
  25. data/templates/layouts/spoiled_brat/public/images/h2-bg.gif +0 -0
  26. data/templates/layouts/spoiled_brat/public/images/h3-bg.gif +0 -0
  27. data/templates/layouts/spoiled_brat/public/images/header-bg.jpg +0 -0
  28. data/templates/layouts/spoiled_brat/public/images/hr-bg.jpg +0 -0
  29. data/templates/layouts/spoiled_brat/public/images/logo.jpg +0 -0
  30. data/templates/layouts/spoiled_brat/public/stylesheets/layout.css +379 -0
  31. data/templates/public/goldberg/images/action.png +0 -0
  32. data/templates/public/goldberg/images/add.png +0 -0
  33. data/templates/public/goldberg/images/bodybg.jpg +0 -0
  34. data/templates/public/goldberg/images/delete.png +0 -0
  35. data/templates/public/goldberg/images/down.png +0 -0
  36. data/templates/public/goldberg/images/footerbg.jpg +0 -0
  37. data/templates/public/goldberg/images/logo_right.jpg +0 -0
  38. data/templates/public/goldberg/images/menuhover.jpg +0 -0
  39. data/templates/public/goldberg/images/page.png +0 -0
  40. data/templates/public/goldberg/images/permission.png +0 -0
  41. data/templates/public/goldberg/images/role.png +0 -0
  42. data/templates/public/goldberg/images/up.png +0 -0
  43. data/templates/public/goldberg/javascripts/suckerfish.js +12 -0
  44. data/templates/public/goldberg/stylesheets/goldberg.css +142 -0
  45. data/templates/public/goldberg/stylesheets/layout.css +321 -0
  46. data/templates/public/goldberg/stylesheets/suckerfish.css +124 -0
  47. data/templates/vendor/plugins/goldberg/app/controllers/goldberg/auth_controller.rb +104 -0
  48. data/templates/vendor/plugins/goldberg/app/controllers/goldberg/content_pages_controller.rb +197 -0
  49. data/templates/vendor/plugins/goldberg/app/controllers/goldberg/controller_actions_controller.rb +134 -0
  50. data/templates/vendor/plugins/goldberg/app/controllers/goldberg/menu_items_controller.rb +184 -0
  51. data/templates/vendor/plugins/goldberg/app/controllers/goldberg/permissions_controller.rb +60 -0
  52. data/templates/vendor/plugins/goldberg/app/controllers/goldberg/roles_controller.rb +85 -0
  53. data/templates/vendor/plugins/goldberg/app/controllers/goldberg/roles_permissions_controller.rb +65 -0
  54. data/templates/vendor/plugins/goldberg/app/controllers/goldberg/site_controllers_controller.rb +157 -0
  55. data/templates/vendor/plugins/goldberg/app/controllers/goldberg/system_settings_controller.rb +75 -0
  56. data/templates/vendor/plugins/goldberg/app/controllers/goldberg/users_controller.rb +293 -0
  57. data/templates/vendor/plugins/goldberg/app/helpers/goldberg/auth_helper.rb +4 -0
  58. data/templates/vendor/plugins/goldberg/app/helpers/goldberg/content_pages_helper.rb +23 -0
  59. data/templates/vendor/plugins/goldberg/app/helpers/goldberg/controller_actions_helper.rb +5 -0
  60. data/templates/vendor/plugins/goldberg/app/helpers/goldberg/menu_items_helper.rb +4 -0
  61. data/templates/vendor/plugins/goldberg/app/helpers/goldberg/permissions_helper.rb +4 -0
  62. data/templates/vendor/plugins/goldberg/app/helpers/goldberg/roles_helper.rb +4 -0
  63. data/templates/vendor/plugins/goldberg/app/helpers/goldberg/roles_permissions_helper.rb +4 -0
  64. data/templates/vendor/plugins/goldberg/app/helpers/goldberg/site_controllers_helper.rb +4 -0
  65. data/templates/vendor/plugins/goldberg/app/helpers/goldberg/system_settings_helper.rb +4 -0
  66. data/templates/vendor/plugins/goldberg/app/helpers/goldberg/users_helper.rb +4 -0
  67. data/templates/vendor/plugins/goldberg/app/models/goldberg/content_page.rb +134 -0
  68. data/templates/vendor/plugins/goldberg/app/models/goldberg/controller_action.rb +86 -0
  69. data/templates/vendor/plugins/goldberg/app/models/goldberg/credentials.rb +128 -0
  70. data/templates/vendor/plugins/goldberg/app/models/goldberg/menu.rb +198 -0
  71. data/templates/vendor/plugins/goldberg/app/models/goldberg/menu_item.rb +127 -0
  72. data/templates/vendor/plugins/goldberg/app/models/goldberg/permission.rb +37 -0
  73. data/templates/vendor/plugins/goldberg/app/models/goldberg/role.rb +68 -0
  74. data/templates/vendor/plugins/goldberg/app/models/goldberg/roles_permission.rb +18 -0
  75. data/templates/vendor/plugins/goldberg/app/models/goldberg/site_controller.rb +59 -0
  76. data/templates/vendor/plugins/goldberg/app/models/goldberg/system_settings.rb +112 -0
  77. data/templates/vendor/plugins/goldberg/app/models/goldberg/user.rb +69 -0
  78. data/templates/vendor/plugins/goldberg/app/models/goldberg/user_mailer.rb +43 -0
  79. data/templates/vendor/plugins/goldberg/app/views/goldberg/auth/_login.rhtml +15 -0
  80. data/templates/vendor/plugins/goldberg/app/views/goldberg/auth/login.rhtml +22 -0
  81. data/templates/vendor/plugins/goldberg/app/views/goldberg/auth/logout.rhtml +2 -0
  82. data/templates/vendor/plugins/goldberg/app/views/goldberg/content_pages/_fck_create_folder.rxml +6 -0
  83. data/templates/vendor/plugins/goldberg/app/views/goldberg/content_pages/_fck_files.rxml +19 -0
  84. data/templates/vendor/plugins/goldberg/app/views/goldberg/content_pages/_form.rhtml +32 -0
  85. data/templates/vendor/plugins/goldberg/app/views/goldberg/content_pages/edit.rhtml +10 -0
  86. data/templates/vendor/plugins/goldberg/app/views/goldberg/content_pages/fck_speller_pages.rhtml +58 -0
  87. data/templates/vendor/plugins/goldberg/app/views/goldberg/content_pages/list.rhtml +22 -0
  88. data/templates/vendor/plugins/goldberg/app/views/goldberg/content_pages/new.rhtml +8 -0
  89. data/templates/vendor/plugins/goldberg/app/views/goldberg/content_pages/show.rhtml +57 -0
  90. data/templates/vendor/plugins/goldberg/app/views/goldberg/content_pages/view.rhtml +1 -0
  91. data/templates/vendor/plugins/goldberg/app/views/goldberg/content_pages/view_default.rhtml +1 -0
  92. data/templates/vendor/plugins/goldberg/app/views/goldberg/controller_actions/_form.rhtml +53 -0
  93. data/templates/vendor/plugins/goldberg/app/views/goldberg/controller_actions/edit.rhtml +9 -0
  94. data/templates/vendor/plugins/goldberg/app/views/goldberg/controller_actions/list.rhtml +27 -0
  95. data/templates/vendor/plugins/goldberg/app/views/goldberg/controller_actions/new.rhtml +10 -0
  96. data/templates/vendor/plugins/goldberg/app/views/goldberg/controller_actions/show.rhtml +13 -0
  97. data/templates/vendor/plugins/goldberg/app/views/goldberg/layouts/_tabpanel_js.rhtml +52 -0
  98. data/templates/vendor/plugins/goldberg/app/views/goldberg/layouts/_tabpanel_list.rhtml +7 -0
  99. data/templates/vendor/plugins/goldberg/app/views/goldberg/menu_items/_breadcrumbs.rhtml +5 -0
  100. data/templates/vendor/plugins/goldberg/app/views/goldberg/menu_items/_form.rhtml +42 -0
  101. data/templates/vendor/plugins/goldberg/app/views/goldberg/menu_items/_item_list.rhtml +52 -0
  102. data/templates/vendor/plugins/goldberg/app/views/goldberg/menu_items/_item_parent_list.rhtml +15 -0
  103. data/templates/vendor/plugins/goldberg/app/views/goldberg/menu_items/_menubar.rhtml +21 -0
  104. data/templates/vendor/plugins/goldberg/app/views/goldberg/menu_items/_suckerfish.rhtml +14 -0
  105. data/templates/vendor/plugins/goldberg/app/views/goldberg/menu_items/edit.rhtml +10 -0
  106. data/templates/vendor/plugins/goldberg/app/views/goldberg/menu_items/list-original.rhtml +27 -0
  107. data/templates/vendor/plugins/goldberg/app/views/goldberg/menu_items/list.rhtml +16 -0
  108. data/templates/vendor/plugins/goldberg/app/views/goldberg/menu_items/new.rhtml +9 -0
  109. data/templates/vendor/plugins/goldberg/app/views/goldberg/menu_items/show.rhtml +8 -0
  110. data/templates/vendor/plugins/goldberg/app/views/goldberg/permissions/_form.rhtml +7 -0
  111. data/templates/vendor/plugins/goldberg/app/views/goldberg/permissions/edit.rhtml +9 -0
  112. data/templates/vendor/plugins/goldberg/app/views/goldberg/permissions/list.rhtml +14 -0
  113. data/templates/vendor/plugins/goldberg/app/views/goldberg/permissions/new.rhtml +8 -0
  114. data/templates/vendor/plugins/goldberg/app/views/goldberg/permissions/show.rhtml +38 -0
  115. data/templates/vendor/plugins/goldberg/app/views/goldberg/roles/_form.rhtml +18 -0
  116. data/templates/vendor/plugins/goldberg/app/views/goldberg/roles/edit.rhtml +9 -0
  117. data/templates/vendor/plugins/goldberg/app/views/goldberg/roles/list.rhtml +21 -0
  118. data/templates/vendor/plugins/goldberg/app/views/goldberg/roles/new.rhtml +8 -0
  119. data/templates/vendor/plugins/goldberg/app/views/goldberg/roles/show.rhtml +79 -0
  120. data/templates/vendor/plugins/goldberg/app/views/goldberg/roles_permissions/_form.rhtml +13 -0
  121. data/templates/vendor/plugins/goldberg/app/views/goldberg/roles_permissions/edit.rhtml +9 -0
  122. data/templates/vendor/plugins/goldberg/app/views/goldberg/roles_permissions/list.rhtml +24 -0
  123. data/templates/vendor/plugins/goldberg/app/views/goldberg/roles_permissions/new.rhtml +8 -0
  124. data/templates/vendor/plugins/goldberg/app/views/goldberg/roles_permissions/new_permission_for_role.rhtml +8 -0
  125. data/templates/vendor/plugins/goldberg/app/views/goldberg/roles_permissions/show.rhtml +8 -0
  126. data/templates/vendor/plugins/goldberg/app/views/goldberg/site_controllers/_form.rhtml +15 -0
  127. data/templates/vendor/plugins/goldberg/app/views/goldberg/site_controllers/_list.rhtml +26 -0
  128. data/templates/vendor/plugins/goldberg/app/views/goldberg/site_controllers/edit.rhtml +9 -0
  129. data/templates/vendor/plugins/goldberg/app/views/goldberg/site_controllers/list.rhtml +107 -0
  130. data/templates/vendor/plugins/goldberg/app/views/goldberg/site_controllers/new.rhtml +8 -0
  131. data/templates/vendor/plugins/goldberg/app/views/goldberg/site_controllers/show.rhtml +38 -0
  132. data/templates/vendor/plugins/goldberg/app/views/goldberg/system_settings/_form.rhtml +71 -0
  133. data/templates/vendor/plugins/goldberg/app/views/goldberg/system_settings/edit.rhtml +9 -0
  134. data/templates/vendor/plugins/goldberg/app/views/goldberg/system_settings/list.rhtml +27 -0
  135. data/templates/vendor/plugins/goldberg/app/views/goldberg/system_settings/new.rhtml +8 -0
  136. data/templates/vendor/plugins/goldberg/app/views/goldberg/system_settings/show.rhtml +189 -0
  137. data/templates/vendor/plugins/goldberg/app/views/goldberg/user_mailer/confirmation_request.rhtml +19 -0
  138. data/templates/vendor/plugins/goldberg/app/views/goldberg/user_mailer/reset_password.rhtml +17 -0
  139. data/templates/vendor/plugins/goldberg/app/views/goldberg/user_mailer/reset_password_request.rhtml +23 -0
  140. data/templates/vendor/plugins/goldberg/app/views/goldberg/users/_form.rhtml +53 -0
  141. data/templates/vendor/plugins/goldberg/app/views/goldberg/users/confirm_registration.rhtml +26 -0
  142. data/templates/vendor/plugins/goldberg/app/views/goldberg/users/confirm_registration_submit.rhtml +4 -0
  143. data/templates/vendor/plugins/goldberg/app/views/goldberg/users/create.rhtml +19 -0
  144. data/templates/vendor/plugins/goldberg/app/views/goldberg/users/edit.rhtml +11 -0
  145. data/templates/vendor/plugins/goldberg/app/views/goldberg/users/forgot_password.rhtml +27 -0
  146. data/templates/vendor/plugins/goldberg/app/views/goldberg/users/forgot_password_submit.rhtml +4 -0
  147. data/templates/vendor/plugins/goldberg/app/views/goldberg/users/list.rhtml +18 -0
  148. data/templates/vendor/plugins/goldberg/app/views/goldberg/users/new.rhtml +19 -0
  149. data/templates/vendor/plugins/goldberg/app/views/goldberg/users/reset_password.rhtml +11 -0
  150. data/templates/vendor/plugins/goldberg/app/views/goldberg/users/reset_password_submit.rhtml +3 -0
  151. data/templates/vendor/plugins/goldberg/app/views/goldberg/users/show.rhtml +33 -0
  152. data/templates/vendor/plugins/goldberg/db/ContentPage.yml +466 -0
  153. data/templates/vendor/plugins/goldberg/db/ControllerAction.yml +162 -0
  154. data/templates/vendor/plugins/goldberg/db/MenuItem.yml +109 -0
  155. data/templates/vendor/plugins/goldberg/db/Permission.yml +21 -0
  156. data/templates/vendor/plugins/goldberg/db/Role.yml +493 -0
  157. data/templates/vendor/plugins/goldberg/db/RolesPermission.yml +26 -0
  158. data/templates/vendor/plugins/goldberg/db/SiteController.yml +61 -0
  159. data/templates/vendor/plugins/goldberg/db/SystemSettings.yml +21 -0
  160. data/templates/vendor/plugins/goldberg/db/User.yml +15 -0
  161. data/templates/vendor/plugins/goldberg/db/migrate/001_initial_setup.rb +128 -0
  162. data/templates/vendor/plugins/goldberg/db/migrate/002_menu_rest_items_users_cached_content_pages.rb +26 -0
  163. data/templates/vendor/plugins/goldberg/db/migrate/003_self_registration.rb +54 -0
  164. data/templates/vendor/plugins/goldberg/db/migrate/004_column_fixes.rb +119 -0
  165. data/templates/vendor/plugins/goldberg/init.rb +13 -0
  166. data/templates/vendor/plugins/goldberg/lib/goldberg.rb +37 -0
  167. data/templates/vendor/plugins/goldberg/lib/goldberg/controller.rb +11 -0
  168. data/templates/vendor/plugins/goldberg/lib/goldberg/filters.rb +197 -0
  169. data/templates/vendor/plugins/goldberg/lib/goldberg/helper.rb +66 -0
  170. data/templates/vendor/plugins/goldberg/lib/goldberg/migration.rb +113 -0
  171. data/templates/vendor/plugins/goldberg/lib/goldberg/migrator.rb +128 -0
  172. data/templates/vendor/plugins/goldberg/lib/goldberg/model.rb +110 -0
  173. data/templates/vendor/plugins/goldberg/lib/goldberg/routes.rb +49 -0
  174. data/templates/vendor/plugins/goldberg/lib/goldberg/test_helper.rb +82 -0
  175. data/templates/vendor/plugins/goldberg/tasks/goldberg_tasks.rake +47 -0
  176. data/templates/vendor/plugins/goldberg/test/functional/content_pages_controller_test.rb +31 -0
  177. data/templates/vendor/plugins/goldberg/test/integration/security_test.rb +134 -0
  178. data/templates/vendor/plugins/goldberg/test/test_helper.rb +40 -0
  179. data/templates/vendor/plugins/goldberg/test/unit/content_page_test.rb +87 -0
  180. data/templates/vendor/plugins/goldberg/test/unit/controller_action_test.rb +85 -0
  181. data/templates/vendor/plugins/goldberg/test/unit/menu_item_test.rb +46 -0
  182. data/templates/vendor/plugins/goldberg/test/unit/permission_test.rb +35 -0
  183. data/templates/vendor/plugins/goldberg/test/unit/site_controller_test.rb +53 -0
  184. data/templates/vendor/plugins/goldberg/test/unit/system_settings_test.rb +71 -0
  185. data/templates/vendor/plugins/goldberg/test/unit/user_test.rb +104 -0
  186. metadata +310 -0
@@ -0,0 +1,321 @@
1
+ /* layout.css
2
+
3
+ This stylesheet is based on "andreas09.css", modified for Goldberg.
4
+ The original credits follow:
5
+
6
+ andreas09 v1.0 (Dec 10th 2005) - An open source template by Andreas
7
+ Viklund - http://andreasviklund.com. Free to use for any purpose as
8
+ long as the proper credits are given to the original author.
9
+ */
10
+
11
+ body {
12
+ background:#8b8b8b;
13
+ color:#303030;
14
+ font:76% Verdana,Tahoma,Arial,sans-serif;
15
+ margin:0;
16
+ padding:0;
17
+ text-align:center;
18
+ }
19
+
20
+ a {
21
+ color:#505050;
22
+ font-weight:bold;
23
+ text-decoration:none;
24
+ }
25
+
26
+ a:hover {
27
+ color:#808080;
28
+ text-decoration:underline;
29
+ }
30
+
31
+ p {
32
+ line-height:1.5em;
33
+ margin:0 0 15px;
34
+ }
35
+
36
+ /*** Main container ***/
37
+
38
+ div.container {
39
+ background:#f0f0f0 url(/goldberg/images/bodybg.jpg) repeat-x;
40
+ color:#303030;
41
+ margin:0;
42
+ min-width:770px;
43
+ padding:0;
44
+ text-align:left;
45
+ width:100%;
46
+ }
47
+
48
+ /*** Header section ***/
49
+
50
+ div.header {
51
+ color:#ffffff;
52
+ height:85px;
53
+ margin:0 20px 10px;
54
+ text-align:left;
55
+ }
56
+
57
+ div.header img.logo_right {
58
+ float: right ;
59
+ height:85px ;
60
+ margin:0 0 0 0px ;
61
+ border:0 0 0 0px ;
62
+ }
63
+
64
+ div.header p {
65
+ line-height:1.5em;
66
+ margin:0 0 0px;
67
+ }
68
+
69
+ div.header p.right_text {
70
+ text-align: right ;
71
+ }
72
+
73
+ div.header h1, div.header h2 {
74
+ font-weight:400;
75
+ letter-spacing:-2px;
76
+ margin:0;
77
+ padding:0;
78
+ }
79
+
80
+ div.header h1 {
81
+ font-size:2.4em;
82
+ padding-top:15px;
83
+ }
84
+
85
+ div.header h2 {
86
+ font-size:1.6em;
87
+ }
88
+
89
+ /*** Horizontal menu ***/
90
+
91
+ div.mainmenu {
92
+ float:left;
93
+ margin-bottom:25px;
94
+ }
95
+
96
+ div.mainmenu ul {
97
+ font-size:16px;
98
+ margin:0;
99
+ padding:0;
100
+ }
101
+
102
+ div.mainmenu li {
103
+ float:left;
104
+ /*height:20px;*/
105
+ list-style:none;
106
+ margin:0;
107
+ padding:0;
108
+ }
109
+
110
+ div.mainmenu a {
111
+ border-right:1px solid #b0b0b0;
112
+ color:#606060;
113
+ display:block;
114
+ font-size:0.7em;
115
+ padding:5px 7px 5px;
116
+ /* text-transform:uppercase; */
117
+ }
118
+
119
+ div.mainmenu a:hover {
120
+ background:#f0f0f0 url(/goldberg/images/menuhover.jpg) top left repeat-x;
121
+ color:#505050;
122
+ text-decoration:none;
123
+ }
124
+
125
+ div.mainmenu li.selected a {
126
+ background:#f0f0f0 url(/goldberg/images/menuhover.jpg) top left repeat-x;
127
+ color:#505050;
128
+ text-decoration:none;
129
+ }
130
+
131
+ /*** Content wrap ***/
132
+
133
+ div.wrap {
134
+ clear:both;
135
+ font-size:0.9em;
136
+ padding:0;
137
+ }
138
+
139
+ /*** Sidebars ***/
140
+
141
+ div.leftside,div.rightside {
142
+ margin:0;
143
+ padding:0 10px 10px;
144
+ width:165px;
145
+ }
146
+
147
+ div.leftside {
148
+ float:left;
149
+ margin-right:10px;
150
+ }
151
+
152
+ div.rightside {
153
+ float:right;
154
+ margin-left:10px;
155
+ }
156
+
157
+ div.leftside h1, div.rightside h1 {
158
+ color:#505050;
159
+ font-size:1.6em;
160
+ font-weight:bold;
161
+ letter-spacing:-1px;
162
+ margin:0 0 12px;
163
+ }
164
+
165
+ div.leftside h2, div.rightside h2 {
166
+ font-size:1.1em;
167
+ margin:0 0 20px;
168
+ }
169
+
170
+ div.leftside p, div.rightside p {
171
+ font-size:0.9em;
172
+ line-height:1.4em;
173
+ margin:0 0 16px 10px;
174
+ }
175
+
176
+ .linklist {
177
+ list-style:none;
178
+ margin:0 0 16px 10px;
179
+ padding:0;
180
+ }
181
+
182
+ .linklist li {margin-bottom:0.7em;}
183
+
184
+ /*** Sidebar menu ***/
185
+
186
+ ul.sidemenu {
187
+ list-style-type:none;
188
+ margin-left: 0px;
189
+ padding-left: 0px;
190
+ }
191
+
192
+ ul.sidemenu li a {
193
+ background:#e8e9ea;
194
+ border:1px solid #b0b0b0;
195
+ color:#606060;
196
+ display:block;
197
+ margin-top:8px;
198
+ padding:5px 4px 4px 10px;
199
+ position:relative;
200
+ /*text-transform:uppercase;*/
201
+ width:150px;
202
+ }
203
+
204
+ ul.sidemenu ul.sidemenu li a {
205
+ font-size:0.8em;
206
+ letter-spacing:1px;
207
+ margin:3px 0 2px 20px;
208
+ padding:4px 2px 2px 8px;
209
+ width:134px;
210
+ }
211
+
212
+ ul.sidemenu a:hover, ul.sidemenu > li.selected > a {
213
+ background:#f8f9fa;
214
+ border:1px solid #909090;
215
+ color:#303030;
216
+ text-decoration:none;
217
+ }
218
+
219
+
220
+ /*** Content ***/
221
+
222
+ .content {
223
+ background-color:#fafcff;
224
+ border:1px solid #909090;
225
+ color:#2a2a2a;
226
+ padding:15px 20px 5px;
227
+ }
228
+
229
+ .content {margin:0 200px;}
230
+
231
+ div.content h1, div.content h2 {
232
+ background-color:inherit;
233
+ color:#606060;
234
+ font-size:1.8em;
235
+ font-weight:bold;
236
+ letter-spacing:-1px;
237
+ margin:0 0 15px;
238
+ padding:0;
239
+ }
240
+
241
+ div.content h2 {
242
+ font-size:1.6em;
243
+ margin-bottom:10px;
244
+ }
245
+
246
+ div.content img {
247
+ border:1px solid #b0b0b0;
248
+ }
249
+
250
+ /*** Footer ***/
251
+
252
+ div.footer {
253
+ background:#8b8b8b url(/goldberg/images/footerbg.jpg) top left repeat-x;
254
+ clear:both;
255
+ color:#d0d0d0;
256
+ font-size:0.9em;
257
+ font-weight:bold;
258
+ margin:0;
259
+ padding:20px 0;
260
+ text-align:center;
261
+ width:100%;
262
+ }
263
+
264
+ div.footer a {
265
+ color:#d0d0d0;
266
+ font-weight:bold;
267
+ }
268
+
269
+ /*** Various classes ***/
270
+
271
+ .thumbnail {
272
+ background:#fafbfc;
273
+ border:1px solid #b0b0b0;
274
+ margin:0 0 10px 10px;
275
+ padding:5px;
276
+ }
277
+
278
+
279
+ .searchform {margin:0;}
280
+
281
+ .searchbox {
282
+ background:#f0f0f0;
283
+ border:1px solid #b0b0b0;
284
+ margin:0 4px 0 0;
285
+ width:100px;
286
+ }
287
+
288
+ input[type="submit"] {
289
+ background:#f0f0f0;
290
+ border:1px solid #b0b0b0;
291
+ }
292
+
293
+ input[type="submit"]:hover {
294
+ background:#f8f9fa;
295
+ border:1px solid #909090;
296
+ color:#303030;
297
+ }
298
+
299
+
300
+ .clearingdiv {
301
+ clear:both;
302
+ height:30px;
303
+ width:1px;
304
+ }
305
+
306
+ .hide {display:none;}
307
+
308
+ /*** Text format ***/
309
+
310
+ .intro {
311
+ font-size:1.1em;
312
+ font-weight:bold;
313
+ letter-spacing:-1px;
314
+ }
315
+
316
+ .small {font-size:0.8em;}
317
+ .large {font-size:1.4em;}
318
+ .center {text-align:center;}
319
+ .right {text-align:right;}
320
+
321
+ /*** End of file ***/
@@ -0,0 +1,124 @@
1
+ /*** SUCKERFISH ***/
2
+
3
+ #suckerfish, #suckerfish ul { /* all lists */
4
+ padding: 0;
5
+ margin: 0;
6
+ list-style: none;
7
+ /* float : left;*/
8
+ }
9
+
10
+ /* Width not specified, because top-level horizontal lists
11
+ have a flexible width. */
12
+ #suckerfish li { /* all list items */
13
+ position : relative;
14
+ /* float : left;*/
15
+ line-height : 1.25em;
16
+ /* margin-bottom : -1px;*/
17
+ }
18
+
19
+ #suckerfish li ul { /* second-level lists */
20
+ position : absolute;
21
+ left: -999em;
22
+ }
23
+
24
+ #suckerfish li ul ul { /* third-and-above-level lists */
25
+ left: -999em;
26
+ }
27
+
28
+ #suckerfish li {
29
+ background-color : white;
30
+ /* border-bottom: 1px solid black ;*/
31
+ }
32
+
33
+ #suckerfish li a {
34
+ display : block;
35
+ /* color : black;
36
+ font-weight : bold;
37
+ text-decoration : none;*/
38
+ background-color : white;
39
+ /* border : 1px solid black;*/
40
+ /* padding : 0 0.5em;*/
41
+ }
42
+
43
+ #suckerfish li a:hover {
44
+ color : white;
45
+ background-color : black;
46
+ }
47
+
48
+ #suckerfish li:hover ul ul, #suckerfish li:hover ul ul ul, #suckerfish li.sfhover ul ul, #suckerfish li.sfhover ul ul ul {
49
+ left: -999em;
50
+ }
51
+
52
+ #suckerfish li:hover ul, #suckerfish li li:hover ul, #suckerfish li li li:hover ul, #suckerfish li.sfhover ul, #suckerfish li li.sfhover ul, #suckerfish li li li.sfhover ul { /* lists nested under hovered list items */
53
+ left: auto;
54
+ }
55
+
56
+ /*** TOPMENU SUCKERFISH ***/
57
+
58
+ .topmenu #suckerfish, .topmenu #suckerfish ul { /* all lists */
59
+ float: left ;
60
+ width: 100% ;
61
+ /* width : 60em ;*/
62
+ }
63
+
64
+ .topmenu #suckerfish li {
65
+ position: relative ;
66
+ float: left ;
67
+ }
68
+
69
+ .topmenu #suckerfish li ul { /* second-level lists */
70
+ width: 11em ;
71
+ }
72
+
73
+ .topmenu #suckerfish li ul ul { /* third-and-above-level lists */
74
+ margin: -1em 0 0 11.05em ;
75
+ }
76
+
77
+ .topmenu #suckerfish ul li a {
78
+ width: 11em;
79
+ /* w\idth : 10em;*/
80
+ }
81
+
82
+
83
+ /*** LEFTMENU SUCKERFISH ***/
84
+ .leftmenu #suckerfish, .leftmenu #suckerfish ul { /* all lists */
85
+ width : 11em;
86
+ }
87
+
88
+ .leftmenu #suckerfish li { /* all list items */
89
+ width: 11em;
90
+ }
91
+
92
+ .leftmenu #suckerfish li ul { /* second-level lists */
93
+ margin-left : 11.05em;
94
+ margin-top : -1.25em;
95
+ }
96
+
97
+ .leftmenu #suckerfish li a {
98
+ width: 11em;
99
+ /* w\idth : 10em;*/
100
+ }
101
+
102
+
103
+ /*** RIGHTMENU SUCKERFISH ***/
104
+ /*.rightmenu {
105
+ float: right ;
106
+ }
107
+ */
108
+ .rightmenu #suckerfish, .rightmenu #suckerfish ul { /* all lists */
109
+ width : 11em;
110
+ }
111
+
112
+ .rightmenu #suckerfish li { /* all list items */
113
+ width: 11em;
114
+ }
115
+
116
+ .rightmenu #suckerfish li ul { /* second-level lists */
117
+ margin-left : -11em;
118
+ margin-top : -1.25em;
119
+ }
120
+
121
+ .rightmenu #suckerfish li a {
122
+ width: 11em;
123
+ /* w\idth : 10em;*/
124
+ }
@@ -0,0 +1,104 @@
1
+ module Goldberg
2
+ class AuthController < ApplicationController
3
+ include Goldberg::Controller
4
+
5
+ def self.set_user(session, user_id = nil)
6
+ find_user_id = user_id || session[:goldberg][:user_id]
7
+ Goldberg.user = (if find_user_id then Goldberg::User.find(find_user_id) else nil end)
8
+
9
+ if Goldberg.user
10
+ role = Goldberg.user.role
11
+ else
12
+ role = Goldberg::Role.find(Goldberg.settings.public_role_id)
13
+ end
14
+
15
+ if role
16
+ if not role.cache or not role.cache.has_key?(:credentials)
17
+ Role.rebuild_cache
18
+ role = Goldberg::Role.find(role.id)
19
+ end
20
+ # session[:credentials] = role.cache[:credentials]
21
+ Goldberg.credentials = role.cache[:credentials]
22
+ Goldberg.menu = role.cache[:menu]
23
+ session[:goldberg][:menu_history] ||= Hash.new
24
+ if session[:goldberg][:menu_history].has_key?(session[:goldberg][:path])
25
+ Goldberg.menu.select(session[:goldberg][:menu_history][session[:goldberg][:path]])
26
+ else
27
+ Goldberg.menu.select(session[:goldberg][:menu_item])
28
+ session[:goldberg][:menu_history][session[:goldberg][:path]] =
29
+ session[:goldberg][:menu_item]
30
+ end
31
+ logger.info "Logging in user as role #{role.name}"
32
+ else
33
+ logger.error "Something went seriously wrong with the role"
34
+ end
35
+
36
+ if Goldberg.user
37
+ session[:goldberg][:user_id] = Goldberg.user.id
38
+ end
39
+ end
40
+
41
+ def login
42
+ if request.get?
43
+ self.class.clear_session(session)
44
+ render :action => 'login'
45
+ else
46
+ user = User.find_by_name(params[:login][:name])
47
+
48
+ if user and user.check_password(params[:login][:password])
49
+ logger.info "User #{params[:login][:name]} successfully logged in"
50
+ Goldberg.user = user
51
+ self.class.set_user(session, user.id)
52
+
53
+ respond_to do |wants|
54
+ wants.html do
55
+ if session[:pending_request]
56
+ logger.info "Pending request: #{session[:pending_request].inspect}"
57
+ pending = session[:pending_request]
58
+ session[:pending_request] = nil
59
+ redirect_to pending
60
+ else
61
+ redirect_to user.get_start_path
62
+ end
63
+ end
64
+ wants.xml do
65
+ render :nothing => true, :status => 200
66
+ end
67
+ end
68
+
69
+ else
70
+ logger.warn "Failed login attempt"
71
+ respond_to do |wants|
72
+ wants.html do
73
+ flash.now[:error] = "Incorrect username/password"
74
+ render :action => 'login'
75
+ end
76
+ wants.xml do
77
+ render :nothing => true, :status => 404
78
+ end
79
+ end
80
+ end
81
+ end
82
+ end # def login
83
+
84
+ def logout
85
+ if request.post?
86
+ self.class.logout(session)
87
+ end
88
+ redirect_to Goldberg.settings.public_role.get_start_path
89
+ end
90
+
91
+
92
+ protected
93
+
94
+ def self.logout(session)
95
+ session.delete
96
+ self.clear_session(session)
97
+ end
98
+
99
+ def self.clear_session(session)
100
+ session[:goldberg] = {}
101
+ end
102
+
103
+ end
104
+ end