mirror of
https://github.com/eiblog/eiblog.git
synced 2026-03-01 00:34:58 +08:00
添加七牛cdn上传功能
This commit is contained in:
1 parent
7305192ca9
commit
5064894ab5
14 files changed
+223
-184
No files matched your search
@@ -48,6 +48,8 @@ func init() {
|
||||
APIs["trash-recover"] = apiTrashRecover
|
||||
// 上传文件
|
||||
APIs["file-upload"] = apiFileUpload
|
||||
// 删除文件
|
||||
APIs["file-delete"] = apiFileDelete
|
||||
}
|
||||
|
||||
func apiAccount(c *gin.Context) {
|
||||
@@ -407,23 +409,48 @@ func apiFileUpload(c *gin.Context) {
|
||||
type Size interface {
|
||||
Size() int64
|
||||
}
|
||||
file, header, err := c.Request.FormFile("upload")
|
||||
file, header, err := c.Request.FormFile("file")
|
||||
if err != nil {
|
||||
responseNotice(c, NOTICE_NOTICE, "上传失败", "")
|
||||
logd.Error(err)
|
||||
c.String(http.StatusBadRequest, err.Error())
|
||||
return
|
||||
}
|
||||
s, ok := file.(Size)
|
||||
if !ok {
|
||||
responseNotice(c, NOTICE_NOTICE, "文件太大", "")
|
||||
logd.Error("assert failed")
|
||||
c.String(http.StatusBadRequest, "false")
|
||||
return
|
||||
}
|
||||
filename := strings.ToLower(header.Filename)
|
||||
url, err := Upload(filename, s.Size(), file)
|
||||
url, err := FileUpload(filename, s.Size(), file)
|
||||
if err != nil {
|
||||
responseNotice(c, NOTICE_NOTICE, "上传失败", "")
|
||||
logd.Error(err)
|
||||
c.String(http.StatusBadRequest, err.Error())
|
||||
return
|
||||
}
|
||||
responseNotice(c, NOTICE_SUCCESS, url, "")
|
||||
typ := c.Request.Header.Get("Content-Type")
|
||||
c.JSON(http.StatusOK, gin.H{
|
||||
"name": filename,
|
||||
"isImage": typ[:5] == "image",
|
||||
"url": url,
|
||||
"bytes": fmt.Sprintf("%dkb", s.Size()/1000),
|
||||
})
|
||||
}
|
||||
|
||||
func apiFileDelete(c *gin.Context) {
|
||||
var err error
|
||||
defer func() {
|
||||
if err != nil {
|
||||
logd.Error(err)
|
||||
}
|
||||
c.String(http.StatusOK, "删掉了吗?鬼知道。。。")
|
||||
}()
|
||||
name := c.PostForm("name")
|
||||
if name == "" {
|
||||
err = errors.New("参数错误")
|
||||
return
|
||||
}
|
||||
err = FileDelete(name)
|
||||
}
|
||||
|
||||
func responseNotice(c *gin.Context, typ, content, hl string) {
|
||||
|
||||
@@ -7,11 +7,16 @@ import (
|
||||
"path/filepath"
|
||||
|
||||
"github.com/eiblog/eiblog/setting"
|
||||
"qiniupkg.com/api.v7/conf"
|
||||
"qiniupkg.com/api.v7/kodo"
|
||||
"qiniupkg.com/api.v7/kodocli"
|
||||
)
|
||||
|
||||
var qiniu_cfg = &kodo.Config{
|
||||
AccessKey: setting.Conf.Kodo.AccessKey,
|
||||
SecretKey: setting.Conf.Kodo.SecretKey,
|
||||
Scheme: "https",
|
||||
}
|
||||
|
||||
type bucket struct {
|
||||
name string
|
||||
domain string
|
||||
@@ -33,15 +38,13 @@ func onProgress(fsize, uploaded int64) {
|
||||
}
|
||||
}
|
||||
|
||||
func Upload(name string, size int64, data io.Reader) (string, error) {
|
||||
func FileUpload(name string, size int64, data io.Reader) (string, error) {
|
||||
if setting.Conf.Kodo.AccessKey == "" || setting.Conf.Kodo.SecretKey == "" {
|
||||
return "", errors.New("qiniu config error")
|
||||
}
|
||||
|
||||
conf.ACCESS_KEY = setting.Conf.Kodo.AccessKey
|
||||
conf.SECRET_KEY = setting.Conf.Kodo.SecretKey
|
||||
// 创建一个client
|
||||
c := kodo.New(0, nil)
|
||||
c := kodo.New(0, qiniu_cfg)
|
||||
|
||||
// 设置上传的策略
|
||||
policy := &kodo.PutPolicy{
|
||||
@@ -56,20 +59,8 @@ func Upload(name string, size int64, data io.Reader) (string, error) {
|
||||
zone := 0
|
||||
uploader := kodocli.NewUploader(zone, nil)
|
||||
|
||||
ext := filepath.Ext(name)
|
||||
var key string
|
||||
switch ext {
|
||||
case ".bmp", ".png", ".jpg", ".gif", ".ico":
|
||||
key = "blog/img/" + name
|
||||
case ".mov", ".mp4":
|
||||
key = "blog/video/" + name
|
||||
case ".go", ".js", ".css", ".cpp", ".php", ".rb", ".java", ".py", ".sql", ".lua", ".html", ".sh", ".xml", ".cs":
|
||||
key = "blog/code/" + name
|
||||
case ".txt", ".md", ".ini", ".yaml", ".yml", ".doc", ".ppt", ".pdf":
|
||||
key = "blog/document/" + name
|
||||
case ".zip", ".rar", ".tar", ".gz":
|
||||
key = "blog/archive/" + name
|
||||
default:
|
||||
key := getKey(name)
|
||||
if key == "" {
|
||||
return "", errors.New("不支持的文件类型")
|
||||
}
|
||||
|
||||
@@ -83,3 +74,40 @@ func Upload(name string, size int64, data io.Reader) (string, error) {
|
||||
url := kodo.MakeBaseUrl(setting.Conf.Kodo.Domain, ret.Key)
|
||||
return url, nil
|
||||
}
|
||||
|
||||
func FileDelete(name string) error {
|
||||
// new一个Bucket管理对象
|
||||
c := kodo.New(0, qiniu_cfg)
|
||||
p := c.Bucket(setting.Conf.Kodo.Name)
|
||||
|
||||
key := getKey(name)
|
||||
if key == "" {
|
||||
return errors.New("不支持的文件类型")
|
||||
}
|
||||
|
||||
// 调用Delete方法删除文件
|
||||
err := p.Delete(nil, key)
|
||||
// 打印返回值以及出错信息
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func getKey(name string) string {
|
||||
ext := filepath.Ext(name)
|
||||
var key string
|
||||
switch ext {
|
||||
case ".bmp", ".png", ".jpg", ".gif", ".ico":
|
||||
key = "blog/img/" + name
|
||||
case ".mov", ".mp4":
|
||||
key = "blog/video/" + name
|
||||
case ".go", ".js", ".css", ".cpp", ".php", ".rb", ".java", ".py", ".sql", ".lua", ".html", ".sh", ".xml", ".cs":
|
||||
key = "blog/code/" + name
|
||||
case ".txt", ".md", ".ini", ".yaml", ".yml", ".doc", ".ppt", ".pdf":
|
||||
key = "blog/document/" + name
|
||||
case ".zip", ".rar", ".tar", ".gz":
|
||||
key = "blog/archive/" + name
|
||||
}
|
||||
return key
|
||||
}
|
||||
+1
-1
@@ -13,7 +13,7 @@ func TestUpload(t *testing.T) {
|
||||
t.Fatal(err)
|
||||
}
|
||||
info, _ := file.Stat()
|
||||
url, err := Upload(info.Name(), info.Size(), file)
|
||||
url, err := FileUpload(info.Name(), info.Size(), file)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
@@ -1 +0,0 @@
|
||||
article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,video{display:inline-block}audio:not([controls]){height:0}audio:not([controls]),[hidden],template{display:none}html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}a{background:transparent}h1{font-size:2em;margin:0.67em 0}b,strong{font-weight:700}dfn{font-style:italic}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}mark{background:#ff0;color:#000}code,kbd,pre,samp{font-family:monospace,serif;font-size:1em}pre{white-space:pre-wrap}q{quotes:"\201C" "\201D" "\2018" "\2019"}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{border:0}figure{margin:0}fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:0.35em .625em .75em}legend{border:0;padding:0}button,input,select,textarea{font-family:inherit;font-size:100%;margin:0}button,input{line-height:normal}button,select{text-transform:none}a:focus{outline:thin dotted}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}svg:not(:root){overflow:hidden}button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}textarea{overflow:auto;vertical-align:top}table{border-collapse:collapse;border-spacing:0}input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0}input[type="search"]{box-sizing:content-box}.container,.row [class*="col-"]{box-sizing:border-box}.container{margin-left:auto;margin-right:auto;padding-left:10px;padding-right:10px}.row{margin-right:-10px;margin-left:-10px}.col-mb-1{width:8.33333%}.col-mb-2{width:16.66667%}.col-mb-3{width:25%}.col-mb-4{width:33.33333%}.col-mb-5{width:41.66667%}.col-mb-6{width:50%}.col-mb-7{width:58.33333%}.col-mb-8{width:66.66667%}.col-mb-9{width:75%}.col-mb-10{width:83.33333%}.col-mb-11{width:91.66667%}.col-mb-12{width:100%}.row [class*="col-"]{float:left;min-height:1px;padding-right:10px;padding-left:10px}.row [class*="-push-"],.row [class*="-pull-"]{position:relative}@media (min-width: 768px){.container{max-width:768px}.col-tb-1{width:8.33333%}.col-tb-2{width:16.66667%}.col-tb-3{width:25%}.col-tb-4{width:33.33333%}.col-tb-5{width:41.66667%}.col-tb-6{width:50%}.col-tb-7{width:58.33333%}.col-tb-8{width:66.66667%}.col-tb-9{width:75%}.col-tb-10{width:83.33333%}.col-tb-11{width:91.66667%}.col-tb-12{width:100%}.col-tb-offset-0{margin-left:0}.col-tb-offset-1{margin-left:8.33333%}.col-tb-offset-2{margin-left:16.66667%}.col-tb-offset-3{margin-left:25%}.col-tb-offset-4{margin-left:33.33333%}.col-tb-offset-5{margin-left:41.66667%}.col-tb-offset-6{margin-left:50%}.col-tb-offset-7{margin-left:58.33333%}.col-tb-offset-8{margin-left:66.66667%}.col-tb-offset-9{margin-left:75%}.col-tb-offset-10{margin-left:83.33333%}.col-tb-offset-11{margin-left:91.66667%}.col-tb-offset-12{margin-left:100%}.col-tb-pull-0{right:0}.col-tb-pull-1{right:8.33333%}.col-tb-pull-2{right:16.66667%}.col-tb-pull-3{right:25%}.col-tb-pull-4{right:33.33333%}.col-tb-pull-5{right:41.66667%}.col-tb-pull-6{right:50%}.col-tb-pull-7{right:58.33333%}.col-tb-pull-8{right:66.66667%}.col-tb-pull-9{right:75%}.col-tb-pull-10{right:83.33333%}.col-tb-pull-11{right:91.66667%}.col-tb-pull-12{right:100%}.col-tb-push-0{left:0}.col-tb-push-1{left:8.33333%}.col-tb-push-2{left:16.66667%}.col-tb-push-3{left:25%}.col-tb-push-4{left:33.33333%}.col-tb-push-5{left:41.66667%}.col-tb-push-6{left:50%}.col-tb-push-7{left:58.33333%}.col-tb-push-8{left:66.66667%}.col-tb-push-9{left:75%}.col-tb-push-10{left:83.33333%}.col-tb-push-11{left:91.66667%}.col-tb-push-12{left:100%}}@media (min-width: 992px){.container{max-width:952px}.col-1{width:8.33333%}.col-2{width:16.66667%}.col-3{width:25%}.col-4{width:33.33333%}.col-5{width:41.66667%}.col-6{width:50%}.col-7{width:58.33333%}.col-8{width:66.66667%}.col-9{width:75%}.col-10{width:83.33333%}.col-11{width:91.66667%}.col-12{width:100%}.col-offset-0{margin-left:0}.col-offset-1{margin-left:8.33333%}.col-offset-2{margin-left:16.66667%}.col-offset-3{margin-left:25%}.col-offset-4{margin-left:33.33333%}.col-offset-5{margin-left:41.66667%}.col-offset-6{margin-left:50%}.col-offset-7{margin-left:58.33333%}.col-offset-8{margin-left:66.66667%}.col-offset-9{margin-left:75%}.col-offset-10{margin-left:83.33333%}.col-offset-11{margin-left:91.66667%}.col-offset-12{margin-left:100%}.col-pull-0{right:0}.col-pull-1{right:8.33333%}.col-pull-2{right:16.66667%}.col-pull-3{right:25%}.col-pull-4{right:33.33333%}.col-pull-5{right:41.66667%}.col-pull-6{right:50%}.col-pull-7{right:58.33333%}.col-pull-8{right:66.66667%}.col-pull-9{right:75%}.col-pull-10{right:83.33333%}.col-pull-11{right:91.66667%}.col-pull-12{right:100%}.col-push-0{left:0}.col-push-1{left:8.33333%}.col-push-2{left:16.66667%}.col-push-3{left:25%}.col-push-4{left:33.33333%}.col-push-5{left:41.66667%}.col-push-6{left:50%}.col-push-7{left:58.3333Line truncated
|
||||
@@ -0,0 +1 @@
|
||||
(function(){var b,a=[].slice;b=(function(){var h,g,e,j,f,d,c;c=function(k){return(k.charAt(0)).toUpperCase()+k.substring(1)};j=function(k){return k.replace(/[-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")};f=function(t,k,s){var q,o,n,r,p,m;if(t instanceof Array){if(k instanceof Array){for(q=o=0,r=t.length;o<r;q=++o){m=t[q];s=f(m,k[q],s)}}else{for(n=0,p=t.length;n<p;n++){m=t[n];s=f(m,k,s)}}}else{t=j(t);s=s.replace(new RegExp(t,"g"),k)}return s};e=function(k){return k.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""")};d=function(p,n){var q,m,k,o,l;if(n==null){n=null}if(n!=null){l="";for(m=k=0,o=n.length-1;0<=o?k<=o:k>=o;m=0<=o?++k:--k){q=n[m];q=j(q);l+=q}l="["+l+"]*";return p.replace(new RegExp("^"+l),"").replace(new RegExp(l+"$"),"")}else{return p.replace(/^\s*/,"").replace(/\s*$/,"")}};h=function(n){var q,p,o,m,l;l=[];if(n instanceof Array){for(o=p=0,m=n.length;p<m;o=++p){q=n[o];l.push(o)}}else{for(o in n){l.push(o)}}return l};g=function(m){var p,o,l,k,n;k=[];if(m instanceof Array){for(o=0,l=m.length;o<l;o++){n=m[o];k.push(n)}}else{for(p in m){n=m[p];k.push(n)}}return k};function i(){this.commonWhiteList="kbd|b|i|strong|em|sup|sub|br|code|del|a|hr|small";this.specialWhiteList={table:"table|tbody|thead|tfoot|tr|td|th"};this.hooks={}}i.prototype.makeHtml=function(l){var k;this.footnotes=[];this.definitions={};this.holders={};this.uniqid=(Math.ceil(Math.random()*10000000))+(Math.ceil(Math.random()*10000000));this.id=0;l=this.initText(l);k=this.parse(l);k=this.makeFootnotes(k);return this.call("makeHtml",k)};i.prototype.hook=function(l,k){if(this.hooks[l]==null){this.hooks[l]=[]}return this.hooks[l].push(k)};i.prototype.makeHolder=function(l){var k;k="|\r"+this.uniqid+this.id+"\r|";this.id+=1;this.holders[k]=l;return k};i.prototype.initText=function(k){return k.replace(/\t/g," ").replace(/\r/g,"")};i.prototype.makeFootnotes=function(l){var k,m;if(this.footnotes.length>0){l+='<div class="footnotes"><hr><ol>';k=1;while(m=this.footnotes.shift()){if(typeof m==="string"){m+=' <a href="#fnref-'+k+'" class="footnote-backref">↩</a>'}else{m[m.length-1]+=' <a href="#fnref-'+k+'" class="footnote-backref">↩</a>';m=m.length>1?this.parse(m.join("\n")):this.parseInline(m[0])}l+='<li id="fn-'+k+'">'+m+"</li>";k+=1}l+="</ol></div>"}return l};i.prototype.parse=function(v){var n,l,o,q,r,p,s,x,k,w,m,t,u;x=[];l=this.parseBlock(v,x);r="";for(p=0,s=l.length;p<s;p++){n=l[p];t=n[0],m=n[1],o=n[2],u=n[3];q=x.slice(m,o+1);k="parse"+c(t);q=this.call("before"+c(k),q,u);w=this[k](q,u);w=this.call("after"+c(k),w,u);r+=w}return r};i.prototype.call=function(){var m,q,l,k,o,n,p;n=arguments[0],m=2<=arguments.length?a.call(arguments,1):[];p=m[0];if(this.hooks[n]==null){return p}o=this.hooks[n];for(l=0,k=o.length;l<k;l++){q=o[l];p=q.apply(this,m);m[0]=p}return p};i.prototype.releaseHolder=function(m,k){var l;if(k==null){k=true}l=0;while((m.indexOf("\r"))>=0&&l<10){m=f(h(this.holders),g(this.holders),m);l+=1}if(k){this.holders={}}return m};i.prototype.parseInline=function(m,l,k,n){if(l==null){l=""}if(k==null){k=true}if(n==null){n=true}m=this.call("beforeParseInline",m);m=m.replace(/(^|[^\\])(`+)(.+?)\2/mg,(function(o){return function(){var p;p=1<=arguments.length?a.call(arguments,0):[];return p[1]+o.makeHolder("<code>"+(e(p[3]))+"</code>")}})(this));m=m.replace(/\\(.)/g,(function(o){return function(){var q,p;p=1<=arguments.length?a.call(arguments,0):[];q=e(p[1]);q=q.replace(/\$/g,"$");return o.makeHolder(q)}})(this));m=m.replace(/<(https?:\/\/.+)>/ig,(function(o){return function(){var q,r,p;r=1<=arguments.length?a.call(arguments,0):[];p=o.cleanUrl(r[1]);q=o.call("parseLink",r[1]);return o.makeHolder('<a href="'+p+'">'+q+"</a>")}})(this));m=m.replace(/<(\/?)([a-z0-9-]+)(\s+[^>]*)?>/ig,(function(o){return function(){var p;p=1<=arguments.length?a.call(arguments,0):[];if((("|"+o.commonWhiteList+"|"+l+"|").indexOf("|"+p[2].toLowerCase()+"|"))>=0){return o.makeHolder(p[0])}else{return e(p[0])}}})(this));m=f(["<",">"],["<",">"],m);m=m.replace(/\[\^((?:[^\]]|\\\]|\\\[)+?)\]/g,(function(o){return function(){var q,p;p=1<=arguments.length?a.call(arguments,0):[];q=o.footnotes.indexOf(p[1]);if(q<0){q=o.footnotes.length+1;o.footnotes.push(o.parseInline(p[1],"",false))}return o.makeHolder('<sup id="fnref-'+q+'"><a href="#fn-'+q+'" class="footnote-ref">'+q+"</a></sup>")}})(this));m=m.replace(/!\[((?:[^\]]|\\\]|\\\[)*?)\]\(((?:[^\)]|\\\)|\\\()+?)\)/g,(function(o){return function(){var r,q,p;q=1<=arguments.length?a.call(arguments,0):[];r=o.escapeBracket(q[1]);p=o.escapeBracket(q[2]);p=o.cleanUrl(p);return o.makeHolder('<img src="'+p+'" alt="'+r+'" title="'+r+'">')}})(this));m=m.replace(/!\[((?:[^\]]|\\\]|\\\[)*?)\]\[((?:[^\]]|\\\]|\\\[)+?)\]/g,(function(o){return function(){var r,q,p;q=1<=arguments.length?a.call(arguments,0):[];r=o.escapeBracket(q[1]);p=o.definitions[q[2]]!=null?'<img src="'+o.definitions[q[2]]+'" alt="'+r+'" title="'+r+'">':r;return o.makeHolder(p)}})(this));m=m.replace(/\[((?:[^\]]|\\\]|Line truncated
|
||||
@@ -1 +1 @@
|
||||
(function(b,g){var d={};function c(m,n){var l,j=[];for(var k=0;k<m.length;++k){l=d[m[k]]||e(m[k]);if(!l){throw"module definition dependecy not found: "+m[k]}j.push(l)}n.apply(null,j)}function h(k,j,i){if(typeof k!=="string"){throw"invalid module definition, module id must be defined and be a string"}if(j===g){throw"invalid module definition, dependencies must be specified"}if(i===g){throw"invalid module definition, definition function must be specified"}c(j,function(){d[k]=i.apply(null,arguments)})}function f(i){return !!d[i]}function e(l){var j=b;var i=l.split(/[.\/]/);for(var k=0;k<i.length;++k){if(!j[i[k]]){return}j=j[i[k]]}return j}function a(l){for(var k=0;k<l.length;k++){var m=b;var o=l[k];var j=o.split(/[.\/]/);for(var n=0;n<j.length-1;++n){if(m[j[n]]===g){m[j[n]]={}}m=m[j[n]]}m[j[j.length-1]]=d[o]}}h("moxie/core/utils/Basic",[],function(){var r=function(w){var v;if(w===v){return"undefined"}else{if(w===null){return"null"}else{if(w.nodeType){return"node"}}}return({}).toString.call(w).match(/\s([a-z|A-Z]+)/)[1].toLowerCase()};var n=function(w){var v;p(arguments,function(x,y){if(y>0){p(x,function(A,z){if(A!==v){if(r(w[z])===r(A)&&!!~u(r(A),["array","object"])){n(w[z],A)}else{w[z]=A}}})}});return w};var p=function(A,B){var z,x,w,y;if(A){try{z=A.length}catch(v){z=y}if(z===y){for(x in A){if(A.hasOwnProperty(x)){if(B(A[x],x)===false){return}}}}else{for(w=0;w<z;w++){if(B(A[w],w)===false){return}}}}};var s=function(v){var w;if(!v||r(v)!=="object"){return true}for(w in v){return false}return true};var l=function(w,v){var x=0,y=w.length;if(r(v)!=="function"){v=function(){}}if(!w||!w.length){v()}function z(A){if(r(w[A])==="function"){w[A](function(B){++A<y&&!B?z(A):v(B)})}}z(x)};var i=function(w,v){var y=0,x=w.length,z=new Array(x);p(w,function(B,A){B(function(D){if(D){return v(D)}var C=[].slice.call(arguments);C.shift();z[A]=C;y++;if(y===x){z.unshift(null);v.apply(this,z)}})})};var u=function(x,y){if(y){if(Array.prototype.indexOf){return Array.prototype.indexOf.call(y,x)}for(var v=0,w=y.length;v<w;v++){if(y[v]===x){return v}}}return -1};var q=function(w,y){var x=[];if(r(w)!=="array"){w=[w]}if(r(y)!=="array"){y=[y]}for(var v in w){if(u(w[v],y)===-1){x.push(w[v])}}return x.length?x:false};var t=function(x,w){var v=[];p(x,function(y){if(u(y,w)!==-1){v.push(y)}});return v.length?v:null};var m=function(x){var w,v=[];for(w=0;w<x.length;w++){v[w]=x[w]}return v};var o=(function(){var v=0;return function(y){var w=new Date().getTime().toString(32),x;for(x=0;x<5;x++){w+=Math.floor(Math.random()*65535).toString(32)}return(y||"o_")+w+(v++).toString(32)}}());var j=function(v){if(!v){return v}return String.prototype.trim?String.prototype.trim.call(v):v.toString().replace(/^\s*/,"").replace(/\s*$/,"")};var k=function(v){if(typeof(v)!=="string"){return v}var x={t:1099511627776,g:1073741824,m:1048576,k:1024},w;v=/^([0-9]+)([mgk]?)$/.exec(v.toLowerCase().replace(/[^0-9mkg]/g,""));w=v[2];v=+v[1];if(x.hasOwnProperty(w)){v*=x[w]}return v};return{guid:o,typeOf:r,extend:n,each:p,isEmptyObj:s,inSeries:l,inParallel:i,inArray:u,arrayDiff:q,arrayIntersect:t,toArray:m,trim:j,parseSizeStr:k}});h("moxie/core/I18n",["moxie/core/utils/Basic"],function(j){var i={};return{addI18n:function(k){return j.extend(i,k)},translate:function(k){return i[k]||k},_:function(k){return this.translate(k)},sprintf:function(l){var k=[].slice.call(arguments,1);return l.replace(/%[a-z]/g,function(){var m=k.shift();return j.typeOf(m)!=="undefined"?m:""})}}});h("moxie/core/utils/Mime",["moxie/core/utils/Basic","moxie/core/I18n"],function(l,k){var i="application/msword,doc dot,application/pdf,pdf,application/pgp-signature,pgp,application/postscript,ps ai eps,application/rtf,rtf,application/vnd.ms-excel,xls xlb,application/vnd.ms-powerpoint,ppt pps pot,application/zip,zip,application/x-shockwave-flash,swf swfl,application/vnd.openxmlformats-officedocument.wordprocessingml.document,docx,application/vnd.openxmlformats-officedocument.wordprocessingml.template,dotx,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,xlsx,application/vnd.openxmlformats-officedocument.presentationml.presentation,pptx,application/vnd.openxmlformats-officedocument.presentationml.template,potx,application/vnd.openxmlformats-officedocument.presentationml.slideshow,ppsx,application/x-javascript,js,application/json,json,audio/mpeg,mp3 mpga mpega mp2,audio/x-wav,wav,audio/x-m4a,m4a,audio/ogg,oga ogg,audio/aiff,aiff aif,audio/flac,flac,audio/aac,aac,audio/ac3,ac3,audio/x-ms-wma,wma,image/bmp,bmp,image/gif,gif,image/jpeg,jpg jpeg jpe,image/photoshop,psd,image/png,png,image/svg+xml,svg svgz,image/tiff,tiff tif,text/plain,asc txt text diff log,text/html,htm html xhtml,text/css,css,text/csv,csv,text/rtf,rtf,video/mpeg,mpeg mpg mpe m2v,video/quicktime,qt mov,video/mp4,mp4,video/x-m4v,m4v,video/x-flv,flv,video/x-ms-wmv,wmv,video/avi,avi,video/webm,webm,video/3gpp,3gpp 3gp,video/3gpp2,3g2,video/vnd.rn-realvideo,rv,video/ogg,ogv,video/x-matroska,mkv,application/vnd.oasis.opendocument.formula-Line truncated
|
||||
var MXI_DEBUG=true;(function(b,g){var d={};function c(m,n){var l,j=[];for(var k=0;k<m.length;++k){l=d[m[k]]||e(m[k]);if(!l){throw"module definition dependecy not found: "+m[k]}j.push(l)}n.apply(null,j)}function h(k,j,i){if(typeof k!=="string"){throw"invalid module definition, module id must be defined and be a string"}if(j===g){throw"invalid module definition, dependencies must be specified"}if(i===g){throw"invalid module definition, definition function must be specified"}c(j,function(){d[k]=i.apply(null,arguments)})}function f(i){return !!d[i]}function e(l){var j=b;var i=l.split(/[.\/]/);for(var k=0;k<i.length;++k){if(!j[i[k]]){return}j=j[i[k]]}return j}function a(l){for(var k=0;k<l.length;k++){var m=b;var o=l[k];var j=o.split(/[.\/]/);for(var n=0;n<j.length-1;++n){if(m[j[n]]===g){m[j[n]]={}}m=m[j[n]]}m[j[j.length-1]]=d[o]}}h("moxie/core/utils/Basic",[],function(){var s=function(x){var w;if(x===w){return"undefined"}else{if(x===null){return"null"}else{if(x.nodeType){return"node"}}}return({}).toString.call(x).match(/\s([a-z|A-Z]+)/)[1].toLowerCase()};var n=function(x){var w;q(arguments,function(y,z){if(z>0){q(y,function(B,A){if(B!==w){if(s(x[A])===s(B)&&!!~v(s(B),["array","object"])){n(x[A],B)}else{x[A]=B}}})}});return x};var q=function(A,B){var z,x,w,y;if(A){if(s(A.length)==="number"){for(w=0,z=A.length;w<z;w++){if(B(A[w],w)===false){return}}}else{if(s(A)==="object"){for(x in A){if(A.hasOwnProperty(x)){if(B(A[x],x)===false){return}}}}}}};var t=function(w){var x;if(!w||s(w)!=="object"){return true}for(x in w){return false}return true};var l=function(x,w){var y=0,z=x.length;if(s(w)!=="function"){w=function(){}}if(!x||!x.length){w()}function A(B){if(s(x[B])==="function"){x[B](function(C){++B<z&&!C?A(B):w(C)})}}A(y)};var i=function(x,w){var z=0,y=x.length,A=new Array(y);q(x,function(C,B){C(function(E){if(E){return w(E)}var D=[].slice.call(arguments);D.shift();A[B]=D;z++;if(z===y){A.unshift(null);w.apply(this,A)}})})};var v=function(y,z){if(z){if(Array.prototype.indexOf){return Array.prototype.indexOf.call(z,y)}for(var w=0,x=z.length;w<x;w++){if(z[w]===y){return w}}}return -1};var r=function(x,z){var y=[];if(s(x)!=="array"){x=[x]}if(s(z)!=="array"){z=[z]}for(var w in x){if(v(x[w],z)===-1){y.push(x[w])}}return y.length?y:false};var u=function(y,x){var w=[];q(y,function(z){if(v(z,x)!==-1){w.push(z)}});return w.length?w:null};var m=function(y){var x,w=[];for(x=0;x<y.length;x++){w[x]=y[x]}return w};var p=(function(){var w=0;return function(z){var x=new Date().getTime().toString(32),y;for(y=0;y<5;y++){x+=Math.floor(Math.random()*65535).toString(32)}return(z||"o_")+x+(w++).toString(32)}}());var j=function(w){if(!w){return w}return String.prototype.trim?String.prototype.trim.call(w):w.toString().replace(/^\s*/,"").replace(/\s*$/,"")};var k=function(w){if(typeof(w)!=="string"){return w}var y={t:1099511627776,g:1073741824,m:1048576,k:1024},x;w=/^([0-9\.]+)([tmgk]?)$/.exec(w.toLowerCase().replace(/[^0-9\.tmkg]/g,""));x=w[2];w=+w[1];if(y.hasOwnProperty(x)){w*=y[x]}return Math.floor(w)};var o=function(x){var w=[].slice.call(arguments,1);return x.replace(/%[a-z]/g,function(){var y=w.shift();return s(y)!=="undefined"?y:""})};return{guid:p,typeOf:s,extend:n,each:q,isEmptyObj:t,inSeries:l,inParallel:i,inArray:v,arrayDiff:r,arrayIntersect:u,toArray:m,trim:j,sprintf:o,parseSizeStr:k}});h("moxie/core/utils/Env",["moxie/core/utils/Basic"],function(m){var k=(function(s){var I="",H="?",C="function",u="undefined",q="object",r="major",D="model",t="name",z="type",x="vendor",F="version",o="architecture",v="console",B="mobile",G="tablet";var p={has:function(K,J){return J.toLowerCase().indexOf(K.toLowerCase())!==-1},lowerize:function(J){return J.toLowerCase()}};var E={rgx:function(){for(var T,N=0,M,L,K,J,O,P,Q=arguments;N<Q.length;N+=2){var S=Q[N],R=Q[N+1];if(typeof(T)===u){T={};for(K in R){J=R[K];if(typeof(J)===q){T[J[0]]=s}else{T[J]=s}}}for(M=L=0;M<S.length;M++){O=S[M].exec(this.getUA());if(!!O){for(K=0;K<R.length;K++){P=O[++L];J=R[K];if(typeof(J)===q&&J.length>0){if(J.length==2){if(typeof(J[1])==C){T[J[0]]=J[1].call(this,P)}else{T[J[0]]=J[1]}}else{if(J.length==3){if(typeof(J[1])===C&&!(J[1].exec&&J[1].test)){T[J[0]]=P?J[1].call(this,P,J[2]):s}else{T[J[0]]=P?P.replace(J[1],J[2]):s}}else{if(J.length==4){T[J[0]]=P?J[3].call(this,P.replace(J[1],J[2])):s}}}}else{T[J]=P?P:s}}break}}if(!!O){break}}return T},str:function(M,L){for(var K in L){if(typeof(L[K])===q&&L[K].length>0){for(var J=0;J<L[K].length;J++){if(p.has(L[K][J],M)){return(K===H)?s:K}}}else{if(p.has(L[K],M)){return(K===H)?s:K}}}return M}};var A={browser:{oldsafari:{major:{"1":["/8","/1","/3"],"2":"/4","?":"/"},version:{"1.0":"/8","1.2":"/1","1.3":"/3","2.0":"/412","2.0.2":"/416","2.0.3":"/417","2.0.4":"/419","?":"/"}}},device:{sprint:{model:{"Evo Shift 4G":"7373KT"},vendor:{HTC:"APA",Sprint:"Sprint"}}},os:{windows:{version:{ME:"4.90","NT 3.11":"NT3.51","NT 4.0":"NT4.0","2000":"NT 5.0",XP:["NT 5.1","NT 5.2"],Vista:"NT 6.0","7":"NT 6.1","8":"NT 6.2","8.1":"NT 6.3",RT:"ARM"}}}};var y=Line truncated
|
||||
@@ -0,0 +1 @@
|
||||
(function(){var a=new RegExp(["^(<\\/?(a|abbr|acronym|applet|area|b|basefont|","bdo|big|button|cite|code|del|dfn|em|figcaption|","font|i|iframe|img|input|ins|kbd|label|map|","mark|meter|object|param|progress|q|ruby|rp|rt|s|","samp|script|select|small|span|strike|strong|","sub|sup|textarea|time|tt|u|var|wbr)[^>]*>|","<(br)\\s?\\/?>)$"].join(""),"i");if(!Array.indexOf){Array.prototype.indexOf=function(v){for(var u=0;u<this.length;u++){if(this[u]==v){return u}}return -1}}function m(u){return u.replace(/^\s+|\s+$/g,"")}function c(u){return u.replace(/\s+$/g,"")}function h(u){return u.replace(new RegExp("^(\\t|[ ]{1,4})","gm"),"")}function g(v,u){return v.indexOf(u)!=-1}function d(u,v){return u.replace(/<[^>]*>?/gi,function(w){return w.match(v)?w:""})}function b(u,B){var A={};for(var z=0;z<u.length;z++){A[u[z]]=u[z]}for(z=0;z<B.length;z++){A[B[z]]=B[z]}var w=[];for(var v in A){if(A.hasOwnProperty(v)){w.push(A[v])}}return w}function p(u){if(u.charAt(0)!="\x02"){u="\x02"+u}if(u.charAt(u.length-1)!="\x03"){u=u+"\x03"}return u}function k(u){if(u.charAt(0)=="\x02"){u=u.substr(1)}if(u.charAt(u.length-1)=="\x03"){u=u.substr(0,u.length-1)}return u}function t(v,u){return d(j(v,u),a)}function j(w,v){var u=v.blockGamutHookCallback(w);u=l(u);u=u.replace(/~D/g,"$$").replace(/~T/g,"~");u=v.previousPostConversion(u);return u}function r(u){return u.replace(/\\\|/g,"~I").replace(/\\:/g,"~i")}function q(u){return u.replace(/~I/g,"|").replace(/~i/g,":")}function l(u){u=u.replace(/~E(\d+)E/g,function(v,x){var w=parseInt(x);return String.fromCharCode(w)});return u}function i(u){return u.toLowerCase().replace(/\s+/g,"-").replace(/[^\w\-]+/g,"").replace(/\-\-+/g,"-").replace(/^-+/,"").replace(/-+$/,"")}Markdown.Extra=function(){this.converter=null;this.hashBlocks=[];this.footnotes={};this.usedFootnotes=[];this.attributeBlocks=false;this.googleCodePrettify=false;this.highlightJs=false;this.tableClass="";this.tabWidth=4};Markdown.Extra.init=function(y,w){var u=new Markdown.Extra();var A=[];var x=[];var z=[];var v=["unHashExtraBlocks"];w=w||{};w.extensions=w.extensions||["all"];if(g(w.extensions,"all")){w.extensions=["tables","fenced_code_gfm","def_list","attr_list","footnotes","smartypants","strikethrough","newlines"]}x.push("wrapHeaders");if(g(w.extensions,"attr_list")){A.push("hashFcbAttributeBlocks");x.push("hashHeaderAttributeBlocks");v.push("applyAttributeBlocks");u.attributeBlocks=true}if(g(w.extensions,"fenced_code_gfm")){x.push("fencedCodeBlocks");A.push("fencedCodeBlocks")}if(g(w.extensions,"tables")){x.push("tables")}if(g(w.extensions,"def_list")){x.push("definitionLists")}if(g(w.extensions,"footnotes")){A.push("stripFootnoteDefinitions");x.push("doFootnotes");v.push("printFootnotes")}if(g(w.extensions,"smartypants")){v.push("runSmartyPants")}if(g(w.extensions,"strikethrough")){z.push("strikethrough")}if(g(w.extensions,"newlines")){z.push("newlines")}y.hooks.chain("postNormalization",function(B){return u.doTransform(A,B)+"\n"});y.hooks.chain("preBlockGamut",function(C,B){u.blockGamutHookCallback=B;C=r(C);C=u.doTransform(x,C)+"\n";C=q(C);return C});y.hooks.chain("postSpanGamut",function(B){return u.doTransform(z,B)});u.previousPostConversion=y.hooks.postConversion;y.hooks.chain("postConversion",function(B){B=u.doTransform(v,B);u.hashBlocks=[];u.footnotes={};u.usedFootnotes=[];return B});if("highlighter" in w){u.googleCodePrettify=w.highlighter==="prettify";u.highlightJs=w.highlighter==="highlight"}if("table_class" in w){u.tableClass=w.table_class}u.converter=y;return u};Markdown.Extra.prototype.doTransform=function(u,w){for(var v=0;v<u.length;v++){w=this[u[v]](w)}return w};Markdown.Extra.prototype.hashExtraBlock=function(u){return"\n<p>~X"+(this.hashBlocks.push(u)-1)+"X</p>\n"};Markdown.Extra.prototype.hashExtraInline=function(u){return"~X"+(this.hashBlocks.push(u)-1)+"X"};Markdown.Extra.prototype.unHashExtraBlocks=function(w){var v=this;function u(){var x=false;w=w.replace(/(?:<p>)?~X(\d+)X(?:<\/p>)?/g,function(y,z){x=true;var A=parseInt(z,10);return v.hashBlocks[A]});if(x===true){u()}}u();return w};Markdown.Extra.prototype.wrapHeaders=function(v){function u(w){return"\n"+w+"\n"}v=v.replace(/^.+[ \t]*\n=+[ \t]*\n+/gm,u);v=v.replace(/^.+[ \t]*\n-+[ \t]*\n+/gm,u);v=v.replace(/^\#{1,6}[ \t]*.+?[ \t]*\#*\n+/gm,u);return v};var e="\\{[ \\t]*((?:[#.][-_:a-zA-Z0-9]+[ \\t]*)+)\\}";var o=new RegExp("^(#{1,6}.*#{0,6})[ \\t]+"+e+"[ \\t]*(?:\\n|0x03)","gm");var n=new RegExp("^(.*)[ \\t]+"+e+"[ \\t]*\\n(?=[\\-|=]+\\s*(?:\\n|0x03))","gm");var f=new RegExp("^(```[ \\t]*[^{\\s]*)[ \\t]+"+e+"[ \\t]*\\n(?=([\\s\\S]*?)\\n```[ \\t]*(\\n|0x03))","gm");Markdown.Extra.prototype.hashHeaderAttributeBlocks=function(w){var v=this;function u(y,z,x){return"<p>~XX"+(v.hashBlocks.push(x)-1)+"XX</p>\n"+z+"\n"}w=w.replace(o,u);w=w.replace(n,u);return w};Markdown.Extra.prototype.hashFcbAttributeBlocks=function(w){var v=this;function u(y,z,x){return"<p>~XX"+(v.hashBlocks.push(x)-1)+"XX</p>\n"+z+"\n"}return w.replace(f,u)};Markdown.Extra.prototype.applyAttributLine truncated
|
||||
@@ -1 +1 @@
|
||||
var Markdown;if(typeof exports==="object"&&typeof require==="function"){Markdown=exports}else{Markdown={}}(function(){function c(e){return e}function d(e){return false}function b(){}b.prototype={chain:function(g,f){var e=this[g];if(!e){throw new Error("unknown hook "+g)}if(e===c){this[g]=f}else{this[g]=function(i){var h=Array.prototype.slice.call(arguments,0);h[0]=e.apply(null,h);return f.apply(null,h)}}},set:function(f,e){if(!this[f]){throw new Error("unknown hook "+f)}this[f]=e},addNoop:function(e){this[e]=c},addFalse:function(e){this[e]=d}};Markdown.HookCollection=b;function a(){}a.prototype={set:function(e,f){this["s_"+e]=f},get:function(e){return this["s_"+e]}}})();(function(){var a={},u={},m={},w=window.document,n=window.RegExp,g=window.navigator,q={lineLength:72},v={isIE:/msie/.test(g.userAgent.toLowerCase()),isIE_5or6:/msie 6/.test(g.userAgent.toLowerCase())||/msie 5/.test(g.userAgent.toLowerCase()),isOpera:/opera/.test(g.userAgent.toLowerCase())};var i={bold:"Strong <strong> Ctrl+B",boldexample:"strong text",italic:"Emphasis <em> Ctrl+I",italicexample:"emphasized text",link:"Hyperlink <a> Ctrl+L",linkdescription:"enter link description here",linkdialog:'<p><b>Insert Hyperlink</b></p><p>http://example.com/ "optional title"</p>',linkname:null,quote:"Blockquote <blockquote> Ctrl+Q",quoteexample:"Blockquote",code:"Code Sample <pre><code> Ctrl+K",codeexample:"enter code here",image:"Image <img> Ctrl+G",imagedescription:"enter image description here",imagedialog:"<p><b>Insert Image</b></p><p>http://example.com/images/diagram.jpg \"optional title\"<br>Need <a href='http://www.google.com/search?q=free+image+hosting' target='_blank'>free image hosting?</a></p>",imagename:null,olist:"Numbered List <ol> Ctrl+O",ulist:"Bulleted List <ul> Ctrl+U",litem:"List item",heading:"Heading <h1>/<h2> Ctrl+H",headingexample:"Heading",more:"More contents <!--more--> Ctrl+M",fullscreen:"FullScreen Ctrl+J",exitFullscreen:"Exit FullScreen Ctrl+E",fullscreenUnsupport:"Sorry, the browser dont support fullscreen api",hr:"Horizontal Rule <hr> Ctrl+R",undo:"Undo - Ctrl+Z",redo:"Redo - Ctrl+Y",redomac:"Redo - Ctrl+Shift+Z",ok:"OK",cancel:"Cancel",help:"Markdown Editing Help"};var c="http://";var d="http://";Markdown.Editor=function(B,D,A){A=A||{};if(typeof A.handler==="function"){A={helpButton:A}}A.strings=A.strings||{};if(A.helpButton){A.strings.help=A.strings.help||A.helpButton.title}var y=function(F){var E=A.strings[F]||i[F];if("imagename"==F||"linkname"==F){A.strings[F]=null}return E};D=D||"";var x=this.hooks=new Markdown.HookCollection();x.addNoop("onPreviewRefresh");x.addNoop("postBlockquoteCreation");x.addFalse("insertImageDialog");x.addFalse("insertLinkDialog");x.addNoop("makeButton");x.addNoop("enterFullScreen");x.addNoop("enterFakeFullScreen");x.addNoop("exitFullScreen");this.getConverter=function(){return B};var C=this,z;this.run=function(){if(z){return}z=new k(D);var G=new l(x,y);var E=new h(B,z,function(){x.onPreviewRefresh()});var H,F;if(!/\?noundo/.test(w.location.href)){H=new e(function(){E.refresh();if(F){F.setUndoRedoButtonStates()}},z);this.textOperation=function(J){H.setCommandMode();J();C.refreshPreview()}}fullScreenManager=new o(x,y);F=new t(D,z,x,H,E,G,fullScreenManager,A.helpButton,y);F.setUndoRedoButtonStates();var I=C.refreshPreview=function(){E.refresh(true)};I()}};function s(){}s.prototype.findTags=function(y,A){var x=this;var z;if(y){z=a.extendRegExp(y,"","$");this.before=this.before.replace(z,function(B){x.startTag=x.startTag+B;return""});z=a.extendRegExp(y,"^","");this.selection=this.selection.replace(z,function(B){x.startTag=x.startTag+B;return""})}if(A){z=a.extendRegExp(A,"","$");this.selection=this.selection.replace(z,function(B){x.endTag=B+x.endTag;return""});z=a.extendRegExp(A,"^","");this.after=this.after.replace(z,function(B){x.endTag=B+x.endTag;return""})}};s.prototype.trimWhitespace=function(y){var x,A,z=this;if(y){x=A=""}else{x=function(B){z.before+=B;return""};A=function(B){z.after=B+z.after;return""}}this.selection=this.selection.replace(/^(\s*)/,x).replace(/(\s*)$/,A)};s.prototype.skipLines=function(z,y,x){if(z===undefined){z=1}if(y===undefined){y=1}z++;y++;var A;var B;if(navigator.userAgent.match(/Chrome/)){"X".match(/()./)}this.selection=this.selection.replace(/(^\n*)/,"");this.startTag=this.startTag+n.$1;this.selection=this.selection.replace(/(\n*$)/,"");this.endTag=this.endTag+n.$1;this.startTag=this.startTag.replace(/(^\n*)/,"");this.before=this.before+n.$1;this.endTag=this.endTag.replace(/(\n*$)/,"");this.after=this.after+n.$1;if(this.before){A=B="";while(z--){A+="\\n?";B+="\n"}if(x){A="\\n*"}this.before=this.before.replace(new n(A+"$",""),B)}if(this.after){A=B="";while(y--){A+="\\n?";B+="\n"}if(x){A="\\n*"}this.after=this.after.replace(new n(A,""),B)}};function k(x){this.buttonBar=w.getElementById("wmd-button-bar"+x);this.preview=w.getElementById("wmd-preview"+x);this.input=w.getElementById("text")}a.isVisible=function(x){if(window.getComputedStyle){return window.getComputedStyle(Line truncated
|
||||
var Markdown;if(typeof exports==="object"&&typeof require==="function"){Markdown=exports}else{Markdown={}}(function(){function c(e){return e}function d(e){return false}function b(){}b.prototype={chain:function(g,f){var e=this[g];if(!e){throw new Error("unknown hook "+g)}if(e===c){this[g]=f}else{this[g]=function(i){var h=Array.prototype.slice.call(arguments,0);h[0]=e.apply(null,h);return f.apply(null,h)}}},set:function(f,e){if(!this[f]){throw new Error("unknown hook "+f)}this[f]=e},addNoop:function(e){this[e]=c},addFalse:function(e){this[e]=d}};Markdown.HookCollection=b;function a(){}a.prototype={set:function(e,f){this["s_"+e]=f},get:function(e){return this["s_"+e]}};Markdown.Converter=function(Y){var l=this.hooks=new b();l.addNoop("plainLinkText");l.addNoop("preConversion");l.addNoop("postNormalization");l.addNoop("preBlockGamut");l.addNoop("postBlockGamut");l.addNoop("preSpanGamut");l.addNoop("postSpanGamut");l.addNoop("postConversion");var B;var q;var e;var F;Y=Y||{};var W=c,r=c;if(Y.nonAsciiLetters){(function(){var ac=/[Q\u00aa\u00b5\u00ba\u00c0-\u00d6\u00d8-\u00f6\u00f8-\u02c1\u02c6-\u02d1\u02e0-\u02e4\u02ec\u02ee\u0370-\u0374\u0376-\u0377\u037a-\u037d\u0386\u0388-\u038a\u038c\u038e-\u03a1\u03a3-\u03f5\u03f7-\u0481\u048a-\u0523\u0531-\u0556\u0559\u0561-\u0587\u05d0-\u05ea\u05f0-\u05f2\u0621-\u064a\u0660-\u0669\u066e-\u066f\u0671-\u06d3\u06d5\u06e5-\u06e6\u06ee-\u06fc\u06ff\u0710\u0712-\u072f\u074d-\u07a5\u07b1\u07c0-\u07ea\u07f4-\u07f5\u07fa\u0904-\u0939\u093d\u0950\u0958-\u0961\u0966-\u096f\u0971-\u0972\u097b-\u097f\u0985-\u098c\u098f-\u0990\u0993-\u09a8\u09aa-\u09b0\u09b2\u09b6-\u09b9\u09bd\u09ce\u09dc-\u09dd\u09df-\u09e1\u09e6-\u09f1\u0a05-\u0a0a\u0a0f-\u0a10\u0a13-\u0a28\u0a2a-\u0a30\u0a32-\u0a33\u0a35-\u0a36\u0a38-\u0a39\u0a59-\u0a5c\u0a5e\u0a66-\u0a6f\u0a72-\u0a74\u0a85-\u0a8d\u0a8f-\u0a91\u0a93-\u0aa8\u0aaa-\u0ab0\u0ab2-\u0ab3\u0ab5-\u0ab9\u0abd\u0ad0\u0ae0-\u0ae1\u0ae6-\u0aef\u0b05-\u0b0c\u0b0f-\u0b10\u0b13-\u0b28\u0b2a-\u0b30\u0b32-\u0b33\u0b35-\u0b39\u0b3d\u0b5c-\u0b5d\u0b5f-\u0b61\u0b66-\u0b6f\u0b71\u0b83\u0b85-\u0b8a\u0b8e-\u0b90\u0b92-\u0b95\u0b99-\u0b9a\u0b9c\u0b9e-\u0b9f\u0ba3-\u0ba4\u0ba8-\u0baa\u0bae-\u0bb9\u0bd0\u0be6-\u0bef\u0c05-\u0c0c\u0c0e-\u0c10\u0c12-\u0c28\u0c2a-\u0c33\u0c35-\u0c39\u0c3d\u0c58-\u0c59\u0c60-\u0c61\u0c66-\u0c6f\u0c85-\u0c8c\u0c8e-\u0c90\u0c92-\u0ca8\u0caa-\u0cb3\u0cb5-\u0cb9\u0cbd\u0cde\u0ce0-\u0ce1\u0ce6-\u0cef\u0d05-\u0d0c\u0d0e-\u0d10\u0d12-\u0d28\u0d2a-\u0d39\u0d3d\u0d60-\u0d61\u0d66-\u0d6f\u0d7a-\u0d7f\u0d85-\u0d96\u0d9a-\u0db1\u0db3-\u0dbb\u0dbd\u0dc0-\u0dc6\u0e01-\u0e30\u0e32-\u0e33\u0e40-\u0e46\u0e50-\u0e59\u0e81-\u0e82\u0e84\u0e87-\u0e88\u0e8a\u0e8d\u0e94-\u0e97\u0e99-\u0e9f\u0ea1-\u0ea3\u0ea5\u0ea7\u0eaa-\u0eab\u0ead-\u0eb0\u0eb2-\u0eb3\u0ebd\u0ec0-\u0ec4\u0ec6\u0ed0-\u0ed9\u0edc-\u0edd\u0f00\u0f20-\u0f29\u0f40-\u0f47\u0f49-\u0f6c\u0f88-\u0f8b\u1000-\u102a\u103f-\u1049\u1050-\u1055\u105a-\u105d\u1061\u1065-\u1066\u106e-\u1070\u1075-\u1081\u108e\u1090-\u1099\u10a0-\u10c5\u10d0-\u10fa\u10fc\u1100-\u1159\u115f-\u11a2\u11a8-\u11f9\u1200-\u1248\u124a-\u124d\u1250-\u1256\u1258\u125a-\u125d\u1260-\u1288\u128a-\u128d\u1290-\u12b0\u12b2-\u12b5\u12b8-\u12be\u12c0\u12c2-\u12c5\u12c8-\u12d6\u12d8-\u1310\u1312-\u1315\u1318-\u135a\u1380-\u138f\u13a0-\u13f4\u1401-\u166c\u166f-\u1676\u1681-\u169a\u16a0-\u16ea\u1700-\u170c\u170e-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176c\u176e-\u1770\u1780-\u17b3\u17d7\u17dc\u17e0-\u17e9\u1810-\u1819\u1820-\u1877\u1880-\u18a8\u18aa\u1900-\u191c\u1946-\u196d\u1970-\u1974\u1980-\u19a9\u19c1-\u19c7\u19d0-\u19d9\u1a00-\u1a16\u1b05-\u1b33\u1b45-\u1b4b\u1b50-\u1b59\u1b83-\u1ba0\u1bae-\u1bb9\u1c00-\u1c23\u1c40-\u1c49\u1c4d-\u1c7d\u1d00-\u1dbf\u1e00-\u1f15\u1f18-\u1f1d\u1f20-\u1f45\u1f48-\u1f4d\u1f50-\u1f57\u1f59\u1f5b\u1f5d\u1f5f-\u1f7d\u1f80-\u1fb4\u1fb6-\u1fbc\u1fbe\u1fc2-\u1fc4\u1fc6-\u1fcc\u1fd0-\u1fd3\u1fd6-\u1fdb\u1fe0-\u1fec\u1ff2-\u1ff4\u1ff6-\u1ffc\u203f-\u2040\u2054\u2071\u207f\u2090-\u2094\u2102\u2107\u210a-\u2113\u2115\u2119-\u211d\u2124\u2126\u2128\u212a-\u212d\u212f-\u2139\u213c-\u213f\u2145-\u2149\u214e\u2183-\u2184\u2c00-\u2c2e\u2c30-\u2c5e\u2c60-\u2c6f\u2c71-\u2c7d\u2c80-\u2ce4\u2d00-\u2d25\u2d30-\u2d65\u2d6f\u2d80-\u2d96\u2da0-\u2da6\u2da8-\u2dae\u2db0-\u2db6\u2db8-\u2dbe\u2dc0-\u2dc6\u2dc8-\u2dce\u2dd0-\u2dd6\u2dd8-\u2dde\u2e2f\u3005-\u3006\u3031-\u3035\u303b-\u303c\u3041-\u3096\u309d-\u309f\u30a1-\u30fa\u30fc-\u30ff\u3105-\u312d\u3131-\u318e\u31a0-\u31b7\u31f0-\u31ff\u3400-\u4db5\u4e00-\u9fc3\ua000-\ua48c\ua500-\ua60c\ua610-\ua62b\ua640-\ua65f\ua662-\ua66e\ua67f-\ua697\ua717-\ua71f\ua722-\ua788\ua78b-\ua78c\ua7fb-\ua801\ua803-\ua805\ua807-\ua80a\ua80c-\ua822\ua840-\ua873\ua882-\ua8b3\ua8d0-\ua8d9\ua900-\ua925\ua930-\ua946\uaa00-\uaa28\uaa40-\uaa42\uaa44-\uaa4b\uaa50-\uaa59\uac00-\ud7a3\uf900-\ufa2d\ufa30-\ufa6a\ufa70-\ufad9\ufb00-\ufb06\ufb13-\ufb17\ufb1d\ufb1f-\ufb28\ufb2a-\ufb36\ufb38-\ufb3c\ufb3e\ufb40-\ufb41\ufb43-\ufb44\ufb46-\ufbb1\ufbd3-\ufd3d\ufd50-\ufd8f\ufd92-\ufdc7\ufdf0-\ufdfb\ufe33-\ufe34\ufe4d-\ufe4f\ufe70-Line truncated
|
||||
@@ -1 +1 @@
|
||||
(function(f,h,e){var d=f.setTimeout,g={};function a(j){var i=j.required_features,k={};function l(n,o,m){var p={chunks:"slice_blob",jpgresize:"send_binary_string",pngresize:"send_binary_string",progress:"report_upload_progress",multi_selection:"select_multiple",dragdrop:"drag_and_drop",drop_element:"drag_and_drop",headers:"send_custom_headers",canSendBinary:"send_binary",triggerDialog:"summon_file_dialog"};if(p[n]){k[p[n]]=o}else{if(!m){k[n]=o}}}if(typeof(i)==="string"){c.each(i.split(/\s*,\s*/),function(m){l(m,true)})}else{if(typeof(i)==="object"){c.each(i,function(n,m){l(m,n)})}else{if(i===true){if(!j.multipart){k.send_binary_string=true}if(j.chunk_size>0){k.slice_blob=true}if(j.resize.enabled){k.send_binary_string=true}c.each(j,function(n,m){l(m,!!n,true)})}}}return k}var c={VERSION:"2.1.1",STOPPED:1,STARTED:2,QUEUED:1,UPLOADING:2,FAILED:4,DONE:5,GENERIC_ERROR:-100,HTTP_ERROR:-200,IO_ERROR:-300,SECURITY_ERROR:-400,INIT_ERROR:-500,FILE_SIZE_ERROR:-600,FILE_EXTENSION_ERROR:-601,FILE_DUPLICATE_ERROR:-602,IMAGE_FORMAT_ERROR:-700,IMAGE_MEMORY_ERROR:-701,IMAGE_DIMENSIONS_ERROR:-702,mimeTypes:h.mimes,ua:h.ua,typeOf:h.typeOf,extend:h.extend,guid:h.guid,get:function b(m){var k=[],l;if(h.typeOf(m)!=="array"){m=[m]}var j=m.length;while(j--){l=h.get(m[j]);if(l){k.push(l)}}return k.length?k:null},each:h.each,getPos:h.getPos,getSize:h.getSize,xmlEncode:function(j){var k={"<":"lt",">":"gt","&":"amp",'"':"quot","'":"#39"},i=/[<>&\"\']/g;return j?(""+j).replace(i,function(l){return k[l]?"&"+k[l]+";":l}):j},toArray:h.toArray,inArray:h.inArray,addI18n:h.addI18n,translate:h.translate,isEmptyObj:h.isEmptyObj,hasClass:h.hasClass,addClass:h.addClass,removeClass:h.removeClass,getStyle:h.getStyle,addEvent:h.addEvent,removeEvent:h.removeEvent,removeAllEvents:h.removeAllEvents,cleanName:function(j){var k,l;l=[/[\300-\306]/g,"A",/[\340-\346]/g,"a",/\307/g,"C",/\347/g,"c",/[\310-\313]/g,"E",/[\350-\353]/g,"e",/[\314-\317]/g,"I",/[\354-\357]/g,"i",/\321/g,"N",/\361/g,"n",/[\322-\330]/g,"O",/[\362-\370]/g,"o",/[\331-\334]/g,"U",/[\371-\374]/g,"u"];for(k=0;k<l.length;k+=2){j=j.replace(l[k],l[k+1])}j=j.replace(/\s+/g,"_");j=j.replace(/[^a-z0-9_\-\.]+/gi,"");return j},buildUrl:function(j,i){var k="";c.each(i,function(m,l){k+=(k?"&":"")+encodeURIComponent(l)+"="+encodeURIComponent(m)});if(k){j+=(j.indexOf("?")>0?"&":"?")+k}return j},formatSize:function(j){if(j===e||/\D/.test(j)){return c.translate("N/A")}function i(m,l){return Math.round(m*Math.pow(10,l))/Math.pow(10,l)}var k=Math.pow(1024,4);if(j>k){return i(j/k,1)+" "+c.translate("tb")}if(j>(k/=1024)){return i(j/k,1)+" "+c.translate("gb")}if(j>(k/=1024)){return i(j/k,1)+" "+c.translate("mb")}if(j>1024){return Math.round(j/1024)+" "+c.translate("kb")}return j+" "+c.translate("b")},parseSize:h.parseSizeStr,predictRuntime:function(k,j){var i,l;i=new c.Uploader(k);l=h.Runtime.thatCan(i.getOption().required_features,j||k.runtimes);i.destroy();return l},addFileFilter:function(j,i){g[j]=i}};c.addFileFilter("mime_types",function(k,j,i){if(k.length&&!k.regexp.test(j.name)){this.trigger("Error",{code:c.FILE_EXTENSION_ERROR,message:c.translate("File extension error."),file:j});i(false)}else{i(true)}});c.addFileFilter("max_file_size",function(l,j,i){var k;l=c.parseSize(l);if(j.size!==k&&l&&j.size>l){this.trigger("Error",{code:c.FILE_SIZE_ERROR,message:c.translate("File size error."),file:j});i(false)}else{i(true)}});c.addFileFilter("prevent_duplicates",function(l,j,i){if(l){var k=this.files.length;while(k--){if(j.name===this.files[k].name&&j.size===this.files[k].size){this.trigger("Error",{code:c.FILE_DUPLICATE_ERROR,message:c.translate("Duplicate file error."),file:j});i(false);return}}}i(true)});c.Uploader=function(l){var t=c.guid(),G,p=[],x={},F=[],w=[],C,K,n=false,v;function J(){var M,N=0,L;if(this.state==c.STARTED){for(L=0;L<p.length;L++){if(!M&&p[L].status==c.QUEUED){M=p[L];if(this.trigger("BeforeUpload",M)){M.status=c.UPLOADING;this.trigger("UploadFile",M)}}else{N++}}if(N==p.length){if(this.state!==c.STOPPED){this.state=c.STOPPED;this.trigger("StateChanged")}this.trigger("UploadComplete",p)}}}function k(L){L.percent=L.size>0?Math.ceil(L.loaded/L.size*100):100;j()}function j(){var M,L;K.reset();for(M=0;M<p.length;M++){L=p[M];if(L.size!==e){K.size+=L.origSize;K.loaded+=L.loaded*L.origSize/L.size}else{K.size=e}if(L.status==c.DONE){K.uploaded++}else{if(L.status==c.FAILED){K.failed++}else{K.queued++}}}if(K.size===e){K.percent=p.length>0?Math.ceil(K.uploaded/p.length*100):0}else{K.bytesPerSec=Math.ceil(K.loaded/((+new Date()-C||1)/1000));K.percent=K.size>0?Math.ceil(K.loaded/K.size*100):0}}function I(){var L=F[0]||w[0];if(L){return L.getRuntime().uid}return false}function E(M,L){if(M.ruid){var N=h.Runtime.getInfo(M.ruid);if(N){return N.can(L)}}return false}function y(){this.bind("FilesAdded",H);this.bind("CancelUpload",i);this.bind("BeforeUpload",B);this.bind("UploadFile",D);this.bind("UploadProgress",u);this.bind("StateChanged",A);this.bind("QueueChanged",j);this.bind("Error",r);this.bind("FileUpLine truncated
|
||||
(function(f,h,e){var d=f.setTimeout,g={};function a(j){var i=j.required_features,k={};function l(n,o,m){var p={chunks:"slice_blob",jpgresize:"send_binary_string",pngresize:"send_binary_string",progress:"report_upload_progress",multi_selection:"select_multiple",dragdrop:"drag_and_drop",drop_element:"drag_and_drop",headers:"send_custom_headers",urlstream_upload:"send_binary_string",canSendBinary:"send_binary",triggerDialog:"summon_file_dialog"};if(p[n]){k[p[n]]=o}else{if(!m){k[n]=o}}}if(typeof(i)==="string"){c.each(i.split(/\s*,\s*/),function(m){l(m,true)})}else{if(typeof(i)==="object"){c.each(i,function(n,m){l(m,n)})}else{if(i===true){if(j.chunk_size>0){k.slice_blob=true}if(j.resize.enabled||!j.multipart){k.send_binary_string=true}c.each(j,function(n,m){l(m,!!n,true)})}}}return k}var c={VERSION:"2.1.8",STOPPED:1,STARTED:2,QUEUED:1,UPLOADING:2,FAILED:4,DONE:5,GENERIC_ERROR:-100,HTTP_ERROR:-200,IO_ERROR:-300,SECURITY_ERROR:-400,INIT_ERROR:-500,FILE_SIZE_ERROR:-600,FILE_EXTENSION_ERROR:-601,FILE_DUPLICATE_ERROR:-602,IMAGE_FORMAT_ERROR:-700,MEMORY_ERROR:-701,IMAGE_DIMENSIONS_ERROR:-702,mimeTypes:h.mimes,ua:h.ua,typeOf:h.typeOf,extend:h.extend,guid:h.guid,get:function b(m){var k=[],l;if(h.typeOf(m)!=="array"){m=[m]}var j=m.length;while(j--){l=h.get(m[j]);if(l){k.push(l)}}return k.length?k:null},each:h.each,getPos:h.getPos,getSize:h.getSize,xmlEncode:function(j){var k={"<":"lt",">":"gt","&":"amp",'"':"quot","'":"#39"},i=/[<>&\"\']/g;return j?(""+j).replace(i,function(l){return k[l]?"&"+k[l]+";":l}):j},toArray:h.toArray,inArray:h.inArray,addI18n:h.addI18n,translate:h.translate,isEmptyObj:h.isEmptyObj,hasClass:h.hasClass,addClass:h.addClass,removeClass:h.removeClass,getStyle:h.getStyle,addEvent:h.addEvent,removeEvent:h.removeEvent,removeAllEvents:h.removeAllEvents,cleanName:function(j){var k,l;l=[/[\300-\306]/g,"A",/[\340-\346]/g,"a",/\307/g,"C",/\347/g,"c",/[\310-\313]/g,"E",/[\350-\353]/g,"e",/[\314-\317]/g,"I",/[\354-\357]/g,"i",/\321/g,"N",/\361/g,"n",/[\322-\330]/g,"O",/[\362-\370]/g,"o",/[\331-\334]/g,"U",/[\371-\374]/g,"u"];for(k=0;k<l.length;k+=2){j=j.replace(l[k],l[k+1])}j=j.replace(/\s+/g,"_");j=j.replace(/[^a-z0-9_\-\.]+/gi,"");return j},buildUrl:function(j,i){var k="";c.each(i,function(m,l){k+=(k?"&":"")+encodeURIComponent(l)+"="+encodeURIComponent(m)});if(k){j+=(j.indexOf("?")>0?"&":"?")+k}return j},formatSize:function(j){if(j===e||/\D/.test(j)){return c.translate("N/A")}function i(m,l){return Math.round(m*Math.pow(10,l))/Math.pow(10,l)}var k=Math.pow(1024,4);if(j>k){return i(j/k,1)+" "+c.translate("tb")}if(j>(k/=1024)){return i(j/k,1)+" "+c.translate("gb")}if(j>(k/=1024)){return i(j/k,1)+" "+c.translate("mb")}if(j>1024){return Math.round(j/1024)+" "+c.translate("kb")}return j+" "+c.translate("b")},parseSize:h.parseSizeStr,predictRuntime:function(k,j){var i,l;i=new c.Uploader(k);l=h.Runtime.thatCan(i.getOption().required_features,j||k.runtimes);i.destroy();return l},addFileFilter:function(j,i){g[j]=i}};c.addFileFilter("mime_types",function(k,j,i){if(k.length&&!k.regexp.test(j.name)){this.trigger("Error",{code:c.FILE_EXTENSION_ERROR,message:c.translate("File extension error."),file:j});i(false)}else{i(true)}});c.addFileFilter("max_file_size",function(l,j,i){var k;l=c.parseSize(l);if(j.size!==k&&l&&j.size>l){this.trigger("Error",{code:c.FILE_SIZE_ERROR,message:c.translate("File size error."),file:j});i(false)}else{i(true)}});c.addFileFilter("prevent_duplicates",function(l,j,i){if(l){var k=this.files.length;while(k--){if(j.name===this.files[k].name&&j.size===this.files[k].size){this.trigger("Error",{code:c.FILE_DUPLICATE_ERROR,message:c.translate("Duplicate file error."),file:j});i(false);return}}}i(true)});c.Uploader=function(l){var t=c.guid(),G,p=[],x={},F=[],w=[],C,J,n=false,v;function I(){var L,M=0,K;if(this.state==c.STARTED){for(K=0;K<p.length;K++){if(!L&&p[K].status==c.QUEUED){L=p[K];if(this.trigger("BeforeUpload",L)){L.status=c.UPLOADING;this.trigger("UploadFile",L)}}else{M++}}if(M==p.length){if(this.state!==c.STOPPED){this.state=c.STOPPED;this.trigger("StateChanged")}this.trigger("UploadComplete",p)}}}function k(K){K.percent=K.size>0?Math.ceil(K.loaded/K.size*100):100;j()}function j(){var L,K;J.reset();for(L=0;L<p.length;L++){K=p[L];if(K.size!==e){J.size+=K.origSize;J.loaded+=K.loaded*K.origSize/K.size}else{J.size=e}if(K.status==c.DONE){J.uploaded++}else{if(K.status==c.FAILED){J.failed++}else{J.queued++}}}if(J.size===e){J.percent=p.length>0?Math.ceil(J.uploaded/p.length*100):0}else{J.bytesPerSec=Math.ceil(J.loaded/((+new Date()-C||1)/1000));J.percent=J.size>0?Math.ceil(J.loaded/J.size*100):0}}function H(){var K=F[0]||w[0];if(K){return K.getRuntime().uid}return false}function E(L,K){if(L.ruid){var M=h.Runtime.getInfo(L.ruid);if(M){return M.can(K)}}return false}function y(){this.bind("FilesAdded FilesRemoved",function(K){K.trigger("QueueChanged");K.refresh()});this.bind("CancelUpload",i);this.bind("BeforeUpload",B);this.bind("UploadFile",D);this.bind("UploadProgress",u);this.bind("StateChanged",A);tLine truncated
|
||||
@@ -1 +0,0 @@
|
||||
(function(R){var r="[!\"#$%&'()*+,./:;<=>?@[\\\\\\]^_`{|}~-]";var I="\\\\"+r;var aj='"('+I+'|[^"\\x00])*"';var D="'("+I+"|[^'\\x00])*'";var aq="\\(("+I+"|[^)\\x00])*\\)";var ad="[^\\\\()\\x00-\\x20]";var Q="\\(("+ad+"|"+I+")*\\)";var aE="[A-Za-z][A-Za-z0-9]*";var ay="(?:article|header|aside|hgroup|iframe|blockquote|hr|body|li|map|button|object|canvas|ol|caption|output|col|p|colgroup|pre|dd|progress|div|section|dl|table|td|dt|tbody|embed|textarea|fieldset|tfoot|figcaption|th|figure|thead|footer|footer|tr|form|ul|h1|h2|h3|h4|h5|h6|video|script|style)";var ae="[a-zA-Z_:][a-zA-Z0-9:._-]*";var x="[^\"'=<>`\\x00-\\x20]+";var U="'[^']*'";var B='"[^"]*"';var ac="(?:"+x+"|"+U+"|"+B+")";var X="(?:\\s*=\\s*"+ac+")";var at="(?:\\s+"+ae+X+"?)";var aA="<"+aE+at+"*\\s*/?>";var al="</"+aE+"\\s*[>]";var aC="<"+ay+at+"*\\s*/?>";var ak="</"+ay+"\\s*[>]";var e="<!--([^-]+|[-][^-]+)*-->";var V="[<][?].*?[?][>]";var au="<![A-Z]+\\s+[^>]*>";var o="<!\\[CDATA\\[([^\\]]+|\\][^\\]]|\\]\\][^>])*\\]\\]>";var t="(?:"+aA+"|"+al+"|"+e+"|"+V+"|"+au+"|"+o+")";var g="<(?:"+ay+"[\\s/>]|/"+ay+"[\\s>]|[?!])";var p=new RegExp("^"+t,"i");var N=new RegExp("^"+g,"i");var E=new RegExp('^(?:"('+I+'|[^"\\x00])*"|\'('+I+"|[^'\\x00])*'|\\(("+I+"|[^)\\x00])*\\))");var M=new RegExp("^(?:[<](?:[^<>\\n\\\\\\x00]|"+I+"|\\\\)*[>])");var F=new RegExp("^(?:"+ad+"+|"+I+"|"+Q+")*");var w=new RegExp(r);var G=new RegExp("\\\\("+r+")","g");var i=new RegExp("^\\\\("+r+")");var az=/\t/g;var l=/^(?:(?:\* *){3,}|(?:_ *){3,}|(?:- *){3,}) *$/;var m=/^(?:[\n`\[\]\\!<&*_]|[^\n`\[\]\\!<&*_]+)/m;var aD=function(aI){return aI.replace(G,"$1")};var q=function(aI){return/^\s*$/.test(aI)};var aa=function(aI){return aI.trim().replace(/\s+/," ").toUpperCase()};var aH=function(aK,aJ,aL){var aI=aJ.slice(aL).match(aK);if(aI){return aL+aI.index}else{return null}};var u=function(aJ){if(aJ.indexOf("\t")==-1){return aJ}else{var aI=0;return aJ.replace(az,function(aL,aM){var aK=" ".slice((aM-aI)%4);aI=aM+1;return aK})}};var an=function(aJ){var aI=aJ.exec(this.subject.slice(this.pos));if(aI){this.pos+=aI.index+aI[0].length;return aI[0]}else{return null}};var av=function(){return this.subject.charAt(this.pos)||null};var h=function(){this.match(/^ *(?:\n *)?/);return 1};var H=function(aK){var aN=this.pos;var aM=this.match(/^`+/);if(!aM){return 0}var aJ=this.pos;var aI=false;var aL;while(!aI&&(aL=this.match(/`+/m))){if(aL==aM){aK.push({t:"Code",c:this.subject.slice(aJ,this.pos-aM.length).replace(/[ \n]+/g," ").trim()});return(this.pos-aN)}}aK.push({t:"Str",c:aM});this.pos=aJ;return(this.pos-aN)};var S=function(aJ){var aI=this.subject,aK=this.pos;if(aI.charAt(aK)==="\\"){if(aI.charAt(aK+1)==="\n"){aJ.push({t:"Hardbreak"});this.pos=this.pos+2;return 2}else{if(w.test(aI.charAt(aK+1))){aJ.push({t:"Str",c:aI.charAt(aK+1)});this.pos=this.pos+2;return 2}else{this.pos++;aJ.push({t:"Str",c:"\\"});return 1}}}else{return 0}};var K=function(aJ){var aI;var aK;if((aI=this.match(/^<([a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*)>/))){aK=aI.slice(1,-1);aJ.push({t:"Link",label:[{t:"Str",c:aK}],destination:"mailto:"+aK});return aI.length}else{if((aI=this.match(/^<(?:coap|doi|javascript|aaa|aaas|about|acap|cap|cid|crid|data|dav|dict|dns|file|ftp|geo|go|gopher|h323|http|https|iax|icap|im|imap|info|ipp|iris|iris.beep|iris.xpc|iris.xpcs|iris.lwz|ldap|mailto|mid|msrp|msrps|mtqp|mupdate|news|nfs|ni|nih|nntp|opaquelocktoken|pop|pres|rtsp|service|session|shttp|sieve|sip|sips|sms|snmp|soap.beep|soap.beeps|tag|tel|telnet|tftp|thismessage|tn3270|tip|tv|urn|vemmi|ws|wss|xcon|xcon-userid|xmlrpc.beep|xmlrpc.beeps|xmpp|z39.50r|z39.50s|adiumxtra|afp|afs|aim|apt|attachment|aw|beshare|bitcoin|bolo|callto|chrome|chrome-extension|com-eventbrite-attendee|content|cvs|dlna-playsingle|dlna-playcontainer|dtn|dvb|ed2k|facetime|feed|finger|fish|gg|git|gizmoproject|gtalk|hcp|icon|ipn|irc|irc6|ircs|itms|jar|jms|keyparc|lastfm|ldaps|magnet|maps|market|message|mms|ms-help|msnim|mumble|mvn|notes|oid|palm|paparazzi|platform|proxy|psyc|query|res|resource|rmi|rsync|rtmp|secondlife|sftp|sgn|skype|smb|soldat|spotify|ssh|steam|svn|teamspeak|things|udp|unreal|ut2004|ventrilo|view-source|webcal|wtai|wyciwyg|xfire|xri|ymsgr):[^<>\x00-\x20]*>/i))){aK=aI.slice(1,-1);aJ.push({t:"Link",label:[{t:"Str",c:aK}],destination:aK});return aI.length}else{return 0}}};var d=function(aJ){var aI=this.match(p);if(aI){aJ.push({t:"Html",c:aI});return aI.length}else{return 0}};var ai=function(aP){var aO=0;var aK=0;var aN,aJ;var aL=this.pos;aN=this.pos===0?"\n":this.subject.charAt(this.pos-1);while(this.peek()===aP){aO++;this.pos++}aJ=this.peek()||"\n";var aM=aO>0&&aO<=3&&!(/\s/.test(aJ));var aI=aO>0&&aO<=3&&!(/\s/.test(aN));if(aP==="_"){aM=aM&&!((/[a-z0-9]/i).test(aN));aI=aI&&!((/[a-z0-9]/i).test(aJ))}this.pos=aL;return{numdelims:aO,can_open:aM,can_close:aI}};var Y=function(aK){var aM=this.pos;var aP;var aN=0;var aJ=this.peek();if(aJ=="*"||aJ=="_"){aP=aJ}else{return 0}var aO;var aL;rLine truncated
|
||||
@@ -1 +1,3 @@
|
||||
/*!normalize.css v2.1.3 | MIT License | git.io/normalize */ article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block;}audio,canvas,video{display:inline-block;}audio:not([controls]){display:none;height:0;}[hidden],template{display:none;}html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;}body{margin:0;}a{background:transparent;}a:focus{outline:thin dotted;}a:active,a:hover{outline:0;}h1{font-size:2em;margin:.67em 0;}abbr[title]{border-bottom:1px dotted;}b,strong{font-weight:bold;}dfn{font-style:italic;}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0;}mark{background:#ff0;color:#000;}code,kbd,pre,samp{font-family:monospace,serif;font-size:1em;}pre{white-space:pre-wrap;}q{quotes:"\201C" "\201D" "\2018" "\2019";}small{font-size:80%;}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline;}sup{top:-0.5em;}sub{bottom:-0.25em;}img{border:0;}svg:not(:root){overflow:hidden;}figure{margin:0;}fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:.35em .625em .75em;}legend{border:0;padding:0;}button,input,select,textarea{font-family:inherit;font-size:100%;margin:0;}button,input{line-height:normal;}button,select{text-transform:none;}button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer;}button[disabled],html input[disabled]{cursor:default;}input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0;}input[type="search"]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box;}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none;}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0;}textarea{overflow:auto;vertical-align:top;}table{border-collapse:collapse;border-spacing:0;}
|
||||
.container,.row [class*="col-"]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;}.container{margin-left:auto;margin-right:auto;padding-left:10px;padding-right:10px;}.row{margin-right:-10px;margin-left:-10px;}.row [class*="col-"]{float:left;min-height:1px;padding-right:10px;padding-left:10px;}.row [class*="-push-"],.row [class*="-pull-"]{position:relative;}.col-mb-1{width:8.33333%;}.col-mb-2{width:16.66667%;}.col-mb-3{width:25%;}.col-mb-4{width:33.33333%;}.col-mb-5{width:41.66667%;}.col-mb-6{width:50%;}.col-mb-7{width:58.33333%;}.col-mb-8{width:66.66667%;}.col-mb-9{width:75%;}.col-mb-10{width:83.33333%;}.col-mb-11{width:91.66667%;}.col-mb-12{width:100%;}@media(min-width:768px){.container{max-width:728px;}.col-tb-1{width:8.33333%;}.col-tb-2{width:16.66667%;}.col-tb-3{width:25%;}.col-tb-4{width:33.33333%;}.col-tb-5{width:41.66667%;}.col-tb-6{width:50%;}.col-tb-7{width:58.33333%;}.col-tb-8{width:66.66667%;}.col-tb-9{width:75%;}.col-tb-10{width:83.33333%;}.col-tb-11{width:91.66667%;}.col-tb-12{width:100%;}.col-tb-offset-0{margin-left:0;}.col-tb-offset-1{margin-left:8.33333%;}.col-tb-offset-2{margin-left:16.66667%;}.col-tb-offset-3{margin-left:25%;}.col-tb-offset-4{margin-left:33.33333%;}.col-tb-offset-5{margin-left:41.66667%;}.col-tb-offset-6{margin-left:50%;}.col-tb-offset-7{margin-left:58.33333%;}.col-tb-offset-8{margin-left:66.66667%;}.col-tb-offset-9{margin-left:75%;}.col-tb-offset-10{margin-left:83.33333%;}.col-tb-offset-11{margin-left:91.66667%;}.col-tb-offset-12{margin-left:100%;}.col-tb-pull-0{right:0;}.col-tb-pull-1{right:8.33333%;}.col-tb-pull-2{right:16.66667%;}.col-tb-pull-3{right:25%;}.col-tb-pull-4{right:33.33333%;}.col-tb-pull-5{right:41.66667%;}.col-tb-pull-6{right:50%;}.col-tb-pull-7{right:58.33333%;}.col-tb-pull-8{right:66.66667%;}.col-tb-pull-9{right:75%;}.col-tb-pull-10{right:83.33333%;}.col-tb-pull-11{right:91.66667%;}.col-tb-pull-12{right:100%;}.col-tb-push-0{left:0;}.col-tb-push-1{left:8.33333%;}.col-tb-push-2{left:16.66667%;}.col-tb-push-3{left:25%;}.col-tb-push-4{left:33.33333%;}.col-tb-push-5{left:41.66667%;}.col-tb-push-6{left:50%;}.col-tb-push-7{left:58.33333%;}.col-tb-push-8{left:66.66667%;}.col-tb-push-9{left:75%;}.col-tb-push-10{left:83.33333%;}.col-tb-push-11{left:91.66667%;}.col-tb-push-12{left:100%;}}@media(min-width:992px){.container{max-width:952px;}.col-1{width:8.33333%;}.col-2{width:16.66667%;}.col-3{width:25%;}.col-4{width:33.33333%;}.col-5{width:41.66667%;}.col-6{width:50%;}.col-7{width:58.33333%;}.col-8{width:66.66667%;}.col-9{width:75%;}.col-10{width:83.33333%;}.col-11{width:91.66667%;}.col-12{width:100%;}.col-offset-0{margin-left:0;}.col-offset-1{margin-left:8.33333%;}.col-offset-2{margin-left:16.66667%;}.col-offset-3{margin-left:25%;}.col-offset-4{margin-left:33.33333%;}.col-offset-5{margin-left:41.66667%;}.col-offset-6{margin-left:50%;}.col-offset-7{margin-left:58.33333%;}.col-offset-8{margin-left:66.66667%;}.col-offset-9{margin-left:75%;}.col-offset-10{margin-left:83.33333%;}.col-offset-11{margin-left:91.66667%;}.col-offset-12{margin-left:100%;}.col-pull-0{right:0;}.col-pull-1{right:8.33333%;}.col-pull-2{right:16.66667%;}.col-pull-3{right:25%;}.col-pull-4{right:33.33333%;}.col-pull-5{right:41.66667%;}.col-pull-6{right:50%;}.col-pull-7{right:58.33333%;}.col-pull-8{right:66.66667%;}.col-pull-9{right:75%;}.col-pull-10{right:83.33333%;}.col-pull-11{right:91.66667%;}.col-pull-12{right:100%;}.col-push-0{left:0;}.col-push-1{left:8.33333%;}.col-push-2{left:16.66667%;}.col-push-3{left:25%;}.col-push-4{left:33.33333%;}.col-push-5{left:41.66667%;}.col-push-6{left:50%;}.col-push-7{left:58.33333%;}.col-push-8{left:66.66667%;}.col-push-9{left:75%;}.col-push-10{left:83.33333%;}.col-push-11{left:91.66667%;}.col-push-12{left:100%;}}@media(min-width:1200px){.container{max-width:1160px;}.col-wd-1{width:8.33333%;}.col-wd-2{width:16.66667%;}.col-wd-3{width:25%;}.col-wd-4{width:33.33333%;}.col-wd-5{width:41.66667%;}.col-wd-6{width:50%;}.col-wd-7{width:58.33333%;}.col-wd-8{width:66.66667%;}.col-wd-9{width:75%;}.col-wd-10{width:83.33333%;}.col-wd-11{width:91.66667%;}.col-wd-12{width:100%;}.col-wd-offset-0{margin-left:0;}.col-wd-offset-1{margin-left:8.33333%;}.col-wd-offset-2{margin-left:16.66667%;}.col-wd-offset-3{margin-left:25%;}.col-wd-offset-4{margin-left:33.33333%;}.col-wd-offset-5{margin-left:41.66667%;}.col-wd-offset-6{margin-left:50%;}.col-wd-offset-7{margin-left:58.33333%;}.col-wd-offset-8{margin-left:66.66667%;}.col-wd-offset-9{margin-left:75%;}.col-wd-offset-10{margin-left:83.33333%;}.col-wd-offset-11{margin-left:91.66667%;}.col-wd-offset-12{margin-left:100%;}.col-wd-pull-0{right:0;}.col-wd-pull-1{right:8.33333%;}.col-wd-pull-2{right:16.66667%;}.col-wd-pull-3{right:25%;}.col-wd-pull-4{right:33.33333%;}.col-wd-pull-5{right:41.66667%;}.col-wd-pull-6{right:50%;}.col-wd-pull-7{right:58.33333%;}.col-wd-pull-8{right:66.66667%;}.col-wd-pull-9{right:75%;}.col-wd-pull-10{right:83.33333%;}.col-wd-pull-11{right:91.66667%;}.col-wd-pull-12{right:100%;}.col-wd-pLine truncated
|
||||
@charset "UTF-8";html{height:100%;}body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;background:#F6F6F3;color:#444;font-size:87.5%;line-height:1.5;}a{color:#467B96;text-decoration:none;}a:hover{color:#499BC3;text-decoration:underline;}code,pre,.mono{font-family:Menlo,Monaco,Consolas,"Courier New",monospace;}.p{margin:1em 0;}.body-100{height:100%;}a.balloon-button{display:inline-block;padding:0 6px;min-width:12px;height:18px;line-height:18px;background:#D8E7EE;font-size:.85714em;text-align:center;text-decoration:none;zoom:1;-moz-border-radius:30px;-webkit-border-radius:30px;border-radius:30px;}a.button:hover,a.balloon-button:hover{background-color:#A5CADC;color:#FFF;text-decoration:none;}input[type=text],input[type=password],input[type=email],textarea{background:#FFF;border:1px solid #D9D9D6;padding:7px;border-radius:2px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;}textarea{resize:vertical;line-height:1.5;}input[type="radio"],input[type="checkbox"]{margin-right:3px;}input.text-s,textarea.text-s{padding:5px;}input.text-l,textarea.text-l{padding:10px;font-size:1.14286em;}.w-10{width:10%;}.w-20{width:20%;}.w-30{width:30%;}.w-40{width:40%;}.w-50{width:50%;}.w-60{width:60%;}.w-70{width:70%;}.w-80{width:80%;}.w-90{width:90%;}.w-100{width:100%;}select{border:1px solid #CCC;height:28px;}.btn,#ui-datepicker-div .ui-datepicker-current,#ui-datepicker-div .ui-datepicker-close{border:none;background-color:#E9E9E6;cursor:pointer;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;display:inline-block;padding:0 12px;height:32px;color:#666;vertical-align:middle;zoom:1;}.btn:hover,#ui-datepicker-div .ui-datepicker-current:hover,#ui-datepicker-div .ui-datepicker-close:hover{-moz-transition-duration:.4s;-o-transition-duration:.4s;-webkit-transition-duration:.4s;transition-duration:.4s;background-color:#dbdbd6;}.btn:active,#ui-datepicker-div .ui-datepicker-current:active,#ui-datepicker-div .ui-datepicker-close:active,.btn.active,#ui-datepicker-div .active.ui-datepicker-current,#ui-datepicker-div .active.ui-datepicker-close{background-color:#d6d6d0;}.btn:disabled,#ui-datepicker-div .ui-datepicker-current:disabled,#ui-datepicker-div .ui-datepicker-close:disabled{background-color:#f7f7f6;cursor:default;}.btn:disabled,#ui-datepicker-div .ui-datepicker-current:disabled,#ui-datepicker-div .ui-datepicker-close:disabled{color:#999;}.btn-xs,#ui-datepicker-div .ui-datepicker-current,#ui-datepicker-div .ui-datepicker-close{padding:0 10px;height:25px;font-size:13px;}.btn-s{height:28px;}.btn-l{height:40px;font-size:1.14286em;font-weight:bold;}.primary{border:none;background-color:#467B96;cursor:pointer;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;color:#FFF;}.primary:hover{-moz-transition-duration:.4s;-o-transition-duration:.4s;-webkit-transition-duration:.4s;transition-duration:.4s;background-color:#3c6a81;}.primary:active,.primary.active{background-color:#39647a;}.primary:disabled{background-color:#508cab;cursor:default;}.btn-group{display:inline-block;}.btn-warn{border:none;background-color:#B94A48;cursor:pointer;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;color:#FFF;}.btn-warn:hover{-moz-transition-duration:.4s;-o-transition-duration:.4s;-webkit-transition-duration:.4s;transition-duration:.4s;background-color:#a4403f;}.btn-warn:active,.btn-warn.active{background-color:#9c3e3c;}.btn-warn:disabled{background-color:#c1605e;cursor:default;}.btn-link,.btn-link:hover,.btn-link:focus,.btn-link:active,.btn-link.active{background-color:transparent;}.btn-drop{position:relative;}.dropdown-toggle{padding-right:8px;}.dropdown-menu{list-style:none;position:absolute;z-index:2;left:0;margin:0;padding:0;border:1px solid #D9D9D6;background:#FFF;text-align:left;min-width:108px;display:none;}.dropdown-menu li{white-space:nowrap;}.dropdown-menu li.multiline{padding:5px 12px 12px;}.dropdown-menu a{display:block;padding:5px 12px;color:#666;}.dropdown-menu a:hover{background:#F6F6F3;text-decoration:none!important;}.message{padding:8px 10px;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;}.message a{font-weight:bold;text-decoration:underline;}.error{background:#FBE3E4;color:#8A1F11;}.error a{color:#8A1F11;}.notice{background:#FFF6BF;color:#8A6D3B;}.notice a{color:#8A6D3B;}.success{background:#E6EFC2;color:#264409;}.success a{color:#264409;}.balloon{display:inline-block;padding:0 4px;min-width:10px;height:14px;line-height:14px;background:#B9B9B6;vertical-align:text-top;text-align:center;font-size:12px;color:#FFF;-moz-border-radius:20px;-webkit-border-radius:20px;border-radius:20px;}.typecho-pager{list-style:none;float:right;margin:0;padding:0;line-height:1;text-align:center;zoom:1;}.typecho-pager li{display:inline-block;margin:0 3px;height:28px;line-height:28px;}.typecho-pager a{display:block;padding:0 10px;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;}.typecho-pager a:hover{text-decoration:none;background:#E9E9E6;}.Line truncated
|
||||
@@ -8,7 +8,6 @@
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>{{.Title}}</title>
|
||||
<meta name="robots" content="noindex, nofollow">
|
||||
<link rel="stylesheet" href="/static/admin/background.css">
|
||||
<link rel="stylesheet" href="/static/admin/style.css">
|
||||
<!--[if lt IE 9]>
|
||||
<script src="//cdn.bootcss.com/html5shiv/3.7.2/html5shiv.min.js"></script>
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
<meta content="width=device-width,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" name=viewport>
|
||||
<meta name=robots content="noindex, nofollow">
|
||||
<title>登录 | {{.BTitle}}</title>
|
||||
<link rel=stylesheet href="/static/admin/background.css">
|
||||
<link rel=stylesheet href="/static/admin/style.css">
|
||||
</head>
|
||||
|
||||
<body class="body-100">
|
||||
@@ -16,7 +16,7 @@
|
||||
<form action="/admin/login" method=post>
|
||||
<p>
|
||||
<label for=user class="sr-only">用户名</label>
|
||||
<input type=text id=user name=user value="" placeholder="用户名" class="text-l w-100">
|
||||
<input type=text id=user name=user placeholder="用户名" class="text-l w-100">
|
||||
</p>
|
||||
<p>
|
||||
<label for=password class="sr-only">密码</label>
|
||||
|
||||
+133
-150
@@ -41,9 +41,13 @@
|
||||
<section class="typecho-post-option category-option">
|
||||
<label class="typecho-label">专题</label>
|
||||
<ul>
|
||||
<li>
|
||||
<input type="radio" id="serie-0" value="0" name="serie" checked="true"/>
|
||||
<label for="serie-0">默认专题</label>
|
||||
</li>
|
||||
{{range $k,$v:=.Series}}
|
||||
<li>
|
||||
<input type="checkbox" id="serie-{{$v.ID}}" value="{{$v.ID}}" name="serie" {{with $.Edit}}{{if eq .SerieID $v.ID}}checked="true"{{end}}{{end}}/>
|
||||
<input type="radio" id="serie-{{$v.ID}}" value="{{$v.ID}}" name="serie" {{with $.Edit}}{{if eq .SerieID $v.ID}}checked="true"{{end}}{{end}}/>
|
||||
<label for="serie-{{$v.ID}}">{{$v.Name}}</label>
|
||||
</li>
|
||||
{{end}}
|
||||
@@ -143,9 +147,6 @@ $(document).ready(function() {
|
||||
// 聚焦
|
||||
$('#title').select();
|
||||
|
||||
// text 自动拉伸
|
||||
// Typecho.editorResize('text', 'http://localhost/index.php/action/ajax?do=editorResize&_=53e23a1bd0daab03b05d9c23190904a4');
|
||||
|
||||
// tag autocomplete 提示
|
||||
var tags = $('#tags'),
|
||||
tagsPre = [];
|
||||
@@ -329,12 +330,6 @@ $(document).ready(function() {
|
||||
return false;
|
||||
});
|
||||
|
||||
// 高级选项控制
|
||||
$('#advance-panel-btn').click(function() {
|
||||
$('#advance-panel').toggle();
|
||||
return false;
|
||||
});
|
||||
|
||||
// 自动隐藏密码框
|
||||
$('#visibility').change(function() {
|
||||
var val = $(this).val(),
|
||||
@@ -346,10 +341,20 @@ $(document).ready(function() {
|
||||
password.addClass('hidden');
|
||||
}
|
||||
});
|
||||
|
||||
// 草稿删除确认
|
||||
$('.edit-draft-notice a').click(function () {
|
||||
if (confirm('您确认要删除这份草稿吗?')) {
|
||||
window.location.href = $(this).attr('href');
|
||||
}
|
||||
|
||||
return false;
|
||||
});
|
||||
});
|
||||
</script>
|
||||
<script src="/static/admin/hyperdown.js"></script>
|
||||
<script src="/static/admin/pagedown.js"></script>
|
||||
<script src="/static/admin/stmd.js"></script>
|
||||
<script src="/static/admin/pagedown-extra.js"></script>
|
||||
<script src="/static/admin/diff.js"></script>
|
||||
<script>
|
||||
$(document).ready(function() {
|
||||
@@ -406,36 +411,26 @@ $(document).ready(function() {
|
||||
help: 'Markdown语法帮助'
|
||||
};
|
||||
|
||||
var converter = new Typecho.Markdown,
|
||||
var converter = new HyperDown(),
|
||||
editor = new Markdown.Editor(converter, '', options),
|
||||
diffMatch = new diff_match_patch(),
|
||||
last = '',
|
||||
preview = $('#wmd-preview'),
|
||||
diffMatch = new diff_match_patch(), last = '', preview = $('#wmd-preview'),
|
||||
mark = '@mark' + Math.ceil(Math.random() * 100000000) + '@',
|
||||
span = '<span class="diff" />',
|
||||
cache = {};
|
||||
|
||||
|
||||
// 自动跟随
|
||||
converter.hooks.chain('postConversion', function(html) {
|
||||
// clear special html tags
|
||||
html = html.replace(/<\/?(\!doctype|html|head|body|link|title|input|select|button|textarea|style|noscript)[^>]*>/ig, function(all) {
|
||||
return all.replace(/&/g, '&')
|
||||
.replace(/</g, '<')
|
||||
.replace(/>/g, '>')
|
||||
.replace(/'/g, ''')
|
||||
.replace(/"/g, '"');
|
||||
});
|
||||
|
||||
// clear hard breaks
|
||||
html = html.replace(/\s*((?:<br>\n)+)\s*(<\/?(?:p|div|h[1-6]|blockquote|pre|table|dl|ol|ul|address|form|fieldset|iframe|hr|legend|article|section|nav|aside|hgroup|header|footer|figcaption|li|dd|dt)[^\w])/gm, '$2');
|
||||
|
||||
converter.hook('makeHtml', function (html) {
|
||||
// convert all comment
|
||||
html = html.replace(/<!--(.+?)-->/g, '<!--$1-->');
|
||||
|
||||
if (html.indexOf('<!--more-->') > 0) {
|
||||
var parts = html.split(/\s*<\!\-\-more\-\->\s*/),
|
||||
summary = parts.shift(),
|
||||
details = parts.join('');
|
||||
|
||||
html = '<div class="summary">' + summary + '</div>' + '<div class="details">' + details + '</div>';
|
||||
html = '<div class="summary">' + summary + '</div>'
|
||||
+ '<div class="details">' + details + '</div>';
|
||||
}
|
||||
|
||||
|
||||
@@ -443,22 +438,18 @@ $(document).ready(function() {
|
||||
last = html;
|
||||
|
||||
if (diffs.length > 0) {
|
||||
var stack = [],
|
||||
markStr = mark;
|
||||
|
||||
for (var i = 0; i < diffs.length; i++) {
|
||||
var diff = diffs[i],
|
||||
op = diff[0],
|
||||
str = diff[1]
|
||||
sp = str.lastIndexOf('<'), ep = str.lastIndexOf('>');
|
||||
var stack = [], markStr = mark;
|
||||
|
||||
for (var i = 0; i < diffs.length; i ++) {
|
||||
var diff = diffs[i], op = diff[0], str = diff[1]
|
||||
sp = str.lastIndexOf('<'), ep = str.lastIndexOf('>');
|
||||
|
||||
if (op != 0) {
|
||||
if (sp >= 0 && sp > ep) {
|
||||
if (sp >=0 && sp > ep) {
|
||||
if (op > 0) {
|
||||
stack.push(str.substring(0, sp) + markStr + str.substring(sp));
|
||||
} else {
|
||||
var lastStr = stack[stack.length - 1],
|
||||
lastSp = lastStr.lastIndexOf('<');
|
||||
var lastStr = stack[stack.length - 1], lastSp = lastStr.lastIndexOf('<');
|
||||
stack[stack.length - 1] = lastStr.substring(0, lastSp) + markStr + lastStr.substring(lastSp);
|
||||
}
|
||||
} else {
|
||||
@@ -468,7 +459,7 @@ $(document).ready(function() {
|
||||
stack.push(markStr);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
markStr = '';
|
||||
} else {
|
||||
stack.push(str);
|
||||
@@ -478,11 +469,9 @@ $(document).ready(function() {
|
||||
html = stack.join('');
|
||||
|
||||
if (!markStr) {
|
||||
var pos = html.indexOf(mark),
|
||||
prev = html.substring(0, pos),
|
||||
var pos = html.indexOf(mark), prev = html.substring(0, pos),
|
||||
next = html.substr(pos + mark.length),
|
||||
sp = prev.lastIndexOf('<'),
|
||||
ep = prev.lastIndexOf('>');
|
||||
sp = prev.lastIndexOf('<'), ep = prev.lastIndexOf('>');
|
||||
|
||||
if (sp >= 0 && sp > ep) {
|
||||
html = prev.substring(0, sp) + span + prev.substring(sp) + next;
|
||||
@@ -491,55 +480,54 @@ $(document).ready(function() {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// 替换img
|
||||
html = html.replace(/<(img)\s+([^>]*)\s*src="([^"]+)"([^>]*)>/ig, function(all, tag, prefix, src, suffix) {
|
||||
html = html.replace(/<(img)\s+([^>]*)\s*src="([^"]+)"([^>]*)>/ig, function (all, tag, prefix, src, suffix) {
|
||||
if (!cache[src]) {
|
||||
cache[src] = false;
|
||||
} else {
|
||||
return '<span class="cache" data-width="' + cache[src][0] + '" data-height="' + cache[src][1] + '" ' + 'style="background:url(' + src + ') no-repeat left top; width:' + cache[src][0] + 'px; height:' + cache[src][1] + 'px; display: inline-block; max-width: 100%;' + '-webkit-background-size: contain;-moz-background-size: contain;-o-background-size: contain;background-size: contain;" />';
|
||||
return '<span class="cache" data-width="' + cache[src][0] + '" data-height="' + cache[src][1] + '" '
|
||||
+ 'style="background:url(' + src + ') no-repeat left top; width:'
|
||||
+ cache[src][0] + 'px; height:' + cache[src][1] + 'px; display: inline-block; max-width: 100%;'
|
||||
+ '-webkit-background-size: contain;-moz-background-size: contain;-o-background-size: contain;background-size: contain;" />';
|
||||
}
|
||||
|
||||
return all;
|
||||
});
|
||||
|
||||
// 替换block
|
||||
html = html.replace(/<(iframe|embed)\s+([^>]*)>/ig, function(all, tag, src) {
|
||||
html = html.replace(/<(iframe|embed)\s+([^>]*)>/ig, function (all, tag, src) {
|
||||
if (src[src.length - 1] == '/') {
|
||||
src = src.substring(0, src.length - 1);
|
||||
}
|
||||
|
||||
return '<div style="background: #ddd; height: 40px; overflow: hidden; line-height: 40px; text-align: center; font-size: 12px; color: #777">' + tag + ' : ' + $.trim(src) + '</div>';
|
||||
return '<div style="background: #ddd; height: 40px; overflow: hidden; line-height: 40px; text-align: center; font-size: 12px; color: #777">'
|
||||
+ tag + ' : ' + $.trim(src) + '</div>';
|
||||
});
|
||||
|
||||
return html;
|
||||
});
|
||||
|
||||
function cacheResize() {
|
||||
var t = $(this),
|
||||
w = parseInt(t.data('width')),
|
||||
h = parseInt(t.data('height')),
|
||||
var t = $(this), w = parseInt(t.data('width')), h = parseInt(t.data('height')),
|
||||
ow = t.width();
|
||||
|
||||
t.height(h * ow / w);
|
||||
}
|
||||
|
||||
var to;
|
||||
editor.hooks.chain('onPreviewRefresh', function() {
|
||||
var diff = $('.diff', preview),
|
||||
scrolled = false;
|
||||
editor.hooks.chain('onPreviewRefresh', function () {
|
||||
var diff = $('.diff', preview), scrolled = false;
|
||||
|
||||
if (to) {
|
||||
clearTimeout(to);
|
||||
}
|
||||
|
||||
$('img', preview).load(function() {
|
||||
var t = $(this),
|
||||
src = t.attr('src');
|
||||
$('img', preview).load(function () {
|
||||
var t = $(this), src = t.attr('src');
|
||||
|
||||
if (scrolled) {
|
||||
preview.scrollTo(diff, {
|
||||
offset: -50
|
||||
offset : - 50
|
||||
});
|
||||
}
|
||||
|
||||
@@ -549,64 +537,62 @@ $(document).ready(function() {
|
||||
});
|
||||
|
||||
$('.cache', preview).resize(cacheResize).each(cacheResize);
|
||||
|
||||
|
||||
var changed = $('.diff', preview).parent();
|
||||
if (!changed.is(preview)) {
|
||||
changed.css('background-color', 'rgba(255,230,0,0.5)');
|
||||
to = setTimeout(function() {
|
||||
to = setTimeout(function () {
|
||||
changed.css('background-color', 'transparent');
|
||||
}, 4500);
|
||||
}
|
||||
|
||||
if (diff.length > 0) {
|
||||
var p = diff.position(),
|
||||
lh = diff.parent().css('line-height');
|
||||
var p = diff.position(), lh = diff.parent().css('line-height');
|
||||
lh = !!lh ? parseInt(lh) : 0;
|
||||
|
||||
if (p.top < 0 || p.top > preview.height() - lh) {
|
||||
preview.scrollTo(diff, {
|
||||
offset: -50
|
||||
offset : - 50
|
||||
});
|
||||
scrolled = true;
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
var input = $('#text'), th = textarea.height(), ph = preview.height(),
|
||||
uploadBtn = $('<button type="button" id="btn-fullscreen-upload" class="btn btn-link">'
|
||||
+ '<i class="i-upload">附件</i></button>')
|
||||
.prependTo('.submit .right')
|
||||
.click(function() {
|
||||
$('a', $('.typecho-option-tabs li').not('.active')).trigger('click');
|
||||
return false;
|
||||
});
|
||||
|
||||
var input = $('#text'),
|
||||
th = textarea.height(),
|
||||
ph = preview.height(),
|
||||
uploadBtn = $('<button type="button" id="btn-fullscreen-upload" class="btn btn-link">' + '<i class="i-upload">附件</i></button>')
|
||||
.prependTo('.submit .right')
|
||||
.click(function() {
|
||||
$('a', $('.typecho-option-tabs li').not('.active')).trigger('click');
|
||||
return false;
|
||||
});
|
||||
|
||||
$('.typecho-option-tabs li').click(function() {
|
||||
$('.typecho-option-tabs li').click(function () {
|
||||
uploadBtn.find('i').toggleClass('i-upload-active',
|
||||
$('#tab-files-btn', this).length > 0);
|
||||
});
|
||||
|
||||
editor.hooks.chain('enterFakeFullScreen', function() {
|
||||
editor.hooks.chain('enterFakeFullScreen', function () {
|
||||
th = textarea.height();
|
||||
ph = preview.height();
|
||||
$(document.body).addClass('fullscreen');
|
||||
var h = $(window).height() - toolbar.outerHeight();
|
||||
|
||||
|
||||
textarea.css('height', h);
|
||||
preview.css('height', h);
|
||||
});
|
||||
|
||||
editor.hooks.chain('enterFullScreen', function() {
|
||||
editor.hooks.chain('enterFullScreen', function () {
|
||||
$(document.body).addClass('fullscreen');
|
||||
|
||||
|
||||
var h = window.screen.height - toolbar.outerHeight();
|
||||
textarea.css('height', h);
|
||||
preview.css('height', h);
|
||||
});
|
||||
|
||||
editor.hooks.chain('exitFullScreen', function() {
|
||||
editor.hooks.chain('exitFullScreen', function () {
|
||||
$(document.body).removeClass('fullscreen');
|
||||
textarea.height(th);
|
||||
preview.height(ph);
|
||||
@@ -618,13 +604,13 @@ $(document).ready(function() {
|
||||
var imageButton = $('#wmd-image-button'),
|
||||
linkButton = $('#wmd-link-button');
|
||||
|
||||
Typecho.insertFileToEditor = function(file, url, isImage) {
|
||||
Typecho.insertFileToEditor = function (file, url, isImage) {
|
||||
var button = isImage ? imageButton : linkButton;
|
||||
|
||||
options.strings[isImage ? 'imagename' : 'linkname'] = file;
|
||||
button.trigger('click');
|
||||
|
||||
var checkDialog = setInterval(function() {
|
||||
var checkDialog = setInterval(function () {
|
||||
if ($('.wmd-prompt-dialog').length > 0) {
|
||||
$('.wmd-prompt-dialog input').val(url).select();
|
||||
clearInterval(checkDialog);
|
||||
@@ -633,7 +619,7 @@ $(document).ready(function() {
|
||||
}, 10);
|
||||
};
|
||||
|
||||
Typecho.uploadComplete = function(file) {
|
||||
Typecho.uploadComplete = function (file) {
|
||||
Typecho.insertFileToEditor(file.title, file.url, file.isImage);
|
||||
};
|
||||
|
||||
@@ -645,7 +631,7 @@ $(document).ready(function() {
|
||||
$(".wmd-edittab a").removeClass('active');
|
||||
$(this).addClass("active");
|
||||
$("#wmd-editarea, #wmd-preview").addClass("wmd-hidetab");
|
||||
|
||||
|
||||
var selected_tab = $(this).attr("href"),
|
||||
selected_el = $(selected_tab).removeClass("wmd-hidetab");
|
||||
|
||||
@@ -669,7 +655,7 @@ $(document).ready(function() {
|
||||
<script src="/static/admin/plupload.js"></script>
|
||||
<script>
|
||||
$(document).ready(function() {
|
||||
function updateAttacmentNumber() {
|
||||
function updateAttacmentNumber () {
|
||||
var btn = $('#tab-files-btn'),
|
||||
balloon = $('.balloon', btn),
|
||||
count = $('#file-list li .insert').length;
|
||||
@@ -687,38 +673,37 @@ $(document).ready(function() {
|
||||
}
|
||||
|
||||
$('.upload-area').bind({
|
||||
dragenter: function() {
|
||||
dragenter : function () {
|
||||
$(this).parent().addClass('drag');
|
||||
},
|
||||
|
||||
dragover: function(e) {
|
||||
dragover : function (e) {
|
||||
$(this).parent().addClass('drag');
|
||||
},
|
||||
|
||||
drop: function() {
|
||||
drop : function () {
|
||||
$(this).parent().removeClass('drag');
|
||||
},
|
||||
|
||||
dragend : function () {
|
||||
$(this).parent().removeClass('drag');
|
||||
},
|
||||
|
||||
dragend: function() {
|
||||
$(this).parent().removeClass('drag');
|
||||
},
|
||||
|
||||
dragleave: function() {
|
||||
dragleave : function () {
|
||||
$(this).parent().removeClass('drag');
|
||||
}
|
||||
});
|
||||
|
||||
updateAttacmentNumber();
|
||||
|
||||
function fileUploadStart(file) {
|
||||
$('<li id="' + file.id + '" class="loading">' + file.name + '</li>').appendTo('#file-list');
|
||||
function fileUploadStart (file) {
|
||||
$('<li id="' + file.id + '" class="loading">'
|
||||
+ file.name + '</li>').appendTo('#file-list');
|
||||
}
|
||||
|
||||
function fileUploadError(error) {
|
||||
var file = error.file,
|
||||
code = error.code,
|
||||
word;
|
||||
|
||||
function fileUploadError (error) {
|
||||
var file = error.file, code = error.code, word;
|
||||
|
||||
switch (code) {
|
||||
case plupload.FILE_SIZE_ERROR:
|
||||
word = '文件大小超过限制';
|
||||
@@ -744,22 +729,26 @@ $(document).ready(function() {
|
||||
li = $('<li>' + fileError + '<br />' + word + '</li>').appendTo('#file-list');
|
||||
}
|
||||
|
||||
li.effect('highlight', {
|
||||
color: '#FBC2C4'
|
||||
}, 2000, function() {
|
||||
li.effect('highlight', {color : '#FBC2C4'}, 2000, function () {
|
||||
$(this).remove();
|
||||
});
|
||||
|
||||
// fix issue #341
|
||||
this.removeFile(file);
|
||||
}
|
||||
|
||||
var completeFile = null;
|
||||
|
||||
function fileUploadComplete(id, url, data) {
|
||||
var li = $('#' + id).removeClass('loading').data('cid', data.cid)
|
||||
function fileUploadComplete (id, data) {
|
||||
var li = $('#' + id).removeClass('loading').data('name', data.name)
|
||||
.data('url', data.url)
|
||||
.data('image', data.isImage)
|
||||
.html('<input type="hidden" name="attachment[]" value="' + data.cid + '" />' + '<a class="insert" target="_blank" href="###" title="点击插入文件">' + data.title + '</a><div class="info">' + data.bytes + ' <a class="file" target="_blank" href="http://localhost/admin/media.php?cid=' + data.cid + '" title="编辑"><i class="i-edit"></i></a>' + ' <a class="delete" href="###" title="删除"><i class="i-delete"></i></a></div>')
|
||||
.html('<input type="hidden" name="attachment[]" value="' + data.cid + '" />'
|
||||
+ '<a class="insert" target="_blank" href="###" title="点击插入文件">' + data.name + '</a><div class="info">' + data.bytes
|
||||
+ ' <a class="file" target="_blank" href="'
|
||||
+ data.url + '" title="查看"><i class="i-edit"></i></a>'
|
||||
+ ' <a class="delete" href="###" title="删除"><i class="i-delete"></i></a></div>')
|
||||
.effect('highlight', 1000);
|
||||
|
||||
|
||||
attachInsertEvent(li);
|
||||
attachDeleteEvent(li);
|
||||
updateAttacmentNumber();
|
||||
@@ -769,56 +758,53 @@ $(document).ready(function() {
|
||||
}
|
||||
}
|
||||
|
||||
$('#tab-files').bind('init', function() {
|
||||
$('#tab-files').bind('init', function () {
|
||||
var uploader = new plupload.Uploader({
|
||||
browse_button: $('.upload-file').get(0),
|
||||
url: '/admin/api/file-upload',
|
||||
runtimes: 'html5,flash,html4',
|
||||
flash_swf_url: '/static/admin/js/Moxie.swf',
|
||||
drop_element: $('.upload-area').get(0),
|
||||
filters: {
|
||||
max_file_size: '2mb',
|
||||
mime_types: [{
|
||||
'title': '允许上传的文件',
|
||||
'extensions': 'gif,jpg,jpeg,png,tiff,bmp'
|
||||
}],
|
||||
prevent_duplicates: true
|
||||
browse_button : $('.upload-file').get(0),
|
||||
url : '/admin/api/file-upload',
|
||||
runtimes : 'html5,flash,html4',
|
||||
flash_swf_url : '/static/admin/js/Moxie.swf',
|
||||
drop_element : $('.upload-area').get(0),
|
||||
filters : {
|
||||
max_file_size : '2mb',
|
||||
<!-- mime_types : [{'title' : '允许上传的文件', 'extensions' : 'gif,jpg,jpeg,png,tiff,bmp'}], -->
|
||||
prevent_duplicates : true
|
||||
},
|
||||
|
||||
init: {
|
||||
FilesAdded: function(up, files) {
|
||||
plupload.each(files, function(file) {
|
||||
fileUploadStart(file);
|
||||
});
|
||||
init : {
|
||||
FilesAdded : function (up, files) {
|
||||
for (var i = 0; i < files.length; i ++) {
|
||||
fileUploadStart(files[i]);
|
||||
}
|
||||
|
||||
completeFile = null;
|
||||
uploader.start();
|
||||
},
|
||||
|
||||
UploadComplete: function() {
|
||||
UploadComplete : function () {
|
||||
if (completeFile) {
|
||||
Typecho.uploadComplete(completeFile);
|
||||
}
|
||||
},
|
||||
|
||||
FileUploaded: function(up, file, result) {
|
||||
FileUploaded : function (up, file, result) {
|
||||
if (200 == result.status) {
|
||||
var data = $.parseJSON(result.response);
|
||||
|
||||
if (data) {
|
||||
fileUploadComplete(file.id, data[0], data[1]);
|
||||
fileUploadComplete(file.id, data);
|
||||
uploader.removeFile(file);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
fileUploadError({
|
||||
code: plupload.HTTP_ERROR,
|
||||
file: file
|
||||
fileUploadError.call(uploader, {
|
||||
code : plupload.HTTP_ERROR,
|
||||
file : file
|
||||
});
|
||||
},
|
||||
|
||||
Error: function(up, error) {
|
||||
fileUploadError(error);
|
||||
Error : function (up, error) {
|
||||
fileUploadError.call(uploader, error);
|
||||
}
|
||||
}
|
||||
});
|
||||
@@ -826,26 +812,23 @@ $(document).ready(function() {
|
||||
uploader.init();
|
||||
});
|
||||
|
||||
function attachInsertEvent(el) {
|
||||
$('.insert', el).click(function() {
|
||||
var t = $(this),
|
||||
p = t.parents('li');
|
||||
function attachInsertEvent (el) {
|
||||
$('.insert', el).click(function () {
|
||||
var t = $(this), p = t.parents('li');
|
||||
Typecho.insertFileToEditor(t.text(), p.data('url'), p.data('image'));
|
||||
return false;
|
||||
});
|
||||
}
|
||||
|
||||
function attachDeleteEvent(el) {
|
||||
function attachDeleteEvent (el) {
|
||||
var file = $('a.insert', el).text();
|
||||
$('.delete', el).click(function() {
|
||||
$('.delete', el).click(function () {
|
||||
if (confirm('确认要删除文件 %s 吗?'.replace('%s', file))) {
|
||||
var cid = $(this).parents('li').data('cid');
|
||||
$.post('http://localhost/index.php/action/contents-attachment-edit?_=53e23a1bd0daab03b05d9c23190904a4', {
|
||||
'do': 'delete',
|
||||
'cid': cid
|
||||
},
|
||||
function() {
|
||||
$(el).fadeOut(function() {
|
||||
var name = $(this).parents('li').data('name');
|
||||
$.post('/admin/api/file-delete',
|
||||
{'name' : name},
|
||||
function () {
|
||||
$(el).fadeOut(function () {
|
||||
$(this).remove();
|
||||
updateAttacmentNumber();
|
||||
});
|
||||
@@ -856,7 +839,7 @@ $(document).ready(function() {
|
||||
});
|
||||
}
|
||||
|
||||
$('#file-list li').each(function() {
|
||||
$('#file-list li').each(function () {
|
||||
attachInsertEvent(this);
|
||||
attachDeleteEvent(this);
|
||||
});
|
||||
|
||||
Reference in new issue
Block a user