wjx 1 year ago
parent
commit
b08b855b02
100 changed files with 0 additions and 4024 deletions
  1. 0 0
      public/tinymce/icons/default/icons.min.js
  2. 0 3
      public/tinymce/langs/README.md
  3. 0 21
      public/tinymce/license.txt
  4. 0 3
      public/tinymce/models/dom/model.min.js
  5. 0 3
      public/tinymce/plugins/advlist/plugin.min.js
  6. 0 3
      public/tinymce/plugins/anchor/plugin.min.js
  7. 0 3
      public/tinymce/plugins/autolink/plugin.min.js
  8. 0 3
      public/tinymce/plugins/autoresize/plugin.min.js
  9. 0 3
      public/tinymce/plugins/autosave/plugin.min.js
  10. 0 3
      public/tinymce/plugins/charmap/plugin.min.js
  11. 0 4
      public/tinymce/plugins/code/plugin.min.js
  12. 0 3
      public/tinymce/plugins/codesample/plugin.min.js
  13. 0 3
      public/tinymce/plugins/directionality/plugin.min.js
  14. 0 0
      public/tinymce/plugins/emoticons/js/emojiimages.js
  15. 0 2
      public/tinymce/plugins/emoticons/js/emojiimages.min.js
  16. 0 0
      public/tinymce/plugins/emoticons/js/emojis.js
  17. 0 1
      public/tinymce/plugins/emoticons/js/emojis.min.js
  18. 0 3
      public/tinymce/plugins/emoticons/plugin.min.js
  19. 0 3
      public/tinymce/plugins/fullscreen/plugin.min.js
  20. 0 3
      public/tinymce/plugins/help/plugin.min.js
  21. 0 3
      public/tinymce/plugins/image/plugin.min.js
  22. 0 3
      public/tinymce/plugins/importcss/plugin.min.js
  23. 0 3
      public/tinymce/plugins/insertdatetime/plugin.min.js
  24. 0 3
      public/tinymce/plugins/link/plugin.min.js
  25. 0 3
      public/tinymce/plugins/lists/plugin.min.js
  26. 0 3
      public/tinymce/plugins/media/plugin.min.js
  27. 0 4
      public/tinymce/plugins/nonbreaking/plugin.min.js
  28. 0 4
      public/tinymce/plugins/pagebreak/plugin.min.js
  29. 0 4
      public/tinymce/plugins/preview/plugin.min.js
  30. 0 3
      public/tinymce/plugins/quickbars/plugin.min.js
  31. 0 4
      public/tinymce/plugins/save/plugin.min.js
  32. 0 3
      public/tinymce/plugins/searchreplace/plugin.min.js
  33. 0 3
      public/tinymce/plugins/table/plugin.min.js
  34. 0 3
      public/tinymce/plugins/template/plugin.min.js
  35. 0 4
      public/tinymce/plugins/visualblocks/plugin.min.js
  36. 0 3
      public/tinymce/plugins/visualchars/plugin.min.js
  37. 0 3
      public/tinymce/plugins/wordcount/plugin.min.js
  38. 0 1
      public/tinymce/skins/content/dark/content.min.css
  39. 0 1
      public/tinymce/skins/content/default/content.min.css
  40. 0 1
      public/tinymce/skins/content/document/content.min.css
  41. 0 1
      public/tinymce/skins/content/tinymce-5-dark/content.min.css
  42. 0 1
      public/tinymce/skins/content/tinymce-5/content.min.css
  43. 0 1
      public/tinymce/skins/content/writer/content.min.css
  44. 0 0
      public/tinymce/skins/ui/oxide-dark/content.inline.min.css
  45. 0 0
      public/tinymce/skins/ui/oxide-dark/content.min.css
  46. 0 0
      public/tinymce/skins/ui/oxide-dark/skin.min.css
  47. 0 1
      public/tinymce/skins/ui/oxide-dark/skin.shadowdom.min.css
  48. 0 0
      public/tinymce/skins/ui/oxide/content.inline.min.css
  49. 0 0
      public/tinymce/skins/ui/oxide/content.min.css
  50. 0 0
      public/tinymce/skins/ui/oxide/skin.min.css
  51. 0 1
      public/tinymce/skins/ui/oxide/skin.shadowdom.min.css
  52. 0 0
      public/tinymce/skins/ui/tinymce-5-dark/content.inline.min.css
  53. 0 0
      public/tinymce/skins/ui/tinymce-5-dark/content.min.css
  54. 0 0
      public/tinymce/skins/ui/tinymce-5-dark/skin.min.css
  55. 0 1
      public/tinymce/skins/ui/tinymce-5-dark/skin.shadowdom.min.css
  56. 0 0
      public/tinymce/skins/ui/tinymce-5/content.inline.min.css
  57. 0 0
      public/tinymce/skins/ui/tinymce-5/content.min.css
  58. 0 0
      public/tinymce/skins/ui/tinymce-5/skin.min.css
  59. 0 1
      public/tinymce/skins/ui/tinymce-5/skin.shadowdom.min.css
  60. 0 3
      public/tinymce/themes/silver/theme.min.js
  61. 0 986
      public/tinymce/tinymce.d.ts
  62. 0 3
      public/tinymce/tinymce.min.js
  63. 0 40
      public/ueditor/dialogs/anchor/anchor.html
  64. 0 681
      public/ueditor/dialogs/attachment/attachment.css
  65. 0 60
      public/ueditor/dialogs/attachment/attachment.html
  66. 0 754
      public/ueditor/dialogs/attachment/attachment.js
  67. BIN
      public/ueditor/dialogs/attachment/fileTypeImages/icon_chm.gif
  68. BIN
      public/ueditor/dialogs/attachment/fileTypeImages/icon_default.png
  69. BIN
      public/ueditor/dialogs/attachment/fileTypeImages/icon_doc.gif
  70. BIN
      public/ueditor/dialogs/attachment/fileTypeImages/icon_exe.gif
  71. BIN
      public/ueditor/dialogs/attachment/fileTypeImages/icon_jpg.gif
  72. BIN
      public/ueditor/dialogs/attachment/fileTypeImages/icon_mp3.gif
  73. BIN
      public/ueditor/dialogs/attachment/fileTypeImages/icon_mv.gif
  74. BIN
      public/ueditor/dialogs/attachment/fileTypeImages/icon_pdf.gif
  75. BIN
      public/ueditor/dialogs/attachment/fileTypeImages/icon_ppt.gif
  76. BIN
      public/ueditor/dialogs/attachment/fileTypeImages/icon_psd.gif
  77. BIN
      public/ueditor/dialogs/attachment/fileTypeImages/icon_rar.gif
  78. BIN
      public/ueditor/dialogs/attachment/fileTypeImages/icon_txt.gif
  79. BIN
      public/ueditor/dialogs/attachment/fileTypeImages/icon_xls.gif
  80. BIN
      public/ueditor/dialogs/attachment/images/alignicon.gif
  81. BIN
      public/ueditor/dialogs/attachment/images/alignicon.png
  82. BIN
      public/ueditor/dialogs/attachment/images/bg.png
  83. BIN
      public/ueditor/dialogs/attachment/images/file-icons.gif
  84. BIN
      public/ueditor/dialogs/attachment/images/file-icons.png
  85. BIN
      public/ueditor/dialogs/attachment/images/icons.gif
  86. BIN
      public/ueditor/dialogs/attachment/images/icons.png
  87. BIN
      public/ueditor/dialogs/attachment/images/image.png
  88. BIN
      public/ueditor/dialogs/attachment/images/progress.png
  89. BIN
      public/ueditor/dialogs/attachment/images/success.gif
  90. BIN
      public/ueditor/dialogs/attachment/images/success.png
  91. 0 94
      public/ueditor/dialogs/background/background.css
  92. 0 56
      public/ueditor/dialogs/background/background.html
  93. 0 376
      public/ueditor/dialogs/background/background.js
  94. BIN
      public/ueditor/dialogs/background/images/bg.png
  95. BIN
      public/ueditor/dialogs/background/images/success.png
  96. 0 65
      public/ueditor/dialogs/charts/chart.config.js
  97. 0 165
      public/ueditor/dialogs/charts/charts.css
  98. 0 89
      public/ueditor/dialogs/charts/charts.html
  99. 0 519
      public/ueditor/dialogs/charts/charts.js
  100. BIN
      public/ueditor/dialogs/charts/images/charts0.png

File diff suppressed because it is too large
+ 0 - 0
public/tinymce/icons/default/icons.min.js


+ 0 - 3
public/tinymce/langs/README.md

@@ -1,3 +0,0 @@
-This is where language files should be placed.
-
-Please DO NOT translate these directly use this service: https://www.transifex.com/projects/p/tinymce/

+ 0 - 21
public/tinymce/license.txt

@@ -1,21 +0,0 @@
-MIT License
-
-Copyright (c) 2022 Ephox Corporation DBA Tiny Technologies, Inc.
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.

File diff suppressed because it is too large
+ 0 - 3
public/tinymce/models/dom/model.min.js


File diff suppressed because it is too large
+ 0 - 3
public/tinymce/plugins/advlist/plugin.min.js


File diff suppressed because it is too large
+ 0 - 3
public/tinymce/plugins/anchor/plugin.min.js


File diff suppressed because it is too large
+ 0 - 3
public/tinymce/plugins/autolink/plugin.min.js


File diff suppressed because it is too large
+ 0 - 3
public/tinymce/plugins/autoresize/plugin.min.js


File diff suppressed because it is too large
+ 0 - 3
public/tinymce/plugins/autosave/plugin.min.js


File diff suppressed because it is too large
+ 0 - 3
public/tinymce/plugins/charmap/plugin.min.js


+ 0 - 4
public/tinymce/plugins/code/plugin.min.js

@@ -1,4 +0,0 @@
-/**
- * TinyMCE version 6.1.2 (2022-07-29)
- */
-!function(){"use strict";tinymce.util.Tools.resolve("tinymce.PluginManager").add("code",(e=>((e=>{e.addCommand("mceCodeEditor",(()=>{(e=>{const o=(e=>e.getContent({source_view:!0}))(e);e.windowManager.open({title:"Source Code",size:"large",body:{type:"panel",items:[{type:"textarea",name:"code"}]},buttons:[{type:"cancel",name:"cancel",text:"Cancel"},{type:"submit",name:"save",text:"Save",primary:!0}],initialData:{code:o},onSubmit:o=>{((e,o)=>{e.focus(),e.undoManager.transact((()=>{e.setContent(o)})),e.selection.setCursorLocation(),e.nodeChanged()})(e,o.getData().code),o.close()}})})(e)}))})(e),(e=>{const o=()=>e.execCommand("mceCodeEditor");e.ui.registry.addButton("code",{icon:"sourcecode",tooltip:"Source code",onAction:o}),e.ui.registry.addMenuItem("code",{icon:"sourcecode",text:"Source code",onAction:o})})(e),{})))}();

File diff suppressed because it is too large
+ 0 - 3
public/tinymce/plugins/codesample/plugin.min.js


File diff suppressed because it is too large
+ 0 - 3
public/tinymce/plugins/directionality/plugin.min.js


File diff suppressed because it is too large
+ 0 - 0
public/tinymce/plugins/emoticons/js/emojiimages.js


File diff suppressed because it is too large
+ 0 - 2
public/tinymce/plugins/emoticons/js/emojiimages.min.js


File diff suppressed because it is too large
+ 0 - 0
public/tinymce/plugins/emoticons/js/emojis.js


File diff suppressed because it is too large
+ 0 - 1
public/tinymce/plugins/emoticons/js/emojis.min.js


File diff suppressed because it is too large
+ 0 - 3
public/tinymce/plugins/emoticons/plugin.min.js


File diff suppressed because it is too large
+ 0 - 3
public/tinymce/plugins/fullscreen/plugin.min.js


File diff suppressed because it is too large
+ 0 - 3
public/tinymce/plugins/help/plugin.min.js


File diff suppressed because it is too large
+ 0 - 3
public/tinymce/plugins/image/plugin.min.js


File diff suppressed because it is too large
+ 0 - 3
public/tinymce/plugins/importcss/plugin.min.js


File diff suppressed because it is too large
+ 0 - 3
public/tinymce/plugins/insertdatetime/plugin.min.js


File diff suppressed because it is too large
+ 0 - 3
public/tinymce/plugins/link/plugin.min.js


File diff suppressed because it is too large
+ 0 - 3
public/tinymce/plugins/lists/plugin.min.js


File diff suppressed because it is too large
+ 0 - 3
public/tinymce/plugins/media/plugin.min.js


+ 0 - 4
public/tinymce/plugins/nonbreaking/plugin.min.js

@@ -1,4 +0,0 @@
-/**
- * TinyMCE version 6.1.2 (2022-07-29)
- */
-!function(){"use strict";var n=tinymce.util.Tools.resolve("tinymce.PluginManager");const e=n=>e=>typeof e===n,a=e("boolean"),o=e("number"),t=n=>e=>e.options.get(n),i=t("nonbreaking_force_tab"),r=t("nonbreaking_wrap"),s=(n,e)=>{let a="";for(let o=0;o<e;o++)a+=n;return a},c=(n,e)=>{const a=r(n)||n.plugins.visualchars?`<span class="${(n=>!!n.plugins.visualchars&&n.plugins.visualchars.isEnabled())(n)?"mce-nbsp-wrap mce-nbsp":"mce-nbsp-wrap"}" contenteditable="false">${s("&nbsp;",e)}</span>`:s("&nbsp;",e);n.undoManager.transact((()=>n.insertContent(a)))};var l=tinymce.util.Tools.resolve("tinymce.util.VK");n.add("nonbreaking",(n=>{(n=>{const e=n.options.register;e("nonbreaking_force_tab",{processor:n=>a(n)?{value:n?3:0,valid:!0}:o(n)?{value:n,valid:!0}:{valid:!1,message:"Must be a boolean or number."},default:!1}),e("nonbreaking_wrap",{processor:"boolean",default:!0})})(n),(n=>{n.addCommand("mceNonBreaking",(()=>{c(n,1)}))})(n),(n=>{const e=()=>n.execCommand("mceNonBreaking");n.ui.registry.addButton("nonbreaking",{icon:"non-breaking",tooltip:"Nonbreaking space",onAction:e}),n.ui.registry.addMenuItem("nonbreaking",{icon:"non-breaking",text:"Nonbreaking space",onAction:e})})(n),(n=>{const e=i(n);e>0&&n.on("keydown",(a=>{if(a.keyCode===l.TAB&&!a.isDefaultPrevented()){if(a.shiftKey)return;a.preventDefault(),a.stopImmediatePropagation(),c(n,e)}}))})(n)}))}();

+ 0 - 4
public/tinymce/plugins/pagebreak/plugin.min.js

