typo 5.4.4 → 5.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (292) hide show
  1. data/CHANGELOG +59 -28
  2. data/MAINTAINERS +9 -17
  3. data/README +28 -20
  4. data/UPGRADE +6 -2
  5. data/app/controllers/accounts_controller.rb +1 -1
  6. data/app/controllers/admin/content_controller.rb +1 -1
  7. data/app/controllers/admin/feedback_controller.rb +3 -3
  8. data/app/controllers/admin/pages_controller.rb +2 -0
  9. data/app/controllers/application_controller.rb +6 -1
  10. data/app/controllers/articles_controller.rb +13 -1
  11. data/app/helpers/application_helper.rb +5 -2
  12. data/app/helpers/authors_helper.rb +14 -3
  13. data/app/models/article.rb +6 -4
  14. data/app/models/blog.rb +0 -4
  15. data/app/models/blog_sweeper.rb +1 -1
  16. data/app/models/content.rb +10 -5
  17. data/app/models/page_cache.rb +6 -7
  18. data/app/models/user.rb +1 -0
  19. data/app/views/admin/content/_form.html.erb +13 -11
  20. data/app/views/admin/content/_images.html.erb +1 -1
  21. data/app/views/admin/content/_simple_editor.html.erb +1 -0
  22. data/app/views/admin/content/_visual_editor.html.erb +1 -0
  23. data/app/views/admin/dashboard/_overview.html.erb +7 -7
  24. data/app/views/admin/pages/_form.html.erb +1 -0
  25. data/app/views/admin/pages/_images.html.erb +18 -0
  26. data/app/views/admin/pages/_simple_editor.html.erb +1 -2
  27. data/app/views/admin/pages/_visual_editor.html.erb +2 -1
  28. data/app/views/admin/pages/index.html.erb +1 -1
  29. data/app/views/admin/settings/feedback.html.erb +2 -1
  30. data/app/views/admin/tags/edit.html.erb +1 -1
  31. data/app/views/articles/_article.html.erb +17 -13
  32. data/app/views/articles/_article_content.html.erb +1 -0
  33. data/app/views/articles/_comment_box.html.erb +1 -1
  34. data/app/views/articles/_password_form.html.erb +10 -0
  35. data/app/views/articles/groupings.html.erb +1 -1
  36. data/app/views/articles/index.html.erb +1 -2
  37. data/app/views/articles/read.html.erb +1 -4
  38. data/app/views/articles/search.html.erb +1 -1
  39. data/app/views/layouts/administration.html.erb +1 -1
  40. data/app/views/shared/_search.html.erb +1 -1
  41. data/config/ckeditor.yml +14 -0
  42. data/config/environment.rb +13 -25
  43. data/config/environments/test.rb +1 -3
  44. data/config/filemanager.yml +16 -0
  45. data/config/initializers/access_rules.rb +5 -0
  46. data/config/routes.rb +5 -1
  47. data/db/migrate/004_add_sidebars.rb +3 -9
  48. data/db/migrate/089_drop_cache_information_table.rb +31 -0
  49. data/db/migrate/090_remove_keywords_from_posts.rb +9 -0
  50. data/db/migrate/091_adds_password_protection_to_posts.rb +9 -0
  51. data/doc/CACHE.SETUP.README +36 -0
  52. data/lang/de_DE.rb +6 -1
  53. data/lang/pl_PL.rb +221 -89
  54. data/lib/filemanager.rb +53 -0
  55. data/lib/filemanager/controller.rb +217 -0
  56. data/lib/i18n_interpolation_deprecation.rb +26 -0
  57. data/lib/rails_patch/active_support.rb +4 -0
  58. data/lib/tasks/release.rake +4 -131
  59. data/lib/typo_version.rb +1 -1
  60. data/public/.htaccess +6 -5
  61. data/public/filemanager/images/avi.gif +0 -0
  62. data/public/filemanager/images/box.gif +0 -0
  63. data/public/filemanager/images/bullet.gif +0 -0
  64. data/public/filemanager/images/close.gif +0 -0
  65. data/public/filemanager/images/closelabel.gif +0 -0
  66. data/public/filemanager/images/doc.gif +0 -0
  67. data/public/filemanager/images/donate-button.gif +0 -0
  68. data/public/filemanager/images/download-icon.gif +0 -0
  69. data/public/filemanager/images/folder.gif +0 -0
  70. data/public/filemanager/images/gif.gif +0 -0
  71. data/public/filemanager/images/htm.gif +0 -0
  72. data/public/filemanager/images/html.gif +0 -0
  73. data/public/filemanager/images/image-1.jpg +0 -0
  74. data/public/filemanager/images/image.gif +0 -0
  75. data/public/filemanager/images/jpg.gif +0 -0
  76. data/public/filemanager/images/loading.gif +0 -0
  77. data/public/filemanager/images/mov.gif +0 -0
  78. data/public/filemanager/images/nextlabel.gif +0 -0
  79. data/public/filemanager/images/pdf.gif +0 -0
  80. data/public/filemanager/images/png.gif +0 -0
  81. data/public/filemanager/images/ppt.gif +0 -0
  82. data/public/filemanager/images/prevlabel.gif +0 -0
  83. data/public/filemanager/images/rar.gif +0 -0
  84. data/public/filemanager/images/rm.gif +0 -0
  85. data/public/filemanager/images/rmvb.gif +0 -0
  86. data/public/filemanager/images/separator.gif +0 -0
  87. data/public/filemanager/images/spacer.gif +0 -0
  88. data/public/filemanager/images/swf.gif +0 -0
  89. data/public/filemanager/images/thumb-1.jpg +0 -0
  90. data/public/filemanager/images/tool_copy.gif +0 -0
  91. data/public/filemanager/images/tool_cut.gif +0 -0
  92. data/public/filemanager/images/tool_del.gif +0 -0
  93. data/public/filemanager/images/tool_folder.gif +0 -0
  94. data/public/filemanager/images/tool_imagemanager.gif +0 -0
  95. data/public/filemanager/images/tool_new.gif +0 -0
  96. data/public/filemanager/images/tool_paste.gif +0 -0
  97. data/public/filemanager/images/tool_props.gif +0 -0
  98. data/public/filemanager/images/tool_refresh.gif +0 -0
  99. data/public/filemanager/images/tool_unzip.gif +0 -0
  100. data/public/filemanager/images/tool_upload.gif +0 -0
  101. data/public/filemanager/images/tool_zip.gif +0 -0
  102. data/public/filemanager/images/txt.gif +0 -0
  103. data/public/filemanager/images/unknown.gif +0 -0
  104. data/public/filemanager/images/wmv.gif +0 -0
  105. data/public/filemanager/images/xls.gif +0 -0
  106. data/public/filemanager/images/zip.gif +0 -0
  107. data/public/filemanager/javascripts/filemanager.js +6 -0
  108. data/public/filemanager/javascripts/lang/en.js +31 -0
  109. data/public/filemanager/javascripts/lang/zh_CN.js +31 -0
  110. data/public/filemanager/javascripts/lightbox.js +497 -0
  111. data/public/filemanager/javascripts/translate.js +42 -0
  112. data/public/filemanager/resources/resources.txt +1 -0
  113. data/public/filemanager/stylesheets/filelist.css +147 -0
  114. data/public/filemanager/stylesheets/general.css +135 -0
  115. data/public/filemanager/stylesheets/lightbox.css +27 -0
  116. data/public/javascripts/prototype_ext.js +117 -0
  117. data/public/stylesheets/administration.css +19 -2
  118. data/themes/dirtylicious/views/articles/_article.html.erb +16 -12
  119. data/themes/dirtylicious/views/articles/_article_content.html.erb +1 -0
  120. data/themes/dirtylicious/views/articles/_password_form.html.erb +10 -0
  121. data/themes/scribbish/views/articles/_article.html.erb +18 -14
  122. data/themes/scribbish/views/articles/_article_content.html.erb +1 -0
  123. data/themes/scribbish/views/articles/_password_form.html.erb +10 -0
  124. data/themes/standard_issue/views/articles/_article.html.erb +16 -12
  125. data/themes/standard_issue/views/articles/_article_content.html.erb +1 -0
  126. data/themes/standard_issue/views/articles/_password_form.html.erb +10 -0
  127. data/themes/true-blue-3/helpers/theme_helper.rb +2 -2
  128. data/themes/true-blue-3/images/submit_form.jpg +0 -0
  129. data/themes/true-blue-3/stylesheets/style.css +27 -3
  130. data/themes/true-blue-3/views/articles/_article.html.erb +13 -8
  131. data/themes/true-blue-3/views/articles/_article_content.html.erb +1 -0
  132. data/themes/true-blue-3/views/articles/_comment_form.html.erb +1 -1
  133. data/themes/true-blue-3/views/articles/_password_form.html.erb +10 -0
  134. data/themes/true-blue-3/views/categories/_article.html.erb +5 -0
  135. data/themes/true-blue-3/views/tags/_article.html.erb +4 -0
  136. data/themes/typographic/views/articles/_article.html.erb +16 -12
  137. data/themes/typographic/views/articles/_article_content.html.erb +1 -0
  138. data/themes/typographic/views/articles/_password_form.html.erb +10 -0
  139. data/vendor/plugins/easy-ckeditor/app/controllers/ckeditor_controller.rb +2 -1
  140. data/vendor/plugins/easy-ckeditor/lib/ckeditor.rb +1 -20
  141. data/vendor/plugins/easy-ckeditor/{tasks → lib/tasks}/ckeditor_tasks.rake +0 -0
  142. data/vendor/plugins/filemanager/app/controllers/fm/filemanager_controller.rb +22 -0
  143. data/vendor/plugins/filemanager/app/views/fm/filemanager/index.html.erb +512 -0
  144. data/vendor/plugins/filemanager/app/views/fm/filemanager/view.html.erb +67 -0
  145. data/vendor/plugins/filemanager/filemanager.yml +16 -0
  146. data/vendor/plugins/static_sidebar/lib/static_sidebar.rb +4 -2
  147. data/vendor/plugins/typo_converter/{tasks → lib/tasks}/typo_converters_tasks.rake +0 -0
  148. data/vendor/plugins/typo_login_system/lib/access_control.rb +24 -1
  149. data/vendor/plugins/typo_textfilter_code/{tasks → lib/tasks}/typo_textfilter_code_tasks.rake +0 -0
  150. data/vendor/plugins/typo_textfilter_code/lib/typo_textfilter_code.rb +4 -3
  151. data/vendor/plugins/typo_textfilter_flickr/{tasks → lib/tasks}/typo_textfilter_flickr_tasks.rake +0 -0
  152. data/vendor/plugins/typo_textfilter_htmlfilter/{tasks → lib/tasks}/typo_textfilter_htmlfilter_tasks.rake +0 -0
  153. data/vendor/plugins/typo_textfilter_lightbox/{tasks → lib/tasks}/typo_textfilter_lightbox_tasks.rake +0 -0
  154. data/vendor/plugins/typo_textfilter_markdown/{tasks → lib/tasks}/typo_textfilter_markdown_tasks.rake +0 -0
  155. data/vendor/plugins/typo_textfilter_none/{tasks → lib/tasks}/typo_textfilter_none_tasks.rake +0 -0
  156. data/vendor/plugins/typo_textfilter_smartypants/{tasks → lib/tasks}/typo_textfilter_smartypants_tasks.rake +0 -0
  157. data/vendor/plugins/typo_textfilter_textile/{tasks → lib/tasks}/typo_textfilter_textile_tasks.rake +0 -0
  158. data/vendor/plugins/typo_textfilter_textile_and_markdown/{tasks → lib/tasks}/typo_textfilter_textile_and_markdown_tasks.rake +0 -0
  159. data/vendor/plugins/xml_sidebar/views/content.rhtml +1 -1
  160. metadata +190 -195
  161. data/app/controllers/admin/cache_controller.rb +0 -9
  162. data/app/models/cache_information.rb +0 -19
  163. data/db/schema.rb +0 -242
  164. data/doc/test_themes.rb +0 -50
  165. data/public/javascripts/ckeditor/config.js +0 -27
  166. data/spec/controllers/accounts_controller_spec.rb +0 -414
  167. data/spec/controllers/admin/cache_controller_spec.rb +0 -18
  168. data/spec/controllers/admin/categories_controller_spec.rb +0 -73
  169. data/spec/controllers/admin/content_controller_spec.rb +0 -443
  170. data/spec/controllers/admin/dashboard_controller_spec.rb +0 -13
  171. data/spec/controllers/admin/feedback_controller_spec.rb +0 -308
  172. data/spec/controllers/admin/pages_controller_spec.rb +0 -80
  173. data/spec/controllers/admin/profiles_controller_spec.rb +0 -22
  174. data/spec/controllers/admin/resources_controller_spec.rb +0 -53
  175. data/spec/controllers/admin/settings_controller_spec.rb +0 -80
  176. data/spec/controllers/admin/tags_controller_spec.rb +0 -64
  177. data/spec/controllers/admin/textfilters_controller_spec.rb +0 -20
  178. data/spec/controllers/admin/themes_controller_spec.rb +0 -30
  179. data/spec/controllers/admin/users_controller_spec.rb +0 -109
  180. data/spec/controllers/application_controller_spec.rb +0 -18
  181. data/spec/controllers/articles_controller_spec.rb +0 -440
  182. data/spec/controllers/authors_controller_spec.rb +0 -42
  183. data/spec/controllers/backend_controller_spec.rb +0 -337
  184. data/spec/controllers/categories_controller_spec.rb +0 -117
  185. data/spec/controllers/comments_controller_spec.rb +0 -137
  186. data/spec/controllers/routes/articles_routing_spec.rb +0 -31
  187. data/spec/controllers/routes/xml_routing_spec.rb +0 -71
  188. data/spec/controllers/setup_controller_spec.rb +0 -24
  189. data/spec/controllers/tags_controller_spec.rb +0 -147
  190. data/spec/controllers/textfilter_controller_spec.rb +0 -192
  191. data/spec/controllers/theme_controller_spec.rb +0 -39
  192. data/spec/controllers/xml_controller_spec.rb +0 -185
  193. data/spec/factories.rb +0 -69
  194. data/spec/helpers/application_helper_spec.rb +0 -25
  195. data/spec/helpers/content_helper_spec.rb +0 -28
  196. data/spec/lib/text_filter_plugin_spec.rb +0 -15
  197. data/spec/models/amazon_sidebar_spec.rb +0 -40
  198. data/spec/models/article_closing_spec.rb +0 -42
  199. data/spec/models/article_spec.rb +0 -515
  200. data/spec/models/blog_spec.rb +0 -116
  201. data/spec/models/cache_information_spec.rb +0 -42
  202. data/spec/models/cache_support_spec.rb +0 -51
  203. data/spec/models/category_spec.rb +0 -44
  204. data/spec/models/comment_spec.rb +0 -240
  205. data/spec/models/configuration_spec.rb +0 -91
  206. data/spec/models/content_state/feedback_states_spec.rb +0 -64
  207. data/spec/models/notification_spec.rb +0 -8
  208. data/spec/models/page_cache_spec.rb +0 -30
  209. data/spec/models/page_spec.rb +0 -91
  210. data/spec/models/ping_pinger_spec.rb +0 -33
  211. data/spec/models/ping_spec.rb +0 -154
  212. data/spec/models/redirect_spec.rb +0 -17
  213. data/spec/models/resource_spec.rb +0 -39
  214. data/spec/models/route_cache_spec.rb +0 -11
  215. data/spec/models/sidebar_spec.rb +0 -7
  216. data/spec/models/static_sidebar_spec.rb +0 -17
  217. data/spec/models/tag_spec.rb +0 -65
  218. data/spec/models/text_filter_spec.rb +0 -34
  219. data/spec/models/theme_spec.rb +0 -45
  220. data/spec/models/trackback_spec.rb +0 -60
  221. data/spec/models/trigger_spec.rb +0 -40
  222. data/spec/models/user_spec.rb +0 -198
  223. data/spec/rcov.opts +0 -2
  224. data/spec/spec.opts +0 -4
  225. data/spec/spec_helper.rb +0 -133
  226. data/spec/views/articles/index_spec.rb +0 -63
  227. data/spec/views/articles/read_spec.rb +0 -67
  228. data/spec/views/comments/html_sanitization_spec.rb +0 -119
  229. data/test/fixtures/blogs.yml +0 -27
  230. data/test/fixtures/categories.yml +0 -29
  231. data/test/fixtures/categorizations.yml +0 -31
  232. data/test/fixtures/contents.yml +0 -231
  233. data/test/fixtures/feedback.yml +0 -180
  234. data/test/fixtures/notification_mailer/article +0 -3
  235. data/test/fixtures/notification_mailer/comment +0 -3
  236. data/test/fixtures/notification_mailer/trackback +0 -3
  237. data/test/fixtures/notifications.yml +0 -0
  238. data/test/fixtures/page_caches.yml +0 -7
  239. data/test/fixtures/profiles.yml +0 -27
  240. data/test/fixtures/redirects.yml +0 -10
  241. data/test/fixtures/resources.yml +0 -21
  242. data/test/fixtures/sidebars.yml +0 -10
  243. data/test/fixtures/tags.yml +0 -10
  244. data/test/fixtures/text_filters.yml +0 -37
  245. data/test/fixtures/triggers.yml +0 -1
  246. data/test/fixtures/users.yml +0 -101
  247. data/test/mocks/test/dns_mock.rb +0 -13
  248. data/test/mocks/test/flickr_mock.rb +0 -30
  249. data/test/mocks/test/http_mock.rb +0 -39
  250. data/test/mocks/test/theme_mock.rb +0 -5
  251. data/test/mocks/test/xmlrpc_mock.rb +0 -28
  252. data/test/mocks/themes/123-numbers-in-path/about.markdown +0 -0
  253. data/test/mocks/themes/CamelCaseDirectory/about.markdown +0 -0
  254. data/test/mocks/themes/i-have-special-chars/about.markdown +0 -0
  255. data/test/mocks/themes/typographic/about.markdown +0 -7
  256. data/test/mocks/themes/typographic/images/Thumbs.db +0 -0
  257. data/test/mocks/themes/typographic/images/accept.png +0 -0
  258. data/test/mocks/themes/typographic/images/accept50.png +0 -0
  259. data/test/mocks/themes/typographic/images/bg_body.jpg +0 -0
  260. data/test/mocks/themes/typographic/images/bg_white.png +0 -0
  261. data/test/mocks/themes/typographic/images/bg_wrapper.jpg +0 -0
  262. data/test/mocks/themes/typographic/images/bullet_bottom.png +0 -0
  263. data/test/mocks/themes/typographic/images/bullet_right.png +0 -0
  264. data/test/mocks/themes/typographic/images/email_open.png +0 -0
  265. data/test/mocks/themes/typographic/images/email_open50.png +0 -0
  266. data/test/mocks/themes/typographic/images/meta.png +0 -0
  267. data/test/mocks/themes/typographic/images/page_edit.png +0 -0
  268. data/test/mocks/themes/typographic/images/page_edit50.png +0 -0
  269. data/test/mocks/themes/typographic/images/tag.png +0 -0
  270. data/test/mocks/themes/typographic/images/user.png +0 -0
  271. data/test/mocks/themes/typographic/images/user50.png +0 -0
  272. data/test/mocks/themes/typographic/images/world_link.png +0 -0
  273. data/test/mocks/themes/typographic/images/world_link50.png +0 -0
  274. data/test/mocks/themes/typographic/layouts/default.html.erb +0 -42
  275. data/test/mocks/themes/typographic/preview.png +0 -0
  276. data/test/mocks/themes/typographic/stylesheets/colors.css +0 -51
  277. data/test/mocks/themes/typographic/stylesheets/layout.css +0 -346
  278. data/test/mocks/themes/typographic/stylesheets/reset.css +0 -5
  279. data/test/mocks/themes/typographic/stylesheets/style.css +0 -36
  280. data/test/mocks/themes/typographic/views/articles/_article.html.erb +0 -41
  281. data/test/mocks/themes/typographic/views/articles/_comment.html.erb +0 -14
  282. data/test/mocks/themes/typographic/views/articles/_comment_form.html.erb +0 -48
  283. data/test/mocks/themes/typographic/views/articles/_comment_list.html.erb +0 -7
  284. data/test/mocks/themes/typographic/views/articles/_trackback.html.erb +0 -9
  285. data/test/mocks/themes/typographic/views/articles/comment_preview.html.erb +0 -10
  286. data/test/mocks/themes/typographic/views/articles/index.html.erb +0 -5
  287. data/test/mocks/themes/typographic/views/articles/read.html.erb +0 -42
  288. data/test/mocks/themes/typographic/views/shared/_search.html.erb +0 -17
  289. data/test/mocks/themes/typographic/views/theme/static_view_test.html.erb +0 -1
  290. data/test/test_helper.rb +0 -13
  291. data/themes/true-blue-3/images/frederic-de-villamil.jpg +0 -0
  292. data/themes/true-blue-3/images/textarea_bg.jpg +0 -0
