Actualiza core con las personalizaciones
This commit is contained in:
parent
3ca3c37487
commit
51e74a8fc1
10 changed files with 109 additions and 30 deletions
4
Gemfile
4
Gemfile
|
@ -14,10 +14,12 @@ gem "roadie-rails", (RUBY_VERSION < "2.5" ? "~> 1.3.0" : "~> 2.1.0")
|
|||
gem 'marcel'
|
||||
gem "mail", "~> 2.7.1"
|
||||
gem 'csv', (RUBY_VERSION < '2.5' ? ['>= 3.1.1', '<= 3.1.5'] : '~> 3.1.1')
|
||||
gem 'nokogiri', (RUBY_VERSION < '2.5' ? '~> 1.10.0' : '~> 1.11.1')
|
||||
gem 'nokogiri', (RUBY_VERSION < '2.5' ? '~> 1.10.0' : '~> 1.11.5')
|
||||
gem "i18n", "~> 1.6.0"
|
||||
gem "rbpdf", "~> 1.20.0"
|
||||
|
||||
gem "loofah", "~> 2.19.1"
|
||||
|
||||
# Windows does not include zoneinfo files, so bundle the tzinfo-data gem
|
||||
gem 'tzinfo-data', platforms: [:mingw, :x64_mingw, :mswin]
|
||||
|
||||
|
|
|
@ -44,6 +44,8 @@ class WikiController < ApplicationController
|
|||
helper :watchers
|
||||
include Redmine::Export::PDF
|
||||
|
||||
include ActionView::Helpers::SanitizeHelper
|
||||
|
||||
# List of pages, sorted alphabetically and by parent (hierarchy)
|
||||
def index
|
||||
load_pages_for_index
|
||||
|
@ -109,7 +111,7 @@ class WikiController < ApplicationController
|
|||
send_data(export, :type => 'text/html', :filename => filename_for_content_disposition("#{@page.title}.html"))
|
||||
return
|
||||
elsif params[:format] == 'txt'
|
||||
send_data(@content.text, :type => 'text/plain', :filename => filename_for_content_disposition("#{@page.title}.txt"))
|
||||
send_data(strip_tags(@content.text), :type => 'text/plain', :filename => filename_for_content_disposition("#{@page.title}.txt"))
|
||||
return
|
||||
end
|
||||
end
|
||||
|
|
|
@ -18,11 +18,14 @@
|
|||
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||
|
||||
module SearchHelper
|
||||
include ActionView::Helpers::SanitizeHelper
|
||||
|
||||
def highlight_tokens(text, tokens)
|
||||
return text unless text && tokens && !tokens.empty?
|
||||
re_tokens = tokens.collect {|t| Regexp.escape(t)}
|
||||
regexp = Regexp.new "(#{re_tokens.join('|')})", Regexp::IGNORECASE
|
||||
result = +''
|
||||
text = strip_tags(text)
|
||||
text.split(regexp).each_with_index do |words, i|
|
||||
if result.length > 1200
|
||||
# maximum length of the preview reached
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
<%= call_hook :view_account_login_top %>
|
||||
|
||||
<div id="login-form">
|
||||
<h2><%= l(:label_login) %></h2>
|
||||
<%= form_tag(signin_path, onsubmit: 'return keepAnchorOnSignIn(this);') do %>
|
||||
<%= back_url_hidden_field_tag %>
|
||||
|
||||
|
|
|
@ -16,9 +16,7 @@
|
|||
:rev => changeset.identifier) %>)
|
||||
<% end %></p>
|
||||
|
||||
<div class="wiki changeset-comments">
|
||||
<%= format_changeset_comments changeset %>
|
||||
</div>
|
||||
<div class="wiki changeset-comments"><%= format_changeset_comments changeset %></div>
|
||||
</div>
|
||||
<%= call_hook(:view_issues_history_changeset_bottom, { :changeset => changeset }) %>
|
||||
<% end %>
|
||||
|
|
|
@ -2,22 +2,27 @@
|
|||
<html lang="<%= current_language %>">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<title><%= html_title %></title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" />
|
||||
<meta name="description" content="<%= Redmine::Info.app_name %>" />
|
||||
<meta name="keywords" content="issue,bug,tracker" />
|
||||
<%= csrf_meta_tag %>
|
||||
<%= favicon %>
|
||||
<%= stylesheet_link_tag 'jquery/jquery-ui-1.11.0', 'tribute-3.7.3', 'application', 'responsive', :media => 'all' %>
|
||||
<%= stylesheet_link_tag 'jquery/jquery-ui-1.11.0', 'cookieconsent.min', 'tribute-3.7.3', 'application', 'responsive', :media => 'all' %>
|
||||
<%= stylesheet_link_tag 'rtl', :media => 'all' if l(:direction) == 'rtl' %>
|
||||
|
||||
<% is_welcome = !User.current.logged? && current_page?(:controller => 'welcome', :action => 'index') %>
|
||||
<%= stylesheet_link_tag 'frontpage', :media => 'all' if is_welcome %>
|
||||
|
||||
<%= javascript_heads %>
|
||||
<script src="/themes/circlepro/javascripts/cookieconsent.min.js"></script>
|
||||
<%= heads_for_theme %>
|
||||
<%= call_hook :view_layouts_base_html_head %>
|
||||
<!-- page specific tags -->
|
||||
<%= yield :header_tags -%>
|
||||
</head>
|
||||
<body class="<%= body_css_classes %>">
|
||||
<body class="<%= body_css_classes %><%= ' is-preload' if is_welcome %>">
|
||||
<%= call_hook :view_layouts_base_body_top %>
|
||||
<div id="wrapper">
|
||||
|
||||
|
@ -60,20 +65,31 @@
|
|||
|
||||
<div id="wrapper2">
|
||||
<div id="wrapper3">
|
||||
|
||||
<div id="top-menu">
|
||||
<div id="wrapper-top-menu">
|
||||
<ul class="social-menu">
|
||||
<li class="social-link-blog"><a href="https://manuel.cillero.es" title="<%= l(:link_my_blog) %>" class="icon-blog"><span><%= l(:link_my_blog) %></span></a></li>
|
||||
<li class="social-link-mastodon"><a href="https://noc.social/@manuelcillero" title="Mastodon" target="_blank" class="icon-mastodon"><span>Mastodon</span></a></li>
|
||||
<li class="social-link-linkedin"><a href="https://es.linkedin.com/in/manuelcillero" title="Linkedin" target="_blank" class="icon-linkedin"><span>Linkedin</span></a></li>
|
||||
<li class="social-link-github"><a href="https://github.com/manuelcillero" title="Github" target="_blank" class="icon-github"><span>Github</span></a></li>
|
||||
<li class="social-link-mail"><a href="https://manuel.cillero.es/contacto/#suitepro" title="Mail" class="icon-mail"><span>Mail</span></a></li>
|
||||
</ul>
|
||||
<div id="account">
|
||||
<%= render_menu :account_menu -%>
|
||||
</div>
|
||||
<%= content_tag('div', "#{l(:label_logged_as)} #{link_to_user(User.current, :format => :username)}".html_safe, :id => 'loggedas') if User.current.logged? %>
|
||||
<%= render_menu :top_menu if User.current.logged? || !Setting.login_required? -%>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="header">
|
||||
|
||||
<a href="#" class="mobile-toggle-button js-flyout-menu-toggle-button"></a>
|
||||
|
||||
<div id="wrapper-header">
|
||||
<% if User.current.logged? || !Setting.login_required? %>
|
||||
<div id="quick-search">
|
||||
<div id="quick-search" class="hide-when-print">
|
||||
<%= form_tag({:controller => 'search', :action => 'index', :id => @project}, :method => :get ) do %>
|
||||
<%= hidden_field_tag 'scope', default_search_project_scope, :id => nil %>
|
||||
<%= hidden_field_tag(controller.default_search_scope, 1, :id => nil) if controller.default_search_scope %>
|
||||
|
@ -91,15 +107,18 @@
|
|||
<% end %>
|
||||
|
||||
<h1><%= page_header_title %></h1>
|
||||
</div>
|
||||
|
||||
<% if display_main_menu?(@project) %>
|
||||
<div id="main-menu" class="tabs">
|
||||
<div id="wrapper-main-menu">
|
||||
<%= render_main_menu(@project) %>
|
||||
<div class="tabs-buttons" style="display:none;">
|
||||
<button class="tab-left" onclick="moveTabLeft(this); return false;"></button>
|
||||
<button class="tab-right" onclick="moveTabRight(this); return false;"></button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
|
||||
|
@ -116,16 +135,54 @@
|
|||
<div style="clear:both;"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="footer">
|
||||
Powered by <%= link_to Redmine::Info.app_name, Redmine::Info.url %> © 2006-2022 Jean-Philippe Lang
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div> <!-- #wrapper3 -->
|
||||
|
||||
<a href="#" id="scrollup" class="hide-when-print" style="display: none;"><%=l(:label_sort_higher)%></a><%= javascript_tag "$('#scrollup').click(function(){$('html,body').animate({scrollTop:0},600);return false;});" %>
|
||||
|
||||
<div id="ajax-indicator" style="display:none;"><span><%= l(:label_loading) %></span></div>
|
||||
<div id="ajax-modal" style="display:none;"></div>
|
||||
|
||||
<div id="footer">
|
||||
<div id="wrapper-footer">
|
||||
|
||||
<ul class="social-menu">
|
||||
<li class="social-link-blog"><a href="https://manuel.cillero.es" title="<%= l(:link_my_blog) %>" class="icon-blog"><span><%= l(:link_my_blog) %></span></a></li>
|
||||
<li class="social-link-mastodon"><a href="https://noc.social/@manuelcillero" title="Mastodon" target="_blank" class="icon-mastodon"><span>Mastodon</span></a></li>
|
||||
<li class="social-link-linkedin"><a href="https://es.linkedin.com/in/manuelcillero" title="Linkedin" target="_blank" class="icon-linkedin"><span>Linkedin</span></a></li>
|
||||
<li class="social-link-github"><a href="https://github.com/manuelcillero" title="Github" target="_blank" class="icon-github"><span>Github</span></a></li>
|
||||
<li class="social-link-mail"><a href="https://manuel.cillero.es/contacto/#suitepro" title="Mail" class="icon-mail"><span>Mail</span></a></li>
|
||||
</ul>
|
||||
<div class="bgl"><div class="bgr">
|
||||
<%= Time.current.year %> © SuitePro (powered by <%= link_to Redmine::Info.app_name, Redmine::Info.url %>)
|
||||
<div id="legal">
|
||||
<span class="legal-legal"><a href="/projects/suitepro/wiki/Legal"><%= l(:label_legal) %></a></span>
|
||||
<span class="legal-terms"> | <a href="/projects/suitepro/wiki/Condiciones_de_uso"><%= l(:label_legal_terms) %></a></span>
|
||||
<span class="legal-privacy"> | <a href="/projects/suitepro/wiki/Política_de_privacidad"><%= l(:label_legal_privacy) %></a></span>
|
||||
<span class="legal-cookies"> | <a href="/projects/suitepro/wiki/Política_de_cookies"><%= l(:label_legal_cookies) %></a></span>
|
||||
</div>
|
||||
</div></div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div> <!-- #wrapper2 -->
|
||||
|
||||
</div> <!-- #wrapper -->
|
||||
|
||||
<%= call_hook :view_layouts_base_body_bottom %>
|
||||
|
||||
<script>
|
||||
//<![CDATA[
|
||||
window.addEventListener("load", function(){
|
||||
window.cookieconsent.initialise({
|
||||
"palette": { "popup": { "background": "rgba(20,20,20,0.8)" }, "button": { "background": "#fff" } },
|
||||
"theme": "classic",
|
||||
"position": "bottom-left",
|
||||
"content": { "message": "<a href='https://suitepro.cillero.es'>SuitePro</a> requiere el uso de cookies para ofrecer la mejor experiencia de acceso a sus contenidos. Puedes aceptar su uso o abandonar la página si lo deseas.", "dismiss": "ACEPTO SU USO", "link": "Más información", "href": "/projects/suitepro/wiki/Pol%C3%ADtica_de_cookies", "target": "_self" }
|
||||
})});
|
||||
//]]>
|
||||
</script>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
@ -33,9 +33,7 @@
|
|||
|
||||
</div>
|
||||
|
||||
<div class="wiki changeset-comments">
|
||||
<%= format_changeset_comments @changeset %>
|
||||
</div>
|
||||
<div class="wiki changeset-comments"><%= format_changeset_comments @changeset %></div>
|
||||
|
||||
<% if @changeset.issues.visible.any? || User.current.allowed_to?(:manage_related_issues, @repository.project) %>
|
||||
<%= render :partial => 'related_issues' %>
|
||||
|
|
|
@ -61,7 +61,8 @@
|
|||
|
||||
<%= render(:partial => "wiki/content", :locals => {:content => @content}) %>
|
||||
|
||||
<fieldset class="collapsible collapsed hide-when-print">
|
||||
<% if @page.attachments.length > 0 || (@editable && authorize_for('wiki', 'add_attachment')) %>
|
||||
<fieldset class="collapsible collapsed<% if @page.attachments.length == 0 %> hide-when-print<% end %>">
|
||||
<legend onclick="toggleFieldset(this);" class="icon icon-collapsed"><%= l(:label_attachment_plural) %> (<%= @page.attachments.length %>)</legend>
|
||||
<div style="display: none;">
|
||||
|
||||
|
@ -81,6 +82,7 @@
|
|||
<% end %>
|
||||
</div>
|
||||
</fieldset>
|
||||
<% end %>
|
||||
|
||||
<p class="wiki-update-info">
|
||||
<% if User.current.allowed_to?(:view_wiki_edits, @project) %>
|
||||
|
|
|
@ -1284,3 +1284,11 @@ en:
|
|||
text_project_is_public_non_member: Public projects and their contents are available to all logged-in users.
|
||||
text_project_is_public_anonymous: Public projects and their contents are openly available on the network.
|
||||
label_import_time_entries: Import time entries
|
||||
|
||||
|
||||
link_my_blog: My Blog
|
||||
|
||||
label_legal: Legal notice
|
||||
label_legal_terms: Terms of use
|
||||
label_legal_privacy: Privacy policy
|
||||
label_legal_cookies: Cookies policy
|
||||
|
|
|
@ -507,7 +507,7 @@ es:
|
|||
label_loading: Cargando...
|
||||
label_logged_as: Conectado como
|
||||
label_login: Iniciar sesión
|
||||
label_logout: Terminar sesión
|
||||
label_logout: Cerrar sesión
|
||||
label_max_size: Tamaño máximo
|
||||
label_me: yo mismo
|
||||
label_member: Miembro
|
||||
|
@ -546,7 +546,7 @@ es:
|
|||
label_optional_description: Descripción opcional
|
||||
label_options: Opciones
|
||||
label_overall_activity: Actividad global
|
||||
label_overview: Vistazo
|
||||
label_overview: Resumen
|
||||
label_password_lost: ¿Olvidaste la contraseña?
|
||||
label_permissions: Permisos
|
||||
label_permissions_report: Informe de permisos
|
||||
|
@ -1216,7 +1216,7 @@ es:
|
|||
mail_body_security_notification_notify_disabled: Se han desactivado las notificaciones para el correo electrónico %{value}
|
||||
mail_body_settings_updated: ! 'Las siguientes opciones han sido actualizadas:'
|
||||
field_remote_ip: Dirección IP
|
||||
label_wiki_page_new: Nueva pagina wiki
|
||||
label_wiki_page_new: Nueva página
|
||||
label_relations: Relaciones
|
||||
button_filter: Filtro
|
||||
mail_body_password_updated: Su contraseña se ha cambiado.
|
||||
|
@ -1232,7 +1232,7 @@ es:
|
|||
label_font_monospace: Fuente Monospaced
|
||||
label_font_proportional: Fuente Proportional
|
||||
setting_timespan_format: Formato de timespan
|
||||
label_table_of_contents: Índice de contenidos
|
||||
label_table_of_contents: Tabla de contenidos
|
||||
setting_commit_logs_formatting: Aplicar formato de texto a los mensajes de commits
|
||||
setting_mail_handler_enable_regex: Habilitar expresiones regulares
|
||||
error_move_of_child_not_possible: 'Subtarea %{child} no ha podido ser movida al nuevo
|
||||
|
@ -1262,7 +1262,7 @@ es:
|
|||
setting_time_entry_list_defaults: Listas por defecto del Timelog
|
||||
setting_timelog_accept_0_hours: Aceptar registros de tiempo de 0 horas
|
||||
setting_timelog_max_hours_per_day: Número de horas máximo que se puede imputar por día y usuario
|
||||
label_x_revisions: "%{count} revisiones"
|
||||
label_x_revisions: "Revisiones: %{count}"
|
||||
error_can_not_delete_auth_source: Este modo de autenticación está en uso y no puede ser
|
||||
eliminado.
|
||||
button_actions: Acciones
|
||||
|
@ -1318,7 +1318,7 @@ es:
|
|||
field_recently_used_projects: Número de proyectos recientemente usados en el selector
|
||||
label_optgroup_bookmarks: Marcadores
|
||||
label_optgroup_others: Otros proyectos
|
||||
label_optgroup_recents: Utilizados recientemente
|
||||
label_optgroup_recents: Accesos recientes
|
||||
button_project_bookmark: Añadir marcador
|
||||
button_project_bookmark_delete: Quitar marcador
|
||||
field_history_default_tab: Pstaña por defecto del historial de la petición
|
||||
|
@ -1339,6 +1339,14 @@ es:
|
|||
setting_project_list_defaults: Por defecto para la lista de proyectos
|
||||
label_display_type: Mostrar resultados como
|
||||
label_display_type_list: Lista
|
||||
label_display_type_board: Tablón
|
||||
label_display_type_board: Panel
|
||||
label_my_bookmarks: Mis marcadores
|
||||
label_import_time_entries: Importar registros de tiempo
|
||||
|
||||
|
||||
link_my_blog: Mi blog personal
|
||||
|
||||
label_legal: Aviso legal
|
||||
label_legal_terms: Condiciones de uso
|
||||
label_legal_privacy: Política de privacidad
|
||||
label_legal_cookies: Uso de cookies
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue