motiro 0.6.10 → 0.6.11

Sign up to get free protection for your applications and to get access to all the features.
Files changed (166) hide show
  1. data/AUTHORS +7 -11
  2. data/LICENSE +602 -262
  3. data/README +6 -7
  4. data/README.en +5 -6
  5. data/README.pt-br +6 -6
  6. data/app/controllers/account_controller.rb +5 -6
  7. data/app/controllers/application.rb +5 -6
  8. data/app/controllers/javascript_controller.rb +6 -7
  9. data/app/controllers/report_controller.rb +5 -6
  10. data/app/controllers/root_controller.rb +5 -1
  11. data/app/controllers/wiki_controller.rb +10 -8
  12. data/app/core/cache_reporter.rb +6 -7
  13. data/app/core/cache_reporter_fetcher.rb +6 -6
  14. data/app/core/chief_editor.rb +5 -6
  15. data/app/core/license.rb +598 -0
  16. data/app/core/reporter.rb +6 -7
  17. data/app/core/reporter_driver.rb +5 -5
  18. data/app/core/reporter_fetcher.rb +6 -7
  19. data/app/core/settings.rb +5 -6
  20. data/app/core/version.rb +1 -1
  21. data/app/core/wiki_reporter.rb +5 -6
  22. data/app/helpers/application_helper.rb +33 -16
  23. data/app/helpers/default_page_provider.rb +6 -7
  24. data/app/helpers/report_helper.rb +5 -6
  25. data/app/helpers/wiki_helper.rb +48 -0
  26. data/app/models/change.rb +5 -6
  27. data/app/models/chunk.rb +5 -6
  28. data/app/models/feed_observer.rb +6 -7
  29. data/app/models/headline.rb +5 -6
  30. data/app/models/page.rb +16 -7
  31. data/app/models/revision.rb +9 -9
  32. data/app/models/user.rb +6 -9
  33. data/app/models/wiki_reference.rb +5 -6
  34. data/app/models/wiki_sweeper.rb +6 -7
  35. data/app/ports/chdir_runner.rb +6 -7
  36. data/app/ports/runner.rb +5 -5
  37. data/app/reporters/darcs_connection.rb +6 -7
  38. data/app/reporters/darcs_reporter.rb +9 -10
  39. data/app/reporters/darcs_temp_repo.rb +5 -6
  40. data/app/reporters/events_reporter.rb +5 -6
  41. data/app/reporters/features_reporter.rb +5 -6
  42. data/app/reporters/subversion_reporter.rb +5 -6
  43. data/app/reporters/svn_connection.rb +6 -6
  44. data/app/reporters/svn_settings.rb +5 -5
  45. data/app/views/account/_authorization.rhtml +31 -23
  46. data/app/views/account/_availability.rhtml +1 -3
  47. data/app/views/javascript/motiro.rjs +6 -8
  48. data/app/views/layouts/_bottom.rhtml +7 -0
  49. data/app/views/report/list.rhtml +1 -1
  50. data/app/views/root/license.rhtml +5 -0
  51. data/app/views/wiki/_editbar.rhtml +2 -18
  52. data/app/views/wiki/_properties_show.rhtml +2 -1
  53. data/app/views/wiki/_show_event.rhtml +3 -1
  54. data/app/views/wiki/_show_feature.rhtml +2 -2
  55. data/app/views/wiki/diff.rhtml +2 -2
  56. data/app/views/wiki/page_feed.rxml +1 -13
  57. data/app/views/wiki/raw.rhtml +7 -0
  58. data/app/views/wiki/show.rhtml +1 -1
  59. data/app/views/wiki/sourcediff.rhtml +2 -2
  60. data/bin/motiro +5 -6
  61. data/config/initializers/motiro_core.rb +1 -0
  62. data/config/routes.rb +9 -6
  63. data/db/translation/pt-BR.rb +20 -6
  64. data/lib/array_extensions.rb +6 -7
  65. data/lib/diff_chunk_builder.rb +5 -6
  66. data/lib/differ.rb +5 -6
  67. data/lib/string_extensions.rb +5 -6
  68. data/lib/stub_hash.rb +5 -6
  69. data/lib/tasks/packaging.rake +7 -7
  70. data/lib/tasks/testing.rake +5 -6
  71. data/lib/tick_daemon.rb +5 -6
  72. data/lib/wiki_link_handler.rb +5 -6
  73. data/lib/wiki_renderer.rb +5 -6
  74. data/public/images/calendar.gif +0 -0
  75. data/public/images/done.gif +0 -0
  76. data/public/images/error.gif +0 -0
  77. data/public/images/not-done.gif +0 -0
  78. data/public/images/rss.gif +0 -0
  79. data/public/stylesheets/motiro.css +163 -170
  80. data/script/ticker +5 -6
  81. data/test/acceptance/account_test.rb +6 -7
  82. data/test/acceptance/darcs_test.rb +6 -7
  83. data/test/acceptance/events_test.rb +5 -6
  84. data/test/acceptance/main_page_test.rb +6 -7
  85. data/test/acceptance/subversion_test.rb +5 -6
  86. data/test/acceptance/ts_all_suites.rb +5 -6
  87. data/test/acceptance/wiki_test.rb +5 -6
  88. data/test/contract/darcs_test.rb +5 -6
  89. data/test/contract/svn_test.rb +5 -6
  90. data/test/fixtures/pages.yml +12 -0
  91. data/test/fixtures/revisions.yml +61 -0
  92. data/test/functional/report_controller_test.rb +5 -6
  93. data/test/functional/report_features_test.rb +5 -6
  94. data/test/functional/report_subversion_test.rb +5 -6
  95. data/test/functional/root_controller_test.rb +19 -4
  96. data/test/functional/wiki_controller_test.rb +66 -8
  97. data/test/lib/acceptance_test_case.rb +6 -7
  98. data/test/lib/darcs_excerpts.rb +5 -6
  99. data/test/lib/darcs_repo.rb +5 -6
  100. data/test/lib/hash_extensions.rb +5 -6
  101. data/test/lib/live_mode_test.rb +6 -7
  102. data/test/lib/netutils.rb +6 -7
  103. data/test/lib/platform_thread.rb +5 -5
  104. data/test/lib/selenium_extensions.rb +6 -7
  105. data/test/lib/stubio.rb +6 -7
  106. data/test/lib/webserver.rb +5 -6
  107. data/test/meta/darcs_repo_test.rb +6 -6
  108. data/test/meta/local_svn_test.rb +6 -7
  109. data/test/meta/platform_thread_test.rb +5 -5
  110. data/test/meta/stubio_test.rb +6 -7
  111. data/test/stubs/wiki_link_handler.rb +5 -6
  112. data/test/test_helper.rb +5 -6
  113. data/test/unit/array_extensions_test.rb +5 -6
  114. data/test/unit/cache_reporter_fetcher_test.rb +5 -6
  115. data/test/unit/cache_reporter_test.rb +5 -6
  116. data/test/unit/change_test.rb +5 -6
  117. data/test/unit/chdir_runner_test.rb +5 -6
  118. data/test/unit/chief_editor_test.rb +5 -6
  119. data/test/unit/darcs_connection_test.rb +5 -6
  120. data/test/unit/darcs_reporter_test.rb +14 -6
  121. data/test/unit/darcs_temp_repo_test.rb +5 -6
  122. data/test/unit/default_page_provider_test.rb +5 -6
  123. data/test/unit/diff_chunk_builder_test.rb +6 -7
  124. data/test/unit/headline_test.rb +5 -6
  125. data/test/unit/page_test.rb +45 -6
  126. data/test/unit/reporter_driver_test.rb +6 -7
  127. data/test/unit/reporter_test.rb +6 -7
  128. data/test/unit/revision_test.rb +17 -13
  129. data/test/unit/runner_test.rb +5 -6
  130. data/test/unit/string_extensions_test.rb +6 -7
  131. data/test/unit/svn_connection_test.rb +5 -5
  132. data/test/unit/svn_reporter_interaction_test.rb +6 -7
  133. data/test/unit/svn_reporter_test.rb +5 -6
  134. data/test/unit/svn_settings_test.rb +6 -7
  135. data/test/unit/user_test.rb +6 -11
  136. data/test/unit/wiki_link_handler_test.rb +5 -6
  137. data/test/unit/wiki_renderer_test.rb +7 -7
  138. data/test/unit/wiki_reporter_test.rb +5 -6
  139. data/vendor/mediacloth-trunk/lib/mediacloth/mediawikiast.rb +15 -0
  140. data/vendor/mediacloth-trunk/lib/mediacloth/mediawikihtmlgenerator.rb +18 -3
  141. data/vendor/mediacloth-trunk/lib/mediacloth/mediawikilexer.rb +48 -9
  142. data/vendor/mediacloth-trunk/lib/mediacloth/mediawikilinkhandler.rb +7 -0
  143. data/vendor/mediacloth-trunk/lib/mediacloth/mediawikiparser.rb +534 -485
  144. data/vendor/mediacloth-trunk/lib/mediacloth/mediawikiparser.y +25 -1
  145. data/vendor/mediacloth-trunk/lib/mediacloth/mediawikiwalker.rb +13 -0
  146. data/vendor/mediacloth-trunk/test/data/html1 +3 -3
  147. data/vendor/mediacloth-trunk/test/data/html10 +16 -16
  148. data/vendor/mediacloth-trunk/test/data/html11 +1 -1
  149. data/vendor/mediacloth-trunk/test/data/html13 +1 -1
  150. data/vendor/mediacloth-trunk/test/data/html4 +1 -1
  151. data/vendor/mediacloth-trunk/test/data/html5 +4 -4
  152. data/vendor/mediacloth-trunk/test/data/html7 +13 -1
  153. data/vendor/mediacloth-trunk/test/data/html9 +1 -1
  154. data/vendor/mediacloth-trunk/test/data/input1 +2 -0
  155. data/vendor/mediacloth-trunk/test/data/input7 +13 -1
  156. data/vendor/mediacloth-trunk/test/data/lex1 +1 -1
  157. data/vendor/mediacloth-trunk/test/data/lex7 +13 -1
  158. data/vendor/mediacloth-trunk/test/htmlgenerator.rb +26 -1
  159. data/vendor/mediacloth-trunk/test/lexer.rb +10 -0
  160. metadata +95 -103
  161. data/build/build.rb +0 -29
  162. data/config/report/subversion.yml +0 -26
  163. data/public/images/calendar.png +0 -0
  164. data/public/images/done.png +0 -0
  165. data/public/images/not-done.png +0 -0
  166. data/public/images/rss.png +0 -0
