Commit 93ee55630c15509e4077b28a78aad35b33254f9d
1 parent
ebe77ce4
Exists in
master
and in
2 other branches
Add a loading animation to target buttons. It makes the whole page glitch on Chr…
…ome on linux and I do not know why, because it's a browser issue.
Showing
4 changed files
with
48 additions
and
2 deletions
Show diff stats
web/static/css/main.css
... | ... | @@ -225,6 +225,23 @@ ul li { |
225 | 225 | } |
226 | 226 | } |
227 | 227 | |
228 | +@-ms-keyframes spin { | |
229 | + from { -ms-transform: rotate(0deg); } | |
230 | + to { -ms-transform: rotate(360deg); } | |
231 | +} | |
232 | +@-moz-keyframes spin { | |
233 | + from { -moz-transform: rotate(0deg); } | |
234 | + to { -moz-transform: rotate(360deg); } | |
235 | +} | |
236 | +@-webkit-keyframes spin { | |
237 | + from { -webkit-transform: rotate(0deg); } | |
238 | + to { -webkit-transform: rotate(360deg); } | |
239 | +} | |
240 | +@keyframes spin { | |
241 | + from { transform:rotate(0deg); } | |
242 | + to { transform:rotate(360deg); } | |
243 | +} | |
244 | + | |
228 | 245 | /** MEDIA QUERIES *************************************************************/ |
229 | 246 | |
230 | 247 | @media all and (max-width: 980px) { | ... | ... |
web/static/js/swapp.js
... | ... | @@ -52,11 +52,15 @@ |
52 | 52 | stopped_at = this.stopped_at.format("YYYY-MM-DDTHH:mm:ss"); |
53 | 53 | console.info("Setting time interval from " + started_at + " to " + stopped_at + "…"); |
54 | 54 | active_targets.forEach(function(target){ |
55 | + var targetButton; | |
55 | 56 | console.info("Loading CSV data of " + target.name + "…"); |
57 | + targetButton = $(".orbiters_filters .target." + target.slug); | |
58 | + targetButton.addClass('loading'); | |
56 | 59 | return this$.loadData(target.slug, started_at, stopped_at).then(function(data){ |
57 | 60 | console.info("Loaded CSV data of " + target.name + "."); |
58 | 61 | this$.createTimeSeries(target, data); |
59 | - return this$.orbits.initOrbiter(target.slug, target.config, data['hci']); | |
62 | + this$.orbits.initOrbiter(target.slug, target.config, data['hci']); | |
63 | + return targetButton.removeClass('loading'); | |
60 | 64 | }, function(error){ |
61 | 65 | return console.error('Failed to load CSV data.', error); |
62 | 66 | }); | ... | ... |
web/static/js/swapp.ls
... | ... | @@ -73,11 +73,14 @@ https://gitlab.irap.omp.eu/CDPP/SPACEWEATHERONLINE |
73 | 73 | console.info "Setting time interval from #{started_at} to #{stopped_at}…" |
74 | 74 | active_targets.forEach((target) ~> |
75 | 75 | console.info "Loading CSV data of #{target.name}…" |
76 | + targetButton = $(".orbiters_filters .target.#{target.slug}") | |
77 | + targetButton.addClass('loading') | |
76 | 78 | @loadData(target.slug, started_at, stopped_at).then( |
77 | 79 | (data) ~> |
78 | 80 | console.info "Loaded CSV data of #{target.name}." |
79 | 81 | @createTimeSeries(target, data) |
80 | 82 | @orbits.initOrbiter(target.slug, target.config, data['hci']) |
83 | + targetButton.removeClass('loading') | |
81 | 84 | , |
82 | 85 | (error) -> console.error('Failed to load CSV data.', error) |
83 | 86 | ) | ... | ... |
web/view/home.html.jinja2
... | ... | @@ -9,7 +9,7 @@ |
9 | 9 | src="{{ static('img/target/'~target.slug~'_128.png') }}" |
10 | 10 | title="{{ target.title }}" |
11 | 11 | alt="{{ target.name }}" |
12 | - class="target {{ 'locked' if target.locked else 'active' }}" | |
12 | + class="target {{ target.slug }} {{ 'locked' if target.locked else 'active' }}" | |
13 | 13 | data-target-slug="{{ target.slug }}" |
14 | 14 | > |
15 | 15 | {%- endmacro %} |
... | ... | @@ -150,6 +150,28 @@ |
150 | 150 | .orbiters_filters .target.locked { |
151 | 151 | cursor: not-allowed; |
152 | 152 | } |
153 | + .orbiters_filters .target.loading { | |
154 | +{# margin: 20px;#} | |
155 | +{# width: 100px;#} | |
156 | +{# height: 100px;#} | |
157 | +{# background: #f00;#} | |
158 | + -webkit-animation-name: spin; | |
159 | + -webkit-animation-duration: 4000ms; | |
160 | + -webkit-animation-iteration-count: infinite; | |
161 | + -webkit-animation-timing-function: linear; | |
162 | + -moz-animation-name: spin; | |
163 | + -moz-animation-duration: 4000ms; | |
164 | + -moz-animation-iteration-count: infinite; | |
165 | + -moz-animation-timing-function: linear; | |
166 | + -ms-animation-name: spin; | |
167 | + -ms-animation-duration: 4000ms; | |
168 | + -ms-animation-iteration-count: infinite; | |
169 | + -ms-animation-timing-function: linear; | |
170 | + animation-name: spin; | |
171 | + animation-duration: 4000ms; | |
172 | + animation-iteration-count: infinite; | |
173 | + animation-timing-function: linear; | |
174 | + } | |
153 | 175 | |
154 | 176 | #orbits { |
155 | 177 | {# background-image: url('{{ static('img/orbitals_background.png') }}');#} | ... | ... |