Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
wwwanlingxiao
mall
Commits
5dca3a75
Commit
5dca3a75
authored
Apr 17, 2018
by
zhh
Browse files
demo前端模版添加
parent
109a95d3
Changes
211
Expand all
Hide whitespace changes
Inline
Side-by-side
mall-demo/src/main/resources/static/images/zheng-cms-theme.png
0 → 100644
View file @
5dca3a75
92.3 KB
mall-demo/src/main/resources/static/images/zheng-cms.png
0 → 100644
View file @
5dca3a75
18.2 KB
mall-demo/src/main/resources/static/images/zheng-oss-theme.png
0 → 100644
View file @
5dca3a75
128 KB
mall-demo/src/main/resources/static/images/zheng-oss.png
0 → 100644
View file @
5dca3a75
29.6 KB
mall-demo/src/main/resources/static/images/zheng-pay-theme.png
0 → 100644
View file @
5dca3a75
128 KB
mall-demo/src/main/resources/static/images/zheng-pay.png
0 → 100644
View file @
5dca3a75
26.1 KB
mall-demo/src/main/resources/static/images/zheng-ucenter-theme.png
0 → 100644
View file @
5dca3a75
135 KB
mall-demo/src/main/resources/static/images/zheng-ucenter.png
0 → 100644
View file @
5dca3a75
34.6 KB
mall-demo/src/main/resources/static/images/zheng-upms-theme.png
0 → 100644
View file @
5dca3a75
89.1 KB
mall-demo/src/main/resources/static/images/zheng-upms.png
0 → 100644
View file @
5dca3a75
22.3 KB
mall-demo/src/main/resources/static/images/zsz.psd
0 → 100644
View file @
5dca3a75
File added
mall-demo/src/main/resources/static/js/admin.js
0 → 100644
View file @
5dca3a75
var
click
=
device
.
mobile
()
?
'
touchstart
'
:
'
click
'
;
$
(
function
()
{
// 侧边栏操作按钮
$
(
document
).
on
(
click
,
'
#guide
'
,
function
()
{
$
(
this
).
toggleClass
(
'
toggled
'
);
$
(
'
#sidebar
'
).
toggleClass
(
'
toggled
'
);
});
// 侧边栏二级菜单
$
(
document
).
on
(
'
click
'
,
'
.sub-menu a
'
,
function
()
{
$
(
this
).
next
().
slideToggle
(
200
);
$
(
this
).
parent
().
toggleClass
(
'
toggled
'
);
});
// 个人资料
$
(
document
).
on
(
'
click
'
,
'
.s-profile a
'
,
function
()
{
$
(
this
).
next
().
slideToggle
(
200
);
$
(
this
).
parent
().
toggleClass
(
'
toggled
'
);
});
// Waves初始化
Waves
.
displayEffect
();
// 滚动条初始化
$
(
'
#sidebar
'
).
mCustomScrollbar
({
theme
:
'
minimal-dark
'
,
scrollInertia
:
100
,
axis
:
'
yx
'
,
mouseWheel
:
{
enable
:
true
,
axis
:
'
y
'
,
preventDefault
:
true
}
});
// 切换系统
$
(
'
.switch-systems
'
).
click
(
function
()
{
var
systemid
=
$
(
this
).
attr
(
'
systemid
'
);
var
systemname
=
$
(
this
).
attr
(
'
systemname
'
);
var
systemtitle
=
$
(
this
).
attr
(
'
systemtitle
'
);
$
(
'
.system_menus
'
).
hide
(
0
,
function
()
{
$
(
'
.system_
'
+
systemid
).
show
();
});
$
(
'
body
'
).
attr
(
"
id
"
,
systemname
);
$
(
'
#system_title
'
).
text
(
systemtitle
);
$
.
cookie
(
'
zheng-upms-systemid
'
,
systemid
);
$
.
cookie
(
'
zheng-upms-systemname
'
,
systemname
);
$
.
cookie
(
'
zheng-upms-systemtitle
'
,
systemtitle
);
});
// 显示cookie菜单
var
systemid
=
$
.
cookie
(
'
zheng-upms-systemid
'
)
||
1
;
var
systemname
=
$
.
cookie
(
'
zheng-upms-systemname
'
)
||
'
zheng-upms-server
'
;
var
systemtitle
=
$
.
cookie
(
'
zheng-upms-systemtitle
'
)
||
'
权限管理系统
'
;
$
(
'
.system_menus
'
).
hide
(
0
,
function
()
{
$
(
'
.system_
'
+
systemid
).
show
();
});
$
(
'
body
'
).
attr
(
'
id
'
,
systemname
);
$
(
'
#system_title
'
).
text
(
systemtitle
);
});
// iframe高度自适应
function
changeFrameHeight
(
ifm
)
{
ifm
.
height
=
document
.
documentElement
.
clientHeight
-
118
;
}
function
resizeFrameHeight
()
{
$
(
'
.tab_iframe
'
).
css
(
'
height
'
,
document
.
documentElement
.
clientHeight
-
118
);
$
(
'
md-tab-content
'
).
css
(
'
left
'
,
'
0
'
);
}
window
.
onresize
=
function
()
{
resizeFrameHeight
();
initScrollShow
();
initScrollState
();
}
// ========== 选项卡操作 ==========
$
(
function
()
{
// 选项卡点击
$
(
document
).
on
(
'
click
'
,
'
.content_tab li
'
,
function
()
{
// 切换选项卡
$
(
'
.content_tab li
'
).
removeClass
(
'
cur
'
);
$
(
this
).
addClass
(
'
cur
'
);
// 切换iframe
$
(
'
.iframe
'
).
removeClass
(
'
cur
'
);
$
(
'
#iframe_
'
+
$
(
this
).
data
(
'
index
'
)).
addClass
(
'
cur
'
);
var
marginLeft
=
(
$
(
'
#tabs
'
).
css
(
'
marginLeft
'
).
replace
(
'
px
'
,
''
));
// 滚动到可视区域:在左侧
if
(
$
(
this
).
position
().
left
<
marginLeft
)
{
var
left
=
$
(
'
.content_tab>ul
'
).
scrollLeft
()
+
$
(
this
).
position
().
left
-
marginLeft
;
$
(
'
.content_tab>ul
'
).
animate
({
scrollLeft
:
left
},
200
,
function
()
{
initScrollState
();
});
}
// 滚动到可视区域:在右侧
if
((
$
(
this
).
position
().
left
+
$
(
this
).
width
()
-
marginLeft
)
>
document
.
getElementById
(
'
tabs
'
).
clientWidth
)
{
var
left
=
$
(
'
.content_tab>ul
'
).
scrollLeft
()
+
((
$
(
this
).
position
().
left
+
$
(
this
).
width
()
-
marginLeft
)
-
document
.
getElementById
(
'
tabs
'
).
clientWidth
);
$
(
'
.content_tab>ul
'
).
animate
({
scrollLeft
:
left
},
200
,
function
()
{
initScrollState
();
});
}
});
// 控制选项卡滚动位置
$
(
document
).
on
(
'
click
'
,
'
.tab_left>a
'
,
function
()
{
$
(
'
.content_tab>ul
'
).
animate
({
scrollLeft
:
$
(
'
.content_tab>ul
'
).
scrollLeft
()
-
300
},
200
,
function
()
{
initScrollState
();
});
});
// 向右箭头
$
(
document
).
on
(
'
click
'
,
'
.tab_right>a
'
,
function
()
{
$
(
'
.content_tab>ul
'
).
animate
({
scrollLeft
:
$
(
'
.content_tab>ul
'
).
scrollLeft
()
+
300
},
200
,
function
()
{
initScrollState
();
});
});
// 初始化箭头状态
// 选项卡右键菜单
var
menu
=
new
BootstrapMenu
(
'
.tabs li
'
,
{
fetchElementData
:
function
(
item
)
{
return
item
;
},
actionsGroups
:
[
[
'
close
'
,
'
refresh
'
],
[
'
closeOther
'
,
'
closeAll
'
],
[
'
closeRight
'
,
'
closeLeft
'
]
],
actions
:
{
close
:
{
name
:
'
关闭
'
,
iconClass
:
'
zmdi zmdi-close
'
,
onClick
:
function
(
item
)
{
Tab
.
closeTab
(
$
(
item
));
}
},
closeOther
:
{
name
:
'
关闭其他
'
,
iconClass
:
'
zmdi zmdi-arrow-split
'
,
onClick
:
function
(
item
)
{
var
index
=
$
(
item
).
data
(
'
index
'
);
$
(
'
.content_tab li
'
).
each
(
function
()
{
if
(
$
(
this
).
data
(
'
index
'
)
!=
index
)
{
Tab
.
closeTab
(
$
(
this
));
}
});
}
},
closeAll
:
{
name
:
'
关闭全部
'
,
iconClass
:
'
zmdi zmdi-swap
'
,
onClick
:
function
()
{
$
(
'
.content_tab li
'
).
each
(
function
()
{
Tab
.
closeTab
(
$
(
this
));
});
}
},
closeRight
:
{
name
:
'
关闭右侧所有
'
,
iconClass
:
'
zmdi zmdi-arrow-right
'
,
onClick
:
function
(
item
)
{
var
index
=
$
(
item
).
data
(
'
index
'
);
$
(
$
(
'
.content_tab li
'
).
toArray
().
reverse
()).
each
(
function
()
{
if
(
$
(
this
).
data
(
'
index
'
)
!=
index
)
{
Tab
.
closeTab
(
$
(
this
));
}
else
{
return
false
;
}
});
}
},
closeLeft
:
{
name
:
'
关闭左侧所有
'
,
iconClass
:
'
zmdi zmdi-arrow-left
'
,
onClick
:
function
(
item
)
{
var
index
=
$
(
item
).
data
(
'
index
'
);
$
(
'
.content_tab li
'
).
each
(
function
()
{
if
(
$
(
this
).
data
(
'
index
'
)
!=
index
)
{
Tab
.
closeTab
(
$
(
this
));
}
else
{
return
false
;
}
});
}
},
refresh
:
{
name
:
'
刷新
'
,
iconClass
:
'
zmdi zmdi-refresh
'
,
onClick
:
function
(
item
)
{
var
index
=
$
(
item
).
data
(
'
index
'
);
var
$iframe
=
$
(
'
#iframe_
'
+
index
).
find
(
'
iframe
'
);
$iframe
.
attr
(
'
src
'
,
$iframe
.
attr
(
'
src
'
));
}
}
}
});
});
// 选项卡对象
var
Tab
=
{
addTab
:
function
(
title
,
url
)
{
var
index
=
url
.
replace
(
/
\.
/g
,
'
_
'
).
replace
(
/
\/
/g
,
'
_
'
).
replace
(
/:/g
,
'
_
'
).
replace
(
/
\?
/g
,
'
_
'
).
replace
(
/,/g
,
'
_
'
).
replace
(
/=/g
,
'
_
'
).
replace
(
/&/g
,
'
_
'
);
// 如果存在选项卡,则激活,否则创建新选项卡
if
(
$
(
'
#tab_
'
+
index
).
length
==
0
)
{
// 添加选项卡
$
(
'
.content_tab li
'
).
removeClass
(
'
cur
'
);
var
tab
=
'
<li id="tab_
'
+
index
+
'
" data-index="
'
+
index
+
'
" class="cur"><a class="waves-effect waves-light">
'
+
title
+
'
</a></li>
'
;
//<i class="zmdi zmdi-close"></i><
$
(
'
.content_tab>ul
'
).
append
(
tab
);
// 添加iframe
$
(
'
.iframe
'
).
removeClass
(
'
cur
'
);
var
iframe
=
'
<div id="iframe_
'
+
index
+
'
" class="iframe cur"><iframe class="tab_iframe" src="
'
+
url
+
'
" width="100%" frameborder="0" scrolling="auto" onload="changeFrameHeight(this)"></iframe></div>
'
;
$
(
'
.content_main
'
).
append
(
iframe
);
initScrollShow
();
$
(
'
.content_tab>ul
'
).
animate
({
scrollLeft
:
document
.
getElementById
(
'
tabs
'
).
scrollWidth
-
document
.
getElementById
(
'
tabs
'
).
clientWidth
},
200
,
function
()
{
initScrollState
();
});
}
else
{
$
(
'
#tab_
'
+
index
).
trigger
(
'
click
'
);
}
// 关闭侧边栏
$
(
'
#guide
'
).
trigger
(
click
);
},
closeTab
:
function
(
$item
)
{
var
closeable
=
$item
.
data
(
'
closeable
'
);
if
(
closeable
!=
false
)
{
// 如果当前时激活状态则关闭后激活左边选项卡
if
(
$item
.
hasClass
(
'
cur
'
))
{
$item
.
prev
().
trigger
(
'
click
'
);
}
// 关闭当前选项卡
var
index
=
$item
.
data
(
'
index
'
);
$
(
'
#iframe_
'
+
index
).
remove
();
$item
.
remove
();
}
initScrollShow
();
}
}
function
initScrollShow
()
{
if
(
document
.
getElementById
(
'
tabs
'
).
scrollWidth
>
document
.
getElementById
(
'
tabs
'
).
clientWidth
)
{
$
(
'
.content_tab
'
).
addClass
(
'
scroll
'
);
}
else
{
$
(
'
.content_tab
'
).
removeClass
(
'
scroll
'
);
}
}
function
initScrollState
()
{
if
(
$
(
'
.content_tab>ul
'
).
scrollLeft
()
==
0
)
{
$
(
'
.tab_left>a
'
).
removeClass
(
'
active
'
);
}
else
{
$
(
'
.tab_left>a
'
).
addClass
(
'
active
'
);
}
if
((
$
(
'
.content_tab>ul
'
).
scrollLeft
()
+
document
.
getElementById
(
'
tabs
'
).
clientWidth
)
>=
document
.
getElementById
(
'
tabs
'
).
scrollWidth
)
{
$
(
'
.tab_right>a
'
).
removeClass
(
'
active
'
);
}
else
{
$
(
'
.tab_right>a
'
).
addClass
(
'
active
'
);
}
}
function
fullPage
()
{
if
(
$
.
util
.
supportsFullScreen
)
{
if
(
$
.
util
.
isFullScreen
())
{
$
.
util
.
cancelFullScreen
();
}
else
{
$
.
util
.
requestFullScreen
();
}
}
else
{
alert
(
"
当前浏览器不支持全屏 API,请更换至最新的 Chrome/Firefox/Safari 浏览器或通过 F11 快捷键进行操作。
"
);
}
}
\ No newline at end of file
mall-demo/src/main/resources/static/js/common.js
0 → 100644
View file @
5dca3a75
$
(
function
()
{
// Waves初始化
Waves
.
displayEffect
();
// 数据表格动态高度
$
(
window
).
resize
(
function
()
{
$
(
'
#table
'
).
bootstrapTable
(
'
resetView
'
,
{
height
:
getHeight
()
});
});
// 设置input特效
$
(
document
).
on
(
'
focus
'
,
'
input[type="text"]
'
,
function
()
{
$
(
this
).
parent
().
find
(
'
label
'
).
addClass
(
'
active
'
);
}).
on
(
'
blur
'
,
'
input[type="text"]
'
,
function
()
{
if
(
$
(
this
).
val
()
==
''
)
{
$
(
this
).
parent
().
find
(
'
label
'
).
removeClass
(
'
active
'
);
}
});
// select2初始化
$
(
'
select
'
).
select2
();
});
// 动态高度
function
getHeight
()
{
return
$
(
window
).
height
()
-
20
;
}
// 数据表格展开内容
function
detailFormatter
(
index
,
row
)
{
var
html
=
[];
$
.
each
(
row
,
function
(
key
,
value
)
{
html
.
push
(
'
<p><b>
'
+
key
+
'
:</b>
'
+
value
+
'
</p>
'
);
});
return
html
.
join
(
''
);
}
// 初始化input特效
function
initMaterialInput
()
{
$
(
'
form input[type="text"]
'
).
each
(
function
()
{
if
(
$
(
this
).
val
()
!=
''
)
{
$
(
this
).
parent
().
find
(
'
label
'
).
addClass
(
'
active
'
);
}
});
}
\ No newline at end of file
mall-demo/src/main/resources/static/js/login.js
0 → 100644
View file @
5dca3a75
$
(
function
()
{
// Waves初始化
Waves
.
displayEffect
();
// 输入框获取焦点后出现下划线
$
(
'
.form-control
'
).
focus
(
function
()
{
$
(
this
).
parent
().
addClass
(
'
fg-toggled
'
);
}).
blur
(
function
()
{
$
(
this
).
parent
().
removeClass
(
'
fg-toggled
'
);
});
});
Checkbix
.
init
();
$
(
function
()
{
// 点击登录按钮
$
(
'
#login-bt
'
).
click
(
function
()
{
login
();
});
// 回车事件
$
(
'
#username, #password
'
).
keypress
(
function
(
event
)
{
if
(
13
==
event
.
keyCode
)
{
login
();
}
});
});
// 登录
function
login
()
{
$
.
ajax
({
url
:
'
/login
'
,
type
:
'
POST
'
,
data
:
{
username
:
$
(
'
#username
'
).
val
(),
password
:
$
(
'
#password
'
).
val
(),
rememberMe
:
$
(
'
#rememberMe
'
).
is
(
'
:checked
'
),
},
beforeSend
:
function
()
{
},
success
:
function
(
json
){
if
(
json
.
code
==
1
)
{
location
.
href
=
json
.
data
;
}
else
{
alert
(
json
.
data
);
if
(
10101
==
json
.
code
)
{
$
(
'
#username
'
).
focus
();
}
if
(
10102
==
json
.
code
)
{
$
(
'
#password
'
).
focus
();
}
}
},
error
:
function
(
error
){
console
.
log
(
error
);
}
});
}
\ No newline at end of file
mall-demo/src/main/resources/static/plugins/BootstrapMenu.min.js
0 → 100644
View file @
5dca3a75
!
function
(
t
){
function
n
(
e
){
if
(
o
[
e
])
return
o
[
e
].
exports
;
var
i
=
o
[
e
]
=
{
exports
:{},
id
:
e
,
loaded
:
!
1
};
return
t
[
e
].
call
(
i
.
exports
,
i
,
i
.
exports
,
n
),
i
.
loaded
=!
0
,
i
.
exports
}
var
o
=
{};
return
n
.
m
=
t
,
n
.
c
=
o
,
n
.
p
=
""
,
n
(
0
)}([
function
(
t
,
n
,
o
){
window
.
BootstrapMenu
=
o
(
1
)},
function
(
t
,
n
,
o
){
"
use strict
"
;
function
e
(
t
){
var
n
=
f
(
'
<div class="dropdown bootstrapMenu" style="z-index:10000;position:absolute;" />
'
),
o
=
f
(
'
<ul class="dropdown-menu" style="position:static;display:block;font-size:0.9em;" />
'
),
e
=
[];
e
[
0
]
=
[],
p
.
each
(
t
.
options
.
actionsGroups
,
function
(
t
,
n
){
e
[
n
+
1
]
=
[]});
var
i
=!
1
;
p
.
each
(
t
.
options
.
actions
,
function
(
n
,
o
){
var
r
=!
1
;
p
.
each
(
t
.
options
.
actionsGroups
,
function
(
t
,
n
){
p
.
contains
(
t
,
o
)
&&
(
e
[
n
+
1
].
push
(
o
),
r
=!
0
)}),
r
===!
1
&&
e
[
0
].
push
(
o
),
"
undefined
"
!=
typeof
n
.
iconClass
&&
(
i
=!
0
)});
var
r
=!
0
;
return
p
.
each
(
e
,
function
(
n
){
0
!=
n
.
length
&&
(
r
===!
1
&&
o
.
append
(
'
<li class="divider"></li>
'
),
r
=!
1
,
p
.
each
(
n
,
function
(
n
){
var
e
=
t
.
options
.
actions
[
n
];
i
===!
0
?
o
.
append
(
'
<li role="presentation" data-action="
'
+
n
+
'
"><a href="#" role="menuitem" class="waves-effect"><i class="fa fa-fw fa-lg
'
+
(
e
.
iconClass
||
""
)
+
'
"></i> <span class="actionName"></span></a></li>
'
):
o
.
append
(
'
<li role="presentation" data-action="
'
+
n
+
'
"><a href="#" role="menuitem" class="waves-effect"><span class="actionName"></span></a></li>
'
)}),
o
.
append
(
'
<li role="presentation" class="noActionsMessage disabled"><a href="#" role="menuitem" class="waves-effect"><span>
'
+
t
.
options
.
noActionsMessage
+
"
</span></a></li>
"
))}),
n
.
append
(
o
)}
function
i
(
t
){
var
n
=
null
;
switch
(
t
.
options
.
menuEvent
){
case
"
click
"
:
n
=
"
click
"
;
break
;
case
"
right-click
"
:
n
=
"
contextmenu
"
;
break
;
case
"
hover
"
:
n
=
"
mouseenter
"
;
break
;
default
:
throw
new
Error
(
"
Unknown BootstrapMenu 'menuEvent' option
"
)}
t
.
$container
.
on
(
n
+
t
.
namespace
,
t
.
selector
,
function
(
n
){
var
o
=
f
(
this
);
return
t
.
open
(
o
,
n
),
!
1
})}
function
r
(
t
){
t
.
$container
.
off
(
t
.
namespace
)}
function
s
(
t
){
var
n
=
t
.
options
.
_actionSelectEvent
+
t
.
namespace
;
t
.
$menu
.
on
(
n
,
function
(
n
){
n
.
preventDefault
(),
n
.
stopPropagation
();
var
o
=
f
(
n
.
target
),
e
=
o
.
closest
(
"
[data-action]
"
);
if
(
e
&&
e
.
length
&&!
e
.
is
(
"
.disabled
"
)){
var
i
=
e
.
data
(
"
action
"
),
r
=
t
.
options
.
fetchElementData
(
t
.
$openTarget
);
t
.
options
.
actions
[
i
].
onClick
(
r
),
t
.
close
()}})}
function
c
(
t
){
t
.
$menu
.
off
(
t
.
namespace
)}
function
a
(
t
){
switch
(
t
.
options
.
menuEvent
){
case
"
click
"
:
break
;
case
"
right-click
"
:
break
;
case
"
hover
"
:
var
n
=
t
.
$openTarget
.
add
(
t
.
$menu
);
n
.
on
(
"
mouseleave
"
+
t
.
closeNamespace
,
function
(
o
){
var
e
=
o
.
toElement
||
o
.
relatedTarget
;
t
.
$openTarget
.
is
(
e
)
||
t
.
$menu
.
is
(
e
)
||
(
n
.
off
(
t
.
closeNamespace
),
t
.
close
())});
break
;
default
:
throw
new
Error
(
"
Unknown BootstrapMenu 'menuEvent' option
"
)}
t
.
$container
.
on
(
"
click
"
+
t
.
closeNamespace
,
function
(){
t
.
close
()})}
function
u
(
t
){
t
.
$container
.
off
(
t
.
closeNamespace
)}
var
l
=
o
(
2
),
f
=
o
(
3
);
o
(
4
);
var
p
=
function
(){
throw
new
Error
(
"
Custom lodash build for BootstrapMenu. lodash chaining is not included
"
)};
p
.
noop
=
o
(
6
),
p
.
each
=
o
(
7
),
p
.
contains
=
o
(
34
),
p
.
extend
=
o
(
42
),
p
.
uniqueId
=
o
(
49
),
p
.
isFunction
=
o
(
19
);
var
h
=
{
container
:
"
body
"
,
fetchElementData
:
p
.
noop
,
menuSource
:
"
mouse
"
,
menuPosition
:
"
belowLeft
"
,
menuEvent
:
"
right-click
"
,
actionsGroups
:[],
noActionsMessage
:
"
No available actions
"
,
_actionSelectEvent
:
"
click
"
},
d
=
function
(
t
,
n
){
this
.
selector
=
t
,
this
.
options
=
p
.
extend
({},
h
,
n
),
this
.
namespace
=
p
.
uniqueId
(
"
.BootstrapMenu_
"
),
this
.
closeNamespace
=
p
.
uniqueId
(
"
.BootstrapMenuClose_
"
),
this
.
init
()},
v
=
[];
d
.
prototype
.
init
=
function
(){
this
.
$container
=
f
(
this
.
options
.
container
),
this
.
$menu
=
e
(
this
),
this
.
$menuList
=
this
.
$menu
.
children
(),
this
.
$menu
.
hide
().
appendTo
(
this
.
$container
),
this
.
$openTarget
=
null
,
this
.
openEvent
=
null
,
i
(
this
),
s
(
this
),
v
.
push
(
this
)},
d
.
prototype
.
updatePosition
=
function
(){
var
t
=
null
,
n
=
null
,
o
=
null
;
switch
(
this
.
options
.
menuSource
){
case
"
element
"
:
n
=
this
.
$openTarget
;
break
;
case
"
mouse
"
:
n
=
this
.
openEvent
;
break
;
default
:
throw
new
Error
(
"
Unknown BootstrapMenu 'menuSource' option
"
)}
switch
(
this
.
options
.
menuPosition
){
case
"
belowRight
"
:
t
=
"
right top
"
,
o
=
"
right bottom
"
;
break
;
case
"
belowLeft
"
:
t
=
"
left top
"
,
o
=
"
left bottom
"
;
break
;
case
"
aboveRight
"
:
t
=
"
right bottom
"
,
o
=
"
right top
"
;
break
;
case
"
aboveLeft
"
:
t
=
"
left bottom
"
,
o
=
"
left top
"
;
break
;
default
:
throw
new
Error
(
"
Unknown BootstrapMenu 'menuPosition' option
"
)}
this
.
$menu
.
css
({
display
:
"
block
"
}),
this
.
$menu
.
css
({
height
:
this
.
$menuList
.
height
(),
width
:
this
.
$menuList
.
width
()}),
this
.
$menu
.
position
({
my
:
t
,
at
:
o
,
of
:
n
})},
d
.
prototype
.
open
=
function
(
t
,
n
){
var
o
=
this
;
d
.
closeAll
(),
this
.
$openTarget
=
t
,
this
.
openEvent
=
n
;
var
e
=
o
.
options
.
fetchElementData
(
o
.
$openTarget
),
i
=
this
.
$menu
.
find
(
"
[data-action]
"
),
r
=
this
.
$menu
.
find
(
"
.noActionsMessage
"
);
i
.
show
(),
r
.
hide
();
var
s
=
0
;
i
.
each
(
function
(){
var
t
=
f
(
this
),
n
=
t
.
data
(
"
action
"
),
i
=
o
.
options
.
actions
[
n
],
r
=
i
.
classNames
||
null
;
return
r
&&
p
.
isFunction
(
r
)
&&
(
r
=
r
(
e
)),
t
.
attr
(
"
class
"
,
l
(
r
||
""
)),
i
.
isShown
&&
i
.
isShown
(
e
)
===!
1
?
void
t
.
hide
():(
s
++
,
t
.
find
(
"
.actionName
"
).
html
(
p
.
isFunction
(
i
.
name
)
&&
i
.
name
(
e
)
||
i
.
name
),
void
(
i
.
isEnabled
&&
i
.
isEnabled
(
e
)
===!
1
&&
t
.
addClass
(
"
disabled
"
)))}),
0
===
s
&&
r
.
show
(),
this
.
updatePosition
(),
this
.
$menu
.
show
(),
a
(
this
)},
d
.
prototype
.
close
=
function
(){
this
.
$menu
.
hide
(),
u
(
this
)},
d
.
prototype
.
destroy
=
function
(){
this
.
close
(),
r
(
this
),
c
(
this
)},
d
.
closeAll
=
function
(){
p
.
each
(
v
,
function
(
t
){
t
.
close
()})},
t
.
exports
=
d
},
function
(
t
,
n
,
o
){
var
e
,
i
;
/*!
Copyright (c) 2016 Jed Watson.
Licensed under the MIT License (MIT), see
http://jedwatson.github.io/classnames
*/
!
function
(){
"
use strict
"
;
function
o
(){
for
(
var
t
=
[],
n
=
0
;
n
<
arguments
.
length
;
n
++
){
var
e
=
arguments
[
n
];
if
(
e
){
var
i
=
typeof
e
;
if
(
"
string
"
===
i
||
"
number
"
===
i
)
t
.
push
(
e
);
else
if
(
Array
.
isArray
(
e
))
t
.
push
(
o
.
apply
(
null
,
e
));
else
if
(
"
object
"
===
i
)
for
(
var
s
in
e
)
r
.
call
(
e
,
s
)
&&
e
[
s
]
&&
t
.
push
(
s
)}}
return
t
.
join
(
"
"
)}
var
r
=
{}.
hasOwnProperty
;
"
undefined
"
!=
typeof
t
&&
t
.
exports
?
t
.
exports
=
o
:(
e
=
[],
i
=
function
(){
return
o
}.
apply
(
n
,
e
),
!
(
void
0
!==
i
&&
(
t
.
exports
=
i
)))}()},
function
(
t
,
n
){
t
.
exports
=
jQuery
},
function
(
t
,
n
,
o
){
var
e
,
i
,
r
;
/*!
* jQuery UI Position 1.12.0
* http://jqueryui.com
*
* Copyright jQuery Foundation and other contributors
* Released under the MIT license.
* http://jquery.org/license
*
* http://api.jqueryui.com/position/
*/
!
function
(
s
){
i
=
[
o
(
3
),
o
(
5
)],
e
=
s
,
r
=
"
function
"
==
typeof
e
?
e
.
apply
(
n
,
i
):
e
,
!
(
void
0
!==
r
&&
(
t
.
exports
=
r
))}(
function
(
t
){
return
function
(){
function
n
(
t
,
n
,
o
){
return
[
parseFloat
(
t
[
0
])
*
(
h
.
test
(
t
[
0
])?
n
/
100
:
1
),
parseFloat
(
t
[
1
])
*
(
h
.
test
(
t
[
1
])?
o
/
100
:
1
)]}
function
o
(
n
,
o
){
return
parseInt
(
t
.
css
(
n
,
o
),
10
)
||
0
}
function
e
(
n
){
var
o
=
n
[
0
];
return
9
===
o
.
nodeType
?{
width
:
n
.
width
(),
height
:
n
.
height
(),
offset
:{
top
:
0
,
left
:
0
}}:
t
.
isWindow
(
o
)?{
width
:
n
.
width
(),
height
:
n
.
height
(),
offset
:{
top
:
n
.
scrollTop
(),
left
:
n
.
scrollLeft
()}}:
o
.
preventDefault
?{
width
:
0
,
height
:
0
,
offset
:{
top
:
o
.
pageY
,
left
:
o
.
pageX
}}:{
width
:
n
.
outerWidth
(),
height
:
n
.
outerHeight
(),
offset
:
n
.
offset
()}}
var
i
,
r
,
s
=
Math
.
max
,
c
=
Math
.
abs
,
a
=
Math
.
round
,
u
=
/left|center|right/
,
l
=
/top|center|bottom/
,
f
=
/
[\+\-]\d
+
(\.[\d]
+
)?
%
?
/
,
p
=
/^
\w
+/
,
h
=
/%$/
,
d
=
t
.
fn
.
position
;
r
=
function
(){
var
n
=
t
(
"
<div>
"
).
css
(
"
position
"
,
"
absolute
"
).
appendTo
(
"
body
"
).
offset
({
top
:
1.5
,
left
:
1.5
}),
o
=
1.5
===
n
.
offset
().
top
;
return
n
.
remove
(),
r
=
function
(){
return
o
},
o
},
t
.
position
=
{
scrollbarWidth
:
function
(){
if
(
void
0
!==
i
)
return
i
;
var
n
,
o
,
e
=
t
(
"
<div style='display:block;position:absolute;width:50px;height:50px;overflow:hidden;'><div style='height:100px;width:auto;'></div></div>
"
),
r
=
e
.
children
()[
0
];
return
t
(
"
body
"
).
append
(
e
),
n
=
r
.
offsetWidth
,
e
.
css
(
"
overflow
"
,
"
scroll
"
),
o
=
r
.
offsetWidth
,
n
===
o
&&
(
o
=
e
[
0
].
clientWidth
),
e
.
remove
(),
i
=
n
-
o
},
getScrollInfo
:
function
(
n
){
var
o
=
n
.
isWindow
||
n
.
isDocument
?
""
:
n
.
element
.
css
(
"
overflow-x
"
),
e
=
n
.
isWindow
||
n
.
isDocument
?
""
:
n
.
element
.
css
(
"
overflow-y
"
),
i
=
"
scroll
"
===
o
||
"
auto
"
===
o
&&
n
.
width
<
n
.
element
[
0
].
scrollWidth
,
r
=
"
scroll
"
===
e
||
"
auto
"
===
e
&&
n
.
height
<
n
.
element
[
0
].
scrollHeight
;
return
{
width
:
r
?
t
.
position
.
scrollbarWidth
():
0
,
height
:
i
?
t
.
position
.
scrollbarWidth
():
0
}},
getWithinInfo
:
function
(
n
){
var
o
=
t
(
n
||
window
),
e
=
t
.
isWindow
(
o
[
0
]),
i
=!!
o
[
0
]
&&
9
===
o
[
0
].
nodeType
,
r
=!
e
&&!
i
;
return
{
element
:
o
,
isWindow
:
e
,
isDocument
:
i
,
offset
:
r
?
t
(
n
).
offset
():{
left
:
0
,
top
:
0
},
scrollLeft
:
o
.
scrollLeft
(),
scrollTop
:
o
.
scrollTop
(),
width
:
o
.
outerWidth
(),
height
:
o
.
outerHeight
()}}},
t
.
fn
.
position
=
function
(
i
){
if
(
!
i
||!
i
.
of
)
return
d
.
apply
(
this
,
arguments
);
i
=
t
.
extend
({},
i
);
var
h
,
v
,
m
,
g
,
y
,
w
,
x
=
t
(
i
.
of
),
b
=
t
.
position
.
getWithinInfo
(
i
.
within
),
$
=
t
.
position
.
getScrollInfo
(
b
),
W
=
(
i
.
collision
||
"
flip
"
).
split
(
"
"
),
k
=
{};
return
w
=
e
(
x
),
x
[
0
].
preventDefault
&&
(
i
.
at
=
"
left top
"
),
v
=
w
.
width
,
m
=
w
.
height
,
g
=
w
.
offset
,
y
=
t
.
extend
({},
g
),
t
.
each
([
"
my
"
,
"
at
"
],
function
(){
var
t
,
n
,
o
=
(
i
[
this
]
||
""
).
split
(
"
"
);
1
===
o
.
length
&&
(
o
=
u
.
test
(
o
[
0
])?
o
.
concat
([
"
center
"
]):
l
.
test
(
o
[
0
])?[
"
center
"
].
concat
(
o
):[
"
center
"
,
"
center
"
]),
o
[
0
]
=
u
.
test
(
o
[
0
])?
o
[
0
]:
"
center
"
,
o
[
1
]
=
l
.
test
(
o
[
1
])?
o
[
1
]:
"
center
"
,
t
=
f
.
exec
(
o
[
0
]),
n
=
f
.
exec
(
o
[
1
]),
k
[
this
]
=
[
t
?
t
[
0
]:
0
,
n
?
n
[
0
]:
0
],
i
[
this
]
=
[
p
.
exec
(
o
[
0
])[
0
],
p
.
exec
(
o
[
1
])[
0
]]}),
1
===
W
.
length
&&
(
W
[
1
]
=
W
[
0
]),
"
right
"
===
i
.
at
[
0
]?
y
.
left
+=
v
:
"
center
"
===
i
.
at
[
0
]
&&
(
y
.
left
+=
v
/
2
),
"
bottom
"
===
i
.
at
[
1
]?
y
.
top
+=
m
:
"
center
"
===
i
.
at
[
1
]
&&
(
y
.
top
+=
m
/
2
),
h
=
n
(
k
.
at
,
v
,
m
),
y
.
left
+=
h
[
0
],
y
.
top
+=
h
[
1
],
this
.
each
(
function
(){
var
e
,
u
,
l
=
t
(
this
),
f
=
l
.
outerWidth
(),
p
=
l
.
outerHeight
(),
d
=
o
(
this
,
"
marginLeft
"
),
w
=
o
(
this
,
"
marginTop
"
),
E
=
f
+
d
+
o
(
this
,
"
marginRight
"
)
+
$
.
width
,
T
=
p
+
w
+
o
(
this
,
"
marginBottom
"
)
+
$
.
height
,
j
=
t
.
extend
({},
y
),
P
=
n
(
k
.
my
,
l
.
outerWidth
(),
l
.
outerHeight
());
"
right
"
===
i
.
my
[
0
]?
j
.
left
-=
f
:
"
center
"
===
i
.
my
[
0
]
&&
(
j
.
left
-=
f
/
2
),
"
bottom
"
===
i
.
my
[
1
]?
j
.
top
-=
p
:
"
center
"
===
i
.
my
[
1
]
&&
(
j
.
top
-=
p
/
2
),
j
.
left
+=
P
[
0
],
j
.
top
+=
P
[
1
],
r
()
||
(
j
.
left
=
a
(
j
.
left
),
j
.
top
=
a
(
j
.
top
)),
e
=
{
marginLeft
:
d
,
marginTop
:
w
},
t
.
each
([
"
left
"
,
"
top
"
],
function
(
n
,
o
){
t
.
ui
.
position
[
W
[
n
]]
&&
t
.
ui
.
position
[
W
[
n
]][
o
](
j
,{
targetWidth
:
v
,
targetHeight
:
m
,
elemWidth
:
f
,
elemHeight
:
p
,
collisionPosition
:
e
,
collisionWidth
:
E
,
collisionHeight
:
T
,
offset
:[
h
[
0
]
+
P
[
0
],
h
[
1
]
+
P
[
1
]],
my
:
i
.
my
,
at
:
i
.
at
,
within
:
b
,
elem
:
l
})}),
i
.
using
&&
(
u
=
function
(
t
){
var
n
=
g
.
left
-
j
.
left
,
o
=
n
+
v
-
f
,
e
=
g
.
top
-
j
.
top
,
r
=
e
+
m
-
p
,
a
=
{
target
:{
element
:
x
,
left
:
g
.
left
,
top
:
g
.
top
,
width
:
v
,
height
:
m
},
element
:{
element
:
l
,
left
:
j
.
left
,
top
:
j
.
top
,
width
:
f
,
height
:
p
},
horizontal
:
o
<
0
?
"
left
"
:
n
>
0
?
"
right
"
:
"
center
"
,
vertical
:
r
<
0
?
"
top
"
:
e
>
0
?
"
bottom
"
:
"
middle
"
};
v
<
f
&&
c
(
n
+
o
)
<
v
&&
(
a
.
horizontal
=
"
center
"
),
m
<
p
&&
c
(
e
+
r
)
<
m
&&
(
a
.
vertical
=
"
middle
"
),
s
(
c
(
n
),
c
(
o
))
>
s
(
c
(
e
),
c
(
r
))?
a
.
important
=
"
horizontal
"
:
a
.
important
=
"
vertical
"
,
i
.
using
.
call
(
this
,
t
,
a
)}),
l
.
offset
(
t
.
extend
(
j
,{
using
:
u
}))})},
t
.
ui
.
position
=
{
fit
:{
left
:
function
(
t
,
n
){
var
o
,
e
=
n
.
within
,
i
=
e
.
isWindow
?
e
.
scrollLeft
:
e
.
offset
.
left
,
r
=
e
.
width
,
c
=
t
.
left
-
n
.
collisionPosition
.
marginLeft
,
a
=
i
-
c
,
u
=
c
+
n
.
collisionWidth
-
r
-
i
;
n
.
collisionWidth
>
r
?
a
>
0
&&
u
<=
0
?(
o
=
t
.
left
+
a
+
n
.
collisionWidth
-
r
-
i
,
t
.
left
+=
a
-
o
):
u
>
0
&&
a
<=
0
?
t
.
left
=
i
:
a
>
u
?
t
.
left
=
i
+
r
-
n
.
collisionWidth
:
t
.
left
=
i
:
a
>
0
?
t
.
left
+=
a
:
u
>
0
?
t
.
left
-=
u
:
t
.
left
=
s
(
t
.
left
-
c
,
t
.
left
)},
top
:
function
(
t
,
n
){
var
o
,
e
=
n
.
within
,
i
=
e
.
isWindow
?
e
.
scrollTop
:
e
.
offset
.
top
,
r
=
n
.
within
.
height
,
c
=
t
.
top
-
n
.
collisionPosition
.
marginTop
,
a
=
i
-
c
,
u
=
c
+
n
.
collisionHeight
-
r
-
i
;
n
.
collisionHeight
>
r
?
a
>
0
&&
u
<=
0
?(
o
=
t
.
top
+
a
+
n
.
collisionHeight
-
r
-
i
,
t
.
top
+=
a
-
o
):
u
>
0
&&
a
<=
0
?
t
.
top
=
i
:
a
>
u
?
t
.
top
=
i
+
r
-
n
.
collisionHeight
:
t
.
top
=
i
:
a
>
0
?
t
.
top
+=
a
:
u
>
0
?
t
.
top
-=
u
:
t
.
top
=
s
(
t
.
top
-
c
,
t
.
top
)}},
flip
:{
left
:
function
(
t
,
n
){
var
o
,
e
,
i
=
n
.
within
,
r
=
i
.
offset
.
left
+
i
.
scrollLeft
,
s
=
i
.
width
,
a
=
i
.
isWindow
?
i
.
scrollLeft
:
i
.
offset
.
left
,
u
=
t
.
left
-
n
.
collisionPosition
.
marginLeft
,
l
=
u
-
a
,
f
=
u
+
n
.
collisionWidth
-
s
-
a
,
p
=
"
left
"
===
n
.
my
[
0
]?
-
n
.
elemWidth
:
"
right
"
===
n
.
my
[
0
]?
n
.
elemWidth
:
0
,
h
=
"
left
"
===
n
.
at
[
0
]?
n
.
targetWidth
:
"
right
"
===
n
.
at
[
0
]?
-
n
.
targetWidth
:
0
,
d
=-
2
*
n
.
offset
[
0
];
l
<
0
?(
o
=
t
.
left
+
p
+
h
+
d
+
n
.
collisionWidth
-
s
-
r
,(
o
<
0
||
o
<
c
(
l
))
&&
(
t
.
left
+=
p
+
h
+
d
)):
f
>
0
&&
(
e
=
t
.
left
-
n
.
collisionPosition
.
marginLeft
+
p
+
h
+
d
-
a
,(
e
>
0
||
c
(
e
)
<
f
)
&&
(
t
.
left
+=
p
+
h
+
d
))},
top
:
function
(
t
,
n
){
var
o
,
e
,
i
=
n
.
within
,
r
=
i
.
offset
.
top
+
i
.
scrollTop
,
s
=
i
.
height
,
a
=
i
.
isWindow
?
i
.
scrollTop
:
i
.
offset
.
top
,
u
=
t
.
top
-
n
.
collisionPosition
.
marginTop
,
l
=
u
-
a
,
f
=
u
+
n
.
collisionHeight
-
s
-
a
,
p
=
"
top
"
===
n
.
my
[
1
],
h
=
p
?
-
n
.
elemHeight
:
"
bottom
"
===
n
.
my
[
1
]?
n
.
elemHeight
:
0
,
d
=
"
top
"
===
n
.
at
[
1
]?
n
.
targetHeight
:
"
bottom
"
===
n
.
at
[
1
]?
-
n
.
targetHeight
:
0
,
v
=-
2
*
n
.
offset
[
1
];
l
<
0
?(
e
=
t
.
top
+
h
+
d
+
v
+
n
.
collisionHeight
-
s
-
r
,(
e
<
0
||
e
<
c
(
l
))
&&
(
t
.
top
+=
h
+
d
+
v
)):
f
>
0
&&
(
o
=
t
.
top
-
n
.
collisionPosition
.
marginTop
+
h
+
d
+
v
-
a
,(
o
>
0
||
c
(
o
)
<
f
)
&&
(
t
.
top
+=
h
+
d
+
v
))}},
flipfit
:{
left
:
function
(){
t
.
ui
.
position
.
flip
.
left
.
apply
(
this
,
arguments
),
t
.
ui
.
position
.
fit
.
left
.
apply
(
this
,
arguments
)},
top
:
function
(){
t
.
ui
.
position
.
flip
.
top
.
apply
(
this
,
arguments
),
t
.
ui
.
position
.
fit
.
top
.
apply
(
this
,
arguments
)}}}}(),
t
.
ui
.
position
})},
function
(
t
,
n
,
o
){
var
e
,
i
,
r
;
!
function
(
s
){
i
=
[
o
(
3
)],
e
=
s
,
r
=
"
function
"
==
typeof
e
?
e
.
apply
(
n
,
i
):
e
,
!
(
void
0
!==
r
&&
(
t
.
exports
=
r
))}(
function
(
t
){
return
t
.
ui
=
t
.
ui
||
{},
t
.
ui
.
version
=
"
1.12.0
"
})},
function
(
t
,
n
){
function
o
(){}
t
.
exports
=
o
},
function
(
t
,
n
,
o
){
t
.
exports
=
o
(
8
)},
function
(
t
,
n
,
o
){
var
e
=
o
(
9
),
i
=
o
(
10
),
r
=
o
(
31
),
s
=
r
(
e
,
i
);
t
.
exports
=
s
},
function
(
t
,
n
){
function
o
(
t
,
n
){
for
(
var
o
=-
1
,
e
=
t
.
length
;
++
o
<
e
&&
n
(
t
[
o
],
o
,
t
)
!==!
1
;);
return
t
}
t
.
exports
=
o
},
function
(
t
,
n
,
o
){
var
e
=
o
(
11
),
i
=
o
(
30
),
r
=
i
(
e
);
t
.
exports
=
r
},
function
(
t
,
n
,
o
){
function
e
(
t
,
n
){
return
i
(
t
,
n
,
r
)}
var
i
=
o
(
12
),
r
=
o
(
16
);
t
.
exports
=
e
},
function
(
t
,
n
,
o
){
var
e
=
o
(
13
),
i
=
e
();
t
.
exports
=
i
},
function
(
t
,
n
,
o
){
function
e
(
t
){
return
function
(
n
,
o
,
e
){
for
(
var
r
=
i
(
n
),
s
=
e
(
n
),
c
=
s
.
length
,
a
=
t
?
c
:
-
1
;
t
?
a
--
:
++
a
<
c
;){
var
u
=
s
[
a
];
if
(
o
(
r
[
u
],
u
,
r
)
===!
1
)
break
}
return
n
}}
var
i
=
o
(
14
);
t
.
exports
=
e
},
function
(
t
,
n
,
o
){
function
e
(
t
){
return
i
(
t
)?
t
:
Object
(
t
)}
var
i
=
o
(
15
);
t
.
exports
=
e
},
function
(
t
,
n
){
function
o
(
t
){
var
n
=
typeof
t
;
return
!!
t
&&
(
"
object
"
==
n
||
"
function
"
==
n
)}
t
.
exports
=
o
},
function
(
t
,
n
,
o
){
var
e
=
o
(
17
),
i
=
o
(
21
),
r
=
o
(
15
),
s
=
o
(
25
),
c
=
e
(
Object
,
"
keys
"
),
a
=
c
?
function
(
t
){
var
n
=
null
==
t
?
void
0
:
t
.
constructor
;
return
"
function
"
==
typeof
n
&&
n
.
prototype
===
t
||
"
function
"
!=
typeof
t
&&
i
(
t
)?
s
(
t
):
r
(
t
)?
c
(
t
):[]}:
s
;
t
.
exports
=
a
},
function
(
t
,
n
,
o
){
function
e
(
t
,
n
){
var
o
=
null
==
t
?
void
0
:
t
[
n
];
return
i
(
o
)?
o
:
void
0
}
var
i
=
o
(
18
);
t
.
exports
=
e
},
function
(
t
,
n
,
o
){
function
e
(
t
){
return
null
!=
t
&&
(
i
(
t
)?
l
.
test
(
a
.
call
(
t
)):
r
(
t
)
&&
s
.
test
(
t
))}
var
i
=
o
(
19
),
r
=
o
(
20
),
s
=
/^
\[
object .+
?
Constructor
\]
$/
,
c
=
Object
.
prototype
,
a
=
Function
.
prototype
.
toString
,
u
=
c
.
hasOwnProperty
,
l
=
RegExp
(
"
^
"
+
a
.
call
(
u
).
replace
(
/
[\\
^$.*+?()[
\]
{}|
]
/g
,
"
\\
$&
"
).
replace
(
/hasOwnProperty|
(
function
)
.*
?(?=\\\()
| for .+
?(?=\\\])
/g
,
"
$1.*?
"
)
+
"
$
"
);
t
.
exports
=
e
},
function
(
t
,
n
,
o
){
function
e
(
t
){
return
i
(
t
)
&&
c
.
call
(
t
)
==
r
}
var
i
=
o
(
15
),
r
=
"
[object Function]
"
,
s
=
Object
.
prototype
,
c
=
s
.
toString
;
t
.
exports
=
e
},
function
(
t
,
n
){
function
o
(
t
){
return
!!
t
&&
"
object
"
==
typeof
t
}
t
.
exports
=
o
},
function
(
t
,
n
,
o
){
function
e
(
t
){
return
null
!=
t
&&
r
(
i
(
t
))}
var
i
=
o
(
22
),
r
=
o
(
24
);
t
.
exports
=
e
},
function
(
t
,
n
,
o
){
var
e
=
o
(
23
),
i
=
e
(
"
length
"
);
t
.
exports
=
i
},
function
(
t
,
n
){
function
o
(
t
){
return
function
(
n
){
return
null
==
n
?
void
0
:
n
[
t
]}}
t
.
exports
=
o
},
function
(
t
,
n
){
function
o
(
t
){
return
"
number
"
==
typeof
t
&&
t
>-
1
&&
t
%
1
==
0
&&
t
<=
e
}
var
e
=
9007199254740991
;
t
.
exports
=
o
},
function
(
t
,
n
,
o
){
function
e
(
t
){
for
(
var
n
=
a
(
t
),
o
=
n
.
length
,
e
=
o
&&
t
.
length
,
u
=!!
e
&&
c
(
e
)
&&
(
r
(
t
)
||
i
(
t
)),
f
=-
1
,
p
=
[];
++
f
<
o
;){
var
h
=
n
[
f
];(
u
&&
s
(
h
,
e
)
||
l
.
call
(
t
,
h
))
&&
p
.
push
(
h
)}
return
p
}
var
i
=
o
(
26
),
r
=
o
(
27
),
s
=
o
(
28
),
c
=
o
(
24
),
a
=
o
(
29
),
u
=
Object
.
prototype
,
l
=
u
.
hasOwnProperty
;
t
.
exports
=
e
},
function
(
t
,
n
,
o
){
function
e
(
t
){
return
r
(
t
)
&&
i
(
t
)
&&
c
.
call
(
t
,
"
callee
"
)
&&!
a
.
call
(
t
,
"
callee
"
)}
var
i
=
o
(
21
),
r
=
o
(
20
),
s
=
Object
.
prototype
,
c
=
s
.
hasOwnProperty
,
a
=
s
.
propertyIsEnumerable
;
t
.
exports
=
e
},
function
(
t
,
n
,
o
){
var
e
=
o
(
17
),
i
=
o
(
24
),
r
=
o
(
20
),
s
=
"
[object Array]
"
,
c
=
Object
.
prototype
,
a
=
c
.
toString
,
u
=
e
(
Array
,
"
isArray
"
),
l
=
u
||
function
(
t
){
return
r
(
t
)
&&
i
(
t
.
length
)
&&
a
.
call
(
t
)
==
s
};
t
.
exports
=
l
},
function
(
t
,
n
){
function
o
(
t
,
n
){
return
t
=
"
number
"
==
typeof
t
||
e
.
test
(
t
)?
+
t
:
-
1
,
n
=
null
==
n
?
i
:
n
,
t
>-
1
&&
t
%
1
==
0
&&
t
<
n
}
var
e
=
/^
\d
+$/
,
i
=
9007199254740991
;
t
.
exports
=
o
},
function
(
t
,
n
,
o
){
function
e
(
t
){
if
(
null
==
t
)
return
[];
a
(
t
)
||
(
t
=
Object
(
t
));
var
n
=
t
.
length
;
n
=
n
&&
c
(
n
)
&&
(
r
(
t
)
||
i
(
t
))
&&
n
||
0
;
for
(
var
o
=
t
.
constructor
,
e
=-
1
,
u
=
"
function
"
==
typeof
o
&&
o
.
prototype
===
t
,
f
=
Array
(
n
),
p
=
n
>
0
;
++
e
<
n
;)
f
[
e
]
=
e
+
""
;
for
(
var
h
in
t
)
p
&&
s
(
h
,
n
)
||
"
constructor
"
==
h
&&
(
u
||!
l
.
call
(
t
,
h
))
||
f
.
push
(
h
);
return
f
}
var
i
=
o
(
26
),
r
=
o
(
27
),
s
=
o
(
28
),
c
=
o
(
24
),
a
=
o
(
15
),
u
=
Object
.
prototype
,
l
=
u
.
hasOwnProperty
;
t
.
exports
=
e
},
function
(
t
,
n
,
o
){
function
e
(
t
,
n
){
return
function
(
o
,
e
){
var
c
=
o
?
i
(
o
):
0
;
if
(
!
r
(
c
))
return
t
(
o
,
e
);
for
(
var
a
=
n
?
c
:
-
1
,
u
=
s
(
o
);(
n
?
a
--
:
++
a
<
c
)
&&
e
(
u
[
a
],
a
,
u
)
!==!
1
;);
return
o
}}
var
i
=
o
(
22
),
r
=
o
(
24
),
s
=
o
(
14
);
t
.
exports
=
e
},
function
(
t
,
n
,
o
){
function
e
(
t
,
n
){
return
function
(
o
,
e
,
s
){
return
"
function
"
==
typeof
e
&&
void
0
===
s
&&
r
(
o
)?
t
(
o
,
e
):
n
(
o
,
i
(
e
,
s
,
3
))}}
var
i
=
o
(
32
),
r
=
o
(
27
);
t
.
exports
=
e
},
function
(
t
,
n
,
o
){
function
e
(
t
,
n
,
o
){
if
(
"
function
"
!=
typeof
t
)
return
i
;
if
(
void
0
===
n
)
return
t
;
switch
(
o
){
case
1
:
return
function
(
o
){
return
t
.
call
(
n
,
o
)};
case
3
:
return
function
(
o
,
e
,
i
){
return
t
.
call
(
n
,
o
,
e
,
i
)};
case
4
:
return
function
(
o
,
e
,
i
,
r
){
return
t
.
call
(
n
,
o
,
e
,
i
,
r
)};
case
5
:
return
function
(
o
,
e
,
i
,
r
,
s
){
return
t
.
call
(
n
,
o
,
e
,
i
,
r
,
s
)}}
return
function
(){
return
t
.
apply
(
n
,
arguments
)}}
var
i
=
o
(
33
);
t
.
exports
=
e
},
function
(
t
,
n
){
function
o
(
t
){
return
t
}
t
.
exports
=
o
},
function
(
t
,
n
,
o
){
t
.
exports
=
o
(
35
)},
function
(
t
,
n
,
o
){
function
e
(
t
,
n
,
o
,
e
){
var
p
=
t
?
r
(
t
):
0
;
return
a
(
p
)
||
(
t
=
l
(
t
),
p
=
t
.
length
),
o
=
"
number
"
!=
typeof
o
||
e
&&
c
(
n
,
o
,
e
)?
0
:
o
<
0
?
f
(
p
+
o
,
0
):
o
||
0
,
"
string
"
==
typeof
t
||!
s
(
t
)
&&
u
(
t
)?
o
<=
p
&&
t
.
indexOf
(
n
,
o
)
>-
1
:
!!
p
&&
i
(
t
,
n
,
o
)
>-
1
}
var
i
=
o
(
36
),
r
=
o
(
22
),
s
=
o
(
27
),
c
=
o
(
38
),
a
=
o
(
24
),
u
=
o
(
39
),
l
=
o
(
40
),
f
=
Math
.
max
;
t
.
exports
=
e
},
function
(
t
,
n
,
o
){
function
e
(
t
,
n
,
o
){
if
(
n
!==
n
)
return
i
(
t
,
o
);
for
(
var
e
=
o
-
1
,
r
=
t
.
length
;
++
e
<
r
;)
if
(
t
[
e
]
===
n
)
return
e
;
return
-
1
}
var
i
=
o
(
37
);
t
.
exports
=
e
},
function
(
t
,
n
){
function
o
(
t
,
n
,
o
){
for
(
var
e
=
t
.
length
,
i
=
n
+
(
o
?
0
:
-
1
);
o
?
i
--
:
++
i
<
e
;){
var
r
=
t
[
i
];
if
(
r
!==
r
)
return
i
}
return
-
1
}
t
.
exports
=
o
},
function
(
t
,
n
,
o
){
function
e
(
t
,
n
,
o
){
if
(
!
s
(
o
))
return
!
1
;
var
e
=
typeof
n
;
if
(
"
number
"
==
e
?
i
(
o
)
&&
r
(
n
,
o
.
length
):
"
string
"
==
e
&&
n
in
o
){
var
c
=
o
[
n
];
return
t
===
t
?
t
===
c
:
c
!==
c
}
return
!
1
}
var
i
=
o
(
21
),
r
=
o
(
28
),
s
=
o
(
15
);
t
.
exports
=
e
},
function
(
t
,
n
,
o
){
function
e
(
t
){
return
"
string
"
==
typeof
t
||
i
(
t
)
&&
c
.
call
(
t
)
==
r
}
var
i
=
o
(
20
),
r
=
"
[object String]
"
,
s
=
Object
.
prototype
,
c
=
s
.
toString
;
t
.
exports
=
e
},
function
(
t
,
n
,
o
){
function
e
(
t
){
return
i
(
t
,
r
(
t
))}
var
i
=
o
(
41
),
r
=
o
(
16
);
t
.
exports
=
e
},
function
(
t
,
n
){
function
o
(
t
,
n
){
for
(
var
o
=-
1
,
e
=
n
.
length
,
i
=
Array
(
e
);
++
o
<
e
;)
i
[
o
]
=
t
[
n
[
o
]];
return
i
}
t
.
exports
=
o
},
function
(
t
,
n
,
o
){
t
.
exports
=
o
(
43
)},
function
(
t
,
n
,
o
){
var
e
=
o
(
44
),
i
=
o
(
45
),
r
=
o
(
47
),
s
=
r
(
function
(
t
,
n
,
o
){
return
o
?
e
(
t
,
n
,
o
):
i
(
t
,
n
)});
t
.
exports
=
s
},
function
(
t
,
n
,
o
){
function
e
(
t
,
n
,
o
){
for
(
var
e
=-
1
,
r
=
i
(
n
),
s
=
r
.
length
;
++
e
<
s
;){
var
c
=
r
[
e
],
a
=
t
[
c
],
u
=
o
(
a
,
n
[
c
],
c
,
t
,
n
);(
u
===
u
?
u
===
a
:
a
!==
a
)
&&
(
void
0
!==
a
||
c
in
t
)
||
(
t
[
c
]
=
u
)}
return
t
}
var
i
=
o
(
16
);
t
.
exports
=
e
},
function
(
t
,
n
,
o
){
function
e
(
t
,
n
){
return
null
==
n
?
t
:
i
(
n
,
r
(
n
),
t
)}
var
i
=
o
(
46
),
r
=
o
(
16
);
t
.
exports
=
e
},
function
(
t
,
n
){
function
o
(
t
,
n
,
o
){
o
||
(
o
=
{});
for
(
var
e
=-
1
,
i
=
n
.
length
;
++
e
<
i
;){
var
r
=
n
[
e
];
o
[
r
]
=
t
[
r
]}
return
o
}
t
.
exports
=
o
},
function
(
t
,
n
,
o
){
function
e
(
t
){
return
s
(
function
(
n
,
o
){
var
e
=-
1
,
s
=
null
==
n
?
0
:
o
.
length
,
c
=
s
>
2
?
o
[
s
-
2
]:
void
0
,
a
=
s
>
2
?
o
[
2
]:
void
0
,
u
=
s
>
1
?
o
[
s
-
1
]:
void
0
;
for
(
"
function
"
==
typeof
c
?(
c
=
i
(
c
,
u
,
5
),
s
-=
2
):(
c
=
"
function
"
==
typeof
u
?
u
:
void
0
,
s
-=
c
?
1
:
0
),
a
&&
r
(
o
[
0
],
o
[
1
],
a
)
&&
(
c
=
s
<
3
?
void
0
:
c
,
s
=
1
);
++
e
<
s
;){
var
l
=
o
[
e
];
l
&&
t
(
n
,
l
,
c
)}
return
n
})}
var
i
=
o
(
32
),
r
=
o
(
38
),
s
=
o
(
48
);
t
.
exports
=
e
},
function
(
t
,
n
){
function
o
(
t
,
n
){
if
(
"
function
"
!=
typeof
t
)
throw
new
TypeError
(
e
);
return
n
=
i
(
void
0
===
n
?
t
.
length
-
1
:
+
n
||
0
,
0
),
function
(){
for
(
var
o
=
arguments
,
e
=-
1
,
r
=
i
(
o
.
length
-
n
,
0
),
s
=
Array
(
r
);
++
e
<
r
;)
s
[
e
]
=
o
[
n
+
e
];
switch
(
n
){
case
0
:
return
t
.
call
(
this
,
s
);
case
1
:
return
t
.
call
(
this
,
o
[
0
],
s
);
case
2
:
return
t
.
call
(
this
,
o
[
0
],
o
[
1
],
s
)}
var
c
=
Array
(
n
+
1
);
for
(
e
=-
1
;
++
e
<
n
;)
c
[
e
]
=
o
[
e
];
return
c
[
n
]
=
s
,
t
.
apply
(
this
,
c
)}}
var
e
=
"
Expected a function
"
,
i
=
Math
.
max
;
t
.
exports
=
o
},
function
(
t
,
n
,
o
){
function
e
(
t
){
var
n
=++
r
;
return
i
(
t
)
+
n
}
var
i
=
o
(
50
),
r
=
0
;
t
.
exports
=
e
},
function
(
t
,
n
){
function
o
(
t
){
return
null
==
t
?
""
:
t
+
""
}
t
.
exports
=
o
}]);
\ No newline at end of file
mall-demo/src/main/resources/static/plugins/My97DatePicker/WdatePicker.js
0 → 100644
View file @
5dca3a75
/*
* My97 DatePicker 4.8 Beta4
* License: http://www.my97.net/dp/license.asp
*/
var
$dp
,
WdatePicker
;(
function
(){
var
$
=
{
$langList
:[
{
name
:
"
en
"
,
charset
:
"
UTF-8
"
},
{
name
:
"
zh-cn
"
,
charset
:
"
gb2312
"
},
{
name
:
"
zh-tw
"
,
charset
:
"
GBK
"
}],
$skinList
:[
{
name
:
"
default
"
,
charset
:
"
gb2312
"
},
{
name
:
"
whyGreen
"
,
charset
:
"
gb2312
"
},
{
name
:
"
blue
"
,
charset
:
"
gb2312
"
},
{
name
:
"
green
"
,
charset
:
"
gb2312
"
},
{
name
:
"
simple
"
,
charset
:
"
gb2312
"
},
{
name
:
"
ext
"
,
charset
:
"
gb2312
"
},
{
name
:
"
blueFresh
"
,
charset
:
"
gb2312
"
},
{
name
:
"
twoer
"
,
charset
:
"
gb2312
"
},
{
name
:
"
YcloudRed
"
,
charset
:
"
gb2312
"
}],
$wdate
:
true
,
$crossFrame
:
true
,
$preLoad
:
false
,
$dpPath
:
""
,
doubleCalendar
:
false
,
enableKeyboard
:
true
,
enableInputMask
:
true
,
autoUpdateOnChanged
:
null
,
weekMethod
:
"
ISO8601
"
,
position
:{},
lang
:
"
auto
"
,
skin
:
"
default
"
,
dateFmt
:
"
yyyy-MM-dd
"
,
realDateFmt
:
"
yyyy-MM-dd
"
,
realTimeFmt
:
"
HH:mm:ss
"
,
realFullFmt
:
"
%Date %Time
"
,
minDate
:
"
1900-01-01 00:00:00
"
,
maxDate
:
"
2099-12-31 23:59:59
"
,
startDate
:
""
,
alwaysUseStartDate
:
false
,
yearOffset
:
1911
,
firstDayOfWeek
:
0
,
isShowWeek
:
false
,
highLineWeekDay
:
true
,
isShowClear
:
true
,
isShowToday
:
true
,
isShowOK
:
true
,
isShowOthers
:
true
,
readOnly
:
false
,
errDealMode
:
0
,
autoPickDate
:
null
,
qsEnabled
:
true
,
autoShowQS
:
false
,
opposite
:
false
,
hmsMenuCfg
:{
H
:[
1
,
6
],
m
:[
5
,
6
],
s
:[
15
,
4
]},
opposite
:
false
,
specialDates
:
null
,
specialDays
:
null
,
disabledDates
:
null
,
disabledDays
:
null
,
onpicking
:
null
,
onpicked
:
null
,
onclearing
:
null
,
oncleared
:
null
,
ychanging
:
null
,
ychanged
:
null
,
Mchanging
:
null
,
Mchanged
:
null
,
dchanging
:
null
,
dchanged
:
null
,
Hchanging
:
null
,
Hchanged
:
null
,
mchanging
:
null
,
mchanged
:
null
,
schanging
:
null
,
schanged
:
null
,
eCont
:
null
,
vel
:
null
,
elProp
:
""
,
errMsg
:
""
,
quickSel
:[],
has
:{},
getRealLang
:
function
(){
var
_
=
$
.
$langList
;
for
(
var
A
=
0
;
A
<
_
.
length
;
A
++
)
if
(
_
[
A
].
name
==
this
.
lang
)
return
_
[
A
];
return
_
[
0
]}};
WdatePicker
=
U
;
var
Y
=
window
,
T
=
{
innerHTML
:
""
},
N
=
"
document
"
,
H
=
"
documentElement
"
,
C
=
"
getElementsByTagName
"
,
V
,
A
,
S
,
G
,
c
,
X
=
navigator
.
appName
;
if
(
X
==
"
Microsoft Internet Explorer
"
)
S
=
true
;
else
if
(
X
==
"
Opera
"
)
c
=
true
;
else
G
=
true
;
A
=
$
.
$dpPath
||
J
();
if
(
$
.
$wdate
)
K
(
A
+
"
skin/WdatePicker.css
"
);
V
=
Y
;
if
(
$
.
$crossFrame
){
try
{
while
(
V
.
parent
!=
V
&&
V
.
parent
[
N
][
C
](
"
frameset
"
).
length
==
0
)
V
=
V
.
parent
}
catch
(
O
){}}
if
(
!
V
.
$dp
)
V
.
$dp
=
{
ff
:
G
,
ie
:
S
,
opera
:
c
,
status
:
0
,
defMinDate
:
$
.
minDate
,
defMaxDate
:
$
.
maxDate
};
B
();
if
(
$
.
$preLoad
&&
$dp
.
status
==
0
)
E
(
Y
,
"
onload
"
,
function
(){
U
(
null
,
true
)});
if
(
!
Y
[
N
].
docMD
){
E
(
Y
[
N
],
"
onmousedown
"
,
D
,
true
);
Y
[
N
].
docMD
=
true
}
if
(
!
V
[
N
].
docMD
){
E
(
V
[
N
],
"
onmousedown
"
,
D
,
true
);
V
[
N
].
docMD
=
true
}
E
(
Y
,
"
onunload
"
,
function
(){
if
(
$dp
.
dd
)
P
(
$dp
.
dd
,
"
none
"
)});
function
B
(){
try
{
V
[
N
],
V
.
$dp
=
V
.
$dp
||
{}}
catch
(
$
){
V
=
Y
;
$dp
=
$dp
||
{}}
var
A
=
{
win
:
Y
,
$
:
function
(
$
){
return
(
typeof
$
==
"
string
"
)?
Y
[
N
].
getElementById
(
$
):
$
},
$D
:
function
(
$
,
_
){
return
this
.
$DV
(
this
.
$
(
$
).
value
,
_
)},
$DV
:
function
(
_
,
$
){
if
(
_
!=
""
){
this
.
dt
=
$dp
.
cal
.
splitDate
(
_
,
$dp
.
cal
.
dateFmt
);
if
(
$
)
for
(
var
B
in
$
)
if
(
this
.
dt
[
B
]
===
undefined
)
this
.
errMsg
=
"
invalid property:
"
+
B
;
else
{
this
.
dt
[
B
]
+=
$
[
B
];
if
(
B
==
"
M
"
){
var
C
=
$
[
"
M
"
]
>
0
?
1
:
0
,
A
=
new
Date
(
this
.
dt
[
"
y
"
],
this
.
dt
[
"
M
"
],
0
).
getDate
();
this
.
dt
[
"
d
"
]
=
Math
.
min
(
A
+
C
,
this
.
dt
[
"
d
"
])}}
if
(
this
.
dt
.
refresh
())
return
this
.
dt
}
return
""
},
show
:
function
(){
var
A
=
V
[
N
].
getElementsByTagName
(
"
div
"
),
$
=
100000
;
for
(
var
B
=
0
;
B
<
A
.
length
;
B
++
){
var
_
=
parseInt
(
A
[
B
].
style
.
zIndex
);
if
(
_
>
$
)
$
=
_
}
this
.
dd
.
style
.
zIndex
=
$
+
2
;
P
(
this
.
dd
,
"
block
"
);
P
(
this
.
dd
.
firstChild
,
""
)},
unbind
:
function
(
$
){
$
=
this
.
$
(
$
);
if
(
$
.
initcfg
){
L
(
$
,
"
onclick
"
,
function
(){
U
(
$
.
initcfg
)});
L
(
$
,
"
onfocus
"
,
function
(){
U
(
$
.
initcfg
)})}},
hide
:
function
(){
P
(
this
.
dd
,
"
none
"
)},
attachEvent
:
E
};
for
(
var
_
in
A
)
V
.
$dp
[
_
]
=
A
[
_
];
$dp
=
V
.
$dp
}
function
E
(
B
,
_
,
A
,
$
){
if
(
B
.
addEventListener
){
var
C
=
_
.
replace
(
/on/
,
""
);
A
.
_ieEmuEventHandler
=
function
(
$
){
return
A
(
$
)};
B
.
addEventListener
(
C
,
A
.
_ieEmuEventHandler
,
$
)}
else
B
.
attachEvent
(
_
,
A
)}
function
L
(
A
,
$
,
_
){
if
(
A
.
removeEventListener
){
var
B
=
$
.
replace
(
/on/
,
""
);
_
.
_ieEmuEventHandler
=
function
(
$
){
return
_
(
$
)};
A
.
removeEventListener
(
B
,
_
.
_ieEmuEventHandler
,
false
)}
else
A
.
detachEvent
(
$
,
_
)}
function
a
(
_
,
$
,
A
){
if
(
typeof
_
!=
typeof
$
)
return
false
;
if
(
typeof
_
==
"
object
"
){
if
(
!
A
)
for
(
var
B
in
_
){
if
(
typeof
$
[
B
]
==
"
undefined
"
)
return
false
;
if
(
!
a
(
_
[
B
],
$
[
B
],
true
))
return
false
}
return
true
}
else
if
(
typeof
_
==
"
function
"
&&
typeof
$
==
"
function
"
)
return
_
.
toString
()
==
$
.
toString
();
else
return
_
==
$
}
function
J
(){
var
_
,
A
,
$
=
Y
[
N
][
C
](
"
script
"
);
for
(
var
B
=
0
;
B
<
$
.
length
;
B
++
){
_
=
$
[
B
].
getAttribute
(
"
src
"
)
||
""
;
_
=
_
.
substr
(
0
,
_
.
toLowerCase
().
indexOf
(
"
wdatepicker.js
"
));
A
=
_
.
lastIndexOf
(
"
/
"
);
if
(
A
>
0
)
_
=
_
.
substring
(
0
,
A
+
1
);
if
(
_
)
break
}
return
_
}
function
K
(
A
,
$
,
B
){
var
D
=
Y
[
N
][
C
](
"
HEAD
"
).
item
(
0
),
_
=
Y
[
N
].
createElement
(
"
link
"
);
if
(
D
){
_
.
href
=
A
;
_
.
rel
=
"
stylesheet
"
;
_
.
type
=
"
text/css
"
;
if
(
$
)
_
.
title
=
$
;
if
(
B
)
_
.
charset
=
B
;
D
.
appendChild
(
_
)}}
function
F
(
$
){
$
=
$
||
V
;
var
A
=
0
,
_
=
0
;
while
(
$
!=
V
){
var
D
=
$
.
parent
[
N
][
C
](
"
iframe
"
);
for
(
var
F
=
0
;
F
<
D
.
length
;
F
++
){
try
{
if
(
D
[
F
].
contentWindow
==
$
){
var
E
=
W
(
D
[
F
]);
A
+=
E
.
left
;
_
+=
E
.
top
;
break
}}
catch
(
B
){}}
$
=
$
.
parent
}
return
{
"
leftM
"
:
A
,
"
topM
"
:
_
}}
function
W
(
G
,
F
){
if
(
G
.
getBoundingClientRect
)
return
G
.
getBoundingClientRect
();
else
{
var
A
=
{
ROOT_TAG
:
/^body|html$/i
,
OP_SCROLL
:
/^
(?:
inline|table-row
)
$/i
},
E
=
false
,
I
=
null
,
_
=
G
.
offsetTop
,
H
=
G
.
offsetLeft
,
D
=
G
.
offsetWidth
,
B
=
G
.
offsetHeight
,
C
=
G
.
offsetParent
;
if
(
C
!=
G
)
while
(
C
){
H
+=
C
.
offsetLeft
;
_
+=
C
.
offsetTop
;
if
(
R
(
C
,
"
position
"
).
toLowerCase
()
==
"
fixed
"
)
E
=
true
;
else
if
(
C
.
tagName
.
toLowerCase
()
==
"
body
"
)
I
=
C
.
ownerDocument
.
defaultView
;
C
=
C
.
offsetParent
}
C
=
G
.
parentNode
;
while
(
C
.
tagName
&&!
A
.
ROOT_TAG
.
test
(
C
.
tagName
)){
if
(
C
.
scrollTop
||
C
.
scrollLeft
)
if
(
!
A
.
OP_SCROLL
.
test
(
P
(
C
)))
if
(
!
c
||
C
.
style
.
overflow
!==
"
visible
"
){
H
-=
C
.
scrollLeft
;
_
-=
C
.
scrollTop
}
C
=
C
.
parentNode
}
if
(
!
E
){
var
$
=
b
(
I
);
H
-=
$
.
left
;
_
-=
$
.
top
}
D
+=
H
;
B
+=
_
;
return
{
"
left
"
:
H
,
"
top
"
:
_
,
"
right
"
:
D
,
"
bottom
"
:
B
}}}
function
M
(
$
){
$
=
$
||
V
;
var
B
=
$
[
N
],
A
=
(
$
.
innerWidth
)?
$
.
innerWidth
:(
B
[
H
]
&&
B
[
H
].
clientWidth
)?
B
[
H
].
clientWidth
:
B
.
body
.
offsetWidth
,
_
=
(
$
.
innerHeight
)?
$
.
innerHeight
:(
B
[
H
]
&&
B
[
H
].
clientHeight
)?
B
[
H
].
clientHeight
:
B
.
body
.
offsetHeight
;
return
{
"
width
"
:
A
,
"
height
"
:
_
}}
function
b
(
$
){
$
=
$
||
V
;
var
B
=
$
[
N
],
A
=
B
[
H
],
_
=
B
.
body
;
B
=
(
A
&&
A
.
scrollTop
!=
null
&&
(
A
.
scrollTop
>
_
.
scrollTop
||
A
.
scrollLeft
>
_
.
scrollLeft
))?
A
:
_
;
return
{
"
top
"
:
B
.
scrollTop
,
"
left
"
:
B
.
scrollLeft
}}
function
D
(
$
){
try
{
var
_
=
$
?(
$
.
srcElement
||
$
.
target
):
null
;
if
(
$dp
.
cal
&&!
$dp
.
eCont
&&
$dp
.
dd
&&
_
!=
$dp
.
el
&&
$dp
.
dd
.
style
.
display
==
"
block
"
)
$dp
.
cal
.
close
()}
catch
(
$
){}}
function
Z
(){
$dp
.
status
=
2
}
var
Q
,
_
;
function
U
(
K
,
C
){
if
(
!
$dp
)
return
;
B
();
var
L
=
{};
for
(
var
H
in
K
)
L
[
H
]
=
K
[
H
];
for
(
H
in
$
)
if
(
H
.
substring
(
0
,
1
)
!=
"
$
"
&&
L
[
H
]
===
undefined
)
L
[
H
]
=
$
[
H
];
if
(
C
){
if
(
!
J
()){
_
=
_
||
setInterval
(
function
(){
if
(
V
[
N
].
readyState
==
"
complete
"
)
clearInterval
(
_
);
U
(
null
,
true
)},
50
);
return
}
if
(
$dp
.
status
==
0
){
$dp
.
status
=
1
;
L
.
el
=
T
;
I
(
L
,
true
)}
else
return
}
else
if
(
L
.
eCont
){
L
.
eCont
=
$dp
.
$
(
L
.
eCont
);
L
.
el
=
T
;
L
.
autoPickDate
=
true
;
L
.
qsEnabled
=
false
;
I
(
L
)}
else
{
if
(
$
.
$preLoad
&&
$dp
.
status
!=
2
)
return
;
var
F
=
D
();
if
(
Y
.
event
===
F
||
F
){
L
.
srcEl
=
F
.
srcElement
||
F
.
target
;
F
.
cancelBubble
=
true
}
L
.
el
=
L
.
el
=
$dp
.
$
(
L
.
el
||
L
.
srcEl
);
if
(
!
L
.
el
||
L
.
el
[
"
My97Mark
"
]
===
true
||
L
.
el
.
disabled
||
(
$dp
.
dd
&&
P
(
$dp
.
dd
)
!=
"
none
"
&&
$dp
.
dd
.
style
.
left
!=
"
-970px
"
)){
try
{
if
(
L
.
el
[
"
My97Mark
"
])
L
.
el
[
"
My97Mark
"
]
=
false
}
catch
(
A
){}
return
}
if
(
F
&&
L
.
el
.
nodeType
==
1
&&!
a
(
L
.
el
.
initcfg
,
K
)){
$dp
.
unbind
(
L
.
el
);
E
(
L
.
el
,
F
.
type
==
"
focus
"
?
"
onclick
"
:
"
onfocus
"
,
function
(){
U
(
K
)});
L
.
el
.
initcfg
=
K
}
I
(
L
)}
function
J
(){
if
(
S
&&
V
!=
Y
&&
V
[
N
].
readyState
!=
"
complete
"
)
return
false
;
return
true
}
function
D
(){
if
(
G
){
func
=
D
.
caller
;
while
(
func
!=
null
){
var
$
=
func
.
arguments
[
0
];
if
(
$
&&
(
$
+
""
).
indexOf
(
"
Event
"
)
>=
0
)
return
$
;
func
=
func
.
caller
}
return
null
}
return
event
}}
function
R
(
_
,
$
){
return
_
.
currentStyle
?
_
.
currentStyle
[
$
]:
document
.
defaultView
.
getComputedStyle
(
_
,
false
)[
$
]}
function
P
(
_
,
$
){
if
(
_
)
if
(
$
!=
null
)
_
.
style
.
display
=
$
;
else
return
R
(
_
,
"
display
"
)}
function
I
(
G
,
_
){
var
D
=
G
.
el
?
G
.
el
.
nodeName
:
"
INPUT
"
;
if
(
_
||
G
.
eCont
||
new
RegExp
(
/input|textarea|div|span|p|a/ig
).
test
(
D
))
G
.
elProp
=
D
==
"
INPUT
"
?
"
value
"
:
"
innerHTML
"
;
else
return
;
if
(
G
.
lang
==
"
auto
"
)
G
.
lang
=
S
?
navigator
.
browserLanguage
.
toLowerCase
():
navigator
.
language
.
toLowerCase
();
if
(
!
G
.
eCont
)
for
(
var
C
in
G
)
$dp
[
C
]
=
G
[
C
];
if
(
!
$dp
.
dd
||
G
.
eCont
||
(
$dp
.
dd
&&
(
G
.
getRealLang
().
name
!=
$dp
.
dd
.
lang
||
G
.
skin
!=
$dp
.
dd
.
skin
))){
if
(
G
.
eCont
)
E
(
G
.
eCont
,
G
);
else
{
$dp
.
dd
=
V
[
N
].
createElement
(
"
DIV
"
);
$dp
.
dd
.
style
.
cssText
=
"
position:absolute
"
;
V
[
N
].
body
.
appendChild
(
$dp
.
dd
);
E
(
$dp
.
dd
,
G
);
if
(
_
)
$dp
.
dd
.
style
.
left
=
$dp
.
dd
.
style
.
top
=
"
-970px
"
;
else
{
$dp
.
show
();
B
(
$dp
)}}}
else
if
(
$dp
.
cal
){
$dp
.
show
();
$dp
.
cal
.
init
();
if
(
!
$dp
.
eCont
)
B
(
$dp
)}
function
E
(
K
,
J
){
var
I
=
V
[
N
].
domain
,
F
=
false
,
G
=
"
<iframe hideFocus=true width=9 height=7 frameborder=0 border=0 scrolling=no src=
\"
about:blank
\"
></iframe>
"
;
K
.
innerHTML
=
G
;
var
_
=
$
.
$langList
,
D
=
$
.
$skinList
,
H
;
try
{
H
=
K
.
lastChild
.
contentWindow
[
N
]}
catch
(
E
){
F
=
true
;
K
.
removeChild
(
K
.
lastChild
);
var
L
=
V
[
N
].
createElement
(
"
iframe
"
);
L
.
hideFocus
=
true
;
L
.
frameBorder
=
0
;
L
.
scrolling
=
"
no
"
;
L
.
src
=
"
javascript:(function(){var d=document;d.open();d.domain='
"
+
I
+
"
';})()
"
;
K
.
appendChild
(
L
);
setTimeout
(
function
(){
H
=
K
.
lastChild
.
contentWindow
[
N
];
C
()},
97
);
return
}
C
();
function
C
(){
var
_
=
J
.
getRealLang
();
K
.
lang
=
_
.
name
;
K
.
skin
=
J
.
skin
;
var
$
=
[
"
<head><script>
"
,
""
,
"
var doc=document, $d, $dp, $cfg=doc.cfg, $pdp = parent.$dp, $dt, $tdt, $sdt, $lastInput, $IE=$pdp.ie, $FF = $pdp.ff,$OPERA=$pdp.opera, $ny, $cMark = false;
"
,
"
if($cfg.eCont){$dp = {};for(var p in $pdp)$dp[p]=$pdp[p];}else{$dp=$pdp;};for(var p in $cfg){$dp[p]=$cfg[p];}
"
,
"
doc.oncontextmenu=function(){try{$c._fillQS(!$dp.has.d,1);showB($d.qsDivSel);}catch(e){};return false;};
"
,
"
</script><script src=
"
,
A
,
"
lang/
"
,
_
.
name
,
"
.js charset=
"
,
_
.
charset
,
"
></script>
"
];
if
(
F
)
$
[
1
]
=
"
document.domain=
\"
"
+
I
+
"
\"
;
"
;
for
(
var
C
=
0
;
C
<
D
.
length
;
C
++
)
if
(
D
[
C
].
name
==
J
.
skin
)
$
.
push
(
"
<link rel=
\"
stylesheet
\"
type=
\"
text/css
\"
href=
\"
"
+
A
+
"
skin/
"
+
D
[
C
].
name
+
"
/datepicker.css
\"
charset=
\"
"
+
D
[
C
].
charset
+
"
\"
/>
"
);
$
.
push
(
"
<script src=
\"
"
+
A
+
"
calendar.js
\"
></script>
"
);
$
.
push
(
"
</head><body leftmargin=
\"
0
\"
topmargin=
\"
0
\"
tabindex=0></body></html>
"
);
$
.
push
(
"
<script>var t;t=t||setInterval(function(){if(doc.ready){new My97DP();$cfg.onload();$c.autoSize();$cfg.setPos($dp);clearInterval(t);}},20);</script>
"
);
J
.
setPos
=
B
;
J
.
onload
=
Z
;
H
.
write
(
"
<html>
"
);
H
.
cfg
=
J
;
H
.
write
(
$
.
join
(
""
));
H
.
close
()}}
function
B
(
J
){
var
H
=
J
.
position
.
left
,
C
=
J
.
position
.
top
,
D
=
J
.
el
;
if
(
D
==
T
)
return
;
if
(
D
!=
J
.
srcEl
&&
(
P
(
D
)
==
"
none
"
||
D
.
type
==
"
hidden
"
))
D
=
J
.
srcEl
;
var
I
=
W
(
D
),
$
=
F
(
Y
),
E
=
M
(
V
),
B
=
b
(
V
),
G
=
$dp
.
dd
.
offsetHeight
,
A
=
$dp
.
dd
.
offsetWidth
;
if
(
isNaN
(
C
))
C
=
0
;
if
((
$
.
topM
+
I
.
bottom
+
G
>
E
.
height
)
&&
(
$
.
topM
+
I
.
top
-
G
>
0
))
C
+=
B
.
top
+
$
.
topM
+
I
.
top
-
G
-
2
;
else
{
C
+=
B
.
top
+
$
.
topM
+
I
.
bottom
;
var
_
=
C
-
B
.
top
+
G
-
E
.
height
;
if
(
_
>
0
)
C
-=
_
}
if
(
isNaN
(
H
))
H
=
0
;
H
+=
B
.
left
+
Math
.
min
(
$
.
leftM
+
I
.
left
,
E
.
width
-
A
-
5
)
-
(
S
?
2
:
0
);
J
.
dd
.
style
.
top
=
C
+
"
px
"
;
J
.
dd
.
style
.
left
=
H
+
"
px
"
}}})()
\ No newline at end of file
mall-demo/src/main/resources/static/plugins/My97DatePicker/calendar.js
0 → 100644
View file @
5dca3a75
This diff is collapsed.
Click to expand it.
mall-demo/src/main/resources/static/plugins/My97DatePicker/lang/en.js
0 → 100644
View file @
5dca3a75
var
$lang
=
{
errAlertMsg
:
"
Invalid date or the date out of range,redo or not?
"
,
aWeekStr
:
[
"
wk
"
,
"
Sun
"
,
"
Mon
"
,
"
Tue
"
,
"
Wed
"
,
"
Thu
"
,
"
Fri
"
,
"
Sat
"
],
aLongWeekStr
:[
"
wk
"
,
"
Sunday
"
,
"
Monday
"
,
"
Tuesday
"
,
"
Wednesday
"
,
"
Thursday
"
,
"
Friday
"
,
"
Saturday
"
,
"
Sunday
"
],
aMonStr
:
[
"
Jan
"
,
"
Feb
"
,
"
Mar
"
,
"
Apr
"
,
"
May
"
,
"
Jun
"
,
"
Jul
"
,
"
Aug
"
,
"
Sep
"
,
"
Oct
"
,
"
Nov
"
,
"
Dec
"
],
aLongMonStr
:
[
"
January
"
,
"
February
"
,
"
March
"
,
"
April
"
,
"
May
"
,
"
June
"
,
"
July
"
,
"
August
"
,
"
September
"
,
"
October
"
,
"
November
"
,
"
December
"
],
clearStr
:
"
Clear
"
,
todayStr
:
"
Today
"
,
okStr
:
"
OK
"
,
updateStr
:
"
OK
"
,
timeStr
:
"
Time
"
,
quickStr
:
"
Quick Selection
"
,
err_1
:
'
MinDate Cannot be bigger than MaxDate!
'
}
\ No newline at end of file
mall-demo/src/main/resources/static/plugins/My97DatePicker/lang/zh-cn.js
0 → 100644
View file @
5dca3a75
var
$lang
=
{
errAlertMsg
:
"
\
u4E0D
\
u5408
\
u6CD5
\
u7684
\
u65E5
\
u671F
\
u683C
\
u5F0F
\
u6216
\
u8005
\
u65E5
\
u671F
\
u8D85
\
u51FA
\
u9650
\
u5B9A
\
u8303
\
u56F4,
\
u9700
\
u8981
\
u64A4
\
u9500
\
u5417?
"
,
aWeekStr
:
[
"
\
u5468
"
,
"
\
u65E5
"
,
"
\
u4E00
"
,
"
\
u4E8C
"
,
"
\
u4E09
"
,
"
\
u56DB
"
,
"
\
u4E94
"
,
"
\
u516D
"
],
aLongWeekStr
:[
"
\
u5468
"
,
"
\
u661F
\
u671F
\
u65E5
"
,
"
\
u661F
\
u671F
\
u4E00
"
,
"
\
u661F
\
u671F
\
u4E8C
"
,
"
\
u661F
\
u671F
\
u4E09
"
,
"
\
u661F
\
u671F
\
u56DB
"
,
"
\
u661F
\
u671F
\
u4E94
"
,
"
\
u661F
\
u671F
\
u516D
"
],
aMonStr
:
[
"
\
u4E00
\
u6708
"
,
"
\
u4E8C
\
u6708
"
,
"
\
u4E09
\
u6708
"
,
"
\
u56DB
\
u6708
"
,
"
\
u4E94
\
u6708
"
,
"
\
u516D
\
u6708
"
,
"
\
u4E03
\
u6708
"
,
"
\
u516B
\
u6708
"
,
"
\
u4E5D
\
u6708
"
,
"
\
u5341
\
u6708
"
,
"
\
u5341
\
u4E00
"
,
"
\
u5341
\
u4E8C
"
],
aLongMonStr
:
[
"
\
u4E00
\
u6708
"
,
"
\
u4E8C
\
u6708
"
,
"
\
u4E09
\
u6708
"
,
"
\
u56DB
\
u6708
"
,
"
\
u4E94
\
u6708
"
,
"
\
u516D
\
u6708
"
,
"
\
u4E03
\
u6708
"
,
"
\
u516B
\
u6708
"
,
"
\
u4E5D
\
u6708
"
,
"
\
u5341
\
u6708
"
,
"
\
u5341
\
u4E00
\
u6708
"
,
"
\
u5341
\
u4E8C
\
u6708
"
],
clearStr
:
"
\
u6E05
\
u7A7A
"
,
todayStr
:
"
\
u4ECA
\
u5929
"
,
okStr
:
"
\
u786E
\
u5B9A
"
,
updateStr
:
"
\
u786E
\
u5B9A
"
,
timeStr
:
"
\
u65F6
\
u95F4
"
,
quickStr
:
"
\
u5FEB
\
u901F
\
u9009
\
u62E9
"
,
err_1
:
'
\
u6700
\
u5C0F
\
u65E5
\
u671F
\
u4E0D
\
u80FD
\
u5927
\
u4E8E
\
u6700
\
u5927
\
u65E5
\
u671F!
'
}
\ No newline at end of file
mall-demo/src/main/resources/static/plugins/My97DatePicker/lang/zh-tw.js
0 → 100644
View file @
5dca3a75
var
$lang
=
{
errAlertMsg
:
"
\
u4E0D
\
u5408
\
u6CD5
\
u7684
\
u65E5
\
u671F
\
u683C
\
u5F0F
\
u6216
\
u8005
\
u65E5
\
u671F
\
u8D85
\
u51FA
\
u9650
\
u5B9A
\
u7BC4
\
u570D,
\
u9700
\
u8981
\
u64A4
\
u92B7
\
u55CE?
"
,
aWeekStr
:
[
"
\
u5468
"
,
"
\
u65E5
"
,
"
\
u4E00
"
,
"
\
u4E8C
"
,
"
\
u4E09
"
,
"
\
u56DB
"
,
"
\
u4E94
"
,
"
\
u516D
"
],
aLongWeekStr
:[
"
\
u5468
"
,
"
\
u661F
\
u671F
\
u65E5
"
,
"
\
u661F
\
u671F
\
u4E00
"
,
"
\
u661F
\
u671F
\
u4E8C
"
,
"
\
u661F
\
u671F
\
u4E09
"
,
"
\
u661F
\
u671F
\
u56DB
"
,
"
\
u661F
\
u671F
\
u4E94
"
,
"
\
u661F
\
u671F
\
u516D
"
],
aMonStr
:
[
"
\
u4E00
\
u6708
"
,
"
\
u4E8C
\
u6708
"
,
"
\
u4E09
\
u6708
"
,
"
\
u56DB
\
u6708
"
,
"
\
u4E94
\
u6708
"
,
"
\
u516D
\
u6708
"
,
"
\
u4E03
\
u6708
"
,
"
\
u516B
\
u6708
"
,
"
\
u4E5D
\
u6708
"
,
"
\
u5341
\
u6708
"
,
"
\
u5341
\
u4E00
"
,
"
\
u5341
\
u4E8C
"
],
aLongMonStr
:
[
"
\
u4E00
\
u6708
"
,
"
\
u4E8C
\
u6708
"
,
"
\
u4E09
\
u6708
"
,
"
\
u56DB
\
u6708
"
,
"
\
u4E94
\
u6708
"
,
"
\
u516D
\
u6708
"
,
"
\
u4E03
\
u6708
"
,
"
\
u516B
\
u6708
"
,
"
\
u4E5D
\
u6708
"
,
"
\
u5341
\
u6708
"
,
"
\
u5341
\
u4E00
\
u6708
"
,
"
\
u5341
\
u4E8C
\
u6708
"
],
clearStr
:
"
\
u6E05
\
u7A7A
"
,
todayStr
:
"
\
u4ECA
\
u5929
"
,
okStr
:
"
\
u78BA
\
u5B9A
"
,
updateStr
:
"
\
u78BA
\
u5B9A
"
,
timeStr
:
"
\
u6642
\
u9593
"
,
quickStr
:
"
\
u5FEB
\
u901F
\
u9078
\
u64C7
"
,
err_1
:
'
\
u6700
\
u5C0F
\
u65E5
\
u671F
\
u4E0D
\
u80FD
\
u5927
\
u65BC
\
u6700
\
u5927
\
u65E5
\
u671F!
'
}
\ No newline at end of file
Prev
1
2
3
4
5
6
…
11
Next
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment