Proyectos de Subversion LeadersLinked - Backend

Rev

Rev 16825 | Ir a la última revisión | | Comparar con el anterior | Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
16825 efrain 1
/*
2
 * jQuery OrgChart Plugin
3
 * https://github.com/dabeng/OrgChart
4
 *
5
 * Copyright 2016, dabeng
6
 * https://github.com/dabeng
7
 *
8
 * Licensed under the MIT license:
9
 * http://www.opensource.org/licenses/MIT
10
 */
11
 
16960 stevensc 12
/* chart styles */
16825 efrain 13
.orgchart {
14
  box-sizing: border-box;
15
  display: inline-block;
16
  -webkit-touch-callout: none;
17
  -webkit-user-select: none;
18
  -khtml-user-select: none;
19
  -moz-user-select: none;
20
  -ms-user-select: none;
21
  user-select: none;
22
  background-image: linear-gradient(to top, rgba(200, 0, 0, 0.15) 5%, rgba(0, 0, 0, 0) 5%),
16960 stevensc 23
    linear-gradient(to right, rgba(200, 0, 0, 0.15) 5%, rgba(0, 0, 0, 0) 5%),
24
    linear-gradient(to bottom, rgba(200, 0, 0, 0.15) 5%, rgba(0, 0, 0, 0) 5%),
25
    linear-gradient(to left, rgba(200, 0, 0, 0.15) 5%, rgba(0, 0, 0, 0) 5%);
26
  background-size: 10px 10px;
27
  /* background square size */
16825 efrain 28
  padding: 20px 20px 0 20px;
29
  /* border: 0.5px solid rgba(200, 0, 0, 0.15); */
30
}
31
 
16960 stevensc 32
.orgchart .hidden,
33
.orgchart~.hidden {
34
  display: none !important;
16825 efrain 35
}
36
 
37
.orgchart.b2t {
38
  transform: rotate(180deg);
39
}
40
 
41
.orgchart.l2r {
42
  position: absolute;
43
  transform: rotate(-90deg) rotateY(180deg);
44
  transform-origin: left top;
45
  text-align: center;
46
}
47
 
48
.orgchart.r2l {
49
  position: absolute;
50
  transform: rotate(90deg);
51
  transform-origin: left top;
52
  text-align: center;
53
}
54
 
16960 stevensc 55
.orgchart~.mask {
16825 efrain 56
  position: absolute;
57
  top: 0;
58
  right: 0;
59
  bottom: 0;
60
  left: 0;
61
  z-index: 999;
62
  text-align: center;
16960 stevensc 63
  background-color: rgba(0, 0, 0, 0.3);
16825 efrain 64
}
65
 
16960 stevensc 66
.orgchart~.mask .spinner {
16825 efrain 67
  position: absolute;
68
  top: calc(50% - 50px);
69
  left: calc(50% - 50px);
70
}
71
 
16960 stevensc 72
.orgchart>.spinner::before,
73
.orgchart~.mask .spinner::before {
16825 efrain 74
  width: 100px;
75
  height: 100px;
76
  border-width: 10px;
77
  border-radius: 50px;
78
  border-top-color: rgba(68, 157, 68, 0.8);
79
  border-bottom-color: rgba(68, 157, 68, 0.8);
80
  border-left-color: rgba(68, 157, 68, 0.8);
81
}
82
 
83
.orgchart .nodes {
84
  display: flex;
85
  list-style: none;
86
  padding-left: 0;
87
  margin: 0;
88
}
89
 
90
.orgchart .hierarchy {
91
  position: relative;
92
}
93
 
94
/* styles of link lines */
95
.orgchart .hierarchy::before {
96
  content: "";
97
  position: absolute;
16960 stevensc 98
  top: -11px;
99
  /* -(background square size + half width of line) */
16825 efrain 100
  left: 0;
101
  width: 100%;
102
  border-top: 2px solid rgba(217, 83, 79, 0.8);
103
  box-sizing: border-box;
104
}
105
 
