Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Task Planning #424

Closed
wants to merge 24 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
500a0bb
slFlightCollection, slFixTable: reimplement using backbone.js
TobiasLohner Dec 25, 2015
1e5f719
Convert slFlight into a Backbone.Model
TobiasLohner Dec 25, 2015
4c2e427
Convert slContest and slContestCollection to Backbone
TobiasLohner Dec 24, 2015
2fe83a9
assets.bundles: remove unused slCollection.js
TobiasLohner Dec 25, 2015
a0daaf0
Use Backbone's ajax capabilities to sync tracking flights.
TobiasLohner Dec 25, 2015
a884561
slBarogram: convert to Backbone.View
TobiasLohner Dec 26, 2015
bd81fe4
slFlight: manage flight selection by slFlightCollection
TobiasLohner Dec 26, 2015
e4578b7
slFlightDisplay: update baro on flights change event
TobiasLohner Dec 26, 2015
34bb787
slFlight.js: make the points attribute optional
TobiasLohner Dec 26, 2015
63a2af6
slBarogram.js: pass options to flot
TobiasLohner Dec 26, 2015
624cd6b
slBarogram.js: loosen check for contests
TobiasLohner Dec 26, 2015
3ed9e92
upload.js: use new backboned slBarogramView and slFlight
TobiasLohner Dec 26, 2015
25b49c8
slFlightDisplay: merge remove event handlers
TobiasLohner Dec 26, 2015
95b31c8
slFixTable, slFlightDisplay: use convention 'action:attribute' for ev…
TobiasLohner Dec 26, 2015
e3944cc
Add initial task planning page
TobiasLohner Jul 5, 2015
b303c03
Update ol3cesium.js for the task planner.
TobiasLohner Jan 9, 2016
dfa9530
Add a basic task planner frontend interface
TobiasLohner Jan 9, 2016
0956c3d
TaskPlanner: add turnpoint sectors
TobiasLohner Jan 9, 2016
57fa1f5
slGraphicTaskEditor.js: trigger events when appropriate
TobiasLohner Jan 3, 2016
d84b924
Add hover/select interaction to turnpoint sectors.
TobiasLohner Jan 9, 2016
367e96c
Add waypoints to the task planner.
TobiasLohner Jan 9, 2016
816ef85
GraphicTaskEditor: snap to waypoints
TobiasLohner Jan 3, 2016
b462f21
TaskPanel: show turnpoints of task
TobiasLohner Mar 27, 2016
4bf7215
slTask: overwrite toJSON method
TobiasLohner Jan 3, 2016
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
24 changes: 23 additions & 1 deletion skylines/frontend/assets/bundles.py
Expand Up @@ -74,6 +74,8 @@
'css/events.css',
'css/tracking-table.css',
'css/slFixTable.css',
'css/slTaskPanel.css',
'css/slTaskPanelSectors.css',
'css/wingman.css',
'css/ol3-sidebar.css',
'vendor/flags/flags.css',
Expand Down Expand Up @@ -102,6 +104,8 @@

all_js = Bundle(
'http://code.jquery.com/jquery-1.10.2.min.js',
'http://underscorejs.org/underscore-min.js',
'http://backbonejs.org/backbone-min.js',
'http://cdnjs.cloudflare.com/ajax/libs/jquery-ajaxtransport-xdomainrequest/1.0.3/jquery.xdomainrequest.min.js',
'vendor/jquery/jquery.cookie.js',
'vendor/jquery/jquery.timeago.js',
Expand Down Expand Up @@ -129,7 +133,6 @@
'js/slBarogram.js',
'js/slFixTable.js',
'js/slPhaseTable.js',
'js/slCollection.js',
'js/slFlightCollection.js',
'js/slFlight.js',
'js/slContestCollection.js',
Expand All @@ -146,9 +149,28 @@
filters=SimpleClosureJS,
output='js/tracking-%(version)s.js')

task_js = Bundle(
'js/slUnits.js',
'https://rawgithub.com/Turbo87/sidebar-v2/v0.2.1/js/jquery-sidebar.min.js',
'js/task/ol-AirportsFormat.js',
'js/task/slGraphicTaskEditor.js',
'js/task/slTask.js',
'js/task/slTaskCollection.js',
'js/task/slTaskVectorSource.js',
'js/task/slTaskPanel.js',
'js/task/slTaskPlanner.js',
'js/task/slTurnpoint.js',
'js/task/slTurnpointSector.js',
'js/task/slTurnpointSelect.js',
'js/task/slWaypoint.js',
'js/task/slWaypointFile.js',
filters=SimpleClosureJS,
output='js/task-%(version)s.js')