data/lib/stub_hash.rb CHANGED
@@ -2,18 +2,17 @@
2
2
  # Copyright (C) 2006-2008 Thiago Arrais
3
3
  #
4
4
  # This program is free software; you can redistribute it and/or modify
5
- # it under the terms of the GNU General Public License as published by
6
- # the Free Software Foundation; either version 2 of the License, or
5
+ # it under the terms of the GNU Affero General Public License as published by
6
+ # the Free Software Foundation; either version 3 of the License, or
7
7
  # any later version.
8
8
  #
9
9
  # This program is distributed in the hope that it will be useful,
10
10
  # but WITHOUT ANY WARRANTY; without even the implied warranty of
11
11
  # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
- # GNU General Public License for more details.
12
+ # GNU Affero General Public License for more details.
13
13
  #
14
- # You should have received a copy of the GNU General Public License
15
- # along with this program; if not, write to the Free Software
16
- # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
14
+ # You should have received a copy of the GNU Affero General Public License
15
+ # along with this program. If not, see <http://www.gnu.org/licenses/>.
17
16
 
18
17
  class Hash
19
18
  def method_missing(name, *args)
@@ -4,18 +4,18 @@
4
4
  # Copyright (C) 2006-2008 Thiago Arrais
5
5
  #
6
6
  # This program is free software; you can redistribute it and/or modify
