forked from cite-sa/es2-service-template
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdock-bar.js
103 lines (94 loc) · 4.02 KB
/
dock-bar.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
$(function () {
$.widget("earthserver.dock", {
options: {
container: undefined,
position: "",
toggleIcon: undefined
},
_create: function () {
this._initDock();
this.element.mCustomScrollbar({
/*axis: "yx",*/
theme: "light-thin"
});
},
_initDock: function () {
var self = this;
var rightDocks = $(".right-dock");
this.dock = this.element.addClass("container-fluid extra-right-padding dock " + this.options.position + "-dock")
.appendTo(this.options.container);
if (this.options.position == "left") {
this.dock.position({
my: "right top",
at: "left+40 top+70",
of: "#service-container"
});
$(window).resize(function() {
if (self.options.position == "left") {
if (self.dockToggle.hasClass("open")) {
self.dock.position({
my: "left top",
at: "left top+70",
of: "#service-container"
});
} else {
self.dock.position({
my: "right top",
at: "left+40 top+70",
of: "#service-container"
});
}
}
});
}
this.dockToggle = $("<div>", {class: "dock-toggle "
+ this.options.position + "-dock-toggle"})
/*.append($("<img>", {src: this.options.toggleIcon, class: "dock-toggle-icon"}))*/
.click(function () {
if (self.options.position == "left") {
if ($(this).hasClass("open")) {
self.dock.position({
my: "right top",
at: "left+40 top+70",
of: "#service-container"
});
$(this).removeClass("open");
self.dock.removeClass("open");
self.dock.addClass("extra-right-padding");
} else {
self.dock.position({
my: "left top",
at: "left top+70",
of: "#service-container"
});
$(this).addClass("open");
self.dock.addClass("open");
self.dock.removeClass("extra-right-padding");
}
} else {
var toggleOpen = $(this).hasClass("open");
$("." + self.options.position + "-dock-toggle.open").removeClass("open");
$("." + self.options.position + "-dock.open").removeClass("open");
if (!toggleOpen) {
$(this).addClass("open");
self.dock.addClass("open");
self.dock.removeClass("extra-right-padding");
} else {
$(this).removeClass("open");
self.dock.removeClass("open");
self.dock.addClass("extra-right-padding");
}
}
})
.appendTo(this.dock);
this.dockToggle.css({"margin-top": (rightDocks.length * 40) + "px"});
},
addEmptyPanel: function (panelId) {
return $("<div>").tabPanel({
dock: this.dock,
panelId: panelId,
panelType: "tab"
}).tabPanel("instance");
}
})
});