@@ -1,4 +0,0 @@
-/**
- * TinyMCE version 6.1.2 (2022-07-29)
- */
-!function(){"use strict";var e=tinymce.util.Tools.resolve("tinymce.PluginManager"),a=tinymce.util.Tools.resolve("tinymce.Env");const t=e=>a=>a.options.get(e),r=t("pagebreak_separator"),n=t("pagebreak_split_block"),o="mce-pagebreak",s=e=>{const t=`<img src="${a.transparentSrc}" class="mce-pagebreak" data-mce-resize="false" data-mce-placeholder />`;return e?`<p>${t}</p>`:t};e.add("pagebreak",(e=>{(e=>{const a=e.options.register;a("pagebreak_separator",{processor:"string",default:"\x3c!-- pagebreak --\x3e"}),a("pagebreak_split_block",{processor:"boolean",default:!1})})(e),(e=>{e.addCommand("mcePageBreak",(()=>{e.insertContent(s(n(e)))}))})(e),(e=>{const a=()=>e.execCommand("mcePageBreak");e.ui.registry.addButton("pagebreak",{icon:"page-break",tooltip:"Page break",onAction:a}),e.ui.registry.addMenuItem("pagebreak",{text:"Page break",icon:"page-break",onAction:a})})(e),(e=>{const a=r(e),t=()=>n(e),c=new RegExp(a.replace(/[\?\.\*\[\]\(\)\{\}\+\^\$\:]/g,(e=>"\\"+e)),"gi");e.on("BeforeSetContent",(e=>{e.content=e.content.replace(c,s(t()))})),e.on("PreInit",(()=>{e.serializer.addNodeFilter("img",(r=>{let n,s,c=r.length;for(;c--;)if(n=r[c],s=n.attr("class"),s&&-1!==s.indexOf(o)){const r=n.parent;if(e.schema.getBlockElements()[r.name]&&t()){r.type=3,r.value=a,r.raw=!0,n.remove();continue}n.type=3,n.value=a,n.raw=!0}}))}))})(e),(e=>{e.on("ResolveName",(a=>{"IMG"===a.target.nodeName&&e.dom.hasClass(a.target,o)&&(a.name="pagebreak")}))})(e)}))}();

+ 0 - 4
public/tinymce/plugins/preview/plugin.min.js

@@ -1,4 +0,0 @@
-/**
- * TinyMCE version 6.1.2 (2022-07-29)
- */
-!function(){"use strict";var e=tinymce.util.Tools.resolve("tinymce.PluginManager"),t=tinymce.util.Tools.resolve("tinymce.Env"),o=tinymce.util.Tools.resolve("tinymce.util.Tools");const n=e=>t=>t.options.get(e),i=n("content_style"),s=n("content_css_cors"),c=n("body_class"),r=n("body_id");e.add("preview",(e=>{(e=>{e.addCommand("mcePreview",(()=>{(e=>{const n=(e=>{var n;let l="";const a=e.dom.encode,d=null!==(n=i(e))&&void 0!==n?n:"";l+='<base href="'+a(e.documentBaseURI.getURI())+'">';const m=s(e)?' crossorigin="anonymous"':"";o.each(e.contentCSS,(t=>{l+='<link type="text/css" rel="stylesheet" href="'+a(e.documentBaseURI.toAbsolute(t))+'"'+m+">"})),d&&(l+='<style type="text/css">'+d+"</style>");const y=r(e),u=c(e),v='<script>document.addEventListener && document.addEventListener("click", function(e) {for (var elm = e.target; elm; elm = elm.parentNode) {if (elm.nodeName === "A" && !('+(t.os.isMacOS()||t.os.isiOS()?"e.metaKey":"e.ctrlKey && !e.altKey")+")) {e.preventDefault();}}}, false);<\/script> ",p=e.getBody().dir,w=p?' dir="'+a(p)+'"':"";return"<!DOCTYPE html><html><head>"+l+'</head><body id="'+a(y)+'" class="mce-content-body '+a(u)+'"'+w+">"+e.getContent()+v+"</body></html>"})(e);e.windowManager.open({title:"Preview",size:"large",body:{type:"panel",items:[{name:"preview",type:"iframe",sandboxed:!0,transparent:!1}]},buttons:[{type:"cancel",name:"close",text:"Close",primary:!0}],initialData:{preview:n}}).focus("close")})(e)}))})(e),(e=>{const t=()=>e.execCommand("mcePreview");e.ui.registry.addButton("preview",{icon:"preview",tooltip:"Preview",onAction:t}),e.ui.registry.addMenuItem("preview",{icon:"preview",text:"Preview",onAction:t})})(e)}))}();

File diff suppressed because it is too large
+ 0 - 3
public/tinymce/plugins/quickbars/plugin.min.js


+ 0 - 4
public/tinymce/plugins/save/plugin.min.js

@@ -1,4 +0,0 @@
-/**
- * TinyMCE version 6.1.2 (2022-07-29)
- */
-!function(){"use strict";var e=tinymce.util.Tools.resolve("tinymce.PluginManager");const n=("function",e=>"function"==typeof e);var o=tinymce.util.Tools.resolve("tinymce.dom.DOMUtils"),t=tinymce.util.Tools.resolve("tinymce.util.Tools");const a=e=>n=>n.options.get(e),c=a("save_enablewhendirty"),i=a("save_onsavecallback"),s=a("save_oncancelcallback"),r=(e,n)=>{e.notificationManager.open({text:n,type:"error"})},l=e=>n=>{const o=()=>{n.setEnabled(!c(e)||e.isDirty())};return o(),e.on("NodeChange dirty",o),()=>e.off("NodeChange dirty",o)};e.add("save",(e=>{(e=>{const n=e.options.register;n("save_enablewhendirty",{processor:"boolean",default:!0}),n("save_onsavecallback",{processor:"function"}),n("save_oncancelcallback",{processor:"function"})})(e),(e=>{e.ui.registry.addButton("save",{icon:"save",tooltip:"Save",enabled:!1,onAction:()=>e.execCommand("mceSave"),onSetup:l(e)}),e.ui.registry.addButton("cancel",{icon:"cancel",tooltip:"Cancel",enabled:!1,onAction:()=>e.execCommand("mceCancel"),onSetup:l(e)}),e.addShortcut("Meta+S","","mceSave")})(e),(e=>{e.addCommand("mceSave",(()=>{(e=>{const t=o.DOM.getParent(e.id,"form");if(c(e)&&!e.isDirty())return;e.save();const a=i(e);if(n(a))return a.call(e,e),void e.nodeChanged();t?(e.setDirty(!1),t.onsubmit&&!t.onsubmit()||("function"==typeof t.submit?t.submit():r(e,"Error: Form submit field collision.")),e.nodeChanged()):r(e,"Error: No form element found.")})(e)})),e.addCommand("mceCancel",(()=>{(e=>{const o=t.trim(e.startContent),a=s(e);n(a)?a.call(e,e):e.resetContent(o)})(e)}))})(e)}))}();

File diff suppressed because it is too large
+ 0 - 3
public/tinymce/plugins/searchreplace/plugin.min.js


File diff suppressed because it is too large
+ 0 - 3
public/tinymce/plugins/table/plugin.min.js


File diff suppressed because it is too large
+ 0 - 3
public/tinymce/plugins/template/plugin.min.js


+ 0 - 4
public/tinymce/plugins/visualblocks/plugin.min.js

@@ -1,4 +0,0 @@
-/**
- * TinyMCE version 6.1.2 (2022-07-29)
- */
-!function(){"use strict";var t=tinymce.util.Tools.resolve("tinymce.PluginManager");const s=(t,s,o)=>{t.dom.toggleClass(t.getBody(),"mce-visualblocks"),o.set(!o.get()),((t,s)=>{t.dispatch("VisualBlocks",{state:s})})(t,o.get())},o=("visualblocks_default_state",t=>t.options.get("visualblocks_default_state"));const e=(t,s)=>o=>{o.setActive(s.get());const e=t=>o.setActive(t.state);return t.on("VisualBlocks",e),()=>t.off("VisualBlocks",e)};t.add("visualblocks",((t,l)=>{(t=>{(0,t.options.register)("visualblocks_default_state",{processor:"boolean",default:!1})})(t);const a=(t=>{let s=!1;return{get:()=>s,set:t=>{s=t}}})();((t,o,e)=>{t.addCommand("mceVisualBlocks",(()=>{s(t,0,e)}))})(t,0,a),((t,s)=>{const o=()=>t.execCommand("mceVisualBlocks");t.ui.registry.addToggleButton("visualblocks",{icon:"visualblocks",tooltip:"Show blocks",onAction:o,onSetup:e(t,s)}),t.ui.registry.addToggleMenuItem("visualblocks",{text:"Show blocks",icon:"visualblocks",onAction:o,onSetup:e(t,s)})})(t,a),((t,e,l)=>{t.on("PreviewFormats AfterPreviewFormats",(s=>{l.get()&&t.dom.toggleClass(t.getBody(),"mce-visualblocks","afterpreviewformats"===s.type)})),t.on("init",(()=>{o(t)&&s(t,0,l)}))})(t,0,a)}))}();

File diff suppressed because it is too large
+ 0 - 3
public/tinymce/plugins/visualchars/plugin.min.js


File diff suppressed because it is too large
+ 0 - 3
public/tinymce/plugins/wordcount/plugin.min.js


+ 0 - 1
public/tinymce/skins/content/dark/content.min.css

@@ -1 +0,0 @@
-body{background-color:#222f3e;color:#fff;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,'Open Sans','Helvetica Neue',sans-serif;line-height:1.4;margin:1rem}a{color:#4099ff}table{border-collapse:collapse}table:not([cellpadding]) td,table:not([cellpadding]) th{padding:.4rem}table[border]:not([border="0"]):not([style*=border-width]) td,table[border]:not([border="0"]):not([style*=border-width]) th{border-width:1px}table[border]:not([border="0"]):not([style*=border-style]) td,table[border]:not([border="0"]):not([style*=border-style]) th{border-style:solid}table[border]:not([border="0"]):not([style*=border-color]) td,table[border]:not([border="0"]):not([style*=border-color]) th{border-color:#6d737b}figure{display:table;margin:1rem auto}figure figcaption{color:#8a8f97;display:block;margin-top:.25rem;text-align:center}hr{border-color:#6d737b;border-style:solid;border-width:1px 0 0 0}code{background-color:#6d737b;border-radius:3px;padding:.1rem .2rem}.mce-content-body:not([dir=rtl]) blockquote{border-left:2px solid #6d737b;margin-left:1.5rem;padding-left:1rem}.mce-content-body[dir=rtl] blockquote{border-right:2px solid #6d737b;margin-right:1.5rem;padding-right:1rem}

+ 0 - 1
public/tinymce/skins/content/default/content.min.css

@@ -1 +0,0 @@
-body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,'Open Sans','Helvetica Neue',sans-serif;line-height:1.4;margin:1rem}table{border-collapse:collapse}table:not([cellpadding]) td,table:not([cellpadding]) th{padding:.4rem}table[border]:not([border="0"]):not([style*=border-width]) td,table[border]:not([border="0"]):not([style*=border-width]) th{border-width:1px}table[border]:not([border="0"]):not([style*=border-style]) td,table[border]:not([border="0"]):not([style*=border-style]) th{border-style:solid}table[border]:not([border="0"]):not([style*=border-color]) td,table[border]:not([border="0"]):not([style*=border-color]) th{border-color:#ccc}figure{display:table;margin:1rem auto}figure figcaption{color:#999;display:block;margin-top:.25rem;text-align:center}hr{border-color:#ccc;border-style:solid;border-width:1px 0 0 0}code{background-color:#e8e8e8;border-radius:3px;padding:.1rem .2rem}.mce-content-body:not([dir=rtl]) blockquote{border-left:2px solid #ccc;margin-left:1.5rem;padding-left:1rem}.mce-content-body[dir=rtl] blockquote{border-right:2px solid #ccc;margin-right:1.5rem;padding-right:1rem}

+ 0 - 1
public/tinymce/skins/content/document/content.min.css

@@ -1 +0,0 @@
-@media screen{html{background:#f4f4f4;min-height:100%}}body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,'Open Sans','Helvetica Neue',sans-serif}@media screen{body{background-color:#fff;box-shadow:0 0 4px rgba(0,0,0,.15);box-sizing:border-box;margin:1rem auto 0;max-width:820px;min-height:calc(100vh - 1rem);padding:4rem 6rem 6rem 6rem}}table{border-collapse:collapse}table:not([cellpadding]) td,table:not([cellpadding]) th{padding:.4rem}table[border]:not([border="0"]):not([style*=border-width]) td,table[border]:not([border="0"]):not([style*=border-width]) th{border-width:1px}table[border]:not([border="0"]):not([style*=border-style]) td,table[border]:not([border="0"]):not([style*=border-style]) th{border-style:solid}table[border]:not([border="0"]):not([style*=border-color]) td,table[border]:not([border="0"]):not([style*=border-color]) th{border-color:#ccc}figure figcaption{color:#999;margin-top:.25rem;text-align:center}hr{border-color:#ccc;border-style:solid;border-width:1px 0 0 0}.mce-content-body:not([dir=rtl]) blockquote{border-left:2px solid #ccc;margin-left:1.5rem;padding-left:1rem}.mce-content-body[dir=rtl] blockquote{border-right:2px solid #ccc;margin-right:1.5rem;padding-right:1rem}

+ 0 - 1
public/tinymce/skins/content/tinymce-5-dark/content.min.css

@@ -1 +0,0 @@
-body{background-color:#2f3742;color:#dfe0e4;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,'Open Sans','Helvetica Neue',sans-serif;line-height:1.4;margin:1rem}a{color:#4099ff}table{border-collapse:collapse}table:not([cellpadding]) td,table:not([cellpadding]) th{padding:.4rem}table[border]:not([border="0"]):not([style*=border-width]) td,table[border]:not([border="0"]):not([style*=border-width]) th{border-width:1px}table[border]:not([border="0"]):not([style*=border-style]) td,table[border]:not([border="0"]):not([style*=border-style]) th{border-style:solid}table[border]:not([border="0"]):not([style*=border-color]) td,table[border]:not([border="0"]):not([style*=border-color]) th{border-color:#6d737b}figure{display:table;margin:1rem auto}figure figcaption{color:#8a8f97;display:block;margin-top:.25rem;text-align:center}hr{border-color:#6d737b;border-style:solid;border-width:1px 0 0 0}code{background-color:#6d737b;border-radius:3px;padding:.1rem .2rem}.mce-content-body:not([dir=rtl]) blockquote{border-left:2px solid #6d737b;margin-left:1.5rem;padding-left:1rem}.mce-content-body[dir=rtl] blockquote{border-right:2px solid #6d737b;margin-right:1.5rem;padding-right:1rem}

+ 0 - 1
public/tinymce/skins/content/tinymce-5/content.min.css

@@ -1 +0,0 @@
-body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,'Open Sans','Helvetica Neue',sans-serif;line-height:1.4;margin:1rem}table{border-collapse:collapse}table:not([cellpadding]) td,table:not([cellpadding]) th{padding:.4rem}table[border]:not([border="0"]):not([style*=border-width]) td,table[border]:not([border="0"]):not([style*=border-width]) th{border-width:1px}table[border]:not([border="0"]):not([style*=border-style]) td,table[border]:not([border="0"]):not([style*=border-style]) th{border-style:solid}table[border]:not([border="0"]):not([style*=border-color]) td,table[border]:not([border="0"]):not([style*=border-color]) th{border-color:#ccc}figure{display:table;margin:1rem auto}figure figcaption{color:#999;display:block;margin-top:.25rem;text-align:center}hr{border-color:#ccc;border-style:solid;border-width:1px 0 0 0}code{background-color:#e8e8e8;border-radius:3px;padding:.1rem .2rem}.mce-content-body:not([dir=rtl]) blockquote{border-left:2px solid #ccc;margin-left:1.5rem;padding-left:1rem}.mce-content-body[dir=rtl] blockquote{border-right:2px solid #ccc;margin-right:1.5rem;padding-right:1rem}

+ 0 - 1
public/tinymce/skins/content/writer/content.min.css

@@ -1 +0,0 @@
-body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,'Open Sans','Helvetica Neue',sans-serif;line-height:1.4;margin:1rem auto;max-width:900px}table{border-collapse:collapse}table:not([cellpadding]) td,table:not([cellpadding]) th{padding:.4rem}table[border]:not([border="0"]):not([style*=border-width]) td,table[border]:not([border="0"]):not([style*=border-width]) th{border-width:1px}table[border]:not([border="0"]):not([style*=border-style]) td,table[border]:not([border="0"]):not([style*=border-style]) th{border-style:solid}table[border]:not([border="0"]):not([style*=border-color]) td,table[border]:not([border="0"]):not([style*=border-color]) th{border-color:#ccc}figure{display:table;margin:1rem auto}figure figcaption{color:#999;display:block;margin-top:.25rem;text-align:center}hr{border-color:#ccc;border-style:solid;border-width:1px 0 0 0}code{background-color:#e8e8e8;border-radius:3px;padding:.1rem .2rem}.mce-content-body:not([dir=rtl]) blockquote{border-left:2px solid #ccc;margin-left:1.5rem;padding-left:1rem}.mce-content-body[dir=rtl] blockquote{border-right:2px solid #ccc;margin-right:1.5rem;padding-right:1rem}

File diff suppressed because it is too large
+ 0 - 0
public/tinymce/skins/ui/oxide-dark/content.inline.min.css


File diff suppressed because it is too large
+ 0 - 0
public/tinymce/skins/ui/oxide-dark/content.min.css


File diff suppressed because it is too large
+ 0 - 0
public/tinymce/skins/ui/oxide-dark/skin.min.css


+ 0 - 1
public/tinymce/skins/ui/oxide-dark/skin.shadowdom.min.css

@@ -1 +0,0 @@
-body.tox-dialog__disable-scroll{overflow:hidden}.tox-fullscreen{border:0;height:100%;margin:0;overflow:hidden;overscroll-behavior:none;padding:0;touch-action:pinch-zoom;width:100%}.tox.tox-tinymce.tox-fullscreen .tox-statusbar__resize-handle{display:none}.tox-shadowhost.tox-fullscreen,.tox.tox-tinymce.tox-fullscreen{left:0;position:fixed;top:0;z-index:1200}.tox.tox-tinymce.tox-fullscreen{background-color:transparent}.tox-fullscreen .tox.tox-tinymce-aux,.tox-fullscreen~.tox.tox-tinymce-aux{z-index:1201}

File diff suppressed because it is too large
+ 0 - 0
public/tinymce/skins/ui/oxide/content.inline.min.css


File diff suppressed because it is too large
+ 0 - 0
public/tinymce/skins/ui/oxide/content.min.css


File diff suppressed because it is too large
+ 0 - 0
public/tinymce/skins/ui/oxide/skin.min.css


+ 0 - 1
public/tinymce/skins/ui/oxide/skin.shadowdom.min.css

@@ -1 +0,0 @@
-body.tox-dialog__disable-scroll{overflow:hidden}.tox-fullscreen{border:0;height:100%;margin:0;overflow:hidden;overscroll-behavior:none;padding:0;touch-action:pinch-zoom;width:100%}.tox.tox-tinymce.tox-fullscreen .tox-statusbar__resize-handle{display:none}.tox-shadowhost.tox-fullscreen,.tox.tox-tinymce.tox-fullscreen{left:0;position:fixed;top:0;z-index:1200}.tox.tox-tinymce.tox-fullscreen{background-color:transparent}.tox-fullscreen .tox.tox-tinymce-aux,.tox-fullscreen~.tox.tox-tinymce-aux{z-index:1201}

File diff suppressed because it is too large
+ 0 - 0
public/tinymce/skins/ui/tinymce-5-dark/content.inline.min.css


File diff suppressed because it is too large
+ 0 - 0
public/tinymce/skins/ui/tinymce-5-dark/content.min.css


File diff suppressed because it is too large
+ 0 - 0
public/tinymce/skins/ui/tinymce-5-dark/skin.min.css


+ 0 - 1
public/tinymce/skins/ui/tinymce-5-dark/skin.shadowdom.min.css

@@ -1 +0,0 @@
-body.tox-dialog__disable-scroll{overflow:hidden}.tox-fullscreen{border:0;height:100%;margin:0;overflow:hidden;overscroll-behavior:none;padding:0;touch-action:pinch-zoom;width:100%}.tox.tox-tinymce.tox-fullscreen .tox-statusbar__resize-handle{display:none}.tox-shadowhost.tox-fullscreen,.tox.tox-tinymce.tox-fullscreen{left:0;position:fixed;top:0;z-index:1200}.tox.tox-tinymce.tox-fullscreen{background-color:transparent}.tox-fullscreen .tox.tox-tinymce-aux,.tox-fullscreen~.tox.tox-tinymce-aux{z-index:1201}

File diff suppressed because it is too large
+ 0 - 0
public/tinymce/skins/ui/tinymce-5/content.inline.min.css


File diff suppressed because it is too large
+ 0 - 0
public/tinymce/skins/ui/tinymce-5/content.min.css


File diff suppressed because it is too large
+ 0 - 0
public/tinymce/skins/ui/tinymce-5/skin.min.css


+ 0 - 1
public/tinymce/skins/ui/tinymce-5/skin.shadowdom.min.css

@@ -1 +0,0 @@
-body.tox-dialog__disable-scroll{overflow:hidden}.tox-fullscreen{border:0;height:100%;margin:0;overflow:hidden;overscroll-behavior:none;padding:0;touch-action:pinch-zoom;width:100%}.tox.tox-tinymce.tox-fullscreen .tox-statusbar__resize-handle{display:none}.tox-shadowhost.tox-fullscreen,.tox.tox-tinymce.tox-fullscreen{left:0;position:fixed;top:0;z-index:1200}.tox.tox-tinymce.tox-fullscreen{background-color:transparent}.tox-fullscreen .tox.tox-tinymce-aux,.tox-fullscreen~.tox.tox-tinymce-aux{z-index:1201}

File diff suppressed because it is too large
+ 0 - 3
public/tinymce/themes/silver/theme.min.js


File diff suppressed because it is too large
+ 0 - 986
public/tinymce/tinymce.d.ts


File diff suppressed because it is too large
+ 0 - 3
public/tinymce/tinymce.min.js


+ 0 - 40
public/ueditor/dialogs/anchor/anchor.html

@@ -1,40 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-    "http://www.w3.org/TR/html4/loose.dtd">
-<html>
-    <head>
-        <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
-        <title></title>
-        <style type="text/css">
-            *{color: #838383;margin: 0;padding: 0}
-            html,body {font-size: 12px;overflow: hidden; }
-            .content{padding:5px 0 0 15px;}
-            input{width:210px;height:21px;line-height:21px;margin-left: 4px;}
-        </style>
-    </head>
-    <body>
-        <div class="content">
-            <span><var id="lang_input_anchorName"></var></span><input id="anchorName"  value="" />
-        </div>
-        <script type="text/javascript" src="../internal.js"></script>
-        <script type="text/javascript">
-            var anchorInput = $G('anchorName'),
-                node = editor.selection.getRange().getClosedNode();
-            if(node && node.tagName == 'IMG' && (node = node.getAttribute('anchorname'))){
-                anchorInput.value = node;
-            }
-            anchorInput.onkeydown = function(evt){
-                evt = evt || window.event;
-                if(evt.keyCode == 13){
-                    editor.execCommand('anchor', anchorInput.value);
-                    dialog.close();
-                    domUtils.preventDefault(evt)
-                }
-            };
-            dialog.onok = function (){
-                editor.execCommand('anchor', anchorInput.value);
-                dialog.close();
-            };
-            $focus(anchorInput);
-        </script>
-    </body>
-</html>

+ 0 - 681
public/ueditor/dialogs/attachment/attachment.css

@@ -1,681 +0,0 @@
-@charset "utf-8";
-/* dialog样式 */
-.wrapper {
-    zoom: 1;
-    width: 630px;
-    *width: 626px;
-    height: 380px;
-    margin: 0 auto;
-    padding: 10px;
-    position: relative;
-    font-family: sans-serif;
-}
-
-/*tab样式框大小*/
-.tabhead {
-    float:left;
-}
-.tabbody {
-    width: 100%;
-    height: 346px;
-    position: relative;
-    clear: both;
-}
-
-.tabbody .panel {
-    position: absolute;
-    width: 0;
-    height: 0;
-    background: #fff;
-    overflow: hidden;
-    display: none;
-}
-
-.tabbody .panel.focus {
-    width: 100%;
-    height: 346px;
-    display: block;
-}
-
-/* 上传附件 */
-.tabbody #upload.panel {
-    width: 0;
-    height: 0;
-    overflow: hidden;
-    position: absolute !important;
-    clip: rect(1px, 1px, 1px, 1px);
-    background: #fff;
-    display: block;
-}
-
-.tabbody #upload.panel.focus {
-    width: 100%;
-    height: 346px;
-    display: block;
-    clip: auto;
-}
-
-#upload .queueList {
-    margin: 0;
-    width: 100%;
-    height: 100%;
-    position: absolute;
-    overflow: hidden;
-}
-
-#upload p {
-    margin: 0;
-}
-
-.element-invisible {
-    width: 0 !important;
-    height: 0 !important;
-    border: 0;
-    padding: 0;
-    margin: 0;
-    overflow: hidden;
-    position: absolute !important;
-    clip: rect(1px, 1px, 1px, 1px);
-}
-
-#upload .placeholder {
-    margin: 10px;
-    border: 2px dashed #e6e6e6;
-    *border: 0px dashed #e6e6e6;
-    height: 172px;
-    padding-top: 150px;
-    text-align: center;
-    background: url(./images/image.png) center 70px no-repeat;
-    color: #cccccc;
-    font-size: 18px;
-    position: relative;
-    top:0;
-    *top: 10px;
-}
-
-#upload .placeholder .webuploader-pick {
-    font-size: 18px;
-    background: #00b7ee;
-    border-radius: 3px;
-    line-height: 44px;
-    padding: 0 30px;
-    *width: 120px;
-    color: #fff;
-    display: inline-block;
-    margin: 0 auto 20px auto;
-    cursor: pointer;
-    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1);
-}
-
-#upload .placeholder .webuploader-pick-hover {
-    background: #00a2d4;
-}
-
-
-#filePickerContainer {
-    text-align: center;
-}
-
-#upload .placeholder .flashTip {
-    color: #666666;
-    font-size: 12px;
-    position: absolute;
-    width: 100%;
-    text-align: center;
-    bottom: 20px;
-}
-
-#upload .placeholder .flashTip a {
-    color: #0785d1;
-    text-decoration: none;
-}
-
-#upload .placeholder .flashTip a:hover {
-    text-decoration: underline;
-}
-
-#upload .placeholder.webuploader-dnd-over {
-    border-color: #999999;
-}
-
-#upload .filelist {
-    list-style: none;
-    margin: 0;
-    padding: 0;
-    overflow-x: hidden;
-    overflow-y: auto;
-    position: relative;
-    height: 300px;
-}
-
-#upload .filelist:after {
-    content: '';
-    display: block;
-    width: 0;
-    height: 0;
-    overflow: hidden;
-    clear: both;
-}
-
-#upload .filelist li {
-    width: 113px;
-    height: 113px;
-    background: url(./images/bg.png);
-    text-align: center;
-    margin: 9px 0 0 9px;
-    *margin: 6px 0 0 6px;
-    position: relative;
-    display: block;
-    float: left;
-    overflow: hidden;
-    font-size: 12px;
-}
-
-#upload .filelist li p.log {
-    position: relative;
-    top: -45px;
-}
-
-#upload .filelist li p.title {
-    position: absolute;
-    top: 0;
-    left: 0;
-    width: 100%;
-    overflow: hidden;
-    white-space: nowrap;
-    text-overflow: ellipsis;
-    top: 5px;
-    text-indent: 5px;
-    text-align: left;
-}
-
-#upload .filelist li p.progress {
-    position: absolute;
-    width: 100%;
-    bottom: 0;
-    left: 0;
-    height: 8px;
-    overflow: hidden;
-    z-index: 50;
-    margin: 0;
-    border-radius: 0;
-    background: none;
-    -webkit-box-shadow: 0 0 0;
-}
-
-#upload .filelist li p.progress span {
-    display: none;
-    overflow: hidden;
-    width: 0;
-    height: 100%;
-    background: #1483d8 url(./images/progress.png) repeat-x;
-
-    -webit-transition: width 200ms linear;
-    -moz-transition: width 200ms linear;
-    -o-transition: width 200ms linear;
-    -ms-transition: width 200ms linear;
-    transition: width 200ms linear;
-
-    -webkit-animation: progressmove 2s linear infinite;
-    -moz-animation: progressmove 2s linear infinite;
-    -o-animation: progressmove 2s linear infinite;
-    -ms-animation: progressmove 2s linear infinite;
-    animation: progressmove 2s linear infinite;
-
-    -webkit-transform: translateZ(0);
-}
-
-@-webkit-keyframes progressmove {
-    0% {
-        background-position: 0 0;
-    }
-    100% {
-        background-position: 17px 0;
-    }
-}
-
-@-moz-keyframes progressmove {
-    0% {
-        background-position: 0 0;
-    }
-    100% {
-        background-position: 17px 0;
-    }
-}
-
-@keyframes progressmove {
-    0% {
-        background-position: 0 0;
-    }
-    100% {
-        background-position: 17px 0;
-    }
-}
-
-#upload .filelist li p.imgWrap {
-    position: relative;
-    z-index: 2;
-    line-height: 113px;
-    vertical-align: middle;
-    overflow: hidden;
-    width: 113px;
-    height: 113px;
-
-    -webkit-transform-origin: 50% 50%;
-    -moz-transform-origin: 50% 50%;
-    -o-transform-origin: 50% 50%;
-    -ms-transform-origin: 50% 50%;
-    transform-origin: 50% 50%;
-
-    -webit-transition: 200ms ease-out;
-    -moz-transition: 200ms ease-out;
-    -o-transition: 200ms ease-out;
-    -ms-transition: 200ms ease-out;
-    transition: 200ms ease-out;
-}
-#upload .filelist li p.imgWrap.notimage {
-    margin-top: 0;
-    width: 111px;
-    height: 111px;
-    border: 1px #eeeeee solid;
-}
-#upload .filelist li p.imgWrap.notimage i.file-preview {
-    margin-top: 15px;
-}
-
-#upload .filelist li img {
-    width: 100%;
-}
-
-#upload .filelist li p.error {
-    background: #f43838;
-    color: #fff;
-    position: absolute;
-    bottom: 0;
-    left: 0;
-    height: 28px;
-    line-height: 28px;
-    width: 100%;
-    z-index: 100;
-    display:none;
-}
-
-#upload .filelist li .success {
-    display: block;
-    position: absolute;
-    left: 0;
-    bottom: 0;
-    height: 40px;
-    width: 100%;
-    z-index: 200;
-    background: url(./images/success.png) no-repeat right bottom;
-    background-image: url(./images/success.gif) \9;
-}
-
-#upload .filelist li.filePickerBlock {
-    width: 113px;
-    height: 113px;
-    background: url(./images/image.png) no-repeat center 12px;
-    border: 1px solid #eeeeee;
-    border-radius: 0;
-}
-#upload .filelist li.filePickerBlock div.webuploader-pick  {
-    width: 100%;
-    height: 100%;
-    margin: 0;
-    padding: 0;
-    opacity: 0;
-    background: none;
-    font-size: 0;
-}
-
-#upload .filelist div.file-panel {
-    position: absolute;
-    height: 0;
-    filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr='#80000000', endColorstr='#80000000') \0;
-    background: rgba(0, 0, 0, 0.5);
-    width: 100%;
-    top: 0;
-    left: 0;
-    overflow: hidden;
-    z-index: 300;
-}
-
-#upload .filelist div.file-panel span {
-    width: 24px;
-    height: 24px;
-    display: inline;
-    float: right;
-    text-indent: -9999px;
-    overflow: hidden;
-    background: url(./images/icons.png) no-repeat;
-    background: url(./images/icons.gif) no-repeat \9;
-    margin: 5px 1px 1px;
-    cursor: pointer;
-    -webkit-tap-highlight-color: rgba(0,0,0,0);
-    -webkit-user-select: none;
-    -moz-user-select: none;
-    -ms-user-select: none;
-    user-select: none;
-}
-
-#upload .filelist div.file-panel span.rotateLeft {
-    display:none;
-    background-position: 0 -24px;
-}
-
-#upload .filelist div.file-panel span.rotateLeft:hover {
-    background-position: 0 0;
-}
-
-#upload .filelist div.file-panel span.rotateRight {
-    display:none;
-    background-position: -24px -24px;
-}
-
-#upload .filelist div.file-panel span.rotateRight:hover {
-    background-position: -24px 0;
-}
-
-#upload .filelist div.file-panel span.cancel {
-    background-position: -48px -24px;
-}
-
-#upload .filelist div.file-panel span.cancel:hover {
-    background-position: -48px 0;
-}
-
-#upload .statusBar {
-    height: 45px;
-    border-bottom: 1px solid #dadada;
-    margin: 0 10px;
-    padding: 0;
-    line-height: 45px;
-    vertical-align: middle;
-    position: relative;
-}
-
-#upload .statusBar .progress {
-    border: 1px solid #1483d8;
-    width: 198px;
-    background: #fff;
-    height: 18px;
-    position: absolute;
-    top: 12px;
-    display: none;
-    text-align: center;
-    line-height: 18px;
-    color: #6dbfff;
-    margin: 0 10px 0 0;
-}
-#upload .statusBar .progress span.percentage {
-    width: 0;
-    height: 100%;
-    left: 0;
-    top: 0;
-    background: #1483d8;
-    position: absolute;
-}
-#upload .statusBar .progress span.text {
-    position: relative;
-    z-index: 10;
-}
-
-#upload .statusBar .info {
-    display: inline-block;
-    font-size: 14px;
-    color: #666666;
-}
-
-#upload .statusBar .btns {
-    position: absolute;
-    top: 7px;
-    right: 0;
-    line-height: 30px;
-}
-
-#filePickerBtn {
-    display: inline-block;
-    float: left;
-}
-#upload .statusBar .btns .webuploader-pick,
-#upload .statusBar .btns .uploadBtn,
-#upload .statusBar .btns .uploadBtn.state-uploading,
-#upload .statusBar .btns .uploadBtn.state-paused {
-    background: #ffffff;
-    border: 1px solid #cfcfcf;
-    color: #565656;
-    padding: 0 18px;
-    display: inline-block;
-    border-radius: 3px;
-    margin-left: 10px;
-    cursor: pointer;
-    font-size: 14px;
-    float: left;
-    -webkit-user-select: none;
-    -moz-user-select: none;
-    -ms-user-select: none;
-    user-select: none;
-}
-#upload .statusBar .btns .webuploader-pick-hover,
-#upload .statusBar .btns .uploadBtn:hover,
-#upload .statusBar .btns .uploadBtn.state-uploading:hover,
-#upload .statusBar .btns .uploadBtn.state-paused:hover {
-    background: #f0f0f0;
-}
-
-#upload .statusBar .btns .uploadBtn,
-#upload .statusBar .btns .uploadBtn.state-paused{
-    background: #00b7ee;
-    color: #fff;
-    border-color: transparent;
-}
-#upload .statusBar .btns .uploadBtn:hover,
-#upload .statusBar .btns .uploadBtn.state-paused:hover{
-    background: #00a2d4;
-}
-
-#upload .statusBar .btns .uploadBtn.disabled {
-    pointer-events: none;
-    filter:alpha(opacity=60);
-    -moz-opacity:0.6;
-    -khtml-opacity: 0.6;
-    opacity: 0.6;
-}
-
-
-
-/* 图片管理样式 */
-#online {
-    width: 100%;
-    height: 336px;
-    padding: 10px 0 0 0;
-}
-#online #fileList{
-    width: 100%;
-    height: 100%;
-    overflow-x: hidden;
-    overflow-y: auto;
-    position: relative;
-}
-#online ul {
-    display: block;
-    list-style: none;
-    margin: 0;
-    padding: 0;
-}
-#online li {
-    float: left;
-    display: block;
-    list-style: none;
-    padding: 0;
-    width: 113px;
-    height: 113px;
-    margin: 0 0 9px 9px;
-    *margin: 0 0 6px 6px;
-    background-color: #eee;
-    overflow: hidden;
-    cursor: pointer;
-    position: relative;
-}
-#online li.clearFloat {
-    float: none;
-    clear: both;
-    display: block;
-    width:0;
-    height:0;
-    margin: 0;
-    padding: 0;
-}
-#online li img {
-    cursor: pointer;
-}
-#online li div.file-wrapper {
-    cursor: pointer;
-    position: absolute;
-    display: block;
-    width: 111px;
-    height: 111px;
-    border: 1px solid #eee;
-    background: url("./images/bg.png") repeat;
-}
-#online li div span.file-title{
-    display: block;
-    padding: 0 3px;
-    margin: 3px 0 0 0;
-    font-size: 12px;
-    height: 13px;
-    color: #555555;
-    text-align: center;
-    width: 107px;
-    white-space: nowrap;
-    word-break: break-all;
-    overflow: hidden;
-    text-overflow: ellipsis;
-}
-#online li .icon {
-    cursor: pointer;
-    width: 113px;
-    height: 113px;
-    position: absolute;
-    top: 0;
-    left: 0;
-    z-index: 2;
-    border: 0;
-    background-repeat: no-repeat;
-}
-#online li .icon:hover {
-    width: 107px;
-    height: 107px;
-    border: 3px solid #1094fa;
-}
-#online li.selected .icon {
-    background-image: url(images/success.png);
-    background-image: url(images/success.gif) \9;
-    background-position: 75px 75px;
-}
-#online li.selected .icon:hover {
-    width: 107px;
-    height: 107px;
-    border: 3px solid #1094fa;
-    background-position: 72px 72px;
-}
-
-
-/* 在线文件的文件预览图标 */
-i.file-preview {
-    display: block;
-    margin: 10px auto;
-    width: 70px;
-    height: 70px;
-    background-image: url("./images/file-icons.png");
-    background-image: url("./images/file-icons.gif") \9;
-    background-position: -140px center;
-    background-repeat: no-repeat;
-}
-i.file-preview.file-type-dir{
-    background-position: 0 center;
-}
-i.file-preview.file-type-file{
-    background-position: -140px center;
-}
-i.file-preview.file-type-filelist{
-    background-position: -210px center;
-}
-i.file-preview.file-type-zip,
-i.file-preview.file-type-rar,
-i.file-preview.file-type-7z,
-i.file-preview.file-type-tar,
-i.file-preview.file-type-gz,
-i.file-preview.file-type-bz2{
-    background-position: -280px center;
-}
-i.file-preview.file-type-xls,
-i.file-preview.file-type-xlsx{
-    background-position: -350px center;
-}
-i.file-preview.file-type-doc,
-i.file-preview.file-type-docx{
-    background-position: -420px center;
-}
-i.file-preview.file-type-ppt,
-i.file-preview.file-type-pptx{
-    background-position: -490px center;
-}
-i.file-preview.file-type-vsd{
-    background-position: -560px center;
-}
-i.file-preview.file-type-pdf{
-    background-position: -630px center;
-}
-i.file-preview.file-type-txt,
-i.file-preview.file-type-md,
-i.file-preview.file-type-json,
-i.file-preview.file-type-htm,
-i.file-preview.file-type-xml,
-i.file-preview.file-type-html,
-i.file-preview.file-type-js,
-i.file-preview.file-type-css,
-i.file-preview.file-type-php,
-i.file-preview.file-type-jsp,
-i.file-preview.file-type-asp{
-    background-position: -700px center;
-}
-i.file-preview.file-type-apk{
-    background-position: -770px center;
-}
-i.file-preview.file-type-exe{
-    background-position: -840px center;
-}
-i.file-preview.file-type-ipa{
-    background-position: -910px center;
-}
-i.file-preview.file-type-mp4,
-i.file-preview.file-type-swf,
-i.file-preview.file-type-mkv,
-i.file-preview.file-type-avi,
-i.file-preview.file-type-flv,
-i.file-preview.file-type-mov,
-i.file-preview.file-type-mpg,
-i.file-preview.file-type-mpeg,
-i.file-preview.file-type-ogv,
-i.file-preview.file-type-webm,
-i.file-preview.file-type-rm,
-i.file-preview.file-type-rmvb{
-    background-position: -980px center;
-}
-i.file-preview.file-type-ogg,
-i.file-preview.file-type-wav,
-i.file-preview.file-type-wmv,
-i.file-preview.file-type-mid,
-i.file-preview.file-type-mp3{
-    background-position: -1050px center;
-}
-i.file-preview.file-type-jpg,
-i.file-preview.file-type-jpeg,
-i.file-preview.file-type-gif,
-i.file-preview.file-type-bmp,
-i.file-preview.file-type-png,
-i.file-preview.file-type-psd{
-    background-position: -140px center;
-}