@@ -0,0 +1,42 @@
1
+ function htmlEncode(text) {
2
+ if (!text)
3
+ return '' ;
4
+ text = text.replace(/&/g, '&');
5
+ text = text.replace(/</g, '&lt;');
6
+ text = text.replace(/>/g, '&gt;');
7
+ return text ;
8
+ }
9
+ function translateTag(tag, propertyToSet, encode) {
10
+ var tags = document.getElementsByTagName(tag) ;
11
+ var sKey, s ;
12
+ for (var i = 0 ; i < tags.length ; i++ ) {
13
+ if ((sKey = tags[i].getAttribute( 'fmLang' ))) {
14
+ if ((s = FMLang[sKey]) && s.length > 0) {
15
+ if (encode) {
16
+ s = htmlEncode(s);
17
+ }
18
+ tags[i][ propertyToSet ] = s ;
19
+
20
+ }
21
+ }
22
+ }
23
+ }
24
+ function translatePage() {
25
+ translateTag('INPUT', 'value');
26
+ translateTag('SPAN', 'innerHTML');
27
+ translateTag('LABEL', 'innerHTML');
28
+ translateTag('OPTION', 'innerHTML', true);
29
+ translateTag('LEGEND', 'innerHTML');
30
+ }
31
+
32
+ function getText(key, defaultValue) {
33
+ if (!FMLang[key]) {
34
+ if (!defaultValue) {
35
+ return key;
36
+ } else {
37
+ return defaultValue;
38
+ }
39
+ } else {
40
+ return FMLang[key];
41
+ }
42
+ }
@@ -0,0 +1 @@
1
+ Filemanager
@@ -0,0 +1,147 @@
1
+ HTML BODY {
2
+ HEIGHT: 100%
3
+ }
4
+ HTML BODY {
5
+ PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 40px 0px 0px; OVERFLOW: hidden; PADDING-TOP: 0px
6
+ }
7
+ HTML #toolbar {
8
+ PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; PADDING-TOP: 0px; POSITION: absolute; TOP: 0px; HEIGHT: 40px;
9
+ }
10
+ HTML #filelist {
11
+ PADDING-RIGHT: 0px; OVERFLOW-Y: scroll; OVERFLOW-X: hidden; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; PADDING-TOP: 0px; HEIGHT: 600px;
12
+ }
13
+ #top {
14
+ WIDTH: 100%
15
+ }
16
+ #filelist {
17
+ WIDTH: 100%;
18
+ }
19
+ BODY {
20
+ BACKGROUND-COLOR: #f0f0ee
21
+ }
22
+ A:link {
23
+ FONT-SIZE: 12px; COLOR: #000000; TEXT-DECORATION: none
24
+ }
25
+ A:active {
26
+ TEXT-DECORATION: underline
27
+ }
28
+ A:visited {
29
+ FONT-SIZE: 12px; COLOR: #000000; TEXT-DECORATION: none
30
+ }
31
+ A:hover {
32
+ TEXT-DECORATION: underline
33
+ }
34
+ .filelistPath {
35
+ BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 3px; FONT-WEIGHT: bold; FONT-SIZE: 9pt; VERTICAL-ALIGN: middle; OVERFLOW: hidden; COLOR: #000000; LINE-HEIGHT: 15px; FONT-FAMILY: Sans-serif, Verdana, Arial; HEIGHT: 15px
36
+ }
37
+ .mceSeparatorLine {
38
+ BORDER-RIGHT: 0px; PADDING-RIGHT: 0px; BORDER-TOP: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN-LEFT: 4px; BORDER-LEFT: 0px; MARGIN-RIGHT: 2px; PADDING-TOP: 0px; BORDER-BOTTOM: 0px
39
+ }
40
+ A.mceButtonDisabled IMG {
41
+ MARGIN-TOP: 1px; MARGIN-LEFT: 1px; WIDTH: 20px; CURSOR: default; HEIGHT: 20px
42
+ }
43
+ A.mceButtonNormal IMG {
44
+ MARGIN-TOP: 1px; MARGIN-LEFT: 1px; WIDTH: 20px; CURSOR: default; HEIGHT: 20px
45
+ }
46
+ A.mceButtonSelected IMG {
47
+ MARGIN-TOP: 1px; MARGIN-LEFT: 1px; WIDTH: 20px; CURSOR: default; HEIGHT: 20px
48
+ }
49
+ A.mceButtonDisabled IMG {
50
+ BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px
51
+ }
52
+ A.mceButtonNormal IMG {
53
+ BORDER-RIGHT: #f0f0ee 1px solid; BORDER-TOP: #f0f0ee 1px solid; BORDER-LEFT: #f0f0ee 1px solid; BORDER-BOTTOM: #f0f0ee 1px solid
54
+ }
55
+ A.mceButtonSelected IMG {
56
+ BORDER-RIGHT: #f0f0ee 1px solid; BORDER-TOP: #f0f0ee 1px solid; BORDER-LEFT: #f0f0ee 1px solid; BORDER-BOTTOM: #f0f0ee 1px solid
57
+ }
58
+ A.mceButtonSelected IMG {
59
+ BORDER-RIGHT: #c0c0bb 1px solid; BORDER-TOP: #c0c0bb 1px solid; BORDER-LEFT: #c0c0bb 1px solid; BORDER-BOTTOM: #c0c0bb 1px solid
60
+ }
61
+ A.mceButtonNormal IMG:hover {
62
+ BORDER-RIGHT: #0a246a 1px solid; BORDER-TOP: #0a246a 1px solid; BORDER-LEFT: #0a246a 1px solid; CURSOR: default; BORDER-BOTTOM: #0a246a 1px solid; BACKGROUND-COLOR: #b6bdd2
63
+ }
64
+ A.mceButtonSelected IMG:hover {
65
+ BORDER-RIGHT: #0a246a 1px solid; BORDER-TOP: #0a246a 1px solid; BORDER-LEFT: #0a246a 1px solid; CURSOR: default; BORDER-BOTTOM: #0a246a 1px solid; BACKGROUND-COLOR: #b6bdd2
66
+ }
67
+ A.mceButtonDisabled IMG {
68
+ BORDER-RIGHT: #f0f0ee 1px solid; BORDER-TOP: #f0f0ee 1px solid; BORDER-LEFT: #f0f0ee 1px solid; CURSOR: default; BORDER-BOTTOM: #f0f0ee 1px solid; moz-opacity: 0.3; opacity: 0.3
69
+ }
70
+ HTML A.mceButtonNormal IMG {
71
+ BORDER-RIGHT: 0px; BORDER-TOP: 0px; MARGIN-TOP: 2px; MARGIN-BOTTOM: 1px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px
72
+ }
73
+ HTML A.mceButtonSelected IMG {
74
+ BORDER-RIGHT: 0px; BORDER-TOP: 0px; MARGIN-TOP: 2px; MARGIN-BOTTOM: 1px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px
75
+ }
76
+ HTML A.mceButtonDisabled IMG {
77
+ BORDER-RIGHT: 0px; BORDER-TOP: 0px; MARGIN-TOP: 2px; MARGIN-BOTTOM: 1px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px
78
+ }
79
+ HTML A.mceButtonDisabled IMG {
80
+ BORDER-RIGHT: 0px; BORDER-TOP: 0px; FILTER: progid:DXImageTransform.Microsoft.Alpha(opacity=30); BORDER-LEFT: 0px; BORDER-BOTTOM: 0px
81
+ }
82
+ HTML A.mceButtonDisabled {
83
+ BORDER-RIGHT: #f0f0ee 1px solid; BORDER-TOP: #f0f0ee 1px solid; BORDER-LEFT: #f0f0ee 1px solid; BORDER-BOTTOM: #f0f0ee 1px solid
84
+ }
85
+ HTML A.mceButtonNormal {
86
+ BORDER-RIGHT: #f0f0ee 1px solid; BORDER-TOP: #f0f0ee 1px solid; BORDER-LEFT: #f0f0ee 1px solid; CURSOR: default; BORDER-BOTTOM: #f0f0ee 1px solid
87
+ }
88
+ HTML A.mceButtonSelected {
89
+ BORDER-RIGHT: #f0f0ee 1px solid; BORDER-TOP: #f0f0ee 1px solid; BORDER-LEFT: #f0f0ee 1px solid; CURSOR: default; BORDER-BOTTOM: #f0f0ee 1px solid
90
+ }
91
+ HTML A.mceButtonSelected {
92
+ BORDER-RIGHT: #c0c0bb 1px solid; BORDER-TOP: #c0c0bb 1px solid; BORDER-LEFT: #c0c0bb 1px solid; BORDER-BOTTOM: #c0c0bb 1px solid
93
+ }
94
+ HTML A.mceButtonNormal:hover {
95
+ BORDER-RIGHT: #0a246a 1px solid; BORDER-TOP: #0a246a 1px solid; BORDER-LEFT: #0a246a 1px solid; CURSOR: default; BORDER-BOTTOM: #0a246a 1px solid; BACKGROUND-COLOR: #b6bdd2
96
+ }
97
+ HTML A.mceButtonSelected:hover {
98
+ BORDER-RIGHT: #0a246a 1px solid; BORDER-TOP: #0a246a 1px solid; BORDER-LEFT: #0a246a 1px solid; CURSOR: default; BORDER-BOTTOM: #0a246a 1px solid; BACKGROUND-COLOR: #b6bdd2
99
+ }
100
+ HTML .mceSelectList {
101
+ MARGIN-TOP: 2px
102
+ }
103
+ .status {
104
+ BORDER-RIGHT: #cccccc 1px solid; BORDER-TOP: 0px; FONT-WEIGHT: bold; FONT-SIZE: 9pt; PADDING-BOTTOM: 2px; BORDER-LEFT: #cccccc 1px solid; PADDING-TOP: 2px; BORDER-BOTTOM: #cccccc 1px solid; FONT-FAMILY: "MS Sans Serif", Verdana, Arial; BACKGROUND-COLOR: #f0f0ee
105
+ }
106
+ .statusError {
107
+ COLOR: #880000
108
+ }
109
+ .statusMsg {
110
+ COLOR: #000000
111
+ }
112
+ .toolbaritems {
113
+
114
+ }
115
+ FORM {
116
+ PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px
117
+ }
118
+ TD {
119
+ FONT-SIZE: 9pt; FONT-FAMILY: "MS Sans Serif", Verdana, Arial
120
+ }
121
+ .filelistHeadRow TD {
122
+ BORDER-RIGHT: buttonshadow 1px solid; PADDING-RIGHT: 3px; BORDER-TOP: buttonhighlight 1px solid; PADDING-LEFT: 3px; FONT-WEIGHT: bold; PADDING-BOTTOM: 1px; BORDER-LEFT: buttonhighlight 1px solid; PADDING-TOP: 1px; BORDER-BOTTOM: buttonshadow 1px solid; BACKGROUND-COLOR: #d4d0c8
123
+ }
124
+ .filelistHeadCol A {
125
+ COLOR: #000000
126
+ }
127
+ .filelistHeadCol A:visited {
128
+ COLOR: #000000
129
+ }
130
+ .filelistFileName {
131
+ PADDING-LEFT: 4px
132
+ }
133
+ .filelistCutFileName {
134
+ PADDING-LEFT: 4px
135
+ }
136
+ .filelistRowOdd {
137
+ BACKGROUND-COLOR: #ffffff
138
+ }
139
+ .filelistRowEven {
140
+ BACKGROUND-COLOR: #f7f7f7
141
+ }
142
+ .sortarrow {
143
+ MARGIN-BOTTOM: 2px; MARGIN-LEFT: 7px
144
+ }
145
+ .cutFile {
146
+ FILTER: progid:DXImageTransform.Microsoft.Alpha(opacity=40); moz-opacity: 0.4; opacity: 0.4
147
+ }
@@ -0,0 +1,135 @@
1
+ BODY {
2
+ FONT-SIZE: 12px; MARGIN: 0px; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; BACKGROUND-COLOR: #ffffff
3
+ }
4
+ FIELDSET {
5
+ PADDING-RIGHT: 8px; PADDING-LEFT: 8px; PADDING-BOTTOM: 8px; PADDING-TOP: 8px
6
+ }
7
+ HTML FIELDSET {
8
+ MARGIN-TOP: -12px
9
+ }
10
+ FORM {
11
+ PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px
12
+ }
13
+ leg2end {
14
+ PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px
15
+ }
16
+ LEGEND {
17
+ FONT-WEIGHT: bold; FONT-SIZE: 9pt; FONT-FAMILY: "MS Sans Serif", Verdana, Arial
18
+ }
19
+ A:link {
20
+ FONT-SIZE: 12px; COLOR: #000000; TEXT-DECORATION: none
21
+ }
22
+ A:active {
23
+ TEXT-DECORATION: underline
24
+ }
25
+ A:visited {
26
+ FONT-SIZE: 12px; COLOR: #000000; TEXT-DECORATION: none
27
+ }
28
+ A:hover {
29
+ TEXT-DECORATION: underline
30
+ }
31
+ TD {
32
+ FONT-SIZE: 9pt; FONT-FAMILY: "MS Sans Serif", Verdana, Arial
33
+ }
34
+ .statusError {
35
+ COLOR: #880000
36
+ }
37
+ .statusMsg {
38
+ COLOR: #000000
39
+ }
40
+ .disabledFileName {
41
+ COLOR: #888888
42
+ }
43
+ .inputText {
44
+ BORDER-RIGHT: #cccccc 1px solid; BORDER-TOP: #cccccc 1px solid; BACKGROUND: #ffffff; BORDER-LEFT: #cccccc 1px solid; BORDER-BOTTOM: #cccccc 1px solid
45
+ }
46
+ .inputFile {
47
+ BORDER-RIGHT: #cccccc 1px solid; BORDER-TOP: #cccccc 1px solid; BACKGROUND: #ffffff; BORDER-LEFT: #cccccc 1px solid; BORDER-BOTTOM: #cccccc 1px solid
48
+ }
49
+ .inputFile:unknown {
50
+ BORDER-RIGHT: #000000 1px solid; BORDER-TOP: #888888 1px solid; BACKGROUND: #dddddd; BORDER-LEFT: #888888 1px solid; BORDER-BOTTOM: #000000 1px solid
51
+ }
52
+ INPUT {
53
+ FONT-SIZE: 12px; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
54
+ }
55
+ SELECT {
56
+ FONT-SIZE: 12px; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
57
+ }
58
+ TEXTAREA {
59
+ FONT-SIZE: 12px; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
60
+ }
61
+ .title {
62
+ FONT-SIZE: 12px; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
63
+ }
64
+ .title {
65
+ FONT-WEIGHT: bold; FONT-SIZE: 12px
66
+ }
67
+ .button {
68
+ BORDER-RIGHT: #000000 1px solid; BORDER-TOP: #888888 1px solid; BACKGROUND: #dddddd; BORDER-LEFT: #888888 1px solid; BORDER-BOTTOM: #000000 1px solid
69
+ }
70
+ #insert {
71
+ FONT-WEIGHT: bold; BACKGROUND-COLOR: #ffffff
72
+ }
73
+ #view {
74
+ FONT-WEIGHT: bold; BACKGROUND-COLOR: #ffffff
75
+ }
76
+ .button {
77
+ FONT-WEIGHT: bold; BACKGROUND-COLOR: #ffffff
78
+ }
79
+ .previewText {
80
+ FONT-SIZE: 9pt; FONT-FAMILY: "MS Sans Serif", Verdana, Arial
81
+ }
82
+ .previewSubTitle {
83
+ FONT-SIZE: 9pt; FONT-FAMILY: "MS Sans Serif", Verdana, Arial
84
+ }
85
+ .previewSubTitle {
86
+ FONT-WEIGHT: bold
87
+ }
88
+ .previewText {
89
+ PADDING-BOTTOM: 5px
90
+ }
91
+ #errorBody {
92
+ BACKGROUND-COLOR: #f0f0ee
93
+ }
94
+ #previewBody {
95
+ BACKGROUND-IMAGE: url(../images/preview_bg.gif); MARGIN: 24px 12px 12px; BACKGROUND-REPEAT: repeat-y; BACKGROUND-COLOR: #f0f0ee
96
+ }
97
+ #previewWrapper {
98
+
99
+ }
100
+ #previewIframe {
101
+ BORDER-RIGHT: #000000 1px solid; BORDER-TOP: #000000 1px solid; BORDER-LEFT: #000000 1px solid; WIDTH: 100%; BORDER-BOTTOM: #000000 1px solid; HEIGHT: 200px; BACKGROUND-COLOR: #ffffff
102
+ }
103
+ UNKNOWN {
104
+ WIDTH: 252px
105
+ }
106
+ UNKNOWN {
107
+ PADDING-TOP: 5px
108
+ }
109
+ HTML #previewIframe {
110
+ MARGIN-TOP: 4px
111
+ }
112
+ HTML #previewNoPreviewBox {
113
+ MARGIN-TOP: 4px
114
+ }
115
+ #previewNoPreviewBox {
116
+ BORDER-RIGHT: #000000 1px solid; BORDER-TOP: #000000 1px solid; BORDER-LEFT: #000000 1px solid; WIDTH: 100%; BORDER-BOTTOM: #000000 1px solid; HEIGHT: 200px; TEXT-ALIGN: center
117
+ }
118
+ #previewNoPreviewText {
119
+ FONT-SIZE: 9pt; FONT-FAMILY: "MS Sans Serif", Verdana, Arial; POSITION: relative; TOP: 45%
120
+ }
121
+ .downloadLink:link {
122
+ TEXT-DECORATION: underline
123
+ }
124
+ .downloadLink:visited {
125
+ TEXT-DECORATION: underline
126
+ }
127
+ #createdirBody {
128
+ BACKGROUND-COLOR: #f0f0ee
129
+ }
130
+ #createzipBody {
131
+ BACKGROUND-COLOR: #f0f0ee
132
+ }
133
+ #previewNewDocIframe {
134
+ BORDER-RIGHT: #000000 1px solid; BORDER-TOP: #000000 1px solid; BORDER-LEFT: #000000 1px solid; WIDTH: 200px; BORDER-BOTTOM: #000000 1px solid; HEIGHT: 200px; BACKGROUND-COLOR: #ffffff
135
+ }
@@ -0,0 +1,27 @@
1
+ #lightbox{ position: absolute; left: 0; width: 100%; z-index: 100; text-align: center; line-height: 0;}
2
+ #lightbox img{ width: auto; height: auto;}
3
+ #lightbox a img{ border: none; }
4
+
5
+ #outerImageContainer{ position: relative; background-color: #fff; width: 250px; height: 250px; margin: 0 auto; }
6
+ #imageContainer{ padding: 10px; }
7
+
8
+ #loading{ position: absolute; top: 40%; left: 0%; height: 25%; width: 100%; text-align: center; line-height: 0; }
9
+ #hoverNav{ position: absolute; top: 0; left: 0; height: 100%; width: 100%; z-index: 10; }
10
+ #imageContainer>#hoverNav{ left: 0;}
11
+ #hoverNav a{ outline: none;}
12
+
13
+ #prevLink, #nextLink{ width: 49%; height: 100%; background-image: url(data:image/gif;base64,AAAA); /* Trick IE into showing hover */ display: block; }
14
+ #prevLink { left: 0; float: left;}
15
+ #nextLink { right: 0; float: right;}
16
+ #prevLink:hover, #prevLink:visited:hover { background: url(/filemanager/images/prevlabel.gif) left 15% no-repeat; }
17
+ #nextLink:hover, #nextLink:visited:hover { background: url(/filemanager/images/nextlabel.gif) right 15% no-repeat; }
18
+
19
+ #imageDataContainer{ font: 10px Verdana, Helvetica, sans-serif; background-color: #fff; margin: 0 auto; line-height: 1.4em; overflow: auto; width: 100% ; }
20
+
21
+ #imageData{ padding:0 10px; color: #666; }
22
+ #imageData #imageDetails{ width: 70%; float: left; text-align: left; }
23
+ #imageData #caption{ font-weight: bold; }
24
+ #imageData #numberDisplay{ display: block; clear: left; padding-bottom: 1.0em; }
25
+ #imageData #bottomNavClose{ width: 66px; float: right; padding-bottom: 0.7em; outline: none;}
26
+
27
+ #overlay{ position: absolute; top: 0; left: 0; z-index: 90; width: 100%; height: 500px; background-color: #000; }
@@ -0,0 +1,117 @@
1
+ /**
2
+ * @author leon.li
3
+ */
4
+ function setCssClass(obj, className) {
5
+ if (Prototype.Browser.IE) {
6
+ obj.className = className;
7
+ } else {
8
+ obj.setAttribute("class", className);
9
+ }
10
+ }
11
+ function getCssClass(obj) {
12
+ if (Prototype.Browser.IE) {
13
+ return obj.className;
14
+ } else {
15
+ return obj.getAttribute("class");
16
+ }
17
+ }
18
+ function showLoading(replace) {
19
+ if (typeof(replace)!='undefined' && replace != null ) {
20
+ replace.innerHTML = $('loading').innerHTML;
21
+ } else {
22
+ Try.these(function() {setCssClass($('loading'), "showlayer")});
23
+ }
24
+ }
25
+ function hideLoading(replace, backupHtml) {
26
+ if (typeof(replace)!='undefined' && replace != null ) {
27
+ replace.innerHTML = $('success').innerHTML;
28
+ setTimeout(restoreFromBackup, 1000, replace, backupHtml);
29
+ } else {
30
+ Try.these(function() {setCssClass($('loading'), "hidelayer")});
31
+ }
32
+ }
33
+ function restoreFromBackup(replace, backupHtml) {
34
+ replace.innerHTML = backupHtml;
35
+ }
36
+ function ajaxPost(link, formObj, viewObj, decorator, success, replace) {
37
+ if (link == "" || link == null) {
38
+ link = formObj.action;
39
+ }
40
+ var backupHtml = null;
41
+ if (typeof(replace)!='undefined' && replace != null) {
42
+ backupHtml = replace.innerHTML;
43
+ } else {
44
+ replace = "";
45
+ }
46
+ if (typeof(success)=='undefined' || success == null) {
47
+ success = "";
48
+ }
49
+ if (typeof(decorator)=='undefined' || decorator == null) {
50
+ decorator = "";
51
+ } else {
52
+ decorator = "&decorator=" + decorator;
53
+ }
54
+ showLoading(replace);
55
+ var realsuccess = function(){
56
+ hideLoading(replace,backupHtml);
57
+ success();
58
+ }
59
+ if (typeof(viewObj)!='undefined' && viewObj != null) {
60
+ new Ajax.Updater(viewObj, link, {
61
+ parameters: Form.serialize(formObj) + decorator,
62
+ onComplete: realsuccess,
63
+ evalScripts: true,
64
+ method: "post",
65
+ encoding: "UTF-8"
66
+ })
67
+ } else {
68
+ new Ajax.Request(link, {
69
+ parameters: Form.serialize(formObj),
70
+ onComplete: realsuccess,
71
+ evalScripts: true,
72
+ method: "post",
73
+ encoding: "UTF-8"
74
+ })
75
+ }
76
+ }
77
+ function ajaxLink(link, viewObj, decorator, success, replace) {
78
+ if (link == "" || link == null) {
79
+ link = formObj.action;
80
+ }
81
+ var backupHtml = null;
82
+ if (typeof(replace)!='undefined' && replace != null) {
83
+ backupHtml = replace.innerHTML;
84
+ } else {
85
+ replace = "";
86
+ }
87
+ if (typeof(success)=='undefined' || success == null) {
88
+ success = "";
89
+ }
90
+ if (typeof(decorator)=='undefined' || decorator == null) {
91
+ decorator = "";
92
+ } else {
93
+ decorator = {"decorator":decorator};
94
+ }
95
+ showLoading(replace);
96
+ var realsuccess = function(){
97
+ hideLoading(replace,backupHtml);
98
+ success();
99
+ }
100
+ if (typeof(viewObj)!='undefined' && viewObj != null) {
101
+
102
+ new Ajax.Updater(viewObj, link, {
103
+ parameters: decorator,
104
+ onComplete: realsuccess,
105
+ evalScripts: true,
106
+ method: "get",
107
+ encoding: "UTF-8"
108
+ })
109
+ } else {
110
+ new Ajax.Request(link, {
111
+ onComplete: realsuccess,
112
+ evalScripts: true,
113
+ method: "get",
114
+ encoding: "UTF-8"
115
+ })
116
+ }
117
+ }