106
.orgchart .hierarchy:first-child::before,
107
.orgchart .hierarchy.isSiblingsCollapsed.left-sibs::before {
108
  left: calc(50% - 1px);
109
  width: calc(50% + 1px);
110
}
111
 
112
.orgchart .hierarchy:last-child::before,
113
.orgchart .hierarchy.isSiblingsCollapsed.right-sibs::before {
114
  width: calc(50% + 1px);
115
}
116
 
117
.orgchart .hierarchy:not(.hidden):only-child::before {
118
  width: 2px;
119
}
120
 
16960 stevensc 121
.orgchart>.nodes>.hierarchy::before,
16825 efrain 122
.orgchart .isSiblingsCollapsed:not(.left-sibs):not(.right-sibs)::before,
123
.orgchart .isSiblingsCollapsed.left-sibs.right-sibs::before,
124
.orgchart .isSiblingsCollapsed.right-sibs:first-child:before,
125
.orgchart .isSiblingsCollapsed.left-sibs:last-child:before,
126
.orgchart .isCollapsedSibling::before,
127
.orgchart .isCollapsedSibling .hierarchy::before,
16960 stevensc 128
.orgchart .isChildrenCollapsed>.node:not(:only-child)::after,
16825 efrain 129
.orgchart .isCollapsedDescendant::before,
16960 stevensc 130
.orgchart .isCollapsedDescendant>.node::before,
131
.orgchart .isCollapsedDescendant>.node::after,
16825 efrain 132
.orgchart .isAncestorsCollapsed:only-child::before,
16960 stevensc 133
.orgchart .isAncestorsCollapsed>.node::before {
16825 efrain 134
  content: none;
135
}
136
 
137
/* excluding leaf node */
138
.orgchart .node:not(:only-child)::after {
139
  content: "";
140
  position: absolute;
16960 stevensc 141
  bottom: -12px;
142
  /* -(background square size + node's border width) */
16825 efrain 143
  left: calc(50% - 1px);
144
  width: 2px;
16960 stevensc 145
  height: 10px;
146
  /* background square size */
16825 efrain 147
  background-color: rgba(217, 83, 79, 0.8);
148
}
149
 
150
.orgchart ul li .node.allowedDrop {
151
  border-color: rgba(68, 157, 68, 0.9);
152
}
16960 stevensc 153
 
16825 efrain 154
.orgchart ul li .node.currentDropTarget {
155
  background-color: rgba(68, 157, 68, 0.9);
156
}
16960 stevensc 157
 
16825 efrain 158
.orgchart ul li .node.selected {
159
  background-color: rgba(238, 217, 54, 0.5);
160
}
16960 stevensc 161
 
16825 efrain 162
.orgchart ul li .node:hover {
163
  background-color: rgba(238, 217, 54, 0.5);
164
}
16960 stevensc 165
 
16825 efrain 166
/* excluding root node */
16960 stevensc 167
.orgchart>ul>li>ul li>.node::before {
16825 efrain 168
  content: "";
169
  position: absolute;
16960 stevensc 170
  top: var(--top, -12px);
171
  /* -(fallback value = background square size + border width of node) */
16825 efrain 172
  left: calc(50% - 1px);
173
  width: 2px;
16960 stevensc 174
  height: var(--height, 10px);
175
  /* fallback value = background square size */
16825 efrain 176
  background-color: rgba(217, 83, 79, 0.8);
177
}
178
 
16960 stevensc 179
.orgchart>ul>li>ul li.isSiblingsCollapsed>.node::before {
16825 efrain 180
  top: var(--top-cross-point, -12px);
181
  height: var(--height-cross-point, 10px);
182
}
183
 
184
/* node styling */
185
.orgchart .node {
186
  box-sizing: border-box;
187
  display: inline-block;
188
  position: relative;
189
  margin: 0 0 20px 0;
190
  padding: 3px;
191
  border: 2px dashed transparent;
192
  text-align: center;
193
}
194
 