7
- # it under the terms of the GNU General Public License as published by
8
- # the Free Software Foundation; either version 2 of the License, or
7
+ # it under the terms of the GNU Affero General Public License as published by
8
+ # the Free Software Foundation; either version 3 of the License, or
9
9
  # any later version.
10
10
  #
11
11
  # This program is distributed in the hope that it will be useful,
12
12
  # but WITHOUT ANY WARRANTY; without even the implied warranty of
13
13
  # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
- # GNU General Public License for more details.
14
+ # GNU Affero General Public License for more details.
15
15
  #
16
- # You should have received a copy of the GNU General Public License
17
- # along with this program; if not, write to the Free Software
18
- # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
16
+ # You should have received a copy of the GNU Affero General Public License
17
+ # along with this program. If not, see <http://www.gnu.org/licenses/>.
18
+
19
19
 
20
20
  require File.expand_path(File.dirname(__FILE__) + '/../../app/core/version')
21
21
 
@@ -33,7 +33,7 @@ unless MOTIRO_VERSION.include? 'dev'
33
33
 
34
34
  s.files = Dir.glob('**/*', File::FNM_DOTMATCH).reject do |f|
35
35
  [ /\.$/, /database\.sqlite/, /^(tmp|log)/, /(^|\/)\./,
36
- /\.log$/, /^pkg/, /\.svn/, /^vendor\//, /^_darcs/,
36
+ /\.log$/, /^pkg/, /\.svn/, /^vendor\//, /^_darcs/,
37
37
  /\~$/, /motiro(db|test)\.sqlite$/,
38
38
  /^db\/(development_structure\.sql|schema.rb)/,
39
39
  %r{public/javascript($|/)},
@@ -2,18 +2,17 @@
2
2
  # Copyright (C) 2006-2008 Thiago Arrais
3
3
  #
4
4
  # This program is free software; you can redistribute it and/or modify
5
- # it under the terms of the GNU General Public License as published by
6
- # the Free Software Foundation; either version 2 of the License, or
5
+ # it under the terms of the GNU Affero General Public License as published by
6
+ # the Free Software Foundation; either version 3 of the License, or
7
7
  # any later version.
8
8
  #
9
9
  # This program is distributed in the hope that it will be useful,
10
10
  # but WITHOUT ANY WARRANTY; without even the implied warranty of
11
11
  # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
- # GNU General Public License for more details.
12
+ # GNU Affero General Public License for more details.
13
13
  #
14
- # You should have received a copy of the GNU General Public License
15
- # along with this program; if not, write to the Free Software
16
- # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
14
+ # You should have received a copy of the GNU Affero General Public License
15
+ # along with this program. If not, see <http://www.gnu.org/licenses/>.
17
16
 
18
17
  namespace :test do
19
18
  desc "Run the tests under test/contract"
data/lib/tick_daemon.rb CHANGED
@@ -4,18 +4,17 @@
4
4
  # Copyright (C) 2006-2008 Thiago Arrais
5
5
  #
6
6
  # This program is free software; you can redistribute it and/or modify
7
- # it under the terms of the GNU General Public License as published by
8
- # the Free Software Foundation; either version 2 of the License, or
7
+ # it under the terms of the GNU Affero General Public License as published by
8
+ # the Free Software Foundation; either version 3 of the License, or
9
9
  # any later version.
10
10
  #
11
11
  # This program is distributed in the hope that it will be useful,
12
12
  # but WITHOUT ANY WARRANTY; without even the implied warranty of
13
13
  # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
- # GNU General Public License for more details.
14
+ # GNU Affero General Public License for more details.
15
15
  #
16
- # You should have received a copy of the GNU General Public License
17
- # along with this program; if not, write to the Free Software
18
- # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
16
+ # You should have received a copy of the GNU Affero General Public License
17
+ # along with this program. If not, see <http://www.gnu.org/licenses/>.
19
18
 
20
19
  require File.dirname(__FILE__) + "/../config/environment"
21
20
 
@@ -2,18 +2,17 @@
2
2
  # Copyright (C) 2006-2008 Thiago Arrais
3
3
  #
4
4
  # This program is free software; you can redistribute it and/or modify
5
- # it under the terms of the GNU General Public License as published by
6
- # the Free Software Foundation; either version 2 of the License, or
5
+ # it under the terms of the GNU Affero General Public License as published by
6
+ # the Free Software Foundation; either version 3 of the License, or
7
7
  # any later version.
8
8
  #
9
9
  # This program is distributed in the hope that it will be useful,
10
10
  # but WITHOUT ANY WARRANTY; without even the implied warranty of
11
11
  # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
- # GNU General Public License for more details.
12
+ # GNU Affero General Public License for more details.
13
13
  #
14
- # You should have received a copy of the GNU General Public License
15
- # along with this program; if not, write to the Free Software
16
- # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
14
+ # You should have received a copy of the GNU Affero General Public License
15
+ # along with this program. If not, see <http://www.gnu.org/licenses/>.
17
16
 
18
17
  class WikiLinkHandler < MediaWikiLinkHandler
19
18
 
data/lib/wiki_renderer.rb CHANGED
@@ -2,18 +2,17 @@
2
2
  # Copyright (C) 2006-2008 Thiago Arrais
3
3
  #
4
4
  # This program is free software; you can redistribute it and/or modify
5
- # it under the terms of the GNU General Public License as published by
6
- # the Free Software Foundation; either version 2 of the License, or
5
+ # it under the terms of the GNU Affero General Public License as published by
6
+ # the Free Software Foundation; either version 3 of the License, or
7
7
  # any later version.
8
8
  #
9
9
  # This program is distributed in the hope that it will be useful,
10
10
  # but WITHOUT ANY WARRANTY; without even the implied warranty of
11
11
  # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
- # GNU General Public License for more details.
12
+ # GNU Affero General Public License for more details.
13
13
  #
14
- # You should have received a copy of the GNU General Public License
15
- # along with this program; if not, write to the Free Software
16
- # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
14
+ # You should have received a copy of the GNU Affero General Public License
15
+ # along with this program. If not, see <http://www.gnu.org/licenses/>.
17
16
 
18
17
  require 'rubygems'
19
18
  require 'mediacloth'
Binary file
Binary file
Binary file
Binary file
Binary file
@@ -1,221 +1,215 @@
1
1
  body {
2
- font: normal 10pt Verdana,sans-serif;
3
- background-color: #f0f0f0;
4
- text-align: left;
5
- padding: 1em 2em;
2
+ font: normal 10pt Verdana,sans-serif;
3
+ background-color: #f0f0f0;
4
+ text-align: left;
5
+ padding: 1em 2em;
6
6
  }
7
7
 
8
8
  #notice {
9
- border: 2px solid red;
10
- padding: 0.5em;
11
- margin-bottom: 1em;
12
- background-color: red;
13
- font: bold smaller sans-serif;
14
- color: #ffffff;
9
+ border: 2px solid red;
10
+ padding: 0.5em;
11
+ margin-bottom: 1em;
12
+ background-color: red;
13
+ font: bold smaller sans-serif;
14
+ color: #ffffff;
15
15
  }
