add
0 parents
Showing
135 changed files
with
17154 additions
and
0 deletions
bootstrap/css/bootstrap-theme.css
0 → 100644
| 1 | /*! | ||
| 2 | * Bootstrap v3.3.6 (http://getbootstrap.com) | ||
| 3 | * Copyright 2011-2015 Twitter, Inc. | ||
| 4 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) | ||
| 5 | */ | ||
| 6 | .btn-default, | ||
| 7 | .btn-primary, | ||
| 8 | .btn-success, | ||
| 9 | .btn-info, | ||
| 10 | .btn-warning, | ||
| 11 | .btn-danger { | ||
| 12 | text-shadow: 0 -1px 0 rgba(0, 0, 0, .2); | ||
| 13 | -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 1px rgba(0, 0, 0, .075); | ||
| 14 | box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 1px rgba(0, 0, 0, .075); | ||
| 15 | } | ||
| 16 | .btn-default:active, | ||
| 17 | .btn-primary:active, | ||
| 18 | .btn-success:active, | ||
| 19 | .btn-info:active, | ||
| 20 | .btn-warning:active, | ||
| 21 | .btn-danger:active, | ||
| 22 | .btn-default.active, | ||
| 23 | .btn-primary.active, | ||
| 24 | .btn-success.active, | ||
| 25 | .btn-info.active, | ||
| 26 | .btn-warning.active, | ||
| 27 | .btn-danger.active { | ||
| 28 | -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); | ||
| 29 | box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); | ||
| 30 | } | ||
| 31 | .btn-default.disabled, | ||
| 32 | .btn-primary.disabled, | ||
| 33 | .btn-success.disabled, | ||
| 34 | .btn-info.disabled, | ||
| 35 | .btn-warning.disabled, | ||
| 36 | .btn-danger.disabled, | ||
| 37 | .btn-default[disabled], | ||
| 38 | .btn-primary[disabled], | ||
| 39 | .btn-success[disabled], | ||
| 40 | .btn-info[disabled], | ||
| 41 | .btn-warning[disabled], | ||
| 42 | .btn-danger[disabled], | ||
| 43 | fieldset[disabled] .btn-default, | ||
| 44 | fieldset[disabled] .btn-primary, | ||
| 45 | fieldset[disabled] .btn-success, | ||
| 46 | fieldset[disabled] .btn-info, | ||
| 47 | fieldset[disabled] .btn-warning, | ||
| 48 | fieldset[disabled] .btn-danger { | ||
| 49 | -webkit-box-shadow: none; | ||
| 50 | box-shadow: none; | ||
| 51 | } | ||
| 52 | .btn-default .badge, | ||
| 53 | .btn-primary .badge, | ||
| 54 | .btn-success .badge, | ||
| 55 | .btn-info .badge, | ||
| 56 | .btn-warning .badge, | ||
| 57 | .btn-danger .badge { | ||
| 58 | text-shadow: none; | ||
| 59 | } | ||
| 60 | .btn:active, | ||
| 61 | .btn.active { | ||
| 62 | background-image: none; | ||
| 63 | } | ||
| 64 | .btn-default { | ||
| 65 | text-shadow: 0 1px 0 #fff; | ||
| 66 | background-image: -webkit-linear-gradient(top, #fff 0%, #e0e0e0 100%); | ||
| 67 | background-image: -o-linear-gradient(top, #fff 0%, #e0e0e0 100%); | ||
| 68 | background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#e0e0e0)); | ||
| 69 | background-image: linear-gradient(to bottom, #fff 0%, #e0e0e0 100%); | ||
| 70 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0); | ||
| 71 | filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); | ||
| 72 | background-repeat: repeat-x; | ||
| 73 | border-color: #dbdbdb; | ||
| 74 | border-color: #ccc; | ||
| 75 | } | ||
| 76 | .btn-default:hover, | ||
| 77 | .btn-default:focus { | ||
| 78 | background-color: #e0e0e0; | ||
| 79 | background-position: 0 -15px; | ||
| 80 | } | ||
| 81 | .btn-default:active, | ||
| 82 | .btn-default.active { | ||
| 83 | background-color: #e0e0e0; | ||
| 84 | border-color: #dbdbdb; | ||
| 85 | } | ||
| 86 | .btn-default.disabled, | ||
| 87 | .btn-default[disabled], | ||
| 88 | fieldset[disabled] .btn-default, | ||
| 89 | .btn-default.disabled:hover, | ||
| 90 | .btn-default[disabled]:hover, | ||
| 91 | fieldset[disabled] .btn-default:hover, | ||
| 92 | .btn-default.disabled:focus, | ||
| 93 | .btn-default[disabled]:focus, | ||
| 94 | fieldset[disabled] .btn-default:focus, | ||
| 95 | .btn-default.disabled.focus, | ||
| 96 | .btn-default[disabled].focus, | ||
| 97 | fieldset[disabled] .btn-default.focus, | ||
| 98 | .btn-default.disabled:active, | ||
| 99 | .btn-default[disabled]:active, | ||
| 100 | fieldset[disabled] .btn-default:active, | ||
| 101 | .btn-default.disabled.active, | ||
| 102 | .btn-default[disabled].active, | ||
| 103 | fieldset[disabled] .btn-default.active { | ||
| 104 | background-color: #e0e0e0; | ||
| 105 | background-image: none; | ||
| 106 | } | ||
| 107 | .btn-primary { | ||
| 108 | background-image: -webkit-linear-gradient(top, #337ab7 0%, #265a88 100%); | ||
| 109 | background-image: -o-linear-gradient(top, #337ab7 0%, #265a88 100%); | ||
| 110 | background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#265a88)); | ||
| 111 | background-image: linear-gradient(to bottom, #337ab7 0%, #265a88 100%); | ||
| 112 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff265a88', GradientType=0); | ||
| 113 | filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); | ||
| 114 | background-repeat: repeat-x; | ||
| 115 | border-color: #245580; | ||
| 116 | } | ||
| 117 | .btn-primary:hover, | ||
| 118 | .btn-primary:focus { | ||
| 119 | background-color: #265a88; | ||
| 120 | background-position: 0 -15px; | ||
| 121 | } | ||
| 122 | .btn-primary:active, | ||
| 123 | .btn-primary.active { | ||
| 124 | background-color: #265a88; | ||
| 125 | border-color: #245580; | ||
| 126 | } | ||
| 127 | .btn-primary.disabled, | ||
| 128 | .btn-primary[disabled], | ||
| 129 | fieldset[disabled] .btn-primary, | ||
| 130 | .btn-primary.disabled:hover, | ||
| 131 | .btn-primary[disabled]:hover, | ||
| 132 | fieldset[disabled] .btn-primary:hover, | ||
| 133 | .btn-primary.disabled:focus, | ||
| 134 | .btn-primary[disabled]:focus, | ||
| 135 | fieldset[disabled] .btn-primary:focus, | ||
| 136 | .btn-primary.disabled.focus, | ||
| 137 | .btn-primary[disabled].focus, | ||
| 138 | fieldset[disabled] .btn-primary.focus, | ||
| 139 | .btn-primary.disabled:active, | ||
| 140 | .btn-primary[disabled]:active, | ||
| 141 | fieldset[disabled] .btn-primary:active, | ||
| 142 | .btn-primary.disabled.active, | ||
| 143 | .btn-primary[disabled].active, | ||
| 144 | fieldset[disabled] .btn-primary.active { | ||
| 145 | background-color: #265a88; | ||
| 146 | background-image: none; | ||
| 147 | } | ||
| 148 | .btn-success { | ||
| 149 | background-image: -webkit-linear-gradient(top, #5cb85c 0%, #419641 100%); | ||
| 150 | background-image: -o-linear-gradient(top, #5cb85c 0%, #419641 100%); | ||
| 151 | background-image: -webkit-gradient(linear, left top, left bottom, from(#5cb85c), to(#419641)); | ||
| 152 | background-image: linear-gradient(to bottom, #5cb85c 0%, #419641 100%); | ||
| 153 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0); | ||
| 154 | filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); | ||
| 155 | background-repeat: repeat-x; | ||
| 156 | border-color: #3e8f3e; | ||
| 157 | } | ||
| 158 | .btn-success:hover, | ||
| 159 | .btn-success:focus { | ||
| 160 | background-color: #419641; | ||
| 161 | background-position: 0 -15px; | ||
| 162 | } | ||
| 163 | .btn-success:active, | ||
| 164 | .btn-success.active { | ||
| 165 | background-color: #419641; | ||
| 166 | border-color: #3e8f3e; | ||
| 167 | } | ||
| 168 | .btn-success.disabled, | ||
| 169 | .btn-success[disabled], | ||
| 170 | fieldset[disabled] .btn-success, | ||
| 171 | .btn-success.disabled:hover, | ||
| 172 | .btn-success[disabled]:hover, | ||
| 173 | fieldset[disabled] .btn-success:hover, | ||
| 174 | .btn-success.disabled:focus, | ||
| 175 | .btn-success[disabled]:focus, | ||
| 176 | fieldset[disabled] .btn-success:focus, | ||
| 177 | .btn-success.disabled.focus, | ||
| 178 | .btn-success[disabled].focus, | ||
| 179 | fieldset[disabled] .btn-success.focus, | ||
| 180 | .btn-success.disabled:active, | ||
| 181 | .btn-success[disabled]:active, | ||
| 182 | fieldset[disabled] .btn-success:active, | ||
| 183 | .btn-success.disabled.active, | ||
| 184 | .btn-success[disabled].active, | ||
| 185 | fieldset[disabled] .btn-success.active { | ||
| 186 | background-color: #419641; | ||
| 187 | background-image: none; | ||
| 188 | } | ||
| 189 | .btn-info { | ||
| 190 | background-image: -webkit-linear-gradient(top, #5bc0de 0%, #2aabd2 100%); | ||
| 191 | background-image: -o-linear-gradient(top, #5bc0de 0%, #2aabd2 100%); | ||
| 192 | background-image: -webkit-gradient(linear, left top, left bottom, from(#5bc0de), to(#2aabd2)); | ||
| 193 | background-image: linear-gradient(to bottom, #5bc0de 0%, #2aabd2 100%); | ||
| 194 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0); | ||
| 195 | filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); | ||
| 196 | background-repeat: repeat-x; | ||
| 197 | border-color: #28a4c9; | ||
| 198 | } | ||
| 199 | .btn-info:hover, | ||
| 200 | .btn-info:focus { | ||
| 201 | background-color: #2aabd2; | ||
| 202 | background-position: 0 -15px; | ||
| 203 | } | ||
| 204 | .btn-info:active, | ||
| 205 | .btn-info.active { | ||
| 206 | background-color: #2aabd2; | ||
| 207 | border-color: #28a4c9; | ||
| 208 | } | ||
| 209 | .btn-info.disabled, | ||
| 210 | .btn-info[disabled], | ||
| 211 | fieldset[disabled] .btn-info, | ||
| 212 | .btn-info.disabled:hover, | ||
| 213 | .btn-info[disabled]:hover, | ||
| 214 | fieldset[disabled] .btn-info:hover, | ||
| 215 | .btn-info.disabled:focus, | ||
| 216 | .btn-info[disabled]:focus, | ||
| 217 | fieldset[disabled] .btn-info:focus, | ||
| 218 | .btn-info.disabled.focus, | ||
| 219 | .btn-info[disabled].focus, | ||
| 220 | fieldset[disabled] .btn-info.focus, | ||
| 221 | .btn-info.disabled:active, | ||
| 222 | .btn-info[disabled]:active, | ||
| 223 | fieldset[disabled] .btn-info:active, | ||
| 224 | .btn-info.disabled.active, | ||
| 225 | .btn-info[disabled].active, | ||
| 226 | fieldset[disabled] .btn-info.active { | ||
| 227 | background-color: #2aabd2; | ||
| 228 | background-image: none; | ||
| 229 | } | ||
| 230 | .btn-warning { | ||
| 231 | background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #eb9316 100%); | ||
| 232 | background-image: -o-linear-gradient(top, #f0ad4e 0%, #eb9316 100%); | ||
| 233 | background-image: -webkit-gradient(linear, left top, left bottom, from(#f0ad4e), to(#eb9316)); | ||
| 234 | background-image: linear-gradient(to bottom, #f0ad4e 0%, #eb9316 100%); | ||
| 235 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0); | ||
| 236 | filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); | ||
| 237 | background-repeat: repeat-x; | ||
| 238 | border-color: #e38d13; | ||
| 239 | } | ||
| 240 | .btn-warning:hover, | ||
| 241 | .btn-warning:focus { | ||
| 242 | background-color: #eb9316; | ||
| 243 | background-position: 0 -15px; | ||
| 244 | } | ||
| 245 | .btn-warning:active, | ||
| 246 | .btn-warning.active { | ||
| 247 | background-color: #eb9316; | ||
| 248 | border-color: #e38d13; | ||
| 249 | } | ||
| 250 | .btn-warning.disabled, | ||
| 251 | .btn-warning[disabled], | ||
| 252 | fieldset[disabled] .btn-warning, | ||
| 253 | .btn-warning.disabled:hover, | ||
| 254 | .btn-warning[disabled]:hover, | ||
| 255 | fieldset[disabled] .btn-warning:hover, | ||
| 256 | .btn-warning.disabled:focus, | ||
| 257 | .btn-warning[disabled]:focus, | ||
| 258 | fieldset[disabled] .btn-warning:focus, | ||
| 259 | .btn-warning.disabled.focus, | ||
| 260 | .btn-warning[disabled].focus, | ||
| 261 | fieldset[disabled] .btn-warning.focus, | ||
| 262 | .btn-warning.disabled:active, | ||
| 263 | .btn-warning[disabled]:active, | ||
| 264 | fieldset[disabled] .btn-warning:active, | ||
| 265 | .btn-warning.disabled.active, | ||
| 266 | .btn-warning[disabled].active, | ||
| 267 | fieldset[disabled] .btn-warning.active { | ||
| 268 | background-color: #eb9316; | ||
| 269 | background-image: none; | ||
| 270 | } | ||
| 271 | .btn-danger { | ||
| 272 | background-image: -webkit-linear-gradient(top, #d9534f 0%, #c12e2a 100%); | ||
| 273 | background-image: -o-linear-gradient(top, #d9534f 0%, #c12e2a 100%); | ||
| 274 | background-image: -webkit-gradient(linear, left top, left bottom, from(#d9534f), to(#c12e2a)); | ||
| 275 | background-image: linear-gradient(to bottom, #d9534f 0%, #c12e2a 100%); | ||
| 276 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc12e2a', GradientType=0); | ||
| 277 | filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); | ||
| 278 | background-repeat: repeat-x; | ||
| 279 | border-color: #b92c28; | ||
| 280 | } | ||
| 281 | .btn-danger:hover, | ||
| 282 | .btn-danger:focus { | ||
| 283 | background-color: #c12e2a; | ||
| 284 | background-position: 0 -15px; | ||
| 285 | } | ||
| 286 | .btn-danger:active, | ||
| 287 | .btn-danger.active { | ||
| 288 | background-color: #c12e2a; | ||
| 289 | border-color: #b92c28; | ||
| 290 | } | ||
| 291 | .btn-danger.disabled, | ||
| 292 | .btn-danger[disabled], | ||
| 293 | fieldset[disabled] .btn-danger, | ||
| 294 | .btn-danger.disabled:hover, | ||
| 295 | .btn-danger[disabled]:hover, | ||
| 296 | fieldset[disabled] .btn-danger:hover, | ||
| 297 | .btn-danger.disabled:focus, | ||
| 298 | .btn-danger[disabled]:focus, | ||
| 299 | fieldset[disabled] .btn-danger:focus, | ||
| 300 | .btn-danger.disabled.focus, | ||
| 301 | .btn-danger[disabled].focus, | ||
| 302 | fieldset[disabled] .btn-danger.focus, | ||
| 303 | .btn-danger.disabled:active, | ||
| 304 | .btn-danger[disabled]:active, | ||
| 305 | fieldset[disabled] .btn-danger:active, | ||
| 306 | .btn-danger.disabled.active, | ||
| 307 | .btn-danger[disabled].active, | ||
| 308 | fieldset[disabled] .btn-danger.active { | ||
| 309 | background-color: #c12e2a; | ||
| 310 | background-image: none; | ||
| 311 | } | ||
| 312 | .thumbnail, | ||
| 313 | .img-thumbnail { | ||
| 314 | -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .075); | ||
| 315 | box-shadow: 0 1px 2px rgba(0, 0, 0, .075); | ||
| 316 | } | ||
| 317 | .dropdown-menu > li > a:hover, | ||
| 318 | .dropdown-menu > li > a:focus { | ||
| 319 | background-color: #e8e8e8; | ||
| 320 | background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); | ||
| 321 | background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); | ||
| 322 | background-image: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#e8e8e8)); | ||
| 323 | background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%); | ||
| 324 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0); | ||
| 325 | background-repeat: repeat-x; | ||
| 326 | } | ||
| 327 | .dropdown-menu > .active > a, | ||
| 328 | .dropdown-menu > .active > a:hover, | ||
| 329 | .dropdown-menu > .active > a:focus { | ||
| 330 | background-color: #2e6da4; | ||
| 331 | background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%); | ||
| 332 | background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%); | ||
| 333 | background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4)); | ||
| 334 | background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%); | ||
| 335 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0); | ||
| 336 | background-repeat: repeat-x; | ||
| 337 | } | ||
| 338 | .navbar-default { | ||
| 339 | background-image: -webkit-linear-gradient(top, #fff 0%, #f8f8f8 100%); | ||
| 340 | background-image: -o-linear-gradient(top, #fff 0%, #f8f8f8 100%); | ||
| 341 | background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#f8f8f8)); | ||
| 342 | background-image: linear-gradient(to bottom, #fff 0%, #f8f8f8 100%); | ||
| 343 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0); | ||
| 344 | filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); | ||
| 345 | background-repeat: repeat-x; | ||
| 346 | border-radius: 4px; | ||
| 347 | -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 5px rgba(0, 0, 0, .075); | ||
| 348 | box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 5px rgba(0, 0, 0, .075); | ||
| 349 | } | ||
| 350 | .navbar-default .navbar-nav > .open > a, | ||
| 351 | .navbar-default .navbar-nav > .active > a { | ||
| 352 | background-image: -webkit-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%); | ||
| 353 | background-image: -o-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%); | ||
| 354 | background-image: -webkit-gradient(linear, left top, left bottom, from(#dbdbdb), to(#e2e2e2)); | ||
| 355 | background-image: linear-gradient(to bottom, #dbdbdb 0%, #e2e2e2 100%); | ||
| 356 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdbdbdb', endColorstr='#ffe2e2e2', GradientType=0); | ||
| 357 | background-repeat: repeat-x; | ||
| 358 | -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, .075); | ||
| 359 | box-shadow: inset 0 3px 9px rgba(0, 0, 0, .075); | ||
| 360 | } | ||
| 361 | .navbar-brand, | ||
| 362 | .navbar-nav > li > a { | ||
| 363 | text-shadow: 0 1px 0 rgba(255, 255, 255, .25); | ||
| 364 | } | ||
| 365 | .navbar-inverse { | ||
| 366 | background-image: -webkit-linear-gradient(top, #3c3c3c 0%, #222 100%); | ||
| 367 | background-image: -o-linear-gradient(top, #3c3c3c 0%, #222 100%); | ||
| 368 | background-image: -webkit-gradient(linear, left top, left bottom, from(#3c3c3c), to(#222)); | ||
| 369 | background-image: linear-gradient(to bottom, #3c3c3c 0%, #222 100%); | ||
| 370 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0); | ||
| 371 | filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); | ||
| 372 | background-repeat: repeat-x; | ||
| 373 | border-radius: 4px; | ||
| 374 | } | ||
| 375 | .navbar-inverse .navbar-nav > .open > a, | ||
| 376 | .navbar-inverse .navbar-nav > .active > a { | ||
| 377 | background-image: -webkit-linear-gradient(top, #080808 0%, #0f0f0f 100%); | ||
| 378 | background-image: -o-linear-gradient(top, #080808 0%, #0f0f0f 100%); | ||
| 379 | background-image: -webkit-gradient(linear, left top, left bottom, from(#080808), to(#0f0f0f)); | ||
| 380 | background-image: linear-gradient(to bottom, #080808 0%, #0f0f0f 100%); | ||
| 381 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff080808', endColorstr='#ff0f0f0f', GradientType=0); | ||
| 382 | background-repeat: repeat-x; | ||
| 383 | -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, .25); | ||
| 384 | box-shadow: inset 0 3px 9px rgba(0, 0, 0, .25); | ||
| 385 | } | ||
| 386 | .navbar-inverse .navbar-brand, | ||
| 387 | .navbar-inverse .navbar-nav > li > a { | ||
| 388 | text-shadow: 0 -1px 0 rgba(0, 0, 0, .25); | ||
| 389 | } | ||
| 390 | .navbar-static-top, | ||
| 391 | .navbar-fixed-top, | ||
| 392 | .navbar-fixed-bottom { | ||
| 393 | border-radius: 0; | ||
| 394 | } | ||
| 395 | @media (max-width: 767px) { | ||
| 396 | .navbar .navbar-nav .open .dropdown-menu > .active > a, | ||
| 397 | .navbar .navbar-nav .open .dropdown-menu > .active > a:hover, | ||
| 398 | .navbar .navbar-nav .open .dropdown-menu > .active > a:focus { | ||
| 399 | color: #fff; | ||
| 400 | background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%); | ||
| 401 | background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%); | ||
| 402 | background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4)); | ||
| 403 | background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%); | ||
| 404 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0); | ||
| 405 | background-repeat: repeat-x; | ||
| 406 | } | ||
| 407 | } | ||
| 408 | .alert { | ||
| 409 | text-shadow: 0 1px 0 rgba(255, 255, 255, .2); | ||
| 410 | -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 2px rgba(0, 0, 0, .05); | ||
| 411 | box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 2px rgba(0, 0, 0, .05); | ||
| 412 | } | ||
| 413 | .alert-success { | ||
| 414 | background-image: -webkit-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%); | ||
| 415 | background-image: -o-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%); | ||
| 416 | background-image: -webkit-gradient(linear, left top, left bottom, from(#dff0d8), to(#c8e5bc)); | ||
| 417 | background-image: linear-gradient(to bottom, #dff0d8 0%, #c8e5bc 100%); | ||
| 418 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0); | ||
| 419 | background-repeat: repeat-x; | ||
| 420 | border-color: #b2dba1; | ||
| 421 | } | ||
| 422 | .alert-info { | ||
| 423 | background-image: -webkit-linear-gradient(top, #d9edf7 0%, #b9def0 100%); | ||
| 424 | background-image: -o-linear-gradient(top, #d9edf7 0%, #b9def0 100%); | ||
| 425 | background-image: -webkit-gradient(linear, left top, left bottom, from(#d9edf7), to(#b9def0)); | ||
| 426 | background-image: linear-gradient(to bottom, #d9edf7 0%, #b9def0 100%); | ||
| 427 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0); | ||
| 428 | background-repeat: repeat-x; | ||
| 429 | border-color: #9acfea; | ||
| 430 | } | ||
| 431 | .alert-warning { | ||
| 432 | background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%); | ||
| 433 | background-image: -o-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%); | ||
| 434 | background-image: -webkit-gradient(linear, left top, left bottom, from(#fcf8e3), to(#f8efc0)); | ||
| 435 | background-image: linear-gradient(to bottom, #fcf8e3 0%, #f8efc0 100%); | ||
| 436 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0); | ||
| 437 | background-repeat: repeat-x; | ||
| 438 | border-color: #f5e79e; | ||
| 439 | } | ||
| 440 | .alert-danger { | ||
| 441 | background-image: -webkit-linear-gradient(top, #f2dede 0%, #e7c3c3 100%); | ||
| 442 | background-image: -o-linear-gradient(top, #f2dede 0%, #e7c3c3 100%); | ||
| 443 | background-image: -webkit-gradient(linear, left top, left bottom, from(#f2dede), to(#e7c3c3)); | ||
| 444 | background-image: linear-gradient(to bottom, #f2dede 0%, #e7c3c3 100%); | ||
| 445 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0); | ||
| 446 | background-repeat: repeat-x; | ||
| 447 | border-color: #dca7a7; | ||
| 448 | } | ||
| 449 | .progress { | ||
| 450 | background-image: -webkit-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%); | ||
| 451 | background-image: -o-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%); | ||
| 452 | background-image: -webkit-gradient(linear, left top, left bottom, from(#ebebeb), to(#f5f5f5)); | ||
| 453 | background-image: linear-gradient(to bottom, #ebebeb 0%, #f5f5f5 100%); | ||
| 454 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0); | ||
| 455 | background-repeat: repeat-x; | ||
| 456 | } | ||
| 457 | .progress-bar { | ||
| 458 | background-image: -webkit-linear-gradient(top, #337ab7 0%, #286090 100%); | ||
| 459 | background-image: -o-linear-gradient(top, #337ab7 0%, #286090 100%); | ||
| 460 | background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#286090)); | ||
| 461 | background-image: linear-gradient(to bottom, #337ab7 0%, #286090 100%); | ||
| 462 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff286090', GradientType=0); | ||
| 463 | background-repeat: repeat-x; | ||
| 464 | } | ||
| 465 | .progress-bar-success { | ||
| 466 | background-image: -webkit-linear-gradient(top, #5cb85c 0%, #449d44 100%); | ||
| 467 | background-image: -o-linear-gradient(top, #5cb85c 0%, #449d44 100%); | ||
| 468 | background-image: -webkit-gradient(linear, left top, left bottom, from(#5cb85c), to(#449d44)); | ||
| 469 | background-image: linear-gradient(to bottom, #5cb85c 0%, #449d44 100%); | ||
| 470 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0); | ||
| 471 | background-repeat: repeat-x; | ||
| 472 | } | ||
| 473 | .progress-bar-info { | ||
| 474 | background-image: -webkit-linear-gradient(top, #5bc0de 0%, #31b0d5 100%); | ||
| 475 | background-image: -o-linear-gradient(top, #5bc0de 0%, #31b0d5 100%); | ||
| 476 | background-image: -webkit-gradient(linear, left top, left bottom, from(#5bc0de), to(#31b0d5)); | ||
| 477 | background-image: linear-gradient(to bottom, #5bc0de 0%, #31b0d5 100%); | ||
| 478 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0); | ||
| 479 | background-repeat: repeat-x; | ||
| 480 | } | ||
| 481 | .progress-bar-warning { | ||
| 482 | background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #ec971f 100%); | ||
| 483 | background-image: -o-linear-gradient(top, #f0ad4e 0%, #ec971f 100%); | ||
| 484 | background-image: -webkit-gradient(linear, left top, left bottom, from(#f0ad4e), to(#ec971f)); | ||
| 485 | background-image: linear-gradient(to bottom, #f0ad4e 0%, #ec971f 100%); | ||
| 486 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0); | ||
| 487 | background-repeat: repeat-x; | ||
| 488 | } | ||
| 489 | .progress-bar-danger { | ||
| 490 | background-image: -webkit-linear-gradient(top, #d9534f 0%, #c9302c 100%); | ||
| 491 | background-image: -o-linear-gradient(top, #d9534f 0%, #c9302c 100%); | ||
| 492 | background-image: -webkit-gradient(linear, left top, left bottom, from(#d9534f), to(#c9302c)); | ||
| 493 | background-image: linear-gradient(to bottom, #d9534f 0%, #c9302c 100%); | ||
| 494 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0); | ||
| 495 | background-repeat: repeat-x; | ||
| 496 | } | ||
| 497 | .progress-bar-striped { | ||
| 498 | background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); | ||
| 499 | background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); | ||
| 500 | background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); | ||
| 501 | } | ||
| 502 | .list-group { | ||
| 503 | border-radius: 4px; | ||
| 504 | -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .075); | ||
| 505 | box-shadow: 0 1px 2px rgba(0, 0, 0, .075); | ||
| 506 | } | ||
| 507 | .list-group-item.active, | ||
| 508 | .list-group-item.active:hover, | ||
| 509 | .list-group-item.active:focus { | ||
| 510 | text-shadow: 0 -1px 0 #286090; | ||
| 511 | background-image: -webkit-linear-gradient(top, #337ab7 0%, #2b669a 100%); | ||
| 512 | background-image: -o-linear-gradient(top, #337ab7 0%, #2b669a 100%); | ||
| 513 | background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2b669a)); | ||
| 514 | background-image: linear-gradient(to bottom, #337ab7 0%, #2b669a 100%); | ||
| 515 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2b669a', GradientType=0); | ||
| 516 | background-repeat: repeat-x; | ||
| 517 | border-color: #2b669a; | ||
| 518 | } | ||
| 519 | .list-group-item.active .badge, | ||
| 520 | .list-group-item.active:hover .badge, | ||
| 521 | .list-group-item.active:focus .badge { | ||
| 522 | text-shadow: none; | ||
| 523 | } | ||
| 524 | .panel { | ||
| 525 | -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .05); | ||
| 526 | box-shadow: 0 1px 2px rgba(0, 0, 0, .05); | ||
| 527 | } | ||
| 528 | .panel-default > .panel-heading { | ||
| 529 | background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); | ||
| 530 | background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); | ||
| 531 | background-image: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#e8e8e8)); | ||
| 532 | background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%); | ||
| 533 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0); | ||
| 534 | background-repeat: repeat-x; | ||
| 535 | } | ||
| 536 | .panel-primary > .panel-heading { | ||
| 537 | background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%); | ||
| 538 | background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%); | ||
| 539 | background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4)); | ||
| 540 | background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%); | ||
| 541 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0); | ||
| 542 | background-repeat: repeat-x; | ||
| 543 | } | ||
| 544 | .panel-success > .panel-heading { | ||
| 545 | background-image: -webkit-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%); | ||
| 546 | background-image: -o-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%); | ||
| 547 | background-image: -webkit-gradient(linear, left top, left bottom, from(#dff0d8), to(#d0e9c6)); | ||
| 548 | background-image: linear-gradient(to bottom, #dff0d8 0%, #d0e9c6 100%); | ||
| 549 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0); | ||
| 550 | background-repeat: repeat-x; | ||
| 551 | } | ||
| 552 | .panel-info > .panel-heading { | ||
| 553 | background-image: -webkit-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%); | ||
| 554 | background-image: -o-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%); | ||
| 555 | background-image: -webkit-gradient(linear, left top, left bottom, from(#d9edf7), to(#c4e3f3)); | ||
| 556 | background-image: linear-gradient(to bottom, #d9edf7 0%, #c4e3f3 100%); | ||
| 557 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0); | ||
| 558 | background-repeat: repeat-x; | ||
| 559 | } | ||
| 560 | .panel-warning > .panel-heading { | ||
| 561 | background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%); | ||
| 562 | background-image: -o-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%); | ||
| 563 | background-image: -webkit-gradient(linear, left top, left bottom, from(#fcf8e3), to(#faf2cc)); | ||
| 564 | background-image: linear-gradient(to bottom, #fcf8e3 0%, #faf2cc 100%); | ||
| 565 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0); | ||
| 566 | background-repeat: repeat-x; | ||
| 567 | } | ||
| 568 | .panel-danger > .panel-heading { | ||
| 569 | background-image: -webkit-linear-gradient(top, #f2dede 0%, #ebcccc 100%); | ||
| 570 | background-image: -o-linear-gradient(top, #f2dede 0%, #ebcccc 100%); | ||
| 571 | background-image: -webkit-gradient(linear, left top, left bottom, from(#f2dede), to(#ebcccc)); | ||
| 572 | background-image: linear-gradient(to bottom, #f2dede 0%, #ebcccc 100%); | ||
| 573 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0); | ||
| 574 | background-repeat: repeat-x; | ||
| 575 | } | ||
| 576 | .well { | ||
| 577 | background-image: -webkit-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%); | ||
| 578 | background-image: -o-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%); | ||
| 579 | background-image: -webkit-gradient(linear, left top, left bottom, from(#e8e8e8), to(#f5f5f5)); | ||
| 580 | background-image: linear-gradient(to bottom, #e8e8e8 0%, #f5f5f5 100%); | ||
| 581 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0); | ||
| 582 | background-repeat: repeat-x; | ||
| 583 | border-color: #dcdcdc; | ||
| 584 | -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, .05), 0 1px 0 rgba(255, 255, 255, .1); | ||
| 585 | box-shadow: inset 0 1px 3px rgba(0, 0, 0, .05), 0 1px 0 rgba(255, 255, 255, .1); | ||
| 586 | } | ||
| 587 | /*# sourceMappingURL=bootstrap-theme.css.map */ |
bootstrap/css/bootstrap-theme.css.map
0 → 100644
| 1 | {"version":3,"sources":["bootstrap-theme.css","less/theme.less","less/mixins/vendor-prefixes.less","less/mixins/gradients.less","less/mixins/reset-filter.less"],"names":[],"mappings":"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","file":"bootstrap-theme.css","sourcesContent":["/*!\n * Bootstrap v3.3.6 (http://getbootstrap.com)\n * Copyright 2011-2015 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n.btn-default,\n.btn-primary,\n.btn-success,\n.btn-info,\n.btn-warning,\n.btn-danger {\n text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.btn-default:active,\n.btn-primary:active,\n.btn-success:active,\n.btn-info:active,\n.btn-warning:active,\n.btn-danger:active,\n.btn-default.active,\n.btn-primary.active,\n.btn-success.active,\n.btn-info.active,\n.btn-warning.active,\n.btn-danger.active {\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n}\n.btn-default.disabled,\n.btn-primary.disabled,\n.btn-success.disabled,\n.btn-info.disabled,\n.btn-warning.disabled,\n.btn-danger.disabled,\n.btn-default[disabled],\n.btn-primary[disabled],\n.btn-success[disabled],\n.btn-info[disabled],\n.btn-warning[disabled],\n.btn-danger[disabled],\nfieldset[disabled] .btn-default,\nfieldset[disabled] .btn-primary,\nfieldset[disabled] .btn-success,\nfieldset[disabled] .btn-info,\nfieldset[disabled] .btn-warning,\nfieldset[disabled] .btn-danger {\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.btn-default .badge,\n.btn-primary .badge,\n.btn-success .badge,\n.btn-info .badge,\n.btn-warning .badge,\n.btn-danger .badge {\n text-shadow: none;\n}\n.btn:active,\n.btn.active {\n background-image: none;\n}\n.btn-default {\n background-image: -webkit-linear-gradient(top, #fff 0%, #e0e0e0 100%);\n background-image: -o-linear-gradient(top, #fff 0%, #e0e0e0 100%);\n background-image: linear-gradient(to bottom, #fff 0%, #e0e0e0 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #dbdbdb;\n text-shadow: 0 1px 0 #fff;\n border-color: #ccc;\n}\n.btn-default:hover,\n.btn-default:focus {\n background-color: #e0e0e0;\n background-position: 0 -15px;\n}\n.btn-default:active,\n.btn-default.active {\n background-color: #e0e0e0;\n border-color: #dbdbdb;\n}\n.btn-default.disabled,\n.btn-default[disabled],\nfieldset[disabled] .btn-default,\n.btn-default.disabled:hover,\n.btn-default[disabled]:hover,\nfieldset[disabled] .btn-default:hover,\n.btn-default.disabled:focus,\n.btn-default[disabled]:focus,\nfieldset[disabled] .btn-default:focus,\n.btn-default.disabled.focus,\n.btn-default[disabled].focus,\nfieldset[disabled] .btn-default.focus,\n.btn-default.disabled:active,\n.btn-default[disabled]:active,\nfieldset[disabled] .btn-default:active,\n.btn-default.disabled.active,\n.btn-default[disabled].active,\nfieldset[disabled] .btn-default.active {\n background-color: #e0e0e0;\n background-image: none;\n}\n.btn-primary {\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #265a88 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #265a88 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #265a88 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff265a88', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #245580;\n}\n.btn-primary:hover,\n.btn-primary:focus {\n background-color: #265a88;\n background-position: 0 -15px;\n}\n.btn-primary:active,\n.btn-primary.active {\n background-color: #265a88;\n border-color: #245580;\n}\n.btn-primary.disabled,\n.btn-primary[disabled],\nfieldset[disabled] .btn-primary,\n.btn-primary.disabled:hover,\n.btn-primary[disabled]:hover,\nfieldset[disabled] .btn-primary:hover,\n.btn-primary.disabled:focus,\n.btn-primary[disabled]:focus,\nfieldset[disabled] .btn-primary:focus,\n.btn-primary.disabled.focus,\n.btn-primary[disabled].focus,\nfieldset[disabled] .btn-primary.focus,\n.btn-primary.disabled:active,\n.btn-primary[disabled]:active,\nfieldset[disabled] .btn-primary:active,\n.btn-primary.disabled.active,\n.btn-primary[disabled].active,\nfieldset[disabled] .btn-primary.active {\n background-color: #265a88;\n background-image: none;\n}\n.btn-success {\n background-image: -webkit-linear-gradient(top, #5cb85c 0%, #419641 100%);\n background-image: -o-linear-gradient(top, #5cb85c 0%, #419641 100%);\n background-image: linear-gradient(to bottom, #5cb85c 0%, #419641 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #3e8f3e;\n}\n.btn-success:hover,\n.btn-success:focus {\n background-color: #419641;\n background-position: 0 -15px;\n}\n.btn-success:active,\n.btn-success.active {\n background-color: #419641;\n border-color: #3e8f3e;\n}\n.btn-success.disabled,\n.btn-success[disabled],\nfieldset[disabled] .btn-success,\n.btn-success.disabled:hover,\n.btn-success[disabled]:hover,\nfieldset[disabled] .btn-success:hover,\n.btn-success.disabled:focus,\n.btn-success[disabled]:focus,\nfieldset[disabled] .btn-success:focus,\n.btn-success.disabled.focus,\n.btn-success[disabled].focus,\nfieldset[disabled] .btn-success.focus,\n.btn-success.disabled:active,\n.btn-success[disabled]:active,\nfieldset[disabled] .btn-success:active,\n.btn-success.disabled.active,\n.btn-success[disabled].active,\nfieldset[disabled] .btn-success.active {\n background-color: #419641;\n background-image: none;\n}\n.btn-info {\n background-image: -webkit-linear-gradient(top, #5bc0de 0%, #2aabd2 100%);\n background-image: -o-linear-gradient(top, #5bc0de 0%, #2aabd2 100%);\n background-image: linear-gradient(to bottom, #5bc0de 0%, #2aabd2 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #28a4c9;\n}\n.btn-info:hover,\n.btn-info:focus {\n background-color: #2aabd2;\n background-position: 0 -15px;\n}\n.btn-info:active,\n.btn-info.active {\n background-color: #2aabd2;\n border-color: #28a4c9;\n}\n.btn-info.disabled,\n.btn-info[disabled],\nfieldset[disabled] .btn-info,\n.btn-info.disabled:hover,\n.btn-info[disabled]:hover,\nfieldset[disabled] .btn-info:hover,\n.btn-info.disabled:focus,\n.btn-info[disabled]:focus,\nfieldset[disabled] .btn-info:focus,\n.btn-info.disabled.focus,\n.btn-info[disabled].focus,\nfieldset[disabled] .btn-info.focus,\n.btn-info.disabled:active,\n.btn-info[disabled]:active,\nfieldset[disabled] .btn-info:active,\n.btn-info.disabled.active,\n.btn-info[disabled].active,\nfieldset[disabled] .btn-info.active {\n background-color: #2aabd2;\n background-image: none;\n}\n.btn-warning {\n background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #eb9316 100%);\n background-image: -o-linear-gradient(top, #f0ad4e 0%, #eb9316 100%);\n background-image: linear-gradient(to bottom, #f0ad4e 0%, #eb9316 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #e38d13;\n}\n.btn-warning:hover,\n.btn-warning:focus {\n background-color: #eb9316;\n background-position: 0 -15px;\n}\n.btn-warning:active,\n.btn-warning.active {\n background-color: #eb9316;\n border-color: #e38d13;\n}\n.btn-warning.disabled,\n.btn-warning[disabled],\nfieldset[disabled] .btn-warning,\n.btn-warning.disabled:hover,\n.btn-warning[disabled]:hover,\nfieldset[disabled] .btn-warning:hover,\n.btn-warning.disabled:focus,\n.btn-warning[disabled]:focus,\nfieldset[disabled] .btn-warning:focus,\n.btn-warning.disabled.focus,\n.btn-warning[disabled].focus,\nfieldset[disabled] .btn-warning.focus,\n.btn-warning.disabled:active,\n.btn-warning[disabled]:active,\nfieldset[disabled] .btn-warning:active,\n.btn-warning.disabled.active,\n.btn-warning[disabled].active,\nfieldset[disabled] .btn-warning.active {\n background-color: #eb9316;\n background-image: none;\n}\n.btn-danger {\n background-image: -webkit-linear-gradient(top, #d9534f 0%, #c12e2a 100%);\n background-image: -o-linear-gradient(top, #d9534f 0%, #c12e2a 100%);\n background-image: linear-gradient(to bottom, #d9534f 0%, #c12e2a 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc12e2a', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #b92c28;\n}\n.btn-danger:hover,\n.btn-danger:focus {\n background-color: #c12e2a;\n background-position: 0 -15px;\n}\n.btn-danger:active,\n.btn-danger.active {\n background-color: #c12e2a;\n border-color: #b92c28;\n}\n.btn-danger.disabled,\n.btn-danger[disabled],\nfieldset[disabled] .btn-danger,\n.btn-danger.disabled:hover,\n.btn-danger[disabled]:hover,\nfieldset[disabled] .btn-danger:hover,\n.btn-danger.disabled:focus,\n.btn-danger[disabled]:focus,\nfieldset[disabled] .btn-danger:focus,\n.btn-danger.disabled.focus,\n.btn-danger[disabled].focus,\nfieldset[disabled] .btn-danger.focus,\n.btn-danger.disabled:active,\n.btn-danger[disabled]:active,\nfieldset[disabled] .btn-danger:active,\n.btn-danger.disabled.active,\n.btn-danger[disabled].active,\nfieldset[disabled] .btn-danger.active {\n background-color: #c12e2a;\n background-image: none;\n}\n.thumbnail,\n.img-thumbnail {\n -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);\n}\n.dropdown-menu > li > a:hover,\n.dropdown-menu > li > a:focus {\n background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);\n background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);\n background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);\n background-color: #e8e8e8;\n}\n.dropdown-menu > .active > a,\n.dropdown-menu > .active > a:hover,\n.dropdown-menu > .active > a:focus {\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);\n background-color: #2e6da4;\n}\n.navbar-default {\n background-image: -webkit-linear-gradient(top, #ffffff 0%, #f8f8f8 100%);\n background-image: -o-linear-gradient(top, #ffffff 0%, #f8f8f8 100%);\n background-image: linear-gradient(to bottom, #ffffff 0%, #f8f8f8 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 5px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 5px rgba(0, 0, 0, 0.075);\n}\n.navbar-default .navbar-nav > .open > a,\n.navbar-default .navbar-nav > .active > a {\n background-image: -webkit-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%);\n background-image: -o-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%);\n background-image: linear-gradient(to bottom, #dbdbdb 0%, #e2e2e2 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdbdbdb', endColorstr='#ffe2e2e2', GradientType=0);\n -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.075);\n}\n.navbar-brand,\n.navbar-nav > li > a {\n text-shadow: 0 1px 0 rgba(255, 255, 255, 0.25);\n}\n.navbar-inverse {\n background-image: -webkit-linear-gradient(top, #3c3c3c 0%, #222 100%);\n background-image: -o-linear-gradient(top, #3c3c3c 0%, #222 100%);\n background-image: linear-gradient(to bottom, #3c3c3c 0%, #222 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n border-radius: 4px;\n}\n.navbar-inverse .navbar-nav > .open > a,\n.navbar-inverse .navbar-nav > .active > a {\n background-image: -webkit-linear-gradient(top, #080808 0%, #0f0f0f 100%);\n background-image: -o-linear-gradient(top, #080808 0%, #0f0f0f 100%);\n background-image: linear-gradient(to bottom, #080808 0%, #0f0f0f 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff080808', endColorstr='#ff0f0f0f', GradientType=0);\n -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.25);\n box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.25);\n}\n.navbar-inverse .navbar-brand,\n.navbar-inverse .navbar-nav > li > a {\n text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);\n}\n.navbar-static-top,\n.navbar-fixed-top,\n.navbar-fixed-bottom {\n border-radius: 0;\n}\n@media (max-width: 767px) {\n .navbar .navbar-nav .open .dropdown-menu > .active > a,\n .navbar .navbar-nav .open .dropdown-menu > .active > a:hover,\n .navbar .navbar-nav .open .dropdown-menu > .active > a:focus {\n color: #fff;\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);\n }\n}\n.alert {\n text-shadow: 0 1px 0 rgba(255, 255, 255, 0.2);\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05);\n}\n.alert-success {\n background-image: -webkit-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%);\n background-image: -o-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%);\n background-image: linear-gradient(to bottom, #dff0d8 0%, #c8e5bc 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0);\n border-color: #b2dba1;\n}\n.alert-info {\n background-image: -webkit-linear-gradient(top, #d9edf7 0%, #b9def0 100%);\n background-image: -o-linear-gradient(top, #d9edf7 0%, #b9def0 100%);\n background-image: linear-gradient(to bottom, #d9edf7 0%, #b9def0 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0);\n border-color: #9acfea;\n}\n.alert-warning {\n background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%);\n background-image: -o-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%);\n background-image: linear-gradient(to bottom, #fcf8e3 0%, #f8efc0 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0);\n border-color: #f5e79e;\n}\n.alert-danger {\n background-image: -webkit-linear-gradient(top, #f2dede 0%, #e7c3c3 100%);\n background-image: -o-linear-gradient(top, #f2dede 0%, #e7c3c3 100%);\n background-image: linear-gradient(to bottom, #f2dede 0%, #e7c3c3 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0);\n border-color: #dca7a7;\n}\n.progress {\n background-image: -webkit-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%);\n background-image: -o-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%);\n background-image: linear-gradient(to bottom, #ebebeb 0%, #f5f5f5 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0);\n}\n.progress-bar {\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #286090 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #286090 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #286090 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff286090', GradientType=0);\n}\n.progress-bar-success {\n background-image: -webkit-linear-gradient(top, #5cb85c 0%, #449d44 100%);\n background-image: -o-linear-gradient(top, #5cb85c 0%, #449d44 100%);\n background-image: linear-gradient(to bottom, #5cb85c 0%, #449d44 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0);\n}\n.progress-bar-info {\n background-image: -webkit-linear-gradient(top, #5bc0de 0%, #31b0d5 100%);\n background-image: -o-linear-gradient(top, #5bc0de 0%, #31b0d5 100%);\n background-image: linear-gradient(to bottom, #5bc0de 0%, #31b0d5 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0);\n}\n.progress-bar-warning {\n background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #ec971f 100%);\n background-image: -o-linear-gradient(top, #f0ad4e 0%, #ec971f 100%);\n background-image: linear-gradient(to bottom, #f0ad4e 0%, #ec971f 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0);\n}\n.progress-bar-danger {\n background-image: -webkit-linear-gradient(top, #d9534f 0%, #c9302c 100%);\n background-image: -o-linear-gradient(top, #d9534f 0%, #c9302c 100%);\n background-image: linear-gradient(to bottom, #d9534f 0%, #c9302c 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0);\n}\n.progress-bar-striped {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.list-group {\n border-radius: 4px;\n -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);\n}\n.list-group-item.active,\n.list-group-item.active:hover,\n.list-group-item.active:focus {\n text-shadow: 0 -1px 0 #286090;\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #2b669a 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #2b669a 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #2b669a 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2b669a', GradientType=0);\n border-color: #2b669a;\n}\n.list-group-item.active .badge,\n.list-group-item.active:hover .badge,\n.list-group-item.active:focus .badge {\n text-shadow: none;\n}\n.panel {\n -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);\n}\n.panel-default > .panel-heading {\n background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);\n background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);\n background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);\n}\n.panel-primary > .panel-heading {\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);\n}\n.panel-success > .panel-heading {\n background-image: -webkit-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%);\n background-image: -o-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%);\n background-image: linear-gradient(to bottom, #dff0d8 0%, #d0e9c6 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0);\n}\n.panel-info > .panel-heading {\n background-image: -webkit-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%);\n background-image: -o-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%);\n background-image: linear-gradient(to bottom, #d9edf7 0%, #c4e3f3 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0);\n}\n.panel-warning > .panel-heading {\n background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%);\n background-image: -o-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%);\n background-image: linear-gradient(to bottom, #fcf8e3 0%, #faf2cc 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0);\n}\n.panel-danger > .panel-heading {\n background-image: -webkit-linear-gradient(top, #f2dede 0%, #ebcccc 100%);\n background-image: -o-linear-gradient(top, #f2dede 0%, #ebcccc 100%);\n background-image: linear-gradient(to bottom, #f2dede 0%, #ebcccc 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0);\n}\n.well {\n background-image: -webkit-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%);\n background-image: -o-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%);\n background-image: linear-gradient(to bottom, #e8e8e8 0%, #f5f5f5 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0);\n border-color: #dcdcdc;\n -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05), 0 1px 0 rgba(255, 255, 255, 0.1);\n box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05), 0 1px 0 rgba(255, 255, 255, 0.1);\n}\n/*# sourceMappingURL=bootstrap-theme.css.map */","/*!\n * Bootstrap v3.3.6 (http://getbootstrap.com)\n * Copyright 2011-2015 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n\n//\n// Load core variables and mixins\n// --------------------------------------------------\n\n@import \"variables.less\";\n@import \"mixins.less\";\n\n\n//\n// Buttons\n// --------------------------------------------------\n\n// Common styles\n.btn-default,\n.btn-primary,\n.btn-success,\n.btn-info,\n.btn-warning,\n.btn-danger {\n text-shadow: 0 -1px 0 rgba(0,0,0,.2);\n @shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 1px rgba(0,0,0,.075);\n .box-shadow(@shadow);\n\n // Reset the shadow\n &:active,\n &.active {\n .box-shadow(inset 0 3px 5px rgba(0,0,0,.125));\n }\n\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n .box-shadow(none);\n }\n\n .badge {\n text-shadow: none;\n }\n}\n\n// Mixin for generating new styles\n.btn-styles(@btn-color: #555) {\n #gradient > .vertical(@start-color: @btn-color; @end-color: darken(@btn-color, 12%));\n .reset-filter(); // Disable gradients for IE9 because filter bleeds through rounded corners; see https://github.com/twbs/bootstrap/issues/10620\n background-repeat: repeat-x;\n border-color: darken(@btn-color, 14%);\n\n &:hover,\n &:focus {\n background-color: darken(@btn-color, 12%);\n background-position: 0 -15px;\n }\n\n &:active,\n &.active {\n background-color: darken(@btn-color, 12%);\n border-color: darken(@btn-color, 14%);\n }\n\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n &,\n &:hover,\n &:focus,\n &.focus,\n &:active,\n &.active {\n background-color: darken(@btn-color, 12%);\n background-image: none;\n }\n }\n}\n\n// Common styles\n.btn {\n // Remove the gradient for the pressed/active state\n &:active,\n &.active {\n background-image: none;\n }\n}\n\n// Apply the mixin to the buttons\n.btn-default { .btn-styles(@btn-default-bg); text-shadow: 0 1px 0 #fff; border-color: #ccc; }\n.btn-primary { .btn-styles(@btn-primary-bg); }\n.btn-success { .btn-styles(@btn-success-bg); }\n.btn-info { .btn-styles(@btn-info-bg); }\n.btn-warning { .btn-styles(@btn-warning-bg); }\n.btn-danger { .btn-styles(@btn-danger-bg); }\n\n\n//\n// Images\n// --------------------------------------------------\n\n.thumbnail,\n.img-thumbnail {\n .box-shadow(0 1px 2px rgba(0,0,0,.075));\n}\n\n\n//\n// Dropdowns\n// --------------------------------------------------\n\n.dropdown-menu > li > a:hover,\n.dropdown-menu > li > a:focus {\n #gradient > .vertical(@start-color: @dropdown-link-hover-bg; @end-color: darken(@dropdown-link-hover-bg, 5%));\n background-color: darken(@dropdown-link-hover-bg, 5%);\n}\n.dropdown-menu > .active > a,\n.dropdown-menu > .active > a:hover,\n.dropdown-menu > .active > a:focus {\n #gradient > .vertical(@start-color: @dropdown-link-active-bg; @end-color: darken(@dropdown-link-active-bg, 5%));\n background-color: darken(@dropdown-link-active-bg, 5%);\n}\n\n\n//\n// Navbar\n// --------------------------------------------------\n\n// Default navbar\n.navbar-default {\n #gradient > .vertical(@start-color: lighten(@navbar-default-bg, 10%); @end-color: @navbar-default-bg);\n .reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered\n border-radius: @navbar-border-radius;\n @shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 5px rgba(0,0,0,.075);\n .box-shadow(@shadow);\n\n .navbar-nav > .open > a,\n .navbar-nav > .active > a {\n #gradient > .vertical(@start-color: darken(@navbar-default-link-active-bg, 5%); @end-color: darken(@navbar-default-link-active-bg, 2%));\n .box-shadow(inset 0 3px 9px rgba(0,0,0,.075));\n }\n}\n.navbar-brand,\n.navbar-nav > li > a {\n text-shadow: 0 1px 0 rgba(255,255,255,.25);\n}\n\n// Inverted navbar\n.navbar-inverse {\n #gradient > .vertical(@start-color: lighten(@navbar-inverse-bg, 10%); @end-color: @navbar-inverse-bg);\n .reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered; see https://github.com/twbs/bootstrap/issues/10257\n border-radius: @navbar-border-radius;\n .navbar-nav > .open > a,\n .navbar-nav > .active > a {\n #gradient > .vertical(@start-color: @navbar-inverse-link-active-bg; @end-color: lighten(@navbar-inverse-link-active-bg, 2.5%));\n .box-shadow(inset 0 3px 9px rgba(0,0,0,.25));\n }\n\n .navbar-brand,\n .navbar-nav > li > a {\n text-shadow: 0 -1px 0 rgba(0,0,0,.25);\n }\n}\n\n// Undo rounded corners in static and fixed navbars\n.navbar-static-top,\n.navbar-fixed-top,\n.navbar-fixed-bottom {\n border-radius: 0;\n}\n\n// Fix active state of dropdown items in collapsed mode\n@media (max-width: @grid-float-breakpoint-max) {\n .navbar .navbar-nav .open .dropdown-menu > .active > a {\n &,\n &:hover,\n &:focus {\n color: #fff;\n #gradient > .vertical(@start-color: @dropdown-link-active-bg; @end-color: darken(@dropdown-link-active-bg, 5%));\n }\n }\n}\n\n\n//\n// Alerts\n// --------------------------------------------------\n\n// Common styles\n.alert {\n text-shadow: 0 1px 0 rgba(255,255,255,.2);\n @shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 1px 2px rgba(0,0,0,.05);\n .box-shadow(@shadow);\n}\n\n// Mixin for generating new styles\n.alert-styles(@color) {\n #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 7.5%));\n border-color: darken(@color, 15%);\n}\n\n// Apply the mixin to the alerts\n.alert-success { .alert-styles(@alert-success-bg); }\n.alert-info { .alert-styles(@alert-info-bg); }\n.alert-warning { .alert-styles(@alert-warning-bg); }\n.alert-danger { .alert-styles(@alert-danger-bg); }\n\n\n//\n// Progress bars\n// --------------------------------------------------\n\n// Give the progress background some depth\n.progress {\n #gradient > .vertical(@start-color: darken(@progress-bg, 4%); @end-color: @progress-bg)\n}\n\n// Mixin for generating new styles\n.progress-bar-styles(@color) {\n #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 10%));\n}\n\n// Apply the mixin to the progress bars\n.progress-bar { .progress-bar-styles(@progress-bar-bg); }\n.progress-bar-success { .progress-bar-styles(@progress-bar-success-bg); }\n.progress-bar-info { .progress-bar-styles(@progress-bar-info-bg); }\n.progress-bar-warning { .progress-bar-styles(@progress-bar-warning-bg); }\n.progress-bar-danger { .progress-bar-styles(@progress-bar-danger-bg); }\n\n// Reset the striped class because our mixins don't do multiple gradients and\n// the above custom styles override the new `.progress-bar-striped` in v3.2.0.\n.progress-bar-striped {\n #gradient > .striped();\n}\n\n\n//\n// List groups\n// --------------------------------------------------\n\n.list-group {\n border-radius: @border-radius-base;\n .box-shadow(0 1px 2px rgba(0,0,0,.075));\n}\n.list-group-item.active,\n.list-group-item.active:hover,\n.list-group-item.active:focus {\n text-shadow: 0 -1px 0 darken(@list-group-active-bg, 10%);\n #gradient > .vertical(@start-color: @list-group-active-bg; @end-color: darken(@list-group-active-bg, 7.5%));\n border-color: darken(@list-group-active-border, 7.5%);\n\n .badge {\n text-shadow: none;\n }\n}\n\n\n//\n// Panels\n// --------------------------------------------------\n\n// Common styles\n.panel {\n .box-shadow(0 1px 2px rgba(0,0,0,.05));\n}\n\n// Mixin for generating new styles\n.panel-heading-styles(@color) {\n #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 5%));\n}\n\n// Apply the mixin to the panel headings only\n.panel-default > .panel-heading { .panel-heading-styles(@panel-default-heading-bg); }\n.panel-primary > .panel-heading { .panel-heading-styles(@panel-primary-heading-bg); }\n.panel-success > .panel-heading { .panel-heading-styles(@panel-success-heading-bg); }\n.panel-info > .panel-heading { .panel-heading-styles(@panel-info-heading-bg); }\n.panel-warning > .panel-heading { .panel-heading-styles(@panel-warning-heading-bg); }\n.panel-danger > .panel-heading { .panel-heading-styles(@panel-danger-heading-bg); }\n\n\n//\n// Wells\n// --------------------------------------------------\n\n.well {\n #gradient > .vertical(@start-color: darken(@well-bg, 5%); @end-color: @well-bg);\n border-color: darken(@well-bg, 10%);\n @shadow: inset 0 1px 3px rgba(0,0,0,.05), 0 1px 0 rgba(255,255,255,.1);\n .box-shadow(@shadow);\n}\n","// Vendor Prefixes\n//\n// All vendor mixins are deprecated as of v3.2.0 due to the introduction of\n// Autoprefixer in our Gruntfile. They have been removed in v4.\n\n// - Animations\n// - Backface visibility\n// - Box shadow\n// - Box sizing\n// - Content columns\n// - Hyphens\n// - Placeholder text\n// - Transformations\n// - Transitions\n// - User Select\n\n\n// Animations\n.animation(@animation) {\n -webkit-animation: @animation;\n -o-animation: @animation;\n animation: @animation;\n}\n.animation-name(@name) {\n -webkit-animation-name: @name;\n animation-name: @name;\n}\n.animation-duration(@duration) {\n -webkit-animation-duration: @duration;\n animation-duration: @duration;\n}\n.animation-timing-function(@timing-function) {\n -webkit-animation-timing-function: @timing-function;\n animation-timing-function: @timing-function;\n}\n.animation-delay(@delay) {\n -webkit-animation-delay: @delay;\n animation-delay: @delay;\n}\n.animation-iteration-count(@iteration-count) {\n -webkit-animation-iteration-count: @iteration-count;\n animation-iteration-count: @iteration-count;\n}\n.animation-direction(@direction) {\n -webkit-animation-direction: @direction;\n animation-direction: @direction;\n}\n.animation-fill-mode(@fill-mode) {\n -webkit-animation-fill-mode: @fill-mode;\n animation-fill-mode: @fill-mode;\n}\n\n// Backface visibility\n// Prevent browsers from flickering when using CSS 3D transforms.\n// Default value is `visible`, but can be changed to `hidden`\n\n.backface-visibility(@visibility) {\n -webkit-backface-visibility: @visibility;\n -moz-backface-visibility: @visibility;\n backface-visibility: @visibility;\n}\n\n// Drop shadows\n//\n// Note: Deprecated `.box-shadow()` as of v3.1.0 since all of Bootstrap's\n// supported browsers that have box shadow capabilities now support it.\n\n.box-shadow(@shadow) {\n -webkit-box-shadow: @shadow; // iOS <4.3 & Android <4.1\n box-shadow: @shadow;\n}\n\n// Box sizing\n.box-sizing(@boxmodel) {\n -webkit-box-sizing: @boxmodel;\n -moz-box-sizing: @boxmodel;\n box-sizing: @boxmodel;\n}\n\n// CSS3 Content Columns\n.content-columns(@column-count; @column-gap: @grid-gutter-width) {\n -webkit-column-count: @column-count;\n -moz-column-count: @column-count;\n column-count: @column-count;\n -webkit-column-gap: @column-gap;\n -moz-column-gap: @column-gap;\n column-gap: @column-gap;\n}\n\n// Optional hyphenation\n.hyphens(@mode: auto) {\n word-wrap: break-word;\n -webkit-hyphens: @mode;\n -moz-hyphens: @mode;\n -ms-hyphens: @mode; // IE10+\n -o-hyphens: @mode;\n hyphens: @mode;\n}\n\n// Placeholder text\n.placeholder(@color: @input-color-placeholder) {\n // Firefox\n &::-moz-placeholder {\n color: @color;\n opacity: 1; // Override Firefox's unusual default opacity; see https://github.com/twbs/bootstrap/pull/11526\n }\n &:-ms-input-placeholder { color: @color; } // Internet Explorer 10+\n &::-webkit-input-placeholder { color: @color; } // Safari and Chrome\n}\n\n// Transformations\n.scale(@ratio) {\n -webkit-transform: scale(@ratio);\n -ms-transform: scale(@ratio); // IE9 only\n -o-transform: scale(@ratio);\n transform: scale(@ratio);\n}\n.scale(@ratioX; @ratioY) {\n -webkit-transform: scale(@ratioX, @ratioY);\n -ms-transform: scale(@ratioX, @ratioY); // IE9 only\n -o-transform: scale(@ratioX, @ratioY);\n transform: scale(@ratioX, @ratioY);\n}\n.scaleX(@ratio) {\n -webkit-transform: scaleX(@ratio);\n -ms-transform: scaleX(@ratio); // IE9 only\n -o-transform: scaleX(@ratio);\n transform: scaleX(@ratio);\n}\n.scaleY(@ratio) {\n -webkit-transform: scaleY(@ratio);\n -ms-transform: scaleY(@ratio); // IE9 only\n -o-transform: scaleY(@ratio);\n transform: scaleY(@ratio);\n}\n.skew(@x; @y) {\n -webkit-transform: skewX(@x) skewY(@y);\n -ms-transform: skewX(@x) skewY(@y); // See https://github.com/twbs/bootstrap/issues/4885; IE9+\n -o-transform: skewX(@x) skewY(@y);\n transform: skewX(@x) skewY(@y);\n}\n.translate(@x; @y) {\n -webkit-transform: translate(@x, @y);\n -ms-transform: translate(@x, @y); // IE9 only\n -o-transform: translate(@x, @y);\n transform: translate(@x, @y);\n}\n.translate3d(@x; @y; @z) {\n -webkit-transform: translate3d(@x, @y, @z);\n transform: translate3d(@x, @y, @z);\n}\n.rotate(@degrees) {\n -webkit-transform: rotate(@degrees);\n -ms-transform: rotate(@degrees); // IE9 only\n -o-transform: rotate(@degrees);\n transform: rotate(@degrees);\n}\n.rotateX(@degrees) {\n -webkit-transform: rotateX(@degrees);\n -ms-transform: rotateX(@degrees); // IE9 only\n -o-transform: rotateX(@degrees);\n transform: rotateX(@degrees);\n}\n.rotateY(@degrees) {\n -webkit-transform: rotateY(@degrees);\n -ms-transform: rotateY(@degrees); // IE9 only\n -o-transform: rotateY(@degrees);\n transform: rotateY(@degrees);\n}\n.perspective(@perspective) {\n -webkit-perspective: @perspective;\n -moz-perspective: @perspective;\n perspective: @perspective;\n}\n.perspective-origin(@perspective) {\n -webkit-perspective-origin: @perspective;\n -moz-perspective-origin: @perspective;\n perspective-origin: @perspective;\n}\n.transform-origin(@origin) {\n -webkit-transform-origin: @origin;\n -moz-transform-origin: @origin;\n -ms-transform-origin: @origin; // IE9 only\n transform-origin: @origin;\n}\n\n\n// Transitions\n\n.transition(@transition) {\n -webkit-transition: @transition;\n -o-transition: @transition;\n transition: @transition;\n}\n.transition-property(@transition-property) {\n -webkit-transition-property: @transition-property;\n transition-property: @transition-property;\n}\n.transition-delay(@transition-delay) {\n -webkit-transition-delay: @transition-delay;\n transition-delay: @transition-delay;\n}\n.transition-duration(@transition-duration) {\n -webkit-transition-duration: @transition-duration;\n transition-duration: @transition-duration;\n}\n.transition-timing-function(@timing-function) {\n -webkit-transition-timing-function: @timing-function;\n transition-timing-function: @timing-function;\n}\n.transition-transform(@transition) {\n -webkit-transition: -webkit-transform @transition;\n -moz-transition: -moz-transform @transition;\n -o-transition: -o-transform @transition;\n transition: transform @transition;\n}\n\n\n// User select\n// For selecting text on the page\n\n.user-select(@select) {\n -webkit-user-select: @select;\n -moz-user-select: @select;\n -ms-user-select: @select; // IE10+\n user-select: @select;\n}\n","// Gradients\n\n#gradient {\n\n // Horizontal gradient, from left to right\n //\n // Creates two color stops, start and end, by specifying a color and position for each color stop.\n // Color stops are not available in IE9 and below.\n .horizontal(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) {\n background-image: -webkit-linear-gradient(left, @start-color @start-percent, @end-color @end-percent); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(left, @start-color @start-percent, @end-color @end-percent); // Opera 12\n background-image: linear-gradient(to right, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n background-repeat: repeat-x;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)\",argb(@start-color),argb(@end-color))); // IE9 and down\n }\n\n // Vertical gradient, from top to bottom\n //\n // Creates two color stops, start and end, by specifying a color and position for each color stop.\n // Color stops are not available in IE9 and below.\n .vertical(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) {\n background-image: -webkit-linear-gradient(top, @start-color @start-percent, @end-color @end-percent); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(top, @start-color @start-percent, @end-color @end-percent); // Opera 12\n background-image: linear-gradient(to bottom, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n background-repeat: repeat-x;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)\",argb(@start-color),argb(@end-color))); // IE9 and down\n }\n\n .directional(@start-color: #555; @end-color: #333; @deg: 45deg) {\n background-repeat: repeat-x;\n background-image: -webkit-linear-gradient(@deg, @start-color, @end-color); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(@deg, @start-color, @end-color); // Opera 12\n background-image: linear-gradient(@deg, @start-color, @end-color); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n }\n .horizontal-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) {\n background-image: -webkit-linear-gradient(left, @start-color, @mid-color @color-stop, @end-color);\n background-image: -o-linear-gradient(left, @start-color, @mid-color @color-stop, @end-color);\n background-image: linear-gradient(to right, @start-color, @mid-color @color-stop, @end-color);\n background-repeat: no-repeat;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)\",argb(@start-color),argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback\n }\n .vertical-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) {\n background-image: -webkit-linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-image: -o-linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-image: linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-repeat: no-repeat;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)\",argb(@start-color),argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback\n }\n .radial(@inner-color: #555; @outer-color: #333) {\n background-image: -webkit-radial-gradient(circle, @inner-color, @outer-color);\n background-image: radial-gradient(circle, @inner-color, @outer-color);\n background-repeat: no-repeat;\n }\n .striped(@color: rgba(255,255,255,.15); @angle: 45deg) {\n background-image: -webkit-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n background-image: linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n }\n}\n","// Reset filters for IE\n//\n// When you need to remove a gradient background, do not forget to use this to reset\n// the IE filter for IE9 and below.\n\n.reset-filter() {\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(enabled = false)\"));\n}\n"]} | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
bootstrap/css/bootstrap-theme.min.css
0 → 100644
| 1 | /*! | ||
| 2 | * Bootstrap v3.3.6 (http://getbootstrap.com) | ||
| 3 | * Copyright 2011-2015 Twitter, Inc. | ||
| 4 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) | ||
| 5 | */.btn-danger,.btn-default,.btn-info,.btn-primary,.btn-success,.btn-warning{text-shadow:0 -1px 0 rgba(0,0,0,.2);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 1px rgba(0,0,0,.075)}.btn-danger.active,.btn-danger:active,.btn-default.active,.btn-default:active,.btn-info.active,.btn-info:active,.btn-primary.active,.btn-primary:active,.btn-success.active,.btn-success:active,.btn-warning.active,.btn-warning:active{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn-danger.disabled,.btn-danger[disabled],.btn-default.disabled,.btn-default[disabled],.btn-info.disabled,.btn-info[disabled],.btn-primary.disabled,.btn-primary[disabled],.btn-success.disabled,.btn-success[disabled],.btn-warning.disabled,.btn-warning[disabled],fieldset[disabled] .btn-danger,fieldset[disabled] .btn-default,fieldset[disabled] .btn-info,fieldset[disabled] .btn-primary,fieldset[disabled] .btn-success,fieldset[disabled] .btn-warning{-webkit-box-shadow:none;box-shadow:none}.btn-danger .badge,.btn-default .badge,.btn-info .badge,.btn-primary .badge,.btn-success .badge,.btn-warning .badge{text-shadow:none}.btn.active,.btn:active{background-image:none}.btn-default{text-shadow:0 1px 0 #fff;background-image:-webkit-linear-gradient(top,#fff 0,#e0e0e0 100%);background-image:-o-linear-gradient(top,#fff 0,#e0e0e0 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e0e0e0));background-image:linear-gradient(to bottom,#fff 0,#e0e0e0 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#dbdbdb;border-color:#ccc}.btn-default:focus,.btn-default:hover{background-color:#e0e0e0;background-position:0 -15px}.btn-default.active,.btn-default:active{background-color:#e0e0e0;border-color:#dbdbdb}.btn-default.disabled,.btn-default.disabled.active,.btn-default.disabled.focus,.btn-default.disabled:active,.btn-default.disabled:focus,.btn-default.disabled:hover,.btn-default[disabled],.btn-default[disabled].active,.btn-default[disabled].focus,.btn-default[disabled]:active,.btn-default[disabled]:focus,.btn-default[disabled]:hover,fieldset[disabled] .btn-default,fieldset[disabled] .btn-default.active,fieldset[disabled] .btn-default.focus,fieldset[disabled] .btn-default:active,fieldset[disabled] .btn-default:focus,fieldset[disabled] .btn-default:hover{background-color:#e0e0e0;background-image:none}.btn-primary{background-image:-webkit-linear-gradient(top,#337ab7 0,#265a88 100%);background-image:-o-linear-gradient(top,#337ab7 0,#265a88 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#265a88));background-image:linear-gradient(to bottom,#337ab7 0,#265a88 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff265a88', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#245580}.btn-primary:focus,.btn-primary:hover{background-color:#265a88;background-position:0 -15px}.btn-primary.active,.btn-primary:active{background-color:#265a88;border-color:#245580}.btn-primary.disabled,.btn-primary.disabled.active,.btn-primary.disabled.focus,.btn-primary.disabled:active,.btn-primary.disabled:focus,.btn-primary.disabled:hover,.btn-primary[disabled],.btn-primary[disabled].active,.btn-primary[disabled].focus,.btn-primary[disabled]:active,.btn-primary[disabled]:focus,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary,fieldset[disabled] .btn-primary.active,fieldset[disabled] .btn-primary.focus,fieldset[disabled] .btn-primary:active,fieldset[disabled] .btn-primary:focus,fieldset[disabled] .btn-primary:hover{background-color:#265a88;background-image:none}.btn-success{background-image:-webkit-linear-gradient(top,#5cb85c 0,#419641 100%);background-image:-o-linear-gradient(top,#5cb85c 0,#419641 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5cb85c),to(#419641));background-image:linear-gradient(to bottom,#5cb85c 0,#419641 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#3e8f3e}.btn-success:focus,.btn-success:hover{background-color:#419641;background-position:0 -15px}.btn-success.active,.btn-success:active{background-color:#419641;border-color:#3e8f3e}.btn-success.disabled,.btn-success.disabled.active,.btn-success.disabled.focus,.btn-success.disabled:active,.btn-success.disabled:focus,.btn-success.disabled:hover,.btn-success[disabled],.btn-success[disabled].active,.btn-success[disabled].focus,.btn-success[disabled]:active,.btn-success[disabled]:focus,.btn-success[disabled]:hover,fieldset[disabled] .btn-success,fieldset[disabled] .btn-success.active,fieldset[disabled] .btn-success.focus,fieldset[disabled] .btn-success:active,fieldset[disabled] .btn-success:focus,fieldset[disabled] .btn-success:hover{background-color:#419641;background-image:none}.btn-info{background-image:-webkit-linear-gradient(top,#5bc0de 0,#2aabd2 100%);background-image:-o-linear-gradient(top,#5bc0de 0,#2aabd2 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5bc0de),to(#2aabd2));background-image:linear-gradient(to bottom,#5bc0de 0,#2aabd2 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#28a4c9}.btn-info:focus,.btn-info:hover{background-color:#2aabd2;background-position:0 -15px}.btn-info.active,.btn-info:active{background-color:#2aabd2;border-color:#28a4c9}.btn-info.disabled,.btn-info.disabled.active,.btn-info.disabled.focus,.btn-info.disabled:active,.btn-info.disabled:focus,.btn-info.disabled:hover,.btn-info[disabled],.btn-info[disabled].active,.btn-info[disabled].focus,.btn-info[disabled]:active,.btn-info[disabled]:focus,.btn-info[disabled]:hover,fieldset[disabled] .btn-info,fieldset[disabled] .btn-info.active,fieldset[disabled] .btn-info.focus,fieldset[disabled] .btn-info:active,fieldset[disabled] .btn-info:focus,fieldset[disabled] .btn-info:hover{background-color:#2aabd2;background-image:none}.btn-warning{background-image:-webkit-linear-gradient(top,#f0ad4e 0,#eb9316 100%);background-image:-o-linear-gradient(top,#f0ad4e 0,#eb9316 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f0ad4e),to(#eb9316));background-image:linear-gradient(to bottom,#f0ad4e 0,#eb9316 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#e38d13}.btn-warning:focus,.btn-warning:hover{background-color:#eb9316;background-position:0 -15px}.btn-warning.active,.btn-warning:active{background-color:#eb9316;border-color:#e38d13}.btn-warning.disabled,.btn-warning.disabled.active,.btn-warning.disabled.focus,.btn-warning.disabled:active,.btn-warning.disabled:focus,.btn-warning.disabled:hover,.btn-warning[disabled],.btn-warning[disabled].active,.btn-warning[disabled].focus,.btn-warning[disabled]:active,.btn-warning[disabled]:focus,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning,fieldset[disabled] .btn-warning.active,fieldset[disabled] .btn-warning.focus,fieldset[disabled] .btn-warning:active,fieldset[disabled] .btn-warning:focus,fieldset[disabled] .btn-warning:hover{background-color:#eb9316;background-image:none}.btn-danger{background-image:-webkit-linear-gradient(top,#d9534f 0,#c12e2a 100%);background-image:-o-linear-gradient(top,#d9534f 0,#c12e2a 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9534f),to(#c12e2a));background-image:linear-gradient(to bottom,#d9534f 0,#c12e2a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc12e2a', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#b92c28}.btn-danger:focus,.btn-danger:hover{background-color:#c12e2a;background-position:0 -15px}.btn-danger.active,.btn-danger:active{background-color:#c12e2a;border-color:#b92c28}.btn-danger.disabled,.btn-danger.disabled.active,.btn-danger.disabled.focus,.btn-danger.disabled:active,.btn-danger.disabled:focus,.btn-danger.disabled:hover,.btn-danger[disabled],.btn-danger[disabled].active,.btn-danger[disabled].focus,.btn-danger[disabled]:active,.btn-danger[disabled]:focus,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger,fieldset[disabled] .btn-danger.active,fieldset[disabled] .btn-danger.focus,fieldset[disabled] .btn-danger:active,fieldset[disabled] .btn-danger:focus,fieldset[disabled] .btn-danger:hover{background-color:#c12e2a;background-image:none}.img-thumbnail,.thumbnail{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.075);box-shadow:0 1px 2px rgba(0,0,0,.075)}.dropdown-menu>li>a:focus,.dropdown-menu>li>a:hover{background-color:#e8e8e8;background-image:-webkit-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-o-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#e8e8e8));background-image:linear-gradient(to bottom,#f5f5f5 0,#e8e8e8 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);background-repeat:repeat-x}.dropdown-menu>.active>a,.dropdown-menu>.active>a:focus,.dropdown-menu>.active>a:hover{background-color:#2e6da4;background-image:-webkit-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2e6da4));background-image:linear-gradient(to bottom,#337ab7 0,#2e6da4 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);background-repeat:repeat-x}.navbar-default{background-image:-webkit-linear-gradient(top,#fff 0,#f8f8f8 100%);background-image:-o-linear-gradient(top,#fff 0,#f8f8f8 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#f8f8f8));background-image:linear-gradient(to bottom,#fff 0,#f8f8f8 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-radius:4px;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 5px rgba(0,0,0,.075);box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 5px rgba(0,0,0,.075)}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.open>a{background-image:-webkit-linear-gradient(top,#dbdbdb 0,#e2e2e2 100%);background-image:-o-linear-gradient(top,#dbdbdb 0,#e2e2e2 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#dbdbdb),to(#e2e2e2));background-image:linear-gradient(to bottom,#dbdbdb 0,#e2e2e2 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdbdbdb', endColorstr='#ffe2e2e2', GradientType=0);background-repeat:repeat-x;-webkit-box-shadow:inset 0 3px 9px rgba(0,0,0,.075);box-shadow:inset 0 3px 9px rgba(0,0,0,.075)}.navbar-brand,.navbar-nav>li>a{text-shadow:0 1px 0 rgba(255,255,255,.25)}.navbar-inverse{background-image:-webkit-linear-gradient(top,#3c3c3c 0,#222 100%);background-image:-o-linear-gradient(top,#3c3c3c 0,#222 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#3c3c3c),to(#222));background-image:linear-gradient(to bottom,#3c3c3c 0,#222 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-radius:4px}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.open>a{background-image:-webkit-linear-gradient(top,#080808 0,#0f0f0f 100%);background-image:-o-linear-gradient(top,#080808 0,#0f0f0f 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#080808),to(#0f0f0f));background-image:linear-gradient(to bottom,#080808 0,#0f0f0f 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff080808', endColorstr='#ff0f0f0f', GradientType=0);background-repeat:repeat-x;-webkit-box-shadow:inset 0 3px 9px rgba(0,0,0,.25);box-shadow:inset 0 3px 9px rgba(0,0,0,.25)}.navbar-inverse .navbar-brand,.navbar-inverse .navbar-nav>li>a{text-shadow:0 -1px 0 rgba(0,0,0,.25)}.navbar-fixed-bottom,.navbar-fixed-top,.navbar-static-top{border-radius:0}@media (max-width:767px){.navbar .navbar-nav .open .dropdown-menu>.active>a,.navbar .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar .navbar-nav .open .dropdown-menu>.active>a:hover{color:#fff;background-image:-webkit-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2e6da4));background-image:linear-gradient(to bottom,#337ab7 0,#2e6da4 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);background-repeat:repeat-x}}.alert{text-shadow:0 1px 0 rgba(255,255,255,.2);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(0,0,0,.05);box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(0,0,0,.05)}.alert-success{background-image:-webkit-linear-gradient(top,#dff0d8 0,#c8e5bc 100%);background-image:-o-linear-gradient(top,#dff0d8 0,#c8e5bc 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#dff0d8),to(#c8e5bc));background-image:linear-gradient(to bottom,#dff0d8 0,#c8e5bc 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0);background-repeat:repeat-x;border-color:#b2dba1}.alert-info{background-image:-webkit-linear-gradient(top,#d9edf7 0,#b9def0 100%);background-image:-o-linear-gradient(top,#d9edf7 0,#b9def0 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9edf7),to(#b9def0));background-image:linear-gradient(to bottom,#d9edf7 0,#b9def0 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0);background-repeat:repeat-x;border-color:#9acfea}.alert-warning{background-image:-webkit-linear-gradient(top,#fcf8e3 0,#f8efc0 100%);background-image:-o-linear-gradient(top,#fcf8e3 0,#f8efc0 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fcf8e3),to(#f8efc0));background-image:linear-gradient(to bottom,#fcf8e3 0,#f8efc0 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0);background-repeat:repeat-x;border-color:#f5e79e}.alert-danger{background-image:-webkit-linear-gradient(top,#f2dede 0,#e7c3c3 100%);background-image:-o-linear-gradient(top,#f2dede 0,#e7c3c3 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f2dede),to(#e7c3c3));background-image:linear-gradient(to bottom,#f2dede 0,#e7c3c3 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0);background-repeat:repeat-x;border-color:#dca7a7}.progress{background-image:-webkit-linear-gradient(top,#ebebeb 0,#f5f5f5 100%);background-image:-o-linear-gradient(top,#ebebeb 0,#f5f5f5 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#f5f5f5));background-image:linear-gradient(to bottom,#ebebeb 0,#f5f5f5 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0);background-repeat:repeat-x}.progress-bar{background-image:-webkit-linear-gradient(top,#337ab7 0,#286090 100%);background-image:-o-linear-gradient(top,#337ab7 0,#286090 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#286090));background-image:linear-gradient(to bottom,#337ab7 0,#286090 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff286090', GradientType=0);background-repeat:repeat-x}.progress-bar-success{background-image:-webkit-linear-gradient(top,#5cb85c 0,#449d44 100%);background-image:-o-linear-gradient(top,#5cb85c 0,#449d44 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5cb85c),to(#449d44));background-image:linear-gradient(to bottom,#5cb85c 0,#449d44 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0);background-repeat:repeat-x}.progress-bar-info{background-image:-webkit-linear-gradient(top,#5bc0de 0,#31b0d5 100%);background-image:-o-linear-gradient(top,#5bc0de 0,#31b0d5 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5bc0de),to(#31b0d5));background-image:linear-gradient(to bottom,#5bc0de 0,#31b0d5 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0);background-repeat:repeat-x}.progress-bar-warning{background-image:-webkit-linear-gradient(top,#f0ad4e 0,#ec971f 100%);background-image:-o-linear-gradient(top,#f0ad4e 0,#ec971f 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f0ad4e),to(#ec971f));background-image:linear-gradient(to bottom,#f0ad4e 0,#ec971f 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0);background-repeat:repeat-x}.progress-bar-danger{background-image:-webkit-linear-gradient(top,#d9534f 0,#c9302c 100%);background-image:-o-linear-gradient(top,#d9534f 0,#c9302c 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9534f),to(#c9302c));background-image:linear-gradient(to bottom,#d9534f 0,#c9302c 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0);background-repeat:repeat-x}.progress-bar-striped{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.list-group{border-radius:4px;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.075);box-shadow:0 1px 2px rgba(0,0,0,.075)}.list-group-item.active,.list-group-item.active:focus,.list-group-item.active:hover{text-shadow:0 -1px 0 #286090;background-image:-webkit-linear-gradient(top,#337ab7 0,#2b669a 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2b669a 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2b669a));background-image:linear-gradient(to bottom,#337ab7 0,#2b669a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2b669a', GradientType=0);background-repeat:repeat-x;border-color:#2b669a}.list-group-item.active .badge,.list-group-item.active:focus .badge,.list-group-item.active:hover .badge{text-shadow:none}.panel{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.05);box-shadow:0 1px 2px rgba(0,0,0,.05)}.panel-default>.panel-heading{background-image:-webkit-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-o-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#e8e8e8));background-image:linear-gradient(to bottom,#f5f5f5 0,#e8e8e8 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);background-repeat:repeat-x}.panel-primary>.panel-heading{background-image:-webkit-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2e6da4));background-image:linear-gradient(to bottom,#337ab7 0,#2e6da4 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);background-repeat:repeat-x}.panel-success>.panel-heading{background-image:-webkit-linear-gradient(top,#dff0d8 0,#d0e9c6 100%);background-image:-o-linear-gradient(top,#dff0d8 0,#d0e9c6 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#dff0d8),to(#d0e9c6));background-image:linear-gradient(to bottom,#dff0d8 0,#d0e9c6 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0);background-repeat:repeat-x}.panel-info>.panel-heading{background-image:-webkit-linear-gradient(top,#d9edf7 0,#c4e3f3 100%);background-image:-o-linear-gradient(top,#d9edf7 0,#c4e3f3 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9edf7),to(#c4e3f3));background-image:linear-gradient(to bottom,#d9edf7 0,#c4e3f3 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0);background-repeat:repeat-x}.panel-warning>.panel-heading{background-image:-webkit-linear-gradient(top,#fcf8e3 0,#faf2cc 100%);background-image:-o-linear-gradient(top,#fcf8e3 0,#faf2cc 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fcf8e3),to(#faf2cc));background-image:linear-gradient(to bottom,#fcf8e3 0,#faf2cc 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0);background-repeat:repeat-x}.panel-danger>.panel-heading{background-image:-webkit-linear-gradient(top,#f2dede 0,#ebcccc 100%);background-image:-o-linear-gradient(top,#f2dede 0,#ebcccc 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f2dede),to(#ebcccc));background-image:linear-gradient(to bottom,#f2dede 0,#ebcccc 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0);background-repeat:repeat-x}.well{background-image:-webkit-linear-gradient(top,#e8e8e8 0,#f5f5f5 100%);background-image:-o-linear-gradient(top,#e8e8e8 0,#f5f5f5 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#e8e8e8),to(#f5f5f5));background-image:linear-gradient(to bottom,#e8e8e8 0,#f5f5f5 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0);background-repeat:repeat-x;border-color:#dcdcdc;-webkit-box-shadow:inset 0 1px 3px rgba(0,0,0,.05),0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 3px rgba(0,0,0,.05),0 1px 0 rgba(255,255,255,.1)} | ||
| 6 | /*# sourceMappingURL=bootstrap-theme.min.css.map */ | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
bootstrap/css/bootstrap-theme.min.css.map
0 → 100644
| 1 | {"version":3,"sources":["less/theme.less","less/mixins/vendor-prefixes.less","less/mixins/gradients.less","less/mixins/reset-filter.less"],"names":[],"mappings":"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"} | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
bootstrap/css/bootstrap.css
0 → 100644
This diff could not be displayed because it is too large.
bootstrap/css/bootstrap.css.map
0 → 100644
This diff could not be displayed because it is too large.
bootstrap/css/bootstrap.min.css
0 → 100644
This diff could not be displayed because it is too large.
bootstrap/css/bootstrap.min.css.map
0 → 100644
| 1 | {"version":3,"sources":["less/normalize.less","less/print.less","bootstrap.css","dist/css/bootstrap.css","less/glyphicons.less","less/scaffolding.less","less/mixins/vendor-prefixes.less","less/mixins/tab-focus.less","less/mixins/image.less","less/type.less","less/mixins/text-emphasis.less","less/mixins/background-variant.less","less/mixins/text-overflow.less","less/code.less","less/grid.less","less/mixins/grid.less","less/mixins/grid-framework.less","less/tables.less","less/mixins/table-row.less","less/forms.less","less/mixins/forms.less","less/buttons.less","less/mixins/buttons.less","less/mixins/opacity.less","less/component-animations.less","less/dropdowns.less","less/mixins/nav-divider.less","less/mixins/reset-filter.less","less/button-groups.less","less/mixins/border-radius.less","less/input-groups.less","less/navs.less","less/navbar.less","less/mixins/nav-vertical-align.less","less/utilities.less","less/breadcrumbs.less","less/pagination.less","less/mixins/pagination.less","less/pager.less","less/labels.less","less/mixins/labels.less","less/badges.less","less/jumbotron.less","less/thumbnails.less","less/alerts.less","less/mixins/alerts.less","less/progress-bars.less","less/mixins/gradients.less","less/mixins/progress-bar.less","less/media.less","less/list-group.less","less/mixins/list-group.less","less/panels.less","less/mixins/panels.less","less/responsive-embed.less","less/wells.less","less/close.less","less/modals.less","less/tooltip.less","less/mixins/reset-text.less","less/popovers.less","less/carousel.less","less/mixins/clearfix.less","less/mixins/center-block.less","less/mixins/hide-text.less","less/responsive-utilities.less","less/mixins/responsive-visibility.less"],"names":[],"mappings":"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DG,edkkDH,MAAA,aclkDG,edqkDH,MAAA,acrkDG,edwkDH,MAAA,IcxkDG,ed2kDH,MAAA,ac3kDG,ed8kDH,MAAA,ac9kDG,edilDH,MAAA,IcjlDG,edolDH,MAAA,ac/kDG,edklDH,MAAA,YcjmDG,edomDH,MAAA,KcpmDG,gBdumDH,KAAA,KcvmDG,gBd0mDH,KAAA,ac1mDG,gBd6mDH,KAAA,ac7mDG,edgnDH,KAAA,IchnDG,edmnDH,KAAA,acnnDG,edsnDH,KAAA,actnDG,edynDH,KAAA,IcznDG,ed4nDH,KAAA,ac5nDG,ed+nDH,KAAA,ac/nDG,edkoDH,KAAA,IcloDG,edqoDH,KAAA,achoDG,edmoDH,KAAA,YcpnDG,edunDH,KAAA,KcvnDG,kBd0nDH,YAAA,Kc1nDG,kBd6nDH,YAAA,ac7nDG,kBdgoDH,YAAA,achoDG,iBdmoDH,YAAA,IcnoDG,iBdsoDH,YAAA,actoDG,iBdyoDH,YAAA,aczoDG,iBd4oDH,YAAA,Ic5oDG,iBd+oDH,YAAA,ac/oDG,iBdkpDH,YAAA,aclpDG,iBdqpDH,YAAA,IcrpDG,iBdwpDH,YAAA,acxpDG,iBd2pDH,YAAA,Yc7rDG,iBACE,YAAA,EAOJ,yBACE,UAAA,WAAA,WAAA,WAAA,UAAA,UAAA,UAAA,UAAA,UAAA,UAAA,UAAA,Ud2rDD,MAAA,Kc3rDC,Wd8rDD,MAAA,Kc9rDC,WdisDD,MAAA,acjsDC,WdosDD,MAAA,acpsDC,UdusDD,MAAA,IcvsDC,Ud0sDD,MAAA,ac1sDC,Ud6sDD,MAAA,ac7sDC,UdgtDD,MAAA,IchtDC,UdmtDD,MAAA,acntDC,UdstDD,MAAA,acttDC,UdytDD,MAAA,IcztDC,Ud4tDD,MAAA,ac7sDC,UdgtDD,MAAA,YchtDC,gBdmtDD,MAAA,KcntDC,gBdstDD,MAAA,acttDC,gBdytDD,MAAA,acztDC,ed4tDD,MAAA,Ic5tDC,ed+tDD,MAAA,ac/tDC,edkuDD,MAAA,acluDC,edquDD,MAAA,IcruDC,edwuDD,MAAA,acxuDC,ed2uDD,MAAA,ac3uDC,ed8uDD,MAAA,Ic9uDC,edivDD,MAAA,ac5uDC,ed+uDD,MAAA,Yc9vDC,ediwDD,MAAA,KcjwDC,gBdowDD,KAAA,KcpwDC,gBduwDD,KAAA,acvwDC,gBd0wDD,KAAA,ac1wDC,ed6wDD,KAAA,Ic7wDC,edgxDD,KAAA,achxDC,edmxDD,KAAA,acnxDC,edsxDD,KAAA,IctxDC,edyxDD,KAAA,aczxDC,ed4xDD,KAAA,ac5xDC,ed+xDD,KAAA,Ic/xDC,edkyDD,KAAA,ac7xDC,edgyDD,KAAA,YcjxDC,edoxDD,KAAA,KcpxDC,kBduxDD,YAAA,KcvxDC,kBd0xDD,YAAA,ac1xDC,kBd6xDD,YAAA,ac7xDC,iBdgyDD,YAAA,IchyDC,iBdmyDD,YAAA,acnyDC,iBdsyDD,YAAA,actyDC,iBdyyDD,YAAA,IczyDC,iBd4yDD,YAAA,ac5yDC,iBd+yDD,YAAA,ac/yDC,iBdkzDD,YAAA,IclzDC,iBdqzDD,YAAA,acrzDC,iBdwzDD,YAAA,YY/yDD,iBE3CE,YAAA,GAQF,yBACE,UAAA,WAAA,WAAA,WAAA,UAAA,UAAA,UAAA,UAAA,UAAA,UAAA,UAAA,Udy1DD,MAAA,Kcz1DC,Wd41DD,MAAA,Kc51DC,Wd+1DD,MAAA,ac/1DC,Wdk2DD,MAAA,acl2DC,Udq2DD,MAAA,Icr2DC,Udw2DD,MAAA,acx2DC,Ud22DD,MAAA,ac32DC,Ud82DD,MAAA,Ic92DC,Udi3DD,MAAA,acj3DC,Udo3DD,MAAA,acp3DC,Udu3DD,MAAA,Icv3DC,Ud03DD,MAAA,ac32DC,Ud82DD,MAAA,Yc92DC,gBdi3DD,MAAA,Kcj3DC,gBdo3DD,MAAA,acp3DC,gBdu3DD,MAAA,acv3DC,ed03DD,MAAA,Ic13DC,ed63DD,MAAA,ac73DC,edg4DD,MAAA,ach4DC,edm4DD,MAAA,Icn4DC,eds4DD,MAAA,act4DC,edy4DD,MAAA,acz4DC,ed44DD,MAAA,Ic54DC,ed+4DD,MAAA,ac14DC,ed64DD,MAAA,Yc55DC,ed+5DD,MAAA,Kc/5DC,gBdk6DD,KAAA,Kcl6DC,gBdq6DD,KAAA,acr6DC,gBdw6DD,KAAA,acx6DC,ed26DD,KAAA,Ic36DC,ed86DD,KAAA,ac96DC,edi7DD,KAAA,acj7DC,edo7DD,KAAA,Icp7DC,edu7DD,KAAA,acv7DC,ed07DD,KAAA,ac17DC,ed67DD,KAAA,Ic77DC,edg8DD,KAAA,ac37DC,ed87DD,KAAA,Yc/6DC,edk7DD,KAAA,Kcl7DC,kBdq7DD,YAAA,Kcr7DC,kBdw7DD,YAAA,acx7DC,kBd27DD,YAAA,ac37DC,iBd87DD,YAAA,Ic97DC,iBdi8DD,YAAA,acj8DC,iBdo8DD,YAAA,acp8DC,iBdu8DD,YAAA,Icv8DC,iBd08DD,YAAA,ac18DC,iBd68DD,YAAA,ac78DC,iBdg9DD,YAAA,Ich9DC,iBdm9DD,YAAA,acn9DC,iBds9DD,YAAA,YY18DD,iBE9CE,YAAA,GAQF,0BACE,UAAA,WAAA,WAAA,WAAA,UAAA,UAAA,UAAA,UAAA,UAAA,UAAA,UAAA,Udu/DD,MAAA,Kcv/DC,Wd0/DD,MAAA,Kc1/DC,Wd6/DD,MAAA,ac7/DC,WdggED,MAAA,achgEC,UdmgED,MAAA,IcngEC,UdsgED,MAAA,actgEC,UdygED,MAAA,aczgEC,Ud4gED,MAAA,Ic5gEC,Ud+gED,MAAA,ac/gEC,UdkhED,MAAA,aclhEC,UdqhED,MAAA,IcrhEC,UdwhED,MAAA,aczgEC,Ud4gED,MAAA,Yc5gEC,gBd+gED,MAAA,Kc/gEC,gBdkhED,MAAA,aclhEC,gBdqhED,MAAA,acrhEC,edwhED,MAAA,IcxhEC,ed2hED,MAAA,ac3hEC,ed8hED,MAAA,ac9hEC,ediiED,MAAA,IcjiEC,edoiED,MAAA,acpiEC,eduiED,MAAA,acviEC,ed0iED,MAAA,Ic1iEC,ed6iED,MAAA,acxiEC,ed2iED,MAAA,Yc1jEC,ed6jED,MAAA,Kc7jEC,gBdgkED,KAAA,KchkEC,gBdmkED,KAAA,acnkEC,gBdskED,KAAA,actkEC,edykED,KAAA,IczkEC,ed4kED,KAAA,ac5kEC,ed+kED,KAAA,ac/kEC,edklED,KAAA,IcllEC,edqlED,KAAA,acrlEC,edwlED,KAAA,acxlEC,ed2lED,KAAA,Ic3lEC,ed8lED,KAAA,aczlEC,ed4lED,KAAA,Yc7kEC,e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pC,cAGA,ejB8DA,wBACQ,OAAA,YJ65FT,OAAA,kBmB56FG,mBAAA,KlBw7FM,WAAY,KkBt7FhB,QAAA,IASN,eC3DE,yBACA,eAAA,KpBo+FD,aoBj+FC,MAAA,KnB6+FA,iBAAkB,KmB3+FhB,aAAA,KpBq+FH,mBoBn+FO,mBAEN,MAAA,KACE,iBAAA,QACA,aAAA,QpBo+FH,mBoBj+FC,MAAA,KnB6+FA,iBAAkB,QAClB,aAAc,QmBz+FR,oBADJ,oBpBo+FH,mCoBj+FG,MAAA,KnB6+FF,iBAAkB,QAClB,aAAc,QmBz+FN,0BnB++FV,0BAHA,0BmB7+FM,0BnB++FN,0BAHA,0BDFC,yCoB3+FK,yCnB++FN,yCmB1+FE,MAAA,KnBk/FA,iBAAkB,QAClB,aAAc,QmB3+FZ,oBpBm+FH,oBoBn+FG,mCnBg/FF,iBAAkB,KmB5+FV,4BnBi/FV,4BAHA,4BDHC,6BCOD,6BAHA,6BkB99FA,sCClBM,sCnBi/FN,sCmB3+FI,iBAAA,KACA,aAAA,KDcJ,oBC9DE,MAAA,KACA,iBAAA,KpB6hGD,aoB1hGC,MAAA,KnBsiGA,iBAAkB,QmBpiGhB,aAAA,QpB8hGH,mBoB5hGO,mBAEN,MAAA,KACE,iBAAA,QACA,aAAA,QpB6hGH,mBoB1hGC,MAAA,KnBsiGA,iBAAkB,QAClB,aAAc,QmBliGR,oBADJ,oBpB6hGH,mCoB1hGG,MAAA,KnBsiGF,iBAAkB,QAClB,aAAc,QmBliGN,0BnBwiGV,0BAHA,0BmBtiGM,0BnBwiGN,0BAHA,0BDFC,yCoBpiGK,yCnBwiGN,yCmBniGE,MAAA,KnB2iGA,iBAAkB,QAClB,aAAc,QmBpiGZ,oBpB4hGH,oBoB5hGG,mCnByiGF,iBAAkB,KmBriGV,4BnB0iGV,4BAHA,4BDHC,6BCOD,6BAHA,6BkBphGA,sCCrBM,sCnB0iGN,sCmBpiGI,iBAAA,QACA,aAAA,QDkBJ,oBClEE,MAAA,QACA,iBAAA,KpBslGD,aoBnlGC,MAAA,KnB+lGA,iBAAkB,QmB7lGhB,aAAA,QpBulGH,mBoBrlGO,mBAEN,MAAA,KACE,iBAAA,QACA,aAAA,QpBslGH,mBoBnlGC,MAAA,KnB+lGA,iBAAkB,QAClB,aAAc,QmB3lGR,oBADJ,oBpBslGH,mCoBnlGG,MAAA,KnB+lGF,iBAAkB,QAClB,aAAc,QmB3lGN,0BnBimGV,0BAHA,0BmB/lGM,0BnBimGN,0BAHA,0BDFC,yCoB7lGK,yCnBimGN,yCmB5lGE,MAAA,KnBomGA,iBAAkB,QAClB,aAAc,QmB7lGZ,oBpBqlGH,oBoBrlGG,mCnBkmGF,iBAAkB,KmB9lGV,4BnBmmGV,4BAHA,4BDHC,6BCOD,6BAHA,6BkBzkGA,sCCzBM,sCnBmmGN,sCmB7lGI,iBAAA,QACA,aAAA,QDsBJ,oBCtEE,MAAA,QACA,iBAAA,KpB+oGD,UoB5oGC,MAAA,KnBwpGA,iBAAkB,QmBtpGhB,aAAA,QpBgpGH,gBoB9oGO,gBAEN,MAAA,KACE,iBAAA,QACA,aAAA,QpB+oGH,gBoB5oGC,MAAA,KnBwpGA,iBAAkB,QAClB,aAAc,QmBppGR,iBADJ,iBpB+oGH,gCoB5oGG,MAAA,KnBwpGF,iBAAkB,QAClB,aAAc,QmBppGN,uBnB0pGV,uBAHA,uBmBxpGM,uBnB0pGN,uBAHA,uBDFC,sCoBtpGK,sCnB0pGN,sCmBrpGE,MAAA,KnB6pGA,iBAAkB,QAClB,aAAc,QmBtpGZ,iBpB8oGH,iBoB9oGG,gCnB2pGF,iBAAkB,KmBvpGV,yBnB4pGV,yBAHA,yBDHC,0BCOD,0BAHA,0BkB9nGA,mCC7BM,mCnB4pGN,mCmBtpGI,iBAAA,QACA,aAAA,QD0BJ,iBC1EE,MAAA,QACA,iBAAA,KpBwsGD,aoBrsGC,MAAA,KnBitGA,iBAAkB,QmB/sGhB,aAAA,QpBysGH,mBoBvsGO,mBAEN,MAAA,KACE,iBAAA,QACA,aAAA,QpBwsGH,mBoBrsGC,MAAA,KnBitGA,iBAAkB,QAClB,aAAc,QmB7sGR,oBADJ,oBpBwsGH,mCoBrsGG,MAAA,KnBitGF,iBAAkB,QAClB,aAAc,QmB7sGN,0BnBmtGV,0BAHA,0BmBjtGM,0BnBmtGN,0BAHA,0BDFC,yCoB/sGK,yCnBmtGN,yCmB9sGE,MAAA,KnBstGA,iBAAkB,QAClB,aAAc,QmB/sGZ,oBpBusGH,oBoBvsGG,mCnBotGF,iBAAkB,KmBh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mBAKJ,qBAEE,MAAA,QvBvCA,cACC,QAAA,KAAA,K3By0KF,iBAAA,QkDxxKC,WAAY,IAAI,MAAM,KjDozKtB,2BAA4B,IiDjzK1B,0BAAA,IAHJ,mBAAA,mCAMM,cAAA,ElD2xKL,oCkDtxKG,oDjDkzKF,aAAc,IAAI,EiDhzKZ,cAAA,EvBtEL,4D3Bg2KF,4EkDpxKG,WAAA,EjDgzKF,uBAAwB,IiD9yKlB,wBAAA,IvBtEL,0D3B81KF,0EkD7yKC,cAAe,EvB1Df,2BAAA,IACC,0BAAA,IuB0FH,+EAEI,uBAAA,ElDixKH,wBAAA,EkD7wKC,wDlDgxKD,iBAAA,EC4BD,0BACE,iBAAkB,EiDryKpB,8BlD6wKC,ckD7wKD,gCjD0yKE,cAAe,EiD1yKjB,sCAQM,sBlD2wKL,wCC4BC,cAAe,K0Bx5Kf,aAAA,KuByGF,wDlDwxKC,0BC4BC,uBAAwB,IACxB,wBAAyB,IiDrzK3B,yFAoBQ,yFlD2wKP,2DkD5wKO,2DjDwyKN,uBAAwB,IACxB,wBAAyB,IAK3B,wGiDj0KA,wGjD+zKA,wGDtBC,wGCuBD,0EiDh0KA,0EjD8zKA,0EiDtyKU,0EjD8yKR,uBAAwB,IAK1B,uGiD30KA,uGjDy0KA,uGDtBC,uGCuBD,yEiD10KA,yEjDw0KA,yEiD5yKU,yEvB7HR,wBAAA,IuBiGF,sDlDwzKC,yBC4BC,2BAA4B,IAC5B,0BAA2B,IiD3yKrB,qFA1CR,qFAyCQ,wDlDsxKP,wDC4BC,2BAA4B,IAC5B,0BAA2B,IAG7B,oGDtBC,oGCwBD,oGiDj2KA,oGjD81KA,uEiDhzKU,uEjDkzKV,uEiDh2KA,uEjDs2KE,0BAA2B,IAG7B,mGDtBC,mGCwBD,mGiD32KA,mGjDw2KA,sEiDtzKU,sEjDwzKV,sEiD12KA,sEjDg3KE,2BAA4B,IiDrzK1B,0BlD8xKH,qCkDz1KD,0BAAA,qCA+DI,WAAA,IAAA,MAAA,KA/DJ,kDAAA,kDAmEI,WAAA,EAnEJ,uBAAA,yCjD83KE,OAAQ,EiDpzKA,+CjDwzKV,+CiDl4KA,+CjDo4KA,+CAEA,+CANA,+CDjBC,iECoBD,iEiDn4KA,iEjDq4KA,iEAEA,iEANA,iEAWE,YAAa,EiD9zKL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1MG,QAAS,oB/Dm2MV,c+Dr2MC,c/Ds2MH,QAAA,sB+Dj2MG,yB/Dq2MD,kBACF,QAAA,iB+Dj2MG,yB/Dq2MD,mBACF,QAAA,kBgEn6MC,yBhEu6MC,yBgEt6MD,QAAA,wBACA,+CAAU,YhE26MT,QAAA,gBC4BD,iB+Dr8MU,QAAA,gBhE86MX,c+Dx2MG,QAAS,oB/D42MV,c+D92MC,c/D+2MH,QAAA,sB+D12MG,+C/D82MD,kBACF,QAAA,iB+D12MG,+C/D82MD,mBACF,QAAA,kBgEj8MC,+ChEq8MC,yBgEp8MD,QAAA,wBACA,gDAAU,YhEy8MT,QAAA,gBC4BD,iB+Dn+MU,QAAA,gBhE48MX,c+Dj3MG,QAAS,oB/Dq3MV,c+Dv3MC,c/Dw3MH,QAAA,sB+Dn3MG,gD/Du3MD,kBACF,QAAA,iB+Dn3MG,gD/Du3MD,mBACF,QAAA,kBgE/9MC,gDhEm+MC,yBgEl+MD,QAAA,wBACA,0BAAU,YhEu+MT,QAAA,gBC4BD,iB+DjgNU,QAAA,gBhE0+MX,c+D13MG,QAAS,oB/D83MV,c+Dh4MC,c/Di4MH,QAAA,sB+D53MG,0B/Dg4MD,kBACF,QAAA,iB+D53MG,0B/Dg4MD,mBACF,QAAA,kBgEr/MC,0BhEy/MC,yBACF,QAAA,wBgE1/MC,yBhE8/MC,WACF,QAAA,gBgE//MC,+ChEmgNC,WACF,QAAA,gBgEpgNC,gDhEwgNC,WACF,QAAA,gBAGA,0B+Dn3MC,WA4BE,QAAS,gBC5LX,eAAU,QAAA,eACV,aAAU,ehE4hNT,QAAA,gBC4BD,oB+DtjNU,QAAA,gBhE+hNX,iB+Dj4MG,QAAS,oBAMX,iB/D83MD,iB+Dz2MG,QAAS,sB/D82MZ,qB+Dl4MC,QAAS,e/Dq4MV,a+D/3MC,qBAcE,QAAS,iB/Ds3MZ,sB+Dn4MC,QAAS,e/Ds4MV,a+Dh4MC,sBAOE,QAAS,kB/D83MZ,4B+D/3MC,QAAS,eCpLT,ahEujNC,4BACF,QAAA,wBC6BD,aACE,cACE,QAAS"} | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
No preview for this file type
This diff could not be displayed because it is too large.
No preview for this file type
No preview for this file type
No preview for this file type
bootstrap/js/bootstrap.js
0 → 100644
| 1 | /*! | ||
| 2 | * Bootstrap v3.3.6 (http://getbootstrap.com) | ||
| 3 | * Copyright 2011-2015 Twitter, Inc. | ||
| 4 | * Licensed under the MIT license | ||
| 5 | */ | ||
| 6 | |||
| 7 | if (typeof jQuery === 'undefined') { | ||
| 8 | throw new Error('Bootstrap\'s JavaScript requires jQuery') | ||
| 9 | } | ||
| 10 | |||
| 11 | +function ($) { | ||
| 12 | 'use strict'; | ||
| 13 | var version = $.fn.jquery.split(' ')[0].split('.') | ||
| 14 | if ((version[0] < 2 && version[1] < 9) || (version[0] == 1 && version[1] == 9 && version[2] < 1) || (version[0] > 2)) { | ||
| 15 | throw new Error('Bootstrap\'s JavaScript requires jQuery version 1.9.1 or higher, but lower than version 3') | ||
| 16 | } | ||
| 17 | }(jQuery); | ||
| 18 | |||
| 19 | /* ======================================================================== | ||
| 20 | * Bootstrap: transition.js v3.3.6 | ||
| 21 | * http://getbootstrap.com/javascript/#transitions | ||
| 22 | * ======================================================================== | ||
| 23 | * Copyright 2011-2015 Twitter, Inc. | ||
| 24 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) | ||
| 25 | * ======================================================================== */ | ||
| 26 | |||
| 27 | |||
| 28 | +function ($) { | ||
| 29 | 'use strict'; | ||
| 30 | |||
| 31 | // CSS TRANSITION SUPPORT (Shoutout: http://www.modernizr.com/) | ||
| 32 | // ============================================================ | ||
| 33 | |||
| 34 | function transitionEnd() { | ||
| 35 | var el = document.createElement('bootstrap') | ||
| 36 | |||
| 37 | var transEndEventNames = { | ||
| 38 | WebkitTransition : 'webkitTransitionEnd', | ||
| 39 | MozTransition : 'transitionend', | ||
| 40 | OTransition : 'oTransitionEnd otransitionend', | ||
| 41 | transition : 'transitionend' | ||
| 42 | } | ||
| 43 | |||
| 44 | for (var name in transEndEventNames) { | ||
| 45 | if (el.style[name] !== undefined) { | ||
| 46 | return { end: transEndEventNames[name] } | ||
| 47 | } | ||
| 48 | } | ||
| 49 | |||
| 50 | return false // explicit for ie8 ( ._.) | ||
| 51 | } | ||
| 52 | |||
| 53 | // http://blog.alexmaccaw.com/css-transitions | ||
| 54 | $.fn.emulateTransitionEnd = function (duration) { | ||
| 55 | var called = false | ||
| 56 | var $el = this | ||
| 57 | $(this).one('bsTransitionEnd', function () { called = true }) | ||
| 58 | var callback = function () { if (!called) $($el).trigger($.support.transition.end) } | ||
| 59 | setTimeout(callback, duration) | ||
| 60 | return this | ||
| 61 | } | ||
| 62 | |||
| 63 | $(function () { | ||
| 64 | $.support.transition = transitionEnd() | ||
| 65 | |||
| 66 | if (!$.support.transition) return | ||
| 67 | |||
| 68 | $.event.special.bsTransitionEnd = { | ||
| 69 | bindType: $.support.transition.end, | ||
| 70 | delegateType: $.support.transition.end, | ||
| 71 | handle: function (e) { | ||
| 72 | if ($(e.target).is(this)) return e.handleObj.handler.apply(this, arguments) | ||
| 73 | } | ||
| 74 | } | ||
| 75 | }) | ||
| 76 | |||
| 77 | }(jQuery); | ||
| 78 | |||
| 79 | /* ======================================================================== | ||
| 80 | * Bootstrap: alert.js v3.3.6 | ||
| 81 | * http://getbootstrap.com/javascript/#alerts | ||
| 82 | * ======================================================================== | ||
| 83 | * Copyright 2011-2015 Twitter, Inc. | ||
| 84 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) | ||
| 85 | * ======================================================================== */ | ||
| 86 | |||
| 87 | |||
| 88 | +function ($) { | ||
| 89 | 'use strict'; | ||
| 90 | |||
| 91 | // ALERT CLASS DEFINITION | ||
| 92 | // ====================== | ||
| 93 | |||
| 94 | var dismiss = '[data-dismiss="alert"]' | ||
| 95 | var Alert = function (el) { | ||
| 96 | $(el).on('click', dismiss, this.close) | ||
| 97 | } | ||
| 98 | |||
| 99 | Alert.VERSION = '3.3.6' | ||
| 100 | |||
| 101 | Alert.TRANSITION_DURATION = 150 | ||
| 102 | |||
| 103 | Alert.prototype.close = function (e) { | ||
| 104 | var $this = $(this) | ||
| 105 | var selector = $this.attr('data-target') | ||
| 106 | |||
| 107 | if (!selector) { | ||
| 108 | selector = $this.attr('href') | ||
| 109 | selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') // strip for ie7 | ||
| 110 | } | ||
| 111 | |||
| 112 | var $parent = $(selector) | ||
| 113 | |||
| 114 | if (e) e.preventDefault() | ||
| 115 | |||
| 116 | if (!$parent.length) { | ||
| 117 | $parent = $this.closest('.alert') | ||
| 118 | } | ||
| 119 | |||
| 120 | $parent.trigger(e = $.Event('close.bs.alert')) | ||
| 121 | |||
| 122 | if (e.isDefaultPrevented()) return | ||
| 123 | |||
| 124 | $parent.removeClass('in') | ||
| 125 | |||
| 126 | function removeElement() { | ||
| 127 | // detach from parent, fire event then clean up data | ||
| 128 | $parent.detach().trigger('closed.bs.alert').remove() | ||
| 129 | } | ||
| 130 | |||
| 131 | $.support.transition && $parent.hasClass('fade') ? | ||
| 132 | $parent | ||
| 133 | .one('bsTransitionEnd', removeElement) | ||
| 134 | .emulateTransitionEnd(Alert.TRANSITION_DURATION) : | ||
| 135 | removeElement() | ||
| 136 | } | ||
| 137 | |||
| 138 | |||
| 139 | // ALERT PLUGIN DEFINITION | ||
| 140 | // ======================= | ||
| 141 | |||
| 142 | function Plugin(option) { | ||
| 143 | return this.each(function () { | ||
| 144 | var $this = $(this) | ||
| 145 | var data = $this.data('bs.alert') | ||
| 146 | |||
| 147 | if (!data) $this.data('bs.alert', (data = new Alert(this))) | ||
| 148 | if (typeof option == 'string') data[option].call($this) | ||
| 149 | }) | ||
| 150 | } | ||
| 151 | |||
| 152 | var old = $.fn.alert | ||
| 153 | |||
| 154 | $.fn.alert = Plugin | ||
| 155 | $.fn.alert.Constructor = Alert | ||
| 156 | |||
| 157 | |||
| 158 | // ALERT NO CONFLICT | ||
| 159 | // ================= | ||
| 160 | |||
| 161 | $.fn.alert.noConflict = function () { | ||
| 162 | $.fn.alert = old | ||
| 163 | return this | ||
| 164 | } | ||
| 165 | |||
| 166 | |||
| 167 | // ALERT DATA-API | ||
| 168 | // ============== | ||
| 169 | |||
| 170 | $(document).on('click.bs.alert.data-api', dismiss, Alert.prototype.close) | ||
| 171 | |||
| 172 | }(jQuery); | ||
| 173 | |||
| 174 | /* ======================================================================== | ||
| 175 | * Bootstrap: button.js v3.3.6 | ||
| 176 | * http://getbootstrap.com/javascript/#buttons | ||
| 177 | * ======================================================================== | ||
| 178 | * Copyright 2011-2015 Twitter, Inc. | ||
| 179 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) | ||
| 180 | * ======================================================================== */ | ||
| 181 | |||
| 182 | |||
| 183 | +function ($) { | ||
| 184 | 'use strict'; | ||
| 185 | |||
| 186 | // BUTTON PUBLIC CLASS DEFINITION | ||
| 187 | // ============================== | ||
| 188 | |||
| 189 | var Button = function (element, options) { | ||
| 190 | this.$element = $(element) | ||
| 191 | this.options = $.extend({}, Button.DEFAULTS, options) | ||
| 192 | this.isLoading = false | ||
| 193 | } | ||
| 194 | |||
| 195 | Button.VERSION = '3.3.6' | ||
| 196 | |||
| 197 | Button.DEFAULTS = { | ||
| 198 | loadingText: 'loading...' | ||
| 199 | } | ||
| 200 | |||
| 201 | Button.prototype.setState = function (state) { | ||
| 202 | var d = 'disabled' | ||
| 203 | var $el = this.$element | ||
| 204 | var val = $el.is('input') ? 'val' : 'html' | ||
| 205 | var data = $el.data() | ||
| 206 | |||
| 207 | state += 'Text' | ||
| 208 | |||
| 209 | if (data.resetText == null) $el.data('resetText', $el[val]()) | ||
| 210 | |||
| 211 | // push to event loop to allow forms to submit | ||
| 212 | setTimeout($.proxy(function () { | ||
| 213 | $el[val](data[state] == null ? this.options[state] : data[state]) | ||
| 214 | |||
| 215 | if (state == 'loadingText') { | ||
| 216 | this.isLoading = true | ||
| 217 | $el.addClass(d).attr(d, d) | ||
| 218 | } else if (this.isLoading) { | ||
| 219 | this.isLoading = false | ||
| 220 | $el.removeClass(d).removeAttr(d) | ||
| 221 | } | ||
| 222 | }, this), 0) | ||
| 223 | } | ||
| 224 | |||
| 225 | Button.prototype.toggle = function () { | ||
| 226 | var changed = true | ||
| 227 | var $parent = this.$element.closest('[data-toggle="buttons"]') | ||
| 228 | |||
| 229 | if ($parent.length) { | ||
| 230 | var $input = this.$element.find('input') | ||
| 231 | if ($input.prop('type') == 'radio') { | ||
| 232 | if ($input.prop('checked')) changed = false | ||
| 233 | $parent.find('.active').removeClass('active') | ||
| 234 | this.$element.addClass('active') | ||
| 235 | } else if ($input.prop('type') == 'checkbox') { | ||
| 236 | if (($input.prop('checked')) !== this.$element.hasClass('active')) changed = false | ||
| 237 | this.$element.toggleClass('active') | ||
| 238 | } | ||
| 239 | $input.prop('checked', this.$element.hasClass('active')) | ||
| 240 | if (changed) $input.trigger('change') | ||
| 241 | } else { | ||
| 242 | this.$element.attr('aria-pressed', !this.$element.hasClass('active')) | ||
| 243 | this.$element.toggleClass('active') | ||
| 244 | } | ||
| 245 | } | ||
| 246 | |||
| 247 | |||
| 248 | // BUTTON PLUGIN DEFINITION | ||
| 249 | // ======================== | ||
| 250 | |||
| 251 | function Plugin(option) { | ||
| 252 | return this.each(function () { | ||
| 253 | var $this = $(this) | ||
| 254 | var data = $this.data('bs.button') | ||
| 255 | var options = typeof option == 'object' && option | ||
| 256 | |||
| 257 | if (!data) $this.data('bs.button', (data = new Button(this, options))) | ||
| 258 | |||
| 259 | if (option == 'toggle') data.toggle() | ||
| 260 | else if (option) data.setState(option) | ||
| 261 | }) | ||
| 262 | } | ||
| 263 | |||
| 264 | var old = $.fn.button | ||
| 265 | |||
| 266 | $.fn.button = Plugin | ||
| 267 | $.fn.button.Constructor = Button | ||
| 268 | |||
| 269 | |||
| 270 | // BUTTON NO CONFLICT | ||
| 271 | // ================== | ||
| 272 | |||
| 273 | $.fn.button.noConflict = function () { | ||
| 274 | $.fn.button = old | ||
| 275 | return this | ||
| 276 | } | ||
| 277 | |||
| 278 | |||
| 279 | // BUTTON DATA-API | ||
| 280 | // =============== | ||
| 281 | |||
| 282 | $(document) | ||
| 283 | .on('click.bs.button.data-api', '[data-toggle^="button"]', function (e) { | ||
| 284 | var $btn = $(e.target) | ||
| 285 | if (!$btn.hasClass('btn')) $btn = $btn.closest('.btn') | ||
| 286 | Plugin.call($btn, 'toggle') | ||
| 287 | if (!($(e.target).is('input[type="radio"]') || $(e.target).is('input[type="checkbox"]'))) e.preventDefault() | ||
| 288 | }) | ||
| 289 | .on('focus.bs.button.data-api blur.bs.button.data-api', '[data-toggle^="button"]', function (e) { | ||
| 290 | $(e.target).closest('.btn').toggleClass('focus', /^focus(in)?$/.test(e.type)) | ||
| 291 | }) | ||
| 292 | |||
| 293 | }(jQuery); | ||
| 294 | |||
| 295 | /* ======================================================================== | ||
| 296 | * Bootstrap: carousel.js v3.3.6 | ||
| 297 | * http://getbootstrap.com/javascript/#carousel | ||
| 298 | * ======================================================================== | ||
| 299 | * Copyright 2011-2015 Twitter, Inc. | ||
| 300 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) | ||
| 301 | * ======================================================================== */ | ||
| 302 | |||
| 303 | |||
| 304 | +function ($) { | ||
| 305 | 'use strict'; | ||
| 306 | |||
| 307 | // CAROUSEL CLASS DEFINITION | ||
| 308 | // ========================= | ||
| 309 | |||
| 310 | var Carousel = function (element, options) { | ||
| 311 | this.$element = $(element) | ||
| 312 | this.$indicators = this.$element.find('.carousel-indicators') | ||
| 313 | this.options = options | ||
| 314 | this.paused = null | ||
| 315 | this.sliding = null | ||
| 316 | this.interval = null | ||
| 317 | this.$active = null | ||
| 318 | this.$items = null | ||
| 319 | |||
| 320 | this.options.keyboard && this.$element.on('keydown.bs.carousel', $.proxy(this.keydown, this)) | ||
| 321 | |||
| 322 | this.options.pause == 'hover' && !('ontouchstart' in document.documentElement) && this.$element | ||
| 323 | .on('mouseenter.bs.carousel', $.proxy(this.pause, this)) | ||
| 324 | .on('mouseleave.bs.carousel', $.proxy(this.cycle, this)) | ||
| 325 | } | ||
| 326 | |||
| 327 | Carousel.VERSION = '3.3.6' | ||
| 328 | |||
| 329 | Carousel.TRANSITION_DURATION = 600 | ||
| 330 | |||
| 331 | Carousel.DEFAULTS = { | ||
| 332 | interval: 5000, | ||
| 333 | pause: 'hover', | ||
| 334 | wrap: true, | ||
| 335 | keyboard: true | ||
| 336 | } | ||
| 337 | |||
| 338 | Carousel.prototype.keydown = function (e) { | ||
| 339 | if (/input|textarea/i.test(e.target.tagName)) return | ||
| 340 | switch (e.which) { | ||
| 341 | case 37: this.prev(); break | ||
| 342 | case 39: this.next(); break | ||
| 343 | default: return | ||
| 344 | } | ||
| 345 | |||
| 346 | e.preventDefault() | ||
| 347 | } | ||
| 348 | |||
| 349 | Carousel.prototype.cycle = function (e) { | ||
| 350 | e || (this.paused = false) | ||
| 351 | |||
| 352 | this.interval && clearInterval(this.interval) | ||
| 353 | |||
| 354 | this.options.interval | ||
| 355 | && !this.paused | ||
| 356 | && (this.interval = setInterval($.proxy(this.next, this), this.options.interval)) | ||
| 357 | |||
| 358 | return this | ||
| 359 | } | ||
| 360 | |||
| 361 | Carousel.prototype.getItemIndex = function (item) { | ||
| 362 | this.$items = item.parent().children('.item') | ||
| 363 | return this.$items.index(item || this.$active) | ||
| 364 | } | ||
| 365 | |||
| 366 | Carousel.prototype.getItemForDirection = function (direction, active) { | ||
| 367 | var activeIndex = this.getItemIndex(active) | ||
| 368 | var willWrap = (direction == 'prev' && activeIndex === 0) | ||
| 369 | || (direction == 'next' && activeIndex == (this.$items.length - 1)) | ||
| 370 | if (willWrap && !this.options.wrap) return active | ||
| 371 | var delta = direction == 'prev' ? -1 : 1 | ||
| 372 | var itemIndex = (activeIndex + delta) % this.$items.length | ||
| 373 | return this.$items.eq(itemIndex) | ||
| 374 | } | ||
| 375 | |||
| 376 | Carousel.prototype.to = function (pos) { | ||
| 377 | var that = this | ||
| 378 | var activeIndex = this.getItemIndex(this.$active = this.$element.find('.item.active')) | ||
| 379 | |||
| 380 | if (pos > (this.$items.length - 1) || pos < 0) return | ||
| 381 | |||
| 382 | if (this.sliding) return this.$element.one('slid.bs.carousel', function () { that.to(pos) }) // yes, "slid" | ||
| 383 | if (activeIndex == pos) return this.pause().cycle() | ||
| 384 | |||
| 385 | return this.slide(pos > activeIndex ? 'next' : 'prev', this.$items.eq(pos)) | ||
| 386 | } | ||
| 387 | |||
| 388 | Carousel.prototype.pause = function (e) { | ||
| 389 | e || (this.paused = true) | ||
| 390 | |||
| 391 | if (this.$element.find('.next, .prev').length && $.support.transition) { | ||
| 392 | this.$element.trigger($.support.transition.end) | ||
| 393 | this.cycle(true) | ||
| 394 | } | ||
| 395 | |||
| 396 | this.interval = clearInterval(this.interval) | ||
| 397 | |||
| 398 | return this | ||
| 399 | } | ||
| 400 | |||
| 401 | Carousel.prototype.next = function () { | ||
| 402 | if (this.sliding) return | ||
| 403 | return this.slide('next') | ||
| 404 | } | ||
| 405 | |||
| 406 | Carousel.prototype.prev = function () { | ||
| 407 | if (this.sliding) return | ||
| 408 | return this.slide('prev') | ||
| 409 | } | ||
| 410 | |||
| 411 | Carousel.prototype.slide = function (type, next) { | ||
| 412 | var $active = this.$element.find('.item.active') | ||
| 413 | var $next = next || this.getItemForDirection(type, $active) | ||
| 414 | var isCycling = this.interval | ||
| 415 | var direction = type == 'next' ? 'left' : 'right' | ||
| 416 | var that = this | ||
| 417 | |||
| 418 | if ($next.hasClass('active')) return (this.sliding = false) | ||
| 419 | |||
| 420 | var relatedTarget = $next[0] | ||
| 421 | var slideEvent = $.Event('slide.bs.carousel', { | ||
| 422 | relatedTarget: relatedTarget, | ||
| 423 | direction: direction | ||
| 424 | }) | ||
| 425 | this.$element.trigger(slideEvent) | ||
| 426 | if (slideEvent.isDefaultPrevented()) return | ||
| 427 | |||
| 428 | this.sliding = true | ||
| 429 | |||
| 430 | isCycling && this.pause() | ||
| 431 | |||
| 432 | if (this.$indicators.length) { | ||
| 433 | this.$indicators.find('.active').removeClass('active') | ||
| 434 | var $nextIndicator = $(this.$indicators.children()[this.getItemIndex($next)]) | ||
| 435 | $nextIndicator && $nextIndicator.addClass('active') | ||
| 436 | } | ||
| 437 | |||
| 438 | var slidEvent = $.Event('slid.bs.carousel', { relatedTarget: relatedTarget, direction: direction }) // yes, "slid" | ||
| 439 | if ($.support.transition && this.$element.hasClass('slide')) { | ||
| 440 | $next.addClass(type) | ||
| 441 | $next[0].offsetWidth // force reflow | ||
| 442 | $active.addClass(direction) | ||
| 443 | $next.addClass(direction) | ||
| 444 | $active | ||
| 445 | .one('bsTransitionEnd', function () { | ||
| 446 | $next.removeClass([type, direction].join(' ')).addClass('active') | ||
| 447 | $active.removeClass(['active', direction].join(' ')) | ||
| 448 | that.sliding = false | ||
| 449 | setTimeout(function () { | ||
| 450 | that.$element.trigger(slidEvent) | ||
| 451 | }, 0) | ||
| 452 | }) | ||
| 453 | .emulateTransitionEnd(Carousel.TRANSITION_DURATION) | ||
| 454 | } else { | ||
| 455 | $active.removeClass('active') | ||
| 456 | $next.addClass('active') | ||
| 457 | this.sliding = false | ||
| 458 | this.$element.trigger(slidEvent) | ||
| 459 | } | ||
| 460 | |||
| 461 | isCycling && this.cycle() | ||
| 462 | |||
| 463 | return this | ||
| 464 | } | ||
| 465 | |||
| 466 | |||
| 467 | // CAROUSEL PLUGIN DEFINITION | ||
| 468 | // ========================== | ||
| 469 | |||
| 470 | function Plugin(option) { | ||
| 471 | return this.each(function () { | ||
| 472 | var $this = $(this) | ||
| 473 | var data = $this.data('bs.carousel') | ||
| 474 | var options = $.extend({}, Carousel.DEFAULTS, $this.data(), typeof option == 'object' && option) | ||
| 475 | var action = typeof option == 'string' ? option : options.slide | ||
| 476 | |||
| 477 | if (!data) $this.data('bs.carousel', (data = new Carousel(this, options))) | ||
| 478 | if (typeof option == 'number') data.to(option) | ||
| 479 | else if (action) data[action]() | ||
| 480 | else if (options.interval) data.pause().cycle() | ||
| 481 | }) | ||
| 482 | } | ||
| 483 | |||
| 484 | var old = $.fn.carousel | ||
| 485 | |||
| 486 | $.fn.carousel = Plugin | ||
| 487 | $.fn.carousel.Constructor = Carousel | ||
| 488 | |||
| 489 | |||
| 490 | // CAROUSEL NO CONFLICT | ||
| 491 | // ==================== | ||
| 492 | |||
| 493 | $.fn.carousel.noConflict = function () { | ||
| 494 | $.fn.carousel = old | ||
| 495 | return this | ||
| 496 | } | ||
| 497 | |||
| 498 | |||
| 499 | // CAROUSEL DATA-API | ||
| 500 | // ================= | ||
| 501 | |||
| 502 | var clickHandler = function (e) { | ||
| 503 | var href | ||
| 504 | var $this = $(this) | ||
| 505 | var $target = $($this.attr('data-target') || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) // strip for ie7 | ||
| 506 | if (!$target.hasClass('carousel')) return | ||
| 507 | var options = $.extend({}, $target.data(), $this.data()) | ||
| 508 | var slideIndex = $this.attr('data-slide-to') | ||
| 509 | if (slideIndex) options.interval = false | ||
| 510 | |||
| 511 | Plugin.call($target, options) | ||
| 512 | |||
| 513 | if (slideIndex) { | ||
| 514 | $target.data('bs.carousel').to(slideIndex) | ||
| 515 | } | ||
| 516 | |||
| 517 | e.preventDefault() | ||
| 518 | } | ||
| 519 | |||
| 520 | $(document) | ||
| 521 | .on('click.bs.carousel.data-api', '[data-slide]', clickHandler) | ||
| 522 | .on('click.bs.carousel.data-api', '[data-slide-to]', clickHandler) | ||
| 523 | |||
| 524 | $(window).on('load', function () { | ||
| 525 | $('[data-ride="carousel"]').each(function () { | ||
| 526 | var $carousel = $(this) | ||
| 527 | Plugin.call($carousel, $carousel.data()) | ||
| 528 | }) | ||
| 529 | }) | ||
| 530 | |||
| 531 | }(jQuery); | ||
| 532 | |||
| 533 | /* ======================================================================== | ||
| 534 | * Bootstrap: collapse.js v3.3.6 | ||
| 535 | * http://getbootstrap.com/javascript/#collapse | ||
| 536 | * ======================================================================== | ||
| 537 | * Copyright 2011-2015 Twitter, Inc. | ||
| 538 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) | ||
| 539 | * ======================================================================== */ | ||
| 540 | |||
| 541 | |||
| 542 | +function ($) { | ||
| 543 | 'use strict'; | ||
| 544 | |||
| 545 | // COLLAPSE PUBLIC CLASS DEFINITION | ||
| 546 | // ================================ | ||
| 547 | |||
| 548 | var Collapse = function (element, options) { | ||
| 549 | this.$element = $(element) | ||
| 550 | this.options = $.extend({}, Collapse.DEFAULTS, options) | ||
| 551 | this.$trigger = $('[data-toggle="collapse"][href="#' + element.id + '"],' + | ||
| 552 | '[data-toggle="collapse"][data-target="#' + element.id + '"]') | ||
| 553 | this.transitioning = null | ||
| 554 | |||
| 555 | if (this.options.parent) { | ||
| 556 | this.$parent = this.getParent() | ||
| 557 | } else { | ||
| 558 | this.addAriaAndCollapsedClass(this.$element, this.$trigger) | ||
| 559 | } | ||
| 560 | |||
| 561 | if (this.options.toggle) this.toggle() | ||
| 562 | } | ||
| 563 | |||
| 564 | Collapse.VERSION = '3.3.6' | ||
| 565 | |||
| 566 | Collapse.TRANSITION_DURATION = 350 | ||
| 567 | |||
| 568 | Collapse.DEFAULTS = { | ||
| 569 | toggle: true | ||
| 570 | } | ||
| 571 | |||
| 572 | Collapse.prototype.dimension = function () { | ||
| 573 | var hasWidth = this.$element.hasClass('width') | ||
| 574 | return hasWidth ? 'width' : 'height' | ||
| 575 | } | ||
| 576 | |||
| 577 | Collapse.prototype.show = function () { | ||
| 578 | if (this.transitioning || this.$element.hasClass('in')) return | ||
| 579 | |||
| 580 | var activesData | ||
| 581 | var actives = this.$parent && this.$parent.children('.panel').children('.in, .collapsing') | ||
| 582 | |||
| 583 | if (actives && actives.length) { | ||
| 584 | activesData = actives.data('bs.collapse') | ||
| 585 | if (activesData && activesData.transitioning) return | ||
| 586 | } | ||
| 587 | |||
| 588 | var startEvent = $.Event('show.bs.collapse') | ||
| 589 | this.$element.trigger(startEvent) | ||
| 590 | if (startEvent.isDefaultPrevented()) return | ||
| 591 | |||
| 592 | if (actives && actives.length) { | ||
| 593 | Plugin.call(actives, 'hide') | ||
| 594 | activesData || actives.data('bs.collapse', null) | ||
| 595 | } | ||
| 596 | |||
| 597 | var dimension = this.dimension() | ||
| 598 | |||
| 599 | this.$element | ||
| 600 | .removeClass('collapse') | ||
| 601 | .addClass('collapsing')[dimension](0) | ||
| 602 | .attr('aria-expanded', true) | ||
| 603 | |||
| 604 | this.$trigger | ||
| 605 | .removeClass('collapsed') | ||
| 606 | .attr('aria-expanded', true) | ||
| 607 | |||
| 608 | this.transitioning = 1 | ||
| 609 | |||
| 610 | var complete = function () { | ||
| 611 | this.$element | ||
| 612 | .removeClass('collapsing') | ||
| 613 | .addClass('collapse in')[dimension]('') | ||
| 614 | this.transitioning = 0 | ||
| 615 | this.$element | ||
| 616 | .trigger('shown.bs.collapse') | ||
| 617 | } | ||
| 618 | |||
| 619 | if (!$.support.transition) return complete.call(this) | ||
| 620 | |||
| 621 | var scrollSize = $.camelCase(['scroll', dimension].join('-')) | ||
| 622 | |||
| 623 | this.$element | ||
| 624 | .one('bsTransitionEnd', $.proxy(complete, this)) | ||
| 625 | .emulateTransitionEnd(Collapse.TRANSITION_DURATION)[dimension](this.$element[0][scrollSize]) | ||
| 626 | } | ||
| 627 | |||
| 628 | Collapse.prototype.hide = function () { | ||
| 629 | if (this.transitioning || !this.$element.hasClass('in')) return | ||
| 630 | |||
| 631 | var startEvent = $.Event('hide.bs.collapse') | ||
| 632 | this.$element.trigger(startEvent) | ||
| 633 | if (startEvent.isDefaultPrevented()) return | ||
| 634 | |||
| 635 | var dimension = this.dimension() | ||
| 636 | |||
| 637 | this.$element[dimension](this.$element[dimension]())[0].offsetHeight | ||
| 638 | |||
| 639 | this.$element | ||
| 640 | .addClass('collapsing') | ||
| 641 | .removeClass('collapse in') | ||
| 642 | .attr('aria-expanded', false) | ||
| 643 | |||
| 644 | this.$trigger | ||
| 645 | .addClass('collapsed') | ||
| 646 | .attr('aria-expanded', false) | ||
| 647 | |||
| 648 | this.transitioning = 1 | ||
| 649 | |||
| 650 | var complete = function () { | ||
| 651 | this.transitioning = 0 | ||
| 652 | this.$element | ||
| 653 | .removeClass('collapsing') | ||
| 654 | .addClass('collapse') | ||
| 655 | .trigger('hidden.bs.collapse') | ||
| 656 | } | ||
| 657 | |||
| 658 | if (!$.support.transition) return complete.call(this) | ||
| 659 | |||
| 660 | this.$element | ||
| 661 | [dimension](0) | ||
| 662 | .one('bsTransitionEnd', $.proxy(complete, this)) | ||
| 663 | .emulateTransitionEnd(Collapse.TRANSITION_DURATION) | ||
| 664 | } | ||
| 665 | |||
| 666 | Collapse.prototype.toggle = function () { | ||
| 667 | this[this.$element.hasClass('in') ? 'hide' : 'show']() | ||
| 668 | } | ||
| 669 | |||
| 670 | Collapse.prototype.getParent = function () { | ||
| 671 | return $(this.options.parent) | ||
| 672 | .find('[data-toggle="collapse"][data-parent="' + this.options.parent + '"]') | ||
| 673 | .each($.proxy(function (i, element) { | ||
| 674 | var $element = $(element) | ||
| 675 | this.addAriaAndCollapsedClass(getTargetFromTrigger($element), $element) | ||
| 676 | }, this)) | ||
| 677 | .end() | ||
| 678 | } | ||
| 679 | |||
| 680 | Collapse.prototype.addAriaAndCollapsedClass = function ($element, $trigger) { | ||
| 681 | var isOpen = $element.hasClass('in') | ||
| 682 | |||
| 683 | $element.attr('aria-expanded', isOpen) | ||
| 684 | $trigger | ||
| 685 | .toggleClass('collapsed', !isOpen) | ||
| 686 | .attr('aria-expanded', isOpen) | ||
| 687 | } | ||
| 688 | |||
| 689 | function getTargetFromTrigger($trigger) { | ||
| 690 | var href | ||
| 691 | var target = $trigger.attr('data-target') | ||
| 692 | || (href = $trigger.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '') // strip for ie7 | ||
| 693 | |||
| 694 | return $(target) | ||
| 695 | } | ||
| 696 | |||
| 697 | |||
| 698 | // COLLAPSE PLUGIN DEFINITION | ||
| 699 | // ========================== | ||
| 700 | |||
| 701 | function Plugin(option) { | ||
| 702 | return this.each(function () { | ||
| 703 | var $this = $(this) | ||
| 704 | var data = $this.data('bs.collapse') | ||
| 705 | var options = $.extend({}, Collapse.DEFAULTS, $this.data(), typeof option == 'object' && option) | ||
| 706 | |||
| 707 | if (!data && options.toggle && /show|hide/.test(option)) options.toggle = false | ||
| 708 | if (!data) $this.data('bs.collapse', (data = new Collapse(this, options))) | ||
| 709 | if (typeof option == 'string') data[option]() | ||
| 710 | }) | ||
| 711 | } | ||
| 712 | |||
| 713 | var old = $.fn.collapse | ||
| 714 | |||
| 715 | $.fn.collapse = Plugin | ||
| 716 | $.fn.collapse.Constructor = Collapse | ||
| 717 | |||
| 718 | |||
| 719 | // COLLAPSE NO CONFLICT | ||
| 720 | // ==================== | ||
| 721 | |||
| 722 | $.fn.collapse.noConflict = function () { | ||
| 723 | $.fn.collapse = old | ||
| 724 | return this | ||
| 725 | } | ||
| 726 | |||
| 727 | |||
| 728 | // COLLAPSE DATA-API | ||
| 729 | // ================= | ||
| 730 | |||
| 731 | $(document).on('click.bs.collapse.data-api', '[data-toggle="collapse"]', function (e) { | ||
| 732 | var $this = $(this) | ||
| 733 | |||
| 734 | if (!$this.attr('data-target')) e.preventDefault() | ||
| 735 | |||
| 736 | var $target = getTargetFromTrigger($this) | ||
| 737 | var data = $target.data('bs.collapse') | ||
| 738 | var option = data ? 'toggle' : $this.data() | ||
| 739 | |||
| 740 | Plugin.call($target, option) | ||
| 741 | }) | ||
| 742 | |||
| 743 | }(jQuery); | ||
| 744 | |||
| 745 | /* ======================================================================== | ||
| 746 | * Bootstrap: dropdown.js v3.3.6 | ||
| 747 | * http://getbootstrap.com/javascript/#dropdowns | ||
| 748 | * ======================================================================== | ||
| 749 | * Copyright 2011-2015 Twitter, Inc. | ||
| 750 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) | ||
| 751 | * ======================================================================== */ | ||
| 752 | |||
| 753 | |||
| 754 | +function ($) { | ||
| 755 | 'use strict'; | ||
| 756 | |||
| 757 | // DROPDOWN CLASS DEFINITION | ||
| 758 | // ========================= | ||
| 759 | |||
| 760 | var backdrop = '.dropdown-backdrop' | ||
| 761 | var toggle = '[data-toggle="dropdown"]' | ||
| 762 | var Dropdown = function (element) { | ||
| 763 | $(element).on('click.bs.dropdown', this.toggle) | ||
| 764 | } | ||
| 765 | |||
| 766 | Dropdown.VERSION = '3.3.6' | ||
| 767 | |||
| 768 | function getParent($this) { | ||
| 769 | var selector = $this.attr('data-target') | ||
| 770 | |||
| 771 | if (!selector) { | ||
| 772 | selector = $this.attr('href') | ||
| 773 | selector = selector && /#[A-Za-z]/.test(selector) && selector.replace(/.*(?=#[^\s]*$)/, '') // strip for ie7 | ||
| 774 | } | ||
| 775 | |||
| 776 | var $parent = selector && $(selector) | ||
| 777 | |||
| 778 | return $parent && $parent.length ? $parent : $this.parent() | ||
| 779 | } | ||
| 780 | |||
| 781 | function clearMenus(e) { | ||
| 782 | if (e && e.which === 3) return | ||
| 783 | $(backdrop).remove() | ||
| 784 | $(toggle).each(function () { | ||
| 785 | var $this = $(this) | ||
| 786 | var $parent = getParent($this) | ||
| 787 | var relatedTarget = { relatedTarget: this } | ||
| 788 | |||
| 789 | if (!$parent.hasClass('open')) return | ||
| 790 | |||
| 791 | if (e && e.type == 'click' && /input|textarea/i.test(e.target.tagName) && $.contains($parent[0], e.target)) return | ||
| 792 | |||
| 793 | $parent.trigger(e = $.Event('hide.bs.dropdown', relatedTarget)) | ||
| 794 | |||
| 795 | if (e.isDefaultPrevented()) return | ||
| 796 | |||
| 797 | $this.attr('aria-expanded', 'false') | ||
| 798 | $parent.removeClass('open').trigger($.Event('hidden.bs.dropdown', relatedTarget)) | ||
| 799 | }) | ||
| 800 | } | ||
| 801 | |||
| 802 | Dropdown.prototype.toggle = function (e) { | ||
| 803 | var $this = $(this) | ||
| 804 | |||
| 805 | if ($this.is('.disabled, :disabled')) return | ||
| 806 | |||
| 807 | var $parent = getParent($this) | ||
| 808 | var isActive = $parent.hasClass('open') | ||
| 809 | |||
| 810 | clearMenus() | ||
| 811 | |||
| 812 | if (!isActive) { | ||
| 813 | if ('ontouchstart' in document.documentElement && !$parent.closest('.navbar-nav').length) { | ||
| 814 | // if mobile we use a backdrop because click events don't delegate | ||
| 815 | $(document.createElement('div')) | ||
| 816 | .addClass('dropdown-backdrop') | ||
| 817 | .insertAfter($(this)) | ||
| 818 | .on('click', clearMenus) | ||
| 819 | } | ||
| 820 | |||
| 821 | var relatedTarget = { relatedTarget: this } | ||
| 822 | $parent.trigger(e = $.Event('show.bs.dropdown', relatedTarget)) | ||
| 823 | |||
| 824 | if (e.isDefaultPrevented()) return | ||
| 825 | |||
| 826 | $this | ||
| 827 | .trigger('focus') | ||
| 828 | .attr('aria-expanded', 'true') | ||
| 829 | |||
| 830 | $parent | ||
| 831 | .toggleClass('open') | ||
| 832 | .trigger($.Event('shown.bs.dropdown', relatedTarget)) | ||
| 833 | } | ||
| 834 | |||
| 835 | return false | ||
| 836 | } | ||
| 837 | |||
| 838 | Dropdown.prototype.keydown = function (e) { | ||
| 839 | if (!/(38|40|27|32)/.test(e.which) || /input|textarea/i.test(e.target.tagName)) return | ||
| 840 | |||
| 841 | var $this = $(this) | ||
| 842 | |||
| 843 | e.preventDefault() | ||
| 844 | e.stopPropagation() | ||
| 845 | |||
| 846 | if ($this.is('.disabled, :disabled')) return | ||
| 847 | |||
| 848 | var $parent = getParent($this) | ||
| 849 | var isActive = $parent.hasClass('open') | ||
| 850 | |||
| 851 | if (!isActive && e.which != 27 || isActive && e.which == 27) { | ||
| 852 | if (e.which == 27) $parent.find(toggle).trigger('focus') | ||
| 853 | return $this.trigger('click') | ||
| 854 | } | ||
| 855 | |||
| 856 | var desc = ' li:not(.disabled):visible a' | ||
| 857 | var $items = $parent.find('.dropdown-menu' + desc) | ||
| 858 | |||
| 859 | if (!$items.length) return | ||
| 860 | |||
| 861 | var index = $items.index(e.target) | ||
| 862 | |||
| 863 | if (e.which == 38 && index > 0) index-- // up | ||
| 864 | if (e.which == 40 && index < $items.length - 1) index++ // down | ||
| 865 | if (!~index) index = 0 | ||
| 866 | |||
| 867 | $items.eq(index).trigger('focus') | ||
| 868 | } | ||
| 869 | |||
| 870 | |||
| 871 | // DROPDOWN PLUGIN DEFINITION | ||
| 872 | // ========================== | ||
| 873 | |||
| 874 | function Plugin(option) { | ||
| 875 | return this.each(function () { | ||
| 876 | var $this = $(this) | ||
| 877 | var data = $this.data('bs.dropdown') | ||
| 878 | |||
| 879 | if (!data) $this.data('bs.dropdown', (data = new Dropdown(this))) | ||
| 880 | if (typeof option == 'string') data[option].call($this) | ||
| 881 | }) | ||
| 882 | } | ||
| 883 | |||
| 884 | var old = $.fn.dropdown | ||
| 885 | |||
| 886 | $.fn.dropdown = Plugin | ||
| 887 | $.fn.dropdown.Constructor = Dropdown | ||
| 888 | |||
| 889 | |||
| 890 | // DROPDOWN NO CONFLICT | ||
| 891 | // ==================== | ||
| 892 | |||
| 893 | $.fn.dropdown.noConflict = function () { | ||
| 894 | $.fn.dropdown = old | ||
| 895 | return this | ||
| 896 | } | ||
| 897 | |||
| 898 | |||
| 899 | // APPLY TO STANDARD DROPDOWN ELEMENTS | ||
| 900 | // =================================== | ||
| 901 | |||
| 902 | $(document) | ||
| 903 | .on('click.bs.dropdown.data-api', clearMenus) | ||
| 904 | .on('click.bs.dropdown.data-api', '.dropdown form', function (e) { e.stopPropagation() }) | ||
| 905 | .on('click.bs.dropdown.data-api', toggle, Dropdown.prototype.toggle) | ||
| 906 | .on('keydown.bs.dropdown.data-api', toggle, Dropdown.prototype.keydown) | ||
| 907 | .on('keydown.bs.dropdown.data-api', '.dropdown-menu', Dropdown.prototype.keydown) | ||
| 908 | |||
| 909 | }(jQuery); | ||
| 910 | |||
| 911 | /* ======================================================================== | ||
| 912 | * Bootstrap: modal.js v3.3.6 | ||
| 913 | * http://getbootstrap.com/javascript/#modals | ||
| 914 | * ======================================================================== | ||
| 915 | * Copyright 2011-2015 Twitter, Inc. | ||
| 916 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) | ||
| 917 | * ======================================================================== */ | ||
| 918 | |||
| 919 | |||
| 920 | +function ($) { | ||
| 921 | 'use strict'; | ||
| 922 | |||
| 923 | // MODAL CLASS DEFINITION | ||
| 924 | // ====================== | ||
| 925 | |||
| 926 | var Modal = function (element, options) { | ||
| 927 | this.options = options | ||
| 928 | this.$body = $(document.body) | ||
| 929 | this.$element = $(element) | ||
| 930 | this.$dialog = this.$element.find('.modal-dialog') | ||
| 931 | this.$backdrop = null | ||
| 932 | this.isShown = null | ||
| 933 | this.originalBodyPad = null | ||
| 934 | this.scrollbarWidth = 0 | ||
| 935 | this.ignoreBackdropClick = false | ||
| 936 | |||
| 937 | if (this.options.remote) { | ||
| 938 | this.$element | ||
| 939 | .find('.modal-content') | ||
| 940 | .load(this.options.remote, $.proxy(function () { | ||
| 941 | this.$element.trigger('loaded.bs.modal') | ||
| 942 | }, this)) | ||
| 943 | } | ||
| 944 | } | ||
| 945 | |||
| 946 | Modal.VERSION = '3.3.6' | ||
| 947 | |||
| 948 | Modal.TRANSITION_DURATION = 300 | ||
| 949 | Modal.BACKDROP_TRANSITION_DURATION = 150 | ||
| 950 | |||
| 951 | Modal.DEFAULTS = { | ||
| 952 | backdrop: true, | ||
| 953 | keyboard: true, | ||
| 954 | show: true | ||
| 955 | } | ||
| 956 | |||
| 957 | Modal.prototype.toggle = function (_relatedTarget) { | ||
| 958 | return this.isShown ? this.hide() : this.show(_relatedTarget) | ||
| 959 | } | ||
| 960 | |||
| 961 | Modal.prototype.show = function (_relatedTarget) { | ||
| 962 | var that = this | ||
| 963 | var e = $.Event('show.bs.modal', { relatedTarget: _relatedTarget }) | ||
| 964 | |||
| 965 | this.$element.trigger(e) | ||
| 966 | |||
| 967 | if (this.isShown || e.isDefaultPrevented()) return | ||
| 968 | |||
| 969 | this.isShown = true | ||
| 970 | |||
| 971 | this.checkScrollbar() | ||
| 972 | this.setScrollbar() | ||
| 973 | this.$body.addClass('modal-open') | ||
| 974 | |||
| 975 | this.escape() | ||
| 976 | this.resize() | ||
| 977 | |||
| 978 | this.$element.on('click.dismiss.bs.modal', '[data-dismiss="modal"]', $.proxy(this.hide, this)) | ||
| 979 | |||
| 980 | this.$dialog.on('mousedown.dismiss.bs.modal', function () { | ||
| 981 | that.$element.one('mouseup.dismiss.bs.modal', function (e) { | ||
| 982 | if ($(e.target).is(that.$element)) that.ignoreBackdropClick = true | ||
| 983 | }) | ||
| 984 | }) | ||
| 985 | |||
| 986 | this.backdrop(function () { | ||
| 987 | var transition = $.support.transition && that.$element.hasClass('fade') | ||
| 988 | |||
| 989 | if (!that.$element.parent().length) { | ||
| 990 | that.$element.appendTo(that.$body) // don't move modals dom position | ||
| 991 | } | ||
| 992 | |||
| 993 | that.$element | ||
| 994 | .show() | ||
| 995 | .scrollTop(0) | ||
| 996 | |||
| 997 | that.adjustDialog() | ||
| 998 | |||
| 999 | if (transition) { | ||
| 1000 | that.$element[0].offsetWidth // force reflow | ||
| 1001 | } | ||
| 1002 | |||
| 1003 | that.$element.addClass('in') | ||
| 1004 | |||
| 1005 | that.enforceFocus() | ||
| 1006 | |||
| 1007 | var e = $.Event('shown.bs.modal', { relatedTarget: _relatedTarget }) | ||
| 1008 | |||
| 1009 | transition ? | ||
| 1010 | that.$dialog // wait for modal to slide in | ||
| 1011 | .one('bsTransitionEnd', function () { | ||
| 1012 | that.$element.trigger('focus').trigger(e) | ||
| 1013 | }) | ||
| 1014 | .emulateTransitionEnd(Modal.TRANSITION_DURATION) : | ||
| 1015 | that.$element.trigger('focus').trigger(e) | ||
| 1016 | }) | ||
| 1017 | } | ||
| 1018 | |||
| 1019 | Modal.prototype.hide = function (e) { | ||
| 1020 | if (e) e.preventDefault() | ||
| 1021 | |||
| 1022 | e = $.Event('hide.bs.modal') | ||
| 1023 | |||
| 1024 | this.$element.trigger(e) | ||
| 1025 | |||
| 1026 | if (!this.isShown || e.isDefaultPrevented()) return | ||
| 1027 | |||
| 1028 | this.isShown = false | ||
| 1029 | |||
| 1030 | this.escape() | ||
| 1031 | this.resize() | ||
| 1032 | |||
| 1033 | $(document).off('focusin.bs.modal') | ||
| 1034 | |||
| 1035 | this.$element | ||
| 1036 | .removeClass('in') | ||
| 1037 | .off('click.dismiss.bs.modal') | ||
| 1038 | .off('mouseup.dismiss.bs.modal') | ||
| 1039 | |||
| 1040 | this.$dialog.off('mousedown.dismiss.bs.modal') | ||
| 1041 | |||
| 1042 | $.support.transition && this.$element.hasClass('fade') ? | ||
| 1043 | this.$element | ||
| 1044 | .one('bsTransitionEnd', $.proxy(this.hideModal, this)) | ||
| 1045 | .emulateTransitionEnd(Modal.TRANSITION_DURATION) : | ||
| 1046 | this.hideModal() | ||
| 1047 | } | ||
| 1048 | |||
| 1049 | Modal.prototype.enforceFocus = function () { | ||
| 1050 | $(document) | ||
| 1051 | .off('focusin.bs.modal') // guard against infinite focus loop | ||
| 1052 | .on('focusin.bs.modal', $.proxy(function (e) { | ||
| 1053 | if (this.$element[0] !== e.target && !this.$element.has(e.target).length) { | ||
| 1054 | this.$element.trigger('focus') | ||
| 1055 | } | ||
| 1056 | }, this)) | ||
| 1057 | } | ||
| 1058 | |||
| 1059 | Modal.prototype.escape = function () { | ||
| 1060 | if (this.isShown && this.options.keyboard) { | ||
| 1061 | this.$element.on('keydown.dismiss.bs.modal', $.proxy(function (e) { | ||
| 1062 | e.which == 27 && this.hide() | ||
| 1063 | }, this)) | ||
| 1064 | } else if (!this.isShown) { | ||
| 1065 | this.$element.off('keydown.dismiss.bs.modal') | ||
| 1066 | } | ||
| 1067 | } | ||
| 1068 | |||
| 1069 | Modal.prototype.resize = function () { | ||
| 1070 | if (this.isShown) { | ||
| 1071 | $(window).on('resize.bs.modal', $.proxy(this.handleUpdate, this)) | ||
| 1072 | } else { | ||
| 1073 | $(window).off('resize.bs.modal') | ||
| 1074 | } | ||
| 1075 | } | ||
| 1076 | |||
| 1077 | Modal.prototype.hideModal = function () { | ||
| 1078 | var that = this | ||
| 1079 | this.$element.hide() | ||
| 1080 | this.backdrop(function () { | ||
| 1081 | that.$body.removeClass('modal-open') | ||
| 1082 | that.resetAdjustments() | ||
| 1083 | that.resetScrollbar() | ||
| 1084 | that.$element.trigger('hidden.bs.modal') | ||
| 1085 | }) | ||
| 1086 | } | ||
| 1087 | |||
| 1088 | Modal.prototype.removeBackdrop = function () { | ||
| 1089 | this.$backdrop && this.$backdrop.remove() | ||
| 1090 | this.$backdrop = null | ||
| 1091 | } | ||
| 1092 | |||
| 1093 | Modal.prototype.backdrop = function (callback) { | ||
| 1094 | var that = this | ||
| 1095 | var animate = this.$element.hasClass('fade') ? 'fade' : '' | ||
| 1096 | |||
| 1097 | if (this.isShown && this.options.backdrop) { | ||
| 1098 | var doAnimate = $.support.transition && animate | ||
| 1099 | |||
| 1100 | this.$backdrop = $(document.createElement('div')) | ||
| 1101 | .addClass('modal-backdrop ' + animate) | ||
| 1102 | .appendTo(this.$body) | ||
| 1103 | |||
| 1104 | this.$element.on('click.dismiss.bs.modal', $.proxy(function (e) { | ||
| 1105 | if (this.ignoreBackdropClick) { | ||
| 1106 | this.ignoreBackdropClick = false | ||
| 1107 | return | ||
| 1108 | } | ||
| 1109 | if (e.target !== e.currentTarget) return | ||
| 1110 | this.options.backdrop == 'static' | ||
| 1111 | ? this.$element[0].focus() | ||
| 1112 | : this.hide() | ||
| 1113 | }, this)) | ||
| 1114 | |||
| 1115 | if (doAnimate) this.$backdrop[0].offsetWidth // force reflow | ||
| 1116 | |||
| 1117 | this.$backdrop.addClass('in') | ||
| 1118 | |||
| 1119 | if (!callback) return | ||
| 1120 | |||
| 1121 | doAnimate ? | ||
| 1122 | this.$backdrop | ||
| 1123 | .one('bsTransitionEnd', callback) | ||
| 1124 | .emulateTransitionEnd(Modal.BACKDROP_TRANSITION_DURATION) : | ||
| 1125 | callback() | ||
| 1126 | |||
| 1127 | } else if (!this.isShown && this.$backdrop) { | ||
| 1128 | this.$backdrop.removeClass('in') | ||
| 1129 | |||
| 1130 | var callbackRemove = function () { | ||
| 1131 | that.removeBackdrop() | ||
| 1132 | callback && callback() | ||
| 1133 | } | ||
| 1134 | $.support.transition && this.$element.hasClass('fade') ? | ||
| 1135 | this.$backdrop | ||
| 1136 | .one('bsTransitionEnd', callbackRemove) | ||
| 1137 | .emulateTransitionEnd(Modal.BACKDROP_TRANSITION_DURATION) : | ||
| 1138 | callbackRemove() | ||
| 1139 | |||
| 1140 | } else if (callback) { | ||
| 1141 | callback() | ||
| 1142 | } | ||
| 1143 | } | ||
| 1144 | |||
| 1145 | // these following methods are used to handle overflowing modals | ||
| 1146 | |||
| 1147 | Modal.prototype.handleUpdate = function () { | ||
| 1148 | this.adjustDialog() | ||
| 1149 | } | ||
| 1150 | |||
| 1151 | Modal.prototype.adjustDialog = function () { | ||
| 1152 | var modalIsOverflowing = this.$element[0].scrollHeight > document.documentElement.clientHeight | ||
| 1153 | |||
| 1154 | this.$element.css({ | ||
| 1155 | paddingLeft: !this.bodyIsOverflowing && modalIsOverflowing ? this.scrollbarWidth : '', | ||
| 1156 | paddingRight: this.bodyIsOverflowing && !modalIsOverflowing ? this.scrollbarWidth : '' | ||
| 1157 | }) | ||
| 1158 | } | ||
| 1159 | |||
| 1160 | Modal.prototype.resetAdjustments = function () { | ||
| 1161 | this.$element.css({ | ||
| 1162 | paddingLeft: '', | ||
| 1163 | paddingRight: '' | ||
| 1164 | }) | ||
| 1165 | } | ||
| 1166 | |||
| 1167 | Modal.prototype.checkScrollbar = function () { | ||
| 1168 | var fullWindowWidth = window.innerWidth | ||
| 1169 | if (!fullWindowWidth) { // workaround for missing window.innerWidth in IE8 | ||
| 1170 | var documentElementRect = document.documentElement.getBoundingClientRect() | ||
| 1171 | fullWindowWidth = documentElementRect.right - Math.abs(documentElementRect.left) | ||
| 1172 | } | ||
| 1173 | this.bodyIsOverflowing = document.body.clientWidth < fullWindowWidth | ||
| 1174 | this.scrollbarWidth = this.measureScrollbar() | ||
| 1175 | } | ||
| 1176 | |||
| 1177 | Modal.prototype.setScrollbar = function () { | ||
| 1178 | var bodyPad = parseInt((this.$body.css('padding-right') || 0), 10) | ||
| 1179 | this.originalBodyPad = document.body.style.paddingRight || '' | ||
| 1180 | if (this.bodyIsOverflowing) this.$body.css('padding-right', bodyPad + this.scrollbarWidth) | ||
| 1181 | } | ||
| 1182 | |||
| 1183 | Modal.prototype.resetScrollbar = function () { | ||
| 1184 | this.$body.css('padding-right', this.originalBodyPad) | ||
| 1185 | } | ||
| 1186 | |||
| 1187 | Modal.prototype.measureScrollbar = function () { // thx walsh | ||
| 1188 | var scrollDiv = document.createElement('div') | ||
| 1189 | scrollDiv.className = 'modal-scrollbar-measure' | ||
| 1190 | this.$body.append(scrollDiv) | ||
| 1191 | var scrollbarWidth = scrollDiv.offsetWidth - scrollDiv.clientWidth | ||
| 1192 | this.$body[0].removeChild(scrollDiv) | ||
| 1193 | return scrollbarWidth | ||
| 1194 | } | ||
| 1195 | |||
| 1196 | |||
| 1197 | // MODAL PLUGIN DEFINITION | ||
| 1198 | // ======================= | ||
| 1199 | |||
| 1200 | function Plugin(option, _relatedTarget) { | ||
| 1201 | return this.each(function () { | ||
| 1202 | var $this = $(this) | ||
| 1203 | var data = $this.data('bs.modal') | ||
| 1204 | var options = $.extend({}, Modal.DEFAULTS, $this.data(), typeof option == 'object' && option) | ||
| 1205 | |||
| 1206 | if (!data) $this.data('bs.modal', (data = new Modal(this, options))) | ||
| 1207 | if (typeof option == 'string') data[option](_relatedTarget) | ||
| 1208 | else if (options.show) data.show(_relatedTarget) | ||
| 1209 | }) | ||
| 1210 | } | ||
| 1211 | |||
| 1212 | var old = $.fn.modal | ||
| 1213 | |||
| 1214 | $.fn.modal = Plugin | ||
| 1215 | $.fn.modal.Constructor = Modal | ||
| 1216 | |||
| 1217 | |||
| 1218 | // MODAL NO CONFLICT | ||
| 1219 | // ================= | ||
| 1220 | |||
| 1221 | $.fn.modal.noConflict = function () { | ||
| 1222 | $.fn.modal = old | ||
| 1223 | return this | ||
| 1224 | } | ||
| 1225 | |||
| 1226 | |||
| 1227 | // MODAL DATA-API | ||
| 1228 | // ============== | ||
| 1229 | |||
| 1230 | $(document).on('click.bs.modal.data-api', '[data-toggle="modal"]', function (e) { | ||
| 1231 | var $this = $(this) | ||
| 1232 | var href = $this.attr('href') | ||
| 1233 | var $target = $($this.attr('data-target') || (href && href.replace(/.*(?=#[^\s]+$)/, ''))) // strip for ie7 | ||
| 1234 | var option = $target.data('bs.modal') ? 'toggle' : $.extend({ remote: !/#/.test(href) && href }, $target.data(), $this.data()) | ||
| 1235 | |||
| 1236 | if ($this.is('a')) e.preventDefault() | ||
| 1237 | |||
| 1238 | $target.one('show.bs.modal', function (showEvent) { | ||
| 1239 | if (showEvent.isDefaultPrevented()) return // only register focus restorer if modal will actually get shown | ||
| 1240 | $target.one('hidden.bs.modal', function () { | ||
| 1241 | $this.is(':visible') && $this.trigger('focus') | ||
| 1242 | }) | ||
| 1243 | }) | ||
| 1244 | Plugin.call($target, option, this) | ||
| 1245 | }) | ||
| 1246 | |||
| 1247 | }(jQuery); | ||
| 1248 | |||
| 1249 | /* ======================================================================== | ||
| 1250 | * Bootstrap: tooltip.js v3.3.6 | ||
| 1251 | * http://getbootstrap.com/javascript/#tooltip | ||
| 1252 | * Inspired by the original jQuery.tipsy by Jason Frame | ||
| 1253 | * ======================================================================== | ||
| 1254 | * Copyright 2011-2015 Twitter, Inc. | ||
| 1255 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) | ||
| 1256 | * ======================================================================== */ | ||
| 1257 | |||
| 1258 | |||
| 1259 | +function ($) { | ||
| 1260 | 'use strict'; | ||
| 1261 | |||
| 1262 | // TOOLTIP PUBLIC CLASS DEFINITION | ||
| 1263 | // =============================== | ||
| 1264 | |||
| 1265 | var Tooltip = function (element, options) { | ||
| 1266 | this.type = null | ||
| 1267 | this.options = null | ||
| 1268 | this.enabled = null | ||
| 1269 | this.timeout = null | ||
| 1270 | this.hoverState = null | ||
| 1271 | this.$element = null | ||
| 1272 | this.inState = null | ||
| 1273 | |||
| 1274 | this.init('tooltip', element, options) | ||
| 1275 | } | ||
| 1276 | |||
| 1277 | Tooltip.VERSION = '3.3.6' | ||
| 1278 | |||
| 1279 | Tooltip.TRANSITION_DURATION = 150 | ||
| 1280 | |||
| 1281 | Tooltip.DEFAULTS = { | ||
| 1282 | animation: true, | ||
| 1283 | placement: 'top', | ||
| 1284 | selector: false, | ||
| 1285 | template: '<div class="tooltip" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>', | ||
| 1286 | trigger: 'hover focus', | ||
| 1287 | title: '', | ||
| 1288 | delay: 0, | ||
| 1289 | html: false, | ||
| 1290 | container: false, | ||
| 1291 | viewport: { | ||
| 1292 | selector: 'body', | ||
| 1293 | padding: 0 | ||
| 1294 | } | ||
| 1295 | } | ||
| 1296 | |||
| 1297 | Tooltip.prototype.init = function (type, element, options) { | ||
| 1298 | this.enabled = true | ||
| 1299 | this.type = type | ||
| 1300 | this.$element = $(element) | ||
| 1301 | this.options = this.getOptions(options) | ||
| 1302 | this.$viewport = this.options.viewport && $($.isFunction(this.options.viewport) ? this.options.viewport.call(this, this.$element) : (this.options.viewport.selector || this.options.viewport)) | ||
| 1303 | this.inState = { click: false, hover: false, focus: false } | ||
| 1304 | |||
| 1305 | if (this.$element[0] instanceof document.constructor && !this.options.selector) { | ||
| 1306 | throw new Error('`selector` option must be specified when initializing ' + this.type + ' on the window.document object!') | ||
| 1307 | } | ||
| 1308 | |||
| 1309 | var triggers = this.options.trigger.split(' ') | ||
| 1310 | |||
| 1311 | for (var i = triggers.length; i--;) { | ||
| 1312 | var trigger = triggers[i] | ||
| 1313 | |||
| 1314 | if (trigger == 'click') { | ||
| 1315 | this.$element.on('click.' + this.type, this.options.selector, $.proxy(this.toggle, this)) | ||
| 1316 | } else if (trigger != 'manual') { | ||
| 1317 | var eventIn = trigger == 'hover' ? 'mouseenter' : 'focusin' | ||
| 1318 | var eventOut = trigger == 'hover' ? 'mouseleave' : 'focusout' | ||
| 1319 | |||
| 1320 | this.$element.on(eventIn + '.' + this.type, this.options.selector, $.proxy(this.enter, this)) | ||
| 1321 | this.$element.on(eventOut + '.' + this.type, this.options.selector, $.proxy(this.leave, this)) | ||
| 1322 | } | ||
| 1323 | } | ||
| 1324 | |||
| 1325 | this.options.selector ? | ||
| 1326 | (this._options = $.extend({}, this.options, { trigger: 'manual', selector: '' })) : | ||
| 1327 | this.fixTitle() | ||
| 1328 | } | ||
| 1329 | |||
| 1330 | Tooltip.prototype.getDefaults = function () { | ||
| 1331 | return Tooltip.DEFAULTS | ||
| 1332 | } | ||
| 1333 | |||
| 1334 | Tooltip.prototype.getOptions = function (options) { | ||
| 1335 | options = $.extend({}, this.getDefaults(), this.$element.data(), options) | ||
| 1336 | |||
| 1337 | if (options.delay && typeof options.delay == 'number') { | ||
| 1338 | options.delay = { | ||
| 1339 | show: options.delay, | ||
| 1340 | hide: options.delay | ||
| 1341 | } | ||
| 1342 | } | ||
| 1343 | |||
| 1344 | return options | ||
| 1345 | } | ||
| 1346 | |||
| 1347 | Tooltip.prototype.getDelegateOptions = function () { | ||
| 1348 | var options = {} | ||
| 1349 | var defaults = this.getDefaults() | ||
| 1350 | |||
| 1351 | this._options && $.each(this._options, function (key, value) { | ||
| 1352 | if (defaults[key] != value) options[key] = value | ||
| 1353 | }) | ||
| 1354 | |||
| 1355 | return options | ||
| 1356 | } | ||
| 1357 | |||
| 1358 | Tooltip.prototype.enter = function (obj) { | ||
| 1359 | var self = obj instanceof this.constructor ? | ||
| 1360 | obj : $(obj.currentTarget).data('bs.' + this.type) | ||
| 1361 | |||
| 1362 | if (!self) { | ||
| 1363 | self = new this.constructor(obj.currentTarget, this.getDelegateOptions()) | ||
| 1364 | $(obj.currentTarget).data('bs.' + this.type, self) | ||
| 1365 | } | ||
| 1366 | |||
| 1367 | if (obj instanceof $.Event) { | ||
| 1368 | self.inState[obj.type == 'focusin' ? 'focus' : 'hover'] = true | ||
| 1369 | } | ||
| 1370 | |||
| 1371 | if (self.tip().hasClass('in') || self.hoverState == 'in') { | ||
| 1372 | self.hoverState = 'in' | ||
| 1373 | return | ||
| 1374 | } | ||
| 1375 | |||
| 1376 | clearTimeout(self.timeout) | ||
| 1377 | |||
| 1378 | self.hoverState = 'in' | ||
| 1379 | |||
| 1380 | if (!self.options.delay || !self.options.delay.show) return self.show() | ||
| 1381 | |||
| 1382 | self.timeout = setTimeout(function () { | ||
| 1383 | if (self.hoverState == 'in') self.show() | ||
| 1384 | }, self.options.delay.show) | ||
| 1385 | } | ||
| 1386 | |||
| 1387 | Tooltip.prototype.isInStateTrue = function () { | ||
| 1388 | for (var key in this.inState) { | ||
| 1389 | if (this.inState[key]) return true | ||
| 1390 | } | ||
| 1391 | |||
| 1392 | return false | ||
| 1393 | } | ||
| 1394 | |||
| 1395 | Tooltip.prototype.leave = function (obj) { | ||
| 1396 | var self = obj instanceof this.constructor ? | ||
| 1397 | obj : $(obj.currentTarget).data('bs.' + this.type) | ||
| 1398 | |||
| 1399 | if (!self) { | ||
| 1400 | self = new this.constructor(obj.currentTarget, this.getDelegateOptions()) | ||
| 1401 | $(obj.currentTarget).data('bs.' + this.type, self) | ||
| 1402 | } | ||
| 1403 | |||
| 1404 | if (obj instanceof $.Event) { | ||
| 1405 | self.inState[obj.type == 'focusout' ? 'focus' : 'hover'] = false | ||
| 1406 | } | ||
| 1407 | |||
| 1408 | if (self.isInStateTrue()) return | ||
| 1409 | |||
| 1410 | clearTimeout(self.timeout) | ||
| 1411 | |||
| 1412 | self.hoverState = 'out' | ||
| 1413 | |||
| 1414 | if (!self.options.delay || !self.options.delay.hide) return self.hide() | ||
| 1415 | |||
| 1416 | self.timeout = setTimeout(function () { | ||
| 1417 | if (self.hoverState == 'out') self.hide() | ||
| 1418 | }, self.options.delay.hide) | ||
| 1419 | } | ||
| 1420 | |||
| 1421 | Tooltip.prototype.show = function () { | ||
| 1422 | var e = $.Event('show.bs.' + this.type) | ||
| 1423 | |||
| 1424 | if (this.hasContent() && this.enabled) { | ||
| 1425 | this.$element.trigger(e) | ||
| 1426 | |||
| 1427 | var inDom = $.contains(this.$element[0].ownerDocument.documentElement, this.$element[0]) | ||
| 1428 | if (e.isDefaultPrevented() || !inDom) return | ||
| 1429 | var that = this | ||
| 1430 | |||
| 1431 | var $tip = this.tip() | ||
| 1432 | |||
| 1433 | var tipId = this.getUID(this.type) | ||
| 1434 | |||
| 1435 | this.setContent() | ||
| 1436 | $tip.attr('id', tipId) | ||
| 1437 | this.$element.attr('aria-describedby', tipId) | ||
| 1438 | |||
| 1439 | if (this.options.animation) $tip.addClass('fade') | ||
| 1440 | |||
| 1441 | var placement = typeof this.options.placement == 'function' ? | ||
| 1442 | this.options.placement.call(this, $tip[0], this.$element[0]) : | ||
| 1443 | this.options.placement | ||
| 1444 | |||
| 1445 | var autoToken = /\s?auto?\s?/i | ||
| 1446 | var autoPlace = autoToken.test(placement) | ||
| 1447 | if (autoPlace) placement = placement.replace(autoToken, '') || 'top' | ||
| 1448 | |||
| 1449 | $tip | ||
| 1450 | .detach() | ||
| 1451 | .css({ top: 0, left: 0, display: 'block' }) | ||
| 1452 | .addClass(placement) | ||
| 1453 | .data('bs.' + this.type, this) | ||
| 1454 | |||
| 1455 | this.options.container ? $tip.appendTo(this.options.container) : $tip.insertAfter(this.$element) | ||
| 1456 | this.$element.trigger('inserted.bs.' + this.type) | ||
| 1457 | |||
| 1458 | var pos = this.getPosition() | ||
| 1459 | var actualWidth = $tip[0].offsetWidth | ||
| 1460 | var actualHeight = $tip[0].offsetHeight | ||
| 1461 | |||
| 1462 | if (autoPlace) { | ||
| 1463 | var orgPlacement = placement | ||
| 1464 | var viewportDim = this.getPosition(this.$viewport) | ||
| 1465 | |||
| 1466 | placement = placement == 'bottom' && pos.bottom + actualHeight > viewportDim.bottom ? 'top' : | ||
| 1467 | placement == 'top' && pos.top - actualHeight < viewportDim.top ? 'bottom' : | ||
| 1468 | placement == 'right' && pos.right + actualWidth > viewportDim.width ? 'left' : | ||
| 1469 | placement == 'left' && pos.left - actualWidth < viewportDim.left ? 'right' : | ||
| 1470 | placement | ||
| 1471 | |||
| 1472 | $tip | ||
| 1473 | .removeClass(orgPlacement) | ||
| 1474 | .addClass(placement) | ||
| 1475 | } | ||
| 1476 | |||
| 1477 | var calculatedOffset = this.getCalculatedOffset(placement, pos, actualWidth, actualHeight) | ||
| 1478 | |||
| 1479 | this.applyPlacement(calculatedOffset, placement) | ||
| 1480 | |||
| 1481 | var complete = function () { | ||
| 1482 | var prevHoverState = that.hoverState | ||
| 1483 | that.$element.trigger('shown.bs.' + that.type) | ||
| 1484 | that.hoverState = null | ||
| 1485 | |||
| 1486 | if (prevHoverState == 'out') that.leave(that) | ||
| 1487 | } | ||
| 1488 | |||
| 1489 | $.support.transition && this.$tip.hasClass('fade') ? | ||
| 1490 | $tip | ||
| 1491 | .one('bsTransitionEnd', complete) | ||
| 1492 | .emulateTransitionEnd(Tooltip.TRANSITION_DURATION) : | ||
| 1493 | complete() | ||
| 1494 | } | ||
| 1495 | } | ||
| 1496 | |||
| 1497 | Tooltip.prototype.applyPlacement = function (offset, placement) { | ||
| 1498 | var $tip = this.tip() | ||
| 1499 | var width = $tip[0].offsetWidth | ||
| 1500 | var height = $tip[0].offsetHeight | ||
| 1501 | |||
| 1502 | // manually read margins because getBoundingClientRect includes difference | ||
| 1503 | var marginTop = parseInt($tip.css('margin-top'), 10) | ||
| 1504 | var marginLeft = parseInt($tip.css('margin-left'), 10) | ||
| 1505 | |||
| 1506 | // we must check for NaN for ie 8/9 | ||
| 1507 | if (isNaN(marginTop)) marginTop = 0 | ||
| 1508 | if (isNaN(marginLeft)) marginLeft = 0 | ||
| 1509 | |||
| 1510 | offset.top += marginTop | ||
| 1511 | offset.left += marginLeft | ||
| 1512 | |||
| 1513 | // $.fn.offset doesn't round pixel values | ||
| 1514 | // so we use setOffset directly with our own function B-0 | ||
| 1515 | $.offset.setOffset($tip[0], $.extend({ | ||
| 1516 | using: function (props) { | ||
| 1517 | $tip.css({ | ||
| 1518 | top: Math.round(props.top), | ||
| 1519 | left: Math.round(props.left) | ||
| 1520 | }) | ||
| 1521 | } | ||
| 1522 | }, offset), 0) | ||
| 1523 | |||
| 1524 | $tip.addClass('in') | ||
| 1525 | |||
| 1526 | // check to see if placing tip in new offset caused the tip to resize itself | ||
| 1527 | var actualWidth = $tip[0].offsetWidth | ||
| 1528 | var actualHeight = $tip[0].offsetHeight | ||
| 1529 | |||
| 1530 | if (placement == 'top' && actualHeight != height) { | ||
| 1531 | offset.top = offset.top + height - actualHeight | ||
| 1532 | } | ||
| 1533 | |||
| 1534 | var delta = this.getViewportAdjustedDelta(placement, offset, actualWidth, actualHeight) | ||
| 1535 | |||
| 1536 | if (delta.left) offset.left += delta.left | ||
| 1537 | else offset.top += delta.top | ||
| 1538 | |||
| 1539 | var isVertical = /top|bottom/.test(placement) | ||
| 1540 | var arrowDelta = isVertical ? delta.left * 2 - width + actualWidth : delta.top * 2 - height + actualHeight | ||
| 1541 | var arrowOffsetPosition = isVertical ? 'offsetWidth' : 'offsetHeight' | ||
| 1542 | |||
| 1543 | $tip.offset(offset) | ||
| 1544 | this.replaceArrow(arrowDelta, $tip[0][arrowOffsetPosition], isVertical) | ||
| 1545 | } | ||
| 1546 | |||
| 1547 | Tooltip.prototype.replaceArrow = function (delta, dimension, isVertical) { | ||
| 1548 | this.arrow() | ||
| 1549 | .css(isVertical ? 'left' : 'top', 50 * (1 - delta / dimension) + '%') | ||
| 1550 | .css(isVertical ? 'top' : 'left', '') | ||
| 1551 | } | ||
| 1552 | |||
| 1553 | Tooltip.prototype.setContent = function () { | ||
| 1554 | var $tip = this.tip() | ||
| 1555 | var title = this.getTitle() | ||
| 1556 | |||
| 1557 | $tip.find('.tooltip-inner')[this.options.html ? 'html' : 'text'](title) | ||
| 1558 | $tip.removeClass('fade in top bottom left right') | ||
| 1559 | } | ||
| 1560 | |||
| 1561 | Tooltip.prototype.hide = function (callback) { | ||
| 1562 | var that = this | ||
| 1563 | var $tip = $(this.$tip) | ||
| 1564 | var e = $.Event('hide.bs.' + this.type) | ||
| 1565 | |||
| 1566 | function complete() { | ||
| 1567 | if (that.hoverState != 'in') $tip.detach() | ||
| 1568 | that.$element | ||
| 1569 | .removeAttr('aria-describedby') | ||
| 1570 | .trigger('hidden.bs.' + that.type) | ||
| 1571 | callback && callback() | ||
| 1572 | } | ||
| 1573 | |||
| 1574 | this.$element.trigger(e) | ||
| 1575 | |||
| 1576 | if (e.isDefaultPrevented()) return | ||
| 1577 | |||
| 1578 | $tip.removeClass('in') | ||
| 1579 | |||
| 1580 | $.support.transition && $tip.hasClass('fade') ? | ||
| 1581 | $tip | ||
| 1582 | .one('bsTransitionEnd', complete) | ||
| 1583 | .emulateTransitionEnd(Tooltip.TRANSITION_DURATION) : | ||
| 1584 | complete() | ||
| 1585 | |||
| 1586 | this.hoverState = null | ||
| 1587 | |||
| 1588 | return this | ||
| 1589 | } | ||
| 1590 | |||
| 1591 | Tooltip.prototype.fixTitle = function () { | ||
| 1592 | var $e = this.$element | ||
| 1593 | if ($e.attr('title') || typeof $e.attr('data-original-title') != 'string') { | ||
| 1594 | $e.attr('data-original-title', $e.attr('title') || '').attr('title', '') | ||
| 1595 | } | ||
| 1596 | } | ||
| 1597 | |||
| 1598 | Tooltip.prototype.hasContent = function () { | ||
| 1599 | return this.getTitle() | ||
| 1600 | } | ||
| 1601 | |||
| 1602 | Tooltip.prototype.getPosition = function ($element) { | ||
| 1603 | $element = $element || this.$element | ||
| 1604 | |||
| 1605 | var el = $element[0] | ||
| 1606 | var isBody = el.tagName == 'BODY' | ||
| 1607 | |||
| 1608 | var elRect = el.getBoundingClientRect() | ||
| 1609 | if (elRect.width == null) { | ||
| 1610 | // width and height are missing in IE8, so compute them manually; see https://github.com/twbs/bootstrap/issues/14093 | ||
| 1611 | elRect = $.extend({}, elRect, { width: elRect.right - elRect.left, height: elRect.bottom - elRect.top }) | ||
| 1612 | } | ||
| 1613 | var elOffset = isBody ? { top: 0, left: 0 } : $element.offset() | ||
| 1614 | var scroll = { scroll: isBody ? document.documentElement.scrollTop || document.body.scrollTop : $element.scrollTop() } | ||
| 1615 | var outerDims = isBody ? { width: $(window).width(), height: $(window).height() } : null | ||
| 1616 | |||
| 1617 | return $.extend({}, elRect, scroll, outerDims, elOffset) | ||
| 1618 | } | ||
| 1619 | |||
| 1620 | Tooltip.prototype.getCalculatedOffset = function (placement, pos, actualWidth, actualHeight) { | ||
| 1621 | return placement == 'bottom' ? { top: pos.top + pos.height, left: pos.left + pos.width / 2 - actualWidth / 2 } : | ||
| 1622 | placement == 'top' ? { top: pos.top - actualHeight, left: pos.left + pos.width / 2 - actualWidth / 2 } : | ||
| 1623 | placement == 'left' ? { top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left - actualWidth } : | ||
| 1624 | /* placement == 'right' */ { top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left + pos.width } | ||
| 1625 | |||
| 1626 | } | ||
| 1627 | |||
| 1628 | Tooltip.prototype.getViewportAdjustedDelta = function (placement, pos, actualWidth, actualHeight) { | ||
| 1629 | var delta = { top: 0, left: 0 } | ||
| 1630 | if (!this.$viewport) return delta | ||
| 1631 | |||
| 1632 | var viewportPadding = this.options.viewport && this.options.viewport.padding || 0 | ||
| 1633 | var viewportDimensions = this.getPosition(this.$viewport) | ||
| 1634 | |||
| 1635 | if (/right|left/.test(placement)) { | ||
| 1636 | var topEdgeOffset = pos.top - viewportPadding - viewportDimensions.scroll | ||
| 1637 | var bottomEdgeOffset = pos.top + viewportPadding - viewportDimensions.scroll + actualHeight | ||
| 1638 | if (topEdgeOffset < viewportDimensions.top) { // top overflow | ||
| 1639 | delta.top = viewportDimensions.top - topEdgeOffset | ||
| 1640 | } else if (bottomEdgeOffset > viewportDimensions.top + viewportDimensions.height) { // bottom overflow | ||
| 1641 | delta.top = viewportDimensions.top + viewportDimensions.height - bottomEdgeOffset | ||
| 1642 | } | ||
| 1643 | } else { | ||
| 1644 | var leftEdgeOffset = pos.left - viewportPadding | ||
| 1645 | var rightEdgeOffset = pos.left + viewportPadding + actualWidth | ||
| 1646 | if (leftEdgeOffset < viewportDimensions.left) { // left overflow | ||
| 1647 | delta.left = viewportDimensions.left - leftEdgeOffset | ||
| 1648 | } else if (rightEdgeOffset > viewportDimensions.right) { // right overflow | ||
| 1649 | delta.left = viewportDimensions.left + viewportDimensions.width - rightEdgeOffset | ||
| 1650 | } | ||
| 1651 | } | ||
| 1652 | |||
| 1653 | return delta | ||
| 1654 | } | ||
| 1655 | |||
| 1656 | Tooltip.prototype.getTitle = function () { | ||
| 1657 | var title | ||
| 1658 | var $e = this.$element | ||
| 1659 | var o = this.options | ||
| 1660 | |||
| 1661 | title = $e.attr('data-original-title') | ||
| 1662 | || (typeof o.title == 'function' ? o.title.call($e[0]) : o.title) | ||
| 1663 | |||
| 1664 | return title | ||
| 1665 | } | ||
| 1666 | |||
| 1667 | Tooltip.prototype.getUID = function (prefix) { | ||
| 1668 | do prefix += ~~(Math.random() * 1000000) | ||
| 1669 | while (document.getElementById(prefix)) | ||
| 1670 | return prefix | ||
| 1671 | } | ||
| 1672 | |||
| 1673 | Tooltip.prototype.tip = function () { | ||
| 1674 | if (!this.$tip) { | ||
| 1675 | this.$tip = $(this.options.template) | ||
| 1676 | if (this.$tip.length != 1) { | ||
| 1677 | throw new Error(this.type + ' `template` option must consist of exactly 1 top-level element!') | ||
| 1678 | } | ||
| 1679 | } | ||
| 1680 | return this.$tip | ||
| 1681 | } | ||
| 1682 | |||
| 1683 | Tooltip.prototype.arrow = function () { | ||
| 1684 | return (this.$arrow = this.$arrow || this.tip().find('.tooltip-arrow')) | ||
| 1685 | } | ||
| 1686 | |||
| 1687 | Tooltip.prototype.enable = function () { | ||
| 1688 | this.enabled = true | ||
| 1689 | } | ||
| 1690 | |||
| 1691 | Tooltip.prototype.disable = function () { | ||
| 1692 | this.enabled = false | ||
| 1693 | } | ||
| 1694 | |||
| 1695 | Tooltip.prototype.toggleEnabled = function () { | ||
| 1696 | this.enabled = !this.enabled | ||
| 1697 | } | ||
| 1698 | |||
| 1699 | Tooltip.prototype.toggle = function (e) { | ||
| 1700 | var self = this | ||
| 1701 | if (e) { | ||
| 1702 | self = $(e.currentTarget).data('bs.' + this.type) | ||
| 1703 | if (!self) { | ||
| 1704 | self = new this.constructor(e.currentTarget, this.getDelegateOptions()) | ||
| 1705 | $(e.currentTarget).data('bs.' + this.type, self) | ||
| 1706 | } | ||
| 1707 | } | ||
| 1708 | |||
| 1709 | if (e) { | ||
| 1710 | self.inState.click = !self.inState.click | ||
| 1711 | if (self.isInStateTrue()) self.enter(self) | ||
| 1712 | else self.leave(self) | ||
| 1713 | } else { | ||
| 1714 | self.tip().hasClass('in') ? self.leave(self) : self.enter(self) | ||
| 1715 | } | ||
| 1716 | } | ||
| 1717 | |||
| 1718 | Tooltip.prototype.destroy = function () { | ||
| 1719 | var that = this | ||
| 1720 | clearTimeout(this.timeout) | ||
| 1721 | this.hide(function () { | ||
| 1722 | that.$element.off('.' + that.type).removeData('bs.' + that.type) | ||
| 1723 | if (that.$tip) { | ||
| 1724 | that.$tip.detach() | ||
| 1725 | } | ||
| 1726 | that.$tip = null | ||
| 1727 | that.$arrow = null | ||
| 1728 | that.$viewport = null | ||
| 1729 | }) | ||
| 1730 | } | ||
| 1731 | |||
| 1732 | |||
| 1733 | // TOOLTIP PLUGIN DEFINITION | ||
| 1734 | // ========================= | ||
| 1735 | |||
| 1736 | function Plugin(option) { | ||
| 1737 | return this.each(function () { | ||
| 1738 | var $this = $(this) | ||
| 1739 | var data = $this.data('bs.tooltip') | ||
| 1740 | var options = typeof option == 'object' && option | ||
| 1741 | |||
| 1742 | if (!data && /destroy|hide/.test(option)) return | ||
| 1743 | if (!data) $this.data('bs.tooltip', (data = new Tooltip(this, options))) | ||
| 1744 | if (typeof option == 'string') data[option]() | ||
| 1745 | }) | ||
| 1746 | } | ||
| 1747 | |||
| 1748 | var old = $.fn.tooltip | ||
| 1749 | |||
| 1750 | $.fn.tooltip = Plugin | ||
| 1751 | $.fn.tooltip.Constructor = Tooltip | ||
| 1752 | |||
| 1753 | |||
| 1754 | // TOOLTIP NO CONFLICT | ||
| 1755 | // =================== | ||
| 1756 | |||
| 1757 | $.fn.tooltip.noConflict = function () { | ||
| 1758 | $.fn.tooltip = old | ||
| 1759 | return this | ||
| 1760 | } | ||
| 1761 | |||
| 1762 | }(jQuery); | ||
| 1763 | |||
| 1764 | /* ======================================================================== | ||
| 1765 | * Bootstrap: popover.js v3.3.6 | ||
| 1766 | * http://getbootstrap.com/javascript/#popovers | ||
| 1767 | * ======================================================================== | ||
| 1768 | * Copyright 2011-2015 Twitter, Inc. | ||
| 1769 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) | ||
| 1770 | * ======================================================================== */ | ||
| 1771 | |||
| 1772 | |||
| 1773 | +function ($) { | ||
| 1774 | 'use strict'; | ||
| 1775 | |||
| 1776 | // POPOVER PUBLIC CLASS DEFINITION | ||
| 1777 | // =============================== | ||
| 1778 | |||
| 1779 | var Popover = function (element, options) { | ||
| 1780 | this.init('popover', element, options) | ||
| 1781 | } | ||
| 1782 | |||
| 1783 | if (!$.fn.tooltip) throw new Error('Popover requires tooltip.js') | ||
| 1784 | |||
| 1785 | Popover.VERSION = '3.3.6' | ||
| 1786 | |||
| 1787 | Popover.DEFAULTS = $.extend({}, $.fn.tooltip.Constructor.DEFAULTS, { | ||
| 1788 | placement: 'right', | ||
| 1789 | trigger: 'click', | ||
| 1790 | content: '', | ||
| 1791 | template: '<div class="popover" role="tooltip"><div class="arrow"></div><h3 class="popover-title"></h3><div class="popover-content"></div></div>' | ||
| 1792 | }) | ||
| 1793 | |||
| 1794 | |||
| 1795 | // NOTE: POPOVER EXTENDS tooltip.js | ||
| 1796 | // ================================ | ||
| 1797 | |||
| 1798 | Popover.prototype = $.extend({}, $.fn.tooltip.Constructor.prototype) | ||
| 1799 | |||
| 1800 | Popover.prototype.constructor = Popover | ||
| 1801 | |||
| 1802 | Popover.prototype.getDefaults = function () { | ||
| 1803 | return Popover.DEFAULTS | ||
| 1804 | } | ||
| 1805 | |||
| 1806 | Popover.prototype.setContent = function () { | ||
| 1807 | var $tip = this.tip() | ||
| 1808 | var title = this.getTitle() | ||
| 1809 | var content = this.getContent() | ||
| 1810 | |||
| 1811 | $tip.find('.popover-title')[this.options.html ? 'html' : 'text'](title) | ||
| 1812 | $tip.find('.popover-content').children().detach().end()[ // we use append for html objects to maintain js events | ||
| 1813 | this.options.html ? (typeof content == 'string' ? 'html' : 'append') : 'text' | ||
| 1814 | ](content) | ||
| 1815 | |||
| 1816 | $tip.removeClass('fade top bottom left right in') | ||
| 1817 | |||
| 1818 | // IE8 doesn't accept hiding via the `:empty` pseudo selector, we have to do | ||
| 1819 | // this manually by checking the contents. | ||
| 1820 | if (!$tip.find('.popover-title').html()) $tip.find('.popover-title').hide() | ||
| 1821 | } | ||
| 1822 | |||
| 1823 | Popover.prototype.hasContent = function () { | ||
| 1824 | return this.getTitle() || this.getContent() | ||
| 1825 | } | ||
| 1826 | |||
| 1827 | Popover.prototype.getContent = function () { | ||
| 1828 | var $e = this.$element | ||
| 1829 | var o = this.options | ||
| 1830 | |||
| 1831 | return $e.attr('data-content') | ||
| 1832 | || (typeof o.content == 'function' ? | ||
| 1833 | o.content.call($e[0]) : | ||
| 1834 | o.content) | ||
| 1835 | } | ||
| 1836 | |||
| 1837 | Popover.prototype.arrow = function () { | ||
| 1838 | return (this.$arrow = this.$arrow || this.tip().find('.arrow')) | ||
| 1839 | } | ||
| 1840 | |||
| 1841 | |||
| 1842 | // POPOVER PLUGIN DEFINITION | ||
| 1843 | // ========================= | ||
| 1844 | |||
| 1845 | function Plugin(option) { | ||
| 1846 | return this.each(function () { | ||
| 1847 | var $this = $(this) | ||
| 1848 | var data = $this.data('bs.popover') | ||
| 1849 | var options = typeof option == 'object' && option | ||
| 1850 | |||
| 1851 | if (!data && /destroy|hide/.test(option)) return | ||
| 1852 | if (!data) $this.data('bs.popover', (data = new Popover(this, options))) | ||
| 1853 | if (typeof option == 'string') data[option]() | ||
| 1854 | }) | ||
| 1855 | } | ||
| 1856 | |||
| 1857 | var old = $.fn.popover | ||
| 1858 | |||
| 1859 | $.fn.popover = Plugin | ||
| 1860 | $.fn.popover.Constructor = Popover | ||
| 1861 | |||
| 1862 | |||
| 1863 | // POPOVER NO CONFLICT | ||
| 1864 | // =================== | ||
| 1865 | |||
| 1866 | $.fn.popover.noConflict = function () { | ||
| 1867 | $.fn.popover = old | ||
| 1868 | return this | ||
| 1869 | } | ||
| 1870 | |||
| 1871 | }(jQuery); | ||
| 1872 | |||
| 1873 | /* ======================================================================== | ||
| 1874 | * Bootstrap: scrollspy.js v3.3.6 | ||
| 1875 | * http://getbootstrap.com/javascript/#scrollspy | ||
| 1876 | * ======================================================================== | ||
| 1877 | * Copyright 2011-2015 Twitter, Inc. | ||
| 1878 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) | ||
| 1879 | * ======================================================================== */ | ||
| 1880 | |||
| 1881 | |||
| 1882 | +function ($) { | ||
| 1883 | 'use strict'; | ||
| 1884 | |||
| 1885 | // SCROLLSPY CLASS DEFINITION | ||
| 1886 | // ========================== | ||
| 1887 | |||
| 1888 | function ScrollSpy(element, options) { | ||
| 1889 | this.$body = $(document.body) | ||
| 1890 | this.$scrollElement = $(element).is(document.body) ? $(window) : $(element) | ||
| 1891 | this.options = $.extend({}, ScrollSpy.DEFAULTS, options) | ||
| 1892 | this.selector = (this.options.target || '') + ' .nav li > a' | ||
| 1893 | this.offsets = [] | ||
| 1894 | this.targets = [] | ||
| 1895 | this.activeTarget = null | ||
| 1896 | this.scrollHeight = 0 | ||
| 1897 | |||
| 1898 | this.$scrollElement.on('scroll.bs.scrollspy', $.proxy(this.process, this)) | ||
| 1899 | this.refresh() | ||
| 1900 | this.process() | ||
| 1901 | } | ||
| 1902 | |||
| 1903 | ScrollSpy.VERSION = '3.3.6' | ||
| 1904 | |||
| 1905 | ScrollSpy.DEFAULTS = { | ||
| 1906 | offset: 10 | ||
| 1907 | } | ||
| 1908 | |||
| 1909 | ScrollSpy.prototype.getScrollHeight = function () { | ||
| 1910 | return this.$scrollElement[0].scrollHeight || Math.max(this.$body[0].scrollHeight, document.documentElement.scrollHeight) | ||
| 1911 | } | ||
| 1912 | |||
| 1913 | ScrollSpy.prototype.refresh = function () { | ||
| 1914 | var that = this | ||
| 1915 | var offsetMethod = 'offset' | ||
| 1916 | var offsetBase = 0 | ||
| 1917 | |||
| 1918 | this.offsets = [] | ||
| 1919 | this.targets = [] | ||
| 1920 | this.scrollHeight = this.getScrollHeight() | ||
| 1921 | |||
| 1922 | if (!$.isWindow(this.$scrollElement[0])) { | ||
| 1923 | offsetMethod = 'position' | ||
| 1924 | offsetBase = this.$scrollElement.scrollTop() | ||
| 1925 | } | ||
| 1926 | |||
| 1927 | this.$body | ||
| 1928 | .find(this.selector) | ||
| 1929 | .map(function () { | ||
| 1930 | var $el = $(this) | ||
| 1931 | var href = $el.data('target') || $el.attr('href') | ||
| 1932 | var $href = /^#./.test(href) && $(href) | ||
| 1933 | |||
| 1934 | return ($href | ||
| 1935 | && $href.length | ||
| 1936 | && $href.is(':visible') | ||
| 1937 | && [[$href[offsetMethod]().top + offsetBase, href]]) || null | ||
| 1938 | }) | ||
| 1939 | .sort(function (a, b) { return a[0] - b[0] }) | ||
| 1940 | .each(function () { | ||
| 1941 | that.offsets.push(this[0]) | ||
| 1942 | that.targets.push(this[1]) | ||
| 1943 | }) | ||
| 1944 | } | ||
| 1945 | |||
| 1946 | ScrollSpy.prototype.process = function () { | ||
| 1947 | var scrollTop = this.$scrollElement.scrollTop() + this.options.offset | ||
| 1948 | var scrollHeight = this.getScrollHeight() | ||
| 1949 | var maxScroll = this.options.offset + scrollHeight - this.$scrollElement.height() | ||
| 1950 | var offsets = this.offsets | ||
| 1951 | var targets = this.targets | ||
| 1952 | var activeTarget = this.activeTarget | ||
| 1953 | var i | ||
| 1954 | |||
| 1955 | if (this.scrollHeight != scrollHeight) { | ||
| 1956 | this.refresh() | ||
| 1957 | } | ||
| 1958 | |||
| 1959 | if (scrollTop >= maxScroll) { | ||
| 1960 | return activeTarget != (i = targets[targets.length - 1]) && this.activate(i) | ||
| 1961 | } | ||
| 1962 | |||
| 1963 | if (activeTarget && scrollTop < offsets[0]) { | ||
| 1964 | this.activeTarget = null | ||
| 1965 | return this.clear() | ||
| 1966 | } | ||
| 1967 | |||
| 1968 | for (i = offsets.length; i--;) { | ||
| 1969 | activeTarget != targets[i] | ||
| 1970 | && scrollTop >= offsets[i] | ||
| 1971 | && (offsets[i + 1] === undefined || scrollTop < offsets[i + 1]) | ||
| 1972 | && this.activate(targets[i]) | ||
| 1973 | } | ||
| 1974 | } | ||
| 1975 | |||
| 1976 | ScrollSpy.prototype.activate = function (target) { | ||
| 1977 | this.activeTarget = target | ||
| 1978 | |||
| 1979 | this.clear() | ||
| 1980 | |||
| 1981 | var selector = this.selector + | ||
| 1982 | '[data-target="' + target + '"],' + | ||
| 1983 | this.selector + '[href="' + target + '"]' | ||
| 1984 | |||
| 1985 | var active = $(selector) | ||
| 1986 | .parents('li') | ||
| 1987 | .addClass('active') | ||
| 1988 | |||
| 1989 | if (active.parent('.dropdown-menu').length) { | ||
| 1990 | active = active | ||
| 1991 | .closest('li.dropdown') | ||
| 1992 | .addClass('active') | ||
| 1993 | } | ||
| 1994 | |||
| 1995 | active.trigger('activate.bs.scrollspy') | ||
| 1996 | } | ||
| 1997 | |||
| 1998 | ScrollSpy.prototype.clear = function () { | ||
| 1999 | $(this.selector) | ||
| 2000 | .parentsUntil(this.options.target, '.active') | ||
| 2001 | .removeClass('active') | ||
| 2002 | } | ||
| 2003 | |||
| 2004 | |||
| 2005 | // SCROLLSPY PLUGIN DEFINITION | ||
| 2006 | // =========================== | ||
| 2007 | |||
| 2008 | function Plugin(option) { | ||
| 2009 | return this.each(function () { | ||
| 2010 | var $this = $(this) | ||
| 2011 | var data = $this.data('bs.scrollspy') | ||
| 2012 | var options = typeof option == 'object' && option | ||
| 2013 | |||
| 2014 | if (!data) $this.data('bs.scrollspy', (data = new ScrollSpy(this, options))) | ||
| 2015 | if (typeof option == 'string') data[option]() | ||
| 2016 | }) | ||
| 2017 | } | ||
| 2018 | |||
| 2019 | var old = $.fn.scrollspy | ||
| 2020 | |||
| 2021 | $.fn.scrollspy = Plugin | ||
| 2022 | $.fn.scrollspy.Constructor = ScrollSpy | ||
| 2023 | |||
| 2024 | |||
| 2025 | // SCROLLSPY NO CONFLICT | ||
| 2026 | // ===================== | ||
| 2027 | |||
| 2028 | $.fn.scrollspy.noConflict = function () { | ||
| 2029 | $.fn.scrollspy = old | ||
| 2030 | return this | ||
| 2031 | } | ||
| 2032 | |||
| 2033 | |||
| 2034 | // SCROLLSPY DATA-API | ||
| 2035 | // ================== | ||
| 2036 | |||
| 2037 | $(window).on('load.bs.scrollspy.data-api', function () { | ||
| 2038 | $('[data-spy="scroll"]').each(function () { | ||
| 2039 | var $spy = $(this) | ||
| 2040 | Plugin.call($spy, $spy.data()) | ||
| 2041 | }) | ||
| 2042 | }) | ||
| 2043 | |||
| 2044 | }(jQuery); | ||
| 2045 | |||
| 2046 | /* ======================================================================== | ||
| 2047 | * Bootstrap: tab.js v3.3.6 | ||
| 2048 | * http://getbootstrap.com/javascript/#tabs | ||
| 2049 | * ======================================================================== | ||
| 2050 | * Copyright 2011-2015 Twitter, Inc. | ||
| 2051 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) | ||
| 2052 | * ======================================================================== */ | ||
| 2053 | |||
| 2054 | |||
| 2055 | +function ($) { | ||
| 2056 | 'use strict'; | ||
| 2057 | |||
| 2058 | // TAB CLASS DEFINITION | ||
| 2059 | // ==================== | ||
| 2060 | |||
| 2061 | var Tab = function (element) { | ||
| 2062 | // jscs:disable requireDollarBeforejQueryAssignment | ||
| 2063 | this.element = $(element) | ||
| 2064 | // jscs:enable requireDollarBeforejQueryAssignment | ||
| 2065 | } | ||
| 2066 | |||
| 2067 | Tab.VERSION = '3.3.6' | ||
| 2068 | |||
| 2069 | Tab.TRANSITION_DURATION = 150 | ||
| 2070 | |||
| 2071 | Tab.prototype.show = function () { | ||
| 2072 | var $this = this.element | ||
| 2073 | var $ul = $this.closest('ul:not(.dropdown-menu)') | ||
| 2074 | var selector = $this.data('target') | ||
| 2075 | |||
| 2076 | if (!selector) { | ||
| 2077 | selector = $this.attr('href') | ||
| 2078 | selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') // strip for ie7 | ||
| 2079 | } | ||
| 2080 | |||
| 2081 | if ($this.parent('li').hasClass('active')) return | ||
| 2082 | |||
| 2083 | var $previous = $ul.find('.active:last a') | ||
| 2084 | var hideEvent = $.Event('hide.bs.tab', { | ||
| 2085 | relatedTarget: $this[0] | ||
| 2086 | }) | ||
| 2087 | var showEvent = $.Event('show.bs.tab', { | ||
| 2088 | relatedTarget: $previous[0] | ||
| 2089 | }) | ||
| 2090 | |||
| 2091 | $previous.trigger(hideEvent) | ||
| 2092 | $this.trigger(showEvent) | ||
| 2093 | |||
| 2094 | if (showEvent.isDefaultPrevented() || hideEvent.isDefaultPrevented()) return | ||
| 2095 | |||
| 2096 | var $target = $(selector) | ||
| 2097 | |||
| 2098 | this.activate($this.closest('li'), $ul) | ||
| 2099 | this.activate($target, $target.parent(), function () { | ||
| 2100 | $previous.trigger({ | ||
| 2101 | type: 'hidden.bs.tab', | ||
| 2102 | relatedTarget: $this[0] | ||
| 2103 | }) | ||
| 2104 | $this.trigger({ | ||
| 2105 | type: 'shown.bs.tab', | ||
| 2106 | relatedTarget: $previous[0] | ||
| 2107 | }) | ||
| 2108 | }) | ||
| 2109 | } | ||
| 2110 | |||
| 2111 | Tab.prototype.activate = function (element, container, callback) { | ||
| 2112 | var $active = container.find('> .active') | ||
| 2113 | var transition = callback | ||
| 2114 | && $.support.transition | ||
| 2115 | && ($active.length && $active.hasClass('fade') || !!container.find('> .fade').length) | ||
| 2116 | |||
| 2117 | function next() { | ||
| 2118 | $active | ||
| 2119 | .removeClass('active') | ||
| 2120 | .find('> .dropdown-menu > .active') | ||
| 2121 | .removeClass('active') | ||
| 2122 | .end() | ||
| 2123 | .find('[data-toggle="tab"]') | ||
| 2124 | .attr('aria-expanded', false) | ||
| 2125 | |||
| 2126 | element | ||
| 2127 | .addClass('active') | ||
| 2128 | .find('[data-toggle="tab"]') | ||
| 2129 | .attr('aria-expanded', true) | ||
| 2130 | |||
| 2131 | if (transition) { | ||
| 2132 | element[0].offsetWidth // reflow for transition | ||
| 2133 | element.addClass('in') | ||
| 2134 | } else { | ||
| 2135 | element.removeClass('fade') | ||
| 2136 | } | ||
| 2137 | |||
| 2138 | if (element.parent('.dropdown-menu').length) { | ||
| 2139 | element | ||
| 2140 | .closest('li.dropdown') | ||
| 2141 | .addClass('active') | ||
| 2142 | .end() | ||
| 2143 | .find('[data-toggle="tab"]') | ||
| 2144 | .attr('aria-expanded', true) | ||
| 2145 | } | ||
| 2146 | |||
| 2147 | callback && callback() | ||
| 2148 | } | ||
| 2149 | |||
| 2150 | $active.length && transition ? | ||
| 2151 | $active | ||
| 2152 | .one('bsTransitionEnd', next) | ||
| 2153 | .emulateTransitionEnd(Tab.TRANSITION_DURATION) : | ||
| 2154 | next() | ||
| 2155 | |||
| 2156 | $active.removeClass('in') | ||
| 2157 | } | ||
| 2158 | |||
| 2159 | |||
| 2160 | // TAB PLUGIN DEFINITION | ||
| 2161 | // ===================== | ||
| 2162 | |||
| 2163 | function Plugin(option) { | ||
| 2164 | return this.each(function () { | ||
| 2165 | var $this = $(this) | ||
| 2166 | var data = $this.data('bs.tab') | ||
| 2167 | |||
| 2168 | if (!data) $this.data('bs.tab', (data = new Tab(this))) | ||
| 2169 | if (typeof option == 'string') data[option]() | ||
| 2170 | }) | ||
| 2171 | } | ||
| 2172 | |||
| 2173 | var old = $.fn.tab | ||
| 2174 | |||
| 2175 | $.fn.tab = Plugin | ||
| 2176 | $.fn.tab.Constructor = Tab | ||
| 2177 | |||
| 2178 | |||
| 2179 | // TAB NO CONFLICT | ||
| 2180 | // =============== | ||
| 2181 | |||
| 2182 | $.fn.tab.noConflict = function () { | ||
| 2183 | $.fn.tab = old | ||
| 2184 | return this | ||
| 2185 | } | ||
| 2186 | |||
| 2187 | |||
| 2188 | // TAB DATA-API | ||
| 2189 | // ============ | ||
| 2190 | |||
| 2191 | var clickHandler = function (e) { | ||
| 2192 | e.preventDefault() | ||
| 2193 | Plugin.call($(this), 'show') | ||
| 2194 | } | ||
| 2195 | |||
| 2196 | $(document) | ||
| 2197 | .on('click.bs.tab.data-api', '[data-toggle="tab"]', clickHandler) | ||
| 2198 | .on('click.bs.tab.data-api', '[data-toggle="pill"]', clickHandler) | ||
| 2199 | |||
| 2200 | }(jQuery); | ||
| 2201 | |||
| 2202 | /* ======================================================================== | ||
| 2203 | * Bootstrap: affix.js v3.3.6 | ||
| 2204 | * http://getbootstrap.com/javascript/#affix | ||
| 2205 | * ======================================================================== | ||
| 2206 | * Copyright 2011-2015 Twitter, Inc. | ||
| 2207 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) | ||
| 2208 | * ======================================================================== */ | ||
| 2209 | |||
| 2210 | |||
| 2211 | +function ($) { | ||
| 2212 | 'use strict'; | ||
| 2213 | |||
| 2214 | // AFFIX CLASS DEFINITION | ||
| 2215 | // ====================== | ||
| 2216 | |||
| 2217 | var Affix = function (element, options) { | ||
| 2218 | this.options = $.extend({}, Affix.DEFAULTS, options) | ||
| 2219 | |||
| 2220 | this.$target = $(this.options.target) | ||
| 2221 | .on('scroll.bs.affix.data-api', $.proxy(this.checkPosition, this)) | ||
| 2222 | .on('click.bs.affix.data-api', $.proxy(this.checkPositionWithEventLoop, this)) | ||
| 2223 | |||
| 2224 | this.$element = $(element) | ||
| 2225 | this.affixed = null | ||
| 2226 | this.unpin = null | ||
| 2227 | this.pinnedOffset = null | ||
| 2228 | |||
| 2229 | this.checkPosition() | ||
| 2230 | } | ||
| 2231 | |||
| 2232 | Affix.VERSION = '3.3.6' | ||
| 2233 | |||
| 2234 | Affix.RESET = 'affix affix-top affix-bottom' | ||
| 2235 | |||
| 2236 | Affix.DEFAULTS = { | ||
| 2237 | offset: 0, | ||
| 2238 | target: window | ||
| 2239 | } | ||
| 2240 | |||
| 2241 | Affix.prototype.getState = function (scrollHeight, height, offsetTop, offsetBottom) { | ||
| 2242 | var scrollTop = this.$target.scrollTop() | ||
| 2243 | var position = this.$element.offset() | ||
| 2244 | var targetHeight = this.$target.height() | ||
| 2245 | |||
| 2246 | if (offsetTop != null && this.affixed == 'top') return scrollTop < offsetTop ? 'top' : false | ||
| 2247 | |||
| 2248 | if (this.affixed == 'bottom') { | ||
| 2249 | if (offsetTop != null) return (scrollTop + this.unpin <= position.top) ? false : 'bottom' | ||
| 2250 | return (scrollTop + targetHeight <= scrollHeight - offsetBottom) ? false : 'bottom' | ||
| 2251 | } | ||
| 2252 | |||
| 2253 | var initializing = this.affixed == null | ||
| 2254 | var colliderTop = initializing ? scrollTop : position.top | ||
| 2255 | var colliderHeight = initializing ? targetHeight : height | ||
| 2256 | |||
| 2257 | if (offsetTop != null && scrollTop <= offsetTop) return 'top' | ||
| 2258 | if (offsetBottom != null && (colliderTop + colliderHeight >= scrollHeight - offsetBottom)) return 'bottom' | ||
| 2259 | |||
| 2260 | return false | ||
| 2261 | } | ||
| 2262 | |||
| 2263 | Affix.prototype.getPinnedOffset = function () { | ||
| 2264 | if (this.pinnedOffset) return this.pinnedOffset | ||
| 2265 | this.$element.removeClass(Affix.RESET).addClass('affix') | ||
| 2266 | var scrollTop = this.$target.scrollTop() | ||
| 2267 | var position = this.$element.offset() | ||
| 2268 | return (this.pinnedOffset = position.top - scrollTop) | ||
| 2269 | } | ||
| 2270 | |||
| 2271 | Affix.prototype.checkPositionWithEventLoop = function () { | ||
| 2272 | setTimeout($.proxy(this.checkPosition, this), 1) | ||
| 2273 | } | ||
| 2274 | |||
| 2275 | Affix.prototype.checkPosition = function () { | ||
| 2276 | if (!this.$element.is(':visible')) return | ||
| 2277 | |||
| 2278 | var height = this.$element.height() | ||
| 2279 | var offset = this.options.offset | ||
| 2280 | var offsetTop = offset.top | ||
| 2281 | var offsetBottom = offset.bottom | ||
| 2282 | var scrollHeight = Math.max($(document).height(), $(document.body).height()) | ||
| 2283 | |||
| 2284 | if (typeof offset != 'object') offsetBottom = offsetTop = offset | ||
| 2285 | if (typeof offsetTop == 'function') offsetTop = offset.top(this.$element) | ||
| 2286 | if (typeof offsetBottom == 'function') offsetBottom = offset.bottom(this.$element) | ||
| 2287 | |||
| 2288 | var affix = this.getState(scrollHeight, height, offsetTop, offsetBottom) | ||
| 2289 | |||
| 2290 | if (this.affixed != affix) { | ||
| 2291 | if (this.unpin != null) this.$element.css('top', '') | ||
| 2292 | |||
| 2293 | var affixType = 'affix' + (affix ? '-' + affix : '') | ||
| 2294 | var e = $.Event(affixType + '.bs.affix') | ||
| 2295 | |||
| 2296 | this.$element.trigger(e) | ||
| 2297 | |||
| 2298 | if (e.isDefaultPrevented()) return | ||
| 2299 | |||
| 2300 | this.affixed = affix | ||
| 2301 | this.unpin = affix == 'bottom' ? this.getPinnedOffset() : null | ||
| 2302 | |||
| 2303 | this.$element | ||
| 2304 | .removeClass(Affix.RESET) | ||
| 2305 | .addClass(affixType) | ||
| 2306 | .trigger(affixType.replace('affix', 'affixed') + '.bs.affix') | ||
| 2307 | } | ||
| 2308 | |||
| 2309 | if (affix == 'bottom') { | ||
| 2310 | this.$element.offset({ | ||
| 2311 | top: scrollHeight - height - offsetBottom | ||
| 2312 | }) | ||
| 2313 | } | ||
| 2314 | } | ||
| 2315 | |||
| 2316 | |||
| 2317 | // AFFIX PLUGIN DEFINITION | ||
| 2318 | // ======================= | ||
| 2319 | |||
| 2320 | function Plugin(option) { | ||
| 2321 | return this.each(function () { | ||
| 2322 | var $this = $(this) | ||
| 2323 | var data = $this.data('bs.affix') | ||
| 2324 | var options = typeof option == 'object' && option | ||
| 2325 | |||
| 2326 | if (!data) $this.data('bs.affix', (data = new Affix(this, options))) | ||
| 2327 | if (typeof option == 'string') data[option]() | ||
| 2328 | }) | ||
| 2329 | } | ||
| 2330 | |||
| 2331 | var old = $.fn.affix | ||
| 2332 | |||
| 2333 | $.fn.affix = Plugin | ||
| 2334 | $.fn.affix.Constructor = Affix | ||
| 2335 | |||
| 2336 | |||
| 2337 | // AFFIX NO CONFLICT | ||
| 2338 | // ================= | ||
| 2339 | |||
| 2340 | $.fn.affix.noConflict = function () { | ||
| 2341 | $.fn.affix = old | ||
| 2342 | return this | ||
| 2343 | } | ||
| 2344 | |||
| 2345 | |||
| 2346 | // AFFIX DATA-API | ||
| 2347 | // ============== | ||
| 2348 | |||
| 2349 | $(window).on('load', function () { | ||
| 2350 | $('[data-spy="affix"]').each(function () { | ||
| 2351 | var $spy = $(this) | ||
| 2352 | var data = $spy.data() | ||
| 2353 | |||
| 2354 | data.offset = data.offset || {} | ||
| 2355 | |||
| 2356 | if (data.offsetBottom != null) data.offset.bottom = data.offsetBottom | ||
| 2357 | if (data.offsetTop != null) data.offset.top = data.offsetTop | ||
| 2358 | |||
| 2359 | Plugin.call($spy, data) | ||
| 2360 | }) | ||
| 2361 | }) | ||
| 2362 | |||
| 2363 | }(jQuery); |
bootstrap/js/bootstrap.min.js
0 → 100644
| 1 | /*! | ||
| 2 | * Bootstrap v3.3.6 (http://getbootstrap.com) | ||
| 3 | * Copyright 2011-2015 Twitter, Inc. | ||
| 4 | * Licensed under the MIT license | ||
| 5 | */ | ||
| 6 | if("undefined"==typeof jQuery)throw new Error("Bootstrap's JavaScript requires jQuery");+function(a){"use strict";var b=a.fn.jquery.split(" ")[0].split(".");if(b[0]<2&&b[1]<9||1==b[0]&&9==b[1]&&b[2]<1||b[0]>2)throw new Error("Bootstrap's JavaScript requires jQuery version 1.9.1 or higher, but lower than version 3")}(jQuery),+function(a){"use strict";function b(){var a=document.createElement("bootstrap"),b={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"};for(var c in b)if(void 0!==a.style[c])return{end:b[c]};return!1}a.fn.emulateTransitionEnd=function(b){var c=!1,d=this;a(this).one("bsTransitionEnd",function(){c=!0});var e=function(){c||a(d).trigger(a.support.transition.end)};return setTimeout(e,b),this},a(function(){a.support.transition=b(),a.support.transition&&(a.event.special.bsTransitionEnd={bindType:a.support.transition.end,delegateType:a.support.transition.end,handle:function(b){return a(b.target).is(this)?b.handleObj.handler.apply(this,arguments):void 0}})})}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var c=a(this),e=c.data("bs.alert");e||c.data("bs.alert",e=new d(this)),"string"==typeof b&&e[b].call(c)})}var c='[data-dismiss="alert"]',d=function(b){a(b).on("click",c,this.close)};d.VERSION="3.3.6",d.TRANSITION_DURATION=150,d.prototype.close=function(b){function c(){g.detach().trigger("closed.bs.alert").remove()}var e=a(this),f=e.attr("data-target");f||(f=e.attr("href"),f=f&&f.replace(/.*(?=#[^\s]*$)/,""));var g=a(f);b&&b.preventDefault(),g.length||(g=e.closest(".alert")),g.trigger(b=a.Event("close.bs.alert")),b.isDefaultPrevented()||(g.removeClass("in"),a.support.transition&&g.hasClass("fade")?g.one("bsTransitionEnd",c).emulateTransitionEnd(d.TRANSITION_DURATION):c())};var e=a.fn.alert;a.fn.alert=b,a.fn.alert.Constructor=d,a.fn.alert.noConflict=function(){return a.fn.alert=e,this},a(document).on("click.bs.alert.data-api",c,d.prototype.close)}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.button"),f="object"==typeof b&&b;e||d.data("bs.button",e=new c(this,f)),"toggle"==b?e.toggle():b&&e.setState(b)})}var c=function(b,d){this.$element=a(b),this.options=a.extend({},c.DEFAULTS,d),this.isLoading=!1};c.VERSION="3.3.6",c.DEFAULTS={loadingText:"loading..."},c.prototype.setState=function(b){var c="disabled",d=this.$element,e=d.is("input")?"val":"html",f=d.data();b+="Text",null==f.resetText&&d.data("resetText",d[e]()),setTimeout(a.proxy(function(){d[e](null==f[b]?this.options[b]:f[b]),"loadingText"==b?(this.isLoading=!0,d.addClass(c).attr(c,c)):this.isLoading&&(this.isLoading=!1,d.removeClass(c).removeAttr(c))},this),0)},c.prototype.toggle=function(){var a=!0,b=this.$element.closest('[data-toggle="buttons"]');if(b.length){var c=this.$element.find("input");"radio"==c.prop("type")?(c.prop("checked")&&(a=!1),b.find(".active").removeClass("active"),this.$element.addClass("active")):"checkbox"==c.prop("type")&&(c.prop("checked")!==this.$element.hasClass("active")&&(a=!1),this.$element.toggleClass("active")),c.prop("checked",this.$element.hasClass("active")),a&&c.trigger("change")}else this.$element.attr("aria-pressed",!this.$element.hasClass("active")),this.$element.toggleClass("active")};var d=a.fn.button;a.fn.button=b,a.fn.button.Constructor=c,a.fn.button.noConflict=function(){return a.fn.button=d,this},a(document).on("click.bs.button.data-api",'[data-toggle^="button"]',function(c){var d=a(c.target);d.hasClass("btn")||(d=d.closest(".btn")),b.call(d,"toggle"),a(c.target).is('input[type="radio"]')||a(c.target).is('input[type="checkbox"]')||c.preventDefault()}).on("focus.bs.button.data-api blur.bs.button.data-api",'[data-toggle^="button"]',function(b){a(b.target).closest(".btn").toggleClass("focus",/^focus(in)?$/.test(b.type))})}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.carousel"),f=a.extend({},c.DEFAULTS,d.data(),"object"==typeof b&&b),g="string"==typeof b?b:f.slide;e||d.data("bs.carousel",e=new c(this,f)),"number"==typeof b?e.to(b):g?e[g]():f.interval&&e.pause().cycle()})}var c=function(b,c){this.$element=a(b),this.$indicators=this.$element.find(".carousel-indicators"),this.options=c,this.paused=null,this.sliding=null,this.interval=null,this.$active=null,this.$items=null,this.options.keyboard&&this.$element.on("keydown.bs.carousel",a.proxy(this.keydown,this)),"hover"==this.options.pause&&!("ontouchstart"in document.documentElement)&&this.$element.on("mouseenter.bs.carousel",a.proxy(this.pause,this)).on("mouseleave.bs.carousel",a.proxy(this.cycle,this))};c.VERSION="3.3.6",c.TRANSITION_DURATION=600,c.DEFAULTS={interval:5e3,pause:"hover",wrap:!0,keyboard:!0},c.prototype.keydown=function(a){if(!/input|textarea/i.test(a.target.tagName)){switch(a.which){case 37:this.prev();break;case 39:this.next();break;default:return}a.preventDefault()}},c.prototype.cycle=function(b){return b||(this.paused=!1),this.interval&&clearInterval(this.interval),this.options.interval&&!this.paused&&(this.interval=setInterval(a.proxy(this.next,this),this.options.interval)),this},c.prototype.getItemIndex=function(a){return this.$items=a.parent().children(".item"),this.$items.index(a||this.$active)},c.prototype.getItemForDirection=function(a,b){var c=this.getItemIndex(b),d="prev"==a&&0===c||"next"==a&&c==this.$items.length-1;if(d&&!this.options.wrap)return b;var e="prev"==a?-1:1,f=(c+e)%this.$items.length;return this.$items.eq(f)},c.prototype.to=function(a){var b=this,c=this.getItemIndex(this.$active=this.$element.find(".item.active"));return a>this.$items.length-1||0>a?void 0:this.sliding?this.$element.one("slid.bs.carousel",function(){b.to(a)}):c==a?this.pause().cycle():this.slide(a>c?"next":"prev",this.$items.eq(a))},c.prototype.pause=function(b){return b||(this.paused=!0),this.$element.find(".next, .prev").length&&a.support.transition&&(this.$element.trigger(a.support.transition.end),this.cycle(!0)),this.interval=clearInterval(this.interval),this},c.prototype.next=function(){return this.sliding?void 0:this.slide("next")},c.prototype.prev=function(){return this.sliding?void 0:this.slide("prev")},c.prototype.slide=function(b,d){var e=this.$element.find(".item.active"),f=d||this.getItemForDirection(b,e),g=this.interval,h="next"==b?"left":"right",i=this;if(f.hasClass("active"))return this.sliding=!1;var j=f[0],k=a.Event("slide.bs.carousel",{relatedTarget:j,direction:h});if(this.$element.trigger(k),!k.isDefaultPrevented()){if(this.sliding=!0,g&&this.pause(),this.$indicators.length){this.$indicators.find(".active").removeClass("active");var l=a(this.$indicators.children()[this.getItemIndex(f)]);l&&l.addClass("active")}var m=a.Event("slid.bs.carousel",{relatedTarget:j,direction:h});return a.support.transition&&this.$element.hasClass("slide")?(f.addClass(b),f[0].offsetWidth,e.addClass(h),f.addClass(h),e.one("bsTransitionEnd",function(){f.removeClass([b,h].join(" ")).addClass("active"),e.removeClass(["active",h].join(" ")),i.sliding=!1,setTimeout(function(){i.$element.trigger(m)},0)}).emulateTransitionEnd(c.TRANSITION_DURATION)):(e.removeClass("active"),f.addClass("active"),this.sliding=!1,this.$element.trigger(m)),g&&this.cycle(),this}};var d=a.fn.carousel;a.fn.carousel=b,a.fn.carousel.Constructor=c,a.fn.carousel.noConflict=function(){return a.fn.carousel=d,this};var e=function(c){var d,e=a(this),f=a(e.attr("data-target")||(d=e.attr("href"))&&d.replace(/.*(?=#[^\s]+$)/,""));if(f.hasClass("carousel")){var g=a.extend({},f.data(),e.data()),h=e.attr("data-slide-to");h&&(g.interval=!1),b.call(f,g),h&&f.data("bs.carousel").to(h),c.preventDefault()}};a(document).on("click.bs.carousel.data-api","[data-slide]",e).on("click.bs.carousel.data-api","[data-slide-to]",e),a(window).on("load",function(){a('[data-ride="carousel"]').each(function(){var c=a(this);b.call(c,c.data())})})}(jQuery),+function(a){"use strict";function b(b){var c,d=b.attr("data-target")||(c=b.attr("href"))&&c.replace(/.*(?=#[^\s]+$)/,"");return a(d)}function c(b){return this.each(function(){var c=a(this),e=c.data("bs.collapse"),f=a.extend({},d.DEFAULTS,c.data(),"object"==typeof b&&b);!e&&f.toggle&&/show|hide/.test(b)&&(f.toggle=!1),e||c.data("bs.collapse",e=new d(this,f)),"string"==typeof b&&e[b]()})}var d=function(b,c){this.$element=a(b),this.options=a.extend({},d.DEFAULTS,c),this.$trigger=a('[data-toggle="collapse"][href="#'+b.id+'"],[data-toggle="collapse"][data-target="#'+b.id+'"]'),this.transitioning=null,this.options.parent?this.$parent=this.getParent():this.addAriaAndCollapsedClass(this.$element,this.$trigger),this.options.toggle&&this.toggle()};d.VERSION="3.3.6",d.TRANSITION_DURATION=350,d.DEFAULTS={toggle:!0},d.prototype.dimension=function(){var a=this.$element.hasClass("width");return a?"width":"height"},d.prototype.show=function(){if(!this.transitioning&&!this.$element.hasClass("in")){var b,e=this.$parent&&this.$parent.children(".panel").children(".in, .collapsing");if(!(e&&e.length&&(b=e.data("bs.collapse"),b&&b.transitioning))){var f=a.Event("show.bs.collapse");if(this.$element.trigger(f),!f.isDefaultPrevented()){e&&e.length&&(c.call(e,"hide"),b||e.data("bs.collapse",null));var g=this.dimension();this.$element.removeClass("collapse").addClass("collapsing")[g](0).attr("aria-expanded",!0),this.$trigger.removeClass("collapsed").attr("aria-expanded",!0),this.transitioning=1;var h=function(){this.$element.removeClass("collapsing").addClass("collapse in")[g](""),this.transitioning=0,this.$element.trigger("shown.bs.collapse")};if(!a.support.transition)return h.call(this);var i=a.camelCase(["scroll",g].join("-"));this.$element.one("bsTransitionEnd",a.proxy(h,this)).emulateTransitionEnd(d.TRANSITION_DURATION)[g](this.$element[0][i])}}}},d.prototype.hide=function(){if(!this.transitioning&&this.$element.hasClass("in")){var b=a.Event("hide.bs.collapse");if(this.$element.trigger(b),!b.isDefaultPrevented()){var c=this.dimension();this.$element[c](this.$element[c]())[0].offsetHeight,this.$element.addClass("collapsing").removeClass("collapse in").attr("aria-expanded",!1),this.$trigger.addClass("collapsed").attr("aria-expanded",!1),this.transitioning=1;var e=function(){this.transitioning=0,this.$element.removeClass("collapsing").addClass("collapse").trigger("hidden.bs.collapse")};return a.support.transition?void this.$element[c](0).one("bsTransitionEnd",a.proxy(e,this)).emulateTransitionEnd(d.TRANSITION_DURATION):e.call(this)}}},d.prototype.toggle=function(){this[this.$element.hasClass("in")?"hide":"show"]()},d.prototype.getParent=function(){return a(this.options.parent).find('[data-toggle="collapse"][data-parent="'+this.options.parent+'"]').each(a.proxy(function(c,d){var e=a(d);this.addAriaAndCollapsedClass(b(e),e)},this)).end()},d.prototype.addAriaAndCollapsedClass=function(a,b){var c=a.hasClass("in");a.attr("aria-expanded",c),b.toggleClass("collapsed",!c).attr("aria-expanded",c)};var e=a.fn.collapse;a.fn.collapse=c,a.fn.collapse.Constructor=d,a.fn.collapse.noConflict=function(){return a.fn.collapse=e,this},a(document).on("click.bs.collapse.data-api",'[data-toggle="collapse"]',function(d){var e=a(this);e.attr("data-target")||d.preventDefault();var f=b(e),g=f.data("bs.collapse"),h=g?"toggle":e.data();c.call(f,h)})}(jQuery),+function(a){"use strict";function b(b){var c=b.attr("data-target");c||(c=b.attr("href"),c=c&&/#[A-Za-z]/.test(c)&&c.replace(/.*(?=#[^\s]*$)/,""));var d=c&&a(c);return d&&d.length?d:b.parent()}function c(c){c&&3===c.which||(a(e).remove(),a(f).each(function(){var d=a(this),e=b(d),f={relatedTarget:this};e.hasClass("open")&&(c&&"click"==c.type&&/input|textarea/i.test(c.target.tagName)&&a.contains(e[0],c.target)||(e.trigger(c=a.Event("hide.bs.dropdown",f)),c.isDefaultPrevented()||(d.attr("aria-expanded","false"),e.removeClass("open").trigger(a.Event("hidden.bs.dropdown",f)))))}))}function d(b){return this.each(function(){var c=a(this),d=c.data("bs.dropdown");d||c.data("bs.dropdown",d=new g(this)),"string"==typeof b&&d[b].call(c)})}var e=".dropdown-backdrop",f='[data-toggle="dropdown"]',g=function(b){a(b).on("click.bs.dropdown",this.toggle)};g.VERSION="3.3.6",g.prototype.toggle=function(d){var e=a(this);if(!e.is(".disabled, :disabled")){var f=b(e),g=f.hasClass("open");if(c(),!g){"ontouchstart"in document.documentElement&&!f.closest(".navbar-nav").length&&a(document.createElement("div")).addClass("dropdown-backdrop").insertAfter(a(this)).on("click",c);var h={relatedTarget:this};if(f.trigger(d=a.Event("show.bs.dropdown",h)),d.isDefaultPrevented())return;e.trigger("focus").attr("aria-expanded","true"),f.toggleClass("open").trigger(a.Event("shown.bs.dropdown",h))}return!1}},g.prototype.keydown=function(c){if(/(38|40|27|32)/.test(c.which)&&!/input|textarea/i.test(c.target.tagName)){var d=a(this);if(c.preventDefault(),c.stopPropagation(),!d.is(".disabled, :disabled")){var e=b(d),g=e.hasClass("open");if(!g&&27!=c.which||g&&27==c.which)return 27==c.which&&e.find(f).trigger("focus"),d.trigger("click");var h=" li:not(.disabled):visible a",i=e.find(".dropdown-menu"+h);if(i.length){var j=i.index(c.target);38==c.which&&j>0&&j--,40==c.which&&j<i.length-1&&j++,~j||(j=0),i.eq(j).trigger("focus")}}}};var h=a.fn.dropdown;a.fn.dropdown=d,a.fn.dropdown.Constructor=g,a.fn.dropdown.noConflict=function(){return a.fn.dropdown=h,this},a(document).on("click.bs.dropdown.data-api",c).on("click.bs.dropdown.data-api",".dropdown form",function(a){a.stopPropagation()}).on("click.bs.dropdown.data-api",f,g.prototype.toggle).on("keydown.bs.dropdown.data-api",f,g.prototype.keydown).on("keydown.bs.dropdown.data-api",".dropdown-menu",g.prototype.keydown)}(jQuery),+function(a){"use strict";function b(b,d){return this.each(function(){var e=a(this),f=e.data("bs.modal"),g=a.extend({},c.DEFAULTS,e.data(),"object"==typeof b&&b);f||e.data("bs.modal",f=new c(this,g)),"string"==typeof b?f[b](d):g.show&&f.show(d)})}var c=function(b,c){this.options=c,this.$body=a(document.body),this.$element=a(b),this.$dialog=this.$element.find(".modal-dialog"),this.$backdrop=null,this.isShown=null,this.originalBodyPad=null,this.scrollbarWidth=0,this.ignoreBackdropClick=!1,this.options.remote&&this.$element.find(".modal-content").load(this.options.remote,a.proxy(function(){this.$element.trigger("loaded.bs.modal")},this))};c.VERSION="3.3.6",c.TRANSITION_DURATION=300,c.BACKDROP_TRANSITION_DURATION=150,c.DEFAULTS={backdrop:!0,keyboard:!0,show:!0},c.prototype.toggle=function(a){return this.isShown?this.hide():this.show(a)},c.prototype.show=function(b){var d=this,e=a.Event("show.bs.modal",{relatedTarget:b});this.$element.trigger(e),this.isShown||e.isDefaultPrevented()||(this.isShown=!0,this.checkScrollbar(),this.setScrollbar(),this.$body.addClass("modal-open"),this.escape(),this.resize(),this.$element.on("click.dismiss.bs.modal",'[data-dismiss="modal"]',a.proxy(this.hide,this)),this.$dialog.on("mousedown.dismiss.bs.modal",function(){d.$element.one("mouseup.dismiss.bs.modal",function(b){a(b.target).is(d.$element)&&(d.ignoreBackdropClick=!0)})}),this.backdrop(function(){var e=a.support.transition&&d.$element.hasClass("fade");d.$element.parent().length||d.$element.appendTo(d.$body),d.$element.show().scrollTop(0),d.adjustDialog(),e&&d.$element[0].offsetWidth,d.$element.addClass("in"),d.enforceFocus();var f=a.Event("shown.bs.modal",{relatedTarget:b});e?d.$dialog.one("bsTransitionEnd",function(){d.$element.trigger("focus").trigger(f)}).emulateTransitionEnd(c.TRANSITION_DURATION):d.$element.trigger("focus").trigger(f)}))},c.prototype.hide=function(b){b&&b.preventDefault(),b=a.Event("hide.bs.modal"),this.$element.trigger(b),this.isShown&&!b.isDefaultPrevented()&&(this.isShown=!1,this.escape(),this.resize(),a(document).off("focusin.bs.modal"),this.$element.removeClass("in").off("click.dismiss.bs.modal").off("mouseup.dismiss.bs.modal"),this.$dialog.off("mousedown.dismiss.bs.modal"),a.support.transition&&this.$element.hasClass("fade")?this.$element.one("bsTransitionEnd",a.proxy(this.hideModal,this)).emulateTransitionEnd(c.TRANSITION_DURATION):this.hideModal())},c.prototype.enforceFocus=function(){a(document).off("focusin.bs.modal").on("focusin.bs.modal",a.proxy(function(a){this.$element[0]===a.target||this.$element.has(a.target).length||this.$element.trigger("focus")},this))},c.prototype.escape=function(){this.isShown&&this.options.keyboard?this.$element.on("keydown.dismiss.bs.modal",a.proxy(function(a){27==a.which&&this.hide()},this)):this.isShown||this.$element.off("keydown.dismiss.bs.modal")},c.prototype.resize=function(){this.isShown?a(window).on("resize.bs.modal",a.proxy(this.handleUpdate,this)):a(window).off("resize.bs.modal")},c.prototype.hideModal=function(){var a=this;this.$element.hide(),this.backdrop(function(){a.$body.removeClass("modal-open"),a.resetAdjustments(),a.resetScrollbar(),a.$element.trigger("hidden.bs.modal")})},c.prototype.removeBackdrop=function(){this.$backdrop&&this.$backdrop.remove(),this.$backdrop=null},c.prototype.backdrop=function(b){var d=this,e=this.$element.hasClass("fade")?"fade":"";if(this.isShown&&this.options.backdrop){var f=a.support.transition&&e;if(this.$backdrop=a(document.createElement("div")).addClass("modal-backdrop "+e).appendTo(this.$body),this.$element.on("click.dismiss.bs.modal",a.proxy(function(a){return this.ignoreBackdropClick?void(this.ignoreBackdropClick=!1):void(a.target===a.currentTarget&&("static"==this.options.backdrop?this.$element[0].focus():this.hide()))},this)),f&&this.$backdrop[0].offsetWidth,this.$backdrop.addClass("in"),!b)return;f?this.$backdrop.one("bsTransitionEnd",b).emulateTransitionEnd(c.BACKDROP_TRANSITION_DURATION):b()}else if(!this.isShown&&this.$backdrop){this.$backdrop.removeClass("in");var g=function(){d.removeBackdrop(),b&&b()};a.support.transition&&this.$element.hasClass("fade")?this.$backdrop.one("bsTransitionEnd",g).emulateTransitionEnd(c.BACKDROP_TRANSITION_DURATION):g()}else b&&b()},c.prototype.handleUpdate=function(){this.adjustDialog()},c.prototype.adjustDialog=function(){var a=this.$element[0].scrollHeight>document.documentElement.clientHeight;this.$element.css({paddingLeft:!this.bodyIsOverflowing&&a?this.scrollbarWidth:"",paddingRight:this.bodyIsOverflowing&&!a?this.scrollbarWidth:""})},c.prototype.resetAdjustments=function(){this.$element.css({paddingLeft:"",paddingRight:""})},c.prototype.checkScrollbar=function(){var a=window.innerWidth;if(!a){var b=document.documentElement.getBoundingClientRect();a=b.right-Math.abs(b.left)}this.bodyIsOverflowing=document.body.clientWidth<a,this.scrollbarWidth=this.measureScrollbar()},c.prototype.setScrollbar=function(){var a=parseInt(this.$body.css("padding-right")||0,10);this.originalBodyPad=document.body.style.paddingRight||"",this.bodyIsOverflowing&&this.$body.css("padding-right",a+this.scrollbarWidth)},c.prototype.resetScrollbar=function(){this.$body.css("padding-right",this.originalBodyPad)},c.prototype.measureScrollbar=function(){var a=document.createElement("div");a.className="modal-scrollbar-measure",this.$body.append(a);var b=a.offsetWidth-a.clientWidth;return this.$body[0].removeChild(a),b};var d=a.fn.modal;a.fn.modal=b,a.fn.modal.Constructor=c,a.fn.modal.noConflict=function(){return a.fn.modal=d,this},a(document).on("click.bs.modal.data-api",'[data-toggle="modal"]',function(c){var d=a(this),e=d.attr("href"),f=a(d.attr("data-target")||e&&e.replace(/.*(?=#[^\s]+$)/,"")),g=f.data("bs.modal")?"toggle":a.extend({remote:!/#/.test(e)&&e},f.data(),d.data());d.is("a")&&c.preventDefault(),f.one("show.bs.modal",function(a){a.isDefaultPrevented()||f.one("hidden.bs.modal",function(){d.is(":visible")&&d.trigger("focus")})}),b.call(f,g,this)})}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.tooltip"),f="object"==typeof b&&b;(e||!/destroy|hide/.test(b))&&(e||d.data("bs.tooltip",e=new c(this,f)),"string"==typeof b&&e[b]())})}var c=function(a,b){this.type=null,this.options=null,this.enabled=null,this.timeout=null,this.hoverState=null,this.$element=null,this.inState=null,this.init("tooltip",a,b)};c.VERSION="3.3.6",c.TRANSITION_DURATION=150,c.DEFAULTS={animation:!0,placement:"top",selector:!1,template:'<div class="tooltip" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>',trigger:"hover focus",title:"",delay:0,html:!1,container:!1,viewport:{selector:"body",padding:0}},c.prototype.init=function(b,c,d){if(this.enabled=!0,this.type=b,this.$element=a(c),this.options=this.getOptions(d),this.$viewport=this.options.viewport&&a(a.isFunction(this.options.viewport)?this.options.viewport.call(this,this.$element):this.options.viewport.selector||this.options.viewport),this.inState={click:!1,hover:!1,focus:!1},this.$element[0]instanceof document.constructor&&!this.options.selector)throw new Error("`selector` option must be specified when initializing "+this.type+" on the window.document object!");for(var e=this.options.trigger.split(" "),f=e.length;f--;){var g=e[f];if("click"==g)this.$element.on("click."+this.type,this.options.selector,a.proxy(this.toggle,this));else if("manual"!=g){var h="hover"==g?"mouseenter":"focusin",i="hover"==g?"mouseleave":"focusout";this.$element.on(h+"."+this.type,this.options.selector,a.proxy(this.enter,this)),this.$element.on(i+"."+this.type,this.options.selector,a.proxy(this.leave,this))}}this.options.selector?this._options=a.extend({},this.options,{trigger:"manual",selector:""}):this.fixTitle()},c.prototype.getDefaults=function(){return c.DEFAULTS},c.prototype.getOptions=function(b){return b=a.extend({},this.getDefaults(),this.$element.data(),b),b.delay&&"number"==typeof b.delay&&(b.delay={show:b.delay,hide:b.delay}),b},c.prototype.getDelegateOptions=function(){var b={},c=this.getDefaults();return this._options&&a.each(this._options,function(a,d){c[a]!=d&&(b[a]=d)}),b},c.prototype.enter=function(b){var c=b instanceof this.constructor?b:a(b.currentTarget).data("bs."+this.type);return c||(c=new this.constructor(b.currentTarget,this.getDelegateOptions()),a(b.currentTarget).data("bs."+this.type,c)),b instanceof a.Event&&(c.inState["focusin"==b.type?"focus":"hover"]=!0),c.tip().hasClass("in")||"in"==c.hoverState?void(c.hoverState="in"):(clearTimeout(c.timeout),c.hoverState="in",c.options.delay&&c.options.delay.show?void(c.timeout=setTimeout(function(){"in"==c.hoverState&&c.show()},c.options.delay.show)):c.show())},c.prototype.isInStateTrue=function(){for(var a in this.inState)if(this.inState[a])return!0;return!1},c.prototype.leave=function(b){var c=b instanceof this.constructor?b:a(b.currentTarget).data("bs."+this.type);return c||(c=new this.constructor(b.currentTarget,this.getDelegateOptions()),a(b.currentTarget).data("bs."+this.type,c)),b instanceof a.Event&&(c.inState["focusout"==b.type?"focus":"hover"]=!1),c.isInStateTrue()?void 0:(clearTimeout(c.timeout),c.hoverState="out",c.options.delay&&c.options.delay.hide?void(c.timeout=setTimeout(function(){"out"==c.hoverState&&c.hide()},c.options.delay.hide)):c.hide())},c.prototype.show=function(){var b=a.Event("show.bs."+this.type);if(this.hasContent()&&this.enabled){this.$element.trigger(b);var d=a.contains(this.$element[0].ownerDocument.documentElement,this.$element[0]);if(b.isDefaultPrevented()||!d)return;var e=this,f=this.tip(),g=this.getUID(this.type);this.setContent(),f.attr("id",g),this.$element.attr("aria-describedby",g),this.options.animation&&f.addClass("fade");var h="function"==typeof this.options.placement?this.options.placement.call(this,f[0],this.$element[0]):this.options.placement,i=/\s?auto?\s?/i,j=i.test(h);j&&(h=h.replace(i,"")||"top"),f.detach().css({top:0,left:0,display:"block"}).addClass(h).data("bs."+this.type,this),this.options.container?f.appendTo(this.options.container):f.insertAfter(this.$element),this.$element.trigger("inserted.bs."+this.type);var k=this.getPosition(),l=f[0].offsetWidth,m=f[0].offsetHeight;if(j){var n=h,o=this.getPosition(this.$viewport);h="bottom"==h&&k.bottom+m>o.bottom?"top":"top"==h&&k.top-m<o.top?"bottom":"right"==h&&k.right+l>o.width?"left":"left"==h&&k.left-l<o.left?"right":h,f.removeClass(n).addClass(h)}var p=this.getCalculatedOffset(h,k,l,m);this.applyPlacement(p,h);var q=function(){var a=e.hoverState;e.$element.trigger("shown.bs."+e.type),e.hoverState=null,"out"==a&&e.leave(e)};a.support.transition&&this.$tip.hasClass("fade")?f.one("bsTransitionEnd",q).emulateTransitionEnd(c.TRANSITION_DURATION):q()}},c.prototype.applyPlacement=function(b,c){var d=this.tip(),e=d[0].offsetWidth,f=d[0].offsetHeight,g=parseInt(d.css("margin-top"),10),h=parseInt(d.css("margin-left"),10);isNaN(g)&&(g=0),isNaN(h)&&(h=0),b.top+=g,b.left+=h,a.offset.setOffset(d[0],a.extend({using:function(a){d.css({top:Math.round(a.top),left:Math.round(a.left)})}},b),0),d.addClass("in");var i=d[0].offsetWidth,j=d[0].offsetHeight;"top"==c&&j!=f&&(b.top=b.top+f-j);var k=this.getViewportAdjustedDelta(c,b,i,j);k.left?b.left+=k.left:b.top+=k.top;var l=/top|bottom/.test(c),m=l?2*k.left-e+i:2*k.top-f+j,n=l?"offsetWidth":"offsetHeight";d.offset(b),this.replaceArrow(m,d[0][n],l)},c.prototype.replaceArrow=function(a,b,c){this.arrow().css(c?"left":"top",50*(1-a/b)+"%").css(c?"top":"left","")},c.prototype.setContent=function(){var a=this.tip(),b=this.getTitle();a.find(".tooltip-inner")[this.options.html?"html":"text"](b),a.removeClass("fade in top bottom left right")},c.prototype.hide=function(b){function d(){"in"!=e.hoverState&&f.detach(),e.$element.removeAttr("aria-describedby").trigger("hidden.bs."+e.type),b&&b()}var e=this,f=a(this.$tip),g=a.Event("hide.bs."+this.type);return this.$element.trigger(g),g.isDefaultPrevented()?void 0:(f.removeClass("in"),a.support.transition&&f.hasClass("fade")?f.one("bsTransitionEnd",d).emulateTransitionEnd(c.TRANSITION_DURATION):d(),this.hoverState=null,this)},c.prototype.fixTitle=function(){var a=this.$element;(a.attr("title")||"string"!=typeof a.attr("data-original-title"))&&a.attr("data-original-title",a.attr("title")||"").attr("title","")},c.prototype.hasContent=function(){return this.getTitle()},c.prototype.getPosition=function(b){b=b||this.$element;var c=b[0],d="BODY"==c.tagName,e=c.getBoundingClientRect();null==e.width&&(e=a.extend({},e,{width:e.right-e.left,height:e.bottom-e.top}));var f=d?{top:0,left:0}:b.offset(),g={scroll:d?document.documentElement.scrollTop||document.body.scrollTop:b.scrollTop()},h=d?{width:a(window).width(),height:a(window).height()}:null;return a.extend({},e,g,h,f)},c.prototype.getCalculatedOffset=function(a,b,c,d){return"bottom"==a?{top:b.top+b.height,left:b.left+b.width/2-c/2}:"top"==a?{top:b.top-d,left:b.left+b.width/2-c/2}:"left"==a?{top:b.top+b.height/2-d/2,left:b.left-c}:{top:b.top+b.height/2-d/2,left:b.left+b.width}},c.prototype.getViewportAdjustedDelta=function(a,b,c,d){var e={top:0,left:0};if(!this.$viewport)return e;var f=this.options.viewport&&this.options.viewport.padding||0,g=this.getPosition(this.$viewport);if(/right|left/.test(a)){var h=b.top-f-g.scroll,i=b.top+f-g.scroll+d;h<g.top?e.top=g.top-h:i>g.top+g.height&&(e.top=g.top+g.height-i)}else{var j=b.left-f,k=b.left+f+c;j<g.left?e.left=g.left-j:k>g.right&&(e.left=g.left+g.width-k)}return e},c.prototype.getTitle=function(){var a,b=this.$element,c=this.options;return a=b.attr("data-original-title")||("function"==typeof c.title?c.title.call(b[0]):c.title)},c.prototype.getUID=function(a){do a+=~~(1e6*Math.random());while(document.getElementById(a));return a},c.prototype.tip=function(){if(!this.$tip&&(this.$tip=a(this.options.template),1!=this.$tip.length))throw new Error(this.type+" `template` option must consist of exactly 1 top-level element!");return this.$tip},c.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".tooltip-arrow")},c.prototype.enable=function(){this.enabled=!0},c.prototype.disable=function(){this.enabled=!1},c.prototype.toggleEnabled=function(){this.enabled=!this.enabled},c.prototype.toggle=function(b){var c=this;b&&(c=a(b.currentTarget).data("bs."+this.type),c||(c=new this.constructor(b.currentTarget,this.getDelegateOptions()),a(b.currentTarget).data("bs."+this.type,c))),b?(c.inState.click=!c.inState.click,c.isInStateTrue()?c.enter(c):c.leave(c)):c.tip().hasClass("in")?c.leave(c):c.enter(c)},c.prototype.destroy=function(){var a=this;clearTimeout(this.timeout),this.hide(function(){a.$element.off("."+a.type).removeData("bs."+a.type),a.$tip&&a.$tip.detach(),a.$tip=null,a.$arrow=null,a.$viewport=null})};var d=a.fn.tooltip;a.fn.tooltip=b,a.fn.tooltip.Constructor=c,a.fn.tooltip.noConflict=function(){return a.fn.tooltip=d,this}}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.popover"),f="object"==typeof b&&b;(e||!/destroy|hide/.test(b))&&(e||d.data("bs.popover",e=new c(this,f)),"string"==typeof b&&e[b]())})}var c=function(a,b){this.init("popover",a,b)};if(!a.fn.tooltip)throw new Error("Popover requires tooltip.js");c.VERSION="3.3.6",c.DEFAULTS=a.extend({},a.fn.tooltip.Constructor.DEFAULTS,{placement:"right",trigger:"click",content:"",template:'<div class="popover" role="tooltip"><div class="arrow"></div><h3 class="popover-title"></h3><div class="popover-content"></div></div>'}),c.prototype=a.extend({},a.fn.tooltip.Constructor.prototype),c.prototype.constructor=c,c.prototype.getDefaults=function(){return c.DEFAULTS},c.prototype.setContent=function(){var a=this.tip(),b=this.getTitle(),c=this.getContent();a.find(".popover-title")[this.options.html?"html":"text"](b),a.find(".popover-content").children().detach().end()[this.options.html?"string"==typeof c?"html":"append":"text"](c),a.removeClass("fade top bottom left right in"),a.find(".popover-title").html()||a.find(".popover-title").hide()},c.prototype.hasContent=function(){return this.getTitle()||this.getContent()},c.prototype.getContent=function(){var a=this.$element,b=this.options;return a.attr("data-content")||("function"==typeof b.content?b.content.call(a[0]):b.content)},c.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".arrow")};var d=a.fn.popover;a.fn.popover=b,a.fn.popover.Constructor=c,a.fn.popover.noConflict=function(){return a.fn.popover=d,this}}(jQuery),+function(a){"use strict";function b(c,d){this.$body=a(document.body),this.$scrollElement=a(a(c).is(document.body)?window:c),this.options=a.extend({},b.DEFAULTS,d),this.selector=(this.options.target||"")+" .nav li > a",this.offsets=[],this.targets=[],this.activeTarget=null,this.scrollHeight=0,this.$scrollElement.on("scroll.bs.scrollspy",a.proxy(this.process,this)),this.refresh(),this.process()}function c(c){return this.each(function(){var d=a(this),e=d.data("bs.scrollspy"),f="object"==typeof c&&c;e||d.data("bs.scrollspy",e=new b(this,f)),"string"==typeof c&&e[c]()})}b.VERSION="3.3.6",b.DEFAULTS={offset:10},b.prototype.getScrollHeight=function(){return this.$scrollElement[0].scrollHeight||Math.max(this.$body[0].scrollHeight,document.documentElement.scrollHeight)},b.prototype.refresh=function(){var b=this,c="offset",d=0;this.offsets=[],this.targets=[],this.scrollHeight=this.getScrollHeight(),a.isWindow(this.$scrollElement[0])||(c="position",d=this.$scrollElement.scrollTop()),this.$body.find(this.selector).map(function(){var b=a(this),e=b.data("target")||b.attr("href"),f=/^#./.test(e)&&a(e);return f&&f.length&&f.is(":visible")&&[[f[c]().top+d,e]]||null}).sort(function(a,b){return a[0]-b[0]}).each(function(){b.offsets.push(this[0]),b.targets.push(this[1])})},b.prototype.process=function(){var a,b=this.$scrollElement.scrollTop()+this.options.offset,c=this.getScrollHeight(),d=this.options.offset+c-this.$scrollElement.height(),e=this.offsets,f=this.targets,g=this.activeTarget;if(this.scrollHeight!=c&&this.refresh(),b>=d)return g!=(a=f[f.length-1])&&this.activate(a);if(g&&b<e[0])return this.activeTarget=null,this.clear();for(a=e.length;a--;)g!=f[a]&&b>=e[a]&&(void 0===e[a+1]||b<e[a+1])&&this.activate(f[a])},b.prototype.activate=function(b){this.activeTarget=b,this.clear();var c=this.selector+'[data-target="'+b+'"],'+this.selector+'[href="'+b+'"]',d=a(c).parents("li").addClass("active"); | ||
| 7 | d.parent(".dropdown-menu").length&&(d=d.closest("li.dropdown").addClass("active")),d.trigger("activate.bs.scrollspy")},b.prototype.clear=function(){a(this.selector).parentsUntil(this.options.target,".active").removeClass("active")};var d=a.fn.scrollspy;a.fn.scrollspy=c,a.fn.scrollspy.Constructor=b,a.fn.scrollspy.noConflict=function(){return a.fn.scrollspy=d,this},a(window).on("load.bs.scrollspy.data-api",function(){a('[data-spy="scroll"]').each(function(){var b=a(this);c.call(b,b.data())})})}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.tab");e||d.data("bs.tab",e=new c(this)),"string"==typeof b&&e[b]()})}var c=function(b){this.element=a(b)};c.VERSION="3.3.6",c.TRANSITION_DURATION=150,c.prototype.show=function(){var b=this.element,c=b.closest("ul:not(.dropdown-menu)"),d=b.data("target");if(d||(d=b.attr("href"),d=d&&d.replace(/.*(?=#[^\s]*$)/,"")),!b.parent("li").hasClass("active")){var e=c.find(".active:last a"),f=a.Event("hide.bs.tab",{relatedTarget:b[0]}),g=a.Event("show.bs.tab",{relatedTarget:e[0]});if(e.trigger(f),b.trigger(g),!g.isDefaultPrevented()&&!f.isDefaultPrevented()){var h=a(d);this.activate(b.closest("li"),c),this.activate(h,h.parent(),function(){e.trigger({type:"hidden.bs.tab",relatedTarget:b[0]}),b.trigger({type:"shown.bs.tab",relatedTarget:e[0]})})}}},c.prototype.activate=function(b,d,e){function f(){g.removeClass("active").find("> .dropdown-menu > .active").removeClass("active").end().find('[data-toggle="tab"]').attr("aria-expanded",!1),b.addClass("active").find('[data-toggle="tab"]').attr("aria-expanded",!0),h?(b[0].offsetWidth,b.addClass("in")):b.removeClass("fade"),b.parent(".dropdown-menu").length&&b.closest("li.dropdown").addClass("active").end().find('[data-toggle="tab"]').attr("aria-expanded",!0),e&&e()}var g=d.find("> .active"),h=e&&a.support.transition&&(g.length&&g.hasClass("fade")||!!d.find("> .fade").length);g.length&&h?g.one("bsTransitionEnd",f).emulateTransitionEnd(c.TRANSITION_DURATION):f(),g.removeClass("in")};var d=a.fn.tab;a.fn.tab=b,a.fn.tab.Constructor=c,a.fn.tab.noConflict=function(){return a.fn.tab=d,this};var e=function(c){c.preventDefault(),b.call(a(this),"show")};a(document).on("click.bs.tab.data-api",'[data-toggle="tab"]',e).on("click.bs.tab.data-api",'[data-toggle="pill"]',e)}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.affix"),f="object"==typeof b&&b;e||d.data("bs.affix",e=new c(this,f)),"string"==typeof b&&e[b]()})}var c=function(b,d){this.options=a.extend({},c.DEFAULTS,d),this.$target=a(this.options.target).on("scroll.bs.affix.data-api",a.proxy(this.checkPosition,this)).on("click.bs.affix.data-api",a.proxy(this.checkPositionWithEventLoop,this)),this.$element=a(b),this.affixed=null,this.unpin=null,this.pinnedOffset=null,this.checkPosition()};c.VERSION="3.3.6",c.RESET="affix affix-top affix-bottom",c.DEFAULTS={offset:0,target:window},c.prototype.getState=function(a,b,c,d){var e=this.$target.scrollTop(),f=this.$element.offset(),g=this.$target.height();if(null!=c&&"top"==this.affixed)return c>e?"top":!1;if("bottom"==this.affixed)return null!=c?e+this.unpin<=f.top?!1:"bottom":a-d>=e+g?!1:"bottom";var h=null==this.affixed,i=h?e:f.top,j=h?g:b;return null!=c&&c>=e?"top":null!=d&&i+j>=a-d?"bottom":!1},c.prototype.getPinnedOffset=function(){if(this.pinnedOffset)return this.pinnedOffset;this.$element.removeClass(c.RESET).addClass("affix");var a=this.$target.scrollTop(),b=this.$element.offset();return this.pinnedOffset=b.top-a},c.prototype.checkPositionWithEventLoop=function(){setTimeout(a.proxy(this.checkPosition,this),1)},c.prototype.checkPosition=function(){if(this.$element.is(":visible")){var b=this.$element.height(),d=this.options.offset,e=d.top,f=d.bottom,g=Math.max(a(document).height(),a(document.body).height());"object"!=typeof d&&(f=e=d),"function"==typeof e&&(e=d.top(this.$element)),"function"==typeof f&&(f=d.bottom(this.$element));var h=this.getState(g,b,e,f);if(this.affixed!=h){null!=this.unpin&&this.$element.css("top","");var i="affix"+(h?"-"+h:""),j=a.Event(i+".bs.affix");if(this.$element.trigger(j),j.isDefaultPrevented())return;this.affixed=h,this.unpin="bottom"==h?this.getPinnedOffset():null,this.$element.removeClass(c.RESET).addClass(i).trigger(i.replace("affix","affixed")+".bs.affix")}"bottom"==h&&this.$element.offset({top:g-b-f})}};var d=a.fn.affix;a.fn.affix=b,a.fn.affix.Constructor=c,a.fn.affix.noConflict=function(){return a.fn.affix=d,this},a(window).on("load",function(){a('[data-spy="affix"]').each(function(){var c=a(this),d=c.data();d.offset=d.offset||{},null!=d.offsetBottom&&(d.offset.bottom=d.offsetBottom),null!=d.offsetTop&&(d.offset.top=d.offsetTop),b.call(c,d)})})}(jQuery); | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
bootstrap/js/npm.js
0 → 100644
| 1 | // This file is autogenerated via the `commonjs` Grunt task. You can require() this file in a CommonJS environment. | ||
| 2 | require('../../js/transition.js') | ||
| 3 | require('../../js/alert.js') | ||
| 4 | require('../../js/button.js') | ||
| 5 | require('../../js/carousel.js') | ||
| 6 | require('../../js/collapse.js') | ||
| 7 | require('../../js/dropdown.js') | ||
| 8 | require('../../js/modal.js') | ||
| 9 | require('../../js/tooltip.js') | ||
| 10 | require('../../js/popover.js') | ||
| 11 | require('../../js/scrollspy.js') | ||
| 12 | require('../../js/tab.js') | ||
| 13 | require('../../js/affix.js') | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
build.sh
0 → 100644
contactUs.html
0 → 100644
| 1 | <!DOCTYPE html> | ||
| 2 | <html lang="en"> | ||
| 3 | <head> | ||
| 4 | <meta charset="UTF-8"> | ||
| 5 | <meta name="format-detection" content="telephone=no"/> | ||
| 6 | <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no,minimal-ui" /> | ||
| 7 | <title>联系我们</title> | ||
| 8 | <style type="text/css" > | ||
| 9 | body{ | ||
| 10 | font-family: 黑体; | ||
| 11 | overflow: hidden; | ||
| 12 | margin: 0px; | ||
| 13 | border: 0px; | ||
| 14 | padding: 0px; | ||
| 15 | background-color: #ffffff; | ||
| 16 | color: #333333; | ||
| 17 | font-size: 16px; | ||
| 18 | } | ||
| 19 | .div-center{ | ||
| 20 | margin-top: 25px; | ||
| 21 | margin-left: 20px; | ||
| 22 | } | ||
| 23 | .div-center div{ | ||
| 24 | margin-top: 36px; | ||
| 25 | } | ||
| 26 | .div-bottom div{ | ||
| 27 | margin-top: 20px; | ||
| 28 | } | ||
| 29 | .div-bottom{ | ||
| 30 | margin-top: 105px; | ||
| 31 | margin-left: 20px; | ||
| 32 | } | ||
| 33 | </style> | ||
| 34 | </head> | ||
| 35 | <body> | ||
| 36 | <div class="div-center"> | ||
| 37 | <div align="center" ><img src="./images/2.pic_hd.jpg" /></div> | ||
| 38 | <div align="center" style="margin-top: 0px;color: #999999;font-size: 18px;">东城行</div> | ||
| 39 | </div> | ||
| 40 | <div class="div-bottom"> | ||
| 41 | <div>微信:东城行</div> | ||
| 42 | <div>微博:东城行</div> | ||
| 43 | <div>客服电话:0579-86680123</div> | ||
| 44 | <!--<a href="tel:4009696556">拨号</a>--> | ||
| 45 | </div> | ||
| 46 | </body> | ||
| 47 | </html> |
css/app.css
0 → 100644
| 1 | phoneNumberhtml,body{ | ||
| 2 | width:100%; | ||
| 3 | height:100%; | ||
| 4 | overflow: hidden; | ||
| 5 | } | ||
| 6 | li{ | ||
| 7 | list-style: none; | ||
| 8 | } | ||
| 9 | *{ | ||
| 10 | margin:0px; | ||
| 11 | padding:0px; | ||
| 12 | } | ||
| 13 | body, button, input, select, textarea { | ||
| 14 | font: 12px/16px Verdana, Helvetica, Arial, sans-serif; | ||
| 15 | } | ||
| 16 | |||
| 17 | .main{ | ||
| 18 | width:100%; | ||
| 19 | height:100%; | ||
| 20 | } | ||
| 21 | |||
| 22 | .mapContainer { | ||
| 23 | display: block; | ||
| 24 | position: absolute; | ||
| 25 | width: 100%; | ||
| 26 | top: 0; | ||
| 27 | bottom: 0; | ||
| 28 | transition: left 0.4s linear 0s; | ||
| 29 | -webkit-transition: left 0.4s linear 0s; | ||
| 30 | } | ||
| 31 | |||
| 32 | .overlayContainer { | ||
| 33 | display: none; | ||
| 34 | position: absolute; | ||
| 35 | width: 180px; | ||
| 36 | height: 60px; | ||
| 37 | background: #FFFFFF; | ||
| 38 | text-align: center; | ||
| 39 | border-radius: 30px; | ||
| 40 | cursor: pointer; | ||
| 41 | box-shadow: 1px 1px 2px #919191; | ||
| 42 | z-index: 10; | ||
| 43 | } | ||
| 44 | |||
| 45 | .corner { | ||
| 46 | height: 12px; | ||
| 47 | width: 28px; | ||
| 48 | top: -5px; | ||
| 49 | position: relative; | ||
| 50 | } | ||
| 51 | |||
| 52 | .overlayPanelLeft { | ||
| 53 | float: left; | ||
| 54 | margin-left: 5%; | ||
| 55 | width: 60%; | ||
| 56 | height: 100%; | ||
| 57 | display: inline-block; | ||
| 58 | } | ||
| 59 | |||
| 60 | .overlayPanelLeftContentContainer { | ||
| 61 | height: 50%; | ||
| 62 | } | ||
| 63 | |||
| 64 | .overlayPanelLeftContent { | ||
| 65 | font-size: 14px; | ||
| 66 | color: #515151; | ||
| 67 | padding-top: 10px; | ||
| 68 | } | ||
| 69 | |||
| 70 | |||
| 71 | .overlayPanelCenter { | ||
| 72 | float: left; | ||
| 73 | width: 100%; | ||
| 74 | height: 50%; | ||
| 75 | display: inline-block; | ||
| 76 | border-top: 1px solid #919191; | ||
| 77 | } | ||
| 78 | |||
| 79 | .overlayPanelCenterContent { | ||
| 80 | display: block; | ||
| 81 | height: 50%; | ||
| 82 | font-size: 12px; | ||
| 83 | } | ||
| 84 | |||
| 85 | .overlayPanelCenterContentTop { | ||
| 86 | display: inline-block; | ||
| 87 | width: 50%; | ||
| 88 | color: #999999; | ||
| 89 | } | ||
| 90 | |||
| 91 | .overlayPanelCenterContentBottom { | ||
| 92 | display: inline-block; | ||
| 93 | width: 50%; | ||
| 94 | color: #999999; | ||
| 95 | } | ||
| 96 | |||
| 97 | .act { | ||
| 98 | color: #36D1E7; | ||
| 99 | } | ||
| 100 | |||
| 101 | .overlayPanelRight { | ||
| 102 | float: right; | ||
| 103 | width: 35%; | ||
| 104 | height: 100%; | ||
| 105 | display: inline-block; | ||
| 106 | padding-left: 10px; | ||
| 107 | border-radius: 0 30px 30px 0; | ||
| 108 | } | ||
| 109 | |||
| 110 | .overlayPanelRightContentContainer { | ||
| 111 | display: table; | ||
| 112 | width: 50px; | ||
| 113 | height: 50px; | ||
| 114 | border-radius: 25px; | ||
| 115 | margin: 5px 10px 5px 0; | ||
| 116 | background-image: url(../images/go.png); | ||
| 117 | background-size: 50px 50px; | ||
| 118 | } | ||
| 119 | |||
| 120 | .overlayPanelRightContent { | ||
| 121 | vertical-align: middle; | ||
| 122 | display: table-cell; | ||
| 123 | font-size: 18px; | ||
| 124 | color: #FFFFFF; | ||
| 125 | } | ||
| 126 | |||
| 127 | .locateControlContainer { | ||
| 128 | width: 36px; | ||
| 129 | height: 36px; | ||
| 130 | box-shadow: 1px 1px 2px #919191; | ||
| 131 | margin-left: 10px; | ||
| 132 | margin-bottom: 30px; | ||
| 133 | background: #FFFFFF; | ||
| 134 | border-radius: 2px; | ||
| 135 | } | ||
| 136 | |||
| 137 | .locateControlContent { | ||
| 138 | width: 30px; | ||
| 139 | height: 30px; | ||
| 140 | margin: 3px; | ||
| 141 | border: 1px solid #36D1E7; | ||
| 142 | border-radius: 15px; | ||
| 143 | } | ||
| 144 | |||
| 145 | .locateControlContentCenter { | ||
| 146 | width: 20px; | ||
| 147 | height: 20px; | ||
| 148 | margin: 4px; | ||
| 149 | border: 1px solid #36D1E7; | ||
| 150 | background: #36D1E7; | ||
| 151 | border-radius: 12px; | ||
| 152 | } | ||
| 153 | |||
| 154 | .scanControl { | ||
| 155 | width: 100%; | ||
| 156 | } | ||
| 157 | |||
| 158 | .scanControlContainer { | ||
| 159 | margin: auto; | ||
| 160 | width: 200px; | ||
| 161 | height: 50px; | ||
| 162 | opacity: 0.5; | ||
| 163 | display: table; | ||
| 164 | background: #313131; | ||
| 165 | margin-bottom: 25px; | ||
| 166 | border-radius: 25px; | ||
| 167 | } | ||
| 168 | |||
| 169 | .scanControlContent { | ||
| 170 | width: 100%; | ||
| 171 | text-align: center; | ||
| 172 | vertical-align: middle; | ||
| 173 | display: table-cell; | ||
| 174 | font-size: 18px; | ||
| 175 | color: #FFFFFF; | ||
| 176 | } | ||
| 177 | |||
| 178 | .spanResize { | ||
| 179 | width: 22px; | ||
| 180 | height: 22px; | ||
| 181 | } | ||
| 182 | |||
| 183 | |||
| 184 | .sliderMenu { | ||
| 185 | position: absolute; | ||
| 186 | top: 0; | ||
| 187 | bottom: 0; | ||
| 188 | width: 80%; | ||
| 189 | display: block; | ||
| 190 | background-color: #89DBE6; | ||
| 191 | transition: left 0.4s linear 0s; | ||
| 192 | -webkit-transition: left 0.4s linear 0s; | ||
| 193 | overflow: hidden; | ||
| 194 | } | ||
| 195 | |||
| 196 | .sliderMenu img { | ||
| 197 | position: absolute; | ||
| 198 | top: 0; | ||
| 199 | bottom: 0; | ||
| 200 | height: 100%; | ||
| 201 | } | ||
| 202 | |||
| 203 | .contentOpen { | ||
| 204 | left: 0; | ||
| 205 | right: 0; | ||
| 206 | } | ||
| 207 | |||
| 208 | .contentClose { | ||
| 209 | left: 80%; | ||
| 210 | right: -80%; | ||
| 211 | } | ||
| 212 | |||
| 213 | .menuOpen { | ||
| 214 | left: 0; | ||
| 215 | right: 20%; | ||
| 216 | } | ||
| 217 | |||
| 218 | .menuClose { | ||
| 219 | left: -80%; | ||
| 220 | right: 100%; | ||
| 221 | } | ||
| 222 | |||
| 223 | .menuControl { | ||
| 224 | width: 40px; | ||
| 225 | height: 40px; | ||
| 226 | margin-left: 10px; | ||
| 227 | } | ||
| 228 | |||
| 229 | .menuControl img { | ||
| 230 | width: 100%; | ||
| 231 | height: 100%; | ||
| 232 | } | ||
| 233 | |||
| 234 | .siteOverlay { | ||
| 235 | position: absolute; | ||
| 236 | width: 27px; | ||
| 237 | height: 27px; | ||
| 238 | z-index: 1; | ||
| 239 | } | ||
| 240 | |||
| 241 | .siteOverlay img { | ||
| 242 | width: 100%; | ||
| 243 | height: 100%; | ||
| 244 | } | ||
| 245 | |||
| 246 | .myMarker { | ||
| 247 | position: absolute; | ||
| 248 | width: 50px; | ||
| 249 | height: 50px; | ||
| 250 | } | ||
| 251 | |||
| 252 | .myMarker img { | ||
| 253 | width: 100%; | ||
| 254 | height: 100%; | ||
| 255 | } | ||
| 256 | |||
| 257 | .sliderContent { | ||
| 258 | position: absolute; | ||
| 259 | top: 0; | ||
| 260 | bottom: 0; | ||
| 261 | width: 100%; | ||
| 262 | } | ||
| 263 | |||
| 264 | .sliderMenuHeader { | ||
| 265 | display: block; | ||
| 266 | overflow: hidden; | ||
| 267 | width: 100%; | ||
| 268 | height: 108px; | ||
| 269 | } | ||
| 270 | |||
| 271 | .sliderMenuHeader img { | ||
| 272 | display: inline-block; | ||
| 273 | position: relative; | ||
| 274 | float: left; | ||
| 275 | width: 84px; | ||
| 276 | height: 84px; | ||
| 277 | margin-left: 28px; | ||
| 278 | margin: 12px 12px 12px 20px; | ||
| 279 | border-radius: 42px; | ||
| 280 | } | ||
| 281 | |||
| 282 | .sliderMenuHeaderHint { | ||
| 283 | display: inline-block; | ||
| 284 | color: #FFFFFF !important; | ||
| 285 | font-size: 16px; | ||
| 286 | max-width: 170px; | ||
| 287 | height: 108px; | ||
| 288 | line-height: 108px; | ||
| 289 | text-align: center; | ||
| 290 | } | ||
| 291 | |||
| 292 | .sliderMenuContent { | ||
| 293 | display: block; | ||
| 294 | width: 100%; | ||
| 295 | margin-top: 40px; | ||
| 296 | } | ||
| 297 | |||
| 298 | .sliderMenuItem { | ||
| 299 | margin-top: 15px; | ||
| 300 | height: 33px; | ||
| 301 | width: 100%; | ||
| 302 | } | ||
| 303 | |||
| 304 | .sliderMenuItem img { | ||
| 305 | display: inline-block; | ||
| 306 | position: relative; | ||
| 307 | float: left; | ||
| 308 | margin-left: 20px; | ||
| 309 | width: 33px; | ||
| 310 | height: 33px; | ||
| 311 | } | ||
| 312 | |||
| 313 | .sliderMenuItemHint { | ||
| 314 | display: inline-block; | ||
| 315 | height: 33px; | ||
| 316 | line-height: 33px; | ||
| 317 | text-align: center; | ||
| 318 | max-width: 100px; | ||
| 319 | font-size: 14px; | ||
| 320 | margin-left: 10px; | ||
| 321 | color: #FFFFFF; | ||
| 322 | } | ||
| 323 | |||
| 324 | /*********************wallet***********************/ | ||
| 325 | |||
| 326 | .walletIconContainer { | ||
| 327 | margin-top: 85px; | ||
| 328 | width: 100%; | ||
| 329 | height: 95px; | ||
| 330 | text-align: center; | ||
| 331 | } | ||
| 332 | |||
| 333 | .walletIconContainer img { | ||
| 334 | height: 100%; | ||
| 335 | width: 90px; | ||
| 336 | } | ||
| 337 | |||
| 338 | .walletInfoTitle { | ||
| 339 | width: 100%; | ||
| 340 | text-align: center; | ||
| 341 | margin-top: 30px; | ||
| 342 | font-size: 16px; | ||
| 343 | color: #333333; | ||
| 344 | } | ||
| 345 | |||
| 346 | .walletInfoCount { | ||
| 347 | width: 100%; | ||
| 348 | text-align: center; | ||
| 349 | margin-top: 5px; | ||
| 350 | font-size: 25px; | ||
| 351 | color: #FEA729; | ||
| 352 | margin-bottom: 100px; | ||
| 353 | } | ||
| 354 | |||
| 355 | .walletBtn { | ||
| 356 | width: 100%; | ||
| 357 | padding-left: 5px; | ||
| 358 | padding-right: 5px; | ||
| 359 | color: #FFFFFF; | ||
| 360 | height: 44px; | ||
| 361 | } | ||
| 362 | |||
| 363 | .walletBtnContent { | ||
| 364 | width: 100%; | ||
| 365 | height: 100%; | ||
| 366 | line-height: 44px; | ||
| 367 | font-size: 16px; | ||
| 368 | text-align: center; | ||
| 369 | background-color: #00c81b; | ||
| 370 | border-radius: 2px; | ||
| 371 | } | ||
| 372 | |||
| 373 | .walletBtnContentDisable { | ||
| 374 | background-color: #999999; | ||
| 375 | } | ||
| 376 | |||
| 377 | /*******************pay*********************/ | ||
| 378 | |||
| 379 | .payPanel { | ||
| 380 | background: #F0F0F0; | ||
| 381 | position: absolute; | ||
| 382 | top: 0; | ||
| 383 | bottom: 0; | ||
| 384 | left: 0; | ||
| 385 | right: 0; | ||
| 386 | } | ||
| 387 | |||
| 388 | .paywayMenu { | ||
| 389 | display: block; | ||
| 390 | background: #FFFFFF; | ||
| 391 | width: 100%; | ||
| 392 | margin-top: 10px; | ||
| 393 | margin-bottom: 10px; | ||
| 394 | } | ||
| 395 | |||
| 396 | .paywayMenuItem { | ||
| 397 | width: 100%; | ||
| 398 | height: 40px; | ||
| 399 | font-size: 16px; | ||
| 400 | line-height: 16px; | ||
| 401 | padding: 12px 10px 12px 10px; | ||
| 402 | color: #333333; | ||
| 403 | } | ||
| 404 | |||
| 405 | .paywayMenuItem img { | ||
| 406 | display: inline-block; | ||
| 407 | position: relative; | ||
| 408 | float: left; | ||
| 409 | width: 15px; | ||
| 410 | height: 15px; | ||
| 411 | margin-right: 10px; | ||
| 412 | } | ||
| 413 | |||
| 414 | .paywayMenuInputItem { | ||
| 415 | width: 100%; | ||
| 416 | height: 47px; | ||
| 417 | color: #333333; | ||
| 418 | } | ||
| 419 | |||
| 420 | .paywayMenuInputItem span{ | ||
| 421 | display: inline-block; | ||
| 422 | width: 24%; | ||
| 423 | height: 100%; | ||
| 424 | font-size: 16px; | ||
| 425 | line-height: 16px; | ||
| 426 | padding-left: 10px; | ||
| 427 | } | ||
| 428 | |||
| 429 | .paywayMenuInputItem input{ | ||
| 430 | display: inline-block; | ||
| 431 | width: 73%; | ||
| 432 | height: 100%; | ||
| 433 | color: #333333; | ||
| 434 | font-size: 16px; | ||
| 435 | line-height: 16px; | ||
| 436 | background-color: #FFFFFF; | ||
| 437 | border: none; | ||
| 438 | } | ||
| 439 | |||
| 440 | /******************contatc*********************/ | ||
| 441 | |||
| 442 | .phoneItem { | ||
| 443 | margin-top: 18px; | ||
| 444 | margin-left: 10px; | ||
| 445 | color: #333333; | ||
| 446 | font-size: 14px; | ||
| 447 | } | ||
| 448 | |||
| 449 | .webItem { | ||
| 450 | margin-top: 10px; | ||
| 451 | margin-left: 10px; | ||
| 452 | color: #333333; | ||
| 453 | font-size: 14px; | ||
| 454 | } | ||
| 455 | |||
| 456 | .block { | ||
| 457 | width: 100%; | ||
| 458 | height: 200px; | ||
| 459 | background: #F0F0F0; | ||
| 460 | } | ||
| 461 | |||
| 462 | /******************contatc*********************/ | ||
| 463 | |||
| 464 | .textBox { | ||
| 465 | display: block; | ||
| 466 | width: 100%; | ||
| 467 | padding: 5px; | ||
| 468 | height: 190px; | ||
| 469 | } | ||
| 470 | |||
| 471 | .textBox textarea { | ||
| 472 | color: #999999; | ||
| 473 | font-size: 14px; | ||
| 474 | border-radius: 2px; | ||
| 475 | border:1px solid #CCCCCC; | ||
| 476 | width: 100%; | ||
| 477 | height: 100%; | ||
| 478 | } | ||
| 479 | |||
| 480 | |||
| 481 | /********************************************/ | ||
| 482 | |||
| 483 | .phoneNumber { | ||
| 484 | width: 100%; | ||
| 485 | } | ||
| 486 | |||
| 487 | .btnBg{ | ||
| 488 | background: #36d1e7; | ||
| 489 | border: #36d1e7; | ||
| 490 | border-radius: 4px; | ||
| 491 | color: #fff; | ||
| 492 | cursor: pointer; | ||
| 493 | } | ||
| 494 | |||
| 495 | .smallBtn{ | ||
| 496 | width: 100%; | ||
| 497 | height: 40px; | ||
| 498 | line-height: 40px; | ||
| 499 | padding: 0; | ||
| 500 | border-radius:4px; | ||
| 501 | } | ||
| 502 | .bigBtn{ | ||
| 503 | height: 40px; | ||
| 504 | font-size: 16px; | ||
| 505 | line-height: 40px; | ||
| 506 | padding: 0; | ||
| 507 | background: #d8d8d8; | ||
| 508 | color: #fff; | ||
| 509 | } | ||
| 510 | .btnBg{ | ||
| 511 | background: #36d1e7; | ||
| 512 | border-radius: 4px; | ||
| 513 | border: #36d1e7; | ||
| 514 | color: #fff; | ||
| 515 | cursor: pointer; | ||
| 516 | } | ||
| 517 | .borderColor{ | ||
| 518 | border: 1px solid #36d1e7; | ||
| 519 | } | ||
| 520 | |||
| 521 | /* 登录*/ | ||
| 522 | .loginBox,.tripBox{ | ||
| 523 | padding: 25px; | ||
| 524 | background: #F0F0F0; | ||
| 525 | position: absolute; | ||
| 526 | width: 100%; | ||
| 527 | height: 100%; | ||
| 528 | bottom: 0; | ||
| 529 | top:0; | ||
| 530 | } | ||
| 531 | .loginBox{ | ||
| 532 | /*width: 320px;*/ | ||
| 533 | } | ||
| 534 | .floatLeft{ | ||
| 535 | float: left; | ||
| 536 | } | ||
| 537 | .floatRight{ | ||
| 538 | float: right; | ||
| 539 | } | ||
| 540 | .loginTopLeft{ | ||
| 541 | width: 70%; | ||
| 542 | } | ||
| 543 | .loginTopRight{ | ||
| 544 | width: 28%; | ||
| 545 | } | ||
| 546 | /* 行程*/ | ||
| 547 | .tripBox{ | ||
| 548 | padding: 0; | ||
| 549 | } | ||
| 550 | .tripBox li{ | ||
| 551 | background: #fff; | ||
| 552 | margin-bottom: 10px; | ||
| 553 | overflow: hidden; | ||
| 554 | padding: 10px 0 10px 0; | ||
| 555 | position: relative; | ||
| 556 | |||
| 557 | } | ||
| 558 | |||
| 559 | .tripLeft{ | ||
| 560 | padding-left: 10px; | ||
| 561 | font-size: 14px; | ||
| 562 | color: #333; | ||
| 563 | float: left; | ||
| 564 | width: 80%; | ||
| 565 | } | ||
| 566 | .tripAddress{ | ||
| 567 | |||
| 568 | } | ||
| 569 | .tripTime{ | ||
| 570 | color: #999; | ||
| 571 | font-size: 12px; | ||
| 572 | padding-top: 5px; | ||
| 573 | } | ||
| 574 | .bike{ | ||
| 575 | padding-left: 25px; | ||
| 576 | background:url(../images/bike.png) no-repeat; | ||
| 577 | width: 20px; | ||
| 578 | height: 23px; | ||
| 579 | background-size:70%; | ||
| 580 | float: left; | ||
| 581 | position: relative; | ||
| 582 | top:2px; | ||
| 583 | margin-bottom: 20px; | ||
| 584 | } | ||
| 585 | .loadMore{ | ||
| 586 | margin: auto; | ||
| 587 | width: 60px; | ||
| 588 | font-size: 14px; | ||
| 589 | color: #8d8d8d; | ||
| 590 | text-decoration: underline; | ||
| 591 | cursor: pointer; | ||
| 592 | } | ||
| 593 | .goDetail{ | ||
| 594 | padding-left: 25px; | ||
| 595 | background:url(../images/goDetail.png) no-repeat; | ||
| 596 | width: 21px; | ||
| 597 | height: 35px; | ||
| 598 | background-size:50%; | ||
| 599 | float: left; | ||
| 600 | position: absolute; | ||
| 601 | right:0px; | ||
| 602 | top:15px; | ||
| 603 | } | ||
| 604 | .tripStatus{ | ||
| 605 | position: relative; | ||
| 606 | top:5px; | ||
| 607 | right: 10px; | ||
| 608 | color: #8d8d8d; | ||
| 609 | } | ||
| 610 | .redBtnBox{ | ||
| 611 | padding: 0 10px; | ||
| 612 | } | ||
| 613 | .redBigBtn{ | ||
| 614 | height: 44px; | ||
| 615 | background: #ff6e6e; | ||
| 616 | padding: 0; | ||
| 617 | color: #fff; | ||
| 618 | border: #ff6e6e; | ||
| 619 | } | ||
| 620 | .tripTopLeft{ | ||
| 621 | float: left; | ||
| 622 | width: 30px; | ||
| 623 | background: url(../images/tripLeft.png) no-repeat; | ||
| 624 | height: 100px; | ||
| 625 | background-size:40%; | ||
| 626 | position: absolute; | ||
| 627 | left: 10px; | ||
| 628 | top: 14px; | ||
| 629 | } | ||
| 630 | .tripContent{ | ||
| 631 | padding-bottom: 30px; | ||
| 632 | } | ||
| 633 | |||
| 634 | .tripContent ul { | ||
| 635 | padding:0 10px; | ||
| 636 | } | ||
| 637 | .tripContent ul li { | ||
| 638 | padding: 10px 0; | ||
| 639 | } | ||
| 640 | .rightText{ | ||
| 641 | float: right; | ||
| 642 | } | ||
| 643 | .btnPosition{ | ||
| 644 | position: relative; | ||
| 645 | width: 100%; | ||
| 646 | margin-top: 20px; | ||
| 647 | } | ||
| 648 | .tripDetail{ | ||
| 649 | overflow: hidden; | ||
| 650 | } | ||
| 651 | .tripDetailTop{ | ||
| 652 | background: url(../images/LittleBackground2x.png) no-repeat; | ||
| 653 | width: 100%; | ||
| 654 | height: 80px; | ||
| 655 | background-size:100%; | ||
| 656 | color: #fff; | ||
| 657 | } | ||
| 658 | .amount{ | ||
| 659 | position: absolute; | ||
| 660 | right: 10px; | ||
| 661 | } | ||
| 662 | |||
| 663 | .tripTopRight{ | ||
| 664 | position: absolute; | ||
| 665 | left: 30px; | ||
| 666 | right: 10px; | ||
| 667 | } | ||
| 668 | .tripTopRight p{ | ||
| 669 | color: #fff; | ||
| 670 | } | ||
| 671 | .borderBottom{ | ||
| 672 | border-bottom: 1px solid #a0e6f0; | ||
| 673 | } | ||
| 674 | .firstAddress{ | ||
| 675 | padding-top: 12px; | ||
| 676 | padding-bottom: 5px; | ||
| 677 | } | ||
| 678 | .size15{ | ||
| 679 | font-size: 15px; | ||
| 680 | } | ||
| 681 | .getBike ,.backBike{ | ||
| 682 | font-size: 10px; | ||
| 683 | float: right; | ||
| 684 | margin-top: 5px; | ||
| 685 | } | ||
| 686 | .payBox ul li{ | ||
| 687 | line-height: 48px; | ||
| 688 | height: 48px; | ||
| 689 | margin-left: 10px; | ||
| 690 | border-bottom: 1px solid #eee; | ||
| 691 | } | ||
| 692 | .tripTitle{ | ||
| 693 | line-height: 48px; | ||
| 694 | height: 48px; | ||
| 695 | padding-left: 10px; | ||
| 696 | border-bottom: 1px solid #eee; | ||
| 697 | } | ||
| 698 | |||
| 699 | .residual,.wechatPay{ | ||
| 700 | width:16px; | ||
| 701 | height:13px; | ||
| 702 | display: inline-block; | ||
| 703 | position: relative; | ||
| 704 | top: 2px; | ||
| 705 | } | ||
| 706 | .residual{ | ||
| 707 | background: url(../images/wallet2x.png) no-repeat; | ||
| 708 | background-size: 100%; | ||
| 709 | } | ||
| 710 | |||
| 711 | .wechatPay{ | ||
| 712 | background: url(../images/wechat.png) no-repeat; | ||
| 713 | background-size: 100%; | ||
| 714 | } | ||
| 715 | .checkboxS{ | ||
| 716 | width:20px; | ||
| 717 | height:20px; | ||
| 718 | display: inline-block; | ||
| 719 | position: relative; | ||
| 720 | top: 15px; | ||
| 721 | margin: 0 10px 10px 20px; | ||
| 722 | background-size: 100%; | ||
| 723 | } | ||
| 724 | .checkboxFalse{ | ||
| 725 | background: url(../images/unselected.png) no-repeat; | ||
| 726 | width:20px; | ||
| 727 | height:20px; | ||
| 728 | background-size: 100%; | ||
| 729 | } | ||
| 730 | .checkboxTrue{ | ||
| 731 | background: url(../images/Selected2x.png) no-repeat; | ||
| 732 | width:20px; | ||
| 733 | height:20px; | ||
| 734 | background-size: 100%; | ||
| 735 | } | ||
| 736 | .bottomPosition{ | ||
| 737 | height: 44px; | ||
| 738 | line-height: 44px; | ||
| 739 | position: relative; | ||
| 740 | border-top: 1px solid #eee; | ||
| 741 | border-bottom: 1px solid #eee; | ||
| 742 | width: 100%; | ||
| 743 | background: #fff; | ||
| 744 | margin-top: 10px; | ||
| 745 | |||
| 746 | } | ||
| 747 | .bottomPosition span{ | ||
| 748 | padding-left: 10px; | ||
| 749 | color:#ff6e6e; | ||
| 750 | } | ||
| 751 | .goPay{ | ||
| 752 | float: right; | ||
| 753 | width: 100px; | ||
| 754 | text-align: center; | ||
| 755 | color: #fff; | ||
| 756 | font-size: 16px; | ||
| 757 | background:#ff6e6e; | ||
| 758 | margin-top: -1px; | ||
| 759 | height: 44px; | ||
| 760 | } | ||
| 761 | .blueBg{ | ||
| 762 | background: #37d2e9; | ||
| 763 | border: 1px solid #37d2e9; | ||
| 764 | } | ||
| 765 | .bondText ul{ | ||
| 766 | padding-left: 10px; | ||
| 767 | } | ||
| 768 | .bondText ul li{ | ||
| 769 | color: #999; | ||
| 770 | line-height: 28px; | ||
| 771 | font-size: 12px; | ||
| 772 | } | ||
| 773 | .bondTitle{ | ||
| 774 | padding-left: 10px; | ||
| 775 | margin-top: 30px; | ||
| 776 | } | ||
| 777 | .bondTop{ | ||
| 778 | width:100%; | ||
| 779 | height: 150px; | ||
| 780 | background: url(../images/backgroundsan2x.png) no-repeat; | ||
| 781 | background-size: 100%; | ||
| 782 | text-align: center; | ||
| 783 | line-height: 150px; | ||
| 784 | font-size: 35px; | ||
| 785 | color: #fff; | ||
| 786 | } | ||
| 787 | .bondSuccess{ | ||
| 788 | background: #f0f0f0; | ||
| 789 | position: absolute; | ||
| 790 | height: 100%; | ||
| 791 | width: 100%; | ||
| 792 | |||
| 793 | } | ||
| 794 | |||
| 795 | .bondSuccessContent{ | ||
| 796 | height: 103px; | ||
| 797 | width: 100%; | ||
| 798 | background: #fff; | ||
| 799 | padding: 10px; | ||
| 800 | } | ||
| 801 | .successLeft{ | ||
| 802 | float: left; | ||
| 803 | width: 70%; | ||
| 804 | border-right: dotted 1px #979797; | ||
| 805 | height: 100%; | ||
| 806 | padding-left: 30px; | ||
| 807 | padding-top: 15px; | ||
| 808 | font-size: 16px; | ||
| 809 | color: #626262; | ||
| 810 | |||
| 811 | } | ||
| 812 | .bottomText{ | ||
| 813 | padding-top: 8px; | ||
| 814 | } | ||
| 815 | .successBike{ | ||
| 816 | background: url(../images/rent2xt.png) no-repeat ; | ||
| 817 | width: 55px; | ||
| 818 | height:55px; | ||
| 819 | background-size: 100%; | ||
| 820 | position: relative; | ||
| 821 | left:20px; | ||
| 822 | |||
| 823 | } | ||
| 824 | .successRight{ | ||
| 825 | float: left; | ||
| 826 | text-align: center; | ||
| 827 | width: 29%; | ||
| 828 | padding-top: 3px; | ||
| 829 | } | ||
| 830 | .successBikeText{ | ||
| 831 | color: #ff6e6e; | ||
| 832 | padding: 5px 0 0 5px; | ||
| 833 | font-size: 12px; | ||
| 834 | } | ||
| 835 | .circles{ | ||
| 836 | margin: auto; | ||
| 837 | width: 250px; | ||
| 838 | } | ||
| 839 | .circle{ | ||
| 840 | width: 260px; | ||
| 841 | display: inline-block; | ||
| 842 | position: relative; | ||
| 843 | text-align: center; | ||
| 844 | line-height: 1; | ||
| 845 | |||
| 846 | } | ||
| 847 | .newCircles{ | ||
| 848 | padding-top:60px; | ||
| 849 | } | ||
| 850 | .bigCircles{ | ||
| 851 | width: 250px; | ||
| 852 | border:8px solid #9ae8f3; | ||
| 853 | height: 250px; | ||
| 854 | border-radius: 125px; | ||
| 855 | margin: auto; | ||
| 856 | box-shadow: 0 1px 5px #eee; | ||
| 857 | position: relative; | ||
| 858 | } | ||
| 859 | .circlesText{ | ||
| 860 | position: absolute; | ||
| 861 | top:35%; | ||
| 862 | left: 50%; | ||
| 863 | margin-left: -100px; | ||
| 864 | width: 200px; | ||
| 865 | } | ||
| 866 | .circlesText .text1{ | ||
| 867 | font-size: 20px; | ||
| 868 | text-align: center; | ||
| 869 | color: #999; | ||
| 870 | } | ||
| 871 | .freeTime{ | ||
| 872 | font-size: 30px; | ||
| 873 | color: #37d2e9; | ||
| 874 | text-align: center; | ||
| 875 | } | ||
| 876 | .viewStation{ | ||
| 877 | height: 80px; | ||
| 878 | position: relative; | ||
| 879 | } | ||
| 880 | .viewBorer{ | ||
| 881 | width: 100%; | ||
| 882 | border-bottom: 1px solid #37d2e9; | ||
| 883 | position: absolute; | ||
| 884 | bottom:0px; | ||
| 885 | } | ||
| 886 | .viewImg{ | ||
| 887 | background: url(../images/look2x.png) no-repeat ; | ||
| 888 | width: 55px; | ||
| 889 | height:55px; | ||
| 890 | background-size: 100%; | ||
| 891 | position: relative; | ||
| 892 | left:20px; | ||
| 893 | } | ||
| 894 | .viewBtn{ | ||
| 895 | width: 30%; | ||
| 896 | height: 80px; | ||
| 897 | position: absolute; | ||
| 898 | right: 10px; | ||
| 899 | background: #fff; | ||
| 900 | z-index: 1; | ||
| 901 | top:30px; | ||
| 902 | } | ||
| 903 | .viewText{ | ||
| 904 | color: #ff6e6e; | ||
| 905 | padding: 5px 0 0 23px; | ||
| 906 | font-size: 12px; | ||
| 907 | } | ||
| 908 | .fenceBox{ | ||
| 909 | overflow: hidden; | ||
| 910 | margin:40px 0 20px 0 ; | ||
| 911 | padding: 0 35px; | ||
| 912 | } | ||
| 913 | .fenceBox div{ | ||
| 914 | text-align: center; | ||
| 915 | } | ||
| 916 | .fenceLeft{ | ||
| 917 | width: 33%; | ||
| 918 | float: left; | ||
| 919 | } | ||
| 920 | .fenceCenter{ | ||
| 921 | width: 34%; | ||
| 922 | float: left; | ||
| 923 | } | ||
| 924 | .fenceRight{ | ||
| 925 | width: 33%; | ||
| 926 | float: left; | ||
| 927 | } | ||
| 928 | .fenceTitle{ | ||
| 929 | font-size: 12px; | ||
| 930 | color: #999; | ||
| 931 | } | ||
| 932 | .fenceText{ | ||
| 933 | padding-top: 10px; | ||
| 934 | font-size: 18px; | ||
| 935 | color: #37d2e9; | ||
| 936 | } | ||
| 937 | .alreadyBack{ | ||
| 938 | width: 90px; | ||
| 939 | height: 30px; | ||
| 940 | border-radius:30px; | ||
| 941 | color:#37d2e9; | ||
| 942 | border: 1px solid #37d2e9; | ||
| 943 | text-align: center; | ||
| 944 | margin: auto; | ||
| 945 | line-height: 30px; | ||
| 946 | } | ||
| 947 | .unusualBike{ | ||
| 948 | width: 80px; | ||
| 949 | height: 80px; | ||
| 950 | background: url(../images/unusualBike.png) no-repeat; | ||
| 951 | background-size: 100%; | ||
| 952 | } | ||
| 953 | |||
| 954 | .customerImg{ | ||
| 955 | width: 80px; | ||
| 956 | height: 80px; | ||
| 957 | background: url(../images/customerImg.png) no-repeat; | ||
| 958 | background-size: 100%; | ||
| 959 | } | ||
| 960 | .rechargeList ,.unusual{ | ||
| 961 | position: absolute; | ||
| 962 | top:0; | ||
| 963 | bottom: 0; | ||
| 964 | height: 100%; | ||
| 965 | width: 100%; | ||
| 966 | background:#f0f0f0; | ||
| 967 | } | ||
| 968 | .unusualTitle{ | ||
| 969 | background: #fff; | ||
| 970 | height: 50px; | ||
| 971 | padding: 10px; | ||
| 972 | font-size: 12px; | ||
| 973 | } | ||
| 974 | .unusualTitle span { | ||
| 975 | color:#37d2e9; | ||
| 976 | } | ||
| 977 | .unusualText1{ | ||
| 978 | min-height: 180px; | ||
| 979 | } | ||
| 980 | .oneLine{ | ||
| 981 | line-height: 30px; | ||
| 982 | font-size: 14px; | ||
| 983 | } | ||
| 984 | .unusualText1{ | ||
| 985 | width: 80px; | ||
| 986 | margin: auto; | ||
| 987 | padding-top:40px; | ||
| 988 | } | ||
| 989 | .text2{ | ||
| 990 | color:#37d2e9; | ||
| 991 | font-size: 14px; | ||
| 992 | text-align: center; | ||
| 993 | padding-top: 10px; | ||
| 994 | } | ||
| 995 | .rechargeList ul{ | ||
| 996 | padding-left: 10px; | ||
| 997 | background: #fff; | ||
| 998 | |||
| 999 | } | ||
| 1000 | .rechargeList ul li{ | ||
| 1001 | height: 45px; | ||
| 1002 | border-bottom: 1px solid #eee; | ||
| 1003 | padding: 5px 0; | ||
| 1004 | } | ||
| 1005 | .rechargeLeft{ | ||
| 1006 | float: left; | ||
| 1007 | } | ||
| 1008 | .rechargeRight{ | ||
| 1009 | float: right; | ||
| 1010 | color:#37d2e9; | ||
| 1011 | font-size: 16px; | ||
| 1012 | margin-right: 10px; | ||
| 1013 | padding-top: 5px; | ||
| 1014 | } | ||
| 1015 | .rechargeTime{ | ||
| 1016 | color:#acacac; | ||
| 1017 | font-size: 10px; | ||
| 1018 | } | ||
| 1019 | |||
| 1020 | |||
| 1021 | |||
| 1022 | |||
| 1023 | |||
| 1024 | |||
| 1025 | |||
| 1026 | |||
| 1027 | |||
| 1028 | |||
| 1029 | |||
| 1030 | |||
| 1031 | |||
| 1032 | |||
| 1033 | |||
| 1034 | |||
| 1035 | |||
| 1036 | |||
| 1037 | |||
| 1038 | |||
| 1039 | |||
| 1040 | |||
| 1041 | |||
| 1042 | |||
| 1043 | |||
| 1044 | |||
| 1045 | |||
| 1046 | |||
| 1047 | |||
| 1048 | |||
| 1049 | |||
| 1050 | |||
| 1051 | |||
| 1052 | |||
| 1053 | |||
| 1054 | |||
| 1055 | |||
| 1056 | |||
| 1057 | |||
| 1058 | |||
| 1059 | |||
| 1060 | |||
| 1061 | |||
| 1062 | |||
| 1063 | |||
| 1064 | |||
| 1065 | |||
| 1066 | |||
| 1067 | |||
| 1068 | |||
| 1069 | |||
| 1070 |
css/mui.css
0 → 100644
| 1 | /*! | ||
| 2 | * ===================================================== | ||
| 3 | * Mui v2.8.0 (http://dev.dcloud.net.cn/mui) | ||
| 4 | * ===================================================== | ||
| 5 | */ | ||
| 6 | |||
| 7 | /*! normalize.css v3.0.1 | MIT License | git.io/normalize */ | ||
| 8 | html | ||
| 9 | { | ||
| 10 | font-family: sans-serif; | ||
| 11 | |||
| 12 | -webkit-text-size-adjust: 100%; | ||
| 13 | } | ||
| 14 | |||
| 15 | body | ||
| 16 | { | ||
| 17 | margin: 0; | ||
| 18 | } | ||
| 19 | |||
| 20 | article, | ||
| 21 | aside, | ||
| 22 | details, | ||
| 23 | figcaption, | ||
| 24 | figure, | ||
| 25 | footer, | ||
| 26 | header, | ||
| 27 | hgroup, | ||
| 28 | main, | ||
| 29 | nav, | ||
| 30 | section, | ||
| 31 | summary | ||
| 32 | { | ||
| 33 | display: block; | ||
| 34 | } | ||
| 35 | |||
| 36 | audio, | ||
| 37 | canvas, | ||
| 38 | progress, | ||
| 39 | video | ||
| 40 | { | ||
| 41 | display: inline-block; | ||
| 42 | |||
| 43 | vertical-align: baseline; | ||
| 44 | } | ||
| 45 | |||
| 46 | audio:not([controls]) | ||
| 47 | { | ||
| 48 | display: none; | ||
| 49 | |||
| 50 | height: 0; | ||
| 51 | } | ||
| 52 | |||
| 53 | [hidden], | ||
| 54 | template | ||
| 55 | { | ||
| 56 | display: none; | ||
| 57 | } | ||
| 58 | |||
| 59 | a | ||
| 60 | { | ||
| 61 | background: transparent; | ||
| 62 | } | ||
| 63 | |||
| 64 | a:active, | ||
| 65 | a:hover | ||
| 66 | { | ||
| 67 | outline: 0; | ||
| 68 | } | ||
| 69 | |||
| 70 | abbr[title] | ||
| 71 | { | ||
| 72 | border-bottom: 1px dotted; | ||
| 73 | } | ||
| 74 | |||
| 75 | b, | ||
| 76 | strong | ||
| 77 | { | ||
| 78 | font-weight: bold; | ||
| 79 | } | ||
| 80 | |||
| 81 | dfn | ||
| 82 | { | ||
| 83 | font-style: italic; | ||
| 84 | } | ||
| 85 | |||
| 86 | h1 | ||
| 87 | { | ||
| 88 | font-size: 2em; | ||
| 89 | |||
| 90 | margin: .67em 0; | ||
| 91 | } | ||
| 92 | |||
| 93 | mark | ||
| 94 | { | ||
| 95 | color: #000; | ||
| 96 | background: #ff0; | ||
| 97 | } | ||
| 98 | |||
| 99 | small | ||
| 100 | { | ||
| 101 | font-size: 80%; | ||
| 102 | } | ||
| 103 | |||
| 104 | sub, | ||
| 105 | sup | ||
| 106 | { | ||
| 107 | font-size: 75%; | ||
| 108 | line-height: 0; | ||
| 109 | |||
| 110 | position: relative; | ||
| 111 | |||
| 112 | vertical-align: baseline; | ||
| 113 | } | ||
| 114 | |||
| 115 | sup | ||
| 116 | { | ||
| 117 | top: -.5em; | ||
| 118 | } | ||
| 119 | |||
| 120 | sub | ||
| 121 | { | ||
| 122 | bottom: -.25em; | ||
| 123 | } | ||
| 124 | |||
| 125 | img | ||
| 126 | { | ||
| 127 | border: 0; | ||
| 128 | } | ||
| 129 | |||
| 130 | svg:not(:root) | ||
| 131 | { | ||
| 132 | overflow: hidden; | ||
| 133 | } | ||
| 134 | |||
| 135 | figure | ||
| 136 | { | ||
| 137 | margin: 1em 40px; | ||
| 138 | } | ||
| 139 | |||
| 140 | hr | ||
| 141 | { | ||
| 142 | box-sizing: content-box; | ||
| 143 | height: 0; | ||
| 144 | } | ||
| 145 | |||
| 146 | pre | ||
| 147 | { | ||
| 148 | overflow: auto; | ||
| 149 | } | ||
| 150 | |||
| 151 | code, | ||
| 152 | kbd, | ||
| 153 | pre, | ||
| 154 | samp | ||
| 155 | { | ||
| 156 | font-family: monospace, monospace; | ||
| 157 | font-size: 1em; | ||
| 158 | } | ||
| 159 | |||
| 160 | button, | ||
| 161 | input, | ||
| 162 | optgroup, | ||
| 163 | select, | ||
| 164 | textarea | ||
| 165 | { | ||
| 166 | font: inherit; | ||
| 167 | |||
| 168 | margin: 0; | ||
| 169 | |||
| 170 | color: inherit; | ||
| 171 | } | ||
| 172 | |||
| 173 | button | ||
| 174 | { | ||
| 175 | overflow: visible; | ||
| 176 | } | ||
| 177 | |||
| 178 | button, | ||
| 179 | select | ||
| 180 | { | ||
| 181 | text-transform: none; | ||
| 182 | } | ||
| 183 | |||
| 184 | button, | ||
| 185 | html input[type='button'], | ||
| 186 | input[type='reset'], | ||
| 187 | input[type='submit'] | ||
| 188 | { | ||
| 189 | cursor: pointer; | ||
| 190 | |||
| 191 | -webkit-appearance: button; | ||
| 192 | } | ||
| 193 | |||
| 194 | button[disabled], | ||
| 195 | html input[disabled] | ||
| 196 | { | ||
| 197 | cursor: default; | ||
| 198 | } | ||
| 199 | |||
| 200 | input | ||
| 201 | { | ||
| 202 | line-height: normal; | ||
| 203 | } | ||
| 204 | |||
| 205 | input[type='checkbox'], | ||
| 206 | input[type='radio'] | ||
| 207 | { | ||
| 208 | box-sizing: border-box; | ||
| 209 | padding: 0; | ||
| 210 | } | ||
| 211 | |||
| 212 | input[type='number']::-webkit-inner-spin-button, | ||
| 213 | input[type='number']::-webkit-outer-spin-button | ||
| 214 | { | ||
| 215 | height: auto; | ||
| 216 | } | ||
| 217 | |||
| 218 | input[type='search'] | ||
| 219 | { | ||
| 220 | -webkit-box-sizing: content-box; | ||
| 221 | box-sizing: content-box; | ||
| 222 | |||
| 223 | -webkit-appearance: textfield; | ||
| 224 | } | ||
| 225 | |||
| 226 | input[type='search']::-webkit-search-cancel-button, | ||
| 227 | input[type='search']::-webkit-search-decoration | ||
| 228 | { | ||
| 229 | -webkit-appearance: none; | ||
| 230 | } | ||
| 231 | |||
| 232 | fieldset | ||
| 233 | { | ||
| 234 | margin: 0 2px; | ||
| 235 | padding: .35em .625em .75em; | ||
| 236 | |||
| 237 | border: 1px solid #c0c0c0; | ||
| 238 | } | ||
| 239 | |||
| 240 | legend | ||
| 241 | { | ||
| 242 | padding: 0; | ||
| 243 | |||
| 244 | border: 0; | ||
| 245 | } | ||
| 246 | |||
| 247 | textarea | ||
| 248 | { | ||
| 249 | overflow: auto; | ||
| 250 | } | ||
| 251 | |||
| 252 | optgroup | ||
| 253 | { | ||
| 254 | font-weight: bold; | ||
| 255 | } | ||
| 256 | |||
| 257 | table | ||
| 258 | { | ||
| 259 | border-spacing: 0; | ||
| 260 | border-collapse: collapse; | ||
| 261 | } | ||
| 262 | |||
| 263 | td, | ||
| 264 | th | ||
| 265 | { | ||
| 266 | padding: 0; | ||
| 267 | } | ||
| 268 | |||
| 269 | * | ||
| 270 | { | ||
| 271 | -webkit-box-sizing: border-box; | ||
| 272 | box-sizing: border-box; | ||
| 273 | |||
| 274 | -webkit-user-select: none; | ||
| 275 | |||
| 276 | outline: none; | ||
| 277 | |||
| 278 | -webkit-tap-highlight-color: transparent; | ||
| 279 | -webkit-tap-highlight-color: transparent; | ||
| 280 | } | ||
| 281 | |||
| 282 | body | ||
| 283 | { | ||
| 284 | font-family: 'Helvetica Neue', Helvetica, sans-serif; | ||
| 285 | font-size: 17px; | ||
| 286 | line-height: 21px; | ||
| 287 | |||
| 288 | color: #000; | ||
| 289 | background-color: #efeff4; | ||
| 290 | |||
| 291 | -webkit-overflow-scrolling: touch; | ||
| 292 | } | ||
| 293 | |||
| 294 | a | ||
| 295 | { | ||
| 296 | text-decoration: none; | ||
| 297 | |||
| 298 | color: #007aff; | ||
| 299 | } | ||
| 300 | a:active | ||
| 301 | { | ||
| 302 | color: #0062cc; | ||
| 303 | } | ||
| 304 | |||
| 305 | .mui-content | ||
| 306 | { | ||
| 307 | background-color: #efeff4; | ||
| 308 | |||
| 309 | -webkit-overflow-scrolling: touch; | ||
| 310 | } | ||
| 311 | |||
| 312 | .mui-bar-nav ~ .mui-content | ||
| 313 | { | ||
| 314 | padding-top: 44px; | ||
| 315 | } | ||
| 316 | .mui-bar-nav ~ .mui-content.mui-scroll-wrapper .mui-scrollbar-vertical | ||
| 317 | { | ||
| 318 | top: 44px; | ||
| 319 | } | ||
| 320 | |||
| 321 | .mui-bar-header-secondary ~ .mui-content | ||
| 322 | { | ||
| 323 | padding-top: 88px; | ||
| 324 | } | ||
| 325 | .mui-bar-header-secondary ~ .mui-content.mui-scroll-wrapper .mui-scrollbar-vertical | ||
| 326 | { | ||
| 327 | top: 88px; | ||
| 328 | } | ||
| 329 | |||
| 330 | .mui-bar-footer ~ .mui-content | ||
| 331 | { | ||
| 332 | padding-bottom: 44px; | ||
| 333 | } | ||
| 334 | .mui-bar-footer ~ .mui-content.mui-scroll-wrapper .mui-scrollbar-vertical | ||
| 335 | { | ||
| 336 | bottom: 44px; | ||
| 337 | } | ||
| 338 | |||
| 339 | .mui-bar-footer-secondary ~ .mui-content | ||
| 340 | { | ||
| 341 | padding-bottom: 88px; | ||
| 342 | } | ||
| 343 | .mui-bar-footer-secondary ~ .mui-content.mui-scroll-wrapper .mui-scrollbar-vertical | ||
| 344 | { | ||
| 345 | bottom: 88px; | ||
| 346 | } | ||
| 347 | |||
| 348 | .mui-bar-tab ~ .mui-content | ||
| 349 | { | ||
| 350 | padding-bottom: 50px; | ||
| 351 | } | ||
| 352 | .mui-bar-tab ~ .mui-content.mui-scroll-wrapper .mui-scrollbar-vertical | ||
| 353 | { | ||
| 354 | bottom: 50px; | ||
| 355 | } | ||
| 356 | |||
| 357 | .mui-bar-footer-secondary-tab ~ .mui-content | ||
| 358 | { | ||
| 359 | padding-bottom: 94px; | ||
| 360 | } | ||
| 361 | .mui-bar-footer-secondary-tab ~ .mui-content.mui-scroll-wrapper .mui-scrollbar-vertical | ||
| 362 | { | ||
| 363 | bottom: 94px; | ||
| 364 | } | ||
| 365 | |||
| 366 | .mui-content-padded | ||
| 367 | { | ||
| 368 | margin: 10px; | ||
| 369 | } | ||
| 370 | |||
| 371 | .mui-inline | ||
| 372 | { | ||
| 373 | display: inline-block; | ||
| 374 | |||
| 375 | vertical-align: top; | ||
| 376 | } | ||
| 377 | |||
| 378 | .mui-block | ||
| 379 | { | ||
| 380 | display: block !important; | ||
| 381 | } | ||
| 382 | |||
| 383 | .mui-visibility | ||
| 384 | { | ||
| 385 | visibility: visible !important; | ||
| 386 | } | ||
| 387 | |||
| 388 | .mui-hidden | ||
| 389 | { | ||
| 390 | display: none !important; | ||
| 391 | } | ||
| 392 | |||
| 393 | .mui-ellipsis | ||
| 394 | { | ||
| 395 | overflow: hidden; | ||
| 396 | |||
| 397 | white-space: nowrap; | ||
| 398 | text-overflow: ellipsis; | ||
| 399 | } | ||
| 400 | |||
| 401 | .mui-ellipsis-2 | ||
| 402 | { | ||
| 403 | display: -webkit-box; | ||
| 404 | overflow: hidden; | ||
| 405 | |||
| 406 | white-space: normal !important; | ||
| 407 | text-overflow: ellipsis; | ||
| 408 | word-wrap: break-word; | ||
| 409 | |||
| 410 | -webkit-line-clamp: 2; | ||
| 411 | -webkit-box-orient: vertical; | ||
| 412 | } | ||
| 413 | |||
| 414 | .mui-table | ||
| 415 | { | ||
| 416 | display: table; | ||
| 417 | |||
| 418 | width: 100%; | ||
| 419 | |||
| 420 | table-layout: fixed; | ||
| 421 | } | ||
| 422 | |||
| 423 | .mui-table-cell | ||
| 424 | { | ||
| 425 | position: relative; | ||
| 426 | |||
| 427 | display: table-cell; | ||
| 428 | } | ||
| 429 | |||
| 430 | .mui-text-left | ||
| 431 | { | ||
| 432 | text-align: left !important; | ||
| 433 | } | ||
| 434 | |||
| 435 | .mui-text-center | ||
| 436 | { | ||
| 437 | text-align: center !important; | ||
| 438 | } | ||
| 439 | |||
| 440 | .mui-text-justify | ||
| 441 | { | ||
| 442 | text-align: justify !important; | ||
| 443 | } | ||
| 444 | |||
| 445 | .mui-text-right | ||
| 446 | { | ||
| 447 | text-align: right !important; | ||
| 448 | } | ||
| 449 | |||
| 450 | .mui-pull-left | ||
| 451 | { | ||
| 452 | float: left; | ||
| 453 | } | ||
| 454 | |||
| 455 | .mui-pull-right | ||
| 456 | { | ||
| 457 | float: right; | ||
| 458 | } | ||
| 459 | |||
| 460 | .mui-list-unstyled | ||
| 461 | { | ||
| 462 | padding-left: 0; | ||
| 463 | |||
| 464 | list-style: none; | ||
| 465 | } | ||
| 466 | |||
| 467 | .mui-list-inline | ||
| 468 | { | ||
| 469 | margin-left: -5px; | ||
| 470 | padding-left: 0; | ||
| 471 | |||
| 472 | list-style: none; | ||
| 473 | } | ||
| 474 | |||
| 475 | .mui-list-inline > li | ||
| 476 | { | ||
| 477 | display: inline-block; | ||
| 478 | |||
| 479 | padding-right: 5px; | ||
| 480 | padding-left: 5px; | ||
| 481 | } | ||
| 482 | |||
| 483 | .mui-clearfix:before, .mui-clearfix:after | ||
| 484 | { | ||
| 485 | display: table; | ||
| 486 | |||
| 487 | content: ' '; | ||
| 488 | } | ||
| 489 | .mui-clearfix:after | ||
| 490 | { | ||
| 491 | clear: both; | ||
| 492 | } | ||
| 493 | |||
| 494 | .mui-bg-primary | ||
| 495 | { | ||
| 496 | background-color: #007aff; | ||
| 497 | } | ||
| 498 | |||
| 499 | .mui-bg-positive | ||
| 500 | { | ||
| 501 | background-color: #4cd964; | ||
| 502 | } | ||
| 503 | |||
| 504 | .mui-bg-negative | ||
| 505 | { | ||
| 506 | background-color: #dd524d; | ||
| 507 | } | ||
| 508 | |||
| 509 | .mui-error | ||
| 510 | { | ||
| 511 | margin: 88px 35px; | ||
| 512 | padding: 10px; | ||
| 513 | |||
| 514 | border-radius: 6px; | ||
| 515 | background-color: #bbb; | ||
| 516 | } | ||
| 517 | |||
| 518 | .mui-subtitle | ||
| 519 | { | ||
| 520 | font-size: 15px; | ||
| 521 | } | ||
| 522 | |||
| 523 | h1, h2, h3, h4, h5, h6 | ||
| 524 | { | ||
| 525 | line-height: 1; | ||
| 526 | |||
| 527 | margin-top: 5px; | ||
| 528 | margin-bottom: 5px; | ||
| 529 | } | ||
| 530 | |||
| 531 | h1, .mui-h1 | ||
| 532 | { | ||
| 533 | font-size: 36px; | ||
| 534 | } | ||
| 535 | |||
| 536 | h2, .mui-h2 | ||
| 537 | { | ||
| 538 | font-size: 30px; | ||
| 539 | } | ||
| 540 | |||
| 541 | h3, .mui-h3 | ||
| 542 | { | ||
| 543 | font-size: 24px; | ||
| 544 | } | ||
| 545 | |||
| 546 | h4, .mui-h4 | ||
| 547 | { | ||
| 548 | font-size: 18px; | ||
| 549 | } | ||
| 550 | |||
| 551 | h5, .mui-h5 | ||
| 552 | { | ||
| 553 | font-size: 14px; | ||
| 554 | font-weight: normal; | ||
| 555 | |||
| 556 | color: #8f8f94; | ||
| 557 | } | ||
| 558 | |||
| 559 | h6, .mui-h6 | ||
| 560 | { | ||
| 561 | font-size: 12px; | ||
| 562 | font-weight: normal; | ||
| 563 | |||
| 564 | color: #8f8f94; | ||
| 565 | } | ||
| 566 | |||
| 567 | p | ||
| 568 | { | ||
| 569 | font-size: 14px; | ||
| 570 | |||
| 571 | margin-top: 0; | ||
| 572 | margin-bottom: 10px; | ||
| 573 | |||
| 574 | color: #8f8f94; | ||
| 575 | } | ||
| 576 | |||
| 577 | .mui-row:before, .mui-row:after | ||
| 578 | { | ||
| 579 | display: table; | ||
| 580 | |||
| 581 | content: ' '; | ||
| 582 | } | ||
| 583 | .mui-row:after | ||
| 584 | { | ||
| 585 | clear: both; | ||
| 586 | } | ||
| 587 | |||
| 588 | .mui-col-xs-1, .mui-col-sm-1, .mui-col-xs-2, .mui-col-sm-2, .mui-col-xs-3, .mui-col-sm-3, .mui-col-xs-4, .mui-col-sm-4, .mui-col-xs-5, .mui-col-sm-5, .mui-col-xs-6, .mui-col-sm-6, .mui-col-xs-7, .mui-col-sm-7, .mui-col-xs-8, .mui-col-sm-8, .mui-col-xs-9, .mui-col-sm-9, .mui-col-xs-10, .mui-col-sm-10, .mui-col-xs-11, .mui-col-sm-11, .mui-col-xs-12, .mui-col-sm-12 | ||
| 589 | { | ||
| 590 | position: relative; | ||
| 591 | |||
| 592 | min-height: 1px; | ||
| 593 | } | ||
| 594 | |||
| 595 | .mui-row > [class*='mui-col-'] | ||
| 596 | { | ||
| 597 | float: left; | ||
| 598 | } | ||
| 599 | |||
| 600 | .mui-col-xs-12 | ||
| 601 | { | ||
| 602 | width: 100%; | ||
| 603 | } | ||
| 604 | |||
| 605 | .mui-col-xs-11 | ||
| 606 | { | ||
| 607 | width: 91.66666667%; | ||
| 608 | } | ||
| 609 | |||
| 610 | .mui-col-xs-10 | ||
| 611 | { | ||
| 612 | width: 83.33333333%; | ||
| 613 | } | ||
| 614 | |||
| 615 | .mui-col-xs-9 | ||
| 616 | { | ||
| 617 | width: 75%; | ||
| 618 | } | ||
| 619 | |||
| 620 | .mui-col-xs-8 | ||
| 621 | { | ||
| 622 | width: 66.66666667%; | ||
| 623 | } | ||
| 624 | |||
| 625 | .mui-col-xs-7 | ||
| 626 | { | ||
| 627 | width: 58.33333333%; | ||
| 628 | } | ||
| 629 | |||
| 630 | .mui-col-xs-6 | ||
| 631 | { | ||
| 632 | width: 50%; | ||
| 633 | } | ||
| 634 | |||
| 635 | .mui-col-xs-5 | ||
| 636 | { | ||
| 637 | width: 41.66666667%; | ||
| 638 | } | ||
| 639 | |||
| 640 | .mui-col-xs-4 | ||
| 641 | { | ||
| 642 | width: 33.33333333%; | ||
| 643 | } | ||
| 644 | |||
| 645 | .mui-col-xs-3 | ||
| 646 | { | ||
| 647 | width: 25%; | ||
| 648 | } | ||
| 649 | |||
| 650 | .mui-col-xs-2 | ||
| 651 | { | ||
| 652 | width: 16.66666667%; | ||
| 653 | } | ||
| 654 | |||
| 655 | .mui-col-xs-1 | ||
| 656 | { | ||
| 657 | width: 8.33333333%; | ||
| 658 | } | ||
| 659 | |||
| 660 | @media (min-width: 400px) | ||
| 661 | { | ||
| 662 | .mui-col-sm-12 | ||
| 663 | { | ||
| 664 | width: 100%; | ||
| 665 | } | ||
| 666 | |||
| 667 | .mui-col-sm-11 | ||
| 668 | { | ||
| 669 | width: 91.66666667%; | ||
| 670 | } | ||
| 671 | |||
| 672 | .mui-col-sm-10 | ||
| 673 | { | ||
| 674 | width: 83.33333333%; | ||
| 675 | } | ||
| 676 | |||
| 677 | .mui-col-sm-9 | ||
| 678 | { | ||
| 679 | width: 75%; | ||
| 680 | } | ||
| 681 | |||
| 682 | .mui-col-sm-8 | ||
| 683 | { | ||
| 684 | width: 66.66666667%; | ||
| 685 | } | ||
| 686 | |||
| 687 | .mui-col-sm-7 | ||
| 688 | { | ||
| 689 | width: 58.33333333%; | ||
| 690 | } | ||
| 691 | |||
| 692 | .mui-col-sm-6 | ||
| 693 | { | ||
| 694 | width: 50%; | ||
| 695 | } | ||
| 696 | |||
| 697 | .mui-col-sm-5 | ||
| 698 | { | ||
| 699 | width: 41.66666667%; | ||
| 700 | } | ||
| 701 | |||
| 702 | .mui-col-sm-4 | ||
| 703 | { | ||
| 704 | width: 33.33333333%; | ||
| 705 | } | ||
| 706 | |||
| 707 | .mui-col-sm-3 | ||
| 708 | { | ||
| 709 | width: 25%; | ||
| 710 | } | ||
| 711 | |||
| 712 | .mui-col-sm-2 | ||
| 713 | { | ||
| 714 | width: 16.66666667%; | ||
| 715 | } | ||
| 716 | |||
| 717 | .mui-col-sm-1 | ||
| 718 | { | ||
| 719 | width: 8.33333333%; | ||
| 720 | } | ||
| 721 | } | ||
| 722 | .mui-scroll-wrapper | ||
| 723 | { | ||
| 724 | position: absolute; | ||
| 725 | z-index: 2; | ||
| 726 | top: 0; | ||
| 727 | bottom: 0; | ||
| 728 | left: 0; | ||
| 729 | |||
| 730 | overflow: hidden; | ||
| 731 | |||
| 732 | width: 100%; | ||
| 733 | } | ||
| 734 | |||
| 735 | .mui-scroll | ||
| 736 | { | ||
| 737 | position: absolute; | ||
| 738 | z-index: 1; | ||
| 739 | |||
| 740 | width: 100%; | ||
| 741 | |||
| 742 | -webkit-transform: translateZ(0); | ||
| 743 | transform: translateZ(0); | ||
| 744 | } | ||
| 745 | |||
| 746 | .mui-scrollbar | ||
| 747 | { | ||
| 748 | position: absolute; | ||
| 749 | z-index: 9998; | ||
| 750 | |||
| 751 | overflow: hidden; | ||
| 752 | |||
| 753 | -webkit-transition: 500ms; | ||
| 754 | transition: 500ms; | ||
| 755 | transform: translateZ(0px); | ||
| 756 | pointer-events: none; | ||
| 757 | |||
| 758 | opacity: 0; | ||
| 759 | } | ||
| 760 | |||
| 761 | .mui-scrollbar-vertical | ||
| 762 | { | ||
| 763 | top: 0; | ||
| 764 | right: 1px; | ||
| 765 | bottom: 2px; | ||
| 766 | |||
| 767 | width: 4px; | ||
| 768 | } | ||
| 769 | .mui-scrollbar-vertical .mui-scrollbar-indicator | ||
| 770 | { | ||
| 771 | width: 100%; | ||
| 772 | } | ||
| 773 | |||
| 774 | .mui-scrollbar-horizontal | ||
| 775 | { | ||
| 776 | right: 2px; | ||
| 777 | bottom: 0; | ||
| 778 | left: 2px; | ||
| 779 | |||
| 780 | height: 4px; | ||
| 781 | } | ||
| 782 | .mui-scrollbar-horizontal .mui-scrollbar-indicator | ||
| 783 | { | ||
| 784 | height: 100%; | ||
| 785 | } | ||
| 786 | |||
| 787 | .mui-scrollbar-indicator | ||
| 788 | { | ||
| 789 | position: absolute; | ||
| 790 | |||
| 791 | display: block; | ||
| 792 | |||
| 793 | box-sizing: border-box; | ||
| 794 | |||
| 795 | -webkit-transition: .01s cubic-bezier(.1, .57, .1, 1); | ||
| 796 | transition: .01s cubic-bezier(.1, .57, .1, 1); | ||
| 797 | transform: translate(0px, 0px) translateZ(0px); | ||
| 798 | |||
| 799 | border: 1px solid rgba(255, 255, 255, .80196); | ||
| 800 | border-radius: 2px; | ||
| 801 | background: rgba(0, 0, 0, .39804); | ||
| 802 | } | ||
| 803 | |||
| 804 | .mui-plus-pullrefresh .mui-fullscreen .mui-scroll-wrapper .mui-scroll-wrapper, .mui-plus-pullrefresh .mui-fullscreen .mui-slider-group .mui-scroll-wrapper | ||
| 805 | { | ||
| 806 | position: absolute; | ||
| 807 | top: 0; | ||
| 808 | bottom: 0; | ||
| 809 | left: 0; | ||
| 810 | |||
| 811 | overflow: hidden; | ||
| 812 | |||
| 813 | width: 100%; | ||
| 814 | } | ||
| 815 | .mui-plus-pullrefresh .mui-fullscreen .mui-scroll-wrapper .mui-scroll, .mui-plus-pullrefresh .mui-fullscreen .mui-slider-group .mui-scroll | ||
| 816 | { | ||
| 817 | position: absolute; | ||
| 818 | |||
| 819 | width: 100%; | ||
| 820 | } | ||
| 821 | .mui-plus-pullrefresh .mui-scroll-wrapper, .mui-plus-pullrefresh .mui-slider-group | ||
| 822 | { | ||
| 823 | position: static; | ||
| 824 | top: auto; | ||
| 825 | bottom: auto; | ||
| 826 | left: auto; | ||
| 827 | |||
| 828 | overflow: auto; | ||
| 829 | |||
| 830 | width: auto; | ||
| 831 | } | ||
| 832 | .mui-plus-pullrefresh .mui-slider-group | ||
| 833 | { | ||
| 834 | overflow: visible; | ||
| 835 | } | ||
| 836 | .mui-plus-pullrefresh .mui-scroll | ||
| 837 | { | ||
| 838 | position: static; | ||
| 839 | |||
| 840 | width: auto; | ||
| 841 | } | ||
| 842 | |||
| 843 | .mui-off-canvas-wrap .mui-bar | ||
| 844 | { | ||
| 845 | position: absolute !important; | ||
| 846 | |||
| 847 | -webkit-transform: translate3d(0, 0, 0); | ||
| 848 | transform: translate3d(0, 0, 0); | ||
| 849 | |||
| 850 | -webkit-box-shadow: none; | ||
| 851 | box-shadow: none; | ||
| 852 | } | ||
| 853 | |||
| 854 | .mui-off-canvas-wrap | ||
| 855 | { | ||
| 856 | position: relative; | ||
| 857 | z-index: 1; | ||
| 858 | |||
| 859 | overflow: hidden; | ||
| 860 | |||
| 861 | width: 100%; | ||
| 862 | height: 100%; | ||
| 863 | } | ||
| 864 | .mui-off-canvas-wrap .mui-inner-wrap | ||
| 865 | { | ||
| 866 | position: relative; | ||
| 867 | z-index: 1; | ||
| 868 | |||
| 869 | width: 100%; | ||
| 870 | height: 100%; | ||
| 871 | } | ||
| 872 | .mui-off-canvas-wrap .mui-inner-wrap.mui-transitioning | ||
| 873 | { | ||
| 874 | -webkit-transition: -webkit-transform 350ms; | ||
| 875 | transition: transform 350ms cubic-bezier(.165, .84, .44, 1); | ||
| 876 | } | ||
| 877 | .mui-off-canvas-wrap .mui-inner-wrap .mui-off-canvas-left | ||
| 878 | { | ||
| 879 | -webkit-transform: translate3d(-100%, 0, 0); | ||
| 880 | transform: translate3d(-100%, 0, 0); | ||
| 881 | } | ||
| 882 | .mui-off-canvas-wrap .mui-inner-wrap .mui-off-canvas-right | ||
| 883 | { | ||
| 884 | -webkit-transform: translate3d(100%, 0, 0); | ||
| 885 | transform: translate3d(100%, 0, 0); | ||
| 886 | } | ||
| 887 | .mui-off-canvas-wrap.mui-active | ||
| 888 | { | ||
| 889 | overflow: hidden; | ||
| 890 | |||
| 891 | height: 100%; | ||
| 892 | } | ||
| 893 | .mui-off-canvas-wrap.mui-active .mui-off-canvas-backdrop | ||
| 894 | { | ||
| 895 | position: absolute; | ||
| 896 | z-index: 998; | ||
| 897 | top: 0; | ||
| 898 | right: 0; | ||
| 899 | bottom: 0; | ||
| 900 | left: 0; | ||
| 901 | |||
| 902 | display: block; | ||
| 903 | |||
| 904 | transition: background 350ms cubic-bezier(.165, .84, .44, 1); | ||
| 905 | |||
| 906 | background: rgba(0, 0, 0, .4); | ||
| 907 | box-shadow: -4px 0 4px rgba(0, 0, 0, .5), 4px 0 4px rgba(0, 0, 0, .5); | ||
| 908 | |||
| 909 | -webkit-tap-highlight-color: transparent; | ||
| 910 | } | ||
| 911 | .mui-off-canvas-wrap.mui-slide-in .mui-off-canvas-right | ||
| 912 | { | ||
| 913 | z-index: 10000 !important; | ||
| 914 | |||
| 915 | -webkit-transform: translate3d(100%, 0px, 0px); | ||
| 916 | } | ||
| 917 | .mui-off-canvas-wrap.mui-slide-in .mui-off-canvas-left | ||
| 918 | { | ||
| 919 | z-index: 10000 !important; | ||
| 920 | |||
| 921 | -webkit-transform: translate3d(-100%, 0px, 0px); | ||
| 922 | } | ||
| 923 | |||
| 924 | .mui-off-canvas-left, .mui-off-canvas-right | ||
| 925 | { | ||
| 926 | position: absolute; | ||
| 927 | z-index: -1; | ||
| 928 | top: 0; | ||
| 929 | bottom: 0; | ||
| 930 | |||
| 931 | visibility: hidden; | ||
| 932 | |||
| 933 | box-sizing: content-box; | ||
| 934 | width: 70%; | ||
| 935 | min-height: 100%; | ||
| 936 | |||
| 937 | background: #333; | ||
| 938 | |||
| 939 | -webkit-overflow-scrolling: touch; | ||
| 940 | } | ||
| 941 | .mui-off-canvas-left.mui-transitioning, .mui-off-canvas-right.mui-transitioning | ||
| 942 | { | ||
| 943 | -webkit-transition: -webkit-transform 350ms cubic-bezier(.165, .84, .44, 1); | ||
| 944 | transition: transform 350ms cubic-bezier(.165, .84, .44, 1); | ||
| 945 | } | ||
| 946 | |||
| 947 | .mui-off-canvas-left | ||
| 948 | { | ||
| 949 | left: 0; | ||
| 950 | } | ||
| 951 | |||
| 952 | .mui-off-canvas-right | ||
| 953 | { | ||
| 954 | right: 0; | ||
| 955 | } | ||
| 956 | |||
| 957 | .mui-off-canvas-wrap:not(.mui-slide-in).mui-scalable | ||
| 958 | { | ||
| 959 | background-color: #333; | ||
| 960 | } | ||
| 961 | .mui-off-canvas-wrap:not(.mui-slide-in).mui-scalable > .mui-off-canvas-left, .mui-off-canvas-wrap:not(.mui-slide-in).mui-scalable > .mui-off-canvas-right | ||
| 962 | { | ||
| 963 | width: 80%; | ||
| 964 | |||
| 965 | -webkit-transform: scale(.8); | ||
| 966 | transform: scale(.8); | ||
| 967 | |||
| 968 | opacity: .1; | ||
| 969 | } | ||
| 970 | .mui-off-canvas-wrap:not(.mui-slide-in).mui-scalable > .mui-off-canvas-left.mui-transitioning, .mui-off-canvas-wrap:not(.mui-slide-in).mui-scalable > .mui-off-canvas-right.mui-transitioning | ||
| 971 | { | ||
| 972 | -webkit-transition: -webkit-transform 350ms cubic-bezier(.165, .84, .44, 1), opacity 350ms cubic-bezier(.165, .84, .44, 1); | ||
| 973 | transition: transform 350ms cubic-bezier(.165, .84, .44, 1), opacity 350ms cubic-bezier(.165, .84, .44, 1); | ||
| 974 | } | ||
| 975 | .mui-off-canvas-wrap:not(.mui-slide-in).mui-scalable > .mui-off-canvas-left | ||
| 976 | { | ||
| 977 | -webkit-transform-origin: -100%; | ||
| 978 | transform-origin: -100%; | ||
| 979 | } | ||
| 980 | .mui-off-canvas-wrap:not(.mui-slide-in).mui-scalable > .mui-off-canvas-right | ||
| 981 | { | ||
| 982 | -webkit-transform-origin: 200%; | ||
| 983 | transform-origin: 200%; | ||
| 984 | } | ||
| 985 | .mui-off-canvas-wrap:not(.mui-slide-in).mui-scalable.mui-active > .mui-inner-wrap | ||
| 986 | { | ||
| 987 | -webkit-transform: scale(.8); | ||
| 988 | transform: scale(.8); | ||
| 989 | } | ||
| 990 | .mui-off-canvas-wrap:not(.mui-slide-in).mui-scalable.mui-active > .mui-off-canvas-left, .mui-off-canvas-wrap:not(.mui-slide-in).mui-scalable.mui-active > .mui-off-canvas-right | ||
| 991 | { | ||
| 992 | -webkit-transform: scale(1); | ||
| 993 | transform: scale(1); | ||
| 994 | |||
| 995 | opacity: 1; | ||
| 996 | } | ||
| 997 | |||
| 998 | .mui-loading .mui-spinner | ||
| 999 | { | ||
| 1000 | display: block; | ||
| 1001 | |||
| 1002 | margin: 0 auto; | ||
| 1003 | } | ||
| 1004 | |||
| 1005 | .mui-spinner | ||
| 1006 | { | ||
| 1007 | display: inline-block; | ||
| 1008 | |||
| 1009 | width: 24px; | ||
| 1010 | height: 24px; | ||
| 1011 | |||
| 1012 | -webkit-transform-origin: 50%; | ||
| 1013 | transform-origin: 50%; | ||
| 1014 | -webkit-animation: spinner-spin 1s step-end infinite; | ||
| 1015 | animation: spinner-spin 1s step-end infinite; | ||
| 1016 | } | ||
| 1017 | |||
| 1018 | .mui-spinner:after | ||
| 1019 | { | ||
| 1020 | display: block; | ||
| 1021 | |||
| 1022 | width: 100%; | ||
| 1023 | height: 100%; | ||
| 1024 | |||
| 1025 | content: ''; | ||
| 1026 | |||
| 1027 | background-image: url('data:image/svg+xml;charset=utf-8,<svg viewBox=\'0 0 120 120\' xmlns=\'http://www.w3.org/2000/svg\' xmlns:xlink=\'http://www.w3.org/1999/xlink\'><defs><line id=\'l\' x1=\'60\' x2=\'60\' y1=\'7\' y2=\'27\' stroke=\'%236c6c6c\' stroke-width=\'11\' stroke-linecap=\'round\'/></defs><g><use xlink:href=\'%23l\' opacity=\'.27\'/><use xlink:href=\'%23l\' opacity=\'.27\' transform=\'rotate(30 60,60)\'/><use xlink:href=\'%23l\' opacity=\'.27\' transform=\'rotate(60 60,60)\'/><use xlink:href=\'%23l\' opacity=\'.27\' transform=\'rotate(90 60,60)\'/><use xlink:href=\'%23l\' opacity=\'.27\' transform=\'rotate(120 60,60)\'/><use xlink:href=\'%23l\' opacity=\'.27\' transform=\'rotate(150 60,60)\'/><use xlink:href=\'%23l\' opacity=\'.37\' transform=\'rotate(180 60,60)\'/><use xlink:href=\'%23l\' opacity=\'.46\' transform=\'rotate(210 60,60)\'/><use xlink:href=\'%23l\' opacity=\'.56\' transform=\'rotate(240 60,60)\'/><use xlink:href=\'%23l\' opacity=\'.66\' transform=\'rotate(270 60,60)\'/><use xlink:href=\'%23l\' opacity=\'.75\' transform=\'rotate(300 60,60)\'/><use xlink:href=\'%23l\' opacity=\'.85\' transform=\'rotate(330 60,60)\'/></g></svg>'); | ||
| 1028 | background-repeat: no-repeat; | ||
| 1029 | background-position: 50%; | ||
| 1030 | background-size: 100%; | ||
| 1031 | } | ||
| 1032 | |||
| 1033 | .mui-spinner-white:after | ||
| 1034 | { | ||
| 1035 | background-image: url('data:image/svg+xml;charset=utf-8,<svg viewBox=\'0 0 120 120\' xmlns=\'http://www.w3.org/2000/svg\' xmlns:xlink=\'http://www.w3.org/1999/xlink\'><defs><line id=\'l\' x1=\'60\' x2=\'60\' y1=\'7\' y2=\'27\' stroke=\'%23fff\' stroke-width=\'11\' stroke-linecap=\'round\'/></defs><g><use xlink:href=\'%23l\' opacity=\'.27\'/><use xlink:href=\'%23l\' opacity=\'.27\' transform=\'rotate(30 60,60)\'/><use xlink:href=\'%23l\' opacity=\'.27\' transform=\'rotate(60 60,60)\'/><use xlink:href=\'%23l\' opacity=\'.27\' transform=\'rotate(90 60,60)\'/><use xlink:href=\'%23l\' opacity=\'.27\' transform=\'rotate(120 60,60)\'/><use xlink:href=\'%23l\' opacity=\'.27\' transform=\'rotate(150 60,60)\'/><use xlink:href=\'%23l\' opacity=\'.37\' transform=\'rotate(180 60,60)\'/><use xlink:href=\'%23l\' opacity=\'.46\' transform=\'rotate(210 60,60)\'/><use xlink:href=\'%23l\' opacity=\'.56\' transform=\'rotate(240 60,60)\'/><use xlink:href=\'%23l\' opacity=\'.66\' transform=\'rotate(270 60,60)\'/><use xlink:href=\'%23l\' opacity=\'.75\' transform=\'rotate(300 60,60)\'/><use xlink:href=\'%23l\' opacity=\'.85\' transform=\'rotate(330 60,60)\'/></g></svg>'); | ||
| 1036 | } | ||
| 1037 | |||
| 1038 | @-webkit-keyframes spinner-spin | ||
| 1039 | { | ||
| 1040 | 0% | ||
| 1041 | { | ||
| 1042 | -webkit-transform: rotate(0deg); | ||
| 1043 | } | ||
| 1044 | |||
| 1045 | 8.33333333% | ||
| 1046 | { | ||
| 1047 | -webkit-transform: rotate(30deg); | ||
| 1048 | } | ||
| 1049 | |||
| 1050 | 16.66666667% | ||
| 1051 | { | ||
| 1052 | -webkit-transform: rotate(60deg); | ||
| 1053 | } | ||
| 1054 | |||
| 1055 | 25% | ||
| 1056 | { | ||
| 1057 | -webkit-transform: rotate(90deg); | ||
| 1058 | } | ||
| 1059 | |||
| 1060 | 33.33333333% | ||
| 1061 | { | ||
| 1062 | -webkit-transform: rotate(120deg); | ||
| 1063 | } | ||
| 1064 | |||
| 1065 | 41.66666667% | ||
| 1066 | { | ||
| 1067 | -webkit-transform: rotate(150deg); | ||
| 1068 | } | ||
| 1069 | |||
| 1070 | 50% | ||
| 1071 | { | ||
| 1072 | -webkit-transform: rotate(180deg); | ||
| 1073 | } | ||
| 1074 | |||
| 1075 | 58.33333333% | ||
| 1076 | { | ||
| 1077 | -webkit-transform: rotate(210deg); | ||
| 1078 | } | ||
| 1079 | |||
| 1080 | 66.66666667% | ||
| 1081 | { | ||
| 1082 | -webkit-transform: rotate(240deg); | ||
| 1083 | } | ||
| 1084 | |||
| 1085 | 75% | ||
| 1086 | { | ||
| 1087 | -webkit-transform: rotate(270deg); | ||
| 1088 | } | ||
| 1089 | |||
| 1090 | 83.33333333% | ||
| 1091 | { | ||
| 1092 | -webkit-transform: rotate(300deg); | ||
| 1093 | } | ||
| 1094 | |||
| 1095 | 91.66666667% | ||
| 1096 | { | ||
| 1097 | -webkit-transform: rotate(330deg); | ||
| 1098 | } | ||
| 1099 | |||
| 1100 | 100% | ||
| 1101 | { | ||
| 1102 | -webkit-transform: rotate(360deg); | ||
| 1103 | } | ||
| 1104 | } | ||
| 1105 | @keyframes spinner-spin | ||
| 1106 | { | ||
| 1107 | 0% | ||
| 1108 | { | ||
| 1109 | transform: rotate(0deg); | ||
| 1110 | } | ||
| 1111 | |||
| 1112 | 8.33333333% | ||
| 1113 | { | ||
| 1114 | transform: rotate(30deg); | ||
| 1115 | } | ||
| 1116 | |||
| 1117 | 16.66666667% | ||
| 1118 | { | ||
| 1119 | transform: rotate(60deg); | ||
| 1120 | } | ||
| 1121 | |||
| 1122 | 25% | ||
| 1123 | { | ||
| 1124 | transform: rotate(90deg); | ||
| 1125 | } | ||
| 1126 | |||
| 1127 | 33.33333333% | ||
| 1128 | { | ||
| 1129 | transform: rotate(120deg); | ||
| 1130 | } | ||
| 1131 | |||
| 1132 | 41.66666667% | ||
| 1133 | { | ||
| 1134 | transform: rotate(150deg); | ||
| 1135 | } | ||
| 1136 | |||
| 1137 | 50% | ||
| 1138 | { | ||
| 1139 | transform: rotate(180deg); | ||
| 1140 | } | ||
| 1141 | |||
| 1142 | 58.33333333% | ||
| 1143 | { | ||
| 1144 | transform: rotate(210deg); | ||
| 1145 | } | ||
| 1146 | |||
| 1147 | 66.66666667% | ||
| 1148 | { | ||
| 1149 | transform: rotate(240deg); | ||
| 1150 | } | ||
| 1151 | |||
| 1152 | 75% | ||
| 1153 | { | ||
| 1154 | transform: rotate(270deg); | ||
| 1155 | } | ||
| 1156 | |||
| 1157 | 83.33333333% | ||
| 1158 | { | ||
| 1159 | transform: rotate(300deg); | ||
| 1160 | } | ||
| 1161 | |||
| 1162 | 91.66666667% | ||
| 1163 | { | ||
| 1164 | transform: rotate(330deg); | ||
| 1165 | } | ||
| 1166 | |||
| 1167 | 100% | ||
| 1168 | { | ||
| 1169 | transform: rotate(360deg); | ||
| 1170 | } | ||
| 1171 | } | ||
| 1172 | input[type='button'], | ||
| 1173 | input[type='submit'], | ||
| 1174 | input[type='reset'], | ||
| 1175 | button, | ||
| 1176 | .mui-btn | ||
| 1177 | { | ||
| 1178 | font-size: 14px; | ||
| 1179 | font-weight: 400; | ||
| 1180 | line-height: 1.42; | ||
| 1181 | |||
| 1182 | position: relative; | ||
| 1183 | |||
| 1184 | display: inline-block; | ||
| 1185 | |||
| 1186 | margin-bottom: 0; | ||
| 1187 | padding: 6px 12px; | ||
| 1188 | |||
| 1189 | cursor: pointer; | ||
| 1190 | -webkit-transition: all; | ||
| 1191 | transition: all; | ||
| 1192 | -webkit-transition-timing-function: linear; | ||
| 1193 | transition-timing-function: linear; | ||
| 1194 | -webkit-transition-duration: .2s; | ||
| 1195 | transition-duration: .2s; | ||
| 1196 | text-align: center; | ||
| 1197 | vertical-align: top; | ||
| 1198 | white-space: nowrap; | ||
| 1199 | |||
| 1200 | color: #333; | ||
| 1201 | border: 1px solid #ccc; | ||
| 1202 | border-radius: 3px; | ||
| 1203 | border-top-left-radius: 3px; | ||
| 1204 | border-top-right-radius: 3px; | ||
| 1205 | border-bottom-right-radius: 3px; | ||
| 1206 | border-bottom-left-radius: 3px; | ||
| 1207 | background-color: #fff; | ||
| 1208 | background-clip: padding-box; | ||
| 1209 | } | ||
| 1210 | input[type='button']:enabled:active, input[type='button'].mui-active:enabled, | ||
| 1211 | input[type='submit']:enabled:active, | ||
| 1212 | input[type='submit'].mui-active:enabled, | ||
| 1213 | input[type='reset']:enabled:active, | ||
| 1214 | input[type='reset'].mui-active:enabled, | ||
| 1215 | button:enabled:active, | ||
| 1216 | button.mui-active:enabled, | ||
| 1217 | .mui-btn:enabled:active, | ||
| 1218 | .mui-btn.mui-active:enabled | ||
| 1219 | { | ||
| 1220 | color: #fff; | ||
| 1221 | background-color: #929292; | ||
| 1222 | } | ||
| 1223 | input[type='button']:disabled, input[type='button'].mui-disabled, | ||
| 1224 | input[type='submit']:disabled, | ||
| 1225 | input[type='submit'].mui-disabled, | ||
| 1226 | input[type='reset']:disabled, | ||
| 1227 | input[type='reset'].mui-disabled, | ||
| 1228 | button:disabled, | ||
| 1229 | button.mui-disabled, | ||
| 1230 | .mui-btn:disabled, | ||
| 1231 | .mui-btn.mui-disabled | ||
| 1232 | { | ||
| 1233 | opacity: .6; | ||
| 1234 | } | ||
| 1235 | |||
| 1236 | input[type='submit'], | ||
| 1237 | .mui-btn-primary, .mui-btn-blue | ||
| 1238 | { | ||
| 1239 | color: #fff; | ||
| 1240 | border: 1px solid #007aff; | ||
| 1241 | background-color: #007aff; | ||
| 1242 | } | ||
| 1243 | input[type='submit']:enabled:active, input[type='submit'].mui-active:enabled, | ||
| 1244 | .mui-btn-primary:enabled:active, | ||
| 1245 | .mui-btn-primary.mui-active:enabled, .mui-btn-blue:enabled:active, .mui-btn-blue.mui-active:enabled | ||
| 1246 | { | ||
| 1247 | color: #fff; | ||
| 1248 | border: 1px solid #0062cc; | ||
| 1249 | background-color: #0062cc; | ||
| 1250 | } | ||
| 1251 | |||
| 1252 | .mui-btn-positive, .mui-btn-success, .mui-btn-green | ||
| 1253 | { | ||
| 1254 | color: #fff; | ||
| 1255 | border: 1px solid #4cd964; | ||
| 1256 | background-color: #4cd964; | ||
| 1257 | } | ||
| 1258 | .mui-btn-positive:enabled:active, .mui-btn-positive.mui-active:enabled, .mui-btn-success:enabled:active, .mui-btn-success.mui-active:enabled, .mui-btn-green:enabled:active, .mui-btn-green.mui-active:enabled | ||
| 1259 | { | ||
| 1260 | color: #fff; | ||
| 1261 | border: 1px solid #2ac845; | ||
| 1262 | background-color: #2ac845; | ||
| 1263 | } | ||
| 1264 | |||
| 1265 | .mui-btn-warning, .mui-btn-yellow | ||
| 1266 | { | ||
| 1267 | color: #fff; | ||
| 1268 | border: 1px solid #f0ad4e; | ||
| 1269 | background-color: #f0ad4e; | ||
| 1270 | } | ||
| 1271 | .mui-btn-warning:enabled:active, .mui-btn-warning.mui-active:enabled, .mui-btn-yellow:enabled:active, .mui-btn-yellow.mui-active:enabled | ||
| 1272 | { | ||
| 1273 | color: #fff; | ||
| 1274 | border: 1px solid #ec971f; | ||
| 1275 | background-color: #ec971f; | ||
| 1276 | } | ||
| 1277 | |||
| 1278 | .mui-btn-negative, .mui-btn-danger, .mui-btn-red | ||
| 1279 | { | ||
| 1280 | color: #fff; | ||
| 1281 | border: 1px solid #dd524d; | ||
| 1282 | background-color: #dd524d; | ||
| 1283 | } | ||
| 1284 | .mui-btn-negative:enabled:active, .mui-btn-negative.mui-active:enabled, .mui-btn-danger:enabled:active, .mui-btn-danger.mui-active:enabled, .mui-btn-red:enabled:active, .mui-btn-red.mui-active:enabled | ||
| 1285 | { | ||
| 1286 | color: #fff; | ||
| 1287 | border: 1px solid #cf2d28; | ||
| 1288 | background-color: #cf2d28; | ||
| 1289 | } | ||
| 1290 | |||
| 1291 | .mui-btn-royal, .mui-btn-purple | ||
| 1292 | { | ||
| 1293 | color: #fff; | ||
| 1294 | border: 1px solid #8a6de9; | ||
| 1295 | background-color: #8a6de9; | ||
| 1296 | } | ||
| 1297 | .mui-btn-royal:enabled:active, .mui-btn-royal.mui-active:enabled, .mui-btn-purple:enabled:active, .mui-btn-purple.mui-active:enabled | ||
| 1298 | { | ||
| 1299 | color: #fff; | ||
| 1300 | border: 1px solid #6641e2; | ||
| 1301 | background-color: #6641e2; | ||
| 1302 | } | ||
| 1303 | |||
| 1304 | .mui-btn-grey | ||
| 1305 | { | ||
| 1306 | color: #fff; | ||
| 1307 | border: 1px solid #c7c7cc; | ||
| 1308 | background-color: #c7c7cc; | ||
| 1309 | } | ||
| 1310 | .mui-btn-grey:enabled:active, .mui-btn-grey.mui-active:enabled | ||
| 1311 | { | ||
| 1312 | color: #fff; | ||
| 1313 | border: 1px solid #acacb4; | ||
| 1314 | background-color: #acacb4; | ||
| 1315 | } | ||
| 1316 | |||
| 1317 | .mui-btn-outlined | ||
| 1318 | { | ||
| 1319 | background-color: transparent; | ||
| 1320 | } | ||
| 1321 | .mui-btn-outlined.mui-btn-primary, .mui-btn-outlined.mui-btn-blue | ||
| 1322 | { | ||
| 1323 | color: #007aff; | ||
| 1324 | } | ||
| 1325 | .mui-btn-outlined.mui-btn-positive, .mui-btn-outlined.mui-btn-success, .mui-btn-outlined.mui-btn-green | ||
| 1326 | { | ||
| 1327 | color: #4cd964; | ||
| 1328 | } | ||
| 1329 | .mui-btn-outlined.mui-btn-warning, .mui-btn-outlined.mui-btn-yellow | ||
| 1330 | { | ||
| 1331 | color: #f0ad4e; | ||
| 1332 | } | ||
| 1333 | .mui-btn-outlined.mui-btn-negative, .mui-btn-outlined.mui-btn-danger, .mui-btn-outlined.mui-btn-red | ||
| 1334 | { | ||
| 1335 | color: #dd524d; | ||
| 1336 | } | ||
| 1337 | .mui-btn-outlined.mui-btn-royal, .mui-btn-outlined.mui-btn-purple | ||
| 1338 | { | ||
| 1339 | color: #8a6de9; | ||
| 1340 | } | ||
| 1341 | .mui-btn-outlined.mui-btn-primary:enabled:active, .mui-btn-outlined.mui-btn-blue:enabled:active, .mui-btn-outlined.mui-btn-positive:enabled:active, .mui-btn-outlined.mui-btn-success:enabled:active, .mui-btn-outlined.mui-btn-green:enabled:active, .mui-btn-outlined.mui-btn-warning:enabled:active, .mui-btn-outlined.mui-btn-yellow:enabled:active, .mui-btn-outlined.mui-btn-negative:enabled:active, .mui-btn-outlined.mui-btn-danger:enabled:active, .mui-btn-outlined.mui-btn-red:enabled:active, .mui-btn-outlined.mui-btn-royal:enabled:active, .mui-btn-outlined.mui-btn-purple:enabled:active | ||
| 1342 | { | ||
| 1343 | color: #fff; | ||
| 1344 | } | ||
| 1345 | |||
| 1346 | .mui-btn-link | ||
| 1347 | { | ||
| 1348 | padding-top: 6px; | ||
| 1349 | padding-bottom: 6px; | ||
| 1350 | |||
| 1351 | color: #007aff; | ||
| 1352 | border: 0; | ||
| 1353 | background-color: transparent; | ||
| 1354 | } | ||
| 1355 | .mui-btn-link:enabled:active, .mui-btn-link.mui-active:enabled | ||
| 1356 | { | ||
| 1357 | color: #0062cc; | ||
| 1358 | background-color: transparent; | ||
| 1359 | } | ||
| 1360 | |||
| 1361 | .mui-btn-block | ||
| 1362 | { | ||
| 1363 | font-size: 18px; | ||
| 1364 | |||
| 1365 | display: block; | ||
| 1366 | |||
| 1367 | width: 100%; | ||
| 1368 | margin-bottom: 10px; | ||
| 1369 | padding: 15px 0; | ||
| 1370 | } | ||
| 1371 | |||
| 1372 | .mui-btn .mui-badge | ||
| 1373 | { | ||
| 1374 | font-size: 14px; | ||
| 1375 | |||
| 1376 | margin: -2px -4px -2px 4px; | ||
| 1377 | |||
| 1378 | background-color: rgba(0, 0, 0, .15); | ||
| 1379 | } | ||
| 1380 | |||
| 1381 | .mui-btn .mui-badge-inverted, | ||
| 1382 | .mui-btn:enabled:active .mui-badge-inverted | ||
| 1383 | { | ||
| 1384 | background-color: transparent; | ||
| 1385 | } | ||
| 1386 | |||
| 1387 | .mui-btn-primary:enabled:active .mui-badge-inverted, | ||
| 1388 | .mui-btn-positive:enabled:active .mui-badge-inverted, | ||
| 1389 | .mui-btn-negative:enabled:active .mui-badge-inverted | ||
| 1390 | { | ||
| 1391 | color: #fff; | ||
| 1392 | } | ||
| 1393 | |||
| 1394 | .mui-btn-block .mui-badge | ||
| 1395 | { | ||
| 1396 | position: absolute; | ||
| 1397 | right: 0; | ||
| 1398 | |||
| 1399 | margin-right: 10px; | ||
| 1400 | } | ||
| 1401 | |||
| 1402 | .mui-btn .mui-icon | ||
| 1403 | { | ||
| 1404 | font-size: inherit; | ||
| 1405 | } | ||
| 1406 | |||
| 1407 | .mui-btn.mui-icon | ||
| 1408 | { | ||
| 1409 | font-size: 14px; | ||
| 1410 | line-height: 1.42; | ||
| 1411 | } | ||
| 1412 | |||
| 1413 | .mui-btn.mui-fab | ||
| 1414 | { | ||
| 1415 | width: 56px; | ||
| 1416 | height: 56px; | ||
| 1417 | padding: 16px; | ||
| 1418 | |||
| 1419 | border-radius: 50%; | ||
| 1420 | outline: none; | ||
| 1421 | } | ||
| 1422 | .mui-btn.mui-fab.mui-btn-mini | ||
| 1423 | { | ||
| 1424 | width: 40px; | ||
| 1425 | height: 40px; | ||
| 1426 | padding: 8px; | ||
| 1427 | } | ||
| 1428 | .mui-btn.mui-fab .mui-icon | ||
| 1429 | { | ||
| 1430 | font-size: 24px; | ||
| 1431 | line-height: 24px; | ||
| 1432 | |||
| 1433 | width: 24px; | ||
| 1434 | height: 24px; | ||
| 1435 | } | ||
| 1436 | |||
| 1437 | .mui-bar | ||
| 1438 | { | ||
| 1439 | position: fixed; | ||
| 1440 | z-index: 10; | ||
| 1441 | right: 0; | ||
| 1442 | left: 0; | ||
| 1443 | |||
| 1444 | height: 44px; | ||
| 1445 | padding-right: 10px; | ||
| 1446 | padding-left: 10px; | ||
| 1447 | |||
| 1448 | border-bottom: 0; | ||
| 1449 | background-color: #f7f7f7; | ||
| 1450 | -webkit-box-shadow: 0 0 1px rgba(0, 0, 0, .85); | ||
| 1451 | box-shadow: 0 0 1px rgba(0, 0, 0, .85); | ||
| 1452 | |||
| 1453 | -webkit-backface-visibility: hidden; | ||
| 1454 | backface-visibility: hidden; | ||
| 1455 | } | ||
| 1456 | |||
| 1457 | .mui-bar .mui-title | ||
| 1458 | { | ||
| 1459 | right: 40px; | ||
| 1460 | left: 40px; | ||
| 1461 | |||
| 1462 | display: inline-block; | ||
| 1463 | overflow: hidden; | ||
| 1464 | |||
| 1465 | width: auto; | ||
| 1466 | margin: 0; | ||
| 1467 | |||
| 1468 | text-overflow: ellipsis; | ||
| 1469 | } | ||
| 1470 | .mui-bar .mui-backdrop | ||
| 1471 | { | ||
| 1472 | background: none; | ||
| 1473 | } | ||
| 1474 | |||
| 1475 | .mui-bar-header-secondary | ||
| 1476 | { | ||
| 1477 | top: 44px; | ||
| 1478 | } | ||
| 1479 | |||
| 1480 | .mui-bar-footer | ||
| 1481 | { | ||
| 1482 | bottom: 0; | ||
| 1483 | } | ||
| 1484 | |||
| 1485 | .mui-bar-footer-secondary | ||
| 1486 | { | ||
| 1487 | bottom: 44px; | ||
| 1488 | } | ||
| 1489 | |||
| 1490 | .mui-bar-footer-secondary-tab | ||
| 1491 | { | ||
| 1492 | bottom: 50px; | ||
| 1493 | } | ||
| 1494 | |||
| 1495 | .mui-bar-footer, | ||
| 1496 | .mui-bar-footer-secondary, | ||
| 1497 | .mui-bar-footer-secondary-tab | ||
| 1498 | { | ||
| 1499 | border-top: 0; | ||
| 1500 | } | ||
| 1501 | |||
| 1502 | .mui-bar-nav | ||
| 1503 | { | ||
| 1504 | top: 0; | ||
| 1505 | |||
| 1506 | -webkit-box-shadow: 0 1px 6px #ccc; | ||
| 1507 | box-shadow: 0 1px 6px #ccc; | ||
| 1508 | } | ||
| 1509 | .mui-bar-nav ~ .mui-content .mui-anchor | ||
| 1510 | { | ||
| 1511 | display: block; | ||
| 1512 | visibility: hidden; | ||
| 1513 | |||
| 1514 | height: 45px; | ||
| 1515 | margin-top: -45px; | ||
| 1516 | } | ||
| 1517 | .mui-bar-nav.mui-bar .mui-icon | ||
| 1518 | { | ||
| 1519 | margin-right: -10px; | ||
| 1520 | margin-left: -10px; | ||
| 1521 | padding-right: 10px; | ||
| 1522 | padding-left: 10px; | ||
| 1523 | } | ||
| 1524 | |||
| 1525 | .mui-title | ||
| 1526 | { | ||
| 1527 | font-size: 17px; | ||
| 1528 | font-weight: 500; | ||
| 1529 | line-height: 44px; | ||
| 1530 | |||
| 1531 | position: absolute; | ||
| 1532 | |||
| 1533 | display: block; | ||
| 1534 | |||
| 1535 | width: 100%; | ||
| 1536 | margin: 0 -10px; | ||
| 1537 | padding: 0; | ||
| 1538 | |||
| 1539 | text-align: center; | ||
| 1540 | white-space: nowrap; | ||
| 1541 | |||
| 1542 | color: #000; | ||
| 1543 | } | ||
| 1544 | |||
| 1545 | .mui-title a | ||
| 1546 | { | ||
| 1547 | color: inherit; | ||
| 1548 | } | ||
| 1549 | |||
| 1550 | .mui-bar-tab | ||
| 1551 | { | ||
| 1552 | bottom: 0; | ||
| 1553 | |||
| 1554 | display: table; | ||
| 1555 | |||
| 1556 | width: 100%; | ||
| 1557 | height: 50px; | ||
| 1558 | padding: 0; | ||
| 1559 | |||
| 1560 | table-layout: fixed; | ||
| 1561 | |||
| 1562 | border-top: 0; | ||
| 1563 | border-bottom: 0; | ||
| 1564 | |||
| 1565 | -webkit-touch-callout: none; | ||
| 1566 | } | ||
| 1567 | .mui-bar-tab .mui-tab-item | ||
| 1568 | { | ||
| 1569 | display: table-cell; | ||
| 1570 | overflow: hidden; | ||
| 1571 | |||
| 1572 | width: 1%; | ||
| 1573 | height: 50px; | ||
| 1574 | |||
| 1575 | text-align: center; | ||
| 1576 | vertical-align: middle; | ||
| 1577 | white-space: nowrap; | ||
| 1578 | text-overflow: ellipsis; | ||
| 1579 | |||
| 1580 | color: #929292; | ||
| 1581 | } | ||
| 1582 | .mui-bar-tab .mui-tab-item.mui-active | ||
| 1583 | { | ||
| 1584 | color: #007aff; | ||
| 1585 | } | ||
| 1586 | .mui-bar-tab .mui-tab-item .mui-icon | ||
| 1587 | { | ||
| 1588 | top: 3px; | ||
| 1589 | |||
| 1590 | width: 24px; | ||
| 1591 | height: 24px; | ||
| 1592 | padding-top: 0; | ||
| 1593 | padding-bottom: 0; | ||
| 1594 | } | ||
| 1595 | .mui-bar-tab .mui-tab-item .mui-icon ~ .mui-tab-label | ||
| 1596 | { | ||
| 1597 | font-size: 11px; | ||
| 1598 | |||
| 1599 | display: block; | ||
| 1600 | overflow: hidden; | ||
| 1601 | |||
| 1602 | text-overflow: ellipsis; | ||
| 1603 | } | ||
| 1604 | .mui-bar-tab .mui-tab-item .mui-icon:active | ||
| 1605 | { | ||
| 1606 | background: none; | ||
| 1607 | } | ||
| 1608 | |||
| 1609 | .mui-focusin > .mui-bar-nav, .mui-focusin > .mui-bar-header-secondary | ||
| 1610 | { | ||
| 1611 | position: absolute; | ||
| 1612 | } | ||
| 1613 | |||
| 1614 | .mui-focusin > .mui-bar ~ .mui-content | ||
| 1615 | { | ||
| 1616 | padding-bottom: 0; | ||
| 1617 | } | ||
| 1618 | |||
| 1619 | .mui-bar .mui-btn | ||
| 1620 | { | ||
| 1621 | font-weight: 400; | ||
| 1622 | |||
| 1623 | position: relative; | ||
| 1624 | z-index: 20; | ||
| 1625 | top: 7px; | ||
| 1626 | |||
| 1627 | margin-top: 0; | ||
| 1628 | padding: 6px 12px 7px; | ||
| 1629 | } | ||
| 1630 | .mui-bar .mui-btn.mui-pull-right | ||
| 1631 | { | ||
| 1632 | margin-left: 10px; | ||
| 1633 | } | ||
| 1634 | .mui-bar .mui-btn.mui-pull-left | ||
| 1635 | { | ||
| 1636 | margin-right: 10px; | ||
| 1637 | } | ||
| 1638 | |||
| 1639 | .mui-bar .mui-btn-link | ||
| 1640 | { | ||
| 1641 | font-size: 16px; | ||
| 1642 | line-height: 44px; | ||
| 1643 | |||
| 1644 | top: 0; | ||
| 1645 | |||
| 1646 | padding: 0; | ||
| 1647 | |||
| 1648 | color: #007aff; | ||
| 1649 | border: 0; | ||
| 1650 | } | ||
| 1651 | .mui-bar .mui-btn-link:active, .mui-bar .mui-btn-link.mui-active | ||
| 1652 | { | ||
| 1653 | color: #0062cc; | ||
| 1654 | } | ||
| 1655 | |||
| 1656 | .mui-bar .mui-btn-block | ||
| 1657 | { | ||
| 1658 | font-size: 16px; | ||
| 1659 | |||
| 1660 | top: 6px; | ||
| 1661 | |||
| 1662 | margin-bottom: 0; | ||
| 1663 | padding: 5px 0; | ||
| 1664 | } | ||
| 1665 | |||
| 1666 | .mui-bar .mui-btn-nav.mui-pull-left | ||
| 1667 | { | ||
| 1668 | margin-left: -5px; | ||
| 1669 | } | ||
| 1670 | .mui-bar .mui-btn-nav.mui-pull-left .mui-icon-left-nav | ||
| 1671 | { | ||
| 1672 | margin-right: -3px; | ||
| 1673 | } | ||
| 1674 | .mui-bar .mui-btn-nav.mui-pull-right | ||
| 1675 | { | ||
| 1676 | margin-right: -5px; | ||
| 1677 | } | ||
| 1678 | .mui-bar .mui-btn-nav.mui-pull-right .mui-icon-right-nav | ||
| 1679 | { | ||
| 1680 | margin-left: -3px; | ||
| 1681 | } | ||
| 1682 | .mui-bar .mui-btn-nav:active | ||
| 1683 | { | ||
| 1684 | opacity: .3; | ||
| 1685 | } | ||
| 1686 | |||
| 1687 | .mui-bar .mui-icon | ||
| 1688 | { | ||
| 1689 | font-size: 24px; | ||
| 1690 | |||
| 1691 | position: relative; | ||
| 1692 | z-index: 20; | ||
| 1693 | |||
| 1694 | padding-top: 10px; | ||
| 1695 | padding-bottom: 10px; | ||
| 1696 | } | ||
| 1697 | .mui-bar .mui-icon:active | ||
| 1698 | { | ||
| 1699 | opacity: .3; | ||
| 1700 | } | ||
| 1701 | .mui-bar .mui-btn .mui-icon | ||
| 1702 | { | ||
| 1703 | top: 1px; | ||
| 1704 | |||
| 1705 | margin: 0; | ||
| 1706 | padding: 0; | ||
| 1707 | } | ||
| 1708 | .mui-bar .mui-title .mui-icon | ||
| 1709 | { | ||
| 1710 | margin: 0; | ||
| 1711 | padding: 0; | ||
| 1712 | } | ||
| 1713 | .mui-bar .mui-title .mui-icon.mui-icon-caret | ||
| 1714 | { | ||
| 1715 | top: 4px; | ||
| 1716 | |||
| 1717 | margin-left: -5px; | ||
| 1718 | } | ||
| 1719 | |||
| 1720 | .mui-bar input[type='search'] | ||
| 1721 | { | ||
| 1722 | height: 29px; | ||
| 1723 | margin: 6px 0; | ||
| 1724 | } | ||
| 1725 | |||
| 1726 | .mui-bar .mui-input-row .mui-btn | ||
| 1727 | { | ||
| 1728 | padding: 12px 10px; | ||
| 1729 | } | ||
| 1730 | |||
| 1731 | .mui-bar .mui-search:before | ||
| 1732 | { | ||
| 1733 | margin-top: -10px; | ||
| 1734 | } | ||
| 1735 | |||
| 1736 | .mui-bar .mui-input-row .mui-input-clear ~ .mui-icon-clear, .mui-bar .mui-input-row .mui-input-speech ~ .mui-icon-speech | ||
| 1737 | { | ||
| 1738 | top: 0; | ||
| 1739 | right: 12px; | ||
| 1740 | } | ||
| 1741 | |||
| 1742 | .mui-bar.mui-bar-header-secondary .mui-input-row .mui-input-clear ~ .mui-icon-clear, .mui-bar.mui-bar-header-secondary .mui-input-row .mui-input-speech ~ .mui-icon-speech | ||
| 1743 | { | ||
| 1744 | top: 0; | ||
| 1745 | right: 0; | ||
| 1746 | } | ||
| 1747 | |||
| 1748 | .mui-bar .mui-segmented-control | ||
| 1749 | { | ||
| 1750 | top: 7px; | ||
| 1751 | |||
| 1752 | width: auto; | ||
| 1753 | margin: 0 auto; | ||
| 1754 | } | ||
| 1755 | |||
| 1756 | .mui-bar.mui-bar-header-secondary .mui-segmented-control | ||
| 1757 | { | ||
| 1758 | top: 0; | ||
| 1759 | } | ||
| 1760 | |||
| 1761 | .mui-badge | ||
| 1762 | { | ||
| 1763 | font-size: 12px; | ||
| 1764 | line-height: 1; | ||
| 1765 | |||
| 1766 | display: inline-block; | ||
| 1767 | |||
| 1768 | padding: 3px 6px; | ||
| 1769 | |||
| 1770 | color: #333; | ||
| 1771 | border-radius: 100px; | ||
| 1772 | background-color: rgba(0, 0, 0, .15); | ||
| 1773 | } | ||
| 1774 | .mui-badge.mui-badge-inverted | ||
| 1775 | { | ||
| 1776 | padding: 0 5px 0 0; | ||
| 1777 | |||
| 1778 | color: #929292; | ||
| 1779 | background-color: transparent; | ||
| 1780 | } | ||
| 1781 | |||
| 1782 | .mui-badge-primary, .mui-badge-blue | ||
| 1783 | { | ||
| 1784 | color: #fff; | ||
| 1785 | background-color: #007aff; | ||
| 1786 | } | ||
| 1787 | .mui-badge-primary.mui-badge-inverted, .mui-badge-blue.mui-badge-inverted | ||
| 1788 | { | ||
| 1789 | color: #007aff; | ||
| 1790 | background-color: transparent; | ||
| 1791 | } | ||
| 1792 | |||
| 1793 | .mui-badge-success, .mui-badge-green | ||
| 1794 | { | ||
| 1795 | color: #fff; | ||
| 1796 | background-color: #4cd964; | ||
| 1797 | } | ||
| 1798 | .mui-badge-success.mui-badge-inverted, .mui-badge-green.mui-badge-inverted | ||
| 1799 | { | ||
| 1800 | color: #4cd964; | ||
| 1801 | background-color: transparent; | ||
| 1802 | } | ||
| 1803 | |||
| 1804 | .mui-badge-warning, .mui-badge-yellow | ||
| 1805 | { | ||
| 1806 | color: #fff; | ||
| 1807 | background-color: #f0ad4e; | ||
| 1808 | } | ||
| 1809 | .mui-badge-warning.mui-badge-inverted, .mui-badge-yellow.mui-badge-inverted | ||
| 1810 | { | ||
| 1811 | color: #f0ad4e; | ||
| 1812 | background-color: transparent; | ||
| 1813 | } | ||
| 1814 | |||
| 1815 | .mui-badge-danger, .mui-badge-red | ||
| 1816 | { | ||
| 1817 | color: #fff; | ||
| 1818 | background-color: #dd524d; | ||
| 1819 | } | ||
| 1820 | .mui-badge-danger.mui-badge-inverted, .mui-badge-red.mui-badge-inverted | ||
| 1821 | { | ||
| 1822 | color: #dd524d; | ||
| 1823 | background-color: transparent; | ||
| 1824 | } | ||
| 1825 | |||
| 1826 | .mui-badge-royal, .mui-badge-purple | ||
| 1827 | { | ||
| 1828 | color: #fff; | ||
| 1829 | background-color: #8a6de9; | ||
| 1830 | } | ||
| 1831 | .mui-badge-royal.mui-badge-inverted, .mui-badge-purple.mui-badge-inverted | ||
| 1832 | { | ||
| 1833 | color: #8a6de9; | ||
| 1834 | background-color: transparent; | ||
| 1835 | } | ||
| 1836 | |||
| 1837 | .mui-icon .mui-badge | ||
| 1838 | { | ||
| 1839 | font-size: 10px; | ||
| 1840 | line-height: 1.4; | ||
| 1841 | |||
| 1842 | position: absolute; | ||
| 1843 | top: -2px; | ||
| 1844 | left: 100%; | ||
| 1845 | |||
| 1846 | margin-left: -10px; | ||
| 1847 | padding: 1px 5px; | ||
| 1848 | |||
| 1849 | color: white; | ||
| 1850 | background: red; | ||
| 1851 | } | ||
| 1852 | |||
| 1853 | .mui-card | ||
| 1854 | { | ||
| 1855 | overflow: hidden; | ||
| 1856 | |||
| 1857 | margin: 0 15px; | ||
| 1858 | |||
| 1859 | border: 1px solid #ddd; | ||
| 1860 | border-radius: 6px; | ||
| 1861 | background-color: white; | ||
| 1862 | background-clip: padding-box; | ||
| 1863 | } | ||
| 1864 | |||
| 1865 | .mui-content > .mui-card:first-child | ||
| 1866 | { | ||
| 1867 | margin-top: 15px; | ||
| 1868 | } | ||
| 1869 | |||
| 1870 | .mui-card .mui-input-group:before, .mui-card .mui-input-group:after | ||
| 1871 | { | ||
| 1872 | height: 0; | ||
| 1873 | } | ||
| 1874 | .mui-card .mui-input-group .mui-input-row:last-child:before, .mui-card .mui-input-group .mui-input-row:last-child:after | ||
| 1875 | { | ||
| 1876 | height: 0; | ||
| 1877 | } | ||
| 1878 | |||
| 1879 | .mui-card .mui-table-view | ||
| 1880 | { | ||
| 1881 | margin-bottom: 0; | ||
| 1882 | |||
| 1883 | border-top: 0; | ||
| 1884 | border-bottom: 0; | ||
| 1885 | border-radius: 6px; | ||
| 1886 | } | ||
| 1887 | .mui-card .mui-table-view .mui-table-view-divider:first-child, .mui-card .mui-table-view .mui-table-view-cell:first-child | ||
| 1888 | { | ||
| 1889 | top: 0; | ||
| 1890 | |||
| 1891 | border-top-left-radius: 6px; | ||
| 1892 | border-top-right-radius: 6px; | ||
| 1893 | } | ||
| 1894 | .mui-card .mui-table-view .mui-table-view-divider:last-child, .mui-card .mui-table-view .mui-table-view-cell:last-child | ||
| 1895 | { | ||
| 1896 | border-bottom-right-radius: 6px; | ||
| 1897 | border-bottom-left-radius: 6px; | ||
| 1898 | } | ||
| 1899 | .mui-card .mui-table-view:before, .mui-card .mui-table-view:after | ||
| 1900 | { | ||
| 1901 | height: 0; | ||
| 1902 | } | ||
| 1903 | |||
| 1904 | .mui-card > .mui-table-view > .mui-table-view-cell:last-child:before, .mui-card > .mui-table-view > .mui-table-view-cell:last-child:after | ||
| 1905 | { | ||
| 1906 | height: 0; | ||
| 1907 | } | ||
| 1908 | |||
| 1909 | .mui-table-view | ||
| 1910 | { | ||
| 1911 | position: relative; | ||
| 1912 | |||
| 1913 | margin-top: 0; | ||
| 1914 | margin-bottom: 0; | ||
| 1915 | padding-left: 0; | ||
| 1916 | |||
| 1917 | list-style: none; | ||
| 1918 | |||
| 1919 | background-color: #fff; | ||
| 1920 | } | ||
| 1921 | .mui-table-view:after | ||
| 1922 | { | ||
| 1923 | position: absolute; | ||
| 1924 | right: 0; | ||
| 1925 | bottom: 0; | ||
| 1926 | left: 0; | ||
| 1927 | |||
| 1928 | height: 1px; | ||
| 1929 | |||
| 1930 | content: ''; | ||
| 1931 | -webkit-transform: scaleY(.5); | ||
| 1932 | transform: scaleY(.5); | ||
| 1933 | |||
| 1934 | background-color: #c8c7cc; | ||
| 1935 | } | ||
| 1936 | .mui-table-view:before | ||
| 1937 | { | ||
| 1938 | position: absolute; | ||
| 1939 | top: 0; | ||
| 1940 | right: 0; | ||
| 1941 | left: 0; | ||
| 1942 | |||
| 1943 | height: 1px; | ||
| 1944 | |||
| 1945 | content: ''; | ||
| 1946 | -webkit-transform: scaleY(.5); | ||
| 1947 | transform: scaleY(.5); | ||
| 1948 | |||
| 1949 | background-color: #c8c7cc; | ||
| 1950 | } | ||
| 1951 | .mui-table-view:before | ||
| 1952 | { | ||
| 1953 | top: -1px; | ||
| 1954 | } | ||
| 1955 | |||
| 1956 | .mui-table-view-icon .mui-table-view-cell .mui-navigate-right .mui-icon | ||
| 1957 | { | ||
| 1958 | font-size: 20px; | ||
| 1959 | |||
| 1960 | margin-top: -1px; | ||
| 1961 | margin-right: 5px; | ||
| 1962 | margin-left: -5px; | ||
| 1963 | } | ||
| 1964 | .mui-table-view-icon .mui-table-view-cell:after | ||
| 1965 | { | ||
| 1966 | left: 40px; | ||
| 1967 | } | ||
| 1968 | |||
| 1969 | .mui-table-view-chevron .mui-table-view-cell | ||
| 1970 | { | ||
| 1971 | padding-right: 65px; | ||
| 1972 | } | ||
| 1973 | .mui-table-view-chevron .mui-table-view-cell > a:not(.mui-btn) | ||
| 1974 | { | ||
| 1975 | margin-right: -65px; | ||
| 1976 | } | ||
| 1977 | |||
| 1978 | .mui-table-view-radio .mui-table-view-cell | ||
| 1979 | { | ||
| 1980 | padding-right: 65px; | ||
| 1981 | } | ||
| 1982 | .mui-table-view-radio .mui-table-view-cell > a:not(.mui-btn) | ||
| 1983 | { | ||
| 1984 | margin-right: -65px; | ||
| 1985 | } | ||
| 1986 | .mui-table-view-radio .mui-table-view-cell .mui-navigate-right:after | ||
| 1987 | { | ||
| 1988 | font-size: 30px; | ||
| 1989 | font-weight: 600; | ||
| 1990 | |||
| 1991 | right: 9px; | ||
| 1992 | |||
| 1993 | content: ''; | ||
| 1994 | |||
| 1995 | color: #007aff; | ||
| 1996 | } | ||
| 1997 | .mui-table-view-radio .mui-table-view-cell.mui-selected .mui-navigate-right:after | ||
| 1998 | { | ||
| 1999 | content: '\e472'; | ||
| 2000 | } | ||
| 2001 | |||
| 2002 | .mui-table-view-inverted | ||
| 2003 | { | ||
| 2004 | color: #fff; | ||
| 2005 | background: #333; | ||
| 2006 | } | ||
| 2007 | .mui-table-view-inverted:after | ||
| 2008 | { | ||
| 2009 | position: absolute; | ||
| 2010 | right: 0; | ||
| 2011 | bottom: 0; | ||
| 2012 | left: 0; | ||
| 2013 | |||
| 2014 | height: 1px; | ||
| 2015 | |||
| 2016 | content: ''; | ||
| 2017 | -webkit-transform: scaleY(.5); | ||
| 2018 | transform: scaleY(.5); | ||
| 2019 | |||
| 2020 | background-color: #222; | ||
| 2021 | } | ||
| 2022 | .mui-table-view-inverted:before | ||
| 2023 | { | ||
| 2024 | position: absolute; | ||
| 2025 | top: 0; | ||
| 2026 | right: 0; | ||
| 2027 | left: 0; | ||
| 2028 | |||
| 2029 | height: 1px; | ||
| 2030 | |||
| 2031 | content: ''; | ||
| 2032 | -webkit-transform: scaleY(.5); | ||
| 2033 | transform: scaleY(.5); | ||
| 2034 | |||
| 2035 | background-color: #222; | ||
| 2036 | } | ||
| 2037 | .mui-table-view-inverted .mui-table-view-cell:after | ||
| 2038 | { | ||
| 2039 | position: absolute; | ||
| 2040 | right: 0; | ||
| 2041 | bottom: 0; | ||
| 2042 | left: 15px; | ||
| 2043 | |||
| 2044 | height: 1px; | ||
| 2045 | |||
| 2046 | content: ''; | ||
| 2047 | -webkit-transform: scaleY(.5); | ||
| 2048 | transform: scaleY(.5); | ||
| 2049 | |||
| 2050 | background-color: #222; | ||
| 2051 | } | ||
| 2052 | .mui-table-view-inverted .mui-table-view-cell.mui-active | ||
| 2053 | { | ||
| 2054 | background-color: #242424; | ||
| 2055 | } | ||
| 2056 | .mui-table-view-inverted .mui-table-view-cell > a:not(.mui-btn).mui-active | ||
| 2057 | { | ||
| 2058 | background-color: #242424; | ||
| 2059 | } | ||
| 2060 | |||
| 2061 | .mui-table-view-cell | ||
| 2062 | { | ||
| 2063 | position: relative; | ||
| 2064 | |||
| 2065 | overflow: hidden; | ||
| 2066 | |||
| 2067 | padding: 11px 15px; | ||
| 2068 | |||
| 2069 | -webkit-touch-callout: none; | ||
| 2070 | } | ||
| 2071 | .mui-table-view-cell:after | ||
| 2072 | { | ||
| 2073 | position: absolute; | ||
| 2074 | right: 0; | ||
| 2075 | bottom: 0; | ||
| 2076 | left: 15px; | ||
| 2077 | |||
| 2078 | height: 1px; | ||
| 2079 | |||
| 2080 | content: ''; | ||
| 2081 | -webkit-transform: scaleY(.5); | ||
| 2082 | transform: scaleY(.5); | ||
| 2083 | |||
| 2084 | background-color: #c8c7cc; | ||
| 2085 | } | ||
| 2086 | .mui-table-view-cell.mui-radio input[type=radio], .mui-table-view-cell.mui-checkbox input[type=checkbox] | ||
| 2087 | { | ||
| 2088 | top: 8px; | ||
| 2089 | } | ||
| 2090 | .mui-table-view-cell.mui-radio.mui-left, .mui-table-view-cell.mui-checkbox.mui-left | ||
| 2091 | { | ||
| 2092 | padding-left: 58px; | ||
| 2093 | } | ||
| 2094 | .mui-table-view-cell.mui-active | ||
| 2095 | { | ||
| 2096 | background-color: #eee; | ||
| 2097 | } | ||
| 2098 | .mui-table-view-cell:last-child:before, .mui-table-view-cell:last-child:after | ||
| 2099 | { | ||
| 2100 | height: 0; | ||
| 2101 | } | ||
| 2102 | .mui-table-view-cell > a:not(.mui-btn) | ||
| 2103 | { | ||
| 2104 | position: relative; | ||
| 2105 | |||
| 2106 | display: block; | ||
| 2107 | overflow: hidden; | ||
| 2108 | |||
| 2109 | margin: -11px -15px; | ||
| 2110 | padding: inherit; | ||
| 2111 | |||
| 2112 | white-space: nowrap; | ||
| 2113 | text-overflow: ellipsis; | ||
| 2114 | |||
| 2115 | color: inherit; | ||
| 2116 | /*&:active { | ||
| 2117 | background-color: #eee; | ||
| 2118 | }*/ | ||
| 2119 | } | ||
| 2120 | .mui-table-view-cell > a:not(.mui-btn).mui-active | ||
| 2121 | { | ||
| 2122 | background-color: #eee; | ||
| 2123 | } | ||
| 2124 | .mui-table-view-cell p | ||
| 2125 | { | ||
| 2126 | margin-bottom: 0; | ||
| 2127 | } | ||
| 2128 | |||
| 2129 | .mui-table-view-cell.mui-transitioning > .mui-slider-handle, .mui-table-view-cell.mui-transitioning > .mui-slider-left .mui-btn, .mui-table-view-cell.mui-transitioning > .mui-slider-right .mui-btn | ||
| 2130 | { | ||
| 2131 | -webkit-transition: -webkit-transform 300ms ease; | ||
| 2132 | transition: transform 300ms ease; | ||
| 2133 | } | ||
| 2134 | .mui-table-view-cell.mui-active > .mui-slider-handle | ||
| 2135 | { | ||
| 2136 | background-color: #eee; | ||
| 2137 | } | ||
| 2138 | .mui-table-view-cell > .mui-slider-handle | ||
| 2139 | { | ||
| 2140 | position: relative; | ||
| 2141 | |||
| 2142 | background-color: #fff; | ||
| 2143 | } | ||
| 2144 | .mui-table-view-cell > .mui-slider-handle.mui-navigate-right:after, .mui-table-view-cell > .mui-slider-handle .mui-navigate-right:after | ||
| 2145 | { | ||
| 2146 | right: 0; | ||
| 2147 | } | ||
| 2148 | .mui-table-view-cell > .mui-slider-handle, .mui-table-view-cell > .mui-slider-left .mui-btn, .mui-table-view-cell > .mui-slider-right .mui-btn | ||
| 2149 | { | ||
| 2150 | -webkit-transition: -webkit-transform 0ms ease; | ||
| 2151 | transition: transform 0ms ease; | ||
| 2152 | } | ||
| 2153 | .mui-table-view-cell > .mui-slider-left, .mui-table-view-cell > .mui-slider-right | ||
| 2154 | { | ||
| 2155 | position: absolute; | ||
| 2156 | top: 0; | ||
| 2157 | |||
| 2158 | display: -webkit-box; | ||
| 2159 | display: -webkit-flex; | ||
| 2160 | display: flex; | ||
| 2161 | |||
| 2162 | height: 100%; | ||
| 2163 | } | ||
| 2164 | .mui-table-view-cell > .mui-slider-left > .mui-btn, .mui-table-view-cell > .mui-slider-right > .mui-btn | ||
| 2165 | { | ||
| 2166 | position: relative; | ||
| 2167 | left: 0; | ||
| 2168 | |||
| 2169 | display: -webkit-box; | ||
| 2170 | display: -webkit-flex; | ||
| 2171 | display: flex; | ||
| 2172 | |||
| 2173 | padding: 0 30px; | ||
| 2174 | |||
| 2175 | color: #fff; | ||
| 2176 | border: 0; | ||
| 2177 | border-radius: 0; | ||
| 2178 | |||
| 2179 | -webkit-box-align: center; | ||
| 2180 | -webkit-align-items: center; | ||
| 2181 | align-items: center; | ||
| 2182 | } | ||
| 2183 | .mui-table-view-cell > .mui-slider-left > .mui-btn:after, .mui-table-view-cell > .mui-slider-right > .mui-btn:after | ||
| 2184 | { | ||
| 2185 | position: absolute; | ||
| 2186 | z-index: -1; | ||
| 2187 | top: 0; | ||
| 2188 | |||
| 2189 | width: 600%; | ||
| 2190 | height: 100%; | ||
| 2191 | |||
| 2192 | content: ''; | ||
| 2193 | |||
| 2194 | background: inherit; | ||
| 2195 | } | ||
| 2196 | .mui-table-view-cell > .mui-slider-left > .mui-btn.mui-icon, .mui-table-view-cell > .mui-slider-right > .mui-btn.mui-icon | ||
| 2197 | { | ||
| 2198 | font-size: 30px; | ||
| 2199 | } | ||
| 2200 | .mui-table-view-cell > .mui-slider-right | ||
| 2201 | { | ||
| 2202 | right: 0; | ||
| 2203 | |||
| 2204 | -webkit-transition: -webkit-transform 0ms ease; | ||
| 2205 | transition: transform 0ms ease; | ||
| 2206 | -webkit-transform: translateX(100%); | ||
| 2207 | transform: translateX(100%); | ||
| 2208 | } | ||
| 2209 | .mui-table-view-cell > .mui-slider-left | ||
| 2210 | { | ||
| 2211 | left: 0; | ||
| 2212 | |||
| 2213 | -webkit-transition: -webkit-transform 0ms ease; | ||
| 2214 | transition: transform 0ms ease; | ||
| 2215 | -webkit-transform: translateX(-100%); | ||
| 2216 | transform: translateX(-100%); | ||
| 2217 | } | ||
| 2218 | .mui-table-view-cell > .mui-slider-left > .mui-btn:after | ||
| 2219 | { | ||
| 2220 | right: 100%; | ||
| 2221 | |||
| 2222 | margin-right: -1px; | ||
| 2223 | } | ||
| 2224 | |||
| 2225 | .mui-table-view-divider | ||
| 2226 | { | ||
| 2227 | font-weight: 500; | ||
| 2228 | |||
| 2229 | position: relative; | ||
| 2230 | |||
| 2231 | margin-top: -1px; | ||
| 2232 | margin-left: 0; | ||
| 2233 | padding-top: 6px; | ||
| 2234 | padding-bottom: 6px; | ||
| 2235 | padding-left: 15px; | ||
| 2236 | |||
| 2237 | color: #999; | ||
| 2238 | background-color: #fafafa; | ||
| 2239 | } | ||
| 2240 | .mui-table-view-divider:after | ||
| 2241 | { | ||
| 2242 | position: absolute; | ||
| 2243 | right: 0; | ||
| 2244 | bottom: 0; | ||
| 2245 | left: 0; | ||
| 2246 | |||
| 2247 | height: 1px; | ||
| 2248 | |||
| 2249 | content: ''; | ||
| 2250 | -webkit-transform: scaleY(.5); | ||
| 2251 | transform: scaleY(.5); | ||
| 2252 | |||
| 2253 | background-color: #c8c7cc; | ||
| 2254 | } | ||
| 2255 | .mui-table-view-divider:before | ||
| 2256 | { | ||
| 2257 | position: absolute; | ||
| 2258 | top: 0; | ||
| 2259 | right: 0; | ||
| 2260 | left: 0; | ||
| 2261 | |||
| 2262 | height: 1px; | ||
| 2263 | |||
| 2264 | content: ''; | ||
| 2265 | -webkit-transform: scaleY(.5); | ||
| 2266 | transform: scaleY(.5); | ||
| 2267 | |||
| 2268 | background-color: #c8c7cc; | ||
| 2269 | } | ||
| 2270 | |||
| 2271 | .mui-table-view .mui-media, | ||
| 2272 | .mui-table-view .mui-media-body | ||
| 2273 | { | ||
| 2274 | overflow: hidden; | ||
| 2275 | } | ||
| 2276 | |||
| 2277 | .mui-table-view .mui-media-large .mui-media-object | ||
| 2278 | { | ||
| 2279 | line-height: 80px; | ||
| 2280 | |||
| 2281 | max-width: 80px; | ||
| 2282 | height: 80px; | ||
| 2283 | } | ||
| 2284 | .mui-table-view .mui-media .mui-subtitle | ||
| 2285 | { | ||
| 2286 | color: #000; | ||
| 2287 | } | ||
| 2288 | .mui-table-view .mui-media-object | ||
| 2289 | { | ||
| 2290 | line-height: 42px; | ||
| 2291 | |||
| 2292 | max-width: 42px; | ||
| 2293 | height: 42px; | ||
| 2294 | } | ||
| 2295 | .mui-table-view .mui-media-object.mui-pull-left | ||
| 2296 | { | ||
| 2297 | margin-right: 10px; | ||
| 2298 | } | ||
| 2299 | .mui-table-view .mui-media-object.mui-pull-right | ||
| 2300 | { | ||
| 2301 | margin-left: 10px; | ||
| 2302 | } | ||
| 2303 | .mui-table-view .mui-table-view-cell.mui-media-icon .mui-media-object | ||
| 2304 | { | ||
| 2305 | line-height: 29px; | ||
| 2306 | |||
| 2307 | max-width: 29px; | ||
| 2308 | height: 29px; | ||
| 2309 | margin: -4px 0; | ||
| 2310 | } | ||
| 2311 | .mui-table-view .mui-table-view-cell.mui-media-icon .mui-media-object img | ||
| 2312 | { | ||
| 2313 | line-height: 29px; | ||
| 2314 | |||
| 2315 | max-width: 29px; | ||
| 2316 | height: 29px; | ||
| 2317 | } | ||
| 2318 | .mui-table-view .mui-table-view-cell.mui-media-icon .mui-media-object.mui-pull-left | ||
| 2319 | { | ||
| 2320 | margin-right: 10px; | ||
| 2321 | } | ||
| 2322 | .mui-table-view .mui-table-view-cell.mui-media-icon .mui-media-object .mui-icon | ||
| 2323 | { | ||
| 2324 | font-size: 29px; | ||
| 2325 | } | ||
| 2326 | .mui-table-view .mui-table-view-cell.mui-media-icon .mui-media-body:after | ||
| 2327 | { | ||
| 2328 | position: absolute; | ||
| 2329 | right: 0; | ||
| 2330 | bottom: 0; | ||
| 2331 | left: 55px; | ||
| 2332 | |||
| 2333 | height: 1px; | ||
| 2334 | |||
| 2335 | content: ''; | ||
| 2336 | -webkit-transform: scaleY(.5); | ||
| 2337 | transform: scaleY(.5); | ||
| 2338 | |||
| 2339 | background-color: #c8c7cc; | ||
| 2340 | } | ||
| 2341 | .mui-table-view .mui-table-view-cell.mui-media-icon:after | ||
| 2342 | { | ||
| 2343 | height: 0 !important; | ||
| 2344 | } | ||
| 2345 | |||
| 2346 | .mui-table-view.mui-unfold .mui-table-view-cell.mui-collapse .mui-table-view | ||
| 2347 | { | ||
| 2348 | display: block; | ||
| 2349 | } | ||
| 2350 | .mui-table-view.mui-unfold .mui-table-view-cell.mui-collapse .mui-table-view:before, .mui-table-view.mui-unfold .mui-table-view-cell.mui-collapse .mui-table-view:after | ||
| 2351 | { | ||
| 2352 | height: 0 !important; | ||
| 2353 | } | ||
| 2354 | .mui-table-view.mui-unfold .mui-table-view-cell.mui-media-icon.mui-collapse .mui-media-body:after | ||
| 2355 | { | ||
| 2356 | position: absolute; | ||
| 2357 | right: 0; | ||
| 2358 | bottom: 0; | ||
| 2359 | left: 70px; | ||
| 2360 | |||
| 2361 | height: 1px; | ||
| 2362 | |||
| 2363 | content: ''; | ||
| 2364 | -webkit-transform: scaleY(.5); | ||
| 2365 | transform: scaleY(.5); | ||
| 2366 | |||
| 2367 | background-color: #c8c7cc; | ||
| 2368 | } | ||
| 2369 | |||
| 2370 | .mui-table-view-cell > .mui-btn, | ||
| 2371 | .mui-table-view-cell > .mui-badge, | ||
| 2372 | .mui-table-view-cell > .mui-switch, | ||
| 2373 | .mui-table-view-cell > a > .mui-btn, | ||
| 2374 | .mui-table-view-cell > a > .mui-badge, | ||
| 2375 | .mui-table-view-cell > a > .mui-switch | ||
| 2376 | { | ||
| 2377 | position: absolute; | ||
| 2378 | top: 50%; | ||
| 2379 | right: 15px; | ||
| 2380 | |||
| 2381 | -webkit-transform: translateY(-50%); | ||
| 2382 | transform: translateY(-50%); | ||
| 2383 | } | ||
| 2384 | .mui-table-view-cell .mui-navigate-right > .mui-btn, | ||
| 2385 | .mui-table-view-cell .mui-navigate-right > .mui-badge, | ||
| 2386 | .mui-table-view-cell .mui-navigate-right > .mui-switch, | ||
| 2387 | .mui-table-view-cell .mui-push-left > .mui-btn, | ||
| 2388 | .mui-table-view-cell .mui-push-left > .mui-badge, | ||
| 2389 | .mui-table-view-cell .mui-push-left > .mui-switch, | ||
| 2390 | .mui-table-view-cell .mui-push-right > .mui-btn, | ||
| 2391 | .mui-table-view-cell .mui-push-right > .mui-badge, | ||
| 2392 | .mui-table-view-cell .mui-push-right > .mui-switch, | ||
| 2393 | .mui-table-view-cell > a .mui-navigate-right > .mui-btn, | ||
| 2394 | .mui-table-view-cell > a .mui-navigate-right > .mui-badge, | ||
| 2395 | .mui-table-view-cell > a .mui-navigate-right > .mui-switch, | ||
| 2396 | .mui-table-view-cell > a .mui-push-left > .mui-btn, | ||
| 2397 | .mui-table-view-cell > a .mui-push-left > .mui-badge, | ||
| 2398 | .mui-table-view-cell > a .mui-push-left > .mui-switch, | ||
| 2399 | .mui-table-view-cell > a .mui-push-right > .mui-btn, | ||
| 2400 | .mui-table-view-cell > a .mui-push-right > .mui-badge, | ||
| 2401 | .mui-table-view-cell > a .mui-push-right > .mui-switch | ||
| 2402 | { | ||
| 2403 | right: 35px; | ||
| 2404 | } | ||
| 2405 | |||
| 2406 | .mui-content > .mui-table-view:first-child | ||
| 2407 | { | ||
| 2408 | margin-top: 15px; | ||
| 2409 | } | ||
| 2410 | |||
| 2411 | .mui-table-view-cell.mui-collapse .mui-table-view:before, .mui-table-view-cell.mui-collapse .mui-table-view:after | ||
| 2412 | { | ||
| 2413 | height: 0; | ||
| 2414 | } | ||
| 2415 | .mui-table-view-cell.mui-collapse .mui-table-view .mui-table-view-cell:last-child:after | ||
| 2416 | { | ||
| 2417 | height: 0; | ||
| 2418 | } | ||
| 2419 | .mui-table-view-cell.mui-collapse > .mui-navigate-right:after, .mui-table-view-cell.mui-collapse > .mui-push-right:after | ||
| 2420 | { | ||
| 2421 | content: '\e581'; | ||
| 2422 | } | ||
| 2423 | .mui-table-view-cell.mui-collapse.mui-active | ||
| 2424 | { | ||
| 2425 | margin-top: -1px; | ||
| 2426 | } | ||
| 2427 | .mui-table-view-cell.mui-collapse.mui-active .mui-table-view, .mui-table-view-cell.mui-collapse.mui-active .mui-collapse-content | ||
| 2428 | { | ||
| 2429 | display: block; | ||
| 2430 | } | ||
| 2431 | .mui-table-view-cell.mui-collapse.mui-active > .mui-navigate-right:after, .mui-table-view-cell.mui-collapse.mui-active > .mui-push-right:after | ||
| 2432 | { | ||
| 2433 | content: '\e580'; | ||
| 2434 | } | ||
| 2435 | .mui-table-view-cell.mui-collapse.mui-active .mui-table-view-cell > a:not(.mui-btn).mui-active | ||
| 2436 | { | ||
| 2437 | margin-left: -31px; | ||
| 2438 | padding-left: 47px; | ||
| 2439 | } | ||
| 2440 | .mui-table-view-cell.mui-collapse .mui-collapse-content | ||
| 2441 | { | ||
| 2442 | position: relative; | ||
| 2443 | |||
| 2444 | display: none; | ||
| 2445 | overflow: hidden; | ||
| 2446 | |||
| 2447 | margin: 11px -15px -11px; | ||
| 2448 | padding: 8px 15px; | ||
| 2449 | |||
| 2450 | -webkit-transition: height .35s ease; | ||
| 2451 | -o-transition: height .35s ease; | ||
| 2452 | transition: height .35s ease; | ||
| 2453 | |||
| 2454 | background: white; | ||
| 2455 | } | ||
| 2456 | .mui-table-view-cell.mui-collapse .mui-collapse-content > .mui-input-group, .mui-table-view-cell.mui-collapse .mui-collapse-content > .mui-slider | ||
| 2457 | { | ||
| 2458 | width: auto; | ||
| 2459 | height: auto; | ||
| 2460 | margin: -8px -15px; | ||
| 2461 | } | ||
| 2462 | .mui-table-view-cell.mui-collapse .mui-collapse-content > .mui-slider | ||
| 2463 | { | ||
| 2464 | margin: -8px -16px; | ||
| 2465 | } | ||
| 2466 | .mui-table-view-cell.mui-collapse .mui-table-view | ||
| 2467 | { | ||
| 2468 | display: none; | ||
| 2469 | |||
| 2470 | margin-top: 11px; | ||
| 2471 | margin-right: -15px; | ||
| 2472 | margin-bottom: -11px; | ||
| 2473 | margin-left: -15px; | ||
| 2474 | |||
| 2475 | border: 0; | ||
| 2476 | } | ||
| 2477 | .mui-table-view-cell.mui-collapse .mui-table-view.mui-table-view-chevron | ||
| 2478 | { | ||
| 2479 | margin-right: -65px; | ||
| 2480 | } | ||
| 2481 | .mui-table-view-cell.mui-collapse .mui-table-view .mui-table-view-cell | ||
| 2482 | { | ||
| 2483 | padding-left: 31px; | ||
| 2484 | |||
| 2485 | background-position: 31px 100%; | ||
| 2486 | } | ||
| 2487 | .mui-table-view-cell.mui-collapse .mui-table-view .mui-table-view-cell:after | ||
| 2488 | { | ||
| 2489 | position: absolute; | ||
| 2490 | right: 0; | ||
| 2491 | bottom: 0; | ||
| 2492 | left: 30px; | ||
| 2493 | |||
| 2494 | height: 1px; | ||
| 2495 | |||
| 2496 | content: ''; | ||
| 2497 | -webkit-transform: scaleY(.5); | ||
| 2498 | transform: scaleY(.5); | ||
| 2499 | |||
| 2500 | background-color: #c8c7cc; | ||
| 2501 | } | ||
| 2502 | |||
| 2503 | .mui-table-view.mui-grid-view | ||
| 2504 | { | ||
| 2505 | font-size: 0; | ||
| 2506 | |||
| 2507 | display: block; | ||
| 2508 | |||
| 2509 | width: 100%; | ||
| 2510 | padding: 0 10px 10px 0; | ||
| 2511 | |||
| 2512 | white-space: normal; | ||
| 2513 | } | ||
| 2514 | .mui-table-view.mui-grid-view .mui-table-view-cell | ||
| 2515 | { | ||
| 2516 | font-size: 17px; | ||
| 2517 | |||
| 2518 | display: inline-block; | ||
| 2519 | |||
| 2520 | margin-right: -4px; | ||
| 2521 | padding: 10px 0 0 14px; | ||
| 2522 | |||
| 2523 | text-align: center; | ||
| 2524 | vertical-align: middle; | ||
| 2525 | |||
| 2526 | background: none; | ||
| 2527 | } | ||
| 2528 | .mui-table-view.mui-grid-view .mui-table-view-cell .mui-media-object | ||
| 2529 | { | ||
| 2530 | width: 100%; | ||
| 2531 | max-width: 100%; | ||
| 2532 | height: auto; | ||
| 2533 | } | ||
| 2534 | .mui-table-view.mui-grid-view .mui-table-view-cell > a:not(.mui-btn) | ||
| 2535 | { | ||
| 2536 | margin: -10px 0 0 -14px; | ||
| 2537 | } | ||
| 2538 | .mui-table-view.mui-grid-view .mui-table-view-cell > a:not(.mui-btn):active, .mui-table-view.mui-grid-view .mui-table-view-cell > a:not(.mui-btn).mui-active | ||
| 2539 | { | ||
| 2540 | background: none; | ||
| 2541 | } | ||
| 2542 | .mui-table-view.mui-grid-view .mui-table-view-cell .mui-media-body | ||
| 2543 | { | ||
| 2544 | font-size: 15px; | ||
| 2545 | line-height: 15px; | ||
| 2546 | |||
| 2547 | display: block; | ||
| 2548 | |||
| 2549 | width: 100%; | ||
| 2550 | height: 15px; | ||
| 2551 | margin-top: 8px; | ||
| 2552 | |||
| 2553 | text-overflow: ellipsis; | ||
| 2554 | |||
| 2555 | color: #333; | ||
| 2556 | } | ||
| 2557 | .mui-table-view.mui-grid-view .mui-table-view-cell:before, .mui-table-view.mui-grid-view .mui-table-view-cell:after | ||
| 2558 | { | ||
| 2559 | height: 0; | ||
| 2560 | } | ||
| 2561 | |||
| 2562 | .mui-grid-view.mui-grid-9 | ||
| 2563 | { | ||
| 2564 | margin: 0; | ||
| 2565 | padding: 0; | ||
| 2566 | |||
| 2567 | border-top: 1px solid #eee; | ||
| 2568 | border-left: 1px solid #eee; | ||
| 2569 | background-color: #f2f2f2; | ||
| 2570 | } | ||
| 2571 | .mui-grid-view.mui-grid-9:before, .mui-grid-view.mui-grid-9:after | ||
| 2572 | { | ||
| 2573 | display: table; | ||
| 2574 | |||
| 2575 | content: ' '; | ||
| 2576 | } | ||
| 2577 | .mui-grid-view.mui-grid-9:after | ||
| 2578 | { | ||
| 2579 | clear: both; | ||
| 2580 | } | ||
| 2581 | .mui-grid-view.mui-grid-9:after | ||
| 2582 | { | ||
| 2583 | position: static; | ||
| 2584 | } | ||
| 2585 | .mui-grid-view.mui-grid-9 .mui-table-view-cell | ||
| 2586 | { | ||
| 2587 | margin: 0; | ||
| 2588 | padding: 11px 15px; | ||
| 2589 | |||
| 2590 | vertical-align: top; | ||
| 2591 | |||
| 2592 | border-right: 1px solid #eee; | ||
| 2593 | border-bottom: 1px solid #eee; | ||
| 2594 | } | ||
| 2595 | .mui-grid-view.mui-grid-9 .mui-table-view-cell.mui-active | ||
| 2596 | { | ||
| 2597 | background-color: #eee; | ||
| 2598 | } | ||
| 2599 | .mui-grid-view.mui-grid-9 .mui-table-view-cell > a:not(.mui-btn) | ||
| 2600 | { | ||
| 2601 | margin: 0; | ||
| 2602 | padding: 10px 0; | ||
| 2603 | } | ||
| 2604 | .mui-grid-view.mui-grid-9:before | ||
| 2605 | { | ||
| 2606 | height: 0; | ||
| 2607 | } | ||
| 2608 | .mui-grid-view.mui-grid-9 .mui-media | ||
| 2609 | { | ||
| 2610 | color: #797979; | ||
| 2611 | } | ||
| 2612 | .mui-grid-view.mui-grid-9 .mui-media .mui-icon | ||
| 2613 | { | ||
| 2614 | font-size: 2.4em; | ||
| 2615 | |||
| 2616 | position: relative; | ||
| 2617 | } | ||
| 2618 | |||
| 2619 | .mui-slider-cell | ||
| 2620 | { | ||
| 2621 | position: relative; | ||
| 2622 | } | ||
| 2623 | .mui-slider-cell > .mui-slider-handle | ||
| 2624 | { | ||
| 2625 | z-index: 1; | ||
| 2626 | } | ||
| 2627 | .mui-slider-cell > .mui-slider-left, .mui-slider-cell > .mui-slider-right | ||
| 2628 | { | ||
| 2629 | position: absolute; | ||
| 2630 | z-index: 0; | ||
| 2631 | top: 0; | ||
| 2632 | bottom: 0; | ||
| 2633 | } | ||
| 2634 | .mui-slider-cell > .mui-slider-left | ||
| 2635 | { | ||
| 2636 | left: 0; | ||
| 2637 | } | ||
| 2638 | .mui-slider-cell > .mui-slider-right | ||
| 2639 | { | ||
| 2640 | right: 0; | ||
| 2641 | } | ||
| 2642 | |||
| 2643 | input, | ||
| 2644 | textarea, | ||
| 2645 | select | ||
| 2646 | { | ||
| 2647 | font-family: 'Helvetica Neue', Helvetica, sans-serif; | ||
| 2648 | font-size: 17px; | ||
| 2649 | |||
| 2650 | -webkit-tap-highlight-color: transparent; | ||
| 2651 | -webkit-tap-highlight-color: transparent; | ||
| 2652 | } | ||
| 2653 | input:focus, | ||
| 2654 | textarea:focus, | ||
| 2655 | select:focus | ||
| 2656 | { | ||
| 2657 | -webkit-tap-highlight-color: transparent; | ||
| 2658 | -webkit-tap-highlight-color: transparent; | ||
| 2659 | -webkit-user-modify: read-write-plaintext-only; | ||
| 2660 | } | ||
| 2661 | |||
| 2662 | select, | ||
| 2663 | textarea, | ||
| 2664 | input[type='text'], | ||
| 2665 | input[type='search'], | ||
| 2666 | input[type='password'], | ||
| 2667 | input[type='datetime'], | ||
| 2668 | input[type='datetime-local'], | ||
| 2669 | input[type='date'], | ||
| 2670 | input[type='month'], | ||
| 2671 | input[type='time'], | ||
| 2672 | input[type='week'], | ||
| 2673 | input[type='number'], | ||
| 2674 | input[type='email'], | ||
| 2675 | input[type='url'], | ||
| 2676 | input[type='tel'], | ||
| 2677 | input[type='color'] | ||
| 2678 | { | ||
| 2679 | line-height: 21px; | ||
| 2680 | |||
| 2681 | width: 100%; | ||
| 2682 | height: 40px; | ||
| 2683 | margin-bottom: 15px; | ||
| 2684 | padding: 10px 15px; | ||
| 2685 | |||
| 2686 | -webkit-user-select: text; | ||
| 2687 | |||
| 2688 | border: 1px solid rgba(0, 0, 0, .2); | ||
| 2689 | border-radius: 3px; | ||
| 2690 | outline: none; | ||
| 2691 | background-color: #fff; | ||
| 2692 | |||
| 2693 | -webkit-appearance: none; | ||
| 2694 | } | ||
| 2695 | |||
| 2696 | input[type=number]::-webkit-inner-spin-button, | ||
| 2697 | input[type=number]::-webkit-outer-spin-button | ||
| 2698 | { | ||
| 2699 | margin: 0; | ||
| 2700 | |||
| 2701 | -webkit-appearance: none; | ||
| 2702 | } | ||
| 2703 | |||
| 2704 | input[type='search'] | ||
| 2705 | { | ||
| 2706 | font-size: 16px; | ||
| 2707 | |||
| 2708 | -webkit-box-sizing: border-box; | ||
| 2709 | box-sizing: border-box; | ||
| 2710 | height: 34px; | ||
| 2711 | |||
| 2712 | text-align: center; | ||
| 2713 | |||
| 2714 | border: 0; | ||
| 2715 | border-radius: 6px; | ||
| 2716 | background-color: rgba(0, 0, 0, .1); | ||
| 2717 | } | ||
| 2718 | |||
| 2719 | input[type='search']:focus | ||
| 2720 | { | ||
| 2721 | text-align: left; | ||
| 2722 | } | ||
| 2723 | |||
| 2724 | textarea | ||
| 2725 | { | ||
| 2726 | height: auto; | ||
| 2727 | |||
| 2728 | resize: none; | ||
| 2729 | } | ||
| 2730 | |||
| 2731 | select | ||
| 2732 | { | ||
| 2733 | font-size: 14px; | ||
| 2734 | |||
| 2735 | height: auto; | ||
| 2736 | margin-top: 1px; | ||
| 2737 | |||
| 2738 | border: 0 !important; | ||
| 2739 | background-color: #fff; | ||
| 2740 | } | ||
| 2741 | select:focus | ||
| 2742 | { | ||
| 2743 | -webkit-user-modify: read-only; | ||
| 2744 | } | ||
| 2745 | |||
| 2746 | .mui-input-group | ||
| 2747 | { | ||
| 2748 | position: relative; | ||
| 2749 | |||
| 2750 | padding: 0; | ||
| 2751 | |||
| 2752 | border: 0; | ||
| 2753 | background-color: #fff; | ||
| 2754 | } | ||
| 2755 | .mui-input-group:after | ||
| 2756 | { | ||
| 2757 | position: absolute; | ||
| 2758 | right: 0; | ||
| 2759 | bottom: 0; | ||
| 2760 | left: 0; | ||
| 2761 | |||
| 2762 | height: 1px; | ||
| 2763 | |||
| 2764 | content: ''; | ||
| 2765 | -webkit-transform: scaleY(.5); | ||
| 2766 | transform: scaleY(.5); | ||
| 2767 | |||
| 2768 | background-color: #c8c7cc; | ||
| 2769 | } | ||
| 2770 | .mui-input-group:before | ||
| 2771 | { | ||
| 2772 | position: absolute; | ||
| 2773 | top: 0; | ||
| 2774 | right: 0; | ||
| 2775 | left: 0; | ||
| 2776 | |||
| 2777 | height: 1px; | ||
| 2778 | |||
| 2779 | content: ''; | ||
| 2780 | -webkit-transform: scaleY(.5); | ||
| 2781 | transform: scaleY(.5); | ||
| 2782 | |||
| 2783 | background-color: #c8c7cc; | ||
| 2784 | } | ||
| 2785 | |||
| 2786 | .mui-input-group input, | ||
| 2787 | .mui-input-group textarea | ||
| 2788 | { | ||
| 2789 | margin-bottom: 0; | ||
| 2790 | |||
| 2791 | border: 0; | ||
| 2792 | border-radius: 0; | ||
| 2793 | background-color: transparent; | ||
| 2794 | -webkit-box-shadow: none; | ||
| 2795 | box-shadow: none; | ||
| 2796 | } | ||
| 2797 | |||
| 2798 | .mui-input-group input[type='search'] | ||
| 2799 | { | ||
| 2800 | background: none; | ||
| 2801 | } | ||
| 2802 | |||
| 2803 | .mui-input-group input:last-child | ||
| 2804 | { | ||
| 2805 | background-image: none; | ||
| 2806 | } | ||
| 2807 | |||
| 2808 | .mui-input-row | ||
| 2809 | { | ||
| 2810 | clear: left; | ||
| 2811 | overflow: hidden; | ||
| 2812 | } | ||
| 2813 | .mui-input-row select | ||
| 2814 | { | ||
| 2815 | font-size: 17px; | ||
| 2816 | |||
| 2817 | height: 37px; | ||
| 2818 | padding: 0; | ||
| 2819 | } | ||
| 2820 | |||
| 2821 | .mui-input-row:last-child, | ||
| 2822 | .mui-input-row label + input, .mui-input-row .mui-btn + input | ||
| 2823 | { | ||
| 2824 | background: none; | ||
| 2825 | } | ||
| 2826 | |||
| 2827 | .mui-input-group .mui-input-row | ||
| 2828 | { | ||
| 2829 | height: 40px; | ||
| 2830 | } | ||
| 2831 | .mui-input-group .mui-input-row:after | ||
| 2832 | { | ||
| 2833 | position: absolute; | ||
| 2834 | right: 0; | ||
| 2835 | bottom: 0; | ||
| 2836 | left: 15px; | ||
| 2837 | |||
| 2838 | height: 1px; | ||
| 2839 | |||
| 2840 | content: ''; | ||
| 2841 | -webkit-transform: scaleY(.5); | ||
| 2842 | transform: scaleY(.5); | ||
| 2843 | |||
| 2844 | background-color: #c8c7cc; | ||
| 2845 | } | ||
| 2846 | |||
| 2847 | .mui-input-row label | ||
| 2848 | { | ||
| 2849 | font-family: 'Helvetica Neue', Helvetica, sans-serif; | ||
| 2850 | line-height: 1.1; | ||
| 2851 | |||
| 2852 | float: left; | ||
| 2853 | |||
| 2854 | width: 35%; | ||
| 2855 | padding: 11px 15px; | ||
| 2856 | } | ||
| 2857 | |||
| 2858 | .mui-input-row label ~ input, .mui-input-row label ~ select, .mui-input-row label ~ textarea | ||
| 2859 | { | ||
| 2860 | float: right; | ||
| 2861 | |||
| 2862 | width: 65%; | ||
| 2863 | margin-bottom: 0; | ||
| 2864 | padding-left: 0; | ||
| 2865 | |||
| 2866 | border: 0; | ||
| 2867 | } | ||
| 2868 | |||
| 2869 | .mui-input-row .mui-btn | ||
| 2870 | { | ||
| 2871 | font-family: 'Helvetica Neue', Helvetica, sans-serif; | ||
| 2872 | line-height: 1.1; | ||
| 2873 | |||
| 2874 | float: right; | ||
| 2875 | |||
| 2876 | width: 15%; | ||
| 2877 | padding: 10px 15px; | ||
| 2878 | } | ||
| 2879 | |||
| 2880 | .mui-input-row .mui-btn ~ input, .mui-input-row .mui-btn ~ select, .mui-input-row .mui-btn ~ textarea | ||
| 2881 | { | ||
| 2882 | float: left; | ||
| 2883 | |||
| 2884 | width: 85%; | ||
| 2885 | margin-bottom: 0; | ||
| 2886 | padding-left: 0; | ||
| 2887 | |||
| 2888 | border: 0; | ||
| 2889 | } | ||
| 2890 | |||
| 2891 | .mui-button-row | ||
| 2892 | { | ||
| 2893 | position: relative; | ||
| 2894 | |||
| 2895 | padding-top: 5px; | ||
| 2896 | |||
| 2897 | text-align: center; | ||
| 2898 | } | ||
| 2899 | |||
| 2900 | .mui-input-group .mui-button-row | ||
| 2901 | { | ||
| 2902 | height: 45px; | ||
| 2903 | } | ||
| 2904 | |||
| 2905 | .mui-input-row | ||
| 2906 | { | ||
| 2907 | position: relative; | ||
| 2908 | } | ||
| 2909 | .mui-input-row.mui-input-range | ||
| 2910 | { | ||
| 2911 | overflow: visible; | ||
| 2912 | |||
| 2913 | padding-right: 20px; | ||
| 2914 | } | ||
| 2915 | .mui-input-row .mui-inline | ||
| 2916 | { | ||
| 2917 | padding: 8px 0; | ||
| 2918 | } | ||
| 2919 | .mui-input-row .mui-input-clear ~ .mui-icon-clear, .mui-input-row .mui-input-speech ~ .mui-icon-speech, .mui-input-row .mui-input-password ~ .mui-icon-eye | ||
| 2920 | { | ||
| 2921 | font-size: 20px; | ||
| 2922 | |||
| 2923 | position: absolute; | ||
| 2924 | z-index: 1; | ||
| 2925 | top: 10px; | ||
| 2926 | right: 0; | ||
| 2927 | |||
| 2928 | width: 38px; | ||
| 2929 | height: 38px; | ||
| 2930 | |||
| 2931 | text-align: center; | ||
| 2932 | |||
| 2933 | color: #999; | ||
| 2934 | } | ||
| 2935 | .mui-input-row .mui-input-clear ~ .mui-icon-clear.mui-active, .mui-input-row .mui-input-speech ~ .mui-icon-speech.mui-active, .mui-input-row .mui-input-password ~ .mui-icon-eye.mui-active | ||
| 2936 | { | ||
| 2937 | color: #007aff; | ||
| 2938 | } | ||
| 2939 | .mui-input-row .mui-input-speech ~ .mui-icon-speech | ||
| 2940 | { | ||
| 2941 | font-size: 24px; | ||
| 2942 | |||
| 2943 | top: 8px; | ||
| 2944 | } | ||
| 2945 | .mui-input-row .mui-input-clear ~ .mui-icon-clear ~ .mui-icon-speech | ||
| 2946 | { | ||
| 2947 | display: none; | ||
| 2948 | } | ||
| 2949 | .mui-input-row .mui-input-clear ~ .mui-icon-clear.mui-hidden ~ .mui-icon-speech | ||
| 2950 | { | ||
| 2951 | display: inline-block; | ||
| 2952 | } | ||
| 2953 | .mui-input-row .mui-icon-speech ~ .mui-placeholder | ||
| 2954 | { | ||
| 2955 | right: 38px; | ||
| 2956 | } | ||
| 2957 | .mui-input-row.mui-search .mui-icon-clear | ||
| 2958 | { | ||
| 2959 | top: 7px; | ||
| 2960 | } | ||
| 2961 | .mui-input-row.mui-search .mui-icon-speech | ||
| 2962 | { | ||
| 2963 | top: 5px; | ||
| 2964 | } | ||
| 2965 | |||
| 2966 | .mui-radio, .mui-checkbox | ||
| 2967 | { | ||
| 2968 | position: relative; | ||
| 2969 | } | ||
| 2970 | .mui-radio label, .mui-checkbox label | ||
| 2971 | { | ||
| 2972 | display: inline-block; | ||
| 2973 | float: none; | ||
| 2974 | |||
| 2975 | width: 100%; | ||
| 2976 | padding-right: 58px; | ||
| 2977 | } | ||
| 2978 | |||
| 2979 | .mui-radio.mui-left input[type='radio'], .mui-checkbox.mui-left input[type='checkbox'] | ||
| 2980 | { | ||
| 2981 | left: 20px; | ||
| 2982 | } | ||
| 2983 | |||
| 2984 | .mui-radio.mui-left label, .mui-checkbox.mui-left label | ||
| 2985 | { | ||
| 2986 | padding-right: 15px; | ||
| 2987 | padding-left: 58px; | ||
| 2988 | } | ||
| 2989 | |||
| 2990 | .mui-radio input[type='radio'], .mui-checkbox input[type='checkbox'] | ||
| 2991 | { | ||
| 2992 | position: absolute; | ||
| 2993 | top: 4px; | ||
| 2994 | right: 20px; | ||
| 2995 | |||
| 2996 | display: inline-block; | ||
| 2997 | |||
| 2998 | width: 28px; | ||
| 2999 | height: 26px; | ||
| 3000 | |||
| 3001 | border: 0; | ||
| 3002 | outline: 0 !important; | ||
| 3003 | background-color: transparent; | ||
| 3004 | |||
| 3005 | -webkit-appearance: none; | ||
| 3006 | } | ||
| 3007 | .mui-radio input[type='radio'][disabled]:before, .mui-checkbox input[type='checkbox'][disabled]:before | ||
| 3008 | { | ||
| 3009 | opacity: .3; | ||
| 3010 | } | ||
| 3011 | .mui-radio input[type='radio']:before, .mui-checkbox input[type='checkbox']:before | ||
| 3012 | { | ||
| 3013 | font-family: Muiicons; | ||
| 3014 | font-size: 28px; | ||
| 3015 | font-weight: normal; | ||
| 3016 | line-height: 1; | ||
| 3017 | |||
| 3018 | text-decoration: none; | ||
| 3019 | |||
| 3020 | color: #aaa; | ||
| 3021 | border-radius: 0; | ||
| 3022 | background: none; | ||
| 3023 | |||
| 3024 | -webkit-font-smoothing: antialiased; | ||
| 3025 | } | ||
| 3026 | .mui-radio input[type='radio']:checked:before, .mui-checkbox input[type='checkbox']:checked:before | ||
| 3027 | { | ||
| 3028 | color: #007aff; | ||
| 3029 | } | ||
| 3030 | |||
| 3031 | .mui-radio.mui-disabled label, .mui-radio label.mui-disabled, .mui-checkbox.mui-disabled label, .mui-checkbox label.mui-disabled | ||
| 3032 | { | ||
| 3033 | opacity: .4; | ||
| 3034 | } | ||
| 3035 | |||
| 3036 | .mui-radio input[type='radio']:before | ||
| 3037 | { | ||
| 3038 | content: '\e411'; | ||
| 3039 | } | ||
| 3040 | |||
| 3041 | .mui-radio input[type='radio']:checked:before | ||
| 3042 | { | ||
| 3043 | content: '\e441'; | ||
| 3044 | } | ||
| 3045 | |||
| 3046 | .mui-checkbox input[type='checkbox']:before | ||
| 3047 | { | ||
| 3048 | content: '\e411'; | ||
| 3049 | } | ||
| 3050 | |||
| 3051 | .mui-checkbox input[type='checkbox']:checked:before | ||
| 3052 | { | ||
| 3053 | content: '\e442'; | ||
| 3054 | } | ||
| 3055 | |||
| 3056 | .mui-select | ||
| 3057 | { | ||
| 3058 | position: relative; | ||
| 3059 | } | ||
| 3060 | |||
| 3061 | .mui-select:before | ||
| 3062 | { | ||
| 3063 | font-family: Muiicons; | ||
| 3064 | |||
| 3065 | position: absolute; | ||
| 3066 | top: 8px; | ||
| 3067 | right: 21px; | ||
| 3068 | |||
| 3069 | content: '\e581'; | ||
| 3070 | |||
| 3071 | color: rgba(170, 170, 170, .6); | ||
| 3072 | } | ||
| 3073 | |||
| 3074 | .mui-input-row .mui-switch | ||
| 3075 | { | ||
| 3076 | float: right; | ||
| 3077 | |||
| 3078 | margin-top: 5px; | ||
| 3079 | margin-right: 20px; | ||
| 3080 | } | ||
| 3081 | |||
| 3082 | .mui-input-range | ||
| 3083 | { | ||
| 3084 | /*input[type="range"] { | ||
| 3085 | -webkit-appearance: none; | ||
| 3086 | background: #999; | ||
| 3087 | height: 36px; | ||
| 3088 | border-radius: 1px; | ||
| 3089 | overflow: hidden; | ||
| 3090 | margin-top: 2px; | ||
| 3091 | margin-bottom: 2px; | ||
| 3092 | outline:none; | ||
| 3093 | position:relative; | ||
| 3094 | width:100%; | ||
| 3095 | }*/ | ||
| 3096 | /*input[type='range']::-webkit-slider-thumb { | ||
| 3097 | -webkit-appearance: none!important; | ||
| 3098 | opacity: 0.5; | ||
| 3099 | height:28px; | ||
| 3100 | width:28px; | ||
| 3101 | border-radius: 50%; | ||
| 3102 | background:#00b7fb; | ||
| 3103 | position: relative; | ||
| 3104 | pointer-events: none; | ||
| 3105 | -webkit-box-sizing: border-box; | ||
| 3106 | box-sizing: border-box; | ||
| 3107 | &:before{ | ||
| 3108 | position: absolute; | ||
| 3109 | top: 13px; | ||
| 3110 | left: -2000px; | ||
| 3111 | width: 2000px; | ||
| 3112 | height: 2px; | ||
| 3113 | background: #00b7fb; | ||
| 3114 | content:' '; | ||
| 3115 | } | ||
| 3116 | }*/ | ||
| 3117 | } | ||
| 3118 | .mui-input-range input[type='range'] | ||
| 3119 | { | ||
| 3120 | position: relative; | ||
| 3121 | |||
| 3122 | width: 100%; | ||
| 3123 | height: 2px; | ||
| 3124 | margin: 17px 0; | ||
| 3125 | padding: 0; | ||
| 3126 | |||
| 3127 | cursor: pointer; | ||
| 3128 | |||
| 3129 | border: 0; | ||
| 3130 | border-radius: 3px; | ||
| 3131 | outline: none; | ||
| 3132 | background-color: #999; | ||
| 3133 | |||
| 3134 | -webkit-appearance: none !important; | ||
| 3135 | } | ||
| 3136 | .mui-input-range input[type='range']::-webkit-slider-thumb | ||
| 3137 | { | ||
| 3138 | width: 28px; | ||
| 3139 | height: 28px; | ||
| 3140 | |||
| 3141 | border-color: #0062cc; | ||
| 3142 | border-radius: 50%; | ||
| 3143 | background-color: #007aff; | ||
| 3144 | background-clip: padding-box; | ||
| 3145 | |||
| 3146 | -webkit-appearance: none !important; | ||
| 3147 | } | ||
| 3148 | .mui-input-range label ~ input[type='range'] | ||
| 3149 | { | ||
| 3150 | width: 65%; | ||
| 3151 | } | ||
| 3152 | .mui-input-range .mui-tooltip | ||
| 3153 | { | ||
| 3154 | font-size: 36px; | ||
| 3155 | line-height: 64px; | ||
| 3156 | |||
| 3157 | position: absolute; | ||
| 3158 | z-index: 1; | ||
| 3159 | top: -70px; | ||
| 3160 | |||
| 3161 | width: 64px; | ||
| 3162 | height: 64px; | ||
| 3163 | |||
| 3164 | text-align: center; | ||
| 3165 | |||
| 3166 | opacity: .8; | ||
| 3167 | color: #333; | ||
| 3168 | border: 1px solid #ddd; | ||
| 3169 | border-radius: 6px; | ||
| 3170 | background-color: #fff; | ||
| 3171 | text-shadow: 0 1px 0 #f3f3f3; | ||
| 3172 | } | ||
| 3173 | |||
| 3174 | .mui-search | ||
| 3175 | { | ||
| 3176 | position: relative; | ||
| 3177 | } | ||
| 3178 | .mui-search input[type='search'] | ||
| 3179 | { | ||
| 3180 | padding-left: 30px; | ||
| 3181 | } | ||
| 3182 | .mui-search .mui-placeholder | ||
| 3183 | { | ||
| 3184 | font-size: 16px; | ||
| 3185 | line-height: 34px; | ||
| 3186 | |||
| 3187 | position: absolute; | ||
| 3188 | z-index: 1; | ||
| 3189 | top: 0; | ||
| 3190 | right: 0; | ||
| 3191 | bottom: 0; | ||
| 3192 | left: 0; | ||
| 3193 | |||
| 3194 | display: inline-block; | ||
| 3195 | |||
| 3196 | height: 34px; | ||
| 3197 | |||
| 3198 | text-align: center; | ||
| 3199 | |||
| 3200 | color: #999; | ||
| 3201 | border: 0; | ||
| 3202 | border-radius: 6px; | ||
| 3203 | background: none; | ||
| 3204 | } | ||
| 3205 | .mui-search .mui-placeholder .mui-icon | ||
| 3206 | { | ||
| 3207 | font-size: 20px; | ||
| 3208 | |||
| 3209 | color: #333; | ||
| 3210 | } | ||
| 3211 | .mui-search:before | ||
| 3212 | { | ||
| 3213 | font-family: Muiicons; | ||
| 3214 | font-size: 20px; | ||
| 3215 | font-weight: normal; | ||
| 3216 | |||
| 3217 | position: absolute; | ||
| 3218 | top: 50%; | ||
| 3219 | right: 50%; | ||
| 3220 | |||
| 3221 | display: none; | ||
| 3222 | |||
| 3223 | margin-top: -18px; | ||
| 3224 | margin-right: 31px; | ||
| 3225 | |||
| 3226 | content: '\e466'; | ||
| 3227 | } | ||
| 3228 | .mui-search.mui-active:before | ||
| 3229 | { | ||
| 3230 | font-size: 20px; | ||
| 3231 | |||
| 3232 | right: auto; | ||
| 3233 | left: 5px; | ||
| 3234 | |||
| 3235 | display: block; | ||
| 3236 | |||
| 3237 | margin-right: 0; | ||
| 3238 | } | ||
| 3239 | .mui-search.mui-active input[type='search'] | ||
| 3240 | { | ||
| 3241 | text-align: left; | ||
| 3242 | } | ||
| 3243 | .mui-search.mui-active .mui-placeholder | ||
| 3244 | { | ||
| 3245 | display: none; | ||
| 3246 | } | ||
| 3247 | |||
| 3248 | .mui-segmented-control | ||
| 3249 | { | ||
| 3250 | font-size: 15px; | ||
| 3251 | font-weight: 400; | ||
| 3252 | |||
| 3253 | position: relative; | ||
| 3254 | |||
| 3255 | display: table; | ||
| 3256 | overflow: hidden; | ||
| 3257 | |||
| 3258 | width: 100%; | ||
| 3259 | |||
| 3260 | table-layout: fixed; | ||
| 3261 | |||
| 3262 | border: 1px solid #007aff; | ||
| 3263 | border-radius: 3px; | ||
| 3264 | background-color: transparent; | ||
| 3265 | |||
| 3266 | -webkit-touch-callout: none; | ||
| 3267 | } | ||
| 3268 | .mui-segmented-control.mui-segmented-control-vertical | ||
| 3269 | { | ||
| 3270 | border-collapse: collapse; | ||
| 3271 | |||
| 3272 | border-width: 0; | ||
| 3273 | border-radius: 0; | ||
| 3274 | } | ||
| 3275 | .mui-segmented-control.mui-segmented-control-vertical .mui-control-item | ||
| 3276 | { | ||
| 3277 | display: block; | ||
| 3278 | |||
| 3279 | border-bottom: 1px solid #c8c7cc; | ||
| 3280 | border-left-width: 0; | ||
| 3281 | } | ||
| 3282 | .mui-segmented-control.mui-scroll-wrapper | ||
| 3283 | { | ||
| 3284 | height: 38px; | ||
| 3285 | } | ||
| 3286 | .mui-segmented-control.mui-scroll-wrapper .mui-scroll | ||
| 3287 | { | ||
| 3288 | width: auto; | ||
| 3289 | height: 40px; | ||
| 3290 | |||
| 3291 | white-space: nowrap; | ||
| 3292 | } | ||
| 3293 | .mui-segmented-control.mui-scroll-wrapper .mui-control-item | ||
| 3294 | { | ||
| 3295 | display: inline-block; | ||
| 3296 | |||
| 3297 | width: auto; | ||
| 3298 | padding: 0 20px; | ||
| 3299 | |||
| 3300 | border: 0; | ||
| 3301 | } | ||
| 3302 | .mui-segmented-control .mui-control-item | ||
| 3303 | { | ||
| 3304 | line-height: 38px; | ||
| 3305 | |||
| 3306 | display: table-cell; | ||
| 3307 | overflow: hidden; | ||
| 3308 | |||
| 3309 | width: 1%; | ||
| 3310 | |||
| 3311 | -webkit-transition: background-color .1s linear; | ||
| 3312 | transition: background-color .1s linear; | ||
| 3313 | text-align: center; | ||
| 3314 | white-space: nowrap; | ||
| 3315 | text-overflow: ellipsis; | ||
| 3316 | |||
| 3317 | color: #007aff; | ||
| 3318 | border-color: #007aff; | ||
| 3319 | border-left: 1px solid #007aff; | ||
| 3320 | } | ||
| 3321 | .mui-segmented-control .mui-control-item:first-child | ||
| 3322 | { | ||
| 3323 | border-left-width: 0; | ||
| 3324 | } | ||
| 3325 | .mui-segmented-control .mui-control-item.mui-active | ||
| 3326 | { | ||
| 3327 | color: #fff; | ||
| 3328 | background-color: #007aff; | ||
| 3329 | } | ||
| 3330 | .mui-segmented-control.mui-segmented-control-inverted | ||
| 3331 | { | ||
| 3332 | width: 100%; | ||
| 3333 | |||
| 3334 | border: 0; | ||
| 3335 | border-radius: 0; | ||
| 3336 | } | ||
| 3337 | .mui-segmented-control.mui-segmented-control-inverted.mui-segmented-control-vertical .mui-control-item | ||
| 3338 | { | ||
| 3339 | border-bottom: 1px solid #c8c7cc; | ||
| 3340 | } | ||
| 3341 | .mui-segmented-control.mui-segmented-control-inverted.mui-segmented-control-vertical .mui-control-item.mui-active | ||
| 3342 | { | ||
| 3343 | border-bottom: 1px solid #c8c7cc; | ||
| 3344 | } | ||
| 3345 | .mui-segmented-control.mui-segmented-control-inverted .mui-control-item | ||
| 3346 | { | ||
| 3347 | color: inherit; | ||
| 3348 | border: 0; | ||
| 3349 | } | ||
| 3350 | .mui-segmented-control.mui-segmented-control-inverted .mui-control-item.mui-active | ||
| 3351 | { | ||
| 3352 | color: #007aff; | ||
| 3353 | border-bottom: 2px solid #007aff; | ||
| 3354 | background: none; | ||
| 3355 | } | ||
| 3356 | .mui-segmented-control.mui-segmented-control-inverted ~ .mui-slider-progress-bar | ||
| 3357 | { | ||
| 3358 | background-color: #007aff; | ||
| 3359 | } | ||
| 3360 | |||
| 3361 | .mui-segmented-control-positive | ||
| 3362 | { | ||
| 3363 | border: 1px solid #4cd964; | ||
| 3364 | } | ||
| 3365 | .mui-segmented-control-positive .mui-control-item | ||
| 3366 | { | ||
| 3367 | color: #4cd964; | ||
| 3368 | border-color: inherit; | ||
| 3369 | } | ||
| 3370 | .mui-segmented-control-positive .mui-control-item.mui-active | ||
| 3371 | { | ||
| 3372 | color: #fff; | ||
| 3373 | background-color: #4cd964; | ||
| 3374 | } | ||
| 3375 | .mui-segmented-control-positive.mui-segmented-control-inverted .mui-control-item.mui-active | ||
| 3376 | { | ||
| 3377 | color: #4cd964; | ||
| 3378 | border-bottom: 2px solid #4cd964; | ||
| 3379 | background: none; | ||
| 3380 | } | ||
| 3381 | .mui-segmented-control-positive.mui-segmented-control-inverted ~ .mui-slider-progress-bar | ||
| 3382 | { | ||
| 3383 | background-color: #4cd964; | ||
| 3384 | } | ||
| 3385 | |||
| 3386 | .mui-segmented-control-negative | ||
| 3387 | { | ||
| 3388 | border: 1px solid #dd524d; | ||
| 3389 | } | ||
| 3390 | .mui-segmented-control-negative .mui-control-item | ||
| 3391 | { | ||
| 3392 | color: #dd524d; | ||
| 3393 | border-color: inherit; | ||
| 3394 | } | ||
| 3395 | .mui-segmented-control-negative .mui-control-item.mui-active | ||
| 3396 | { | ||
| 3397 | color: #fff; | ||
| 3398 | background-color: #dd524d; | ||
| 3399 | } | ||
| 3400 | .mui-segmented-control-negative.mui-segmented-control-inverted .mui-control-item.mui-active | ||
| 3401 | { | ||
| 3402 | color: #dd524d; | ||
| 3403 | border-bottom: 2px solid #dd524d; | ||
| 3404 | background: none; | ||
| 3405 | } | ||
| 3406 | .mui-segmented-control-negative.mui-segmented-control-inverted ~ .mui-slider-progress-bar | ||
| 3407 | { | ||
| 3408 | background-color: #dd524d; | ||
| 3409 | } | ||
| 3410 | |||
| 3411 | .mui-control-content | ||
| 3412 | { | ||
| 3413 | position: relative; | ||
| 3414 | |||
| 3415 | display: none; | ||
| 3416 | } | ||
| 3417 | .mui-control-content.mui-active | ||
| 3418 | { | ||
| 3419 | display: block; | ||
| 3420 | } | ||
| 3421 | |||
| 3422 | .mui-popover | ||
| 3423 | { | ||
| 3424 | position: absolute; | ||
| 3425 | z-index: 999; | ||
| 3426 | |||
| 3427 | display: none; | ||
| 3428 | |||
| 3429 | width: 280px; | ||
| 3430 | |||
| 3431 | -webkit-transition: opacity .3s; | ||
| 3432 | transition: opacity .3s; | ||
| 3433 | -webkit-transition-property: opacity; | ||
| 3434 | transition-property: opacity; | ||
| 3435 | -webkit-transform: none; | ||
| 3436 | transform: none; | ||
| 3437 | |||
| 3438 | opacity: 0; | ||
| 3439 | border-radius: 7px; | ||
| 3440 | background-color: #f7f7f7; | ||
| 3441 | -webkit-box-shadow: 0 0 15px rgba(0, 0, 0, .1); | ||
| 3442 | box-shadow: 0 0 15px rgba(0, 0, 0, .1); | ||
| 3443 | } | ||
| 3444 | .mui-popover .mui-popover-arrow | ||
| 3445 | { | ||
| 3446 | position: absolute; | ||
| 3447 | z-index: 1000; | ||
| 3448 | top: -25px; | ||
| 3449 | left: 0; | ||
| 3450 | |||
| 3451 | overflow: hidden; | ||
| 3452 | |||
| 3453 | width: 26px; | ||
| 3454 | height: 26px; | ||
| 3455 | } | ||
| 3456 | .mui-popover .mui-popover-arrow:after | ||
| 3457 | { | ||
| 3458 | position: absolute; | ||
| 3459 | top: 19px; | ||
| 3460 | left: 0; | ||
| 3461 | |||
| 3462 | width: 26px; | ||
| 3463 | height: 26px; | ||
| 3464 | |||
| 3465 | content: ' '; | ||
| 3466 | -webkit-transform: rotate(45deg); | ||
| 3467 | transform: rotate(45deg); | ||
| 3468 | |||
| 3469 | border-radius: 3px; | ||
| 3470 | background: #f7f7f7; | ||
| 3471 | } | ||
| 3472 | .mui-popover .mui-popover-arrow.mui-bottom | ||
| 3473 | { | ||
| 3474 | top: 100%; | ||
| 3475 | left: -26px; | ||
| 3476 | |||
| 3477 | margin-top: -1px; | ||
| 3478 | } | ||
| 3479 | .mui-popover .mui-popover-arrow.mui-bottom:after | ||
| 3480 | { | ||
| 3481 | top: -19px; | ||
| 3482 | left: 0; | ||
| 3483 | } | ||
| 3484 | .mui-popover.mui-popover-action | ||
| 3485 | { | ||
| 3486 | bottom: 0; | ||
| 3487 | |||
| 3488 | width: 100%; | ||
| 3489 | |||
| 3490 | -webkit-transition: -webkit-transform .3s, opacity .3s; | ||
| 3491 | transition: transform .3s, opacity .3s; | ||
| 3492 | -webkit-transform: translate3d(0, 100%, 0); | ||
| 3493 | transform: translate3d(0, 100%, 0); | ||
| 3494 | |||
| 3495 | border-radius: 0; | ||
| 3496 | background: none; | ||
| 3497 | -webkit-box-shadow: none; | ||
| 3498 | box-shadow: none; | ||
| 3499 | } | ||
| 3500 | .mui-popover.mui-popover-action .mui-popover-arrow | ||
| 3501 | { | ||
| 3502 | display: none; | ||
| 3503 | } | ||
| 3504 | .mui-popover.mui-popover-action.mui-popover-bottom | ||
| 3505 | { | ||
| 3506 | position: fixed; | ||
| 3507 | } | ||
| 3508 | .mui-popover.mui-popover-action.mui-active | ||
| 3509 | { | ||
| 3510 | -webkit-transform: translate3d(0, 0, 0); | ||
| 3511 | transform: translate3d(0, 0, 0); | ||
| 3512 | } | ||
| 3513 | .mui-popover.mui-popover-action .mui-table-view | ||
| 3514 | { | ||
| 3515 | margin: 8px; | ||
| 3516 | |||
| 3517 | text-align: center; | ||
| 3518 | |||
| 3519 | color: #007aff; | ||
| 3520 | border-radius: 4px; | ||
| 3521 | } | ||
| 3522 | .mui-popover.mui-popover-action .mui-table-view .mui-table-view-cell:after | ||
| 3523 | { | ||
| 3524 | position: absolute; | ||
| 3525 | right: 0; | ||
| 3526 | bottom: 0; | ||
| 3527 | left: 0; | ||
| 3528 | |||
| 3529 | height: 1px; | ||
| 3530 | |||
| 3531 | content: ''; | ||
| 3532 | -webkit-transform: scaleY(.5); | ||
| 3533 | transform: scaleY(.5); | ||
| 3534 | |||
| 3535 | background-color: #c8c7cc; | ||
| 3536 | } | ||
| 3537 | .mui-popover.mui-popover-action .mui-table-view small | ||
| 3538 | { | ||
| 3539 | font-weight: 400; | ||
| 3540 | line-height: 1.3; | ||
| 3541 | |||
| 3542 | display: block; | ||
| 3543 | } | ||
| 3544 | .mui-popover.mui-active | ||
| 3545 | { | ||
| 3546 | display: block; | ||
| 3547 | |||
| 3548 | opacity: 1; | ||
| 3549 | } | ||
| 3550 | .mui-popover .mui-bar ~ .mui-table-view | ||
| 3551 | { | ||
| 3552 | padding-top: 44px; | ||
| 3553 | } | ||
| 3554 | |||
| 3555 | .mui-backdrop | ||
| 3556 | { | ||
| 3557 | position: fixed; | ||
| 3558 | z-index: 998; | ||
| 3559 | top: 0; | ||
| 3560 | right: 0; | ||
| 3561 | bottom: 0; | ||
| 3562 | left: 0; | ||
| 3563 | |||
| 3564 | background-color: rgba(0, 0, 0, .3); | ||
| 3565 | } | ||
| 3566 | |||
| 3567 | .mui-bar-backdrop.mui-backdrop | ||
| 3568 | { | ||
| 3569 | bottom: 50px; | ||
| 3570 | |||
| 3571 | background: none; | ||
| 3572 | } | ||
| 3573 | |||
| 3574 | .mui-backdrop-action.mui-backdrop | ||
| 3575 | { | ||
| 3576 | background-color: rgba(0, 0, 0, .3); | ||
| 3577 | } | ||
| 3578 | |||
| 3579 | .mui-bar-backdrop.mui-backdrop, .mui-backdrop-action.mui-backdrop | ||
| 3580 | { | ||
| 3581 | opacity: 0; | ||
| 3582 | } | ||
| 3583 | .mui-bar-backdrop.mui-backdrop.mui-active, .mui-backdrop-action.mui-backdrop.mui-active | ||
| 3584 | { | ||
| 3585 | -webkit-transition: all .4s ease; | ||
| 3586 | transition: all .4s ease; | ||
| 3587 | |||
| 3588 | opacity: 1; | ||
| 3589 | } | ||
| 3590 | |||
| 3591 | .mui-popover .mui-btn-block | ||
| 3592 | { | ||
| 3593 | margin-bottom: 5px; | ||
| 3594 | } | ||
| 3595 | .mui-popover .mui-btn-block:last-child | ||
| 3596 | { | ||
| 3597 | margin-bottom: 0; | ||
| 3598 | } | ||
| 3599 | |||
| 3600 | .mui-popover .mui-bar | ||
| 3601 | { | ||
| 3602 | -webkit-box-shadow: none; | ||
| 3603 | box-shadow: none; | ||
| 3604 | } | ||
| 3605 | |||
| 3606 | .mui-popover .mui-bar-nav | ||
| 3607 | { | ||
| 3608 | border-bottom: 1px solid rgba(0, 0, 0, .15); | ||
| 3609 | border-top-left-radius: 12px; | ||
| 3610 | border-top-right-radius: 12px; | ||
| 3611 | -webkit-box-shadow: none; | ||
| 3612 | box-shadow: none; | ||
| 3613 | } | ||
| 3614 | |||
| 3615 | .mui-popover .mui-scroll-wrapper | ||
| 3616 | { | ||
| 3617 | margin: 7px 0; | ||
| 3618 | |||
| 3619 | border-radius: 7px; | ||
| 3620 | background-clip: padding-box; | ||
| 3621 | } | ||
| 3622 | |||
| 3623 | .mui-popover .mui-scroll .mui-table-view | ||
| 3624 | { | ||
| 3625 | max-height: none; | ||
| 3626 | } | ||
| 3627 | |||
| 3628 | .mui-popover .mui-table-view | ||
| 3629 | { | ||
| 3630 | overflow: auto; | ||
| 3631 | |||
| 3632 | max-height: 300px; | ||
| 3633 | margin-bottom: 0; | ||
| 3634 | |||
| 3635 | border-radius: 7px; | ||
| 3636 | background-color: #f7f7f7; | ||
| 3637 | background-image: none; | ||
| 3638 | |||
| 3639 | -webkit-overflow-scrolling: touch; | ||
| 3640 | } | ||
| 3641 | .mui-popover .mui-table-view:before, .mui-popover .mui-table-view:after | ||
| 3642 | { | ||
| 3643 | height: 0; | ||
| 3644 | } | ||
| 3645 | .mui-popover .mui-table-view .mui-table-view-cell:first-child, | ||
| 3646 | .mui-popover .mui-table-view .mui-table-view-cell:first-child > a:not(.mui-btn) | ||
| 3647 | { | ||
| 3648 | border-top-left-radius: 12px; | ||
| 3649 | border-top-right-radius: 12px; | ||
| 3650 | } | ||
| 3651 | .mui-popover .mui-table-view .mui-table-view-cell:last-child, | ||
| 3652 | .mui-popover .mui-table-view .mui-table-view-cell:last-child > a:not(.mui-btn) | ||
| 3653 | { | ||
| 3654 | border-bottom-right-radius: 12px; | ||
| 3655 | border-bottom-left-radius: 12px; | ||
| 3656 | } | ||
| 3657 | |||
| 3658 | .mui-popover.mui-bar-popover .mui-table-view | ||
| 3659 | { | ||
| 3660 | width: 106px; | ||
| 3661 | } | ||
| 3662 | .mui-popover.mui-bar-popover .mui-table-view .mui-table-view-cell | ||
| 3663 | { | ||
| 3664 | padding: 11px 15px 11px 15px; | ||
| 3665 | |||
| 3666 | background-position: 0 100%; | ||
| 3667 | } | ||
| 3668 | .mui-popover.mui-bar-popover .mui-table-view .mui-table-view-cell > a:not(.mui-btn) | ||
| 3669 | { | ||
| 3670 | margin: -11px -15px -11px -15px; | ||
| 3671 | } | ||
| 3672 | |||
| 3673 | .mui-popup-backdrop | ||
| 3674 | { | ||
| 3675 | position: fixed; | ||
| 3676 | z-index: 998; | ||
| 3677 | top: 0; | ||
| 3678 | right: 0; | ||
| 3679 | bottom: 0; | ||
| 3680 | left: 0; | ||
| 3681 | |||
| 3682 | -webkit-transition-duration: 400ms; | ||
| 3683 | transition-duration: 400ms; | ||
| 3684 | |||
| 3685 | opacity: 0; | ||
| 3686 | background: rgba(0, 0, 0, .4); | ||
| 3687 | } | ||
| 3688 | .mui-popup-backdrop.mui-active | ||
| 3689 | { | ||
| 3690 | opacity: 1; | ||
| 3691 | } | ||
| 3692 | |||
| 3693 | .mui-popup | ||
| 3694 | { | ||
| 3695 | position: absolute; | ||
| 3696 | z-index: 10000; | ||
| 3697 | top: 50%; | ||
| 3698 | left: 50%; | ||
| 3699 | |||
| 3700 | display: none; | ||
| 3701 | overflow: hidden; | ||
| 3702 | |||
| 3703 | width: 270px; | ||
| 3704 | |||
| 3705 | -webkit-transition-property: -webkit-transform,opacity; | ||
| 3706 | transition-property: transform,opacity; | ||
| 3707 | -webkit-transform: translate3d(-50%, -50%, 0) scale(1.185); | ||
| 3708 | transform: translate3d(-50%, -50%, 0) scale(1.185); | ||
| 3709 | text-align: center; | ||
| 3710 | |||
| 3711 | opacity: 0; | ||
| 3712 | color: #000; | ||
| 3713 | border-radius: 13px; | ||
| 3714 | } | ||
| 3715 | .mui-popup.mui-popup-in | ||
| 3716 | { | ||
| 3717 | display: block; | ||
| 3718 | |||
| 3719 | -webkit-transition-duration: 400ms; | ||
| 3720 | transition-duration: 400ms; | ||
| 3721 | -webkit-transform: translate3d(-50%, -50%, 0) scale(1); | ||
| 3722 | transform: translate3d(-50%, -50%, 0) scale(1); | ||
| 3723 | |||
| 3724 | opacity: 1; | ||
| 3725 | } | ||
| 3726 | .mui-popup.mui-popup-out | ||
| 3727 | { | ||
| 3728 | -webkit-transition-duration: 400ms; | ||
| 3729 | transition-duration: 400ms; | ||
| 3730 | -webkit-transform: translate3d(-50%, -50%, 0) scale(1); | ||
| 3731 | transform: translate3d(-50%, -50%, 0) scale(1); | ||
| 3732 | |||
| 3733 | opacity: 0; | ||
| 3734 | } | ||
| 3735 | |||
| 3736 | .mui-popup-inner | ||
| 3737 | { | ||
| 3738 | position: relative; | ||
| 3739 | |||
| 3740 | padding: 15px; | ||
| 3741 | |||
| 3742 | border-radius: 13px 13px 0 0; | ||
| 3743 | background: rgba(255, 255, 255, .95); | ||
| 3744 | } | ||
| 3745 | .mui-popup-inner:after | ||
| 3746 | { | ||
| 3747 | position: absolute; | ||
| 3748 | z-index: 15; | ||
| 3749 | top: auto; | ||
| 3750 | right: auto; | ||
| 3751 | bottom: 0; | ||
| 3752 | left: 0; | ||
| 3753 | |||
| 3754 | display: block; | ||
| 3755 | |||
| 3756 | width: 100%; | ||
| 3757 | height: 1px; | ||
| 3758 | |||
| 3759 | content: ''; | ||
| 3760 | -webkit-transform: scaleY(.5); | ||
| 3761 | transform: scaleY(.5); | ||
| 3762 | -webkit-transform-origin: 50% 100%; | ||
| 3763 | transform-origin: 50% 100%; | ||
| 3764 | |||
| 3765 | background-color: rgba(0, 0, 0, .2); | ||
| 3766 | } | ||
| 3767 | |||
| 3768 | .mui-popup-title | ||
| 3769 | { | ||
| 3770 | font-size: 18px; | ||
| 3771 | font-weight: 500; | ||
| 3772 | |||
| 3773 | text-align: center; | ||
| 3774 | } | ||
| 3775 | |||
| 3776 | .mui-popup-title + .mui-popup-text | ||
| 3777 | { | ||
| 3778 | font-size: 14px; | ||
| 3779 | |||
| 3780 | margin-top: 5px; | ||
| 3781 | } | ||
| 3782 | |||
| 3783 | .mui-popup-buttons | ||
| 3784 | { | ||
| 3785 | position: relative; | ||
| 3786 | |||
| 3787 | display: -webkit-box; | ||
| 3788 | display: -webkit-flex; | ||
| 3789 | display: flex; | ||
| 3790 | |||
| 3791 | height: 44px; | ||
| 3792 | |||
| 3793 | -webkit-box-pack: center; | ||
| 3794 | -webkit-justify-content: center; | ||
| 3795 | justify-content: center; | ||
| 3796 | } | ||
| 3797 | |||
| 3798 | .mui-popup-button | ||
| 3799 | { | ||
| 3800 | font-size: 17px; | ||
| 3801 | line-height: 44px; | ||
| 3802 | |||
| 3803 | position: relative; | ||
| 3804 | |||
| 3805 | display: block; | ||
| 3806 | overflow: hidden; | ||
| 3807 | |||
| 3808 | box-sizing: border-box; | ||
| 3809 | width: 100%; | ||
| 3810 | height: 44px; | ||
| 3811 | padding: 0 5px; | ||
| 3812 | |||
| 3813 | cursor: pointer; | ||
| 3814 | text-align: center; | ||
| 3815 | white-space: nowrap; | ||
| 3816 | text-overflow: ellipsis; | ||
| 3817 | |||
| 3818 | color: #007aff; | ||
| 3819 | background: rgba(255, 255, 255, .95); | ||
| 3820 | |||
| 3821 | -webkit-box-flex: 1; | ||
| 3822 | } | ||
| 3823 | .mui-popup-button:after | ||
| 3824 | { | ||
| 3825 | position: absolute; | ||
| 3826 | z-index: 15; | ||
| 3827 | top: 0; | ||
| 3828 | right: 0; | ||
| 3829 | bottom: auto; | ||
| 3830 | left: auto; | ||
| 3831 | |||
| 3832 | display: block; | ||
| 3833 | |||
| 3834 | width: 1px; | ||
| 3835 | height: 100%; | ||
| 3836 | |||
| 3837 | content: ''; | ||
| 3838 | -webkit-transform: scaleX(.5); | ||
| 3839 | transform: scaleX(.5); | ||
| 3840 | -webkit-transform-origin: 100% 50%; | ||
| 3841 | transform-origin: 100% 50%; | ||
| 3842 | |||
| 3843 | background-color: rgba(0, 0, 0, .2); | ||
| 3844 | } | ||
| 3845 | .mui-popup-button:first-child | ||
| 3846 | { | ||
| 3847 | border-radius: 0 0 0 13px; | ||
| 3848 | } | ||
| 3849 | .mui-popup-button:first-child:last-child | ||
| 3850 | { | ||
| 3851 | border-radius: 0 0 13px 13px; | ||
| 3852 | } | ||
| 3853 | .mui-popup-button:last-child | ||
| 3854 | { | ||
| 3855 | border-radius: 0 0 13px 0; | ||
| 3856 | } | ||
| 3857 | .mui-popup-button:last-child:after | ||
| 3858 | { | ||
| 3859 | display: none; | ||
| 3860 | } | ||
| 3861 | .mui-popup-button.mui-popup-button-bold | ||
| 3862 | { | ||
| 3863 | font-weight: 600; | ||
| 3864 | } | ||
| 3865 | |||
| 3866 | .mui-popup-input input | ||
| 3867 | { | ||
| 3868 | font-size: 14px; | ||
| 3869 | |||
| 3870 | width: 100%; | ||
| 3871 | height: 26px; | ||
| 3872 | margin: 0; | ||
| 3873 | margin-top: 15px; | ||
| 3874 | padding: 0 5px; | ||
| 3875 | |||
| 3876 | border: 1px solid rgba(0, 0, 0, .3); | ||
| 3877 | border-radius: 0; | ||
| 3878 | background: #fff; | ||
| 3879 | } | ||
| 3880 | |||
| 3881 | .mui-plus.mui-android .mui-popup-backdrop | ||
| 3882 | { | ||
| 3883 | -webkit-transition-duration: 1ms; | ||
| 3884 | transition-duration: 1ms; | ||
| 3885 | } | ||
| 3886 | |||
| 3887 | .mui-plus.mui-android .mui-popup | ||
| 3888 | { | ||
| 3889 | -webkit-transition-duration: 1ms; | ||
| 3890 | transition-duration: 1ms; | ||
| 3891 | -webkit-transform: translate3d(-50%, -50%, 0) scale(1); | ||
| 3892 | transform: translate3d(-50%, -50%, 0) scale(1); | ||
| 3893 | } | ||
| 3894 | |||
| 3895 | .mui-pagination | ||
| 3896 | { | ||
| 3897 | display: inline-block; | ||
| 3898 | |||
| 3899 | margin: 0 auto; | ||
| 3900 | padding-left: 0; | ||
| 3901 | |||
| 3902 | border-radius: 6px; | ||
| 3903 | } | ||
| 3904 | .mui-pagination > li | ||
| 3905 | { | ||
| 3906 | display: inline; | ||
| 3907 | } | ||
| 3908 | .mui-pagination > li > a, | ||
| 3909 | .mui-pagination > li > span | ||
| 3910 | { | ||
| 3911 | line-height: 1.428571429; | ||
| 3912 | |||
| 3913 | position: relative; | ||
| 3914 | |||
| 3915 | float: left; | ||
| 3916 | |||
| 3917 | margin-left: -1px; | ||
| 3918 | padding: 6px 12px; | ||
| 3919 | |||
| 3920 | text-decoration: none; | ||
| 3921 | |||
| 3922 | color: #007aff; | ||
| 3923 | border: 1px solid #ddd; | ||
| 3924 | background-color: #fff; | ||
| 3925 | } | ||
| 3926 | .mui-pagination > li:first-child > a, | ||
| 3927 | .mui-pagination > li:first-child > span | ||
| 3928 | { | ||
| 3929 | margin-left: 0; | ||
| 3930 | |||
| 3931 | border-top-left-radius: 6px; | ||
| 3932 | border-bottom-left-radius: 6px; | ||
| 3933 | background-clip: padding-box; | ||
| 3934 | } | ||
| 3935 | .mui-pagination > li:last-child > a, | ||
| 3936 | .mui-pagination > li:last-child > span | ||
| 3937 | { | ||
| 3938 | border-top-right-radius: 6px; | ||
| 3939 | border-bottom-right-radius: 6px; | ||
| 3940 | background-clip: padding-box; | ||
| 3941 | } | ||
| 3942 | .mui-pagination > li:active > a, .mui-pagination > li:active > a:active, | ||
| 3943 | .mui-pagination > li:active > span, | ||
| 3944 | .mui-pagination > li:active > span:active, | ||
| 3945 | .mui-pagination > li.mui-active > a, | ||
| 3946 | .mui-pagination > li.mui-active > a:active, | ||
| 3947 | .mui-pagination > li.mui-active > span, | ||
| 3948 | .mui-pagination > li.mui-active > span:active | ||
| 3949 | { | ||
| 3950 | z-index: 2; | ||
| 3951 | |||
| 3952 | cursor: default; | ||
| 3953 | |||
| 3954 | color: #fff; | ||
| 3955 | border-color: #007aff; | ||
| 3956 | background-color: #007aff; | ||
| 3957 | } | ||
| 3958 | .mui-pagination > li.mui-disabled > span, | ||
| 3959 | .mui-pagination > li.mui-disabled > span:active, | ||
| 3960 | .mui-pagination > li.mui-disabled > a, | ||
| 3961 | .mui-pagination > li.mui-disabled > a:active | ||
| 3962 | { | ||
| 3963 | opacity: .6; | ||
| 3964 | color: #777; | ||
| 3965 | border: 1px solid #ddd; | ||
| 3966 | background-color: #fff; | ||
| 3967 | } | ||
| 3968 | |||
| 3969 | .mui-pagination-lg > li > a, | ||
| 3970 | .mui-pagination-lg > li > span | ||
| 3971 | { | ||
| 3972 | font-size: 18px; | ||
| 3973 | |||
| 3974 | padding: 10px 16px; | ||
| 3975 | } | ||
| 3976 | |||
| 3977 | .mui-pagination-sm > li > a, | ||
| 3978 | .mui-pagination-sm > li > span | ||
| 3979 | { | ||
| 3980 | font-size: 12px; | ||
| 3981 | |||
| 3982 | padding: 5px 10px; | ||
| 3983 | } | ||
| 3984 | |||
| 3985 | .mui-pager | ||
| 3986 | { | ||
| 3987 | padding-left: 0; | ||
| 3988 | |||
| 3989 | list-style: none; | ||
| 3990 | |||
| 3991 | text-align: center; | ||
| 3992 | } | ||
| 3993 | .mui-pager:before, .mui-pager:after | ||
| 3994 | { | ||
| 3995 | display: table; | ||
| 3996 | |||
| 3997 | content: ' '; | ||
| 3998 | } | ||
| 3999 | .mui-pager:after | ||
| 4000 | { | ||
| 4001 | clear: both; | ||
| 4002 | } | ||
| 4003 | .mui-pager li | ||
| 4004 | { | ||
| 4005 | display: inline; | ||
| 4006 | } | ||
| 4007 | .mui-pager li > a, | ||
| 4008 | .mui-pager li > span | ||
| 4009 | { | ||
| 4010 | display: inline-block; | ||
| 4011 | |||
| 4012 | padding: 5px 14px; | ||
| 4013 | |||
| 4014 | border: 1px solid #ddd; | ||
| 4015 | border-radius: 6px; | ||
| 4016 | background-color: #fff; | ||
| 4017 | background-clip: padding-box; | ||
| 4018 | } | ||
| 4019 | .mui-pager li:active > a, .mui-pager li:active > span, .mui-pager li.mui-active > a, .mui-pager li.mui-active > span | ||
| 4020 | { | ||
| 4021 | cursor: default; | ||
| 4022 | text-decoration: none; | ||
| 4023 | |||
| 4024 | color: #fff; | ||
| 4025 | border-color: #007aff; | ||
| 4026 | background-color: #007aff; | ||
| 4027 | } | ||
| 4028 | .mui-pager .mui-next > a, | ||
| 4029 | .mui-pager .mui-next > span | ||
| 4030 | { | ||
| 4031 | float: right; | ||
| 4032 | } | ||
| 4033 | .mui-pager .mui-previous > a, | ||
| 4034 | .mui-pager .mui-previous > span | ||
| 4035 | { | ||
| 4036 | float: left; | ||
| 4037 | } | ||
| 4038 | .mui-pager .mui-disabled > a, | ||
| 4039 | .mui-pager .mui-disabled > a:active, | ||
| 4040 | .mui-pager .mui-disabled > span, | ||
| 4041 | .mui-pager .mui-disabled > span:active | ||
| 4042 | { | ||
| 4043 | opacity: .6; | ||
| 4044 | color: #777; | ||
| 4045 | border: 1px solid #ddd; | ||
| 4046 | background-color: #fff; | ||
| 4047 | } | ||
| 4048 | |||
| 4049 | .mui-modal | ||
| 4050 | { | ||
| 4051 | position: fixed; | ||
| 4052 | z-index: 999; | ||
| 4053 | top: 0; | ||
| 4054 | |||
| 4055 | overflow: hidden; | ||
| 4056 | |||
| 4057 | width: 100%; | ||
| 4058 | min-height: 100%; | ||
| 4059 | |||
| 4060 | -webkit-transition: -webkit-transform .25s, opacity 1ms .25s; | ||
| 4061 | transition: transform .25s, opacity 1ms .25s; | ||
| 4062 | -webkit-transition-timing-function: cubic-bezier(.1, .5, .1, 1); | ||
| 4063 | transition-timing-function: cubic-bezier(.1, .5, .1, 1); | ||
| 4064 | -webkit-transform: translate3d(0, 100%, 0); | ||
| 4065 | transform: translate3d(0, 100%, 0); | ||
| 4066 | |||
| 4067 | opacity: 0; | ||
| 4068 | background-color: #fff; | ||
| 4069 | } | ||
| 4070 | .mui-modal.mui-active | ||
| 4071 | { | ||
| 4072 | height: 100%; | ||
| 4073 | |||
| 4074 | -webkit-transition: -webkit-transform .25s; | ||
| 4075 | transition: transform .25s; | ||
| 4076 | -webkit-transition-timing-function: cubic-bezier(.1, .5, .1, 1); | ||
| 4077 | transition-timing-function: cubic-bezier(.1, .5, .1, 1); | ||
| 4078 | -webkit-transform: translate3d(0, 0, 0); | ||
| 4079 | transform: translate3d(0, 0, 0); | ||
| 4080 | |||
| 4081 | opacity: 1; | ||
| 4082 | } | ||
| 4083 | |||
| 4084 | .mui-android .mui-modal .mui-bar | ||
| 4085 | { | ||
| 4086 | position: static; | ||
| 4087 | } | ||
| 4088 | |||
| 4089 | .mui-android .mui-modal .mui-bar-nav ~ .mui-content | ||
| 4090 | { | ||
| 4091 | padding-top: 0; | ||
| 4092 | } | ||
| 4093 | |||
| 4094 | .mui-slider | ||
| 4095 | { | ||
| 4096 | position: relative; | ||
| 4097 | z-index: 1; | ||
| 4098 | |||
| 4099 | overflow: hidden; | ||
| 4100 | |||
| 4101 | width: 100%; | ||
| 4102 | } | ||
| 4103 | .mui-slider .mui-segmented-control.mui-segmented-control-inverted .mui-control-item.mui-active | ||
| 4104 | { | ||
| 4105 | border-bottom: 0; | ||
| 4106 | } | ||
| 4107 | .mui-slider .mui-segmented-control.mui-segmented-control-inverted ~ .mui-slider-group .mui-slider-item | ||
| 4108 | { | ||
| 4109 | border-top: 1px solid #c8c7cc; | ||
| 4110 | border-bottom: 1px solid #c8c7cc; | ||
| 4111 | } | ||
| 4112 | .mui-slider .mui-slider-group | ||
| 4113 | { | ||
| 4114 | font-size: 0; | ||
| 4115 | |||
| 4116 | position: relative; | ||
| 4117 | |||
| 4118 | -webkit-transition: all 0s linear; | ||
| 4119 | transition: all 0s linear; | ||
| 4120 | white-space: nowrap; | ||
| 4121 | } | ||
| 4122 | .mui-slider .mui-slider-group .mui-slider-item | ||
| 4123 | { | ||
| 4124 | font-size: 14px; | ||
| 4125 | |||
| 4126 | position: relative; | ||
| 4127 | |||
| 4128 | display: inline-block; | ||
| 4129 | |||
| 4130 | width: 100%; | ||
| 4131 | height: 100%; | ||
| 4132 | |||
| 4133 | vertical-align: top; | ||
| 4134 | white-space: normal; | ||
| 4135 | } | ||
| 4136 | .mui-slider .mui-slider-group .mui-slider-item > a:not(.mui-control-item) | ||
| 4137 | { | ||
| 4138 | line-height: 0; | ||
| 4139 | |||
| 4140 | position: relative; | ||
| 4141 | |||
| 4142 | display: block; | ||
| 4143 | } | ||
| 4144 | .mui-slider .mui-slider-group .mui-slider-item img | ||
| 4145 | { | ||
| 4146 | width: 100%; | ||
| 4147 | } | ||
| 4148 | .mui-slider .mui-slider-group .mui-slider-item .mui-table-view:before, .mui-slider .mui-slider-group .mui-slider-item .mui-table-view:after | ||
| 4149 | { | ||
| 4150 | height: 0; | ||
| 4151 | } | ||
| 4152 | .mui-slider .mui-slider-group.mui-slider-loop | ||
| 4153 | { | ||
| 4154 | -webkit-transform: translate(-100%, 0px); | ||
| 4155 | transform: translate(-100%, 0px); | ||
| 4156 | } | ||
| 4157 | |||
| 4158 | .mui-slider-title | ||
| 4159 | { | ||
| 4160 | line-height: 30px; | ||
| 4161 | |||
| 4162 | position: absolute; | ||
| 4163 | bottom: 0; | ||
| 4164 | left: 0; | ||
| 4165 | |||
| 4166 | width: 100%; | ||
| 4167 | height: 30px; | ||
| 4168 | margin: 0; | ||
| 4169 | |||
| 4170 | text-align: left; | ||
| 4171 | text-indent: 12px; | ||
| 4172 | |||
| 4173 | opacity: .8; | ||
| 4174 | background-color: #000; | ||
| 4175 | } | ||
| 4176 | |||
| 4177 | .mui-slider-indicator | ||
| 4178 | { | ||
| 4179 | position: absolute; | ||
| 4180 | bottom: 8px; | ||
| 4181 | |||
| 4182 | width: 100%; | ||
| 4183 | |||
| 4184 | text-align: center; | ||
| 4185 | |||
| 4186 | background: none; | ||
| 4187 | } | ||
| 4188 | .mui-slider-indicator.mui-segmented-control | ||
| 4189 | { | ||
| 4190 | position: relative; | ||
| 4191 | bottom: auto; | ||
| 4192 | } | ||
| 4193 | .mui-slider-indicator .mui-indicator | ||
| 4194 | { | ||
| 4195 | display: inline-block; | ||
| 4196 | |||
| 4197 | width: 6px; | ||
| 4198 | height: 6px; | ||
| 4199 | margin: 1px 6px; | ||
| 4200 | |||
| 4201 | cursor: pointer; | ||
| 4202 | |||
| 4203 | border-radius: 50%; | ||
| 4204 | background: #aaa; | ||
| 4205 | -webkit-box-shadow: 0 0 1px 1px rgba(130, 130, 130, .7); | ||
| 4206 | box-shadow: 0 0 1px 1px rgba(130, 130, 130, .7); | ||
| 4207 | } | ||
| 4208 | .mui-slider-indicator .mui-active.mui-indicator | ||
| 4209 | { | ||
| 4210 | background: #fff; | ||
| 4211 | } | ||
| 4212 | .mui-slider-indicator .mui-icon | ||
| 4213 | { | ||
| 4214 | font-size: 20px; | ||
| 4215 | line-height: 30px; | ||
| 4216 | |||
| 4217 | width: 40px; | ||
| 4218 | height: 30px; | ||
| 4219 | margin: 3px; | ||
| 4220 | |||
| 4221 | text-align: center; | ||
| 4222 | |||
| 4223 | border: 1px solid #ddd; | ||
| 4224 | } | ||
| 4225 | .mui-slider-indicator .mui-number | ||
| 4226 | { | ||
| 4227 | line-height: 32px; | ||
| 4228 | |||
| 4229 | display: inline-block; | ||
| 4230 | |||
| 4231 | width: 58px; | ||
| 4232 | } | ||
| 4233 | .mui-slider-indicator .mui-number span | ||
| 4234 | { | ||
| 4235 | color: #ff5053; | ||
| 4236 | } | ||
| 4237 | |||
| 4238 | .mui-slider-progress-bar | ||
| 4239 | { | ||
| 4240 | z-index: 1; | ||
| 4241 | |||
| 4242 | height: 2px; | ||
| 4243 | |||
| 4244 | -webkit-transform: translateZ(0); | ||
| 4245 | transform: translateZ(0); | ||
| 4246 | } | ||
| 4247 | |||
| 4248 | .mui-switch | ||
| 4249 | { | ||
| 4250 | position: relative; | ||
| 4251 | |||
| 4252 | display: block; | ||
| 4253 | |||
| 4254 | width: 74px; | ||
| 4255 | height: 30px; | ||
| 4256 | |||
| 4257 | -webkit-transition-timing-function: ease-in-out; | ||
| 4258 | transition-timing-function: ease-in-out; | ||
| 4259 | -webkit-transition-duration: .2s; | ||
| 4260 | transition-duration: .2s; | ||
| 4261 | -webkit-transition-property: background-color, border; | ||
| 4262 | transition-property: background-color, border; | ||
| 4263 | |||
| 4264 | border: 2px solid #ddd; | ||
| 4265 | border-radius: 20px; | ||
| 4266 | background-color: #fff; | ||
| 4267 | background-clip: padding-box; | ||
| 4268 | } | ||
| 4269 | .mui-switch.mui-disabled | ||
| 4270 | { | ||
| 4271 | opacity: .3; | ||
| 4272 | } | ||
| 4273 | .mui-switch .mui-switch-handle | ||
| 4274 | { | ||
| 4275 | position: absolute; | ||
| 4276 | z-index: 1; | ||
| 4277 | top: -1px; | ||
| 4278 | left: -1px; | ||
| 4279 | |||
| 4280 | width: 28px; | ||
| 4281 | height: 28px; | ||
| 4282 | |||
| 4283 | -webkit-transition: .2s ease-in-out; | ||
| 4284 | transition: .2s ease-in-out; | ||
| 4285 | -webkit-transition-property: -webkit-transform, width,left; | ||
| 4286 | transition-property: transform, width,left; | ||
| 4287 | |||
| 4288 | border-radius: 16px; | ||
| 4289 | background-color: #fff; | ||
| 4290 | background-clip: padding-box; | ||
| 4291 | -webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, .4); | ||
| 4292 | box-shadow: 0 2px 5px rgba(0, 0, 0, .4); | ||
| 4293 | } | ||
| 4294 | .mui-switch:before | ||
| 4295 | { | ||
| 4296 | font-size: 13px; | ||
| 4297 | |||
| 4298 | position: absolute; | ||
| 4299 | top: 3px; | ||
| 4300 | right: 11px; | ||
| 4301 | |||
| 4302 | content: 'Off'; | ||
| 4303 | text-transform: uppercase; | ||
| 4304 | |||
| 4305 | color: #999; | ||
| 4306 | } | ||
| 4307 | .mui-switch.mui-dragging | ||
| 4308 | { | ||
| 4309 | border-color: #f7f7f7; | ||
| 4310 | background-color: #f7f7f7; | ||
| 4311 | } | ||
| 4312 | .mui-switch.mui-dragging .mui-switch-handle | ||
| 4313 | { | ||
| 4314 | width: 38px; | ||
| 4315 | } | ||
| 4316 | .mui-switch.mui-dragging.mui-active .mui-switch-handle | ||
| 4317 | { | ||
| 4318 | left: -11px; | ||
| 4319 | |||
| 4320 | width: 38px; | ||
| 4321 | } | ||
| 4322 | .mui-switch.mui-active | ||
| 4323 | { | ||
| 4324 | border-color: #4cd964; | ||
| 4325 | background-color: #4cd964; | ||
| 4326 | } | ||
| 4327 | .mui-switch.mui-active .mui-switch-handle | ||
| 4328 | { | ||
| 4329 | -webkit-transform: translate(43px, 0); | ||
| 4330 | transform: translate(43px, 0); | ||
| 4331 | } | ||
| 4332 | .mui-switch.mui-active:before | ||
| 4333 | { | ||
| 4334 | right: auto; | ||
| 4335 | left: 15px; | ||
| 4336 | |||
| 4337 | content: 'On'; | ||
| 4338 | |||
| 4339 | color: #fff; | ||
| 4340 | } | ||
| 4341 | .mui-switch input[type='checkbox'] | ||
| 4342 | { | ||
| 4343 | display: none; | ||
| 4344 | } | ||
| 4345 | |||
| 4346 | .mui-switch-mini | ||
| 4347 | { | ||
| 4348 | width: 47px; | ||
| 4349 | } | ||
| 4350 | .mui-switch-mini:before | ||
| 4351 | { | ||
| 4352 | display: none; | ||
| 4353 | } | ||
| 4354 | .mui-switch-mini.mui-active .mui-switch-handle | ||
| 4355 | { | ||
| 4356 | -webkit-transform: translate(16px, 0); | ||
| 4357 | transform: translate(16px, 0); | ||
| 4358 | } | ||
| 4359 | |||
| 4360 | .mui-switch-blue.mui-active | ||
| 4361 | { | ||
| 4362 | border: 2px solid #007aff; | ||
| 4363 | background-color: #007aff; | ||
| 4364 | } | ||
| 4365 | |||
| 4366 | .mui-content.mui-fade | ||
| 4367 | { | ||
| 4368 | left: 0; | ||
| 4369 | |||
| 4370 | opacity: 0; | ||
| 4371 | } | ||
| 4372 | .mui-content.mui-fade.mui-in | ||
| 4373 | { | ||
| 4374 | opacity: 1; | ||
| 4375 | } | ||
| 4376 | .mui-content.mui-sliding | ||
| 4377 | { | ||
| 4378 | z-index: 2; | ||
| 4379 | |||
| 4380 | -webkit-transition: -webkit-transform .4s; | ||
| 4381 | transition: transform .4s; | ||
| 4382 | -webkit-transform: translate3d(0, 0, 0); | ||
| 4383 | transform: translate3d(0, 0, 0); | ||
| 4384 | } | ||
| 4385 | .mui-content.mui-sliding.mui-left | ||
| 4386 | { | ||
| 4387 | z-index: 1; | ||
| 4388 | |||
| 4389 | -webkit-transform: translate3d(-100%, 0, 0); | ||
| 4390 | transform: translate3d(-100%, 0, 0); | ||
| 4391 | } | ||
| 4392 | .mui-content.mui-sliding.mui-right | ||
| 4393 | { | ||
| 4394 | z-index: 3; | ||
| 4395 | |||
| 4396 | -webkit-transform: translate3d(100%, 0, 0); | ||
| 4397 | transform: translate3d(100%, 0, 0); | ||
| 4398 | } | ||
| 4399 | |||
| 4400 | .mui-navigate-right:after, | ||
| 4401 | .mui-push-left:after, | ||
| 4402 | .mui-push-right:after | ||
| 4403 | { | ||
| 4404 | font-family: Muiicons; | ||
| 4405 | font-size: inherit; | ||
| 4406 | line-height: 1; | ||
| 4407 | |||
| 4408 | position: absolute; | ||
| 4409 | top: 50%; | ||
| 4410 | |||
| 4411 | display: inline-block; | ||
| 4412 | |||
| 4413 | -webkit-transform: translateY(-50%); | ||
| 4414 | transform: translateY(-50%); | ||
| 4415 | text-decoration: none; | ||
| 4416 | |||
| 4417 | color: #bbb; | ||
| 4418 | |||
| 4419 | -webkit-font-smoothing: antialiased; | ||
| 4420 | } | ||
| 4421 | |||
| 4422 | .mui-push-left:after | ||
| 4423 | { | ||
| 4424 | left: 15px; | ||
| 4425 | |||
| 4426 | content: '\e582'; | ||
| 4427 | } | ||
| 4428 | |||
| 4429 | .mui-navigate-right:after, | ||
| 4430 | .mui-push-right:after | ||
| 4431 | { | ||
| 4432 | right: 15px; | ||
| 4433 | |||
| 4434 | content: '\e583'; | ||
| 4435 | } | ||
| 4436 | |||
| 4437 | .mui-pull-top-pocket, .mui-pull-bottom-pocket | ||
| 4438 | { | ||
| 4439 | position: absolute; | ||
| 4440 | left: 0; | ||
| 4441 | |||
| 4442 | display: block; | ||
| 4443 | visibility: hidden; | ||
| 4444 | overflow: hidden; | ||
| 4445 | |||
| 4446 | width: 100%; | ||
| 4447 | height: 50px; | ||
| 4448 | } | ||
| 4449 | |||
| 4450 | .mui-plus-pullrefresh .mui-pull-top-pocket, .mui-plus-pullrefresh .mui-pull-bottom-pocket | ||
| 4451 | { | ||
| 4452 | display: none; | ||
| 4453 | visibility: visible; | ||
| 4454 | } | ||
| 4455 | |||
| 4456 | .mui-pull-top-pocket | ||
| 4457 | { | ||
| 4458 | top: 0; | ||
| 4459 | } | ||
| 4460 | |||
| 4461 | .mui-bar-nav ~ .mui-content .mui-pull-top-pocket | ||
| 4462 | { | ||
| 4463 | top: 44px; | ||
| 4464 | } | ||
| 4465 | |||
| 4466 | .mui-bar-nav ~ .mui-bar-header-secondary ~ .mui-content .mui-pull-top-pocket | ||
| 4467 | { | ||
| 4468 | top: 88px; | ||
| 4469 | } | ||
| 4470 | |||
| 4471 | .mui-pull-bottom-pocket | ||
| 4472 | { | ||
| 4473 | position: relative; | ||
| 4474 | bottom: 0; | ||
| 4475 | |||
| 4476 | height: 40px; | ||
| 4477 | } | ||
| 4478 | .mui-pull-bottom-pocket .mui-pull-loading | ||
| 4479 | { | ||
| 4480 | visibility: hidden; | ||
| 4481 | } | ||
| 4482 | .mui-pull-bottom-pocket .mui-pull-loading.mui-in | ||
| 4483 | { | ||
| 4484 | display: inline-block; | ||
| 4485 | } | ||
| 4486 | |||
| 4487 | .mui-pull | ||
| 4488 | { | ||
| 4489 | font-weight: bold; | ||
| 4490 | |||
| 4491 | position: absolute; | ||
| 4492 | right: 0; | ||
| 4493 | bottom: 10px; | ||
| 4494 | left: 0; | ||
| 4495 | |||
| 4496 | text-align: center; | ||
| 4497 | |||
| 4498 | color: #777; | ||
| 4499 | } | ||
| 4500 | |||
| 4501 | .mui-pull-loading | ||
| 4502 | { | ||
| 4503 | margin-right: 10px; | ||
| 4504 | |||
| 4505 | -webkit-transition: -webkit-transform .4s; | ||
| 4506 | transition: transform .4s; | ||
| 4507 | -webkit-transition-duration: 400ms; | ||
| 4508 | transition-duration: 400ms; | ||
| 4509 | vertical-align: middle; | ||
| 4510 | } | ||
| 4511 | |||
| 4512 | .mui-pull-loading.mui-reverse | ||
| 4513 | { | ||
| 4514 | -webkit-transform: rotate(180deg) translateZ(0); | ||
| 4515 | transform: rotate(180deg) translateZ(0); | ||
| 4516 | } | ||
| 4517 | |||
| 4518 | .mui-pull-caption | ||
| 4519 | { | ||
| 4520 | font-size: 15px; | ||
| 4521 | line-height: 24px; | ||
| 4522 | |||
| 4523 | position: relative; | ||
| 4524 | |||
| 4525 | display: inline-block; | ||
| 4526 | overflow: visible; | ||
| 4527 | |||
| 4528 | margin-top: 0; | ||
| 4529 | |||
| 4530 | vertical-align: middle; | ||
| 4531 | } | ||
| 4532 | .mui-pull-caption span | ||
| 4533 | { | ||
| 4534 | display: none; | ||
| 4535 | } | ||
| 4536 | .mui-pull-caption span.mui-in | ||
| 4537 | { | ||
| 4538 | display: inline; | ||
| 4539 | } | ||
| 4540 | |||
| 4541 | .mui-toast-container | ||
| 4542 | { | ||
| 4543 | position: fixed; | ||
| 4544 | z-index: 9999; | ||
| 4545 | bottom: 50px; | ||
| 4546 | |||
| 4547 | width: 100%; | ||
| 4548 | |||
| 4549 | -webkit-transition: opacity .8s; | ||
| 4550 | transition: opacity .8s; | ||
| 4551 | |||
| 4552 | opacity: 0; | ||
| 4553 | } | ||
| 4554 | .mui-toast-container.mui-active | ||
| 4555 | { | ||
| 4556 | opacity: 1; | ||
| 4557 | } | ||
| 4558 | |||
| 4559 | .mui-toast-message | ||
| 4560 | { | ||
| 4561 | font-size: 14px; | ||
| 4562 | |||
| 4563 | width: 270px; | ||
| 4564 | margin: 5px auto; | ||
| 4565 | padding: 5px; | ||
| 4566 | |||
| 4567 | text-align: center; | ||
| 4568 | |||
| 4569 | color: #000; | ||
| 4570 | border-radius: 7px; | ||
| 4571 | background-color: #d8d8d8; | ||
| 4572 | } | ||
| 4573 | |||
| 4574 | .mui-numbox | ||
| 4575 | { | ||
| 4576 | position: relative; | ||
| 4577 | |||
| 4578 | display: inline-block; | ||
| 4579 | overflow: hidden; | ||
| 4580 | |||
| 4581 | width: 120px; | ||
| 4582 | height: 35px; | ||
| 4583 | padding: 0 40px 0 40px; | ||
| 4584 | |||
| 4585 | vertical-align: top; | ||
| 4586 | vertical-align: middle; | ||
| 4587 | |||
| 4588 | border: solid 1px #bbb; | ||
| 4589 | border-radius: 3px; | ||
| 4590 | background-color: #efeff4; | ||
| 4591 | } | ||
| 4592 | .mui-numbox [class*=numbox-btn], .mui-numbox [class*=btn-numbox] | ||
| 4593 | { | ||
| 4594 | font-size: 18px; | ||
| 4595 | font-weight: normal; | ||
| 4596 | line-height: 100%; | ||
| 4597 | |||
| 4598 | position: absolute; | ||
| 4599 | top: 0; | ||
| 4600 | |||
| 4601 | overflow: hidden; | ||
| 4602 | |||
| 4603 | width: 40px; | ||
| 4604 | height: 100%; | ||
| 4605 | padding: 0; | ||
| 4606 | |||
| 4607 | color: #555; | ||
| 4608 | border: none; | ||
| 4609 | border-radius: 0; | ||
| 4610 | background-color: #f9f9f9; | ||
| 4611 | } | ||
| 4612 | .mui-numbox [class*=numbox-btn]:active, .mui-numbox [class*=btn-numbox]:active | ||
| 4613 | { | ||
| 4614 | background-color: #ccc; | ||
| 4615 | } | ||
| 4616 | .mui-numbox [class*=numbox-btn][disabled], .mui-numbox [class*=btn-numbox][disabled] | ||
| 4617 | { | ||
| 4618 | color: #c0c0c0; | ||
| 4619 | } | ||
| 4620 | .mui-numbox .mui-numbox-btn-plus, .mui-numbox .mui-btn-numbox-plus | ||
| 4621 | { | ||
| 4622 | right: 0; | ||
| 4623 | |||
| 4624 | border-top-right-radius: 3px; | ||
| 4625 | border-bottom-right-radius: 3px; | ||
| 4626 | } | ||
| 4627 | .mui-numbox .mui-numbox-btn-minus, .mui-numbox .mui-btn-numbox-minus | ||
| 4628 | { | ||
| 4629 | left: 0; | ||
| 4630 | |||
| 4631 | border-top-left-radius: 3px; | ||
| 4632 | border-bottom-left-radius: 3px; | ||
| 4633 | } | ||
| 4634 | .mui-numbox .mui-numbox-input, .mui-numbox .mui-input-numbox | ||
| 4635 | { | ||
| 4636 | display: inline-block; | ||
| 4637 | overflow: hidden; | ||
| 4638 | |||
| 4639 | width: 100% !important; | ||
| 4640 | height: 100%; | ||
| 4641 | margin: 0; | ||
| 4642 | padding: 0 3px !important; | ||
| 4643 | |||
| 4644 | text-align: center; | ||
| 4645 | text-overflow: ellipsis; | ||
| 4646 | word-break: normal; | ||
| 4647 | |||
| 4648 | border: none !important; | ||
| 4649 | border-right: solid 1px #ccc !important; | ||
| 4650 | border-left: solid 1px #ccc !important; | ||
| 4651 | border-radius: 0 !important; | ||
| 4652 | } | ||
| 4653 | |||
| 4654 | .mui-input-row .mui-numbox | ||
| 4655 | { | ||
| 4656 | float: right; | ||
| 4657 | |||
| 4658 | margin: 2px 8px; | ||
| 4659 | } | ||
| 4660 | |||
| 4661 | @font-face { | ||
| 4662 | font-family: Muiicons; | ||
| 4663 | font-weight: normal; | ||
| 4664 | font-style: normal; | ||
| 4665 | |||
| 4666 | src: url('../fonts/mui.ttf') format('truetype'); | ||
| 4667 | } | ||
| 4668 | .mui-icon | ||
| 4669 | { | ||
| 4670 | font-family: Muiicons; | ||
| 4671 | font-size: 24px; | ||
| 4672 | font-weight: normal; | ||
| 4673 | font-style: normal; | ||
| 4674 | line-height: 1; | ||
| 4675 | |||
| 4676 | display: inline-block; | ||
| 4677 | |||
| 4678 | text-decoration: none; | ||
| 4679 | |||
| 4680 | -webkit-font-smoothing: antialiased; | ||
| 4681 | } | ||
| 4682 | .mui-icon.mui-active | ||
| 4683 | { | ||
| 4684 | color: #007aff; | ||
| 4685 | } | ||
| 4686 | .mui-icon.mui-right:before | ||
| 4687 | { | ||
| 4688 | float: right; | ||
| 4689 | |||
| 4690 | padding-left: .2em; | ||
| 4691 | } | ||
| 4692 | |||
| 4693 | .mui-icon-contact:before | ||
| 4694 | { | ||
| 4695 | content: '\e100'; | ||
| 4696 | } | ||
| 4697 | |||
| 4698 | .mui-icon-person:before | ||
| 4699 | { | ||
| 4700 | content: '\e101'; | ||
| 4701 | } | ||
| 4702 | |||
| 4703 | .mui-icon-personadd:before | ||
| 4704 | { | ||
| 4705 | content: '\e102'; | ||
| 4706 | } | ||
| 4707 | |||
| 4708 | .mui-icon-contact-filled:before | ||
| 4709 | { | ||
| 4710 | content: '\e130'; | ||
| 4711 | } | ||
| 4712 | |||
| 4713 | .mui-icon-person-filled:before | ||
| 4714 | { | ||
| 4715 | content: '\e131'; | ||
| 4716 | } | ||
| 4717 | |||
| 4718 | .mui-icon-personadd-filled:before | ||
| 4719 | { | ||
| 4720 | content: '\e132'; | ||
| 4721 | } | ||
| 4722 | |||
| 4723 | .mui-icon-phone:before | ||
| 4724 | { | ||
| 4725 | content: '\e200'; | ||
| 4726 | } | ||
| 4727 | |||
| 4728 | .mui-icon-email:before | ||
| 4729 | { | ||
| 4730 | content: '\e201'; | ||
| 4731 | } | ||
| 4732 | |||
| 4733 | .mui-icon-chatbubble:before | ||
| 4734 | { | ||
| 4735 | content: '\e202'; | ||
| 4736 | } | ||
| 4737 | |||
| 4738 | .mui-icon-chatboxes:before | ||
| 4739 | { | ||
| 4740 | content: '\e203'; | ||
| 4741 | } | ||
| 4742 | |||
| 4743 | .mui-icon-phone-filled:before | ||
| 4744 | { | ||
| 4745 | content: '\e230'; | ||
| 4746 | } | ||
| 4747 | |||
| 4748 | .mui-icon-email-filled:before | ||
| 4749 | { | ||
| 4750 | content: '\e231'; | ||
| 4751 | } | ||
| 4752 | |||
| 4753 | .mui-icon-chatbubble-filled:before | ||
| 4754 | { | ||
| 4755 | content: '\e232'; | ||
| 4756 | } | ||
| 4757 | |||
| 4758 | .mui-icon-chatboxes-filled:before | ||
| 4759 | { | ||
| 4760 | content: '\e233'; | ||
| 4761 | } | ||
| 4762 | |||
| 4763 | .mui-icon-weibo:before | ||
| 4764 | { | ||
| 4765 | content: '\e260'; | ||
| 4766 | } | ||
| 4767 | |||
| 4768 | .mui-icon-weixin:before | ||
| 4769 | { | ||
| 4770 | content: '\e261'; | ||
| 4771 | } | ||
| 4772 | |||
| 4773 | .mui-icon-pengyouquan:before | ||
| 4774 | { | ||
| 4775 | content: '\e262'; | ||
| 4776 | } | ||
| 4777 | |||
| 4778 | .mui-icon-chat:before | ||
| 4779 | { | ||
| 4780 | content: '\e263'; | ||
| 4781 | } | ||
| 4782 | |||
| 4783 | .mui-icon-qq:before | ||
| 4784 | { | ||
| 4785 | content: '\e264'; | ||
| 4786 | } | ||
| 4787 | |||
| 4788 | .mui-icon-videocam:before | ||
| 4789 | { | ||
| 4790 | content: '\e300'; | ||
| 4791 | } | ||
| 4792 | |||
| 4793 | .mui-icon-camera:before | ||
| 4794 | { | ||
| 4795 | content: '\e301'; | ||
| 4796 | } | ||
| 4797 | |||
| 4798 | .mui-icon-mic:before | ||
| 4799 | { | ||
| 4800 | content: '\e302'; | ||
| 4801 | } | ||
| 4802 | |||
| 4803 | .mui-icon-location:before | ||
| 4804 | { | ||
| 4805 | content: '\e303'; | ||
| 4806 | } | ||
| 4807 | |||
| 4808 | .mui-icon-mic-filled:before, .mui-icon-speech:before | ||
| 4809 | { | ||
| 4810 | content: '\e332'; | ||
| 4811 | } | ||
| 4812 | |||
| 4813 | .mui-icon-location-filled:before | ||
| 4814 | { | ||
| 4815 | content: '\e333'; | ||
| 4816 | } | ||
| 4817 | |||
| 4818 | .mui-icon-micoff:before | ||
| 4819 | { | ||
| 4820 | content: '\e360'; | ||
| 4821 | } | ||
| 4822 | |||
| 4823 | .mui-icon-image:before | ||
| 4824 | { | ||
| 4825 | content: '\e363'; | ||
| 4826 | } | ||
| 4827 | |||
| 4828 | .mui-icon-map:before | ||
| 4829 | { | ||
| 4830 | content: '\e364'; | ||
| 4831 | } | ||
| 4832 | |||
| 4833 | .mui-icon-compose:before | ||
| 4834 | { | ||
| 4835 | content: '\e400'; | ||
| 4836 | } | ||
| 4837 | |||
| 4838 | .mui-icon-trash:before | ||
| 4839 | { | ||
| 4840 | content: '\e401'; | ||
| 4841 | } | ||
| 4842 | |||
| 4843 | .mui-icon-upload:before | ||
| 4844 | { | ||
| 4845 | content: '\e402'; | ||
| 4846 | } | ||
| 4847 | |||
| 4848 | .mui-icon-download:before | ||
| 4849 | { | ||
| 4850 | content: '\e403'; | ||
| 4851 | } | ||
| 4852 | |||
| 4853 | .mui-icon-close:before | ||
| 4854 | { | ||
| 4855 | content: '\e404'; | ||
| 4856 | } | ||
| 4857 | |||
| 4858 | .mui-icon-redo:before | ||
| 4859 | { | ||
| 4860 | content: '\e405'; | ||
| 4861 | } | ||
| 4862 | |||
| 4863 | .mui-icon-undo:before | ||
| 4864 | { | ||
| 4865 | content: '\e406'; | ||
| 4866 | } | ||
| 4867 | |||
| 4868 | .mui-icon-refresh:before | ||
| 4869 | { | ||
| 4870 | content: '\e407'; | ||
| 4871 | } | ||
| 4872 | |||
| 4873 | .mui-icon-star:before | ||
| 4874 | { | ||
| 4875 | content: '\e408'; | ||
| 4876 | } | ||
| 4877 | |||
| 4878 | .mui-icon-plus:before | ||
| 4879 | { | ||
| 4880 | content: '\e409'; | ||
| 4881 | } | ||
| 4882 | |||
| 4883 | .mui-icon-minus:before | ||
| 4884 | { | ||
| 4885 | content: '\e410'; | ||
| 4886 | } | ||
| 4887 | |||
| 4888 | .mui-icon-circle:before, .mui-icon-checkbox:before | ||
| 4889 | { | ||
| 4890 | content: '\e411'; | ||
| 4891 | } | ||
| 4892 | |||
| 4893 | .mui-icon-close-filled:before, .mui-icon-clear:before | ||
| 4894 | { | ||
| 4895 | content: '\e434'; | ||
| 4896 | } | ||
| 4897 | |||
| 4898 | .mui-icon-refresh-filled:before | ||
| 4899 | { | ||
| 4900 | content: '\e437'; | ||
| 4901 | } | ||
| 4902 | |||
| 4903 | .mui-icon-star-filled:before | ||
| 4904 | { | ||
| 4905 | content: '\e438'; | ||
| 4906 | } | ||
| 4907 | |||
| 4908 | .mui-icon-plus-filled:before | ||
| 4909 | { | ||
| 4910 | content: '\e439'; | ||
| 4911 | } | ||
| 4912 | |||
| 4913 | .mui-icon-minus-filled:before | ||
| 4914 | { | ||
| 4915 | content: '\e440'; | ||
| 4916 | } | ||
| 4917 | |||
| 4918 | .mui-icon-circle-filled:before | ||
| 4919 | { | ||
| 4920 | content: '\e441'; | ||
| 4921 | } | ||
| 4922 | |||
| 4923 | .mui-icon-checkbox-filled:before | ||
| 4924 | { | ||
| 4925 | content: '\e442'; | ||
| 4926 | } | ||
| 4927 | |||
| 4928 | .mui-icon-closeempty:before | ||
| 4929 | { | ||
| 4930 | content: '\e460'; | ||
| 4931 | } | ||
| 4932 | |||
| 4933 | .mui-icon-refreshempty:before | ||
| 4934 | { | ||
| 4935 | content: '\e461'; | ||
| 4936 | } | ||
| 4937 | |||
| 4938 | .mui-icon-reload:before | ||
| 4939 | { | ||
| 4940 | content: '\e462'; | ||
| 4941 | } | ||
| 4942 | |||
| 4943 | .mui-icon-starhalf:before | ||
| 4944 | { | ||
| 4945 | content: '\e463'; | ||
| 4946 | } | ||
| 4947 | |||
| 4948 | .mui-icon-spinner:before | ||
| 4949 | { | ||
| 4950 | content: '\e464'; | ||
| 4951 | } | ||
| 4952 | |||
| 4953 | .mui-icon-spinner-cycle:before | ||
| 4954 | { | ||
| 4955 | content: '\e465'; | ||
| 4956 | } | ||
| 4957 | |||
| 4958 | .mui-icon-search:before | ||
| 4959 | { | ||
| 4960 | content: '\e466'; | ||
| 4961 | } | ||
| 4962 | |||
| 4963 | .mui-icon-plusempty:before | ||
| 4964 | { | ||
| 4965 | content: '\e468'; | ||
| 4966 | } | ||
| 4967 | |||
| 4968 | .mui-icon-forward:before | ||
| 4969 | { | ||
| 4970 | content: '\e470'; | ||
| 4971 | } | ||
| 4972 | |||
| 4973 | .mui-icon-back:before, .mui-icon-left-nav:before | ||
| 4974 | { | ||
| 4975 | content: '\e471'; | ||
| 4976 | } | ||
| 4977 | |||
| 4978 | .mui-icon-checkmarkempty:before | ||
| 4979 | { | ||
| 4980 | content: '\e472'; | ||
| 4981 | } | ||
| 4982 | |||
| 4983 | .mui-icon-home:before | ||
| 4984 | { | ||
| 4985 | content: '\e500'; | ||
| 4986 | } | ||
| 4987 | |||
| 4988 | .mui-icon-navigate:before | ||
| 4989 | { | ||
| 4990 | content: '\e501'; | ||
| 4991 | } | ||
| 4992 | |||
| 4993 | .mui-icon-gear:before | ||
| 4994 | { | ||
| 4995 | content: '\e502'; | ||
| 4996 | } | ||
| 4997 | |||
| 4998 | .mui-icon-paperplane:before | ||
| 4999 | { | ||
| 5000 | content: '\e503'; | ||
| 5001 | } | ||
| 5002 | |||
| 5003 | .mui-icon-info:before | ||
| 5004 | { | ||
| 5005 | content: '\e504'; | ||
| 5006 | } | ||
| 5007 | |||
| 5008 | .mui-icon-help:before | ||
| 5009 | { | ||
| 5010 | content: '\e505'; | ||
| 5011 | } | ||
| 5012 | |||
| 5013 | .mui-icon-locked:before | ||
| 5014 | { | ||
| 5015 | content: '\e506'; | ||
| 5016 | } | ||
| 5017 | |||
| 5018 | .mui-icon-more:before | ||
| 5019 | { | ||
| 5020 | content: '\e507'; | ||
| 5021 | } | ||
| 5022 | |||
| 5023 | .mui-icon-flag:before | ||
| 5024 | { | ||
| 5025 | content: '\e508'; | ||
| 5026 | } | ||
| 5027 | |||
| 5028 | .mui-icon-home-filled:before | ||
| 5029 | { | ||
| 5030 | content: '\e530'; | ||
| 5031 | } | ||
| 5032 | |||
| 5033 | .mui-icon-gear-filled:before | ||
| 5034 | { | ||
| 5035 | content: '\e532'; | ||
| 5036 | } | ||
| 5037 | |||
| 5038 | .mui-icon-info-filled:before | ||
| 5039 | { | ||
| 5040 | content: '\e534'; | ||
| 5041 | } | ||
| 5042 | |||
| 5043 | .mui-icon-help-filled:before | ||
| 5044 | { | ||
| 5045 | content: '\e535'; | ||
| 5046 | } | ||
| 5047 | |||
| 5048 | .mui-icon-more-filled:before | ||
| 5049 | { | ||
| 5050 | content: '\e537'; | ||
| 5051 | } | ||
| 5052 | |||
| 5053 | .mui-icon-settings:before | ||
| 5054 | { | ||
| 5055 | content: '\e560'; | ||
| 5056 | } | ||
| 5057 | |||
| 5058 | .mui-icon-list:before | ||
| 5059 | { | ||
| 5060 | content: '\e562'; | ||
| 5061 | } | ||
| 5062 | |||
| 5063 | .mui-icon-bars:before | ||
| 5064 | { | ||
| 5065 | content: '\e563'; | ||
| 5066 | } | ||
| 5067 | |||
| 5068 | .mui-icon-loop:before | ||
| 5069 | { | ||
| 5070 | content: '\e565'; | ||
| 5071 | } | ||
| 5072 | |||
| 5073 | .mui-icon-paperclip:before | ||
| 5074 | { | ||
| 5075 | content: '\e567'; | ||
| 5076 | } | ||
| 5077 | |||
| 5078 | .mui-icon-eye:before | ||
| 5079 | { | ||
| 5080 | content: '\e568'; | ||
| 5081 | } | ||
| 5082 | |||
| 5083 | .mui-icon-arrowup:before | ||
| 5084 | { | ||
| 5085 | content: '\e580'; | ||
| 5086 | } | ||
| 5087 | |||
| 5088 | .mui-icon-arrowdown:before | ||
| 5089 | { | ||
| 5090 | content: '\e581'; | ||
| 5091 | } | ||
| 5092 | |||
| 5093 | .mui-icon-arrowleft:before | ||
| 5094 | { | ||
| 5095 | content: '\e582'; | ||
| 5096 | } | ||
| 5097 | |||
| 5098 | .mui-icon-arrowright:before | ||
| 5099 | { | ||
| 5100 | content: '\e583'; | ||
| 5101 | } | ||
| 5102 | |||
| 5103 | .mui-icon-arrowthinup:before | ||
| 5104 | { | ||
| 5105 | content: '\e584'; | ||
| 5106 | } | ||
| 5107 | |||
| 5108 | .mui-icon-arrowthindown:before | ||
| 5109 | { | ||
| 5110 | content: '\e585'; | ||
| 5111 | } | ||
| 5112 | |||
| 5113 | .mui-icon-arrowthinleft:before | ||
| 5114 | { | ||
| 5115 | content: '\e586'; | ||
| 5116 | } | ||
| 5117 | |||
| 5118 | .mui-icon-arrowthinright:before | ||
| 5119 | { | ||
| 5120 | content: '\e587'; | ||
| 5121 | } | ||
| 5122 | |||
| 5123 | .mui-icon-pulldown:before | ||
| 5124 | { | ||
| 5125 | content: '\e588'; | ||
| 5126 | } | ||
| 5127 | |||
| 5128 | .mui-fullscreen | ||
| 5129 | { | ||
| 5130 | position: absolute; | ||
| 5131 | top: 0; | ||
| 5132 | right: 0; | ||
| 5133 | bottom: 0; | ||
| 5134 | left: 0; | ||
| 5135 | |||
| 5136 | width: 100%; | ||
| 5137 | height: 100%; | ||
| 5138 | } | ||
| 5139 | .mui-fullscreen.mui-slider .mui-slider-group | ||
| 5140 | { | ||
| 5141 | height: 100%; | ||
| 5142 | } | ||
| 5143 | .mui-fullscreen .mui-segmented-control ~ .mui-slider-group | ||
| 5144 | { | ||
| 5145 | position: absolute; | ||
| 5146 | top: 40px; | ||
| 5147 | bottom: 0; | ||
| 5148 | |||
| 5149 | width: 100%; | ||
| 5150 | height: auto; | ||
| 5151 | } | ||
| 5152 | .mui-fullscreen.mui-slider .mui-slider-item > a | ||
| 5153 | { | ||
| 5154 | top: 50%; | ||
| 5155 | |||
| 5156 | -webkit-transform: translateY(-50%); | ||
| 5157 | transform: translateY(-50%); | ||
| 5158 | } | ||
| 5159 | .mui-fullscreen .mui-off-canvas-wrap .mui-slider-item > a | ||
| 5160 | { | ||
| 5161 | top: auto; | ||
| 5162 | |||
| 5163 | -webkit-transform: none; | ||
| 5164 | transform: none; | ||
| 5165 | } | ||
| 5166 | |||
| 5167 | .mui-bar-tab ~ .mui-content .mui-slider.mui-fullscreen .mui-segmented-control ~ .mui-slider-group | ||
| 5168 | { | ||
| 5169 | bottom: 50px; | ||
| 5170 | } | ||
| 5171 | |||
| 5172 | .mui-android.mui-android-4-0 input:focus, | ||
| 5173 | .mui-android.mui-android-4-0 textarea:focus | ||
| 5174 | { | ||
| 5175 | -webkit-user-modify: inherit; | ||
| 5176 | } | ||
| 5177 | |||
| 5178 | .mui-android.mui-android-4-2 input, | ||
| 5179 | .mui-android.mui-android-4-2 textarea, .mui-android.mui-android-4-3 input, | ||
| 5180 | .mui-android.mui-android-4-3 textarea | ||
| 5181 | { | ||
| 5182 | -webkit-user-select: text; | ||
| 5183 | } | ||
| 5184 | |||
| 5185 | .mui-ios .mui-table-view-cell | ||
| 5186 | { | ||
| 5187 | -webkit-transform-style: preserve-3d; | ||
| 5188 | transform-style: preserve-3d; | ||
| 5189 | } | ||
| 5190 | |||
| 5191 | .mui-plus-visible, .mui-wechat-visible | ||
| 5192 | { | ||
| 5193 | display: none !important; | ||
| 5194 | } | ||
| 5195 | |||
| 5196 | .mui-plus-hidden, .mui-wechat-hidden | ||
| 5197 | { | ||
| 5198 | display: block !important; | ||
| 5199 | } | ||
| 5200 | |||
| 5201 | .mui-tab-item.mui-plus-hidden, .mui-tab-item.mui-wechat-hidden | ||
| 5202 | { | ||
| 5203 | display: table-cell !important; | ||
| 5204 | } | ||
| 5205 | |||
| 5206 | .mui-plus .mui-plus-visible, .mui-wechat .mui-wechat-visible | ||
| 5207 | { | ||
| 5208 | display: block !important; | ||
| 5209 | } | ||
| 5210 | |||
| 5211 | .mui-plus .mui-tab-item.mui-plus-visible, .mui-wechat .mui-tab-item.mui-wechat-visible | ||
| 5212 | { | ||
| 5213 | display: table-cell !important; | ||
| 5214 | } | ||
| 5215 | |||
| 5216 | .mui-plus .mui-plus-hidden, .mui-wechat .mui-wechat-hidden | ||
| 5217 | { | ||
| 5218 | display: none !important; | ||
| 5219 | } | ||
| 5220 | |||
| 5221 | .mui-plus.mui-statusbar.mui-statusbar-offset .mui-bar-nav | ||
| 5222 | { | ||
| 5223 | height: 64px; | ||
| 5224 | padding-top: 20px; | ||
| 5225 | } | ||
| 5226 | .mui-plus.mui-statusbar.mui-statusbar-offset .mui-bar-nav ~ .mui-content | ||
| 5227 | { | ||
| 5228 | padding-top: 64px; | ||
| 5229 | } | ||
| 5230 | .mui-plus.mui-statusbar.mui-statusbar-offset .mui-bar-nav ~ .mui-content .mui-pull-top-pocket | ||
| 5231 | { | ||
| 5232 | top: 64px; | ||
| 5233 | } | ||
| 5234 | .mui-plus.mui-statusbar.mui-statusbar-offset .mui-bar-header-secondary | ||
| 5235 | { | ||
| 5236 | top: 64px; | ||
| 5237 | } | ||
| 5238 | .mui-plus.mui-statusbar.mui-statusbar-offset .mui-bar-header-secondary ~ .mui-content | ||
| 5239 | { | ||
| 5240 | padding-top: 94px; | ||
| 5241 | } | ||
| 5242 | |||
| 5243 | .mui-iframe-wrapper | ||
| 5244 | { | ||
| 5245 | position: absolute; | ||
| 5246 | right: 0; | ||
| 5247 | left: 0; | ||
| 5248 | |||
| 5249 | -webkit-overflow-scrolling: touch; | ||
| 5250 | } | ||
| 5251 | .mui-iframe-wrapper iframe | ||
| 5252 | { | ||
| 5253 | width: 100%; | ||
| 5254 | height: 100%; | ||
| 5255 | |||
| 5256 | border: 0; | ||
| 5257 | } |
css/mui.min.css
0 → 100644
| 1 | /*! | ||
| 2 | * ===================================================== | ||
| 3 | * Mui v2.8.0 (http://dev.dcloud.net.cn/mui) | ||
| 4 | * ===================================================== | ||
| 5 | *//*! normalize.css v3.0.1 | MIT License | git.io/normalize */html{font-family:sans-serif;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background:0 0}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{margin:.67em 0}mark{color:#000;background:#ff0}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{font:inherit;margin:0;color:inherit}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{cursor:pointer;-webkit-appearance:button}button[disabled],html input[disabled]{cursor:default}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{margin:0 2px;padding:.35em .625em .75em;border:1px solid silver}legend{padding:0;border:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-spacing:0;border-collapse:collapse}td,th{padding:0}*{-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-user-select:none;outline:0;-webkit-tap-highlight-color:transparent;-webkit-tap-highlight-color:transparent}body{font-family:'Helvetica Neue',Helvetica,sans-serif;font-size:17px;line-height:21px;color:#000;background-color:#efeff4;-webkit-overflow-scrolling:touch}a{text-decoration:none;color:#007aff}a:active{color:#0062cc}.mui-content{background-color:#efeff4;-webkit-overflow-scrolling:touch}.mui-bar-nav~.mui-content{padding-top:44px}.mui-bar-nav~.mui-content.mui-scroll-wrapper .mui-scrollbar-vertical{top:44px}.mui-bar-header-secondary~.mui-content{padding-top:88px}.mui-bar-header-secondary~.mui-content.mui-scroll-wrapper .mui-scrollbar-vertical{top:88px}.mui-bar-footer~.mui-content{padding-bottom:44px}.mui-bar-footer~.mui-content.mui-scroll-wrapper .mui-scrollbar-vertical{bottom:44px}.mui-bar-footer-secondary~.mui-content{padding-bottom:88px}.mui-bar-footer-secondary~.mui-content.mui-scroll-wrapper .mui-scrollbar-vertical{bottom:88px}.mui-bar-tab~.mui-content{padding-bottom:50px}.mui-bar-tab~.mui-content.mui-scroll-wrapper .mui-scrollbar-vertical{bottom:50px}.mui-bar-footer-secondary-tab~.mui-content{padding-bottom:94px}.mui-bar-footer-secondary-tab~.mui-content.mui-scroll-wrapper .mui-scrollbar-vertical{bottom:94px}.mui-content-padded{margin:10px}.mui-inline{display:inline-block;vertical-align:top}.mui-block{display:block!important}.mui-visibility{visibility:visible!important}.mui-hidden{display:none!important}.mui-ellipsis{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.mui-ellipsis-2{display:-webkit-box;overflow:hidden;white-space:normal!important;text-overflow:ellipsis;word-wrap:break-word;-webkit-line-clamp:2;-webkit-box-orient:vertical}.mui-table{display:table;width:100%;table-layout:fixed}.mui-table-cell{position:relative;display:table-cell}.mui-text-left{text-align:left!important}.mui-text-center{text-align:center!important}.mui-text-justify{text-align:justify!important}.mui-text-right{text-align:right!important}.mui-pull-left{float:left}.mui-pull-right{float:right}.mui-list-unstyled{padding-left:0;list-style:none}.mui-list-inline{margin-left:-5px;padding-left:0;list-style:none}.mui-list-inline>li{display:inline-block;padding-right:5px;padding-left:5px}.mui-clearfix:after,.mui-clearfix:before{display:table;content:' '}.mui-clearfix:after{clear:both}.mui-bg-primary{background-color:#007aff}.mui-bg-positive{background-color:#4cd964}.mui-bg-negative{background-color:#dd524d}.mui-error{margin:88px 35px;padding:10px;border-radius:6px;background-color:#bbb}.mui-subtitle{font-size:15px}h1,h2,h3,h4,h5,h6{line-height:1;margin-top:5px;margin-bottom:5px}.mui-h1,h1{font-size:36px}.mui-h2,h2{font-size:30px}.mui-h3,h3{font-size:24px}.mui-h4,h4{font-size:18px}.mui-h5,h5{font-size:14px;font-weight:400;color:#8f8f94}.mui-h6,h6{font-size:12px;font-weight:400;color:#8f8f94}p{font-size:14px;margin-top:0;margin-bottom:10px;color:#8f8f94}.mui-row:after,.mui-row:before{display:table;content:' '}.mui-row:after{clear:both}.mui-col-sm-1,.mui-col-sm-10,.mui-col-sm-11,.mui-col-sm-12,.mui-col-sm-2,.mui-col-sm-3,.mui-col-sm-4,.mui-col-sm-5,.mui-col-sm-6,.mui-col-sm-7,.mui-col-sm-8,.mui-col-sm-9,.mui-col-xs-1,.mui-col-xs-10,.mui-col-xs-11,.mui-col-xs-12,.mui-col-xs-2,.mui-col-xs-3,.mui-col-xs-4,.mui-col-xs-5,.mui-col-xs-6,.mui-col-xs-7,.mui-col-xs-8,.mui-col-xs-9{position:relative;min-height:1px}.mui-row>[class*=mui-col-]{float:left}.mui-col-xs-12{width:100%}.mui-col-xs-11{width:91.66666667%}.mui-col-xs-10{width:83.33333333%}.mui-col-xs-9{width:75%}.mui-col-xs-8{width:66.66666667%}.mui-col-xs-7{width:58.33333333%}.mui-col-xs-6{width:50%}.mui-col-xs-5{width:41.66666667%}.mui-col-xs-4{width:33.33333333%}.mui-col-xs-3{width:25%}.mui-col-xs-2{width:16.66666667%}.mui-col-xs-1{width:8.33333333%}@media (min-width:400px){.mui-col-sm-12{width:100%}.mui-col-sm-11{width:91.66666667%}.mui-col-sm-10{width:83.33333333%}.mui-col-sm-9{width:75%}.mui-col-sm-8{width:66.66666667%}.mui-col-sm-7{width:58.33333333%}.mui-col-sm-6{width:50%}.mui-col-sm-5{width:41.66666667%}.mui-col-sm-4{width:33.33333333%}.mui-col-sm-3{width:25%}.mui-col-sm-2{width:16.66666667%}.mui-col-sm-1{width:8.33333333%}}.mui-scroll-wrapper{position:absolute;z-index:2;top:0;bottom:0;left:0;overflow:hidden;width:100%}.mui-scroll{position:absolute;z-index:1;width:100%;-webkit-transform:translateZ(0);transform:translateZ(0)}.mui-scrollbar{position:absolute;z-index:9998;overflow:hidden;-webkit-transition:500ms;transition:500ms;transform:translateZ(0px);pointer-events:none;opacity:0}.mui-scrollbar-vertical{top:0;right:1px;bottom:2px;width:4px}.mui-scrollbar-vertical .mui-scrollbar-indicator{width:100%}.mui-scrollbar-horizontal{right:2px;bottom:0;left:2px;height:4px}.mui-scrollbar-horizontal .mui-scrollbar-indicator{height:100%}.mui-scrollbar-indicator{position:absolute;display:block;box-sizing:border-box;-webkit-transition:.01s cubic-bezier(.1,.57,.1,1);transition:.01s cubic-bezier(.1,.57,.1,1);transform:translate(0px,0) translateZ(0px);border:1px solid rgba(255,255,255,.80196);border-radius:2px;background:rgba(0,0,0,.39804)}.mui-plus-pullrefresh .mui-fullscreen .mui-scroll-wrapper .mui-scroll-wrapper,.mui-plus-pullrefresh .mui-fullscreen .mui-slider-group .mui-scroll-wrapper{position:absolute;top:0;bottom:0;left:0;overflow:hidden;width:100%}.mui-plus-pullrefresh .mui-fullscreen .mui-scroll-wrapper .mui-scroll,.mui-plus-pullrefresh .mui-fullscreen .mui-slider-group .mui-scroll{position:absolute;width:100%}.mui-plus-pullrefresh .mui-scroll-wrapper,.mui-plus-pullrefresh .mui-slider-group{position:static;top:auto;bottom:auto;left:auto;overflow:auto;width:auto}.mui-plus-pullrefresh .mui-slider-group{overflow:visible}.mui-plus-pullrefresh .mui-scroll{position:static;width:auto}.mui-off-canvas-wrap .mui-bar{position:absolute!important;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);-webkit-box-shadow:none;box-shadow:none}.mui-off-canvas-wrap{position:relative;z-index:1;overflow:hidden;width:100%;height:100%}.mui-off-canvas-wrap .mui-inner-wrap{position:relative;z-index:1;width:100%;height:100%}.mui-off-canvas-wrap .mui-inner-wrap.mui-transitioning{-webkit-transition:-webkit-transform 350ms;transition:transform 350ms cubic-bezier(.165,.84,.44,1)}.mui-off-canvas-wrap .mui-inner-wrap .mui-off-canvas-left{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}.mui-off-canvas-wrap .mui-inner-wrap .mui-off-canvas-right{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}.mui-off-canvas-wrap.mui-active{overflow:hidden;height:100%}.mui-off-canvas-wrap.mui-active .mui-off-canvas-backdrop{position:absolute;z-index:998;top:0;right:0;bottom:0;left:0;display:block;transition:background 350ms cubic-bezier(.165,.84,.44,1);background:rgba(0,0,0,.4);box-shadow:-4px 0 4px rgba(0,0,0,.5),4px 0 4px rgba(0,0,0,.5);-webkit-tap-highlight-color:transparent}.mui-off-canvas-wrap.mui-slide-in .mui-off-canvas-right{z-index:10000!important;-webkit-transform:translate3d(100%,0,0)}.mui-off-canvas-wrap.mui-slide-in .mui-off-canvas-left{z-index:10000!important;-webkit-transform:translate3d(-100%,0,0)}.mui-off-canvas-left,.mui-off-canvas-right{position:absolute;z-index:-1;top:0;bottom:0;visibility:hidden;box-sizing:content-box;width:70%;min-height:100%;background:#333;-webkit-overflow-scrolling:touch}.mui-off-canvas-left.mui-transitioning,.mui-off-canvas-right.mui-transitioning{-webkit-transition:-webkit-transform 350ms cubic-bezier(.165,.84,.44,1);transition:transform 350ms cubic-bezier(.165,.84,.44,1)}.mui-off-canvas-left{left:0}.mui-off-canvas-right{right:0}.mui-off-canvas-wrap:not(.mui-slide-in).mui-scalable{background-color:#333}.mui-off-canvas-wrap:not(.mui-slide-in).mui-scalable>.mui-off-canvas-left,.mui-off-canvas-wrap:not(.mui-slide-in).mui-scalable>.mui-off-canvas-right{width:80%;-webkit-transform:scale(.8);transform:scale(.8);opacity:.1}.mui-off-canvas-wrap:not(.mui-slide-in).mui-scalable>.mui-off-canvas-left.mui-transitioning,.mui-off-canvas-wrap:not(.mui-slide-in).mui-scalable>.mui-off-canvas-right.mui-transitioning{-webkit-transition:-webkit-transform 350ms cubic-bezier(.165,.84,.44,1),opacity 350ms cubic-bezier(.165,.84,.44,1);transition:transform 350ms cubic-bezier(.165,.84,.44,1),opacity 350ms cubic-bezier(.165,.84,.44,1)}.mui-off-canvas-wrap:not(.mui-slide-in).mui-scalable>.mui-off-canvas-left{-webkit-transform-origin:-100%;transform-origin:-100%}.mui-off-canvas-wrap:not(.mui-slide-in).mui-scalable>.mui-off-canvas-right{-webkit-transform-origin:200%;transform-origin:200%}.mui-off-canvas-wrap:not(.mui-slide-in).mui-scalable.mui-active>.mui-inner-wrap{-webkit-transform:scale(.8);transform:scale(.8)}.mui-off-canvas-wrap:not(.mui-slide-in).mui-scalable.mui-active>.mui-off-canvas-left,.mui-off-canvas-wrap:not(.mui-slide-in).mui-scalable.mui-active>.mui-off-canvas-right{-webkit-transform:scale(1);transform:scale(1);opacity:1}.mui-loading .mui-spinner{display:block;margin:0 auto}.mui-spinner{display:inline-block;width:24px;height:24px;-webkit-transform-origin:50%;transform-origin:50%;-webkit-animation:spinner-spin 1s step-end infinite;animation:spinner-spin 1s step-end infinite}.mui-spinner:after{display:block;width:100%;height:100%;content:'';background-image:url('data:image/svg+xml;charset=utf-8,<svg viewBox=\'0 0 120 120\' xmlns=\'http://www.w3.org/2000/svg\' xmlns:xlink=\'http://www.w3.org/1999/xlink\'><defs><line id=\'l\' x1=\'60\' x2=\'60\' y1=\'7\' y2=\'27\' stroke=\'%236c6c6c\' stroke-width=\'11\' stroke-linecap=\'round\'/></defs><g><use xlink:href=\'%23l\' opacity=\'.27\'/><use xlink:href=\'%23l\' opacity=\'.27\' transform=\'rotate(30 60,60)\'/><use xlink:href=\'%23l\' opacity=\'.27\' transform=\'rotate(60 60,60)\'/><use xlink:href=\'%23l\' opacity=\'.27\' transform=\'rotate(90 60,60)\'/><use xlink:href=\'%23l\' opacity=\'.27\' transform=\'rotate(120 60,60)\'/><use xlink:href=\'%23l\' opacity=\'.27\' transform=\'rotate(150 60,60)\'/><use xlink:href=\'%23l\' opacity=\'.37\' transform=\'rotate(180 60,60)\'/><use xlink:href=\'%23l\' opacity=\'.46\' transform=\'rotate(210 60,60)\'/><use xlink:href=\'%23l\' opacity=\'.56\' transform=\'rotate(240 60,60)\'/><use xlink:href=\'%23l\' opacity=\'.66\' transform=\'rotate(270 60,60)\'/><use xlink:href=\'%23l\' opacity=\'.75\' transform=\'rotate(300 60,60)\'/><use xlink:href=\'%23l\' opacity=\'.85\' transform=\'rotate(330 60,60)\'/></g></svg>');background-repeat:no-repeat;background-position:50%;background-size:100%}.mui-spinner-white:after{background-image:url('data:image/svg+xml;charset=utf-8,<svg viewBox=\'0 0 120 120\' xmlns=\'http://www.w3.org/2000/svg\' xmlns:xlink=\'http://www.w3.org/1999/xlink\'><defs><line id=\'l\' x1=\'60\' x2=\'60\' y1=\'7\' y2=\'27\' stroke=\'%23fff\' stroke-width=\'11\' stroke-linecap=\'round\'/></defs><g><use xlink:href=\'%23l\' opacity=\'.27\'/><use xlink:href=\'%23l\' opacity=\'.27\' transform=\'rotate(30 60,60)\'/><use xlink:href=\'%23l\' opacity=\'.27\' transform=\'rotate(60 60,60)\'/><use xlink:href=\'%23l\' opacity=\'.27\' transform=\'rotate(90 60,60)\'/><use xlink:href=\'%23l\' opacity=\'.27\' transform=\'rotate(120 60,60)\'/><use xlink:href=\'%23l\' opacity=\'.27\' transform=\'rotate(150 60,60)\'/><use xlink:href=\'%23l\' opacity=\'.37\' transform=\'rotate(180 60,60)\'/><use xlink:href=\'%23l\' opacity=\'.46\' transform=\'rotate(210 60,60)\'/><use xlink:href=\'%23l\' opacity=\'.56\' transform=\'rotate(240 60,60)\'/><use xlink:href=\'%23l\' opacity=\'.66\' transform=\'rotate(270 60,60)\'/><use xlink:href=\'%23l\' opacity=\'.75\' transform=\'rotate(300 60,60)\'/><use xlink:href=\'%23l\' opacity=\'.85\' transform=\'rotate(330 60,60)\'/></g></svg>')}@-webkit-keyframes spinner-spin{0%{-webkit-transform:rotate(0deg)}8.33333333%{-webkit-transform:rotate(30deg)}16.66666667%{-webkit-transform:rotate(60deg)}25%{-webkit-transform:rotate(90deg)}33.33333333%{-webkit-transform:rotate(120deg)}41.66666667%{-webkit-transform:rotate(150deg)}50%{-webkit-transform:rotate(180deg)}58.33333333%{-webkit-transform:rotate(210deg)}66.66666667%{-webkit-transform:rotate(240deg)}75%{-webkit-transform:rotate(270deg)}83.33333333%{-webkit-transform:rotate(300deg)}91.66666667%{-webkit-transform:rotate(330deg)}100%{-webkit-transform:rotate(360deg)}}@keyframes spinner-spin{0%{transform:rotate(0deg)}8.33333333%{transform:rotate(30deg)}16.66666667%{transform:rotate(60deg)}25%{transform:rotate(90deg)}33.33333333%{transform:rotate(120deg)}41.66666667%{transform:rotate(150deg)}50%{transform:rotate(180deg)}58.33333333%{transform:rotate(210deg)}66.66666667%{transform:rotate(240deg)}75%{transform:rotate(270deg)}83.33333333%{transform:rotate(300deg)}91.66666667%{transform:rotate(330deg)}100%{transform:rotate(360deg)}}.mui-btn,button,input[type=button],input[type=reset],input[type=submit]{font-size:14px;font-weight:400;line-height:1.42;position:relative;display:inline-block;margin-bottom:0;padding:6px 12px;cursor:pointer;-webkit-transition:all;transition:all;-webkit-transition-timing-function:linear;transition-timing-function:linear;-webkit-transition-duration:.2s;transition-duration:.2s;text-align:center;vertical-align:top;white-space:nowrap;color:#333;border:1px solid #ccc;border-radius:3px;border-top-left-radius:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px;background-color:#fff;background-clip:padding-box}.mui-btn.mui-active:enabled,.mui-btn:enabled:active,button.mui-active:enabled,button:enabled:active,input[type=button].mui-active:enabled,input[type=button]:enabled:active,input[type=reset].mui-active:enabled,input[type=reset]:enabled:active,input[type=submit].mui-active:enabled,input[type=submit]:enabled:active{color:#fff;background-color:#929292}.mui-btn.mui-disabled,.mui-btn:disabled,button.mui-disabled,button:disabled,input[type=button].mui-disabled,input[type=button]:disabled,input[type=reset].mui-disabled,input[type=reset]:disabled,input[type=submit].mui-disabled,input[type=submit]:disabled{opacity:.6}.mui-btn-blue,.mui-btn-primary,input[type=submit]{color:#fff;border:1px solid #007aff;background-color:#007aff}.mui-btn-blue.mui-active:enabled,.mui-btn-blue:enabled:active,.mui-btn-primary.mui-active:enabled,.mui-btn-primary:enabled:active,input[type=submit].mui-active:enabled,input[type=submit]:enabled:active{color:#fff;border:1px solid #0062cc;background-color:#0062cc}.mui-btn-green,.mui-btn-positive,.mui-btn-success{color:#fff;border:1px solid #4cd964;background-color:#4cd964}.mui-btn-green.mui-active:enabled,.mui-btn-green:enabled:active,.mui-btn-positive.mui-active:enabled,.mui-btn-positive:enabled:active,.mui-btn-success.mui-active:enabled,.mui-btn-success:enabled:active{color:#fff;border:1px solid #2ac845;background-color:#2ac845}.mui-btn-warning,.mui-btn-yellow{color:#fff;border:1px solid #f0ad4e;background-color:#f0ad4e}.mui-btn-warning.mui-active:enabled,.mui-btn-warning:enabled:active,.mui-btn-yellow.mui-active:enabled,.mui-btn-yellow:enabled:active{color:#fff;border:1px solid #ec971f;background-color:#ec971f}.mui-btn-danger,.mui-btn-negative,.mui-btn-red{color:#fff;border:1px solid #dd524d;background-color:#dd524d}.mui-btn-danger.mui-active:enabled,.mui-btn-danger:enabled:active,.mui-btn-negative.mui-active:enabled,.mui-btn-negative:enabled:active,.mui-btn-red.mui-active:enabled,.mui-btn-red:enabled:active{color:#fff;border:1px solid #cf2d28;background-color:#cf2d28}.mui-btn-purple,.mui-btn-royal{color:#fff;border:1px solid #8a6de9;background-color:#8a6de9}.mui-btn-purple.mui-active:enabled,.mui-btn-purple:enabled:active,.mui-btn-royal.mui-active:enabled,.mui-btn-royal:enabled:active{color:#fff;border:1px solid #6641e2;background-color:#6641e2}.mui-btn-grey{color:#fff;border:1px solid #c7c7cc;background-color:#c7c7cc}.mui-btn-grey.mui-active:enabled,.mui-btn-grey:enabled:active{color:#fff;border:1px solid #acacb4;background-color:#acacb4}.mui-btn-outlined{background-color:transparent}.mui-btn-outlined.mui-btn-blue,.mui-btn-outlined.mui-btn-primary{color:#007aff}.mui-btn-outlined.mui-btn-green,.mui-btn-outlined.mui-btn-positive,.mui-btn-outlined.mui-btn-success{color:#4cd964}.mui-btn-outlined.mui-btn-warning,.mui-btn-outlined.mui-btn-yellow{color:#f0ad4e}.mui-btn-outlined.mui-btn-danger,.mui-btn-outlined.mui-btn-negative,.mui-btn-outlined.mui-btn-red{color:#dd524d}.mui-btn-outlined.mui-btn-purple,.mui-btn-outlined.mui-btn-royal{color:#8a6de9}.mui-btn-outlined.mui-btn-blue:enabled:active,.mui-btn-outlined.mui-btn-danger:enabled:active,.mui-btn-outlined.mui-btn-green:enabled:active,.mui-btn-outlined.mui-btn-negative:enabled:active,.mui-btn-outlined.mui-btn-positive:enabled:active,.mui-btn-outlined.mui-btn-primary:enabled:active,.mui-btn-outlined.mui-btn-purple:enabled:active,.mui-btn-outlined.mui-btn-red:enabled:active,.mui-btn-outlined.mui-btn-royal:enabled:active,.mui-btn-outlined.mui-btn-success:enabled:active,.mui-btn-outlined.mui-btn-warning:enabled:active,.mui-btn-outlined.mui-btn-yellow:enabled:active{color:#fff}.mui-btn-link{padding-top:6px;padding-bottom:6px;color:#007aff;border:0;background-color:transparent}.mui-btn-link.mui-active:enabled,.mui-btn-link:enabled:active{color:#0062cc;background-color:transparent}.mui-btn-block{font-size:18px;display:block;width:100%;margin-bottom:10px;padding:15px 0}.mui-btn .mui-badge{font-size:14px;margin:-2px -4px -2px 4px;background-color:rgba(0,0,0,.15)}.mui-btn .mui-badge-inverted,.mui-btn:enabled:active .mui-badge-inverted{background-color:transparent}.mui-btn-negative:enabled:active .mui-badge-inverted,.mui-btn-positive:enabled:active .mui-badge-inverted,.mui-btn-primary:enabled:active .mui-badge-inverted{color:#fff}.mui-btn-block .mui-badge{position:absolute;right:0;margin-right:10px}.mui-btn .mui-icon{font-size:inherit}.mui-btn.mui-icon{font-size:14px;line-height:1.42}.mui-btn.mui-fab{width:56px;height:56px;padding:16px;border-radius:50%;outline:0}.mui-btn.mui-fab.mui-btn-mini{width:40px;height:40px;padding:8px}.mui-btn.mui-fab .mui-icon{font-size:24px;line-height:24px;width:24px;height:24px}.mui-bar{position:fixed;z-index:10;right:0;left:0;height:44px;padding-right:10px;padding-left:10px;border-bottom:0;background-color:#f7f7f7;-webkit-box-shadow:0 0 1px rgba(0,0,0,.85);box-shadow:0 0 1px rgba(0,0,0,.85);-webkit-backface-visibility:hidden;backface-visibility:hidden}.mui-bar .mui-title{right:40px;left:40px;display:inline-block;overflow:hidden;width:auto;margin:0;text-overflow:ellipsis}.mui-bar .mui-backdrop{background:0 0}.mui-bar-header-secondary{top:44px}.mui-bar-footer{bottom:0}.mui-bar-footer-secondary{bottom:44px}.mui-bar-footer-secondary-tab{bottom:50px}.mui-bar-footer,.mui-bar-footer-secondary,.mui-bar-footer-secondary-tab{border-top:0}.mui-bar-nav{top:0;-webkit-box-shadow:0 1px 6px #ccc;box-shadow:0 1px 6px #ccc}.mui-bar-nav~.mui-content .mui-anchor{display:block;visibility:hidden;height:45px;margin-top:-45px}.mui-bar-nav.mui-bar .mui-icon{margin-right:-10px;margin-left:-10px;padding-right:10px;padding-left:10px}.mui-title{font-size:17px;font-weight:500;line-height:44px;position:absolute;display:block;width:100%;margin:0 -10px;padding:0;text-align:center;white-space:nowrap;color:#000}.mui-title a{color:inherit}.mui-bar-tab{bottom:0;display:table;width:100%;height:50px;padding:0;table-layout:fixed;border-top:0;border-bottom:0;-webkit-touch-callout:none}.mui-bar-tab .mui-tab-item{display:table-cell;overflow:hidden;width:1%;height:50px;text-align:center;vertical-align:middle;white-space:nowrap;text-overflow:ellipsis;color:#929292}.mui-bar-tab .mui-tab-item.mui-active{color:#007aff}.mui-bar-tab .mui-tab-item .mui-icon{top:3px;width:24px;height:24px;padding-top:0;padding-bottom:0}.mui-bar-tab .mui-tab-item .mui-icon~.mui-tab-label{font-size:11px;display:block;overflow:hidden;text-overflow:ellipsis}.mui-bar-tab .mui-tab-item .mui-icon:active{background:0 0}.mui-focusin>.mui-bar-header-secondary,.mui-focusin>.mui-bar-nav{position:absolute}.mui-focusin>.mui-bar~.mui-content{padding-bottom:0}.mui-bar .mui-btn{font-weight:400;position:relative;z-index:20;top:7px;margin-top:0;padding:6px 12px 7px}.mui-bar .mui-btn.mui-pull-right{margin-left:10px}.mui-bar .mui-btn.mui-pull-left{margin-right:10px}.mui-bar .mui-btn-link{font-size:16px;line-height:44px;top:0;padding:0;color:#007aff;border:0}.mui-bar .mui-btn-link.mui-active,.mui-bar .mui-btn-link:active{color:#0062cc}.mui-bar .mui-btn-block{font-size:16px;top:6px;margin-bottom:0;padding:5px 0}.mui-bar .mui-btn-nav.mui-pull-left{margin-left:-5px}.mui-bar .mui-btn-nav.mui-pull-left .mui-icon-left-nav{margin-right:-3px}.mui-bar .mui-btn-nav.mui-pull-right{margin-right:-5px}.mui-bar .mui-btn-nav.mui-pull-right .mui-icon-right-nav{margin-left:-3px}.mui-bar .mui-btn-nav:active{opacity:.3}.mui-bar .mui-icon{font-size:24px;position:relative;z-index:20;padding-top:10px;padding-bottom:10px}.mui-bar .mui-icon:active{opacity:.3}.mui-bar .mui-btn .mui-icon{top:1px;margin:0;padding:0}.mui-bar .mui-title .mui-icon{margin:0;padding:0}.mui-bar .mui-title .mui-icon.mui-icon-caret{top:4px;margin-left:-5px}.mui-bar input[type=search]{height:29px;margin:6px 0}.mui-bar .mui-input-row .mui-btn{padding:12px 10px}.mui-bar .mui-search:before{margin-top:-10px}.mui-bar .mui-input-row .mui-input-clear~.mui-icon-clear,.mui-bar .mui-input-row .mui-input-speech~.mui-icon-speech{top:0;right:12px}.mui-bar.mui-bar-header-secondary .mui-input-row .mui-input-clear~.mui-icon-clear,.mui-bar.mui-bar-header-secondary .mui-input-row .mui-input-speech~.mui-icon-speech{top:0;right:0}.mui-bar .mui-segmented-control{top:7px;width:auto;margin:0 auto}.mui-bar.mui-bar-header-secondary .mui-segmented-control{top:0}.mui-badge{font-size:12px;line-height:1;display:inline-block;padding:3px 6px;color:#333;border-radius:100px;background-color:rgba(0,0,0,.15)}.mui-badge.mui-badge-inverted{padding:0 5px 0 0;color:#929292;background-color:transparent}.mui-badge-blue,.mui-badge-primary{color:#fff;background-color:#007aff}.mui-badge-blue.mui-badge-inverted,.mui-badge-primary.mui-badge-inverted{color:#007aff;background-color:transparent}.mui-badge-green,.mui-badge-success{color:#fff;background-color:#4cd964}.mui-badge-green.mui-badge-inverted,.mui-badge-success.mui-badge-inverted{color:#4cd964;background-color:transparent}.mui-badge-warning,.mui-badge-yellow{color:#fff;background-color:#f0ad4e}.mui-badge-warning.mui-badge-inverted,.mui-badge-yellow.mui-badge-inverted{color:#f0ad4e;background-color:transparent}.mui-badge-danger,.mui-badge-red{color:#fff;background-color:#dd524d}.mui-badge-danger.mui-badge-inverted,.mui-badge-red.mui-badge-inverted{color:#dd524d;background-color:transparent}.mui-badge-purple,.mui-badge-royal{color:#fff;background-color:#8a6de9}.mui-badge-purple.mui-badge-inverted,.mui-badge-royal.mui-badge-inverted{color:#8a6de9;background-color:transparent}.mui-icon .mui-badge{font-size:10px;line-height:1.4;position:absolute;top:-2px;left:100%;margin-left:-10px;padding:1px 5px;color:#fff;background:red}.mui-card{overflow:hidden;margin:0 15px;border:1px solid #ddd;border-radius:6px;background-color:#fff;background-clip:padding-box}.mui-content>.mui-card:first-child{margin-top:15px}.mui-card .mui-input-group .mui-input-row:last-child:after,.mui-card .mui-input-group .mui-input-row:last-child:before,.mui-card .mui-input-group:after,.mui-card .mui-input-group:before{height:0}.mui-card .mui-table-view{margin-bottom:0;border-top:0;border-bottom:0;border-radius:6px}.mui-card .mui-table-view .mui-table-view-cell:first-child,.mui-card .mui-table-view .mui-table-view-divider:first-child{top:0;border-top-left-radius:6px;border-top-right-radius:6px}.mui-card .mui-table-view .mui-table-view-cell:last-child,.mui-card .mui-table-view .mui-table-view-divider:last-child{border-bottom-right-radius:6px;border-bottom-left-radius:6px}.mui-card .mui-table-view:after,.mui-card .mui-table-view:before,.mui-card>.mui-table-view>.mui-table-view-cell:last-child:after,.mui-card>.mui-table-view>.mui-table-view-cell:last-child:before{height:0}.mui-table-view{position:relative;margin-top:0;margin-bottom:0;padding-left:0;list-style:none;background-color:#fff}.mui-table-view:after{position:absolute;right:0;bottom:0;left:0;height:1px;content:'';-webkit-transform:scaleY(.5);transform:scaleY(.5);background-color:#c8c7cc}.mui-table-view:before{position:absolute;right:0;left:0;height:1px;content:'';-webkit-transform:scaleY(.5);transform:scaleY(.5);background-color:#c8c7cc;top:-1px}.mui-table-view-icon .mui-table-view-cell .mui-navigate-right .mui-icon{font-size:20px;margin-top:-1px;margin-right:5px;margin-left:-5px}.mui-table-view-icon .mui-table-view-cell:after{left:40px}.mui-table-view-chevron .mui-table-view-cell{padding-right:65px}.mui-table-view-chevron .mui-table-view-cell>a:not(.mui-btn){margin-right:-65px}.mui-table-view-radio .mui-table-view-cell{padding-right:65px}.mui-table-view-radio .mui-table-view-cell>a:not(.mui-btn){margin-right:-65px}.mui-table-view-radio .mui-table-view-cell .mui-navigate-right:after{font-size:30px;font-weight:600;right:9px;content:'';color:#007aff}.mui-table-view-radio .mui-table-view-cell.mui-selected .mui-navigate-right:after{content:'\e472'}.mui-table-view-inverted{color:#fff;background:#333}.mui-table-view-inverted:after{position:absolute;right:0;bottom:0;left:0;height:1px;content:'';-webkit-transform:scaleY(.5);transform:scaleY(.5);background-color:#222}.mui-table-view-inverted:before{position:absolute;top:0;right:0;left:0;height:1px;content:'';-webkit-transform:scaleY(.5);transform:scaleY(.5);background-color:#222}.mui-table-view-inverted .mui-table-view-cell:after{position:absolute;right:0;bottom:0;left:15px;height:1px;content:'';-webkit-transform:scaleY(.5);transform:scaleY(.5);background-color:#222}.mui-table-view-inverted .mui-table-view-cell.mui-active,.mui-table-view-inverted .mui-table-view-cell>a:not(.mui-btn).mui-active{background-color:#242424}.mui-table-view-cell{position:relative;overflow:hidden;padding:11px 15px;-webkit-touch-callout:none}.mui-table-view-cell:after{position:absolute;right:0;bottom:0;left:15px;height:1px;content:'';-webkit-transform:scaleY(.5);transform:scaleY(.5);background-color:#c8c7cc}.mui-table-view-cell.mui-checkbox input[type=checkbox],.mui-table-view-cell.mui-radio input[type=radio]{top:8px}.mui-table-view-cell.mui-checkbox.mui-left,.mui-table-view-cell.mui-radio.mui-left{padding-left:58px}.mui-table-view-cell.mui-active{background-color:#eee}.mui-table-view-cell:last-child:after,.mui-table-view-cell:last-child:before{height:0}.mui-table-view-cell>a:not(.mui-btn){position:relative;display:block;overflow:hidden;margin:-11px -15px;padding:inherit;white-space:nowrap;text-overflow:ellipsis;color:inherit}.mui-table-view-cell>a:not(.mui-btn).mui-active{background-color:#eee}.mui-table-view-cell p{margin-bottom:0}.mui-table-view-cell.mui-transitioning>.mui-slider-handle,.mui-table-view-cell.mui-transitioning>.mui-slider-left .mui-btn,.mui-table-view-cell.mui-transitioning>.mui-slider-right .mui-btn{-webkit-transition:-webkit-transform 300ms ease;transition:transform 300ms ease}.mui-table-view-cell.mui-active>.mui-slider-handle{background-color:#eee}.mui-table-view-cell>.mui-slider-handle{position:relative;background-color:#fff}.mui-table-view-cell>.mui-slider-handle .mui-navigate-right:after,.mui-table-view-cell>.mui-slider-handle.mui-navigate-right:after{right:0}.mui-table-view-cell>.mui-slider-handle,.mui-table-view-cell>.mui-slider-left .mui-btn,.mui-table-view-cell>.mui-slider-right .mui-btn{-webkit-transition:-webkit-transform 0ms ease;transition:transform 0ms ease}.mui-table-view-cell>.mui-slider-left,.mui-table-view-cell>.mui-slider-right{position:absolute;top:0;display:-webkit-box;display:-webkit-flex;display:flex;height:100%}.mui-table-view-cell>.mui-slider-left>.mui-btn,.mui-table-view-cell>.mui-slider-right>.mui-btn{position:relative;left:0;display:-webkit-box;display:-webkit-flex;display:flex;padding:0 30px;color:#fff;border:0;border-radius:0;-webkit-box-align:center;-webkit-align-items:center;align-items:center}.mui-table-view-cell>.mui-slider-left>.mui-btn:after,.mui-table-view-cell>.mui-slider-right>.mui-btn:after{position:absolute;z-index:-1;top:0;width:600%;height:100%;content:'';background:inherit}.mui-table-view-cell>.mui-slider-left>.mui-btn.mui-icon,.mui-table-view-cell>.mui-slider-right>.mui-btn.mui-icon{font-size:30px}.mui-table-view-cell>.mui-slider-right{right:0;-webkit-transition:-webkit-transform 0ms ease;transition:transform 0ms ease;-webkit-transform:translateX(100%);transform:translateX(100%)}.mui-table-view-cell>.mui-slider-left{left:0;-webkit-transition:-webkit-transform 0ms ease;transition:transform 0ms ease;-webkit-transform:translateX(-100%);transform:translateX(-100%)}.mui-table-view-cell>.mui-slider-left>.mui-btn:after{right:100%;margin-right:-1px}.mui-table-view-divider{font-weight:500;position:relative;margin-top:-1px;margin-left:0;padding-top:6px;padding-bottom:6px;padding-left:15px;color:#999;background-color:#fafafa}.mui-table-view-divider:after{position:absolute;right:0;bottom:0;left:0;height:1px;content:'';-webkit-transform:scaleY(.5);transform:scaleY(.5);background-color:#c8c7cc}.mui-table-view-divider:before{position:absolute;top:0;right:0;left:0;height:1px;content:'';-webkit-transform:scaleY(.5);transform:scaleY(.5);background-color:#c8c7cc}.mui-table-view .mui-media,.mui-table-view .mui-media-body{overflow:hidden}.mui-table-view .mui-media-large .mui-media-object{line-height:80px;max-width:80px;height:80px}.mui-table-view .mui-media .mui-subtitle{color:#000}.mui-table-view .mui-media-object{line-height:42px;max-width:42px;height:42px}.mui-table-view .mui-media-object.mui-pull-left{margin-right:10px}.mui-table-view .mui-media-object.mui-pull-right{margin-left:10px}.mui-table-view .mui-table-view-cell.mui-media-icon .mui-media-object{line-height:29px;max-width:29px;height:29px;margin:-4px 0}.mui-table-view .mui-table-view-cell.mui-media-icon .mui-media-object img{line-height:29px;max-width:29px;height:29px}.mui-table-view .mui-table-view-cell.mui-media-icon .mui-media-object.mui-pull-left{margin-right:10px}.mui-table-view .mui-table-view-cell.mui-media-icon .mui-media-object .mui-icon{font-size:29px}.mui-table-view .mui-table-view-cell.mui-media-icon .mui-media-body:after{position:absolute;right:0;bottom:0;left:55px;height:1px;content:'';-webkit-transform:scaleY(.5);transform:scaleY(.5);background-color:#c8c7cc}.mui-table-view .mui-table-view-cell.mui-media-icon:after{height:0!important}.mui-table-view.mui-unfold .mui-table-view-cell.mui-collapse .mui-table-view{display:block}.mui-table-view.mui-unfold .mui-table-view-cell.mui-collapse .mui-table-view:after,.mui-table-view.mui-unfold .mui-table-view-cell.mui-collapse .mui-table-view:before{height:0!important}.mui-table-view.mui-unfold .mui-table-view-cell.mui-media-icon.mui-collapse .mui-media-body:after{position:absolute;right:0;bottom:0;left:70px;height:1px;content:'';-webkit-transform:scaleY(.5);transform:scaleY(.5);background-color:#c8c7cc}.mui-table-view-cell>.mui-badge,.mui-table-view-cell>.mui-btn,.mui-table-view-cell>.mui-switch,.mui-table-view-cell>a>.mui-badge,.mui-table-view-cell>a>.mui-btn,.mui-table-view-cell>a>.mui-switch{position:absolute;top:50%;right:15px;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.mui-table-view-cell .mui-navigate-right>.mui-badge,.mui-table-view-cell .mui-navigate-right>.mui-btn,.mui-table-view-cell .mui-navigate-right>.mui-switch,.mui-table-view-cell .mui-push-left>.mui-badge,.mui-table-view-cell .mui-push-left>.mui-btn,.mui-table-view-cell .mui-push-left>.mui-switch,.mui-table-view-cell .mui-push-right>.mui-badge,.mui-table-view-cell .mui-push-right>.mui-btn,.mui-table-view-cell .mui-push-right>.mui-switch,.mui-table-view-cell>a .mui-navigate-right>.mui-badge,.mui-table-view-cell>a .mui-navigate-right>.mui-btn,.mui-table-view-cell>a .mui-navigate-right>.mui-switch,.mui-table-view-cell>a .mui-push-left>.mui-badge,.mui-table-view-cell>a .mui-push-left>.mui-btn,.mui-table-view-cell>a .mui-push-left>.mui-switch,.mui-table-view-cell>a .mui-push-right>.mui-badge,.mui-table-view-cell>a .mui-push-right>.mui-btn,.mui-table-view-cell>a .mui-push-right>.mui-switch{right:35px}.mui-content>.mui-table-view:first-child{margin-top:15px}.mui-table-view-cell.mui-collapse .mui-table-view .mui-table-view-cell:last-child:after,.mui-table-view-cell.mui-collapse .mui-table-view:after,.mui-table-view-cell.mui-collapse .mui-table-view:before{height:0}.mui-table-view-cell.mui-collapse>.mui-navigate-right:after,.mui-table-view-cell.mui-collapse>.mui-push-right:after{content:'\e581'}.mui-table-view-cell.mui-collapse.mui-active{margin-top:-1px}.mui-table-view-cell.mui-collapse.mui-active .mui-collapse-content,.mui-table-view-cell.mui-collapse.mui-active .mui-table-view{display:block}.mui-table-view-cell.mui-collapse.mui-active>.mui-navigate-right:after,.mui-table-view-cell.mui-collapse.mui-active>.mui-push-right:after{content:'\e580'}.mui-table-view-cell.mui-collapse.mui-active .mui-table-view-cell>a:not(.mui-btn).mui-active{margin-left:-31px;padding-left:47px}.mui-table-view-cell.mui-collapse .mui-collapse-content{position:relative;display:none;overflow:hidden;margin:11px -15px -11px;padding:8px 15px;-webkit-transition:height .35s ease;-o-transition:height .35s ease;transition:height .35s ease;background:#fff}.mui-table-view-cell.mui-collapse .mui-collapse-content>.mui-input-group,.mui-table-view-cell.mui-collapse .mui-collapse-content>.mui-slider{width:auto;height:auto;margin:-8px -15px}.mui-table-view-cell.mui-collapse .mui-collapse-content>.mui-slider{margin:-8px -16px}.mui-table-view-cell.mui-collapse .mui-table-view{display:none;margin-top:11px;margin-right:-15px;margin-bottom:-11px;margin-left:-15px;border:0}.mui-table-view-cell.mui-collapse .mui-table-view.mui-table-view-chevron{margin-right:-65px}.mui-table-view-cell.mui-collapse .mui-table-view .mui-table-view-cell{padding-left:31px;background-position:31px 100%}.mui-table-view-cell.mui-collapse .mui-table-view .mui-table-view-cell:after{position:absolute;right:0;bottom:0;left:30px;height:1px;content:'';-webkit-transform:scaleY(.5);transform:scaleY(.5);background-color:#c8c7cc}.mui-table-view.mui-grid-view{font-size:0;display:block;width:100%;padding:0 10px 10px 0;white-space:normal}.mui-table-view.mui-grid-view .mui-table-view-cell{font-size:17px;display:inline-block;margin-right:-4px;padding:10px 0 0 14px;text-align:center;vertical-align:middle;background:0 0}.mui-table-view.mui-grid-view .mui-table-view-cell .mui-media-object{width:100%;max-width:100%;height:auto}.mui-table-view.mui-grid-view .mui-table-view-cell>a:not(.mui-btn){margin:-10px 0 0 -14px}.mui-table-view.mui-grid-view .mui-table-view-cell>a:not(.mui-btn).mui-active,.mui-table-view.mui-grid-view .mui-table-view-cell>a:not(.mui-btn):active{background:0 0}.mui-table-view.mui-grid-view .mui-table-view-cell .mui-media-body{font-size:15px;line-height:15px;display:block;width:100%;height:15px;margin-top:8px;text-overflow:ellipsis;color:#333}.mui-table-view.mui-grid-view .mui-table-view-cell:after,.mui-table-view.mui-grid-view .mui-table-view-cell:before{height:0}.mui-grid-view.mui-grid-9{margin:0;padding:0;border-top:1px solid #eee;border-left:1px solid #eee;background-color:#f2f2f2}.mui-grid-view.mui-grid-9:after,.mui-grid-view.mui-grid-9:before{display:table;content:' '}.mui-grid-view.mui-grid-9:after{clear:both;position:static}.mui-grid-view.mui-grid-9 .mui-table-view-cell{margin:0;padding:11px 15px;vertical-align:top;border-right:1px solid #eee;border-bottom:1px solid #eee}.mui-grid-view.mui-grid-9 .mui-table-view-cell.mui-active{background-color:#eee}.mui-grid-view.mui-grid-9 .mui-table-view-cell>a:not(.mui-btn){margin:0;padding:10px 0}.mui-grid-view.mui-grid-9:before{height:0}.mui-grid-view.mui-grid-9 .mui-media{color:#797979}.mui-grid-view.mui-grid-9 .mui-media .mui-icon{font-size:2.4em;position:relative}.mui-slider-cell{position:relative}.mui-slider-cell>.mui-slider-handle{z-index:1}.mui-slider-cell>.mui-slider-left,.mui-slider-cell>.mui-slider-right{position:absolute;z-index:0;top:0;bottom:0}.mui-slider-cell>.mui-slider-left{left:0}.mui-slider-cell>.mui-slider-right{right:0}input,select,textarea{font-family:'Helvetica Neue',Helvetica,sans-serif;font-size:17px;-webkit-tap-highlight-color:transparent;-webkit-tap-highlight-color:transparent}input:focus,select:focus,textarea:focus{-webkit-tap-highlight-color:transparent;-webkit-tap-highlight-color:transparent;-webkit-user-modify:read-write-plaintext-only}input[type=color],input[type=date],input[type=datetime-local],input[type=datetime],input[type=email],input[type=month],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=time],input[type=url],input[type=week],select,textarea{line-height:21px;width:100%;height:40px;margin-bottom:15px;padding:10px 15px;-webkit-user-select:text;border:1px solid rgba(0,0,0,.2);border-radius:3px;outline:0;background-color:#fff;-webkit-appearance:none}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{margin:0;-webkit-appearance:none}input[type=search]{font-size:16px;-webkit-box-sizing:border-box;box-sizing:border-box;height:34px;text-align:center;border:0;border-radius:6px;background-color:rgba(0,0,0,.1)}input[type=search]:focus{text-align:left}textarea{height:auto;resize:none}select{font-size:14px;height:auto;margin-top:1px;border:0!important;background-color:#fff}select:focus{-webkit-user-modify:read-only}.mui-input-group{position:relative;padding:0;border:0;background-color:#fff}.mui-input-group:after{position:absolute;right:0;bottom:0;left:0;height:1px;content:'';-webkit-transform:scaleY(.5);transform:scaleY(.5);background-color:#c8c7cc}.mui-input-group:before{position:absolute;top:0;right:0;left:0;height:1px;content:'';-webkit-transform:scaleY(.5);transform:scaleY(.5);background-color:#c8c7cc}.mui-input-group input,.mui-input-group textarea{margin-bottom:0;border:0;border-radius:0;background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.mui-input-group input[type=search]{background:0 0}.mui-input-group input:last-child{background-image:none}.mui-input-row{clear:left;overflow:hidden}.mui-input-row select{font-size:17px;height:37px;padding:0}.mui-input-row .mui-btn+input,.mui-input-row label+input,.mui-input-row:last-child{background:0 0}.mui-input-group .mui-input-row{height:40px}.mui-input-group .mui-input-row:after{position:absolute;right:0;bottom:0;left:15px;height:1px;content:'';-webkit-transform:scaleY(.5);transform:scaleY(.5);background-color:#c8c7cc}.mui-input-row label{font-family:'Helvetica Neue',Helvetica,sans-serif;line-height:1.1;float:left;width:35%;padding:11px 15px}.mui-input-row label~input,.mui-input-row label~select,.mui-input-row label~textarea{float:right;width:65%;margin-bottom:0;padding-left:0;border:0}.mui-input-row .mui-btn{font-family:'Helvetica Neue',Helvetica,sans-serif;line-height:1.1;float:right;width:15%;padding:10px 15px}.mui-input-row .mui-btn~input,.mui-input-row .mui-btn~select,.mui-input-row .mui-btn~textarea{float:left;width:85%;margin-bottom:0;padding-left:0;border:0}.mui-button-row{position:relative;padding-top:5px;text-align:center}.mui-input-group .mui-button-row{height:45px}.mui-input-row{position:relative}.mui-input-row.mui-input-range{overflow:visible;padding-right:20px}.mui-input-row .mui-inline{padding:8px 0}.mui-input-row .mui-input-clear~.mui-icon-clear,.mui-input-row .mui-input-password~.mui-icon-eye,.mui-input-row .mui-input-speech~.mui-icon-speech{font-size:20px;position:absolute;z-index:1;top:10px;right:0;width:38px;height:38px;text-align:center;color:#999}.mui-input-row .mui-input-clear~.mui-icon-clear.mui-active,.mui-input-row .mui-input-password~.mui-icon-eye.mui-active,.mui-input-row .mui-input-speech~.mui-icon-speech.mui-active{color:#007aff}.mui-input-row .mui-input-speech~.mui-icon-speech{font-size:24px;top:8px}.mui-input-row .mui-input-clear~.mui-icon-clear~.mui-icon-speech{display:none}.mui-input-row .mui-input-clear~.mui-icon-clear.mui-hidden~.mui-icon-speech{display:inline-block}.mui-input-row .mui-icon-speech~.mui-placeholder{right:38px}.mui-input-row.mui-search .mui-icon-clear{top:7px}.mui-input-row.mui-search .mui-icon-speech{top:5px}.mui-checkbox,.mui-radio{position:relative}.mui-checkbox label,.mui-radio label{display:inline-block;float:none;width:100%;padding-right:58px}.mui-checkbox.mui-left input[type=checkbox],.mui-radio.mui-left input[type=radio]{left:20px}.mui-checkbox.mui-left label,.mui-radio.mui-left label{padding-right:15px;padding-left:58px}.mui-checkbox input[type=checkbox],.mui-radio input[type=radio]{position:absolute;top:4px;right:20px;display:inline-block;width:28px;height:26px;border:0;outline:0!important;background-color:transparent;-webkit-appearance:none}.mui-checkbox input[type=checkbox][disabled]:before,.mui-radio input[type=radio][disabled]:before{opacity:.3}.mui-checkbox input[type=checkbox]:before,.mui-radio input[type=radio]:before{font-family:Muiicons;font-size:28px;font-weight:400;line-height:1;text-decoration:none;color:#aaa;border-radius:0;background:0 0;-webkit-font-smoothing:antialiased}.mui-checkbox input[type=checkbox]:checked:before,.mui-radio input[type=radio]:checked:before{color:#007aff}.mui-checkbox label.mui-disabled,.mui-checkbox.mui-disabled label,.mui-radio label.mui-disabled,.mui-radio.mui-disabled label{opacity:.4}.mui-radio input[type=radio]:before{content:'\e411'}.mui-radio input[type=radio]:checked:before{content:'\e441'}.mui-checkbox input[type=checkbox]:before{content:'\e411'}.mui-checkbox input[type=checkbox]:checked:before{content:'\e442'}.mui-select{position:relative}.mui-select:before{font-family:Muiicons;position:absolute;top:8px;right:21px;content:'\e581';color:rgba(170,170,170,.6)}.mui-input-row .mui-switch{float:right;margin-top:5px;margin-right:20px}.mui-input-range input[type=range]{position:relative;width:100%;height:2px;margin:17px 0;padding:0;cursor:pointer;border:0;border-radius:3px;outline:0;background-color:#999;-webkit-appearance:none!important}.mui-input-range input[type=range]::-webkit-slider-thumb{width:28px;height:28px;border-color:#0062cc;border-radius:50%;background-color:#007aff;background-clip:padding-box;-webkit-appearance:none!important}.mui-input-range label~input[type=range]{width:65%}.mui-input-range .mui-tooltip{font-size:36px;line-height:64px;position:absolute;z-index:1;top:-70px;width:64px;height:64px;text-align:center;opacity:.8;color:#333;border:1px solid #ddd;border-radius:6px;background-color:#fff;text-shadow:0 1px 0 #f3f3f3}.mui-search{position:relative}.mui-search input[type=search]{padding-left:30px}.mui-search .mui-placeholder{font-size:16px;line-height:34px;position:absolute;z-index:1;top:0;right:0;bottom:0;left:0;display:inline-block;height:34px;text-align:center;color:#999;border:0;border-radius:6px;background:0 0}.mui-search .mui-placeholder .mui-icon{font-size:20px;color:#333}.mui-search:before{font-family:Muiicons;font-size:20px;font-weight:400;position:absolute;top:50%;right:50%;display:none;margin-top:-18px;margin-right:31px;content:'\e466'}.mui-search.mui-active:before{font-size:20px;right:auto;left:5px;display:block;margin-right:0}.mui-search.mui-active input[type=search]{text-align:left}.mui-search.mui-active .mui-placeholder{display:none}.mui-segmented-control{font-size:15px;font-weight:400;position:relative;display:table;overflow:hidden;width:100%;table-layout:fixed;border:1px solid #007aff;border-radius:3px;background-color:transparent;-webkit-touch-callout:none}.mui-segmented-control.mui-segmented-control-vertical{border-collapse:collapse;border-width:0;border-radius:0}.mui-segmented-control.mui-segmented-control-vertical .mui-control-item{display:block;border-bottom:1px solid #c8c7cc;border-left-width:0}.mui-segmented-control.mui-scroll-wrapper{height:38px}.mui-segmented-control.mui-scroll-wrapper .mui-scroll{width:auto;height:40px;white-space:nowrap}.mui-segmented-control.mui-scroll-wrapper .mui-control-item{display:inline-block;width:auto;padding:0 20px;border:0}.mui-segmented-control .mui-control-item{line-height:38px;display:table-cell;overflow:hidden;width:1%;-webkit-transition:background-color .1s linear;transition:background-color .1s linear;text-align:center;white-space:nowrap;text-overflow:ellipsis;color:#007aff;border-color:#007aff;border-left:1px solid #007aff}.mui-segmented-control .mui-control-item:first-child{border-left-width:0}.mui-segmented-control .mui-control-item.mui-active{color:#fff;background-color:#007aff}.mui-segmented-control.mui-segmented-control-inverted{width:100%;border:0;border-radius:0}.mui-segmented-control.mui-segmented-control-inverted.mui-segmented-control-vertical .mui-control-item,.mui-segmented-control.mui-segmented-control-inverted.mui-segmented-control-vertical .mui-control-item.mui-active{border-bottom:1px solid #c8c7cc}.mui-segmented-control.mui-segmented-control-inverted .mui-control-item{color:inherit;border:0}.mui-segmented-control.mui-segmented-control-inverted .mui-control-item.mui-active{color:#007aff;border-bottom:2px solid #007aff;background:0 0}.mui-segmented-control.mui-segmented-control-inverted~.mui-slider-progress-bar{background-color:#007aff}.mui-segmented-control-positive{border:1px solid #4cd964}.mui-segmented-control-positive .mui-control-item{color:#4cd964;border-color:inherit}.mui-segmented-control-positive .mui-control-item.mui-active{color:#fff;background-color:#4cd964}.mui-segmented-control-positive.mui-segmented-control-inverted .mui-control-item.mui-active{color:#4cd964;border-bottom:2px solid #4cd964;background:0 0}.mui-segmented-control-positive.mui-segmented-control-inverted~.mui-slider-progress-bar{background-color:#4cd964}.mui-segmented-control-negative{border:1px solid #dd524d}.mui-segmented-control-negative .mui-control-item{color:#dd524d;border-color:inherit}.mui-segmented-control-negative .mui-control-item.mui-active{color:#fff;background-color:#dd524d}.mui-segmented-control-negative.mui-segmented-control-inverted .mui-control-item.mui-active{color:#dd524d;border-bottom:2px solid #dd524d;background:0 0}.mui-segmented-control-negative.mui-segmented-control-inverted~.mui-slider-progress-bar{background-color:#dd524d}.mui-control-content{position:relative;display:none}.mui-control-content.mui-active{display:block}.mui-popover{position:absolute;z-index:999;display:none;width:280px;-webkit-transition:opacity .3s;transition:opacity .3s;-webkit-transition-property:opacity;transition-property:opacity;-webkit-transform:none;transform:none;opacity:0;border-radius:7px;background-color:#f7f7f7;-webkit-box-shadow:0 0 15px rgba(0,0,0,.1);box-shadow:0 0 15px rgba(0,0,0,.1)}.mui-popover .mui-popover-arrow{position:absolute;z-index:1000;top:-25px;left:0;overflow:hidden;width:26px;height:26px}.mui-popover .mui-popover-arrow:after{position:absolute;top:19px;left:0;width:26px;height:26px;content:' ';-webkit-transform:rotate(45deg);transform:rotate(45deg);border-radius:3px;background:#f7f7f7}.mui-popover .mui-popover-arrow.mui-bottom{top:100%;left:-26px;margin-top:-1px}.mui-popover .mui-popover-arrow.mui-bottom:after{top:-19px;left:0}.mui-popover.mui-popover-action{bottom:0;width:100%;-webkit-transition:-webkit-transform .3s,opacity .3s;transition:transform .3s,opacity .3s;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0);border-radius:0;background:0 0;-webkit-box-shadow:none;box-shadow:none}.mui-popover.mui-popover-action .mui-popover-arrow{display:none}.mui-popover.mui-popover-action.mui-popover-bottom{position:fixed}.mui-popover.mui-popover-action.mui-active{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.mui-popover.mui-popover-action .mui-table-view{margin:8px;text-align:center;color:#007aff;border-radius:4px}.mui-popover.mui-popover-action .mui-table-view .mui-table-view-cell:after{position:absolute;right:0;bottom:0;left:0;height:1px;content:'';-webkit-transform:scaleY(.5);transform:scaleY(.5);background-color:#c8c7cc}.mui-popover.mui-popover-action .mui-table-view small{font-weight:400;line-height:1.3;display:block}.mui-popover.mui-active{display:block;opacity:1}.mui-popover .mui-bar~.mui-table-view{padding-top:44px}.mui-backdrop{position:fixed;z-index:998;top:0;right:0;bottom:0;left:0;background-color:rgba(0,0,0,.3)}.mui-bar-backdrop.mui-backdrop{bottom:50px;background:0 0}.mui-backdrop-action.mui-backdrop{background-color:rgba(0,0,0,.3)}.mui-backdrop-action.mui-backdrop,.mui-bar-backdrop.mui-backdrop{opacity:0}.mui-backdrop-action.mui-backdrop.mui-active,.mui-bar-backdrop.mui-backdrop.mui-active{-webkit-transition:all .4s ease;transition:all .4s ease;opacity:1}.mui-popover .mui-btn-block{margin-bottom:5px}.mui-popover .mui-btn-block:last-child{margin-bottom:0}.mui-popover .mui-bar{-webkit-box-shadow:none;box-shadow:none}.mui-popover .mui-bar-nav{border-bottom:1px solid rgba(0,0,0,.15);border-top-left-radius:12px;border-top-right-radius:12px;-webkit-box-shadow:none;box-shadow:none}.mui-popover .mui-scroll-wrapper{margin:7px 0;border-radius:7px;background-clip:padding-box}.mui-popover .mui-scroll .mui-table-view{max-height:none}.mui-popover .mui-table-view{overflow:auto;max-height:300px;margin-bottom:0;border-radius:7px;background-color:#f7f7f7;background-image:none;-webkit-overflow-scrolling:touch}.mui-popover .mui-table-view:after,.mui-popover .mui-table-view:before{height:0}.mui-popover .mui-table-view .mui-table-view-cell:first-child,.mui-popover .mui-table-view .mui-table-view-cell:first-child>a:not(.mui-btn){border-top-left-radius:12px;border-top-right-radius:12px}.mui-popover .mui-table-view .mui-table-view-cell:last-child,.mui-popover .mui-table-view .mui-table-view-cell:last-child>a:not(.mui-btn){border-bottom-right-radius:12px;border-bottom-left-radius:12px}.mui-popover.mui-bar-popover .mui-table-view{width:106px}.mui-popover.mui-bar-popover .mui-table-view .mui-table-view-cell{padding:11px 15px;background-position:0 100%}.mui-popover.mui-bar-popover .mui-table-view .mui-table-view-cell>a:not(.mui-btn){margin:-11px -15px -11px -15px}.mui-popup-backdrop{position:fixed;z-index:998;top:0;right:0;bottom:0;left:0;-webkit-transition-duration:400ms;transition-duration:400ms;opacity:0;background:rgba(0,0,0,.4)}.mui-popup-backdrop.mui-active{opacity:1}.mui-popup{position:absolute;z-index:10000;top:50%;left:50%;display:none;overflow:hidden;width:270px;-webkit-transition-property:-webkit-transform,opacity;transition-property:transform,opacity;-webkit-transform:translate3d(-50%,-50%,0) scale(1.185);transform:translate3d(-50%,-50%,0) scale(1.185);text-align:center;opacity:0;color:#000;border-radius:13px}.mui-popup.mui-popup-in{display:block;-webkit-transition-duration:400ms;transition-duration:400ms;-webkit-transform:translate3d(-50%,-50%,0) scale(1);transform:translate3d(-50%,-50%,0) scale(1);opacity:1}.mui-popup.mui-popup-out{-webkit-transition-duration:400ms;transition-duration:400ms;-webkit-transform:translate3d(-50%,-50%,0) scale(1);transform:translate3d(-50%,-50%,0) scale(1);opacity:0}.mui-popup-inner{position:relative;padding:15px;border-radius:13px 13px 0 0;background:rgba(255,255,255,.95)}.mui-popup-inner:after{position:absolute;z-index:15;top:auto;right:auto;bottom:0;left:0;display:block;width:100%;height:1px;content:'';-webkit-transform:scaleY(.5);transform:scaleY(.5);-webkit-transform-origin:50% 100%;transform-origin:50% 100%;background-color:rgba(0,0,0,.2)}.mui-popup-title{font-size:18px;font-weight:500;text-align:center}.mui-popup-title+.mui-popup-text{font-size:14px;margin-top:5px}.mui-popup-buttons{position:relative;display:-webkit-box;display:-webkit-flex;display:flex;height:44px;-webkit-box-pack:center;-webkit-justify-content:center;justify-content:center}.mui-popup-button{font-size:17px;line-height:44px;position:relative;display:block;overflow:hidden;box-sizing:border-box;width:100%;height:44px;padding:0 5px;cursor:pointer;text-align:center;white-space:nowrap;text-overflow:ellipsis;color:#007aff;background:rgba(255,255,255,.95);-webkit-box-flex:1}.mui-popup-button:after{position:absolute;z-index:15;top:0;right:0;bottom:auto;left:auto;display:block;width:1px;height:100%;content:'';-webkit-transform:scaleX(.5);transform:scaleX(.5);-webkit-transform-origin:100% 50%;transform-origin:100% 50%;background-color:rgba(0,0,0,.2)}.mui-popup-button:first-child{border-radius:0 0 0 13px}.mui-popup-button:first-child:last-child{border-radius:0 0 13px 13px}.mui-popup-button:last-child{border-radius:0 0 13px}.mui-popup-button:last-child:after{display:none}.mui-popup-button.mui-popup-button-bold{font-weight:600}.mui-popup-input input{font-size:14px;width:100%;height:26px;margin:0;margin-top:15px;padding:0 5px;border:1px solid rgba(0,0,0,.3);border-radius:0;background:#fff}.mui-plus.mui-android .mui-popup-backdrop{-webkit-transition-duration:1ms;transition-duration:1ms}.mui-plus.mui-android .mui-popup{-webkit-transition-duration:1ms;transition-duration:1ms;-webkit-transform:translate3d(-50%,-50%,0) scale(1);transform:translate3d(-50%,-50%,0) scale(1)}.mui-pagination{display:inline-block;margin:0 auto;padding-left:0;border-radius:6px}.mui-pagination>li{display:inline}.mui-pagination>li>a,.mui-pagination>li>span{line-height:1.428571429;position:relative;float:left;margin-left:-1px;padding:6px 12px;text-decoration:none;color:#007aff;border:1px solid #ddd;background-color:#fff}.mui-pagination>li:first-child>a,.mui-pagination>li:first-child>span{margin-left:0;border-top-left-radius:6px;border-bottom-left-radius:6px;background-clip:padding-box}.mui-pagination>li:last-child>a,.mui-pagination>li:last-child>span{border-top-right-radius:6px;border-bottom-right-radius:6px;background-clip:padding-box}.mui-pagination>li.mui-active>a,.mui-pagination>li.mui-active>a:active,.mui-pagination>li.mui-active>span,.mui-pagination>li.mui-active>span:active,.mui-pagination>li:active>a,.mui-pagination>li:active>a:active,.mui-pagination>li:active>span,.mui-pagination>li:active>span:active{z-index:2;cursor:default;color:#fff;border-color:#007aff;background-color:#007aff}.mui-pagination>li.mui-disabled>a,.mui-pagination>li.mui-disabled>a:active,.mui-pagination>li.mui-disabled>span,.mui-pagination>li.mui-disabled>span:active{opacity:.6;color:#777;border:1px solid #ddd;background-color:#fff}.mui-pagination-lg>li>a,.mui-pagination-lg>li>span{font-size:18px;padding:10px 16px}.mui-pagination-sm>li>a,.mui-pagination-sm>li>span{font-size:12px;padding:5px 10px}.mui-pager{padding-left:0;list-style:none;text-align:center}.mui-pager:after,.mui-pager:before{display:table;content:' '}.mui-pager:after{clear:both}.mui-pager li{display:inline}.mui-pager li>a,.mui-pager li>span{display:inline-block;padding:5px 14px;border:1px solid #ddd;border-radius:6px;background-color:#fff;background-clip:padding-box}.mui-pager li.mui-active>a,.mui-pager li.mui-active>span,.mui-pager li:active>a,.mui-pager li:active>span{cursor:default;text-decoration:none;color:#fff;border-color:#007aff;background-color:#007aff}.mui-pager .mui-next>a,.mui-pager .mui-next>span{float:right}.mui-pager .mui-previous>a,.mui-pager .mui-previous>span{float:left}.mui-pager .mui-disabled>a,.mui-pager .mui-disabled>a:active,.mui-pager .mui-disabled>span,.mui-pager .mui-disabled>span:active{opacity:.6;color:#777;border:1px solid #ddd;background-color:#fff}.mui-modal{position:fixed;z-index:999;top:0;overflow:hidden;width:100%;min-height:100%;-webkit-transition:-webkit-transform .25s,opacity 1ms .25s;transition:transform .25s,opacity 1ms .25s;-webkit-transition-timing-function:cubic-bezier(.1,.5,.1,1);transition-timing-function:cubic-bezier(.1,.5,.1,1);-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0);opacity:0;background-color:#fff}.mui-modal.mui-active{height:100%;-webkit-transition:-webkit-transform .25s;transition:transform .25s;-webkit-transition-timing-function:cubic-bezier(.1,.5,.1,1);transition-timing-function:cubic-bezier(.1,.5,.1,1);-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}.mui-android .mui-modal .mui-bar{position:static}.mui-android .mui-modal .mui-bar-nav~.mui-content{padding-top:0}.mui-slider{position:relative;z-index:1;overflow:hidden;width:100%}.mui-slider .mui-segmented-control.mui-segmented-control-inverted .mui-control-item.mui-active{border-bottom:0}.mui-slider .mui-segmented-control.mui-segmented-control-inverted~.mui-slider-group .mui-slider-item{border-top:1px solid #c8c7cc;border-bottom:1px solid #c8c7cc}.mui-slider .mui-slider-group{font-size:0;position:relative;-webkit-transition:all 0s linear;transition:all 0s linear;white-space:nowrap}.mui-slider .mui-slider-group .mui-slider-item{font-size:14px;position:relative;display:inline-block;width:100%;height:100%;vertical-align:top;white-space:normal}.mui-slider .mui-slider-group .mui-slider-item>a:not(.mui-control-item){line-height:0;position:relative;display:block}.mui-slider .mui-slider-group .mui-slider-item img{width:100%}.mui-slider .mui-slider-group .mui-slider-item .mui-table-view:after,.mui-slider .mui-slider-group .mui-slider-item .mui-table-view:before{height:0}.mui-slider .mui-slider-group.mui-slider-loop{-webkit-transform:translate(-100%,0);transform:translate(-100%,0)}.mui-slider-title{line-height:30px;position:absolute;bottom:0;left:0;width:100%;height:30px;margin:0;text-align:left;text-indent:12px;opacity:.8;background-color:#000}.mui-slider-indicator{position:absolute;bottom:8px;width:100%;text-align:center;background:0 0}.mui-slider-indicator.mui-segmented-control{position:relative;bottom:auto}.mui-slider-indicator .mui-indicator{display:inline-block;width:6px;height:6px;margin:1px 6px;cursor:pointer;border-radius:50%;background:#aaa;-webkit-box-shadow:0 0 1px 1px rgba(130,130,130,.7);box-shadow:0 0 1px 1px rgba(130,130,130,.7)}.mui-slider-indicator .mui-active.mui-indicator{background:#fff}.mui-slider-indicator .mui-icon{font-size:20px;line-height:30px;width:40px;height:30px;margin:3px;text-align:center;border:1px solid #ddd}.mui-slider-indicator .mui-number{line-height:32px;display:inline-block;width:58px}.mui-slider-indicator .mui-number span{color:#ff5053}.mui-slider-progress-bar{z-index:1;height:2px;-webkit-transform:translateZ(0);transform:translateZ(0)}.mui-switch{position:relative;display:block;width:74px;height:30px;-webkit-transition-timing-function:ease-in-out;transition-timing-function:ease-in-out;-webkit-transition-duration:.2s;transition-duration:.2s;-webkit-transition-property:background-color,border;transition-property:background-color,border;border:2px solid #ddd;border-radius:20px;background-color:#fff;background-clip:padding-box}.mui-switch.mui-disabled{opacity:.3}.mui-switch .mui-switch-handle{position:absolute;z-index:1;top:-1px;left:-1px;width:28px;height:28px;-webkit-transition:.2s ease-in-out;transition:.2s ease-in-out;-webkit-transition-property:-webkit-transform,width,left;transition-property:transform,width,left;border-radius:16px;background-color:#fff;background-clip:padding-box;-webkit-box-shadow:0 2px 5px rgba(0,0,0,.4);box-shadow:0 2px 5px rgba(0,0,0,.4)}.mui-switch:before{font-size:13px;position:absolute;top:3px;right:11px;content:'Off';text-transform:uppercase;color:#999}.mui-switch.mui-dragging{border-color:#f7f7f7;background-color:#f7f7f7}.mui-switch.mui-dragging .mui-switch-handle{width:38px}.mui-switch.mui-dragging.mui-active .mui-switch-handle{left:-11px;width:38px}.mui-switch.mui-active{border-color:#4cd964;background-color:#4cd964}.mui-switch.mui-active .mui-switch-handle{-webkit-transform:translate(43px,0);transform:translate(43px,0)}.mui-switch.mui-active:before{right:auto;left:15px;content:'On';color:#fff}.mui-switch input[type=checkbox]{display:none}.mui-switch-mini{width:47px}.mui-switch-mini:before{display:none}.mui-switch-mini.mui-active .mui-switch-handle{-webkit-transform:translate(16px,0);transform:translate(16px,0)}.mui-switch-blue.mui-active{border:2px solid #007aff;background-color:#007aff}.mui-content.mui-fade{left:0;opacity:0}.mui-content.mui-fade.mui-in{opacity:1}.mui-content.mui-sliding{z-index:2;-webkit-transition:-webkit-transform .4s;transition:transform .4s;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.mui-content.mui-sliding.mui-left{z-index:1;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}.mui-content.mui-sliding.mui-right{z-index:3;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}.mui-navigate-right:after,.mui-push-left:after,.mui-push-right:after{font-family:Muiicons;font-size:inherit;line-height:1;position:absolute;top:50%;display:inline-block;-webkit-transform:translateY(-50%);transform:translateY(-50%);text-decoration:none;color:#bbb;-webkit-font-smoothing:antialiased}.mui-push-left:after{left:15px;content:'\e582'}.mui-navigate-right:after,.mui-push-right:after{right:15px;content:'\e583'}.mui-pull-bottom-pocket,.mui-pull-top-pocket{position:absolute;left:0;display:block;visibility:hidden;overflow:hidden;width:100%;height:50px}.mui-plus-pullrefresh .mui-pull-bottom-pocket,.mui-plus-pullrefresh .mui-pull-top-pocket{display:none;visibility:visible}.mui-pull-top-pocket{top:0}.mui-bar-nav~.mui-content .mui-pull-top-pocket{top:44px}.mui-bar-nav~.mui-bar-header-secondary~.mui-content .mui-pull-top-pocket{top:88px}.mui-pull-bottom-pocket{position:relative;bottom:0;height:40px}.mui-pull-bottom-pocket .mui-pull-loading{visibility:hidden}.mui-pull-bottom-pocket .mui-pull-loading.mui-in{display:inline-block}.mui-pull{font-weight:700;position:absolute;right:0;bottom:10px;left:0;text-align:center;color:#777}.mui-pull-loading{margin-right:10px;-webkit-transition:-webkit-transform .4s;transition:transform .4s;-webkit-transition-duration:400ms;transition-duration:400ms;vertical-align:middle}.mui-pull-loading.mui-reverse{-webkit-transform:rotate(180deg) translateZ(0);transform:rotate(180deg) translateZ(0)}.mui-pull-caption{font-size:15px;line-height:24px;position:relative;display:inline-block;overflow:visible;margin-top:0;vertical-align:middle}.mui-pull-caption span{display:none}.mui-pull-caption span.mui-in{display:inline}.mui-toast-container{position:fixed;z-index:9999;bottom:50px;width:100%;-webkit-transition:opacity .8s;transition:opacity .8s;opacity:0}.mui-toast-container.mui-active{opacity:1}.mui-toast-message{font-size:14px;width:270px;margin:5px auto;padding:5px;text-align:center;color:#000;border-radius:7px;background-color:#d8d8d8}.mui-numbox{position:relative;display:inline-block;overflow:hidden;width:120px;height:35px;padding:0 40px;vertical-align:top;vertical-align:middle;border:solid 1px #bbb;border-radius:3px;background-color:#efeff4}.mui-numbox [class*=btn-numbox],.mui-numbox [class*=numbox-btn]{font-size:18px;font-weight:400;line-height:100%;position:absolute;top:0;overflow:hidden;width:40px;height:100%;padding:0;color:#555;border:none;border-radius:0;background-color:#f9f9f9}.mui-numbox [class*=btn-numbox]:active,.mui-numbox [class*=numbox-btn]:active{background-color:#ccc}.mui-numbox [class*=btn-numbox][disabled],.mui-numbox [class*=numbox-btn][disabled]{color:silver}.mui-numbox .mui-btn-numbox-plus,.mui-numbox .mui-numbox-btn-plus{right:0;border-top-right-radius:3px;border-bottom-right-radius:3px}.mui-numbox .mui-btn-numbox-minus,.mui-numbox .mui-numbox-btn-minus{left:0;border-top-left-radius:3px;border-bottom-left-radius:3px}.mui-numbox .mui-input-numbox,.mui-numbox .mui-numbox-input{display:inline-block;overflow:hidden;width:100%!important;height:100%;margin:0;padding:0 3px!important;text-align:center;text-overflow:ellipsis;word-break:normal;border:none!important;border-right:solid 1px #ccc!important;border-left:solid 1px #ccc!important;border-radius:0!important}.mui-input-row .mui-numbox{float:right;margin:2px 8px}@font-face{font-family:Muiicons;font-weight:400;font-style:normal;src:url(../fonts/mui.ttf) format('truetype')}.mui-icon{font-family:Muiicons;font-size:24px;font-weight:400;font-style:normal;line-height:1;display:inline-block;text-decoration:none;-webkit-font-smoothing:antialiased}.mui-icon.mui-active{color:#007aff}.mui-icon.mui-right:before{float:right;padding-left:.2em}.mui-icon-contact:before{content:'\e100'}.mui-icon-person:before{content:'\e101'}.mui-icon-personadd:before{content:'\e102'}.mui-icon-contact-filled:before{content:'\e130'}.mui-icon-person-filled:before{content:'\e131'}.mui-icon-personadd-filled:before{content:'\e132'}.mui-icon-phone:before{content:'\e200'}.mui-icon-email:before{content:'\e201'}.mui-icon-chatbubble:before{content:'\e202'}.mui-icon-chatboxes:before{content:'\e203'}.mui-icon-phone-filled:before{content:'\e230'}.mui-icon-email-filled:before{content:'\e231'}.mui-icon-chatbubble-filled:before{content:'\e232'}.mui-icon-chatboxes-filled:before{content:'\e233'}.mui-icon-weibo:before{content:'\e260'}.mui-icon-weixin:before{content:'\e261'}.mui-icon-pengyouquan:before{content:'\e262'}.mui-icon-chat:before{content:'\e263'}.mui-icon-qq:before{content:'\e264'}.mui-icon-videocam:before{content:'\e300'}.mui-icon-camera:before{content:'\e301'}.mui-icon-mic:before{content:'\e302'}.mui-icon-location:before{content:'\e303'}.mui-icon-mic-filled:before,.mui-icon-speech:before{content:'\e332'}.mui-icon-location-filled:before{content:'\e333'}.mui-icon-micoff:before{content:'\e360'}.mui-icon-image:before{content:'\e363'}.mui-icon-map:before{content:'\e364'}.mui-icon-compose:before{content:'\e400'}.mui-icon-trash:before{content:'\e401'}.mui-icon-upload:before{content:'\e402'}.mui-icon-download:before{content:'\e403'}.mui-icon-close:before{content:'\e404'}.mui-icon-redo:before{content:'\e405'}.mui-icon-undo:before{content:'\e406'}.mui-icon-refresh:before{content:'\e407'}.mui-icon-star:before{content:'\e408'}.mui-icon-plus:before{content:'\e409'}.mui-icon-minus:before{content:'\e410'}.mui-icon-checkbox:before,.mui-icon-circle:before{content:'\e411'}.mui-icon-clear:before,.mui-icon-close-filled:before{content:'\e434'}.mui-icon-refresh-filled:before{content:'\e437'}.mui-icon-star-filled:before{content:'\e438'}.mui-icon-plus-filled:before{content:'\e439'}.mui-icon-minus-filled:before{content:'\e440'}.mui-icon-circle-filled:before{content:'\e441'}.mui-icon-checkbox-filled:before{content:'\e442'}.mui-icon-closeempty:before{content:'\e460'}.mui-icon-refreshempty:before{content:'\e461'}.mui-icon-reload:before{content:'\e462'}.mui-icon-starhalf:before{content:'\e463'}.mui-icon-spinner:before{content:'\e464'}.mui-icon-spinner-cycle:before{content:'\e465'}.mui-icon-search:before{content:'\e466'}.mui-icon-plusempty:before{content:'\e468'}.mui-icon-forward:before{content:'\e470'}.mui-icon-back:before,.mui-icon-left-nav:before{content:'\e471'}.mui-icon-checkmarkempty:before{content:'\e472'}.mui-icon-home:before{content:'\e500'}.mui-icon-navigate:before{content:'\e501'}.mui-icon-gear:before{content:'\e502'}.mui-icon-paperplane:before{content:'\e503'}.mui-icon-info:before{content:'\e504'}.mui-icon-help:before{content:'\e505'}.mui-icon-locked:before{content:'\e506'}.mui-icon-more:before{content:'\e507'}.mui-icon-flag:before{content:'\e508'}.mui-icon-home-filled:before{content:'\e530'}.mui-icon-gear-filled:before{content:'\e532'}.mui-icon-info-filled:before{content:'\e534'}.mui-icon-help-filled:before{content:'\e535'}.mui-icon-more-filled:before{content:'\e537'}.mui-icon-settings:before{content:'\e560'}.mui-icon-list:before{content:'\e562'}.mui-icon-bars:before{content:'\e563'}.mui-icon-loop:before{content:'\e565'}.mui-icon-paperclip:before{content:'\e567'}.mui-icon-eye:before{content:'\e568'}.mui-icon-arrowup:before{content:'\e580'}.mui-icon-arrowdown:before{content:'\e581'}.mui-icon-arrowleft:before{content:'\e582'}.mui-icon-arrowright:before{content:'\e583'}.mui-icon-arrowthinup:before{content:'\e584'}.mui-icon-arrowthindown:before{content:'\e585'}.mui-icon-arrowthinleft:before{content:'\e586'}.mui-icon-arrowthinright:before{content:'\e587'}.mui-icon-pulldown:before{content:'\e588'}.mui-fullscreen{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.mui-fullscreen.mui-slider .mui-slider-group{height:100%}.mui-fullscreen .mui-segmented-control~.mui-slider-group{position:absolute;top:40px;bottom:0;width:100%;height:auto}.mui-fullscreen.mui-slider .mui-slider-item>a{top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.mui-fullscreen .mui-off-canvas-wrap .mui-slider-item>a{top:auto;-webkit-transform:none;transform:none}.mui-bar-tab~.mui-content .mui-slider.mui-fullscreen .mui-segmented-control~.mui-slider-group{bottom:50px}.mui-android.mui-android-4-0 input:focus,.mui-android.mui-android-4-0 textarea:focus{-webkit-user-modify:inherit}.mui-android.mui-android-4-2 input,.mui-android.mui-android-4-2 textarea,.mui-android.mui-android-4-3 input,.mui-android.mui-android-4-3 textarea{-webkit-user-select:text}.mui-ios .mui-table-view-cell{-webkit-transform-style:preserve-3d;transform-style:preserve-3d}.mui-plus-visible,.mui-wechat-visible{display:none!important}.mui-plus-hidden,.mui-wechat-hidden{display:block!important}.mui-tab-item.mui-plus-hidden,.mui-tab-item.mui-wechat-hidden{display:table-cell!important}.mui-plus .mui-plus-visible,.mui-wechat .mui-wechat-visible{display:block!important}.mui-plus .mui-tab-item.mui-plus-visible,.mui-wechat .mui-tab-item.mui-wechat-visible{display:table-cell!important}.mui-plus .mui-plus-hidden,.mui-wechat .mui-wechat-hidden{display:none!important}.mui-plus.mui-statusbar.mui-statusbar-offset .mui-bar-nav{height:64px;padding-top:20px}.mui-plus.mui-statusbar.mui-statusbar-offset .mui-bar-nav~.mui-content{padding-top:64px}.mui-plus.mui-statusbar.mui-statusbar-offset .mui-bar-header-secondary,.mui-plus.mui-statusbar.mui-statusbar-offset .mui-bar-nav~.mui-content .mui-pull-top-pocket{top:64px}.mui-plus.mui-statusbar.mui-statusbar-offset .mui-bar-header-secondary~.mui-content{padding-top:94px}.mui-iframe-wrapper{position:absolute;right:0;left:0;-webkit-overflow-scrolling:touch}.mui-iframe-wrapper iframe{width:100%;height:100%;border:0} | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
favicon.ico
0 → 100644
File mode changed
fonts/mui.ttf
0 → 100644
No preview for this file type
html/bond.html
0 → 100644
| 1 | <div class="bondBox" ng-controller="bondController" ng-init="init()"> | ||
| 2 | <div class="bondTop"> | ||
| 3 | ¥{{bondInfo.alreadyPaid?bondInfo.alreadyPaid:'0.00'}} | ||
| 4 | </div> | ||
| 5 | <div class="bondText"> | ||
| 6 | <div class="bondTitle"> | ||
| 7 | 保证金说明: | ||
| 8 | </div> | ||
| 9 | <ul> | ||
| 10 | <li> | ||
| 11 | 1.在缴纳保证金后,方可租车; | ||
| 12 | </li> | ||
| 13 | <li> | ||
| 14 | 2.在缴纳保证金后,是为保障公共自行车的正常有序使用; | ||
| 15 | </li> | ||
| 16 | <li> | ||
| 17 | 3.每个地区到的保证金金额不定相同,请以所租车城市为准; | ||
| 18 | </li> | ||
| 19 | <li> | ||
| 20 | 4.保证金可申请退换,申请后可7个工作日内退还; | ||
| 21 | </li> | ||
| 22 | </ul> | ||
| 23 | </div> | ||
| 24 | <div class="redBtnBox"> | ||
| 25 | <button class=" mui-btn mui-btn-block bigBtn blueBg" ng-click="drawback()" ng-if="bondInfo.isActive"> | ||
| 26 | 申请退款 | ||
| 27 | </button> | ||
| 28 | </div> | ||
| 29 | <div class="redBtnBox" ng-click="goPay()" ng-if="!bondInfo.isActive"> | ||
| 30 | <button class=" mui-btn mui-btn-block bigBtn redBigBtn" > | ||
| 31 | 立即支付 | ||
| 32 | </button> | ||
| 33 | </div> | ||
| 34 | |||
| 35 | </div> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
html/bondPay.html
0 → 100644
| 1 | <div ng-controller="bondPayController" class="payPanel"> | ||
| 2 | <div class="paywayMenu"> | ||
| 3 | <div class="paywayMenuItem"> | ||
| 4 | <img src="images/wechat.png" /> 微信支付 | ||
| 5 | </div> | ||
| 6 | </div> | ||
| 7 | |||
| 8 | <div class="paywayMenu"> | ||
| 9 | <div class="paywayMenuInputItem"> | ||
| 10 | <span>金额(元):</span> | ||
| 11 | <input type="text" value="{{ $root.toPaid}}" disabled> | ||
| 12 | </div> | ||
| 13 | </div> | ||
| 14 | |||
| 15 | <div class="redBtnBox btnPosition" > | ||
| 16 | <button class=" mui-btn mui-btn-block redBigBtn" ng-click="goPay()"> | ||
| 17 | 确认 | ||
| 18 | </button> | ||
| 19 | </div> | ||
| 20 | |||
| 21 | </div> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
html/bondSuccess.html
0 → 100644
| 1 | <div class="bondSuccess" ng-controller="bondSuccessController"> | ||
| 2 | <div class="bondSuccessContent"> | ||
| 3 | <div class="successLeft"> | ||
| 4 | <div> | ||
| 5 | 您已经支付成功 | ||
| 6 | <span style="color:red;margin-left:2px">请勿重复支付,如有疑问,请联系客服</span> | ||
| 7 | </div> | ||
| 8 | <div class="bottomText"> | ||
| 9 | 支付金额:<span> ¥{{$root.toPaid}}</span> | ||
| 10 | </div> | ||
| 11 | </div> | ||
| 12 | <div class="successRight" ng-click="goMap();"> | ||
| 13 | <div class="successBike"> | ||
| 14 | |||
| 15 | </div> | ||
| 16 | <div class="successBikeText"> | ||
| 17 | 去租车 | ||
| 18 | </div> | ||
| 19 | </div> | ||
| 20 | </div> | ||
| 21 | </div> |
html/bondSuccess1.html
0 → 100644
| 1 | <div class="bondSuccess" ng-controller="bondSuccessController"> | ||
| 2 | <div class="bondSuccessContent"> | ||
| 3 | <div class="successLeft"> | ||
| 4 | <div> | ||
| 5 | 您已经支付成功 | ||
| 6 | </div> | ||
| 7 | <div class="bottomText"> | ||
| 8 | 支付金额:<span> ¥{{$root.toPaid}}</span> | ||
| 9 | </div> | ||
| 10 | </div> | ||
| 11 | <div class="successRight" ng-click="goMap();"> | ||
| 12 | <div class="successBike"> | ||
| 13 | |||
| 14 | </div> | ||
| 15 | <div class="successBikeText"> | ||
| 16 | 去租车 | ||
| 17 | </div> | ||
| 18 | </div> | ||
| 19 | </div> | ||
| 20 | </div> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
html/contact.html
0 → 100644
| 1 | <div ng-controller="contactController" class="payPanel"> | ||
| 2 | <div class="phoneItem" ng-repeat="phoneItem in contactList"> | ||
| 3 | {{phoneItem.name}}:<a href="tel:{{phoneItem.phone}}"> | ||
| 4 | {{phoneItem.phone}} | ||
| 5 | </a> | ||
| 6 | </div> | ||
| 7 | <div class="phoneItem">客服邮箱:<a href="email:kefu@pniutong.com">kefu@pniutong.com</a></div> | ||
| 8 | <div class="phoneItem">官方微信:pniutong</div> | ||
| 9 | <div class="phoneItem">官方微博:<a href="email:kefu@weibo.com">kefu@weibo.com</a></div> | ||
| 10 | </div> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
html/earnestMoneys.html
0 → 100644
html/freeTimes.html
0 → 100644
File mode changed
html/login.html
0 → 100644
| 1 | <div class="loginBox" ng-controller="loginController"> | ||
| 2 | <div class="loginTopLeft floatLeft"> | ||
| 3 | <input type="number" placeholder="手机号" ng-model="phoneNumberVal" class="phoneNumber"/> | ||
| 4 | </div> | ||
| 5 | <div class="loginTopRight floatRight"> | ||
| 6 | <button class="btnBg smallBtn ValidationBtn" ng-click="Validation()"> | ||
| 7 | 验证 | ||
| 8 | </button> | ||
| 9 | </div> | ||
| 10 | <div class="loginCenter"> | ||
| 11 | <input type="number" placeholder="验证码" class="validationInput" ng-model="validationVal"> | ||
| 12 | </div> | ||
| 13 | <button class="loginBtn mui-btn mui-btn-block bigBtn " ng-click="login()"> | ||
| 14 | 登录 | ||
| 15 | </button> | ||
| 16 | </div> |
html/main.html
0 → 100644
| 1 | <div ng-controller="mainController"> | ||
| 2 | <div id="mapContainer" class="mapContainer" ng-controller="mapController"></div> | ||
| 3 | <div id="sliderMenu" class="sliderMenu" style="display: none;" | ||
| 4 | ng-class="{true: 'menuOpen', false: 'menuClose'}[$root.openMenu]"> | ||
| 5 | |||
| 6 | <img src="images/slideMenuBackground.png"/> | ||
| 7 | <div class="sliderContent"> | ||
| 8 | <div class="sliderMenuHeader" ng-click="checkLogin()"> | ||
| 9 | <img src="images/head.png"/> | ||
| 10 | <div class="sliderMenuHeaderHint">{{userinfo.userName}}</div> | ||
| 11 | </div> | ||
| 12 | <ul class="sliderMenuContent"> | ||
| 13 | <li class="sliderMenuItem" ng-click="doAction($index)" ng-repeat="module in moduleList" | ||
| 14 | ng-hide="module.state === 'wallet'"> | ||
| 15 | <img ng-src="{{module.icon}}"/> | ||
| 16 | <div class="sliderMenuItemHint">{{module.name}}</div> | ||
| 17 | </li> | ||
| 18 | <li class="sliderMenuItem" ng-click="logout()" ng-show="userinfo.loginState"> | ||
| 19 | <img src="images/out.png"/> | ||
| 20 | <div class="sliderMenuItemHint">退出登录</div> | ||
| 21 | </li> | ||
| 22 | </ul> | ||
| 23 | </div> | ||
| 24 | </div> | ||
| 25 | </div> |
html/opinion.html
0 → 100644
| 1 | <div ng-controller="opinionController"> | ||
| 2 | <div class="textBox"> | ||
| 3 | <textarea placeholder="请输入您的反馈,我们将为你改进(200字以内)" rows="" ng-model="opinion" style="color:black;"></textarea> | ||
| 4 | </div> | ||
| 5 | <div class="walletBtn" ng-click="submit()"> | ||
| 6 | <div class="walletBtnContent" ng-class="{true : 'walletBtnContentDisable' , false : ''}[opinion == '']">提交</div> | ||
| 7 | </div> | ||
| 8 | </div> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
html/pay.html
0 → 100644
html/prepay.html
0 → 100644
| 1 | <div ng-controller="prepayController" class="payPanel"> | ||
| 2 | |||
| 3 | <div class="paywayMenu" style="display: block;"> | ||
| 4 | <div class="mui-input-row mui-select"> | ||
| 5 | <label style="font-size: 16px;color: #333">支付方式</label> | ||
| 6 | <select ng-change="payway()" ng-model="way"> | ||
| 7 | <option value="101" selected>微信</option> | ||
| 8 | <option value="100">支付宝</option> | ||
| 9 | </select> | ||
| 10 | </div> | ||
| 11 | </div> | ||
| 12 | |||
| 13 | <div class="paywayMenu" id="wxpay"> | ||
| 14 | <div class="paywayMenuItem"> | ||
| 15 | <img src="images/wechat.png" /> 微信支付 | ||
| 16 | </div> | ||
| 17 | </div> | ||
| 18 | |||
| 19 | <div class="paywayMenu" id="alipay" style="display: none;"> | ||
| 20 | <div class="paywayMenuItem"> | ||
| 21 | <img src="images/alipay.png" /> 支付宝支付 | ||
| 22 | </div> | ||
| 23 | </div> | ||
| 24 | |||
| 25 | <div id="wxpayform"> | ||
| 26 | <div class="paywayMenu"> | ||
| 27 | <div class="paywayMenuInputItem"> | ||
| 28 | <span>金额(元):</span> | ||
| 29 | <input type="number" placeholder="请输入充值金额" ng-model="account" > | ||
| 30 | </div> | ||
| 31 | </div> | ||
| 32 | <div class="walletBtn" ng-click="prepay()"> | ||
| 33 | <div class="walletBtnContent" ng-class="{true : 'walletBtnContentDisable' , false : ''}[account == '']">充值</div> | ||
| 34 | </div> | ||
| 35 | </div> | ||
| 36 | |||
| 37 | <div id="alipayform" style="display: none"> | ||
| 38 | <form action="http://lsz1.28ms.com/service/balance/alipay/h5" method="post"> | ||
| 39 | <input type="hidden" name="type" value="100"> | ||
| 40 | <input type="hidden" name="body" value="钱包充值"> | ||
| 41 | <div class="paywayMenu"> | ||
| 42 | <div class="paywayMenuInputItem"> | ||
| 43 | <span>金额(元):</span> | ||
| 44 | <input type="number" placeholder="请输入充值金额" name="amount" > | ||
| 45 | </div> | ||
| 46 | </div> | ||
| 47 | <div class="walletBtn"> | ||
| 48 | <button type="submit" class="walletBtnContent">充值</button> | ||
| 49 | </div> | ||
| 50 | </form> | ||
| 51 | |||
| 52 | </div> | ||
| 53 | </div> |
html/rechargeList.html
0 → 100644
| 1 | <div class="rechargeList" ng-controller="rechargeListController"> | ||
| 2 | <ul> | ||
| 3 | <li ng-repeat="item in rechargeList"> | ||
| 4 | <div class="rechargeLeft"> | ||
| 5 | <div > | ||
| 6 | {{item.rechargeType}} | ||
| 7 | </div> | ||
| 8 | <div class="rechargeTime"> | ||
| 9 | {{item.rechargeTime}} | ||
| 10 | </div> | ||
| 11 | </div> | ||
| 12 | <div class="rechargeRight"> | ||
| 13 | + {{item.rechargeMoney}} | ||
| 14 | </div> | ||
| 15 | </li> | ||
| 16 | </ul> | ||
| 17 | </div> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
html/rentDetail.html
0 → 100644
| 1 | <div class="rentDetail" ng-controller="rentDetailController"> | ||
| 2 | <div class="circleBox"> | ||
| 3 | <div class="newCircles"> | ||
| 4 | <div class="bigCircles"> | ||
| 5 | <div class="circlesText"> | ||
| 6 | <div class="text1">免费倒计时</div> | ||
| 7 | <div class="freeTime">{{detail.freeCountdown}}</div> | ||
| 8 | </div> | ||
| 9 | </div> | ||
| 10 | </div> | ||
| 11 | </div> | ||
| 12 | |||
| 13 | <div class="viewStation" > | ||
| 14 | <div class="viewBorer"></div> | ||
| 15 | <div class="viewBtn" ng-click="backHome()"> | ||
| 16 | <div class="viewImg"></div> | ||
| 17 | <div class="viewText" >查看站点</div> | ||
| 18 | </div> | ||
| 19 | </div> | ||
| 20 | |||
| 21 | <div class="fenceBox"> | ||
| 22 | <div class="fenceLeft"> | ||
| 23 | <div class="fenceTitle">租车站点</div> | ||
| 24 | <div class="fenceText">{{datail.startStation}}</div> | ||
| 25 | </div> | ||
| 26 | <div class="fenceCenter"> | ||
| 27 | <div class="fenceTitle">租车时间</div> | ||
| 28 | <div class="fenceText">{{datail.startTime}}</div> | ||
| 29 | </div> | ||
| 30 | <div class="fenceRight"> | ||
| 31 | <div class="fenceTitle">已租时间</div> | ||
| 32 | <div class="fenceText">{{costTime}}</div> | ||
| 33 | </div> | ||
| 34 | </div> | ||
| 35 | |||
| 36 | <div class="alreadyBack" ng-click="alreadyBack()">我已还车</div> | ||
| 37 | </div> | ||
| 38 |
html/trip.html
0 → 100644
| 1 | <div class="tripBox" ng-controller="tripController"> | ||
| 2 | <ul style="background: #F0F0F0;"> | ||
| 3 | <li ng-repeat="item in tripList" ng-click="viewTripDetail($index)"> | ||
| 4 | <div class="tripLeft"> | ||
| 5 | <div class="bike"></div> | ||
| 6 | <div class="tripAddress"> | ||
| 7 | {{item.startStation}}-{{item.endStation}} | ||
| 8 | </div> | ||
| 9 | <div class="tripTime"> | ||
| 10 | {{item.startTime}} | ||
| 11 | </div> | ||
| 12 | </div> | ||
| 13 | <div class="tripRight"> | ||
| 14 | <span class="tripStatus">{{item.tripStatus}}</span><span class="goDetail"></span> | ||
| 15 | </div> | ||
| 16 | </li> | ||
| 17 | </ul> | ||
| 18 | <div class="loadMore" ng-click="getMoreOrders()"> | ||
| 19 | <span ng-if="!isLastPage">加载更多</span> | ||
| 20 | <span ng-if="isLastPage">没有更多</span> | ||
| 21 | </div> | ||
| 22 | </div> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
html/tripDetail.html
0 → 100644
| 1 | <div class="tripDetail" ng-controller="tripDetailController" ng-init="init()"> | ||
| 2 | <div class="tripDetailTop"> | ||
| 3 | <div class="tripTopLeft"> | ||
| 4 | |||
| 5 | </div> | ||
| 6 | <div class="tripTopRight"> | ||
| 7 | <p class="borderBottom firstAddress"> | ||
| 8 | <span class="size15"> {{tripDetail.startStation}}</span> <span class="getBike">取车点</span> | ||
| 9 | </p> | ||
| 10 | <p> | ||
| 11 | <span class="size15"> {{tripDetail.endStation}}</span> <span class="backBike">还车点</span> | ||
| 12 | </p> | ||
| 13 | </div> | ||
| 14 | </div> | ||
| 15 | |||
| 16 | <div class="payBox" ng-show="needPay"> | ||
| 17 | <div class="tripTitle"> | ||
| 18 | 支付方式 | ||
| 19 | </div> | ||
| 20 | <ul> | ||
| 21 | <!--<li> | ||
| 22 | <span class="leftText residual"></span> <span class="leftText"> 余额支付(¥{{balance}})</span> <span class="rightText checkboxS" ng-class="{true: 'checkboxTrue', false: 'checkboxFalse'}[!isActive]" ng-click="choosePay(0)"> </span> | ||
| 23 | </li>--> | ||
| 24 | <li> | ||
| 25 | <span class="leftText wechatPay"></span><span class="leftText "> 微信支付</span> <span | ||
| 26 | class="rightText checkboxS" ng-class="{true: 'checkboxTrue', false: 'checkboxFalse'}[isActive]" | ||
| 27 | ng-click="choosePay(1)"></span> | ||
| 28 | </li> | ||
| 29 | </ul> | ||
| 30 | </div> | ||
| 31 | |||
| 32 | <div class="tripContent"> | ||
| 33 | <div class="tripTitle"> | ||
| 34 | 租车详情: | ||
| 35 | </div> | ||
| 36 | <ul> | ||
| 37 | <li> | ||
| 38 | <span class="leftText"> 租车时间:</span> | ||
| 39 | <span class="rightText"> {{tripDetail.startTime}}</span> | ||
| 40 | </li> | ||
| 41 | <li> | ||
| 42 | <span class="leftText"> 还车时间:</span> | ||
| 43 | <span class="rightText"> {{tripDetail.endTime}}</span> | ||
| 44 | </li> | ||
| 45 | <li> | ||
| 46 | <span class="leftText"> 免费时间:</span> | ||
| 47 | <span class="rightText"> {{tripDetail.freeTime}}分钟</span> | ||
| 48 | </li> | ||
| 49 | <li> | ||
| 50 | <span class="leftText"> 超出时间:</span> | ||
| 51 | <span class="rightText"> {{tripDetail.outTime}}分钟</span> | ||
| 52 | </li> | ||
| 53 | </ul> | ||
| 54 | <div class="amount">合计:{{tripDetail.total_fee}}元</div> | ||
| 55 | </div> | ||
| 56 | <div class="redBtnBox btnPosition" ng-show="!needPay"> | ||
| 57 | <button class=" mui-btn mui-btn-block redBigBtn" ng-click="backHome()"> | ||
| 58 | 返回首页 | ||
| 59 | </button> | ||
| 60 | </div> | ||
| 61 | <div class="bottomPosition" ng-show="needPay"> | ||
| 62 | <span> 合计:{{tripDetail.total_fee}}元</span> | ||
| 63 | <div class="goPay" ng-click="goPay()"> | ||
| 64 | 立即支付 | ||
| 65 | </div> | ||
| 66 | </div> | ||
| 67 | |||
| 68 | |||
| 69 | </div> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
html/unusual.html
0 → 100644
| 1 | <div class="unusual" ng-controller="unusualController"> | ||
| 2 | |||
| 3 | <div class="unusualBox1"> | ||
| 4 | <div class="unusualTitle"> | ||
| 5 | 如果您已还车,但仍然是租车状态,可能是您还车时未还上,请点击"<span>我已经还车</span>" | ||
| 6 | </div> | ||
| 7 | <div class="unusualText1" ng-click="returnBike()"> | ||
| 8 | |||
| 9 | <div class="unusualBike"> | ||
| 10 | |||
| 11 | </div> | ||
| 12 | <div class="text2"> | ||
| 13 | 我已经还车 | ||
| 14 | </div> | ||
| 15 | </div> | ||
| 16 | |||
| 17 | </div> | ||
| 18 | <div class="unusualBox1"> | ||
| 19 | <div class="unusualTitle oneLine"> | ||
| 20 | 如果还是未还上,请联系客服. | ||
| 21 | </div> | ||
| 22 | <div class="unusualText1" ng-click="hint()"> | ||
| 23 | <div class="customerImg"> | ||
| 24 | |||
| 25 | </div> | ||
| 26 | <div class="text2"> | ||
| 27 | 联系客服 | ||
| 28 | </div> | ||
| 29 | </div> | ||
| 30 | </div> | ||
| 31 | </div> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
html/wallet.html
0 → 100644
| 1 | <div ng-controller="walletController"> | ||
| 2 | <div class="walletIconContainer"> | ||
| 3 | <img src="images/wallet_large.png"/> | ||
| 4 | </div> | ||
| 5 | <div class="walletInfoTitle">我的余额</div> | ||
| 6 | <div class="walletInfoCount">¥{{balance}}</div> | ||
| 7 | <div class="walletBtn" ng-click="prepay()"> | ||
| 8 | <div class="walletBtnContent">充值</div> | ||
| 9 | </div> | ||
| 10 | </div> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
images/2.pic_hd--1.jpg
0 → 100644
4.13 KB
images/2.pic_hd.jpg
0 → 100644
4.13 KB
images/LittleBackground2x.png
0 → 100644
65.5 KB
images/Selected2x.png
0 → 100644
1.43 KB
images/Unchecked2x.png
0 → 100644
1.2 KB
images/alipay.png
0 → 100644
1.33 KB
images/backgroundTop.png
0 → 100644
14.8 KB
images/backgroundsan2x.png
0 → 100644
14.8 KB
images/becareful2x.png
0 → 100644
999 Bytes
images/bike.png
0 → 100644
1.81 KB
images/bond.png
0 → 100644
2.39 KB
images/contact.png
0 → 100644
2.29 KB
images/customerImg.png
0 → 100644
21.2 KB
images/details.png
0 → 100644
458 Bytes
images/go.png
0 → 100644
11.2 KB
images/goDetail.png
0 → 100644
1.36 KB
images/head.png
0 → 100644
41.2 KB
images/look2x.png
0 → 100644
5.93 KB
images/me.png
0 → 100644
4.13 KB
images/mylogo.png
0 → 100644
5.36 KB
images/myposition.png
0 → 100644
5.21 KB
images/new.png
0 → 100644
3.99 KB
images/opinion.png
0 → 100644
2.02 KB
images/out.png
0 → 100644
1.92 KB
images/rent.png
0 → 100644
5.98 KB
images/rent2xt.png
0 → 100644
5.98 KB
images/scancode.png
0 → 100644
661 Bytes
images/selected.png
0 → 100644
1.43 KB
images/site.png
0 → 100644
3.59 KB
images/slide.png
0 → 100644
109 Bytes
images/slideMenuBackground.png
0 → 100644
1.08 MB
images/triangle.png
0 → 100644
877 Bytes
images/trip.png
0 → 100644
2.43 KB
images/tripLeft.png
0 → 100644
16.1 KB
images/unselected.png
0 → 100644
1.2 KB
images/unusualBike.png
0 → 100644
23.5 KB
images/wallet.png
0 → 100644
1.83 KB
images/wallet2x.png
0 → 100644
449 Bytes
images/wallet_large.png
0 → 100644
5.38 KB
images/wechat.png
0 → 100644
1.21 KB
index.html
0 → 100644
| 1 | <!DOCTYPE html> | ||
| 2 | <html> | ||
| 3 | <head> | ||
| 4 | <meta charset="utf-8"> | ||
| 5 | <meta name="viewport" | ||
| 6 | content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no"/> | ||
| 7 | <title>东城行</title> | ||
| 8 | <!--<script src="js/mui/mui.min.js"></script>--> | ||
| 9 | <!--<link href="css/mui.min.css" rel="stylesheet"/> | ||
| 10 | <link href="css/app.css" rel="stylesheet"/> | ||
| 11 | <link href="bootstrap/css/bootstrap.min.css" rel="stylesheet"> | ||
| 12 | <script type="text/javascript" src="js/jquery-1.9.1.js"></script> | ||
| 13 | <script type="text/javascript" src="js/angularjs/angular.min.js"></script> | ||
| 14 | <script type="text/javascript" src="js/angularjs/angular-local-storage.js"></script> | ||
| 15 | <script type="text/javascript" src="js/angularjs/angular-ui-router.js"></script>--> | ||
| 16 | <!--<script src="js/debug.js"></script>--> | ||
| 17 | <!--<script src="https://res.wx.qq.com/open/js/jweixin-1.1.0.js"></script>--> | ||
| 18 | <!--wetrack ak--> | ||
| 19 | <!--<script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=0boKIhOAWCENnaZcxWlm0cmS3QcOkYNz"></script>--> | ||
| 20 | <!--npt ak--> | ||
| 21 | <!--<script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=ykvgUlEv77wstKqmFovr56pl4cKRUUEz"></script>--> | ||
| 22 | <!--<script type="text/javascript" src="js/layer/layer.js"></script> | ||
| 23 | <script type="text/javascript" src="js/layer/layerMobile/layer.js"></script> | ||
| 24 | |||
| 25 | <script src="js/compress.min.js" type="text/javascript" charset="utf-8"></script>--> | ||
| 26 | |||
| 27 | <!--<script type="text/javascript" src="js/app.js"></script> | ||
| 28 | <script src="js/service/weixinConfig.js"></script> | ||
| 29 | <script src="js/service/globalService.js" type="text/javascript" charset="utf-8"></script> | ||
| 30 | <script src="js/service/dingdaService.js" type="text/javascript" charset="utf-8"></script> | ||
| 31 | <script src="js/service/wechatPaymentService.js" type="text/javascript" charset="utf-8"></script> | ||
| 32 | <script type="text/javascript" charset="utf-8" src="js/controller/mainController.js"></script> | ||
| 33 | <script type="text/javascript" charset="utf-8" src="js/controller/mapController.js"></script> | ||
| 34 | <script type="text/javascript" charset="utf-8" src="js/controller/loginController.js"></script> | ||
| 35 | <script type="text/javascript" charset="utf-8" src="js/controller/walletController.js"></script> | ||
| 36 | <script type="text/javascript" charset="utf-8" src="js/controller/prepayController.js"></script> | ||
| 37 | <script type="text/javascript" charset="utf-8" src="js/controller/payController.js"></script> | ||
| 38 | <script type="text/javascript" charset="utf-8" src="js/controller/tripController.js"></script> | ||
| 39 | <script type="text/javascript" charset="utf-8" src="js/controller/tripDetailController.js"></script> | ||
| 40 | <script type="text/javascript" charset="utf-8" src="js/controller/opinionController.js"></script> | ||
| 41 | <script type="text/javascript" charset="utf-8" src="js/controller/contactController.js"></script> | ||
| 42 | <script type="text/javascript" charset="utf-8" src="js/controller/bondController.js"></script> | ||
| 43 | <script type="text/javascript" charset="utf-8" src="js/controller/bondPayController.js"></script> | ||
| 44 | <script type="text/javascript" charset="utf-8" src="js/controller/bondSuccessController.js"></script> | ||
| 45 | <script type="text/javascript" charset="utf-8" src="js/controller/rentDetailController.js"></script> | ||
| 46 | <script type="text/javascript" charset="utf-8" src="js/controller/unusualController.js"></script> | ||
| 47 | <script type="text/javascript" charset="utf-8" src="js/controller/rechargeListController.js"></script>--> | ||
| 48 | |||
| 49 | <style type="text/css"> | ||
| 50 | #appLoadingIndicator { | ||
| 51 | position: absolute; | ||
| 52 | top: 20%; | ||
| 53 | margin-top: -15px; | ||
| 54 | text-align: center; | ||
| 55 | width: 100%; | ||
| 56 | height: 30px; | ||
| 57 | } | ||
| 58 | |||
| 59 | .loadingImg { | ||
| 60 | background-color: #36D1E7; | ||
| 61 | display: inline-block; | ||
| 62 | height: 30px; | ||
| 63 | -webkit-border-radius: 50px; | ||
| 64 | margin: 0 5px; | ||
| 65 | width: 30px; | ||
| 66 | opacity: 1; | ||
| 67 | -webkit-animation-name: loadingImg; | ||
| 68 | -webkit-animation-duration: 2s; | ||
| 69 | -webkit-animation-iteration-count: infinite; | ||
| 70 | -webkit-animation-direction: linear; | ||
| 71 | } | ||
| 72 | |||
| 73 | @-webkit-keyframes loadingImg { | ||
| 74 | 0% { | ||
| 75 | opacity: 1 | ||
| 76 | } | ||
| 77 | 50% { | ||
| 78 | opacity: 0 | ||
| 79 | } | ||
| 80 | 100% { | ||
| 81 | opacity: 1 | ||
| 82 | } | ||
| 83 | } | ||
| 84 | |||
| 85 | </style> | ||
| 86 | |||
| 87 | |||
| 88 | </head> | ||
| 89 | <body ng-app="myApp"> | ||
| 90 | <div id="appLoadingIndicator"> | ||
| 91 | <div class="loadingImg"></div> | ||
| 92 | <div class="loadingImg"></div> | ||
| 93 | <div class="loadingImg"></div> | ||
| 94 | </div> | ||
| 95 | <div ui-view class="main"></div> | ||
| 96 | |||
| 97 | <link href="css/mui.min.css" rel="stylesheet"/> | ||
| 98 | <link href="css/app.css" rel="stylesheet"/> | ||
| 99 | <link href="bootstrap/css/bootstrap.min.css" rel="stylesheet"> | ||
| 100 | <script type="text/javascript" src="js/jquery-1.9.1.js"></script> | ||
| 101 | <script type="text/javascript" src="js/angularjs/angular.min.js"></script> | ||
| 102 | <script type="text/javascript" src="js/angularjs/angular-local-storage.js"></script> | ||
| 103 | <script type="text/javascript" src="js/angularjs/angular-ui-router.js"></script> | ||
| 104 | <!--<script src="js/debug.js"></script>--> | ||
| 105 | <script src="https://res.wx.qq.com/open/js/jweixin-1.1.0.js"></script> | ||
| 106 | <!--wetrack ak--> | ||
| 107 | <!--<script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=0boKIhOAWCENnaZcxWlm0cmS3QcOkYNz"></script>--> | ||
| 108 | <!--pnt test ak | ||
| 109 | <script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=ykvgUlEv77wstKqmFovr56pl4cKRUUEz"></script>--> | ||
| 110 | <!--pnt prod ak--> | ||
| 111 | <script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=QVYxRW2ZxRxLGHycLEcZUTtNfBK8rvwp"></script> | ||
| 112 | <script type="text/javascript" src="js/layer/layer.js"></script> | ||
| 113 | <script type="text/javascript" src="js/layer/layerMobile/layer.js"></script> | ||
| 114 | |||
| 115 | <!--<script src="js/compress.min.js" type="text/javascript" charset="utf-8"></script>--> | ||
| 116 | <script type="text/javascript" src="js/app.js"></script> | ||
| 117 | <script src="js/service/weixinConfig.js"></script> | ||
| 118 | <script src="js/service/globalService.js" type="text/javascript" charset="utf-8"></script> | ||
| 119 | <script src="js/service/dingdaService.js" type="text/javascript" charset="utf-8"></script> | ||
| 120 | <script src="js/service/wechatPaymentService.js" type="text/javascript" charset="utf-8"></script> | ||
| 121 | <script type="text/javascript" charset="utf-8" src="js/controller/mainController.js"></script> | ||
| 122 | <script type="text/javascript" charset="utf-8" src="js/controller/mapController.js"></script> | ||
| 123 | <script type="text/javascript" charset="utf-8" src="js/controller/loginController.js"></script> | ||
| 124 | <script type="text/javascript" charset="utf-8" src="js/controller/walletController.js"></script> | ||
| 125 | <script type="text/javascript" charset="utf-8" src="js/controller/prepayController.js"></script> | ||
| 126 | <script type="text/javascript" charset="utf-8" src="js/controller/payController.js"></script> | ||
| 127 | <script type="text/javascript" charset="utf-8" src="js/controller/tripController.js"></script> | ||
| 128 | <script type="text/javascript" charset="utf-8" src="js/controller/tripDetailController.js"></script> | ||
| 129 | <script type="text/javascript" charset="utf-8" src="js/controller/opinionController.js"></script> | ||
| 130 | <script type="text/javascript" charset="utf-8" src="js/controller/contactController.js"></script> | ||
| 131 | <script type="text/javascript" charset="utf-8" src="js/controller/bondController.js"></script> | ||
| 132 | <script type="text/javascript" charset="utf-8" src="js/controller/bondPayController.js"></script> | ||
| 133 | <script type="text/javascript" charset="utf-8" src="js/controller/bondSuccessController.js"></script> | ||
| 134 | <script type="text/javascript" charset="utf-8" src="js/controller/rentDetailController.js"></script> | ||
| 135 | <script type="text/javascript" charset="utf-8" src="js/controller/unusualController.js"></script> | ||
| 136 | <script type="text/javascript" charset="utf-8" src="js/controller/rechargeListController.js"></script> | ||
| 137 | <script type="text/javascript" src="bootstrap/js/bootstrap.min.js"></script> | ||
| 138 | </body> | ||
| 139 | </html> |
index.html.bak
0 → 100644
| 1 | <!DOCTYPE html> | ||
| 2 | <html> | ||
| 3 | <head> | ||
| 4 | <meta charset="utf-8"> | ||
| 5 | <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" /> | ||
| 6 | <title>叮嗒出行</title> | ||
| 7 | <!--<script src="js/mui/mui.min.js"></script>--> | ||
| 8 | <!--<link href="css/mui.min.css" rel="stylesheet"/> | ||
| 9 | <link href="css/app.css" rel="stylesheet"/> | ||
| 10 | <link href="bootstrap/css/bootstrap.min.css" rel="stylesheet"> | ||
| 11 | <script type="text/javascript" src="js/jquery-1.9.1.js"></script> | ||
| 12 | <script type="text/javascript" src="js/angularjs/angular.min.js"></script> | ||
| 13 | <script type="text/javascript" src="js/angularjs/angular-local-storage.js"></script> | ||
| 14 | <script type="text/javascript" src="js/angularjs/angular-ui-router.js"></script>--> | ||
| 15 | <!--<script src="js/debug.js"></script>--> | ||
| 16 | <!--<script src="https://res.wx.qq.com/open/js/jweixin-1.1.0.js"></script>--> | ||
| 17 | <!--wetrack ak--> | ||
| 18 | <!--<script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=0boKIhOAWCENnaZcxWlm0cmS3QcOkYNz"></script>--> | ||
| 19 | <!--npt ak--> | ||
| 20 | <!--<script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=ykvgUlEv77wstKqmFovr56pl4cKRUUEz"></script>--> | ||
| 21 | <!--<script type="text/javascript" src="js/layer/layer.js"></script> | ||
| 22 | <script type="text/javascript" src="js/layer/layerMobile/layer.js"></script> | ||
| 23 | |||
| 24 | <script src="js/compress.min.js" type="text/javascript" charset="utf-8"></script>--> | ||
| 25 | |||
| 26 | <!--<script type="text/javascript" src="js/app.js"></script> | ||
| 27 | <script src="js/service/weixinConfig.js"></script> | ||
| 28 | <script src="js/service/globalService.js" type="text/javascript" charset="utf-8"></script> | ||
| 29 | <script src="js/service/dingdaService.js" type="text/javascript" charset="utf-8"></script> | ||
| 30 | <script src="js/service/wechatPaymentService.js" type="text/javascript" charset="utf-8"></script> | ||
| 31 | <script type="text/javascript" charset="utf-8" src="js/controller/mainController.js"></script> | ||
| 32 | <script type="text/javascript" charset="utf-8" src="js/controller/mapController.js"></script> | ||
| 33 | <script type="text/javascript" charset="utf-8" src="js/controller/loginController.js"></script> | ||
| 34 | <script type="text/javascript" charset="utf-8" src="js/controller/walletController.js"></script> | ||
| 35 | <script type="text/javascript" charset="utf-8" src="js/controller/prepayController.js"></script> | ||
| 36 | <script type="text/javascript" charset="utf-8" src="js/controller/payController.js"></script> | ||
| 37 | <script type="text/javascript" charset="utf-8" src="js/controller/tripController.js"></script> | ||
| 38 | <script type="text/javascript" charset="utf-8" src="js/controller/tripDetailController.js"></script> | ||
| 39 | <script type="text/javascript" charset="utf-8" src="js/controller/opinionController.js"></script> | ||
| 40 | <script type="text/javascript" charset="utf-8" src="js/controller/contactController.js"></script> | ||
| 41 | <script type="text/javascript" charset="utf-8" src="js/controller/bondController.js"></script> | ||
| 42 | <script type="text/javascript" charset="utf-8" src="js/controller/bondPayController.js"></script> | ||
| 43 | <script type="text/javascript" charset="utf-8" src="js/controller/bondSuccessController.js"></script> | ||
| 44 | <script type="text/javascript" charset="utf-8" src="js/controller/rentDetailController.js"></script> | ||
| 45 | <script type="text/javascript" charset="utf-8" src="js/controller/unusualController.js"></script> | ||
| 46 | <script type="text/javascript" charset="utf-8" src="js/controller/rechargeListController.js"></script>--> | ||
| 47 | |||
| 48 | <style type="text/css"> | ||
| 49 | #appLoadingIndicator { | ||
| 50 | position: absolute; | ||
| 51 | top: 20%; | ||
| 52 | margin-top: -15px; | ||
| 53 | text-align: center; | ||
| 54 | width: 100%; | ||
| 55 | height: 30px; | ||
| 56 | } | ||
| 57 | |||
| 58 | .loadingImg{ | ||
| 59 | background-color: #36D1E7; | ||
| 60 | display: inline-block; | ||
| 61 | height: 30px; | ||
| 62 | -webkit-border-radius: 50px; | ||
| 63 | margin: 0 5px; | ||
| 64 | width: 30px; | ||
| 65 | opacity: 1; | ||
| 66 | -webkit-animation-name: loadingImg; | ||
| 67 | -webkit-animation-duration: 2s; | ||
| 68 | -webkit-animation-iteration-count: infinite; | ||
| 69 | -webkit-animation-direction: linear; | ||
| 70 | } | ||
| 71 | |||
| 72 | @-webkit-keyframes loadingImg{ | ||
| 73 | 0% { | ||
| 74 | opacity: 1 | ||
| 75 | } | ||
| 76 | 50% { | ||
| 77 | opacity: 0 | ||
| 78 | } | ||
| 79 | 100% { | ||
| 80 | opacity: 1 | ||
| 81 | } | ||
| 82 | } | ||
| 83 | |||
| 84 | </style> | ||
| 85 | |||
| 86 | |||
| 87 | </head> | ||
| 88 | <body ng-app="myApp"> | ||
| 89 | <div id="appLoadingIndicator"> | ||
| 90 | <div class="loadingImg"></div> | ||
| 91 | <div class="loadingImg"></div> | ||
| 92 | <div class="loadingImg"></div> | ||
| 93 | </div> | ||
| 94 | <div ui-view class="main"></div> | ||
| 95 | |||
| 96 | <link href="css/mui.min.css" rel="stylesheet"/> | ||
| 97 | <link href="css/app.css" rel="stylesheet"/> | ||
| 98 | <link href="bootstrap/css/bootstrap.min.css" rel="stylesheet"> | ||
| 99 | <script type="text/javascript" src="js/jquery-1.9.1.js"></script> | ||
| 100 | <script type="text/javascript" src="js/angularjs/angular.min.js"></script> | ||
| 101 | <script type="text/javascript" src="js/angularjs/angular-local-storage.js"></script> | ||
| 102 | <script type="text/javascript" src="js/angularjs/angular-ui-router.js"></script> | ||
| 103 | <!--<script src="js/debug.js"></script>--> | ||
| 104 | <script src="https://res.wx.qq.com/open/js/jweixin-1.1.0.js"></script> | ||
| 105 | <!--wetrack ak--> | ||
| 106 | <!--<script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=0boKIhOAWCENnaZcxWlm0cmS3QcOkYNz"></script>--> | ||
| 107 | <!--pnt test ak | ||
| 108 | <script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=ykvgUlEv77wstKqmFovr56pl4cKRUUEz"></script>--> | ||
| 109 | <!--pnt prod ak--> | ||
| 110 | <script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=ykvgUlEv77wstKqmFovr56pl4cKRUUEz"></script> | ||
| 111 | <script type="text/javascript" src="js/layer/layer.js"></script> | ||
| 112 | <script type="text/javascript" src="js/layer/layerMobile/layer.js"></script> | ||
| 113 | |||
| 114 | <script src="js/compress.min.js" type="text/javascript" charset="utf-8"></script> | ||
| 115 | <script type="text/javascript" src="bootstrap/js/bootstrap.min.js"></script> | ||
| 116 | </body> | ||
| 117 | </html> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
js/.DS_Store
0 → 100644
No preview for this file type
js/angularjs/angular-local-storage.js
0 → 100644
| 1 | (function() { | ||
| 2 | /* Start angularLocalStorage */ | ||
| 3 | 'use strict'; | ||
| 4 | var angularLocalStorage = angular.module('LocalStorageModule', []); | ||
| 5 | |||
| 6 | angularLocalStorage.provider('localStorageService', function() { | ||
| 7 | |||
| 8 | // You should set a prefix to avoid overwriting any local storage variables from the rest of your app | ||
| 9 | // e.g. localStorageServiceProvider.setPrefix('youAppName'); | ||
| 10 | // With provider you can use config as this: | ||
| 11 | // myApp.config(function (localStorageServiceProvider) { | ||
| 12 | // localStorageServiceProvider.prefix = 'yourAppName'; | ||
| 13 | // }); | ||
| 14 | this.prefix = 'ls'; | ||
| 15 | |||
| 16 | // You could change web storage type localstorage or sessionStorage | ||
| 17 | this.storageType = 'localStorage'; | ||
| 18 | |||
| 19 | // Cookie options (usually in case of fallback) | ||
| 20 | // expiry = Number of days before cookies expire // 0 = Does not expire | ||
| 21 | // path = The web path the cookie represents | ||
| 22 | this.cookie = { | ||
| 23 | expiry: 30, | ||
| 24 | path: '/' | ||
| 25 | }; | ||
| 26 | |||
| 27 | // Send signals for each of the following actions? | ||
| 28 | this.notify = { | ||
| 29 | setItem: true, | ||
| 30 | removeItem: false | ||
| 31 | }; | ||
| 32 | |||
| 33 | // Setter for the prefix | ||
| 34 | this.setPrefix = function(prefix) { | ||
| 35 | this.prefix = prefix; | ||
| 36 | }; | ||
| 37 | |||
| 38 | // Setter for the storageType | ||
| 39 | this.setStorageType = function(storageType) { | ||
| 40 | this.storageType = storageType; | ||
| 41 | }; | ||
| 42 | |||
| 43 | // Setter for cookie config | ||
| 44 | this.setStorageCookie = function(exp, path) { | ||
| 45 | this.cookie = { | ||
| 46 | expiry: exp, | ||
| 47 | path: path | ||
| 48 | }; | ||
| 49 | }; | ||
| 50 | |||
| 51 | // Setter for cookie domain | ||
| 52 | this.setStorageCookieDomain = function(domain) { | ||
| 53 | this.cookie.domain = domain; | ||
| 54 | }; | ||
| 55 | |||
| 56 | // Setter for notification config | ||
| 57 | // itemSet & itemRemove should be booleans | ||
| 58 | this.setNotify = function(itemSet, itemRemove) { | ||
| 59 | this.notify = { | ||
| 60 | setItem: itemSet, | ||
| 61 | removeItem: itemRemove | ||
| 62 | }; | ||
| 63 | }; | ||
| 64 | |||
| 65 | this.$get = ['$rootScope', '$window', '$document', function($rootScope, $window, $document) { | ||
| 66 | |||
| 67 | var prefix = this.prefix; | ||
| 68 | var cookie = this.cookie; | ||
| 69 | var notify = this.notify; | ||
| 70 | var storageType = this.storageType; | ||
| 71 | var webStorage = $window[storageType]; | ||
| 72 | |||
| 73 | // When Angular's $document is not available | ||
| 74 | if (!$document) { | ||
| 75 | $document = document; | ||
| 76 | } | ||
| 77 | |||
| 78 | // If there is a prefix set in the config lets use that with an appended period for readability | ||
| 79 | if (prefix.substr(-1) !== '.') { | ||
| 80 | prefix = !!prefix ? prefix + '.' : ''; | ||
| 81 | } | ||
| 82 | |||
| 83 | // Checks the browser to see if local storage is supported | ||
| 84 | var browserSupportsLocalStorage = (function () { | ||
| 85 | try { | ||
| 86 | var supported = (storageType in $window && $window[storageType] !== null); | ||
| 87 | |||
| 88 | // When Safari (OS X or iOS) is in private browsing mode, it appears as though localStorage | ||
| 89 | // is available, but trying to call .setItem throws an exception. | ||
| 90 | // | ||
| 91 | // "QUOTA_EXCEEDED_ERR: DOM Exception 22: An attempt was made to add something to storage | ||
| 92 | // that exceeded the quota." | ||
| 93 | var key = prefix + '__' + Math.round(Math.random() * 1e7); | ||
| 94 | if (supported) { | ||
| 95 | webStorage.setItem(key, ''); | ||
| 96 | webStorage.removeItem(key); | ||
| 97 | } | ||
| 98 | |||
| 99 | return true; | ||
| 100 | } catch (e) { | ||
| 101 | storageType = 'cookie'; | ||
| 102 | $rootScope.$broadcast('LocalStorageModule.notification.error', e.message); | ||
| 103 | return false; | ||
| 104 | } | ||
| 105 | }()); | ||
| 106 | |||
| 107 | // Directly adds a value to local storage | ||
| 108 | // If local storage is not available in the browser use cookies | ||
| 109 | // Example use: localStorageService.add('library','angular'); | ||
| 110 | var addToLocalStorage = function (key, value) { | ||
| 111 | |||
| 112 | // If this browser does not support local storage use cookies | ||
| 113 | if (!browserSupportsLocalStorage) { | ||
| 114 | $rootScope.$broadcast('LocalStorageModule.notification.warning', 'LOCAL_STORAGE_NOT_SUPPORTED'); | ||
| 115 | if (notify.setItem) { | ||
| 116 | $rootScope.$broadcast('LocalStorageModule.notification.setitem', {key: key, newvalue: value, storageType: 'cookie'}); | ||
| 117 | } | ||
| 118 | return addToCookies(key, value); | ||
| 119 | } | ||
| 120 | |||
| 121 | // Let's convert undefined values to null to get the value consistent | ||
| 122 | if (typeof value === "undefined") { | ||
| 123 | value = null; | ||
| 124 | } | ||
| 125 | |||
| 126 | try { | ||
| 127 | if (angular.isObject(value) || angular.isArray(value)) { | ||
| 128 | value = angular.toJson(value); | ||
| 129 | } | ||
| 130 | webStorage.setItem(prefix + key, value); | ||
| 131 | if (notify.setItem) { | ||
| 132 | $rootScope.$broadcast('LocalStorageModule.notification.setitem', {key: key, newvalue: value, storageType: this.storageType}); | ||
| 133 | } | ||
| 134 | } catch (e) { | ||
| 135 | $rootScope.$broadcast('LocalStorageModule.notification.error', e.message); | ||
| 136 | return addToCookies(key, value); | ||
| 137 | } | ||
| 138 | return true; | ||
| 139 | }; | ||
| 140 | |||
| 141 | // Directly get a value from local storage | ||
| 142 | // Example use: localStorageService.get('library'); // returns 'angular' | ||
| 143 | var getFromLocalStorage = function (key) { | ||
| 144 | |||
| 145 | if (!browserSupportsLocalStorage) { | ||
| 146 | $rootScope.$broadcast('LocalStorageModule.notification.warning','LOCAL_STORAGE_NOT_SUPPORTED'); | ||
| 147 | return getFromCookies(key); | ||
| 148 | } | ||
| 149 | |||
| 150 | var item = webStorage.getItem(prefix + key); | ||
| 151 | // angular.toJson will convert null to 'null', so a proper conversion is needed | ||
| 152 | // FIXME not a perfect solution, since a valid 'null' string can't be stored | ||
| 153 | if (!item || item === 'null') { | ||
| 154 | return null; | ||
| 155 | } | ||
| 156 | |||
| 157 | if (item.charAt(0) === "{" || item.charAt(0) === "[") { | ||
| 158 | return angular.fromJson(item); | ||
| 159 | } | ||
| 160 | |||
| 161 | return item; | ||
| 162 | }; | ||
| 163 | |||
| 164 | // Remove an item from local storage | ||
| 165 | // Example use: localStorageService.remove('library'); // removes the key/value pair of library='angular' | ||
| 166 | var removeFromLocalStorage = function (key) { | ||
| 167 | if (!browserSupportsLocalStorage) { | ||
| 168 | $rootScope.$broadcast('LocalStorageModule.notification.warning', 'LOCAL_STORAGE_NOT_SUPPORTED'); | ||
| 169 | if (notify.removeItem) { | ||
| 170 | $rootScope.$broadcast('LocalStorageModule.notification.removeitem', {key: key, storageType: 'cookie'}); | ||
| 171 | } | ||
| 172 | return removeFromCookies(key); | ||
| 173 | } | ||
| 174 | |||
| 175 | try { | ||
| 176 | webStorage.removeItem(prefix+key); | ||
| 177 | if (notify.removeItem) { | ||
| 178 | $rootScope.$broadcast('LocalStorageModule.notification.removeitem', {key: key, storageType: this.storageType}); | ||
| 179 | } | ||
| 180 | } catch (e) { | ||
| 181 | $rootScope.$broadcast('LocalStorageModule.notification.error', e.message); | ||
| 182 | return removeFromCookies(key); | ||
| 183 | } | ||
| 184 | return true; | ||
| 185 | }; | ||
| 186 | |||
| 187 | // Return array of keys for local storage | ||
| 188 | // Example use: var keys = localStorageService.keys() | ||
| 189 | var getKeysForLocalStorage = function () { | ||
| 190 | |||
| 191 | if (!browserSupportsLocalStorage) { | ||
| 192 | $rootScope.$broadcast('LocalStorageModule.notification.warning', 'LOCAL_STORAGE_NOT_SUPPORTED'); | ||
| 193 | return false; | ||
| 194 | } | ||
| 195 | |||
| 196 | var prefixLength = prefix.length; | ||
| 197 | var keys = []; | ||
| 198 | for (var key in webStorage) { | ||
| 199 | // Only return keys that are for this app | ||
| 200 | if (key.substr(0,prefixLength) === prefix) { | ||
| 201 | try { | ||
| 202 | keys.push(key.substr(prefixLength)); | ||
| 203 | } catch (e) { | ||
| 204 | $rootScope.$broadcast('LocalStorageModule.notification.error', e.Description); | ||
| 205 | return []; | ||
| 206 | } | ||
| 207 | } | ||
| 208 | } | ||
| 209 | return keys; | ||
| 210 | }; | ||
| 211 | |||
| 212 | // Remove all data for this app from local storage | ||
| 213 | // Also optionally takes a regular expression string and removes the matching key-value pairs | ||
| 214 | // Example use: localStorageService.clearAll(); | ||
| 215 | // Should be used mostly for development purposes | ||
| 216 | var clearAllFromLocalStorage = function (regularExpression) { | ||
| 217 | |||
| 218 | regularExpression = regularExpression || ""; | ||
| 219 | //accounting for the '.' in the prefix when creating a regex | ||
| 220 | var tempPrefix = prefix.slice(0, -1); | ||
| 221 | var testRegex = new RegExp(tempPrefix + '.' + regularExpression); | ||
| 222 | |||
| 223 | if (!browserSupportsLocalStorage) { | ||
| 224 | $rootScope.$broadcast('LocalStorageModule.notification.warning', 'LOCAL_STORAGE_NOT_SUPPORTED'); | ||
| 225 | return clearAllFromCookies(); | ||
| 226 | } | ||
| 227 | |||
| 228 | var prefixLength = prefix.length; | ||
| 229 | |||
| 230 | for (var key in webStorage) { | ||
| 231 | // Only remove items that are for this app and match the regular expression | ||
| 232 | if (testRegex.test(key)) { | ||
| 233 | try { | ||
| 234 | removeFromLocalStorage(key.substr(prefixLength)); | ||
| 235 | } catch (e) { | ||
| 236 | $rootScope.$broadcast('LocalStorageModule.notification.error',e.message); | ||
| 237 | return clearAllFromCookies(); | ||
| 238 | } | ||
| 239 | } | ||
| 240 | } | ||
| 241 | return true; | ||
| 242 | }; | ||
| 243 | |||
| 244 | // Checks the browser to see if cookies are supported | ||
| 245 | var browserSupportsCookies = function() { | ||
| 246 | try { | ||
| 247 | return navigator.cookieEnabled || | ||
| 248 | ("cookie" in $document && ($document.cookie.length > 0 || | ||
| 249 | ($document.cookie = "test").indexOf.call($document.cookie, "test") > -1)); | ||
| 250 | } catch (e) { | ||
| 251 | $rootScope.$broadcast('LocalStorageModule.notification.error', e.message); | ||
| 252 | return false; | ||
| 253 | } | ||
| 254 | }; | ||
| 255 | |||
| 256 | // Directly adds a value to cookies | ||
| 257 | // Typically used as a fallback is local storage is not available in the browser | ||
| 258 | // Example use: localStorageService.cookie.add('library','angular'); | ||
| 259 | var addToCookies = function (key, value) { | ||
| 260 | |||
| 261 | if (typeof value === "undefined") { | ||
| 262 | return false; | ||
| 263 | } | ||
| 264 | |||
| 265 | if (!browserSupportsCookies()) { | ||
| 266 | $rootScope.$broadcast('LocalStorageModule.notification.error', 'COOKIES_NOT_SUPPORTED'); | ||
| 267 | return false; | ||
| 268 | } | ||
| 269 | |||
| 270 | try { | ||
| 271 | var expiry = '', | ||
| 272 | expiryDate = new Date(), | ||
| 273 | cookieDomain = ''; | ||
| 274 | |||
| 275 | if (value === null) { | ||
| 276 | // Mark that the cookie has expired one day ago | ||
| 277 | expiryDate.setTime(expiryDate.getTime() + (-1 * 24 * 60 * 60 * 1000)); | ||
| 278 | expiry = "; expires=" + expiryDate.toGMTString(); | ||
| 279 | value = ''; | ||
| 280 | } else if (cookie.expiry !== 0) { | ||
| 281 | expiryDate.setTime(expiryDate.getTime() + (cookie.expiry * 24 * 60 * 60 * 1000)); | ||
| 282 | expiry = "; expires=" + expiryDate.toGMTString(); | ||
| 283 | } | ||
| 284 | if (!!key) { | ||
| 285 | var cookiePath = "; path=" + cookie.path; | ||
| 286 | if(cookie.domain){ | ||
| 287 | cookieDomain = "; domain=" + cookie.domain; | ||
| 288 | } | ||
| 289 | $document.cookie = prefix + key + "=" + encodeURIComponent(value) + expiry + cookiePath + cookieDomain; | ||
| 290 | } | ||
| 291 | } catch (e) { | ||
| 292 | $rootScope.$broadcast('LocalStorageModule.notification.error',e.message); | ||
| 293 | return false; | ||
| 294 | } | ||
| 295 | return true; | ||
| 296 | }; | ||
| 297 | |||
| 298 | // Directly get a value from a cookie | ||
| 299 | // Example use: localStorageService.cookie.get('library'); // returns 'angular' | ||
| 300 | var getFromCookies = function (key) { | ||
| 301 | if (!browserSupportsCookies()) { | ||
| 302 | $rootScope.$broadcast('LocalStorageModule.notification.error', 'COOKIES_NOT_SUPPORTED'); | ||
| 303 | return false; | ||
| 304 | } | ||
| 305 | |||
| 306 | var cookies = $document.cookie && $document.cookie.split(';') || []; | ||
| 307 | for(var i=0; i < cookies.length; i++) { | ||
| 308 | var thisCookie = cookies[i]; | ||
| 309 | while (thisCookie.charAt(0) === ' ') { | ||
| 310 | thisCookie = thisCookie.substring(1,thisCookie.length); | ||
| 311 | } | ||
| 312 | if (thisCookie.indexOf(prefix + key + '=') === 0) { | ||
| 313 | return decodeURIComponent(thisCookie.substring(prefix.length + key.length + 1, thisCookie.length)); | ||
| 314 | } | ||
| 315 | } | ||
| 316 | return null; | ||
| 317 | }; | ||
| 318 | |||
| 319 | var removeFromCookies = function (key) { | ||
| 320 | addToCookies(key,null); | ||
| 321 | }; | ||
| 322 | |||
| 323 | var clearAllFromCookies = function () { | ||
| 324 | var thisCookie = null, thisKey = null; | ||
| 325 | var prefixLength = prefix.length; | ||
| 326 | var cookies = $document.cookie.split(';'); | ||
| 327 | for(var i = 0; i < cookies.length; i++) { | ||
| 328 | thisCookie = cookies[i]; | ||
| 329 | |||
| 330 | while (thisCookie.charAt(0) === ' ') { | ||
| 331 | thisCookie = thisCookie.substring(1, thisCookie.length); | ||
| 332 | } | ||
| 333 | |||
| 334 | var key = thisCookie.substring(prefixLength, thisCookie.indexOf('=')); | ||
| 335 | removeFromCookies(key); | ||
| 336 | } | ||
| 337 | }; | ||
| 338 | |||
| 339 | var getStorageType = function() { | ||
| 340 | return storageType; | ||
| 341 | }; | ||
| 342 | |||
| 343 | return { | ||
| 344 | isSupported: browserSupportsLocalStorage, | ||
| 345 | getStorageType: getStorageType, | ||
| 346 | set: addToLocalStorage, | ||
| 347 | add: addToLocalStorage, //DEPRECATED | ||
| 348 | get: getFromLocalStorage, | ||
| 349 | keys: getKeysForLocalStorage, | ||
| 350 | remove: removeFromLocalStorage, | ||
| 351 | clearAll: clearAllFromLocalStorage, | ||
| 352 | cookie: { | ||
| 353 | set: addToCookies, | ||
| 354 | add: addToCookies, //DEPRECATED | ||
| 355 | get: getFromCookies, | ||
| 356 | remove: removeFromCookies, | ||
| 357 | clearAll: clearAllFromCookies | ||
| 358 | } | ||
| 359 | }; | ||
| 360 | }]; | ||
| 361 | }); | ||
| 362 | }).call(this); |
js/angularjs/angular-ui-router.js
0 → 100644
This diff could not be displayed because it is too large.
js/angularjs/angular.min.js
0 → 100644
This diff could not be displayed because it is too large.
js/app.js
0 → 100644
| 1 | angular.module('myApp.services', ['LocalStorageModule']); | ||
| 2 | angular.module('myApp.directives', []); | ||
| 3 | var app = angular.module('myApp', [ "ui.router",'myApp.services', 'myApp.directives']); | ||
| 4 | |||
| 5 | app.config(['$stateProvider' , '$urlRouterProvider' , function($stateProvider, $urlRouterProvider){ | ||
| 6 | $urlRouterProvider.otherwise("/main"); | ||
| 7 | $stateProvider.state('main', { | ||
| 8 | url: "/main", | ||
| 9 | templateUrl: "html/main.html" | ||
| 10 | }) | ||
| 11 | .state('login',{ | ||
| 12 | url: "/login", | ||
| 13 | templateUrl: "html/login.html" | ||
| 14 | }) | ||
| 15 | .state('trip',{ | ||
| 16 | url: "/trip", | ||
| 17 | templateUrl: "html/trip.html", | ||
| 18 | controller: 'tripController' | ||
| 19 | }) | ||
| 20 | .state('wallet',{ | ||
| 21 | url: "/wallet", | ||
| 22 | templateUrl: "html/wallet.html" | ||
| 23 | }) | ||
| 24 | .state('bond',{ | ||
| 25 | url: "/bond/?longitude&latitude", | ||
| 26 | templateUrl: "html/bond.html" | ||
| 27 | }) | ||
| 28 | .state('contact',{ | ||
| 29 | url: "/contact", | ||
| 30 | templateUrl: "html/contact.html" | ||
| 31 | }) | ||
| 32 | .state('opinion',{ | ||
| 33 | url: "/opinion/?longitude&latitude", | ||
| 34 | templateUrl: "html/opinion.html" | ||
| 35 | }) | ||
| 36 | .state('tripDetail',{ | ||
| 37 | url: "/tripDetail/:orderId", | ||
| 38 | templateUrl: "html/tripDetail.html" , | ||
| 39 | controller: 'tripDetailController' | ||
| 40 | }) | ||
| 41 | |||
| 42 | .state('prepay',{ | ||
| 43 | url: "/prepay", | ||
| 44 | templateUrl: "html/prepay.html" | ||
| 45 | }) | ||
| 46 | .state('pay',{ | ||
| 47 | url: "/pay", | ||
| 48 | templateUrl: "html/pay.html" | ||
| 49 | }) | ||
| 50 | .state('bondPay',{ | ||
| 51 | url: "/bondPay", | ||
| 52 | templateUrl: "html/bondPay.html" | ||
| 53 | }) | ||
| 54 | .state('bondSuccess',{ | ||
| 55 | url: "/bondSuccess", | ||
| 56 | templateUrl: "html/bondSuccess.html" | ||
| 57 | }) | ||
| 58 | .state('rentDetail',{ | ||
| 59 | url: "/rentDetail", | ||
| 60 | templateUrl: "html/rentDetail.html" | ||
| 61 | }) | ||
| 62 | .state('unusual',{ | ||
| 63 | url: "/unusual/:id", | ||
| 64 | templateUrl: "html/unusual.html" | ||
| 65 | }) | ||
| 66 | .state('rechargeList',{ | ||
| 67 | url: "/rechargeList", | ||
| 68 | templateUrl: "html/rechargeList.html" | ||
| 69 | }) | ||
| 70 | |||
| 71 | |||
| 72 | |||
| 73 | }]) | ||
| 74 | app.run(['globalService', function(globalService) { | ||
| 75 | globalService.init(); | ||
| 76 | var loading = document.getElementById("appLoadingIndicator"); | ||
| 77 | loading.style.display = "none"; | ||
| 78 | }]) | ||
| 79 | //$(window).bind("load resize",function(){ | ||
| 80 | // $("body").css({zoom:$(window).width()/320,visibility:"visible"}); | ||
| 81 | //}); | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
js/circle.js
0 → 100644
| 1 | (function($){function CircleProgress(config){this.init(config)}CircleProgress.prototype={value:0.0,size:200.0,startAngle:-Math.PI,thickness:'auto',fill:{gradient:['#3aeabb','#fdd250']},emptyFill:'rgba(0, 0, 0, .1)',animation:{duration:1200,easing:'circleProgressEasing'},animationStartValue:0.0,reverse:false,lineCap:'butt',constructor:CircleProgress,el:null,canvas:null,ctx:null,radius:0.0,arcFill:null,lastFrameValue:0.0,init:function(config){$.extend(this,config);this.radius=this.size/2;this.initWidget();this.initFill();this.draw()},initWidget:function(){var canvas=this.canvas=this.canvas||$('<canvas>').prependTo(this.el)[0];canvas.width=this.size;canvas.height=this.size;this.ctx=canvas.getContext('2d')},initFill:function(){var self=this,fill=this.fill,ctx=this.ctx,size=this.size;if(!fill)throw Error("The fill is not specified!");if(fill.color)this.arcFill=fill.color;if(fill.gradient){var gr=fill.gradient;if(gr.length==1){this.arcFill=gr[0]}else if(gr.length>1){var ga=fill.gradientAngle||0,gd=fill.gradientDirection||[size/2*(1-Math.cos(ga)),size/2*(1+Math.sin(ga)),size/2*(1+Math.cos(ga)),size/2*(1-Math.sin(ga))];var lg=ctx.createLinearGradient.apply(ctx,gd);for(var i=0;i<gr.length;i++){var color=gr[i],pos=i/(gr.length-1);if($.isArray(color)){pos=color[1];color=color[0]}lg.addColorStop(pos,color)}this.arcFill=lg}}if(fill.image){var img;if(fill.image instanceof Image){img=fill.image}else{img=new Image();img.src=fill.image}if(img.complete)setImageFill();else img.onload=setImageFill}function setImageFill(){var bg=$('<canvas>')[0];bg.width=self.size;bg.height=self.size;bg.getContext('2d').drawImage(img,0,0,size,size);self.arcFill=self.ctx.createPattern(bg,'no-repeat');self.drawFrame(self.lastFrameValue)}},draw:function(){if(this.animation)this.drawAnimated(this.value);else this.drawFrame(this.value)},drawFrame:function(v){this.lastFrameValue=v;this.ctx.clearRect(0,0,this.size,this.size);this.drawEmptyArc(v);this.drawArc(v)},drawArc:function(v){var ctx=this.ctx,r=this.radius,t=this.getThickness(),a=this.startAngle;ctx.save();ctx.beginPath();if(!this.reverse){ctx.arc(r,r,r-t/2,a,a+Math.PI*2*v)}else{ctx.arc(r,r,r-t/2,a-Math.PI*2*v,a)}ctx.lineWidth=t;ctx.lineCap=this.lineCap;ctx.strokeStyle=this.arcFill;ctx.stroke();ctx.restore()},drawEmptyArc:function(v){var ctx=this.ctx,r=this.radius,t=this.getThickness(),a=this.startAngle;if(v<1){ctx.save();ctx.beginPath();if(v<=0){ctx.arc(r,r,r-t/2,0,Math.PI*2)}else{if(!this.reverse){ctx.arc(r,r,r-t/2,a+Math.PI*2*v,a)}else{ctx.arc(r,r,r-t/2,a,a-Math.PI*2*v)}}ctx.lineWidth=t;ctx.strokeStyle=this.emptyFill;ctx.stroke();ctx.restore()}},drawAnimated:function(v){var self=this,el=this.el;el.trigger('circle-animation-start');$(this.canvas).stop(true,true).css({animationProgress:0}).animate({animationProgress:1},$.extend({},this.animation,{step:function(animationProgress){var stepValue=self.animationStartValue*(1-animationProgress)+v*animationProgress;self.drawFrame(stepValue);el.trigger('circle-animation-progress',[animationProgress,stepValue])},complete:function(){el.trigger('circle-animation-end')}}))},getThickness:function(){return $.isNumeric(this.thickness)?this.thickness:this.size/14}};$.circleProgress={defaults:CircleProgress.prototype};$.easing.circleProgressEasing=function(x,t,b,c,d){if((t/=d/2)<1)return c/2*t*t*t+b;return c/2*((t-=2)*t*t+2)+b};$.fn.circleProgress=function(config){var dataName='circle-progress';if(config=='widget'){var data=this.data(dataName);return data&&data.canvas}return this.each(function(){var el=$(this),instance=el.data(dataName),cfg=$.isPlainObject(config)?config:{};if(instance){instance.init(cfg)}else{cfg.el=el;instance=new CircleProgress(cfg);el.data(dataName,instance)}})}})(jQuery); |
js/compress.js
0 → 100644
| 1 | ///<jscompress sourcefile="app.js" /> | ||
| 2 | angular.module('myApp.services', ['LocalStorageModule']); | ||
| 3 | angular.module('myApp.directives', []); | ||
| 4 | var app = angular.module('myApp', [ "ui.router",'myApp.services', 'myApp.directives']); | ||
| 5 | |||
| 6 | app.config(['$stateProvider' , '$urlRouterProvider' , function($stateProvider, $urlRouterProvider){ | ||
| 7 | $urlRouterProvider.otherwise("/main"); | ||
| 8 | $stateProvider.state('main', { | ||
| 9 | url: "/main", | ||
| 10 | templateUrl: "html/main.html" | ||
| 11 | }) | ||
| 12 | .state('login',{ | ||
| 13 | url: "/login", | ||
| 14 | templateUrl: "html/login.html" | ||
| 15 | }) | ||
| 16 | .state('trip',{ | ||
| 17 | url: "/trip", | ||
| 18 | templateUrl: "html/trip.html", | ||
| 19 | controller: 'tripController' | ||
| 20 | }) | ||
| 21 | .state('wallet',{ | ||
| 22 | url: "/wallet", | ||
| 23 | templateUrl: "html/wallet.html" | ||
| 24 | }) | ||
| 25 | .state('bond',{ | ||
| 26 | url: "/bond/?longitude&latitude", | ||
| 27 | templateUrl: "html/bond.html" | ||
| 28 | }) | ||
| 29 | .state('contact',{ | ||
| 30 | url: "/contact", | ||
| 31 | templateUrl: "html/contact.html" | ||
| 32 | }) | ||
| 33 | .state('opinion',{ | ||
| 34 | url: "/opinion/?longitude&latitude", | ||
| 35 | templateUrl: "html/opinion.html" | ||
| 36 | }) | ||
| 37 | .state('tripDetail',{ | ||
| 38 | url: "/tripDetail/:orderId", | ||
| 39 | templateUrl: "html/tripDetail.html" , | ||
| 40 | controller: 'tripDetailController' | ||
| 41 | }) | ||
| 42 | |||
| 43 | .state('prepay',{ | ||
| 44 | url: "/prepay", | ||
| 45 | templateUrl: "html/prepay.html" | ||
| 46 | }) | ||
| 47 | .state('pay',{ | ||
| 48 | url: "/pay", | ||
| 49 | templateUrl: "html/pay.html" | ||
| 50 | }) | ||
| 51 | .state('bondPay',{ | ||
| 52 | url: "/bondPay", | ||
| 53 | templateUrl: "html/bondPay.html" | ||
| 54 | }) | ||
| 55 | .state('bondSuccess',{ | ||
| 56 | url: "/bondSuccess", | ||
| 57 | templateUrl: "html/bondSuccess.html" | ||
| 58 | }) | ||
| 59 | .state('rentDetail',{ | ||
| 60 | url: "/rentDetail", | ||
| 61 | templateUrl: "html/rentDetail.html" | ||
| 62 | }) | ||
| 63 | .state('unusual',{ | ||
| 64 | url: "/unusual/:id", | ||
| 65 | templateUrl: "html/unusual.html" | ||
| 66 | }) | ||
| 67 | .state('rechargeList',{ | ||
| 68 | url: "/rechargeList", | ||
| 69 | templateUrl: "html/rechargeList.html" | ||
| 70 | }) | ||
| 71 | |||
| 72 | |||
| 73 | |||
| 74 | }]) | ||
| 75 | app.run(['globalService', function(globalService) { | ||
| 76 | globalService.init(); | ||
| 77 | var loading = document.getElementById("appLoadingIndicator"); | ||
| 78 | loading.style.display = "none"; | ||
| 79 | }]) | ||
| 80 | //$(window).bind("load resize",function(){ | ||
| 81 | // $("body").css({zoom:$(window).width()/320,visibility:"visible"}); | ||
| 82 | //}); | ||
| 83 | ///<jscompress sourcefile="weixinConfig.js" /> | ||
| 84 | /** | ||
| 85 | * Created by zhanghong on 15/3/8. | ||
| 86 | */ | ||
| 87 | function weixinOptionMenuInit(appId, timestamp, nonceStr, signature){ | ||
| 88 | try { | ||
| 89 | // wwsDebug.info("appId:" + appId); | ||
| 90 | // wwsDebug.info("timestamp:" + timestamp); | ||
| 91 | // wwsDebug.info("nonceStr:" + nonceStr); | ||
| 92 | // wwsDebug.info("signature:" + signature); | ||
| 93 | // alert("typeof wx.config " + typeof wx.config); | ||
| 94 | // if (wx) { | ||
| 95 | wx.config({ | ||
| 96 | debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。 | ||
| 97 | appId: appId, // 必填,公众号的唯一标识 | ||
| 98 | timestamp: timestamp, // 必填,生成签名的时间戳 | ||
| 99 | nonceStr: nonceStr, // 必填,生成签名的随机串 | ||
| 100 | signature: signature,// 必填,签名,见附录1 | ||
| 101 | jsApiList: ['scanQRCode','getLocation'] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2 | ||
| 102 | }); | ||
| 103 | wx.error(function(res){ | ||
| 104 | layer.open({ | ||
| 105 | content:"微信扫码功能不能用,无法使用扫码租车", | ||
| 106 | time:1 | ||
| 107 | }); | ||
| 108 | // config信息验证失败会执行error函数,如签名过期导致验证失败,具体错误信息可以打开config的debug模式查看,也可以在返回的res参数中查看,对于SPA可以在这里更新签名。 | ||
| 109 | |||
| 110 | }); | ||
| 111 | wx.ready(function(){ | ||
| 112 | // alert('wx ready') | ||
| 113 | // config信息验证后会执行ready方法,所有接口调用都必须在config接口获得结果之后,config是一个客户端的异步操作,所以如果需要在页面加载时就调用相关接口,则须把相关接口放在ready函数中调用来确保正确执行。对于用户触发时才调用的接口,则可以直接调用,不需要放在ready函数中。 | ||
| 114 | wx.checkJsApi({ | ||
| 115 | jsApiList: ['scanQRCode','getLocation'], // 需要检测的JS接口列表,所有JS接口列表见附录2, | ||
| 116 | success: function(res) { | ||
| 117 | if(res.checkResult.scanQRCode != true){ | ||
| 118 | layer.open({ | ||
| 119 | content: '您的微信版本太低,不支持扫码', | ||
| 120 | time:1 | ||
| 121 | }); | ||
| 122 | |||
| 123 | } | ||
| 124 | // 以键值对的形式返回,可用的api值true,不可用为false | ||
| 125 | // 如:{"checkResult":{"chooseImage":true},"errMsg":"checkJsApi:ok"} | ||
| 126 | } | ||
| 127 | }); | ||
| 128 | }); | ||
| 129 | // } | ||
| 130 | }catch(exception){ | ||
| 131 | // alert("exception " + exception) | ||
| 132 | layer.open({ | ||
| 133 | content:"微信扫码功能异常,无法使用扫码租车", | ||
| 134 | time:1 | ||
| 135 | }); | ||
| 136 | } | ||
| 137 | } | ||
| 138 | |||
| 139 | function initWeixinMenu($http){ | ||
| 140 | var url = encodeURIComponent(location.href.split('#')[0]); | ||
| 141 | //生产环境 wechat.api.dingdatech.com | ||
| 142 | $http.post("http://wechat.dy.dingdatech.com/wx/qrCodeParms", | ||
| 143 | { | ||
| 144 | webUrl : url | ||
| 145 | }) | ||
| 146 | .success(function(data){ | ||
| 147 | // alert(JSON.stringify(data) + ", with url : " + location.href.split('#')[0]) | ||
| 148 | if(data){ | ||
| 149 | weixinOptionMenuInit(data.appid, data.timestamp, data.noncestr, data.signature); | ||
| 150 | } | ||
| 151 | }) | ||
| 152 | .error(function(arg1){ | ||
| 153 | try { | ||
| 154 | layer.open({ | ||
| 155 | content:"微信jssdk配置接口失败:" + JSON.stringify(arg1), | ||
| 156 | time:1 | ||
| 157 | }); | ||
| 158 | }catch(e){ | ||
| 159 | layer.open({ | ||
| 160 | content:"微信jssdk配置接口失败:" + arg1, | ||
| 161 | time:1 | ||
| 162 | }); | ||
| 163 | } | ||
| 164 | // alert(arg1); | ||
| 165 | }); | ||
| 166 | } | ||
| 167 | |||
| 168 | ///<jscompress sourcefile="globalService.js" /> | ||
| 169 | |||
| 170 | angular.module('myApp.services') | ||
| 171 | .service('globalService', | ||
| 172 | [ '$http', '$rootScope', 'localStorageService', | ||
| 173 | function($http, $rootScope ,localStorageService) { | ||
| 174 | |||
| 175 | var setHeaderToken = function (token){ | ||
| 176 | $http.defaults.headers.common = { | ||
| 177 | "token": token , | ||
| 178 | "version": "1.0.0" , | ||
| 179 | "source" : "WX" | ||
| 180 | }; | ||
| 181 | } | ||
| 182 | var init = function(){ | ||
| 183 | $rootScope.params = {}; | ||
| 184 | $rootScope.config = {}; | ||
| 185 | $rootScope.data = {}; | ||
| 186 | $rootScope.inited = true; | ||
| 187 | //--------------------自行车服务-------------- | ||
| 188 | // 生产环境 | ||
| 189 | var dingdaAPI = "http://bike.dy.dingdatech.com"; | ||
| 190 | // 测试环境 | ||
| 191 | //var dingdaAPI = "http://bike.api.dingdachuxing.com"; | ||
| 192 | globalConfig.setParam("dingdaAPI", dingdaAPI); | ||
| 193 | //--------------------财务服务-------------- | ||
| 194 | // 生产环境 | ||
| 195 | var financeAPI = "http://finance.dy.dingdatech.com"; | ||
| 196 | // 测试环境 | ||
| 197 | //var financeAPI = "http://finance.api.dingdachuxing.com"; | ||
| 198 | globalConfig.setParam("financeAPI", financeAPI); | ||
| 199 | //--------------------反馈服务-------------- | ||
| 200 | // 生产环境 | ||
| 201 | var feedbackAPI = "http://feedback.dy.dingdatech.com"; | ||
| 202 | // 测试环境 | ||
| 203 | //var feedbackAPI = "http://feedback.api.dingdachuxing.com"; | ||
| 204 | globalConfig.setParam("feedbackAPI", feedbackAPI); | ||
| 205 | //--------------------认证服务-------------- | ||
| 206 | // 生产环境 | ||
| 207 | var dingdaLoginAPI = "http://auth.dy.dingdatech.com"; | ||
| 208 | // 测试环境 | ||
| 209 | //var dingdaLoginAPI = "http://auth.api.dingdachuxing.com"; | ||
| 210 | globalConfig.setParam("dingdaLoginAPI", dingdaLoginAPI); | ||
| 211 | |||
| 212 | $rootScope.$watch("data.user",function(newVal, oldVal){ | ||
| 213 | if(!newVal){ | ||
| 214 | return; | ||
| 215 | } | ||
| 216 | if(newVal.token) { | ||
| 217 | setHeaderToken(newVal.token); | ||
| 218 | } | ||
| 219 | }) | ||
| 220 | |||
| 221 | loadPersistData(); | ||
| 222 | loadCityConfig(); | ||
| 223 | loadPathParams(); | ||
| 224 | initWeixinMenu($http); | ||
| 225 | |||
| 226 | } | ||
| 227 | |||
| 228 | var loadPersistData = function() { | ||
| 229 | var keys = localStorageService.keys(); | ||
| 230 | for(var x in keys){ | ||
| 231 | globalConfig.setData(keys[x], localStorageService.get(keys[x])); | ||
| 232 | } | ||
| 233 | if(globalConfig.getData("user")){ | ||
| 234 | setHeaderToken(globalConfig.getData("user").token); | ||
| 235 | } | ||
| 236 | |||
| 237 | } | ||
| 238 | |||
| 239 | var loadPathParams = function() { | ||
| 240 | var url = window.location.href, | ||
| 241 | parts = url.split('?'); | ||
| 242 | if(parts.length == 2){ | ||
| 243 | var hash = parts[1].indexOf('#') | ||
| 244 | if(hash != -1){ | ||
| 245 | parts[1] = parts[1].substring(0, hash) | ||
| 246 | } | ||
| 247 | |||
| 248 | var pairs = parts[1].split('&') | ||
| 249 | pairs.forEach(function(pair){ | ||
| 250 | var kv = pair.split('=') | ||
| 251 | if(kv.length == 2){ | ||
| 252 | globalConfig.setData(kv[0], kv[1]); | ||
| 253 | } | ||
| 254 | }) | ||
| 255 | } | ||
| 256 | |||
| 257 | } | ||
| 258 | |||
| 259 | var loadCityConfig = function() { | ||
| 260 | // $http.get("js/service/city.json").success(function (data) { | ||
| 261 | // $rootScope.config.province = {}; | ||
| 262 | // for (var i = 0; i < data.length; i++) { | ||
| 263 | // $rootScope.config.province[data[i].id] = data[i]; | ||
| 264 | // }; | ||
| 265 | // }) | ||
| 266 | } | ||
| 267 | |||
| 268 | var globalConfig = { | ||
| 269 | init : init, | ||
| 270 | getParam : function(key){ | ||
| 271 | return $rootScope.params[key]; | ||
| 272 | }, | ||
| 273 | setParam : function(key, value){ | ||
| 274 | $rootScope.params[key] = value | ||
| 275 | }, | ||
| 276 | getConfig : function(key){ | ||
| 277 | return $rootScope.config[key]; | ||
| 278 | }, | ||
| 279 | setConfig : function(key, value){ | ||
| 280 | $rootScope.config[key] = value; | ||
| 281 | }, | ||
| 282 | getData : function(key){ | ||
| 283 | return $rootScope.data[key]; | ||
| 284 | }, | ||
| 285 | setData : function(key, value){ | ||
| 286 | $rootScope.data[key] = value; | ||
| 287 | }, | ||
| 288 | saveData : function(key, value){ | ||
| 289 | if(value){ | ||
| 290 | this.setData(key, value) | ||
| 291 | } | ||
| 292 | localStorageService.set(key, value); | ||
| 293 | }, | ||
| 294 | clearData : function(key){ | ||
| 295 | this.setData(key, null); | ||
| 296 | localStorageService.set(key, null); | ||
| 297 | $http.defaults.headers.common = { }; | ||
| 298 | } | ||
| 299 | } | ||
| 300 | return globalConfig; | ||
| 301 | } | ||
| 302 | ] | ||
| 303 | ); | ||
| 304 | ///<jscompress sourcefile="dingdaService.js" /> | ||
| 305 | angular.module('myApp.services') | ||
| 306 | .service( 'dingdaService', [ '$http','globalService', | ||
| 307 | function($http,globalService) { | ||
| 308 | return { | ||
| 309 | sendPhoneCode: function(phone , openId){ | ||
| 310 | var url = globalService.getParam('dingdaLoginAPI') + '/login/sms?mobile=' + phone + '&openId=' + openId; | ||
| 311 | var res = $http.get(url).success(function(data, status) { | ||
| 312 | }).error(function(data, status) { | ||
| 313 | alert(data.meta.message) | ||
| 314 | }); | ||
| 315 | return res; | ||
| 316 | }, | ||
| 317 | verifyPhoneCode : function(phone , code){ | ||
| 318 | var url = globalService.getParam('dingdaLoginAPI') + '/login/sms?mobile=' + phone + '&code=' + code; | ||
| 319 | var res = $http.post(url , { | ||
| 320 | } , { | ||
| 321 | }).success(function(data, status) { | ||
| 322 | |||
| 323 | }).error(function(data, status) { | ||
| 324 | alert(data.meta.message) | ||
| 325 | }); | ||
| 326 | return res; | ||
| 327 | }, | ||
| 328 | getStationList : function(longitude , latitude){ | ||
| 329 | var url = globalService.getParam('dingdaAPI') + '/service/bicycle/stations?longitude=' + longitude | ||
| 330 | + '&latitude=' + latitude; | ||
| 331 | var res = $http.get(url).success(function(data, status) { | ||
| 332 | }).error(function(data, status) { | ||
| 333 | alert(data.meta.message) | ||
| 334 | }); | ||
| 335 | return res; | ||
| 336 | }, | ||
| 337 | getStationById : function(id){ | ||
| 338 | var url = globalService.getParam('dingdaAPI') + '/service/bicycle/stations/' + id; | ||
| 339 | var res = $http.get(url).success(function(data, status) { | ||
| 340 | }).error(function(data, status) { | ||
| 341 | alert(data.meta.message) | ||
| 342 | }); | ||
| 343 | return res; | ||
| 344 | }, | ||
| 345 | getUnfinishedOrder : function(){ | ||
| 346 | var url = globalService.getParam('dingdaAPI') + '/service/bicycle/orders/unfinished'; | ||
| 347 | var res = $http.get(url).success(function(data, status) { | ||
| 348 | }).error(function(data, status) { | ||
| 349 | alert(data.meta.message) | ||
| 350 | }); | ||
| 351 | return res; | ||
| 352 | }, | ||
| 353 | verifyScanCode : function(code){ | ||
| 354 | var url = globalService.getParam('dingdaAPI') + '/service/bicycle/order?code=' + code; | ||
| 355 | var res = $http.post(url , { }).success(function(data, status) { | ||
| 356 | |||
| 357 | }).error(function(data, status) { | ||
| 358 | alert(data.meta.message) | ||
| 359 | }); | ||
| 360 | return res; | ||
| 361 | }, | ||
| 362 | getOrderRealTimeInfo : function(id){ | ||
| 363 | var url = globalService.getParam('dingdaAPI') + '/service/bicycle/orders/detail/' + id; | ||
| 364 | var res = $http.get(url).success(function(data, status) { | ||
| 365 | }).error(function(data, status) { | ||
| 366 | alert(data.meta.message) | ||
| 367 | }); | ||
| 368 | return res; | ||
| 369 | }, | ||
| 370 | getOrderList : function(page){ | ||
| 371 | var url = globalService.getParam('dingdaAPI') + '/service/bicycle/orders?pageSize=10&pageNum=' + page; | ||
| 372 | var res = $http.get(url).success(function(data, status) { | ||
| 373 | }).error(function(data, status) { | ||
| 374 | alert(data.meta.message) | ||
| 375 | }); | ||
| 376 | return res; | ||
| 377 | }, | ||
| 378 | getOrderFinishInfo : function(id){ | ||
| 379 | var url = globalService.getParam('dingdaAPI') + '/service/bicycle/orders/' + id; | ||
| 380 | var res = $http.get(url).success(function(data, status) { | ||
| 381 | }).error(function(data, status) { | ||
| 382 | alert(data.meta.message) | ||
| 383 | }); | ||
| 384 | return res; | ||
| 385 | }, | ||
| 386 | setOrderFinish : function(id){ | ||
| 387 | var url = globalService.getParam('dingdaAPI') + '/service/bicycle/order/finish/' + id; | ||
| 388 | var res = $http.post(url , {}).success(function(data, status) { | ||
| 389 | }).error(function(data, status) { | ||
| 390 | alert(data.meta.message) | ||
| 391 | }); | ||
| 392 | return res; | ||
| 393 | }, | ||
| 394 | payWX : function(id , payInfo) { | ||
| 395 | var url = globalService.getParam('financeAPI') + '/service/bill/wx/' + id; | ||
| 396 | var res = $http.post(url , payInfo).success(function(data, status) { | ||
| 397 | |||
| 398 | }).error(function(data, status) { | ||
| 399 | alert(data.meta.message) | ||
| 400 | }); | ||
| 401 | return res; | ||
| 402 | }, | ||
| 403 | getWallet : function() { | ||
| 404 | var url = globalService.getParam('financeAPI') + '/service/balance'; | ||
| 405 | var res = $http.get(url).success(function(data, status) { | ||
| 406 | }).error(function(data, status) { | ||
| 407 | alert(data.meta.message) | ||
| 408 | }); | ||
| 409 | return res; | ||
| 410 | }, | ||
| 411 | payWallet : function(payInfo) { | ||
| 412 | var url = globalService.getParam('financeAPI') + '/service/balance/wx'; | ||
| 413 | var res = $http.post(url , payInfo).success(function(data, status) { | ||
| 414 | }).error(function(data, status) { | ||
| 415 | alert(data.meta.message) | ||
| 416 | }); | ||
| 417 | return res; | ||
| 418 | }, | ||
| 419 | getWalletHistory : function(page) { | ||
| 420 | var url = globalService.getParam('financeAPI') + '/service/balances?pageSize=10&pageNum' + page; | ||
| 421 | var res = $http.get(url).success(function(data, status) { | ||
| 422 | }).error(function(data, status) { | ||
| 423 | alert(data.meta.message) | ||
| 424 | }); | ||
| 425 | return res; | ||
| 426 | }, | ||
| 427 | getBond : function(longitude , latitude) { | ||
| 428 | var url = globalService.getParam('dingdaAPI') + '/service/bicycle/deposit?longitude=' + longitude | ||
| 429 | + '&latitude=' + latitude; | ||
| 430 | var res = $http.get(url).success(function(data, status) { | ||
| 431 | }).error(function(data, status) { | ||
| 432 | alert(data.meta.message) | ||
| 433 | }); | ||
| 434 | return res; | ||
| 435 | }, | ||
| 436 | payBond : function(payInfo) { | ||
| 437 | var url = globalService.getParam('financeAPI') + '/service/bail/wx'; | ||
| 438 | var res = $http.post(url , payInfo).success(function(data, status) { | ||
| 439 | }).error(function(data, status) { | ||
| 440 | alert(data.meta.message) | ||
| 441 | }); | ||
| 442 | return res; | ||
| 443 | }, | ||
| 444 | returnBond : function(page) { | ||
| 445 | var url = globalService.getParam('dingdaAPI') + '/service/bicycle/deposit'; | ||
| 446 | var res = $http.delete(url).success(function(data, status) { | ||
| 447 | }).error(function(data, status) { | ||
| 448 | alert(data.meta.message) | ||
| 449 | }); | ||
| 450 | return res; | ||
| 451 | }, | ||
| 452 | comment : function(message) { | ||
| 453 | var url = globalService.getParam('feedbackAPI') + '/service/comments'; | ||
| 454 | var res = $http.post(url , message).success(function(data, status) { | ||
| 455 | }).error(function(data, status) { | ||
| 456 | alert(data.meta.message) | ||
| 457 | }); | ||
| 458 | return res; | ||
| 459 | }, | ||
| 460 | getVersion : function() { | ||
| 461 | var url = globalService.getParam('dingdaAPI') + '/service/version'; | ||
| 462 | var res = $http.get(url).success(function(data, status) { | ||
| 463 | }).error(function(data, status) { | ||
| 464 | alert(data.meta.message) | ||
| 465 | }); | ||
| 466 | return res; | ||
| 467 | } | ||
| 468 | } | ||
| 469 | }]) | ||
| 470 | ///<jscompress sourcefile="wechatPaymentService.js" /> | ||
| 471 | angular.module('myApp.services') | ||
| 472 | .service('wechatPayment',['$http', '$q', '$rootScope',function($http, $q, $rootScope) { | ||
| 473 | |||
| 474 | //var host = 'http://finance.api.dingdachuxing.com/service'; | ||
| 475 | var host = 'http://finance.dy.dingdatech.com/service'; | ||
| 476 | |||
| 477 | |||
| 478 | |||
| 479 | //调用微信JS api 支付 | ||
| 480 | var jsApiCall = function (sign, q) { | ||
| 481 | WeixinJSBridge.invoke( | ||
| 482 | 'getBrandWCPayRequest', { | ||
| 483 | appId : sign.appId, | ||
| 484 | timeStamp : sign.timeStamp, | ||
| 485 | nonceStr : sign.nonceStr, | ||
| 486 | package : sign.packageStr, | ||
| 487 | signType : sign.signType, | ||
| 488 | paySign : sign.paySign | ||
| 489 | }, | ||
| 490 | function (res) { | ||
| 491 | if (res.err_msg == 'get_brand_wcpay_request:ok') { | ||
| 492 | layer.open({ | ||
| 493 | content: '支付成功!', | ||
| 494 | time:1 | ||
| 495 | }); | ||
| 496 | q.resolve(res.err_msg); | ||
| 497 | return; | ||
| 498 | } else if (res.err_msg == 'get_brand_wcpay_request:fail') { | ||
| 499 | alert("支付失败:" + JSON.stringify(res)) | ||
| 500 | layer.open({ | ||
| 501 | content: '支付失败!', | ||
| 502 | time:1 | ||
| 503 | }); | ||
| 504 | } else if (res.err_msg == 'get_brand_wcpay_request:cancel') { | ||
| 505 | layer.open({ | ||
| 506 | content: '支付取消!', | ||
| 507 | time:1 | ||
| 508 | }); | ||
| 509 | } else { | ||
| 510 | layer.open({ | ||
| 511 | content: '支付异常,'+res.err_msg, | ||
| 512 | time:1 | ||
| 513 | }); | ||
| 514 | } | ||
| 515 | q.reject(res.err_msg); | ||
| 516 | // WeixinJSBridge.log(res.err_msg); | ||
| 517 | // console.error(res.err_msg); | ||
| 518 | } | ||
| 519 | ); | ||
| 520 | } | ||
| 521 | |||
| 522 | var callUnifiedOrderApi = function(url, data){ | ||
| 523 | var q = $q.defer(); | ||
| 524 | $http.post(url, data) | ||
| 525 | .success(function (data) { | ||
| 526 | if(data.meta.code == 200) { | ||
| 527 | // alert('支付签名返回:' + JSON.stringify(data)); | ||
| 528 | jsApiCall(data.data.wechatDto, q); | ||
| 529 | }else{ | ||
| 530 | layer.open({ | ||
| 531 | content:'支付签名失败:code '+data.meta.code+","+ data.meta.message, | ||
| 532 | time:1 | ||
| 533 | }); | ||
| 534 | q.reject(data.meta.message) | ||
| 535 | } | ||
| 536 | }) | ||
| 537 | |||
| 538 | return q.promise; | ||
| 539 | } | ||
| 540 | |||
| 541 | return { | ||
| 542 | /** | ||
| 543 | * 租车付款 | ||
| 544 | */ | ||
| 545 | callRentPay: function (orderId, amount) { | ||
| 546 | return callUnifiedOrderApi(host + '/bill/wx/' + orderId, { | ||
| 547 | amount : amount, | ||
| 548 | body : "租车租金", | ||
| 549 | type : 101 | ||
| 550 | }); | ||
| 551 | }, | ||
| 552 | /** | ||
| 553 | * 保证金充值 | ||
| 554 | * @param amount | ||
| 555 | */ | ||
| 556 | callDepositPay : function(amount){ | ||
| 557 | return callUnifiedOrderApi(host + "/bail/wx", { | ||
| 558 | amount : amount, | ||
| 559 | body : "保证金充值", | ||
| 560 | type : 101 | ||
| 561 | }); | ||
| 562 | }, | ||
| 563 | /** | ||
| 564 | * 钱包充值 | ||
| 565 | * @param amount | ||
| 566 | */ | ||
| 567 | callBalanceRecharge : function(amount){ | ||
| 568 | return callUnifiedOrderApi(host + "/balance/wx", { | ||
| 569 | amount : amount, | ||
| 570 | body : "钱包充值", | ||
| 571 | type : 101 | ||
| 572 | }); | ||
| 573 | } | ||
| 574 | } | ||
| 575 | }]); | ||
| 576 | |||
| 577 | ///<jscompress sourcefile="mapController.js" /> | ||
| 578 | angular.module('myApp') | ||
| 579 | .controller('mapController',['$scope','$rootScope','dingdaService','globalService','$state',function($scope,$rootScope,dingdaService,globalService,$state){ | ||
| 580 | var myMarker; | ||
| 581 | var markers = []; | ||
| 582 | var overlays = []; | ||
| 583 | var walking; | ||
| 584 | var infoControl; | ||
| 585 | var scanControl; | ||
| 586 | var map; | ||
| 587 | var endPosition; | ||
| 588 | var polyline; | ||
| 589 | |||
| 590 | $rootScope.currentPoint = {}; | ||
| 591 | |||
| 592 | var rendBike = function() { | ||
| 593 | scanControl.hide(); | ||
| 594 | infoControl.show(); | ||
| 595 | } | ||
| 596 | |||
| 597 | var returnBike = function() { | ||
| 598 | scanControl.show(); | ||
| 599 | infoControl.hide(); | ||
| 600 | } | ||
| 601 | |||
| 602 | $scope.$watch("isRendBike",function(newVal, oldVal){ | ||
| 603 | if(newVal === oldVal){ | ||
| 604 | return; | ||
| 605 | } | ||
| 606 | if(newVal) { | ||
| 607 | rendBike(); | ||
| 608 | } else { | ||
| 609 | returnBike(); | ||
| 610 | } | ||
| 611 | }) | ||
| 612 | |||
| 613 | var initMap = function() { | ||
| 614 | map = new BMap.Map("mapContainer"); | ||
| 615 | map.centerAndZoom(new BMap.Point(120.124421, 30.279879), 15); | ||
| 616 | |||
| 617 | map.addEventListener("click", function() { | ||
| 618 | |||
| 619 | for(var i = 0 ; i < overlays.length ; i++) { | ||
| 620 | overlays[i].hide(); | ||
| 621 | } | ||
| 622 | $scope.$apply(function() { | ||
| 623 | $rootScope.openMenu = false; | ||
| 624 | }) | ||
| 625 | }); | ||
| 626 | initMapControl(map); | ||
| 627 | } | ||
| 628 | |||
| 629 | var onSearchComplete = function(result) { | ||
| 630 | map.removeOverlay(polyline); | ||
| 631 | var route = result.tr[0].ek[0].vr; | ||
| 632 | route.unshift(myMarker.position); | ||
| 633 | route.push(endPosition) | ||
| 634 | polyline = new BMap.Polyline(route); | ||
| 635 | polyline.setStrokeColor("#36D1E7"); | ||
| 636 | polyline.setStrokeOpacity(1); | ||
| 637 | polyline.setStrokeWeight(3); | ||
| 638 | polyline.setStrokeStyle("solid"); | ||
| 639 | map.addOverlay(polyline); | ||
| 640 | } | ||
| 641 | |||
| 642 | var initMarker = function(point) { | ||
| 643 | map.setCenter(point); | ||
| 644 | walking = new BMap.WalkingRoute(map, {renderOptions:{map: null, autoViewport: true}}) | ||
| 645 | walking.setSearchCompleteCallback(onSearchComplete); | ||
| 646 | initMyMarker(point , map); | ||
| 647 | refreshNewPoints(point); | ||
| 648 | } | ||
| 649 | |||
| 650 | var refreshNewPoints = function(point) { | ||
| 651 | |||
| 652 | // if(!globalService.getData('user').token) { | ||
| 653 | // return; | ||
| 654 | // } | ||
| 655 | |||
| 656 | dingdaService.getStationList(point.lng , point.lat).success(function(data , status) { | ||
| 657 | // dingdaService.getStationList(120.18893141 , 30.2284141).success(function(data , status) { | ||
| 658 | // alert(JSON.stringify(data)) | ||
| 659 | // console.log(JSON.stringify(data)) | ||
| 660 | initMarkers(data.data.stationLists , map); | ||
| 661 | }).error(function(data , status) { | ||
| 662 | |||
| 663 | }) | ||
| 664 | } | ||
| 665 | |||
| 666 | var initMyMarker = function(point , map) { | ||
| 667 | |||
| 668 | $rootScope.isLoadFinish = true; | ||
| 669 | myMarker = new MyMark(point); | ||
| 670 | map.addOverlay(myMarker); | ||
| 671 | } | ||
| 672 | |||
| 673 | var initMarkers = function(points , map) { | ||
| 674 | for(var i = 0 ; i < markers.length ; i++) { | ||
| 675 | // document.getElementById("mapContainer").removeChild(markers[i].div); | ||
| 676 | map.removeOverlay(markers[i]); | ||
| 677 | markers[i].div.parentElement.removeChild(markers[i].div); | ||
| 678 | // document.getElementById("mapContainer").removeChild(overlays[i].div); | ||
| 679 | map.removeOverlay(overlays[i]); | ||
| 680 | overlays[i].div.parentElement.removeChild(overlays[i].div); | ||
| 681 | } | ||
| 682 | markers = []; | ||
| 683 | overlays = []; | ||
| 684 | for(var i = 0 ; i < points.length ; i++) { | ||
| 685 | var marker = new SiteOverlay(new BMap.Point(points[i].longitude, points[i].latitude) , i , points[i]); | ||
| 686 | map.addOverlay(marker); | ||
| 687 | markers.push(marker); | ||
| 688 | } | ||
| 689 | |||
| 690 | } | ||
| 691 | |||
| 692 | function RelocateControl(){ | ||
| 693 | this.defaultAnchor = BMAP_ANCHOR_BOTTOM_LEFT; | ||
| 694 | this.defaultOffset = new BMap.Size(0, 0); | ||
| 695 | } | ||
| 696 | |||
| 697 | function ScanControl(){ | ||
| 698 | this.defaultAnchor = BMAP_ANCHOR_BOTTOM_LEFT; | ||
| 699 | this.defaultOffset = new BMap.Size(0, 0); | ||
| 700 | } | ||
| 701 | |||
| 702 | function InfoControl(){ | ||
| 703 | this.defaultAnchor = BMAP_ANCHOR_BOTTOM_LEFT; | ||
| 704 | this.defaultOffset = new BMap.Size(0, 0); | ||
| 705 | } | ||
| 706 | |||
| 707 | function MenuControl(){ | ||
| 708 | this.defaultAnchor = BMAP_ANCHOR_TOP_LEFT; | ||
| 709 | this.defaultOffset = new BMap.Size(0, 13); | ||
| 710 | } | ||
| 711 | |||
| 712 | function RingControl(){ | ||
| 713 | this.defaultAnchor = BMAP_ANCHOR_TOP_LEFT; | ||
| 714 | this.defaultOffset = new BMap.Size(0, 66); | ||
| 715 | } | ||
| 716 | |||
| 717 | var initMapControl = function(map) { | ||
| 718 | ScanControl.prototype = new BMap.Control(); | ||
| 719 | ScanControl.prototype.initialize = function(map){ | ||
| 720 | var scanControl = document.createElement("div"); | ||
| 721 | scanControl.className = "scanControl"; | ||
| 722 | |||
| 723 | var scanControlContainer = document.createElement("div"); | ||
| 724 | scanControlContainer.className = "scanControlContainer"; | ||
| 725 | |||
| 726 | var scanControlContent = document.createElement("div"); | ||
| 727 | scanControlContent.className = "scanControlContent"; | ||
| 728 | |||
| 729 | var img = document.createElement("img"); | ||
| 730 | img.className = "spanResize"; | ||
| 731 | img.src = "images/scancode.png"; | ||
| 732 | |||
| 733 | scanControlContent.innerHTML = img.outerHTML + " 扫码租车"; | ||
| 734 | |||
| 735 | scanControlContainer.onclick = function() { | ||
| 736 | $scope.$apply(function() { | ||
| 737 | $rootScope.openScan = true; | ||
| 738 | }) | ||
| 739 | } | ||
| 740 | scanControlContainer.appendChild(scanControlContent); | ||
| 741 | scanControl.appendChild(scanControlContainer); | ||
| 742 | |||
| 743 | map.getContainer().appendChild(scanControl); | ||
| 744 | return scanControl; | ||
| 745 | } | ||
| 746 | scanControl = new ScanControl(); | ||
| 747 | map.addControl(scanControl); | ||
| 748 | |||
| 749 | InfoControl.prototype = new BMap.Control(); | ||
| 750 | InfoControl.prototype.initialize = function(map){ | ||
| 751 | var infoControl = document.createElement("div"); | ||
| 752 | infoControl.className = "scanControl"; | ||
| 753 | |||
| 754 | var infoControlContainer = document.createElement("div"); | ||
| 755 | infoControlContainer.className = "scanControlContainer"; | ||
| 756 | |||
| 757 | var infoControlContent = document.createElement("div"); | ||
| 758 | infoControlContent.className = "scanControlContent"; | ||
| 759 | |||
| 760 | var img = document.createElement("img"); | ||
| 761 | img.className = "spanResize"; | ||
| 762 | img.src = "images/details.png"; | ||
| 763 | |||
| 764 | infoControlContent.innerHTML = img.outerHTML + " 租车详情"; | ||
| 765 | |||
| 766 | infoControlContainer.onclick = function() { | ||
| 767 | $scope.$apply(function() { | ||
| 768 | $rootScope.openDetail = true; | ||
| 769 | }) | ||
| 770 | } | ||
| 771 | infoControlContainer.appendChild(infoControlContent); | ||
| 772 | infoControl.appendChild(infoControlContainer); | ||
| 773 | |||
| 774 | map.getContainer().appendChild(infoControl); | ||
| 775 | return infoControl; | ||
| 776 | } | ||
| 777 | infoControl = new InfoControl(); | ||
| 778 | map.addControl(infoControl); | ||
| 779 | infoControl.hide(); | ||
| 780 | |||
| 781 | RelocateControl.prototype = new BMap.Control(); | ||
| 782 | RelocateControl.prototype.initialize = function(map){ | ||
| 783 | var relocateControl = document.createElement("div"); | ||
| 784 | relocateControl.className = "locateControlContainer"; | ||
| 785 | relocateControl.index = 1; | ||
| 786 | |||
| 787 | var relocateControlContent = document.createElement("div"); | ||
| 788 | relocateControlContent.className = "locateControlContent"; | ||
| 789 | var relocateControlContentCenter = document.createElement("div"); | ||
| 790 | relocateControlContentCenter.className = "locateControlContentCenter"; | ||
| 791 | relocateControlContent.appendChild(relocateControlContentCenter); | ||
| 792 | relocateControl.appendChild(relocateControlContent); | ||
| 793 | |||
| 794 | relocateControl.onclick = function() { | ||
| 795 | map.panTo(myMarker.position); | ||
| 796 | map.setZoom(15); | ||
| 797 | } | ||
| 798 | map.getContainer().appendChild(relocateControl); | ||
| 799 | return relocateControl; | ||
| 800 | } | ||
| 801 | var relocateControl = new RelocateControl(); | ||
| 802 | map.addControl(relocateControl); | ||
| 803 | |||
| 804 | |||
| 805 | MenuControl.prototype = new BMap.Control(); | ||
| 806 | MenuControl.prototype.initialize = function(map){ | ||
| 807 | var menuControl = document.createElement("div"); | ||
| 808 | menuControl.className = "menuControl"; | ||
| 809 | menuControl.index = 1; | ||
| 810 | |||
| 811 | var menuControlContent = document.createElement("img"); | ||
| 812 | menuControlContent.src = "images/me.png"; | ||
| 813 | |||
| 814 | menuControl.appendChild(menuControlContent); | ||
| 815 | |||
| 816 | menuControl.onclick = function() { | ||
| 817 | $scope.$apply(function() { | ||
| 818 | // alert(!globalService.getData("user")) | ||
| 819 | if(!globalService.getData("user")) { | ||
| 820 | $state.go('login'); | ||
| 821 | return; | ||
| 822 | } | ||
| 823 | $rootScope.openMenu = !$rootScope.openMenu; | ||
| 824 | }) | ||
| 825 | } | ||
| 826 | map.getContainer().appendChild(menuControl); | ||
| 827 | return menuControl; | ||
| 828 | } | ||
| 829 | var menuControl = new MenuControl(); | ||
| 830 | map.addControl(menuControl); | ||
| 831 | |||
| 832 | RingControl.prototype = new BMap.Control(); | ||
| 833 | RingControl.prototype.initialize = function(map){ | ||
| 834 | var ringControl = document.createElement("div"); | ||
| 835 | ringControl.className = "menuControl"; | ||
| 836 | ringControl.index = 1; | ||
| 837 | |||
| 838 | var ringControlContent = document.createElement("img"); | ||
| 839 | ringControlContent.src = "images/new.png"; | ||
| 840 | |||
| 841 | ringControl.appendChild(ringControlContent); | ||
| 842 | |||
| 843 | ringControl.onclick = function() { | ||
| 844 | $scope.$apply(function() { | ||
| 845 | $rootScope.openRing = !$rootScope.openRing; | ||
| 846 | }) | ||
| 847 | } | ||
| 848 | map.getContainer().appendChild(ringControl); | ||
| 849 | return ringControl; | ||
| 850 | } | ||
| 851 | // var ringControl = new RingControl(); | ||
| 852 | // map.addControl(ringControl); | ||
| 853 | |||
| 854 | var opts = { | ||
| 855 | type: BMAP_NAVIGATION_CONTROL_SMALL, | ||
| 856 | anchor : BMAP_ANCHOR_BOTTOM_RIGHT | ||
| 857 | } | ||
| 858 | map.addControl(new BMap.NavigationControl(opts)); | ||
| 859 | } | ||
| 860 | |||
| 861 | var initLocation = function(isForce) { | ||
| 862 | // var options = { | ||
| 863 | // enableHighAccuracy:true, | ||
| 864 | // maximumAge:1000 | ||
| 865 | // } | ||
| 866 | |||
| 867 | getlocation(); | ||
| 868 | function getlocation() { | ||
| 869 | wx.getLocation({ | ||
| 870 | type: 'gcj02', // 默认为wgs84的gps坐标,如果要返回直接给openLocation用的火星坐标,可传入'gcj02' | ||
| 871 | success: function (res) { | ||
| 872 | onSuccess(res) | ||
| 873 | } | ||
| 874 | }); | ||
| 875 | } | ||
| 876 | |||
| 877 | |||
| 878 | function onSuccess(position){ | ||
| 879 | var longitude = position.longitude; | ||
| 880 | var latitude = position.latitude; | ||
| 881 | $rootScope.currentPoint = { | ||
| 882 | longitude : longitude , | ||
| 883 | latitude : latitude | ||
| 884 | } | ||
| 885 | var convertor = new BMap.Convertor(); | ||
| 886 | var pointArr = []; | ||
| 887 | pointArr.push(new BMap.Point(longitude, latitude)); | ||
| 888 | convertor.translate(pointArr, 3, 5, function(data){ | ||
| 889 | var point = data.points[0]; | ||
| 890 | // var point = new BMap.Point(120.1965, 30.23048); | ||
| 891 | if(!myMarker) { | ||
| 892 | initMarker(point); | ||
| 893 | // setInterval(function(){ | ||
| 894 | // if(!myMarker) return; | ||
| 895 | // getlocation(); | ||
| 896 | //// navigator.geolocation.getCurrentPosition(onSuccess,onError,options); | ||
| 897 | // } , 1000 * 60 * 60); | ||
| 898 | } else { | ||
| 899 | myMarker.position = point; | ||
| 900 | if(isForce) { | ||
| 901 | var map = myMarker.getMap(); | ||
| 902 | map.panTo(point); | ||
| 903 | } | ||
| 904 | refreshNewPoints(point); | ||
| 905 | } | ||
| 906 | }) | ||
| 907 | } | ||
| 908 | |||
| 909 | // function onError(error){ | ||
| 910 | // switch(error.code){ | ||
| 911 | // case 1: | ||
| 912 | // alert("位置服务被拒绝"); | ||
| 913 | // break; | ||
| 914 | // case 2: | ||
| 915 | // alert("暂时获取不到位置信息"); | ||
| 916 | // break; | ||
| 917 | // case 3: | ||
| 918 | // alert("获取信息超时"); | ||
| 919 | // break; | ||
| 920 | // case 4: | ||
| 921 | // alert("未知错误"); | ||
| 922 | // break; | ||
| 923 | // } | ||
| 924 | // initLocation(); | ||
| 925 | // } | ||
| 926 | // if (navigator.geolocation) { | ||
| 927 | // navigator.geolocation.getCurrentPosition(onSuccess,onError,options); | ||
| 928 | // } else { | ||
| 929 | // alert("无法获取地理位置信息"); | ||
| 930 | // } | ||
| 931 | } | ||
| 932 | |||
| 933 | function CustomOverlay(position, index , info) { | ||
| 934 | this.index = index; | ||
| 935 | this.position = position; | ||
| 936 | this.info = info; | ||
| 937 | this.isDisplay = false; | ||
| 938 | } | ||
| 939 | |||
| 940 | function SiteOverlay(position , index , info) { | ||
| 941 | this.index = index; | ||
| 942 | this.position = position; | ||
| 943 | this.info = info; | ||
| 944 | this.isDisplay = true; | ||
| 945 | } | ||
| 946 | |||
| 947 | function MyMark(position) { | ||
| 948 | this.position = position; | ||
| 949 | } | ||
| 950 | |||
| 951 | var initCustomOverlay = function() { | ||
| 952 | CustomOverlay.prototype = new BMap.Overlay(); | ||
| 953 | //定义construct,实现这个接口来初始化自定义的Dom元素 | ||
| 954 | CustomOverlay.prototype.initialize = function(map) { | ||
| 955 | this.map = map; | ||
| 956 | var container = this.div = document.createElement("div"); | ||
| 957 | container.className = "overlayContainer"; | ||
| 958 | |||
| 959 | var leftPanel = document.createElement("div"); | ||
| 960 | leftPanel.className = "overlayPanelLeft"; | ||
| 961 | var leftPanelContentContainer = document.createElement("div"); | ||
| 962 | leftPanelContentContainer.className = "overlayPanelLeftContentContainer"; | ||
| 963 | var leftPanelContent = document.createElement("div"); | ||
| 964 | leftPanelContent.className = "overlayPanelLeftContent"; | ||
| 965 | leftPanelContent.innerText = this.info.name; | ||
| 966 | |||
| 967 | leftPanelContentContainer.appendChild(leftPanelContent); | ||
| 968 | leftPanel.appendChild(leftPanelContentContainer); | ||
| 969 | |||
| 970 | var centerPanel = document.createElement("div"); | ||
| 971 | centerPanel.className = "overlayPanelCenter"; | ||
| 972 | var centerPanelContentTop = document.createElement("div"); | ||
| 973 | centerPanelContentTop.className = "overlayPanelCenterContent overlayPanelCenterContentTop"; | ||
| 974 | if(!$scope.isRendBike) { | ||
| 975 | centerPanelContentTop.className += " act"; | ||
| 976 | } | ||
| 977 | centerPanelContentTop.innerText = "可借:" + this.info.enHireNum; | ||
| 978 | var centerPanelContentBottom = document.createElement("div"); | ||
| 979 | centerPanelContentBottom.className = "overlayPanelCenterContent overlayPanelCenterContentBottom"; | ||
| 980 | if($scope.isRendBike) { | ||
| 981 | centerPanelContentBottom.className += " act"; | ||
| 982 | } | ||
| 983 | centerPanelContentBottom.innerText = "可还:" + this.info.disHireNum; | ||
| 984 | |||
| 985 | centerPanel.appendChild(centerPanelContentTop); | ||
| 986 | centerPanel.appendChild(centerPanelContentBottom); | ||
| 987 | |||
| 988 | var rightPanel = document.createElement("div"); | ||
| 989 | rightPanel.className = "overlayPanelRight"; | ||
| 990 | |||
| 991 | var rightPanelContentContainer = document.createElement("div"); | ||
| 992 | rightPanelContentContainer.className = "overlayPanelRightContentContainer"; | ||
| 993 | var rightPanelContent = document.createElement("div"); | ||
| 994 | rightPanelContent.className = "overlayPanelRightContent"; | ||
| 995 | |||
| 996 | rightPanelContentContainer.appendChild(rightPanelContent); | ||
| 997 | rightPanel.appendChild(rightPanelContentContainer); | ||
| 998 | |||
| 999 | |||
| 1000 | var corner = document.createElement("img"); | ||
| 1001 | corner.className = "corner"; | ||
| 1002 | corner.src = "images/triangle.png" | ||
| 1003 | |||
| 1004 | leftPanel.appendChild(centerPanel); | ||
| 1005 | container.appendChild(leftPanel); | ||
| 1006 | container.appendChild(rightPanel); | ||
| 1007 | container.appendChild(corner) | ||
| 1008 | //将dom添加到覆盖物层 | ||
| 1009 | var panes = map.getPanes(); | ||
| 1010 | var self = this; | ||
| 1011 | |||
| 1012 | rightPanel.onclick = function() { | ||
| 1013 | walking.clearResults(); | ||
| 1014 | walking.search(myMarker.position, self.position); | ||
| 1015 | endPosition = self.position; | ||
| 1016 | } | ||
| 1017 | |||
| 1018 | |||
| 1019 | rightPanel.addEventListener("touchend", function() { | ||
| 1020 | rightPanel.onclick(); | ||
| 1021 | |||
| 1022 | }); | ||
| 1023 | //设置panes的层级,overlayMouseTarget可接收点击事件 | ||
| 1024 | panes.labelPane.appendChild(container); | ||
| 1025 | |||
| 1026 | } | ||
| 1027 | //实现draw接口来绘制和更新自定义的dom元素 | ||
| 1028 | CustomOverlay.prototype.draw = function() { | ||
| 1029 | var pixel = this.map.pointToOverlayPixel(this.position); | ||
| 1030 | var divStyle = this.div.style; | ||
| 1031 | divStyle.left = pixel.x - 90 + "px"; | ||
| 1032 | divStyle.top = pixel.y - 70 + "px"; | ||
| 1033 | } | ||
| 1034 | |||
| 1035 | CustomOverlay.prototype.show = function(info) { | ||
| 1036 | if(info) { | ||
| 1037 | this.info = info; | ||
| 1038 | var topEle = this.div.getElementsByClassName("overlayPanelCenterContentTop"); | ||
| 1039 | topEle[0].innerText = "可借:" + info.enHireNum; | ||
| 1040 | var bottomEle = this.div.getElementsByClassName("overlayPanelCenterContentBottom"); | ||
| 1041 | bottomEle[0].innerText = "可还:" + info.disHireNum; | ||
| 1042 | } else { | ||
| 1043 | this.div.style.display = "block"; | ||
| 1044 | this.isDisplay = true; | ||
| 1045 | var topEle = this.div.getElementsByClassName("overlayPanelCenterContentTop"); | ||
| 1046 | topEle[0].innerText = "可借:0"; | ||
| 1047 | var bottomEle = this.div.getElementsByClassName("overlayPanelCenterContentBottom"); | ||
| 1048 | bottomEle[0].innerText = "可还:0"; | ||
| 1049 | } | ||
| 1050 | |||
| 1051 | } | ||
| 1052 | |||
| 1053 | CustomOverlay.prototype.hide = function() { | ||
| 1054 | this.div.style.display = "none"; | ||
| 1055 | this.isDisplay = false; | ||
| 1056 | } | ||
| 1057 | SiteOverlay.prototype = new BMap.Overlay(); | ||
| 1058 | //定义construct,实现这个接口来初始化自定义的Dom元素 | ||
| 1059 | SiteOverlay.prototype.initialize = function(map) { | ||
| 1060 | this.map = map; | ||
| 1061 | var container = this.div = document.createElement("div"); | ||
| 1062 | container.className = "siteOverlay"; | ||
| 1063 | var img = document.createElement("img"); | ||
| 1064 | img.src = "images/site.png"; | ||
| 1065 | container.appendChild(img); | ||
| 1066 | //将dom添加到覆盖物层 | ||
| 1067 | var panes = map.getPanes(); | ||
| 1068 | |||
| 1069 | var self = this; | ||
| 1070 | var overlay = new CustomOverlay(self.position, self.index , self.info); | ||
| 1071 | overlays.push(overlay); | ||
| 1072 | map.addOverlay(overlay); | ||
| 1073 | container.onclick = function() { | ||
| 1074 | map.panTo(self.position); | ||
| 1075 | for(var i = 0 ; i < overlays.length ; i++) { | ||
| 1076 | overlays[i].hide(); | ||
| 1077 | } | ||
| 1078 | if(overlay.isDisplay) { | ||
| 1079 | overlay.hide(); | ||
| 1080 | } else { | ||
| 1081 | setTimeout(function(){ | ||
| 1082 | overlay.show(); | ||
| 1083 | } , 100); | ||
| 1084 | // var t1 = new Date().getTime(); | ||
| 1085 | dingdaService.getStationById(self.info.id).success( | ||
| 1086 | function(data , status) { | ||
| 1087 | // alert(JSON.stringify(data.data) + " , Cost time : " + (new Date().getTime() - t1)) | ||
| 1088 | |||
| 1089 | setTimeout(function(){ | ||
| 1090 | overlay.show(data.data.station); | ||
| 1091 | } , 100); | ||
| 1092 | } | ||
| 1093 | ); | ||
| 1094 | |||
| 1095 | } | ||
| 1096 | |||
| 1097 | } | ||
| 1098 | |||
| 1099 | container.addEventListener("touchend", function() { | ||
| 1100 | container.onclick(); | ||
| 1101 | }); | ||
| 1102 | //设置panes的层级,overlayMouseTarget可接收点击事件 | ||
| 1103 | panes.labelPane.appendChild(container); | ||
| 1104 | |||
| 1105 | } | ||
| 1106 | //实现draw接口来绘制和更新自定义的dom元素 | ||
| 1107 | SiteOverlay.prototype.draw = function() { | ||
| 1108 | var pixel = this.map.pointToOverlayPixel(this.position); | ||
| 1109 | // alert(JSON.stringify(pixel)) | ||
| 1110 | var divStyle = this.div.style; | ||
| 1111 | divStyle.left = pixel.x - 13.5 + "px"; | ||
| 1112 | divStyle.top = pixel.y - 13.5 + "px"; | ||
| 1113 | } | ||
| 1114 | |||
| 1115 | SiteOverlay.prototype.show = function() { | ||
| 1116 | this.div.style.display = "block"; | ||
| 1117 | this.isDisplay = true; | ||
| 1118 | } | ||
| 1119 | |||
| 1120 | SiteOverlay.prototype.hide = function() { | ||
| 1121 | this.div.style.display = "none"; | ||
| 1122 | this.isDisplay = false; | ||
| 1123 | } | ||
| 1124 | |||
| 1125 | MyMark.prototype = new BMap.Overlay(); | ||
| 1126 | //定义construct,实现这个接口来初始化自定义的Dom元素 | ||
| 1127 | MyMark.prototype.initialize = function(map) { | ||
| 1128 | this.map = map; | ||
| 1129 | var container = this.div = document.createElement("div"); | ||
| 1130 | container.className = "myMarker"; | ||
| 1131 | var img = document.createElement("img"); | ||
| 1132 | img.src = "images/myposition.png"; | ||
| 1133 | container.appendChild(img); | ||
| 1134 | //将dom添加到覆盖物层 | ||
| 1135 | var panes = map.getPanes(); | ||
| 1136 | |||
| 1137 | //设置panes的层级,overlayMouseTarget可接收点击事件 | ||
| 1138 | panes.labelPane.appendChild(container); | ||
| 1139 | |||
| 1140 | } | ||
| 1141 | //实现draw接口来绘制和更新自定义的dom元素 | ||
| 1142 | MyMark.prototype.draw = function() { | ||
| 1143 | var pixel = this.map.pointToOverlayPixel(this.position); | ||
| 1144 | // alert(JSON.stringify(pixel)) | ||
| 1145 | var divStyle = this.div.style; | ||
| 1146 | divStyle.left = pixel.x - 25 + "px"; | ||
| 1147 | divStyle.top = pixel.y - 37 + "px"; | ||
| 1148 | } | ||
| 1149 | |||
| 1150 | } | ||
| 1151 | |||
| 1152 | // mui.init(); | ||
| 1153 | |||
| 1154 | initCustomOverlay(); | ||
| 1155 | initMap(); | ||
| 1156 | wx.ready(function() { | ||
| 1157 | initLocation(); | ||
| 1158 | }) | ||
| 1159 | |||
| 1160 | }]); | ||
| 1161 | ///<jscompress sourcefile="opinionController.js" /> | ||
| 1162 | angular.module('myApp') | ||
| 1163 | .controller('opinionController',['$scope','$rootScope','dingdaService','$state','globalService','$stateParams', | ||
| 1164 | function($scope,$rootScope,dingdaService,$state,globalService,$stateParams){ | ||
| 1165 | |||
| 1166 | $scope.opinion = ""; | ||
| 1167 | |||
| 1168 | $scope.submit = function() { | ||
| 1169 | if($scope.opinion.length == 0) { | ||
| 1170 | return; | ||
| 1171 | } | ||
| 1172 | if($scope.opinion.length > 200) { | ||
| 1173 | layer.open({ | ||
| 1174 | content: "超出字数限制", | ||
| 1175 | time:2 | ||
| 1176 | }); | ||
| 1177 | } else { | ||
| 1178 | var phoneType = navigator.userAgent.match(/\(.*?\)/); | ||
| 1179 | var wx = navigator.userAgent.match(/MicroMessenger\/.*?[ ]/); | ||
| 1180 | |||
| 1181 | // alert(phoneType) | ||
| 1182 | var data = { | ||
| 1183 | content : $scope.opinion , | ||
| 1184 | latitude : $stateParams.latitude , | ||
| 1185 | longitude : $stateParams.longitude , | ||
| 1186 | phoneType : phoneType[0] , | ||
| 1187 | systemType : wx[0] | ||
| 1188 | } | ||
| 1189 | |||
| 1190 | |||
| 1191 | dingdaService.comment(data).success(function(data , status) { | ||
| 1192 | if(data.meta.code != 200) { | ||
| 1193 | layer.open({ | ||
| 1194 | content: data.meta.message, | ||
| 1195 | time:2 | ||
| 1196 | }); | ||
| 1197 | return; | ||
| 1198 | } | ||
| 1199 | layer.open({ | ||
| 1200 | content: "评论成功", | ||
| 1201 | time:2 | ||
| 1202 | }); | ||
| 1203 | setTimeout(function() { | ||
| 1204 | location.reload(); | ||
| 1205 | } , 300); | ||
| 1206 | history.back(); | ||
| 1207 | }).error(function(data , status){ | ||
| 1208 | alert(JSON.stringify(data)) | ||
| 1209 | |||
| 1210 | }) | ||
| 1211 | } | ||
| 1212 | } | ||
| 1213 | |||
| 1214 | }]); | ||
| 1215 | ///<jscompress sourcefile="payController.js" /> | ||
| 1216 | angular.module('myApp') | ||
| 1217 | .controller('payController',['$scope','$rootScope','dingdaService','$state','globalService',function($scope,$rootScope,dingdaService,$state,globalService){ | ||
| 1218 | |||
| 1219 | var init = function() { | ||
| 1220 | // globalService.init(); | ||
| 1221 | } | ||
| 1222 | |||
| 1223 | // mui.init(); | ||
| 1224 | init(); | ||
| 1225 | |||
| 1226 | $scope.pay = function() { | ||
| 1227 | alert("充值") | ||
| 1228 | } | ||
| 1229 | }]); | ||
| 1230 | ///<jscompress sourcefile="prepayController.js" /> | ||
| 1231 | angular.module('myApp') | ||
| 1232 | .controller('prepayController',['$scope','$rootScope','dingdaService','$state','globalService','wechatPayment',function($scope,$rootScope,dingdaService,$state,globalService,wechatPayment){ | ||
| 1233 | |||
| 1234 | $scope.account = ""; | ||
| 1235 | |||
| 1236 | var init = function() { | ||
| 1237 | // globalService.init(); | ||
| 1238 | } | ||
| 1239 | |||
| 1240 | // mui.init(); | ||
| 1241 | init(); | ||
| 1242 | var ispay = false; | ||
| 1243 | $scope.prepay = function() { | ||
| 1244 | if(ispay) return; | ||
| 1245 | if($scope.account == ""){ | ||
| 1246 | layer.open({ | ||
| 1247 | content: '请输入充值金额', | ||
| 1248 | time:1 | ||
| 1249 | }); | ||
| 1250 | return; | ||
| 1251 | }; | ||
| 1252 | |||
| 1253 | if($scope.account < 1) { | ||
| 1254 | layer.open({ | ||
| 1255 | content: '充值金额至少为1元', | ||
| 1256 | time:1 | ||
| 1257 | }); | ||
| 1258 | return; | ||
| 1259 | } | ||
| 1260 | ispay = true; | ||
| 1261 | wechatPayment.callBalanceRecharge($scope.account) | ||
| 1262 | .then(function(result){ | ||
| 1263 | |||
| 1264 | ispay = false; | ||
| 1265 | //支付成功 | ||
| 1266 | // $state.go('wallet',{},{reload:true}); | ||
| 1267 | window.history.back(); | ||
| 1268 | }, function(errMsg){ | ||
| 1269 | |||
| 1270 | ispay = false; | ||
| 1271 | //支付失败 | ||
| 1272 | }) | ||
| 1273 | |||
| 1274 | // alert("充值 : " + $scope.account + "元") | ||
| 1275 | } | ||
| 1276 | }]); | ||
| 1277 | ///<jscompress sourcefile="rechargeListController.js" /> | ||
| 1278 | angular.module('myApp') | ||
| 1279 | .controller('rechargeListController',function($scope,$rootScope,$state){ | ||
| 1280 | $scope.rechargeList = [ | ||
| 1281 | { | ||
| 1282 | rechargeType:'微信充值', | ||
| 1283 | rechargeTime:'2016-01-17 16:16:23', | ||
| 1284 | rechargeMoney:100 | ||
| 1285 | }, | ||
| 1286 | { | ||
| 1287 | rechargeType:'微信充值', | ||
| 1288 | rechargeTime:'2016-01-17 16:16:23', | ||
| 1289 | rechargeMoney:200 | ||
| 1290 | } | ||
| 1291 | ] | ||
| 1292 | }) | ||
| 1293 | ///<jscompress sourcefile="rentDetailController.js" /> | ||
| 1294 | angular.module('myApp') | ||
| 1295 | .controller('rentDetailController',['$scope','$rootScope','$state','dingdaService' ,function($scope,$rootScope,$state,dingdaService){ | ||
| 1296 | |||
| 1297 | $scope.detail = {}; | ||
| 1298 | $scope.costTime = ""; | ||
| 1299 | var oldTime; | ||
| 1300 | |||
| 1301 | $scope.backHome = function(){ | ||
| 1302 | $state.go('main'); | ||
| 1303 | } | ||
| 1304 | |||
| 1305 | var init = function() { | ||
| 1306 | dingdaService.getUnfinishedOrder().success(function(data , status){ | ||
| 1307 | // alert(JSON.stringify(data)) | ||
| 1308 | |||
| 1309 | if(data.meta.code == 200) { | ||
| 1310 | if(!data.data.unfinishedOrder.id) { | ||
| 1311 | $state.go('main'); | ||
| 1312 | } | ||
| 1313 | } | ||
| 1314 | |||
| 1315 | if(data.data.unfinishedOrder.status == 200) { | ||
| 1316 | $state.go('tripDetail' , { orderId : data.data.unfinishedOrder.id}); | ||
| 1317 | } | ||
| 1318 | |||
| 1319 | dingdaService.getOrderRealTimeInfo(data.data.unfinishedOrder.id) | ||
| 1320 | .success(function(data , status){ | ||
| 1321 | // alert(JSON.stringify(data)) | ||
| 1322 | |||
| 1323 | $scope.datail = data.data.orderDetail; | ||
| 1324 | |||
| 1325 | |||
| 1326 | setInterval(function(){ | ||
| 1327 | $scope.$apply(function(){ | ||
| 1328 | var h = Math.floor($scope.datail.rentTime / 3600); | ||
| 1329 | var m = Math.floor($scope.datail.rentTime % 3600 / 60); | ||
| 1330 | var s = $scope.datail.rentTime % 60; | ||
| 1331 | |||
| 1332 | if(h < 10) { | ||
| 1333 | h = "0" + h; | ||
| 1334 | } | ||
| 1335 | if(m < 10) { | ||
| 1336 | m = "0" + m; | ||
| 1337 | } | ||
| 1338 | if(s < 10) { | ||
| 1339 | s = "0" + s; | ||
| 1340 | } | ||
| 1341 | |||
| 1342 | $scope.costTime = h + ":" + m + ":" + s; | ||
| 1343 | // console.log($scope.costTime) | ||
| 1344 | if($scope.datail.freeTime <= $scope.datail.rentTime) { | ||
| 1345 | $scope.detail.freeCountdown = "00:00"; | ||
| 1346 | } else { | ||
| 1347 | var minute = Math.floor(( $scope.datail.freeTime - $scope.datail.rentTime ) / 60); | ||
| 1348 | if(minute < 10) { | ||
| 1349 | minute = "0" + minute; | ||
| 1350 | } | ||
| 1351 | var second = ( $scope.datail.freeTime - $scope.datail.rentTime ) % 60; | ||
| 1352 | if(second < 10) { | ||
| 1353 | second = "0" + second; | ||
| 1354 | } | ||
| 1355 | $scope.detail.freeCountdown = minute + ":" + second; | ||
| 1356 | } | ||
| 1357 | $scope.datail.rentTime++; | ||
| 1358 | }) | ||
| 1359 | } , 1000); | ||
| 1360 | |||
| 1361 | }).error(function(data , status){ | ||
| 1362 | |||
| 1363 | }) | ||
| 1364 | }).error(function(data , status) { | ||
| 1365 | console.log(JSON.stringify(data)) | ||
| 1366 | }) | ||
| 1367 | } | ||
| 1368 | |||
| 1369 | init(); | ||
| 1370 | |||
| 1371 | // ������ж�ʱ�� | ||
| 1372 | setTimeout(function() { | ||
| 1373 | var href = new String(location.href); | ||
| 1374 | if(href.indexOf("rentDetail") > 0) location.reload(); | ||
| 1375 | } , 30000) | ||
| 1376 | |||
| 1377 | $scope.alreadyBack = function(){ | ||
| 1378 | $state.go('unusual' , { id : $scope.datail.id}); | ||
| 1379 | } | ||
| 1380 | |||
| 1381 | }]) | ||
| 1382 | ///<jscompress sourcefile="tripController.js" /> | ||
| 1383 | angular.module('myApp') | ||
| 1384 | .controller('tripController',['$scope','$rootScope','$state','dingdaService' ,function($scope,$rootScope,$state,dingdaService){ | ||
| 1385 | |||
| 1386 | $scope.tripList = []; | ||
| 1387 | |||
| 1388 | $scope.isLastPage = false; | ||
| 1389 | |||
| 1390 | $scope.getMoreOrders = function() { | ||
| 1391 | |||
| 1392 | dingdaService.getOrderList(page).success(function(data , status) { | ||
| 1393 | // alert(JSON.stringify(data)) | ||
| 1394 | if(!data.data.orders || data.data.orders.length == 0) { | ||
| 1395 | $scope.isLastPage = true; | ||
| 1396 | return; | ||
| 1397 | } | ||
| 1398 | if(page == 1) { | ||
| 1399 | $scope.tripList = []; | ||
| 1400 | } | ||
| 1401 | for(var i = 0 ; i < data.data.orders.length;i++) { | ||
| 1402 | if(data.data.orders[i].status == 300) { | ||
| 1403 | data.data.orders[i].tripStatus = "已完成"; | ||
| 1404 | } else { | ||
| 1405 | data.data.orders[i].tripStatus = "待支付"; | ||
| 1406 | } | ||
| 1407 | $scope.tripList.push(data.data.orders[i]); | ||
| 1408 | } | ||
| 1409 | page++; | ||
| 1410 | // alert(JSON.stringify($scope.tripList)) | ||
| 1411 | }) | ||
| 1412 | } | ||
| 1413 | |||
| 1414 | var page = 1; | ||
| 1415 | |||
| 1416 | var init = function() { | ||
| 1417 | $scope.getMoreOrders(); | ||
| 1418 | } | ||
| 1419 | |||
| 1420 | init(); | ||
| 1421 | |||
| 1422 | $scope.viewTripDetail = function(index){ | ||
| 1423 | $state.go('tripDetail' , { orderId : $scope.tripList[index].id }); | ||
| 1424 | } | ||
| 1425 | }]) | ||
| 1426 | ///<jscompress sourcefile="tripDetailController.js" /> | ||
| 1427 | angular.module('myApp') | ||
| 1428 | .controller('tripDetailController', ['$scope', '$rootScope', '$state', 'dingdaService', '$stateParams', 'wechatPayment', | ||
| 1429 | function ($scope, $rootScope, $state, dingdaService, $stateParams, wechatPayment) { | ||
| 1430 | console.log('tripDetailController'); | ||
| 1431 | /** | ||
| 1432 | * 2. 选择dom元素 | ||
| 1433 | * */ | ||
| 1434 | var tripDetail = $('.tripDetail'); | ||
| 1435 | var winHeight = $(window).height(); | ||
| 1436 | var tripHeight = tripDetail.height() + 40; | ||
| 1437 | var bottomPosition = $('.bottomPosition'); | ||
| 1438 | if (winHeight >= tripHeight) { | ||
| 1439 | bottomPosition.css({'position': 'absolute', 'bottom': '0'}) | ||
| 1440 | } | ||
| 1441 | /** | ||
| 1442 | * 3. 定义当前业务需要的数据 | ||
| 1443 | * */ | ||
| 1444 | $scope.tripDetail = {}; | ||
| 1445 | $scope.needPay = false; | ||
| 1446 | $scope.backHome = function () { | ||
| 1447 | $state.go('main'); | ||
| 1448 | } | ||
| 1449 | /** | ||
| 1450 | * 4. 支付逻辑 | ||
| 1451 | * ispay 有无支付 | ||
| 1452 | * isActive | ||
| 1453 | * choosePay 选择支付 | ||
| 1454 | * */ | ||
| 1455 | var ispay = false; | ||
| 1456 | $scope.isActive = true; // 这个是个关键 TODO 要更改的 | ||
| 1457 | $scope.payType = 1; | ||
| 1458 | $scope.choosePay = function (index) { | ||
| 1459 | if ($($('.checkboxS')[index]).hasClass('checkboxTrue')) { | ||
| 1460 | // 如果要选择的项已经选中,不处理 | ||
| 1461 | return | ||
| 1462 | } else { | ||
| 1463 | $scope.isActive = !$scope.isActive; | ||
| 1464 | } | ||
| 1465 | |||
| 1466 | $scope.payType = index; | ||
| 1467 | } | ||
| 1468 | $scope.goPay = function () { | ||
| 1469 | if (ispay) return; | ||
| 1470 | if ($scope.payType == 1) { //微信支付 | ||
| 1471 | |||
| 1472 | ispay = true; | ||
| 1473 | wechatPayment.callRentPay($scope.tripDetail.id, $scope.tripDetail.total_fee) | ||
| 1474 | .then(function (result) { | ||
| 1475 | ispay = false; | ||
| 1476 | //支付成功 | ||
| 1477 | init(); | ||
| 1478 | // $state.go('bondSuccess'); | ||
| 1479 | }, function (errMsg) { | ||
| 1480 | ispay = false; | ||
| 1481 | //支付失败 | ||
| 1482 | // layer.open({ | ||
| 1483 | // content: '支付失败,请重试', | ||
| 1484 | // time:2 | ||
| 1485 | // }); | ||
| 1486 | }) | ||
| 1487 | } else { | ||
| 1488 | if ($scope.tripDetail.total_fee > $scope.balance) { //钱包支付判断余额是否足够支付 | ||
| 1489 | layer.open({ | ||
| 1490 | content: '您的余额不够是否去充值?', //小米下面按钮对齐 | ||
| 1491 | btn: ['去充值', '取消'], | ||
| 1492 | shadeClose: false, | ||
| 1493 | yes: function (index) { | ||
| 1494 | $state.go('prepay', {}, {reload: false}); | ||
| 1495 | layer.close(index); | ||
| 1496 | }, no: function (index) { | ||
| 1497 | layer.close(index); | ||
| 1498 | } | ||
| 1499 | }); | ||
| 1500 | } else { | ||
| 1501 | // 余额支付 | ||
| 1502 | |||
| 1503 | ispay = true; | ||
| 1504 | var data = { | ||
| 1505 | amount: $scope.tripDetail.total_fee, | ||
| 1506 | body: '余额支付', | ||
| 1507 | type: 102 | ||
| 1508 | } | ||
| 1509 | dingdaService.payWX($scope.tripDetail.id, data) | ||
| 1510 | .success(function (data, status) { | ||
| 1511 | ispay = false; | ||
| 1512 | layer.open({ | ||
| 1513 | content: '支付成功', | ||
| 1514 | time: 2 | ||
| 1515 | }); | ||
| 1516 | init(); | ||
| 1517 | }) | ||
| 1518 | .error(function (data) { | ||
| 1519 | ispay = false; | ||
| 1520 | layer.open({ | ||
| 1521 | content: '支付失败', | ||
| 1522 | time: 2 | ||
| 1523 | }); | ||
| 1524 | }) | ||
| 1525 | } | ||
| 1526 | } | ||
| 1527 | } | ||
| 1528 | |||
| 1529 | var orderid = $stateParams.orderId; | ||
| 1530 | /** | ||
| 1531 | * 1. init 获取初始化的数据 tripDetail 订单详情 needPay 是否需要发起支付 | ||
| 1532 | * */ | ||
| 1533 | var init = function () { | ||
| 1534 | dingdaService.getOrderFinishInfo(orderid).success(function (data, status) { | ||
| 1535 | $scope.tripDetail = data.data.order; | ||
| 1536 | // alert(JSON.stringify(data)); | ||
| 1537 | if (data.data.order.status == 300 || $scope.tripDetail.total_fee == 0) { | ||
| 1538 | $scope.needPay = false; | ||
| 1539 | } else if (data.data.order.status == 200) { | ||
| 1540 | $scope.needPay = true; | ||
| 1541 | } | ||
| 1542 | }) | ||
| 1543 | |||
| 1544 | dingdaService.getWallet(orderid).success(function (data, status) { | ||
| 1545 | $scope.balance = data.data.balance; | ||
| 1546 | }) | ||
| 1547 | } | ||
| 1548 | init(); | ||
| 1549 | |||
| 1550 | }]) | ||
| 1551 | ///<jscompress sourcefile="unusualController.js" /> | ||
| 1552 | angular.module('myApp') | ||
| 1553 | .controller('unusualController',['$scope','dingdaService','$state','$stateParams',function($scope,dingdaService,$state,$stateParams){ | ||
| 1554 | |||
| 1555 | $scope.returnBike = function() { | ||
| 1556 | dingdaService.setOrderFinish($stateParams.id) | ||
| 1557 | .success(function(data , status) { | ||
| 1558 | if(data.meta.code == 200) { | ||
| 1559 | $state.go('tripDetail' , { orderId : $stateParams.id }); | ||
| 1560 | } else if (data.meta.code == 203) { | ||
| 1561 | layer.open({ | ||
| 1562 | content: "租车失败", | ||
| 1563 | time:2 | ||
| 1564 | }); | ||
| 1565 | $state.go('main'); | ||
| 1566 | } else { | ||
| 1567 | |||
| 1568 | layer.open({ | ||
| 1569 | content: "系统检测到您还未还车,请联系客服", | ||
| 1570 | time:2 | ||
| 1571 | }); | ||
| 1572 | } | ||
| 1573 | }).error(function(data , status) { | ||
| 1574 | |||
| 1575 | }); | ||
| 1576 | } | ||
| 1577 | |||
| 1578 | $scope.hint = function() { | ||
| 1579 | layer.open({ | ||
| 1580 | content: "请在主页面菜单中点击联系我们", | ||
| 1581 | time:2 | ||
| 1582 | }); | ||
| 1583 | } | ||
| 1584 | |||
| 1585 | }]) | ||
| 1586 | ///<jscompress sourcefile="walletController.js" /> | ||
| 1587 | angular.module('myApp') | ||
| 1588 | .controller('walletController',['$scope','$rootScope','dingdaService','$state','globalService',function($scope,$rootScope,dingdaService,$state,globalService){ | ||
| 1589 | |||
| 1590 | $scope.balance = ""; | ||
| 1591 | |||
| 1592 | var init = function() { | ||
| 1593 | dingdaService.getWallet().success(function(data , status){ | ||
| 1594 | // alert(JSON.stringify(data.data)) | ||
| 1595 | $scope.balance = data.data.balance; | ||
| 1596 | |||
| 1597 | }) | ||
| 1598 | } | ||
| 1599 | |||
| 1600 | init(); | ||
| 1601 | |||
| 1602 | $scope.prepay = function() { | ||
| 1603 | $state.go('prepay', { }, { reload: false }); | ||
| 1604 | } | ||
| 1605 | }]); | ||
| 1606 | ///<jscompress sourcefile="bondController.js" /> | ||
| 1607 | angular.module('myApp') | ||
| 1608 | .controller('bondController',['$scope' , '$rootScope', '$state' , 'dingdaService' , '$stateParams' , | ||
| 1609 | function($scope,$rootScope,$state,dingdaService,$stateParams){ | ||
| 1610 | $scope.goPay = function(){ | ||
| 1611 | $state.go('bondPay'); | ||
| 1612 | } | ||
| 1613 | |||
| 1614 | // function getUrl(name){ | ||
| 1615 | // var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)"); | ||
| 1616 | // var url = String(window.location); | ||
| 1617 | // var arr = url.split('?'); | ||
| 1618 | // var str = arr[arr.length-1]; | ||
| 1619 | // var r = str.match(reg); | ||
| 1620 | // if(r!=null)return unescape(r[2]); return null; | ||
| 1621 | // } | ||
| 1622 | |||
| 1623 | $scope.init = function(){ | ||
| 1624 | var latitude = $stateParams.latitude; | ||
| 1625 | var longitude = $stateParams.longitude; | ||
| 1626 | dingdaService.getBond(longitude,latitude) | ||
| 1627 | .success(function(data){ | ||
| 1628 | // alert(JSON.stringify(data)) | ||
| 1629 | $scope.bondInfo = data.data; | ||
| 1630 | $rootScope.toPaid = data.data.toPaid; | ||
| 1631 | }).error(function(data){ | ||
| 1632 | // alert(JSON.stringify(data)) | ||
| 1633 | layer.open({ | ||
| 1634 | content: '获取保证金失败,请刷新页面', | ||
| 1635 | time:2 | ||
| 1636 | }); | ||
| 1637 | }) | ||
| 1638 | } | ||
| 1639 | |||
| 1640 | $scope.drawback = function(){ | ||
| 1641 | dingdaService.getUnfinishedOrder().success(function(data , status){ | ||
| 1642 | if(data.data.unfinishedOrder.id) { | ||
| 1643 | |||
| 1644 | layer.open({ | ||
| 1645 | content: '还有未完成的订单,无法退还保证金', | ||
| 1646 | time:2 | ||
| 1647 | }); | ||
| 1648 | } else { | ||
| 1649 | layer.open({ | ||
| 1650 | content: '您确定要退还保证金吗?', | ||
| 1651 | btn: ['确认', '取消'], | ||
| 1652 | shadeClose: false, | ||
| 1653 | yes: function(index){ | ||
| 1654 | layer.close(index); | ||
| 1655 | dingdaService.returnBond() | ||
| 1656 | .success(function(data){ | ||
| 1657 | layer.open({ | ||
| 1658 | content: '退还成功,保证金七个工作日内退还', | ||
| 1659 | time:2 | ||
| 1660 | }); | ||
| 1661 | $scope.init(); | ||
| 1662 | }) | ||
| 1663 | .error(function(data){ | ||
| 1664 | layer.open({ | ||
| 1665 | content: '退还保证金失败', | ||
| 1666 | time:2 | ||
| 1667 | }); | ||
| 1668 | }) | ||
| 1669 | },no: function(index){ | ||
| 1670 | layer.close(index); | ||
| 1671 | } | ||
| 1672 | }); | ||
| 1673 | } | ||
| 1674 | }) | ||
| 1675 | } | ||
| 1676 | |||
| 1677 | }]) | ||
| 1678 | ///<jscompress sourcefile="bondPayController.js" /> | ||
| 1679 | angular.module('myApp') | ||
| 1680 | .controller('bondPayController',['$scope', '$rootScope', '$state', 'wechatPayment', | ||
| 1681 | function($scope,$rootScope,$state, wechatPayment){ | ||
| 1682 | |||
| 1683 | if(!$rootScope.toPaid){ | ||
| 1684 | $state.go('bond'); | ||
| 1685 | } | ||
| 1686 | // 支付保证金 | ||
| 1687 | var ispay = false; | ||
| 1688 | $scope.goPay = function(){ | ||
| 1689 | if(ispay) return; | ||
| 1690 | ispay = true; | ||
| 1691 | wechatPayment.callDepositPay($rootScope.toPaid) | ||
| 1692 | .then(function(result){ | ||
| 1693 | ispay = false; | ||
| 1694 | //支付成功 | ||
| 1695 | $state.go('bondSuccess'); | ||
| 1696 | }, function(errMsg){ | ||
| 1697 | ispay = false; | ||
| 1698 | //支付失败 | ||
| 1699 | }) | ||
| 1700 | } | ||
| 1701 | |||
| 1702 | |||
| 1703 | |||
| 1704 | }]) | ||
| 1705 | ///<jscompress sourcefile="bondSuccessController.js" /> | ||
| 1706 | angular.module('myApp') | ||
| 1707 | .controller('bondSuccessController',[ '$scope' , '$rootScope' , '$state' , function($scope,$rootScope,$state){ | ||
| 1708 | |||
| 1709 | // 支付保证金成功 | ||
| 1710 | |||
| 1711 | $scope.goMap = function(){ | ||
| 1712 | $state.go('main'); | ||
| 1713 | } | ||
| 1714 | |||
| 1715 | }]) | ||
| 1716 | ///<jscompress sourcefile="contactController.js" /> | ||
| 1717 | angular.module('myApp') | ||
| 1718 | .controller('contactController',['$scope','$rootScope','dingdaService','$state','globalService',function($scope,$rootScope,dingdaService,$state,globalService){ | ||
| 1719 | |||
| 1720 | $scope.contactList = []; | ||
| 1721 | |||
| 1722 | var init = function() { | ||
| 1723 | // globalService.init(); | ||
| 1724 | $scope.contactList.push({ | ||
| 1725 | name : "浙江省" , | ||
| 1726 | phone : "0571-8677567" | ||
| 1727 | }) | ||
| 1728 | $scope.contactList.push({ | ||
| 1729 | name : "浙江省" , | ||
| 1730 | phone : "0571-8677567" | ||
| 1731 | }) | ||
| 1732 | $scope.contactList.push({ | ||
| 1733 | name : "浙江省" , | ||
| 1734 | phone : "0571-8677567" | ||
| 1735 | }) | ||
| 1736 | $scope.contactList.push({ | ||
| 1737 | name : "浙江省" , | ||
| 1738 | phone : "0571-8677567" | ||
| 1739 | }) | ||
| 1740 | $scope.contactList.push({ | ||
| 1741 | name : "浙江省" , | ||
| 1742 | phone : "0571-8677567" | ||
| 1743 | }) | ||
| 1744 | $scope.contactList.push({ | ||
| 1745 | name : "浙江省" , | ||
| 1746 | phone : "0571-8677567" | ||
| 1747 | }) | ||
| 1748 | $scope.contactList.push({ | ||
| 1749 | name : "浙江省" , | ||
| 1750 | phone : "0571-8677567" | ||
| 1751 | }) | ||
| 1752 | $scope.contactList.push({ | ||
| 1753 | name : "浙江省" , | ||
| 1754 | phone : "0571-8677567" | ||
| 1755 | }) | ||
| 1756 | $scope.contactList.push({ | ||
| 1757 | name : "浙江省" , | ||
| 1758 | phone : "0571-8677567" | ||
| 1759 | }) | ||
| 1760 | $scope.contactList.push({ | ||
| 1761 | name : "浙江省" , | ||
| 1762 | phone : "0571-8677567" | ||
| 1763 | }) | ||
| 1764 | $scope.contactList.push({ | ||
| 1765 | name : "浙江省" , | ||
| 1766 | phone : "0571-8677567" | ||
| 1767 | }) | ||
| 1768 | } | ||
| 1769 | |||
| 1770 | // mui.init(); | ||
| 1771 | init(); | ||
| 1772 | }]); | ||
| 1773 | ///<jscompress sourcefile="loginController.js" /> | ||
| 1774 | angular.module('myApp') | ||
| 1775 | .controller('loginController',[ '$scope','$rootScope','dingdaService','globalService' ,function($scope,$rootScope,dingdaService,globalService){ | ||
| 1776 | var init = function(){ | ||
| 1777 | $scope.phoneNumberVal=''; | ||
| 1778 | $scope.validationVal= ''; | ||
| 1779 | |||
| 1780 | $(".phoneNumber").focus(function(){ | ||
| 1781 | $(".phoneNumber").css('border','1px solid #36d1e7'); | ||
| 1782 | }) | ||
| 1783 | $(".phoneNumber").blur(function(){ | ||
| 1784 | $(".phoneNumber").css('border','1px solid rgba(0,0,0,.2)'); | ||
| 1785 | }) | ||
| 1786 | $(".validationInput").focus(function(){ | ||
| 1787 | $(".validationInput").css('border','1px solid #36d1e7'); | ||
| 1788 | }) | ||
| 1789 | $(".validationInput").blur(function(){ | ||
| 1790 | $(".validationInput").css('border','1px solid rgba(0,0,0,.2)'); | ||
| 1791 | }) | ||
| 1792 | |||
| 1793 | |||
| 1794 | } | ||
| 1795 | |||
| 1796 | function getUrl(name){ | ||
| 1797 | var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)"); | ||
| 1798 | var r = window.location.search.substr(1).match(reg); | ||
| 1799 | if(r!=null)return unescape(r[2]); return null; | ||
| 1800 | } | ||
| 1801 | init(); | ||
| 1802 | var countdown = function(){ | ||
| 1803 | var wait=60; | ||
| 1804 | function time(o) { | ||
| 1805 | if (wait == 0) { | ||
| 1806 | o.removeAttribute("disabled"); | ||
| 1807 | o.value="重发"; | ||
| 1808 | wait = 60; | ||
| 1809 | $('.ValidationBtn').html(o.value); | ||
| 1810 | $('.ValidationBtn').css('background','#36d1e7'); | ||
| 1811 | } else { | ||
| 1812 | o.setAttribute("disabled", true); | ||
| 1813 | o.value=wait + "秒"; | ||
| 1814 | wait--; | ||
| 1815 | $('.ValidationBtn').html(o.value); | ||
| 1816 | if(wait!=0){ | ||
| 1817 | $('.ValidationBtn').css('background','#ccc'); | ||
| 1818 | } | ||
| 1819 | setTimeout(function() { | ||
| 1820 | time(o); | ||
| 1821 | },1000) | ||
| 1822 | } | ||
| 1823 | } | ||
| 1824 | time($('.ValidationBtn').get(0)); | ||
| 1825 | } | ||
| 1826 | |||
| 1827 | $scope.Validation = function(){ | ||
| 1828 | if($scope.phoneNumberVal==""){ | ||
| 1829 | layer.open({ | ||
| 1830 | content: '手机号码不能为空', | ||
| 1831 | time:2 | ||
| 1832 | }); | ||
| 1833 | return | ||
| 1834 | } | ||
| 1835 | var reg = /^0?1[3|4|5|7|8][0-9]\d{8}$/; | ||
| 1836 | if(!reg.test($scope.phoneNumberVal)){ | ||
| 1837 | layer.open({ | ||
| 1838 | content: '手机号码格式不对', | ||
| 1839 | time:2 | ||
| 1840 | }); | ||
| 1841 | return | ||
| 1842 | } | ||
| 1843 | countdown(); | ||
| 1844 | var res = dingdaService.sendPhoneCode($scope.phoneNumberVal , getUrl("openId")); | ||
| 1845 | res.success(function(data){ | ||
| 1846 | console.log(data); | ||
| 1847 | }) | ||
| 1848 | .error(function(){ | ||
| 1849 | console.log('error'); | ||
| 1850 | }) | ||
| 1851 | |||
| 1852 | } | ||
| 1853 | |||
| 1854 | $scope.login= function(){ | ||
| 1855 | if($scope.phoneNumberVal==""){ | ||
| 1856 | layer.open({ | ||
| 1857 | content: '手机号码不能为空', | ||
| 1858 | time:2 | ||
| 1859 | }); | ||
| 1860 | return | ||
| 1861 | } | ||
| 1862 | var reg = /^0?1[3|4|5|7|8][0-9]\d{8}$/; | ||
| 1863 | if(!reg.test($scope.phoneNumberVal)){ | ||
| 1864 | layer.open({ | ||
| 1865 | content: '手机号码格式不对', | ||
| 1866 | time:2 | ||
| 1867 | }); | ||
| 1868 | return | ||
| 1869 | } | ||
| 1870 | |||
| 1871 | if($scope.validationVal==''){ | ||
| 1872 | layer.open({ | ||
| 1873 | content: '请输入验证码', | ||
| 1874 | time:2 | ||
| 1875 | }); | ||
| 1876 | return | ||
| 1877 | } | ||
| 1878 | $scope.validationVal = "" + $scope.validationVal; | ||
| 1879 | if($scope.validationVal.length != 4){ | ||
| 1880 | layer.open({ | ||
| 1881 | content: '验证码位数不对', | ||
| 1882 | time:2 | ||
| 1883 | }); | ||
| 1884 | return | ||
| 1885 | } | ||
| 1886 | |||
| 1887 | var res = dingdaService.verifyPhoneCode($scope.phoneNumberVal , $scope.validationVal).success(function(data){ | ||
| 1888 | if (data.meta.code == 200) { | ||
| 1889 | data.data.userName = $scope.phoneNumberVal; | ||
| 1890 | globalService.saveData('user',data.data); | ||
| 1891 | window.history.back(); | ||
| 1892 | layer.open({ | ||
| 1893 | content: '登录成功', | ||
| 1894 | time:1 | ||
| 1895 | }); | ||
| 1896 | setTimeout(function() { | ||
| 1897 | location.reload(); | ||
| 1898 | } , 300); | ||
| 1899 | } else if (data.meta.code == 401) { | ||
| 1900 | layer.open({ | ||
| 1901 | content: data.meta.message, | ||
| 1902 | time:1 | ||
| 1903 | }); | ||
| 1904 | // alert(data.meta.message); | ||
| 1905 | // layer.msg(data.data.error); | ||
| 1906 | return; | ||
| 1907 | } | ||
| 1908 | }).error(function(){ | ||
| 1909 | layer.open({ | ||
| 1910 | content: '登录失败', | ||
| 1911 | time:1 | ||
| 1912 | }); | ||
| 1913 | }) | ||
| 1914 | |||
| 1915 | } | ||
| 1916 | |||
| 1917 | $scope.$watch('validationVal',function(newVal,old){ | ||
| 1918 | if(newVal){ | ||
| 1919 | if($scope.validationVa!="" && !isNaN($scope.validationVal) && $scope.validationVal.toString().length==4){ | ||
| 1920 | $('.loginBtn').addClass('btnBg'); | ||
| 1921 | }else{ | ||
| 1922 | $('.loginBtn').removeClass('btnBg'); | ||
| 1923 | } | ||
| 1924 | } | ||
| 1925 | }) | ||
| 1926 | |||
| 1927 | // $(window).bind("load resize",function(){ | ||
| 1928 | // $(".loginBox").css({zoom:$(window).width()/320,visibility:"visible"}); | ||
| 1929 | // }); | ||
| 1930 | }]) | ||
| 1931 | |||
| 1932 | |||
| 1933 | |||
| 1934 | |||
| 1935 | |||
| 1936 | |||
| 1937 | |||
| 1938 | |||
| 1939 | |||
| 1940 | |||
| 1941 | |||
| 1942 | |||
| 1943 | |||
| 1944 | |||
| 1945 | |||
| 1946 | |||
| 1947 | |||
| 1948 | |||
| 1949 | |||
| 1950 | |||
| 1951 | |||
| 1952 | |||
| 1953 | |||
| 1954 | |||
| 1955 | |||
| 1956 | |||
| 1957 | |||
| 1958 | |||
| 1959 | |||
| 1960 | |||
| 1961 | |||
| 1962 | |||
| 1963 | |||
| 1964 | |||
| 1965 | |||
| 1966 | |||
| 1967 | |||
| 1968 | |||
| 1969 | |||
| 1970 | |||
| 1971 | |||
| 1972 | |||
| 1973 | |||
| 1974 | ///<jscompress sourcefile="mainController.js" /> | ||
| 1975 | angular.module('myApp') | ||
| 1976 | .controller('mainController',['$scope','$rootScope','dingdaService','$state','globalService',function($scope,$rootScope,dingdaService,$state,globalService){ | ||
| 1977 | |||
| 1978 | $rootScope.isRendBike = false; | ||
| 1979 | $rootScope.isLoadFinish = false; | ||
| 1980 | $scope.unfinishOrder = {}; | ||
| 1981 | |||
| 1982 | var init = function() { | ||
| 1983 | // globalService.init(); | ||
| 1984 | $scope.userinfo = globalService.getData("user"); | ||
| 1985 | if(!$scope.userinfo) { | ||
| 1986 | $scope.userinfo = {}; | ||
| 1987 | $scope.userinfo.userName = "未登录"; | ||
| 1988 | $scope.userinfo.loginState = false; | ||
| 1989 | } else { | ||
| 1990 | $scope.userinfo.loginState = true; | ||
| 1991 | // alert("getUnfinishedOrder") | ||
| 1992 | dingdaService.getUnfinishedOrder().success(function(data , status){ | ||
| 1993 | // alert(JSON.stringify(data)) | ||
| 1994 | if(data.data.unfinishedOrder.id) { | ||
| 1995 | $rootScope.isRendBike = true; | ||
| 1996 | $scope.unfinishOrder = data.data.unfinishedOrder; | ||
| 1997 | } | ||
| 1998 | if(data.data.unfinishedOrder.status == 200) { | ||
| 1999 | layer.open({ | ||
| 2000 | content: '您有未支付的订单,是否前往支付?', | ||
| 2001 | btn: ['确认', '取消'], | ||
| 2002 | shadeClose: false, | ||
| 2003 | yes: function(index){ | ||
| 2004 | layer.close(index); | ||
| 2005 | $state.go('tripDetail' , { orderId : $scope.unfinishOrder.id}); | ||
| 2006 | return; | ||
| 2007 | },no: function(index){ | ||
| 2008 | layer.close(index); | ||
| 2009 | } | ||
| 2010 | }); | ||
| 2011 | } | ||
| 2012 | }).error(function(data , status) { | ||
| 2013 | console.log(JSON.stringify(data)) | ||
| 2014 | }) | ||
| 2015 | } | ||
| 2016 | $scope.moduleList = []; | ||
| 2017 | $scope.moduleList.push({ | ||
| 2018 | name : "行程记录", | ||
| 2019 | icon : "images/trip.png", | ||
| 2020 | state : "trip" | ||
| 2021 | }); | ||
| 2022 | $scope.moduleList.push({ | ||
| 2023 | name : "钱包", | ||
| 2024 | icon : "images/wallet.png", | ||
| 2025 | state : "wallet" | ||
| 2026 | }); | ||
| 2027 | $scope.moduleList.push({ | ||
| 2028 | name : "保证金", | ||
| 2029 | icon : "images/bond.png", | ||
| 2030 | state : "bond" | ||
| 2031 | }); | ||
| 2032 | $scope.moduleList.push({ | ||
| 2033 | name : "联系我们", | ||
| 2034 | icon : "images/contact.png", | ||
| 2035 | state : "contact" | ||
| 2036 | }); | ||
| 2037 | $scope.moduleList.push({ | ||
| 2038 | name : "意见反馈", | ||
| 2039 | icon : "images/opinion.png", | ||
| 2040 | state : "opinion" | ||
| 2041 | }); | ||
| 2042 | } | ||
| 2043 | |||
| 2044 | $scope.doAction = function(index) { | ||
| 2045 | if($scope.checkLogin()) { | ||
| 2046 | var arg = {}; | ||
| 2047 | if(index == 2 || index == 4) { | ||
| 2048 | arg = {longitude: $rootScope.currentPoint.longitude , latitude: $rootScope.currentPoint.latitude }; | ||
| 2049 | } | ||
| 2050 | if(index == 3) { | ||
| 2051 | location.href = "http://wx.dy.dingdatech.com/contactUs.html"; | ||
| 2052 | } else { | ||
| 2053 | $state.go($scope.moduleList[index].state, arg); | ||
| 2054 | } | ||
| 2055 | } | ||
| 2056 | } | ||
| 2057 | |||
| 2058 | $scope.checkLogin = function() { | ||
| 2059 | if(!globalService.getData("user")) { | ||
| 2060 | $state.go('login', {}, {reload: true}); | ||
| 2061 | return false; | ||
| 2062 | } | ||
| 2063 | return true; | ||
| 2064 | } | ||
| 2065 | |||
| 2066 | $scope.logout = function() { | ||
| 2067 | $scope.userinfo = {}; | ||
| 2068 | $scope.userinfo.userName = "未登录"; | ||
| 2069 | $scope.userinfo.loginState = false; | ||
| 2070 | globalService.clearData("user"); | ||
| 2071 | location.reload() | ||
| 2072 | } | ||
| 2073 | |||
| 2074 | var initScan = function() { | ||
| 2075 | $rootScope.openScan = false; | ||
| 2076 | $rootScope.openDetail = false; | ||
| 2077 | $rootScope.openMenu = false; | ||
| 2078 | $rootScope.openRing = false; | ||
| 2079 | $rootScope.$watch("openScan",function(newVal, oldVal){ | ||
| 2080 | if(newVal !== oldVal && newVal) { | ||
| 2081 | if(!$scope.checkLogin()) { | ||
| 2082 | return; | ||
| 2083 | } | ||
| 2084 | |||
| 2085 | if($scope.unfinishOrder.status == 200) { | ||
| 2086 | $state.go('tripDetail' , { orderId : $scope.unfinishOrder.id}); | ||
| 2087 | return; | ||
| 2088 | } | ||
| 2089 | $rootScope.openScan = false; | ||
| 2090 | wx.scanQRCode({ | ||
| 2091 | needResult: 1, // 默认为1,扫描结果由微信处理,1则直接返回扫描结果, | ||
| 2092 | scanType: ["qrCode","barCode"], // 可以指定扫二维码还是一维码,默认二者都有 | ||
| 2093 | success: function (res) { | ||
| 2094 | var result = res.resultStr; // 当needResult 为 1 时,扫码返回的结果 | ||
| 2095 | // alert(result); | ||
| 2096 | dingdaService.verifyScanCode(result).success(function(data , status){ | ||
| 2097 | // alert(JSON.stringify(data)) | ||
| 2098 | if(data.meta.code == 200) { | ||
| 2099 | if(data.data.orderDetail.id) { | ||
| 2100 | |||
| 2101 | layer.open({ | ||
| 2102 | content: "租车成功,订单号为:" + data.data.orderDetail.id, | ||
| 2103 | time:2 | ||
| 2104 | }); | ||
| 2105 | // alert("租车成功,订单号为:" + data.data.orderDetail.id); | ||
| 2106 | $rootScope.isRendBike = true; | ||
| 2107 | |||
| 2108 | $state.go('rentDetail', {}, {reload: true}); | ||
| 2109 | |||
| 2110 | } | ||
| 2111 | } else if(data.meta.code == 202) { | ||
| 2112 | layer.open({ | ||
| 2113 | content: data.meta.message, | ||
| 2114 | time:2 | ||
| 2115 | }); | ||
| 2116 | $state.go('bond', {longitude: $rootScope.currentPoint.longitude , latitude: $rootScope.currentPoint.latitude }); | ||
| 2117 | } else { | ||
| 2118 | layer.open({ | ||
| 2119 | content: data.meta.message, | ||
| 2120 | time:2 | ||
| 2121 | }); | ||
| 2122 | } | ||
| 2123 | }).error(function(data , status){ | ||
| 2124 | layer.open({ | ||
| 2125 | content: "租车失败" + JSON.stringify(data), | ||
| 2126 | time:2 | ||
| 2127 | }); | ||
| 2128 | }); | ||
| 2129 | } | ||
| 2130 | }); | ||
| 2131 | } | ||
| 2132 | }) | ||
| 2133 | $rootScope.$watch("openDetail",function(newVal, oldVal){ | ||
| 2134 | if(newVal === oldVal) return; | ||
| 2135 | |||
| 2136 | if(newVal) { | ||
| 2137 | dingdaService.getUnfinishedOrder().success(function(data , status){ | ||
| 2138 | if(data.meta.code == 200) { | ||
| 2139 | if(!data.data.unfinishedOrder.id) { | ||
| 2140 | layer.open({ | ||
| 2141 | content: '租车完成', | ||
| 2142 | time:2 | ||
| 2143 | }); | ||
| 2144 | // alert("租车完成") | ||
| 2145 | $state.go('main'); | ||
| 2146 | } | ||
| 2147 | } | ||
| 2148 | |||
| 2149 | if(data.data.unfinishedOrder.status == 200) { | ||
| 2150 | $state.go('tripDetail' , { orderId : data.data.unfinishedOrder.id}); | ||
| 2151 | } else { | ||
| 2152 | $state.go('rentDetail', {}, {reload: true}); | ||
| 2153 | } | ||
| 2154 | }).error(function(data , status) { | ||
| 2155 | console.log(JSON.stringify(data)) | ||
| 2156 | }) | ||
| 2157 | |||
| 2158 | } | ||
| 2159 | }) | ||
| 2160 | $rootScope.$watch("openRing",function(newVal, oldVal){ | ||
| 2161 | // TODO open new message | ||
| 2162 | }) | ||
| 2163 | $rootScope.$watch("isLoadFinish" , function(newVal , oldVal){ | ||
| 2164 | if(newVal === oldVal) return; | ||
| 2165 | if(newVal) { | ||
| 2166 | document.getElementById("sliderMenu").style.display = "block"; | ||
| 2167 | } | ||
| 2168 | }) | ||
| 2169 | |||
| 2170 | document.getElementById("sliderMenu").addEventListener("touchmove", function(){ | ||
| 2171 | return; | ||
| 2172 | } , false); | ||
| 2173 | } | ||
| 2174 | |||
| 2175 | // mui.init(); | ||
| 2176 | initScan(); | ||
| 2177 | init(); | ||
| 2178 | |||
| 2179 | |||
| 2180 | }]); | ||
| 2181 |
js/compress.js.JSCompress
0 → 100644
| 1 | <jscompress public="http://www.jscompress.cn/" command="import-combineset"> | ||
| 2 | <combinefile path="compress.js"> | ||
| 3 | <sourcefile path=".\app.js" /> | ||
| 4 | <sourcefile path=".\service\weixinConfig.js" /> | ||
| 5 | <sourcefile path=".\service\globalService.js" /> | ||
| 6 | <sourcefile path=".\service\dingdaService.js" /> | ||
| 7 | <sourcefile path=".\service\wechatPaymentService.js" /> | ||
| 8 | <sourcefile path=".\controller\mapController.js" /> | ||
| 9 | <sourcefile path=".\controller\opinionController.js" /> | ||
| 10 | <sourcefile path=".\controller\payController.js" /> | ||
| 11 | <sourcefile path=".\controller\prepayController.js" /> | ||
| 12 | <sourcefile path=".\controller\rechargeListController.js" /> | ||
| 13 | <sourcefile path=".\controller\rentDetailController.js" /> | ||
| 14 | <sourcefile path=".\controller\tripController.js" /> | ||
| 15 | <sourcefile path=".\controller\tripDetailController.js" /> | ||
| 16 | <sourcefile path=".\controller\unusualController.js" /> | ||
| 17 | <sourcefile path=".\controller\walletController.js" /> | ||
| 18 | <sourcefile path=".\controller\bondController.js" /> | ||
| 19 | <sourcefile path=".\controller\bondPayController.js" /> | ||
| 20 | <sourcefile path=".\controller\bondSuccessController.js" /> | ||
| 21 | <sourcefile path=".\controller\contactController.js" /> | ||
| 22 | <sourcefile path=".\controller\loginController.js" /> | ||
| 23 | <sourcefile path=".\controller\mainController.js" /> | ||
| 24 | </combinefile> | ||
| 25 | </jscompress> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
js/compress.min.js
0 → 100644
| 1 | ///<jscompress sourcefile="app.js" /> | ||
| 2 | angular.module('myApp.services', ['LocalStorageModule']); | ||
| 3 | angular.module('myApp.directives', []); | ||
| 4 | var app = angular.module('myApp', [ "ui.router",'myApp.services', 'myApp.directives']); | ||
| 5 | |||
| 6 | app.config(['$stateProvider' , '$urlRouterProvider' , function($stateProvider, $urlRouterProvider){ | ||
| 7 | $urlRouterProvider.otherwise("/main"); | ||
| 8 | $stateProvider.state('main', { | ||
| 9 | url: "/main", | ||
| 10 | templateUrl: "html/main.html" | ||
| 11 | }) | ||
| 12 | .state('login',{ | ||
| 13 | url: "/login", | ||
| 14 | templateUrl: "html/login.html" | ||
| 15 | }) | ||
| 16 | .state('trip',{ | ||
| 17 | url: "/trip", | ||
| 18 | templateUrl: "html/trip.html", | ||
| 19 | controller: 'tripController' | ||
| 20 | }) | ||
| 21 | .state('wallet',{ | ||
| 22 | url: "/wallet", | ||
| 23 | templateUrl: "html/wallet.html" | ||
| 24 | }) | ||
| 25 | .state('bond',{ | ||
| 26 | url: "/bond/?longitude&latitude", | ||
| 27 | templateUrl: "html/bond.html" | ||
| 28 | }) | ||
| 29 | .state('contact',{ | ||
| 30 | url: "/contact", | ||
| 31 | templateUrl: "html/contact.html" | ||
| 32 | }) | ||
| 33 | .state('opinion',{ | ||
| 34 | url: "/opinion/?longitude&latitude", | ||
| 35 | templateUrl: "html/opinion.html" | ||
| 36 | }) | ||
| 37 | .state('tripDetail',{ | ||
| 38 | url: "/tripDetail/:orderId", | ||
| 39 | templateUrl: "html/tripDetail.html" , | ||
| 40 | controller: 'tripDetailController' | ||
| 41 | }) | ||
| 42 | |||
| 43 | .state('prepay',{ | ||
| 44 | url: "/prepay", | ||
| 45 | templateUrl: "html/prepay.html" | ||
| 46 | }) | ||
| 47 | .state('pay',{ | ||
| 48 | url: "/pay", | ||
| 49 | templateUrl: "html/pay.html" | ||
| 50 | }) | ||
| 51 | .state('bondPay',{ | ||
| 52 | url: "/bondPay", | ||
| 53 | templateUrl: "html/bondPay.html" | ||
| 54 | }) | ||
| 55 | .state('bondSuccess',{ | ||
| 56 | url: "/bondSuccess", | ||
| 57 | templateUrl: "html/bondSuccess.html" | ||
| 58 | }) | ||
| 59 | .state('rentDetail',{ | ||
| 60 | url: "/rentDetail", | ||
| 61 | templateUrl: "html/rentDetail.html" | ||
| 62 | }) | ||
| 63 | .state('unusual',{ | ||
| 64 | url: "/unusual/:id", | ||
| 65 | templateUrl: "html/unusual.html" | ||
| 66 | }) | ||
| 67 | .state('rechargeList',{ | ||
| 68 | url: "/rechargeList", | ||
| 69 | templateUrl: "html/rechargeList.html" | ||
| 70 | }) | ||
| 71 | |||
| 72 | |||
| 73 | |||
| 74 | }]) | ||
| 75 | app.run(['globalService', function(globalService) { | ||
| 76 | globalService.init(); | ||
| 77 | var loading = document.getElementById("appLoadingIndicator"); | ||
| 78 | loading.style.display = "none"; | ||
| 79 | }]) | ||
| 80 | //$(window).bind("load resize",function(){ | ||
| 81 | // $("body").css({zoom:$(window).width()/320,visibility:"visible"}); | ||
| 82 | //});; | ||
| 83 | ///<jscompress sourcefile="wechatPaymentService.js" /> | ||
| 84 | angular.module('myApp.services') | ||
| 85 | .service('wechatPayment',['$http', '$q', '$rootScope',function($http, $q, $rootScope) { | ||
| 86 | |||
| 87 | //var host = 'http://finance.api.dingdachuxing.com/service'; | ||
| 88 | var host = 'http://finance.dy.dingdatech.com/service'; | ||
| 89 | |||
| 90 | |||
| 91 | |||
| 92 | //调用微信JS api 支付 | ||
| 93 | var jsApiCall = function (sign, q) { | ||
| 94 | WeixinJSBridge.invoke( | ||
| 95 | 'getBrandWCPayRequest', { | ||
| 96 | appId : sign.appId, | ||
| 97 | timeStamp : sign.timeStamp, | ||
| 98 | nonceStr : sign.nonceStr, | ||
| 99 | package : sign.packageStr, | ||
| 100 | signType : sign.signType, | ||
| 101 | paySign : sign.paySign | ||
| 102 | }, | ||
| 103 | function (res) { | ||
| 104 | if (res.err_msg == 'get_brand_wcpay_request:ok') { | ||
| 105 | layer.open({ | ||
| 106 | content: '支付成功!', | ||
| 107 | time:1 | ||
| 108 | }); | ||
| 109 | q.resolve(res.err_msg); | ||
| 110 | return; | ||
| 111 | } else if (res.err_msg == 'get_brand_wcpay_request:fail') { | ||
| 112 | alert("支付失败:" + JSON.stringify(res)) | ||
| 113 | layer.open({ | ||
| 114 | content: '支付失败!', | ||
| 115 | time:1 | ||
| 116 | }); | ||
| 117 | } else if (res.err_msg == 'get_brand_wcpay_request:cancel') { | ||
| 118 | layer.open({ | ||
| 119 | content: '支付取消!', | ||
| 120 | time:1 | ||
| 121 | }); | ||
| 122 | } else { | ||
| 123 | layer.open({ | ||
| 124 | content: '支付异常,'+res.err_msg, | ||
| 125 | time:1 | ||
| 126 | }); | ||
| 127 | } | ||
| 128 | q.reject(res.err_msg); | ||
| 129 | // WeixinJSBridge.log(res.err_msg); | ||
| 130 | // console.error(res.err_msg); | ||
| 131 | } | ||
| 132 | ); | ||
| 133 | } | ||
| 134 | |||
| 135 | var callUnifiedOrderApi = function(url, data){ | ||
| 136 | var q = $q.defer(); | ||
| 137 | $http.post(url, data) | ||
| 138 | .success(function (data) { | ||
| 139 | if(data.meta.code == 200) { | ||
| 140 | // alert('支付签名返回:' + JSON.stringify(data)); | ||
| 141 | jsApiCall(data.data.wechatDto, q); | ||
| 142 | }else{ | ||
| 143 | layer.open({ | ||
| 144 | content:'支付签名失败:code '+data.meta.code+","+ data.meta.message, | ||
| 145 | time:1 | ||
| 146 | }); | ||
| 147 | q.reject(data.meta.message) | ||
| 148 | } | ||
| 149 | }) | ||
| 150 | |||
| 151 | return q.promise; | ||
| 152 | } | ||
| 153 | |||
| 154 | return { | ||
| 155 | /** | ||
| 156 | * 租车付款 | ||
| 157 | */ | ||
| 158 | callRentPay: function (orderId, amount) { | ||
| 159 | return callUnifiedOrderApi(host + '/bill/wx/' + orderId, { | ||
| 160 | amount : amount, | ||
| 161 | body : "租车租金", | ||
| 162 | type : 101 | ||
| 163 | }); | ||
| 164 | }, | ||
| 165 | /** | ||
| 166 | * 保证金充值 | ||
| 167 | * @param amount | ||
| 168 | */ | ||
| 169 | callDepositPay : function(amount){ | ||
| 170 | return callUnifiedOrderApi(host + "/bail/wx", { | ||
| 171 | amount : amount, | ||
| 172 | body : "保证金充值", | ||
| 173 | type : 101 | ||
| 174 | }); | ||
| 175 | }, | ||
| 176 | /** | ||
| 177 | * 钱包充值 | ||
| 178 | * @param amount | ||
| 179 | */ | ||
| 180 | callBalanceRecharge : function(amount){ | ||
| 181 | return callUnifiedOrderApi(host + "/balance/wx", { | ||
| 182 | amount : amount, | ||
| 183 | body : "钱包充值", | ||
| 184 | type : 101 | ||
| 185 | }); | ||
| 186 | } | ||
| 187 | } | ||
| 188 | }]); | ||
| 189 | ; | ||
| 190 | ///<jscompress sourcefile="weixinConfig.js" /> | ||
| 191 | /** | ||
| 192 | * Created by zhanghong on 15/3/8. | ||
| 193 | */ | ||
| 194 | function weixinOptionMenuInit(appId, timestamp, nonceStr, signature){ | ||
| 195 | try { | ||
| 196 | // wwsDebug.info("appId:" + appId); | ||
| 197 | // wwsDebug.info("timestamp:" + timestamp); | ||
| 198 | // wwsDebug.info("nonceStr:" + nonceStr); | ||
| 199 | // wwsDebug.info("signature:" + signature); | ||
| 200 | // alert("typeof wx.config " + typeof wx.config); | ||
| 201 | // if (wx) { | ||
| 202 | wx.config({ | ||
| 203 | debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。 | ||
| 204 | appId: appId, // 必填,公众号的唯一标识 | ||
| 205 | timestamp: timestamp, // 必填,生成签名的时间戳 | ||
| 206 | nonceStr: nonceStr, // 必填,生成签名的随机串 | ||
| 207 | signature: signature,// 必填,签名,见附录1 | ||
| 208 | jsApiList: ['scanQRCode','getLocation'] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2 | ||
| 209 | }); | ||
| 210 | wx.error(function(res){ | ||
| 211 | layer.open({ | ||
| 212 | content:"微信扫码功能不能用,无法使用扫码租车", | ||
| 213 | time:1 | ||
| 214 | }); | ||
| 215 | // config信息验证失败会执行error函数,如签名过期导致验证失败,具体错误信息可以打开config的debug模式查看,也可以在返回的res参数中查看,对于SPA可以在这里更新签名。 | ||
| 216 | |||
| 217 | }); | ||
| 218 | wx.ready(function(){ | ||
| 219 | // alert('wx ready') | ||
| 220 | // config信息验证后会执行ready方法,所有接口调用都必须在config接口获得结果之后,config是一个客户端的异步操作,所以如果需要在页面加载时就调用相关接口,则须把相关接口放在ready函数中调用来确保正确执行。对于用户触发时才调用的接口,则可以直接调用,不需要放在ready函数中。 | ||
| 221 | wx.checkJsApi({ | ||
| 222 | jsApiList: ['scanQRCode','getLocation'], // 需要检测的JS接口列表,所有JS接口列表见附录2, | ||
| 223 | success: function(res) { | ||
| 224 | if(res.checkResult.scanQRCode != true){ | ||
| 225 | layer.open({ | ||
| 226 | content: '您的微信版本太低,不支持扫码', | ||
| 227 | time:1 | ||
| 228 | }); | ||
| 229 | |||
| 230 | } | ||
| 231 | // 以键值对的形式返回,可用的api值true,不可用为false | ||
| 232 | // 如:{"checkResult":{"chooseImage":true},"errMsg":"checkJsApi:ok"} | ||
| 233 | } | ||
| 234 | }); | ||
| 235 | }); | ||
| 236 | // } | ||
| 237 | }catch(exception){ | ||
| 238 | // alert("exception " + exception) | ||
| 239 | layer.open({ | ||
| 240 | content:"微信扫码功能异常,无法使用扫码租车", | ||
| 241 | time:1 | ||
| 242 | }); | ||
| 243 | } | ||
| 244 | } | ||
| 245 | |||
| 246 | function initWeixinMenu($http){ | ||
| 247 | var url = encodeURIComponent(location.href.split('#')[0]); | ||
| 248 | //生产环境 wechat.api.dingdatech.com | ||
| 249 | $http.post("http://wechat.dy.dingdatech.com/wx/qrCodeParms", | ||
| 250 | { | ||
| 251 | webUrl : url | ||
| 252 | }) | ||
| 253 | .success(function(data){ | ||
| 254 | // alert(JSON.stringify(data) + ", with url : " + location.href.split('#')[0]) | ||
| 255 | if(data){ | ||
| 256 | weixinOptionMenuInit(data.appid, data.timestamp, data.noncestr, data.signature); | ||
| 257 | } | ||
| 258 | }) | ||
| 259 | .error(function(arg1){ | ||
| 260 | try { | ||
| 261 | layer.open({ | ||
| 262 | content:"微信jssdk配置接口失败:" + JSON.stringify(arg1), | ||
| 263 | time:1 | ||
| 264 | }); | ||
| 265 | }catch(e){ | ||
| 266 | layer.open({ | ||
| 267 | content:"微信jssdk配置接口失败:" + arg1, | ||
| 268 | time:1 | ||
| 269 | }); | ||
| 270 | } | ||
| 271 | // alert(arg1); | ||
| 272 | }); | ||
| 273 | } | ||
| 274 | ; | ||
| 275 | ///<jscompress sourcefile="dingdaService.js" /> | ||
| 276 | angular.module('myApp.services') | ||
| 277 | .service( 'dingdaService', [ '$http','globalService', | ||
| 278 | function($http,globalService) { | ||
| 279 | return { | ||
| 280 | sendPhoneCode: function(phone , openId){ | ||
| 281 | var url = globalService.getParam('dingdaLoginAPI') + '/login/sms?mobile=' + phone + '&openId=' + openId; | ||
| 282 | var res = $http.get(url).success(function(data, status) { | ||
| 283 | }).error(function(data, status) { | ||
| 284 | alert(data.meta.message) | ||
| 285 | }); | ||
| 286 | return res; | ||
| 287 | }, | ||
| 288 | verifyPhoneCode : function(phone , code){ | ||
| 289 | var url = globalService.getParam('dingdaLoginAPI') + '/login/sms?mobile=' + phone + '&code=' + code; | ||
| 290 | var res = $http.post(url , { | ||
| 291 | } , { | ||
| 292 | }).success(function(data, status) { | ||
| 293 | |||
| 294 | }).error(function(data, status) { | ||
| 295 | alert(data.meta.message) | ||
| 296 | }); | ||
| 297 | return res; | ||
| 298 | }, | ||
| 299 | getStationList : function(longitude , latitude){ | ||
| 300 | var url = globalService.getParam('dingdaAPI') + '/service/bicycle/stations?longitude=' + longitude | ||
| 301 | + '&latitude=' + latitude; | ||
| 302 | var res = $http.get(url).success(function(data, status) { | ||
| 303 | }).error(function(data, status) { | ||
| 304 | alert(data.meta.message) | ||
| 305 | }); | ||
| 306 | return res; | ||
| 307 | }, | ||
| 308 | getStationById : function(id){ | ||
| 309 | var url = globalService.getParam('dingdaAPI') + '/service/bicycle/stations/' + id; | ||
| 310 | var res = $http.get(url).success(function(data, status) { | ||
| 311 | }).error(function(data, status) { | ||
| 312 | alert(data.meta.message) | ||
| 313 | }); | ||
| 314 | return res; | ||
| 315 | }, | ||
| 316 | getUnfinishedOrder : function(){ | ||
| 317 | var url = globalService.getParam('dingdaAPI') + '/service/bicycle/orders/unfinished'; | ||
| 318 | var res = $http.get(url).success(function(data, status) { | ||
| 319 | }).error(function(data, status) { | ||
| 320 | alert(data.meta.message) | ||
| 321 | }); | ||
| 322 | return res; | ||
| 323 | }, | ||
| 324 | verifyScanCode : function(code){ | ||
| 325 | var url = globalService.getParam('dingdaAPI') + '/service/bicycle/order?code=' + code; | ||
| 326 | var res = $http.post(url , { }).success(function(data, status) { | ||
| 327 | |||
| 328 | }).error(function(data, status) { | ||
| 329 | alert(data.meta.message) | ||
| 330 | }); | ||
| 331 | return res; | ||
| 332 | }, | ||
| 333 | getOrderRealTimeInfo : function(id){ | ||
| 334 | var url = globalService.getParam('dingdaAPI') + '/service/bicycle/orders/detail/' + id; | ||
| 335 | var res = $http.get(url).success(function(data, status) { | ||
| 336 | }).error(function(data, status) { | ||
| 337 | alert(data.meta.message) | ||
| 338 | }); | ||
| 339 | return res; | ||
| 340 | }, | ||
| 341 | getOrderList : function(page){ | ||
| 342 | var url = globalService.getParam('dingdaAPI') + '/service/bicycle/orders?pageSize=10&pageNum=' + page; | ||
| 343 | var res = $http.get(url).success(function(data, status) { | ||
| 344 | }).error(function(data, status) { | ||
| 345 | alert(data.meta.message) | ||
| 346 | }); | ||
| 347 | return res; | ||
| 348 | }, | ||
| 349 | getOrderFinishInfo : function(id){ | ||
| 350 | var url = globalService.getParam('dingdaAPI') + '/service/bicycle/orders/' + id; | ||
| 351 | var res = $http.get(url).success(function(data, status) { | ||
| 352 | }).error(function(data, status) { | ||
| 353 | alert(data.meta.message) | ||
| 354 | }); | ||
| 355 | return res; | ||
| 356 | }, | ||
| 357 | setOrderFinish : function(id){ | ||
| 358 | var url = globalService.getParam('dingdaAPI') + '/service/bicycle/order/finish/' + id; | ||
| 359 | var res = $http.post(url , {}).success(function(data, status) { | ||
| 360 | }).error(function(data, status) { | ||
| 361 | alert(data.meta.message) | ||
| 362 | }); | ||
| 363 | return res; | ||
| 364 | }, | ||
| 365 | payWX : function(id , payInfo) { | ||
| 366 | var url = globalService.getParam('financeAPI') + '/service/bill/wx/' + id; | ||
| 367 | var res = $http.post(url , payInfo).success(function(data, status) { | ||
| 368 | |||
| 369 | }).error(function(data, status) { | ||
| 370 | alert(data.meta.message) | ||
| 371 | }); | ||
| 372 | return res; | ||
| 373 | }, | ||
| 374 | getWallet : function() { | ||
| 375 | var url = globalService.getParam('financeAPI') + '/service/balance'; | ||
| 376 | var res = $http.get(url).success(function(data, status) { | ||
| 377 | }).error(function(data, status) { | ||
| 378 | alert(data.meta.message) | ||
| 379 | }); | ||
| 380 | return res; | ||
| 381 | }, | ||
| 382 | payWallet : function(payInfo) { | ||
| 383 | var url = globalService.getParam('financeAPI') + '/service/balance/wx'; | ||
| 384 | var res = $http.post(url , payInfo).success(function(data, status) { | ||
| 385 | }).error(function(data, status) { | ||
| 386 | alert(data.meta.message) | ||
| 387 | }); | ||
| 388 | return res; | ||
| 389 | }, | ||
| 390 | getWalletHistory : function(page) { | ||
| 391 | var url = globalService.getParam('financeAPI') + '/service/balances?pageSize=10&pageNum' + page; | ||
| 392 | var res = $http.get(url).success(function(data, status) { | ||
| 393 | }).error(function(data, status) { | ||
| 394 | alert(data.meta.message) | ||
| 395 | }); | ||
| 396 | return res; | ||
| 397 | }, | ||
| 398 | getBond : function(longitude , latitude) { | ||
| 399 | var url = globalService.getParam('dingdaAPI') + '/service/bicycle/deposit?longitude=' + longitude | ||
| 400 | + '&latitude=' + latitude; | ||
| 401 | var res = $http.get(url).success(function(data, status) { | ||
| 402 | }).error(function(data, status) { | ||
| 403 | alert(data.meta.message) | ||
| 404 | }); | ||
| 405 | return res; | ||
| 406 | }, | ||
| 407 | payBond : function(payInfo) { | ||
| 408 | var url = globalService.getParam('financeAPI') + '/service/bail/wx'; | ||
| 409 | var res = $http.post(url , payInfo).success(function(data, status) { | ||
| 410 | }).error(function(data, status) { | ||
| 411 | alert(data.meta.message) | ||
| 412 | }); | ||
| 413 | return res; | ||
| 414 | }, | ||
| 415 | returnBond : function(page) { | ||
| 416 | var url = globalService.getParam('dingdaAPI') + '/service/bicycle/deposit'; | ||
| 417 | var res = $http.delete(url).success(function(data, status) { | ||
| 418 | }).error(function(data, status) { | ||
| 419 | alert(data.meta.message) | ||
| 420 | }); | ||
| 421 | return res; | ||
| 422 | }, | ||
| 423 | comment : function(message) { | ||
| 424 | var url = globalService.getParam('feedbackAPI') + '/service/comments'; | ||
| 425 | var res = $http.post(url , message).success(function(data, status) { | ||
| 426 | }).error(function(data, status) { | ||
| 427 | alert(data.meta.message) | ||
| 428 | }); | ||
| 429 | return res; | ||
| 430 | }, | ||
| 431 | getVersion : function() { | ||
| 432 | var url = globalService.getParam('dingdaAPI') + '/service/version'; | ||
| 433 | var res = $http.get(url).success(function(data, status) { | ||
| 434 | }).error(function(data, status) { | ||
| 435 | alert(data.meta.message) | ||
| 436 | }); | ||
| 437 | return res; | ||
| 438 | } | ||
| 439 | } | ||
| 440 | }]); | ||
| 441 | ///<jscompress sourcefile="globalService.js" /> | ||
| 442 | |||
| 443 | angular.module('myApp.services') | ||
| 444 | .service('globalService', | ||
| 445 | [ '$http', '$rootScope', 'localStorageService', | ||
| 446 | function($http, $rootScope ,localStorageService) { | ||
| 447 | |||
| 448 | var setHeaderToken = function (token){ | ||
| 449 | $http.defaults.headers.common = { | ||
| 450 | "token": token , | ||
| 451 | "version": "1.0.0" , | ||
| 452 | "source" : "WX" | ||
| 453 | }; | ||
| 454 | } | ||
| 455 | var init = function(){ | ||
| 456 | $rootScope.params = {}; | ||
| 457 | $rootScope.config = {}; | ||
| 458 | $rootScope.data = {}; | ||
| 459 | $rootScope.inited = true; | ||
| 460 | //--------------------自行车服务-------------- | ||
| 461 | // 生产环境 | ||
| 462 | var dingdaAPI = "http://bike.dy.dingdatech.com"; | ||
| 463 | // 测试环境 | ||
| 464 | //var dingdaAPI = "http://bike.api.dingdachuxing.com"; | ||
| 465 | globalConfig.setParam("dingdaAPI", dingdaAPI); | ||
| 466 | //--------------------财务服务-------------- | ||
| 467 | // 生产环境 | ||
| 468 | var financeAPI = "http://finance.dy.dingdatech.com"; | ||
| 469 | // 测试环境 | ||
| 470 | //var financeAPI = "http://finance.api.dingdachuxing.com"; | ||
| 471 | globalConfig.setParam("financeAPI", financeAPI); | ||
| 472 | //--------------------反馈服务-------------- | ||
| 473 | // 生产环境 | ||
| 474 | var feedbackAPI = "http://feedback.dy.dingdatech.com"; | ||
| 475 | // 测试环境 | ||
| 476 | //var feedbackAPI = "http://feedback.api.dingdachuxing.com"; | ||
| 477 | globalConfig.setParam("feedbackAPI", feedbackAPI); | ||
| 478 | //--------------------认证服务-------------- | ||
| 479 | // 生产环境 | ||
| 480 | var dingdaLoginAPI = "http://auth.dy.dingdatech.com"; | ||
| 481 | // 测试环境 | ||
| 482 | //var dingdaLoginAPI = "http://auth.api.dingdachuxing.com"; | ||
| 483 | globalConfig.setParam("dingdaLoginAPI", dingdaLoginAPI); | ||
| 484 | |||
| 485 | $rootScope.$watch("data.user",function(newVal, oldVal){ | ||
| 486 | if(!newVal){ | ||
| 487 | return; | ||
| 488 | } | ||
| 489 | if(newVal.token) { | ||
| 490 | setHeaderToken(newVal.token); | ||
| 491 | } | ||
| 492 | }) | ||
| 493 | |||
| 494 | loadPersistData(); | ||
| 495 | loadCityConfig(); | ||
| 496 | loadPathParams(); | ||
| 497 | initWeixinMenu($http); | ||
| 498 | |||
| 499 | } | ||
| 500 | |||
| 501 | var loadPersistData = function() { | ||
| 502 | var keys = localStorageService.keys(); | ||
| 503 | for(var x in keys){ | ||
| 504 | globalConfig.setData(keys[x], localStorageService.get(keys[x])); | ||
| 505 | } | ||
| 506 | if(globalConfig.getData("user")){ | ||
| 507 | setHeaderToken(globalConfig.getData("user").token); | ||
| 508 | } | ||
| 509 | |||
| 510 | } | ||
| 511 | |||
| 512 | var loadPathParams = function() { | ||
| 513 | var url = window.location.href, | ||
| 514 | parts = url.split('?'); | ||
| 515 | if(parts.length == 2){ | ||
| 516 | var hash = parts[1].indexOf('#') | ||
| 517 | if(hash != -1){ | ||
| 518 | parts[1] = parts[1].substring(0, hash) | ||
| 519 | } | ||
| 520 | |||
| 521 | var pairs = parts[1].split('&') | ||
| 522 | pairs.forEach(function(pair){ | ||
| 523 | var kv = pair.split('=') | ||
| 524 | if(kv.length == 2){ | ||
| 525 | globalConfig.setData(kv[0], kv[1]); | ||
| 526 | } | ||
| 527 | }) | ||
| 528 | } | ||
| 529 | |||
| 530 | } | ||
| 531 | |||
| 532 | var loadCityConfig = function() { | ||
| 533 | // $http.get("js/service/city.json").success(function (data) { | ||
| 534 | // $rootScope.config.province = {}; | ||
| 535 | // for (var i = 0; i < data.length; i++) { | ||
| 536 | // $rootScope.config.province[data[i].id] = data[i]; | ||
| 537 | // }; | ||
| 538 | // }) | ||
| 539 | } | ||
| 540 | |||
| 541 | var globalConfig = { | ||
| 542 | init : init, | ||
| 543 | getParam : function(key){ | ||
| 544 | return $rootScope.params[key]; | ||
| 545 | }, | ||
| 546 | setParam : function(key, value){ | ||
| 547 | $rootScope.params[key] = value | ||
| 548 | }, | ||
| 549 | getConfig : function(key){ | ||
| 550 | return $rootScope.config[key]; | ||
| 551 | }, | ||
| 552 | setConfig : function(key, value){ | ||
| 553 | $rootScope.config[key] = value; | ||
| 554 | }, | ||
| 555 | getData : function(key){ | ||
| 556 | return $rootScope.data[key]; | ||
| 557 | }, | ||
| 558 | setData : function(key, value){ | ||
| 559 | $rootScope.data[key] = value; | ||
| 560 | }, | ||
| 561 | saveData : function(key, value){ | ||
| 562 | if(value){ | ||
| 563 | this.setData(key, value) | ||
| 564 | } | ||
| 565 | localStorageService.set(key, value); | ||
| 566 | }, | ||
| 567 | clearData : function(key){ | ||
| 568 | this.setData(key, null); | ||
| 569 | localStorageService.set(key, null); | ||
| 570 | $http.defaults.headers.common = { }; | ||
| 571 | } | ||
| 572 | } | ||
| 573 | return globalConfig; | ||
| 574 | } | ||
| 575 | ] | ||
| 576 | );; | ||
| 577 | ///<jscompress sourcefile="tripController.js" /> | ||
| 578 | angular.module('myApp') | ||
| 579 | .controller('tripController',['$scope','$rootScope','$state','dingdaService' ,function($scope,$rootScope,$state,dingdaService){ | ||
| 580 | |||
| 581 | $scope.tripList = []; | ||
| 582 | |||
| 583 | $scope.isLastPage = false; | ||
| 584 | |||
| 585 | $scope.getMoreOrders = function() { | ||
| 586 | |||
| 587 | dingdaService.getOrderList(page).success(function(data , status) { | ||
| 588 | // alert(JSON.stringify(data)) | ||
| 589 | if(!data.data.orders || data.data.orders.length == 0) { | ||
| 590 | $scope.isLastPage = true; | ||
| 591 | return; | ||
| 592 | } | ||
| 593 | if(page == 1) { | ||
| 594 | $scope.tripList = []; | ||
| 595 | } | ||
| 596 | for(var i = 0 ; i < data.data.orders.length;i++) { | ||
| 597 | if(data.data.orders[i].status == 300) { | ||
| 598 | data.data.orders[i].tripStatus = "已完成"; | ||
| 599 | } else { | ||
| 600 | data.data.orders[i].tripStatus = "待支付"; | ||
| 601 | } | ||
| 602 | $scope.tripList.push(data.data.orders[i]); | ||
| 603 | } | ||
| 604 | page++; | ||
| 605 | // alert(JSON.stringify($scope.tripList)) | ||
| 606 | }) | ||
| 607 | } | ||
| 608 | |||
| 609 | var page = 1; | ||
| 610 | |||
| 611 | var init = function() { | ||
| 612 | $scope.getMoreOrders(); | ||
| 613 | } | ||
| 614 | |||
| 615 | init(); | ||
| 616 | |||
| 617 | $scope.viewTripDetail = function(index){ | ||
| 618 | $state.go('tripDetail' , { orderId : $scope.tripList[index].id }); | ||
| 619 | } | ||
| 620 | }]); | ||
| 621 | ///<jscompress sourcefile="tripDetailController.js" /> | ||
| 622 | angular.module('myApp') | ||
| 623 | .controller('tripDetailController', ['$scope', '$rootScope', '$state', 'dingdaService', '$stateParams', 'wechatPayment', | ||
| 624 | function ($scope, $rootScope, $state, dingdaService, $stateParams, wechatPayment) { | ||
| 625 | console.log('tripDetailController'); | ||
| 626 | /** | ||
| 627 | * 2. 选择dom元素 | ||
| 628 | * */ | ||
| 629 | var tripDetail = $('.tripDetail'); | ||
| 630 | var winHeight = $(window).height(); | ||
| 631 | var tripHeight = tripDetail.height() + 40; | ||
| 632 | var bottomPosition = $('.bottomPosition'); | ||
| 633 | if (winHeight >= tripHeight) { | ||
| 634 | bottomPosition.css({'position': 'absolute', 'bottom': '0'}) | ||
| 635 | } | ||
| 636 | /** | ||
| 637 | * 3. 定义当前业务需要的数据 | ||
| 638 | * */ | ||
| 639 | $scope.tripDetail = {}; | ||
| 640 | $scope.needPay = false; | ||
| 641 | $scope.backHome = function () { | ||
| 642 | $state.go('main'); | ||
| 643 | } | ||
| 644 | /** | ||
| 645 | * 4. 支付逻辑 | ||
| 646 | * ispay 有无支付 | ||
| 647 | * isActive | ||
| 648 | * choosePay 选择支付 | ||
| 649 | * */ | ||
| 650 | var ispay = false; | ||
| 651 | $scope.isActive = true; // 这个是个关键 TODO 要更改的 | ||
| 652 | $scope.payType = 1; | ||
| 653 | $scope.choosePay = function (index) { | ||
| 654 | if ($($('.checkboxS')[index]).hasClass('checkboxTrue')) { | ||
| 655 | // 如果要选择的项已经选中,不处理 | ||
| 656 | return | ||
| 657 | } else { | ||
| 658 | $scope.isActive = !$scope.isActive; | ||
| 659 | } | ||
| 660 | |||
| 661 | $scope.payType = index; | ||
| 662 | } | ||
| 663 | $scope.goPay = function () { | ||
| 664 | if (ispay) return; | ||
| 665 | if ($scope.payType == 1) { //微信支付 | ||
| 666 | |||
| 667 | ispay = true; | ||
| 668 | wechatPayment.callRentPay($scope.tripDetail.id, $scope.tripDetail.total_fee) | ||
| 669 | .then(function (result) { | ||
| 670 | ispay = false; | ||
| 671 | //支付成功 | ||
| 672 | init(); | ||
| 673 | // $state.go('bondSuccess'); | ||
| 674 | }, function (errMsg) { | ||
| 675 | ispay = false; | ||
| 676 | //支付失败 | ||
| 677 | // layer.open({ | ||
| 678 | // content: '支付失败,请重试', | ||
| 679 | // time:2 | ||
| 680 | // }); | ||
| 681 | }) | ||
| 682 | } else { | ||
| 683 | if ($scope.tripDetail.total_fee > $scope.balance) { //钱包支付判断余额是否足够支付 | ||
| 684 | layer.open({ | ||
| 685 | content: '您的余额不够是否去充值?', //小米下面按钮对齐 | ||
| 686 | btn: ['去充值', '取消'], | ||
| 687 | shadeClose: false, | ||
| 688 | yes: function (index) { | ||
| 689 | $state.go('prepay', {}, {reload: false}); | ||
| 690 | layer.close(index); | ||
| 691 | }, no: function (index) { | ||
| 692 | layer.close(index); | ||
| 693 | } | ||
| 694 | }); | ||
| 695 | } else { | ||
| 696 | // 余额支付 | ||
| 697 | |||
| 698 | ispay = true; | ||
| 699 | var data = { | ||
| 700 | amount: $scope.tripDetail.total_fee, | ||
| 701 | body: '余额支付', | ||
| 702 | type: 102 | ||
| 703 | } | ||
| 704 | dingdaService.payWX($scope.tripDetail.id, data) | ||
| 705 | .success(function (data, status) { | ||
| 706 | ispay = false; | ||
| 707 | layer.open({ | ||
| 708 | content: '支付成功', | ||
| 709 | time: 2 | ||
| 710 | }); | ||
| 711 | init(); | ||
| 712 | }) | ||
| 713 | .error(function (data) { | ||
| 714 | ispay = false; | ||
| 715 | layer.open({ | ||
| 716 | content: '支付失败', | ||
| 717 | time: 2 | ||
| 718 | }); | ||
| 719 | }) | ||
| 720 | } | ||
| 721 | } | ||
| 722 | } | ||
| 723 | |||
| 724 | var orderid = $stateParams.orderId; | ||
| 725 | /** | ||
| 726 | * 1. init 获取初始化的数据 tripDetail 订单详情 needPay 是否需要发起支付 | ||
| 727 | * */ | ||
| 728 | var init = function () { | ||
| 729 | dingdaService.getOrderFinishInfo(orderid).success(function (data, status) { | ||
| 730 | $scope.tripDetail = data.data.order; | ||
| 731 | // alert(JSON.stringify(data)); | ||
| 732 | if (data.data.order.status == 300 || $scope.tripDetail.total_fee == 0) { | ||
| 733 | $scope.needPay = false; | ||
| 734 | } else if (data.data.order.status == 200) { | ||
| 735 | $scope.needPay = true; | ||
| 736 | } | ||
| 737 | }) | ||
| 738 | |||
| 739 | dingdaService.getWallet(orderid).success(function (data, status) { | ||
| 740 | $scope.balance = data.data.balance; | ||
| 741 | }) | ||
| 742 | } | ||
| 743 | init(); | ||
| 744 | |||
| 745 | }]); | ||
| 746 | ///<jscompress sourcefile="unusualController.js" /> | ||
| 747 | angular.module('myApp') | ||
| 748 | .controller('unusualController',['$scope','dingdaService','$state','$stateParams',function($scope,dingdaService,$state,$stateParams){ | ||
| 749 | |||
| 750 | $scope.returnBike = function() { | ||
| 751 | dingdaService.setOrderFinish($stateParams.id) | ||
| 752 | .success(function(data , status) { | ||
| 753 | if(data.meta.code == 200) { | ||
| 754 | $state.go('tripDetail' , { orderId : $stateParams.id }); | ||
| 755 | } else if (data.meta.code == 203) { | ||
| 756 | layer.open({ | ||
| 757 | content: "租车失败", | ||
| 758 | time:2 | ||
| 759 | }); | ||
| 760 | $state.go('main'); | ||
| 761 | } else { | ||
| 762 | |||
| 763 | layer.open({ | ||
| 764 | content: "系统检测到您还未还车,请联系客服", | ||
| 765 | time:2 | ||
| 766 | }); | ||
| 767 | } | ||
| 768 | }).error(function(data , status) { | ||
| 769 | |||
| 770 | }); | ||
| 771 | } | ||
| 772 | |||
| 773 | $scope.hint = function() { | ||
| 774 | layer.open({ | ||
| 775 | content: "请在主页面菜单中点击联系我们", | ||
| 776 | time:2 | ||
| 777 | }); | ||
| 778 | } | ||
| 779 | |||
| 780 | }]); | ||
| 781 | ///<jscompress sourcefile="walletController.js" /> | ||
| 782 | angular.module('myApp') | ||
| 783 | .controller('walletController',['$scope','$rootScope','dingdaService','$state','globalService',function($scope,$rootScope,dingdaService,$state,globalService){ | ||
| 784 | |||
| 785 | $scope.balance = ""; | ||
| 786 | |||
| 787 | var init = function() { | ||
| 788 | dingdaService.getWallet().success(function(data , status){ | ||
| 789 | // alert(JSON.stringify(data.data)) | ||
| 790 | $scope.balance = data.data.balance; | ||
| 791 | |||
| 792 | }) | ||
| 793 | } | ||
| 794 | |||
| 795 | init(); | ||
| 796 | |||
| 797 | $scope.prepay = function() { | ||
| 798 | $state.go('prepay', { }, { reload: false }); | ||
| 799 | } | ||
| 800 | }]);; | ||
| 801 | ///<jscompress sourcefile="bondController.js" /> | ||
| 802 | angular.module('myApp') | ||
| 803 | .controller('bondController',['$scope' , '$rootScope', '$state' , 'dingdaService' , '$stateParams' , | ||
| 804 | function($scope,$rootScope,$state,dingdaService,$stateParams){ | ||
| 805 | $scope.goPay = function(){ | ||
| 806 | $state.go('bondPay'); | ||
| 807 | } | ||
| 808 | |||
| 809 | // function getUrl(name){ | ||
| 810 | // var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)"); | ||
| 811 | // var url = String(window.location); | ||
| 812 | // var arr = url.split('?'); | ||
| 813 | // var str = arr[arr.length-1]; | ||
| 814 | // var r = str.match(reg); | ||
| 815 | // if(r!=null)return unescape(r[2]); return null; | ||
| 816 | // } | ||
| 817 | |||
| 818 | $scope.init = function(){ | ||
| 819 | var latitude = $stateParams.latitude; | ||
| 820 | var longitude = $stateParams.longitude; | ||
| 821 | dingdaService.getBond(longitude,latitude) | ||
| 822 | .success(function(data){ | ||
| 823 | // alert(JSON.stringify(data)) | ||
| 824 | $scope.bondInfo = data.data; | ||
| 825 | $rootScope.toPaid = data.data.toPaid; | ||
| 826 | }).error(function(data){ | ||
| 827 | // alert(JSON.stringify(data)) | ||
| 828 | layer.open({ | ||
| 829 | content: '获取保证金失败,请刷新页面', | ||
| 830 | time:2 | ||
| 831 | }); | ||
| 832 | }) | ||
| 833 | } | ||
| 834 | |||
| 835 | $scope.drawback = function(){ | ||
| 836 | dingdaService.getUnfinishedOrder().success(function(data , status){ | ||
| 837 | if(data.data.unfinishedOrder.id) { | ||
| 838 | |||
| 839 | layer.open({ | ||
| 840 | content: '还有未完成的订单,无法退还保证金', | ||
| 841 | time:2 | ||
| 842 | }); | ||
| 843 | } else { | ||
| 844 | layer.open({ | ||
| 845 | content: '您确定要退还保证金吗?', | ||
| 846 | btn: ['确认', '取消'], | ||
| 847 | shadeClose: false, | ||
| 848 | yes: function(index){ | ||
| 849 | layer.close(index); | ||
| 850 | dingdaService.returnBond() | ||
| 851 | .success(function(data){ | ||
| 852 | console.log(window.localStorage.getItem("IswechatPayment")); | ||
| 853 | //alert(window.localStorage.getItem("IswechatPayment")); | ||
| 854 | window.localStorage.setItem("IswechatPayment","no"); | ||
| 855 | layer.open({ | ||
| 856 | content: '退还成功,保证金七个工作日内退还', | ||
| 857 | time:2 | ||
| 858 | }); | ||
| 859 | $scope.init(); | ||
| 860 | }) | ||
| 861 | .error(function(data){ | ||
| 862 | layer.open({ | ||
| 863 | content: '退还保证金失败', | ||
| 864 | time:2 | ||
| 865 | }); | ||
| 866 | }) | ||
| 867 | },no: function(index){ | ||
| 868 | layer.close(index); | ||
| 869 | } | ||
| 870 | }); | ||
| 871 | } | ||
| 872 | }) | ||
| 873 | } | ||
| 874 | |||
| 875 | }]); | ||
| 876 | ///<jscompress sourcefile="bondPayController.js" /> | ||
| 877 | angular.module('myApp') | ||
| 878 | .controller('bondPayController',['$scope', '$rootScope', '$state', 'wechatPayment', | ||
| 879 | function($scope,$rootScope,$state, wechatPayment){ | ||
| 880 | |||
| 881 | if(!$rootScope.toPaid){ | ||
| 882 | $state.go('bond'); | ||
| 883 | } | ||
| 884 | // 支付保证金 | ||
| 885 | var ispay = false; | ||
| 886 | $scope.goPay = function(){ | ||
| 887 | if(ispay) return; | ||
| 888 | ispay = true; | ||
| 889 | var IswechatPayment= window.localStorage.getItem("IswechatPayment"); | ||
| 890 | |||
| 891 | if (IswechatPayment== undefined || IswechatPayment == "no") { | ||
| 892 | |||
| 893 | wechatPayment.callDepositPay($rootScope.toPaid) | ||
| 894 | .then(function (result) { | ||
| 895 | ispay = false; | ||
| 896 | //支付成功 | ||
| 897 | // alert(window.localStorage.getItem("IswechatPayment")); | ||
| 898 | window.localStorage.setItem("IswechatPayment", "yes") | ||
| 899 | $state.go('bondSuccess'); | ||
| 900 | }, function (errMsg) { | ||
| 901 | ispay = false; | ||
| 902 | window.localStorage.setItem("IswechatPayment", "no") | ||
| 903 | //支付失败 | ||
| 904 | }) | ||
| 905 | } | ||
| 906 | } | ||
| 907 | |||
| 908 | |||
| 909 | |||
| 910 | }]); | ||
| 911 | ///<jscompress sourcefile="bondSuccessController.js" /> | ||
| 912 | angular.module('myApp') | ||
| 913 | .controller('bondSuccessController',[ '$scope' , '$rootScope' , '$state' , function($scope,$rootScope,$state){ | ||
| 914 | |||
| 915 | // 支付保证金成功 | ||
| 916 | |||
| 917 | $scope.goMap = function(){ | ||
| 918 | $state.go('main'); | ||
| 919 | } | ||
| 920 | |||
| 921 | }]); | ||
| 922 | ///<jscompress sourcefile="contactController.js" /> | ||
| 923 | angular.module('myApp') | ||
| 924 | .controller('contactController',['$scope','$rootScope','dingdaService','$state','globalService',function($scope,$rootScope,dingdaService,$state,globalService){ | ||
| 925 | |||
| 926 | $scope.contactList = []; | ||
| 927 | |||
| 928 | var init = function() { | ||
| 929 | // globalService.init(); | ||
| 930 | $scope.contactList.push({ | ||
| 931 | name : "浙江省" , | ||
| 932 | phone : "0571-8677567" | ||
| 933 | }) | ||
| 934 | $scope.contactList.push({ | ||
| 935 | name : "浙江省" , | ||
| 936 | phone : "0571-8677567" | ||
| 937 | }) | ||
| 938 | $scope.contactList.push({ | ||
| 939 | name : "浙江省" , | ||
| 940 | phone : "0571-8677567" | ||
| 941 | }) | ||
| 942 | $scope.contactList.push({ | ||
| 943 | name : "浙江省" , | ||
| 944 | phone : "0571-8677567" | ||
| 945 | }) | ||
| 946 | $scope.contactList.push({ | ||
| 947 | name : "浙江省" , | ||
| 948 | phone : "0571-8677567" | ||
| 949 | }) | ||
| 950 | $scope.contactList.push({ | ||
| 951 | name : "浙江省" , | ||
| 952 | phone : "0571-8677567" | ||
| 953 | }) | ||
| 954 | $scope.contactList.push({ | ||
| 955 | name : "浙江省" , | ||
| 956 | phone : "0571-8677567" | ||
| 957 | }) | ||
| 958 | $scope.contactList.push({ | ||
| 959 | name : "浙江省" , | ||
| 960 | phone : "0571-8677567" | ||
| 961 | }) | ||
| 962 | $scope.contactList.push({ | ||
| 963 | name : "浙江省" , | ||
| 964 | phone : "0571-8677567" | ||
| 965 | }) | ||
| 966 | $scope.contactList.push({ | ||
| 967 | name : "浙江省" , | ||
| 968 | phone : "0571-8677567" | ||
| 969 | }) | ||
| 970 | $scope.contactList.push({ | ||
| 971 | name : "浙江省" , | ||
| 972 | phone : "0571-8677567" | ||
| 973 | }) | ||
| 974 | } | ||
| 975 | |||
| 976 | // mui.init(); | ||
| 977 | init(); | ||
| 978 | }]);; | ||
| 979 | ///<jscompress sourcefile="loginController.js" /> | ||
| 980 | angular.module('myApp') | ||
| 981 | .controller('loginController',[ '$scope','$rootScope','dingdaService','globalService' ,function($scope,$rootScope,dingdaService,globalService){ | ||
| 982 | var init = function(){ | ||
| 983 | $scope.phoneNumberVal=''; | ||
| 984 | $scope.validationVal= ''; | ||
| 985 | |||
| 986 | $(".phoneNumber").focus(function(){ | ||
| 987 | $(".phoneNumber").css('border','1px solid #36d1e7'); | ||
| 988 | }) | ||
| 989 | $(".phoneNumber").blur(function(){ | ||
| 990 | $(".phoneNumber").css('border','1px solid rgba(0,0,0,.2)'); | ||
| 991 | }) | ||
| 992 | $(".validationInput").focus(function(){ | ||
| 993 | $(".validationInput").css('border','1px solid #36d1e7'); | ||
| 994 | }) | ||
| 995 | $(".validationInput").blur(function(){ | ||
| 996 | $(".validationInput").css('border','1px solid rgba(0,0,0,.2)'); | ||
| 997 | }) | ||
| 998 | |||
| 999 | |||
| 1000 | } | ||
| 1001 | |||
| 1002 | function getUrl(name){ | ||
| 1003 | var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)"); | ||
| 1004 | var r = window.location.search.substr(1).match(reg); | ||
| 1005 | if(r!=null)return unescape(r[2]); return null; | ||
| 1006 | } | ||
| 1007 | init(); | ||
| 1008 | var countdown = function(){ | ||
| 1009 | var wait=60; | ||
| 1010 | function time(o) { | ||
| 1011 | if (wait == 0) { | ||
| 1012 | o.removeAttribute("disabled"); | ||
| 1013 | o.value="重发"; | ||
| 1014 | wait = 60; | ||
| 1015 | $('.ValidationBtn').html(o.value); | ||
| 1016 | $('.ValidationBtn').css('background','#36d1e7'); | ||
| 1017 | } else { | ||
| 1018 | o.setAttribute("disabled", true); | ||
| 1019 | o.value=wait + "秒"; | ||
| 1020 | wait--; | ||
| 1021 | $('.ValidationBtn').html(o.value); | ||
| 1022 | if(wait!=0){ | ||
| 1023 | $('.ValidationBtn').css('background','#ccc'); | ||
| 1024 | } | ||
| 1025 | setTimeout(function() { | ||
| 1026 | time(o); | ||
| 1027 | },1000) | ||
| 1028 | } | ||
| 1029 | } | ||
| 1030 | time($('.ValidationBtn').get(0)); | ||
| 1031 | } | ||
| 1032 | |||
| 1033 | $scope.Validation = function(){ | ||
| 1034 | if($scope.phoneNumberVal==""){ | ||
| 1035 | layer.open({ | ||
| 1036 | content: '手机号码不能为空', | ||
| 1037 | time:2 | ||
| 1038 | }); | ||
| 1039 | return | ||
| 1040 | } | ||
| 1041 | var reg = /^0?1[3|4|5|7|8][0-9]\d{8}$/; | ||
| 1042 | if(!reg.test($scope.phoneNumberVal)){ | ||
| 1043 | layer.open({ | ||
| 1044 | content: '手机号码格式不对', | ||
| 1045 | time:2 | ||
| 1046 | }); | ||
| 1047 | return | ||
| 1048 | } | ||
| 1049 | countdown(); | ||
| 1050 | var res = dingdaService.sendPhoneCode($scope.phoneNumberVal , getUrl("openId")); | ||
| 1051 | res.success(function(data){ | ||
| 1052 | console.log(data); | ||
| 1053 | }) | ||
| 1054 | .error(function(){ | ||
| 1055 | console.log('error'); | ||
| 1056 | }) | ||
| 1057 | |||
| 1058 | } | ||
| 1059 | |||
| 1060 | $scope.login= function(){ | ||
| 1061 | if($scope.phoneNumberVal==""){ | ||
| 1062 | layer.open({ | ||
| 1063 | content: '手机号码不能为空', | ||
| 1064 | time:2 | ||
| 1065 | }); | ||
| 1066 | return | ||
| 1067 | } | ||
| 1068 | var reg = /^0?1[3|4|5|7|8][0-9]\d{8}$/; | ||
| 1069 | if(!reg.test($scope.phoneNumberVal)){ | ||
| 1070 | layer.open({ | ||
| 1071 | content: '手机号码格式不对', | ||
| 1072 | time:2 | ||
| 1073 | }); | ||
| 1074 | return | ||
| 1075 | } | ||
| 1076 | |||
| 1077 | if($scope.validationVal==''){ | ||
| 1078 | layer.open({ | ||
| 1079 | content: '请输入验证码', | ||
| 1080 | time:2 | ||
| 1081 | }); | ||
| 1082 | return | ||
| 1083 | } | ||
| 1084 | $scope.validationVal = "" + $scope.validationVal; | ||
| 1085 | if($scope.validationVal.length != 4){ | ||
| 1086 | layer.open({ | ||
| 1087 | content: '验证码位数不对', | ||
| 1088 | time:2 | ||
| 1089 | }); | ||
| 1090 | return | ||
| 1091 | } | ||
| 1092 | |||
| 1093 | var res = dingdaService.verifyPhoneCode($scope.phoneNumberVal , $scope.validationVal).success(function(data){ | ||
| 1094 | if (data.meta.code == 200) { | ||
| 1095 | data.data.userName = $scope.phoneNumberVal; | ||
| 1096 | globalService.saveData('user',data.data); | ||
| 1097 | window.history.back(); | ||
| 1098 | layer.open({ | ||
| 1099 | content: '登录成功', | ||
| 1100 | time:1 | ||
| 1101 | }); | ||
| 1102 | setTimeout(function() { | ||
| 1103 | location.reload(); | ||
| 1104 | } , 300); | ||
| 1105 | } else if (data.meta.code == 401) { | ||
| 1106 | layer.open({ | ||
| 1107 | content: data.meta.message, | ||
| 1108 | time:1 | ||
| 1109 | }); | ||
| 1110 | // alert(data.meta.message); | ||
| 1111 | // layer.msg(data.data.error); | ||
| 1112 | return; | ||
| 1113 | } | ||
| 1114 | }).error(function(){ | ||
| 1115 | layer.open({ | ||
| 1116 | content: '登录失败', | ||
| 1117 | time:1 | ||
| 1118 | }); | ||
| 1119 | }) | ||
| 1120 | |||
| 1121 | } | ||
| 1122 | |||
| 1123 | $scope.$watch('validationVal',function(newVal,old){ | ||
| 1124 | if(newVal){ | ||
| 1125 | if($scope.validationVa!="" && !isNaN($scope.validationVal) && $scope.validationVal.toString().length==4){ | ||
| 1126 | $('.loginBtn').addClass('btnBg'); | ||
| 1127 | }else{ | ||
| 1128 | $('.loginBtn').removeClass('btnBg'); | ||
| 1129 | } | ||
| 1130 | } | ||
| 1131 | }) | ||
| 1132 | |||
| 1133 | // $(window).bind("load resize",function(){ | ||
| 1134 | // $(".loginBox").css({zoom:$(window).width()/320,visibility:"visible"}); | ||
| 1135 | // }); | ||
| 1136 | }]) | ||
| 1137 | |||
| 1138 | |||
| 1139 | |||
| 1140 | |||
| 1141 | |||
| 1142 | |||
| 1143 | |||
| 1144 | |||
| 1145 | |||
| 1146 | |||
| 1147 | |||
| 1148 | |||
| 1149 | |||
| 1150 | |||
| 1151 | |||
| 1152 | |||
| 1153 | |||
| 1154 | |||
| 1155 | |||
| 1156 | |||
| 1157 | |||
| 1158 | |||
| 1159 | |||
| 1160 | |||
| 1161 | |||
| 1162 | |||
| 1163 | |||
| 1164 | |||
| 1165 | |||
| 1166 | |||
| 1167 | |||
| 1168 | |||
| 1169 | |||
| 1170 | |||
| 1171 | |||
| 1172 | |||
| 1173 | |||
| 1174 | |||
| 1175 | |||
| 1176 | |||
| 1177 | |||
| 1178 | |||
| 1179 | ; | ||
| 1180 | ///<jscompress sourcefile="mainController.js" /> | ||
| 1181 | angular.module('myApp') | ||
| 1182 | .controller('mainController',['$scope','$rootScope','dingdaService','$state','globalService',function($scope,$rootScope,dingdaService,$state,globalService){ | ||
| 1183 | |||
| 1184 | $rootScope.isRendBike = false; | ||
| 1185 | $rootScope.isLoadFinish = false; | ||
| 1186 | $scope.unfinishOrder = {}; | ||
| 1187 | |||
| 1188 | var init = function() { | ||
| 1189 | // globalService.init(); | ||
| 1190 | $scope.userinfo = globalService.getData("user"); | ||
| 1191 | if(!$scope.userinfo) { | ||
| 1192 | $scope.userinfo = {}; | ||
| 1193 | $scope.userinfo.userName = "未登录"; | ||
| 1194 | $scope.userinfo.loginState = false; | ||
| 1195 | } else { | ||
| 1196 | $scope.userinfo.loginState = true; | ||
| 1197 | // alert("getUnfinishedOrder") | ||
| 1198 | dingdaService.getUnfinishedOrder().success(function(data , status){ | ||
| 1199 | // alert(JSON.stringify(data)) | ||
| 1200 | if(data.data.unfinishedOrder.id) { | ||
| 1201 | $rootScope.isRendBike = true; | ||
| 1202 | $scope.unfinishOrder = data.data.unfinishedOrder; | ||
| 1203 | } | ||
| 1204 | if(data.data.unfinishedOrder.status == 200) { | ||
| 1205 | layer.open({ | ||
| 1206 | content: '您有未支付的订单,是否前往支付?', | ||
| 1207 | btn: ['确认', '取消'], | ||
| 1208 | shadeClose: false, | ||
| 1209 | yes: function(index){ | ||
| 1210 | layer.close(index); | ||
| 1211 | $state.go('tripDetail' , { orderId : $scope.unfinishOrder.id}); | ||
| 1212 | return; | ||
| 1213 | },no: function(index){ | ||
| 1214 | layer.close(index); | ||
| 1215 | } | ||
| 1216 | }); | ||
| 1217 | } | ||
| 1218 | }).error(function(data , status) { | ||
| 1219 | console.log(JSON.stringify(data)) | ||
| 1220 | }) | ||
| 1221 | } | ||
| 1222 | $scope.moduleList = []; | ||
| 1223 | $scope.moduleList.push({ | ||
| 1224 | name : "行程记录", | ||
| 1225 | icon : "images/trip.png", | ||
| 1226 | state : "trip" | ||
| 1227 | }); | ||
| 1228 | $scope.moduleList.push({ | ||
| 1229 | name : "钱包", | ||
| 1230 | icon : "images/wallet.png", | ||
| 1231 | state : "wallet" | ||
| 1232 | }); | ||
| 1233 | $scope.moduleList.push({ | ||
| 1234 | name : "保证金", | ||
| 1235 | icon : "images/bond.png", | ||
| 1236 | state : "bond" | ||
| 1237 | }); | ||
| 1238 | $scope.moduleList.push({ | ||
| 1239 | name : "联系我们", | ||
| 1240 | icon : "images/contact.png", | ||
| 1241 | state : "contact" | ||
| 1242 | }); | ||
| 1243 | $scope.moduleList.push({ | ||
| 1244 | name : "意见反馈", | ||
| 1245 | icon : "images/opinion.png", | ||
| 1246 | state : "opinion" | ||
| 1247 | }); | ||
| 1248 | } | ||
| 1249 | |||
| 1250 | $scope.doAction = function(index) { | ||
| 1251 | if($scope.checkLogin()) { | ||
| 1252 | var arg = {}; | ||
| 1253 | if(index == 2 || index == 4) { | ||
| 1254 | arg = {longitude: $rootScope.currentPoint.longitude , latitude: $rootScope.currentPoint.latitude }; | ||
| 1255 | } | ||
| 1256 | if(index == 3) { | ||
| 1257 | location.href = "http://wx.dy.dingdatech.com/contactUs.html"; | ||
| 1258 | } else { | ||
| 1259 | $state.go($scope.moduleList[index].state, arg); | ||
| 1260 | } | ||
| 1261 | } | ||
| 1262 | } | ||
| 1263 | |||
| 1264 | $scope.checkLogin = function() { | ||
| 1265 | if(!globalService.getData("user")) { | ||
| 1266 | $state.go('login', {}, {reload: true}); | ||
| 1267 | return false; | ||
| 1268 | } | ||
| 1269 | return true; | ||
| 1270 | } | ||
| 1271 | |||
| 1272 | $scope.logout = function() { | ||
| 1273 | $scope.userinfo = {}; | ||
| 1274 | $scope.userinfo.userName = "未登录"; | ||
| 1275 | $scope.userinfo.loginState = false; | ||
| 1276 | globalService.clearData("user"); | ||
| 1277 | location.reload() | ||
| 1278 | } | ||
| 1279 | |||
| 1280 | var initScan = function() { | ||
| 1281 | $rootScope.openScan = false; | ||
| 1282 | $rootScope.openDetail = false; | ||
| 1283 | $rootScope.openMenu = false; | ||
| 1284 | $rootScope.openRing = false; | ||
| 1285 | $rootScope.$watch("openScan",function(newVal, oldVal){ | ||
| 1286 | if(newVal !== oldVal && newVal) { | ||
| 1287 | if(!$scope.checkLogin()) { | ||
| 1288 | return; | ||
| 1289 | } | ||
| 1290 | |||
| 1291 | if($scope.unfinishOrder.status == 200) { | ||
| 1292 | $state.go('tripDetail' , { orderId : $scope.unfinishOrder.id}); | ||
| 1293 | return; | ||
| 1294 | } | ||
| 1295 | $rootScope.openScan = false; | ||
| 1296 | wx.scanQRCode({ | ||
| 1297 | needResult: 1, // 默认为1,扫描结果由微信处理,1则直接返回扫描结果, | ||
| 1298 | scanType: ["qrCode","barCode"], // 可以指定扫二维码还是一维码,默认二者都有 | ||
| 1299 | success: function (res) { | ||
| 1300 | var result = res.resultStr; // 当needResult 为 1 时,扫码返回的结果 | ||
| 1301 | // alert(result); | ||
| 1302 | dingdaService.verifyScanCode(result).success(function(data , status){ | ||
| 1303 | // alert(JSON.stringify(data)) | ||
| 1304 | if(data.meta.code == 200) { | ||
| 1305 | if(data.data.orderDetail.id) { | ||
| 1306 | |||
| 1307 | layer.open({ | ||
| 1308 | content: "租车成功,订单号为:" + data.data.orderDetail.id, | ||
| 1309 | time:2 | ||
| 1310 | }); | ||
| 1311 | // alert("租车成功,订单号为:" + data.data.orderDetail.id); | ||
| 1312 | $rootScope.isRendBike = true; | ||
| 1313 | |||
| 1314 | $state.go('rentDetail', {}, {reload: true}); | ||
| 1315 | |||
| 1316 | } | ||
| 1317 | } else if(data.meta.code == 202) { | ||
| 1318 | layer.open({ | ||
| 1319 | content: data.meta.message, | ||
| 1320 | time:2 | ||
| 1321 | }); | ||
| 1322 | $state.go('bond', {longitude: $rootScope.currentPoint.longitude , latitude: $rootScope.currentPoint.latitude }); | ||
| 1323 | } else { | ||
| 1324 | layer.open({ | ||
| 1325 | content: data.meta.message, | ||
| 1326 | time:2 | ||
| 1327 | }); | ||
| 1328 | } | ||
| 1329 | }).error(function(data , status){ | ||
| 1330 | layer.open({ | ||
| 1331 | content: "租车失败" + JSON.stringify(data), | ||
| 1332 | time:2 | ||
| 1333 | }); | ||
| 1334 | }); | ||
| 1335 | } | ||
| 1336 | }); | ||
| 1337 | } | ||
| 1338 | }) | ||
| 1339 | $rootScope.$watch("openDetail",function(newVal, oldVal){ | ||
| 1340 | if(newVal === oldVal) return; | ||
| 1341 | |||
| 1342 | if(newVal) { | ||
| 1343 | dingdaService.getUnfinishedOrder().success(function(data , status){ | ||
| 1344 | if(data.meta.code == 200) { | ||
| 1345 | if(!data.data.unfinishedOrder.id) { | ||
| 1346 | layer.open({ | ||
| 1347 | content: '租车完成', | ||
| 1348 | time:2 | ||
| 1349 | }); | ||
| 1350 | // alert("租车完成") | ||
| 1351 | $state.go('main'); | ||
| 1352 | } | ||
| 1353 | } | ||
| 1354 | |||
| 1355 | if(data.data.unfinishedOrder.status == 200) { | ||
| 1356 | $state.go('tripDetail' , { orderId : data.data.unfinishedOrder.id}); | ||
| 1357 | } else { | ||
| 1358 | $state.go('rentDetail', {}, {reload: true}); | ||
| 1359 | } | ||
| 1360 | }).error(function(data , status) { | ||
| 1361 | console.log(JSON.stringify(data)) | ||
| 1362 | }) | ||
| 1363 | |||
| 1364 | } | ||
| 1365 | }) | ||
| 1366 | $rootScope.$watch("openRing",function(newVal, oldVal){ | ||
| 1367 | // TODO open new message | ||
| 1368 | }) | ||
| 1369 | $rootScope.$watch("isLoadFinish" , function(newVal , oldVal){ | ||
| 1370 | if(newVal === oldVal) return; | ||
| 1371 | if(newVal) { | ||
| 1372 | document.getElementById("sliderMenu").style.display = "block"; | ||
| 1373 | } | ||
| 1374 | }) | ||
| 1375 | |||
| 1376 | document.getElementById("sliderMenu").addEventListener("touchmove", function(){ | ||
| 1377 | return; | ||
| 1378 | } , false); | ||
| 1379 | } | ||
| 1380 | |||
| 1381 | // mui.init(); | ||
| 1382 | initScan(); | ||
| 1383 | init(); | ||
| 1384 | |||
| 1385 | |||
| 1386 | }]); | ||
| 1387 | ; | ||
| 1388 | ///<jscompress sourcefile="mapController.js" /> | ||
| 1389 | angular.module('myApp') | ||
| 1390 | .controller('mapController',['$scope','$rootScope','dingdaService','globalService','$state',function($scope,$rootScope,dingdaService,globalService,$state){ | ||
| 1391 | var myMarker; | ||
| 1392 | var markers = []; | ||
| 1393 | var overlays = []; | ||
| 1394 | var walking; | ||
| 1395 | var infoControl; | ||
| 1396 | var scanControl; | ||
| 1397 | var map; | ||
| 1398 | var endPosition; | ||
| 1399 | var polyline; | ||
| 1400 | |||
| 1401 | $rootScope.currentPoint = {}; | ||
| 1402 | |||
| 1403 | var rendBike = function() { | ||
| 1404 | scanControl.hide(); | ||
| 1405 | infoControl.show(); | ||
| 1406 | } | ||
| 1407 | |||
| 1408 | var returnBike = function() { | ||
| 1409 | scanControl.show(); | ||
| 1410 | infoControl.hide(); | ||
| 1411 | } | ||
| 1412 | |||
| 1413 | $scope.$watch("isRendBike",function(newVal, oldVal){ | ||
| 1414 | if(newVal === oldVal){ | ||
| 1415 | return; | ||
| 1416 | } | ||
| 1417 | if(newVal) { | ||
| 1418 | rendBike(); | ||
| 1419 | } else { | ||
| 1420 | returnBike(); | ||
| 1421 | } | ||
| 1422 | }) | ||
| 1423 | |||
| 1424 | var initMap = function() { | ||
| 1425 | map = new BMap.Map("mapContainer"); | ||
| 1426 | map.centerAndZoom(new BMap.Point(120.124421, 30.279879), 15); | ||
| 1427 | |||
| 1428 | map.addEventListener("click", function() { | ||
| 1429 | |||
| 1430 | for(var i = 0 ; i < overlays.length ; i++) { | ||
| 1431 | overlays[i].hide(); | ||
| 1432 | } | ||
| 1433 | $scope.$apply(function() { | ||
| 1434 | $rootScope.openMenu = false; | ||
| 1435 | }) | ||
| 1436 | }); | ||
| 1437 | initMapControl(map); | ||
| 1438 | } | ||
| 1439 | |||
| 1440 | var onSearchComplete = function(result) { | ||
| 1441 | map.removeOverlay(polyline); | ||
| 1442 | var route = result.tr[0].ek[0].vr; | ||
| 1443 | route.unshift(myMarker.position); | ||
| 1444 | route.push(endPosition) | ||
| 1445 | polyline = new BMap.Polyline(route); | ||
| 1446 | polyline.setStrokeColor("#36D1E7"); | ||
| 1447 | polyline.setStrokeOpacity(1); | ||
| 1448 | polyline.setStrokeWeight(3); | ||
| 1449 | polyline.setStrokeStyle("solid"); | ||
| 1450 | map.addOverlay(polyline); | ||
| 1451 | } | ||
| 1452 | |||
| 1453 | var initMarker = function(point) { | ||
| 1454 | map.setCenter(point); | ||
| 1455 | walking = new BMap.WalkingRoute(map, {renderOptions:{map: null, autoViewport: true}}) | ||
| 1456 | walking.setSearchCompleteCallback(onSearchComplete); | ||
| 1457 | initMyMarker(point , map); | ||
| 1458 | refreshNewPoints(point); | ||
| 1459 | } | ||
| 1460 | |||
| 1461 | var refreshNewPoints = function(point) { | ||
| 1462 | |||
| 1463 | // if(!globalService.getData('user').token) { | ||
| 1464 | // return; | ||
| 1465 | // } | ||
| 1466 | |||
| 1467 | dingdaService.getStationList(point.lng , point.lat).success(function(data , status) { | ||
| 1468 | // dingdaService.getStationList(120.18893141 , 30.2284141).success(function(data , status) { | ||
| 1469 | // alert(JSON.stringify(data)) | ||
| 1470 | // console.log(JSON.stringify(data)) | ||
| 1471 | initMarkers(data.data.stationLists , map); | ||
| 1472 | }).error(function(data , status) { | ||
| 1473 | |||
| 1474 | }) | ||
| 1475 | } | ||
| 1476 | |||
| 1477 | var initMyMarker = function(point , map) { | ||
| 1478 | |||
| 1479 | $rootScope.isLoadFinish = true; | ||
| 1480 | myMarker = new MyMark(point); | ||
| 1481 | map.addOverlay(myMarker); | ||
| 1482 | } | ||
| 1483 | |||
| 1484 | var initMarkers = function(points , map) { | ||
| 1485 | for(var i = 0 ; i < markers.length ; i++) { | ||
| 1486 | // document.getElementById("mapContainer").removeChild(markers[i].div); | ||
| 1487 | map.removeOverlay(markers[i]); | ||
| 1488 | markers[i].div.parentElement.removeChild(markers[i].div); | ||
| 1489 | // document.getElementById("mapContainer").removeChild(overlays[i].div); | ||
| 1490 | map.removeOverlay(overlays[i]); | ||
| 1491 | overlays[i].div.parentElement.removeChild(overlays[i].div); | ||
| 1492 | } | ||
| 1493 | markers = []; | ||
| 1494 | overlays = []; | ||
| 1495 | for(var i = 0 ; i < points.length ; i++) { | ||
| 1496 | var marker = new SiteOverlay(new BMap.Point(points[i].longitude, points[i].latitude) , i , points[i]); | ||
| 1497 | map.addOverlay(marker); | ||
| 1498 | markers.push(marker); | ||
| 1499 | } | ||
| 1500 | |||
| 1501 | } | ||
| 1502 | |||
| 1503 | function RelocateControl(){ | ||
| 1504 | this.defaultAnchor = BMAP_ANCHOR_BOTTOM_LEFT; | ||
| 1505 | this.defaultOffset = new BMap.Size(0, 0); | ||
| 1506 | } | ||
| 1507 | |||
| 1508 | function ScanControl(){ | ||
| 1509 | this.defaultAnchor = BMAP_ANCHOR_BOTTOM_LEFT; | ||
| 1510 | this.defaultOffset = new BMap.Size(0, 0); | ||
| 1511 | } | ||
| 1512 | |||
| 1513 | function InfoControl(){ | ||
| 1514 | this.defaultAnchor = BMAP_ANCHOR_BOTTOM_LEFT; | ||
| 1515 | this.defaultOffset = new BMap.Size(0, 0); | ||
| 1516 | } | ||
| 1517 | |||
| 1518 | function MenuControl(){ | ||
| 1519 | this.defaultAnchor = BMAP_ANCHOR_TOP_LEFT; | ||
| 1520 | this.defaultOffset = new BMap.Size(0, 13); | ||
| 1521 | } | ||
| 1522 | |||
| 1523 | function RingControl(){ | ||
| 1524 | this.defaultAnchor = BMAP_ANCHOR_TOP_LEFT; | ||
| 1525 | this.defaultOffset = new BMap.Size(0, 66); | ||
| 1526 | } | ||
| 1527 | |||
| 1528 | var initMapControl = function(map) { | ||
| 1529 | ScanControl.prototype = new BMap.Control(); | ||
| 1530 | ScanControl.prototype.initialize = function(map){ | ||
| 1531 | var scanControl = document.createElement("div"); | ||
| 1532 | scanControl.className = "scanControl"; | ||
| 1533 | |||
| 1534 | var scanControlContainer = document.createElement("div"); | ||
| 1535 | scanControlContainer.className = "scanControlContainer"; | ||
| 1536 | |||
| 1537 | var scanControlContent = document.createElement("div"); | ||
| 1538 | scanControlContent.className = "scanControlContent"; | ||
| 1539 | |||
| 1540 | var img = document.createElement("img"); | ||
| 1541 | img.className = "spanResize"; | ||
| 1542 | img.src = "images/scancode.png"; | ||
| 1543 | |||
| 1544 | scanControlContent.innerHTML = img.outerHTML + " 扫码租车"; | ||
| 1545 | |||
| 1546 | scanControlContainer.onclick = function() { | ||
| 1547 | $scope.$apply(function() { | ||
| 1548 | $rootScope.openScan = true; | ||
| 1549 | }) | ||
| 1550 | } | ||
| 1551 | scanControlContainer.appendChild(scanControlContent); | ||
| 1552 | scanControl.appendChild(scanControlContainer); | ||
| 1553 | |||
| 1554 | map.getContainer().appendChild(scanControl); | ||
| 1555 | return scanControl; | ||
| 1556 | } | ||
| 1557 | scanControl = new ScanControl(); | ||
| 1558 | map.addControl(scanControl); | ||
| 1559 | |||
| 1560 | InfoControl.prototype = new BMap.Control(); | ||
| 1561 | InfoControl.prototype.initialize = function(map){ | ||
| 1562 | var infoControl = document.createElement("div"); | ||
| 1563 | infoControl.className = "scanControl"; | ||
| 1564 | |||
| 1565 | var infoControlContainer = document.createElement("div"); | ||
| 1566 | infoControlContainer.className = "scanControlContainer"; | ||
| 1567 | |||
| 1568 | var infoControlContent = document.createElement("div"); | ||
| 1569 | infoControlContent.className = "scanControlContent"; | ||
| 1570 | |||
| 1571 | var img = document.createElement("img"); | ||
| 1572 | img.className = "spanResize"; | ||
| 1573 | img.src = "images/details.png"; | ||
| 1574 | |||
| 1575 | infoControlContent.innerHTML = img.outerHTML + " 租车详情"; | ||
| 1576 | |||
| 1577 | infoControlContainer.onclick = function() { | ||
| 1578 | $scope.$apply(function() { | ||
| 1579 | $rootScope.openDetail = true; | ||
| 1580 | }) | ||
| 1581 | } | ||
| 1582 | infoControlContainer.appendChild(infoControlContent); | ||
| 1583 | infoControl.appendChild(infoControlContainer); | ||
| 1584 | |||
| 1585 | map.getContainer().appendChild(infoControl); | ||
| 1586 | return infoControl; | ||
| 1587 | } | ||
| 1588 | infoControl = new InfoControl(); | ||
| 1589 | map.addControl(infoControl); | ||
| 1590 | infoControl.hide(); | ||
| 1591 | |||
| 1592 | RelocateControl.prototype = new BMap.Control(); | ||
| 1593 | RelocateControl.prototype.initialize = function(map){ | ||
| 1594 | var relocateControl = document.createElement("div"); | ||
| 1595 | relocateControl.className = "locateControlContainer"; | ||
| 1596 | relocateControl.index = 1; | ||
| 1597 | |||
| 1598 | var relocateControlContent = document.createElement("div"); | ||
| 1599 | relocateControlContent.className = "locateControlContent"; | ||
| 1600 | var relocateControlContentCenter = document.createElement("div"); | ||
| 1601 | relocateControlContentCenter.className = "locateControlContentCenter"; | ||
| 1602 | relocateControlContent.appendChild(relocateControlContentCenter); | ||
| 1603 | relocateControl.appendChild(relocateControlContent); | ||
| 1604 | |||
| 1605 | relocateControl.onclick = function() { | ||
| 1606 | map.panTo(myMarker.position); | ||
| 1607 | map.setZoom(15); | ||
| 1608 | } | ||
| 1609 | map.getContainer().appendChild(relocateControl); | ||
| 1610 | return relocateControl; | ||
| 1611 | } | ||
| 1612 | var relocateControl = new RelocateControl(); | ||
| 1613 | map.addControl(relocateControl); | ||
| 1614 | |||
| 1615 | |||
| 1616 | MenuControl.prototype = new BMap.Control(); | ||
| 1617 | MenuControl.prototype.initialize = function(map){ | ||
| 1618 | var menuControl = document.createElement("div"); | ||
| 1619 | menuControl.className = "menuControl"; | ||
| 1620 | menuControl.index = 1; | ||
| 1621 | |||
| 1622 | var menuControlContent = document.createElement("img"); | ||
| 1623 | menuControlContent.src = "images/me.png"; | ||
| 1624 | |||
| 1625 | menuControl.appendChild(menuControlContent); | ||
| 1626 | |||
| 1627 | menuControl.onclick = function() { | ||
| 1628 | $scope.$apply(function() { | ||
| 1629 | // alert(!globalService.getData("user")) | ||
| 1630 | if(!globalService.getData("user")) { | ||
| 1631 | $state.go('login'); | ||
| 1632 | return; | ||
| 1633 | } | ||
| 1634 | $rootScope.openMenu = !$rootScope.openMenu; | ||
| 1635 | }) | ||
| 1636 | } | ||
| 1637 | map.getContainer().appendChild(menuControl); | ||
| 1638 | return menuControl; | ||
| 1639 | } | ||
| 1640 | var menuControl = new MenuControl(); | ||
| 1641 | map.addControl(menuControl); | ||
| 1642 | |||
| 1643 | RingControl.prototype = new BMap.Control(); | ||
| 1644 | RingControl.prototype.initialize = function(map){ | ||
| 1645 | var ringControl = document.createElement("div"); | ||
| 1646 | ringControl.className = "menuControl"; | ||
| 1647 | ringControl.index = 1; | ||
| 1648 | |||
| 1649 | var ringControlContent = document.createElement("img"); | ||
| 1650 | ringControlContent.src = "images/new.png"; | ||
| 1651 | |||
| 1652 | ringControl.appendChild(ringControlContent); | ||
| 1653 | |||
| 1654 | ringControl.onclick = function() { | ||
| 1655 | $scope.$apply(function() { | ||
| 1656 | $rootScope.openRing = !$rootScope.openRing; | ||
| 1657 | }) | ||
| 1658 | } | ||
| 1659 | map.getContainer().appendChild(ringControl); | ||
| 1660 | return ringControl; | ||
| 1661 | } | ||
| 1662 | // var ringControl = new RingControl(); | ||
| 1663 | // map.addControl(ringControl); | ||
| 1664 | |||
| 1665 | var opts = { | ||
| 1666 | type: BMAP_NAVIGATION_CONTROL_SMALL, | ||
| 1667 | anchor : BMAP_ANCHOR_BOTTOM_RIGHT | ||
| 1668 | } | ||
| 1669 | map.addControl(new BMap.NavigationControl(opts)); | ||
| 1670 | } | ||
| 1671 | |||
| 1672 | var initLocation = function(isForce) { | ||
| 1673 | // var options = { | ||
| 1674 | // enableHighAccuracy:true, | ||
| 1675 | // maximumAge:1000 | ||
| 1676 | // } | ||
| 1677 | |||
| 1678 | getlocation(); | ||
| 1679 | function getlocation() { | ||
| 1680 | wx.getLocation({ | ||
| 1681 | type: 'gcj02', // 默认为wgs84的gps坐标,如果要返回直接给openLocation用的火星坐标,可传入'gcj02' | ||
| 1682 | success: function (res) { | ||
| 1683 | onSuccess(res) | ||
| 1684 | } | ||
| 1685 | }); | ||
| 1686 | } | ||
| 1687 | |||
| 1688 | |||
| 1689 | function onSuccess(position){ | ||
| 1690 | var longitude = position.longitude; | ||
| 1691 | var latitude = position.latitude; | ||
| 1692 | $rootScope.currentPoint = { | ||
| 1693 | longitude : longitude , | ||
| 1694 | latitude : latitude | ||
| 1695 | } | ||
| 1696 | var convertor = new BMap.Convertor(); | ||
| 1697 | var pointArr = []; | ||
| 1698 | pointArr.push(new BMap.Point(longitude, latitude)); | ||
| 1699 | convertor.translate(pointArr, 3, 5, function(data){ | ||
| 1700 | var point = data.points[0]; | ||
| 1701 | // var point = new BMap.Point(120.1965, 30.23048); | ||
| 1702 | if(!myMarker) { | ||
| 1703 | initMarker(point); | ||
| 1704 | // setInterval(function(){ | ||
| 1705 | // if(!myMarker) return; | ||
| 1706 | // getlocation(); | ||
| 1707 | //// navigator.geolocation.getCurrentPosition(onSuccess,onError,options); | ||
| 1708 | // } , 1000 * 60 * 60); | ||
| 1709 | } else { | ||
| 1710 | myMarker.position = point; | ||
| 1711 | if(isForce) { | ||
| 1712 | var map = myMarker.getMap(); | ||
| 1713 | map.panTo(point); | ||
| 1714 | } | ||
| 1715 | refreshNewPoints(point); | ||
| 1716 | } | ||
| 1717 | }) | ||
| 1718 | } | ||
| 1719 | |||
| 1720 | // function onError(error){ | ||
| 1721 | // switch(error.code){ | ||
| 1722 | // case 1: | ||
| 1723 | // alert("位置服务被拒绝"); | ||
| 1724 | // break; | ||
| 1725 | // case 2: | ||
| 1726 | // alert("暂时获取不到位置信息"); | ||
| 1727 | // break; | ||
| 1728 | // case 3: | ||
| 1729 | // alert("获取信息超时"); | ||
| 1730 | // break; | ||
| 1731 | // case 4: | ||
| 1732 | // alert("未知错误"); | ||
| 1733 | // break; | ||
| 1734 | // } | ||
| 1735 | // initLocation(); | ||
| 1736 | // } | ||
| 1737 | // if (navigator.geolocation) { | ||
| 1738 | // navigator.geolocation.getCurrentPosition(onSuccess,onError,options); | ||
| 1739 | // } else { | ||
| 1740 | // alert("无法获取地理位置信息"); | ||
| 1741 | // } | ||
| 1742 | } | ||
| 1743 | |||
| 1744 | function CustomOverlay(position, index , info) { | ||
| 1745 | this.index = index; | ||
| 1746 | this.position = position; | ||
| 1747 | this.info = info; | ||
| 1748 | this.isDisplay = false; | ||
| 1749 | } | ||
| 1750 | |||
| 1751 | function SiteOverlay(position , index , info) { | ||
| 1752 | this.index = index; | ||
| 1753 | this.position = position; | ||
| 1754 | this.info = info; | ||
| 1755 | this.isDisplay = true; | ||
| 1756 | } | ||
| 1757 | |||
| 1758 | function MyMark(position) { | ||
| 1759 | this.position = position; | ||
| 1760 | } | ||
| 1761 | |||
| 1762 | var initCustomOverlay = function() { | ||
| 1763 | CustomOverlay.prototype = new BMap.Overlay(); | ||
| 1764 | //定义construct,实现这个接口来初始化自定义的Dom元素 | ||
| 1765 | CustomOverlay.prototype.initialize = function(map) { | ||
| 1766 | this.map = map; | ||
| 1767 | var container = this.div = document.createElement("div"); | ||
| 1768 | container.className = "overlayContainer"; | ||
| 1769 | |||
| 1770 | var leftPanel = document.createElement("div"); | ||
| 1771 | leftPanel.className = "overlayPanelLeft"; | ||
| 1772 | var leftPanelContentContainer = document.createElement("div"); | ||
| 1773 | leftPanelContentContainer.className = "overlayPanelLeftContentContainer"; | ||
| 1774 | var leftPanelContent = document.createElement("div"); | ||
| 1775 | leftPanelContent.className = "overlayPanelLeftContent"; | ||
| 1776 | leftPanelContent.innerText = this.info.name; | ||
| 1777 | |||
| 1778 | leftPanelContentContainer.appendChild(leftPanelContent); | ||
| 1779 | leftPanel.appendChild(leftPanelContentContainer); | ||
| 1780 | |||
| 1781 | var centerPanel = document.createElement("div"); | ||
| 1782 | centerPanel.className = "overlayPanelCenter"; | ||
| 1783 | var centerPanelContentTop = document.createElement("div"); | ||
| 1784 | centerPanelContentTop.className = "overlayPanelCenterContent overlayPanelCenterContentTop"; | ||
| 1785 | if(!$scope.isRendBike) { | ||
| 1786 | centerPanelContentTop.className += " act"; | ||
| 1787 | } | ||
| 1788 | centerPanelContentTop.innerText = "可借:" + this.info.enHireNum; | ||
| 1789 | var centerPanelContentBottom = document.createElement("div"); | ||
| 1790 | centerPanelContentBottom.className = "overlayPanelCenterContent overlayPanelCenterContentBottom"; | ||
| 1791 | if($scope.isRendBike) { | ||
| 1792 | centerPanelContentBottom.className += " act"; | ||
| 1793 | } | ||
| 1794 | centerPanelContentBottom.innerText = "可还:" + this.info.disHireNum; | ||
| 1795 | |||
| 1796 | centerPanel.appendChild(centerPanelContentTop); | ||
| 1797 | centerPanel.appendChild(centerPanelContentBottom); | ||
| 1798 | |||
| 1799 | var rightPanel = document.createElement("div"); | ||
| 1800 | rightPanel.className = "overlayPanelRight"; | ||
| 1801 | |||
| 1802 | var rightPanelContentContainer = document.createElement("div"); | ||
| 1803 | rightPanelContentContainer.className = "overlayPanelRightContentContainer"; | ||
| 1804 | var rightPanelContent = document.createElement("div"); | ||
| 1805 | rightPanelContent.className = "overlayPanelRightContent"; | ||
| 1806 | |||
| 1807 | rightPanelContentContainer.appendChild(rightPanelContent); | ||
| 1808 | rightPanel.appendChild(rightPanelContentContainer); | ||
| 1809 | |||
| 1810 | |||
| 1811 | var corner = document.createElement("img"); | ||
| 1812 | corner.className = "corner"; | ||
| 1813 | corner.src = "images/triangle.png" | ||
| 1814 | |||
| 1815 | leftPanel.appendChild(centerPanel); | ||
| 1816 | container.appendChild(leftPanel); | ||
| 1817 | container.appendChild(rightPanel); | ||
| 1818 | container.appendChild(corner) | ||
| 1819 | //将dom添加到覆盖物层 | ||
| 1820 | var panes = map.getPanes(); | ||
| 1821 | var self = this; | ||
| 1822 | |||
| 1823 | rightPanel.onclick = function() { | ||
| 1824 | walking.clearResults(); | ||
| 1825 | walking.search(myMarker.position, self.position); | ||
| 1826 | endPosition = self.position; | ||
| 1827 | } | ||
| 1828 | |||
| 1829 | |||
| 1830 | rightPanel.addEventListener("touchend", function() { | ||
| 1831 | rightPanel.onclick(); | ||
| 1832 | |||
| 1833 | }); | ||
| 1834 | //设置panes的层级,overlayMouseTarget可接收点击事件 | ||
| 1835 | panes.labelPane.appendChild(container); | ||
| 1836 | |||
| 1837 | } | ||
| 1838 | //实现draw接口来绘制和更新自定义的dom元素 | ||
| 1839 | CustomOverlay.prototype.draw = function() { | ||
| 1840 | var pixel = this.map.pointToOverlayPixel(this.position); | ||
| 1841 | var divStyle = this.div.style; | ||
| 1842 | divStyle.left = pixel.x - 90 + "px"; | ||
| 1843 | divStyle.top = pixel.y - 70 + "px"; | ||
| 1844 | } | ||
| 1845 | |||
| 1846 | CustomOverlay.prototype.show = function(info) { | ||
| 1847 | if(info) { | ||
| 1848 | this.info = info; | ||
| 1849 | var topEle = this.div.getElementsByClassName("overlayPanelCenterContentTop"); | ||
| 1850 | topEle[0].innerText = "可借:" + info.enHireNum; | ||
| 1851 | var bottomEle = this.div.getElementsByClassName("overlayPanelCenterContentBottom"); | ||
| 1852 | bottomEle[0].innerText = "可还:" + info.disHireNum; | ||
| 1853 | } else { | ||
| 1854 | this.div.style.display = "block"; | ||
| 1855 | this.isDisplay = true; | ||
| 1856 | var topEle = this.div.getElementsByClassName("overlayPanelCenterContentTop"); | ||
| 1857 | topEle[0].innerText = "可借:0"; | ||
| 1858 | var bottomEle = this.div.getElementsByClassName("overlayPanelCenterContentBottom"); | ||
| 1859 | bottomEle[0].innerText = "可还:0"; | ||
| 1860 | } | ||
| 1861 | |||
| 1862 | } | ||
| 1863 | |||
| 1864 | CustomOverlay.prototype.hide = function() { | ||
| 1865 | this.div.style.display = "none"; | ||
| 1866 | this.isDisplay = false; | ||
| 1867 | } | ||
| 1868 | SiteOverlay.prototype = new BMap.Overlay(); | ||
| 1869 | //定义construct,实现这个接口来初始化自定义的Dom元素 | ||
| 1870 | SiteOverlay.prototype.initialize = function(map) { | ||
| 1871 | this.map = map; | ||
| 1872 | var container = this.div = document.createElement("div"); | ||
| 1873 | container.className = "siteOverlay"; | ||
| 1874 | var img = document.createElement("img"); | ||
| 1875 | img.src = "images/site.png"; | ||
| 1876 | container.appendChild(img); | ||
| 1877 | //将dom添加到覆盖物层 | ||
| 1878 | var panes = map.getPanes(); | ||
| 1879 | |||
| 1880 | var self = this; | ||
| 1881 | var overlay = new CustomOverlay(self.position, self.index , self.info); | ||
| 1882 | overlays.push(overlay); | ||
| 1883 | map.addOverlay(overlay); | ||
| 1884 | container.onclick = function() { | ||
| 1885 | map.panTo(self.position); | ||
| 1886 | for(var i = 0 ; i < overlays.length ; i++) { | ||
| 1887 | overlays[i].hide(); | ||
| 1888 | } | ||
| 1889 | if(overlay.isDisplay) { | ||
| 1890 | overlay.hide(); | ||
| 1891 | } else { | ||
| 1892 | setTimeout(function(){ | ||
| 1893 | overlay.show(); | ||
| 1894 | } , 100); | ||
| 1895 | // var t1 = new Date().getTime(); | ||
| 1896 | dingdaService.getStationById(self.info.id).success( | ||
| 1897 | function(data , status) { | ||
| 1898 | // alert(JSON.stringify(data.data) + " , Cost time : " + (new Date().getTime() - t1)) | ||
| 1899 | |||
| 1900 | setTimeout(function(){ | ||
| 1901 | overlay.show(data.data.station); | ||
| 1902 | } , 100); | ||
| 1903 | } | ||
| 1904 | ); | ||
| 1905 | |||
| 1906 | } | ||
| 1907 | |||
| 1908 | } | ||
| 1909 | |||
| 1910 | container.addEventListener("touchend", function() { | ||
| 1911 | container.onclick(); | ||
| 1912 | }); | ||
| 1913 | //设置panes的层级,overlayMouseTarget可接收点击事件 | ||
| 1914 | panes.labelPane.appendChild(container); | ||
| 1915 | |||
| 1916 | } | ||
| 1917 | //实现draw接口来绘制和更新自定义的dom元素 | ||
| 1918 | SiteOverlay.prototype.draw = function() { | ||
| 1919 | var pixel = this.map.pointToOverlayPixel(this.position); | ||
| 1920 | // alert(JSON.stringify(pixel)) | ||
| 1921 | var divStyle = this.div.style; | ||
| 1922 | divStyle.left = pixel.x - 13.5 + "px"; | ||
| 1923 | divStyle.top = pixel.y - 13.5 + "px"; | ||
| 1924 | } | ||
| 1925 | |||
| 1926 | SiteOverlay.prototype.show = function() { | ||
| 1927 | this.div.style.display = "block"; | ||
| 1928 | this.isDisplay = true; | ||
| 1929 | } | ||
| 1930 | |||
| 1931 | SiteOverlay.prototype.hide = function() { | ||
| 1932 | this.div.style.display = "none"; | ||
| 1933 | this.isDisplay = false; | ||
| 1934 | } | ||
| 1935 | |||
| 1936 | MyMark.prototype = new BMap.Overlay(); | ||
| 1937 | //定义construct,实现这个接口来初始化自定义的Dom元素 | ||
| 1938 | MyMark.prototype.initialize = function(map) { | ||
| 1939 | this.map = map; | ||
| 1940 | var container = this.div = document.createElement("div"); | ||
| 1941 | container.className = "myMarker"; | ||
| 1942 | var img = document.createElement("img"); | ||
| 1943 | img.src = "images/myposition.png"; | ||
| 1944 | container.appendChild(img); | ||
| 1945 | //将dom添加到覆盖物层 | ||
| 1946 | var panes = map.getPanes(); | ||
| 1947 | |||
| 1948 | //设置panes的层级,overlayMouseTarget可接收点击事件 | ||
| 1949 | panes.labelPane.appendChild(container); | ||
| 1950 | |||
| 1951 | } | ||
| 1952 | //实现draw接口来绘制和更新自定义的dom元素 | ||
| 1953 | MyMark.prototype.draw = function() { | ||
| 1954 | var pixel = this.map.pointToOverlayPixel(this.position); | ||
| 1955 | // alert(JSON.stringify(pixel)) | ||
| 1956 | var divStyle = this.div.style; | ||
| 1957 | divStyle.left = pixel.x - 25 + "px"; | ||
| 1958 | divStyle.top = pixel.y - 37 + "px"; | ||
| 1959 | } | ||
| 1960 | |||
| 1961 | } | ||
| 1962 | |||
| 1963 | // mui.init(); | ||
| 1964 | |||
| 1965 | initCustomOverlay(); | ||
| 1966 | initMap(); | ||
| 1967 | wx.ready(function() { | ||
| 1968 | initLocation(); | ||
| 1969 | }) | ||
| 1970 | |||
| 1971 | }]);; | ||
| 1972 | ///<jscompress sourcefile="opinionController.js" /> | ||
| 1973 | angular.module('myApp') | ||
| 1974 | .controller('opinionController',['$scope','$rootScope','dingdaService','$state','globalService','$stateParams', | ||
| 1975 | function($scope,$rootScope,dingdaService,$state,globalService,$stateParams){ | ||
| 1976 | |||
| 1977 | $scope.opinion = ""; | ||
| 1978 | |||
| 1979 | $scope.submit = function() { | ||
| 1980 | if($scope.opinion.length == 0) { | ||
| 1981 | return; | ||
| 1982 | } | ||
| 1983 | if($scope.opinion.length > 200) { | ||
| 1984 | layer.open({ | ||
| 1985 | content: "超出字数限制", | ||
| 1986 | time:2 | ||
| 1987 | }); | ||
| 1988 | } else { | ||
| 1989 | var phoneType = navigator.userAgent.match(/\(.*?\)/); | ||
| 1990 | var wx = navigator.userAgent.match(/MicroMessenger\/.*?[ ]/); | ||
| 1991 | |||
| 1992 | // alert(phoneType) | ||
| 1993 | var data = { | ||
| 1994 | content : $scope.opinion , | ||
| 1995 | latitude : $stateParams.latitude , | ||
| 1996 | longitude : $stateParams.longitude , | ||
| 1997 | phoneType : phoneType[0] , | ||
| 1998 | systemType : wx[0] | ||
| 1999 | } | ||
| 2000 | |||
| 2001 | |||
| 2002 | dingdaService.comment(data).success(function(data , status) { | ||
| 2003 | if(data.meta.code != 200) { | ||
| 2004 | layer.open({ | ||
| 2005 | content: data.meta.message, | ||
| 2006 | time:2 | ||
| 2007 | }); | ||
| 2008 | return; | ||
| 2009 | } | ||
| 2010 | layer.open({ | ||
| 2011 | content: "评论成功", | ||
| 2012 | time:2 | ||
| 2013 | }); | ||
| 2014 | setTimeout(function() { | ||
| 2015 | location.reload(); | ||
| 2016 | } , 300); | ||
| 2017 | history.back(); | ||
| 2018 | }).error(function(data , status){ | ||
| 2019 | alert(JSON.stringify(data)) | ||
| 2020 | |||
| 2021 | }) | ||
| 2022 | } | ||
| 2023 | } | ||
| 2024 | |||
| 2025 | }]);; | ||
| 2026 | ///<jscompress sourcefile="payController.js" /> | ||
| 2027 | angular.module('myApp') | ||
| 2028 | .controller('payController',['$scope','$rootScope','dingdaService','$state','globalService',function($scope,$rootScope,dingdaService,$state,globalService){ | ||
| 2029 | |||
| 2030 | var init = function() { | ||
| 2031 | // globalService.init(); | ||
| 2032 | } | ||
| 2033 | |||
| 2034 | // mui.init(); | ||
| 2035 | init(); | ||
| 2036 | |||
| 2037 | $scope.pay = function() { | ||
| 2038 | alert("充值") | ||
| 2039 | } | ||
| 2040 | }]);; | ||
| 2041 | ///<jscompress sourcefile="prepayController.js" /> | ||
| 2042 | angular.module('myApp') | ||
| 2043 | .controller('prepayController',['$scope','$rootScope','dingdaService','$state','globalService','wechatPayment',function($scope,$rootScope,dingdaService,$state,globalService,wechatPayment){ | ||
| 2044 | |||
| 2045 | $scope.account = ""; | ||
| 2046 | |||
| 2047 | var init = function() { | ||
| 2048 | // globalService.init(); | ||
| 2049 | } | ||
| 2050 | |||
| 2051 | // mui.init(); | ||
| 2052 | init(); | ||
| 2053 | var ispay = false; | ||
| 2054 | $scope.prepay = function() { | ||
| 2055 | if(ispay) return; | ||
| 2056 | if($scope.account == ""){ | ||
| 2057 | layer.open({ | ||
| 2058 | content: '请输入充值金额', | ||
| 2059 | time:1 | ||
| 2060 | }); | ||
| 2061 | return; | ||
| 2062 | }; | ||
| 2063 | |||
| 2064 | if($scope.account < 1) { | ||
| 2065 | layer.open({ | ||
| 2066 | content: '充值金额至少为1元', | ||
| 2067 | time:1 | ||
| 2068 | }); | ||
| 2069 | return; | ||
| 2070 | } | ||
| 2071 | ispay = true; | ||
| 2072 | wechatPayment.callBalanceRecharge($scope.account) | ||
| 2073 | .then(function(result){ | ||
| 2074 | |||
| 2075 | ispay = false; | ||
| 2076 | //支付成功 | ||
| 2077 | // $state.go('wallet',{},{reload:true}); | ||
| 2078 | window.history.back(); | ||
| 2079 | }, function(errMsg){ | ||
| 2080 | |||
| 2081 | ispay = false; | ||
| 2082 | //支付失败 | ||
| 2083 | }) | ||
| 2084 | |||
| 2085 | // alert("充值 : " + $scope.account + "元") | ||
| 2086 | } | ||
| 2087 | }]);; | ||
| 2088 | ///<jscompress sourcefile="rechargeListController.js" /> | ||
| 2089 | angular.module('myApp') | ||
| 2090 | .controller('rechargeListController',function($scope,$rootScope,$state){ | ||
| 2091 | $scope.rechargeList = [ | ||
| 2092 | { | ||
| 2093 | rechargeType:'微信充值', | ||
| 2094 | rechargeTime:'2016-01-17 16:16:23', | ||
| 2095 | rechargeMoney:100 | ||
| 2096 | }, | ||
| 2097 | { | ||
| 2098 | rechargeType:'微信充值', | ||
| 2099 | rechargeTime:'2016-01-17 16:16:23', | ||
| 2100 | rechargeMoney:200 | ||
| 2101 | } | ||
| 2102 | ] | ||
| 2103 | }); | ||
| 2104 | ///<jscompress sourcefile="rentDetailController.js" /> | ||
| 2105 | angular.module('myApp') | ||
| 2106 | .controller('rentDetailController',['$scope','$rootScope','$state','dingdaService' ,function($scope,$rootScope,$state,dingdaService){ | ||
| 2107 | |||
| 2108 | $scope.detail = {}; | ||
| 2109 | $scope.costTime = ""; | ||
| 2110 | var oldTime; | ||
| 2111 | |||
| 2112 | $scope.backHome = function(){ | ||
| 2113 | $state.go('main'); | ||
| 2114 | } | ||
| 2115 | |||
| 2116 | var init = function() { | ||
| 2117 | dingdaService.getUnfinishedOrder().success(function(data , status){ | ||
| 2118 | // alert(JSON.stringify(data)) | ||
| 2119 | |||
| 2120 | if(data.meta.code == 200) { | ||
| 2121 | if(!data.data.unfinishedOrder.id) { | ||
| 2122 | $state.go('main'); | ||
| 2123 | } | ||
| 2124 | } | ||
| 2125 | |||
| 2126 | if(data.data.unfinishedOrder.status == 200) { | ||
| 2127 | $state.go('tripDetail' , { orderId : data.data.unfinishedOrder.id}); | ||
| 2128 | } | ||
| 2129 | |||
| 2130 | dingdaService.getOrderRealTimeInfo(data.data.unfinishedOrder.id) | ||
| 2131 | .success(function(data , status){ | ||
| 2132 | // alert(JSON.stringify(data)) | ||
| 2133 | |||
| 2134 | $scope.datail = data.data.orderDetail; | ||
| 2135 | |||
| 2136 | |||
| 2137 | setInterval(function(){ | ||
| 2138 | $scope.$apply(function(){ | ||
| 2139 | var h = Math.floor($scope.datail.rentTime / 3600); | ||
| 2140 | var m = Math.floor($scope.datail.rentTime % 3600 / 60); | ||
| 2141 | var s = $scope.datail.rentTime % 60; | ||
| 2142 | |||
| 2143 | if(h < 10) { | ||
| 2144 | h = "0" + h; | ||
| 2145 | } | ||
| 2146 | if(m < 10) { | ||
| 2147 | m = "0" + m; | ||
| 2148 | } | ||
| 2149 | if(s < 10) { | ||
| 2150 | s = "0" + s; | ||
| 2151 | } | ||
| 2152 | |||
| 2153 | $scope.costTime = h + ":" + m + ":" + s; | ||
| 2154 | // console.log($scope.costTime) | ||
| 2155 | if($scope.datail.freeTime <= $scope.datail.rentTime) { | ||
| 2156 | $scope.detail.freeCountdown = "00:00"; | ||
| 2157 | } else { | ||
| 2158 | var minute = Math.floor(( $scope.datail.freeTime - $scope.datail.rentTime ) / 60); | ||
| 2159 | if(minute < 10) { | ||
| 2160 | minute = "0" + minute; | ||
| 2161 | } | ||
| 2162 | var second = ( $scope.datail.freeTime - $scope.datail.rentTime ) % 60; | ||
| 2163 | if(second < 10) { | ||
| 2164 | second = "0" + second; | ||
| 2165 | } | ||
| 2166 | $scope.detail.freeCountdown = minute + ":" + second; | ||
| 2167 | } | ||
| 2168 | $scope.datail.rentTime++; | ||
| 2169 | }) | ||
| 2170 | } , 1000); | ||
| 2171 | |||
| 2172 | }).error(function(data , status){ | ||
| 2173 | |||
| 2174 | }) | ||
| 2175 | }).error(function(data , status) { | ||
| 2176 | console.log(JSON.stringify(data)) | ||
| 2177 | }) | ||
| 2178 | } | ||
| 2179 | |||
| 2180 | init(); | ||
| 2181 | |||
| 2182 | // ������ж�ʱ�� | ||
| 2183 | setTimeout(function() { | ||
| 2184 | var href = new String(location.href); | ||
| 2185 | if(href.indexOf("rentDetail") > 0) location.reload(); | ||
| 2186 | } , 30000) | ||
| 2187 | |||
| 2188 | $scope.alreadyBack = function(){ | ||
| 2189 | $state.go('unusual' , { id : $scope.datail.id}); | ||
| 2190 | } | ||
| 2191 | |||
| 2192 | }]); |
js/compress.min.js.JSCompress
0 → 100644
| 1 | <jscompress public="http://www.jscompress.cn/" command="import-combineset"> | ||
| 2 | <combinefile path="compress.min.js"> | ||
| 3 | <auto value="1" /> | ||
| 4 | <sourcefile path="\\psf\Home\Desktop\aws\dongyangwebchat\wechat\js\app.js" /> | ||
| 5 | <sourcefile path="\\psf\Home\Desktop\aws\dongyangwebchat\wechat\js\service\wechatPaymentService.js" /> | ||
| 6 | <sourcefile path="\\psf\Home\Desktop\aws\dongyangwebchat\wechat\js\service\weixinConfig.js" /> | ||
| 7 | <sourcefile path="\\psf\Home\Desktop\aws\dongyangwebchat\wechat\js\service\dingdaService.js" /> | ||
| 8 | <sourcefile path="\\psf\Home\Desktop\aws\dongyangwebchat\wechat\js\service\globalService.js" /> | ||
| 9 | <sourcefile path="\\psf\Home\Desktop\aws\dongyangwebchat\wechat\js\controller\tripController.js" /> | ||
| 10 | <sourcefile path="\\psf\Home\Desktop\aws\dongyangwebchat\wechat\js\controller\tripDetailController.js" /> | ||
| 11 | <sourcefile path="\\psf\Home\Desktop\aws\dongyangwebchat\wechat\js\controller\unusualController.js" /> | ||
| 12 | <sourcefile path="\\psf\Home\Desktop\aws\dongyangwebchat\wechat\js\controller\walletController.js" /> | ||
| 13 | <sourcefile path="\\psf\Home\Desktop\aws\dongyangwebchat\wechat\js\controller\bondController.js" /> | ||
| 14 | <sourcefile path="\\psf\Home\Desktop\aws\dongyangwebchat\wechat\js\controller\bondPayController.js" /> | ||
| 15 | <sourcefile path="\\psf\Home\Desktop\aws\dongyangwebchat\wechat\js\controller\bondSuccessController.js" /> | ||
| 16 | <sourcefile path="\\psf\Home\Desktop\aws\dongyangwebchat\wechat\js\controller\contactController.js" /> | ||
| 17 | <sourcefile path="\\psf\Home\Desktop\aws\dongyangwebchat\wechat\js\controller\loginController.js" /> | ||
| 18 | <sourcefile path="\\psf\Home\Desktop\aws\dongyangwebchat\wechat\js\controller\mainController.js" /> | ||
| 19 | <sourcefile path="\\psf\Home\Desktop\aws\dongyangwebchat\wechat\js\controller\mapController.js" /> | ||
| 20 | <sourcefile path="\\psf\Home\Desktop\aws\dongyangwebchat\wechat\js\controller\opinionController.js" /> | ||
| 21 | <sourcefile path="\\psf\Home\Desktop\aws\dongyangwebchat\wechat\js\controller\payController.js" /> | ||
| 22 | <sourcefile path="\\psf\Home\Desktop\aws\dongyangwebchat\wechat\js\controller\prepayController.js" /> | ||
| 23 | <sourcefile path="\\psf\Home\Desktop\aws\dongyangwebchat\wechat\js\controller\rechargeListController.js" /> | ||
| 24 | <sourcefile path="\\psf\Home\Desktop\aws\dongyangwebchat\wechat\js\controller\rentDetailController.js" /> | ||
| 25 | </combinefile> | ||
| 26 | </jscompress> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
js/compress.min.min.js
0 → 100644
| 1 | /** | ||
| 2 | * Created by zhanghong on 15/3/8. | ||
| 3 | */angular.module("myApp.services",["LocalStorageModule"]);angular.module("myApp.directives",[]);var app=angular.module("myApp",["ui.router","myApp.services","myApp.directives"]);app.config(["$stateProvider","$urlRouterProvider",function(a,c){c.otherwise("/main");a.state("main",{url:"/main",templateUrl:"html/main.html"}).state("login",{url:"/login",templateUrl:"html/login.html"}).state("trip",{url:"/trip",templateUrl:"html/trip.html",controller:"tripController"}).state("wallet",{url:"/wallet",templateUrl:"html/wallet.html"}).state("bond",{url:"/bond/?longitude\x26latitude",templateUrl:"html/bond.html"}).state("contact",{url:"/contact",templateUrl:"html/contact.html"}).state("opinion",{url:"/opinion/?longitude\x26latitude",templateUrl:"html/opinion.html"}).state("tripDetail",{url:"/tripDetail/:orderId",templateUrl:"html/tripDetail.html",controller:"tripDetailController"}).state("prepay",{url:"/prepay",templateUrl:"html/prepay.html"}).state("pay",{url:"/pay",templateUrl:"html/pay.html"}).state("bondPay",{url:"/bondPay",templateUrl:"html/bondPay.html"}).state("bondSuccess",{url:"/bondSuccess",templateUrl:"html/bondSuccess.html"}).state("rentDetail",{url:"/rentDetail",templateUrl:"html/rentDetail.html"}).state("unusual",{url:"/unusual/:id",templateUrl:"html/unusual.html"}).state("rechargeList",{url:"/rechargeList",templateUrl:"html/rechargeList.html"})}]);app.run(["globalService",function(a){a.init();document.getElementById("appLoadingIndicator").style.display="none"}]);angular.module("myApp.services").service("wechatPayment",["$http","$q","$rootScope",function(a,c,b){var e=function(a,b){WeixinJSBridge.invoke("getBrandWCPayRequest",{appId:a.appId,timeStamp:a.timeStamp,nonceStr:a.nonceStr,"package":a.packageStr,signType:a.signType,paySign:a.paySign},function(a){"get_brand_wcpay_request:ok"==a.err_msg?(layer.open({content:"\u652f\u4ed8\u6210\u529f!",time:1}),b.resolve(a.err_msg)):("get_brand_wcpay_request:fail"==a.err_msg?(alert("\u652f\u4ed8\u5931\u8d25\uff1a"+JSON.stringify(a)),layer.open({content:"\u652f\u4ed8\u5931\u8d25!",time:1})):"get_brand_wcpay_request:cancel"==a.err_msg?layer.open({content:"\u652f\u4ed8\u53d6\u6d88!",time:1}):layer.open({content:"\u652f\u4ed8\u5f02\u5e38,"+a.err_msg,time:1}),b.reject(a.err_msg))})},d=function(b,d){var h=c.defer();a.post(b,d).success(function(a){200==a.meta.code?e(a.data.wechatDto,h):(layer.open({content:"\u652f\u4ed8\u7b7e\u540d\u5931\u8d25:code "+a.meta.code+","+a.meta.message,time:1}),h.reject(a.meta.message))});return h.promise};return{callRentPay:function(a,b){return d("http://finance.dy.dingdatech.com/service/bill/wx/"+a,{amount:b,body:"\u79df\u8f66\u79df\u91d1",type:101})},callDepositPay:function(a){return d("http://finance.dy.dingdatech.com/service/bail/wx",{amount:a,body:"\u4fdd\u8bc1\u91d1\u5145\u503c",type:101})},callBalanceRecharge:function(a){return d("http://finance.dy.dingdatech.com/service/balance/wx",{amount:a,body:"\u94b1\u5305\u5145\u503c",type:101})}}}]);function weixinOptionMenuInit(a,c,b,e){try{wx.config({debug:!1,appId:a,timestamp:c,nonceStr:b,signature:e,jsApiList:["scanQRCode","getLocation"]}),wx.error(function(a){layer.open({content:"\u5fae\u4fe1\u626b\u7801\u529f\u80fd\u4e0d\u80fd\u7528\uff0c\u65e0\u6cd5\u4f7f\u7528\u626b\u7801\u79df\u8f66",time:1})}),wx.ready(function(){wx.checkJsApi({jsApiList:["scanQRCode","getLocation"],success:function(a){1!=a.checkResult.scanQRCode&&layer.open({content:"\u60a8\u7684\u5fae\u4fe1\u7248\u672c\u592a\u4f4e\uff0c\u4e0d\u652f\u6301\u626b\u7801",time:1})}})})}catch(d){layer.open({content:"\u5fae\u4fe1\u626b\u7801\u529f\u80fd\u5f02\u5e38\uff0c\u65e0\u6cd5\u4f7f\u7528\u626b\u7801\u79df\u8f66",time:1})}}function initWeixinMenu(a){var c=encodeURIComponent(location.href.split("#")[0]);a.post("http://wechat.dy.dingdatech.com/wx/qrCodeParms",{webUrl:c}).success(function(a){a&&weixinOptionMenuInit(a.appid,a.timestamp,a.noncestr,a.signature)}).error(function(a){try{layer.open({content:"\u5fae\u4fe1jssdk\u914d\u7f6e\u63a5\u53e3\u5931\u8d25:"+JSON.stringify(a),time:1})}catch(e){layer.open({content:"\u5fae\u4fe1jssdk\u914d\u7f6e\u63a5\u53e3\u5931\u8d25:"+a,time:1})}})}angular.module("myApp.services").service("dingdaService",["$http","globalService",function(a,c){return{sendPhoneCode:function(b,e){var d=c.getParam("dingdaLoginAPI")+"/login/sms?mobile\x3d"+b+"\x26openId\x3d"+e;return a.get(d).success(function(a,b){}).error(function(a,b){alert(a.meta.message)})},verifyPhoneCode:function(b,e){var d=c.getParam("dingdaLoginAPI")+"/login/sms?mobile\x3d"+b+"\x26code\x3d"+e;return a.post(d,{},{}).success(function(a,b){}).error(function(a,b){alert(a.meta.message)})},getStationList:function(b,e){var d=c.getParam("dingdaAPI")+"/service/bicycle/stations?longitude\x3d"+b+"\x26latitude\x3d"+e;return a.get(d).success(function(a,b){}).error(function(a,b){alert(a.meta.message)})},getStationById:function(b){b=c.getParam("dingdaAPI")+"/service/bicycle/stations/"+b;return a.get(b).success(function(a,b){}).error(function(a,b){alert(a.meta.message)})},getUnfinishedOrder:function(){var b=c.getParam("dingdaAPI")+"/service/bicycle/orders/unfinished";return a.get(b).success(function(a,b){}).error(function(a,b){alert(a.meta.message)})},verifyScanCode:function(b){b=c.getParam("dingdaAPI")+"/service/bicycle/order?code\x3d"+b;return a.post(b,{}).success(function(a,b){}).error(function(a,b){alert(a.meta.message)})},getOrderRealTimeInfo:function(b){b=c.getParam("dingdaAPI")+"/service/bicycle/orders/detail/"+b;return a.get(b).success(function(a,b){}).error(function(a,b){alert(a.meta.message)})},getOrderList:function(b){b=c.getParam("dingdaAPI")+"/service/bicycle/orders?pageSize\x3d10\x26pageNum\x3d"+b;return a.get(b).success(function(a,b){}).error(function(a,b){alert(a.meta.message)})},getOrderFinishInfo:function(b){b=c.getParam("dingdaAPI")+"/service/bicycle/orders/"+b;return a.get(b).success(function(a,b){}).error(function(a,b){alert(a.meta.message)})},setOrderFinish:function(b){b=c.getParam("dingdaAPI")+"/service/bicycle/order/finish/"+b;return a.post(b,{}).success(function(a,b){}).error(function(a,b){alert(a.meta.message)})},payWX:function(b,e){var d=c.getParam("financeAPI")+"/service/bill/wx/"+b;return a.post(d,e).success(function(a,b){}).error(function(a,b){alert(a.meta.message)})},getWallet:function(){var b=c.getParam("financeAPI")+"/service/balance";return a.get(b).success(function(a,b){}).error(function(a,b){alert(a.meta.message)})},payWallet:function(b){var e=c.getParam("financeAPI")+"/service/balance/wx";return a.post(e,b).success(function(a,b){}).error(function(a,b){alert(a.meta.message)})},getWalletHistory:function(b){b=c.getParam("financeAPI")+"/service/balances?pageSize\x3d10\x26pageNum"+b;return a.get(b).success(function(a,b){}).error(function(a,b){alert(a.meta.message)})},getBond:function(b,e){var d=c.getParam("dingdaAPI")+"/service/bicycle/deposit?longitude\x3d"+b+"\x26latitude\x3d"+e;return a.get(d).success(function(a,b){}).error(function(a,b){alert(a.meta.message)})},payBond:function(b){var e=c.getParam("financeAPI")+"/service/bail/wx";return a.post(e,b).success(function(a,b){}).error(function(a,b){alert(a.meta.message)})},returnBond:function(b){b=c.getParam("dingdaAPI")+"/service/bicycle/deposit";return a["delete"](b).success(function(a,b){}).error(function(a,b){alert(a.meta.message)})},comment:function(b){var e=c.getParam("feedbackAPI")+"/service/comments";return a.post(e,b).success(function(a,b){}).error(function(a,b){alert(a.meta.message)})},getVersion:function(){var b=c.getParam("dingdaAPI")+"/service/version";return a.get(b).success(function(a,b){}).error(function(a,b){alert(a.meta.message)})}}}]);angular.module("myApp.services").service("globalService",["$http","$rootScope","localStorageService",function(a,c,b){var e=function(b){a.defaults.headers.common={token:b,version:"1.0.0",source:"WX"}},d=function(){var a=b.keys(),c;for(c in a)f.setData(a[c],b.get(a[c]));f.getData("user")&&e(f.getData("user").token)},h=function(){var a=window.location.href.split("?");if(2==a.length){var b=a[1].indexOf("#");-1!=b&&(a[1]=a[1].substring(0,b));a[1].split("\x26").forEach(function(a){a=a.split("\x3d");2==a.length&&f.setData(a[0],a[1])})}},f={init:function(){c.params={};c.config={};c.data={};c.inited=!0;f.setParam("dingdaAPI","http://bike.dy.dingdatech.com");f.setParam("financeAPI","http://finance.dy.dingdatech.com");f.setParam("feedbackAPI","http://feedback.dy.dingdatech.com");f.setParam("dingdaLoginAPI","http://auth.dy.dingdatech.com");c.$watch("data.user",function(a,b){a&&a.token&&e(a.token)});d();h();initWeixinMenu(a)},getParam:function(a){return c.params[a]},setParam:function(a,b){c.params[a]=b},getConfig:function(a){return c.config[a]},setConfig:function(a,b){c.config[a]=b},getData:function(a){return c.data[a]},setData:function(a,b){c.data[a]=b},saveData:function(a,c){c&&this.setData(a,c);b.set(a,c)},clearData:function(c){this.setData(c,null);b.set(c,null);a.defaults.headers.common={}}};return f}]);angular.module("myApp").controller("tripController",["$scope","$rootScope","$state","dingdaService",function(a,c,b,e){a.tripList=[];a.isLastPage=!1;a.getMoreOrders=function(){e.getOrderList(d).success(function(b,c){if(b.data.orders&&0!=b.data.orders.length){1==d&&(a.tripList=[]);for(var f=0;f<b.data.orders.length;f++)b.data.orders[f].tripStatus=300==b.data.orders[f].status?"\u5df2\u5b8c\u6210":"\u5f85\u652f\u4ed8",a.tripList.push(b.data.orders[f]);d++}else a.isLastPage=!0})};var d=1;a.getMoreOrders();a.viewTripDetail=function(c){b.go("tripDetail",{orderId:a.tripList[c].id})}}]);angular.module("myApp").controller("tripDetailController",["$scope","$rootScope","$state","dingdaService","$stateParams","wechatPayment",function(a,c,b,e,d,h){console.log("tripDetailController");var f=$(".tripDetail");c=$(window).height();var f=f.height()+40,v=$(".bottomPosition");c>=f&&v.css({position:"absolute",bottom:"0"});a.tripDetail={};a.needPay=!1;a.backHome=function(){b.go("main")};var k=!1;a.isActive=!0;a.payType=1;a.choosePay=function(b){$($(".checkboxS")[b]).hasClass("checkboxTrue")||(a.isActive=!a.isActive,a.payType=b)};a.goPay=function(){k||(1==a.payType?(k=!0,h.callRentPay(a.tripDetail.id,a.tripDetail.total_fee).then(function(a){k=!1;l()},function(a){k=!1})):a.tripDetail.total_fee>a.balance?layer.open({content:"\u60a8\u7684\u4f59\u989d\u4e0d\u591f\u662f\u5426\u53bb\u5145\u503c\uff1f",btn:["\u53bb\u5145\u503c","\u53d6\u6d88"],shadeClose:!1,yes:function(a){b.go("prepay",{},{reload:!1});layer.close(a)},no:function(a){layer.close(a)}}):(k=!0,e.payWX(a.tripDetail.id,{amount:a.tripDetail.total_fee,body:"\u4f59\u989d\u652f\u4ed8",type:102}).success(function(a,b){k=!1;layer.open({content:"\u652f\u4ed8\u6210\u529f",time:2});l()}).error(function(a){k=!1;layer.open({content:"\u652f\u4ed8\u5931\u8d25",time:2})})))};var w=d.orderId,l=function(){e.getOrderFinishInfo(w).success(function(b,c){a.tripDetail=b.data.order;300==b.data.order.status||0==a.tripDetail.total_fee?a.needPay=!1:200==b.data.order.status&&(a.needPay=!0)});e.getWallet(w).success(function(b,c){a.balance=b.data.balance})};l()}]);angular.module("myApp").controller("unusualController",["$scope","dingdaService","$state","$stateParams",function(a,c,b,e){a.returnBike=function(){c.setOrderFinish(e.id).success(function(a,c){200==a.meta.code?b.go("tripDetail",{orderId:e.id}):203==a.meta.code?(layer.open({content:"\u79df\u8f66\u5931\u8d25",time:2}),b.go("main")):layer.open({content:"\u7cfb\u7edf\u68c0\u6d4b\u5230\u60a8\u8fd8\u672a\u8fd8\u8f66\uff0c\u8bf7\u8054\u7cfb\u5ba2\u670d",time:2})}).error(function(a,b){})};a.hint=function(){layer.open({content:"\u8bf7\u5728\u4e3b\u9875\u9762\u83dc\u5355\u4e2d\u70b9\u51fb\u8054\u7cfb\u6211\u4eec",time:2})}}]);angular.module("myApp").controller("walletController",["$scope","$rootScope","dingdaService","$state","globalService",function(a,c,b,e,d){a.balance="";(function(){b.getWallet().success(function(b,c){a.balance=b.data.balance})})();a.prepay=function(){e.go("prepay",{},{reload:!1})}}]);angular.module("myApp").controller("bondController",["$scope","$rootScope","$state","dingdaService","$stateParams",function(a,c,b,e,d){a.goPay=function(){b.go("bondPay")};a.init=function(){e.getBond(d.longitude,d.latitude).success(function(b){a.bondInfo=b.data;c.toPaid=b.data.toPaid}).error(function(a){layer.open({content:"\u83b7\u53d6\u4fdd\u8bc1\u91d1\u5931\u8d25,\u8bf7\u5237\u65b0\u9875\u9762",time:2})})};a.drawback=function(){e.getUnfinishedOrder().success(function(b,c){b.data.unfinishedOrder.id?layer.open({content:"\u8fd8\u6709\u672a\u5b8c\u6210\u7684\u8ba2\u5355\uff0c\u65e0\u6cd5\u9000\u8fd8\u4fdd\u8bc1\u91d1",time:2}):layer.open({content:"\u60a8\u786e\u5b9a\u8981\u9000\u8fd8\u4fdd\u8bc1\u91d1\u5417\uff1f",btn:["\u786e\u8ba4","\u53d6\u6d88"],shadeClose:!1,yes:function(b){layer.close(b);e.returnBond().success(function(b){console.log(window.localStorage.getItem("IswechatPayment"));window.localStorage.setItem("IswechatPayment","no");layer.open({content:"\u9000\u8fd8\u6210\u529f,\u4fdd\u8bc1\u91d1\u4e03\u4e2a\u5de5\u4f5c\u65e5\u5185\u9000\u8fd8",time:2});a.init()}).error(function(a){layer.open({content:"\u9000\u8fd8\u4fdd\u8bc1\u91d1\u5931\u8d25",time:2})})},no:function(a){layer.close(a)}})})}}]);angular.module("myApp").controller("bondPayController",["$scope","$rootScope","$state","wechatPayment",function(a,c,b,e){c.toPaid||b.go("bond");var d=!1;a.goPay=function(){if(!d){d=!0;var a=window.localStorage.getItem("IswechatPayment");void 0!=a&&"no"!=a||e.callDepositPay(c.toPaid).then(function(a){d=!1;window.localStorage.setItem("IswechatPayment","yes");b.go("bondSuccess")},function(a){d=!1;window.localStorage.setItem("IswechatPayment","no")})}}}]);angular.module("myApp").controller("bondSuccessController",["$scope","$rootScope","$state",function(a,c,b){a.goMap=function(){b.go("main")}}]);angular.module("myApp").controller("contactController",["$scope","$rootScope","dingdaService","$state","globalService",function(a,c,b,e,d){a.contactList=[];a.contactList.push({name:"\u6d59\u6c5f\u7701",phone:"0571-8677567"});a.contactList.push({name:"\u6d59\u6c5f\u7701",phone:"0571-8677567"});a.contactList.push({name:"\u6d59\u6c5f\u7701",phone:"0571-8677567"});a.contactList.push({name:"\u6d59\u6c5f\u7701",phone:"0571-8677567"});a.contactList.push({name:"\u6d59\u6c5f\u7701",phone:"0571-8677567"});a.contactList.push({name:"\u6d59\u6c5f\u7701",phone:"0571-8677567"});a.contactList.push({name:"\u6d59\u6c5f\u7701",phone:"0571-8677567"});a.contactList.push({name:"\u6d59\u6c5f\u7701",phone:"0571-8677567"});a.contactList.push({name:"\u6d59\u6c5f\u7701",phone:"0571-8677567"});a.contactList.push({name:"\u6d59\u6c5f\u7701",phone:"0571-8677567"});a.contactList.push({name:"\u6d59\u6c5f\u7701",phone:"0571-8677567"})}]);angular.module("myApp").controller("loginController",["$scope","$rootScope","dingdaService","globalService",function(a,c,b,e){function d(a){a=new RegExp("(^|\x26)"+a+"\x3d([^\x26]*)(\x26|$)");a=window.location.search.substr(1).match(a);return null!=a?unescape(a[2]):null}(function(){a.phoneNumberVal="";a.validationVal="";$(".phoneNumber").focus(function(){$(".phoneNumber").css("border","1px solid #36d1e7")});$(".phoneNumber").blur(function(){$(".phoneNumber").css("border","1px solid rgba(0,0,0,.2)")});$(".validationInput").focus(function(){$(".validationInput").css("border","1px solid #36d1e7")});$(".validationInput").blur(function(){$(".validationInput").css("border","1px solid rgba(0,0,0,.2)")})})();var h=function(){function a(c){0==b?(c.removeAttribute("disabled"),c.value="\u91cd\u53d1",b=60,$(".ValidationBtn").html(c.value),$(".ValidationBtn").css("background","#36d1e7")):(c.setAttribute("disabled",!0),c.value=b+"\u79d2",b--,$(".ValidationBtn").html(c.value),0!=b&&$(".ValidationBtn").css("background","#ccc"),setTimeout(function(){a(c)},1E3))}var b=60;a($(".ValidationBtn").get(0))};a.Validation=function(){""==a.phoneNumberVal?layer.open({content:"\u624b\u673a\u53f7\u7801\u4e0d\u80fd\u4e3a\u7a7a",time:2}):/^0?1[3|4|5|7|8][0-9]\d{8}$/.test(a.phoneNumberVal)?(h(),b.sendPhoneCode(a.phoneNumberVal,d("openId")).success(function(a){console.log(a)}).error(function(){console.log("error")})):layer.open({content:"\u624b\u673a\u53f7\u7801\u683c\u5f0f\u4e0d\u5bf9",time:2})};a.login=function(){""==a.phoneNumberVal?layer.open({content:"\u624b\u673a\u53f7\u7801\u4e0d\u80fd\u4e3a\u7a7a",time:2}):/^0?1[3|4|5|7|8][0-9]\d{8}$/.test(a.phoneNumberVal)?""==a.validationVal?layer.open({content:"\u8bf7\u8f93\u5165\u9a8c\u8bc1\u7801",time:2}):(a.validationVal=""+a.validationVal,4!=a.validationVal.length?layer.open({content:"\u9a8c\u8bc1\u7801\u4f4d\u6570\u4e0d\u5bf9",time:2}):b.verifyPhoneCode(a.phoneNumberVal,a.validationVal).success(function(b){200==b.meta.code?(b.data.userName=a.phoneNumberVal,e.saveData("user",b.data),window.history.back(),layer.open({content:"\u767b\u5f55\u6210\u529f",time:1}),setTimeout(function(){location.reload()},300)):401==b.meta.code&&layer.open({content:b.meta.message,time:1})}).error(function(){layer.open({content:"\u767b\u5f55\u5931\u8d25",time:1})})):layer.open({content:"\u624b\u673a\u53f7\u7801\u683c\u5f0f\u4e0d\u5bf9",time:2})};a.$watch("validationVal",function(b,c){b&&(""==a.validationVa||isNaN(a.validationVal)||4!=a.validationVal.toString().length?$(".loginBtn").removeClass("btnBg"):$(".loginBtn").addClass("btnBg"))})}]);angular.module("myApp").controller("mainController",["$scope","$rootScope","dingdaService","$state","globalService",function(a,c,b,e,d){c.isRendBike=!1;c.isLoadFinish=!1;a.unfinishOrder={};a.doAction=function(b){if(a.checkLogin()){var d={};if(2==b||4==b)d={longitude:c.currentPoint.longitude,latitude:c.currentPoint.latitude};3==b?location.href="http://wx.dy.dingdatech.com/contactUs.html":e.go(a.moduleList[b].state,d)}};a.checkLogin=function(){return d.getData("user")?!0:(e.go("login",{},{reload:!0}),!1)};a.logout=function(){a.userinfo={};a.userinfo.userName="\u672a\u767b\u5f55";a.userinfo.loginState=!1;d.clearData("user");location.reload()};(function(){c.openScan=!1;c.openDetail=!1;c.openMenu=!1;c.openRing=!1;c.$watch("openScan",function(d,f){d!==f&&d&&a.checkLogin()&&(200==a.unfinishOrder.status?e.go("tripDetail",{orderId:a.unfinishOrder.id}):(c.openScan=!1,wx.scanQRCode({needResult:1,scanType:["qrCode","barCode"],success:function(a){b.verifyScanCode(a.resultStr).success(function(a,b){200==a.meta.code?a.data.orderDetail.id&&(layer.open({content:"\u79df\u8f66\u6210\u529f\uff0c\u8ba2\u5355\u53f7\u4e3a\uff1a"+a.data.orderDetail.id,time:2}),c.isRendBike=!0,e.go("rentDetail",{},{reload:!0})):202==a.meta.code?(layer.open({content:a.meta.message,time:2}),e.go("bond",{longitude:c.currentPoint.longitude,latitude:c.currentPoint.latitude})):layer.open({content:a.meta.message,time:2})}).error(function(a,b){layer.open({content:"\u79df\u8f66\u5931\u8d25"+JSON.stringify(a),time:2})})}})))});c.$watch("openDetail",function(a,c){a!==c&&a&&b.getUnfinishedOrder().success(function(a,b){200!=a.meta.code||a.data.unfinishedOrder.id||(layer.open({content:"\u79df\u8f66\u5b8c\u6210",time:2}),e.go("main"));200==a.data.unfinishedOrder.status?e.go("tripDetail",{orderId:a.data.unfinishedOrder.id}):e.go("rentDetail",{},{reload:!0})}).error(function(a,b){console.log(JSON.stringify(a))})});c.$watch("openRing",function(a,b){});c.$watch("isLoadFinish",function(a,b){a!==b&&a&&(document.getElementById("sliderMenu").style.display="block")});document.getElementById("sliderMenu").addEventListener("touchmove",function(){},!1)})();(function(){a.userinfo=d.getData("user");a.userinfo?(a.userinfo.loginState=!0,b.getUnfinishedOrder().success(function(b,d){b.data.unfinishedOrder.id&&(c.isRendBike=!0,a.unfinishOrder=b.data.unfinishedOrder);200==b.data.unfinishedOrder.status&&layer.open({content:"\u60a8\u6709\u672a\u652f\u4ed8\u7684\u8ba2\u5355\uff0c\u662f\u5426\u524d\u5f80\u652f\u4ed8\uff1f",btn:["\u786e\u8ba4","\u53d6\u6d88"],shadeClose:!1,yes:function(b){layer.close(b);e.go("tripDetail",{orderId:a.unfinishOrder.id})},no:function(a){layer.close(a)}})}).error(function(a,b){console.log(JSON.stringify(a))})):(a.userinfo={},a.userinfo.userName="\u672a\u767b\u5f55",a.userinfo.loginState=!1);a.moduleList=[];a.moduleList.push({name:"\u884c\u7a0b\u8bb0\u5f55",icon:"images/trip.png",state:"trip"});a.moduleList.push({name:"\u94b1\u5305",icon:"images/wallet.png",state:"wallet"});a.moduleList.push({name:"\u4fdd\u8bc1\u91d1",icon:"images/bond.png",state:"bond"});a.moduleList.push({name:"\u8054\u7cfb\u6211\u4eec",icon:"images/contact.png",state:"contact"});a.moduleList.push({name:"\u610f\u89c1\u53cd\u9988",icon:"images/opinion.png",state:"opinion"})})()}]);angular.module("myApp").controller("mapController",["$scope","$rootScope","dingdaService","globalService","$state",function(a,c,b,e,d){function h(){this.defaultAnchor=BMAP_ANCHOR_BOTTOM_LEFT;this.defaultOffset=new BMap.Size(0,0)}function f(){this.defaultAnchor=BMAP_ANCHOR_BOTTOM_LEFT;this.defaultOffset=new BMap.Size(0,0)}function v(){this.defaultAnchor=BMAP_ANCHOR_BOTTOM_LEFT;this.defaultOffset=new BMap.Size(0,0)}function k(){this.defaultAnchor=BMAP_ANCHOR_TOP_LEFT;this.defaultOffset=new BMap.Size(0,13)}function w(){this.defaultAnchor=BMAP_ANCHOR_TOP_LEFT;this.defaultOffset=new BMap.Size(0,66)}function l(a,b,c){this.index=b;this.position=a;this.info=c;this.isDisplay=!1}function r(a,b,c){this.index=b;this.position=a;this.info=c;this.isDisplay=!0}function y(a){this.position=a}var p,u=[],n=[],z,x,A,m,B,q;c.currentPoint={};a.$watch("isRendBike",function(a,b){a!==b&&(a?(A.hide(),x.show()):(A.show(),x.hide()))});var C=function(a){m.removeOverlay(q);a=a.tr[0].ek[0].vr;a.unshift(p.position);a.push(B);q=new BMap.Polyline(a);q.setStrokeColor("#36D1E7");q.setStrokeOpacity(1);q.setStrokeWeight(3);q.setStrokeStyle("solid");m.addOverlay(q)},D=function(a){b.getStationList(a.lng,a.lat).success(function(a,b){for(var c=a.data.stationLists,e=m,d=0;d<u.length;d++)e.removeOverlay(u[d]),u[d].div.parentElement.removeChild(u[d].div),e.removeOverlay(n[d]),n[d].div.parentElement.removeChild(n[d].div);u=[];n=[];for(d=0;d<c.length;d++){var g=new r(new BMap.Point(c[d].longitude,c[d].latitude),d,c[d]);e.addOverlay(g);u.push(g)}}).error(function(a,b){})},E=function(b){f.prototype=new BMap.Control;f.prototype.initialize=function(b){var d=document.createElement("div");d.className="scanControl";var e=document.createElement("div");e.className="scanControlContainer";var g=document.createElement("div");g.className="scanControlContent";var f=document.createElement("img");f.className="spanResize";f.src="images/scancode.png";g.innerHTML=f.outerHTML+" \u626b\u7801\u79df\u8f66";e.onclick=function(){a.$apply(function(){c.openScan=!0})};e.appendChild(g);d.appendChild(e);b.getContainer().appendChild(d);return d};A=new f;b.addControl(A);v.prototype=new BMap.Control;v.prototype.initialize=function(b){var d=document.createElement("div");d.className="scanControl";var e=document.createElement("div");e.className="scanControlContainer";var g=document.createElement("div");g.className="scanControlContent";var f=document.createElement("img");f.className="spanResize";f.src="images/details.png";g.innerHTML=f.outerHTML+" \u79df\u8f66\u8be6\u60c5";e.onclick=function(){a.$apply(function(){c.openDetail=!0})};e.appendChild(g);d.appendChild(e);b.getContainer().appendChild(d);return d};x=new v;b.addControl(x);x.hide();h.prototype=new BMap.Control;h.prototype.initialize=function(a){var b=document.createElement("div");b.className="locateControlContainer";b.index=1;var c=document.createElement("div");c.className="locateControlContent";var d=document.createElement("div");d.className="locateControlContentCenter";c.appendChild(d);b.appendChild(c);b.onclick=function(){a.panTo(p.position);a.setZoom(15)};a.getContainer().appendChild(b);return b};var g=new h;b.addControl(g);k.prototype=new BMap.Control;k.prototype.initialize=function(b){var g=document.createElement("div");g.className="menuControl";g.index=1;var f=document.createElement("img");f.src="images/me.png";g.appendChild(f);g.onclick=function(){a.$apply(function(){e.getData("user")?c.openMenu=!c.openMenu:d.go("login")})};b.getContainer().appendChild(g);return g};g=new k;b.addControl(g);w.prototype=new BMap.Control;w.prototype.initialize=function(b){var d=document.createElement("div");d.className="menuControl";d.index=1;var e=document.createElement("img");e.src="images/new.png";d.appendChild(e);d.onclick=function(){a.$apply(function(){c.openRing=!c.openRing})};b.getContainer().appendChild(d);return d};b.addControl(new BMap.NavigationControl({type:BMAP_NAVIGATION_CONTROL_SMALL,anchor:BMAP_ANCHOR_BOTTOM_RIGHT}))},F=function(a){function b(b){var d=b.longitude;b=b.latitude;c.currentPoint={longitude:d,latitude:b};var e=new BMap.Convertor,g=[];g.push(new BMap.Point(d,b));e.translate(g,3,5,function(b){b=b.points[0];if(p)p.position=b,a&&p.getMap().panTo(b);else{m.setCenter(b);z=new BMap.WalkingRoute(m,{renderOptions:{map:null,autoViewport:!0}});z.setSearchCompleteCallback(C);var d=m;c.isLoadFinish=!0;p=new y(b);d.addOverlay(p)}D(b)})}(function(){wx.getLocation({type:"gcj02",success:function(a){b(a)}})})()};(function(){l.prototype=new BMap.Overlay;l.prototype.initialize=function(b){this.map=b;var c=this.div=document.createElement("div");c.className="overlayContainer";var d=document.createElement("div");d.className="overlayPanelLeft";var e=document.createElement("div");e.className="overlayPanelLeftContentContainer";var f=document.createElement("div");f.className="overlayPanelLeftContent";f.innerText=this.info.name;e.appendChild(f);d.appendChild(e);e=document.createElement("div");e.className="overlayPanelCenter";f=document.createElement("div");f.className="overlayPanelCenterContent overlayPanelCenterContentTop";a.isRendBike||(f.className+=" act");f.innerText="\u53ef\u501f\uff1a"+this.info.enHireNum;var k=document.createElement("div");k.className="overlayPanelCenterContent overlayPanelCenterContentBottom";a.isRendBike&&(k.className+=" act");k.innerText="\u53ef\u8fd8\uff1a"+this.info.disHireNum;e.appendChild(f);e.appendChild(k);var t=document.createElement("div");t.className="overlayPanelRight";f=document.createElement("div");f.className="overlayPanelRightContentContainer";k=document.createElement("div");k.className="overlayPanelRightContent";f.appendChild(k);t.appendChild(f);f=document.createElement("img");f.className="corner";f.src="images/triangle.png";d.appendChild(e);c.appendChild(d);c.appendChild(t);c.appendChild(f);b=b.getPanes();var h=this;t.onclick=function(){z.clearResults();z.search(p.position,h.position);B=h.position};t.addEventListener("touchend",function(){t.onclick()});b.labelPane.appendChild(c)};l.prototype.draw=function(){var a=this.map.pointToOverlayPixel(this.position),b=this.div.style;b.left=a.x-90+"px";b.top=a.y-70+"px"};l.prototype.show=function(a){if(a){this.info=a;var b=this.div.getElementsByClassName("overlayPanelCenterContentTop");b[0].innerText="\u53ef\u501f\uff1a"+a.enHireNum;b=this.div.getElementsByClassName("overlayPanelCenterContentBottom");b[0].innerText="\u53ef\u8fd8\uff1a"+a.disHireNum}else this.div.style.display="block",this.isDisplay=!0,b=this.div.getElementsByClassName("overlayPanelCenterContentTop"),b[0].innerText="\u53ef\u501f\uff1a0",b=this.div.getElementsByClassName("overlayPanelCenterContentBottom"),b[0].innerText="\u53ef\u8fd8\uff1a0"};l.prototype.hide=function(){this.div.style.display="none";this.isDisplay=!1};r.prototype=new BMap.Overlay;r.prototype.initialize=function(a){this.map=a;var c=this.div=document.createElement("div");c.className="siteOverlay";var d=document.createElement("img");d.src="images/site.png";c.appendChild(d);var d=a.getPanes(),e=this,f=new l(e.position,e.index,e.info);n.push(f);a.addOverlay(f);c.onclick=function(){a.panTo(e.position);for(var c=0;c<n.length;c++)n[c].hide();f.isDisplay?f.hide():(setTimeout(function(){f.show()},100),b.getStationById(e.info.id).success(function(a,b){setTimeout(function(){f.show(a.data.station)},100)}))};c.addEventListener("touchend",function(){c.onclick()});d.labelPane.appendChild(c)};r.prototype.draw=function(){var a=this.map.pointToOverlayPixel(this.position),b=this.div.style;b.left=a.x-13.5+"px";b.top=a.y-13.5+"px"};r.prototype.show=function(){this.div.style.display="block";this.isDisplay=!0};r.prototype.hide=function(){this.div.style.display="none";this.isDisplay=!1};y.prototype=new BMap.Overlay;y.prototype.initialize=function(a){this.map=a;var b=this.div=document.createElement("div");b.className="myMarker";var c=document.createElement("img");c.src="images/myposition.png";b.appendChild(c);a.getPanes().labelPane.appendChild(b)};y.prototype.draw=function(){var a=this.map.pointToOverlayPixel(this.position),b=this.div.style;b.left=a.x-25+"px";b.top=a.y-37+"px"}})();(function(){m=new BMap.Map("mapContainer");m.centerAndZoom(new BMap.Point(120.124421,30.279879),15);m.addEventListener("click",function(){for(var b=0;b<n.length;b++)n[b].hide();a.$apply(function(){c.openMenu=!1})});E(m)})();wx.ready(function(){F()})}]);angular.module("myApp").controller("opinionController",["$scope","$rootScope","dingdaService","$state","globalService","$stateParams",function(a,c,b,e,d,h){a.opinion="";a.submit=function(){if(0!=a.opinion.length)if(200<a.opinion.length)layer.open({content:"\u8d85\u51fa\u5b57\u6570\u9650\u5236",time:2});else{var c=navigator.userAgent.match(/\(.*?\)/),d=navigator.userAgent.match(/MicroMessenger\/.*?[ ]/);b.comment({content:a.opinion,latitude:h.latitude,longitude:h.longitude,phoneType:c[0],systemType:d[0]}).success(function(a,b){200!=a.meta.code?layer.open({content:a.meta.message,time:2}):(layer.open({content:"\u8bc4\u8bba\u6210\u529f",time:2}),setTimeout(function(){location.reload()},300),history.back())}).error(function(a,b){alert(JSON.stringify(a))})}}}]);angular.module("myApp").controller("payController",["$scope","$rootScope","dingdaService","$state","globalService",function(a,c,b,e,d){a.pay=function(){alert("\u5145\u503c")}}]);angular.module("myApp").controller("prepayController",["$scope","$rootScope","dingdaService","$state","globalService","wechatPayment",function(a,c,b,e,d,h){a.account="";var f=!1;a.prepay=function(){f||(""==a.account?layer.open({content:"\u8bf7\u8f93\u5165\u5145\u503c\u91d1\u989d",time:1}):1>a.account?layer.open({content:"\u5145\u503c\u91d1\u989d\u81f3\u5c11\u4e3a1\u5143",time:1}):(f=!0,h.callBalanceRecharge(a.account).then(function(a){f=!1;window.history.back()},function(a){f=!1})))}}]);angular.module("myApp").controller("rechargeListController",function(a,c,b){a.rechargeList=[{rechargeType:"\u5fae\u4fe1\u5145\u503c",rechargeTime:"2016-01-17 16:16:23",rechargeMoney:100},{rechargeType:"\u5fae\u4fe1\u5145\u503c",rechargeTime:"2016-01-17 16:16:23",rechargeMoney:200}]});angular.module("myApp").controller("rentDetailController",["$scope","$rootScope","$state","dingdaService",function(a,c,b,e){a.detail={};a.costTime="";a.backHome=function(){b.go("main")};(function(){e.getUnfinishedOrder().success(function(c,h){200==c.meta.code&&(c.data.unfinishedOrder.id||b.go("main"));200==c.data.unfinishedOrder.status&&b.go("tripDetail",{orderId:c.data.unfinishedOrder.id});e.getOrderRealTimeInfo(c.data.unfinishedOrder.id).success(function(b,c){a.datail=b.data.orderDetail;setInterval(function(){a.$apply(function(){var b=Math.floor(a.datail.rentTime/3600),c=Math.floor(a.datail.rentTime%3600/60),d=a.datail.rentTime%60;10>b&&(b="0"+b);10>c&&(c="0"+c);10>d&&(d="0"+d);a.costTime=b+":"+c+":"+d;a.datail.freeTime<=a.datail.rentTime?a.detail.freeCountdown="00:00":(b=Math.floor((a.datail.freeTime-a.datail.rentTime)/60),10>b&&(b="0"+b),c=(a.datail.freeTime-a.datail.rentTime)%60,10>c&&(c="0"+c),a.detail.freeCountdown=b+":"+c);a.datail.rentTime++})},1E3)}).error(function(a,b){})}).error(function(a,b){console.log(JSON.stringify(a))})})();setTimeout(function(){0<(new String(location.href)).indexOf("rentDetail")&&location.reload()},3E4);a.alreadyBack=function(){b.go("unusual",{id:a.datail.id})}}]); | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
js/controller/bondController.js
0 → 100644
| 1 | angular.module('myApp') | ||
| 2 | .controller('bondController',['$scope' , '$rootScope', '$state' , 'dingdaService' , '$stateParams' , | ||
| 3 | function($scope,$rootScope,$state,dingdaService,$stateParams){ | ||
| 4 | $scope.goPay = function(){ | ||
| 5 | $state.go('bondPay'); | ||
| 6 | } | ||
| 7 | |||
| 8 | // function getUrl(name){ | ||
| 9 | // var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)"); | ||
| 10 | // var url = String(window.location); | ||
| 11 | // var arr = url.split('?'); | ||
| 12 | // var str = arr[arr.length-1]; | ||
| 13 | // var r = str.match(reg); | ||
| 14 | // if(r!=null)return unescape(r[2]); return null; | ||
| 15 | // } | ||
| 16 | |||
| 17 | $scope.init = function(){ | ||
| 18 | var latitude = $stateParams.latitude; | ||
| 19 | var longitude = $stateParams.longitude; | ||
| 20 | dingdaService.getBond(longitude,latitude) | ||
| 21 | .success(function(data){ | ||
| 22 | // alert(JSON.stringify(data)) | ||
| 23 | $scope.bondInfo = data.data; | ||
| 24 | $rootScope.toPaid = data.data.toPaid; | ||
| 25 | }).error(function(data){ | ||
| 26 | // alert(JSON.stringify(data)) | ||
| 27 | layer.open({ | ||
| 28 | content: '获取保证金失败,请刷新页面', | ||
| 29 | time:2 | ||
| 30 | }); | ||
| 31 | }) | ||
| 32 | } | ||
| 33 | |||
| 34 | $scope.drawback = function(){ | ||
| 35 | dingdaService.getUnfinishedOrder().success(function(data , status){ | ||
| 36 | if(data.data.unfinishedOrder.id) { | ||
| 37 | |||
| 38 | layer.open({ | ||
| 39 | content: '还有未完成的订单,无法退还保证金', | ||
| 40 | time:2 | ||
| 41 | }); | ||
| 42 | } else { | ||
| 43 | layer.open({ | ||
| 44 | content: '您确定要退还保证金吗?', | ||
| 45 | btn: ['确认', '取消'], | ||
| 46 | shadeClose: false, | ||
| 47 | yes: function(index){ | ||
| 48 | layer.close(index); | ||
| 49 | dingdaService.returnBond() | ||
| 50 | .success(function(data){ | ||
| 51 | console.log(window.localStorage.getItem("IswechatPayment")); | ||
| 52 | //alert(window.localStorage.getItem("IswechatPayment")); | ||
| 53 | window.localStorage.setItem("IswechatPayment","no"); | ||
| 54 | layer.open({ | ||
| 55 | content: '退还成功,保证金七个工作日内退还', | ||
| 56 | time:2 | ||
| 57 | }); | ||
| 58 | $scope.init(); | ||
| 59 | }) | ||
| 60 | .error(function(data){ | ||
| 61 | layer.open({ | ||
| 62 | content: '退还保证金失败', | ||
| 63 | time:2 | ||
| 64 | }); | ||
| 65 | }) | ||
| 66 | },no: function(index){ | ||
| 67 | layer.close(index); | ||
| 68 | } | ||
| 69 | }); | ||
| 70 | } | ||
| 71 | }) | ||
| 72 | } | ||
| 73 | |||
| 74 | }]) | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
js/controller/bondPayController.js
0 → 100644
| 1 | angular.module('myApp') | ||
| 2 | .controller('bondPayController',['$scope', '$rootScope', '$state', 'wechatPayment', | ||
| 3 | function($scope,$rootScope,$state, wechatPayment){ | ||
| 4 | |||
| 5 | if(!$rootScope.toPaid){ | ||
| 6 | $state.go('bond'); | ||
| 7 | } | ||
| 8 | // 支付保证金 | ||
| 9 | var ispay = false; | ||
| 10 | $scope.goPay = function(){ | ||
| 11 | if(ispay) return; | ||
| 12 | ispay = true; | ||
| 13 | var IswechatPayment= window.localStorage.getItem("IswechatPayment"); | ||
| 14 | |||
| 15 | if (IswechatPayment== undefined || IswechatPayment == "no") { | ||
| 16 | |||
| 17 | wechatPayment.callDepositPay($rootScope.toPaid) | ||
| 18 | .then(function (result) { | ||
| 19 | ispay = false; | ||
| 20 | //支付成功 | ||
| 21 | // alert(window.localStorage.getItem("IswechatPayment")); | ||
| 22 | window.localStorage.setItem("IswechatPayment", "yes") | ||
| 23 | $state.go('bondSuccess'); | ||
| 24 | }, function (errMsg) { | ||
| 25 | ispay = false; | ||
| 26 | window.localStorage.setItem("IswechatPayment", "no") | ||
| 27 | //支付失败 | ||
| 28 | }) | ||
| 29 | } | ||
| 30 | } | ||
| 31 | |||
| 32 | |||
| 33 | |||
| 34 | }]) | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
js/controller/bondSuccessController.js
0 → 100644
js/controller/contactController.js
0 → 100644
| 1 | angular.module('myApp') | ||
| 2 | .controller('contactController',['$scope','$rootScope','dingdaService','$state','globalService',function($scope,$rootScope,dingdaService,$state,globalService){ | ||
| 3 | |||
| 4 | $scope.contactList = []; | ||
| 5 | |||
| 6 | var init = function() { | ||
| 7 | // globalService.init(); | ||
| 8 | $scope.contactList.push({ | ||
| 9 | name : "浙江省" , | ||
| 10 | phone : "0571-8677567" | ||
| 11 | }) | ||
| 12 | $scope.contactList.push({ | ||
| 13 | name : "浙江省" , | ||
| 14 | phone : "0571-8677567" | ||
| 15 | }) | ||
| 16 | $scope.contactList.push({ | ||
| 17 | name : "浙江省" , | ||
| 18 | phone : "0571-8677567" | ||
| 19 | }) | ||
| 20 | $scope.contactList.push({ | ||
| 21 | name : "浙江省" , | ||
| 22 | phone : "0571-8677567" | ||
| 23 | }) | ||
| 24 | $scope.contactList.push({ | ||
| 25 | name : "浙江省" , | ||
| 26 | phone : "0571-8677567" | ||
| 27 | }) | ||
| 28 | $scope.contactList.push({ | ||
| 29 | name : "浙江省" , | ||
| 30 | phone : "0571-8677567" | ||
| 31 | }) | ||
| 32 | $scope.contactList.push({ | ||
| 33 | name : "浙江省" , | ||
| 34 | phone : "0571-8677567" | ||
| 35 | }) | ||
| 36 | $scope.contactList.push({ | ||
| 37 | name : "浙江省" , | ||
| 38 | phone : "0571-8677567" | ||
| 39 | }) | ||
| 40 | $scope.contactList.push({ | ||
| 41 | name : "浙江省" , | ||
| 42 | phone : "0571-8677567" | ||
| 43 | }) | ||
| 44 | $scope.contactList.push({ | ||
| 45 | name : "浙江省" , | ||
| 46 | phone : "0571-8677567" | ||
| 47 | }) | ||
| 48 | $scope.contactList.push({ | ||
| 49 | name : "浙江省" , | ||
| 50 | phone : "0571-8677567" | ||
| 51 | }) | ||
| 52 | } | ||
| 53 | |||
| 54 | // mui.init(); | ||
| 55 | init(); | ||
| 56 | }]); | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
js/controller/loginController.js
0 → 100644
| 1 | angular.module('myApp') | ||
| 2 | .controller('loginController',[ '$scope','$rootScope','dingdaService','globalService' ,function($scope,$rootScope,dingdaService,globalService){ | ||
| 3 | var init = function(){ | ||
| 4 | $scope.phoneNumberVal=''; | ||
| 5 | $scope.validationVal= ''; | ||
| 6 | |||
| 7 | $(".phoneNumber").focus(function(){ | ||
| 8 | $(".phoneNumber").css('border','1px solid #36d1e7'); | ||
| 9 | }) | ||
| 10 | $(".phoneNumber").blur(function(){ | ||
| 11 | $(".phoneNumber").css('border','1px solid rgba(0,0,0,.2)'); | ||
| 12 | }) | ||
| 13 | $(".validationInput").focus(function(){ | ||
| 14 | $(".validationInput").css('border','1px solid #36d1e7'); | ||
| 15 | }) | ||
| 16 | $(".validationInput").blur(function(){ | ||
| 17 | $(".validationInput").css('border','1px solid rgba(0,0,0,.2)'); | ||
| 18 | }) | ||
| 19 | |||
| 20 | |||
| 21 | } | ||
| 22 | |||
| 23 | function getUrl(name){ | ||
| 24 | var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)"); | ||
| 25 | var r = window.location.search.substr(1).match(reg); | ||
| 26 | if(r!=null)return unescape(r[2]); return null; | ||
| 27 | } | ||
| 28 | init(); | ||
| 29 | var countdown = function(){ | ||
| 30 | var wait=60; | ||
| 31 | function time(o) { | ||
| 32 | if (wait == 0) { | ||
| 33 | o.removeAttribute("disabled"); | ||
| 34 | o.value="重发"; | ||
| 35 | wait = 60; | ||
| 36 | $('.ValidationBtn').html(o.value); | ||
| 37 | $('.ValidationBtn').css('background','#36d1e7'); | ||
| 38 | } else { | ||
| 39 | o.setAttribute("disabled", true); | ||
| 40 | o.value=wait + "秒"; | ||
| 41 | wait--; | ||
| 42 | $('.ValidationBtn').html(o.value); | ||
| 43 | if(wait!=0){ | ||
| 44 | $('.ValidationBtn').css('background','#ccc'); | ||
| 45 | } | ||
| 46 | setTimeout(function() { | ||
| 47 | time(o); | ||
| 48 | },1000) | ||
| 49 | } | ||
| 50 | } | ||
| 51 | time($('.ValidationBtn').get(0)); | ||
| 52 | } | ||
| 53 | |||
| 54 | $scope.Validation = function(){ | ||
| 55 | if($scope.phoneNumberVal==""){ | ||
| 56 | layer.open({ | ||
| 57 | content: '手机号码不能为空', | ||
| 58 | time:2 | ||
| 59 | }); | ||
| 60 | return | ||
| 61 | } | ||
| 62 | var reg = /^0?1[3|4|5|7|8][0-9]\d{8}$/; | ||
| 63 | if(!reg.test($scope.phoneNumberVal)){ | ||
| 64 | layer.open({ | ||
| 65 | content: '手机号码格式不对', | ||
| 66 | time:2 | ||
| 67 | }); | ||
| 68 | return | ||
| 69 | } | ||
| 70 | countdown(); | ||
| 71 | var res = dingdaService.sendPhoneCode($scope.phoneNumberVal , getUrl("openId")); | ||
| 72 | res.success(function(data){ | ||
| 73 | console.log(data); | ||
| 74 | }) | ||
| 75 | .error(function(){ | ||
| 76 | console.log('error'); | ||
| 77 | }) | ||
| 78 | |||
| 79 | } | ||
| 80 | |||
| 81 | $scope.login= function(){ | ||
| 82 | if($scope.phoneNumberVal==""){ | ||
| 83 | layer.open({ | ||
| 84 | content: '手机号码不能为空', | ||
| 85 | time:2 | ||
| 86 | }); | ||
| 87 | return | ||
| 88 | } | ||
| 89 | var reg = /^0?1[3|4|5|7|8][0-9]\d{8}$/; | ||
| 90 | if(!reg.test($scope.phoneNumberVal)){ | ||
| 91 | layer.open({ | ||
| 92 | content: '手机号码格式不对', | ||
| 93 | time:2 | ||
| 94 | }); | ||
| 95 | return | ||
| 96 | } | ||
| 97 | |||
| 98 | if($scope.validationVal==''){ | ||
| 99 | layer.open({ | ||
| 100 | content: '请输入验证码', | ||
| 101 | time:2 | ||
| 102 | }); | ||
| 103 | return | ||
| 104 | } | ||
| 105 | $scope.validationVal = "" + $scope.validationVal; | ||
| 106 | if($scope.validationVal.length != 4){ | ||
| 107 | layer.open({ | ||
| 108 | content: '验证码位数不对', | ||
| 109 | time:2 | ||
| 110 | }); | ||
| 111 | return | ||
| 112 | } | ||
| 113 | |||
| 114 | var res = dingdaService.verifyPhoneCode($scope.phoneNumberVal , $scope.validationVal).success(function(data){ | ||
| 115 | if (data.meta.code == 200) { | ||
| 116 | data.data.userName = $scope.phoneNumberVal; | ||
| 117 | globalService.saveData('user',data.data); | ||
| 118 | window.history.back(); | ||
| 119 | layer.open({ | ||
| 120 | content: '登录成功', | ||
| 121 | time:1 | ||
| 122 | }); | ||
| 123 | setTimeout(function() { | ||
| 124 | location.reload(); | ||
| 125 | } , 300); | ||
| 126 | } else if (data.meta.code == 401) { | ||
| 127 | layer.open({ | ||
| 128 | content: data.meta.message, | ||
| 129 | time:1 | ||
| 130 | }); | ||
| 131 | // alert(data.meta.message); | ||
| 132 | // layer.msg(data.data.error); | ||
| 133 | return; | ||
| 134 | } | ||
| 135 | }).error(function(){ | ||
| 136 | layer.open({ | ||
| 137 | content: '登录失败', | ||
| 138 | time:1 | ||
| 139 | }); | ||
| 140 | }) | ||
| 141 | |||
| 142 | } | ||
| 143 | |||
| 144 | $scope.$watch('validationVal',function(newVal,old){ | ||
| 145 | if(newVal){ | ||
| 146 | if($scope.validationVa!="" && !isNaN($scope.validationVal) && $scope.validationVal.toString().length==4){ | ||
| 147 | $('.loginBtn').addClass('btnBg'); | ||
| 148 | }else{ | ||
| 149 | $('.loginBtn').removeClass('btnBg'); | ||
| 150 | } | ||
| 151 | } | ||
| 152 | }) | ||
| 153 | |||
| 154 | // $(window).bind("load resize",function(){ | ||
| 155 | // $(".loginBox").css({zoom:$(window).width()/320,visibility:"visible"}); | ||
| 156 | // }); | ||
| 157 | }]) | ||
| 158 | |||
| 159 | |||
| 160 | |||
| 161 | |||
| 162 | |||
| 163 | |||
| 164 | |||
| 165 | |||
| 166 | |||
| 167 | |||
| 168 | |||
| 169 | |||
| 170 | |||
| 171 | |||
| 172 | |||
| 173 | |||
| 174 | |||
| 175 | |||
| 176 | |||
| 177 | |||
| 178 | |||
| 179 | |||
| 180 | |||
| 181 | |||
| 182 | |||
| 183 | |||
| 184 | |||
| 185 | |||
| 186 | |||
| 187 | |||
| 188 | |||
| 189 | |||
| 190 | |||
| 191 | |||
| 192 | |||
| 193 | |||
| 194 | |||
| 195 | |||
| 196 | |||
| 197 | |||
| 198 | |||
| 199 |
js/controller/mainController.js
0 → 100644
| 1 | angular.module('myApp') | ||
| 2 | .controller('mainController',['$scope','$rootScope','dingdaService','$state','globalService',function($scope,$rootScope,dingdaService,$state,globalService){ | ||
| 3 | |||
| 4 | $rootScope.isRendBike = false; | ||
| 5 | $rootScope.isLoadFinish = false; | ||
| 6 | $scope.unfinishOrder = {}; | ||
| 7 | |||
| 8 | var init = function() { | ||
| 9 | // globalService.init(); | ||
| 10 | $scope.userinfo = globalService.getData("user"); | ||
| 11 | if(!$scope.userinfo) { | ||
| 12 | $scope.userinfo = {}; | ||
| 13 | $scope.userinfo.userName = "未登录"; | ||
| 14 | $scope.userinfo.loginState = false; | ||
| 15 | } else { | ||
| 16 | $scope.userinfo.loginState = true; | ||
| 17 | // alert("getUnfinishedOrder") | ||
| 18 | dingdaService.getUnfinishedOrder().success(function(data , status){ | ||
| 19 | // alert(JSON.stringify(data)) | ||
| 20 | if(data.data.unfinishedOrder.id) { | ||
| 21 | $rootScope.isRendBike = true; | ||
| 22 | $scope.unfinishOrder = data.data.unfinishedOrder; | ||
| 23 | } | ||
| 24 | if(data.data.unfinishedOrder.status == 200) { | ||
| 25 | layer.open({ | ||
| 26 | content: '您有未支付的订单,是否前往支付?', | ||
| 27 | btn: ['确认', '取消'], | ||
| 28 | shadeClose: false, | ||
| 29 | yes: function(index){ | ||
| 30 | layer.close(index); | ||
| 31 | $state.go('tripDetail' , { orderId : $scope.unfinishOrder.id}); | ||
| 32 | return; | ||
| 33 | },no: function(index){ | ||
| 34 | layer.close(index); | ||
| 35 | } | ||
| 36 | }); | ||
| 37 | } | ||
| 38 | }).error(function(data , status) { | ||
| 39 | console.log(JSON.stringify(data)) | ||
| 40 | }) | ||
| 41 | } | ||
| 42 | $scope.moduleList = []; | ||
| 43 | $scope.moduleList.push({ | ||
| 44 | name : "行程记录", | ||
| 45 | icon : "images/trip.png", | ||
| 46 | state : "trip" | ||
| 47 | }); | ||
| 48 | $scope.moduleList.push({ | ||
| 49 | name : "钱包", | ||
| 50 | icon : "images/wallet.png", | ||
| 51 | state : "wallet" | ||
| 52 | }); | ||
| 53 | $scope.moduleList.push({ | ||
| 54 | name : "保证金", | ||
| 55 | icon : "images/bond.png", | ||
| 56 | state : "bond" | ||
| 57 | }); | ||
| 58 | $scope.moduleList.push({ | ||
| 59 | name : "联系我们", | ||
| 60 | icon : "images/contact.png", | ||
| 61 | state : "contact" | ||
| 62 | }); | ||
| 63 | $scope.moduleList.push({ | ||
| 64 | name : "意见反馈", | ||
| 65 | icon : "images/opinion.png", | ||
| 66 | state : "opinion" | ||
| 67 | }); | ||
| 68 | } | ||
| 69 | |||
| 70 | $scope.doAction = function(index) { | ||
| 71 | if($scope.checkLogin()) { | ||
| 72 | var arg = {}; | ||
| 73 | if(index == 2 || index == 4) { | ||
| 74 | arg = {longitude: $rootScope.currentPoint.longitude , latitude: $rootScope.currentPoint.latitude }; | ||
| 75 | } | ||
| 76 | if(index == 3) { | ||
| 77 | location.href = "http://wx.dy.dingdatech.com/contactUs.html"; | ||
| 78 | } else { | ||
| 79 | $state.go($scope.moduleList[index].state, arg); | ||
| 80 | } | ||
| 81 | } | ||
| 82 | } | ||
| 83 | |||
| 84 | $scope.checkLogin = function() { | ||
| 85 | if(!globalService.getData("user")) { | ||
| 86 | $state.go('login', {}, {reload: true}); | ||
| 87 | return false; | ||
| 88 | } | ||
| 89 | return true; | ||
| 90 | } | ||
| 91 | |||
| 92 | $scope.logout = function() { | ||
| 93 | $scope.userinfo = {}; | ||
| 94 | $scope.userinfo.userName = "未登录"; | ||
| 95 | $scope.userinfo.loginState = false; | ||
| 96 | globalService.clearData("user"); | ||
| 97 | location.reload() | ||
| 98 | } | ||
| 99 | |||
| 100 | var initScan = function() { | ||
| 101 | $rootScope.openScan = false; | ||
| 102 | $rootScope.openDetail = false; | ||
| 103 | $rootScope.openMenu = false; | ||
| 104 | $rootScope.openRing = false; | ||
| 105 | $rootScope.$watch("openScan",function(newVal, oldVal){ | ||
| 106 | if(newVal !== oldVal && newVal) { | ||
| 107 | if(!$scope.checkLogin()) { | ||
| 108 | return; | ||
| 109 | } | ||
| 110 | |||
| 111 | if($scope.unfinishOrder.status == 200) { | ||
| 112 | $state.go('tripDetail' , { orderId : $scope.unfinishOrder.id}); | ||
| 113 | return; | ||
| 114 | } | ||
| 115 | $rootScope.openScan = false; | ||
| 116 | wx.scanQRCode({ | ||
| 117 | needResult: 1, // 默认为1,扫描结果由微信处理,1则直接返回扫描结果, | ||
| 118 | scanType: ["qrCode","barCode"], // 可以指定扫二维码还是一维码,默认二者都有 | ||
| 119 | success: function (res) { | ||
| 120 | var result = res.resultStr; // 当needResult 为 1 时,扫码返回的结果 | ||
| 121 | // alert(result); | ||
| 122 | dingdaService.verifyScanCode(result).success(function(data , status){ | ||
| 123 | // alert(JSON.stringify(data)) | ||
| 124 | if(data.meta.code == 200) { | ||
| 125 | if(data.data.orderDetail.id) { | ||
| 126 | |||
| 127 | layer.open({ | ||
| 128 | content: "租车成功,订单号为:" + data.data.orderDetail.id, | ||
| 129 | time:2 | ||
| 130 | }); | ||
| 131 | // alert("租车成功,订单号为:" + data.data.orderDetail.id); | ||
| 132 | $rootScope.isRendBike = true; | ||
| 133 | |||
| 134 | $state.go('rentDetail', {}, {reload: true}); | ||
| 135 | |||
| 136 | } | ||
| 137 | } else if(data.meta.code == 202) { | ||
| 138 | layer.open({ | ||
| 139 | content: data.meta.message, | ||
| 140 | time:2 | ||
| 141 | }); | ||
| 142 | $state.go('bond', {longitude: $rootScope.currentPoint.longitude , latitude: $rootScope.currentPoint.latitude }); | ||
| 143 | } else { | ||
| 144 | layer.open({ | ||
| 145 | content: data.meta.message, | ||
| 146 | time:2 | ||
| 147 | }); | ||
| 148 | } | ||
| 149 | }).error(function(data , status){ | ||
| 150 | layer.open({ | ||
| 151 | content: "租车失败" + JSON.stringify(data), | ||
| 152 | time:2 | ||
| 153 | }); | ||
| 154 | }); | ||
| 155 | } | ||
| 156 | }); | ||
| 157 | } | ||
| 158 | }) | ||
| 159 | $rootScope.$watch("openDetail",function(newVal, oldVal){ | ||
| 160 | if(newVal === oldVal) return; | ||
| 161 | |||
| 162 | if(newVal) { | ||
| 163 | dingdaService.getUnfinishedOrder().success(function(data , status){ | ||
| 164 | if(data.meta.code == 200) { | ||
| 165 | if(!data.data.unfinishedOrder.id) { | ||
| 166 | layer.open({ | ||
| 167 | content: '租车完成', | ||
| 168 | time:2 | ||
| 169 | }); | ||
| 170 | // alert("租车完成") | ||
| 171 | $state.go('main'); | ||
| 172 | } | ||
| 173 | } | ||
| 174 | |||
| 175 | if(data.data.unfinishedOrder.status == 200) { | ||
| 176 | $state.go('tripDetail' , { orderId : data.data.unfinishedOrder.id}); | ||
| 177 | } else { | ||
| 178 | $state.go('rentDetail', {}, {reload: true}); | ||
| 179 | } | ||
| 180 | }).error(function(data , status) { | ||
| 181 | console.log(JSON.stringify(data)) | ||
| 182 | }) | ||
| 183 | |||
| 184 | } | ||
| 185 | }) | ||
| 186 | $rootScope.$watch("openRing",function(newVal, oldVal){ | ||
| 187 | // TODO open new message | ||
| 188 | }) | ||
| 189 | $rootScope.$watch("isLoadFinish" , function(newVal , oldVal){ | ||
| 190 | if(newVal === oldVal) return; | ||
| 191 | if(newVal) { | ||
| 192 | document.getElementById("sliderMenu").style.display = "block"; | ||
| 193 | } | ||
| 194 | }) | ||
| 195 | |||
| 196 | document.getElementById("sliderMenu").addEventListener("touchmove", function(){ | ||
| 197 | return; | ||
| 198 | } , false); | ||
| 199 | } | ||
| 200 | |||
| 201 | // mui.init(); | ||
| 202 | initScan(); | ||
| 203 | init(); | ||
| 204 | |||
| 205 | |||
| 206 | }]); |
js/controller/mainController.min.js
0 → 100644
| 1 | angular.module("myApp").controller("mainController",["$scope","$rootScope","dingdaService","$state","globalService",function(a,b,f,d,g){b.isRendBike=!1;b.isLoadFinish=!1;a.unfinishOrder={};a.doAction=function(c){if(a.checkLogin()){var e={};if(2==c||4==c)e={longitude:b.currentPoint.longitude,latitude:b.currentPoint.latitude};3==c?location.href="http://wx.dy.dingdatech.com/contactUs.html":d.go(a.moduleList[c].state,e)}};a.checkLogin=function(){return g.getData("user")?!0:(d.go("login",{},{reload:!0}),!1)};a.logout=function(){a.userinfo={};a.userinfo.userName="\u672a\u767b\u5f55";a.userinfo.loginState=!1;g.clearData("user");location.reload()};(function(){b.openScan=!1;b.openDetail=!1;b.openMenu=!1;b.openRing=!1;b.$watch("openScan",function(c,e){c!==e&&c&&a.checkLogin()&&(200==a.unfinishOrder.status?d.go("tripDetail",{orderId:a.unfinishOrder.id}):(b.openScan=!1,wx.scanQRCode({needResult:1,scanType:["qrCode","barCode"],success:function(a){f.verifyScanCode(a.resultStr).success(function(a,c){200==a.meta.code?a.data.orderDetail.id&&(layer.open({content:"\u79df\u8f66\u6210\u529f\uff0c\u8ba2\u5355\u53f7\u4e3a\uff1a"+a.data.orderDetail.id,time:2}),b.isRendBike=!0,d.go("rentDetail",{},{reload:!0})):202==a.meta.code?(layer.open({content:a.meta.message,time:2}),d.go("bond",{longitude:b.currentPoint.longitude,latitude:b.currentPoint.latitude})):layer.open({content:a.meta.message,time:2})}).error(function(a,c){layer.open({content:"\u79df\u8f66\u5931\u8d25"+JSON.stringify(a),time:2})})}})))});b.$watch("openDetail",function(a,b){a!==b&&a&&f.getUnfinishedOrder().success(function(a,b){200!=a.meta.code||a.data.unfinishedOrder.id||(layer.open({content:"\u79df\u8f66\u5b8c\u6210",time:2}),d.go("main"));200==a.data.unfinishedOrder.status?d.go("tripDetail",{orderId:a.data.unfinishedOrder.id}):d.go("rentDetail",{},{reload:!0})}).error(function(a,b){console.log(JSON.stringify(a))})});b.$watch("openRing",function(a,b){});b.$watch("isLoadFinish",function(a,b){a!==b&&a&&(document.getElementById("sliderMenu").style.display="block")});document.getElementById("sliderMenu").addEventListener("touchmove",function(){},!1)})();(function(){a.userinfo=g.getData("user");a.userinfo?(a.userinfo.loginState=!0,f.getUnfinishedOrder().success(function(c,e){c.data.unfinishedOrder.id&&(b.isRendBike=!0,a.unfinishOrder=c.data.unfinishedOrder);200==c.data.unfinishedOrder.status&&layer.open({content:"\u60a8\u6709\u672a\u652f\u4ed8\u7684\u8ba2\u5355\uff0c\u662f\u5426\u524d\u5f80\u652f\u4ed8\uff1f",btn:["\u786e\u8ba4","\u53d6\u6d88"],shadeClose:!1,yes:function(b){layer.close(b);d.go("tripDetail",{orderId:a.unfinishOrder.id})},no:function(a){layer.close(a)}})}).error(function(a,b){console.log(JSON.stringify(a))})):(a.userinfo={},a.userinfo.userName="\u672a\u767b\u5f55",a.userinfo.loginState=!1);a.moduleList=[];a.moduleList.push({name:"\u884c\u7a0b\u8bb0\u5f55",icon:"images/trip.png",state:"trip"});a.moduleList.push({name:"\u94b1\u5305",icon:"images/wallet.png",state:"wallet"});a.moduleList.push({name:"\u4fdd\u8bc1\u91d1",icon:"images/bond.png",state:"bond"});a.moduleList.push({name:"\u8054\u7cfb\u6211\u4eec",icon:"images/contact.png",state:"contact"});a.moduleList.push({name:"\u610f\u89c1\u53cd\u9988",icon:"images/opinion.png",state:"opinion"})})()}]); | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
js/controller/mapController.js
0 → 100644
| 1 | angular.module('myApp') | ||
| 2 | .controller('mapController',['$scope','$rootScope','dingdaService','globalService','$state',function($scope,$rootScope,dingdaService,globalService,$state){ | ||
| 3 | var myMarker; | ||
| 4 | var markers = []; | ||
| 5 | var overlays = []; | ||
| 6 | var walking; | ||
| 7 | var infoControl; | ||
| 8 | var scanControl; | ||
| 9 | var map; | ||
| 10 | var endPosition; | ||
| 11 | var polyline; | ||
| 12 | |||
| 13 | $rootScope.currentPoint = {}; | ||
| 14 | |||
| 15 | var rendBike = function() { | ||
| 16 | scanControl.hide(); | ||
| 17 | infoControl.show(); | ||
| 18 | } | ||
| 19 | |||
| 20 | var returnBike = function() { | ||
| 21 | scanControl.show(); | ||
| 22 | infoControl.hide(); | ||
| 23 | } | ||
| 24 | |||
| 25 | $scope.$watch("isRendBike",function(newVal, oldVal){ | ||
| 26 | if(newVal === oldVal){ | ||
| 27 | return; | ||
| 28 | } | ||
| 29 | if(newVal) { | ||
| 30 | rendBike(); | ||
| 31 | } else { | ||
| 32 | returnBike(); | ||
| 33 | } | ||
| 34 | }) | ||
| 35 | |||
| 36 | var initMap = function() { | ||
| 37 | map = new BMap.Map("mapContainer"); | ||
| 38 | map.centerAndZoom(new BMap.Point(120.124421, 30.279879), 15); | ||
| 39 | |||
| 40 | map.addEventListener("click", function() { | ||
| 41 | |||
| 42 | for(var i = 0 ; i < overlays.length ; i++) { | ||
| 43 | overlays[i].hide(); | ||
| 44 | } | ||
| 45 | $scope.$apply(function() { | ||
| 46 | $rootScope.openMenu = false; | ||
| 47 | }) | ||
| 48 | }); | ||
| 49 | initMapControl(map); | ||
| 50 | } | ||
| 51 | |||
| 52 | var onSearchComplete = function(result) { | ||
| 53 | map.removeOverlay(polyline); | ||
| 54 | var route = result.tr[0].ek[0].vr; | ||
| 55 | route.unshift(myMarker.position); | ||
| 56 | route.push(endPosition) | ||
| 57 | polyline = new BMap.Polyline(route); | ||
| 58 | polyline.setStrokeColor("#36D1E7"); | ||
| 59 | polyline.setStrokeOpacity(1); | ||
| 60 | polyline.setStrokeWeight(3); | ||
| 61 | polyline.setStrokeStyle("solid"); | ||
| 62 | map.addOverlay(polyline); | ||
| 63 | } | ||
| 64 | |||
| 65 | var initMarker = function(point) { | ||
| 66 | map.setCenter(point); | ||
| 67 | walking = new BMap.WalkingRoute(map, {renderOptions:{map: null, autoViewport: true}}) | ||
| 68 | walking.setSearchCompleteCallback(onSearchComplete); | ||
| 69 | initMyMarker(point , map); | ||
| 70 | refreshNewPoints(point); | ||
| 71 | } | ||
| 72 | |||
| 73 | var refreshNewPoints = function(point) { | ||
| 74 | |||
| 75 | // if(!globalService.getData('user').token) { | ||
| 76 | // return; | ||
| 77 | // } | ||
| 78 | |||
| 79 | dingdaService.getStationList(point.lng , point.lat).success(function(data , status) { | ||
| 80 | // dingdaService.getStationList(120.18893141 , 30.2284141).success(function(data , status) { | ||
| 81 | // alert(JSON.stringify(data)) | ||
| 82 | // console.log(JSON.stringify(data)) | ||
| 83 | initMarkers(data.data.stationLists , map); | ||
| 84 | }).error(function(data , status) { | ||
| 85 | |||
| 86 | }) | ||
| 87 | } | ||
| 88 | |||
| 89 | var initMyMarker = function(point , map) { | ||
| 90 | |||
| 91 | $rootScope.isLoadFinish = true; | ||
| 92 | myMarker = new MyMark(point); | ||
| 93 | map.addOverlay(myMarker); | ||
| 94 | } | ||
| 95 | |||
| 96 | var initMarkers = function(points , map) { | ||
| 97 | for(var i = 0 ; i < markers.length ; i++) { | ||
| 98 | // document.getElementById("mapContainer").removeChild(markers[i].div); | ||
| 99 | map.removeOverlay(markers[i]); | ||
| 100 | markers[i].div.parentElement.removeChild(markers[i].div); | ||
| 101 | // document.getElementById("mapContainer").removeChild(overlays[i].div); | ||
| 102 | map.removeOverlay(overlays[i]); | ||
| 103 | overlays[i].div.parentElement.removeChild(overlays[i].div); | ||
| 104 | } | ||
| 105 | markers = []; | ||
| 106 | overlays = []; | ||
| 107 | for(var i = 0 ; i < points.length ; i++) { | ||
| 108 | var marker = new SiteOverlay(new BMap.Point(points[i].longitude, points[i].latitude) , i , points[i]); | ||
| 109 | map.addOverlay(marker); | ||
| 110 | markers.push(marker); | ||
| 111 | } | ||
| 112 | |||
| 113 | } | ||
| 114 | |||
| 115 | function RelocateControl(){ | ||
| 116 | this.defaultAnchor = BMAP_ANCHOR_BOTTOM_LEFT; | ||
| 117 | this.defaultOffset = new BMap.Size(0, 0); | ||
| 118 | } | ||
| 119 | |||
| 120 | function ScanControl(){ | ||
| 121 | this.defaultAnchor = BMAP_ANCHOR_BOTTOM_LEFT; | ||
| 122 | this.defaultOffset = new BMap.Size(0, 0); | ||
| 123 | } | ||
| 124 | |||
| 125 | function InfoControl(){ | ||
| 126 | this.defaultAnchor = BMAP_ANCHOR_BOTTOM_LEFT; | ||
| 127 | this.defaultOffset = new BMap.Size(0, 0); | ||
| 128 | } | ||
| 129 | |||
| 130 | function MenuControl(){ | ||
| 131 | this.defaultAnchor = BMAP_ANCHOR_TOP_LEFT; | ||
| 132 | this.defaultOffset = new BMap.Size(0, 13); | ||
| 133 | } | ||
| 134 | |||
| 135 | function RingControl(){ | ||
| 136 | this.defaultAnchor = BMAP_ANCHOR_TOP_LEFT; | ||
| 137 | this.defaultOffset = new BMap.Size(0, 66); | ||
| 138 | } | ||
| 139 | |||
| 140 | var initMapControl = function(map) { | ||
| 141 | ScanControl.prototype = new BMap.Control(); | ||
| 142 | ScanControl.prototype.initialize = function(map){ | ||
| 143 | var scanControl = document.createElement("div"); | ||
| 144 | scanControl.className = "scanControl"; | ||
| 145 | |||
| 146 | var scanControlContainer = document.createElement("div"); | ||
| 147 | scanControlContainer.className = "scanControlContainer"; | ||
| 148 | |||
| 149 | var scanControlContent = document.createElement("div"); | ||
| 150 | scanControlContent.className = "scanControlContent"; | ||
| 151 | |||
| 152 | var img = document.createElement("img"); | ||
| 153 | img.className = "spanResize"; | ||
| 154 | img.src = "images/scancode.png"; | ||
| 155 | |||
| 156 | scanControlContent.innerHTML = img.outerHTML + " 扫码租车"; | ||
| 157 | |||
| 158 | scanControlContainer.onclick = function() { | ||
| 159 | $scope.$apply(function() { | ||
| 160 | $rootScope.openScan = true; | ||
| 161 | }) | ||
| 162 | } | ||
| 163 | scanControlContainer.appendChild(scanControlContent); | ||
| 164 | scanControl.appendChild(scanControlContainer); | ||
| 165 | |||
| 166 | map.getContainer().appendChild(scanControl); | ||
| 167 | return scanControl; | ||
| 168 | } | ||
| 169 | scanControl = new ScanControl(); | ||
| 170 | map.addControl(scanControl); | ||
| 171 | |||
| 172 | InfoControl.prototype = new BMap.Control(); | ||
| 173 | InfoControl.prototype.initialize = function(map){ | ||
| 174 | var infoControl = document.createElement("div"); | ||
| 175 | infoControl.className = "scanControl"; | ||
| 176 | |||
| 177 | var infoControlContainer = document.createElement("div"); | ||
| 178 | infoControlContainer.className = "scanControlContainer"; | ||
| 179 | |||
| 180 | var infoControlContent = document.createElement("div"); | ||
| 181 | infoControlContent.className = "scanControlContent"; | ||
| 182 | |||
| 183 | var img = document.createElement("img"); | ||
| 184 | img.className = "spanResize"; | ||
| 185 | img.src = "images/details.png"; | ||
| 186 | |||
| 187 | infoControlContent.innerHTML = img.outerHTML + " 租车详情"; | ||
| 188 | |||
| 189 | infoControlContainer.onclick = function() { | ||
| 190 | $scope.$apply(function() { | ||
| 191 | $rootScope.openDetail = true; | ||
| 192 | }) | ||
| 193 | } | ||
| 194 | infoControlContainer.appendChild(infoControlContent); | ||
| 195 | infoControl.appendChild(infoControlContainer); | ||
| 196 | |||
| 197 | map.getContainer().appendChild(infoControl); | ||
| 198 | return infoControl; | ||
| 199 | } | ||
| 200 | infoControl = new InfoControl(); | ||
| 201 | map.addControl(infoControl); | ||
| 202 | infoControl.hide(); | ||
| 203 | |||
| 204 | RelocateControl.prototype = new BMap.Control(); | ||
| 205 | RelocateControl.prototype.initialize = function(map){ | ||
| 206 | var relocateControl = document.createElement("div"); | ||
| 207 | relocateControl.className = "locateControlContainer"; | ||
| 208 | relocateControl.index = 1; | ||
| 209 | |||
| 210 | var relocateControlContent = document.createElement("div"); | ||
| 211 | relocateControlContent.className = "locateControlContent"; | ||
| 212 | var relocateControlContentCenter = document.createElement("div"); | ||
| 213 | relocateControlContentCenter.className = "locateControlContentCenter"; | ||
| 214 | relocateControlContent.appendChild(relocateControlContentCenter); | ||
| 215 | relocateControl.appendChild(relocateControlContent); | ||
| 216 | |||
| 217 | relocateControl.onclick = function() { | ||
| 218 | map.panTo(myMarker.position); | ||
| 219 | map.setZoom(15); | ||
| 220 | } | ||
| 221 | map.getContainer().appendChild(relocateControl); | ||
| 222 | return relocateControl; | ||
| 223 | } | ||
| 224 | var relocateControl = new RelocateControl(); | ||
| 225 | map.addControl(relocateControl); | ||
| 226 | |||
| 227 | |||
| 228 | MenuControl.prototype = new BMap.Control(); | ||
| 229 | MenuControl.prototype.initialize = function(map){ | ||
| 230 | var menuControl = document.createElement("div"); | ||
| 231 | menuControl.className = "menuControl"; | ||
| 232 | menuControl.index = 1; | ||
| 233 | |||
| 234 | var menuControlContent = document.createElement("img"); | ||
| 235 | menuControlContent.src = "images/me.png"; | ||
| 236 | |||
| 237 | menuControl.appendChild(menuControlContent); | ||
| 238 | |||
| 239 | menuControl.onclick = function() { | ||
| 240 | $scope.$apply(function() { | ||
| 241 | // alert(!globalService.getData("user")) | ||
| 242 | if(!globalService.getData("user")) { | ||
| 243 | $state.go('login'); | ||
| 244 | return; | ||
| 245 | } | ||
| 246 | $rootScope.openMenu = !$rootScope.openMenu; | ||
| 247 | }) | ||
| 248 | } | ||
| 249 | map.getContainer().appendChild(menuControl); | ||
| 250 | return menuControl; | ||
| 251 | } | ||
| 252 | var menuControl = new MenuControl(); | ||
| 253 | map.addControl(menuControl); | ||
| 254 | |||
| 255 | RingControl.prototype = new BMap.Control(); | ||
| 256 | RingControl.prototype.initialize = function(map){ | ||
| 257 | var ringControl = document.createElement("div"); | ||
| 258 | ringControl.className = "menuControl"; | ||
| 259 | ringControl.index = 1; | ||
| 260 | |||
| 261 | var ringControlContent = document.createElement("img"); | ||
| 262 | ringControlContent.src = "images/new.png"; | ||
| 263 | |||
| 264 | ringControl.appendChild(ringControlContent); | ||
| 265 | |||
| 266 | ringControl.onclick = function() { | ||
| 267 | $scope.$apply(function() { | ||
| 268 | $rootScope.openRing = !$rootScope.openRing; | ||
| 269 | }) | ||
| 270 | } | ||
| 271 | map.getContainer().appendChild(ringControl); | ||
| 272 | return ringControl; | ||
| 273 | } | ||
| 274 | // var ringControl = new RingControl(); | ||
| 275 | // map.addControl(ringControl); | ||
| 276 | |||
| 277 | var opts = { | ||
| 278 | type: BMAP_NAVIGATION_CONTROL_SMALL, | ||
| 279 | anchor : BMAP_ANCHOR_BOTTOM_RIGHT | ||
| 280 | } | ||
| 281 | map.addControl(new BMap.NavigationControl(opts)); | ||
| 282 | } | ||
| 283 | |||
| 284 | var initLocation = function(isForce) { | ||
| 285 | // var options = { | ||
| 286 | // enableHighAccuracy:true, | ||
| 287 | // maximumAge:1000 | ||
| 288 | // } | ||
| 289 | |||
| 290 | getlocation(); | ||
| 291 | function getlocation() { | ||
| 292 | wx.getLocation({ | ||
| 293 | type: 'gcj02', // 默认为wgs84的gps坐标,如果要返回直接给openLocation用的火星坐标,可传入'gcj02' | ||
| 294 | success: function (res) { | ||
| 295 | onSuccess(res) | ||
| 296 | } | ||
| 297 | }); | ||
| 298 | } | ||
| 299 | |||
| 300 | |||
| 301 | function onSuccess(position){ | ||
| 302 | var longitude = position.longitude; | ||
| 303 | var latitude = position.latitude; | ||
| 304 | $rootScope.currentPoint = { | ||
| 305 | longitude : longitude , | ||
| 306 | latitude : latitude | ||
| 307 | } | ||
| 308 | var convertor = new BMap.Convertor(); | ||
| 309 | var pointArr = []; | ||
| 310 | pointArr.push(new BMap.Point(longitude, latitude)); | ||
| 311 | convertor.translate(pointArr, 3, 5, function(data){ | ||
| 312 | var point = data.points[0]; | ||
| 313 | // var point = new BMap.Point(120.1965, 30.23048); | ||
| 314 | if(!myMarker) { | ||
| 315 | initMarker(point); | ||
| 316 | // setInterval(function(){ | ||
| 317 | // if(!myMarker) return; | ||
| 318 | // getlocation(); | ||
| 319 | //// navigator.geolocation.getCurrentPosition(onSuccess,onError,options); | ||
| 320 | // } , 1000 * 60 * 60); | ||
| 321 | } else { | ||
| 322 | myMarker.position = point; | ||
| 323 | if(isForce) { | ||
| 324 | var map = myMarker.getMap(); | ||
| 325 | map.panTo(point); | ||
| 326 | } | ||
| 327 | refreshNewPoints(point); | ||
| 328 | } | ||
| 329 | }) | ||
| 330 | } | ||
| 331 | |||
| 332 | // function onError(error){ | ||
| 333 | // switch(error.code){ | ||
| 334 | // case 1: | ||
| 335 | // alert("位置服务被拒绝"); | ||
| 336 | // break; | ||
| 337 | // case 2: | ||
| 338 | // alert("暂时获取不到位置信息"); | ||
| 339 | // break; | ||
| 340 | // case 3: | ||
| 341 | // alert("获取信息超时"); | ||
| 342 | // break; | ||
| 343 | // case 4: | ||
| 344 | // alert("未知错误"); | ||
| 345 | // break; | ||
| 346 | // } | ||
| 347 | // initLocation(); | ||
| 348 | // } | ||
| 349 | // if (navigator.geolocation) { | ||
| 350 | // navigator.geolocation.getCurrentPosition(onSuccess,onError,options); | ||
| 351 | // } else { | ||
| 352 | // alert("无法获取地理位置信息"); | ||
| 353 | // } | ||
| 354 | } | ||
| 355 | |||
| 356 | function CustomOverlay(position, index , info) { | ||
| 357 | this.index = index; | ||
| 358 | this.position = position; | ||
| 359 | this.info = info; | ||
| 360 | this.isDisplay = false; | ||
| 361 | } | ||
| 362 | |||
| 363 | function SiteOverlay(position , index , info) { | ||
| 364 | this.index = index; | ||
| 365 | this.position = position; | ||
| 366 | this.info = info; | ||
| 367 | this.isDisplay = true; | ||
| 368 | } | ||
| 369 | |||
| 370 | function MyMark(position) { | ||
| 371 | this.position = position; | ||
| 372 | } | ||
| 373 | |||
| 374 | var initCustomOverlay = function() { | ||
| 375 | CustomOverlay.prototype = new BMap.Overlay(); | ||
| 376 | //定义construct,实现这个接口来初始化自定义的Dom元素 | ||
| 377 | CustomOverlay.prototype.initialize = function(map) { | ||
| 378 | this.map = map; | ||
| 379 | var container = this.div = document.createElement("div"); | ||
| 380 | container.className = "overlayContainer"; | ||
| 381 | |||
| 382 | var leftPanel = document.createElement("div"); | ||
| 383 | leftPanel.className = "overlayPanelLeft"; | ||
| 384 | var leftPanelContentContainer = document.createElement("div"); | ||
| 385 | leftPanelContentContainer.className = "overlayPanelLeftContentContainer"; | ||
| 386 | var leftPanelContent = document.createElement("div"); | ||
| 387 | leftPanelContent.className = "overlayPanelLeftContent"; | ||
| 388 | leftPanelContent.innerText = this.info.name; | ||
| 389 | |||
| 390 | leftPanelContentContainer.appendChild(leftPanelContent); | ||
| 391 | leftPanel.appendChild(leftPanelContentContainer); | ||
| 392 | |||
| 393 | var centerPanel = document.createElement("div"); | ||
| 394 | centerPanel.className = "overlayPanelCenter"; | ||
| 395 | var centerPanelContentTop = document.createElement("div"); | ||
| 396 | centerPanelContentTop.className = "overlayPanelCenterContent overlayPanelCenterContentTop"; | ||
| 397 | if(!$scope.isRendBike) { | ||
| 398 | centerPanelContentTop.className += " act"; | ||
| 399 | } | ||
| 400 | centerPanelContentTop.innerText = "可借:" + this.info.enHireNum; | ||
| 401 | var centerPanelContentBottom = document.createElement("div"); | ||
| 402 | centerPanelContentBottom.className = "overlayPanelCenterContent overlayPanelCenterContentBottom"; | ||
| 403 | if($scope.isRendBike) { | ||
| 404 | centerPanelContentBottom.className += " act"; | ||
| 405 | } | ||
| 406 | centerPanelContentBottom.innerText = "可还:" + this.info.disHireNum; | ||
| 407 | |||
| 408 | centerPanel.appendChild(centerPanelContentTop); | ||
| 409 | centerPanel.appendChild(centerPanelContentBottom); | ||
| 410 | |||
| 411 | var rightPanel = document.createElement("div"); | ||
| 412 | rightPanel.className = "overlayPanelRight"; | ||
| 413 | |||
| 414 | var rightPanelContentContainer = document.createElement("div"); | ||
| 415 | rightPanelContentContainer.className = "overlayPanelRightContentContainer"; | ||
| 416 | var rightPanelContent = document.createElement("div"); | ||
| 417 | rightPanelContent.className = "overlayPanelRightContent"; | ||
| 418 | |||
| 419 | rightPanelContentContainer.appendChild(rightPanelContent); | ||
| 420 | rightPanel.appendChild(rightPanelContentContainer); | ||
| 421 | |||
| 422 | |||
| 423 | var corner = document.createElement("img"); | ||
| 424 | corner.className = "corner"; | ||
| 425 | corner.src = "images/triangle.png" | ||
| 426 | |||
| 427 | leftPanel.appendChild(centerPanel); | ||
| 428 | container.appendChild(leftPanel); | ||
| 429 | container.appendChild(rightPanel); | ||
| 430 | container.appendChild(corner) | ||
| 431 | //将dom添加到覆盖物层 | ||
| 432 | var panes = map.getPanes(); | ||
| 433 | var self = this; | ||
| 434 | |||
| 435 | rightPanel.onclick = function() { | ||
| 436 | walking.clearResults(); | ||
| 437 | walking.search(myMarker.position, self.position); | ||
| 438 | endPosition = self.position; | ||
| 439 | } | ||
| 440 | |||
| 441 | |||
| 442 | rightPanel.addEventListener("touchend", function() { | ||
| 443 | rightPanel.onclick(); | ||
| 444 | |||
| 445 | }); | ||
| 446 | //设置panes的层级,overlayMouseTarget可接收点击事件 | ||
| 447 | panes.labelPane.appendChild(container); | ||
| 448 | |||
| 449 | } | ||
| 450 | //实现draw接口来绘制和更新自定义的dom元素 | ||
| 451 | CustomOverlay.prototype.draw = function() { | ||
| 452 | var pixel = this.map.pointToOverlayPixel(this.position); | ||
| 453 | var divStyle = this.div.style; | ||
| 454 | divStyle.left = pixel.x - 90 + "px"; | ||
| 455 | divStyle.top = pixel.y - 70 + "px"; | ||
| 456 | } | ||
| 457 | |||
| 458 | CustomOverlay.prototype.show = function(info) { | ||
| 459 | if(info) { | ||
| 460 | this.info = info; | ||
| 461 | var topEle = this.div.getElementsByClassName("overlayPanelCenterContentTop"); | ||
| 462 | topEle[0].innerText = "可借:" + info.enHireNum; | ||
| 463 | var bottomEle = this.div.getElementsByClassName("overlayPanelCenterContentBottom"); | ||
| 464 | bottomEle[0].innerText = "可还:" + info.disHireNum; | ||
| 465 | } else { | ||
| 466 | this.div.style.display = "block"; | ||
| 467 | this.isDisplay = true; | ||
| 468 | var topEle = this.div.getElementsByClassName("overlayPanelCenterContentTop"); | ||
| 469 | topEle[0].innerText = "可借:0"; | ||
| 470 | var bottomEle = this.div.getElementsByClassName("overlayPanelCenterContentBottom"); | ||
| 471 | bottomEle[0].innerText = "可还:0"; | ||
| 472 | } | ||
| 473 | |||
| 474 | } | ||
| 475 | |||
| 476 | CustomOverlay.prototype.hide = function() { | ||
| 477 | this.div.style.display = "none"; | ||
| 478 | this.isDisplay = false; | ||
| 479 | } | ||
| 480 | SiteOverlay.prototype = new BMap.Overlay(); | ||
| 481 | //定义construct,实现这个接口来初始化自定义的Dom元素 | ||
| 482 | SiteOverlay.prototype.initialize = function(map) { | ||
| 483 | this.map = map; | ||
| 484 | var container = this.div = document.createElement("div"); | ||
| 485 | container.className = "siteOverlay"; | ||
| 486 | var img = document.createElement("img"); | ||
| 487 | img.src = "images/site.png"; | ||
| 488 | container.appendChild(img); | ||
| 489 | //将dom添加到覆盖物层 | ||
| 490 | var panes = map.getPanes(); | ||
| 491 | |||
| 492 | var self = this; | ||
| 493 | var overlay = new CustomOverlay(self.position, self.index , self.info); | ||
| 494 | overlays.push(overlay); | ||
| 495 | map.addOverlay(overlay); | ||
| 496 | container.onclick = function() { | ||
| 497 | map.panTo(self.position); | ||
| 498 | for(var i = 0 ; i < overlays.length ; i++) { | ||
| 499 | overlays[i].hide(); | ||
| 500 | } | ||
| 501 | if(overlay.isDisplay) { | ||
| 502 | overlay.hide(); | ||
| 503 | } else { | ||
| 504 | setTimeout(function(){ | ||
| 505 | overlay.show(); | ||
| 506 | } , 100); | ||
| 507 | // var t1 = new Date().getTime(); | ||
| 508 | dingdaService.getStationById(self.info.id).success( | ||
| 509 | function(data , status) { | ||
| 510 | // alert(JSON.stringify(data.data) + " , Cost time : " + (new Date().getTime() - t1)) | ||
| 511 | |||
| 512 | setTimeout(function(){ | ||
| 513 | overlay.show(data.data.station); | ||
| 514 | } , 100); | ||
| 515 | } | ||
| 516 | ); | ||
| 517 | |||
| 518 | } | ||
| 519 | |||
| 520 | } | ||
| 521 | |||
| 522 | container.addEventListener("touchend", function() { | ||
| 523 | container.onclick(); | ||
| 524 | }); | ||
| 525 | //设置panes的层级,overlayMouseTarget可接收点击事件 | ||
| 526 | panes.labelPane.appendChild(container); | ||
| 527 | |||
| 528 | } | ||
| 529 | //实现draw接口来绘制和更新自定义的dom元素 | ||
| 530 | SiteOverlay.prototype.draw = function() { | ||
| 531 | var pixel = this.map.pointToOverlayPixel(this.position); | ||
| 532 | // alert(JSON.stringify(pixel)) | ||
| 533 | var divStyle = this.div.style; | ||
| 534 | divStyle.left = pixel.x - 13.5 + "px"; | ||
| 535 | divStyle.top = pixel.y - 13.5 + "px"; | ||
| 536 | } | ||
| 537 | |||
| 538 | SiteOverlay.prototype.show = function() { | ||
| 539 | this.div.style.display = "block"; | ||
| 540 | this.isDisplay = true; | ||
| 541 | } | ||
| 542 | |||
| 543 | SiteOverlay.prototype.hide = function() { | ||
| 544 | this.div.style.display = "none"; | ||
| 545 | this.isDisplay = false; | ||
| 546 | } | ||
| 547 | |||
| 548 | MyMark.prototype = new BMap.Overlay(); | ||
| 549 | //定义construct,实现这个接口来初始化自定义的Dom元素 | ||
| 550 | MyMark.prototype.initialize = function(map) { | ||
| 551 | this.map = map; | ||
| 552 | var container = this.div = document.createElement("div"); | ||
| 553 | container.className = "myMarker"; | ||
| 554 | var img = document.createElement("img"); | ||
| 555 | img.src = "images/myposition.png"; | ||
| 556 | container.appendChild(img); | ||
| 557 | //将dom添加到覆盖物层 | ||
| 558 | var panes = map.getPanes(); | ||
| 559 | |||
| 560 | //设置panes的层级,overlayMouseTarget可接收点击事件 | ||
| 561 | panes.labelPane.appendChild(container); | ||
| 562 | |||
| 563 | } | ||
| 564 | //实现draw接口来绘制和更新自定义的dom元素 | ||
| 565 | MyMark.prototype.draw = function() { | ||
| 566 | var pixel = this.map.pointToOverlayPixel(this.position); | ||
| 567 | // alert(JSON.stringify(pixel)) | ||
| 568 | var divStyle = this.div.style; | ||
| 569 | divStyle.left = pixel.x - 25 + "px"; | ||
| 570 | divStyle.top = pixel.y - 37 + "px"; | ||
| 571 | } | ||
| 572 | |||
| 573 | } | ||
| 574 | |||
| 575 | // mui.init(); | ||
| 576 | |||
| 577 | initCustomOverlay(); | ||
| 578 | initMap(); | ||
| 579 | wx.ready(function() { | ||
| 580 | initLocation(); | ||
| 581 | }) | ||
| 582 | |||
| 583 | }]); | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
js/controller/opinionController.js
0 → 100644
| 1 | angular.module('myApp') | ||
| 2 | .controller('opinionController',['$scope','$rootScope','dingdaService','$state','globalService','$stateParams', | ||
| 3 | function($scope,$rootScope,dingdaService,$state,globalService,$stateParams){ | ||
| 4 | |||
| 5 | $scope.opinion = ""; | ||
| 6 | |||
| 7 | $scope.submit = function() { | ||
| 8 | if($scope.opinion.length == 0) { | ||
| 9 | return; | ||
| 10 | } | ||
| 11 | if($scope.opinion.length > 200) { | ||
| 12 | layer.open({ | ||
| 13 | content: "超出字数限制", | ||
| 14 | time:2 | ||
| 15 | }); | ||
| 16 | } else { | ||
| 17 | var phoneType = navigator.userAgent.match(/\(.*?\)/); | ||
| 18 | var wx = navigator.userAgent.match(/MicroMessenger\/.*?[ ]/); | ||
| 19 | |||
| 20 | // alert(phoneType) | ||
| 21 | var data = { | ||
| 22 | content : $scope.opinion , | ||
| 23 | latitude : $stateParams.latitude , | ||
| 24 | longitude : $stateParams.longitude , | ||
| 25 | phoneType : phoneType[0] , | ||
| 26 | systemType : wx[0] | ||
| 27 | } | ||
| 28 | |||
| 29 | |||
| 30 | dingdaService.comment(data).success(function(data , status) { | ||
| 31 | if(data.meta.code != 200) { | ||
| 32 | layer.open({ | ||
| 33 | content: data.meta.message, | ||
| 34 | time:2 | ||
| 35 | }); | ||
| 36 | return; | ||
| 37 | } | ||
| 38 | layer.open({ | ||
| 39 | content: "评论成功", | ||
| 40 | time:2 | ||
| 41 | }); | ||
| 42 | setTimeout(function() { | ||
| 43 | location.reload(); | ||
| 44 | } , 300); | ||
| 45 | history.back(); | ||
| 46 | }).error(function(data , status){ | ||
| 47 | alert(JSON.stringify(data)) | ||
| 48 | |||
| 49 | }) | ||
| 50 | } | ||
| 51 | } | ||
| 52 | |||
| 53 | }]); | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
js/controller/payController.js
0 → 100644
| 1 | angular.module('myApp') | ||
| 2 | .controller('payController',['$scope','$rootScope','dingdaService','$state','globalService',function($scope,$rootScope,dingdaService,$state,globalService){ | ||
| 3 | |||
| 4 | var init = function() { | ||
| 5 | // globalService.init(); | ||
| 6 | } | ||
| 7 | |||
| 8 | // mui.init(); | ||
| 9 | init(); | ||
| 10 | |||
| 11 | $scope.pay = function() { | ||
| 12 | alert("充值") | ||
| 13 | } | ||
| 14 | }]); | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
js/controller/prepayController.js
0 → 100644
| 1 | angular.module('myApp') | ||
| 2 | .controller('prepayController',['$scope','$rootScope','dingdaService','$state','globalService','wechatPayment',function($scope,$rootScope,dingdaService,$state,globalService,wechatPayment){ | ||
| 3 | |||
| 4 | $scope.account = ""; | ||
| 5 | $scope.way = 101; | ||
| 6 | |||
| 7 | var init = function() { | ||
| 8 | // globalService.init(); | ||
| 9 | } | ||
| 10 | |||
| 11 | // mui.init(); | ||
| 12 | init(); | ||
| 13 | var ispay = false; | ||
| 14 | $scope.prepay = function() { | ||
| 15 | if(ispay) return; | ||
| 16 | if($scope.account == ""){ | ||
| 17 | layer.open({ | ||
| 18 | content: '请输入充值金额', | ||
| 19 | time:1 | ||
| 20 | }); | ||
| 21 | return; | ||
| 22 | }; | ||
| 23 | |||
| 24 | if($scope.account < 1) { | ||
| 25 | layer.open({ | ||
| 26 | content: '充值金额至少为1元', | ||
| 27 | time:1 | ||
| 28 | }); | ||
| 29 | return; | ||
| 30 | } | ||
| 31 | ispay = true; | ||
| 32 | // alert($scope.way) | ||
| 33 | wechatPayment.callBalanceRecharge($scope.account, $scope.way) | ||
| 34 | .then(function(result){ | ||
| 35 | |||
| 36 | ispay = false; | ||
| 37 | //支付成功 | ||
| 38 | // $state.go('wallet',{},{reload:true}); | ||
| 39 | window.history.back(); | ||
| 40 | }, function(errMsg){ | ||
| 41 | |||
| 42 | ispay = false; | ||
| 43 | //支付失败 | ||
| 44 | }) | ||
| 45 | |||
| 46 | // alert("充值 : " + $scope.account + "元") | ||
| 47 | } | ||
| 48 | |||
| 49 | $scope.payway = function() { | ||
| 50 | if($scope.way == 101){ | ||
| 51 | $('#wxpay').show(); | ||
| 52 | $('#alipay').hide(); | ||
| 53 | $('#alipayform').hide(); | ||
| 54 | $('#wxpayform').show(); | ||
| 55 | } else{ | ||
| 56 | $('#alipay').show(); | ||
| 57 | $('#wxpay').hide(); | ||
| 58 | $('#alipayform').show(); | ||
| 59 | $('#wxpayform').hide(); | ||
| 60 | } | ||
| 61 | // alert('xxx') | ||
| 62 | } | ||
| 63 | }]); | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
js/controller/rechargeListController.js
0 → 100644
| 1 | angular.module('myApp') | ||
| 2 | .controller('rechargeListController',function($scope,$rootScope,$state){ | ||
| 3 | $scope.rechargeList = [ | ||
| 4 | { | ||
| 5 | rechargeType:'微信充值', | ||
| 6 | rechargeTime:'2016-01-17 16:16:23', | ||
| 7 | rechargeMoney:100 | ||
| 8 | }, | ||
| 9 | { | ||
| 10 | rechargeType:'微信充值', | ||
| 11 | rechargeTime:'2016-01-17 16:16:23', | ||
| 12 | rechargeMoney:200 | ||
| 13 | } | ||
| 14 | ] | ||
| 15 | }) | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
js/controller/rentDetailController.js
0 → 100644
| 1 | angular.module('myApp') | ||
| 2 | .controller('rentDetailController',['$scope','$rootScope','$state','dingdaService' ,function($scope,$rootScope,$state,dingdaService){ | ||
| 3 | |||
| 4 | $scope.detail = {}; | ||
| 5 | $scope.costTime = ""; | ||
| 6 | var oldTime; | ||
| 7 | |||
| 8 | $scope.backHome = function(){ | ||
| 9 | $state.go('main'); | ||
| 10 | } | ||
| 11 | |||
| 12 | var init = function() { | ||
| 13 | dingdaService.getUnfinishedOrder().success(function(data , status){ | ||
| 14 | // alert(JSON.stringify(data)) | ||
| 15 | |||
| 16 | if(data.meta.code == 200) { | ||
| 17 | if(!data.data.unfinishedOrder.id) { | ||
| 18 | $state.go('main'); | ||
| 19 | } | ||
| 20 | } | ||
| 21 | |||
| 22 | if(data.data.unfinishedOrder.status == 200) { | ||
| 23 | $state.go('tripDetail' , { orderId : data.data.unfinishedOrder.id}); | ||
| 24 | } | ||
| 25 | |||
| 26 | dingdaService.getOrderRealTimeInfo(data.data.unfinishedOrder.id) | ||
| 27 | .success(function(data , status){ | ||
| 28 | // alert(JSON.stringify(data)) | ||
| 29 | |||
| 30 | $scope.datail = data.data.orderDetail; | ||
| 31 | |||
| 32 | |||
| 33 | setInterval(function(){ | ||
| 34 | $scope.$apply(function(){ | ||
| 35 | var h = Math.floor($scope.datail.rentTime / 3600); | ||
| 36 | var m = Math.floor($scope.datail.rentTime % 3600 / 60); | ||
| 37 | var s = $scope.datail.rentTime % 60; | ||
| 38 | |||
| 39 | if(h < 10) { | ||
| 40 | h = "0" + h; | ||
| 41 | } | ||
| 42 | if(m < 10) { | ||
| 43 | m = "0" + m; | ||
| 44 | } | ||
| 45 | if(s < 10) { | ||
| 46 | s = "0" + s; | ||
| 47 | } | ||
| 48 | |||
| 49 | $scope.costTime = h + ":" + m + ":" + s; | ||
| 50 | // console.log($scope.costTime) | ||
| 51 | if($scope.datail.freeTime <= $scope.datail.rentTime) { | ||
| 52 | $scope.detail.freeCountdown = "00:00"; | ||
| 53 | } else { | ||
| 54 | var minute = Math.floor(( $scope.datail.freeTime - $scope.datail.rentTime ) / 60); | ||
| 55 | if(minute < 10) { | ||
| 56 | minute = "0" + minute; | ||
| 57 | } | ||
| 58 | var second = ( $scope.datail.freeTime - $scope.datail.rentTime ) % 60; | ||
| 59 | if(second < 10) { | ||
| 60 | second = "0" + second; | ||
| 61 | } | ||
| 62 | $scope.detail.freeCountdown = minute + ":" + second; | ||
| 63 | } | ||
| 64 | $scope.datail.rentTime++; | ||
| 65 | }) | ||
| 66 | } , 1000); | ||
| 67 | |||
| 68 | }).error(function(data , status){ | ||
| 69 | |||
| 70 | }) | ||
| 71 | }).error(function(data , status) { | ||
| 72 | console.log(JSON.stringify(data)) | ||
| 73 | }) | ||
| 74 | } | ||
| 75 | |||
| 76 | init(); | ||
| 77 | |||
| 78 | // ������ж�ʱ�� | ||
| 79 | setTimeout(function() { | ||
| 80 | var href = new String(location.href); | ||
| 81 | if(href.indexOf("rentDetail") > 0) location.reload(); | ||
| 82 | } , 30000) | ||
| 83 | |||
| 84 | $scope.alreadyBack = function(){ | ||
| 85 | $state.go('unusual' , { id : $scope.datail.id}); | ||
| 86 | } | ||
| 87 | |||
| 88 | }]) | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
js/controller/tripController.js
0 → 100644
| 1 | angular.module('myApp') | ||
| 2 | .controller('tripController',['$scope','$rootScope','$state','dingdaService' ,function($scope,$rootScope,$state,dingdaService){ | ||
| 3 | |||
| 4 | $scope.tripList = []; | ||
| 5 | |||
| 6 | $scope.isLastPage = false; | ||
| 7 | |||
| 8 | $scope.getMoreOrders = function() { | ||
| 9 | |||
| 10 | dingdaService.getOrderList(page).success(function(data , status) { | ||
| 11 | // alert(JSON.stringify(data)) | ||
| 12 | if(!data.data.orders || data.data.orders.length == 0) { | ||
| 13 | $scope.isLastPage = true; | ||
| 14 | return; | ||
| 15 | } | ||
| 16 | if(page == 1) { | ||
| 17 | $scope.tripList = []; | ||
| 18 | } | ||
| 19 | for(var i = 0 ; i < data.data.orders.length;i++) { | ||
| 20 | if(data.data.orders[i].status == 300) { | ||
| 21 | data.data.orders[i].tripStatus = "已完成"; | ||
| 22 | } else { | ||
| 23 | data.data.orders[i].tripStatus = "待支付"; | ||
| 24 | } | ||
| 25 | $scope.tripList.push(data.data.orders[i]); | ||
| 26 | } | ||
| 27 | page++; | ||
| 28 | // alert(JSON.stringify($scope.tripList)) | ||
| 29 | }) | ||
| 30 | } | ||
| 31 | |||
| 32 | var page = 1; | ||
| 33 | |||
| 34 | var init = function() { | ||
| 35 | $scope.getMoreOrders(); | ||
| 36 | } | ||
| 37 | |||
| 38 | init(); | ||
| 39 | |||
| 40 | $scope.viewTripDetail = function(index){ | ||
| 41 | $state.go('tripDetail' , { orderId : $scope.tripList[index].id }); | ||
| 42 | } | ||
| 43 | }]) | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
js/controller/tripDetailController.js
0 → 100644
| 1 | angular.module('myApp') | ||
| 2 | .controller('tripDetailController', ['$scope', '$rootScope', '$state', 'dingdaService', '$stateParams', 'wechatPayment', | ||
| 3 | function ($scope, $rootScope, $state, dingdaService, $stateParams, wechatPayment) { | ||
| 4 | console.log('tripDetailController'); | ||
| 5 | /** | ||
| 6 | * 2. 选择dom元素 | ||
| 7 | * */ | ||
| 8 | var tripDetail = $('.tripDetail'); | ||
| 9 | var winHeight = $(window).height(); | ||
| 10 | var tripHeight = tripDetail.height() + 40; | ||
| 11 | var bottomPosition = $('.bottomPosition'); | ||
| 12 | if (winHeight >= tripHeight) { | ||
| 13 | bottomPosition.css({'position': 'absolute', 'bottom': '0'}) | ||
| 14 | } | ||
| 15 | /** | ||
| 16 | * 3. 定义当前业务需要的数据 | ||
| 17 | * */ | ||
| 18 | $scope.tripDetail = {}; | ||
| 19 | $scope.needPay = false; | ||
| 20 | $scope.backHome = function () { | ||
| 21 | $state.go('main'); | ||
| 22 | } | ||
| 23 | /** | ||
| 24 | * 4. 支付逻辑 | ||
| 25 | * ispay 有无支付 | ||
| 26 | * isActive | ||
| 27 | * choosePay 选择支付 | ||
| 28 | * */ | ||
| 29 | var ispay = false; | ||
| 30 | $scope.isActive = true; // 这个是个关键 TODO 要更改的 | ||
| 31 | $scope.payType = 1; | ||
| 32 | $scope.choosePay = function (index) { | ||
| 33 | if ($($('.checkboxS')[index]).hasClass('checkboxTrue')) { | ||
| 34 | // 如果要选择的项已经选中,不处理 | ||
| 35 | return | ||
| 36 | } else { | ||
| 37 | $scope.isActive = !$scope.isActive; | ||
| 38 | } | ||
| 39 | |||
| 40 | $scope.payType = index; | ||
| 41 | } | ||
| 42 | $scope.goPay = function () { | ||
| 43 | if (ispay) return; | ||
| 44 | if ($scope.payType == 1) { //微信支付 | ||
| 45 | |||
| 46 | ispay = true; | ||
| 47 | wechatPayment.callRentPay($scope.tripDetail.id, $scope.tripDetail.total_fee) | ||
| 48 | .then(function (result) { | ||
| 49 | ispay = false; | ||
| 50 | //支付成功 | ||
| 51 | init(); | ||
| 52 | // $state.go('bondSuccess'); | ||
| 53 | }, function (errMsg) { | ||
| 54 | ispay = false; | ||
| 55 | //支付失败 | ||
| 56 | // layer.open({ | ||
| 57 | // content: '支付失败,请重试', | ||
| 58 | // time:2 | ||
| 59 | // }); | ||
| 60 | }) | ||
| 61 | } else { | ||
| 62 | if ($scope.tripDetail.total_fee > $scope.balance) { //钱包支付判断余额是否足够支付 | ||
| 63 | layer.open({ | ||
| 64 | content: '您的余额不够是否去充值?', //小米下面按钮对齐 | ||
| 65 | btn: ['去充值', '取消'], | ||
| 66 | shadeClose: false, | ||
| 67 | yes: function (index) { | ||
| 68 | $state.go('prepay', {}, {reload: false}); | ||
| 69 | layer.close(index); | ||
| 70 | }, no: function (index) { | ||
| 71 | layer.close(index); | ||
| 72 | } | ||
| 73 | }); | ||
| 74 | } else { | ||
| 75 | // 余额支付 | ||
| 76 | |||
| 77 | ispay = true; | ||
| 78 | var data = { | ||
| 79 | amount: $scope.tripDetail.total_fee, | ||
| 80 | body: '余额支付', | ||
| 81 | type: 102 | ||
| 82 | } | ||
| 83 | dingdaService.payWX($scope.tripDetail.id, data) | ||
| 84 | .success(function (data, status) { | ||
| 85 | ispay = false; | ||
| 86 | layer.open({ | ||
| 87 | content: '支付成功', | ||
| 88 | time: 2 | ||
| 89 | }); | ||
| 90 | init(); | ||
| 91 | }) | ||
| 92 | .error(function (data) { | ||
| 93 | ispay = false; | ||
| 94 | layer.open({ | ||
| 95 | content: '支付失败', | ||
| 96 | time: 2 | ||
| 97 | }); | ||
| 98 | }) | ||
| 99 | } | ||
| 100 | } | ||
| 101 | } | ||
| 102 | |||
| 103 | var orderid = $stateParams.orderId; | ||
| 104 | /** | ||
| 105 | * 1. init 获取初始化的数据 tripDetail 订单详情 needPay 是否需要发起支付 | ||
| 106 | * */ | ||
| 107 | var init = function () { | ||
| 108 | dingdaService.getOrderFinishInfo(orderid).success(function (data, status) { | ||
| 109 | $scope.tripDetail = data.data.order; | ||
| 110 | // alert(JSON.stringify(data)); | ||
| 111 | if (data.data.order.status == 300 || $scope.tripDetail.total_fee == 0) { | ||
| 112 | $scope.needPay = false; | ||
| 113 | } else if (data.data.order.status == 200) { | ||
| 114 | $scope.needPay = true; | ||
| 115 | } | ||
| 116 | }) | ||
| 117 | |||
| 118 | dingdaService.getWallet(orderid).success(function (data, status) { | ||
| 119 | $scope.balance = data.data.balance; | ||
| 120 | }) | ||
| 121 | } | ||
| 122 | init(); | ||
| 123 | |||
| 124 | }]) | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
js/controller/unusualController.js
0 → 100644
| 1 | angular.module('myApp') | ||
| 2 | .controller('unusualController',['$scope','dingdaService','$state','$stateParams',function($scope,dingdaService,$state,$stateParams){ | ||
| 3 | |||
| 4 | $scope.returnBike = function() { | ||
| 5 | dingdaService.setOrderFinish($stateParams.id) | ||
| 6 | .success(function(data , status) { | ||
| 7 | if(data.meta.code == 200) { | ||
| 8 | $state.go('tripDetail' , { orderId : $stateParams.id }); | ||
| 9 | } else if (data.meta.code == 203) { | ||
| 10 | layer.open({ | ||
| 11 | content: "租车失败", | ||
| 12 | time:2 | ||
| 13 | }); | ||
| 14 | $state.go('main'); | ||
| 15 | } else { | ||
| 16 | |||
| 17 | layer.open({ | ||
| 18 | content: "系统检测到您还未还车,请联系客服", | ||
| 19 | time:2 | ||
| 20 | }); | ||
| 21 | } | ||
| 22 | }).error(function(data , status) { | ||
| 23 | |||
| 24 | }); | ||
| 25 | } | ||
| 26 | |||
| 27 | $scope.hint = function() { | ||
| 28 | layer.open({ | ||
| 29 | content: "请在主页面菜单中点击联系我们", | ||
| 30 | time:2 | ||
| 31 | }); | ||
| 32 | } | ||
| 33 | |||
| 34 | }]) | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
js/controller/walletController.js
0 → 100644
| 1 | angular.module('myApp') | ||
| 2 | .controller('walletController',['$scope','$rootScope','dingdaService','$state','globalService',function($scope,$rootScope,dingdaService,$state,globalService){ | ||
| 3 | |||
| 4 | $scope.balance = ""; | ||
| 5 | |||
| 6 | var init = function() { | ||
| 7 | dingdaService.getWallet().success(function(data , status){ | ||
| 8 | // alert(JSON.stringify(data.data)) | ||
| 9 | $scope.balance = data.data.balance; | ||
| 10 | |||
| 11 | }) | ||
| 12 | } | ||
| 13 | |||
| 14 | init(); | ||
| 15 | |||
| 16 | $scope.prepay = function() { | ||
| 17 | $state.go('prepay', { }, { reload: false }); | ||
| 18 | } | ||
| 19 | }]); | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
js/debug.js
0 → 100644
| 1 | /** | ||
| 2 | * Created by zhanghong on 14-7-29. | ||
| 3 | */ | ||
| 4 | |||
| 5 | var debugArea = document.createElement("div"); | ||
| 6 | debugArea.setAttribute("style", "position: fixed;max-height:30%;overflow:scroll"); | ||
| 7 | //var info = document.createElement("div"); | ||
| 8 | //info.setAttribute("style", "background: green;max-height:20%;overflow:scroll"); | ||
| 9 | //var warn = document.createElement("div"); | ||
| 10 | //warn.setAttribute("style", "background: yellow;max-height:20%;overflow:scroll"); | ||
| 11 | //var error = document.createElement("div"); | ||
| 12 | //error.setAttribute("style", "background: red;max-height:20%;overflow:scroll"); | ||
| 13 | //debugArea.appendChild(info); | ||
| 14 | //debugArea.appendChild(warn); | ||
| 15 | //debugArea.appendChild(error); | ||
| 16 | |||
| 17 | var url = window.location.href, | ||
| 18 | parts = url.split('?'), | ||
| 19 | d = {}; | ||
| 20 | if(parts.length == 2){ | ||
| 21 | var hash = parts[1].indexOf('#') | ||
| 22 | if(hash != -1){ | ||
| 23 | parts[1] = parts[1].substring(0, hash) | ||
| 24 | } | ||
| 25 | |||
| 26 | var pairs = parts[1].split('&') | ||
| 27 | pairs.forEach(function(pair){ | ||
| 28 | var kv = pair.split('=') | ||
| 29 | if(kv.length == 2){ | ||
| 30 | d[kv[0]] = kv[1] | ||
| 31 | } | ||
| 32 | }) | ||
| 33 | } | ||
| 34 | var debug = (d.debug && d.debug == 1)?true:false; | ||
| 35 | var body = null; | ||
| 36 | if(debug) { | ||
| 37 | var init = function () { | ||
| 38 | body = document.getElementsByTagName("body")[0]; | ||
| 39 | if (body) { | ||
| 40 | body.appendChild(debugArea); | ||
| 41 | if (startUpTimer) { | ||
| 42 | clearInterval(startUpTimer); | ||
| 43 | } | ||
| 44 | } | ||
| 45 | } | ||
| 46 | var startUpTimer = setInterval(init, 1000); | ||
| 47 | } | ||
| 48 | |||
| 49 | window.wwsDebug = { | ||
| 50 | _log : function(type, message){ | ||
| 51 | var target = null; | ||
| 52 | var style = null; | ||
| 53 | switch(type){ | ||
| 54 | case 'info': | ||
| 55 | // target = info; | ||
| 56 | style = "background: green;"; | ||
| 57 | break; | ||
| 58 | case 'warn': | ||
| 59 | // target = warn; | ||
| 60 | style = "background: yellow;"; | ||
| 61 | break; | ||
| 62 | case 'error': | ||
| 63 | // target = error; | ||
| 64 | style = "background: red;"; | ||
| 65 | break; | ||
| 66 | } | ||
| 67 | |||
| 68 | //if(target){ | ||
| 69 | if(debug) { | ||
| 70 | var line = document.createElement("h3"); | ||
| 71 | line.setAttribute("style", style); | ||
| 72 | line.innerHTML = message; | ||
| 73 | debugArea.appendChild(line); | ||
| 74 | } | ||
| 75 | // console.log(message); | ||
| 76 | //} | ||
| 77 | }, | ||
| 78 | error : function (message) { | ||
| 79 | this._log('error', message); | ||
| 80 | }, | ||
| 81 | warn : function(message){ | ||
| 82 | this._log('warn', message); | ||
| 83 | }, | ||
| 84 | info : function(message){ | ||
| 85 | this._log('info', message); | ||
| 86 | }, | ||
| 87 | log : function(message){ | ||
| 88 | this._log('info', message); | ||
| 89 | } | ||
| 90 | } | ||
| 91 | //if(debug){ | ||
| 92 | // console.originalLog = console.log; | ||
| 93 | // console.log = function(message){ | ||
| 94 | // wwsDebug.info(message); | ||
| 95 | // console.originalLog(message); | ||
| 96 | // } | ||
| 97 | //} | ||
| 98 | |||
| 99 | //function takeOverConsole(){ | ||
| 100 | var console = window.console | ||
| 101 | if(console) { | ||
| 102 | function intercept(method) { | ||
| 103 | var original = console[method] | ||
| 104 | console[method] = function () { | ||
| 105 | wwsDebug[method](arguments); | ||
| 106 | if (original.apply) { | ||
| 107 | // Do this for normal browsers | ||
| 108 | original.apply(console, arguments) | ||
| 109 | } else { | ||
| 110 | // Do this for IE | ||
| 111 | var message = Array.prototype.slice.apply(arguments).join(' ') | ||
| 112 | original(message) | ||
| 113 | } | ||
| 114 | } | ||
| 115 | } | ||
| 116 | |||
| 117 | var methods = ['warn', 'error'] | ||
| 118 | for (var i = 0; i < methods.length; i++) | ||
| 119 | intercept(methods[i]) | ||
| 120 | } | ||
| 121 | //} |
js/jquery-1.9.1.js
0 → 100644
This diff could not be displayed because it is too large.
js/layer/extend/layer.ext.js
0 → 100644
| 1 | /*! layer弹层组件拓展类 */ | ||
| 2 | ;!function(){layer.use("skin/layer.ext.css",function(){layer.layui_layer_extendlayerextjs=!0});var a=layer.cache||{},b=function(b){return a.skin?" "+a.skin+" "+a.skin+"-"+b:""};layer.prompt=function(a,c){a=a||{},"function"==typeof a&&(c=a);var d,e=2==a.formType?'<textarea class="layui-layer-input">'+(a.value||"")+"</textarea>":function(){return'<input type="'+(1==a.formType?"password":"text")+'" class="layui-layer-input" value="'+(a.value||"")+'">'}();return layer.open($.extend({btn:["确定","取消"],content:e,skin:"layui-layer-prompt"+b("prompt"),success:function(a){d=a.find(".layui-layer-input"),d.focus()},yes:function(b){var e=d.val();""===e?d.focus():e.length>(a.maxlength||500)?layer.tips("最多输入"+(a.maxlength||500)+"个字数",d,{tips:1}):c&&c(e,b,d)}},a))},layer.tab=function(a){a=a||{};var c=a.tab||{};return layer.open($.extend({type:1,skin:"layui-layer-tab"+b("tab"),title:function(){var a=c.length,b=1,d="";if(a>0)for(d='<span class="layui-layer-tabnow">'+c[0].title+"</span>";a>b;b++)d+="<span>"+c[b].title+"</span>";return d}(),content:'<ul class="layui-layer-tabmain">'+function(){var a=c.length,b=1,d="";if(a>0)for(d='<li class="layui-layer-tabli xubox_tab_layer">'+(c[0].content||"no content")+"</li>";a>b;b++)d+='<li class="layui-layer-tabli">'+(c[b].content||"no content")+"</li>";return d}()+"</ul>",success:function(a){var b=a.find(".layui-layer-title").children(),c=a.find(".layui-layer-tabmain").children();b.on("mousedown",function(a){a.stopPropagation?a.stopPropagation():a.cancelBubble=!0;var b=$(this),d=b.index();b.addClass("layui-layer-tabnow").siblings().removeClass("layui-layer-tabnow"),c.eq(d).show().siblings().hide()})}},a))},layer.photos=function(a,c,d){function e(a,b,c){var d=new Image;d.onload=function(){d.onload=null,b(d)},d.onerror=function(a){d.onerror=null,c(a)},d.src=a}var f={};if(a=a||{},a.photos){var g=a.photos.constructor===Object,h=g?a.photos:{},i=h.data||[],j=h.start||0;if(f.imgIndex=j+1,g){if(0===i.length)return void layer.msg("没有图片")}else{var k=$(a.photos),l=k.find(a.img||"img");if(0===l.length)return;if(c||k.find(h.img||"img").each(function(b){var c=$(this);i.push({alt:c.attr("alt"),pid:c.attr("layer-pid"),src:c.attr("layer-src")||c.attr("src"),thumb:c.attr("src")}),c.on("click",function(){layer.photos($.extend(a,{photos:{start:b,data:i,tab:a.tab},full:a.full}),!0)})}),!c)return}f.imgprev=function(a){f.imgIndex--,f.imgIndex<1&&(f.imgIndex=i.length),f.tabimg(a)},f.imgnext=function(a,b){f.imgIndex++,f.imgIndex>i.length&&(f.imgIndex=1,b)||f.tabimg(a)},f.keyup=function(a){if(!f.end){var b=a.keyCode;a.preventDefault(),37===b?f.imgprev(!0):39===b?f.imgnext(!0):27===b&&layer.close(f.index)}},f.tabimg=function(b){i.length<=1||(h.start=f.imgIndex-1,layer.close(f.index),layer.photos(a,!0,b))},f.event=function(){f.bigimg.hover(function(){f.imgsee.show()},function(){f.imgsee.hide()}),f.bigimg.find(".layui-layer-imgprev").on("click",function(a){a.preventDefault(),f.imgprev()}),f.bigimg.find(".layui-layer-imgnext").on("click",function(a){a.preventDefault(),f.imgnext()}),$(document).on("keyup",f.keyup)},f.loadi=layer.load(1,{shade:"shade"in a?!1:.9,scrollbar:!1}),e(i[j].src,function(c){layer.close(f.loadi),f.index=layer.open($.extend({type:1,area:function(){var b=[c.width,c.height],d=[$(window).width()-100,$(window).height()-100];return!a.full&&b[0]>d[0]&&(b[0]=d[0],b[1]=b[0]*d[1]/b[0]),[b[0]+"px",b[1]+"px"]}(),title:!1,shade:.9,shadeClose:!0,closeBtn:!1,move:".layui-layer-phimg img",moveType:1,scrollbar:!1,moveOut:!0,shift:5*Math.random()|0,skin:"layui-layer-photos"+b("photos"),content:'<div class="layui-layer-phimg"><img src="'+i[j].src+'" alt="'+(i[j].alt||"")+'" layer-pid="'+i[j].pid+'"><div class="layui-layer-imgsee">'+(i.length>1?'<span class="layui-layer-imguide"><a href="javascript:;" class="layui-layer-iconext layui-layer-imgprev"></a><a href="javascript:;" class="layui-layer-iconext layui-layer-imgnext"></a></span>':"")+'<div class="layui-layer-imgbar" style="display:'+(d?"block":"")+'"><span class="layui-layer-imgtit"><a href="javascript:;">'+(i[j].alt||"")+"</a><em>"+f.imgIndex+"/"+i.length+"</em></span></div></div></div>",success:function(b,c){f.bigimg=b.find(".layui-layer-phimg"),f.imgsee=b.find(".layui-layer-imguide,.layui-layer-imgbar"),f.event(b),a.tab&&a.tab(i[j],b)},end:function(){f.end=!0,$(document).off("keyup",f.keyup)}},a))},function(){layer.close(f.loadi),layer.msg("当前图片地址异常<br>是否继续查看下一张?",{time:3e4,btn:["下一张","不看了"],yes:function(){i.length>1&&f.imgnext(!0,!0)}})})}}}(); | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
js/layer/layer.js
0 → 100644
| 1 | /*! layer-v2.1 弹层组件 License LGPL http://layer.layui.com/ By 贤心 */ | ||
| 2 | ;!function(a,b){"use strict";var c,d,e={getPath:function(){var a=document.scripts,b=a[a.length-1],c=b.src;if(!b.getAttribute("merge"))return c.substring(0,c.lastIndexOf("/")+1)}(),enter:function(a){13===a.keyCode&&a.preventDefault()},config:{},end:{},btn:["确定","取消"],type:["dialog","page","iframe","loading","tips"]},f={v:"2.1",ie6:!!a.ActiveXObject&&!a.XMLHttpRequest,index:0,path:e.getPath,config:function(a,b){var d=0;return a=a||{},f.cache=e.config=c.extend(e.config,a),f.path=e.config.path||f.path,"string"==typeof a.extend&&(a.extend=[a.extend]),f.use("skin/layer.css",a.extend&&a.extend.length>0?function g(){var c=a.extend;f.use(c[c[d]?d:d-1],d<c.length?function(){return++d,g}():b)}():b),this},use:function(a,b,d){var e=c("head")[0],a=a.replace(/\s/g,""),g=/\.css$/.test(a),h=document.createElement(g?"link":"script"),i="layui_layer_"+a.replace(/\.|\//g,"");return f.path?(g&&(h.rel="stylesheet"),h[g?"href":"src"]=/^http:\/\//.test(a)?a:f.path+a,h.id=i,c("#"+i)[0]||e.appendChild(h),function j(){(g?1989===parseInt(c("#"+i).css("width")):f[d||i])?function(){b&&b();try{g||e.removeChild(h)}catch(a){}}():setTimeout(j,100)}(),this):void 0},ready:function(a,b){var d="function"==typeof a;return d&&(b=a),f.config(c.extend(e.config,function(){return d?{}:{path:a}}()),b),this},alert:function(a,b,d){var e="function"==typeof b;return e&&(d=b),f.open(c.extend({content:a,yes:d},e?{}:b))},confirm:function(a,b,d,g){var h="function"==typeof b;return h&&(g=d,d=b),f.open(c.extend({content:a,btn:e.btn,yes:d,cancel:g},h?{}:b))},msg:function(a,d,g){var i="function"==typeof d,j=e.config.skin,k=(j?j+" "+j+"-msg":"")||"layui-layer-msg",l=h.anim.length-1;return i&&(g=d),f.open(c.extend({content:a,time:3e3,shade:!1,skin:k,title:!1,closeBtn:!1,btn:!1,end:g},i&&!e.config.skin?{skin:k+" layui-layer-hui",shift:l}:function(){return d=d||{},(-1===d.icon||d.icon===b&&!e.config.skin)&&(d.skin=k+" "+(d.skin||"layui-layer-hui")),d}()))},load:function(a,b){return f.open(c.extend({type:3,icon:a||0,shade:.01},b))},tips:function(a,b,d){return f.open(c.extend({type:4,content:[a,b],closeBtn:!1,time:3e3,maxWidth:210},d))}},g=function(a){var b=this;b.index=++f.index,b.config=c.extend({},b.config,e.config,a),b.creat()};g.pt=g.prototype;var h=["layui-layer",".layui-layer-title",".layui-layer-main",".layui-layer-dialog","layui-layer-iframe","layui-layer-content","layui-layer-btn","layui-layer-close"];h.anim=["layui-anim","layui-anim-01","layui-anim-02","layui-anim-03","layui-anim-04","layui-anim-05","layui-anim-06"],g.pt.config={type:0,shade:.3,fix:!0,move:h[1],title:"信息",offset:"auto",area:"auto",closeBtn:1,time:0,zIndex:19891014,maxWidth:360,shift:0,icon:-1,scrollbar:!0,tips:2},g.pt.vessel=function(a,b){var c=this,d=c.index,f=c.config,g=f.zIndex+d,i="object"==typeof f.title,j=f.maxmin&&(1===f.type||2===f.type),k=f.title?'<div class="layui-layer-title" style="'+(i?f.title[1]:"")+'">'+(i?f.title[0]:f.title)+"</div>":"";return f.zIndex=g,b([f.shade?'<div class="layui-layer-shade" id="layui-layer-shade'+d+'" times="'+d+'" style="'+("z-index:"+(g-1)+"; background-color:"+(f.shade[1]||"#000")+"; opacity:"+(f.shade[0]||f.shade)+"; filter:alpha(opacity="+(100*f.shade[0]||100*f.shade)+");")+'"></div>':"",'<div class="'+h[0]+" "+(h.anim[f.shift]||"")+(" layui-layer-"+e.type[f.type])+(0!=f.type&&2!=f.type||f.shade?"":" layui-layer-border")+" "+(f.skin||"")+'" id="'+h[0]+d+'" type="'+e.type[f.type]+'" times="'+d+'" showtime="'+f.time+'" conType="'+(a?"object":"string")+'" style="z-index: '+g+"; width:"+f.area[0]+";height:"+f.area[1]+(f.fix?"":";position:absolute;")+'">'+(a&&2!=f.type?"":k)+'<div class="layui-layer-content'+(0==f.type&&-1!==f.icon?" layui-layer-padding":"")+(3==f.type?" layui-layer-loading"+f.icon:"")+'">'+(0==f.type&&-1!==f.icon?'<i class="layui-layer-ico layui-layer-ico'+f.icon+'"></i>':"")+(1==f.type&&a?"":f.content||"")+'</div><span class="layui-layer-setwin">'+function(){var a=j?'<a class="layui-layer-min" href="javascript:;"><cite></cite></a><a class="layui-layer-ico layui-layer-max" href="javascript:;"></a>':"";return f.closeBtn&&(a+='<a class="layui-layer-ico '+h[7]+" "+h[7]+(f.title?f.closeBtn:4==f.type?"1":"2")+'" href="javascript:;"></a>'),a}()+"</span>"+(f.btn?function(){var a="";"string"==typeof f.btn&&(f.btn=[f.btn]);for(var b=0,c=f.btn.length;c>b;b++)a+='<a class="'+h[6]+b+'">'+f.btn[b]+"</a>";return'<div class="'+h[6]+'">'+a+"</div>"}():"")+"</div>"],k),c},g.pt.creat=function(){var a=this,b=a.config,g=a.index,i=b.content,j="object"==typeof i;switch("string"==typeof b.area&&(b.area="auto"===b.area?["",""]:[b.area,""]),b.type){case 0:b.btn="btn"in b?b.btn:e.btn[0],f.closeAll("dialog");break;case 2:var i=b.content=j?b.content:[b.content||"http://layer.layui.com","auto"];b.content='<iframe scrolling="'+(b.content[1]||"auto")+'" allowtransparency="true" id="'+h[4]+g+'" name="'+h[4]+g+'" onload="this.className=\'\';" class="layui-layer-load" frameborder="0" src="'+b.content[0]+'"></iframe>';break;case 3:b.title=!1,b.closeBtn=!1,-1===b.icon&&0===b.icon,f.closeAll("loading");break;case 4:j||(b.content=[b.content,"body"]),b.follow=b.content[1],b.content=b.content[0]+'<i class="layui-layer-TipsG"></i>',b.title=!1,b.shade=!1,b.fix=!1,b.tips="object"==typeof b.tips?b.tips:[b.tips,!0],b.tipsMore||f.closeAll("tips")}a.vessel(j,function(d,e){c("body").append(d[0]),j?function(){2==b.type||4==b.type?function(){c("body").append(d[1])}():function(){i.parents("."+h[0])[0]||(i.show().addClass("layui-layer-wrap").wrap(d[1]),c("#"+h[0]+g).find("."+h[5]).before(e))}()}():c("body").append(d[1]),a.layero=c("#"+h[0]+g),b.scrollbar||h.html.css("overflow","hidden").attr("layer-full",g)}).auto(g),2==b.type&&f.ie6&&a.layero.find("iframe").attr("src",i[0]),c(document).off("keydown",e.enter).on("keydown",e.enter),a.layero.on("keydown",function(a){c(document).off("keydown",e.enter)}),4==b.type?a.tips():a.offset(),b.fix&&d.on("resize",function(){a.offset(),(/^\d+%$/.test(b.area[0])||/^\d+%$/.test(b.area[1]))&&a.auto(g),4==b.type&&a.tips()}),b.time<=0||setTimeout(function(){f.close(a.index)},b.time),a.move().callback()},g.pt.auto=function(a){function b(a){a=g.find(a),a.height(i[1]-j-k-2*(0|parseFloat(a.css("padding"))))}var e=this,f=e.config,g=c("#"+h[0]+a);""===f.area[0]&&f.maxWidth>0&&(/MSIE 7/.test(navigator.userAgent)&&f.btn&&g.width(g.innerWidth()),g.outerWidth()>f.maxWidth&&g.width(f.maxWidth));var i=[g.innerWidth(),g.innerHeight()],j=g.find(h[1]).outerHeight()||0,k=g.find("."+h[6]).outerHeight()||0;switch(f.type){case 2:b("iframe");break;default:""===f.area[1]?f.fix&&i[1]>=d.height()&&(i[1]=d.height(),b("."+h[5])):b("."+h[5])}return e},g.pt.offset=function(){var a=this,b=a.config,c=a.layero,e=[c.outerWidth(),c.outerHeight()],f="object"==typeof b.offset;a.offsetTop=(d.height()-e[1])/2,a.offsetLeft=(d.width()-e[0])/2,f?(a.offsetTop=b.offset[0],a.offsetLeft=b.offset[1]||a.offsetLeft):"auto"!==b.offset&&(a.offsetTop=b.offset,"rb"===b.offset&&(a.offsetTop=d.height()-e[1],a.offsetLeft=d.width()-e[0])),b.fix||(a.offsetTop=/%$/.test(a.offsetTop)?d.height()*parseFloat(a.offsetTop)/100:parseFloat(a.offsetTop),a.offsetLeft=/%$/.test(a.offsetLeft)?d.width()*parseFloat(a.offsetLeft)/100:parseFloat(a.offsetLeft),a.offsetTop+=d.scrollTop(),a.offsetLeft+=d.scrollLeft()),c.css({top:a.offsetTop,left:a.offsetLeft})},g.pt.tips=function(){var a=this,b=a.config,e=a.layero,f=[e.outerWidth(),e.outerHeight()],g=c(b.follow);g[0]||(g=c("body"));var i={width:g.outerWidth(),height:g.outerHeight(),top:g.offset().top,left:g.offset().left},j=e.find(".layui-layer-TipsG"),k=b.tips[0];b.tips[1]||j.remove(),i.autoLeft=function(){i.left+f[0]-d.width()>0?(i.tipLeft=i.left+i.width-f[0],j.css({right:12,left:"auto"})):i.tipLeft=i.left},i.where=[function(){i.autoLeft(),i.tipTop=i.top-f[1]-10,j.removeClass("layui-layer-TipsB").addClass("layui-layer-TipsT").css("border-right-color",b.tips[1])},function(){i.tipLeft=i.left+i.width+10,i.tipTop=i.top,j.removeClass("layui-layer-TipsL").addClass("layui-layer-TipsR").css("border-bottom-color",b.tips[1])},function(){i.autoLeft(),i.tipTop=i.top+i.height+10,j.removeClass("layui-layer-TipsT").addClass("layui-layer-TipsB").css("border-right-color",b.tips[1])},function(){i.tipLeft=i.left-f[0]-10,i.tipTop=i.top,j.removeClass("layui-layer-TipsR").addClass("layui-layer-TipsL").css("border-bottom-color",b.tips[1])}],i.where[k-1](),1===k?i.top-(d.scrollTop()+f[1]+16)<0&&i.where[2]():2===k?d.width()-(i.left+i.width+f[0]+16)>0||i.where[3]():3===k?i.top-d.scrollTop()+i.height+f[1]+16-d.height()>0&&i.where[0]():4===k&&f[0]+16-i.left>0&&i.where[1](),e.find("."+h[5]).css({"background-color":b.tips[1],"padding-right":b.closeBtn?"30px":""}),e.css({left:i.tipLeft,top:i.tipTop})},g.pt.move=function(){var a=this,b=a.config,e={setY:0,moveLayer:function(){var a=e.layero,b=parseInt(a.css("margin-left")),c=parseInt(e.move.css("left"));0===b||(c-=b),"fixed"!==a.css("position")&&(c-=a.parent().offset().left,e.setY=0),a.css({left:c,top:parseInt(e.move.css("top"))-e.setY})}},f=a.layero.find(b.move);return b.move&&f.attr("move","ok"),f.css({cursor:b.move?"move":"auto"}),c(b.move).on("mousedown",function(a){if(a.preventDefault(),"ok"===c(this).attr("move")){e.ismove=!0,e.layero=c(this).parents("."+h[0]);var f=e.layero.offset().left,g=e.layero.offset().top,i=e.layero.outerWidth()-6,j=e.layero.outerHeight()-6;c("#layui-layer-moves")[0]||c("body").append('<div id="layui-layer-moves" class="layui-layer-moves" style="left:'+f+"px; top:"+g+"px; width:"+i+"px; height:"+j+'px; z-index:2147483584"></div>'),e.move=c("#layui-layer-moves"),b.moveType&&e.move.css({visibility:"hidden"}),e.moveX=a.pageX-e.move.position().left,e.moveY=a.pageY-e.move.position().top,"fixed"!==e.layero.css("position")||(e.setY=d.scrollTop())}}),c(document).mousemove(function(a){if(e.ismove){var c=a.pageX-e.moveX,f=a.pageY-e.moveY;if(a.preventDefault(),!b.moveOut){e.setY=d.scrollTop();var g=d.width()-e.move.outerWidth(),h=e.setY;0>c&&(c=0),c>g&&(c=g),h>f&&(f=h),f>d.height()-e.move.outerHeight()+e.setY&&(f=d.height()-e.move.outerHeight()+e.setY)}e.move.css({left:c,top:f}),b.moveType&&e.moveLayer(),c=f=g=h=null}}).mouseup(function(){try{e.ismove&&(e.moveLayer(),e.move.remove(),b.moveEnd&&b.moveEnd()),e.ismove=!1}catch(a){e.ismove=!1}}),a},g.pt.callback=function(){function a(){var a=g.cancel&&g.cancel(b.index);a===!1||f.close(b.index)}var b=this,d=b.layero,g=b.config;b.openLayer(),g.success&&(2==g.type?d.find("iframe").on("load",function(){g.success(d,b.index)}):g.success(d,b.index)),f.ie6&&b.IE6(d),d.find("."+h[6]).children("a").on("click",function(){var e=c(this).index();g["btn"+(e+1)]&&g["btn"+(e+1)](b.index,d),0===e?g.yes?g.yes(b.index,d):f.close(b.index):1===e?a():g["btn"+(e+1)]||f.close(b.index)}),d.find("."+h[7]).on("click",a),g.shadeClose&&c("#layui-layer-shade"+b.index).on("click",function(){f.close(b.index)}),d.find(".layui-layer-min").on("click",function(){f.min(b.index,g),g.min&&g.min(d)}),d.find(".layui-layer-max").on("click",function(){c(this).hasClass("layui-layer-maxmin")?(f.restore(b.index),g.restore&&g.restore(d)):(f.full(b.index,g),g.full&&g.full(d))}),g.end&&(e.end[b.index]=g.end)},e.reselect=function(){c.each(c("select"),function(a,b){var d=c(this);d.parents("."+h[0])[0]||1==d.attr("layer")&&c("."+h[0]).length<1&&d.removeAttr("layer").show(),d=null})},g.pt.IE6=function(a){function b(){a.css({top:f+(e.config.fix?d.scrollTop():0)})}var e=this,f=a.offset().top;b(),d.scroll(b),c("select").each(function(a,b){var d=c(this);d.parents("."+h[0])[0]||"none"===d.css("display")||d.attr({layer:"1"}).hide(),d=null})},g.pt.openLayer=function(){var a=this;f.zIndex=a.config.zIndex,f.setTop=function(a){var b=function(){f.zIndex++,a.css("z-index",f.zIndex+1)};return f.zIndex=parseInt(a[0].style.zIndex),a.on("mousedown",b),f.zIndex}},e.record=function(a){var b=[a.outerWidth(),a.outerHeight(),a.position().top,a.position().left+parseFloat(a.css("margin-left"))];a.find(".layui-layer-max").addClass("layui-layer-maxmin"),a.attr({area:b})},e.rescollbar=function(a){h.html.attr("layer-full")==a&&(h.html[0].style.removeProperty?h.html[0].style.removeProperty("overflow"):h.html[0].style.removeAttribute("overflow"),h.html.removeAttr("layer-full"))},a.layer=f,f.getChildFrame=function(a,b){return b=b||c("."+h[4]).attr("times"),c("#"+h[0]+b).find("iframe").contents().find(a)},f.getFrameIndex=function(a){return c("#"+a).parents("."+h[4]).attr("times")},f.iframeAuto=function(a){if(a){var b=f.getChildFrame("html",a).outerHeight(),d=c("#"+h[0]+a),e=d.find(h[1]).outerHeight()||0,g=d.find("."+h[6]).outerHeight()||0;d.css({height:b+e+g}),d.find("iframe").css({height:b})}},f.iframeSrc=function(a,b){c("#"+h[0]+a).find("iframe").attr("src",b)},f.style=function(a,b){var d=c("#"+h[0]+a),f=d.attr("type"),g=d.find(h[1]).outerHeight()||0,i=d.find("."+h[6]).outerHeight()||0;(f===e.type[1]||f===e.type[2])&&(d.css(b),f===e.type[2]&&d.find("iframe").css({height:parseFloat(b.height)-g-i}))},f.min=function(a,b){var d=c("#"+h[0]+a),g=d.find(h[1]).outerHeight()||0;e.record(d),f.style(a,{width:180,height:g,overflow:"hidden"}),d.find(".layui-layer-min").hide(),"page"===d.attr("type")&&d.find(h[4]).hide(),e.rescollbar(a)},f.restore=function(a){var b=c("#"+h[0]+a),d=b.attr("area").split(",");b.attr("type");f.style(a,{width:parseFloat(d[0]),height:parseFloat(d[1]),top:parseFloat(d[2]),left:parseFloat(d[3]),overflow:"visible"}),b.find(".layui-layer-max").removeClass("layui-layer-maxmin"),b.find(".layui-layer-min").show(),"page"===b.attr("type")&&b.find(h[4]).show(),e.rescollbar(a)},f.full=function(a){var b,g=c("#"+h[0]+a);e.record(g),h.html.attr("layer-full")||h.html.css("overflow","hidden").attr("layer-full",a),clearTimeout(b),b=setTimeout(function(){var b="fixed"===g.css("position");f.style(a,{top:b?0:d.scrollTop(),left:b?0:d.scrollLeft(),width:d.width(),height:d.height()}),g.find(".layui-layer-min").hide()},100)},f.title=function(a,b){var d=c("#"+h[0]+(b||f.index)).find(h[1]);d.html(a)},f.close=function(a){var b=c("#"+h[0]+a),d=b.attr("type");if(b[0]){if(d===e.type[1]&&"object"===b.attr("conType")){b.children(":not(."+h[5]+")").remove();for(var g=0;2>g;g++)b.find(".layui-layer-wrap").unwrap().hide()}else{if(d===e.type[2])try{var i=c("#"+h[4]+a)[0];i.contentWindow.document.write(""),i.contentWindow.close(),b.find("."+h[5])[0].removeChild(i)}catch(j){}b[0].innerHTML="",b.remove()}c("#layui-layer-moves, #layui-layer-shade"+a).remove(),f.ie6&&e.reselect(),e.rescollbar(a),c(document).off("keydown",e.enter),"function"==typeof e.end[a]&&e.end[a](),delete e.end[a]}},f.closeAll=function(a){c.each(c("."+h[0]),function(){var b=c(this),d=a?b.attr("type")===a:1;d&&f.close(b.attr("times")),d=null})},e.run=function(){c=jQuery,d=c(a),h.html=c("html"),f.open=function(a){var b=new g(a);return b.index}},"function"==typeof define?define(function(){return e.run(),f}):function(){e.run(),f.use("skin/layer.css")}()}(window); | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
js/layer/layerMobile/layer.js
0 → 100644
| 1 | /*! layer mobile-v1.7 弹层组件移动版 License LGPL http://layer.layui.com/mobile By 贤心 */ | ||
| 2 | ;!function(a){"use strict";var b=document,c="querySelectorAll",d="getElementsByClassName",e=function(a){return b[c](a)},f={type:0,shade:!0,shadeClose:!0,fixed:!0,anim:!0},g={extend:function(a){var b=JSON.parse(JSON.stringify(f));for(var c in a)b[c]=a[c];return b},timer:{},end:{}};g.touch=function(a,b){var c;return/Android|iPhone|SymbianOS|Windows Phone|iPad|iPod/.test(navigator.userAgent)?(a.addEventListener("touchmove",function(){c=!0},!1),void a.addEventListener("touchend",function(a){a.preventDefault(),c||b.call(this,a),c=!1},!1)):a.addEventListener("click",function(a){b.call(this,a)},!1)};var h=0,i=["layermbox"],j=function(a){var b=this;b.config=g.extend(a),b.view()};j.prototype.view=function(){var a=this,c=a.config,f=b.createElement("div");a.id=f.id=i[0]+h,f.setAttribute("class",i[0]+" "+i[0]+(c.type||0)),f.setAttribute("index",h);var g=function(){var a="object"==typeof c.title;return c.title?'<h3 style="'+(a?c.title[1]:"")+'">'+(a?c.title[0]:c.title)+'</h3><button class="layermend"></button>':""}(),j=function(){var a,b=(c.btn||[]).length;return 0!==b&&c.btn?(a='<span type="1">'+c.btn[0]+"</span>",2===b&&(a='<span type="0">'+c.btn[1]+"</span>"+a),'<div class="layermbtn">'+a+"</div>"):""}();if(c.fixed||(c.top=c.hasOwnProperty("top")?c.top:100,c.style=c.style||"",c.style+=" top:"+(b.body.scrollTop+c.top)+"px"),2===c.type&&(c.content='<i></i><i class="laymloadtwo"></i><i></i>'),f.innerHTML=(c.shade?"<div "+("string"==typeof c.shade?'style="'+c.shade+'"':"")+' class="laymshade"></div>':"")+'<div class="layermmain" '+(c.fixed?"":'style="position:static;"')+'><div class="section"><div class="layermchild '+(c.className?c.className:"")+" "+(c.type||c.shade?"":"layermborder ")+(c.anim?"layermanim":"")+'" '+(c.style?'style="'+c.style+'"':"")+">"+g+'<div class="layermcont">'+c.content+"</div>"+j+"</div></div></div>",!c.type||2===c.type){var k=b[d](i[0]+c.type),l=k.length;l>=1&&layer.close(k[0].getAttribute("index"))}document.body.appendChild(f);var m=a.elem=e("#"+a.id)[0];c.success&&c.success(m),a.index=h++,a.action(c,m)},j.prototype.action=function(a,b){var c=this;if(a.time&&(g.timer[c.index]=setTimeout(function(){layer.close(c.index)},1e3*a.time)),a.title){var e=b[d]("layermend")[0],f=function(){a.cancel&&a.cancel(),layer.close(c.index)};g.touch(e,f)}var h=function(){var b=this.getAttribute("type");0==b?(a.no&&a.no(),layer.close(c.index)):a.yes?a.yes(c.index):layer.close(c.index)};if(a.btn)for(var i=b[d]("layermbtn")[0].children,j=i.length,k=0;j>k;k++)g.touch(i[k],h);if(a.shade&&a.shadeClose){var l=b[d]("laymshade")[0];g.touch(l,function(){layer.close(c.index,a.end)})}a.end&&(g.end[c.index]=a.end)},a.layer={v:"1.7",index:h,open:function(a){var b=new j(a||{});return b.index},close:function(a){var c=e("#"+i[0]+a)[0];c&&(c.innerHTML="",b.body.removeChild(c),clearTimeout(g.timer[a]),delete g.timer[a],"function"==typeof g.end[a]&&g.end[a](),delete g.end[a])},closeAll:function(){for(var a=b[d](i[0]),c=0,e=a.length;e>c;c++)layer.close(0|a[0].getAttribute("index"))}},"function"==typeof define?define(function(){return layer}):function(){var a=document.scripts,c=a[a.length-1],d=c.src,e=d.substring(0,d.lastIndexOf("/")+1);c.getAttribute("merge")||document.head.appendChild(function(){var a=b.createElement("link");return a.href=e+"need/layer.css",a.type="text/css",a.rel="styleSheet",a.id="layermcss",a}())}()}(window); | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
js/layer/layerMobile/need/layer.css
0 → 100644
| 1 | .layermbox{position:relative;z-index:19891014}.layermmain,.laymshade{position:fixed;left:0;top:0;width:100%;height:100%}.layermbtn span,.layermchild{display:inline-block;position:relative}.laymshade{background-color:rgba(0,0,0,.5);pointer-events:auto}.layermmain{display:table;font-family:Helvetica,arial,sans-serif;pointer-events:none}.layermmain .section{display:table-cell;vertical-align:middle;text-align:center}.layermchild{text-align:left;background-color:#fff;font-size:14px;border-radius:3px;box-shadow:0 0 8px rgba(0,0,0,.1);pointer-events:auto;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-duration:.18s;animation-duration:.18s}.layermborder{border:1px solid #999}@-webkit-keyframes bounceIn{0%{opacity:0;-webkit-transform:scale(.5);transform:scale(.5)}100%{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}.layermanim{animation-name:bounceIn;-webkit-animation-name:bounceIn}.layermbox0 .layermchild{max-width:90%;min-width:150px}.layermbox1 .layermchild{border:none;border-radius:0}.layermbox2 .layermchild{width:auto;max-width:260px;min-width:40px;border:none;background:0 0;box-shadow:none;color:#fff}.layermchild h3{padding:0 45px 0 10px;height:50px;line-height:50px;font-size:16px;font-weight:400;border-radius:3px 3px 0 0;border-bottom:1px solid #EBEBEB}.layermbtn span,.layermchild h3{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.layermcont{padding:20px 15px;line-height:22px;text-align:center}.layermbox1 .layermcont{padding:0;text-align:left}.layermbox2 .layermcont{text-align:center;padding:0;line-height:0}.layermbox2 .layermcont i{width:25px;height:25px;margin-left:8px;display:inline-block;background-color:#fff;border-radius:100%;-webkit-animation:bouncedelay 1.4s infinite ease-in-out;animation:bouncedelay 1.4s infinite ease-in-out;-webkit-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes bouncedelay{0%,100%,80%{transform:scale(0);-webkit-transform:scale(0)}40%{transform:scale(1);-webkit-transform:scale(1)}}@keyframes bouncedelay{0%,100%,80%{transform:scale(0);-webkit-transform:scale(0)}40%{transform:scale(1);-webkit-transform:scale(1)}}.layermbox2 .layermcont i:first-child{margin-left:0;-webkit-animation-delay:-.32s;animation-delay:-.32s}.layermbox2 .layermcont i.laymloadtwo{-webkit-animation-delay:-.16s;animation-delay:-.16s}.layermbox2 .layermcont>div{line-height:22px;padding-top:7px;margin-bottom:20px;font-size:14px}.layermbtn{position:relative;height:40px;line-height:40px;font-size:0;text-align:center;border-top:1px solid #EBEBEB}.layermbtn span{width:50%;text-align:center;font-size:14px;cursor:pointer;border-radius:0 3px 0 0}.layermbtn span:first-child{height:39px;border-radius:0 0 0 3px}.layermbtn:before{content:'\20';position:absolute;width:1px;height:39px;left:50%;top:0;background-color:#EBEBEB}.layermend{position:absolute;right:7px;top:10px;width:30px;height:30px;border:0;font-weight:400;background:0 0;cursor:pointer;-webkit-appearance:none;font-size:30px}.layermend::after,.layermend::before{position:absolute;left:5px;top:15px;content:'';width:18px;height:1px;background-color:#999;transform:rotate(45deg);-webkit-transform:rotate(45deg);border-radius:3px}.layermend::after{transform:rotate(-45deg);-webkit-transform:rotate(-45deg)} | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
js/layer/skin/default/icon-ext.png
0 → 100644
5.77 KB
js/layer/skin/default/icon.png
0 → 100644
11.2 KB
js/layer/skin/default/loading-0.gif
0 → 100644
5.66 KB
js/layer/skin/default/loading-1.gif
0 → 100644
701 Bytes
js/layer/skin/default/loading-2.gif
0 → 100644
1.75 KB
js/layer/skin/layer.css
0 → 100644
| 1 | /*! | ||
| 2 | |||
| 3 | @Name: layer's style | ||
| 4 | @Author: 贤心 | ||
| 5 | @Blog: sentsin.com | ||
| 6 | |||
| 7 | */*html{background-image:url(about:blank);background-attachment:fixed}html #layui_layer_skinlayercss{display:none;position:absolute;width:1989px}.layui-layer,.layui-layer-shade{position:fixed;_position:absolute;pointer-events:auto}.layui-layer-shade{top:0;left:0;width:100%;height:100%;_height:expression(document.body.offsetHeight+"px")}.layui-layer{top:150px;left:50%;margin:0;padding:0;background-color:#fff;-webkit-background-clip:content;box-shadow:1px 1px 50px rgba(0,0,0,.3);border-radius:2px;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-duration:.3s;animation-duration:.3s}.layui-layer-close{position:absolute}.layui-layer-content{position:relative}.layui-layer-border{border:1px solid #B2B2B2;border:1px solid rgba(0,0,0,.3);box-shadow:1px 1px 5px rgba(0,0,0,.2)}.layui-layer-moves{position:absolute;border:3px solid #666;border:3px solid rgba(0,0,0,.5);cursor:move;background-color:#fff;background-color:rgba(255,255,255,.3);filter:alpha(opacity=50)}.layui-layer-load{background:url(default/loading-0.gif) center center no-repeat #fff}.layui-layer-ico{background:url(default/icon.png) no-repeat}.layui-layer-btn a,.layui-layer-dialog .layui-layer-ico,.layui-layer-setwin a{display:inline-block;*display:inline;*zoom:1;vertical-align:top}@-webkit-keyframes bounceIn{0%{opacity:0;-webkit-transform:scale(.5);transform:scale(.5)}100%{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}@keyframes bounceIn{0%{opacity:0;-webkit-transform:scale(.5);-ms-transform:scale(.5);transform:scale(.5)}100%{opacity:1;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}.layui-anim{-webkit-animation-name:bounceIn;animation-name:bounceIn}@-webkit-keyframes bounceOut{100%{opacity:0;-webkit-transform:scale(.7);transform:scale(.7)}30%{-webkit-transform:scale(1.03);transform:scale(1.03)}0%{-webkit-transform:scale(1);transform:scale(1)}}@keyframes bounceOut{100%{opacity:0;-webkit-transform:scale(.7);-ms-transform:scale(.7);transform:scale(.7)}30%{-webkit-transform:scale(1.03);-ms-transform:scale(1.03);transform:scale(1.03)}0%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}.layui-anim-close{-webkit-animation-name:bounceOut;animation-name:bounceOut;-webkit-animation-duration:.2s;animation-duration:.2s}@-webkit-keyframes zoomInDown{0%{opacity:0;-webkit-transform:scale(.1) translateY(-2000px);transform:scale(.1) translateY(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateY(60px);transform:scale(.475) translateY(60px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}@keyframes zoomInDown{0%{opacity:0;-webkit-transform:scale(.1) translateY(-2000px);-ms-transform:scale(.1) translateY(-2000px);transform:scale(.1) translateY(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateY(60px);-ms-transform:scale(.475) translateY(60px);transform:scale(.475) translateY(60px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}.layui-anim-01{-webkit-animation-name:zoomInDown;animation-name:zoomInDown}@-webkit-keyframes fadeInUpBig{0%{opacity:0;-webkit-transform:translateY(2000px);transform:translateY(2000px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes fadeInUpBig{0%{opacity:0;-webkit-transform:translateY(2000px);-ms-transform:translateY(2000px);transform:translateY(2000px)}100%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.layui-anim-02{-webkit-animation-name:fadeInUpBig;animation-name:fadeInUpBig}@-webkit-keyframes zoomInLeft{0%{opacity:0;-webkit-transform:scale(.1) translateX(-2000px);transform:scale(.1) translateX(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateX(48px);transform:scale(.475) translateX(48px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}@keyframes zoomInLeft{0%{opacity:0;-webkit-transform:scale(.1) translateX(-2000px);-ms-transform:scale(.1) translateX(-2000px);transform:scale(.1) translateX(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateX(48px);-ms-transform:scale(.475) translateX(48px);transform:scale(.475) translateX(48px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}.layui-anim-03{-webkit-animation-name:zoomInLeft;animation-name:zoomInLeft}@-webkit-keyframes rollIn{0%{opacity:0;-webkit-transform:translateX(-100%) rotate(-120deg);transform:translateX(-100%) rotate(-120deg)}100%{opacity:1;-webkit-transform:translateX(0) rotate(0);transform:translateX(0) rotate(0)}}@keyframes rollIn{0%{opacity:0;-webkit-transform:translateX(-100%) rotate(-120deg);-ms-transform:translateX(-100%) rotate(-120deg);transform:translateX(-100%) rotate(-120deg)}100%{opacity:1;-webkit-transform:translateX(0) rotate(0);-ms-transform:translateX(0) rotate(0);transform:translateX(0) rotate(0)}}.layui-anim-04{-webkit-animation-name:rollIn;animation-name:rollIn}@keyframes fadeIn{0%{opacity:0}100%{opacity:1}}.layui-anim-05{-webkit-animation-name:fadeIn;animation-name:fadeIn}@-webkit-keyframes shake{0%,100%{-webkit-transform:translateX(0);transform:translateX(0)}10%,30%,50%,70%,90%{-webkit-transform:translateX(-10px);transform:translateX(-10px)}20%,40%,60%,80%{-webkit-transform:translateX(10px);transform:translateX(10px)}}@keyframes shake{0%,100%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}10%,30%,50%,70%,90%{-webkit-transform:translateX(-10px);-ms-transform:translateX(-10px);transform:translateX(-10px)}20%,40%,60%,80%{-webkit-transform:translateX(10px);-ms-transform:translateX(10px);transform:translateX(10px)}}.layui-anim-06{-webkit-animation-name:shake;animation-name:shake}@-webkit-keyframes fadeIn{0%{opacity:0}100%{opacity:1}}.layui-layer-title{padding:0 80px 0 20px;height:42px;line-height:42px;border-bottom:1px solid #eee;font-size:14px;color:#333;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background-color:#F8F8F8;border-radius:2px 2px 0 0}.layui-layer-setwin{position:absolute;right:15px;*right:0;top:15px;font-size:0;line-height:initial}.layui-layer-setwin a{position:relative;width:16px;height:16px;margin-left:10px;font-size:12px;_overflow:hidden}.layui-layer-setwin .layui-layer-min cite{position:absolute;width:14px;height:2px;left:0;top:50%;margin-top:-1px;background-color:#2E2D3C;cursor:pointer;_overflow:hidden}.layui-layer-setwin .layui-layer-min:hover cite{background-color:#2D93CA}.layui-layer-setwin .layui-layer-max{background-position:-32px -40px}.layui-layer-setwin .layui-layer-max:hover{background-position:-16px -40px}.layui-layer-setwin .layui-layer-maxmin{background-position:-65px -40px}.layui-layer-setwin .layui-layer-maxmin:hover{background-position:-49px -40px}.layui-layer-setwin .layui-layer-close1{background-position:0 -40px;cursor:pointer}.layui-layer-setwin .layui-layer-close1:hover{opacity:.7}.layui-layer-setwin .layui-layer-close2{position:absolute;right:-28px;top:-28px;width:30px;height:30px;margin-left:0;background-position:-149px -31px;*right:-18px;_display:none}.layui-layer-setwin .layui-layer-close2:hover{background-position:-180px -31px}.layui-layer-btn{text-align:right;padding:0 10px 12px;pointer-events:auto}.layui-layer-btn a{height:28px;line-height:28px;margin:0 6px;padding:0 15px;border:1px solid #dedede;background-color:#f1f1f1;color:#333;border-radius:2px;font-weight:400;cursor:pointer;text-decoration:none}.layui-layer-btn a:hover{opacity:.9;text-decoration:none}.layui-layer-btn a:active{opacity:.7}.layui-layer-btn .layui-layer-btn0{border-color:#4898d5;background-color:#2e8ded;color:#fff}.layui-layer-dialog{min-width:260px}.layui-layer-dialog .layui-layer-content{position:relative;padding:20px;line-height:24px;word-break:break-all;font-size:14px;overflow:auto}.layui-layer-dialog .layui-layer-content .layui-layer-ico{position:absolute;top:16px;left:15px;_left:-40px;width:30px;height:30px}.layui-layer-ico1{background-position:-30px 0}.layui-layer-ico2{background-position:-60px 0}.layui-layer-ico3{background-position:-90px 0}.layui-layer-ico4{background-position:-120px 0}.layui-layer-ico5{background-position:-150px 0}.layui-layer-ico6{background-position:-180px 0}.layui-layer-rim{border:6px solid #8D8D8D;border:6px solid rgba(0,0,0,.3);border-radius:5px;box-shadow:none}.layui-layer-msg{min-width:180px;border:1px solid #D3D4D3;box-shadow:none}.layui-layer-hui{min-width:100px;background-color:#000;filter:alpha(opacity=60);background-color:rgba(0,0,0,.6);color:#fff;border:none}.layui-layer-hui .layui-layer-content{padding:12px 25px;text-align:center}.layui-layer-dialog .layui-layer-padding{padding:20px 20px 20px 55px;text-align:left}.layui-layer-page .layui-layer-content{position:relative;overflow:auto}.layui-layer-iframe .layui-layer-btn,.layui-layer-page .layui-layer-btn{padding-top:10px}.layui-layer-nobg{background:0 0}.layui-layer-iframe .layui-layer-content{overflow:hidden}.layui-layer-iframe iframe{display:block;width:100%}.layui-layer-loading{border-radius:100%;background:0 0;box-shadow:none;border:none}.layui-layer-loading .layui-layer-content{width:60px;height:24px;background:url(default/loading-0.gif) no-repeat}.layui-layer-loading .layui-layer-loading1{width:37px;height:37px;background:url(default/loading-1.gif) no-repeat}.layui-layer-ico16,.layui-layer-loading .layui-layer-loading2{width:32px;height:32px;background:url(default/loading-2.gif) no-repeat}.layui-layer-tips{background:0 0;box-shadow:none;border:none}.layui-layer-tips .layui-layer-content{position:relative;line-height:22px;min-width:12px;padding:5px 10px;font-size:12px;_float:left;border-radius:3px;box-shadow:1px 1px 3px rgba(0,0,0,.3);background-color:#F90;color:#fff}.layui-layer-tips .layui-layer-close{right:-2px;top:-1px}.layui-layer-tips i.layui-layer-TipsG{position:absolute;width:0;height:0;border-width:8px;border-color:transparent;border-style:dashed;*overflow:hidden}.layui-layer-tips i.layui-layer-TipsB,.layui-layer-tips i.layui-layer-TipsT{left:5px;border-right-style:solid;border-right-color:#F90}.layui-layer-tips i.layui-layer-TipsT{bottom:-8px}.layui-layer-tips i.layui-layer-TipsB{top:-8px}.layui-layer-tips i.layui-layer-TipsL,.layui-layer-tips i.layui-layer-TipsR{top:1px;border-bottom-style:solid;border-bottom-color:#F90}.layui-layer-tips i.layui-layer-TipsR{left:-8px}.layui-layer-tips i.layui-layer-TipsL{right:-8px}.layui-layer-lan[type=dialog]{min-width:280px}.layui-layer-lan .layui-layer-title{background:#4476A7;color:#fff;border:none}.layui-layer-lan .layui-layer-lan .layui-layer-btn{padding:10px;text-align:right;border-top:1px solid #E9E7E7}.layui-layer-lan .layui-layer-btn a{background:#BBB5B5;border:none}.layui-layer-lan .layui-layer-btn .layui-layer-btn1{background:#C9C5C5}.layui-layer-molv .layui-layer-title{background:#009f95;color:#fff;border:none}.layui-layer-molv .layui-layer-btn a{background:#009f95}.layui-layer-molv .layui-layer-btn .layui-layer-btn1{background:#92B8B1} | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
js/layer/skin/layer.ext.css
0 → 100644
| 1 | /*! | ||
| 2 | |||
| 3 | @Name: layer拓展样式 | ||
| 4 | @Date: 2012.12.13 | ||
| 5 | @Author: 贤心 | ||
| 6 | @blog: sentsin.com | ||
| 7 | |||
| 8 | */.layui-layer-imgbar,.layui-layer-imgtit a,.layui-layer-tab .layui-layer-title span{text-overflow:ellipsis;white-space:nowrap}.layui-layer-iconext{background:url(default/icon-ext.png) no-repeat}html #layui_layer_skinlayerextcss{display:none;position:absolute;width:1989px}.layui-layer-prompt .layui-layer-input{display:block;width:220px;height:30px;margin:0 auto;line-height:30px;padding:0 5px;border:1px solid #ccc;box-shadow:1px 1px 5px rgba(0,0,0,.1) inset;color:#333}.layui-layer-prompt textarea.layui-layer-input{width:300px;height:100px;line-height:20px}.layui-layer-tab{box-shadow:1px 1px 50px rgba(0,0,0,.4)}.layui-layer-tab .layui-layer-title{padding-left:0;border-bottom:1px solid #ccc;background-color:#eee;overflow:visible}.layui-layer-tab .layui-layer-title span{position:relative;float:left;min-width:80px;max-width:260px;padding:0 20px;text-align:center;cursor:default;overflow:hidden}.layui-layer-tab .layui-layer-title span.layui-layer-tabnow{height:43px;border-left:1px solid #ccc;border-right:1px solid #ccc;background-color:#fff;z-index:10}.layui-layer-tab .layui-layer-title span:first-child{border-left:none}.layui-layer-tabmain{line-height:24px;clear:both}.layui-layer-tabmain .layui-layer-tabli{display:none}.layui-layer-tabmain .layui-layer-tabli.xubox_tab_layer{display:block}.xubox_tabclose{position:absolute;right:10px;top:5px;cursor:pointer}.layui-layer-photos{-webkit-animation-duration:1s;animation-duration:1s;}.layui-layer-photos .layui-layer-content{overflow:hidden;text-align:center}.layui-layer-photos .layui-layer-phimg img{position:relative;width:100%;display:inline-block;*display:inline;*zoom:1;vertical-align:top}.layui-layer-imgbar,.layui-layer-imguide{display:none}.layui-layer-imgnext,.layui-layer-imgprev{position:absolute;top:50%;width:27px;_width:44px;height:44px;margin-top:-22px;outline:0;blr:expression(this.onFocus=this.blur())}.layui-layer-imgprev{left:10px;background-position:-5px -5px;_background-position:-70px -5px}.layui-layer-imgprev:hover{background-position:-33px -5px;_background-position:-120px -5px}.layui-layer-imgnext{right:10px;_right:8px;background-position:-5px -50px;_background-position:-70px -50px}.layui-layer-imgnext:hover{background-position:-33px -50px;_background-position:-120px -50px}.layui-layer-imgbar{position:absolute;left:0;bottom:0;width:100%;height:32px;line-height:32px;background-color:rgba(0,0,0,.8);background-color:#000\9;filter:Alpha(opacity=80);color:#fff;overflow:hidden;font-size:0}.layui-layer-imgtit *{display:inline-block;*display:inline;*zoom:1;vertical-align:top;font-size:12px}.layui-layer-imgtit a{max-width:65%;overflow:hidden;color:#fff}.layui-layer-imgtit a:hover{color:#fff;text-decoration:underline}.layui-layer-imgtit em{padding-left:10px;font-style:normal} | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
js/mui.js
0 → 100644
This diff could not be displayed because it is too large.
js/mui.min.js
0 → 100644
This diff could not be displayed because it is too large.
js/mui/mui.js
0 → 100644
This diff could not be displayed because it is too large.
js/mui/mui.min.js
0 → 100644
This diff could not be displayed because it is too large.
js/service/city.json
0 → 100644
This diff could not be displayed because it is too large.
js/service/dingdaService.js
0 → 100644
| 1 | angular.module('myApp.services') | ||
| 2 | .service( 'dingdaService', [ '$http','globalService', | ||
| 3 | function($http,globalService) { | ||
| 4 | return { | ||
| 5 | sendPhoneCode: function(phone , openId){ | ||
| 6 | var url = globalService.getParam('dingdaLoginAPI') + '/login/sms?mobile=' + phone + '&openId=' + openId; | ||
| 7 | var res = $http.get(url).success(function(data, status) { | ||
| 8 | }).error(function(data, status) { | ||
| 9 | alert(data.meta.message) | ||
| 10 | }); | ||
| 11 | return res; | ||
| 12 | }, | ||
| 13 | verifyPhoneCode : function(phone , code){ | ||
| 14 | var url = globalService.getParam('dingdaLoginAPI') + '/login/sms?mobile=' + phone + '&code=' + code; | ||
| 15 | var res = $http.post(url , { | ||
| 16 | } , { | ||
| 17 | }).success(function(data, status) { | ||
| 18 | |||
| 19 | }).error(function(data, status) { | ||
| 20 | alert(data.meta.message) | ||
| 21 | }); | ||
| 22 | return res; | ||
| 23 | }, | ||
| 24 | getStationList : function(longitude , latitude){ | ||
| 25 | var url = globalService.getParam('dingdaAPI') + '/service/bicycle/stations?longitude=' + longitude | ||
| 26 | + '&latitude=' + latitude; | ||
| 27 | var res = $http.get(url).success(function(data, status) { | ||
| 28 | }).error(function(data, status) { | ||
| 29 | alert(data.meta.message) | ||
| 30 | }); | ||
| 31 | return res; | ||
| 32 | }, | ||
| 33 | getStationById : function(id){ | ||
| 34 | var url = globalService.getParam('dingdaAPI') + '/service/bicycle/stations/' + id; | ||
| 35 | var res = $http.get(url).success(function(data, status) { | ||
| 36 | }).error(function(data, status) { | ||
| 37 | alert(data.meta.message) | ||
| 38 | }); | ||
| 39 | return res; | ||
| 40 | }, | ||
| 41 | getUnfinishedOrder : function(){ | ||
| 42 | var url = globalService.getParam('dingdaAPI') + '/service/bicycle/orders/unfinished'; | ||
| 43 | var res = $http.get(url).success(function(data, status) { | ||
| 44 | }).error(function(data, status) { | ||
| 45 | alert(data.meta.message) | ||
| 46 | }); | ||
| 47 | return res; | ||
| 48 | }, | ||
| 49 | verifyScanCode : function(code){ | ||
| 50 | var url = globalService.getParam('dingdaAPI') + '/service/bicycle/order?code=' + code; | ||
| 51 | var res = $http.post(url , { }).success(function(data, status) { | ||
| 52 | |||
| 53 | }).error(function(data, status) { | ||
| 54 | alert(data.meta.message) | ||
| 55 | }); | ||
| 56 | return res; | ||
| 57 | }, | ||
| 58 | getOrderRealTimeInfo : function(id){ | ||
| 59 | var url = globalService.getParam('dingdaAPI') + '/service/bicycle/orders/detail/' + id; | ||
| 60 | var res = $http.get(url).success(function(data, status) { | ||
| 61 | }).error(function(data, status) { | ||
| 62 | alert(data.meta.message) | ||
| 63 | }); | ||
| 64 | return res; | ||
| 65 | }, | ||
| 66 | getOrderList : function(page){ | ||
| 67 | var url = globalService.getParam('dingdaAPI') + '/service/bicycle/orders?pageSize=10&pageNum=' + page; | ||
| 68 | var res = $http.get(url).success(function(data, status) { | ||
| 69 | }).error(function(data, status) { | ||
| 70 | alert(data.meta.message) | ||
| 71 | }); | ||
| 72 | return res; | ||
| 73 | }, | ||
| 74 | getOrderFinishInfo : function(id){ | ||
| 75 | var url = globalService.getParam('dingdaAPI') + '/service/bicycle/orders/' + id; | ||
| 76 | var res = $http.get(url).success(function(data, status) { | ||
| 77 | }).error(function(data, status) { | ||
| 78 | alert(data.meta.message) | ||
| 79 | }); | ||
| 80 | return res; | ||
| 81 | }, | ||
| 82 | setOrderFinish : function(id){ | ||
| 83 | var url = globalService.getParam('dingdaAPI') + '/service/bicycle/order/finish/' + id; | ||
| 84 | var res = $http.post(url , {}).success(function(data, status) { | ||
| 85 | }).error(function(data, status) { | ||
| 86 | alert(data.meta.message) | ||
| 87 | }); | ||
| 88 | return res; | ||
| 89 | }, | ||
| 90 | payWX : function(id , payInfo) { | ||
| 91 | var url = globalService.getParam('financeAPI') + '/service/bill/wx/' + id; | ||
| 92 | var res = $http.post(url , payInfo).success(function(data, status) { | ||
| 93 | |||
| 94 | }).error(function(data, status) { | ||
| 95 | alert(data.meta.message) | ||
| 96 | }); | ||
| 97 | return res; | ||
| 98 | }, | ||
| 99 | getWallet : function() { | ||
| 100 | var url = globalService.getParam('financeAPI') + '/service/balance'; | ||
| 101 | var res = $http.get(url).success(function(data, status) { | ||
| 102 | }).error(function(data, status) { | ||
| 103 | alert(data.meta.message) | ||
| 104 | }); | ||
| 105 | return res; | ||
| 106 | }, | ||
| 107 | payWallet : function(payInfo) { | ||
| 108 | var url = globalService.getParam('financeAPI') + '/service/balance/wx'; | ||
| 109 | var res = $http.post(url , payInfo).success(function(data, status) { | ||
| 110 | }).error(function(data, status) { | ||
| 111 | alert(data.meta.message) | ||
| 112 | }); | ||
| 113 | return res; | ||
| 114 | }, | ||
| 115 | getWalletHistory : function(page) { | ||
| 116 | var url = globalService.getParam('financeAPI') + '/service/balances?pageSize=10&pageNum' + page; | ||
| 117 | var res = $http.get(url).success(function(data, status) { | ||
| 118 | }).error(function(data, status) { | ||
| 119 | alert(data.meta.message) | ||
| 120 | }); | ||
| 121 | return res; | ||
| 122 | }, | ||
| 123 | getBond : function(longitude , latitude) { | ||
| 124 | var url = globalService.getParam('dingdaAPI') + '/service/bicycle/deposit?longitude=' + longitude | ||
| 125 | + '&latitude=' + latitude; | ||
| 126 | var res = $http.get(url).success(function(data, status) { | ||
| 127 | }).error(function(data, status) { | ||
| 128 | alert(data.meta.message) | ||
| 129 | }); | ||
| 130 | return res; | ||
| 131 | }, | ||
| 132 | payBond : function(payInfo) { | ||
| 133 | var url = globalService.getParam('financeAPI') + '/service/bail/wx'; | ||
| 134 | var res = $http.post(url , payInfo).success(function(data, status) { | ||
| 135 | }).error(function(data, status) { | ||
| 136 | alert(data.meta.message) | ||
| 137 | }); | ||
| 138 | return res; | ||
| 139 | }, | ||
| 140 | returnBond : function(page) { | ||
| 141 | var url = globalService.getParam('dingdaAPI') + '/service/bicycle/deposit'; | ||
| 142 | var res = $http.delete(url).success(function(data, status) { | ||
| 143 | }).error(function(data, status) { | ||
| 144 | alert(data.meta.message) | ||
| 145 | }); | ||
| 146 | return res; | ||
| 147 | }, | ||
| 148 | comment : function(message) { | ||
| 149 | var url = globalService.getParam('feedbackAPI') + '/service/comments'; | ||
| 150 | var res = $http.post(url , message).success(function(data, status) { | ||
| 151 | }).error(function(data, status) { | ||
| 152 | alert(data.meta.message) | ||
| 153 | }); | ||
| 154 | return res; | ||
| 155 | }, | ||
| 156 | getVersion : function() { | ||
| 157 | var url = globalService.getParam('dingdaAPI') + '/service/version'; | ||
| 158 | var res = $http.get(url).success(function(data, status) { | ||
| 159 | }).error(function(data, status) { | ||
| 160 | alert(data.meta.message) | ||
| 161 | }); | ||
| 162 | return res; | ||
| 163 | } | ||
| 164 | } | ||
| 165 | }]) | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
js/service/globalService.js
0 → 100644
| 1 | |||
| 2 | angular.module('myApp.services') | ||
| 3 | .service('globalService', | ||
| 4 | [ '$http', '$rootScope', 'localStorageService', | ||
| 5 | function($http, $rootScope ,localStorageService) { | ||
| 6 | |||
| 7 | var setHeaderToken = function (token){ | ||
| 8 | $http.defaults.headers.common = { | ||
| 9 | "token": token , | ||
| 10 | "version": "1.0.0" , | ||
| 11 | "source" : "WX" | ||
| 12 | }; | ||
| 13 | } | ||
| 14 | var init = function(){ | ||
| 15 | $rootScope.params = {}; | ||
| 16 | $rootScope.config = {}; | ||
| 17 | $rootScope.data = {}; | ||
| 18 | $rootScope.inited = true; | ||
| 19 | //--------------------自行车服务-------------- | ||
| 20 | // 生产环境 | ||
| 21 | var dingdaAPI = "http://bike.dy.dingdatech.com"; | ||
| 22 | // 测试环境 | ||
| 23 | //var dingdaAPI = "http://bike.api.dingdachuxing.com"; | ||
| 24 | globalConfig.setParam("dingdaAPI", dingdaAPI); | ||
| 25 | //--------------------财务服务-------------- | ||
| 26 | // 生产环境 | ||
| 27 | var financeAPI = "http://finance.dy.dingdatech.com"; | ||
| 28 | // 测试环境 | ||
| 29 | //var financeAPI = "http://finance.api.dingdachuxing.com"; | ||
| 30 | globalConfig.setParam("financeAPI", financeAPI); | ||
| 31 | //--------------------反馈服务-------------- | ||
| 32 | // 生产环境 | ||
| 33 | var feedbackAPI = "http://feedback.dy.dingdatech.com"; | ||
| 34 | // 测试环境 | ||
| 35 | //var feedbackAPI = "http://feedback.api.dingdachuxing.com"; | ||
| 36 | globalConfig.setParam("feedbackAPI", feedbackAPI); | ||
| 37 | //--------------------认证服务-------------- | ||
| 38 | // 生产环境 | ||
| 39 | var dingdaLoginAPI = "http://auth.dy.dingdatech.com"; | ||
| 40 | // 测试环境 | ||
| 41 | //var dingdaLoginAPI = "http://auth.api.dingdachuxing.com"; | ||
| 42 | globalConfig.setParam("dingdaLoginAPI", dingdaLoginAPI); | ||
| 43 | |||
| 44 | $rootScope.$watch("data.user",function(newVal, oldVal){ | ||
| 45 | if(!newVal){ | ||
| 46 | return; | ||
| 47 | } | ||
| 48 | if(newVal.token) { | ||
| 49 | setHeaderToken(newVal.token); | ||
| 50 | } | ||
| 51 | }) | ||
| 52 | |||
| 53 | loadPersistData(); | ||
| 54 | loadCityConfig(); | ||
| 55 | loadPathParams(); | ||
| 56 | initWeixinMenu($http); | ||
| 57 | |||
| 58 | } | ||
| 59 | |||
| 60 | var loadPersistData = function() { | ||
| 61 | var keys = localStorageService.keys(); | ||
| 62 | for(var x in keys){ | ||
| 63 | globalConfig.setData(keys[x], localStorageService.get(keys[x])); | ||
| 64 | } | ||
| 65 | if(globalConfig.getData("user")){ | ||
| 66 | setHeaderToken(globalConfig.getData("user").token); | ||
| 67 | } | ||
| 68 | |||
| 69 | } | ||
| 70 | |||
| 71 | var loadPathParams = function() { | ||
| 72 | var url = window.location.href, | ||
| 73 | parts = url.split('?'); | ||
| 74 | if(parts.length == 2){ | ||
| 75 | var hash = parts[1].indexOf('#') | ||
| 76 | if(hash != -1){ | ||
| 77 | parts[1] = parts[1].substring(0, hash) | ||
| 78 | } | ||
| 79 | |||
| 80 | var pairs = parts[1].split('&') | ||
| 81 | pairs.forEach(function(pair){ | ||
| 82 | var kv = pair.split('=') | ||
| 83 | if(kv.length == 2){ | ||
| 84 | globalConfig.setData(kv[0], kv[1]); | ||
| 85 | } | ||
| 86 | }) | ||
| 87 | } | ||
| 88 | |||
| 89 | } | ||
| 90 | |||
| 91 | var loadCityConfig = function() { | ||
| 92 | // $http.get("js/service/city.json").success(function (data) { | ||
| 93 | // $rootScope.config.province = {}; | ||
| 94 | // for (var i = 0; i < data.length; i++) { | ||
| 95 | // $rootScope.config.province[data[i].id] = data[i]; | ||
| 96 | // }; | ||
| 97 | // }) | ||
| 98 | } | ||
| 99 | |||
| 100 | var globalConfig = { | ||
| 101 | init : init, | ||
| 102 | getParam : function(key){ | ||
| 103 | return $rootScope.params[key]; | ||
| 104 | }, | ||
| 105 | setParam : function(key, value){ | ||
| 106 | $rootScope.params[key] = value | ||
| 107 | }, | ||
| 108 | getConfig : function(key){ | ||
| 109 | return $rootScope.config[key]; | ||
| 110 | }, | ||
| 111 | setConfig : function(key, value){ | ||
| 112 | $rootScope.config[key] = value; | ||
| 113 | }, | ||
| 114 | getData : function(key){ | ||
| 115 | return $rootScope.data[key]; | ||
| 116 | }, | ||
| 117 | setData : function(key, value){ | ||
| 118 | $rootScope.data[key] = value; | ||
| 119 | }, | ||
| 120 | saveData : function(key, value){ | ||
| 121 | if(value){ | ||
| 122 | this.setData(key, value) | ||
| 123 | } | ||
| 124 | localStorageService.set(key, value); | ||
| 125 | }, | ||
| 126 | clearData : function(key){ | ||
| 127 | this.setData(key, null); | ||
| 128 | localStorageService.set(key, null); | ||
| 129 | $http.defaults.headers.common = { }; | ||
| 130 | } | ||
| 131 | } | ||
| 132 | return globalConfig; | ||
| 133 | } | ||
| 134 | ] | ||
| 135 | ); | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
js/service/wechatPaymentService.js
0 → 100644
| 1 | angular.module('myApp.services') | ||
| 2 | .service('wechatPayment',['$http', '$q', '$rootScope',function($http, $q, $rootScope) { | ||
| 3 | |||
| 4 | //var host = 'http://finance.api.dingdachuxing.com/service'; | ||
| 5 | var host = 'http://finance.dy.dingdatech.com/service'; | ||
| 6 | |||
| 7 | var h5wxhost = 'http://lsz1.28ms.com/service/balance/'; | ||
| 8 | |||
| 9 | var h5alipayhost = 'http://lsz1.28ms.com/service/balance/'; | ||
| 10 | |||
| 11 | |||
| 12 | |||
| 13 | //调用微信JS api 支付 | ||
| 14 | var jsApiCall = function (sign, q) { | ||
| 15 | WeixinJSBridge.invoke( | ||
| 16 | 'getBrandWCPayRequest', { | ||
| 17 | appId : sign.appId, | ||
| 18 | timeStamp : sign.timeStamp, | ||
| 19 | nonceStr : sign.nonceStr, | ||
| 20 | package : sign.packageStr, | ||
| 21 | signType : sign.signType, | ||
| 22 | paySign : sign.paySign | ||
| 23 | }, | ||
| 24 | function (res) { | ||
| 25 | if (res.err_msg == 'get_brand_wcpay_request:ok') { | ||
| 26 | layer.open({ | ||
| 27 | content: '支付成功!', | ||
| 28 | time:1 | ||
| 29 | }); | ||
| 30 | q.resolve(res.err_msg); | ||
| 31 | return; | ||
| 32 | } else if (res.err_msg == 'get_brand_wcpay_request:fail') { | ||
| 33 | alert("支付失败:" + JSON.stringify(res)) | ||
| 34 | layer.open({ | ||
| 35 | content: '支付失败!', | ||
| 36 | time:1 | ||
| 37 | }); | ||
| 38 | } else if (res.err_msg == 'get_brand_wcpay_request:cancel') { | ||
| 39 | layer.open({ | ||
| 40 | content: '支付取消!', | ||
| 41 | time:1 | ||
| 42 | }); | ||
| 43 | } else { | ||
| 44 | layer.open({ | ||
| 45 | content: '支付异常,'+res.err_msg, | ||
| 46 | time:1 | ||
| 47 | }); | ||
| 48 | } | ||
| 49 | q.reject(res.err_msg); | ||
| 50 | // WeixinJSBridge.log(res.err_msg); | ||
| 51 | // console.error(res.err_msg); | ||
| 52 | } | ||
| 53 | ); | ||
| 54 | } | ||
| 55 | |||
| 56 | var wxh5ApiCall = function (sign, q) { | ||
| 57 | console.log('sign', sign); | ||
| 58 | window.location.href = sign.mwebUrl; | ||
| 59 | } | ||
| 60 | |||
| 61 | |||
| 62 | var callUnifiedOrderApi = function(url, data){ | ||
| 63 | var q = $q.defer(); | ||
| 64 | $http.post(url, data) | ||
| 65 | .success(function (data) { | ||
| 66 | if(data.meta.code == 200) { | ||
| 67 | // alert('支付签名返回:' + JSON.stringify(data)); | ||
| 68 | wxh5ApiCall(data.data.wechatDto, q); | ||
| 69 | }else{ | ||
| 70 | layer.open({ | ||
| 71 | content:'支付失败:code '+data.meta.code+","+ data.meta.message, | ||
| 72 | time:1 | ||
| 73 | }); | ||
| 74 | q.reject(data.meta.message) | ||
| 75 | } | ||
| 76 | }) | ||
| 77 | |||
| 78 | return q.promise; | ||
| 79 | } | ||
| 80 | |||
| 81 | return { | ||
| 82 | /** | ||
| 83 | * 租车付款 | ||
| 84 | */ | ||
| 85 | callRentPay: function (orderId, amount) { | ||
| 86 | return callUnifiedOrderApi(host + '/bill/wx/' + orderId, { | ||
| 87 | amount : amount, | ||
| 88 | body : "租车租金", | ||
| 89 | type : 101 | ||
| 90 | }); | ||
| 91 | }, | ||
| 92 | /** | ||
| 93 | * 保证金充值 | ||
| 94 | * @param amount | ||
| 95 | */ | ||
| 96 | callDepositPay : function(amount){ | ||
| 97 | return callUnifiedOrderApi(host + "/bail/wx", { | ||
| 98 | amount : amount, | ||
| 99 | body : "保证金充值", | ||
| 100 | type : 101 | ||
| 101 | }); | ||
| 102 | }, | ||
| 103 | /** | ||
| 104 | * 钱包充值 | ||
| 105 | * @param amount | ||
| 106 | */ | ||
| 107 | callBalanceRecharge : function(amount,way){ | ||
| 108 | var host = (way == 100 ? h5alipayhost+ "alipay/h5" : h5wxhost+ "wx/h5"); | ||
| 109 | return callUnifiedOrderApi(host, { | ||
| 110 | amount : amount, | ||
| 111 | body : "钱包充值", | ||
| 112 | type : parseInt(way) | ||
| 113 | }); | ||
| 114 | } | ||
| 115 | } | ||
| 116 | }]); |
js/service/weixinConfig.js
0 → 100644
| 1 | /** | ||
| 2 | * Created by zhanghong on 15/3/8. | ||
| 3 | */ | ||
| 4 | function weixinOptionMenuInit(appId, timestamp, nonceStr, signature){ | ||
| 5 | try { | ||
| 6 | // wwsDebug.info("appId:" + appId); | ||
| 7 | // wwsDebug.info("timestamp:" + timestamp); | ||
| 8 | // wwsDebug.info("nonceStr:" + nonceStr); | ||
| 9 | // wwsDebug.info("signature:" + signature); | ||
| 10 | // alert("typeof wx.config " + typeof wx.config); | ||
| 11 | // if (wx) { | ||
| 12 | /*wx.config({ | ||
| 13 | debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。 | ||
| 14 | appId: appId, // 必填,公众号的唯一标识 | ||
| 15 | timestamp: timestamp, // 必填,生成签名的时间戳 | ||
| 16 | nonceStr: nonceStr, // 必填,生成签名的随机串 | ||
| 17 | signature: signature,// 必填,签名,见附录1 | ||
| 18 | jsApiList: ['scanQRCode','getLocation'] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2 | ||
| 19 | }); | ||
| 20 | wx.error(function(res){ | ||
| 21 | layer.open({ | ||
| 22 | content:"微信扫码功能不能用,无法使用扫码租车", | ||
| 23 | time:1 | ||
| 24 | }); | ||
| 25 | // config信息验证失败会执行error函数,如签名过期导致验证失败,具体错误信息可以打开config的debug模式查看,也可以在返回的res参数中查看,对于SPA可以在这里更新签名。 | ||
| 26 | |||
| 27 | }); | ||
| 28 | wx.ready(function(){ | ||
| 29 | // alert('wx ready') | ||
| 30 | // config信息验证后会执行ready方法,所有接口调用都必须在config接口获得结果之后,config是一个客户端的异步操作,所以如果需要在页面加载时就调用相关接口,则须把相关接口放在ready函数中调用来确保正确执行。对于用户触发时才调用的接口,则可以直接调用,不需要放在ready函数中。 | ||
| 31 | wx.checkJsApi({ | ||
| 32 | jsApiList: ['scanQRCode','getLocation'], // 需要检测的JS接口列表,所有JS接口列表见附录2, | ||
| 33 | success: function(res) { | ||
| 34 | if(res.checkResult.scanQRCode != true){ | ||
| 35 | layer.open({ | ||
| 36 | content: '您的微信版本太低,不支持扫码', | ||
| 37 | time:1 | ||
| 38 | }); | ||
| 39 | |||
| 40 | } | ||
| 41 | // 以键值对的形式返回,可用的api值true,不可用为false | ||
| 42 | // 如:{"checkResult":{"chooseImage":true},"errMsg":"checkJsApi:ok"} | ||
| 43 | } | ||
| 44 | }); | ||
| 45 | });*/ | ||
| 46 | // } | ||
| 47 | }catch(exception){ | ||
| 48 | // alert("exception " + exception) | ||
| 49 | layer.open({ | ||
| 50 | content:"微信扫码功能异常,无法使用扫码租车", | ||
| 51 | time:1 | ||
| 52 | }); | ||
| 53 | } | ||
| 54 | } | ||
| 55 | |||
| 56 | function initWeixinMenu($http){ | ||
| 57 | var url = encodeURIComponent(location.href.split('#')[0]); | ||
| 58 | //生产环境 wechat.api.dingdatech.com | ||
| 59 | $http.post("http://wechat.dy.dingdatech.com/wx/qrCodeParms", | ||
| 60 | { | ||
| 61 | webUrl : url | ||
| 62 | }) | ||
| 63 | .success(function(data){ | ||
| 64 | // alert(JSON.stringify(data) + ", with url : " + location.href.split('#')[0]) | ||
| 65 | if(data){ | ||
| 66 | weixinOptionMenuInit(data.appid, data.timestamp, data.noncestr, data.signature); | ||
| 67 | } | ||
| 68 | }) | ||
| 69 | .error(function(arg1){ | ||
| 70 | try { | ||
| 71 | layer.open({ | ||
| 72 | content:"微信jssdk配置接口失败:" + JSON.stringify(arg1), | ||
| 73 | time:1 | ||
| 74 | }); | ||
| 75 | }catch(e){ | ||
| 76 | layer.open({ | ||
| 77 | content:"微信jssdk配置接口失败:" + arg1, | ||
| 78 | time:1 | ||
| 79 | }); | ||
| 80 | } | ||
| 81 | // alert(arg1); | ||
| 82 | }); | ||
| 83 | } |
-
Please register or sign in to post a comment