+ 0 - 60
public/ueditor/dialogs/attachment/attachment.html

@@ -1,60 +0,0 @@
-<!doctype html>
-<html>
-<head>
-    <meta charset="UTF-8">
-    <title>ueditor图片对话框</title>
-    <script type="text/javascript" src="../internal.js"></script>
-
-    <!-- jquery -->
-    <script type="text/javascript" src="../../third-party/jquery-1.10.2.min.js"></script>
-
-    <!-- webuploader -->
-    <script src="../../third-party/webuploader/webuploader.min.js"></script>
-    <link rel="stylesheet" type="text/css" href="../../third-party/webuploader/webuploader.css">
-
-    <!-- attachment dialog -->
-    <link rel="stylesheet" href="attachment.css" type="text/css" />
-</head>
-<body>
-
-    <div class="wrapper">
-        <div id="tabhead" class="tabhead">
-            <span class="tab focus" data-content-id="upload"><var id="lang_tab_upload"></var></span>
-            <span class="tab" data-content-id="online"><var id="lang_tab_online"></var></span>
-        </div>
-        <div id="tabbody" class="tabbody">
-            <!-- 上传图片 -->
-            <div id="upload" class="panel focus">
-                <div id="queueList" class="queueList">
-                    <div class="statusBar element-invisible">
-                        <div class="progress">
-                            <span class="text">0%</span>
-                            <span class="percentage"></span>
-                        </div><div class="info"></div>
-                        <div class="btns">
-                            <div id="filePickerBtn"></div>
-                            <div class="uploadBtn"><var id="lang_start_upload"></var></div>
-                        </div>
-                    </div>
-                    <div id="dndArea" class="placeholder">
-                        <div class="filePickerContainer">
-                            <div id="filePickerReady"></div>
-                        </div>
-                    </div>
-                    <ul class="filelist element-invisible">
-                        <li id="filePickerBlock" class="filePickerBlock"></li>
-                    </ul>
-                </div>
-            </div>
-
-            <!-- 在线图片 -->
-            <div id="online" class="panel">
-                <div id="fileList"><var id="lang_imgLoading"></var></div>
-            </div>
-
-        </div>
-    </div>
-    <script type="text/javascript" src="attachment.js"></script>
-
-</body>
-</html>

+ 0 - 754
public/ueditor/dialogs/attachment/attachment.js

