aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBruno Perles2015-12-02 11:18:12 +0100
committerBruno Perles2015-12-02 11:18:12 +0100
commit6f51f9dc8d4188bfa9c079be33b619bc01a4d5f0 (patch)
tree834f8ddcb051675dcba245d39963d3b145b7df08
parentbed0b35e482ccb3c02b0e035c7cbba0fa4043b1d (diff)
downloadchouette-core-6f51f9dc8d4188bfa9c079be33b619bc01a4d5f0.tar.bz2
#0040945 - Fix bugs on edit form with fullscreen map feature
-rw-r--r--app/assets/javascripts/tools.coffee33
-rw-r--r--app/assets/stylesheets/main/stop_areas.scss4
-rw-r--r--app/assets/stylesheets/vendor/map_layers.scss6
-rw-r--r--app/views/access_points/_form.html.erb83
-rw-r--r--app/views/stop_areas/_form.html.erb35
5 files changed, 85 insertions, 76 deletions
diff --git a/app/assets/javascripts/tools.coffee b/app/assets/javascripts/tools.coffee
index 9274e57e9..04b61cde6 100644
--- a/app/assets/javascripts/tools.coffee
+++ b/app/assets/javascripts/tools.coffee
@@ -1,29 +1,32 @@
(($) ->
$ ->
$('.ce-hide').removeClass 'ce-hide'
- $('#map').before('<button id="ce-SidebarNavBlock" class="hide"><i class="fa fa-bars"></i></button>')
- $('[data-ce-action]').click ->
+ sidebar = $('#sidebar').text().trim().length > 0
+ if (sidebar)
+ $('#map').before('<button id="ce-SidebarNavBlock" class="hide"><i class="fa fa-bars"></i></button>')
+ $('[data-ce-action]').click (e) ->
+ e.preventDefault()
action = $(this).data('ce-action')
id = $(this).data('ce-id')
$map = $('#'+id)
if (action == 'map-fullscreen')
- if $map.hasClass('ce-isExpanded')
- $map.removeClass('ce-isExpanded')
- $map.css('width', '')
+ if $map.hasClass('ce-MapBlock-fullWidth')
+ $map.removeClass('ce-MapBlock-fullWidth')
$map.css('height', '')
else
offset_top = $map.offset().top + 2
height = $(window).height() - offset_top
- $map.addClass('ce-isExpanded')
- $map.css('height', height).css('width', '100%')
- $('#sidebar').toggleClass('hide')
- $('#sidebar').toggleClass('ce-SidebarFloatBlock')
- $('#ce-SidebarNavBlock').toggleClass('hide')
- $map.closest('.col-md-9, .col-md-12').toggleClass('col-md-9 col-md-12')
+ $map.addClass('ce-MapBlock-fullWidth')
+ $map.css('height', height)
+ if sidebar
+ $('#sidebar').toggleClass('hide')
+ $('#sidebar').toggleClass('ce-SidebarFloatBlock')
+ $('#ce-SidebarNavBlock').toggleClass('hide')
+ $map.closest('.col-md-9, .col-md-12').toggleClass('col-md-9 col-md-12')
$map.find('i').toggleClass('fa-expand fa-compress')
map.updateSize()
- $('#ce-SidebarNavBlock').click ->
- $('.ce-SidebarFloatBlock').toggleClass('hide')
- return
- return
+ if sidebar
+ $('#ce-SidebarNavBlock').click (e) ->
+ e.preventDefault()
+ $('.ce-SidebarFloatBlock').toggleClass('hide')
) jQuery
diff --git a/app/assets/stylesheets/main/stop_areas.scss b/app/assets/stylesheets/main/stop_areas.scss
index 59c243c26..c0bbe8a64 100644
--- a/app/assets/stylesheets/main/stop_areas.scss
+++ b/app/assets/stylesheets/main/stop_areas.scss
@@ -22,9 +22,7 @@
}
#map{
- float:none;
- width: 100%;
- height: 450px;
+ width: 50%;
}
}
diff --git a/app/assets/stylesheets/vendor/map_layers.scss b/app/assets/stylesheets/vendor/map_layers.scss
index 70394ac57..d093e3a4e 100644
--- a/app/assets/stylesheets/vendor/map_layers.scss
+++ b/app/assets/stylesheets/vendor/map_layers.scss
@@ -18,6 +18,12 @@ p.after_map {
height: 21px;
right: -1px;
color: white;
+ padding: 2px 6px !important;
+}
+#map.ce-MapBlock-fullWidth {
+ width: 100% !important;
+ display: block;
+ float: inherit;
}
#ce-SidebarNavBlock {
position: absolute;
diff --git a/app/views/access_points/_form.html.erb b/app/views/access_points/_form.html.erb
index adbfd0348..9057bb7bb 100644
--- a/app/views/access_points/_form.html.erb
+++ b/app/views/access_points/_form.html.erb
@@ -1,51 +1,54 @@
<div class="container-fluid">
- <div class="col-md-7">
+ <% if @map %>
+ <%= @map.to_html %>
+ <% end %>
+ <%= 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 :zip_code %>
+ <%= form.input :city_name %>
+ <%= form.input :comment %>
+ <%= form.input :openning_time, :as => :time_picker,
+ :input_html => { :class => "form-control input-sm timepicker_basic"},
+ :wrapper_html => { :class => "input-append bootstrap-timepicker" } %>
+ <%= form.input :closing_time, :as => :time_picker,
+ :input_html => { :class => "form-control input-sm timepicker_basic"},
+ :wrapper_html => { :class => "input-append bootstrap-timepicker" } %>
+ <%= 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 => { :title => t("formtastic.titles.access_point.objectid")} %>
- <%= 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 :zip_code %>
- <%= form.input :city_name %>
- <%= form.input :comment %>
- <%= form.input :openning_time, :as => :time_picker, :input_html => { :class => "form-control input-sm timepicker_basic"}, :wrapper_html => { :class => "input-append bootstrap-timepicker" } %>
- <%= form.input :closing_time, :as => :time_picker, :input_html => { :class => "form-control input-sm timepicker_basic"}, :wrapper_html => { :class => "input-append bootstrap-timepicker" } %>
- <%= 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 => { :title => t("formtastic.titles.access_point.objectid")} %>
-
- <%= 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_xy, :input_html => { :title => t("formtastic.titles.access_point.projection_xy")} %>
- </div>
- </div>
- <% end %>
+ <%= 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">WGS84</div>
+ <div class="panel-heading"><%= @referential.projection_type_label %></div>
<div class="panel-body">
- <%= form.input :coordinates, :input_html => { :title => t("formtastic.titles.access_point.coordinates")} %>
+ <%= form.input :projection_xy, :input_html => { :title => t("formtastic.titles.access_point.projection_xy")} %>
</div>
- </div>
+ </div>
<% end %>
+ <div class="panel panel-default">
+ <div class="panel-heading">WGS84</div>
+ <div class="panel-body">
+ <%= form.input :coordinates, :input_html => { :title => t("formtastic.titles.access_point.coordinates")} %>
+ </div>
+ </div>
+ <% end %>
<% end %>
<%= form.actions do %>
- <%= form.action :submit, :as => :button %>
- <%= form.action :cancel, :as => :link %>
+ <%= 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>
+ <% end %>
</div>
diff --git a/app/views/stop_areas/_form.html.erb b/app/views/stop_areas/_form.html.erb
index bcbbe2bf9..dd4a1ea6a 100644
--- a/app/views/stop_areas/_form.html.erb
+++ b/app/views/stop_areas/_form.html.erb
@@ -1,29 +1,28 @@
<%= semantic_form_for [@referential, @stop_area] do |form| %>
<div class="row">
- <div class="col-md-6">
+ <div class="container-fluid">
+ <% if !manage_itl && @map %>
+ <%= @map.to_html %>
+ <% end %>
<%= form.inputs do %>
<%= form.input :id, :as => :hidden %>
<%= form.input :name, :input_html => { :title => t("formtastic.titles#{format_restriction_for_locales(@referential)}.stop_area.name")} %>
<%= form.input :stop_area_type, :as => :select, :input_html => { :disabled => !@stop_area.new_record? }, :collection => Chouette::StopArea.stop_area_types, :include_blank => false, :member_label => Proc.new { |stop_area_type| t("area_types.label.#{stop_area_type}") } %>
<div class="location_info">
<h3><%= t("stop_areas.stop_area.localisation") %></h3>
- <div id="prefetch">
- <label><%= t('.geolocalize') %></label>
- <input class="typeahead form-control input-lg" maxlength="255" type="text" placeholder="<%= t('.address') %>" />
- </div>
- <% unless @referential.projection_type_label.empty? %>
- <%= form.input :projection_xy, :label => t("projection_xy", :projection => @referential.projection_type_label), :input_html => { :title => t("formtastic.titles#{format_restriction_for_locales(@referential)}.stop_area.projection_xy")} %>
- <% end %>
- <%= form.input :coordinates, :input_html => { :title => t("formtastic.titles#{format_restriction_for_locales(@referential)}.stop_area.coordinates")} %>
- <%= form.input :street_name %>
- <%= form.input :country_code %>
- <%= form.input :zip_code, :input_html => { :title => t("formtastic.titles#{format_restriction_for_locales(@referential)}.stop_area.zip_code")} %>
- <%= form.input :city_name, :input_html => { :title => t("formtastic.titles#{format_restriction_for_locales(@referential)}.stop_area.city_name")} %>
- <% end %>
- </div>
- <div class="col-md-6">
- <% if !manage_itl && @map %>
- <%= @map.to_html %>
+ <div id="prefetch">
+ <label><%= t('.geolocalize') %></label>
+ <input class="typeahead form-control input-lg" maxlength="255" type="text" placeholder="<%= t('.address') %>" />
+ </div>
+ <% unless @referential.projection_type_label.empty? %>
+ <%= form.input :projection_xy, :label => t("projection_xy", :projection => @referential.projection_type_label), :input_html => { :title => t("formtastic.titles#{format_restriction_for_locales(@referential)}.stop_area.projection_xy")} %>
+ <% end %>
+ <%= form.input :coordinates, :input_html => { :title => t("formtastic.titles#{format_restriction_for_locales(@referential)}.stop_area.coordinates")} %>
+ <%= form.input :street_name %>
+ <%= form.input :country_code %>
+ <%= form.input :zip_code, :input_html => { :title => t("formtastic.titles#{format_restriction_for_locales(@referential)}.stop_area.zip_code")} %>
+ <%= form.input :city_name, :input_html => { :title => t("formtastic.titles#{format_restriction_for_locales(@referential)}.stop_area.city_name")} %>
+ </div>
<% end %>
</div>
</div>