gnucash-invoice 0.0.1 → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -3,6 +3,7 @@ require 'sequel'
3
3
 
4
4
 
5
5
  # internal
6
+ require 'gnucash/options'
6
7
  require 'gnucash/timestamps'
7
8
 
8
9
 
@@ -29,7 +29,8 @@ module GnuCash
29
29
  template.render(self, {
30
30
  :invoice => @invoice,
31
31
  :entries => @invoice.entries,
32
- :customer => @invoice.customer
32
+ :customer => @invoice.customer,
33
+ :options => Options
33
34
  })
34
35
  end
35
36
 
@@ -1,5 +1,5 @@
1
1
  module GnuCash
2
2
  class Invoice
3
- VERSION = "0.0.1"
3
+ VERSION = "0.1.0"
4
4
  end
5
5
  end
@@ -0,0 +1,25 @@
1
+ module GnuCash
2
+ module Options
3
+ extend self
4
+
5
+
6
+ def [] key
7
+ data = dataset.where(:name => "options/#{key}").first
8
+
9
+ return "[Unkown option #{key}" unless data
10
+
11
+ case data[:slot_type]
12
+ when 4 then data[:string_val]
13
+ else "[Unknown data type for #{key}]"
14
+ end
15
+ end
16
+
17
+
18
+ private
19
+
20
+
21
+ def dataset
22
+ GnuCash.connection[:slots]
23
+ end
24
+ end
25
+ end
@@ -1,13 +1,80 @@
1
1
  //= require normalize
2
- //= require bootstrap
2
+
3
+
4
+ body {
5
+ font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
6
+ margin: 5%;
7
+ color: #333333;
8
+ background-color: #ffffff;
9
+ }
10
+
11
+
12
+ .business {
13
+ float: left;
14
+ text-align: left;
15
+ width: 50%;
16
+ }
17
+
3
18
 
4
19
  .customer {
20
+ float: right;
5
21
  text-align: right;
22
+ width: 50%;
23
+ }
24
+
25
+
26
+ .clearfix {
27
+ height: 2em;
28
+ clear: both;
29
+ }
30
+
31
+
32
+ .info {
33
+ padding: 1em;
34
+ background: #fafafa;
35
+ border-radius: 3px;
36
+ text-align: center;
6
37
  }
7
38
 