@@ -1,754 +0,0 @@
-/**
- * User: Jinqn
- * Date: 14-04-08
- * Time: 下午16:34
- * 上传图片对话框逻辑代码,包括tab: 远程图片/上传图片/在线图片/搜索图片
- */
-
-(function () {
-
-    var uploadFile,
-        onlineFile;
-
-    window.onload = function () {
-        initTabs();
-        initButtons();
-    };
-
-    /* 初始化tab标签 */
-    function initTabs() {
-        var tabs = $G('tabhead').children;
-        for (var i = 0; i < tabs.length; i++) {
-            domUtils.on(tabs[i], "click", function (e) {
-                var target = e.target || e.srcElement;
-                setTabFocus(target.getAttribute('data-content-id'));
-            });
-        }
-
-        setTabFocus('upload');
-    }
-
-    /* 初始化tabbody */
-    function setTabFocus(id) {
-        if(!id) return;
-        var i, bodyId, tabs = $G('tabhead').children;
-        for (i = 0; i < tabs.length; i++) {
-            bodyId = tabs[i].getAttribute('data-content-id')
-            if (bodyId == id) {
-                domUtils.addClass(tabs[i], 'focus');
-                domUtils.addClass($G(bodyId), 'focus');
-            } else {
-                domUtils.removeClasses(tabs[i], 'focus');
-                domUtils.removeClasses($G(bodyId), 'focus');
-            }
-        }
-        switch (id) {
-            case 'upload':
-                uploadFile = uploadFile || new UploadFile('queueList');
-                break;
-            case 'online':
-                onlineFile = onlineFile || new OnlineFile('fileList');
-                break;
-        }
-    }
-
-    /* 初始化onok事件 */
-    function initButtons() {
-
-        dialog.onok = function () {
-            var list = [], id, tabs = $G('tabhead').children;
-            for (var i = 0; i < tabs.length; i++) {
-                if (domUtils.hasClass(tabs[i], 'focus')) {
-                    id = tabs[i].getAttribute('data-content-id');
-                    break;
-                }
-            }
-
-            switch (id) {
-                case 'upload':
-                    list = uploadFile.getInsertList();
-                    var count = uploadFile.getQueueCount();
-                    if (count) {
-                        $('.info', '#queueList').html('<span style="color:red;">' + '还有2个未上传文件'.replace(/[\d]/, count) + '</span>');
-                        return false;
-                    }
-                    break;
-                case 'online':
-                    list = onlineFile.getInsertList();
-                    break;
-            }
-
-            editor.execCommand('insertfile', list);
-        };
-    }
-
-
-    /* 上传附件 */
-    function UploadFile(target) {
-        this.$wrap = target.constructor == String ? $('#' + target) : $(target);
-        this.init();
-    }
-    UploadFile.prototype = {
-        init: function () {
-            this.fileList = [];
-            this.initContainer();
-            this.initUploader();
-        },
-        initContainer: function () {
-            this.$queue = this.$wrap.find('.filelist');
-        },
-        /* 初始化容器 */
-        initUploader: function () {
-            var _this = this,
-                $ = jQuery,    // just in case. Make sure it's not an other libaray.
-                $wrap = _this.$wrap,
-            // 图片容器
-                $queue = $wrap.find('.filelist'),
-            // 状态栏,包括进度和控制按钮
-                $statusBar = $wrap.find('.statusBar'),
-            // 文件总体选择信息。
-                $info = $statusBar.find('.info'),
-            // 上传按钮
-                $upload = $wrap.find('.uploadBtn'),
-            // 上传按钮
-                $filePickerBtn = $wrap.find('.filePickerBtn'),
-            // 上传按钮
-                $filePickerBlock = $wrap.find('.filePickerBlock'),
-            // 没选择文件之前的内容。
-                $placeHolder = $wrap.find('.placeholder'),
-            // 总体进度条
-                $progress = $statusBar.find('.progress').hide(),
-            // 添加的文件数量
-                fileCount = 0,
-            // 添加的文件总大小
-                fileSize = 0,
-            // 优化retina, 在retina下这个值是2
-                ratio = window.devicePixelRatio || 1,
-            // 缩略图大小
-                thumbnailWidth = 113 * ratio,
-                thumbnailHeight = 113 * ratio,
-            // 可能有pedding, ready, uploading, confirm, done.
-                state = '',
-            // 所有文件的进度信息,key为file id
-                percentages = {},
-                supportTransition = (function () {
-                    var s = document.createElement('p').style,
-                        r = 'transition' in s ||
-                            'WebkitTransition' in s ||
-                            'MozTransition' in s ||
-                            'msTransition' in s ||
-                            'OTransition' in s;
-                    s = null;
-                    return r;
-                })(),
-            // WebUploader实例
-                uploader,
-                actionUrl = editor.getActionUrl(editor.getOpt('fileActionName')),
-                fileMaxSize = editor.getOpt('fileMaxSize'),
-                acceptExtensions = (editor.getOpt('fileAllowFiles') || []).join('').replace(/\./g, ',').replace(/^[,]/, '');;
-
-            if (!WebUploader.Uploader.support()) {
-                $('#filePickerReady').after($('<div>').html(lang.errorNotSupport)).hide();
-                return;
-            } else if (!editor.getOpt('fileActionName')) {
-                $('#filePickerReady').after($('<div>').html(lang.errorLoadConfig)).hide();
-                return;
-            }
-
-            uploader = _this.uploader = WebUploader.create({
-                pick: {
-                    id: '#filePickerReady',
-                    label: lang.uploadSelectFile
-                },
-                swf: '../../third-party/webuploader/Uploader.swf',
-                server: actionUrl,
-                fileVal: editor.getOpt('fileFieldName'),
-                duplicate: true,
-                fileSingleSizeLimit: fileMaxSize,
-                compress: false
-            });
-            uploader.addButton({
-                id: '#filePickerBlock'
-            });
-            uploader.addButton({
-                id: '#filePickerBtn',
-                label: lang.uploadAddFile
-            });
-
-            setState('pedding');
-
-            // 当有文件添加进来时执行,负责view的创建
-            function addFile(file) {
-                var $li = $('<li id="' + file.id + '">' +
-                        '<p class="title">' + file.name + '</p>' +
-                        '<p class="imgWrap"></p>' +
-                        '<p class="progress"><span></span></p>' +
-                        '</li>'),
-
-                    $btns = $('<div class="file-panel">' +
-                        '<span class="cancel">' + lang.uploadDelete + '</span>' +
-                        '<span class="rotateRight">' + lang.uploadTurnRight + '</span>' +
-                        '<span class="rotateLeft">' + lang.uploadTurnLeft + '</span></div>').appendTo($li),
-                    $prgress = $li.find('p.progress span'),
-                    $wrap = $li.find('p.imgWrap'),
-                    $info = $('<p class="error"></p>').hide().appendTo($li),
-
-                    showError = function (code) {
-                        switch (code) {
-                            case 'exceed_size':
-                                text = lang.errorExceedSize;
-                                break;
-                            case 'interrupt':
-                                text = lang.errorInterrupt;
-                                break;
-                            case 'http':
-                                text = lang.errorHttp;
-                                break;
-                            case 'not_allow_type':
-                                text = lang.errorFileType;
-                                break;
-                            default:
-                                text = lang.errorUploadRetry;
-                                break;
-                        }
-                        $info.text(text).show();
-                    };
-
-                if (file.getStatus() === 'invalid') {
-                    showError(file.statusText);
-                } else {
-                    $wrap.text(lang.uploadPreview);
-                    if ('|png|jpg|jpeg|bmp|gif|'.indexOf('|'+file.ext.toLowerCase()+'|') == -1) {
-                        $wrap.empty().addClass('notimage').append('<i class="file-preview file-type-' + file.ext.toLowerCase() + '"></i>' +
-                        '<span class="file-title" title="' + file.name + '">' + file.name + '</span>');
-                    } else {
-                        if (browser.ie && browser.version <= 7) {
-                            $wrap.text(lang.uploadNoPreview);
-                        } else {
-                            uploader.makeThumb(file, function (error, src) {
-                                if (error || !src) {
-                                    $wrap.text(lang.uploadNoPreview);
-                                } else {
-                                    var $img = $('<img src="' + src + '">');
-                                    $wrap.empty().append($img);
-                                    $img.on('error', function () {
-                                        $wrap.text(lang.uploadNoPreview);
-                                    });
-                                }
-                            }, thumbnailWidth, thumbnailHeight);
-                        }
-                    }
-                    percentages[ file.id ] = [ file.size, 0 ];
-                    file.rotation = 0;
-
-                    /* 检查文件格式 */
-                    if (!file.ext || acceptExtensions.indexOf(file.ext.toLowerCase()) == -1) {
-                        showError('not_allow_type');
-                        uploader.removeFile(file);
-                    }
-                }
-
-                file.on('statuschange', function (cur, prev) {
-                    if (prev === 'progress') {
-                        $prgress.hide().width(0);
-                    } else if (prev === 'queued') {
-                        $li.off('mouseenter mouseleave');
-                        $btns.remove();
-                    }
-                    // 成功
-                    if (cur === 'error' || cur === 'invalid') {
-                        showError(file.statusText);
-                        percentages[ file.id ][ 1 ] = 1;
-                    } else if (cur === 'interrupt') {
-                        showError('interrupt');
-                    } else if (cur === 'queued') {
-                        percentages[ file.id ][ 1 ] = 0;
-                    } else if (cur === 'progress') {
-                        $info.hide();
-                        $prgress.css('display', 'block');
-                    } else if (cur === 'complete') {
-                    }
-
-                    $li.removeClass('state-' + prev).addClass('state-' + cur);
-                });
-
-                $li.on('mouseenter', function () {
-                    $btns.stop().animate({height: 30});
-                });
-                $li.on('mouseleave', function () {
-                    $btns.stop().animate({height: 0});
-                });
-
-                $btns.on('click', 'span', function () {
-                    var index = $(this).index(),
-                        deg;
-
-                    switch (index) {
-                        case 0:
-                            uploader.removeFile(file);
-                            return;
-                        case 1:
-                            file.rotation += 90;
-                            break;
-                        case 2:
-                            file.rotation -= 90;
-                            break;
-                    }
-
-                    if (supportTransition) {
-                        deg = 'rotate(' + file.rotation + 'deg)';
-                        $wrap.css({
-                            '-webkit-transform': deg,
-                            '-mos-transform': deg,
-                            '-o-transform': deg,
-                            'transform': deg
-                        });
-                    } else {
-                        $wrap.css('filter', 'progid:DXImageTransform.Microsoft.BasicImage(rotation=' + (~~((file.rotation / 90) % 4 + 4) % 4) + ')');
-                    }
-
-                });
-
-                $li.insertBefore($filePickerBlock);
-            }
-
-            // 负责view的销毁
-            function removeFile(file) {
-                var $li = $('#' + file.id);
-                delete percentages[ file.id ];
-                updateTotalProgress();
-                $li.off().find('.file-panel').off().end().remove();
-            }
-
-            function updateTotalProgress() {
-                var loaded = 0,
-                    total = 0,
-                    spans = $progress.children(),
-                    percent;
-
-                $.each(percentages, function (k, v) {
-                    total += v[ 0 ];
-                    loaded += v[ 0 ] * v[ 1 ];
-                });
-
-                percent = total ? loaded / total : 0;
-
-                spans.eq(0).text(Math.round(percent * 100) + '%');
-                spans.eq(1).css('width', Math.round(percent * 100) + '%');
-                updateStatus();
-            }
-
-            function setState(val, files) {
-
-                if (val != state) {
-
-                    var stats = uploader.getStats();
-
-                    $upload.removeClass('state-' + state);
-                    $upload.addClass('state-' + val);
-
-                    switch (val) {
-
-                        /* 未选择文件 */
-                        case 'pedding':
-                            $queue.addClass('element-invisible');
-                            $statusBar.addClass('element-invisible');
-                            $placeHolder.removeClass('element-invisible');
-                            $progress.hide(); $info.hide();
-                            uploader.refresh();
-                            break;
-
-                        /* 可以开始上传 */
-                        case 'ready':
-                            $placeHolder.addClass('element-invisible');
-                            $queue.removeClass('element-invisible');
-                            $statusBar.removeClass('element-invisible');
-                            $progress.hide(); $info.show();
-                            $upload.text(lang.uploadStart);
-                            uploader.refresh();
-                            break;
-
-                        /* 上传中 */
-                        case 'uploading':
-                            $progress.show(); $info.hide();
-                            $upload.text(lang.uploadPause);
-                            break;
-
-                        /* 暂停上传 */
-                        case 'paused':
-                            $progress.show(); $info.hide();
-                            $upload.text(lang.uploadContinue);
-                            break;
-
-                        case 'confirm':
-                            $progress.show(); $info.hide();
-                            $upload.text(lang.uploadStart);
-
-                            stats = uploader.getStats();
-                            if (stats.successNum && !stats.uploadFailNum) {
-                                setState('finish');
-                                return;
-                            }
-                            break;
-
-                        case 'finish':
-                            $progress.hide(); $info.show();
-                            if (stats.uploadFailNum) {
-                                $upload.text(lang.uploadRetry);
-                            } else {
-                                $upload.text(lang.uploadStart);
-                            }
-                            break;
-                    }
-
-                    state = val;
-                    updateStatus();
-
-                }
-
-                if (!_this.getQueueCount()) {
-                    $upload.addClass('disabled')
-                } else {
-                    $upload.removeClass('disabled')
-                }
-
-            }
-
-            function updateStatus() {
-                var text = '', stats;
-
-                if (state === 'ready') {
-                    text = lang.updateStatusReady.replace('_', fileCount).replace('_KB', WebUploader.formatSize(fileSize));
-                } else if (state === 'confirm') {
-                    stats = uploader.getStats();
-                    if (stats.uploadFailNum) {
-                        text = lang.updateStatusConfirm.replace('_', stats.successNum).replace('_', stats.successNum);
-                    }
-                } else {
-                    stats = uploader.getStats();
-                    text = lang.updateStatusFinish.replace('_', fileCount).
-                        replace('_KB', WebUploader.formatSize(fileSize)).
-                        replace('_', stats.successNum);
-
-                    if (stats.uploadFailNum) {
-                        text += lang.updateStatusError.replace('_', stats.uploadFailNum);
-                    }
-                }
-
-                $info.html(text);
-            }
-
-            uploader.on('fileQueued', function (file) {
-                fileCount++;
-                fileSize += file.size;
-
-                if (fileCount === 1) {
-                    $placeHolder.addClass('element-invisible');
-                    $statusBar.show();
-                }
-
-                addFile(file);
-            });
-
-            uploader.on('fileDequeued', function (file) {
-                fileCount--;
-                fileSize -= file.size;
-
-                removeFile(file);
-                updateTotalProgress();
-            });
-
-            uploader.on('filesQueued', function (file) {
-                if (!uploader.isInProgress() && (state == 'pedding' || state == 'finish' || state == 'confirm' || state == 'ready')) {
-                    setState('ready');
-                }
-                updateTotalProgress();
-            });
-
-            uploader.on('all', function (type, files) {
-                switch (type) {
-                    case 'uploadFinished':
-                        setState('confirm', files);
-                        break;
-                    case 'startUpload':
-                        /* 添加额外的GET参数 */
-                        var params = utils.serializeParam(editor.queryCommandValue('serverparam')) || '',
-                            url = utils.formatUrl(actionUrl + (actionUrl.indexOf('?') == -1 ? '?':'&') + 'encode=utf-8&' + params);
-                        uploader.option('server', url);
-                        setState('uploading', files);
-                        break;
-                    case 'stopUpload':
-                        setState('paused', files);
-                        break;
-                }
-            });
-
-            uploader.on('uploadBeforeSend', function (file, data, header) {
-                //这里可以通过data对象添加POST参数
-                header['X_Requested_With'] = 'XMLHttpRequest';
-            });
-
-            uploader.on('uploadProgress', function (file, percentage) {
-                var $li = $('#' + file.id),
-                    $percent = $li.find('.progress span');
-
-                $percent.css('width', percentage * 100 + '%');
-                percentages[ file.id ][ 1 ] = percentage;
-                updateTotalProgress();
-            });
-
-            uploader.on('uploadSuccess', function (file, ret) {
-                var $file = $('#' + file.id);
-                try {
-                    var responseText = (ret._raw || ret),
-                        json = utils.str2json(responseText);
-                    if (json.state == 'SUCCESS') {
-                        _this.fileList.push(json);
-                        $file.append('<span class="success"></span>');
-                    } else {
-                        $file.find('.error').text(json.state).show();
-                    }
-                } catch (e) {
-                    $file.find('.error').text(lang.errorServerUpload).show();
-                }
-            });
-
-            uploader.on('uploadError', function (file, code) {
-            });
-            uploader.on('error', function (code, file) {
-                if (code == 'Q_TYPE_DENIED' || code == 'F_EXCEED_SIZE') {
-                    addFile(file);
-                }
-            });
-            uploader.on('uploadComplete', function (file, ret) {
-            });
-
-            $upload.on('click', function () {
-                if ($(this).hasClass('disabled')) {
-                    return false;
-                }
-
-                if (state === 'ready') {
-                    uploader.upload();
-                } else if (state === 'paused') {
-                    uploader.upload();
-                } else if (state === 'uploading') {
-                    uploader.stop();
-                }
-            });
-
-            $upload.addClass('state-' + state);
-            updateTotalProgress();
-        },
-        getQueueCount: function () {
-            var file, i, status, readyFile = 0, files = this.uploader.getFiles();
-            for (i = 0; file = files[i++]; ) {
-                status = file.getStatus();
-                if (status == 'queued' || status == 'uploading' || status == 'progress') readyFile++;
-            }
-            return readyFile;
-        },
-        getInsertList: function () {
-            var i, link, data, list = [],
-                prefix = editor.getOpt('fileUrlPrefix');
-            for (i = 0; i < this.fileList.length; i++) {
-                data = this.fileList[i];
-                link = data.url;
-                list.push({
-                    title: data.original || link.substr(link.lastIndexOf('/') + 1),
-                    url: prefix + link
-                });
-            }
-            return list;
-        }
-    };
-
-
-    /* 在线附件 */
-    function OnlineFile(target) {
-        this.container = utils.isString(target) ? document.getElementById(target) : target;
-        this.init();
-    }
-    OnlineFile.prototype = {
-        init: function () {
-            this.initContainer();
-            this.initEvents();
-            this.initData();
-        },
-        /* 初始化容器 */
-        initContainer: function () {
-            this.container.innerHTML = '';
-            this.list = document.createElement('ul');
-            this.clearFloat = document.createElement('li');
-
-            domUtils.addClass(this.list, 'list');
-            domUtils.addClass(this.clearFloat, 'clearFloat');
-
-            this.list.appendChild(this.clearFloat);
-            this.container.appendChild(this.list);
-        },
-        /* 初始化滚动事件,滚动到地步自动拉取数据 */
-        initEvents: function () {
-            var _this = this;
-
-            /* 滚动拉取图片 */
-            domUtils.on($G('fileList'), 'scroll', function(e){
-                var panel = this;
-                if (panel.scrollHeight - (panel.offsetHeight + panel.scrollTop) < 10) {
-                    _this.getFileData();
-                }
-            });
-            /* 选中图片 */
-            domUtils.on(this.list, 'click', function (e) {
-                var target = e.target || e.srcElement,
-                    li = target.parentNode;
-
-                if (li.tagName.toLowerCase() == 'li') {
-                    if (domUtils.hasClass(li, 'selected')) {
-                        domUtils.removeClasses(li, 'selected');
-                    } else {
-                        domUtils.addClass(li, 'selected');
-                    }
-                }
-            });
-        },
-        /* 初始化第一次的数据 */
-        initData: function () {
-
-            /* 拉取数据需要使用的值 */
-            this.state = 0;
-            this.listSize = editor.getOpt('fileManagerListSize');
-            this.listIndex = 0;
-            this.listEnd = false;
-
-            /* 第一次拉取数据 */
-            this.getFileData();
-        },
-        /* 向后台拉取图片列表数据 */
-        getFileData: function () {
-            var _this = this;
-
-            if(!_this.listEnd && !this.isLoadingData) {
-                this.isLoadingData = true;
-                ajax.request(editor.getActionUrl(editor.getOpt('fileManagerActionName')), {
-                    timeout: 100000,
-                    data: utils.extend({
-                            start: this.listIndex,
-                            size: this.listSize
-                        }, editor.queryCommandValue('serverparam')),
-                    method: 'get',
-                    onsuccess: function (r) {
-                        try {
-                            var json = eval('(' + r.responseText + ')');
-                            if (json.state == 'SUCCESS') {
-                                _this.pushData(json.list);
-                                _this.listIndex = parseInt(json.start) + parseInt(json.list.length);
-                                if(_this.listIndex >= json.total) {
-                                    _this.listEnd = true;
-                                }
-                                _this.isLoadingData = false;
-                            }
-                        } catch (e) {
-                            if(r.responseText.indexOf('ue_separate_ue') != -1) {
-                                var list = r.responseText.split(r.responseText);
-                                _this.pushData(list);
-                                _this.listIndex = parseInt(list.length);
-                                _this.listEnd = true;
-                                _this.isLoadingData = false;
-                            }
-                        }
-                    },
-                    onerror: function () {
-                        _this.isLoadingData = false;
-                    }
-                });
-            }
-        },
-        /* 添加图片到列表界面上 */
-        pushData: function (list) {
-            var i, item, img, filetype, preview, icon, _this = this,
-                urlPrefix = editor.getOpt('fileManagerUrlPrefix');
-            for (i = 0; i < list.length; i++) {
-                if(list[i] && list[i].url) {
-                    item = document.createElement('li');
-                    icon = document.createElement('span');
-                    filetype = list[i].url.substr(list[i].url.lastIndexOf('.') + 1);
-
-                    if ( "png|jpg|jpeg|gif|bmp".indexOf(filetype) != -1 ) {
-                        preview = document.createElement('img');
-                        domUtils.on(preview, 'load', (function(image){
-                            return function(){
-                                _this.scale(image, image.parentNode.offsetWidth, image.parentNode.offsetHeight);
-                            };
-                        })(preview));
-                        preview.width = 113;
-                        preview.setAttribute('src', urlPrefix + list[i].url + (list[i].url.indexOf('?') == -1 ? '?noCache=':'&noCache=') + (+new Date()).toString(36) );
-                    } else {
-                        var ic = document.createElement('i'),
-                            textSpan = document.createElement('span');
-                        textSpan.innerHTML = list[i].url.substr(list[i].url.lastIndexOf('/') + 1);
-                        preview = document.createElement('div');
-                        preview.appendChild(ic);
-                        preview.appendChild(textSpan);
-                        domUtils.addClass(preview, 'file-wrapper');
-                        domUtils.addClass(textSpan, 'file-title');
-                        domUtils.addClass(ic, 'file-type-' + filetype);
-                        domUtils.addClass(ic, 'file-preview');
-                    }
-                    domUtils.addClass(icon, 'icon');
-                    item.setAttribute('data-url', urlPrefix + list[i].url);
-                    if (list[i].original) {
-                        item.setAttribute('data-title', list[i].original);
-                    }
-
-                    item.appendChild(preview);
-                    item.appendChild(icon);
-                    this.list.insertBefore(item, this.clearFloat);
-                }
-            }
-        },
-        /* 改变图片大小 */
-        scale: function (img, w, h, type) {
-            var ow = img.width,
-                oh = img.height;
-
-            if (type == 'justify') {
-                if (ow >= oh) {
-                    img.width = w;
-                    img.height = h * oh / ow;
-                    img.style.marginLeft = '-' + parseInt((img.width - w) / 2) + 'px';
-                } else {
-                    img.width = w * ow / oh;
-                    img.height = h;
-                    img.style.marginTop = '-' + parseInt((img.height - h) / 2) + 'px';
-                }
-            } else {
-                if (ow >= oh) {
-                    img.width = w * ow / oh;
-                    img.height = h;
-                    img.style.marginLeft = '-' + parseInt((img.width - w) / 2) + 'px';
-                } else {
-                    img.width = w;
-                    img.height = h * oh / ow;
-                    img.style.marginTop = '-' + parseInt((img.height - h) / 2) + 'px';
-                }
-            }
-        },
-        getInsertList: function () {
-            var i, lis = this.list.children, list = [];
-            for (i = 0; i < lis.length; i++) {
-                if (domUtils.hasClass(lis[i], 'selected')) {
-                    var url = lis[i].getAttribute('data-url');
-                    var title = lis[i].getAttribute('data-title') || url.substr(url.lastIndexOf('/') + 1);
-                    list.push({
-                        title: title,
-                        url: url
-                    });
-                }
-            }
-            return list;
-        }
-    };
-
-
-})();