upload_js = Bundle(
'js/slUnits.js',
'js/slBarogram.js',
'js/slFlight.js',
'js/upload.js',
'http://momentjs.com/downloads/moment.min.js',
'https://rawgithub.com/TobiasLohner/bootstrap-datetimepicker/c36342415a1be8fa013548402bf01718ca93d454/src/js/bootstrap-datetimepicker.js',
Expand Down
46 changes: 46 additions & 0 deletions skylines/frontend/static/css/slTaskPanel.css
@@ -0,0 +1,46 @@
.turnpoint {
border-color: #ddd;
border-width: 1px;
border-radius: 4px;
border-style: solid;
margin: 2px;
padding: 1px;
height: 46px;
}

.turnpoint .image {
width: 40px;
height: 40px;
float: left;
margin: 3px 4px 3px 2px;
}

.turnpoint .title {
font-weight: bold;
font-size: 1em;
height: 1.2em;
overflow: hidden;
margin: 0;
}

.turnpoint .coordinates {
color: #959595;
text-align: right;
font-size: 0.7em;
line-height: 1em;
padding-right: 0.5em;
padding-left: 0.1em;
margin: 0;
}

.turnpoint .type {
font-size: 0.9em;
margin: 0;
}

.turnpoint.highlight {
padding: 0px;
border-width: 2px;
border-color: #428bca;
cursor: pointer;
}
60 changes: 60 additions & 0 deletions skylines/frontend/static/css/slTaskPanelSectors.css
@@ -0,0 +1,60 @@
/**
* spritemapper.sprite_dirs = ../images/sector_sprites
* spritemapper.output_css = sector_sprites.css
* spritemapper.output_image = ../images/sector_sprites.png
* spritemapper.base_url = ../images/
*/

.sector {
width: 40px;
height: 40px;
float: left;
}

.sector.bgaenhancedoption {
background: url('../images/sectors.png') no-repeat -164px 0;
}

.sector.bgafixedcourse {
background: url('../images/sectors.png') no-repeat -328px 0;
}

.sector.bgastartsector {
background: url('../images/sectors.png') no-repeat -246px 0;
}

.sector.circle {
background: url('../images/sectors.png') no-repeat -287px 0;
}

.sector.daec {
background: url('../images/sectors.png') no-repeat -123px 0;
}

.sector.faifinish {
background: url('../images/sectors.png') no-repeat -205px 0;
}

.sector.fai {
background: url('../images/sectors.png') no-repeat -41px 0;
}

.sector.faistart {
background: url('../images/sectors.png') no-repeat -410px 0;
}

.sector.finishline {
background: url('../images/sectors.png') no-repeat -451px 0;
}

.sector.finishsector {
background: url('../images/sectors.png') no-repeat -369px 0;
}

.sector.startline {
background: url('../images/sectors.png') no-repeat 0 0;
}

.sector.startsector {
background: url('../images/sectors.png') no-repeat -82px 0;
}
60 changes: 60 additions & 0 deletions skylines/frontend/static/css/slTaskPanelSectors_nosprites.css
@@ -0,0 +1,60 @@
/**
* spritemapper.sprite_dirs = ../images/sector_sprites
* spritemapper.output_css = sector_sprites.css
* spritemapper.output_image = ../images/sector_sprites.png
* spritemapper.base_url = ../images/
*/

.sector {
width: 40px;
height: 40px;
float: left;
}

.sector.bgaenhancedoption {
background: url('../images/sectors/bgaenhancedoption.png');
}

.sector.bgafixedcourse {
background: url('../images/sectors/bgafixedcourse.png');
}

.sector.bgastartsector {
background: url('../images/sectors/bgastartsector.png');
}

.sector.circle {
background: url('../images/sectors/circle.png');
}

.sector.daec {
background: url('../images/sectors/daec.png');
}

.sector.faifinish {
background: url('../images/sectors/faifinish.png');
}

.sector.fai {
background: url('../images/sectors/fai.png');
}

.sector.faistart {
background: url('../images/sectors/faistart.png');
}

.sector.finishline {
background: url('../images/sectors/finishline.png');
}

.sector.finishsector {
background: url('../images/sectors/finishsector.png');
}

.sector.startline {
background: url('../images/sectors/startline.png');
}

.sector.startsector {
background: url('../images/sectors/startsector.png');
}
Binary file added skylines/frontend/static/images/sectors.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added skylines/frontend/static/images/sectors/daec.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added skylines/frontend/static/images/sectors/fai.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added skylines/frontend/static/images/sectors/faistart.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 4 additions & 0 deletions skylines/frontend/static/images/sectors/sector_sprites.ini
@@ -0,0 +1,4 @@
[spritemapper]
output_css = sector_sprites.css
base_url = ../images/
output_image = sector_sprites.png
59 changes: 59 additions & 0 deletions skylines/frontend/static/images/sectors/sm_sector_sprites.css
@@ -0,0 +1,59 @@
/**
* spritemapper.sprite_dirs = ../images/sector_sprites
* spritemapper.output_css = sector_sprites.css
* spritemapper.output_image = ../images/sector_sprites.png
* spritemapper.base_url = ../images/
*/

.sector {
width: 40px;
height: 40px;
}

.sector .bgaenhancedoption {
background: url('../images/sectors/bgaenhancedoption.png');
}

.sector .bgafixedcourse {
background: url('../images/sectors/bgafixedcourse.png');
}

.sector .bgastartsector {
background: url('../images/sectors/bgastartsector.png');
}

.sector .circle {
background: url('../images/sectors/circle.png');
}

.sector .daec {
background: url('../images/sectors/daec.png');
}

.sector .faifinish {
background: url('../images/sectors/faifinish.png');
}

.sector .fai {
background: url('../images/sectors/fai.png');
}

.sector .faistart {
background: url('../images/sectors/faistart.png');
}

.sector .finishline {
background: url('../images/sectors/finishline.png');
}

.sector .finishsector {
background: url('../images/sectors/finishsector.png');
}

.sector .startline {
background: url('../images/sectors/startline.png');
}

.sector .startsector {
background: url('../images/sectors/startsector.png');
}
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.