16960 stevensc 195
.orgchart.l2r .node,
196
.orgchart.r2l .node {
16825 efrain 197
  width: 50px;
198
  height: 140px;
199
}
200
 
201
.orgchart .node:hover {
202
  background-color: rgba(238, 217, 54, 0.5);
203
  transition: .5s;
204
  cursor: default;
205
  z-index: 20;
206
}
207
 
208
.orgchart .node.focused {
209
  background-color: rgba(238, 217, 54, 0.5);
210
}
211
 
212
.orgchart .ghost-node {
213
  position: fixed;
214
  left: -10000px;
215
  top: -10000px;
216
}
217
 
218
.orgchart .ghost-node rect {
219
  fill: #ffffff;
220
  stroke: #bf0000;
221
}
222
 
223
.orgchart .node.allowedDrop {
224
  border-color: rgba(68, 157, 68, 0.9);
225
}
226
 
16960 stevensc 227
.orgchart .node>.spinner {
16825 efrain 228
  position: absolute;
229
  top: calc(50% - 1rem);
230
  left: calc(50% - 1rem);
231
}
232
 
16960 stevensc 233
.orgchart .node>.spinner::before {
16825 efrain 234
  width: 2rem;
235
  height: 2rem;
236
  border-width: 0.2rem;
237
  border-radius: 1rem;
238
  border-top-color: rgba(68, 157, 68, 0.8);
239
  border-bottom-color: rgba(68, 157, 68, 0.8);
240
  border-left-color: rgba(68, 157, 68, 0.8);
241
}
242
 
243
.orgchart .node .title {
244
  box-sizing: border-box;
245
  width: 130px;
246
  text-align: center;
247
  font-size: 12px;
248
  font-weight: bold;
249
  height: 20px;
250
  line-height: 20px;
251
  overflow: hidden;
252
  text-overflow: ellipsis;
253
  white-space: nowrap;
254
  background-color: rgba(217, 83, 79, 0.8);
255
  color: #fff;
16960 stevensc 256
  border-radius: 4px 4px 0 0;
16825 efrain 257
}
258
 
259
.orgchart.b2t .node .title {
260
  transform: rotate(-180deg);
261
  transform-origin: center bottom;
262
}
263
 
264
.orgchart.l2r .node .title {
265
  transform: rotate(-90deg) translate(-45px, -45px) rotateY(180deg);
266
  transform-origin: bottom center;
267
}
268
 
269
.orgchart.r2l .node .title {
270
  transform: rotate(-90deg) translate(-45px, -45px);
271
  transform-origin: bottom center;
272
}
273
 
274
.orgchart .node .title .parentNodeSymbol {
275
  float: left;
276
}
277
 
278
.orgchart .node .title .parentNodeSymbol::before {
279
  color: #fff;
280
}
281
 
282
.orgchart .node .title .parentNodeSymbol::after {
283
  background-color: #fff;
284
}
285
 
286
.orgchart .node .content {
287
  box-sizing: border-box;
288
  height: 20px;
289
  line-height: 20px;
290
  font-size: 10px;
291
  border: 1px solid rgba(217, 83, 79, 0.8);
292
  border-width: 0 1px 1px 1px;
293
  border-radius: 0 0 0.25rem 0.25rem;
294
  text-align: center;
295
  background-color: #fff;
296
  color: #333;
297
  text-overflow: ellipsis;
298
  white-space: nowrap;
16960 stevensc 299
  width: 130px;
300
  overflow: hidden;
301
  padding: 0 5px;
16825 efrain 302
}
303
 
304
.orgchart.b2t .node .content {
305
  transform: rotate(180deg);
306
  transform-origin: center top;
307
}
308
 
309
.orgchart.l2r .node .content {
310
  transform: rotate(-90deg) translate(-45px, -45px) rotateY(180deg);
311
  transform-origin: top center;
312
  width: 130px;
313
}
314
 
315
.orgchart.r2l .node .content {
316
  transform: rotate(-90deg) translate(-45px, -45px);
317
  transform-origin: top center;
318
  width: 130px;
319
}
320
 