BIN
public/ueditor/dialogs/attachment/fileTypeImages/icon_chm.gif


BIN
public/ueditor/dialogs/attachment/fileTypeImages/icon_default.png


BIN
public/ueditor/dialogs/attachment/fileTypeImages/icon_doc.gif


BIN
public/ueditor/dialogs/attachment/fileTypeImages/icon_exe.gif


BIN
public/ueditor/dialogs/attachment/fileTypeImages/icon_jpg.gif


BIN
public/ueditor/dialogs/attachment/fileTypeImages/icon_mp3.gif


BIN
public/ueditor/dialogs/attachment/fileTypeImages/icon_mv.gif


BIN
public/ueditor/dialogs/attachment/fileTypeImages/icon_pdf.gif


BIN
public/ueditor/dialogs/attachment/fileTypeImages/icon_ppt.gif


BIN
public/ueditor/dialogs/attachment/fileTypeImages/icon_psd.gif


BIN
public/ueditor/dialogs/attachment/fileTypeImages/icon_rar.gif


BIN
public/ueditor/dialogs/attachment/fileTypeImages/icon_txt.gif


BIN
public/ueditor/dialogs/attachment/fileTypeImages/icon_xls.gif


BIN
public/ueditor/dialogs/attachment/images/alignicon.gif


BIN
public/ueditor/dialogs/attachment/images/alignicon.png


BIN
public/ueditor/dialogs/attachment/images/bg.png


BIN
public/ueditor/dialogs/attachment/images/file-icons.gif


BIN
public/ueditor/dialogs/attachment/images/file-icons.png


BIN
public/ueditor/dialogs/attachment/images/icons.gif


BIN
public/ueditor/dialogs/attachment/images/icons.png


BIN
public/ueditor/dialogs/attachment/images/image.png


BIN
public/ueditor/dialogs/attachment/images/progress.png


BIN
public/ueditor/dialogs/attachment/images/success.gif


BIN
public/ueditor/dialogs/attachment/images/success.png


+ 0 - 94
public/ueditor/dialogs/background/background.css

@@ -1,94 +0,0 @@
-.wrapper{ width: 424px;margin: 10px auto; zoom:1;position: relative}
-.tabbody{height:225px;}
-.tabbody .panel { position: absolute;width:100%; height:100%;background: #fff; display: none;}
-.tabbody .focus { display: block;}
-
-body{font-size: 12px;color: #888;overflow: hidden;}
-input,label{vertical-align:middle}
-.clear{clear: both;}
-.pl{padding-left: 18px;padding-left: 23px\9;}
-
-#imageList {width: 420px;height: 215px;margin-top: 10px;overflow: hidden;overflow-y: auto;}
-#imageList div {float: left;width: 100px;height: 95px;margin: 5px 10px;}
-#imageList img {cursor: pointer;border: 2px solid white;}
-
-.bgarea{margin: 10px;padding: 5px;height: 84%;border: 1px solid #A8A297;}
-.content div{margin: 10px 0 10px 5px;}
-.content .iptradio{margin: 0px 5px 5px 0px;}
-.txt{width:280px;}
-
-.wrapcolor{height: 19px;}
-div.color{float: left;margin: 0;}
-#colorPicker{width: 17px;height: 17px;border: 1px solid #CCC;display: inline-block;border-radius: 3px;box-shadow: 2px 2px 5px #D3D6DA;margin: 0;float: left;}
-div.alignment,#custom{margin-left: 23px;margin-left: 28px\9;}
-#custom input{height: 15px;min-height: 15px;width:20px;}
-#repeatType{width:100px;}
-
-
-/* 图片管理样式 */
-#imgManager {
-    width: 100%;
-    height: 225px;
-}
-#imgManager #imageList{
-    width: 100%;
-    overflow-x: hidden;
-    overflow-y: auto;
-}
-#imgManager ul {
-    display: block;
-    list-style: none;
-    margin: 0;
-    padding: 0;
-}
-#imgManager li {
-    float: left;
-    display: block;
-    list-style: none;
-    padding: 0;
-    width: 113px;
-    height: 113px;
-    margin: 9px 0 0 19px;
-    background-color: #eee;
-    overflow: hidden;
-    cursor: pointer;
-    position: relative;
-}
-#imgManager li.clearFloat {
-    float: none;
-    clear: both;
-    display: block;
-    width:0;
-    height:0;
-    margin: 0;
-    padding: 0;
-}
-#imgManager li img {
-    cursor: pointer;
-}
-#imgManager li .icon {
-    cursor: pointer;
-    width: 113px;
-    height: 113px;
-    position: absolute;
-    top: 0;
-    left: 0;
-    z-index: 2;
-    border: 0;
-    background-repeat: no-repeat;
-}
-#imgManager li .icon:hover {
-    width: 107px;
-    height: 107px;
-    border: 3px solid #1094fa;
-}
-#imgManager li.selected .icon {
-    background-image: url(images/success.png);
-    background-position: 75px 75px;
-}
-#imgManager li.selected .icon:hover {
-    width: 107px;
-    height: 107px;
-    border: 3px solid #1094fa;
-    background-position: 72px 72px;
-}

+ 0 - 56
public/ueditor/dialogs/background/background.html

@@ -1,56 +0,0 @@
-<!DOCTYPE HTML>
-<html>
-<head>
-    <meta http-equiv="Content-Type" content="text/html;charset=utf-8"/>
-    <script type="text/javascript" src="../internal.js"></script>
-    <link rel="stylesheet" type="text/css" href="background.css">
-</head>
-<body>
-    <div id="bg_container" class="wrapper">
-        <div id="tabHeads" class="tabhead">
-            <span class="focus" data-content-id="normal"><var id="lang_background_normal"></var></span>
-            <span class="" data-content-id="imgManager"><var id="lang_background_local"></var></span>
-        </div>
-        <div id="tabBodys" class="tabbody">
-            <div id="normal" class="panel focus">
-                <fieldset class="bgarea">
-                    <legend><var id="lang_background_set"></var></legend>
-                    <div class="content">
-                        <div>
-                            <label><input id="nocolorRadio" class="iptradio" type="radio" name="t" value="none" checked="checked"><var id="lang_background_none"></var></label>
-                            <label><input id="coloredRadio" class="iptradio" type="radio" name="t" value="color"><var id="lang_background_colored"></var></label>
-                        </div>
-                        <div class="wrapcolor pl">
-                            <div class="color">
-                                <var id="lang_background_color"></var>:
-                            </div>
-                            <div id="colorPicker"></div>
-                            <div class="clear"></div>
-                        </div>
-                        <div class="wrapcolor pl">
-                            <label><var id="lang_background_netimg"></var>:</label><input class="txt" type="text" id="url">
-                        </div>
-                        <div id="alignment" class="alignment">
-                            <var id="lang_background_align"></var>:<select id="repeatType">
-                                <option value="center"></option>
-                                <option value="repeat-x"></option>
-                                <option value="repeat-y"></option>
-                                <option value="repeat"></option>
-                                <option value="self"></option>
-                            </select>
-                        </div>
-                        <div id="custom" >
-                            <var id="lang_background_position"></var>:x:<input type="text" size="1" id="x" maxlength="4" value="0">px&nbsp;&nbsp;y:<input type="text" size="1" id="y" maxlength="4" value="0">px
-                        </div>
-                    </div>
-                </fieldset>
-
-            </div>
-            <div id="imgManager" class="panel">
-                <div id="imageList" style=""></div>
-            </div>
-        </div>
-    </div>
-    <script type="text/javascript" src="background.js"></script>
-</body>
-</html>

+ 0 - 376
public/ueditor/dialogs/background/background.js