8
- tr.total td {
9
- background-color: #fafafa;
10
- border-top-width: 2px;
11
- font-weight: bold;
12
- font-size: 1.1em;
39
+
40
+ .entries {
41
+ width: 100%;
42
+
43
+
44
+ th, td {
45
+ padding: 6px;
46
+ line-height: 20px;
47
+ text-align: left;
48
+ vertical-align: top;
49
+ border-top: 1px solid #dddddd;
50
+ }
51
+
52
+ th {
53
+ font-weight: bold;
54
+ }
55
+
56
+ thead th {
57
+ vertical-align: bottom;
58
+ }
59
+
60
+ thead:first-child tr:first-child th,
61
+ thead:first-child tr:first-child td {
62
+ border-top: 0;
63
+ }
64
+
65
+ .date, .quant, .price {
66
+ white-space: nowrap;
67
+ }
68
+
69
+ .quant, .price {
70
+ text-align: center;
71
+ }
72
+
73
+ .total td {
74
+ background-color: #fafafa;
75
+ border-top: 1px solid #cccccc;
76
+ font-weight: bold;
77
+ font-size: 1.1em;
78
+ padding: 9px 6px;
79
+ }
13
80
  }
@@ -1,44 +1,51 @@
1
1
  doctype html
2
2
  html
3
3
  head
4
- title = invoice.id
4
+ meta charset="utf-8"
5
+ title = "#{invoice.id} (#{invoice.posted? ? invoice.posted_at : "DRAFT"})"
5
6
  style type="text/css" = embedded_asset('main.css')
6
7
  body
7
- .container
8
- .row
9
- .span6.offset6.customer
10
- address
11
- strong = customer.name
12
- - for addr in customer.address_lines
13
- br
14
- = addr
8
+ .business
9
+ address
10
+ strong = options["Business/Company Name"]
11
+ - for addr in options["Business/Company Address"].split("\n")
12
+ br
13
+ = addr
15
14
 
16
- .row
17
- .span12
18
- table.table.table-condensed
19
- thead
20
- th Date
21
- th Description
22
- th Action
23
- th Quantity
24
- th Unit Price
25
- th Subtotal
26
- tbody
27
- - for entry in entries do
28
- tr
29
- td = entry.date
30
- td = entry.description
31
- td = entry.action
32
- td = entry.quantity
33
- td € #{entry.price}
34
- td € #{entry.total}
35
- tr.total
36
- td colspan=5 TOTAL
37
- td: span.price € #{invoice.total}
15
+ .customer
16
+ address
17
+ strong = customer.name
18
+ - for addr in customer.address_lines
19
+ br
20
+ = addr
38
21
 
39
- - unless invoice.notes.empty?
40
- .row
41
- .span12
42
- #notes
43
- h3 Notes
44
- p = invoice.notes
22
+ .clearfix
23
+
24
+ .info
25
+ strong Invoice ##{invoice.id}
26
+ - if invoice.posted?
27
+ br
28
+ em = invoice.posted_at.strftime '%B %d, %Y'
29
+
30
+ .clearfix
31
+
32
+ table.entries
33
+ thead
34
+ th.date Date
35
+ th Description
36
+ th Action
37
+ th.quant Quantity
38
+ th.price Unit Price
39
+ th.price Subtotal
40
+ tbody
41
+ - for entry in entries do
42
+ tr
43
+ td.date = entry.date
44
+ td = entry.description
45
+ td = entry.action
46
+ td.quant = "%0.2f" % entry.quantity
47
+ td.price = "€ %0.2f" % entry.price
48
+ td.price = "€ %0.2f" % entry.total
49
+ tr.total
50
+ td colspan=5 TOTAL
51
+ td.price = "€ %0.2f" % invoice.total
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gnucash-invoice
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.1.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -11,7 +11,7 @@ authors:
11
11
  autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2012-12-01 00:00:00.000000000 Z
14
+ date: 2012-12-29 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: sequel
@@ -133,8 +133,8 @@ files:
133
133
  - lib/gnucash/invoice/runner.rb
134
134
  - lib/gnucash/invoice/supplier.rb
135
135
  - lib/gnucash/invoice/version.rb
136
+ - lib/gnucash/options.rb
136
137
  - lib/gnucash/timestamps.rb
137
- - templates/assets/stylesheets/bootstrap.css
138
138
  - templates/assets/stylesheets/main.css.scss
139
139
  - templates/assets/stylesheets/normalize.css
140
140
  - templates/invoice.slim
@@ -161,6 +161,6 @@ rubyforge_project:
161
161
  rubygems_version: 1.8.23
162
162
  signing_key:
163
163
  specification_version: 3
164
- summary: gnucash-invoice-0.0.1
164
+ summary: gnucash-invoice-0.1.0
165
165
  test_files: []
166
166
  has_rdoc:
@@ -1,907 +0,0 @@
1
- /*!
2
- * Bootstrap v2.2.1
3
- *
4
- * Copyright 2012 Twitter, Inc
5
- * Licensed under the Apache License v2.0
6
- * http://www.apache.org/licenses/LICENSE-2.0
7
- *
8
- * Designed and built with all the love in the world @twitter by @mdo and @fat.
9
- */
10
- .clearfix {
11
- *zoom: 1;
12
- }
13
- .clearfix:before,
14
- .clearfix:after {
15
- display: table;
16
- content: "";
17
- line-height: 0;
18
- }
19
- .clearfix:after {
20
- clear: both;
21
- }
22
- .hide-text {
23
- font: 0/0 a;
24
- color: transparent;
25
- text-shadow: none;
26
- background-color: transparent;
27
- border: 0;
28
- }
29
- .input-block-level {
30
- display: block;
31
- width: 100%;
32
- min-height: 30px;
33
- -webkit-box-sizing: border-box;
34
- -moz-box-sizing: border-box;
35
- box-sizing: border-box;
36
- }
37
- body {
38
- margin: 0;
39
- font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
40
- font-size: 14px;
41
- line-height: 20px;
42
- color: #333333;
43
- background-color: #ffffff;
44
- }
45
- a {
46
- color: #0088cc;
47
- text-decoration: none;
48
- }
49
- a:hover {
50
- color: #005580;
51
- text-decoration: underline;
52
- }
53
- .img-rounded {
54
- -webkit-border-radius: 6px;
55
- -moz-border-radius: 6px;
56
- border-radius: 6px;
57
- }
58
- .img-polaroid {
59
- padding: 4px;
60
- background-color: #fff;
61
- border: 1px solid #ccc;
62
- border: 1px solid rgba(0, 0, 0, 0.2);
63
- -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
64
- -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
65
- box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
66
- }
67
- .img-circle {
68
- -webkit-border-radius: 500px;
69
- -moz-border-radius: 500px;
70
- border-radius: 500px;
71
- }
72
- .row {
73
- margin-left: -20px;
74
- *zoom: 1;
75
- }
76
- .row:before,
77
- .row:after {
78
- display: table;
79
- content: "";
80
- line-height: 0;
81
- }
82
- .row:after {
83
- clear: both;
84
- }
85
- [class*="span"] {
86
- float: left;
87
- min-height: 1px;
88
- margin-left: 20px;
89
- }
90
- .container,
91
- .navbar-static-top .container,
92
- .navbar-fixed-top .container,
93
- .navbar-fixed-bottom .container {
94
- width: 940px;
95
- }
96
- .span12 {
97
- width: 940px;
98
- }
99
- .span11 {
100
- width: 860px;
101
- }
102
- .span10 {
103
- width: 780px;
104
- }
105
- .span9 {
106
- width: 700px;
107
- }
108
- .span8 {
109
- width: 620px;
110
- }
111
- .span7 {
112
- width: 540px;
113
- }
114
- .span6 {
115
- width: 460px;
116
- }
117
- .span5 {
118
- width: 380px;
119
- }
120
- .span4 {
121
- width: 300px;
122
- }
123
- .span3 {
124
- width: 220px;
125
- }
126
- .span2 {
127
- width: 140px;
128
- }
129
- .span1 {
130
- width: 60px;
131
- }
132
- .offset12 {
133
- margin-left: 980px;
134
- }
135
- .offset11 {
136
- margin-left: 900px;
137
- }
138
- .offset10 {
139
- margin-left: 820px;
140
- }
141
- .offset9 {
142
- margin-left: 740px;
143
- }
144
- .offset8 {
145
- margin-left: 660px;
146
- }
147
- .offset7 {
148
- margin-left: 580px;
149
- }
150
- .offset6 {
151
- margin-left: 500px;
152
- }
153
- .offset5 {
154
- margin-left: 420px;
155
- }
156
- .offset4 {
157
- margin-left: 340px;
158
- }
159
- .offset3 {
160
- margin-left: 260px;
161
- }
162
- .offset2 {
163
- margin-left: 180px;
164
- }
165
- .offset1 {
166
- margin-left: 100px;
167
- }
168
- .row-fluid {
169
- width: 100%;
170
- *zoom: 1;
171
- }
172
- .row-fluid:before,
173
- .row-fluid:after {
174
- display: table;
175
- content: "";
176
- line-height: 0;
177
- }
178
- .row-fluid:after {
179
- clear: both;
180
- }
181
- .row-fluid [class*="span"] {
182
- display: block;
183
- width: 100%;
184
- min-height: 30px;
185
- -webkit-box-sizing: border-box;
186
- -moz-box-sizing: border-box;
187
- box-sizing: border-box;
188
- float: left;
189
- margin-left: 2.127659574468085%;
190
- *margin-left: 2.074468085106383%;
191
- }
192
- .row-fluid [class*="span"]:first-child {
193
- margin-left: 0;
194
- }
195
- .row-fluid .controls-row [class*="span"] + [class*="span"] {
196
- margin-left: 2.127659574468085%;
197
- }
198
- .row-fluid .span12 {
199
- width: 100%;
200
- *width: 99.94680851063829%;
201
- }
202
- .row-fluid .span11 {
203
- width: 91.48936170212765%;
204
- *width: 91.43617021276594%;
205
- }
206
- .row-fluid .span10 {
207
- width: 82.97872340425532%;
208
- *width: 82.92553191489361%;
209
- }
210
- .row-fluid .span9 {
211
- width: 74.46808510638297%;
212
- *width: 74.41489361702126%;
213
- }
214
- .row-fluid .span8 {
215
- width: 65.95744680851064%;
216
- *width: 65.90425531914893%;
217
- }
218
- .row-fluid .span7 {
219
- width: 57.44680851063829%;
220
- *width: 57.39361702127659%;
221
- }
222
- .row-fluid .span6 {
223
- width: 48.93617021276595%;
224
- *width: 48.88297872340425%;
225
- }
226
- .row-fluid .span5 {
227
- width: 40.42553191489362%;
228
- *width: 40.37234042553192%;
229
- }
230
- .row-fluid .span4 {
231
- width: 31.914893617021278%;
232
- *width: 31.861702127659576%;
233
- }
234
- .row-fluid .span3 {
235
- width: 23.404255319148934%;
236
- *width: 23.351063829787233%;
237
- }
238
- .row-fluid .span2 {
239
- width: 14.893617021276595%;
240
- *width: 14.840425531914894%;
241
- }
242
- .row-fluid .span1 {
243
- width: 6.382978723404255%;
244
- *width: 6.329787234042553%;
245
- }
246
- .row-fluid .offset12 {
247
- margin-left: 104.25531914893617%;
248
- *margin-left: 104.14893617021275%;
249
- }
250
- .row-fluid .offset12:first-child {
251
- margin-left: 102.12765957446808%;
252
- *margin-left: 102.02127659574467%;
253
- }
254
- .row-fluid .offset11 {
255
- margin-left: 95.74468085106382%;
256
- *margin-left: 95.6382978723404%;
257
- }
258
- .row-fluid .offset11:first-child {
259
- margin-left: 93.61702127659574%;
260
- *margin-left: 93.51063829787232%;
261
- }
262
- .row-fluid .offset10 {
263
- margin-left: 87.23404255319149%;
264
- *margin-left: 87.12765957446807%;
265
- }
266
- .row-fluid .offset10:first-child {
267
- margin-left: 85.1063829787234%;
268
- *margin-left: 84.99999999999999%;
269
- }
270
- .row-fluid .offset9 {
271
- margin-left: 78.72340425531914%;
272
- *margin-left: 78.61702127659572%;
273
- }
274
- .row-fluid .offset9:first-child {
275
- margin-left: 76.59574468085106%;
276
- *margin-left: 76.48936170212764%;
277
- }
278
- .row-fluid .offset8 {
279
- margin-left: 70.2127659574468%;
280
- *margin-left: 70.10638297872339%;
281
- }
282
- .row-fluid .offset8:first-child {
283
- margin-left: 68.08510638297872%;
284
- *margin-left: 67.9787234042553%;
285
- }
286
- .row-fluid .offset7 {
287
- margin-left: 61.70212765957446%;
288
- *margin-left: 61.59574468085106%;
289
- }
290
- .row-fluid .offset7:first-child {
291
- margin-left: 59.574468085106375%;
292
- *margin-left: 59.46808510638297%;
293
- }
294
- .row-fluid .offset6 {
295
- margin-left: 53.191489361702125%;
296
- *margin-left: 53.085106382978715%;
297
- }
298
- .row-fluid .offset6:first-child {
299
- margin-left: 51.063829787234035%;
300
- *margin-left: 50.95744680851063%;
301
- }
302
- .row-fluid .offset5 {
303
- margin-left: 44.68085106382979%;
304
- *margin-left: 44.57446808510638%;
305
- }
306
- .row-fluid .offset5:first-child {
307
- margin-left: 42.5531914893617%;
308
- *margin-left: 42.4468085106383%;
309
- }
310
- .row-fluid .offset4 {
311
- margin-left: 36.170212765957444%;
312
- *margin-left: 36.06382978723405%;
313
- }
314
- .row-fluid .offset4:first-child {
315
- margin-left: 34.04255319148936%;
316
- *margin-left: 33.93617021276596%;
317
- }
318
- .row-fluid .offset3 {
319
- margin-left: 27.659574468085104%;
320
- *margin-left: 27.5531914893617%;
321
- }
322
- .row-fluid .offset3:first-child {
323
- margin-left: 25.53191489361702%;
324
- *margin-left: 25.425531914893618%;
325
- }
326
- .row-fluid .offset2 {
327
- margin-left: 19.148936170212764%;
328
- *margin-left: 19.04255319148936%;
329
- }
330
- .row-fluid .offset2:first-child {
331
- margin-left: 17.02127659574468%;
332
- *margin-left: 16.914893617021278%;
333
- }
334
- .row-fluid .offset1 {
335
- margin-left: 10.638297872340425%;
336
- *margin-left: 10.53191489361702%;
337
- }
338
- .row-fluid .offset1:first-child {
339
- margin-left: 8.51063829787234%;
340
- *margin-left: 8.404255319148938%;
341
- }
342
- [class*="span"].hide,
343
- .row-fluid [class*="span"].hide {
344
- display: none;
345
- }
346
- [class*="span"].pull-right,
347
- .row-fluid [class*="span"].pull-right {
348
- float: right;
349
- }
350
- .container {
351
- margin-right: auto;
352
- margin-left: auto;
353
- *zoom: 1;
354
- }
355
- .container:before,
356
- .container:after {
357
- display: table;
358
- content: "";
359
- line-height: 0;
360
- }
361
- .container:after {
362
- clear: both;
363
- }
364
- .container-fluid {
365
- padding-right: 20px;
366
- padding-left: 20px;
367
- *zoom: 1;
368
- }
369
- .container-fluid:before,
370
- .container-fluid:after {
371
- display: table;
372
- content: "";
373
- line-height: 0;
374
- }
375
- .container-fluid:after {
376
- clear: both;
377
- }
378
- p {
379
- margin: 0 0 10px;
380
- }
381
- .lead {
382
- margin-bottom: 20px;
383
- font-size: 21px;
384
- font-weight: 200;
385
- line-height: 30px;
386
- }
387
- small {
388
- font-size: 85%;
389
- }
390
- strong {
391
- font-weight: bold;
392
- }
393
- em {
394
- font-style: italic;
395
- }
396
- cite {
397
- font-style: normal;
398
- }
399
- .muted {
400
- color: #999999;
401
- }
402
- .text-warning {
403
- color: #c09853;
404
- }
405
- a.text-warning:hover {
406
- color: #a47e3c;
407
- }
408
- .text-error {
409
- color: #b94a48;
410
- }
411
- a.text-error:hover {
412
- color: #953b39;
413
- }
414
- .text-info {
415
- color: #3a87ad;
416
- }
417
- a.text-info:hover {
418
- color: #2d6987;
419
- }
420
- .text-success {
421
- color: #468847;
422
- }
423
- a.text-success:hover {
424
- color: #356635;
425
- }
426
- h1,
427
- h2,
428
- h3,
429
- h4,
430
- h5,
431
- h6 {
432
- margin: 10px 0;
433
- font-family: inherit;
434
- font-weight: bold;
435
- line-height: 20px;
436
- color: inherit;
437
- text-rendering: optimizelegibility;
438
- }
439
- h1 small,
440
- h2 small,
441
- h3 small,
442
- h4 small,
443
- h5 small,
444
- h6 small {
445
- font-weight: normal;
446
- line-height: 1;
447
- color: #999999;
448
- }
449
- h1,
450
- h2,
451
- h3 {
452
- line-height: 40px;
453
- }
454
- h1 {
455
- font-size: 38.5px;
456
- }
457
- h2 {
458
- font-size: 31.5px;
459
- }
460
- h3 {
461
- font-size: 24.5px;
462
- }
463
- h4 {
464
- font-size: 17.5px;
465
- }
466
- h5 {
467
- font-size: 14px;
468
- }
469
- h6 {
470
- font-size: 11.9px;
471
- }
472
- h1 small {
473
- font-size: 24.5px;
474
- }
475
- h2 small {
476
- font-size: 17.5px;
477
- }
478
- h3 small {
479
- font-size: 14px;
480
- }
481
- h4 small {
482
- font-size: 14px;
483
- }
484
- .page-header {
485
- padding-bottom: 9px;
486
- margin: 20px 0 30px;
487
- border-bottom: 1px solid #eeeeee;
488
- }
489
- ul,
490
- ol {
491
- padding: 0;
492
- margin: 0 0 10px 25px;
493
- }
494
- ul ul,
495
- ul ol,
496
- ol ol,
497
- ol ul {
498
- margin-bottom: 0;
499
- }
500
- li {
501
- line-height: 20px;
502
- }
503
- ul.unstyled,
504
- ol.unstyled {
505
- margin-left: 0;
506
- list-style: none;
507
- }
508
- dl {
509
- margin-bottom: 20px;
510
- }
511
- dt,
512
- dd {
513
- line-height: 20px;
514
- }
515
- dt {
516
- font-weight: bold;
517
- }
518
- dd {
519
- margin-left: 10px;
520
- }
521
- .dl-horizontal {
522
- *zoom: 1;
523
- }
524
- .dl-horizontal:before,
525
- .dl-horizontal:after {
526
- display: table;
527
- content: "";
528
- line-height: 0;
529
- }
530
- .dl-horizontal:after {
531
- clear: both;
532
- }
533
- .dl-horizontal dt {
534
- float: left;
535
- width: 160px;
536
- clear: left;
537
- text-align: right;
538
- overflow: hidden;
539
- text-overflow: ellipsis;
540
- white-space: nowrap;
541
- }
542
- .dl-horizontal dd {
543
- margin-left: 180px;
544
- }
545
- hr {
546
- margin: 20px 0;
547
- border: 0;
548
- border-top: 1px solid #eeeeee;
549
- border-bottom: 1px solid #ffffff;
550
- }
551
- abbr[title],
552
- abbr[data-original-title] {
553
- cursor: help;
554
- border-bottom: 1px dotted #999999;
555
- }
556
- abbr.initialism {
557
- font-size: 90%;
558
- text-transform: uppercase;
559
- }
560
- blockquote {
561
- padding: 0 0 0 15px;
562
- margin: 0 0 20px;
563
- border-left: 5px solid #eeeeee;
564
- }
565
- blockquote p {
566
- margin-bottom: 0;
567
- font-size: 16px;
568
- font-weight: 300;
569
- line-height: 25px;
570
- }
571
- blockquote small {
572
- display: block;
573
- line-height: 20px;
574
- color: #999999;
575
- }
576
- blockquote small:before {
577
- content: '\2014 \00A0';
578
- }
579
- blockquote.pull-right {
580
- float: right;
581
- padding-right: 15px;
582
- padding-left: 0;
583
- border-right: 5px solid #eeeeee;
584
- border-left: 0;
585
- }
586
- blockquote.pull-right p,
587
- blockquote.pull-right small {
588
- text-align: right;
589
- }
590
- blockquote.pull-right small:before {
591
- content: '';
592
- }
593
- blockquote.pull-right small:after {
594
- content: '\00A0 \2014';
595
- }
596
- q:before,
597
- q:after,
598
- blockquote:before,
599
- blockquote:after {
600
- content: "";
601
- }
602
- address {
603
- display: block;
604
- margin-bottom: 20px;
605
- font-style: normal;
606
- line-height: 20px;
607
- }
608
- .label,
609
- .badge {
610
- display: inline-block;
611
- padding: 2px 4px;
612
- font-size: 11.844px;
613
- font-weight: bold;
614
- line-height: 14px;
615
- color: #ffffff;
616
- vertical-align: baseline;
617
- white-space: nowrap;
618
- text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
619
- background-color: #999999;
620
- }
621
- .label {
622
- -webkit-border-radius: 3px;
623
- -moz-border-radius: 3px;
624
- border-radius: 3px;
625
- }
626
- .badge {
627
- padding-left: 9px;
628
- padding-right: 9px;
629
- -webkit-border-radius: 9px;
630
- -moz-border-radius: 9px;
631
- border-radius: 9px;
632
- }
633
- a.label:hover,
634
- a.badge:hover {
635
- color: #ffffff;
636
- text-decoration: none;
637
- cursor: pointer;
638
- }
639
- .label-important,
640
- .badge-important {
641
- background-color: #b94a48;
642
- }
643
- .label-important[href],
644
- .badge-important[href] {
645
- background-color: #953b39;
646
- }
647
- .label-warning,
648
- .badge-warning {
649
- background-color: #f89406;
650
- }
651
- .label-warning[href],
652
- .badge-warning[href] {
653
- background-color: #c67605;
654
- }
655
- .label-success,
656
- .badge-success {
657
- background-color: #468847;
658
- }
659
- .label-success[href],
660
- .badge-success[href] {
661
- background-color: #356635;
662
- }
663
- .label-info,
664
- .badge-info {
665
- background-color: #3a87ad;
666
- }
667
- .label-info[href],
668
- .badge-info[href] {
669
- background-color: #2d6987;
670
- }
671
- .label-inverse,
672
- .badge-inverse {
673
- background-color: #333333;
674
- }
675
- .label-inverse[href],
676
- .badge-inverse[href] {
677
- background-color: #1a1a1a;
678
- }
679
- .btn .label,
680
- .btn .badge {
681
- position: relative;
682
- top: -1px;
683
- }
684
- .btn-mini .label,
685
- .btn-mini .badge {
686
- top: 0;
687
- }
688
- table {
689
- max-width: 100%;
690
- background-color: transparent;
691
- border-collapse: collapse;
692
- border-spacing: 0;
693
- }
694
- .table {
695
- width: 100%;
696
- margin-bottom: 20px;
697
- }
698
- .table th,
699
- .table td {
700
- padding: 8px;
701
- line-height: 20px;
702
- text-align: left;
703
- vertical-align: top;
704
- border-top: 1px solid #dddddd;
705
- }
706
- .table th {
707
- font-weight: bold;
708
- }
709
- .table thead th {
710
- vertical-align: bottom;
711
- }
712
- .table caption + thead tr:first-child th,
713
- .table caption + thead tr:first-child td,
714
- .table colgroup + thead tr:first-child th,
715
- .table colgroup + thead tr:first-child td,
716
- .table thead:first-child tr:first-child th,
717
- .table thead:first-child tr:first-child td {
718
- border-top: 0;
719
- }
720
- .table tbody + tbody {
721
- border-top: 2px solid #dddddd;
722
- }
723
- .table-condensed th,
724
- .table-condensed td {
725
- padding: 4px 5px;
726
- }
727
- .table-bordered {
728
- border: 1px solid #dddddd;
729
- border-collapse: separate;
730
- *border-collapse: collapse;
731
- border-left: 0;
732
- -webkit-border-radius: 4px;
733
- -moz-border-radius: 4px;
734
- border-radius: 4px;
735
- }
736
- .table-bordered th,
737
- .table-bordered td {
738
- border-left: 1px solid #dddddd;
739
- }
740
- .table-bordered caption + thead tr:first-child th,
741
- .table-bordered caption + tbody tr:first-child th,
742
- .table-bordered caption + tbody tr:first-child td,
743
- .table-bordered colgroup + thead tr:first-child th,
744
- .table-bordered colgroup + tbody tr:first-child th,
745
- .table-bordered colgroup + tbody tr:first-child td,
746
- .table-bordered thead:first-child tr:first-child th,
747
- .table-bordered tbody:first-child tr:first-child th,
748
- .table-bordered tbody:first-child tr:first-child td {
749
- border-top: 0;
750
- }
751
- .table-bordered thead:first-child tr:first-child th:first-child,
752
- .table-bordered tbody:first-child tr:first-child td:first-child {
753
- -webkit-border-top-left-radius: 4px;
754
- border-top-left-radius: 4px;
755
- -moz-border-radius-topleft: 4px;
756
- }
757
- .table-bordered thead:first-child tr:first-child th:last-child,
758
- .table-bordered tbody:first-child tr:first-child td:last-child {
759
- -webkit-border-top-right-radius: 4px;
760
- border-top-right-radius: 4px;
761
- -moz-border-radius-topright: 4px;
762
- }
763
- .table-bordered thead:last-child tr:last-child th:first-child,
764
- .table-bordered tbody:last-child tr:last-child td:first-child,
765
- .table-bordered tfoot:last-child tr:last-child td:first-child {
766
- -webkit-border-radius: 0 0 0 4px;
767
- -moz-border-radius: 0 0 0 4px;
768
- border-radius: 0 0 0 4px;
769
- -webkit-border-bottom-left-radius: 4px;
770
- border-bottom-left-radius: 4px;
771
- -moz-border-radius-bottomleft: 4px;
772
- }
773
- .table-bordered thead:last-child tr:last-child th:last-child,
774
- .table-bordered tbody:last-child tr:last-child td:last-child,
775
- .table-bordered tfoot:last-child tr:last-child td:last-child {
776
- -webkit-border-bottom-right-radius: 4px;
777
- border-bottom-right-radius: 4px;
778
- -moz-border-radius-bottomright: 4px;
779
- }
780
- .table-bordered caption + thead tr:first-child th:first-child,
781
- .table-bordered caption + tbody tr:first-child td:first-child,
782
- .table-bordered colgroup + thead tr:first-child th:first-child,
783
- .table-bordered colgroup + tbody tr:first-child td:first-child {
784
- -webkit-border-top-left-radius: 4px;
785
- border-top-left-radius: 4px;
786
- -moz-border-radius-topleft: 4px;
787
- }
788
- .table-bordered caption + thead tr:first-child th:last-child,
789
- .table-bordered caption + tbody tr:first-child td:last-child,
790
- .table-bordered colgroup + thead tr:first-child th:last-child,
791
- .table-bordered colgroup + tbody tr:first-child td:last-child {
792
- -webkit-border-top-right-radius: 4px;
793
- border-top-right-radius: 4px;
794
- -moz-border-radius-topright: 4px;
795
- }
796
- .table-striped tbody tr:nth-child(odd) td,
797
- .table-striped tbody tr:nth-child(odd) th {
798
- background-color: #f9f9f9;
799
- }
800
- .table-hover tbody tr:hover td,
801
- .table-hover tbody tr:hover th {
802
- background-color: #f5f5f5;
803
- }
804
- table td[class*="span"],
805
- table th[class*="span"],
806
- .row-fluid table td[class*="span"],
807
- .row-fluid table th[class*="span"] {
808
- display: table-cell;
809
- float: none;
810
- margin-left: 0;
811
- }
812
- .table td.span1,
813
- .table th.span1 {
814
- float: none;
815
- width: 44px;
816
- margin-left: 0;
817
- }
818
- .table td.span2,
819
- .table th.span2 {
820
- float: none;
821
- width: 124px;
822
- margin-left: 0;
823
- }
824
- .table td.span3,
825
- .table th.span3 {
826
- float: none;
827
- width: 204px;
828
- margin-left: 0;
829
- }
830
- .table td.span4,
831
- .table th.span4 {
832
- float: none;
833
- width: 284px;
834
- margin-left: 0;
835
- }
836
- .table td.span5,
837
- .table th.span5 {
838
- float: none;
839
- width: 364px;
840
- margin-left: 0;
841
- }
842
- .table td.span6,
843
- .table th.span6 {
844
- float: none;
845
- width: 444px;
846
- margin-left: 0;
847
- }
848
- .table td.span7,
849
- .table th.span7 {
850
- float: none;
851
- width: 524px;
852
- margin-left: 0;
853
- }
854
- .table td.span8,
855
- .table th.span8 {
856
- float: none;
857
- width: 604px;
858
- margin-left: 0;
859
- }
860
- .table td.span9,
861
- .table th.span9 {
862
- float: none;
863
- width: 684px;
864
- margin-left: 0;
865
- }
866
- .table td.span10,
867
- .table th.span10 {
868
- float: none;
869
- width: 764px;
870
- margin-left: 0;
871
- }
872
- .table td.span11,
873
- .table th.span11 {
874
- float: none;
875
- width: 844px;
876
- margin-left: 0;
877
- }
878
- .table td.span12,
879
- .table th.span12 {
880
- float: none;
881
- width: 924px;
882
- margin-left: 0;
883
- }
884
- .table tbody tr.success td {
885
- background-color: #dff0d8;
886
- }
887
- .table tbody tr.error td {
888
- background-color: #f2dede;
889
- }
890
- .table tbody tr.warning td {
891
- background-color: #fcf8e3;
892
- }
893
- .table tbody tr.info td {
894
- background-color: #d9edf7;
895
- }
896
- .table-hover tbody tr.success:hover td {
897
- background-color: #d0e9c6;
898
- }
899
- .table-hover tbody tr.error:hover td {
900
- background-color: #ebcccc;
901
- }
902
- .table-hover tbody tr.warning:hover td {
903
- background-color: #faf2cc;
904
- }
905
- .table-hover tbody tr.info:hover td {
906
- background-color: #c4e3f3;
907
- }