321
.orgchart .node .edge {
322
  position: absolute;
323
  cursor: default;
324
  transition: .2s;
325
}
326
 
327
.orgchart .node .edge::before {
328
  border-color: rgba(68, 157, 68, 0.5);
329
}
330
 
331
.orgchart.noncollapsable .node .edge {
332
  display: none;
333
}
334
 
335
.orgchart .node .edge:hover {
336
  cursor: pointer;
337
}
338
 
339
.orgchart .edge:hover::before {
340
  border-color: #449d44;
341
}
342
 
343
.orgchart .node .verticalEdge {
16960 stevensc 344
  width: calc(100% - 6px);
345
  /* node top half's width */
346
  height: 10px;
347
  /* background square's size */
348
  left: 3px;
349
  /* node's padding value */
16825 efrain 350
}
351
 
352
.orgchart .node .verticalEdge::before {
353
  position: absolute;
16960 stevensc 354
  left: calc(50% - 5px);
355
  /* 50% width of node - half width of up arrow icon) */
16825 efrain 356
}
357
 
358
.orgchart .node .topEdge {
359
  top: -2px;
360
}
361
 
362
.orgchart .node .topEdge.oci-chevron-up::before {
363
  top: 2px;
364
}
365
 
366
.orgchart .node .topEdge.oci-chevron-down::before {
367
  bottom: 3px;
368
}
369
 
370
.orgchart .node .bottomEdge {
16960 stevensc 371
  bottom: -2px;
372
  /* -(node's border-width) */
16825 efrain 373
}
374
 
375
.orgchart .node .bottomEdge.oci-chevron-up::before {
376
  bottom: -3px;
377
}
378
 
379
.orgchart .node .bottomEdge.oci-chevron-down::before {
380
  bottom: 1px;
381
}
382
 
383
.orgchart .node .horizontalEdge {
384
  width: 10px;
385
  height: calc(100% - 6px);
16960 stevensc 386
  top: 3px;
387
  /* node's padding */
16825 efrain 388
}
389
 
390
.orgchart .node .rightEdge {
391
  right: -2px;
392
}
393
 
394
.orgchart .node .leftEdge {
395
  left: -2px;
396
}
397
 
398
.orgchart .node .horizontalEdge::before {
399
  position: absolute;
400
  top: calc(50% - 5px);
401
}
402
 
403
.orgchart .node .leftEdge.oci-chevron-right::before {
404
  left: -3px;
405
}
406
 
407
.orgchart .node .leftEdge.oci-chevron-left::before {
408
  left: 1px;
409
}
410
 
411
.orgchart .node .rightEdge.oci-chevron-left::before {
412
  right: -3px;
413
}
414
 
415
.orgchart .node .rightEdge.oci-chevron-right::before {
416
  right: 1px;
417
}
418
 
419
.orgchart .node .toggleBtn {
420
  position: absolute;
16960 stevensc 421
  left: -2px;
422
  /* -(border width of node) */
16825 efrain 423
  bottom: -2px;
424
  width: 16px;
425
  height: 16px;
426
}
427
 
428
.orgchart .node .toggleBtn::before {
429
  background-color: rgba(68, 157, 68, 0.6);
430
  position: absolute;
431
  left: 0;
432
  bottom: 0;
433
}
434
 
435
.orgchart .node .toggleBtn:hover::before {
436
  background-color: #449d44;
437
}
438
 
439
.oc-export-btn {
440
  margin-left: 0.5rem;
441
  padding: 0.5rem 1rem;
442
}
443
 
444
.orgchart .node {
445
  transition: transform 0.3s, opacity 0.3s;
446
}
447
 
448
.orgchart .slide-down {
449
  opacity: 0;
450
  transform: translateY(40px);
451
}
452
 
16960 stevensc 453
.orgchart.l2r .node.slide-down,
454
.orgchart.r2l .node.slide-down {
16825 efrain 455
  transform: translateY(130px);
456
}
457
 