@@ -1,376 +0,0 @@
-(function () {
-
-    var onlineImage,
-        backupStyle = editor.queryCommandValue('background');
-
-    window.onload = function () {
-        initTabs();
-        initColorSelector();
-    };
-
-    /* 初始化tab标签 */
-    function initTabs(){
-        var tabs = $G('tabHeads').children;
-        for (var i = 0; i < tabs.length; i++) {
-            domUtils.on(tabs[i], "click", function (e) {
-                var target = e.target || e.srcElement;
-                for (var j = 0; j < tabs.length; j++) {
-                    if(tabs[j] == target){
-                        tabs[j].className = "focus";
-                        var contentId = tabs[j].getAttribute('data-content-id');
-                        $G(contentId).style.display = "block";
-                        if(contentId == 'imgManager') {
-                            initImagePanel();
-                        }
-                    }else {
-                        tabs[j].className = "";
-                        $G(tabs[j].getAttribute('data-content-id')).style.display = "none";
-                    }
-                }
-            });
-        }
-    }
-
-    /* 初始化颜色设置 */
-    function initColorSelector () {
-        var obj = editor.queryCommandValue('background');
-        if (obj) {
-            var color = obj['background-color'],
-                repeat = obj['background-repeat'] || 'repeat',
-                image = obj['background-image'] || '',
-                position = obj['background-position'] || 'center center',
-                pos = position.split(' '),
-                x = parseInt(pos[0]) || 0,
-                y = parseInt(pos[1]) || 0;
-
-            if(repeat == 'no-repeat' && (x || y)) repeat = 'self';
-
-            image = image.match(/url[\s]*\(([^\)]*)\)/);
-            image = image ? image[1]:'';
-            updateFormState('colored', color, image, repeat, x, y);
-        } else {
-            updateFormState();
-        }
-
-        var updateHandler = function () {
-            updateFormState();
-            updateBackground();
-        }
-        domUtils.on($G('nocolorRadio'), 'click', updateBackground);
-        domUtils.on($G('coloredRadio'), 'click', updateHandler);
-        domUtils.on($G('url'), 'keyup', function(){
-            if($G('url').value && $G('alignment').style.display == "none") {
-                utils.each($G('repeatType').children, function(item){
-                    item.selected = ('repeat' == item.getAttribute('value') ? 'selected':false);
-                });
-            }
-            updateHandler();
-        });
-        domUtils.on($G('repeatType'), 'change', updateHandler);
-        domUtils.on($G('x'), 'keyup', updateBackground);
-        domUtils.on($G('y'), 'keyup', updateBackground);
-
-        initColorPicker();
-    }
-
-    /* 初始化颜色选择器 */
-    function initColorPicker() {
-        var me = editor,
-            cp = $G("colorPicker");
-
-        /* 生成颜色选择器ui对象 */
-        var popup = new UE.ui.Popup({
-            content: new UE.ui.ColorPicker({
-                noColorText: me.getLang("clearColor"),
-                editor: me,
-                onpickcolor: function (t, color) {
-                    updateFormState('colored', color);
-                    updateBackground();
-                    UE.ui.Popup.postHide();
-                },
-                onpicknocolor: function (t, color) {
-                    updateFormState('colored', 'transparent');
-                    updateBackground();
-                    UE.ui.Popup.postHide();
-                }
-            }),
-            editor: me,
-            onhide: function () {
-            }
-        });
-
-        /* 设置颜色选择器 */
-        domUtils.on(cp, "click", function () {
-            popup.showAnchor(this);
-        });
-        domUtils.on(document, 'mousedown', function (evt) {
-            var el = evt.target || evt.srcElement;
-            UE.ui.Popup.postHide(el);
-        });
-        domUtils.on(window, 'scroll', function () {
-            UE.ui.Popup.postHide();
-        });
-    }
-
-    /* 初始化在线图片列表 */
-    function initImagePanel() {
-        onlineImage = onlineImage || new OnlineImage('imageList');
-    }
-
-    /* 更新背景色设置面板 */
-    function updateFormState (radio, color, url, align, x, y) {
-        var nocolorRadio = $G('nocolorRadio'),
-            coloredRadio = $G('coloredRadio');
-
-        if(radio) {
-            nocolorRadio.checked = (radio == 'colored' ? false:'checked');
-            coloredRadio.checked = (radio == 'colored' ? 'checked':false);
-        }
-        if(color) {
-            domUtils.setStyle($G("colorPicker"), "background-color", color);
-        }
-
-        if(url && /^\//.test(url)) {
-            var a = document.createElement('a');
-            a.href = url;
-            browser.ie && (a.href = a.href);
-            url = browser.ie ? a.href:(a.protocol + '//' + a.host + a.pathname + a.search + a.hash);
-        }
-
-        if(url || url === '') {
-            $G('url').value = url;
-        }
-        if(align) {
-            utils.each($G('repeatType').children, function(item){
-                item.selected = (align == item.getAttribute('value') ? 'selected':false);
-            });
-        }
-        if(x || y) {
-            $G('x').value = parseInt(x) || 0;
-            $G('y').value = parseInt(y) || 0;
-        }
-
-        $G('alignment').style.display = coloredRadio.checked && $G('url').value ? '':'none';
-        $G('custom').style.display = coloredRadio.checked && $G('url').value && $G('repeatType').value == 'self' ? '':'none';
-    }
-
-    /* 更新背景颜色 */
-    function updateBackground () {
-        if ($G('coloredRadio').checked) {
-            var color = domUtils.getStyle($G("colorPicker"), "background-color"),
-                bgimg = $G("url").value,
-                align = $G("repeatType").value,
-                backgroundObj = {
-                    "background-repeat": "no-repeat",
-                    "background-position": "center center"
-                };
-
-            if (color) backgroundObj["background-color"] = color;
-            if (bgimg) backgroundObj["background-image"] = 'url(' + bgimg + ')';
-            if (align == 'self') {
-                backgroundObj["background-position"] = $G("x").value + "px " + $G("y").value + "px";
-            } else if (align == 'repeat-x' || align == 'repeat-y' || align == 'repeat') {
-                backgroundObj["background-repeat"] = align;
-            }
-
-            editor.execCommand('background', backgroundObj);
-        } else {
-            editor.execCommand('background', null);
-        }
-    }
-
-
-    /* 在线图片 */
-    function OnlineImage(target) {
-        this.container = utils.isString(target) ? document.getElementById(target) : target;
-        this.init();
-    }
-    OnlineImage.prototype = {
-        init: function () {
-            this.reset();
-            this.initEvents();
-        },
-        /* 初始化容器 */
-        initContainer: function () {
-            this.container.innerHTML = '';
-            this.list = document.createElement('ul');
-            this.clearFloat = document.createElement('li');
-
-            domUtils.addClass(this.list, 'list');
-            domUtils.addClass(this.clearFloat, 'clearFloat');
-
-            this.list.id = 'imageListUl';
-            this.list.appendChild(this.clearFloat);
-            this.container.appendChild(this.list);
-        },
-        /* 初始化滚动事件,滚动到地步自动拉取数据 */
-        initEvents: function () {
-            var _this = this;
-
-            /* 滚动拉取图片 */
-            domUtils.on($G('imageList'), 'scroll', function(e){
-                var panel = this;
-                if (panel.scrollHeight - (panel.offsetHeight + panel.scrollTop) < 10) {
-                    _this.getImageData();
-                }
-            });
-            /* 选中图片 */
-            domUtils.on(this.container, 'click', function (e) {
-                var target = e.target || e.srcElement,
-                    li = target.parentNode,
-                    nodes = $G('imageListUl').childNodes;
-
-                if (li.tagName.toLowerCase() == 'li') {
-                    updateFormState('nocolor', null, '');
-                    for (var i = 0, node; node = nodes[i++];) {
-                        if (node == li && !domUtils.hasClass(node, 'selected')) {
-                            domUtils.addClass(node, 'selected');
-                            updateFormState('colored', null, li.firstChild.getAttribute("_src"), 'repeat');
-                        } else {
-                            domUtils.removeClasses(node, 'selected');
-                        }
-                    }
-                    updateBackground();
-                }
-            });
-        },
-        /* 初始化第一次的数据 */
-        initData: function () {
-
-            /* 拉取数据需要使用的值 */
-            this.state = 0;
-            this.listSize = editor.getOpt('imageManagerListSize');
-            this.listIndex = 0;
-            this.listEnd = false;
-
-            /* 第一次拉取数据 */
-            this.getImageData();
-        },
-        /* 重置界面 */
-        reset: function() {
-            this.initContainer();
-            this.initData();
-        },
-        /* 向后台拉取图片列表数据 */
-        getImageData: function () {
-            var _this = this;
-
-            if(!_this.listEnd && !this.isLoadingData) {
-                this.isLoadingData = true;
-                var url = editor.getActionUrl(editor.getOpt('imageManagerActionName')),
-                    isJsonp = utils.isCrossDomainUrl(url);
-                ajax.request(url, {
-                    'timeout': 100000,
-                    'dataType': isJsonp ? 'jsonp':'',
-                    'data': utils.extend({
-                            start: this.listIndex,
-                            size: this.listSize
-                        }, editor.queryCommandValue('serverparam')),
-                    'method': 'get',
-                    'onsuccess': function (r) {
-                        try {
-                            var json = isJsonp ? r:eval('(' + r.responseText + ')');
-                            if (json.state == 'SUCCESS') {
-                                _this.pushData(json.list);
-                                _this.listIndex = parseInt(json.start) + parseInt(json.list.length);
-                                if(_this.listIndex >= json.total) {
-                                    _this.listEnd = true;
-                                }
-                                _this.isLoadingData = false;
-                            }
-                        } catch (e) {
-                            if(r.responseText.indexOf('ue_separate_ue') != -1) {
-                                var list = r.responseText.split(r.responseText);
-                                _this.pushData(list);
-                                _this.listIndex = parseInt(list.length);
-                                _this.listEnd = true;
-                                _this.isLoadingData = false;
-                            }
-                        }
-                    },
-                    'onerror': function () {
-                        _this.isLoadingData = false;
-                    }
-                });
-            }
-        },
-        /* 添加图片到列表界面上 */
-        pushData: function (list) {
-            var i, item, img, icon, _this = this,
-                urlPrefix = editor.getOpt('imageManagerUrlPrefix');
-            for (i = 0; i < list.length; i++) {
-                if(list[i] && list[i].url) {
-                    item = document.createElement('li');
-                    img = document.createElement('img');
-                    icon = document.createElement('span');
-
-                    domUtils.on(img, 'load', (function(image){
-                        return function(){
-                            _this.scale(image, image.parentNode.offsetWidth, image.parentNode.offsetHeight);
-                        }
-                    })(img));
-                    img.width = 113;
-                    img.setAttribute('src', urlPrefix + list[i].url + (list[i].url.indexOf('?') == -1 ? '?noCache=':'&noCache=') + (+new Date()).toString(36) );
-                    img.setAttribute('_src', urlPrefix + list[i].url);
-                    domUtils.addClass(icon, 'icon');
-
-                    item.appendChild(img);
-                    item.appendChild(icon);
-                    this.list.insertBefore(item, this.clearFloat);
-                }
-            }
-        },
-        /* 改变图片大小 */
-        scale: function (img, w, h, type) {
-            var ow = img.width,
-                oh = img.height;
-
-            if (type == 'justify') {
-                if (ow >= oh) {
-                    img.width = w;
-                    img.height = h * oh / ow;
-                    img.style.marginLeft = '-' + parseInt((img.width - w) / 2) + 'px';
-                } else {
-                    img.width = w * ow / oh;
-                    img.height = h;
-                    img.style.marginTop = '-' + parseInt((img.height - h) / 2) + 'px';
-                }
-            } else {
-                if (ow >= oh) {
-                    img.width = w * ow / oh;
-                    img.height = h;
-                    img.style.marginLeft = '-' + parseInt((img.width - w) / 2) + 'px';
-                } else {
-                    img.width = w;
-                    img.height = h * oh / ow;
-                    img.style.marginTop = '-' + parseInt((img.height - h) / 2) + 'px';
-                }
-            }
-        },
-        getInsertList: function () {
-            var i, lis = this.list.children, list = [], align = getAlign();
-            for (i = 0; i < lis.length; i++) {
-                if (domUtils.hasClass(lis[i], 'selected')) {
-                    var img = lis[i].firstChild,
-                        src = img.getAttribute('_src');
-                    list.push({
-                        src: src,
-                        _src: src,
-                        floatStyle: align
-                    });
-                }
-
-            }
-            return list;
-        }
-    };
-
-    dialog.onok = function () {
-        updateBackground();
-        editor.fireEvent('saveScene');
-    };
-    dialog.oncancel = function () {
-        editor.execCommand('background', backupStyle);
-    };
-
-})();

BIN
public/ueditor/dialogs/background/images/bg.png


BIN
public/ueditor/dialogs/background/images/success.png


+ 0 - 65
public/ueditor/dialogs/charts/chart.config.js

@@ -1,65 +0,0 @@
-/*
- * 图表配置文件
- * */
-
-
-//不同类型的配置
-var typeConfig = [
-    {
-        chart: {
-            type: 'line'
-        },
-        plotOptions: {
-            line: {
-                dataLabels: {
-                    enabled: false
-                },
-                enableMouseTracking: true
-            }
-        }
-    }, {
-        chart: {
-            type: 'line'
-        },
-        plotOptions: {
-            line: {
-                dataLabels: {
-                    enabled: true
-                },
-                enableMouseTracking: false
-            }
-        }
-    }, {
-        chart: {
-            type: 'area'
-        }
-    }, {
-        chart: {
-            type: 'bar'
-        }
-    }, {
-        chart: {
-            type: 'column'
-        }
-    }, {
-        chart: {
-            plotBackgroundColor: null,
-            plotBorderWidth: null,
-            plotShadow: false
-        },
-        plotOptions: {
-            pie: {
-                allowPointSelect: true,
-                cursor: 'pointer',
-                dataLabels: {
-                    enabled: true,
-                    color: '#000000',
-                    connectorColor: '#000000',
-                    formatter: function() {
-                        return '<b>'+ this.point.name +'</b>: '+ ( Math.round( this.point.percentage*100 ) / 100 ) +' %';
-                    }
-                }
-            }
-        }
-    }
-];

+ 0 - 165
public/ueditor/dialogs/charts/charts.css

@@ -1,165 +0,0 @@
-html, body {
-    width: 100%;
-    height: 100%;
-    margin: 0;
-    padding: 0;
-    overflow-x: hidden;
-}
-
-.main {
-    width: 100%;
-    overflow: hidden;
-}
-
-.table-view {
-    height: 100%;
-    float: left;
-    margin: 20px;
-    width: 40%;
-}
-
-.table-view .table-container {
-    width: 100%;
-    margin-bottom: 50px;
-    overflow: scroll;
-}
-
-.table-view th {
-    padding: 5px 10px;
-    background-color: #F7F7F7;
-}
-
-.table-view td {
-    width: 50px;
-    text-align: center;
-    padding:0;
-}
-
-.table-container input {
-    width: 40px;
-    padding: 5px;
-    border: none;
-    outline: none;
-}
-
-.table-view caption {
-    font-size: 18px;
-    text-align: left;
-}
-
-.charts-view {
-    /*margin-left: 49%!important;*/
-    width: 50%;
-    margin-left: 49%;
-    height: 400px;
-}
-
-.charts-container {
-    border-left: 1px solid #c3c3c3;
-}
-
-.charts-format fieldset {
-    padding-left: 20px;
-    margin-bottom: 50px;
-}
-
-.charts-format legend {
-    padding-left: 10px;
-    padding-right: 10px;
-}
-
-.format-item-container {
-    padding: 20px;
-}
-
-.format-item-container label {
-    display: block;
-    margin: 10px 0;
-}
-
-.charts-format .data-item {
-    border: 1px solid black;
-    outline: none;
-    padding: 2px 3px;
-}
-
-/* 图表类型 */
-
-.charts-type {
-    margin-top: 50px;
-    height: 300px;
-}
-
-.scroll-view {
-    border: 1px solid #c3c3c3;
-    border-left: none;
-    border-right: none;
-    overflow: hidden;
-}
-
-.scroll-container {
-    margin: 20px;
-    width: 100%;
-    overflow: hidden;
-}
-
-.scroll-bed {
-    width: 10000px;
-    _margin-top: 20px;
-    -webkit-transition: margin-left .5s ease;
-    -moz-transition: margin-left .5s ease;
-    transition: margin-left .5s ease;
-}
-
-.view-box {
-    display: inline-block;
-    *display: inline;
-    *zoom: 1;
-    margin-right: 20px;
-    border: 2px solid white;
-    line-height: 0;
-    overflow: hidden;
-    cursor: pointer;
-}
-
-.view-box img {
-    border: 1px solid #cecece;
-}
-
-.view-box.selected {
-    border-color: #7274A7;
-}
-
-.button-container {
-    margin-bottom: 20px;
-    text-align: center;
-}
-
-.button-container a {
-    display: inline-block;
-    width: 100px;
-    height: 25px;
-    line-height: 25px;
-    border: 1px solid #c2ccd1;
-    margin-right: 30px;
-    text-decoration: none;
-    color: black;
-    -webkit-border-radius: 2px;
-    -moz-border-radius: 2px;
-    border-radius: 2px;
-}
-
-.button-container a:HOVER {
-    background: #fcfcfc;
-}
-
-.button-container a:ACTIVE {
-    border-top-color: #c2ccd1;
-    box-shadow:inset 0 5px 4px -4px rgba(49, 49, 64, 0.1);
-}
-
-.edui-charts-not-data {
-    height: 100px;
-    line-height: 100px;
-    text-align: center;
-}

+ 0 - 89
public/ueditor/dialogs/charts/charts.html

