aboutsummaryrefslogtreecommitdiffstats
path: root/app/views
diff options
context:
space:
mode:
authorLuc Donnet2014-06-25 16:34:19 +0200
committerLuc Donnet2014-06-25 16:34:19 +0200
commit0449133dc118c1859511b23c02743bcf08dc7359 (patch)
treec98e7831c160ee5837b216b3536a169a7830b425 /app/views
parent3988cf436bd2a751b3f229eaeebe0e2f371f6774 (diff)
downloadchouette-core-0449133dc118c1859511b23c02743bcf08dc7359.tar.bz2
Refactoring layout 2nd part Refs #0026847
Diffstat (limited to 'app/views')
-rw-r--r--app/views/access_points/_form.html.erb89
-rw-r--r--app/views/access_points/edit.html.erb2
-rw-r--r--app/views/compliance_check_tasks/_compliance_check_task.erb2
-rw-r--r--app/views/connection_links/_form.erb8
-rw-r--r--app/views/exports/_export.erb27
-rw-r--r--app/views/import_tasks/_import_task.erb2
-rw-r--r--app/views/layouts/application.html.erb151
-rw-r--r--app/views/layouts/without_sidebar.html.erb126
-rw-r--r--app/views/referentials/index.html.erb1
-rw-r--r--app/views/routes/_route.html.erb53
-rw-r--r--app/views/routes/show.html.erb12
-rw-r--r--app/views/shared/_footer.erb42
-rw-r--r--app/views/stop_areas/_form.html.erb5
-rw-r--r--app/views/stop_areas/show.html.erb5
-rw-r--r--app/views/vehicle_journey_imports/new.html.erb15
-rw-r--r--app/views/vehicle_journeys/_form.html.erb62
-rw-r--r--app/views/vehicle_journeys/_vehicle_journey_at_stop_fields.html.erb24
-rw-r--r--app/views/vehicle_journeys/edit.html.erb4
-rw-r--r--app/views/vehicle_journeys/index.html.erb21
19 files changed, 434 insertions, 217 deletions
diff --git a/app/views/access_points/_form.html.erb b/app/views/access_points/_form.html.erb
index 8e546a878..f65fd7431 100644
--- a/app/views/access_points/_form.html.erb
+++ b/app/views/access_points/_form.html.erb
@@ -1,44 +1,51 @@
-<%= semantic_form_for [@referential, @stop_area, @access_point] do |form| %>
- <%= form.inputs do %>
- <%= form.input :id, :as => :hidden %>
- <%= form.input :name %>
- <%= form.input :access_point_type, :as => :select, :input_html => { :disabled => !@access_point.new_record? },
- :collection => Chouette::AccessPoint.access_point_types, :include_blank => false, :member_label => Proc.new { |access_point_type| t("access_types.label.#{access_point_type}") } %>
- <%= form.input :street_name %>
- <%= form.input :country_code %>
- <%= form.input :comment %>
- <%= form.inputs do %>
- <%= form.input "openning_time(1i)", :as => :hidden ,:input_html => { :value => "2000" } %>
- <%= form.input "openning_time(2i)", :as => :hidden ,:input_html => { :value => "1" } %>
- <%= form.input "openning_time(3i)", :as => :hidden ,:input_html => { :value => "1" } %>
- <%= form.input "openning_time(6i)", :as => :hidden ,:input_html => { :value => "0" } %>
- <%= form.input :openning_time, :ignore_date=>true, :label => @access_point.human_attribute_name("openning_time")%>
- <%= form.input "closing_time(1i)", :as => :hidden ,:input_html => { :value => "2000" } %>
- <%= form.input "closing_time(2i)", :as => :hidden ,:input_html => { :value => "1" } %>
- <%= form.input "closing_time(3i)", :as => :hidden ,:input_html => { :value => "1" } %>
- <%= form.input "closing_time(6i)", :as => :hidden ,:input_html => { :value => "0" } %>
- <%= form.input :closing_time, :ignore_date=>true, :label => @access_point.human_attribute_name("closing_time")%>
- <% end %>
- <%= form.input :mobility_restricted_suitability,:as => :boolean %>
- <%= form.input :stairs_availability,:as => :boolean %>
- <%= form.input :lift_availability,:as => :boolean %>
- <%= form.input :objectid, :required => !@access_point.new_record?, :input_html => { :disabled => !@access_point.new_record? } %>
- <%= form.inputs :name => t('access_points.show.geographic_data') do %>
- <% if ! @referential.projection_type_label.empty? %>
- <%= form.inputs :name => @referential.projection_type_label do %>
- <%= form.input :projection_x %>
- <%= form.input :projection_y %>
+<div class="container-fluid">
+ <div class="col-md-7">
+
+ <%= semantic_form_for [@referential, @stop_area, @access_point] do |form| %>
+ <%= form.inputs do %>
+ <%= form.input :id, :as => :hidden %>
+ <%= form.input :name %>
+ <%= form.input :access_point_type, :as => :select, :input_html => { :disabled => !@access_point.new_record? },
+ :collection => Chouette::AccessPoint.access_point_types, :include_blank => false, :member_label => Proc.new { |access_point_type| t("access_types.label.#{access_point_type}") } %>
+ <%= form.input :street_name %>
+ <%= form.input :country_code %>
+ <%= form.input :comment %>
+ <%= form.input :openning_time, :as => :time_select %>
+ <%= form.input :closing_time, :as => :time_select %>
+ <%= form.input :mobility_restricted_suitability,:as => :boolean %>
+ <%= form.input :stairs_availability,:as => :boolean %>
+ <%= form.input :lift_availability,:as => :boolean %>
+ <%= form.input :objectid, :required => !@access_point.new_record?, :input_html => { :disabled => !@access_point.new_record? } %>
+
+ <%= form.inputs :name => t('access_points.show.geographic_data') do %>
+ <% if ! @referential.projection_type_label.empty? %>
+ <div class="panel panel-default">
+ <div class="panel-heading">@referential.projection_type_label</div>
+ <div class="panel-body">
+ <%= form.input :projection_x %>
+ <%= form.input :projection_y %>
+ </div>
+ </div>
+ <% end %>
+ <div class="panel panel-default">
+ <div class="panel-heading">WGS84</div>
+ <div class="panel-body">
+ <%= form.input :longitude %>
+ <%= form.input :latitude %>
+ </div>
+ </div>
<% end %>
- <% end %>
- <%= form.inputs :name => "WGS84" do %>
- <%= form.input :longitude %>
- <%= form.input :latitude %>
- <% end %>
<% end %>
- <% end %>
- <%= form.actions do %>
- <%= form.action :submit, :as => :button %>
- <%= form.action :cancel, :as => :link %>
- <% end %>
-<% end %>
+ <%= form.actions do %>
+ <%= form.action :submit, :as => :button %>
+ <%= form.action :cancel, :as => :link %>
+ <% end %>
+ <% end %>
+ </div>
+ <div class="col-md-5">
+ <% if @map %>
+ <%= @map.to_html %>
+ <% end %>
+ </div>
+</div>
diff --git a/app/views/access_points/edit.html.erb b/app/views/access_points/edit.html.erb
index e2e8636b3..cc5dc217f 100644
--- a/app/views/access_points/edit.html.erb
+++ b/app/views/access_points/edit.html.erb
@@ -1,5 +1,3 @@
<%= title_tag t('access_points.edit.title', :access_point => @access_point.name ) %>
-<%= @map.to_html %>
-
<%= render "form" %>
diff --git a/app/views/compliance_check_tasks/_compliance_check_task.erb b/app/views/compliance_check_tasks/_compliance_check_task.erb
index 3c5388b00..b3b62e1f5 100644
--- a/app/views/compliance_check_tasks/_compliance_check_task.erb
+++ b/app/views/compliance_check_tasks/_compliance_check_task.erb
@@ -1,4 +1,4 @@
-<%= div_for(compliance_check_task, :class => :compliance_check_task) do %>
+<%= div_for(compliance_check_task, :class => "compliance_check_task clearfix") do %>
<div class="icon">
<%= link_to image_tag("compliance_check_task-#{compliance_check_task.status}.png"), referential_compliance_check_task_path(@referential, compliance_check_task) %>
</div>
diff --git a/app/views/connection_links/_form.erb b/app/views/connection_links/_form.erb
index 72d3b2046..e14c06f50 100644
--- a/app/views/connection_links/_form.erb
+++ b/app/views/connection_links/_form.erb
@@ -12,10 +12,10 @@
<%= form.input :objectid, :required => !@connection_link.new_record?, :input_html => { :disabled => !@connection_link.new_record? } %>
<% end %>
<%= form.inputs :name => t('connection_links.show.durations') do %>
- <%= form.input :default_duration, :as => :time_picker, :ignore_date=>true,:include_seconds=>true, :label => @connection_link.human_attribute_name("default_duration"), :input_html => { :placeholder => "HH:MM" } %>
- <%= form.input :frequent_traveller_duration, :as => :time_picker, :ignore_date=>true,:include_seconds=>true, :label => @connection_link.human_attribute_name("frequent_traveller_duration"), :input_html => { :placeholder => "HH:MM" } %>
- <%= form.input :occasional_traveller_duration, :as => :time_picker, :ignore_date=>true,:include_seconds=>true, :label => @connection_link.human_attribute_name("occasional_traveller_duration"), :input_html => { :placeholder => "HH:MM" } %>
- <%= form.input :mobility_restricted_traveller_duration, :as => :time_picker, :ignore_date=>true,:include_seconds=>true, :label => @connection_link.human_attribute_name("mobility_restricted_traveller_duration"), :input_html => { :placeholder => "HH:MM" } %>
+ <%= form.input :default_duration, :as => :time_select, :size => 8, :include_seconds=>true, :label => @connection_link.human_attribute_name("default_duration"), :input_html => { :placeholder => "HH:MM" } %>
+ <%= form.input :frequent_traveller_duration, :as => :time_select, :size => 8, :include_seconds=>true, :label => @connection_link.human_attribute_name("frequent_traveller_duration"), :input_html => { :placeholder => "HH:MM:SS" } %>
+ <%= form.input :occasional_traveller_duration, :as => :time_select, :size => 8, :include_seconds=>true, :label => @connection_link.human_attribute_name("occasional_traveller_duration"), :input_html => { :placeholder => "HH:MM:SS" } %>
+ <%= form.input :mobility_restricted_traveller_duration, :as => :time_select, :include_seconds=>true, :label => @connection_link.human_attribute_name("mobility_restricted_traveller_duration"), :input_html => { :placeholder => "HH:MM:SS" } %>
<% end %>
<%= form.actions do %>
diff --git a/app/views/exports/_export.erb b/app/views/exports/_export.erb
index e8e5d4656..3d312c266 100644
--- a/app/views/exports/_export.erb
+++ b/app/views/exports/_export.erb
@@ -1,16 +1,21 @@
-<%= div_for(export, :class => :export) do %>
- <%= link_to(referential_export_path(@referential, export), :class => "preview") do %>
- <%= image_tag "export-#{export.status}.png" %>
- <% end %>
- <%= link_to(export.name, referential_export_path(@referential, export)) %>
- <div class="info">
- <%= l export.created_at %>
-
- <div class="actions">
+<%= div_for(export, :class => "export clearfix") do %>
+ <div class="icon">
+ <%= link_to image_tag("export-#{export.status}.png"), referential_export_path(@referential, export) %>
+ </div>
+ <div class="resume">
+ <ul class="header clearfix">
+ <li class="title">
+ <%= link_to(export.name, referential_export_path(@referential, export)) %>
+ </li>
+ <li class="remove"><%= link_to "<i class='fa fa-trash-o'></i>".html_safe, referential_export_path(@referential, export), :method => :delete, :data => {:confirm => t('exports.actions.destroy_confirm')}, :class => "remove" %></li>
+ </ul>
+ <div class="links">
<% if export.status == 'completed' %>
- <%= link_to t("exports.actions.download"), referential_export_path(@referential, export, :format => :zip), :class => "download" %>
+ <%= link_to t("exports.actions.download"), referential_export_path(@referential, export, :format => :zip), :class => "download" %>
<% end %>
- <%= link_to t("actions.destroy"), referential_export_path(@referential, export), :method => :delete, :data => {:confirm => t('exports.actions.destroy_confirm')}, :class => "remove" %>
+ </div>
+ <div class="history">
+ <%= l export.created_at, :format => "%d/%m/%Y %H:%M" %>
</div>
</div>
<% end %>
diff --git a/app/views/import_tasks/_import_task.erb b/app/views/import_tasks/_import_task.erb
index 5f2326209..7b4302d58 100644
--- a/app/views/import_tasks/_import_task.erb
+++ b/app/views/import_tasks/_import_task.erb
@@ -1,4 +1,4 @@
-<%= div_for import_task do %>
+<%= div_for import_task, :class => "clearfix" do %>
<div class="icon">
<%= link_to image_tag("import_task-#{import_task.status}.png"), referential_import_task_path(@referential, import_task) %>
</div>
diff --git a/app/views/layouts/application.html.erb b/app/views/layouts/application.html.erb
index d0428dd9f..2e4f98c0b 100644
--- a/app/views/layouts/application.html.erb
+++ b/app/views/layouts/application.html.erb
@@ -18,60 +18,113 @@
</head>
<body>
<div id="header">
- <div class="row">
- <div class="col-md-4">
- <div class="logo">
- <%= link_to image_tag("logo_chouette.png"), referentials_path %>
- <span class="version"><%= APP_VERSION %></span>
- </div>
- </div>
- <div class="col-md-4">
- <div class="title">
- <% if selected_referential? %>
- <h1><%= @referential.name %></h1>
- <% elsif help_page? %>
- <h1>Guide d'utilisation</h1>
+ <nav class="navbar navbar-default navbar-fixed-top" role="navigation">
+ <div class="container">
+ <!-- Brand and toggle get grouped for better mobile display -->
+ <div class="navbar-header">
+ <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
+ <span class="sr-only">Toggle navigation</span>
+ <span class="icon-bar"></span>
+ <span class="icon-bar"></span>
+ <span class="icon-bar"></span>
+ <span class="icon-bar version"><%= APP_VERSION %></span>
+ </button>
+ <%= link_to referentials_path, :class =>"navbar-brand" do %>
+ <%= image_tag("logo_chouette.png") %> <span class="version"><%= APP_VERSION %></span>
<% end %>
</div>
- </div>
- <div class="col-md-4">
- <div class="interaction">
- <%= render "layouts/user_links" %>
+
+ <!-- Collect the nav links, forms, and other content for toggling -->
+ <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
+ <ul class="nav navbar-nav">
+ <% if selected_referential? %>
+ <li class="dropdown">
+ <a href="#" class="dropdown-toggle" data-toggle="dropdown"><%= @referential.name %><b class="caret"></b></a>
+ <ul class="dropdown-menu">
+ <li><%= link_to t("layouts.navbar.return_to_referentials"), referentials_path %></li>
+ <li class="divider"></li>
+ <li role="presentation" class="dropdown-header"><%= t("layouts.navbar.select_referential") %></li>
+ <% current_organisation.referentials.each do |referential| %>
+ <li>
+ <%= link_to @referential.name, referential_path(@referential) %>
+ </li>
+ <% end %>
+ </ul>
+ </li>
+ <li class="dropdown">
+ <a href="#" class="dropdown-toggle" data-toggle="dropdown"><%= t("layouts.navbar.referential_datas") %><b class="caret"></b></a>
+ <ul class="dropdown-menu">
+ <li><%= link_to referential_networks_path(@referential) do %>
+ <%= Referential.human_attribute_name("networks") %><span class="badge pull-right"><%= @referential.networks.size %></span>
+ <% end %>
+ </li>
+ <li><%= link_to referential_companies_path(@referential) do %>
+ <%= Referential.human_attribute_name("companies") %><span class="badge pull-right"><%= @referential.companies.size %></span>
+ <% end %>
+ </li>
+ <li><%= link_to referential_group_of_lines_path(@referential) do %>
+ <%= Referential.human_attribute_name("group_of_lines") %><span class="badge pull-right"><%= @referential.group_of_lines.size %></span>
+ <% end %>
+ </li>
+ <li><%= link_to referential_lines_path(@referential) do %>
+ <%= Referential.human_attribute_name("lines") %><span class="badge pull-right"><%= @referential.lines.size %></span>
+ <% end %>
+ </li>
+ <li><%= link_to referential_stop_areas_path(@referential) do %>
+ <%= Referential.human_attribute_name("stop_areas") %><span class="badge pull-right"><%= @referential.stop_areas.size %></span>
+ <% end %>
+ </li>
+ <li><%= link_to referential_connection_links_path(@referential) do %>
+ <%= Referential.human_attribute_name("connection_links") %><span class="badge pull-right"><%= @referential.connection_links.size %></span>
+ <% end %>
+ </li>
+ <li><%= link_to referential_time_tables_path(@referential) do %>
+ <%= Referential.human_attribute_name("time_tables") %><span class="badge pull-right"><%= @referential.time_tables.size %></span>
+ <% end %>
+ </li>
+ </ul>
+ </li>
+ <li><%= link_to Referential.human_attribute_name("import_tasks"), referential_import_tasks_path(@referential) %></li>
+ <li><%= link_to Referential.human_attribute_name("export_tasks"), referential_exports_path(@referential) %></li>
+ <li><%= link_to Referential.human_attribute_name("compliance_check_tasks"), referential_compliance_check_tasks_path(@referential) %></li>
+ <% end %>
+ </ul>
+ <ul class="nav navbar-nav navbar-right">
+ <li class="<%= language_class('fr') %>"><%= link_to_language :fr %></li>
+ <li class="<%= language_class('en') %>"><%= link_to_language :en %></li>
+ <li><%= link_to t('layouts.help'), help_path, :class =>("current" if help_page?), :target => "_blank" %></li>
+ <% if user_signed_in? %>
+ <li class="dropdown">
+ <a href="#" class="dropdown-toggle" data-toggle="dropdown"><span class="gravatar"><%= user_gravatar_image_tag current_user %></span><%= current_user.name %> <b class="caret"></b></a>
+ <ul class="dropdown-menu">
+ <li><%= link_to t('layouts.user.profile'), edit_user_registration_path %></li>
+ <li><%= link_to t('layouts.user.sign_out'), destroy_user_session_path, :method => :delete %></li>
+ <li class="divider"></li>
+ <li><%= tab_link_to Organisation.model_name.human, organisation_path %></li>
+ </ul>
+ </li>
+ <% end %>
+ </ul>
+ </div><!-- /.navbar-collapse -->
+ </div><!-- /.container-fluid -->
+ </nav>
+ </div>
+ <div id="middle" class="container">
+ <div class="row">
+ <div class="col-md-9">
+ <div id="workspace" class="<%= controller_name %> <%= action_name %>">
+ <%= render partial: "shared/flash_messages", flash: flash %>
+ <%= yield %>
</div>
- </div>
+ </div>
+ <div id="sidebar" class="col-md-3">
+ <%= yield :sidebar %>
+ </div>
</div>
- <div class="tabs">
- <ul class="nav nav-tabs">
- <% if help_page? %>
- <li><%= link_to "Aide", help_path, :class =>("current" if help_page?) %></li>
- <% elsif ! selected_referential? %>
- <% if user_signed_in? %>
- <li><%= link_to Referential.model_name.human(:count=>2), referentials_path, :class => ("current" if current_page?(referentials_path) || current_page?(root_url)) %></li>
- <li class="admin"><%= tab_link_to Organisation.model_name.human, organisation_path %></li>
- <% end %>
- <% else %>
- <li><%= link_to t("layouts.tabs.dashboard").capitalize, referential_path(@referential), :class => ("current" if current_page?(referential_path(@referential)) || request.path.start_with?(referential_rule_parameter_sets_path(@referential))) %></li>
- <li><%= tab_link_to Chouette::Network, referential_networks_path(@referential) %></li>
- <li><%= tab_link_to Chouette::Company, referential_companies_path(@referential) %></li>
- <li><%= tab_link_to Chouette::GroupOfLine, referential_group_of_lines_path(@referential) %></li>
- <li><%= tab_link_to Chouette::Line, referential_lines_path(@referential) %></li>
- <li><%= tab_link_to Chouette::StopArea, referential_stop_areas_path(@referential) %></li>
- <li><%= tab_link_to Chouette::ConnectionLink, referential_connection_links_path(@referential) %></li>
- <li><%= tab_link_to Chouette::TimeTable, referential_time_tables_path(@referential) %></li>
- <li><%= tab_link_to ImportTask, referential_import_tasks_path(@referential) %></li>
- <li><%= tab_link_to Export, referential_exports_path(@referential) %></li>
- <li><%= tab_link_to ComplianceCheckTask, referential_compliance_check_tasks_path(@referential) %></li>
- <% end %>
- </ul>
</div>
- <div id="body">
- <div id="workspace" class="<%= controller_name %> <%= action_name %>">
- <%= render partial: "shared/flash_messages", flash: flash %>
- <%= yield %>
- </div>
- <div id="sidebar">
- <%= yield :sidebar %>
- </div>
+ <div class="clearfix"></div>
+ <div id="footer">
+ <%= render partial: "shared/footer" %>
</div>
</body>
</html>
diff --git a/app/views/layouts/without_sidebar.html.erb b/app/views/layouts/without_sidebar.html.erb
new file mode 100644
index 000000000..948070695
--- /dev/null
+++ b/app/views/layouts/without_sidebar.html.erb
@@ -0,0 +1,126 @@
+<!DOCTYPE html>
+<html lang="<%= I18n.locale %>">
+ <head>
+ <title>Chouette V2 - <%= title %></title>
+ <%= stylesheet_link_tag :application %>
+ <%= javascript_include_tag :application %>
+ <% if defined?( @map) %>
+ <script src="http://maps.google.com/maps/api/js?v=3.2&sensor=false"></script>
+ <script src="http://openlayers.org/api/OpenLayers.js"></script>
+ <script type="text/JavaScript">
+ OpenLayers.ImgPath = "<%= polymorphic_path_patch("/assets/openlayers/") %>";
+ </script>
+ <% end %>
+ <%= analytics_init if Rails.env.production? %>
+ <%= csrf_meta_tag %>
+ <meta http-equiv="Content-type" content="text/html; charset=utf-8" />
+ <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
+ </head>
+ <body>
+ <div id="header">
+ <nav class="navbar navbar-default navbar-fixed-top" role="navigation">
+ <div class="container">
+ <!-- Brand and toggle get grouped for better mobile display -->
+ <div class="navbar-header">
+ <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
+ <span class="sr-only">Toggle navigation</span>
+ <span class="icon-bar"></span>
+ <span class="icon-bar"></span>
+ <span class="icon-bar"></span>
+ <span class="icon-bar version"><%= APP_VERSION %></span>
+ </button>
+ <%= link_to referentials_path, :class =>"navbar-brand" do %>
+ <%= image_tag("logo_chouette.png") %> <span class="version"><%= APP_VERSION %></span>
+ <% end %>
+ </div>
+
+ <!-- Collect the nav links, forms, and other content for toggling -->
+ <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
+ <ul class="nav navbar-nav">
+ <% if selected_referential? %>
+ <li class="dropdown">
+ <a href="#" class="dropdown-toggle" data-toggle="dropdown"><%= @referential.name %><b class="caret"></b></a>
+ <ul class="dropdown-menu">
+ <li><%= link_to t("layouts.navbar.return_to_referentials"), referentials_path %></li>
+ <li class="divider"></li>
+ <li role="presentation" class="dropdown-header"><%= t("layouts.navbar.select_referential") %></li>
+ <% current_organisation.referentials.each do |referential| %>
+ <li>
+ <%= link_to @referential.name, referential_path(@referential) %>
+ </li>
+ <% end %>
+ </ul>
+ </li>
+ <li class="dropdown">
+ <a href="#" class="dropdown-toggle" data-toggle="dropdown"><%= t("layouts.navbar.referential_datas") %><b class="caret"></b></a>
+ <ul class="dropdown-menu">
+ <li><%= link_to referential_networks_path(@referential) do %>
+ <%= Referential.human_attribute_name("networks") %><span class="badge pull-right"><%= @referential.networks.size %></span>
+ <% end %>
+ </li>
+ <li><%= link_to referential_companies_path(@referential) do %>
+ <%= Referential.human_attribute_name("companies") %><span class="badge pull-right"><%= @referential.companies.size %></span>
+ <% end %>
+ </li>
+ <li><%= link_to referential_group_of_lines_path(@referential) do %>
+ <%= Referential.human_attribute_name("group_of_lines") %><span class="badge pull-right"><%= @referential.group_of_lines.size %></span>
+ <% end %>
+ </li>
+ <li><%= link_to referential_lines_path(@referential) do %>
+ <%= Referential.human_attribute_name("lines") %><span class="badge pull-right"><%= @referential.lines.size %></span>
+ <% end %>
+ </li>
+ <li><%= link_to referential_stop_areas_path(@referential) do %>
+ <%= Referential.human_attribute_name("stop_areas") %><span class="badge pull-right"><%= @referential.stop_areas.size %></span>
+ <% end %>
+ </li>
+ <li><%= link_to referential_connection_links_path(@referential) do %>
+ <%= Referential.human_attribute_name("connection_links") %><span class="badge pull-right"><%= @referential.connection_links.size %></span>
+ <% end %>
+ </li>
+ <li><%= link_to referential_time_tables_path(@referential) do %>
+ <%= Referential.human_attribute_name("time_tables") %><span class="badge pull-right"><%= @referential.time_tables.size %></span>
+ <% end %>
+ </li>
+ </ul>
+ </li>
+ <li><%= link_to Referential.human_attribute_name("import_tasks"), referential_import_tasks_path(@referential) %></li>
+ <li><%= link_to Referential.human_attribute_name("export_tasks"), referential_exports_path(@referential) %></li>
+ <li><%= link_to Referential.human_attribute_name("compliance_check_tasks"), referential_compliance_check_tasks_path(@referential) %></li>
+ <% end %>
+ </ul>
+ <ul class="nav navbar-nav navbar-right">
+ <li class="<%= language_class('fr') %>"><%= link_to_language :fr %></li>
+ <li class="<%= language_class('en') %>"><%= link_to_language :en %></li>
+ <li><%= link_to t('layouts.help'), help_path, :class =>("current" if help_page?), :target => "_blank" %></li>
+ <% if user_signed_in? %>
+ <li class="dropdown">
+ <a href="#" class="dropdown-toggle" data-toggle="dropdown"><span class="gravatar"><%= user_gravatar_image_tag current_user %></span><%= current_user.name %> <b class="caret"></b></a>
+ <ul class="dropdown-menu">
+ <li><%= link_to t('layouts.user.profile'), edit_user_registration_path %></li>
+ <li><%= link_to t('layouts.user.sign_out'), destroy_user_session_path, :method => :delete %></li>
+ <li class="divider"></li>
+ <li><%= tab_link_to Organisation.model_name.human, organisation_path %></li>
+ </ul>
+ </li>
+ <% end %>
+ </ul>
+ </div><!-- /.navbar-collapse -->
+ </div><!-- /.container-fluid -->
+ </nav>
+ </div>
+ <div id="middle" class="container">
+ <div class="row">
+ <div class="col-md-12">
+ <div id="workspace" class="<%= controller_name %> <%= action_name %>">
+ <%= render partial: "shared/flash_messages", flash: flash %>
+ <%= yield %>
+ </div>
+ </div>
+ </div>
+ </div>
+ <div id="footer">
+ <%= render partial: "shared/footer" %>
+ </div>
+ </body>
+</html>
diff --git a/app/views/referentials/index.html.erb b/app/views/referentials/index.html.erb
index 5111856d9..220fc17ba 100644
--- a/app/views/referentials/index.html.erb
+++ b/app/views/referentials/index.html.erb
@@ -8,5 +8,4 @@
<ul class="actions">
<li><%= link_to t('referentials.actions.new'), new_referential_path, :class => "add" %></li>
</ul>
-<%= render "layouts/logos" %>
<% end %>
diff --git a/app/views/routes/_route.html.erb b/app/views/routes/_route.html.erb
index be5bbeb2b..79064ed97 100644
--- a/app/views/routes/_route.html.erb
+++ b/app/views/routes/_route.html.erb
@@ -1,37 +1,36 @@
<%= div_for(route) do %>
- <% if ( route.wayback_code ) %>
- <%= link_to image_tag("icons/#{route.wayback}.png"), referential_line_route_path( @referential, @line, route) %>
- <% end %>
- <div>
- <%= link_to route.name, referential_line_route_path( @referential, @line, route) %>
- </div>
- <div class="info">
- <% if ! route.number.blank? %>
- <%= route.human_attribute_name('number') %> <%= route.number %> -
- <% end %>
- <% if ! route.direction.blank? %>
- <%= route.human_attribute_name('direction_code') %> <%= t('directions.label.'+route.direction_code) %> -
+<div class="header">
+ <% if ( route.wayback_code ) %>
+ <%= fonticon_wayback(route.wayback) %>
<% end %>
+ <%= link_to route.name, referential_line_route_path( @referential, @line, route) %>
<% if route.wayback_code %>
- <%= route.human_attribute_name('wayback_code') %> <%= (route.wayback=="A") ? t('.wayback.positive') : t('.wayback.negative') %>
- <% end %>
- <% if route.wayback_code || (not route.direction.blank?) || ( not route.number.blank?) %>
- <br/>
+ <span class="wayback"><%= route.human_attribute_name('wayback_code') %> <%= (route.wayback=="A") ? t('.wayback.positive') : t('.wayback.negative') %></span>
<% end %>
+</div>
+<div class="clearfix"></div>
+<div class="body">
+ <p>
+ <% if route.journey_patterns.size > 0 %>
+ <i class="fa fa-clock-o"></i><%= link_to t("vehicle_journeys.actions.index"), referential_line_route_vehicle_journeys_path(@referential, @line, route) %>
+ <% else %>
+ <%= t('.no_journey_pattern')%>
+ <% end%>
+ </p>
+ <p>
<% if route.opposite_route %>
- <%= t('.opposite') %> <%= link_to route.opposite_route.name, referential_line_route_path( @referential, @line, route.opposite_route) %>
+ <%= fonticon_wayback(route.opposite_route.wayback) %><%= link_to route.opposite_route.name, referential_line_route_path( @referential, @line, route.opposite_route) %> [<%= t('.opposite') %>]
<% else %>
- <%= t('.no_opposite') %>
+ <%= t('.no_opposite') %>
<% end %>
- <% if route.journey_patterns.size > 0 %>
- <div class="actions">
- <%= link_to t("vehicle_journeys.actions.index"), referential_line_route_vehicle_journeys_path(@referential, @line, route), :class => "link" %>
- </div>
+ </p>
+ <p>
+ <% if ! route.direction.blank? %>
+ <%= route.human_attribute_name('direction_code') %> : <%= t('directions.label.'+route.direction_code) %>
<% else %>
- <div class="actions">
- <%= t('.no_journey_pattern')%>
- </div>
- <% end%>
- </div>
+ <br>
+ <% end %>
+ </p>
+</div>
<% end %>
diff --git a/app/views/routes/show.html.erb b/app/views/routes/show.html.erb
index 9c1913e51..c36ce0e94 100644
--- a/app/views/routes/show.html.erb
+++ b/app/views/routes/show.html.erb
@@ -101,14 +101,14 @@
<%= link_to t('journey_patterns.actions.new'), new_referential_line_route_journey_pattern_path(@referential, @line, @route), :class => "add" %>
</li>
<% end %>
-<% if @route.journey_patterns.size > 0 %>
+ <!-- <li> -->
+ <!-- <%= link_to t('vehicle_journey_imports.new.title'), new_referential_line_route_vehicle_journey_import_path( @referential, @line, @route ), :class => "import" %> -->
+ <!-- </li> -->
+ <% if @route.journey_patterns.size > 0 %>
<li>
- <%= link_to t('vehicle_journeys.actions.index'), [@referential, @line, @route, :vehicle_journeys], :class => "link" %>
- </li>
- <% end %>
- <li>
- <%= link_to t('vehicle_journey_imports.new.title'), new_referential_line_route_vehicle_journey_import_path( @referential, @line, @route ), :class => "import" %>
+ <i class="fa fa-clock-o"></i><%= link_to t('vehicle_journeys.actions.index'), [@referential, @line, @route, :vehicle_journeys], :class => "vehicle_journeys" %>
</li>
+<% end %>
</ul>
<%= creation_tag(@route) %>
diff --git a/app/views/shared/_footer.erb b/app/views/shared/_footer.erb
new file mode 100644
index 000000000..059a96d4c
--- /dev/null
+++ b/app/views/shared/_footer.erb
@@ -0,0 +1,42 @@
+<div class="container">
+ <div class="row">
+ <div class="col-md-3 logo">
+ <%= image_tag "#{ChouetteIhm::Application.config.company_name}.png" %>
+ </div>
+ <div class="col-md-3">
+ <ul>
+ <li><h4><%= t("layouts.footer.product.title") %></h4></li>
+ <li><%= link_to t("layouts.footer.product.licence"), "http://www.cecill.info/licences/Licence_CeCILL-B_V1-fr.html" %></li>
+ <li><%= link_to t("layouts.footer.product.source_code"), "https://github.com/afimb/chouette2" %></li>
+ <li><%= link_to t("layouts.footer.product.user_group") %></li>
+ </ul>
+ </div>
+ <div class="col-md-3">
+ <ul>
+ <li><h4><%= t("layouts.footer.support.title") %></h4></li>
+ <li>
+ <% if ChouetteIhm::Application.config.company_contact.include?("@") %>
+ <%= mail_to "#{ChouetteIhm::Application.config.company_contact}", t("layouts.footer.contact.mail") %>
+ <% else %>
+ <%= link_to t("layouts.footer.contact.mail"), "#{ChouetteIhm::Application.config.company_contact}" %>
+ <% end %>
+ </li>
+ <li><%= link_to t("layouts.footer.support.help"), "/help" %></li>
+ </ul>
+ </div>
+ <div class="col-md-3">
+ <ul>
+ <li><h4><%= t("layouts.footer.contact.title") %></h4></li>
+ <li>
+ <% if ChouetteIhm::Application.config.company_contact.include?("@") %>
+ <%= mail_to "#{ChouetteIhm::Application.config.company_contact}", t("layouts.footer.contact.mail") %>
+ <% else %>
+ <%= link_to t("layouts.footer.contact.mail"), "#{ChouetteIhm::Application.config.company_contact}" %>
+ <% end %>
+ </li>
+ <li><%= link_to t("layouts.footer.contact.newsletter"),"http://www.chouette.mobi/les-utilisateurs/etre-informe/" %></li>
+ <li><%= link_to t("layouts.footer.contact.forum"), "http://forum.chouette.mobi/" %></li>
+ </ul>
+ </div>
+ </div>
+</div>
diff --git a/app/views/stop_areas/_form.html.erb b/app/views/stop_areas/_form.html.erb
index 24800159a..c0ca1c922 100644
--- a/app/views/stop_areas/_form.html.erb
+++ b/app/views/stop_areas/_form.html.erb
@@ -1,5 +1,5 @@
<div class="container-fluid">
- <div class="col-md-8">
+ <div class="col-md-7">
<%= semantic_form_for [@referential, @stop_area] do |form| %>
<%= form.inputs do %>
<%= form.input :id, :as => :hidden %>
@@ -45,8 +45,9 @@
<% end %>
</div>
- <div class="col-md-4">
+ <div class="col-md-5">
<% if !manage_itl && @map %>
<%= @map.to_html %>
<% end %>
</div>
+</div>
diff --git a/app/views/stop_areas/show.html.erb b/app/views/stop_areas/show.html.erb
index 25510b10f..d812ff4e3 100644
--- a/app/views/stop_areas/show.html.erb
+++ b/app/views/stop_areas/show.html.erb
@@ -92,14 +92,11 @@
</div>
<p class="after_map" />
-<div class="genealogical">
+<div class="genealogical clearfix">
<%= render "stop_areas/genealogical" %>
</div>
-
-
<% if manage_access_points %>
- <p class="after_map" />
<div>
<h3><%= t('.access_points') %></h3>
diff --git a/app/views/vehicle_journey_imports/new.html.erb b/app/views/vehicle_journey_imports/new.html.erb
index a1078c88d..a8459848c 100644
--- a/app/views/vehicle_journey_imports/new.html.erb
+++ b/app/views/vehicle_journey_imports/new.html.erb
@@ -1,9 +1,16 @@
<%= title_tag t('vehicle_journey_imports.new.title') %>
-<p class="export"><%= t('vehicle_journey_imports.new.export_vehicle_journeys') %>
- <span class="file"><%= link_to image_tag("icons/file_csv.png"), referential_line_route_vehicle_journey_exports_path(@referential, @line, @route, :format => :csv) %></span>
- <span class="file"><%= link_to image_tag("icons/file_excel.png"), referential_line_route_vehicle_journey_exports_path(@referential, @line, @route, :format => :xls) %></span>
-</p>
+<div class="main_actions">
+ <div class="btn-group">
+ <button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown">
+ <%= t('vehicle_journey_imports.new.export_vehicle_journeys') %><span class="caret"></span>
+ </button>
+ <ul class="dropdown-menu" role="menu">
+ <li><%= link_to image_tag("icons/file_csv.png") + " Csv" , referential_line_route_vehicle_journey_exports_path(@referential, @line, @route, :format => :csv) %></li>
+ <li><%= link_to image_tag("icons/file_excel.png") + " Excel", referential_line_route_vehicle_journey_exports_path(@referential, @line, @route, :format => :xls) %></li>
+ </ul>
+ </div>
+</div>
<%= semantic_form_for [@referential, @line, @route, @vehicle_journey_import] do |form| %>
<% if @vehicle_journey_import.errors.any? %>
diff --git a/app/views/vehicle_journeys/_form.html.erb b/app/views/vehicle_journeys/_form.html.erb
index 8f15b6336..1c4d2f45e 100644
--- a/app/views/vehicle_journeys/_form.html.erb
+++ b/app/views/vehicle_journeys/_form.html.erb
@@ -10,46 +10,38 @@
<%= form.input :vehicle_type_identifier%>
<%= form.input :objectid, :required => !@vehicle_journey.new_record?, :input_html => { :disabled => !@vehicle_journey.new_record? } %>
- <%= form.inputs :class => "stop_times", :name => @vehicle_journey.human_attribute_name(:vehicle_journey_at_stop_ids) do %>
- <table border="0" class="vehicle_journey_at_stops">
- <thead>
- <tr>
- <th class="hour title"><%= t('.arrival') %></th>
- <th class="stop title" ><%= t('.stop_title') %></th>
- <th class="hour title"><%= t('.departure') %></th>
- </tr>
- </thead>
- <tfoot>
- <tr>
- <td class="title"> <a class="to_departures"><%= t('.to_departures') %></a></td>
- <td class="title" ></td>
- <td class="title"><a class="to_arrivals"><%= t('.to_arrivals') %></a></td>
- </tr>
- </tfoot>
- <!--
- <= form.semantic_fields_for :vehicle_journey_at_stops do |vjas| >
- <= vjas.object.stop_point.stop_area.name >
- <= vjas.input :_destroy, :as => :hidden >
- <= vjas.input :departure_time, :as => :time >
-
- < end >
- -->
- <tbody class="journey_pattern_dependent_list">
+ <%= form.inputs :class => "stop_times", :name => @vehicle_journey.human_attribute_name(:vehicle_journey_at_stop_ids) do %>
+ <table border="0" class="vehicle_journey_at_stops">
+ <thead>
+ <tr>
+ <th class="hour title"><%= t('.arrival') %></th>
+ <th class="stop title" ><%= t('.stop_title') %></th>
+ <th class="hour title"><%= t('.departure') %></th>
+ </tr>
+ </thead>
+ <tfoot>
+ <tr>
+ <td class="title"> <a class="to_departures"><%= t('.to_departures') %></a></td>
+ <td class="title" ></td>
+ <td class="title"><a class="to_arrivals"><%= t('.to_arrivals') %></a></td>
+ </tr>
+ </tfoot>
+ <tbody class="journey_pattern_dependent_list">
<%= render :partial => "vehicle_journeys/vehicle_journey_at_stop_fields",
- :collection => @vehicle_journey.vehicle_journey_at_stops, :as => :vehicle_journey_at_stop %>
- </tbody>
- </table>
- <% end %>
+ :collection => @vehicle_journey.vehicle_journey_at_stops, :as => :vehicle_journey_at_stop %>
+ </tbody>
+ </table>
+ <% end %>
<%= form.input :time_table_tokens, :label => t('.time_tables'), :as => :text, :input_html => { :"data-pre" => ( @vehicle_journey.time_tables.map { |time_table| { :id => time_table.id, :name => time_table.comment } } ).to_json } %>
-
+
<% end %>
- <%= form.actions do %>
- <%= form.action :submit, :as => :button %>
- <%= form.action :cancel, :as => :link %>
- <% end %>
+ <%= form.actions do %>
+ <%= form.action :submit, :as => :button %>
+ <%= form.action :cancel, :as => :link %>
+ <% end %>
<% end %>
-
+
<% if @vehicle_journey.new_record? %>
<%= javascript_include_tag new_referential_line_route_vehicle_journey_path(@referential, @line, @route, :format => :js) %>
<% else %>
diff --git a/app/views/vehicle_journeys/_vehicle_journey_at_stop_fields.html.erb b/app/views/vehicle_journeys/_vehicle_journey_at_stop_fields.html.erb
index 65a017f24..150ecde4b 100644
--- a/app/views/vehicle_journeys/_vehicle_journey_at_stop_fields.html.erb
+++ b/app/views/vehicle_journeys/_vehicle_journey_at_stop_fields.html.erb
@@ -4,21 +4,21 @@
<%= select_hour(vjas.arrival_time ? vjas.arrival_time.hour : 0, { :prefix => "vehicle_journey", :field_name => "vehicle_journey_at_stops_attributes[#{vehicle_journey_at_stop_counter}][arrival_time(4i)]"}, :class => "hour") %>
<%= select_minute(vjas.arrival_time ? vjas.arrival_time.min : 0, { :prefix => "vehicle_journey", :field_name => "vehicle_journey_at_stops_attributes[#{vehicle_journey_at_stop_counter}][arrival_time(5i)]"}, :class => "minute") %>
</td>
- <td>
- <input name=<%= "vehicle_journey[vehicle_journey_at_stops_attributes][#{vehicle_journey_at_stop_counter}][id]" %> type="hidden" value="<%= vjas.id %>">
- <input name=<%= "vehicle_journey[vehicle_journey_at_stops_attributes][#{vehicle_journey_at_stop_counter}][_destroy]" %> type="hidden" value="<%= vjas._destroy ? "1" : "0" %>">
- <input name=<%= "vehicle_journey[vehicle_journey_at_stops_attributes][#{vehicle_journey_at_stop_counter}][stop_point_id]" %> type="hidden" value="<%= vjas.stop_point_id %>">
- <input name=<%= "vehicle_journey[vehicle_journey_at_stops_attributes][#{vehicle_journey_at_stop_counter}][departure_time(3i)]" %> type="hidden" value="1">
- <input name=<%= "vehicle_journey[vehicle_journey_at_stops_attributes][#{vehicle_journey_at_stop_counter}][departure_time(2i)]" %> type="hidden" value="1">
- <input name=<%= "vehicle_journey[vehicle_journey_at_stops_attributes][#{vehicle_journey_at_stop_counter}][departure_time(1i)]" %> type="hidden" value="2000">
- <input name=<%= "vehicle_journey[vehicle_journey_at_stops_attributes][#{vehicle_journey_at_stop_counter}][arrival_time(3i)]" %> type="hidden" value="1">
- <input name=<%= "vehicle_journey[vehicle_journey_at_stops_attributes][#{vehicle_journey_at_stop_counter}][arrival_time(2i)]" %> type="hidden" value="1">
- <input name=<%= "vehicle_journey[vehicle_journey_at_stops_attributes][#{vehicle_journey_at_stop_counter}][arrival_time(1i)]" %> type="hidden" value="2000">
- <label for=<%= "vehicle_journey_vehicle_journey_at_stops_attributes_#{vehicle_journey_at_stop_counter}_departure_time_5i" %>><%= vjas.stop_point.stop_area.name %></label>
+ <td>
+ <input name=<%= "vehicle_journey[vehicle_journey_at_stops_attributes][#{vehicle_journey_at_stop_counter}][id]" %> type="hidden" value="<%= vjas.id %>">
+ <input name=<%= "vehicle_journey[vehicle_journey_at_stops_attributes][#{vehicle_journey_at_stop_counter}][_destroy]" %> type="hidden" value="<%= vjas._destroy ? "1" : "0" %>">
+ <input name=<%= "vehicle_journey[vehicle_journey_at_stops_attributes][#{vehicle_journey_at_stop_counter}][stop_point_id]" %> type="hidden" value="<%= vjas.stop_point_id %>">
+ <input name=<%= "vehicle_journey[vehicle_journey_at_stops_attributes][#{vehicle_journey_at_stop_counter}][departure_time(3i)]" %> type="hidden" value="1">
+ <input name=<%= "vehicle_journey[vehicle_journey_at_stops_attributes][#{vehicle_journey_at_stop_counter}][departure_time(2i)]" %> type="hidden" value="1">
+ <input name=<%= "vehicle_journey[vehicle_journey_at_stops_attributes][#{vehicle_journey_at_stop_counter}][departure_time(1i)]" %> type="hidden" value="2000">
+ <input name=<%= "vehicle_journey[vehicle_journey_at_stops_attributes][#{vehicle_journey_at_stop_counter}][arrival_time(3i)]" %> type="hidden" value="1">
+ <input name=<%= "vehicle_journey[vehicle_journey_at_stops_attributes][#{vehicle_journey_at_stop_counter}][arrival_time(2i)]" %> type="hidden" value="1">
+ <input name=<%= "vehicle_journey[vehicle_journey_at_stops_attributes][#{vehicle_journey_at_stop_counter}][arrival_time(1i)]" %> type="hidden" value="2000">
+ <label for=<%= "vehicle_journey_vehicle_journey_at_stops_attributes_#{vehicle_journey_at_stop_counter}_departure_time_5i" %>><%= vjas.stop_point.stop_area.name %></label>
</td>
<td class="departure_time <%= vjas.departure_time.nil? ? "missing" : "" %> <%= vjas.errors[:departure_time].blank? ? "" : "invalid_position" %>">
<%= select_hour(vjas.departure_time ? vjas.departure_time.hour : 0, { :prefix => "vehicle_journey", :field_name => "vehicle_journey_at_stops_attributes[#{vehicle_journey_at_stop_counter}][departure_time(4i)]"}, :class => "hour") %>
<%= select_minute(vjas.departure_time ? vjas.departure_time.min : 0, { :prefix => "vehicle_journey", :field_name => "vehicle_journey_at_stops_attributes[#{vehicle_journey_at_stop_counter}][departure_time(5i)]"}, :class => "minute") %>
- </td>
+ </td>
</tr>
diff --git a/app/views/vehicle_journeys/edit.html.erb b/app/views/vehicle_journeys/edit.html.erb
index fcb0c2bd9..dba18248e 100644
--- a/app/views/vehicle_journeys/edit.html.erb
+++ b/app/views/vehicle_journeys/edit.html.erb
@@ -10,8 +10,8 @@
<label><%= @vehicle_journey.human_attribute_name(:route) %>: </label>
<%= link_to @route.name, [@referential, @line, @route] %>
</p>
- <div>
-<div>
+ </div>
+</div>
<%= render "form" %>
diff --git a/app/views/vehicle_journeys/index.html.erb b/app/views/vehicle_journeys/index.html.erb
index d32c9f02f..651aea739 100644
--- a/app/views/vehicle_journeys/index.html.erb
+++ b/app/views/vehicle_journeys/index.html.erb
@@ -1,18 +1,9 @@
-<%= title_tag t('vehicle_journeys.index.title', :route => @route.name ) %>
+<ol class="breadcrumb">
+ <li><%= link_to line_formatted_name( @line), [@referential, @line] %></li>
+ <li><%= link_to @route.name, [@referential, @line, @route] %></li>
+</ol>
-<div class="vehicle_journey_index">
- <div class="summary">
- <p>
- <label><%= @route.human_attribute_name(:line) %>: </label>
- <%= link_to line_formatted_name( @line), [@referential, @line] %>
- </p>
- <p>
- <label><%= Chouette::Route.model_name.human %>: </label>
- <%= link_to @route.name, [@referential, @line, @route] %>
- </p>
- </div>
-</div>
-<h3 class="vehicle_journeys"><%= t('.vehicle_journeys') %></h3>
+<%= title_tag t('vehicle_journeys.index.title', :route => @route.name ) %>
<div class="page_info">
<span class="search"> <%= t("will_paginate.page_entries_info.search") %></span> <%= page_entries_info @vehicle_journeys %>
</div>
@@ -20,7 +11,7 @@
<%= will_paginate @vehicle_journeys, :container => false, renderer: BootstrapPagination::Rails %>
</div>
<div class="vehicle_journeys paginated_content">
- <table class="table table-hover">
+ <table class="table table-hover table-striped">
<thead>
<tr>
<th class="title"><%= Chouette::JourneyPattern.model_name.human.pluralize %> :</th>