motiro 0.6.10 → 0.6.11

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 (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
@@ -6,29 +6,37 @@
6
6
  :id => 'passwords_do_not_match', :class => 'warning',
7
7
  :style=> 'display:none' %>
8
8
  <% form_tag :controller => 'account', :action=> 'login' do %>
9
- <div class="authorization_cell">
10
- <%= content_tag :label, 'User'.t, :for=> 'user_login'%><br />
11
- <%= text_field 'user', 'login', :size => 12,
12
- :value => flash[:desired_login] %>
13
- </div>
14
- <div class="authorization_cell">
15
- <%= content_tag :label, 'Password'.t, :for=> 'user_password'%><br />
16
- <%= password_field 'user', 'password', :size => 12 %>
17
- </div>
18
- <div id="password_confirm" class="authorization_cell" style="display: none;">
19
- <%= content_tag :label, 'Confirmation'.t, :for=> 'user_password_confirmation'%>
20
- <%= password_field 'user', 'password_confirmation',
21
- :size => 12,
22
- :disabled => true %>
23
- </div>
24
- <div class="authorization_cell">
25
- <input type="checkbox" id="chk_new_user"
26
- name="chk_new_user" class="checkbox"
27
- onClick="tooglePasswordConfirmation(document.forms[0].chk_new_user.checked)" />
28
- <%= 'New user?'.t %><br />
29
- <input type='hidden' name='return_to' value="<%= request.env['REQUEST_URI'] -%>"/>
30
- <input class='button' type="submit" name="login" value="Login &#187;" />
31
- </div>
9
+ <table>
10
+ <tbody>
11
+ <tr>
12
+ <td><%= content_tag :label, 'User'.t, :for=> 'user_login' -%></td>
13
+ <td><%= content_tag :label, 'Password'.t, :for=> 'user_password' -%></td>
14
+ <td id="confirm_label" style="display: none;">
15
+ <%= content_tag :label, 'Confirmation'.t, :for=> 'user_password_confirmation'%>
16
+ </td>
17
+ <td>
18
+ <input type="checkbox" id="chk_new_user"
19
+ name="chk_new_user" class="checkbox"
20
+ onClick="tooglePasswordConfirmation(document.forms[0].chk_new_user.checked)" />
21
+ <%= 'New user?'.t %><br />
22
+ <input type='hidden' name='return_to' value="<%= request.env['REQUEST_URI'] -%>"/>
23
+ </td>
24
+ </tr>
25
+ <tr>
26
+ <td>
27
+ <%= text_field 'user', 'login', :size => 12,
28
+ :value => flash[:desired_login] %>
29
+ </td>
30
+ <td><%= password_field 'user', 'password', :size => 12 %></td>
31
+ <td id="confirm_field" style="display: none;">
32
+ <%= password_field 'user', 'password_confirmation',
33
+ :size => 12,
34
+ :disabled => true %>
35
+ </td>
36
+ <td><input class='button' type="submit" name="login" value="Login &#187;" /></td>
37
+ </tr>
38
+ </tbody>
39
+ </table>
32
40
  <% if flash[:login_failure] %>
33
41
  <%= content_tag(:span,
34
42
  'Incorrect username or password. Please try again.'.t,
@@ -1,5 +1,3 @@
1
1
  <% if @login_not_available %>
2
2
  <span class="warning" id="username_not_available"><%= 'Not available'.t -%></span>
3
- <% else %>
4
- <span style="position: absolute" />
5
- <% end %>
3
+ <% end %>
@@ -51,15 +51,13 @@ function extraPropertiesLoaded() {
51
51
  }
52
52
 
53
53
  function tooglePasswordConfirmation(show) {
54
- var elem = document.getElementById('password_confirm');
55
- var state = show ? 'block' : 'none';
56
- var action = show ? '#{url_for :controller => 'account', :action => 'signup'}' : '#{url_for :controller => 'account', :action => 'login'}' ;
57
-
54
+ document.getElementById("authentication_errors").style.display =
55
+ document.getElementById("confirm_field").style.display =
56
+ document.getElementById("confirm_label").style.display = show ? '':'none';
57
+
58
58
  document.getElementById("user_password_confirmation").disabled = !show;
59
- document.getElementById("authentication_errors").style.display = state;
60
- document.forms[0].action = action;
61
59
 
62
- elem.style.display = state;
60
+ document.forms[0].action = show ? '#{url_for :controller => 'account', :action => 'signup'}' : '#{url_for :controller => 'account', :action => 'login'}';
63
61
  }
64
62
 
65
63
  function check_password_confirmation() {
@@ -130,4 +128,4 @@ for(i=0;i<v.length;i++){
130
128
  }
131
129
  return(objlist);
132
130
  }
133
- JS
131
+ JS
@@ -1,5 +1,12 @@
1
1
  <div id="footer">
2
2
  <p>Motiro <%= 'version'.t -%> <%= MOTIRO_VERSION -%></p>
3
+ <p>
4
+ <%= link_to 'Source code'.t,
5
+ 'http://www.motiro.org/wiki/show/Download' -%>
6
+ <%= 'is available.'.t %> <%= 'See the'.t -%>
7
+ <%= link_to 'terms and conditions'.t,
8
+ :controller => 'root', :action => 'license' -%>.
9
+ </p>
3
10
  </div>
4
11
  </body>
5
12
  </html>
@@ -1,5 +1,5 @@
1
1
  <div class='channel-title'>
2
- <%= link_to( image_tag('rss.png', :border => 0, :class => 'rss'),
2
+ <%= link_to( image_tag('rss.gif', :border => 0, :class => 'rss'),
3
3
  { :controller => 'report', :action => 'list', :reporter => @name,
4
4
  :format => 'xml', :locale => @locale },
5
5
  :class => 'feed' )
@@ -0,0 +1,5 @@
1
+ <% pagetext('GNU Affero General Public License') do %>
2
+ <% cache(:controller=> 'root', :action => 'license') do %>
3
+ <%= render_wiki(LICENSE_WIKI_TEXT) %>
4
+ <% end %>
5
+ <% end %>
@@ -1,22 +1,6 @@
1
1
  <div class='toolbar bottombar'>
2
2
  <%= render :partial => 'editor' %>
3
- <% if current_user.nil? then %>
4
- <span class='disabled'>
5
- <%= 'Edit'.t -%> <%= '(requires authentication)'.t -%>
6
- </span>
7
- <% elsif !current_user.can_edit?(@page) then
8
- klass = if flash[:not_authorized] then 'marked' else 'none' end
9
- %>
10
- <span class='disabled'>
11
- <%= 'Edit'.t -%> <%= content_tag('span',
12
- '(not authorized)'.t,
13
- :class => klass) -%>
14
- </span>
15
- <% else %>
16
- <%= link_to( 'Edit'.t,
17
- { :controller => 'wiki',
18
- :action => 'edit',
19
- :page_name => @page.name } )%>
20
- <% end %>
3
+ <%= edition_link(current_user, @page) -%>
4
+ <%= switch_view_link(@page) -%>
21
5
  <%= page_history_link(@page) -%>
22
6
  </div>
@@ -1,4 +1,5 @@
1
1
  <% begin %>
2
- <%= render(:partial => 'show_' + @page.kind) -%>
2
+ <%= content_tag :div, render(:partial => 'show_' + @page.kind),
3
+ :class => 'message' %>
3
4
  <% rescue; end %>
4
5
 
@@ -1,3 +1,5 @@
1
- <%= image_tag 'calendar.png' -%>
1
+ <%= image_tag 'calendar.gif' -%>
2
+ <p>
2
3
  <%= 'This event was planned for'.t -%>
3
4
  <%= @page.happens_at.localize('%d %B %Y (%A)') -%>
5
+ </p>
@@ -1,2 +1,2 @@
1
- <%= image_tag(@page.done? ? 'done.png' : 'not-done.png') %>
2
- <%= 'This feature is'.t + ' ' + (@page.done? ? 'done'.t : 'not done'.t) %>
1
+ <%= image_tag(@page.done? ? 'done.gif' : 'not-done.gif') %>
2
+ <p><%= 'This feature is'.t + ' ' + (@page.done? ? 'done'.t : 'not done'.t) %></p>
@@ -1,4 +1,4 @@
1
1
  <% pagetext(@page.title, '(Comparing revisions %s and %s)' / @old_revision_num / @new_revision_num) do %>
2
- <%= @renderer.render_wiki_diff(@old_revision.text, @new_revision.text) %>
2
+ <%= render_wiki_diff(@old_revision, @new_revision) %>
3
3
  <%= render :partial => 'diffbar' %>
4
- <% end %>
4
+ <% end %>
@@ -11,19 +11,7 @@ xml.rss 'version' => '2.0',
11
11
  xml.pubDate @page.modified_at.to_s(:rfc822)
12
12
  xml.ttl '60'
13
13
  @page.revisions.reverse[0..10].each do |rev|
14
- xml.item do
15
- xml.title h(rev.title)
16
- if rev.position > 1
17
- xml.description @renderer.render_wiki_diff(
18
- @page.revisions[rev.position - 2].text, rev.text)
19
- else
20
- xml.description @renderer.render_wiki_text(rev.text)
21
- end
22
- xml.pubDate h(rev.modified_at.to_s(:rfc822))
23
- xml.dc :creator, h(rev.last_editor.login)
24
- xml.guid server_url_for(:action => 'show', :page_name => @page.name,
25
- :revision => rev.position)
26
- end
14
+ xml << rss_item_for_revision(rev)
27
15
  end
28
16
  end
29
17
  end
@@ -0,0 +1,7 @@
1
+ <% pagetext(@page.title, @page.position ? '(Raw wiki text from revision %s)' / @page.position.to_s : '(Raw wiki text)'.t) do %>
2
+ <% cache(:controller=> 'wiki', :action => 'raw', :page => @page.name,
3
+ :revision => @page_revision_id, :locale_suffix => @locale) do %>
4
+ <pre class="wikisource"><%= h(@page.text) -%></pre>
5
+ <% end %>
6
+ <%= render :partial => 'editbar' %>
7
+ <% end %>
@@ -1,4 +1,4 @@
1
- <% pagetext(@page.title, @page.respond_to?(:position) ? '(Revision %s)' / @page.position.to_s : nil) do %>
1
+ <% pagetext(@page.title, @page.position ? '(Revision %s)' / @page.position.to_s : nil) do %>
2
2
  <% cache(:controller=> 'wiki', :action => 'show',
3
3
  :page => @page.name, :locale_suffix => @locale,
4
4
  :revision => @page_revision_id) do %>
@@ -1,4 +1,4 @@
1
1
  <% pagetext(@page.title, '(Comparing revisions %s and %s)' / @old_revision_num / @new_revision_num) do %>
2
- <%= render_diff_table(@old_revision.diff(@new_revision_num.to_i))%>
2
+ <%= render_wiki_sourcediff(@old_revision, @new_revision) %>
3
3
  <%= render :partial => 'diffbar' %>
4
- <% end %>
4
+ <% end %>
data/bin/motiro 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.expand_path(File.dirname(__FILE__) + '/../vendor/motiro-installer')
21
20
 
@@ -1,3 +1,4 @@
1
+ require 'core/license'
1
2
  require 'core/version'
2
3
  require 'core/wiki_page_not_found'
3
4
 
data/config/routes.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
  ActionController::Routing::Routes.draw do |map|
19
18
 
@@ -54,6 +53,10 @@ ActionController::Routing::Routes.draw do |map|
54
53
  map.connect 'wiki/:action/:page_name', :controller => 'wiki'
55
54
  map.connect 'wiki/:action/:page_name.:format', :controller => 'wiki'
56
55
 
56
+ map.connect 'license/:locale',
57
+ :controller => 'root', :action => 'license'
58
+ map.connect 'license', :controller => 'root', :action => 'license'
59
+
57
60
  map.connect '', locale_defaults.merge(:controller => 'root',
58
61
  :action => 'index')
59
62
 
@@ -22,9 +22,6 @@
22
22
  'Passwords do not match' => 'Senhas não conferem',
23
23
  'Sign out' => 'Sair',
24
24
  'Last update by %s at %s' => 'Última atualização por %s em %s',
25
- 'Edit' => 'Editar',
26
- '(requires authentication)' => '(identifique-se, por favor)',
27
- '(not authorized)' => '(não autorizado)',
28
25
  'Latest news from %s' => 'Últimas notícias do %s',
29
26
  'Recently changed suggestions' => 'Últimas sugestões modificadas',
30
27
  'Scheduled events' => 'Eventos agendados',
@@ -38,6 +35,10 @@
38
35
  'Home' => 'Início',
39
36
  'Features' => 'Sugestões',
40
37
  'Events' => 'Eventos',
38
+ 'License' => 'Licença',
39
+ '(Raw wiki text)' => '(Texto original)',
40
+ '(Raw wiki text from revision %s)' => '(Texto original da revisão %s)',
41
+ 'The following wiki code contains an error that prevents it from being correctly formatted.' => 'Há um erro no código wiki abaixo impedindo que ele seja formatado corretamente.',
41
42
 
42
43
  # Source revision details page
43
44
  'Revision details' => 'Detalhes de revisão',
@@ -86,10 +87,23 @@
86
87
 
87
88
  # Older headlines and history pages
88
89
  'Author' => 'Autor',
89
- 'Page has no history yet' => 'Página ainda sem histórico',
90
90
  'Page history for %s' => 'Histórico da página %s',
91
- 'Page history (%s revisions)' => 'Histórico da página (%s revisões)',
92
91
  'Page history' => 'Histórico da página',
93
92
  '(Revision %s)' => '(Revisão %s)',
94
- 'Compare revisions' => 'Comparar revisões'
93
+ 'Compare revisions' => 'Comparar revisões',
94
+
95
+ # Page details bar
96
+ 'Edit' => 'Editar',
97
+ '(requires authentication)' => '(identifique-se, por favor)',
98
+ '(not authorized)' => '(não autorizado)',
99
+ 'View raw text' => 'Mostrar em texto puro',
100
+ 'View wiki output' => 'Mostrar resultado wiki',
101
+ 'Page has no history yet' => 'Página ainda sem histórico',
102
+ 'Page history (%s revisions)' => 'Histórico da página (%s revisões)',
103
+
104
+ # Footer
105
+ 'Source code' => 'O código-fonte',
106
+ 'is available.' => 'está disponível.',
107
+ 'See the' => 'Consulte os',
108
+ 'terms and conditions' => 'termos e condições'
95
109
  }
@@ -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 Array
19
18
 
@@ -27,4 +26,4 @@ class Array
27
26
  str
28
27
  end
29
28
 
30
- end
29
+ end
@@ -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 DiffChunkBuilder
19
18
 
data/lib/differ.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 'diff/lcs'
19
18
  require 'diff/lcs/array'
@@ -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'