458
.orgchart .slide-up {
459
  opacity: 0;
460
  transform: translateY(-40px);
461
}
462
 
16960 stevensc 463
.orgchart.l2r .node.slide-up,
464
.orgchart.r2l .node.slide-up {
16825 efrain 465
  transform: translateY(-130px);
466
}
467
 
468
.orgchart .slide-right {
469
  opacity: 0;
470
  transform: translateX(130px);
471
}
472
 
16960 stevensc 473
.orgchart.l2r .node.slide-right,
474
.orgchart.r2l .node.slide-right {
16825 efrain 475
  transform: translateX(40px);
476
}
477
 
478
.orgchart .slide-left {
479
  opacity: 0;
480
  transform: translateX(-130px);
481
}
482
 
16960 stevensc 483
.orgchart.l2r .node.slide-left,
484
.orgchart.r2l .node.slide-left {
16825 efrain 485
  transform: translateX(-40px);
486
}
487
 
488
/* styles for vertical nodes */
489
 
490
.orgchart .nodes.vertical {
491
  display: block;
16960 stevensc 492
  padding-left: 10px;
493
  /* width of background square*/
16825 efrain 494
}
495
 
496
.orgchart .nodes.vertical .nodes {
497
  list-style: none;
498
  display: block;
499
  margin: 0;
16960 stevensc 500
  padding-left: 10px;
501
  /* width of background square*/
16825 efrain 502
  text-align: left;
503
}
504
 
505
.orgchart .nodes.vertical .node {
506
  margin-bottom: 0;
507
}
508
 
509
.orgchart .nodes.vertical .node::before,
510
.orgchart .nodes.vertical .node::after {
511
  content: none;
512
}
513
 
514
.orgchart .nodes.vertical .hierarchy {
515
  position: relative;
516
  text-align: left;
517
}
518
 
519
.orgchart .nodes.vertical .hierarchy::before,
520
.orgchart .nodes.vertical .hierarchy::after {
521
  box-sizing: border-box;
522
  content: '';
523
  position: absolute;
16960 stevensc 524
  left: -6px;
525
  /* -(background square size + half width of line */
16825 efrain 526
  border-color: rgba(217, 83, 79, 0.8);
527
  border-style: solid;
528
  border-width: 0 0 2px 2px;
529
}
530
 
531
.orgchart .nodes.vertical .hierarchy::before {
532
  top: 0px;
16960 stevensc 533
  height: 26px;
534
  /* node top half's height(25px) + half width of line */
535
  width: 11px;
536
  /* background square size + half width of line */
16825 efrain 537
}
538
 
539
.orgchart .nodes.vertical .hierarchy::after {
540
  bottom: 0;
16960 stevensc 541
  height: calc(100% - 24px);
542
  /* height of hierarchy - (node top half's height(25px) - half width of line) */
16825 efrain 543
}
544
 
545
.orgchart .nodes.vertical .hierarchy:last-child::after {
546
  border-width: 2px 0 0 0;
547
}
548
 
16960 stevensc 549
.orgchart .nodes.vertical>.hierarchy:first-child::before {
16825 efrain 550
  box-sizing: border-box;
16960 stevensc 551
  top: -11px;
552
  /* -(background square size + half width of line) */
553
  height: 35px;
554
  /* node top half's height + node padding + node border width + background square size */
16825 efrain 555
  width: calc(50% + 2px);
556
  border-width: 2px 0 0 2px;
557
}
558
 
16960 stevensc 559
.orgchart .nodes.vertical>.hierarchy:first-child::after {
16825 efrain 560
  box-sizing: border-box;
16960 stevensc 561
  top: 24px;
562
  /* node bottom half's height(25px) - half border width of line */
563
  width: 11px;
564
  /* backgroud square size + half border width of line */
16825 efrain 565
  border-width: 2px 0 0 2px;
566
}
567
 
16960 stevensc 568
.orgchart .nodes.vertical>.hierarchy:first-child:last-child::after {
16825 efrain 569
  border-width: 2px 0 0 0;
570
}
571
 