@@ -1,89 +0,0 @@
-<!DOCTYPE html>
-<html>
-    <head>
-        <title>chart</title>
-        <meta chartset="utf-8">
-        <link rel="stylesheet" type="text/css" href="charts.css">
-        <script type="text/javascript" src="../internal.js"></script>
-    </head>
-    <body>
-        <div class="main">
-            <div class="table-view">
-                <h3><var id="lang_data_source"></var></h3>
-                <div id="tableContainer" class="table-container"></div>
-                <h3><var id="lang_chart_format"></var></h3>
-                <form name="data-form">
-                    <div class="charts-format">
-                        <fieldset>
-                            <legend><var id="lang_data_align"></var></legend>
-                            <div class="format-item-container">
-                                <label>
-                                    <input type="radio" class="format-ctrl not-pie-item" name="charts-format" value="1" checked="checked">
-                                    <var id="lang_chart_align_same"></var>
-                                </label>
-                                <label>
-                                    <input type="radio" class="format-ctrl not-pie-item" name="charts-format" value="-1">
-                                    <var id="lang_chart_align_reverse"></var>
-                                </label>
-                                <br>
-                            </div>
-                        </fieldset>
-                        <fieldset>
-                            <legend><var id="lang_chart_title"></var></legend>
-                            <div class="format-item-container">
-                                <label>
-                                    <var id="lang_chart_main_title"></var><input type="text" name="title" class="data-item">
-                                </label>
-                                <label>
-                                    <var id="lang_chart_sub_title"></var><input type="text" name="sub-title" class="data-item not-pie-item">
-                                </label>
-                                <label>
-                                    <var id="lang_chart_x_title"></var><input type="text" name="x-title" class="data-item not-pie-item">
-                                </label>
-                                <label>
-                                    <var id="lang_chart_y_title"></var><input type="text" name="y-title" class="data-item not-pie-item">
-                                </label>
-                            </div>
-                        </fieldset>
-                        <fieldset>
-                            <legend><var id="lang_chart_tip"></var></legend>
-                            <div class="format-item-container">
-                                <label>
-                                    <var id="lang_cahrt_tip_prefix"></var>
-                                    <input type="text" id="tipInput" name="tip" class="data-item" disabled="disabled">
-                                </label>
-                                <p><var id="lang_cahrt_tip_description"></var></p>
-                            </div>
-                        </fieldset>
-                        <fieldset>
-                            <legend><var id="lang_chart_data_unit"></var></legend>
-                            <div class="format-item-container">
-                                <label><var id="lang_chart_data_unit_title"></var><input type="text" name="unit" class="data-item"></label>
-                                <p><var id="lang_chart_data_unit_description"></var></p>
-                            </div>
-                        </fieldset>
-                    </div>
-                </form>
-            </div>
-            <div class="charts-view">
-                <div id="chartsContainer" class="charts-container"></div>
-                <div id="chartsType" class="charts-type">
-                    <h3><var id="lang_chart_type"></var></h3>
-                    <div class="scroll-view">
-                        <div class="scroll-container">
-                            <div id="scrollBed" class="scroll-bed"></div>
-                        </div>
-                        <div id="buttonContainer" class="button-container">
-                            <a href="#" data-title="prev"><var id="lang_prev_btn"></var></a>
-                            <a href="#" data-title="next"><var id="lang_next_btn"></var></a>
-                        </div>
-                    </div>
-                </div>
-            </div>
-        </div>
-        <script src="../../third-party/jquery-1.10.2.min.js"></script>
-        <script src="../../third-party/highcharts/highcharts.js"></script>
-        <script src="chart.config.js"></script>
-        <script src="charts.js"></script>
-    </body>
-</html>

+ 0 - 519
public/ueditor/dialogs/charts/charts.js

@@ -1,519 +0,0 @@
-/*
- * 图片转换对话框脚本
- **/
-
-var tableData = [],
-    //编辑器页面table
-    editorTable = null,
-    chartsConfig = window.typeConfig,
-    resizeTimer = null,
-    //初始默认图表类型
-    currentChartType = 0;
-
-window.onload = function () {
-
-    editorTable = domUtils.findParentByTagName( editor.selection.getRange().startContainer, 'table', true);
-
-    //未找到表格, 显示错误页面
-    if ( !editorTable ) {
-        document.body.innerHTML = "<div class='edui-charts-not-data'>未找到数据</div>";
-        return;
-    }
-
-    //初始化图表类型选择
-    initChartsTypeView();
-    renderTable( editorTable );
-    initEvent();
-    initUserConfig( editorTable.getAttribute( "data-chart" ) );
-    $( "#scrollBed .view-box:eq("+ currentChartType +")" ).trigger( "click" );
-    updateViewType( currentChartType );
-
-    dialog.addListener( "resize", function () {
-
-        if ( resizeTimer != null ) {
-            window.clearTimeout( resizeTimer );
-        }
-
-        resizeTimer = window.setTimeout( function () {
-
-            resizeTimer = null;
-
-            renderCharts();
-
-        }, 500 );
-
-    } );
-
-};
-
-function initChartsTypeView () {
-
-    var contents = [];
-
-    for ( var i = 0, len = chartsConfig.length; i<len; i++ ) {
-
-        contents.push( '<div class="view-box" data-chart-type="'+ i +'"><img width="300" src="images/charts'+ i +'.png"></div>' );
-
-    }
-
-    $( "#scrollBed" ).html( contents.join( "" ) );
-
-}
-
-//渲染table, 以便用户修改数据
-function renderTable ( table ) {
-
-    var tableHtml = [];
-
-    //构造数据
-    for ( var i = 0, row; row = table.rows[ i ]; i++ ) {
-
-        tableData[ i ] = [];
-        tableHtml[ i ] = [];
-
-        for ( var j = 0, cell; cell = row.cells[ j ]; j++ ) {
-
-            var value = getCellValue( cell );
-
-            if ( i > 0 && j > 0 ) {
-                value = +value;
-            }
-
-            if ( i === 0 || j === 0 ) {
-                tableHtml[ i ].push( '<th>'+ value +'</th>' );
-            } else {
-                tableHtml[ i ].push( '<td><input type="text" class="data-item" value="'+ value +'"></td>' );
-            }
-
-            tableData[ i ][ j ] = value;
-
-        }
-
-        tableHtml[ i ] = tableHtml[ i ].join( "" );
-
-    }
-
-    //draw 表格
-    $( "#tableContainer" ).html( '<table id="showTable" border="1"><tbody><tr>'+ tableHtml.join( "</tr><tr>" ) +'</tr></tbody></table>' );
-
-}
-
-/*
- * 根据表格已有的图表属性初始化当前图表属性
- */
-function initUserConfig ( config ) {
-
-    var parsedConfig = {};
-
-    if ( !config ) {
-        return;
-    }
-
-    config = config.split( ";" );
-
-    $.each( config, function ( index, item ) {
-
-        item = item.split( ":" );
-        parsedConfig[ item[ 0 ] ] = item[ 1 ];
-
-    } );
-
-    setUserConfig( parsedConfig );
-
-}
-
-function initEvent () {
-
-    var cacheValue = null,
-        //图表类型数
-        typeViewCount = chartsConfig.length- 1,
-        $chartsTypeViewBox = $( '#scrollBed .view-box' );
-
-    $( ".charts-format" ).delegate( ".format-ctrl", "change", function () {
-
-        renderCharts();
-
-    } )
-
-    $( ".table-view" ).delegate( ".data-item", "focus", function () {
-
-        cacheValue = this.value;
-
-    } ).delegate( ".data-item", "blur", function () {
-
-        if ( this.value !== cacheValue ) {
-            renderCharts();
-        }
-
-        cacheValue = null;
-
-    } );
-
-    $( "#buttonContainer" ).delegate( "a", "click", function (e) {
-
-        e.preventDefault();
-
-        if ( this.getAttribute( "data-title" ) === 'prev' ) {
-
-            if ( currentChartType > 0 ) {
-                currentChartType--;
-                updateViewType( currentChartType );
-            }
-
-        } else {
-
-            if ( currentChartType < typeViewCount ) {
-                currentChartType++;
-                updateViewType( currentChartType );
-            }
-
-        }
-
-    } );
-
-    //图表类型变化
-    $( '#scrollBed' ).delegate( ".view-box", "click", function (e) {
-
-        var index = $( this ).attr( "data-chart-type" );
-        $chartsTypeViewBox.removeClass( "selected" );
-        $( $chartsTypeViewBox[ index ] ).addClass( "selected" );
-
-        currentChartType = index | 0;
-
-        //饼图, 禁用部分配置
-        if ( currentChartType === chartsConfig.length - 1 ) {
-
-            disableNotPieConfig();
-
-        //启用完整配置
-        } else {
-
-            enableNotPieConfig();
-
-        }
-
-        renderCharts();
-
-    } );
-
-}
-
-function renderCharts () {
-
-    var data = collectData();
-
-    $('#chartsContainer').highcharts( $.extend( {}, chartsConfig[ currentChartType ], {
-
-        credits: {
-            enabled: false
-        },
-        exporting: {
-            enabled: false
-        },
-        title: {
-            text: data.title,
-            x: -20 //center
-        },
-        subtitle: {
-            text: data.subTitle,
-            x: -20
-        },
-        xAxis: {
-            title: {
-                text: data.xTitle
-            },
-            categories: data.categories
-        },
-        yAxis: {
-            title: {
-                text: data.yTitle
-            },
-            plotLines: [{
-                value: 0,
-                width: 1,
-                color: '#808080'
-            }]
-        },
-        tooltip: {
-            enabled: true,
-            valueSuffix: data.suffix
-        },
-        legend: {
-            layout: 'vertical',
-            align: 'right',
-            verticalAlign: 'middle',
-            borderWidth: 1
-        },
-        series: data.series
-
-    } ));
-
-}
-
-function updateViewType ( index ) {
-
-    $( "#scrollBed" ).css( 'marginLeft', -index*324+'px' );
-
-}
-
-function collectData () {
-
-    var form = document.forms[ 'data-form' ],
-        data = null;
-
-    if ( currentChartType !== chartsConfig.length - 1 ) {
-
-        data = getSeriesAndCategories();
-        $.extend( data, getUserConfig() );
-
-    //饼图数据格式
-    } else {
-        data = getSeriesForPieChart();
-        data.title = form[ 'title' ].value;
-        data.suffix = form[ 'unit' ].value;
-    }
-
-    return data;
-
-}
-
-/**
- * 获取用户配置信息
- */
-function getUserConfig () {
-
-    var form = document.forms[ 'data-form' ],
-        info = {
-            title: form[ 'title' ].value,
-            subTitle: form[ 'sub-title' ].value,
-            xTitle: form[ 'x-title' ].value,
-            yTitle: form[ 'y-title' ].value,
-            suffix: form[ 'unit' ].value,
-            //数据对齐方式
-            tableDataFormat: getTableDataFormat (),
-            //饼图提示文字
-            tip: $( "#tipInput" ).val()
-        };
-
-    return info;
-
-}
-
-function setUserConfig ( config ) {
-
-    var form = document.forms[ 'data-form' ];
-
-    config.title && ( form[ 'title' ].value = config.title );
-    config.subTitle && ( form[ 'sub-title' ].value = config.subTitle );
-    config.xTitle && ( form[ 'x-title' ].value = config.xTitle );
-    config.yTitle && ( form[ 'y-title' ].value = config.yTitle );
-    config.suffix && ( form[ 'unit' ].value = config.suffix );
-    config.dataFormat == "-1" && ( form[ 'charts-format' ][ 1 ].checked = true );
-    config.tip && ( form[ 'tip' ].value = config.tip );
-    currentChartType = config.chartType || 0;
-
-}
-
-function getSeriesAndCategories () {
-
-    var form = document.forms[ 'data-form' ],
-        series = [],
-        categories = [],
-        tmp = [],
-        tableData = getTableData();
-
-    //反转数据
-    if ( getTableDataFormat() === "-1" ) {
-
-        for ( var i = 0, len = tableData.length; i < len; i++ ) {
-
-            for ( var j = 0, jlen = tableData[ i ].length; j < jlen; j++ ) {
-
-                if ( !tmp[ j ] ) {
-                    tmp[ j ] = [];
-                }
-
-                tmp[ j ][ i ] = tableData[ i ][ j ];
-
-            }
-
-        }
-
-        tableData = tmp;
-
-    }
-
-    categories = tableData[0].slice( 1 );
-
-    for ( var i = 1, data; data = tableData[ i ]; i++ ) {
-
-        series.push( {
-            name: data[ 0 ],
-            data: data.slice( 1 )
-        } );
-
-    }
-
-    return {
-        series: series,
-        categories: categories
-    };
-
-}
-
-/*
- * 获取数据源数据对齐方式
- */
-function getTableDataFormat () {
-
-    var form = document.forms[ 'data-form' ],
-        items = form['charts-format'];
-
-    return items[ 0 ].checked ? items[ 0 ].value : items[ 1 ].value;
-
-}
-
-/*
- * 禁用非饼图类型的配置项
- */
-function disableNotPieConfig() {
-
-    updateConfigItem( 'disable' );
-
-}
-
-/*
- * 启用非饼图类型的配置项
- */
-function enableNotPieConfig() {
-
-    updateConfigItem( 'enable' );
-
-}
-
-function updateConfigItem ( value ) {
-
-    var table = $( "#showTable" )[ 0 ],
-        isDisable = value === 'disable' ? true : false;
-
-    //table中的input处理
-    for ( var i = 2 , row; row = table.rows[ i ]; i++ ) {
-
-        for ( var j = 1, cell; cell = row.cells[ j ]; j++ ) {
-
-            $( "input", cell ).attr( "disabled", isDisable );
-
-        }
-
-    }
-
-    //其他项处理
-    $( "input.not-pie-item" ).attr( "disabled", isDisable );
-    $( "#tipInput" ).attr( "disabled", !isDisable )
-
-}
-
-/*
- * 获取饼图数据
- * 饼图的数据只取第一行的
- **/
-function getSeriesForPieChart () {
-
-    var series = {
-            type: 'pie',
-            name: $("#tipInput").val(),
-            data: []
-        },
-        tableData = getTableData();
-
-
-    for ( var j = 1, jlen = tableData[ 0 ].length; j < jlen; j++ ) {
-
-        var title = tableData[ 0 ][ j ],
-            val = tableData[ 1 ][ j ];
-
-        series.data.push( [ title, val ] );
-
-    }
-
-    return {
-        series: [ series ]
-    };
-
-}
-
-function getTableData () {
-
-    var table = document.getElementById( "showTable" ),
-        xCount = table.rows[0].cells.length - 1,
-        values = getTableInputValue();
-
-    for ( var i = 0, value; value = values[ i ]; i++ ) {
-
-        tableData[ Math.floor( i / xCount ) + 1 ][ i % xCount + 1 ] = values[ i ];
-
-    }
-
-    return tableData;
-
-}
-
-function getTableInputValue () {
-
-    var table = document.getElementById( "showTable" ),
-        inputs = table.getElementsByTagName( "input" ),
-        values = [];
-
-    for ( var i = 0, input; input = inputs[ i ]; i++ ) {
-        values.push( input.value | 0 );
-    }
-
-    return values;
-
-}
-
-function getCellValue ( cell ) {
-
-    var value = utils.trim( ( cell.innerText || cell.textContent || '' ) );
-
-    return value.replace( new RegExp( UE.dom.domUtils.fillChar, 'g' ), '' ).replace( /^\s+|\s+$/g, '' );
-
-}
-
-
-//dialog确认事件
-dialog.onok = function () {
-
-    //收集信息
-    var form = document.forms[ 'data-form' ],
-        info = getUserConfig();
-
-    //添加图表类型
-    info.chartType = currentChartType;
-
-    //同步表格数据到编辑器
-    syncTableData();
-
-    //执行图表命令
-    editor.execCommand( 'charts', info );
-
-};
-
-/*
- * 同步图表编辑视图的表格数据到编辑器里的原始表格
- */
-function syncTableData () {
-
-    var tableData = getTableData();
-
-    for ( var i = 1, row; row = editorTable.rows[ i ]; i++ ) {
-
-        for ( var j = 1, cell; cell = row.cells[ j ]; j++ ) {
-
-            cell.innerHTML = tableData[ i ] [ j ];
-
-        }
-
-    }
-
-}

BIN
public/ueditor/dialogs/charts/images/charts0.png


Some files were not shown because too many files changed in this diff