16
16
 
17
- #summary {
18
- font: smaller courier;
17
+ #summary { font: smaller courier; }
18
+
19
+ #changes { display: none; }
20
+
21
+ #header {
22
+ margin: 0;
23
+ padding: 0;
24
+ position: relative;
19
25
  }
20
26
 
21
- #changes {
22
- display: none;
27
+ #rightside { float: right; }
28
+
29
+ div.pagetext {
30
+ background-color: #FFF;
31
+ margin: 4px 0 4px 0;
32
+ padding: 0 .8em .4em .8em;
33
+ border: 1px solid #679cd2;
23
34
  }
24
35
 
25
- #header {
26
- margin: 0;
27
- padding: 0;
28
- position: relative;
29
- height: 3em;
36
+ div.pagetext div.message {
37
+ padding-top: .1em;
38
+ display: table;
30
39
  }
31
40
 
32
- div.authorization_cell {
33
- width: 9.1em;
34
- float: left;
41
+ div.pagetext div.wikierror {
42
+ border: 1px solid #ff6330;
43
+ background-color: #eeeeb0;
44
+ width: 28em;
45
+ margin: 0 0 1em 0;
35
46
  }
36
47
 
37
- #rightside {
38
- float: right;
48
+ div.message img {
49
+ float: left;
50
+ margin: 0 .2em .1em .2em;
39
51
  }
40
52
 
41
- div.pagetext {
42
- background-color: #FFF;
43
- margin: 4px 0 4px 0;
44
- padding: 0 .8em .4em .8em;
45
- border: 1px solid #679cd2;
53
+ div.message p {
54
+ display: table-cell;
55
+ vertical-align: middle;
56
+ }
57
+
58
+ div.pagetext pre.wikisource {
59
+ border: 1px solid #333;
60
+ background-color: #dddde0;
61
+ padding: .2em .4em .2em .4em;
46
62
  }
47
63
 
48
64
  div.channel div.pagetext, div.pagetext div.pagetext {
49
- background-color: #FFF;
50
- margin: 0;
51
- padding: 0;
52
- border: 0;
65
+ background-color: #FFF;
66
+ margin: 0;
67
+ padding: 0;
68
+ border: 0;
53
69
  }
54
70
 
55
71
  div#crumbs {
56
- border-bottom: solid #d0d0d0 1px;
57
- padding: .2em 0 .2em 0;
58
- color: #808080
72
+ border-bottom: solid #d0d0d0 1px;
73
+ padding: .2em 0 .2em 0;
74
+ color: #808080
59
75
  }
60
76
 
61
77
  div.page-title {
62
- margin-top: .4em;
63
- margin-bottom: 1em;
78
+ margin-top: .4em;
79
+ margin-bottom: 1em;
64
80
  }
65
81
 
66
82
  span.page-title {
67
- font-size: 2em;
68
- font-weight: bold;
83
+ font-size: 2em;
84
+ font-weight: bold;
69
85
  }
70
86
 
71
87
  span#revision {
72
- color: #808080;
73
- font-size: 1em;
74
- white-space: nowrap;
88
+ color: #808080;
89
+ font-size: 1em;
90
+ white-space: nowrap;
75
91
  }