572
/* custom icons for orgchart */
573
.oci {
574
  display: inline-block;
575
  position: relative;
576
  font-style: normal;
577
  font-family: Arial;
578
}
579
 
580
.oci-menu::before {
581
  content: "≡";
582
  display: inline-block;
583
  width: 1rem;
584
  height: 1rem;
585
  text-align: center;
586
  line-height: 1rem;
587
  color: #000;
588
  font-size: 1rem;
589
}
590
 
591
.oci-chevron-up::before {
592
  content: "";
593
  box-sizing: border-box;
594
  width: 10px;
595
  height: 10px;
596
  display: inline-block;
597
  border: 3px solid #000;
598
  transform: rotate(45deg);
599
  border-right: unset;
600
  border-bottom: unset;
601
}
602
 
603
.oci-chevron-down::before {
604
  content: "";
605
  box-sizing: border-box;
606
  width: 10px;
607
  height: 10px;
608
  display: inline-block;
609
  border: 3px solid #000;
610
  transform: rotate(45deg);
611
  border-top: unset;
612
  border-left: unset;
613
}
614
 
615
.oci-chevron-left::before {
616
  content: "";
617
  box-sizing: border-box;
618
  width: 10px;
619
  height: 10px;
620
  display: inline-block;
621
  border: 3px solid #000;
622
  transform: rotate(45deg);
623
  border-top: unset;
624
  border-right: unset;
625
}
626
 
627
.oci-chevron-right::before {
628
  content: "";
629
  box-sizing: border-box;
630
  width: 10px;
631
  height: 10px;
632
  display: inline-block;
633
  border: 3px solid #000;
634
  transform: rotate(45deg);
635
  border-left: unset;
636
  border-bottom: unset;
637
}
638
 
639
.oci-plus-square::before {
640
  content: "ï¹¢";
641
  display: inline-block;
642
  width: 16px;
643
  height: 16px;
644
  text-align: center;
645
  line-height: 16px;
646
  background-color: #000;
647
  color: #fff;
648
  font-weight: bold;
649
}
650
 
651
.oci-minus-square::before {
652
  content: "ï¹£";
653
  display: inline-block;
654
  width: 16px;
655
  height: 16px;
656
  text-align: center;
657
  line-height: 16px;
658
  background-color: #000;
659
  color: #fff;
660
  font-weight: bold;
661
}
662
 
663
.oci-arrow-square-up::before {
664
  content: "⬆";
665
  display: inline-block;
666
  width: 1rem;
667
  height: 1rem;
668
  text-align: center;
669
  line-height: 1rem;
670
  background-color: #000;
671
  color: #fff;
672
  font-weight: bold;
673
}
674
 
675
.oci-arrow-square-down::before {
676
  content: "⬇";
677
  display: inline-block;
678
  width: 1rem;
679
  height: 1rem;
680
  text-align: center;
681
  line-height: 1rem;
682
  background-color: #000;
683
  color: #fff;
684
  font-weight: bold;
685
}
686
 
687
.oci-info-circle::before {
688
  content: "i";
689
  display: inline-block;
690
  width: 1rem;
691
  height: 1rem;
692
  border-radius: 0.5rem;
693
  background-color: #000;
694
  color: #fff;
695
  text-align: center;
696
  font-weight: bold;
697
}
698
 
699
.oci-spinner::before {
700
  content: "";
701
  vertical-align: text-bottom;
702
  display: inline-block;
703
  box-sizing: border-box;
704
  width: 1rem;
705
  height: 1rem;
706
  border: 0.1rem solid #000;
707
  border-right-color: transparent;
708
  border-radius: 0.625rem;
709
  animation: oci-infinite-spinning .75s linear infinite;
710
}
711
 
712
@keyframes oci-infinite-spinning {
713
  from {
714
    transform: rotate(0deg);
715
  }
16960 stevensc 716
 
16825 efrain 717
  to {
718
    transform: rotate(360deg);
719
  }
720
}