aboutsummaryrefslogtreecommitdiffstats
path: root/app/assets
diff options
context:
space:
mode:
Diffstat (limited to 'app/assets')
-rw-r--r--app/assets/javascripts/application.js2
-rw-r--r--app/assets/javascripts/timebands.js.coffee3
-rw-r--r--app/assets/javascripts/tools.js.coffee6
-rw-r--r--app/assets/javascripts/vehicle_journey.js.coffee12
-rw-r--r--app/assets/javascripts/vehicle_journey_frequencies.js.coffee0
-rw-r--r--app/assets/javascripts/vehicle_journey_frequencies/index.js.coffee4
-rw-r--r--app/assets/javascripts/vehicle_journeys/index.js.coffee1
-rw-r--r--app/assets/stylesheets/application.css.scss.erb1
-rw-r--r--app/assets/stylesheets/main/layout.css.scss4
-rw-r--r--app/assets/stylesheets/main/lines.css.scss29
-rw-r--r--app/assets/stylesheets/main/timebands.css.scss0
-rw-r--r--app/assets/stylesheets/main/vehicle_journey_frequencies.scss153
-rw-r--r--app/assets/stylesheets/main/vehicle_journeys.css.scss57
-rw-r--r--app/assets/stylesheets/partials/base.scss23
-rw-r--r--app/assets/stylesheets/vendor/bootstrap_changes.css.scss24
15 files changed, 288 insertions, 31 deletions
diff --git a/app/assets/javascripts/application.js b/app/assets/javascripts/application.js
index 212ccdff8..1ae76cd05 100644
--- a/app/assets/javascripts/application.js
+++ b/app/assets/javascripts/application.js
@@ -22,10 +22,12 @@
//= require footable/footable.filter
//= require footable/footable.paginate
//= require footable/footable.sort
+//= require tools
//= require_directory ./plugins
//= require_directory .
//= require_directory ./stop_areas
//= require_directory ./vehicle_journeys
+//= require_directory ./vehicle_journey_frequencies
//= require_directory ./import_tasks
//= require_directory ./compliance_check_tasks
//= require_directory ./compliance_checks
diff --git a/app/assets/javascripts/timebands.js.coffee b/app/assets/javascripts/timebands.js.coffee
new file mode 100644
index 000000000..24f83d18b
--- /dev/null
+++ b/app/assets/javascripts/timebands.js.coffee
@@ -0,0 +1,3 @@
+# Place all the behaviors and hooks related to the matching controller here.
+# All this logic will automatically be available in application.js.
+# You can use CoffeeScript in this file: http://coffeescript.org/
diff --git a/app/assets/javascripts/tools.js.coffee b/app/assets/javascripts/tools.js.coffee
new file mode 100644
index 000000000..b30eb6f15
--- /dev/null
+++ b/app/assets/javascripts/tools.js.coffee
@@ -0,0 +1,6 @@
+(($) ->
+ $ ->
+ $('.ce-hide').removeClass 'ce-hide'
+ return
+ return
+) jQuery
diff --git a/app/assets/javascripts/vehicle_journey.js.coffee b/app/assets/javascripts/vehicle_journey.js.coffee
index 54b359b7a..caf505960 100644
--- a/app/assets/javascripts/vehicle_journey.js.coffee
+++ b/app/assets/javascripts/vehicle_journey.js.coffee
@@ -1,6 +1,6 @@
jQuery ->
swap_hour_minute = ( from, to) ->
- rows = $('.vehicle_journeys tbody.journey_pattern_dependent_list tr.time')
+ rows = $('tbody.journey_pattern_dependent_list tr.time')
for row in rows
do (row) ->
$(row).find( to).find('.hour')[0].value = $(row).find( from).find('.hour')[0].value
@@ -8,15 +8,15 @@ jQuery ->
copy_departures_to_arrivals = (event) ->
event.preventDefault()
- swap_hour_minute( '.departure_time', '.arrival_time')
+ swap_hour_minute('.departure_time', '.arrival_time')
- $(document).on("click", '.vehicle_journeys a.to_arrivals', copy_departures_to_arrivals)
+ $(document).on('click', '[data-ce-action="to_arrivals"]', copy_departures_to_arrivals)
copy_arrivals_to_departures = (event) ->
event.preventDefault()
- swap_hour_minute( '.arrival_time', '.departure_time')
+ swap_hour_minute('.arrival_time', '.departure_time')
- $(document).on("click", '.vehicle_journeys a.to_departures', copy_arrivals_to_departures)
+ $(document).on('click', '[data-ce-action="to_departures"]', copy_arrivals_to_departures)
switch_vehicle_journey_at_stops = (event) ->
event.preventDefault()
@@ -72,4 +72,4 @@ jQuery ->
slide_to( '.departure_time', duration)
slide_to( '.arrival_time', duration)
- $(document).on("click", '.vehicle_journeys a.slide', slide) \ No newline at end of file
+ $(document).on("click", '.vehicle_journeys a.slide', slide)
diff --git a/app/assets/javascripts/vehicle_journey_frequencies.js.coffee b/app/assets/javascripts/vehicle_journey_frequencies.js.coffee
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/app/assets/javascripts/vehicle_journey_frequencies.js.coffee
diff --git a/app/assets/javascripts/vehicle_journey_frequencies/index.js.coffee b/app/assets/javascripts/vehicle_journey_frequencies/index.js.coffee
new file mode 100644
index 000000000..4f4fccc18
--- /dev/null
+++ b/app/assets/javascripts/vehicle_journey_frequencies/index.js.coffee
@@ -0,0 +1,4 @@
+$(".vehicle_journey_frequencies.index").ready ->
+ $( 'body' ).popover({html: true, trigger: "click", selector: '[rel="popover"]'}).on("show.bs.popover", (event)->
+ $('[aria-describedby]').click()
+ $(event.target).data("bs.popover").tip().css("maxWidth", "350px"))
diff --git a/app/assets/javascripts/vehicle_journeys/index.js.coffee b/app/assets/javascripts/vehicle_journeys/index.js.coffee
index e89c3f519..02de558d4 100644
--- a/app/assets/javascripts/vehicle_journeys/index.js.coffee
+++ b/app/assets/javascripts/vehicle_journeys/index.js.coffee
@@ -4,4 +4,3 @@ $(".vehicle_journeys.index").ready ->
.on("show.bs.popover", (event)->
$(event.target).data("bs.popover").tip().css("maxWidth", "350px"))
- \ No newline at end of file
diff --git a/app/assets/stylesheets/application.css.scss.erb b/app/assets/stylesheets/application.css.scss.erb
index 52405c14c..770e3c82b 100644
--- a/app/assets/stylesheets/application.css.scss.erb
+++ b/app/assets/stylesheets/application.css.scss.erb
@@ -17,6 +17,7 @@ $body-bg: #eee;
@import "modules/progress_bars";
// Partials
+@import "partials/base";
@import "partials/header";
@import "partials/footer";
diff --git a/app/assets/stylesheets/main/layout.css.scss b/app/assets/stylesheets/main/layout.css.scss
index 0a9ade3a8..aac5846c5 100644
--- a/app/assets/stylesheets/main/layout.css.scss
+++ b/app/assets/stylesheets/main/layout.css.scss
@@ -17,6 +17,10 @@ ol.breadcrumb{
margin-top: 10px;
}
+.ce-hide {
+ display: none;
+}
+
#middle{
min-height: 500px;
-webkit-box-shadow: 0 0 5px 2px rgba(0, 0, 0, .2);
diff --git a/app/assets/stylesheets/main/lines.css.scss b/app/assets/stylesheets/main/lines.css.scss
index 94201212a..e114a2338 100644
--- a/app/assets/stylesheets/main/lines.css.scss
+++ b/app/assets/stylesheets/main/lines.css.scss
@@ -78,7 +78,30 @@
display: inline;
}
}
-}
-
-
+}
+.ce-LineBlock-header-list {
+ display: table;
+ width: 100%;
+ margin: 0;
+ padding: 0;
+ > li {
+ display: table-cell;
+ vertical-align: middle;
+ > input {
+ margin-top: 0;
+ }
+ &:first-child {
+ width: 37px;
+ }
+ &:last-child {
+ text-align: right;
+ width: 73px;
+ }
+ }
+}
+.ce-LineBlock-header-title {
+ padding: 0 !important;
+ line-height: 12px;
+ font-size: 13px;
+}
diff --git a/app/assets/stylesheets/main/timebands.css.scss b/app/assets/stylesheets/main/timebands.css.scss
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/app/assets/stylesheets/main/timebands.css.scss
diff --git a/app/assets/stylesheets/main/vehicle_journey_frequencies.scss b/app/assets/stylesheets/main/vehicle_journey_frequencies.scss
new file mode 100644
index 000000000..f973de209
--- /dev/null
+++ b/app/assets/stylesheets/main/vehicle_journey_frequencies.scss
@@ -0,0 +1,153 @@
+#workspace {
+ .ce-TimeBandFormTable {
+ .btn {
+ white-space: normal;
+ width: 130px;
+ }
+ }
+ .ce-TimeBandFormTable th {
+ text-align: left;
+ padding: 6px 20px 6px 20px;
+ }
+ .ce-TimeBandFormTable td {
+ padding: 6px 20px 6px 20px;
+ }
+ .ce-TimeBandFormTable td {
+ vertical-align: middle;
+ }
+ .ce-TimeBandFormTable-circleLine {
+ position: relative;
+ }
+ .ce-TimeBandFormTable-line:after {
+ content: '';
+ position: absolute;
+ top: 0;
+ bottom: 0;
+ left: 50%;
+ width: 2px;
+ margin-left: -1px;
+ background-color: #61970b;
+ }
+ tr:first-child td .ce-TimeBandFormTable-line:after {
+ top: 50%;
+ }
+ tr:last-child td .ce-TimeBandFormTable-line:after {
+ bottom: 50%;
+ }
+ .ce-TimeBandFormTable-circle {
+ position: relative;
+ z-index: 999;
+ display: block;
+ width: 16px;
+ height: 16px;
+ border-radius: 8px;
+ background-color: #4d7809;
+ }
+ tr:hover .ce-TimeBandFormTable-circle {
+ background-color: #fff;
+ border: 2px solid #61970b;
+ }
+ .ce-FrequencyFormFields {
+ display: table;
+ width: 100%;
+ padding-left: 25%;
+ .inline-errors {
+ margin: 0;
+ }
+ > li {
+ display: table-cell;
+ width: 21%;
+ vertical-align: top;
+ padding:0 ;
+ margin: 0;
+ &:first-child select {
+ width: 160px;
+ }
+ &:nth-last-child(2), &:last-child {
+ width: 8%;
+ }
+ label {
+ font-size: 13px;
+ padding-left: 0;
+ }
+ legend {
+ position: relative;
+ width: auto;
+ float: none;
+ border: 0;
+ label {
+ position: relative;
+ }
+ }
+ .fragments-group {
+ float: none;
+ width: auto;
+ padding: 0;
+ > li {
+ display: inline-block;
+ vertical-align: top;
+ }
+ }
+ }
+ }
+ &.vehicle_journey_frequencies {
+ .actions-add-fields {
+ clear: both;
+ padding-left: 25%;
+ margin-top: 10px;
+ }
+ }
+ td.ce-VehicleJourneyBlock-frequency {
+ background-color: rgba(95, 95, 95, 0.2);
+ }
+ .ce-VehicleJourneyFrequencyTableBlock {
+ margin: 0 !important;
+ }
+ .ce-VehicleJourneyFrequenciesMatrix {
+ margin: 0;
+ padding: 0;
+ > li {
+ background-color: #eee;
+ height: 22px;
+ margin-bottom: 20px;
+ position: relative;
+ > ul {
+ margin: 0;
+ padding: 0;
+ > li {
+ cursor: pointer;
+ position: absolute;
+ padding: 0 2px;
+ top: 0;
+ bottom: 0;
+ background-color: $brand-primary;
+ border-left: 1px solid #000;
+ border-right: 1px solid #000;
+ &:hover {
+ z-index: 9999;
+ background-color: #4d7809;
+ top: -2px;
+ bottom: -2px;
+ > span {
+ display: block;
+ }
+ }
+ }
+ }
+ }
+ }
+ .ce-VehicleJourneyFrequenciesMatrix-firstDepartureTime,
+ .ce-VehicleJourneyFrequenciesMatrix-lastDepartureTime {
+ display: none;
+ position: absolute;
+ top: -13px;
+ font-size: 11px;
+ color: #262626;
+ }
+ .ce-VehicleJourneyFrequenciesMatrix-firstDepartureTime {
+ left: -32px;
+ }
+ .ce-VehicleJourneyFrequenciesMatrix-lastDepartureTime {
+ right: -32px;
+ }
+}
diff --git a/app/assets/stylesheets/main/vehicle_journeys.css.scss b/app/assets/stylesheets/main/vehicle_journeys.css.scss
index 119883fb4..6f67bc4b4 100644
--- a/app/assets/stylesheets/main/vehicle_journeys.css.scss
+++ b/app/assets/stylesheets/main/vehicle_journeys.css.scss
@@ -1,21 +1,30 @@
-// Place all the styles related to the routes controller here.
-// They will automatically be included in application.css.
-// You can use Sass (SCSS) here: http://sass-lang.com/
-
-#workspace.vehicle_journeys.edit, #workspace.vehicle_journeys.update, #workspace.vehicle_journeys.create, #workspace.vehicle_journeys.new {
+#workspace.vehicle_journeys.edit,
+#workspace.vehicle_journeys.update,
+#workspace.vehicle_journeys.create,
+#workspace.vehicle_journeys.new,
+#workspace.vehicle_journey_frequencies.edit,
+#workspace.vehicle_journey_frequencies.update,
+#workspace.vehicle_journey_frequencies.create,
+#workspace.vehicle_journey_frequencies.new {
#route_color{
width: 100px;
color: white;
font-weight: bold;
}
+ .btn {
+ padding: 6px 12px;
+ }
+
.time_table_list { padding-left: 25%; }
- #vehicle_journey_footnote_ids_input {
+ #vehicle_journey_footnote_ids_input,
+ #vehicle_journey_frequency_footnote_ids_input {
min-height: 3em;
}
- .vehicle_journey_at_stops {
+ .vehicle_journey_at_stops,
+ .vehicle_journey_frequency_at_stops {
margin-left: 25%;
thead, tbody, tfoot{
@@ -56,7 +65,8 @@
}
}
-#workspace.vehicle_journeys.index
+#workspace.vehicle_journeys.index,
+#workspace.vehicle_journey_frequencies.index
{
#search{
@@ -95,39 +105,44 @@
}
-#workspace.vehicle_journeys.show, #workspace.vehicle_journeys.edit, #workspace.vehicle_journeys.update, #workspace.vehicle_journeys.create, #workspace.vehicle_journeys.new {
-
- .to_departures {
- cursor: pointer;
- }
-
- .to_arrivals {
- cursor: pointer;
- }
+#workspace.vehicle_journeys.show,
+#workspace.vehicle_journeys.edit,
+#workspace.vehicle_journeys.update,
+#workspace.vehicle_journeys.create,
+#workspace.vehicle_journeys.new,
+#workspace.vehicle_journey_journey.show,
+#workspace.vehicle_journey_journey.edit,
+#workspace.vehicle_journey_journey.update,
+#workspace.vehicle_journey_journey.create,
+#workspace.vehicle_journey_journey.new {
.slide {
cursor: pointer;
}
}
-#workspace.vehicle_journeys.show
+#workspace.vehicle_journeys.show,
+#workspace.vehicle_journey_frequencies.show
{
.summary p label {
font-weight: bold;
}
}
-#workspace.vehicle_journeys.timeless
+#workspace.vehicle_journeys.timeless,
+#workspace.vehicle_journey_frequencies.timeless
{
.summary p label {
font-weight: bold;
}
- .vehicle_journeys {
+ .vehicle_journeys,
+ .vehicle_journey_frequencies {
margin-top: 20px;
}
- .vehicle_journey {
+ .vehicle_journey,
+ .vehicle_journey_frequency {
span.included_day_type {
font-weight: bolder;
diff --git a/app/assets/stylesheets/partials/base.scss b/app/assets/stylesheets/partials/base.scss
new file mode 100644
index 000000000..e4258c277
--- /dev/null
+++ b/app/assets/stylesheets/partials/base.scss
@@ -0,0 +1,23 @@
+.formtastic.timeband {
+ .time_select {
+ .fragments {
+ .fragments-group {
+ padding-left: 0;
+ }
+ legend.label {
+ position: relative;
+ width: auto;
+ display: block;
+ width: 25%;
+ float: left;
+ border: none;
+ label {
+ position: relative;
+ width: auto;
+ font-size: 125%;
+ padding: .2em .6em .3em;
+ }
+ }
+ }
+ }
+}
diff --git a/app/assets/stylesheets/vendor/bootstrap_changes.css.scss b/app/assets/stylesheets/vendor/bootstrap_changes.css.scss
index 67cf90ae4..6e2ccc1f6 100644
--- a/app/assets/stylesheets/vendor/bootstrap_changes.css.scss
+++ b/app/assets/stylesheets/vendor/bootstrap_changes.css.scss
@@ -11,6 +11,7 @@
span.included_day_type {
color: black;
+ font-weight: bold;
}
span.excluded_day_type {
}
@@ -32,3 +33,26 @@
color: $brand-success;
}
}
+.popover-title {
+ display: table;
+ width: 100%;
+ > a {
+ display: table-cell;
+ vertical-align: top;
+ &:first-child {
+ padding-right: 10px;
+ }
+ &:last-child {
+ width: 32px;
+ }
+ }
+}
+.popover-content {
+ > ul {
+ margin: 0;
+ padding: 0;
+ > li {
+ list-style: none !important;
+ }
+ }
+}