76
92
 
77
- #mainpage {
78
- margin: 4px 332px 4px 0;
79
- }
93
+ #mainpage { margin: 4px 332px 4px 0; }
80
94
 
81
95
  div.channel {
82
- width: 316px;
83
- margin: 4px 4px 4px 4px;
96
+ width: 316px;
97
+ margin: 4px 4px 4px 4px;
84
98
  }
85
99
 
86
100
  div.channel-title {
87
- font-weight: bold;
88
- margin:0;
89
- padding: 0 2px 1px 8px;
90
- color: #000;
91
- background: #a0ccee;
101
+ font-weight: bold;
102
+ margin:0;
103
+ padding: 0 2px 1px 8px;
104
+ color: #000;
105
+ background: #a0ccee;
92
106
  }
93
107
 
94
108
  div.channel-body-outer {
95
- padding: 0 9px 0 9px;
96
- background: #a0ccee;
109
+ padding: 0 9px 0 9px;
110
+ background: #a0ccee;
97
111
  }
98
112
 
99
113
  div.pagetext a.rss {
100
- float: right;
101
- margin: .3em;
114
+ float: right;
115
+ margin: .3em;
102
116
  }
103
117
 
104
118
  a.feed {
105
- display: block;
106
- float: right;
107
- margin: 14px 10px;
119
+ display: block;
120
+ float: right;
121
+ margin: 14px 10px;
108
122
  }
109
123
 
110
124
  div.window {
111
- background-color: #a0ccee;
112
- padding: 8px 8px 8px 8px;
113
- margin: 0 0 .48em 0;
125
+ background-color: #a0ccee;
126
+ padding: 8px 8px 8px 8px;
127
+ margin: 0 0 .48em 0;
114
128
  }
115
129
 
116
130
  div.inner {
117
- background: #FFF;
118
- padding: 4px 4px 12px 4px;
131
+ background: #FFF;
132
+ padding: 4px 4px 12px 4px;
119
133
  }
120
134
 
121
- div.inner span.meta {
122
- font-size: 0.8em;
123
- }
135
+ div.inner span.meta { font-size: 0.8em; }
124
136
 
125
- div.toolbar {
126
- font-size: 0.8em;
127
- }
137
+ div.toolbar { font-size: 0.8em; }
128
138
 
129
- div.bottombar {
130
- border-top: 1px dotted #9C9C9C;
131
- }
139
+ div.bottombar { border-top: 1px dotted #9C9C9C; }
132
140
 
133
141
  div.bottombar p { margin-top: 0 }
134
142
 
135
- div.channel_toolbar {
136
- border-bottom: 1px dotted #9C9C9C;
137
- }
138
-
143
+ div.channel_toolbar { border-bottom: 1px dotted #9C9C9C; }
139
144
 
140
- .disabled {
141
- color: gray;
142
- }
145
+ .disabled { color: gray; }
143
146
 
144
147
  .marked {
145
- color: #F00;
146
- background: #FFA;
148
+ color: #F00;
149
+ background: #FFA;
147
150
  }
148
151
 
149
- .changed {
150
- background:#FFD;
151
- }
152
+ .changed { background:#FFD; }
152
153
 
153
154
  table.diff {
154
- border: solid gray;
155
- border-width: 1px 0 1px 0;
156
- border-collapse: collapse;
157
- font-family: monospace;
158
- font-size: 0.8em;
159
- margin: 0 0 1em 0;
155
+ border: 0px none;
156
+ border-bottom: 1px solid #999;
157
+ border-collapse: separate;
158
+ font-family: monospace;
159
+ font-size: 0.8em;
160
+ margin: 0 0 1em 0;
161
+ empty-cells: show;
160
162
  }
161
163
 
162
164
  table.diff pre {
163
- margin: 0;
164
- padding: 0;
165
- text-align: left;
166
- white-space: pre-wrap; /* CSS 3 */
167
- white-space: -moz-pre-wrap; /* Mozilla, 1999+ */
168
- white-space: -pre-wrap; /* Opera 4-6 */
169
- white-space: -o-pre-wrap; /* Opera 7 */
170
- word-wrap: break-word; /* IE 5.5+ */
165
+ margin: 0;
166
+ padding: 0;
167
+ text-align: left;
168
+ white-space: pre-wrap; /* CSS 3 */
169
+ white-space: -moz-pre-wrap; /* Mozilla, 1999+ */
170
+ white-space: -pre-wrap; /* Opera 4-6 */
171
+ white-space: -o-pre-wrap; /* Opera 7 */
172
+ word-wrap: break-word; /* IE 5.5+ */
171
173
  }
172
174
 
173
- table.diff td {
174
- padding: .05em .4em .05em .4em;
175
+ table.diff td, table.diff th {
176
+ padding: .05em .4em .05em .4em;
177
+ border-style: solid solid none none;
178
+ border-width: 1px 1px 0px 1px;
179
+ border-color: #ddd #999 #ddd #999;
175
180
  }
176
181
 
177
- table.diff col.line_number {
178
- text-align: center;
179
- border: solid gray;
180
- border-width: 0 1px 0 1px;
182
+ table.diff th {
183
+ font-weight: normal;
184
+ text-align: center;
181
185
  }
182
186
 
183
- table.diff col.left {
184
- border-right: 1px solid gray;
185
- width: 50%;
186
- }
187
+ table.diff th:first-child { border-left-style: solid }
187
188
 
188
- table.diff col.right {
189
- width: 50%;
189
+ table.diff tr:first-child td, table.diff tr:first-child th {
190
+ border-top: 1px solid #999
190
191
  }
191
192
 
193
+ table.diff col.left { width: 50%; }
194
+ table.diff col.right { width: 50%; }
195
+
192
196
  tbody.unchanged {
193
- background: #FFF;
197
+ background: #FFF;
198
+ border: none;
194
199
  }
195
200
 
196
- tbody.modification {
197
- background: #ffffb8;
198
- border: #606060 solid;
199
- border-width: 1px 0 1px 0;
200
- }
201
+ tbody.modification { background: #ffffb8; }
202
+ tbody.modification th, tbody.modification td { border-top-color: #dd9 }
201
203
 
202
- tbody.addition {
203
- background: #b8ffb8;
204
- border: #606060 solid;
205
- border-width: 1px 0 1px 0;
206
- }
204
+ tbody.addition { background: #b8ffb8; }
205
+ tbody.addition th, tbody.addition td { border-top-color: #9d9 }
207
206
 
208
- tbody.deletion {
209
- background: #ffb8b8;
210
- border: #606060 solid;
211
- border-width: 1px 0 1px 0;
212
- }
207
+ tbody.deletion { background: #ffb8b8; }
208
+ tbody.deletion th, tbody.deletion td { border-top-color: #d99 }
213
209
 
214
210
  tbody.separator {
215
- background: #d0d0c4;
216
- text-align: center;
217
- border: #606060 solid;
218
- border-width: 1px 0 1px 0;
211
+ background: #d0d0c4;
212
+ text-align: center;
219
213
  }
220
214
 
221
215
  table.oldernews {
@@ -241,67 +235,57 @@ table.oldernews .date { border-right-width: 0; }
241
235
  table.oldernews .relative { border-left-width: 0; }
242
236
 
243
237
  input {
244
- border: solid 1px #80aacc;
245
- margin: .2em 0 0 0;
238
+ border: solid 1px #80aacc;
239
+ margin: .2em 0 0 0;
246
240
  }
247
241
 
248
- input.button {
249
- background-color: #b0ddff;
250
- }
242
+ input.button { background-color: #b0ddff; }
251
243
 
252
- input.checkbox {
253
- border: none;
254
- }
244
+ input.checkbox { border: none; }
255
245
 
256
246
  input#txtTitle {
257
- font-size: x-large;
258
- font-family: courier;
259
- margin-top: .2em;
260
- margin-bottom: .4em;
247
+ font-size: x-large;
248
+ font-family: courier;
249
+ margin-top: .2em;
250
+ margin-bottom: .4em;
261
251
  }
262
252
 
263
253
  textarea {
264
- border: solid 1px #80aacc;
265
- width: 100%;
254
+ border: solid 1px #80aacc;
255
+ width: 100%;
266
256
  }
267
257
 
268
- div#editor div.inner {
269
- background-color: #e8f2f2;
270
- }
258
+ div#editor div.inner { background-color: #e8f2f2; }
271
259
 
272
260
  div#page_properties {
273
- margin: 0;
274
- float: left;
275
- width: 42em;
261
+ margin: 0;
262
+ float: left;
263
+ width: 42em;
276
264
  }
277
265
 
278
266
  div#loading {
279
- display: none;
280
- background-color: #123bd7;
281
- color: #fff;
282
- float: right;
283
- padding: 0.2em;
267
+ display: none;
268
+ background-color: #123bd7;
269
+ color: #fff;
270
+ float: right;
271
+ padding: 0.2em;
284
272
  }
285
273
 
286
274
  div#wiki_reference {
287
- margin: 0;
288
- margin-left: 43.6em;
275
+ margin: 0;
276
+ margin-left: 43.6em;
289
277
  }
290
278
 
291
- div#page_properties div.inner {
292
- background-color: #e8f2f2;
293
- }
279
+ div#page_properties div.inner { background-color: #e8f2f2; }
294
280
 
295
- a.done {
296
- text-decoration: line-through;
297
- }
281
+ a.done { text-decoration: line-through; }
298
282
 
299
283
  #footer {
300
- padding: 4px 6px 2px 8px;
301
- font-size: x-small;
302
- text-align: center;
303
- color: gray;
304
- clear: left;
284
+ padding: 4px 6px 2px 8px;
285
+ font-size: x-small;
286
+ text-align: center;
287
+ color: gray;
288
+ clear: left;
305
289
  }
306
290
 
307
291
  span.warning {
@@ -310,6 +294,14 @@ span.warning {
310
294
  padding: 0 3px 0 3px
311
295
  }
312
296
 
297
+ #authentication_errors {
298
+ position: absolute;
299
+ top: 0px;
300
+ left: 0px;
301
+ width: 100%;
302
+ height: 0px;
303
+ }
304
+
313
305
  #username_not_available {
314
306
  position: absolute;
315
307
  top: 12px;
@@ -326,3 +318,4 @@ span.warning {
326
318
 
327
319
  a:link { color: #3333f0 }
328
320
  a:visited { color: #88d }
321
+