BIN
Hermit/assets/fonts/hermiticon.eot
Normal file
21
Hermit/assets/fonts/hermiticon.svg
Normal file
@@ -0,0 +1,21 @@
|
||||
<?xml version="1.0" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
|
||||
<svg xmlns="http://www.w3.org/2000/svg">
|
||||
<metadata>Generated by IcoMoon</metadata>
|
||||
<defs>
|
||||
<font id="icomoon" horiz-adv-x="1024">
|
||||
<font-face units-per-em="1024" ascent="960" descent="-64" />
|
||||
<missing-glyph horiz-adv-x="1024" />
|
||||
<glyph unicode=" " horiz-adv-x="512" d="" />
|
||||
<glyph unicode="" glyph-name="pause" d="M598 724.667h170v-596h-170v596zM256 128.667v596h170v-596h-170z" />
|
||||
<glyph unicode="" glyph-name="play_arrow" d="M342 724.667l468-298-468-298v596z" />
|
||||
<glyph unicode="" glyph-name="repeat" d="M726 212.667v172h84v-256h-512v-128l-170 170 170 170v-128h428zM298 640.667v-172h-84v256h512v128l170-170-170-170v128h-428z" />
|
||||
<glyph unicode="" glyph-name="repeat_one" d="M554 298.667h-64v170h-64v44l86 42h42v-256zM726 212.667v172h84v-256h-512v-128l-170 170 170 170v-128h428zM298 640.667v-172h-84v256h512v128l170-170-170-170v128h-428z" />
|
||||
<glyph unicode="" glyph-name="replay" d="M512 724.667q142 0 242-100t100-240q0-142-101-242t-241-100-241 100-101 242h86q0-106 75-181t181-75 181 75 75 181-75 181-181 75v-172l-214 214 214 214v-172z" />
|
||||
<glyph unicode="" glyph-name="shuffle" d="M632 366.667l134-134 88 88v-236h-236l88 88-134 134zM618 768.667h236v-236l-88 88-536-536-60 60 536 536zM452 546.667l-60-60-222 222 60 60z" />
|
||||
<glyph unicode="" glyph-name="skip_next" d="M682 682.667h86v-512h-86v512zM256 170.667v512l362-256z" />
|
||||
<glyph unicode="" glyph-name="skip_previous" d="M406 426.667l362 256v-512zM256 682.667h86v-512h-86v512z" />
|
||||
<glyph unicode="" glyph-name="volume_mute" d="M298 554.667h172l212 214v-684l-212 214h-172v256z" />
|
||||
<glyph unicode="" glyph-name="volume_up" d="M598 800.667q130-28 214-133t84-241-84-241-214-133v88q94 28 153 106t59 180-59 180-153 106v88zM704 426.667q0-120-106-172v344q106-52 106-172zM128 554.667h170l214 214v-684l-214 214h-170v256z" />
|
||||
<glyph unicode="" glyph-name="menu" d="M128 682.667h768v-86h-768v86zM128 384.667v84h768v-84h-768zM128 170.667v86h768v-86h-768z" />
|
||||
</font></defs></svg>
|
||||
|
After Width: | Height: | Size: 2.1 KiB |
BIN
Hermit/assets/fonts/hermiticon.ttf
Normal file
BIN
Hermit/assets/fonts/hermiticon.woff
Normal file
BIN
Hermit/assets/images/cover@3x.png
Normal file
|
After Width: | Height: | Size: 4.7 KiB |
BIN
Hermit/assets/images/icon.png
Normal file
|
After Width: | Height: | Size: 4.1 KiB |
BIN
Hermit/assets/images/icon2x.png
Normal file
|
After Width: | Height: | Size: 2.4 KiB |
BIN
Hermit/assets/images/iconx.png
Normal file
|
After Width: | Height: | Size: 1.6 KiB |
BIN
Hermit/assets/images/nowplaying.gif
Normal file
|
After Width: | Height: | Size: 2.2 KiB |
BIN
Hermit/assets/images/playing.gif
Normal file
|
After Width: | Height: | Size: 2.5 KiB |
BIN
Hermit/assets/images/playing.png
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
BIN
Hermit/assets/images/screenshot1.png
Normal file
|
After Width: | Height: | Size: 81 KiB |
BIN
Hermit/assets/images/screenshot2.png
Normal file
|
After Width: | Height: | Size: 43 KiB |
63
Hermit/assets/script/hermit.admin.js
Normal file
@@ -0,0 +1,63 @@
|
||||
jQuery(document).ready(function(b) {
|
||||
var c = b(".body").first();
|
||||
b("#wmd-button-bar").before('<div id="gohermit-container"><button id="gohermit" title="\u6dfb\u52a0\u867e\u7c73\u97f3\u4e50"><img src="' + hermit_img_url + '" width="16" height="16" />\u6dfb\u52a0\u867e\u7c73\u97f3\u4e50</button></div>');
|
||||
var list = ["songlist", "album", "collect"],
|
||||
e = function(a) {
|
||||
var textarea = $('#text'),
|
||||
sel = textarea.getSelection(),
|
||||
offset = (sel ? sel.start : 0)+a.length;
|
||||
textarea.replaceSelection(a);
|
||||
textarea.setSelection(offset,offset);
|
||||
},
|
||||
d = function() {
|
||||
b("#gohermit").removeClass("selected");
|
||||
b("#hermit-box").remove()
|
||||
};
|
||||
c.on("click", "#gohermit", function(a) {
|
||||
a.preventDefault();
|
||||
0 < b("#hermit-box").length ? (b(this).removeClass("selected"), b("#hermit-box").remove()) : (b(this).addClass("selected"), b("#gohermit-container").after('<div id="hermit-box" class="postbox"><div id="hermit-content"><div id="hermit-tab"><ul id="hermit-tabul"><li class="hermit-tabli current">\u5355\u66f2</li><li class="hermit-tabli">\u4e13\u8f91</li><li class="hermit-tabli">精选集</li></ul></div><div id="hermit-body"><ul id="hermit-bodyul"><li class="hermit-bodyli current"><textarea id="hermit-song" placeholder="\u8f93\u5165\u867e\u7c73\u6b4c\u66f2\u5730\u5740\uff0c\u591a\u4e2a\u5730\u5740\u8bf7\u56de\u8f66\u6362\u884c"></textarea></li><li class="hermit-bodyli"><input type="text" id="hermit-album" placeholder="\u8f93\u5165\u867e\u7c73\u4e13\u8f91\u5730\u5740" /></li><li class="hermit-bodyli"><input type="text" id="hermit-collect" placeholder="输入虾米精选集地址" /></li></ul></div></div><div id="hermit-action" class="clear"><a id="hermit-delete" class="submitdelete deletion" href="javascript:;">\u53d6\u6d88</a><label for="hermit-auto"><input type="checkbox" id="hermit-auto">自动播放</label><label for="hermit-loop"><input type="checkbox" id="hermit-loop">循环播放</label><label for="hermit-unexpand"><input type="checkbox" id="hermit-unexpand">折叠播放列表</label><label for="hermit-fullheight"><input type="checkbox" id="hermit-fullheight">显示全部音乐</label><button id="hermit-publish" class="primary">\u6dfb\u52a0\u5230\u6587\u7ae0\u4e2d</button></div></div>'));
|
||||
return !1
|
||||
});
|
||||
c.on("click", "#hermit-delete", function(a) {
|
||||
a.preventDefault();
|
||||
d()
|
||||
});
|
||||
c.on("click", ".hermit-tabli", function(a) {
|
||||
a.preventDefault();
|
||||
b(this).hasClass("current") || (a = b(".hermit-tabli").index(b(this)), b(".hermit-tabli, .hermit-bodyli").removeClass("current"), b(".hermit-tabli:eq(" + a + "), .hermit-bodyli:eq(" + a + ")").addClass("current"));
|
||||
return !1
|
||||
});
|
||||
c.on("click", "#hermit-publish", function(a) {
|
||||
a.preventDefault();
|
||||
var index = b(".hermit-tabli").index(b(".hermit-tabli.current")),
|
||||
ue = Number( b('#hermit-unexpand').prop("checked")),
|
||||
fh = Number( b('#hermit-fullheight').prop("checked")),
|
||||
auto = Number( b('#hermit-auto').prop("checked")),
|
||||
loop = Number( b('#hermit-loop').prop("checked"));
|
||||
switch (list[index]) {
|
||||
case "songlist":
|
||||
var a = b("#hermit-song").val(),
|
||||
c = [],
|
||||
f = /https:\/\/www.xiami.com\/song\/([a-zA-Z0-9]+).*?/,
|
||||
a = a.split(/\r?\n/g);
|
||||
|
||||
a = b.grep(a, function(a) {
|
||||
return f.test(a) ? !0 : !1
|
||||
});
|
||||
0 < a.length ? (b.each(a, function(a, b) {
|
||||
c.push(b.match(f)[1])
|
||||
}), a = '[hermit auto='+auto+' loop='+loop+' unexpand='+ue+' fullheight='+fh+']songlist#:' + c.join(",") + '[/hermit]', e(a), d()) : alert("请输入正确的虾米歌曲地址");
|
||||
break;
|
||||
case "album":
|
||||
var a = b("#hermit-album").val(),
|
||||
g = /https:\/\/www.xiami.com\/album\/([a-zA-Z0-9]+)/;
|
||||
g.test(a) ? (a = a.match(g)[1], e('[hermit auto='+auto+' loop='+loop+' unexpand='+ue+' fullheight='+fh+']album#:' + a + '[/hermit]'), d()) : alert("请输入正确的虾米专辑地址")
|
||||
break;
|
||||
case "collect":
|
||||
var a = b("#hermit-collect").val(),
|
||||
g = /https:\/\/www.xiami.com\/collect\/([a-zA-Z0-9]+)/;
|
||||
g.test(a) ? (a = a.match(g)[1], e('[hermit auto='+auto+' loop='+loop+' unexpand='+ue+' fullheight='+fh+']collect#:' + a + '[/hermit]'), d()) : alert("请输入正确的虾米精选集地址")
|
||||
break;
|
||||
}
|
||||
})
|
||||
});
|
||||
139
Hermit/assets/script/hermit.min.js
vendored
Normal file
1
Hermit/assets/style/hermit.admin.css
Normal file
@@ -0,0 +1 @@
|
||||
.clear:before,.clear:after{content:"";display:table;clear:both;overflow:hidden}#gohermit.selected{background:#fff;position:relative}#wp-content-media-buttons.selected{float:none;clear:both}#gohermit.selected:after,#gohermit.selected:before{position:absolute;content:"";left:50%;bottom:-10px;margin-left:-7px;width:0;z-index:9;border:solid rgba(0,0,0,0)}#gohermit.selected:after{border-color:rgba(255,255,255,0);border-bottom-color:#e5e5e5;border-width:8px;margin-left:-8px}#gohermit.selected:before{border-color:rgba(255,255,255,0);border-bottom-color:#fff;border-width:7px;z-index:10}#hermit-box{clear:both;margin-top:9px;border:1px solid #d9d9d6;border-radius:2px;margin-bottom:15px}#hermit-action{padding:5px 10px;clear:both;border-top:1px solid #DDD;background:#f5f5f5}#hermit-delete{float:left;color:#A00;height:28px;line-height:28px;text-decoration:none;padding:1px 2px;display:block}#hermit-delete:hover{color:#F00}#hermit-publish{float:right}#hermit-content{padding:10px;background:#fff}#hermit-content *{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}#hermit-song{width:100%;height:15em}#hermit-album,#hermit-collect{width:100%}#hermit-tab{padding-bottom:12px}#hermit-tabul,#hermit-bodyul,.hermit-tabli,.hermit-bodyli{margin:0;padding:0}.hermit-tabli{display:inline-block;text-align:center;width:50px;height:24px;line-height:24px;cursor:pointer;margin-right:10px}.hermit-tabli:hover{background:#eee}.hermit-tabli.current{color:#FFF;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#60b044;border:1px solid #5ca941}.hermit-bodyli{display:none}.hermit-bodyli.current{display:block}#hermit-action label{height:28px;line-height:28px;padding-left:10px}
|
||||
382
Hermit/assets/style/hermit.min.css
vendored
Normal file
@@ -0,0 +1,382 @@
|
||||
@font-face {
|
||||
font-family:hermiticon;src:url(../fonts/hermiticon.eot?cez6o0);src:url(../fonts/hermiticon.eot?#iefixcez6o0) format('embedded-opentype'),url(../fonts/hermiticon.ttf?cez6o0) format('truetype'),url(../fonts/hermiticon.woff?cez6o0) format('woff'),url(../fonts/hermiticon.svg?cez6o0#hermiticon) format('svg');font-weight:400;font-style:normal
|
||||
}
|
||||
|
||||
.hermit {
|
||||
overflow: hidden;
|
||||
background: #fff;
|
||||
margin-bottom: 20px;
|
||||
border: 1px solid #dedede;
|
||||
-webkit-user-select: none;
|
||||
-moz-user-select: none;
|
||||
font: 13px/1.5 calluna-sans,"Helvetica Neue",Helvetica,Hiragino Sans GB,Microsoft JhengHei,WenQuanYi Micro Hei,sans-serif;
|
||||
text-indent: 0
|
||||
}
|
||||
|
||||
.hermit,.hermit * {
|
||||
box-sizing: content-box;
|
||||
-moz-box-sizing: content-box;
|
||||
-webkit-box-sizing: content-box
|
||||
}
|
||||
|
||||
.hermit-clear:after,.hermit-clear:before {
|
||||
display: table;
|
||||
content: ""
|
||||
}
|
||||
|
||||
.hermit-clear:after {
|
||||
clear: both;
|
||||
overflow: hidden
|
||||
}
|
||||
|
||||
.hermit-clear {
|
||||
zoom: 1
|
||||
}
|
||||
|
||||
.hermit-detail span {
|
||||
-webkit-animation: animFlipFront .4s linear;
|
||||
-moz-animation: animFlipFront .4s linear;
|
||||
animation: animFlipFront .4s linear
|
||||
}
|
||||
|
||||
.hermit-box {
|
||||
padding: 10px 13px;
|
||||
height: 70px;
|
||||
font-size: 14px;
|
||||
line-height: 16px;
|
||||
position: relative;
|
||||
-webkit-box-shadow: 0 1px 10px rgba(0,0,0,.08);
|
||||
box-shadow: 0 1px 10px rgba(0,0,0,.08)
|
||||
}
|
||||
|
||||
.hermit-cover {
|
||||
width: 65px;
|
||||
float: left;
|
||||
position: relative
|
||||
}
|
||||
|
||||
.hermit-info {
|
||||
margin-left: 75px
|
||||
}
|
||||
|
||||
.hermit-title {
|
||||
font-size: 15px;
|
||||
height: 24px;
|
||||
overflow: hidden
|
||||
}
|
||||
|
||||
.hermit-author {
|
||||
font-size: 14px;
|
||||
color: #999
|
||||
}
|
||||
|
||||
.hermit-author,.hermit-duration,.hermit-title {
|
||||
line-height: 24px
|
||||
}
|
||||
|
||||
.hermit-controller {
|
||||
height: 24px;
|
||||
position: relative
|
||||
}
|
||||
|
||||
.hermit-additive {
|
||||
text-align: right;
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0;
|
||||
width: 130px;
|
||||
height: 24px;
|
||||
background: #fff
|
||||
}
|
||||
|
||||
.hermit-cover-image {
|
||||
width: 65px;
|
||||
height: 65px;
|
||||
padding: 0!important;
|
||||
margin: 0!important;
|
||||
border: none!important;
|
||||
box-shadow: none
|
||||
}
|
||||
|
||||
.hermit-duration,.hermit-listbutton,.hermit-volume {
|
||||
display: inline-block
|
||||
}
|
||||
|
||||
.hermit-duration {
|
||||
height: 24px
|
||||
}
|
||||
|
||||
.hermit-button,.hermit-listbutton,.hermit-volume {
|
||||
speak: none;
|
||||
cursor: pointer;
|
||||
font-family: hermiticon;
|
||||
text-transform: none;
|
||||
vertical-align: middle;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
-moz-osx-font-smoothing: grayscale
|
||||
}
|
||||
|
||||
.hermit-listbutton,.hermit-volume {
|
||||
color: #666;
|
||||
width: 20px;
|
||||
height: 24px;
|
||||
line-height: 24px;
|
||||
font-size: 17px
|
||||
}
|
||||
|
||||
.hermit-listbutton {
|
||||
position: relative
|
||||
}
|
||||
|
||||
.hermit-button {
|
||||
text-align: center;
|
||||
vertical-align: middle;
|
||||
position: absolute;
|
||||
width: 28px;
|
||||
height: 28px;
|
||||
border: 2px solid #fff;
|
||||
border-radius: 50%;
|
||||
color: #fff;
|
||||
left: 50%;
|
||||
top: 50%;
|
||||
margin-left: -16px;
|
||||
margin-top: -16px;
|
||||
background: rgba(0,0,0,.15);
|
||||
text-shadow: 0 1px 1px rgba(0,0,0,.2);
|
||||
box-shadow: 0 1px 1px rgba(0,0,0,.2)
|
||||
}
|
||||
|
||||
.hermit-volume {
|
||||
right: 20px
|
||||
}
|
||||
|
||||
.hermit-button:before {
|
||||
content: "\e01b";
|
||||
font-size: 20px;
|
||||
line-height: 28px
|
||||
}
|
||||
|
||||
.hermit-button.playing:before {
|
||||
content: "\e018";
|
||||
font-size: 18px
|
||||
}
|
||||
|
||||
.hermit-listbutton:before {
|
||||
content: "\e20e"
|
||||
}
|
||||
|
||||
.hermit-prevbutton:before {
|
||||
content: "\e028"
|
||||
}
|
||||
|
||||
.hermit-nextbutton:before {
|
||||
content: "\e027"
|
||||
}
|
||||
|
||||
.hermit-listbutton:after {
|
||||
position: absolute;
|
||||
content: '';
|
||||
right: -2px;
|
||||
top: 0;
|
||||
width: 4px;
|
||||
height: 4px;
|
||||
border-radius: 50%;
|
||||
background-color: transparent;
|
||||
opacity: 0;
|
||||
-webkit-transition: opacity .6s;
|
||||
-moz-transition: opacity .6s;
|
||||
-ms-transition: opacity .6s;
|
||||
-o-transition: opacity .6s;
|
||||
transition: opacity .6s
|
||||
}
|
||||
|
||||
.hermit-unexpand-1 .hermit-listbutton:after,.hermit.unexpand .hermit-listbutton:after {
|
||||
opacity: 1;
|
||||
background-color: #f60001
|
||||
}
|
||||
|
||||
.hermit-unexpand-1.unexpand .hermit-listbutton:after {
|
||||
opacity: 0
|
||||
}
|
||||
|
||||
.hermit-volume:before {
|
||||
content: "\e033"
|
||||
}
|
||||
|
||||
.hermit-volume.muted:before {
|
||||
content: "\e031"
|
||||
}
|
||||
|
||||
.hermit-prosess {
|
||||
height: 3px;
|
||||
background-color: #ddd;
|
||||
cursor: pointer;
|
||||
position: relative;
|
||||
z-index: 1;
|
||||
margin: 10px 0 5px
|
||||
}
|
||||
|
||||
.hermit-loaded {
|
||||
position: absolute;
|
||||
height: 3px;
|
||||
z-index: 5;
|
||||
left: 0;
|
||||
top: 0;
|
||||
background-color: #ccc
|
||||
}
|
||||
|
||||
.hermit-prosess-bar {
|
||||
height: 3px;
|
||||
width: 0;
|
||||
background-color: #5895be;
|
||||
position: relative;
|
||||
z-index: 10
|
||||
}
|
||||
|
||||
.hermit-prosess-after {
|
||||
position: absolute;
|
||||
display: block;
|
||||
width: 8px;
|
||||
height: 8px;
|
||||
background-color: #fff;
|
||||
border: 1px solid #5895be;
|
||||
-webkit-border-radius: 50%;
|
||||
-moz-border-radius: 50%;
|
||||
-ms-border-radius: 50%;
|
||||
-o-border-radius: 50%;
|
||||
border-radius: 50%;
|
||||
top: 0;
|
||||
right: 0;
|
||||
margin-top: -4px;
|
||||
margin-right: -10px
|
||||
}
|
||||
|
||||
.hermit-list {
|
||||
height: auto;
|
||||
max-height: 410px;
|
||||
overflow-y: auto
|
||||
}
|
||||
|
||||
.hermit-fullheight-1 .hermit-list {
|
||||
height: 100%;
|
||||
max-height: 100%
|
||||
}
|
||||
|
||||
.hermit-fullheight-1.unexpand .hermit-list,.hermit-unexpand-1 .hermit-list,.hermit.unexpand .hermit-list {
|
||||
height: 0;
|
||||
max-height: 0
|
||||
}
|
||||
|
||||
.hermit-fullheight-1.hermit-unexpand-1.unexpand .hermit-list,.hermit-unexpand-1.unexpand .hermit-list {
|
||||
height: 100%;
|
||||
max-height: 100%
|
||||
}
|
||||
|
||||
.hermit-unexpand-1 .hermit-box,.hermit.unexpand .hermit-box {
|
||||
box-shadow: none
|
||||
}
|
||||
|
||||
.hermit-song {
|
||||
border-top: 1px solid #e5e5e5;
|
||||
cursor: pointer;
|
||||
font-size: 15px;
|
||||
line-height: 40px;
|
||||
height: 40px;
|
||||
overflow: hidden;
|
||||
-webkit-tap-highlight-color: transparent;
|
||||
position: relative
|
||||
}
|
||||
|
||||
.hermit-deactive, .hermit-deactive .hermit-song-author {
|
||||
color: #ccc
|
||||
}
|
||||
|
||||
.hermit-song-index {
|
||||
position: absolute;
|
||||
left: 0;
|
||||
top: 0;
|
||||
width: 40px;
|
||||
text-align: center;
|
||||
color: #999
|
||||
}
|
||||
|
||||
.hermit-song-title {
|
||||
display: block;
|
||||
margin-left: 40px;
|
||||
margin-right: 55px
|
||||
}
|
||||
|
||||
.hermit-song-author {
|
||||
color: #777;
|
||||
padding-left: 5px
|
||||
}
|
||||
|
||||
.hermit-song-duration {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
right: 15px;
|
||||
color: #888;
|
||||
font-size: 14px
|
||||
}
|
||||
|
||||
.hermit-song.selected,.hermit-song:hover {
|
||||
background-color: #f8f8f8
|
||||
}
|
||||
|
||||
.hermit-song.selected .hermit-song-index {
|
||||
width: 38px;
|
||||
text-indent: -999em;
|
||||
background-image: url(../images/playing.gif);
|
||||
background-position: 50% 50%;
|
||||
background-repeat: no-repeat;
|
||||
background-size: 16px
|
||||
}
|
||||
|
||||
.hermit-song.selected.paused .hermit-song-index {
|
||||
background-image: url(../images/playing.png)
|
||||
}
|
||||
|
||||
.hermit-default .hermit-prosess-after:hover,.hermit-default .hermit-prosess-bar {
|
||||
background-color: #5895be
|
||||
}
|
||||
|
||||
.hermit-default .hermit-prosess-after {
|
||||
border-color: #5895be
|
||||
}
|
||||
|
||||
.hermit-ios .hermit-volume {
|
||||
display: none
|
||||
}
|
||||
|
||||
@-ms-viewport {
|
||||
width:device-width
|
||||
}
|
||||
|
||||
@viewport {
|
||||
width:device-width
|
||||
}
|
||||
|
||||
@media screen and (max-width:768px) {
|
||||
.hermit-listbutton {
|
||||
font-size: 20px
|
||||
}
|
||||
|
||||
.hermit-song {
|
||||
height: 44px;
|
||||
line-height: 44px
|
||||
}
|
||||
|
||||
.hermit-list {
|
||||
max-height: 450px
|
||||
}
|
||||
|
||||
.hermit-loaded,.hermit-prosess,.hermit-prosess-bar {
|
||||
height: 4px
|
||||
}
|
||||
|
||||
.hermit-prosess-after {
|
||||
width: 12px;
|
||||
height: 12px;
|
||||
margin-top: -5px
|
||||
}
|
||||
}
|
||||