├── .babelrc
├── .editorconfig
├── .eslintignore
├── .eslintrc.js
├── .gitignore
├── .postcssrc.js
├── README.md
├── build
├── build.js
├── check-versions.js
├── logo.png
├── utils.js
├── vue-loader.conf.js
├── webpack.base.conf.js
├── webpack.dev.conf.js
└── webpack.prod.conf.js
├── config
├── dev.env.js
├── index.js
└── prod.env.js
├── index.html
├── package-lock.json
├── package.json
├── src
├── App.vue
├── assets
│ └── images
│ │ ├── loggeduser.png
│ │ └── logo.png
├── components
│ ├── .gitkeep
│ ├── BaiduMap
│ │ └── BaiduMap.vue
│ ├── MutiUploader
│ │ └── MutiUploader.vue
│ ├── UEditor
│ │ └── UEditor.vue
│ ├── Uploader
│ │ └── Uploader.vue
│ └── openedPageTags
│ │ └── openedPageTags.vue
├── configs
│ ├── api.js
│ └── index.js
├── main.js
├── plugins
│ ├── axios
│ │ ├── fn
│ │ │ ├── config.js
│ │ │ └── index.js
│ │ └── index.js
│ ├── fastclick
│ │ └── index.js
│ ├── index.js
│ ├── router
│ │ ├── index.js
│ │ └── routes
│ │ │ └── index.js
│ ├── store
│ │ ├── actions
│ │ │ ├── data.js
│ │ │ └── index.js
│ │ ├── getters
│ │ │ └── index.js
│ │ ├── index.js
│ │ ├── mutations
│ │ │ └── index.js
│ │ └── state
│ │ │ └── index.js
│ ├── tree-grid
│ │ └── index.js
│ └── vue-baidu-map
│ │ └── index.js
├── styles
│ └── vars.scss
├── utils
│ └── js
│ │ └── index.js
└── views
│ ├── Login
│ ├── Login.css
│ ├── Login.scss
│ └── Login.vue
│ ├── Main
│ ├── Main.scss
│ └── Main.vue
│ ├── Model
│ ├── Add.vue
│ ├── Edit.vue
│ └── List.vue
│ ├── Personal
│ ├── Data.vue
│ └── Setting.vue
│ └── Welcome
│ ├── Welcome.scss
│ └── Welcome.vue
└── static
├── .gitkeep
└── ueditor
├── dialogs
├── anchor
│ └── anchor.html
├── attachment
│ ├── attachment.css
│ ├── attachment.html
│ ├── attachment.js
│ ├── fileTypeImages
│ │ ├── icon_chm.gif
│ │ ├── icon_default.png
│ │ ├── icon_doc.gif
│ │ ├── icon_exe.gif
│ │ ├── icon_jpg.gif
│ │ ├── icon_mp3.gif
│ │ ├── icon_mv.gif
│ │ ├── icon_pdf.gif
│ │ ├── icon_ppt.gif
│ │ ├── icon_psd.gif
│ │ ├── icon_rar.gif
│ │ ├── icon_txt.gif
│ │ └── icon_xls.gif
│ └── images
│ │ ├── alignicon.gif
│ │ ├── alignicon.png
│ │ ├── bg.png
│ │ ├── file-icons.gif
│ │ ├── file-icons.png
│ │ ├── icons.gif
│ │ ├── icons.png
│ │ ├── image.png
│ │ ├── progress.png
│ │ ├── success.gif
│ │ └── success.png
├── background
│ ├── background.css
│ ├── background.html
│ ├── background.js
│ └── images
│ │ ├── bg.png
│ │ └── success.png
├── charts
│ ├── chart.config.js
│ ├── charts.css
│ ├── charts.html
│ ├── charts.js
│ └── images
│ │ ├── charts0.png
│ │ ├── charts1.png
│ │ ├── charts2.png
│ │ ├── charts3.png
│ │ ├── charts4.png
│ │ └── charts5.png
├── emotion
│ ├── emotion.css
│ ├── emotion.html
│ ├── emotion.js
│ └── images
│ │ ├── 0.gif
│ │ ├── bface.gif
│ │ ├── cface.gif
│ │ ├── fface.gif
│ │ ├── jxface2.gif
│ │ ├── neweditor-tab-bg.png
│ │ ├── tface.gif
│ │ ├── wface.gif
│ │ └── yface.gif
├── gmap
│ └── gmap.html
├── help
│ ├── help.css
│ ├── help.html
│ └── help.js
├── image
│ ├── image.css
│ ├── image.html
│ ├── image.js
│ └── images
│ │ ├── alignicon.jpg
│ │ ├── bg.png
│ │ ├── icons.gif
│ │ ├── icons.png
│ │ ├── image.png
│ │ ├── progress.png
│ │ ├── success.gif
│ │ └── success.png
├── insertframe
│ └── insertframe.html
├── internal.js
├── link
│ └── link.html
├── map
│ ├── map.html
│ └── show.html
├── music
│ ├── music.css
│ ├── music.html
│ └── music.js
├── preview
│ └── preview.html
├── scrawl
│ ├── images
│ │ ├── addimg.png
│ │ ├── brush.png
│ │ ├── delimg.png
│ │ ├── delimgH.png
│ │ ├── empty.png
│ │ ├── emptyH.png
│ │ ├── eraser.png
│ │ ├── redo.png
│ │ ├── redoH.png
│ │ ├── scale.png
│ │ ├── scaleH.png
│ │ ├── size.png
│ │ ├── undo.png
│ │ └── undoH.png
│ ├── scrawl.css
│ ├── scrawl.html
│ └── scrawl.js
├── searchreplace
│ ├── searchreplace.html
│ └── searchreplace.js
├── snapscreen
│ └── snapscreen.html
├── spechars
│ ├── spechars.html
│ └── spechars.js
├── table
│ ├── dragicon.png
│ ├── edittable.css
│ ├── edittable.html
│ ├── edittable.js
│ ├── edittd.html
│ └── edittip.html
├── template
│ ├── config.js
│ ├── images
│ │ ├── bg.gif
│ │ ├── pre0.png
│ │ ├── pre1.png
│ │ ├── pre2.png
│ │ ├── pre3.png
│ │ └── pre4.png
│ ├── template.css
│ ├── template.html
│ └── template.js
├── video
│ ├── images
│ │ ├── bg.png
│ │ ├── center_focus.jpg
│ │ ├── file-icons.gif
│ │ ├── file-icons.png
│ │ ├── icons.gif
│ │ ├── icons.png
│ │ ├── image.png
│ │ ├── left_focus.jpg
│ │ ├── none_focus.jpg
│ │ ├── progress.png
│ │ ├── right_focus.jpg
│ │ ├── success.gif
│ │ └── success.png
│ ├── video.css
│ ├── video.html
│ └── video.js
├── webapp
│ └── webapp.html
└── wordimage
│ ├── fClipboard_ueditor.swf
│ ├── imageUploader.swf
│ ├── tangram.js
│ ├── wordimage.html
│ └── wordimage.js
├── index.html
├── lang
├── en
│ ├── en.js
│ └── images
│ │ ├── addimage.png
│ │ ├── alldeletebtnhoverskin.png
│ │ ├── alldeletebtnupskin.png
│ │ ├── background.png
│ │ ├── button.png
│ │ ├── copy.png
│ │ ├── deletedisable.png
│ │ ├── deleteenable.png
│ │ ├── listbackground.png
│ │ ├── localimage.png
│ │ ├── music.png
│ │ ├── rotateleftdisable.png
│ │ ├── rotateleftenable.png
│ │ ├── rotaterightdisable.png
│ │ ├── rotaterightenable.png
│ │ └── upload.png
└── zh-cn
│ ├── images
│ ├── copy.png
│ ├── localimage.png
│ ├── music.png
│ └── upload.png
│ └── zh-cn.js
├── php
├── Uploader.class.php
├── action_crawler.php
├── action_list.php
├── action_upload.php
├── config.json
└── controller.php
├── themes
├── default
│ ├── css
│ │ ├── ueditor.css
│ │ └── ueditor.min.css
│ ├── dialogbase.css
│ └── images
│ │ ├── anchor.gif
│ │ ├── arrow.png
│ │ ├── arrow_down.png
│ │ ├── arrow_up.png
│ │ ├── button-bg.gif
│ │ ├── cancelbutton.gif
│ │ ├── charts.png
│ │ ├── cursor_h.gif
│ │ ├── cursor_h.png
│ │ ├── cursor_v.gif
│ │ ├── cursor_v.png
│ │ ├── dialog-title-bg.png
│ │ ├── filescan.png
│ │ ├── highlighted.gif
│ │ ├── icons-all.gif
│ │ ├── icons.gif
│ │ ├── icons.png
│ │ ├── loaderror.png
│ │ ├── loading.gif
│ │ ├── lock.gif
│ │ ├── neweditor-tab-bg.png
│ │ ├── pagebreak.gif
│ │ ├── scale.png
│ │ ├── sortable.png
│ │ ├── spacer.gif
│ │ ├── sparator_v.png
│ │ ├── table-cell-align.png
│ │ ├── tangram-colorpicker.png
│ │ ├── toolbar_bg.png
│ │ ├── unhighlighted.gif
│ │ ├── upload.png
│ │ ├── videologo.gif
│ │ ├── word.gif
│ │ └── wordpaste.png
└── iframe.css
├── third-party
├── SyntaxHighlighter
│ ├── shCore.js
│ └── shCoreDefault.css
├── codemirror
│ ├── codemirror.css
│ └── codemirror.js
├── highcharts
│ ├── adapters
│ │ ├── mootools-adapter.js
│ │ ├── mootools-adapter.src.js
│ │ ├── prototype-adapter.js
│ │ ├── prototype-adapter.src.js
│ │ ├── standalone-framework.js
│ │ └── standalone-framework.src.js
│ ├── highcharts-more.js
│ ├── highcharts-more.src.js
│ ├── highcharts.js
│ ├── highcharts.src.js
│ ├── modules
│ │ ├── annotations.js
│ │ ├── annotations.src.js
│ │ ├── canvas-tools.js
│ │ ├── canvas-tools.src.js
│ │ ├── data.js
│ │ ├── data.src.js
│ │ ├── drilldown.js
│ │ ├── drilldown.src.js
│ │ ├── exporting.js
│ │ ├── exporting.src.js
│ │ ├── funnel.js
│ │ ├── funnel.src.js
│ │ ├── heatmap.js
│ │ ├── heatmap.src.js
│ │ ├── map.js
│ │ ├── map.src.js
│ │ ├── no-data-to-display.js
│ │ └── no-data-to-display.src.js
│ └── themes
│ │ ├── dark-blue.js
│ │ ├── dark-green.js
│ │ ├── gray.js
│ │ ├── grid.js
│ │ └── skies.js
├── jquery-1.10.2.js
├── jquery-1.10.2.min.js
├── jquery-1.10.2.min.map
├── snapscreen
│ └── UEditorSnapscreen.exe
├── video-js
│ ├── font
│ │ ├── vjs.eot
│ │ ├── vjs.svg
│ │ ├── vjs.ttf
│ │ └── vjs.woff
│ ├── video-js.css
│ ├── video-js.min.css
│ ├── video-js.swf
│ ├── video.dev.js
│ └── video.js
├── webuploader
│ ├── Uploader.swf
│ ├── webuploader.css
│ ├── webuploader.custom.js
│ ├── webuploader.custom.min.js
│ ├── webuploader.flashonly.js
│ ├── webuploader.flashonly.min.js
│ ├── webuploader.html5only.js
│ ├── webuploader.html5only.min.js
│ ├── webuploader.js
│ ├── webuploader.min.js
│ ├── webuploader.withoutimage.js
│ └── webuploader.withoutimage.min.js
├── xss.min.js
└── zeroclipboard
│ ├── ZeroClipboard.js
│ ├── ZeroClipboard.min.js
│ └── ZeroClipboard.swf
├── ueditor.all.js
├── ueditor.all.min.js
├── ueditor.config.js
├── ueditor.parse.js
└── ueditor.parse.min.js
/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": [
3 | ["env", {
4 | "modules": false,
5 | "targets": {
6 | "browsers": ["> 1%", "last 2 versions", "not ie <= 8"]
7 | }
8 | }],
9 | "stage-2"
10 | ],
11 | "plugins": ["transform-vue-jsx", "transform-runtime"]
12 | }
13 |
--------------------------------------------------------------------------------
/.editorconfig:
--------------------------------------------------------------------------------
1 | root = true
2 |
3 | [*]
4 | charset = utf-8
5 | indent_style = space
6 | indent_size = 2
7 | end_of_line = lf
8 | insert_final_newline = true
9 | trim_trailing_whitespace = true
10 |
--------------------------------------------------------------------------------
/.eslintignore:
--------------------------------------------------------------------------------
1 | /build/
2 | /config/
3 | /dist/
4 | /*.js
5 |
--------------------------------------------------------------------------------
/.eslintrc.js:
--------------------------------------------------------------------------------
1 | // https://eslint.org/docs/user-guide/configuring
2 |
3 | module.exports = {
4 | root: true,
5 | parser: 'babel-eslint',
6 | parserOptions: {
7 | sourceType: 'module'
8 | },
9 | env: {
10 | browser: true,
11 | },
12 | // https://github.com/standard/standard/blob/master/docs/RULES-en.md
13 | extends: 'standard',
14 | // required to lint *.vue files
15 | plugins: [
16 | 'html'
17 | ],
18 | // add your custom rules here
19 | rules: {
20 | // allow async-await
21 | 'generator-star-spacing': 'off',
22 | // allow debugger during development
23 | 'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off'
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules/
3 | /dist/
4 | npm-debug.log*
5 | yarn-debug.log*
6 | yarn-error.log*
7 |
8 | # Editor directories and files
9 | .idea
10 | .vscode
11 | *.suo
12 | *.ntvs*
13 | *.njsproj
14 | *.sln
15 |
--------------------------------------------------------------------------------
/.postcssrc.js:
--------------------------------------------------------------------------------
1 | // https://github.com/michael-ciniawsky/postcss-load-config
2 |
3 | module.exports = {
4 | "plugins": {
5 | // to edit target browsers: use "browserslist" field in package.json
6 | "postcss-import": {},
7 | "autoprefixer": {}
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/build/build.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 | require('./check-versions')()
3 |
4 | process.env.NODE_ENV = 'production'
5 |
6 | const ora = require('ora')
7 | const rm = require('rimraf')
8 | const path = require('path')
9 | const chalk = require('chalk')
10 | const webpack = require('webpack')
11 | const config = require('../config')
12 | const webpackConfig = require('./webpack.prod.conf')
13 |
14 | const spinner = ora('building for production...')
15 | spinner.start()
16 |
17 | rm(path.join(config.build.assetsRoot, config.build.assetsSubDirectory), err => {
18 | if (err) throw err
19 | webpack(webpackConfig, (err, stats) => {
20 | spinner.stop()
21 | if (err) throw err
22 | process.stdout.write(stats.toString({
23 | colors: true,
24 | modules: false,
25 | children: false, // If you are using ts-loader, setting this to true will make TypeScript errors show up during build.
26 | chunks: false,
27 | chunkModules: false
28 | }) + '\n\n')
29 |
30 | if (stats.hasErrors()) {
31 | console.log(chalk.red(' Build failed with errors.\n'))
32 | process.exit(1)
33 | }
34 |
35 | console.log(chalk.cyan(' Build complete.\n'))
36 | console.log(chalk.yellow(
37 | ' Tip: built files are meant to be served over an HTTP server.\n' +
38 | ' Opening index.html over file:// won\'t work.\n'
39 | ))
40 | })
41 | })
42 |
--------------------------------------------------------------------------------
/build/check-versions.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 | const chalk = require('chalk')
3 | const semver = require('semver')
4 | const packageConfig = require('../package.json')
5 | const shell = require('shelljs')
6 |
7 | function exec (cmd) {
8 | return require('child_process').execSync(cmd).toString().trim()
9 | }
10 |
11 | const versionRequirements = [
12 | {
13 | name: 'node',
14 | currentVersion: semver.clean(process.version),
15 | versionRequirement: packageConfig.engines.node
16 | }
17 | ]
18 |
19 | if (shell.which('npm')) {
20 | versionRequirements.push({
21 | name: 'npm',
22 | currentVersion: exec('npm --version'),
23 | versionRequirement: packageConfig.engines.npm
24 | })
25 | }
26 |
27 | module.exports = function () {
28 | const warnings = []
29 |
30 | for (let i = 0; i < versionRequirements.length; i++) {
31 | const mod = versionRequirements[i]
32 |
33 | if (!semver.satisfies(mod.currentVersion, mod.versionRequirement)) {
34 | warnings.push(mod.name + ': ' +
35 | chalk.red(mod.currentVersion) + ' should be ' +
36 | chalk.green(mod.versionRequirement)
37 | )
38 | }
39 | }
40 |
41 | if (warnings.length) {
42 | console.log('')
43 | console.log(chalk.yellow('To use this template, you must update following to modules:'))
44 | console.log()
45 |
46 | for (let i = 0; i < warnings.length; i++) {
47 | const warning = warnings[i]
48 | console.log(' ' + warning)
49 | }
50 |
51 | console.log()
52 | process.exit(1)
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/build/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/build/logo.png
--------------------------------------------------------------------------------
/build/utils.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 | const path = require('path')
3 | const config = require('../config')
4 | const ExtractTextPlugin = require('extract-text-webpack-plugin')
5 | const packageConfig = require('../package.json')
6 |
7 | exports.assetsPath = function (_path) {
8 | const assetsSubDirectory = process.env.NODE_ENV === 'production'
9 | ? config.build.assetsSubDirectory
10 | : config.dev.assetsSubDirectory
11 |
12 | return path.posix.join(assetsSubDirectory, _path)
13 | }
14 |
15 | exports.cssLoaders = function (options) {
16 | options = options || {}
17 |
18 | const cssLoader = {
19 | loader: 'css-loader',
20 | options: {
21 | sourceMap: options.sourceMap
22 | }
23 | }
24 |
25 | const postcssLoader = {
26 | loader: 'postcss-loader',
27 | options: {
28 | sourceMap: options.sourceMap
29 | }
30 | }
31 |
32 | // generate loader string to be used with extract text plugin
33 | function generateLoaders (loader, loaderOptions) {
34 | const loaders = options.usePostCSS ? [cssLoader, postcssLoader] : [cssLoader]
35 |
36 | if (loader) {
37 | loaders.push({
38 | loader: loader + '-loader',
39 | options: Object.assign({}, loaderOptions, {
40 | sourceMap: options.sourceMap
41 | })
42 | })
43 | }
44 |
45 | // Extract CSS when that option is specified
46 | // (which is the case during production build)
47 | if (options.extract) {
48 | return ExtractTextPlugin.extract({
49 | use: loaders,
50 | fallback: 'vue-style-loader'
51 | })
52 | } else {
53 | return ['vue-style-loader'].concat(loaders)
54 | }
55 | }
56 |
57 | // https://vue-loader.vuejs.org/en/configurations/extract-css.html
58 | return {
59 | css: generateLoaders(),
60 | postcss: generateLoaders(),
61 | less: generateLoaders('less'),
62 | sass: generateLoaders('sass', { indentedSyntax: true }),
63 | scss: generateLoaders('sass'),
64 | stylus: generateLoaders('stylus'),
65 | styl: generateLoaders('stylus')
66 | }
67 | }
68 |
69 | // Generate loaders for standalone style files (outside of .vue)
70 | exports.styleLoaders = function (options) {
71 | const output = []
72 | const loaders = exports.cssLoaders(options)
73 |
74 | for (const extension in loaders) {
75 | const loader = loaders[extension]
76 | output.push({
77 | test: new RegExp('\\.' + extension + '$'),
78 | use: loader
79 | })
80 | }
81 |
82 | return output
83 | }
84 |
85 | exports.createNotifierCallback = () => {
86 | const notifier = require('node-notifier')
87 |
88 | return (severity, errors) => {
89 | if (severity !== 'error') return
90 |
91 | const error = errors[0]
92 | const filename = error.file && error.file.split('!').pop()
93 |
94 | notifier.notify({
95 | title: packageConfig.name,
96 | message: severity + ': ' + error.name,
97 | subtitle: filename || '',
98 | icon: path.join(__dirname, 'logo.png')
99 | })
100 | }
101 | }
102 |
--------------------------------------------------------------------------------
/build/vue-loader.conf.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 | const utils = require('./utils')
3 | const config = require('../config')
4 | const isProduction = process.env.NODE_ENV === 'production'
5 | const sourceMapEnabled = isProduction
6 | ? config.build.productionSourceMap
7 | : config.dev.cssSourceMap
8 |
9 | module.exports = {
10 | loaders: utils.cssLoaders({
11 | sourceMap: sourceMapEnabled,
12 | extract: isProduction
13 | }),
14 | cssSourceMap: sourceMapEnabled,
15 | cacheBusting: config.dev.cacheBusting,
16 | transformToRequire: {
17 | video: ['src', 'poster'],
18 | source: 'src',
19 | img: 'src',
20 | image: 'xlink:href'
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/build/webpack.base.conf.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 | const path = require('path')
3 | const utils = require('./utils')
4 | const config = require('../config')
5 | const vueLoaderConfig = require('./vue-loader.conf')
6 |
7 | function resolve (dir) {
8 | return path.join(__dirname, '..', dir)
9 | }
10 |
11 | const createLintingRule = () => ({
12 | test: /\.(js|vue)$/,
13 | loader: 'eslint-loader',
14 | enforce: 'pre',
15 | include: [resolve('src'), resolve('test')],
16 | options: {
17 | formatter: require('eslint-friendly-formatter'),
18 | emitWarning: !config.dev.showEslintErrorsInOverlay
19 | }
20 | })
21 |
22 | module.exports = {
23 | context: path.resolve(__dirname, '../'),
24 | entry: {
25 | app: './src/main.js'
26 | },
27 | output: {
28 | path: config.build.assetsRoot,
29 | filename: '[name].js',
30 | publicPath: process.env.NODE_ENV === 'production'
31 | ? config.build.assetsPublicPath
32 | : config.dev.assetsPublicPath
33 | },
34 | resolve: {
35 | extensions: ['.js', '.vue', '.json'],
36 | alias: {
37 | 'vue$': 'vue/dist/vue.esm.js',
38 | '@': resolve('src'),
39 | 'scss_vars': '@/styles/vars.scss'
40 | }
41 | },
42 | module: {
43 | rules: [
44 | ...(config.dev.useEslint ? [createLintingRule()] : []),
45 | {
46 | test: /\.vue$/,
47 | loader: 'vue-loader',
48 | options: vueLoaderConfig
49 | },
50 | {
51 | test: /\.js$/,
52 | loader: 'babel-loader',
53 | include: [resolve('src'), resolve('test')]
54 | },
55 | {
56 | test: /\.(png|jpe?g|gif|svg)(\?.*)?$/,
57 | loader: 'url-loader',
58 | options: {
59 | limit: 10000,
60 | name: utils.assetsPath('img/[name].[hash:7].[ext]')
61 | }
62 | },
63 | {
64 | test: /\.(mp4|webm|ogg|mp3|wav|flac|aac)(\?.*)?$/,
65 | loader: 'url-loader',
66 | options: {
67 | limit: 10000,
68 | name: utils.assetsPath('media/[name].[hash:7].[ext]')
69 | }
70 | },
71 | {
72 | test: /\.(woff2?|eot|ttf|otf)(\?.*)?$/,
73 | loader: 'url-loader',
74 | options: {
75 | limit: 10000,
76 | name: utils.assetsPath('fonts/[name].[hash:7].[ext]')
77 | }
78 | }
79 | ]
80 | },
81 | node: {
82 | // prevent webpack from injecting useless setImmediate polyfill because Vue
83 | // source contains it (although only uses it if it's native).
84 | setImmediate: false,
85 | // prevent webpack from injecting mocks to Node native modules
86 | // that does not make sense for the client
87 | dgram: 'empty',
88 | fs: 'empty',
89 | net: 'empty',
90 | tls: 'empty',
91 | child_process: 'empty'
92 | }
93 | }
94 |
--------------------------------------------------------------------------------
/build/webpack.dev.conf.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 | const utils = require('./utils')
3 | const webpack = require('webpack')
4 | const config = require('../config')
5 | const merge = require('webpack-merge')
6 | const baseWebpackConfig = require('./webpack.base.conf')
7 | const HtmlWebpackPlugin = require('html-webpack-plugin')
8 | const FriendlyErrorsPlugin = require('friendly-errors-webpack-plugin')
9 | const portfinder = require('portfinder')
10 |
11 | const HOST = process.env.HOST
12 | const PORT = process.env.PORT && Number(process.env.PORT)
13 |
14 | const devWebpackConfig = merge(baseWebpackConfig, {
15 | module: {
16 | rules: utils.styleLoaders({ sourceMap: config.dev.cssSourceMap, usePostCSS: true })
17 | },
18 | // cheap-module-eval-source-map is faster for development
19 | devtool: config.dev.devtool,
20 |
21 | // these devServer options should be customized in /config/index.js
22 | devServer: {
23 | clientLogLevel: 'warning',
24 | historyApiFallback: true,
25 | hot: true,
26 | compress: true,
27 | host: HOST || config.dev.host,
28 | port: PORT || config.dev.port,
29 | open: config.dev.autoOpenBrowser,
30 | overlay: config.dev.errorOverlay
31 | ? { warnings: false, errors: true }
32 | : false,
33 | publicPath: config.dev.assetsPublicPath,
34 | proxy: config.dev.proxyTable,
35 | quiet: true, // necessary for FriendlyErrorsPlugin
36 | watchOptions: {
37 | poll: config.dev.poll,
38 | }
39 | },
40 | plugins: [
41 | new webpack.DefinePlugin({
42 | 'process.env': require('../config/dev.env')
43 | }),
44 | new webpack.HotModuleReplacementPlugin(),
45 | new webpack.NamedModulesPlugin(), // HMR shows correct file names in console on update.
46 | new webpack.NoEmitOnErrorsPlugin(),
47 | // https://github.com/ampedandwired/html-webpack-plugin
48 | new HtmlWebpackPlugin({
49 | filename: 'index.html',
50 | template: 'index.html',
51 | inject: true
52 | }),
53 | ]
54 | })
55 |
56 | module.exports = new Promise((resolve, reject) => {
57 | portfinder.basePort = process.env.PORT || config.dev.port
58 | portfinder.getPort((err, port) => {
59 | if (err) {
60 | reject(err)
61 | } else {
62 | // publish the new Port, necessary for e2e tests
63 | process.env.PORT = port
64 | // add port to devServer config
65 | devWebpackConfig.devServer.port = port
66 |
67 | // Add FriendlyErrorsPlugin
68 | devWebpackConfig.plugins.push(new FriendlyErrorsPlugin({
69 | compilationSuccessInfo: {
70 | messages: [`Your application is running here: http://${devWebpackConfig.devServer.host}:${port}`],
71 | },
72 | onErrors: config.dev.notifyOnErrors
73 | ? utils.createNotifierCallback()
74 | : undefined
75 | }))
76 |
77 | resolve(devWebpackConfig)
78 | }
79 | })
80 | })
81 |
--------------------------------------------------------------------------------
/config/dev.env.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 | const merge = require('webpack-merge')
3 | const prodEnv = require('./prod.env')
4 |
5 | module.exports = merge(prodEnv, {
6 | NODE_ENV: '"development"'
7 | })
8 |
--------------------------------------------------------------------------------
/config/index.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 | // Template version: 1.2.7
3 | // see http://vuejs-templates.github.io/webpack for documentation.
4 |
5 | const path = require('path')
6 |
7 | module.exports = {
8 | dev: {
9 |
10 | // Paths
11 | assetsSubDirectory: 'static',
12 | assetsPublicPath: '/',
13 | proxyTable: {
14 | '/api': {
15 | // 本地调试API地址
16 | target: 'http://api.mtd.kfw001.com',
17 | changeOrigin: true,
18 | pathRewrite: {
19 | '^/api': '/Admin'
20 | }
21 | }
22 | },
23 |
24 | // Various Dev Server settings
25 | host: 'localhost', // can be overwritten by process.env.HOST
26 | port: 8080, // can be overwritten by process.env.PORT, if port is in use, a free one will be determined
27 | autoOpenBrowser: false,
28 | errorOverlay: true,
29 | notifyOnErrors: true,
30 | poll: false, // https://webpack.js.org/configuration/dev-server/#devserver-watchoptions-
31 |
32 | // Use Eslint Loader?
33 | // If true, your code will be linted during bundling and
34 | // linting errors and warnings will be shown in the console.
35 | useEslint: true,
36 | // If true, eslint errors and warnings will also be shown in the error overlay
37 | // in the browser.
38 | showEslintErrorsInOverlay: false,
39 |
40 | /**
41 | * Source Maps
42 | */
43 |
44 | // https://webpack.js.org/configuration/devtool/#development
45 | devtool: 'eval-source-map',
46 |
47 | // If you have problems debugging vue-files in devtools,
48 | // set this to false - it *may* help
49 | // https://vue-loader.vuejs.org/en/options.html#cachebusting
50 | cacheBusting: true,
51 |
52 | // CSS Sourcemaps off by default because relative paths are "buggy"
53 | // with this option, according to the CSS-Loader README
54 | // (https://github.com/webpack/css-loader#sourcemaps)
55 | // In our experience, they generally work as expected,
56 | // just be aware of this issue when enabling this option.
57 | cssSourceMap: false
58 | },
59 |
60 | build: {
61 | // Template for index.html
62 | index: path.resolve(__dirname, '../dist/index.html'),
63 |
64 | // Paths
65 | assetsRoot: path.resolve(__dirname, '../dist'),
66 | assetsSubDirectory: 'static',
67 | assetsPublicPath: '/',
68 |
69 | /**
70 | * Source Maps
71 | */
72 |
73 | productionSourceMap: false,
74 | // https://webpack.js.org/configuration/devtool/#production
75 | devtool: '#source-map',
76 |
77 | // Gzip off by default as many popular static hosts such as
78 | // Surge or Netlify already gzip all static assets for you.
79 | // Before setting to `true`, make sure to:
80 | // npm install --save-dev compression-webpack-plugin
81 | productionGzip: true,
82 | productionGzipExtensions: ['js', 'css'],
83 |
84 | // Run the build command with an extra argument to
85 | // View the bundle analyzer report after build finishes:
86 | // `npm run build --report`
87 | // Set to `true` or `false` to always turn it on or off
88 | bundleAnalyzerReport: process.env.npm_config_report
89 | }
90 | }
91 |
--------------------------------------------------------------------------------
/config/prod.env.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 | module.exports = {
3 | NODE_ENV: '"production"'
4 | }
5 |
--------------------------------------------------------------------------------
/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "admin-template",
3 | "version": "1.0.0",
4 | "description": "快房传媒后台管理系统",
5 | "author": "wyj ",
6 | "private": true,
7 | "scripts": {
8 | "dev": "webpack-dev-server --inline --progress --config build/webpack.dev.conf.js",
9 | "start": "npm run dev",
10 | "lint": "eslint --ext .js,.vue src",
11 | "build": "node build/build.js"
12 | },
13 | "dependencies": {
14 | "axios": "^0.15.3",
15 | "echarts": "^3.7.1",
16 | "element-tree-grid": "0.0.15",
17 | "element-ui": "^1.4.4",
18 | "fastclick": "^1.0.6",
19 | "font-awesome": "^4.7.0",
20 | "normalize.css": "^7.0.0",
21 | "vue": "^2.5.2",
22 | "vue-baidu-map": "^0.12.4",
23 | "vue-router": "^3.0.1",
24 | "vuex": "^3.0.1"
25 | },
26 | "devDependencies": {
27 | "autoprefixer": "^7.1.2",
28 | "babel-core": "^6.22.1",
29 | "babel-eslint": "^7.1.1",
30 | "babel-helper-vue-jsx-merge-props": "^2.0.3",
31 | "babel-loader": "^7.1.1",
32 | "babel-plugin-syntax-jsx": "^6.18.0",
33 | "babel-plugin-transform-runtime": "^6.22.0",
34 | "babel-plugin-transform-vue-jsx": "^3.5.0",
35 | "babel-preset-env": "^1.3.2",
36 | "babel-preset-stage-2": "^6.22.0",
37 | "chalk": "^2.0.1",
38 | "compression-webpack-plugin": "^1.1.3",
39 | "copy-webpack-plugin": "^4.0.1",
40 | "css-loader": "^0.28.0",
41 | "eslint": "^3.19.0",
42 | "eslint-config-standard": "^10.2.1",
43 | "eslint-friendly-formatter": "^3.0.0",
44 | "eslint-loader": "^1.7.1",
45 | "eslint-plugin-html": "^3.0.0",
46 | "eslint-plugin-import": "^2.7.0",
47 | "eslint-plugin-node": "^5.2.0",
48 | "eslint-plugin-promise": "^3.4.0",
49 | "eslint-plugin-standard": "^3.0.1",
50 | "extract-text-webpack-plugin": "^3.0.0",
51 | "file-loader": "^1.1.4",
52 | "friendly-errors-webpack-plugin": "^1.6.1",
53 | "html-webpack-plugin": "^2.30.1",
54 | "node-notifier": "^5.1.2",
55 | "node-sass": "^4.7.2",
56 | "optimize-css-assets-webpack-plugin": "^3.2.0",
57 | "ora": "^1.2.0",
58 | "portfinder": "^1.0.13",
59 | "postcss-import": "^11.0.0",
60 | "postcss-loader": "^2.0.8",
61 | "rimraf": "^2.6.0",
62 | "sass-loader": "^6.0.6",
63 | "semver": "^5.3.0",
64 | "shelljs": "^0.7.6",
65 | "uglifyjs-webpack-plugin": "^1.1.1",
66 | "url-loader": "^0.5.8",
67 | "vue-loader": "^13.3.0",
68 | "vue-style-loader": "^3.0.1",
69 | "vue-template-compiler": "^2.5.2",
70 | "webpack": "^3.6.0",
71 | "webpack-bundle-analyzer": "^2.9.0",
72 | "webpack-dev-server": "^2.9.1",
73 | "webpack-merge": "^4.1.0"
74 | },
75 | "engines": {
76 | "node": ">= 4.0.0",
77 | "npm": ">= 3.0.0"
78 | },
79 | "browserslist": [
80 | "> 1%",
81 | "last 2 versions",
82 | "not ie <= 8"
83 | ]
84 | }
85 |
--------------------------------------------------------------------------------
/src/App.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
14 |
15 |
71 |
--------------------------------------------------------------------------------
/src/assets/images/loggeduser.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/src/assets/images/loggeduser.png
--------------------------------------------------------------------------------
/src/assets/images/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/src/assets/images/logo.png
--------------------------------------------------------------------------------
/src/components/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/src/components/.gitkeep
--------------------------------------------------------------------------------
/src/components/BaiduMap/BaiduMap.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | {{ !display ? '调用' : '关闭' }}百度地图查询
6 |
7 |
8 |
9 |
10 | 关键字
11 |
12 |
15 |
16 |
17 |
18 |
19 |
20 |
23 |
27 |
28 |
29 |
30 |
31 |
32 |
102 |
103 |
131 |
--------------------------------------------------------------------------------
/src/components/UEditor/UEditor.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
68 |
73 |
--------------------------------------------------------------------------------
/src/components/Uploader/Uploader.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
101 |
102 |
130 |
--------------------------------------------------------------------------------
/src/components/openedPageTags/openedPageTags.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
11 | {{item.name}}
12 |
13 |
14 |
15 |
16 |
64 |
65 |
67 |
--------------------------------------------------------------------------------
/src/configs/api.js:
--------------------------------------------------------------------------------
1 | import systems from '@/configs'
2 |
3 | const baseUrl = systems.debug ? '/api/' : 'http://api.kfw001.com/'
4 | export default {
5 | // 接口请求baseUrl
6 | baseUrl: baseUrl,
7 | // 接口文档地址
8 | // document:
9 | api: {
10 | // 公共接口
11 | imageUpload: 'Uploadlocal/image', // 文件上传
12 | sysinfoProvince: 'Sysinfo/province', // 省市级三级联动
13 | sysinfoCity: 'Sysinfo/city', // 省市级三级联动
14 | sysinfoZone: 'Sysinfo/zone', // 省市级三级联动
15 | adminMenu: 'admin/menu', // 用户权限
16 | login: 'Login/login', // 登录接口
17 | logout: 'Login/logout', // 退出接口
18 | code: 'Login/code', // 二维码生成接口
19 | personData: 'Personal/data' // 个人资料接口
20 |
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/src/configs/index.js:
--------------------------------------------------------------------------------
1 | export default {
2 | title: '后台管理系统',
3 | debug: process.env.NODE_ENV !== 'production'
4 | }
5 |
--------------------------------------------------------------------------------
/src/main.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue'
2 | import App from './App'
3 |
4 | import ElementUI from 'element-ui'
5 | import 'element-ui/lib/theme-default/index.css'
6 |
7 | import {
8 | router,
9 | store
10 | } from '@/plugins'
11 |
12 | Vue.use(ElementUI)
13 |
14 | const vue = new Vue({
15 | router,
16 | store,
17 | ...App
18 | }).$mount('#app')
19 |
20 | // 导出 vue 实例, 用于 api 统一错误提示
21 | export const vm = vue
22 |
--------------------------------------------------------------------------------
/src/plugins/axios/fn/config.js:
--------------------------------------------------------------------------------
1 | /**
2 | * axios 配置文件
3 | * @desc: 配置ajax headers request Response 数据预处理
4 | * @author: 52admin
5 | */
6 |
7 | import axios from 'axios'
8 | import Qs from 'qs'
9 | import configs from '@/configs/api'
10 | // vue 实例
11 | import { vm as Vue } from '@/main.js'
12 |
13 | const {baseUrl} = configs
14 | // 确认默认链接
15 | axios.defaults.baseURL = baseUrl
16 |
17 | // 初始化post header
18 | axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded'
19 |
20 | // 支持跨域携带cookie
21 | axios.defaults.withCredentials = true
22 |
23 | /**
24 | * todo: 预处理Requests数据
25 | * desc: 进行数据转换,添加默认字段等
26 | * @return data;
27 | **/
28 | axios.defaults.transformRequest = function _transformRequest (params = {}) {
29 | // 返回完整数据,请求ajax
30 | return Qs.stringify(params)
31 | }
32 |
33 | /**
34 | * todo: 预处理Response数据
35 | * desc: 可以进行返回码操作
36 | * @return data || null;
37 | **/
38 | axios.defaults.transformResponse = function _transformResponse (res) {
39 | try {
40 | res = JSON.parse(res)
41 | } catch (e) {
42 | Vue.$message({
43 | message: '服务器有问题!',
44 | type: 'error'
45 | })
46 | return null
47 | }
48 |
49 | res.status = Number(res.status) // 错误码统一转为 Number
50 | // 状态正常
51 | if (res.status !== 200) {
52 | switch (res.status) {
53 | case 102: // 没有登录
54 | // case 1020: // 您没有访问权限
55 | // case 104: // 请勿非法访问
56 | // case 306: // 身份信息过期
57 | // 需要跳转路由,清除登录状态
58 | Vue.$store.dispatch('login_out')
59 | Vue.$router.push('/login')
60 | Vue.$message({
61 | message: res.info,
62 | type: 'error'
63 | })
64 | break
65 | default:
66 | // 其他错误提示错误信息,返回data
67 | Vue.$message({
68 | message: res.info,
69 | type: 'error'
70 | })
71 | break
72 | }
73 | return null
74 | } else {
75 | return res
76 | }
77 | }
78 |
--------------------------------------------------------------------------------
/src/plugins/axios/fn/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * 对于axios的进一步封装
3 | * @desc: 契合公司开发流程以及vue开发模板,对axios进行进一步分装
4 | **/
5 |
6 | // 加载axios
7 | import axios from 'axios'
8 | // 加载本地配置文件
9 | import configs from '@/configs/api'
10 | // 导入全局配置
11 | import './config.js'
12 | // 获取请求地址域名以及接口列表
13 | const {api} = configs
14 |
15 | // 处理回调参数
16 | const handleResponse = function (res) {
17 | return (res.data ? res.data : null)
18 | }
19 | // core
20 | export default {
21 | post (name, params, options = {}) {
22 | // 验证name参数, 必填参数
23 | if (name == null) {
24 | throw new Error(`
25 | error arguments: name is undefined,
26 | please check your function.
27 | `)
28 | }
29 | // 验证所使用的方法是否被配置
30 | // if( api[name] == null ) throw `
31 | // error arguments: name is not configured,
32 | // please check \'@\/configs\/api.js\'.
33 | // `;
34 | // 根据默认参数进行ajax请求
35 | // 如果找不到匹配的接口地址,则采用通配模式 `${MODEL_NAME}/`
36 | return axios.post(api[name] ? api[name] : name, params, options)
37 | .then(res => handleResponse(res))
38 | },
39 | get (name, params) {
40 | // 验证name参数, 必填参数
41 | if (name == null) {
42 | throw new Error(`
43 | error arguments: name is undefined,
44 | please check your function.
45 | `)
46 | }
47 | // if( api[name] == null ) throw `
48 | // error arguments: name is not configured,
49 | // please check \'@\/configs\/api.js\'.
50 | // `;
51 | // 根据默认参数进行ajax请求
52 | // 如果找不到匹配的接口地址,则采用通配模式 `${MODEL_NAME}/`
53 | return axios.get(api[name] ? api[name] : name, {params})
54 | .then(res => handleResponse(res))
55 | }
56 | }
57 |
--------------------------------------------------------------------------------
/src/plugins/axios/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * ajax集中化处理
3 | * @desc: ajax集中处理函数
4 | * @author: helloLaoYanG
5 | * @param:
6 | * name [String] 接口名称,来自/src/api/conf/config.js
7 | * param [Object] 接口参数,必须为object
8 | * @return
9 | * axios请求对象
10 | **/
11 |
12 | import Vue from 'vue'
13 | import http from './fn'
14 |
15 | // 挂在到$http
16 | Vue.prototype.$http = http
17 |
18 | export default http
19 |
--------------------------------------------------------------------------------
/src/plugins/fastclick/index.js:
--------------------------------------------------------------------------------
1 | import configs from '@/configs'
2 | import FastClick from 'fastclick'
3 |
4 | // 开发环境中不载入次模块
5 | if (!configs.debug) FastClick.attach(document.body)
6 |
--------------------------------------------------------------------------------
/src/plugins/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * 用于加载插件的位置
3 | * @desc: 加载额外插件
4 | **/
5 | // 取消点击延时
6 | import './fastclick'
7 | // 安装 axios作为ajax请求
8 | import './axios'
9 | // 安装初始化
10 | import 'normalize.css'
11 | // tree-grid
12 | import './tree-grid'
13 | // 百度地图组件
14 | import './vue-baidu-map'
15 | // 安装字体图标
16 | import 'font-awesome/css/font-awesome.min.css'
17 | // 安装输出vue-router
18 | export { default as router } from './router'
19 | // 安装输出vux
20 | export { default as store } from './store'
21 |
--------------------------------------------------------------------------------
/src/plugins/router/index.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue'
2 | import VueRouter from 'vue-router'
3 | import routes from './routes'
4 | import configs from '@/configs'
5 | import { store } from '@/plugins'
6 | // Element Message Component
7 | import { Message } from 'element-ui'
8 |
9 | Vue.use(VueRouter)
10 |
11 | const router = new VueRouter({
12 | routes
13 | // mode: 'history'
14 | })
15 |
16 | router.beforeEach((to, from, next) => {
17 | document.title = `${configs.title} - ${to.name}`
18 | const {hasAuth, auth} = store.state.user
19 | // 未拿到权限,则获取
20 | if (!hasAuth) {
21 | store.dispatch('getUserAuth')
22 | }
23 | // 如果未登录,跳转
24 | if (window.localStorage.getItem('IS_LOGIN') === null && to.path !== '/login') {
25 | next({
26 | path: '/login',
27 | query: {redirect: to.fullPath}
28 | // 将跳转的路由path作为参数,登录成功后跳转到该路由
29 | })
30 | } else {
31 | // 需要鉴权的路由地址
32 | if (to.meta.requiresAuth) {
33 | // 有权限进入
34 | if (auth.indexOf(to.meta.alias) > -1) {
35 | next()
36 | } else {
37 | if (auth.length > 0) {
38 | Message.error({
39 | message: '当前用户权限不足,无法访问',
40 | showClose: true
41 | })
42 | } else {
43 | next()
44 | }
45 | }
46 | } else {
47 | next()
48 | }
49 | }
50 | })
51 |
52 | export default router
53 |
--------------------------------------------------------------------------------
/src/plugins/router/routes/index.js:
--------------------------------------------------------------------------------
1 | const Main = () => import('@/views/Main/Main.vue')
2 |
3 | /**
4 | * 路由与导航分离
5 | * 路由对象 meta 标签
6 | * meta: {
7 | * requiresAuth: true,
8 | * alias: 'Pmsadmin/Oragnize/list' // 用于权限的校验
9 | * }
10 | *
11 | */
12 |
13 | let routes = [
14 | // 登录页
15 | {
16 | path: '/login',
17 | component: () => import('@/views/Login/Login.vue'),
18 | name: '用户登录'
19 | },
20 | // 欢迎页
21 | {
22 | path: '/',
23 | component: Main,
24 | name: '首页',
25 | redirect: '/main',
26 | children: [{
27 | path: '/main',
28 | component: () => import('@/views/Welcome/Welcome.vue'),
29 | name: '欢迎使用'
30 | }]
31 | },
32 | // 菜单演示
33 | {
34 | path: '/demo',
35 | component: Main,
36 | name: '演示菜单',
37 | children: [
38 | {
39 | path: 'list',
40 | component: () => import('@/views/Model/List.vue'),
41 | name: '菜单列表',
42 | meta: {requiresAuth: true, alias: 'Admin/Demo/list'}
43 | },
44 | {
45 | path: 'list/edit/:id',
46 | component: () => import('@/views/Model/Edit.vue'),
47 | name: '菜单编辑',
48 | meta: {requiresAuth: true, alias: 'Admin/Demo/list'}
49 | },
50 | {
51 | path: 'list/add',
52 | component: () => import('@/views/Model/Add.vue'),
53 | name: '菜单新增',
54 | meta: {requiresAuth: true, alias: 'Admin/Demo/list'}
55 | }
56 | ]
57 | },
58 | // 菜单演示
59 | {
60 | path: '/demo1',
61 | component: Main,
62 | name: '演示菜单1',
63 | children: [
64 | {
65 | path: 'list',
66 | component: () => import('@/views/Model/List.vue'),
67 | name: '菜单列表1',
68 | meta: {requiresAuth: true, alias: 'Admin/Demo1/list'}
69 | },
70 | {
71 | path: 'list/edit/:id',
72 | component: () => import('@/views/Model/Edit.vue'),
73 | name: '菜单1编辑',
74 | meta: {requiresAuth: true, alias: 'Admin/Demo1/list'}
75 | },
76 | {
77 | path: 'list/add',
78 | component: () => import('@/views/Model/Add.vue'),
79 | name: '菜单1新增',
80 | meta: {requiresAuth: true, alias: 'Admin/Demo1/list'}
81 | }
82 | ]
83 | },
84 | // 个人中心
85 | {
86 | path: '/personal',
87 | component: Main,
88 | name: '个人中心',
89 | redirect: '/personal/data',
90 | children: [{
91 | path: 'data',
92 | component: () => import('@/views/Personal/Data.vue'),
93 | name: '个人资料'
94 | },
95 | {
96 | path: 'setting',
97 | component: () => import('@/views/Personal/Setting.vue'),
98 | name: '个人设置'
99 | }
100 | ]
101 | },
102 | // 404 页面跳转
103 | {
104 | path: '*',
105 | redirect: {path: '/'}
106 | }
107 | ]
108 |
109 | export default routes
110 |
--------------------------------------------------------------------------------
/src/plugins/store/actions/data.js:
--------------------------------------------------------------------------------
1 | let res = [
2 |
3 | {
4 | name: '楼盘列表',
5 | url: '',
6 | children: [
7 | {
8 | name: '楼盘列表',
9 | url: '/estate'
10 | }
11 | ]
12 | }, {
13 | name: '楼盘相册',
14 | url: '',
15 | children: [
16 | {
17 | name: '楼盘相册',
18 | url: '/album'
19 | }
20 | ]
21 | },
22 | {
23 | name: '规划参数',
24 | url: '',
25 | children: [
26 | {
27 | name: '规划参数',
28 | url: '/parameter'
29 | }
30 | ]
31 | },
32 | {
33 | name: '地铁管理',
34 | url: '',
35 | children: [
36 | {
37 | name: '地铁管理',
38 | url: '/subway'
39 | }
40 | ]
41 | },
42 |
43 | ]
44 |
--------------------------------------------------------------------------------
/src/plugins/store/actions/index.js:
--------------------------------------------------------------------------------
1 | // 异步操作,发 commit 给 mutation
2 | import http from '@/plugins/axios'
3 | // 登录成功
4 | const login = ({commit}) => {
5 | commit('LOGIN_SUCCESS')
6 | }
7 | // 设置已登录用户信息
8 | const setUserInfo = ({commit}, data) => {
9 | commit('SET_USER_INFO', data)
10 | }
11 | // 注销
12 | const loginOut = ({commit}) => {
13 | // 登出
14 | commit('LOGIN_OUT')
15 | }
16 | // 获取用户权限
17 | const getUserAuth = async ({commit}) => {
18 | // for server
19 | // const res = await http.post('adminMenu', {})
20 | // if (res === null) return
21 | // console.log('getUserAuth', res.param)
22 | // commit('SET_USER_AUTH', res.param.auth)
23 | // commit('SET_SIDE_NAV', res.param.nav)
24 |
25 | // for test mock
26 | let res = {}
27 | setTimeout(() => {
28 | res.param = {
29 | auth: ['演示菜单', 'Admin/Demo/list', '演示菜单1', 'Admin/Demo1/list'],
30 | nav: {
31 | 1: {
32 | name: '演示菜单',
33 | url: '',
34 | children: [
35 | {name: '菜单列表', url: 'Admin/Demo/list'}
36 | ]
37 | },
38 | 2: {
39 | name: '演示菜单1',
40 | url: '',
41 | children: [
42 | {name: '菜单列表1', url: 'Admin/Demo1/list'}
43 | ]
44 | }
45 | }
46 | }
47 | commit('SET_USER_AUTH', res.param.auth)
48 | commit('SET_SIDE_NAV', res.param.nav)
49 | }, 1000)
50 | }
51 |
52 | export default {
53 | login,
54 | setUserInfo,
55 | loginOut,
56 | getUserAuth
57 | }
58 |
--------------------------------------------------------------------------------
/src/plugins/store/getters/index.js:
--------------------------------------------------------------------------------
1 | // getters
2 | export default {}
3 |
--------------------------------------------------------------------------------
/src/plugins/store/index.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue'
2 | import Vuex from 'vuex'
3 |
4 | import state from './state'
5 | import getters from './getters'
6 | import mutations from './mutations'
7 | import actions from './actions'
8 |
9 | Vue.use(Vuex)
10 |
11 | export default new Vuex.Store({
12 | state,
13 | getters,
14 | actions,
15 | mutations
16 | })
17 |
--------------------------------------------------------------------------------
/src/plugins/store/mutations/index.js:
--------------------------------------------------------------------------------
1 | // 同步操作
2 |
3 | // 注销
4 | const LOGIN_OUT = (state, payload) => {
5 | window.localStorage.removeItem('IS_LOGIN')
6 | }
7 | // 登录成功
8 | const LOGIN_SUCCESS = (state) => {
9 | window.localStorage.setItem('IS_LOGIN', true)
10 | }
11 | // 设置用户信息
12 | const SET_USER_INFO = (state, {
13 | user,
14 | avatar
15 | }) => {
16 | state.user.name = user
17 | state.user.avatar = avatar
18 | }
19 |
20 | const CLEAR_AUTH_MENU = (state) => {
21 | state.user.auth = []
22 | state.user.hasAuth = false
23 | state.user.nav = []
24 | }
25 |
26 | // 设置用户权限
27 | const SET_USER_AUTH = (state, auth) => {
28 | state.user.auth = auth.concat('欢迎使用')
29 | state.user.hasAuth = true
30 | }
31 | // 设置导航菜单
32 | const SET_SIDE_NAV = (state, nav) => {
33 | // 导航菜单
34 | let _nav = [{
35 | name: '欢迎使用',
36 | url: '/main',
37 | iconCls: 'fa fa-bookmark'
38 | }]
39 | // 权限菜单对应的路由地址
40 | /**
41 | * '演示菜单': {iconCls: 'fa fa-archive', url: ''},
42 | * 'Admin/Demo/list': {iconCls: '', url: '/demo/list'},
43 | */
44 | const route = {
45 | '演示菜单': {
46 | iconCls: 'fa fa-archive',
47 | url: ''
48 | },
49 | 'Admin/Demo/list': {
50 | iconCls: '',
51 | url: '/demo/list'
52 | },
53 | '演示菜单1': {
54 | iconCls: 'fa fa-archive',
55 | url: ''
56 | },
57 | 'Admin/Demo1/list': {
58 | iconCls: '',
59 | url: '/demo1/list'
60 | }
61 | }
62 | for (let key in nav) {
63 | let item = nav[key]
64 | let _temp = {}
65 | let subItems = [] // 二级菜单临时数组
66 | if (item.children && item.children.length > 0) {
67 | // 二级菜单
68 | item.children.forEach(subItem => {
69 | // 防止因无菜单导致的错误
70 | if (route[subItem.url] !== undefined) {
71 | subItems.push(Object.assign({}, {
72 | name: subItem.name || '',
73 | url: route[subItem.url].url || '',
74 | iconCls: route[subItem.url].iconCls || ''
75 | }))
76 | }
77 | })
78 | // 一级菜单
79 | // 防止因无菜单导致的错误
80 | if (route[item.name] !== undefined) {
81 | _temp = Object.assign({}, {
82 | name: item.name || '',
83 | url: item.url || '',
84 | iconCls: route[item.name].iconCls || '',
85 | children: subItems.slice(0)
86 | })
87 | _nav.push(_temp)
88 | }
89 | }
90 | }
91 | state.nav = _nav
92 | }
93 |
94 | const INCREASE_TAG = (state, tagObj) => {
95 | state.pageOpenedList.splice(1, 0, tagObj)
96 | }
97 |
98 | const REMOVE_TAG = (state, name) => {
99 | state.pageOpenedList.map((item, index) => {
100 | if (item.path === name) {
101 | state.pageOpenedList.splice(index, 1)
102 | }
103 | })
104 | }
105 |
106 | const MOVE_TO_SECOND = (state, index) => {
107 | let openedPage = state.pageOpenedList[index]
108 | state.pageOpenedList.splice(index, 1)
109 | state.pageOpenedList.splice(1, 0, openedPage)
110 | sessionStorage.pageOpenedList = JSON.stringify(state.pageOpenedList)
111 | }
112 |
113 | const SET_OPENED_LIST = (state) => {
114 | state.pageOpenedList = sessionStorage.pageOpenedList ? JSON.parse(sessionStorage.pageOpenedList) : [{
115 | name: '欢迎使用',
116 | path: '/main'
117 | }]
118 | }
119 |
120 | const CLEAR_OPENED_LIST = (state) => {
121 | state.pageOpenedList = [{
122 | name: '欢迎使用',
123 | path: '/main'
124 | }]
125 | sessionStorage.pageOpenedList = JSON.stringify(this.$store.state.pageOpenedList) // 本地存储已打开页面
126 | }
127 |
128 | const SET_CURRENT_TITLE = (state, title) => {
129 | state.currentTitle = title
130 | }
131 |
132 | export default {
133 | LOGIN_OUT,
134 | LOGIN_SUCCESS,
135 |
136 | SET_USER_INFO,
137 | SET_USER_AUTH,
138 | SET_SIDE_NAV,
139 | CLEAR_AUTH_MENU,
140 |
141 | INCREASE_TAG,
142 | REMOVE_TAG,
143 | MOVE_TO_SECOND,
144 | SET_OPENED_LIST,
145 | CLEAR_OPENED_LIST,
146 | SET_CURRENT_TITLE
147 | }
148 |
--------------------------------------------------------------------------------
/src/plugins/store/state/index.js:
--------------------------------------------------------------------------------
1 | // 登录用户信息
2 | const user = {
3 | name: '', // 用户名
4 | avatar: '', // 用户头像
5 | auth: [], // 用户权限
6 | hasAuth: false // 是否已经加载用户权限
7 | }
8 |
9 | const nav = []
10 |
11 | // 已打开页面的标签栏
12 | const pageOpenedList = []
13 | const currentTitle = ''
14 |
15 | export default {
16 | user,
17 | nav,
18 | pageOpenedList,
19 | currentTitle
20 | }
21 |
--------------------------------------------------------------------------------
/src/plugins/tree-grid/index.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue'
2 | // tree grid
3 | const ElTreeGrid = require('element-tree-grid')
4 | Vue.component(ElTreeGrid.name, ElTreeGrid)
5 |
--------------------------------------------------------------------------------
/src/plugins/vue-baidu-map/index.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue'
2 | import BaiduMap from 'vue-baidu-map'
3 |
4 | Vue.use(BaiduMap, {
5 | // ak 是在百度地图开发者平台申请的密钥 详见 http://lbsyun.baidu.com/apiconsole/key */
6 | ak: 'gtUIB6SOHBVXaZsdDyFuNQFz'
7 | })
8 |
--------------------------------------------------------------------------------
/src/styles/vars.scss:
--------------------------------------------------------------------------------
1 | $color-primary: #373d41; //#18c79c
2 |
--------------------------------------------------------------------------------
/src/utils/js/index.js:
--------------------------------------------------------------------------------
1 | /* eslint-disable */
2 | var SIGN_REGEXP = /([yMdhsm])(\1*)/g
3 | var DEFAULT_PATTERN = 'yyyy-MM-dd'
4 |
5 | function padding (s, len) {
6 | var len = len - (s + '').length
7 | for (var i = 0; i < len; i++) {
8 | s = '0' + s
9 | }
10 | return s
11 | }
12 |
13 | export default {
14 | getQueryStringByName: function (name) {
15 | var reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)', 'i')
16 | var r = window.location.search.substr(1).match(reg)
17 | var context = ''
18 | if (r != null)
19 | context = r[2]
20 | reg = null
21 | r = null
22 | return context == null || context == '' || context == 'undefined' ? '' : context
23 | },
24 | generateUUID: function () {
25 | var d = new Date().getTime()
26 | var uuid = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
27 | var r = (d + Math.random() * 16) % 16 | 0
28 | d = Math.floor(d / 16)
29 | return (c == 'x' ? r : (r & 0x7 | 0x8)).toString(16)
30 | })
31 | return uuid
32 | },
33 | formatDate: {
34 | format: function (date, pattern) {
35 | pattern = pattern || DEFAULT_PATTERN
36 | return pattern.replace(SIGN_REGEXP, function ($0) {
37 | switch ($0.charAt(0)) {
38 | case 'y':
39 | return padding(date.getFullYear(), $0.length)
40 | case 'M':
41 | return padding(date.getMonth() + 1, $0.length)
42 | case 'd':
43 | return padding(date.getDate(), $0.length)
44 | case 'w':
45 | return date.getDay() + 1
46 | case 'h':
47 | return padding(date.getHours(), $0.length)
48 | case 'm':
49 | return padding(date.getMinutes(), $0.length)
50 | case 's':
51 | return padding(date.getSeconds(), $0.length)
52 | }
53 | })
54 | },
55 | parse: function (dateString, pattern) {
56 | var matchs1 = pattern.match(SIGN_REGEXP)
57 | var matchs2 = dateString.match(/(\d)+/g)
58 | if (matchs1.length == matchs2.length) {
59 | var _date = new Date(1970, 0, 1)
60 | for (var i = 0; i < matchs1.length; i++) {
61 | var _int = parseInt(matchs2[i])
62 | var sign = matchs1[i]
63 | switch (sign.charAt(0)) {
64 | case 'y':
65 | _date.setFullYear(_int)
66 | break
67 | case 'M':
68 | _date.setMonth(_int - 1)
69 | break
70 | case 'd':
71 | _date.setDate(_int)
72 | break
73 | case 'h':
74 | _date.setHours(_int)
75 | break
76 | case 'm':
77 | _date.setMinutes(_int)
78 | break
79 | case 's':
80 | _date.setSeconds(_int)
81 | break
82 | }
83 | }
84 | return _date
85 | }
86 | return null
87 | }
88 |
89 | }
90 |
91 | }
92 |
--------------------------------------------------------------------------------
/src/views/Login/Login.css:
--------------------------------------------------------------------------------
1 | /*
2 | Error: File to import not found or unreadable: ~scss_vars.
3 | on line 1 of Login.scss
4 |
5 | 1: @import '~scss_vars';
6 | 2:
7 | 3: .login-panel {
8 | 4: width: 860px;
9 | 5: margin: 10% auto 0 auto;
10 | 6: color: #636e7b;
11 |
12 | Backtrace:
13 | Login.scss:1
14 | /Library/Ruby/Gems/2.0.0/gems/sass-3.4.22/lib/sass/tree/import_node.rb:67:in `rescue in import'
15 | /Library/Ruby/Gems/2.0.0/gems/sass-3.4.22/lib/sass/tree/import_node.rb:45:in `import'
16 | /Library/Ruby/Gems/2.0.0/gems/sass-3.4.22/lib/sass/tree/import_node.rb:28:in `imported_file'
17 | /Library/Ruby/Gems/2.0.0/gems/sass-3.4.22/lib/sass/tree/import_node.rb:37:in `css_import?'
18 | /Library/Ruby/Gems/2.0.0/gems/sass-3.4.22/lib/sass/tree/visitors/perform.rb:313:in `visit_import'
19 | /Library/Ruby/Gems/2.0.0/gems/sass-3.4.22/lib/sass/tree/visitors/base.rb:36:in `visit'
20 | /Library/Ruby/Gems/2.0.0/gems/sass-3.4.22/lib/sass/tree/visitors/perform.rb:160:in `block in visit'
21 | /Library/Ruby/Gems/2.0.0/gems/sass-3.4.22/lib/sass/stack.rb:79:in `block in with_base'
22 | /Library/Ruby/Gems/2.0.0/gems/sass-3.4.22/lib/sass/stack.rb:115:in `with_frame'
23 | /Library/Ruby/Gems/2.0.0/gems/sass-3.4.22/lib/sass/stack.rb:79:in `with_base'
24 | /Library/Ruby/Gems/2.0.0/gems/sass-3.4.22/lib/sass/tree/visitors/perform.rb:160:in `visit'
25 | /Library/Ruby/Gems/2.0.0/gems/sass-3.4.22/lib/sass/tree/visitors/base.rb:52:in `block in visit_children'
26 | /Library/Ruby/Gems/2.0.0/gems/sass-3.4.22/lib/sass/tree/visitors/base.rb:52:in `map'
27 | /Library/Ruby/Gems/2.0.0/gems/sass-3.4.22/lib/sass/tree/visitors/base.rb:52:in `visit_children'
28 | /Library/Ruby/Gems/2.0.0/gems/sass-3.4.22/lib/sass/tree/visitors/perform.rb:169:in `block in visit_children'
29 | /Library/Ruby/Gems/2.0.0/gems/sass-3.4.22/lib/sass/tree/visitors/perform.rb:181:in `with_environment'
30 | /Library/Ruby/Gems/2.0.0/gems/sass-3.4.22/lib/sass/tree/visitors/perform.rb:168:in `visit_children'
31 | /Library/Ruby/Gems/2.0.0/gems/sass-3.4.22/lib/sass/tree/visitors/base.rb:36:in `block in visit'
32 | /Library/Ruby/Gems/2.0.0/gems/sass-3.4.22/lib/sass/tree/visitors/perform.rb:188:in `visit_root'
33 | /Library/Ruby/Gems/2.0.0/gems/sass-3.4.22/lib/sass/tree/visitors/base.rb:36:in `visit'
34 | /Library/Ruby/Gems/2.0.0/gems/sass-3.4.22/lib/sass/tree/visitors/perform.rb:159:in `visit'
35 | /Library/Ruby/Gems/2.0.0/gems/sass-3.4.22/lib/sass/tree/visitors/perform.rb:8:in `visit'
36 | /Library/Ruby/Gems/2.0.0/gems/sass-3.4.22/lib/sass/tree/root_node.rb:36:in `css_tree'
37 | /Library/Ruby/Gems/2.0.0/gems/sass-3.4.22/lib/sass/tree/root_node.rb:29:in `render_with_sourcemap'
38 | /Library/Ruby/Gems/2.0.0/gems/sass-3.4.22/lib/sass/engine.rb:381:in `_render_with_sourcemap'
39 | /Library/Ruby/Gems/2.0.0/gems/sass-3.4.22/lib/sass/engine.rb:298:in `render_with_sourcemap'
40 | /Library/Ruby/Gems/2.0.0/gems/sass-3.4.22/lib/sass/plugin/compiler.rb:492:in `update_stylesheet'
41 | /Library/Ruby/Gems/2.0.0/gems/sass-3.4.22/lib/sass/plugin/compiler.rb:215:in `block in update_stylesheets'
42 | /Library/Ruby/Gems/2.0.0/gems/sass-3.4.22/lib/sass/plugin/compiler.rb:209:in `each'
43 | /Library/Ruby/Gems/2.0.0/gems/sass-3.4.22/lib/sass/plugin/compiler.rb:209:in `update_stylesheets'
44 | /Library/Ruby/Gems/2.0.0/gems/sass-3.4.22/lib/sass/plugin.rb:82:in `update_stylesheets'
45 | /Library/Ruby/Gems/2.0.0/gems/sass-3.4.22/lib/sass/exec/sass_scss.rb:340:in `watch_or_update'
46 | /Library/Ruby/Gems/2.0.0/gems/sass-3.4.22/lib/sass/exec/sass_scss.rb:51:in `process_result'
47 | /Library/Ruby/Gems/2.0.0/gems/sass-3.4.22/lib/sass/exec/base.rb:52:in `parse'
48 | /Library/Ruby/Gems/2.0.0/gems/sass-3.4.22/lib/sass/exec/base.rb:19:in `parse!'
49 | /Library/Ruby/Gems/2.0.0/gems/sass-3.4.22/bin/scss:13:in `'
50 | /usr/local/bin/scss:23:in `load'
51 | /usr/local/bin/scss:23:in `'
52 | */
53 | body:before {
54 | white-space: pre;
55 | font-family: monospace;
56 | content: "Error: File to import not found or unreadable: ~scss_vars.\A on line 1 of Login.scss\A \A 1: @import '~scss_vars';\A 2: \A 3: .login-panel {\A 4: width: 860px;\A 5: margin: 10% auto 0 auto;\A 6: color: #636e7b;"; }
57 |
--------------------------------------------------------------------------------
/src/views/Login/Login.scss:
--------------------------------------------------------------------------------
1 | @import '~scss_vars';
2 |
3 | .login-panel {
4 | width: 860px;
5 | margin: 10% auto 0 auto;
6 | color: #636e7b;
7 | font-size: 14px;
8 | }
9 |
10 | .company-info {
11 | .logo {
12 | margin-bottom: 20px;
13 | }
14 | .title {
15 | font-size: 14px;
16 | margin-bottom: 20px;
17 | }
18 | .intro {
19 | margin: 0;
20 | padding: 0;
21 | list-style: none;
22 | font-weight: 400;
23 | }
24 | }
25 | .login-footer {
26 | width: 100%;
27 | display: flex;
28 | flex-direction: row;
29 | justify-content: space-between;
30 | border-top: 1px solid #ddd;
31 | margin-top: 30px;
32 | padding-top: 10px;
33 | font-size: 12px;
34 |
35 | .copyright {
36 | }
37 | .author {
38 | }
39 | }
40 |
41 | .login-container {
42 | background: rgba(255,255,255,0.2);
43 | border: 1px solid #ccc;
44 | box-shadow: 0 3px 0 rgba(12,12,12,0.03);
45 | border-radius: 3px;
46 | padding: 30px 30px 10px 30px;
47 | margin-left: 20px;
48 | .el-form-item {
49 | margin: 10px 0 20px 0;
50 | }
51 | .title {
52 | margin: 0 auto 10px auto;
53 | color: #505458;
54 | }
55 | .remember {
56 | margin: 0 0 35px 0;
57 | }
58 | .forgot-pwd {
59 | display: block;
60 | line-height: 20px;
61 | font-size: 12px;
62 | &:hover {
63 | cursor: pointer;
64 | text-decoration: underline;
65 | }
66 | }
67 | }
68 |
69 | .code-wrapper {
70 | height: 36px;
71 | }
72 |
73 | #code {
74 | cursor: pointer;
75 | }
--------------------------------------------------------------------------------
/src/views/Personal/Data.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | 头像:
5 |
6 |
7 |
8 |
9 |
10 | 邮箱地址:
11 | {{personData.email}}
12 |
13 |
14 | 真实姓名:
15 | {{personData.realname}}
16 |
17 |
18 | 手机号码:
19 | {{personData.tel}}
20 |
21 |
22 | 创建时间:
23 | {{ personData.create_time | formateCreateDate}}
24 |
25 |
26 |
27 |
28 |
69 |
70 |
87 |
--------------------------------------------------------------------------------
/src/views/Welcome/Welcome.scss:
--------------------------------------------------------------------------------
1 | @import '~scss_vars';
2 |
3 | .content {
4 | ul {
5 | margin: 0;
6 | padding: 0;
7 | list-style: none;
8 | li {
9 | line-height: 2;
10 | }
11 | }
12 | .footer-logo {
13 | margin: 30% auto 0 auto;
14 | display: flex;
15 | flex-direction: column;
16 | justify-content: center;
17 | align-items: center;
18 | .text {
19 | color: #656565;
20 | }
21 | .logo {
22 | width: 420px;
23 | height: 120px;
24 | opacity: 0.1;
25 | }
26 | }
27 | }
--------------------------------------------------------------------------------
/src/views/Welcome/Welcome.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
杭州快房传媒有限公司
4 |
5 | -
6 | 杭州快房传媒有限公司座落于钱江新城CBD核心商圈,是都市快报控股子公司,年营业额过亿,是都市快报全媒体阵营的重要一员。
7 |
8 | -
9 | 公司设有媒体中心、运营中心、家居中心、网络中心、客服中心及宁波分中心,主要经营都市快报的房产广告及快房网的运营。都市快报的房产广告,位列浙江省房产投放量第一,最受房产商青睐。
10 |
11 | - 公司拥有一支年轻,活力四射,具有激情的团队。团队内有员工100多名,平均年龄29.1岁。
12 | -
13 | 都市快报由杭州日报报业集团主办,于1999年1月1日创刊,是中国第一份四开异型加长报;全国发行,重点覆盖浙江省各地市县,是浙江省发行量最大的报纸。
14 |
15 | - 公司网址: http://www.kfw001.com/
16 |
17 |
23 |
24 |
25 |
26 |
29 |
30 |
33 |
--------------------------------------------------------------------------------
/static/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/.gitkeep
--------------------------------------------------------------------------------
/static/ueditor/dialogs/anchor/anchor.html:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
6 |
7 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
39 |
40 |
--------------------------------------------------------------------------------
/static/ueditor/dialogs/attachment/attachment.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | ueditor图片对话框
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 | 0%
32 |
33 |
34 |
38 |
39 |
44 |
47 |
48 |
49 |
50 |
51 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
--------------------------------------------------------------------------------
/static/ueditor/dialogs/attachment/fileTypeImages/icon_chm.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/attachment/fileTypeImages/icon_chm.gif
--------------------------------------------------------------------------------
/static/ueditor/dialogs/attachment/fileTypeImages/icon_default.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/attachment/fileTypeImages/icon_default.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/attachment/fileTypeImages/icon_doc.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/attachment/fileTypeImages/icon_doc.gif
--------------------------------------------------------------------------------
/static/ueditor/dialogs/attachment/fileTypeImages/icon_exe.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/attachment/fileTypeImages/icon_exe.gif
--------------------------------------------------------------------------------
/static/ueditor/dialogs/attachment/fileTypeImages/icon_jpg.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/attachment/fileTypeImages/icon_jpg.gif
--------------------------------------------------------------------------------
/static/ueditor/dialogs/attachment/fileTypeImages/icon_mp3.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/attachment/fileTypeImages/icon_mp3.gif
--------------------------------------------------------------------------------
/static/ueditor/dialogs/attachment/fileTypeImages/icon_mv.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/attachment/fileTypeImages/icon_mv.gif
--------------------------------------------------------------------------------
/static/ueditor/dialogs/attachment/fileTypeImages/icon_pdf.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/attachment/fileTypeImages/icon_pdf.gif
--------------------------------------------------------------------------------
/static/ueditor/dialogs/attachment/fileTypeImages/icon_ppt.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/attachment/fileTypeImages/icon_ppt.gif
--------------------------------------------------------------------------------
/static/ueditor/dialogs/attachment/fileTypeImages/icon_psd.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/attachment/fileTypeImages/icon_psd.gif
--------------------------------------------------------------------------------
/static/ueditor/dialogs/attachment/fileTypeImages/icon_rar.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/attachment/fileTypeImages/icon_rar.gif
--------------------------------------------------------------------------------
/static/ueditor/dialogs/attachment/fileTypeImages/icon_txt.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/attachment/fileTypeImages/icon_txt.gif
--------------------------------------------------------------------------------
/static/ueditor/dialogs/attachment/fileTypeImages/icon_xls.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/attachment/fileTypeImages/icon_xls.gif
--------------------------------------------------------------------------------
/static/ueditor/dialogs/attachment/images/alignicon.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/attachment/images/alignicon.gif
--------------------------------------------------------------------------------
/static/ueditor/dialogs/attachment/images/alignicon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/attachment/images/alignicon.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/attachment/images/bg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/attachment/images/bg.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/attachment/images/file-icons.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/attachment/images/file-icons.gif
--------------------------------------------------------------------------------
/static/ueditor/dialogs/attachment/images/file-icons.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/attachment/images/file-icons.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/attachment/images/icons.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/attachment/images/icons.gif
--------------------------------------------------------------------------------
/static/ueditor/dialogs/attachment/images/icons.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/attachment/images/icons.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/attachment/images/image.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/attachment/images/image.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/attachment/images/progress.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/attachment/images/progress.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/attachment/images/success.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/attachment/images/success.gif
--------------------------------------------------------------------------------
/static/ueditor/dialogs/attachment/images/success.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/attachment/images/success.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/background/background.css:
--------------------------------------------------------------------------------
1 | .wrapper{ width: 424px;margin: 10px auto; zoom:1;position: relative}
2 | .tabbody{height:225px;}
3 | .tabbody .panel { position: absolute;width:100%; height:100%;background: #fff; display: none;}
4 | .tabbody .focus { display: block;}
5 |
6 | body{font-size: 12px;color: #888;overflow: hidden;}
7 | input,label{vertical-align:middle}
8 | .clear{clear: both;}
9 | .pl{padding-left: 18px;padding-left: 23px\9;}
10 |
11 | #imageList {width: 420px;height: 215px;margin-top: 10px;overflow: hidden;overflow-y: auto;}
12 | #imageList div {float: left;width: 100px;height: 95px;margin: 5px 10px;}
13 | #imageList img {cursor: pointer;border: 2px solid white;}
14 |
15 | .bgarea{margin: 10px;padding: 5px;height: 84%;border: 1px solid #A8A297;}
16 | .content div{margin: 10px 0 10px 5px;}
17 | .content .iptradio{margin: 0px 5px 5px 0px;}
18 | .txt{width:280px;}
19 |
20 | .wrapcolor{height: 19px;}
21 | div.color{float: left;margin: 0;}
22 | #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;}
23 | div.alignment,#custom{margin-left: 23px;margin-left: 28px\9;}
24 | #custom input{height: 15px;min-height: 15px;width:20px;}
25 | #repeatType{width:100px;}
26 |
27 |
28 | /* 图片管理样式 */
29 | #imgManager {
30 | width: 100%;
31 | height: 225px;
32 | }
33 | #imgManager #imageList{
34 | width: 100%;
35 | overflow-x: hidden;
36 | overflow-y: auto;
37 | }
38 | #imgManager ul {
39 | display: block;
40 | list-style: none;
41 | margin: 0;
42 | padding: 0;
43 | }
44 | #imgManager li {
45 | float: left;
46 | display: block;
47 | list-style: none;
48 | padding: 0;
49 | width: 113px;
50 | height: 113px;
51 | margin: 9px 0 0 19px;
52 | background-color: #eee;
53 | overflow: hidden;
54 | cursor: pointer;
55 | position: relative;
56 | }
57 | #imgManager li.clearFloat {
58 | float: none;
59 | clear: both;
60 | display: block;
61 | width:0;
62 | height:0;
63 | margin: 0;
64 | padding: 0;
65 | }
66 | #imgManager li img {
67 | cursor: pointer;
68 | }
69 | #imgManager li .icon {
70 | cursor: pointer;
71 | width: 113px;
72 | height: 113px;
73 | position: absolute;
74 | top: 0;
75 | left: 0;
76 | z-index: 2;
77 | border: 0;
78 | background-repeat: no-repeat;
79 | }
80 | #imgManager li .icon:hover {
81 | width: 107px;
82 | height: 107px;
83 | border: 3px solid #1094fa;
84 | }
85 | #imgManager li.selected .icon {
86 | background-image: url(images/success.png);
87 | background-position: 75px 75px;
88 | }
89 | #imgManager li.selected .icon:hover {
90 | width: 107px;
91 | height: 107px;
92 | border: 3px solid #1094fa;
93 | background-position: 72px 72px;
94 | }
--------------------------------------------------------------------------------
/static/ueditor/dialogs/background/background.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
47 |
48 |
49 |
52 |
53 |
54 |
55 |
56 |
57 |
--------------------------------------------------------------------------------
/static/ueditor/dialogs/background/images/bg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/background/images/bg.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/background/images/success.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/background/images/success.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/charts/chart.config.js:
--------------------------------------------------------------------------------
1 | /*
2 | * 图表配置文件
3 | * */
4 |
5 |
6 | //不同类型的配置
7 | var typeConfig = [
8 | {
9 | chart: {
10 | type: 'line'
11 | },
12 | plotOptions: {
13 | line: {
14 | dataLabels: {
15 | enabled: false
16 | },
17 | enableMouseTracking: true
18 | }
19 | }
20 | }, {
21 | chart: {
22 | type: 'line'
23 | },
24 | plotOptions: {
25 | line: {
26 | dataLabels: {
27 | enabled: true
28 | },
29 | enableMouseTracking: false
30 | }
31 | }
32 | }, {
33 | chart: {
34 | type: 'area'
35 | }
36 | }, {
37 | chart: {
38 | type: 'bar'
39 | }
40 | }, {
41 | chart: {
42 | type: 'column'
43 | }
44 | }, {
45 | chart: {
46 | plotBackgroundColor: null,
47 | plotBorderWidth: null,
48 | plotShadow: false
49 | },
50 | plotOptions: {
51 | pie: {
52 | allowPointSelect: true,
53 | cursor: 'pointer',
54 | dataLabels: {
55 | enabled: true,
56 | color: '#000000',
57 | connectorColor: '#000000',
58 | formatter: function() {
59 | return ''+ this.point.name +': '+ ( Math.round( this.point.percentage*100 ) / 100 ) +' %';
60 | }
61 | }
62 | }
63 | }
64 | }
65 | ];
66 |
--------------------------------------------------------------------------------
/static/ueditor/dialogs/charts/charts.css:
--------------------------------------------------------------------------------
1 | html, body {
2 | width: 100%;
3 | height: 100%;
4 | margin: 0;
5 | padding: 0;
6 | overflow-x: hidden;
7 | }
8 |
9 | .main {
10 | width: 100%;
11 | overflow: hidden;
12 | }
13 |
14 | .table-view {
15 | height: 100%;
16 | float: left;
17 | margin: 20px;
18 | width: 40%;
19 | }
20 |
21 | .table-view .table-container {
22 | width: 100%;
23 | margin-bottom: 50px;
24 | overflow: scroll;
25 | }
26 |
27 | .table-view th {
28 | padding: 5px 10px;
29 | background-color: #F7F7F7;
30 | }
31 |
32 | .table-view td {
33 | width: 50px;
34 | text-align: center;
35 | padding:0;
36 | }
37 |
38 | .table-container input {
39 | width: 40px;
40 | padding: 5px;
41 | border: none;
42 | outline: none;
43 | }
44 |
45 | .table-view caption {
46 | font-size: 18px;
47 | text-align: left;
48 | }
49 |
50 | .charts-view {
51 | /*margin-left: 49%!important;*/
52 | width: 50%;
53 | margin-left: 49%;
54 | height: 400px;
55 | }
56 |
57 | .charts-container {
58 | border-left: 1px solid #c3c3c3;
59 | }
60 |
61 | .charts-format fieldset {
62 | padding-left: 20px;
63 | margin-bottom: 50px;
64 | }
65 |
66 | .charts-format legend {
67 | padding-left: 10px;
68 | padding-right: 10px;
69 | }
70 |
71 | .format-item-container {
72 | padding: 20px;
73 | }
74 |
75 | .format-item-container label {
76 | display: block;
77 | margin: 10px 0;
78 | }
79 |
80 | .charts-format .data-item {
81 | border: 1px solid black;
82 | outline: none;
83 | padding: 2px 3px;
84 | }
85 |
86 | /* 图表类型 */
87 |
88 | .charts-type {
89 | margin-top: 50px;
90 | height: 300px;
91 | }
92 |
93 | .scroll-view {
94 | border: 1px solid #c3c3c3;
95 | border-left: none;
96 | border-right: none;
97 | overflow: hidden;
98 | }
99 |
100 | .scroll-container {
101 | margin: 20px;
102 | width: 100%;
103 | overflow: hidden;
104 | }
105 |
106 | .scroll-bed {
107 | width: 10000px;
108 | _margin-top: 20px;
109 | -webkit-transition: margin-left .5s ease;
110 | -moz-transition: margin-left .5s ease;
111 | transition: margin-left .5s ease;
112 | }
113 |
114 | .view-box {
115 | display: inline-block;
116 | *display: inline;
117 | *zoom: 1;
118 | margin-right: 20px;
119 | border: 2px solid white;
120 | line-height: 0;
121 | overflow: hidden;
122 | cursor: pointer;
123 | }
124 |
125 | .view-box img {
126 | border: 1px solid #cecece;
127 | }
128 |
129 | .view-box.selected {
130 | border-color: #7274A7;
131 | }
132 |
133 | .button-container {
134 | margin-bottom: 20px;
135 | text-align: center;
136 | }
137 |
138 | .button-container a {
139 | display: inline-block;
140 | width: 100px;
141 | height: 25px;
142 | line-height: 25px;
143 | border: 1px solid #c2ccd1;
144 | margin-right: 30px;
145 | text-decoration: none;
146 | color: black;
147 | -webkit-border-radius: 2px;
148 | -moz-border-radius: 2px;
149 | border-radius: 2px;
150 | }
151 |
152 | .button-container a:HOVER {
153 | background: #fcfcfc;
154 | }
155 |
156 | .button-container a:ACTIVE {
157 | border-top-color: #c2ccd1;
158 | box-shadow:inset 0 5px 4px -4px rgba(49, 49, 64, 0.1);
159 | }
160 |
161 | .edui-charts-not-data {
162 | height: 100px;
163 | line-height: 100px;
164 | text-align: center;
165 | }
--------------------------------------------------------------------------------
/static/ueditor/dialogs/charts/images/charts0.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/charts/images/charts0.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/charts/images/charts1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/charts/images/charts1.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/charts/images/charts2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/charts/images/charts2.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/charts/images/charts3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/charts/images/charts3.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/charts/images/charts4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/charts/images/charts4.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/charts/images/charts5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/charts/images/charts5.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/emotion/emotion.css:
--------------------------------------------------------------------------------
1 | .jd img{
2 | background:transparent url(images/jxface2.gif?v=1.1) no-repeat scroll left top;
3 | cursor:pointer;width:35px;height:35px;display:block;
4 | }
5 | .pp img{
6 | background:transparent url(images/fface.gif?v=1.1) no-repeat scroll left top;
7 | cursor:pointer;width:25px;height:25px;display:block;
8 | }
9 | .ldw img{
10 | background:transparent url(images/wface.gif?v=1.1) no-repeat scroll left top;
11 | cursor:pointer;width:35px;height:35px;display:block;
12 | }
13 | .tsj img{
14 | background:transparent url(images/tface.gif?v=1.1) no-repeat scroll left top;
15 | cursor:pointer;width:35px;height:35px;display:block;
16 | }
17 | .cat img{
18 | background:transparent url(images/cface.gif?v=1.1) no-repeat scroll left top;
19 | cursor:pointer;width:35px;height:35px;display:block;
20 | }
21 | .bb img{
22 | background:transparent url(images/bface.gif?v=1.1) no-repeat scroll left top;
23 | cursor:pointer;width:35px;height:35px;display:block;
24 | }
25 | .youa img{
26 | background:transparent url(images/yface.gif?v=1.1) no-repeat scroll left top;
27 | cursor:pointer;width:35px;height:35px;display:block;
28 | }
29 |
30 | .smileytable td {height: 37px;}
31 | #tabPanel{margin-left:5px;overflow: hidden;}
32 | #tabContent {float:left;background:#FFFFFF;}
33 | #tabContent div{display: none;width:480px;overflow:hidden;}
34 | #tabIconReview.show{left:17px;display:block;}
35 | .menuFocus{background:#ACCD3C;}
36 | .menuDefault{background:#FFFFFF;}
37 | #tabIconReview{position:absolute;left:406px;left:398px \9;top:41px;z-index:65533;width:90px;height:76px;}
38 | img.review{width:90px;height:76px;border:2px solid #9cb945;background:#FFFFFF;background-position:center;background-repeat:no-repeat;}
39 |
40 | .wrapper .tabbody{position:relative;float:left;clear:both;padding:10px;width: 95%;}
41 | .tabbody table{width: 100%;}
42 | .tabbody td{border:1px solid #BAC498;}
43 | .tabbody td span{display: block;zoom:1;padding:0 4px;}
--------------------------------------------------------------------------------
/static/ueditor/dialogs/emotion/emotion.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |

33 |
34 |
35 |
53 |
54 |
--------------------------------------------------------------------------------
/static/ueditor/dialogs/emotion/images/0.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/emotion/images/0.gif
--------------------------------------------------------------------------------
/static/ueditor/dialogs/emotion/images/bface.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/emotion/images/bface.gif
--------------------------------------------------------------------------------
/static/ueditor/dialogs/emotion/images/cface.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/emotion/images/cface.gif
--------------------------------------------------------------------------------
/static/ueditor/dialogs/emotion/images/fface.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/emotion/images/fface.gif
--------------------------------------------------------------------------------
/static/ueditor/dialogs/emotion/images/jxface2.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/emotion/images/jxface2.gif
--------------------------------------------------------------------------------
/static/ueditor/dialogs/emotion/images/neweditor-tab-bg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/emotion/images/neweditor-tab-bg.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/emotion/images/tface.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/emotion/images/tface.gif
--------------------------------------------------------------------------------
/static/ueditor/dialogs/emotion/images/wface.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/emotion/images/wface.gif
--------------------------------------------------------------------------------
/static/ueditor/dialogs/emotion/images/yface.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/emotion/images/yface.gif
--------------------------------------------------------------------------------
/static/ueditor/dialogs/gmap/gmap.html:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
6 |
7 |
8 |
14 |
15 |
16 |
17 |
27 |
88 |
89 |
--------------------------------------------------------------------------------
/static/ueditor/dialogs/help/help.css:
--------------------------------------------------------------------------------
1 | .wrapper{width: 370px;margin: 10px auto;zoom: 1;}
2 | .tabbody{height: 360px;}
3 | .tabbody .panel{width:100%;height: 360px;position: absolute;background: #fff;}
4 | .tabbody .panel h1{font-size:26px;margin: 5px 0 0 5px;}
5 | .tabbody .panel p{font-size:12px;margin: 5px 0 0 5px;}
6 | .tabbody table{width:90%;line-height: 20px;margin: 5px 0 0 5px;;}
7 | .tabbody table thead{font-weight: bold;line-height: 25px;}
--------------------------------------------------------------------------------
/static/ueditor/dialogs/help/help.html:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 | 帮助
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
UEditor
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 | |
27 | |
28 |
29 |
30 |
31 |
32 | | ctrl+b |
33 | |
34 |
35 |
36 | | ctrl+c |
37 | |
38 |
39 |
40 | | ctrl+x |
41 | |
42 |
43 |
44 | | ctrl+v |
45 | |
46 |
47 |
48 | | ctrl+y |
49 | |
50 |
51 |
52 | | ctrl+z |
53 | |
54 |
55 |
56 | | ctrl+i |
57 | |
58 |
59 |
60 | | ctrl+u |
61 | |
62 |
63 |
64 | | ctrl+a |
65 | |
66 |
67 |
68 | | shift+enter |
69 | |
70 |
71 |
72 | | alt+z |
73 | |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
--------------------------------------------------------------------------------
/static/ueditor/dialogs/help/help.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Created with JetBrains PhpStorm.
3 | * User: xuheng
4 | * Date: 12-9-26
5 | * Time: 下午1:06
6 | * To change this template use File | Settings | File Templates.
7 | */
8 | /**
9 | * tab点击处理事件
10 | * @param tabHeads
11 | * @param tabBodys
12 | * @param obj
13 | */
14 | function clickHandler( tabHeads,tabBodys,obj ) {
15 | //head样式更改
16 | for ( var k = 0, len = tabHeads.length; k < len; k++ ) {
17 | tabHeads[k].className = "";
18 | }
19 | obj.className = "focus";
20 | //body显隐
21 | var tabSrc = obj.getAttribute( "tabSrc" );
22 | for ( var j = 0, length = tabBodys.length; j < length; j++ ) {
23 | var body = tabBodys[j],
24 | id = body.getAttribute( "id" );
25 | body.onclick = function(){
26 | this.style.zoom = 1;
27 | };
28 | if ( id != tabSrc ) {
29 | body.style.zIndex = 1;
30 | } else {
31 | body.style.zIndex = 200;
32 | }
33 | }
34 |
35 | }
36 |
37 | /**
38 | * TAB切换
39 | * @param tabParentId tab的父节点ID或者对象本身
40 | */
41 | function switchTab( tabParentId ) {
42 | var tabElements = $G( tabParentId ).children,
43 | tabHeads = tabElements[0].children,
44 | tabBodys = tabElements[1].children;
45 |
46 | for ( var i = 0, length = tabHeads.length; i < length; i++ ) {
47 | var head = tabHeads[i];
48 | if ( head.className === "focus" )clickHandler(tabHeads,tabBodys, head );
49 | head.onclick = function () {
50 | clickHandler(tabHeads,tabBodys,this);
51 | }
52 | }
53 | }
54 | switchTab("helptab");
55 |
56 | document.getElementById('version').innerHTML = parent.UE.version;
--------------------------------------------------------------------------------
/static/ueditor/dialogs/image/images/alignicon.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/image/images/alignicon.jpg
--------------------------------------------------------------------------------
/static/ueditor/dialogs/image/images/bg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/image/images/bg.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/image/images/icons.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/image/images/icons.gif
--------------------------------------------------------------------------------
/static/ueditor/dialogs/image/images/icons.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/image/images/icons.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/image/images/image.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/image/images/image.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/image/images/progress.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/image/images/progress.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/image/images/success.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/image/images/success.gif
--------------------------------------------------------------------------------
/static/ueditor/dialogs/image/images/success.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/image/images/success.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/internal.js:
--------------------------------------------------------------------------------
1 | (function () {
2 | var parent = window.parent;
3 | //dialog对象
4 | dialog = parent.$EDITORUI[window.frameElement.id.replace( /_iframe$/, '' )];
5 | //当前打开dialog的编辑器实例
6 | editor = dialog.editor;
7 |
8 | UE = parent.UE;
9 |
10 | domUtils = UE.dom.domUtils;
11 |
12 | utils = UE.utils;
13 |
14 | browser = UE.browser;
15 |
16 | ajax = UE.ajax;
17 |
18 | $G = function ( id ) {
19 | return document.getElementById( id )
20 | };
21 | //focus元素
22 | $focus = function ( node ) {
23 | setTimeout( function () {
24 | if ( browser.ie ) {
25 | var r = node.createTextRange();
26 | r.collapse( false );
27 | r.select();
28 | } else {
29 | node.focus()
30 | }
31 | }, 0 )
32 | };
33 | utils.loadFile(document,{
34 | href:editor.options.themePath + editor.options.theme + "/dialogbase.css?cache="+Math.random(),
35 | tag:"link",
36 | type:"text/css",
37 | rel:"stylesheet"
38 | });
39 | lang = editor.getLang(dialog.className.split( "-" )[2]);
40 | if(lang){
41 | domUtils.on(window,'load',function () {
42 |
43 | var langImgPath = editor.options.langPath + editor.options.lang + "/images/";
44 | //针对静态资源
45 | for ( var i in lang["static"] ) {
46 | var dom = $G( i );
47 | if(!dom) continue;
48 | var tagName = dom.tagName,
49 | content = lang["static"][i];
50 | if(content.src){
51 | //clone
52 | content = utils.extend({},content,false);
53 | content.src = langImgPath + content.src;
54 | }
55 | if(content.style){
56 | content = utils.extend({},content,false);
57 | content.style = content.style.replace(/url\s*\(/g,"url(" + langImgPath)
58 | }
59 | switch ( tagName.toLowerCase() ) {
60 | case "var":
61 | dom.parentNode.replaceChild( document.createTextNode( content ), dom );
62 | break;
63 | case "select":
64 | var ops = dom.options;
65 | for ( var j = 0, oj; oj = ops[j]; ) {
66 | oj.innerHTML = content.options[j++];
67 | }
68 | for ( var p in content ) {
69 | p != "options" && dom.setAttribute( p, content[p] );
70 | }
71 | break;
72 | default :
73 | domUtils.setAttributes( dom, content);
74 | }
75 | }
76 | } );
77 | }
78 |
79 |
80 | })();
81 |
82 |
--------------------------------------------------------------------------------
/static/ueditor/dialogs/music/music.css:
--------------------------------------------------------------------------------
1 | .wrapper{margin: 5px 10px;}
2 |
3 | .searchBar{height:30px;padding:7px 0 3px;text-align:center;}
4 | .searchBtn{font-size:13px;height:24px;}
5 |
6 | .resultBar{width:460px;margin:5px auto;border: 1px solid #CCC;border-radius: 5px;box-shadow: 2px 2px 5px #D3D6DA;overflow: hidden;}
7 |
8 | .listPanel{overflow: hidden;}
9 | .panelon{display:block;}
10 | .paneloff{display:none}
11 |
12 | .page{width:220px;margin:20px auto;overflow: hidden;}
13 | .pageon{float:right;width:24px;line-height:24px;height:24px;margin-right: 5px;background: none;border: none;color: #000;font-weight: bold;text-align:center}
14 | .pageoff{float:right;width:24px;line-height:24px;height:24px;cursor:pointer;background-color: #fff;
15 | border: 1px solid #E7ECF0;color: #2D64B3;margin-right: 5px;text-decoration: none;text-align:center;}
16 |
17 | .m-box{width:460px;}
18 | .m-m{float: left;line-height: 20px;height: 20px;}
19 | .m-h{height:24px;line-height:24px;padding-left: 46px;background-color:#FAFAFA;border-bottom: 1px solid #DAD8D8;font-weight: bold;font-size: 12px;color: #333;}
20 | .m-l{float:left;width:40px; }
21 | .m-t{float:left;width:140px;}
22 | .m-s{float:left;width:110px;}
23 | .m-z{float:left;width:100px;}
24 | .m-try-t{float: left;width: 60px;;}
25 |
26 | .m-try{float:left;width:20px;height:20px;background:url('http://static.tieba.baidu.com/tb/editor/images/try_music.gif') no-repeat ;}
27 | .m-trying{float:left;width:20px;height:20px;background:url('http://static.tieba.baidu.com/tb/editor/images/stop_music.gif') no-repeat ;}
28 |
29 | .loading{width:95px;height:7px;font-size:7px;margin:60px auto;background:url(http://static.tieba.baidu.com/tb/editor/images/loading.gif) no-repeat}
30 | .empty{width:300px;height:40px;padding:2px;margin:50px auto;line-height:40px; color:#006699;text-align:center;}
--------------------------------------------------------------------------------
/static/ueditor/dialogs/music/music.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | 插入音乐
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
19 |
20 |
21 |
22 |
31 |
32 |
--------------------------------------------------------------------------------
/static/ueditor/dialogs/preview/preview.html:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
6 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
40 |
--------------------------------------------------------------------------------
/static/ueditor/dialogs/scrawl/images/addimg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/scrawl/images/addimg.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/scrawl/images/brush.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/scrawl/images/brush.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/scrawl/images/delimg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/scrawl/images/delimg.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/scrawl/images/delimgH.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/scrawl/images/delimgH.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/scrawl/images/empty.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/scrawl/images/empty.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/scrawl/images/emptyH.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/scrawl/images/emptyH.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/scrawl/images/eraser.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/scrawl/images/eraser.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/scrawl/images/redo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/scrawl/images/redo.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/scrawl/images/redoH.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/scrawl/images/redoH.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/scrawl/images/scale.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/scrawl/images/scale.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/scrawl/images/scaleH.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/scrawl/images/scaleH.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/scrawl/images/size.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/scrawl/images/size.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/scrawl/images/undo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/scrawl/images/undo.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/scrawl/images/undoH.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/scrawl/images/undoH.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/scrawl/scrawl.css:
--------------------------------------------------------------------------------
1 | /*common
2 | */
3 | body{margin: 0;}
4 | table{width:100%;}
5 | table td{padding:2px 4px;vertical-align: middle;}
6 | a{text-decoration: none;}
7 | em{font-style: normal;}
8 | .border_style1{border: 1px solid #ccc;border-radius: 5px;box-shadow:2px 2px 5px #d3d6da;}
9 | /*module
10 | */
11 | .main{margin: 8px;overflow: hidden;}
12 |
13 | .hot{float:left;height:335px;}
14 | .drawBoard{position: relative; cursor: crosshair;}
15 | .brushBorad{position: absolute;left:0;top:0;z-index: 998;}
16 | .picBoard{border: none;text-align: center;line-height: 300px;cursor: default;}
17 | .operateBar{margin-top:10px;font-size:12px;text-align: center;}
18 | .operateBar span{margin-left: 10px;}
19 |
20 | .drawToolbar{float:right;width:110px;height:300px;overflow: hidden;}
21 | .colorBar{margin-top:10px;font-size: 12px;text-align: center;}
22 | .colorBar a{display:block;width: 10px;height: 10px;border:1px solid #1006F1;border-radius: 3px; box-shadow:2px 2px 5px #d3d6da;opacity: 0.3}
23 | .sectionBar{margin-top:15px;font-size: 12px;text-align: center;}
24 | .sectionBar a{display:inline-block;width:10px;height:12px;color: #888;text-indent: -999px;opacity: 0.3}
25 | .size1{background: url('images/size.png') 1px center no-repeat ;}
26 | .size2{background: url('images/size.png') -10px center no-repeat;}
27 | .size3{background: url('images/size.png') -22px center no-repeat;}
28 | .size4{background: url('images/size.png') -35px center no-repeat;}
29 |
30 | .addImgH{position: relative;}
31 | .addImgH_form{position: absolute;left: 18px;top: -1px;width: 75px;height: 21px;opacity: 0;cursor: pointer;}
32 | .addImgH_form input{width: 100%;}
33 | /*scrawl遮罩层
34 | */
35 | .maskLayerNull{display: none;}
36 | .maskLayer{position: absolute;top:0;left:0;width: 100%; height: 100%;opacity: 0.7;
37 | background-color: #fff;text-align:center;font-weight:bold;line-height:300px;z-index: 1000;}
38 | /*btn state
39 | */
40 | .previousStepH .icon{display: inline-block;width:16px;height:16px;background-image: url('images/undoH.png');cursor: pointer;}
41 | .previousStepH .text{color:#888;cursor:pointer;}
42 | .previousStep .icon{display: inline-block;width:16px;height:16px;background-image: url('images/undo.png');cursor:default;}
43 | .previousStep .text{color:#ccc;cursor:default;}
44 |
45 | .nextStepH .icon{display: inline-block;width:16px;height:16px;background-image: url('images/redoH.png');cursor: pointer;}
46 | .nextStepH .text{color:#888;cursor:pointer;}
47 | .nextStep .icon{display: inline-block;width:16px;height:16px;background-image: url('images/redo.png');cursor:default;}
48 | .nextStep .text{color:#ccc;cursor:default;}
49 |
50 | .clearBoardH .icon{display: inline-block;width:16px;height:16px;background-image: url('images/emptyH.png');cursor: pointer;}
51 | .clearBoardH .text{color:#888;cursor:pointer;}
52 | .clearBoard .icon{display: inline-block;width:16px;height:16px;background-image: url('images/empty.png');cursor:default;}
53 | .clearBoard .text{color:#ccc;cursor:default;}
54 |
55 | .scaleBoardH .icon{display: inline-block;width:16px;height:16px;background-image: url('images/scaleH.png');cursor: pointer;}
56 | .scaleBoardH .text{color:#888;cursor:pointer;}
57 | .scaleBoard .icon{display: inline-block;width:16px;height:16px;background-image: url('images/scale.png');cursor:default;}
58 | .scaleBoard .text{color:#ccc;cursor:default;}
59 |
60 | .removeImgH .icon{display: inline-block;width:16px;height:16px;background-image: url('images/delimgH.png');cursor: pointer;}
61 | .removeImgH .text{color:#888;cursor:pointer;}
62 | .removeImg .icon{display: inline-block;width:16px;height:16px;background-image: url('images/delimg.png');cursor:default;}
63 | .removeImg .text{color:#ccc;cursor:default;}
64 |
65 | .addImgH .icon{vertical-align:top;display: inline-block;width:16px;height:16px;background-image: url('images/addimg.png')}
66 | .addImgH .text{color:#888;cursor:pointer;}
67 | /*icon
68 | */
69 | .brushIcon{display: inline-block;width:16px;height:16px;background-image: url('images/brush.png')}
70 | .eraserIcon{display: inline-block;width:16px;height:16px;background-image: url('images/eraser.png')}
71 |
72 |
73 |
--------------------------------------------------------------------------------
/static/ueditor/dialogs/scrawl/scrawl.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
70 |
71 |
72 |
73 |
74 |
94 |
95 |
--------------------------------------------------------------------------------
/static/ueditor/dialogs/snapscreen/snapscreen.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
--------------------------------------------------------------------------------
/static/ueditor/dialogs/spechars/spechars.html:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
6 |
7 |
8 |
14 |
15 |
16 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/static/ueditor/dialogs/spechars/spechars.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Created with JetBrains PhpStorm.
3 | * User: xuheng
4 | * Date: 12-9-26
5 | * Time: 下午1:09
6 | * To change this template use File | Settings | File Templates.
7 | */
8 | var charsContent = [
9 | { name:"tsfh", title:lang.tsfh, content:toArray("、,。,·,ˉ,ˇ,¨,〃,々,—,~,‖,…,‘,’,“,”,〔,〕,〈,〉,《,》,「,」,『,』,〖,〗,【,】,±,×,÷,∶,∧,∨,∑,∏,∪,∩,∈,∷,√,⊥,∥,∠,⌒,⊙,∫,∮,≡,≌,≈,∽,∝,≠,≮,≯,≤,≥,∞,∵,∴,♂,♀,°,′,″,℃,$,¤,¢,£,‰,§,№,☆,★,○,●,◎,◇,◆,□,■,△,▲,※,→,←,↑,↓,〓,〡,〢,〣,〤,〥,〦,〧,〨,〩,㊣,㎎,㎏,㎜,㎝,㎞,㎡,㏄,㏎,㏑,㏒,㏕,︰,¬,¦,℡,ˊ,ˋ,˙,–,―,‥,‵,℅,℉,↖,↗,↘,↙,∕,∟,∣,≒,≦,≧,⊿,═,║,╒,╓,╔,╕,╖,╗,╘,╙,╚,╛,╜,╝,╞,╟,╠,╡,╢,╣,╤,╥,╦,╧,╨,╩,╪,╫,╬,╭,╮,╯,╰,╱,╲,╳,▁,▂,▃,▄,▅,▆,▇,�,█,▉,▊,▋,▌,▍,▎,▏,▓,▔,▕,▼,▽,◢,◣,◤,◥,☉,⊕,〒,〝,〞")},
10 | { name:"lmsz", title:lang.lmsz, content:toArray("ⅰ,ⅱ,ⅲ,ⅳ,ⅴ,ⅵ,ⅶ,ⅷ,ⅸ,ⅹ,Ⅰ,Ⅱ,Ⅲ,Ⅳ,Ⅴ,Ⅵ,Ⅶ,Ⅷ,Ⅸ,Ⅹ,Ⅺ,Ⅻ")},
11 | { name:"szfh", title:lang.szfh, content:toArray("⒈,⒉,⒊,⒋,⒌,⒍,⒎,⒏,⒐,⒑,⒒,⒓,⒔,⒕,⒖,⒗,⒘,⒙,⒚,⒛,⑴,⑵,⑶,⑷,⑸,⑹,⑺,⑻,⑼,⑽,⑾,⑿,⒀,⒁,⒂,⒃,⒄,⒅,⒆,⒇,①,②,③,④,⑤,⑥,⑦,⑧,⑨,⑩,㈠,㈡,㈢,㈣,㈤,㈥,㈦,㈧,㈨,㈩")},
12 | { name:"rwfh", title:lang.rwfh, content:toArray("ぁ,あ,ぃ,い,ぅ,う,ぇ,え,ぉ,お,か,が,き,ぎ,く,ぐ,け,げ,こ,ご,さ,ざ,し,じ,す,ず,せ,ぜ,そ,ぞ,た,だ,ち,ぢ,っ,つ,づ,て,で,と,ど,な,に,ぬ,ね,の,は,ば,ぱ,ひ,び,ぴ,ふ,ぶ,ぷ,へ,べ,ぺ,ほ,ぼ,ぽ,ま,み,む,め,も,ゃ,や,ゅ,ゆ,ょ,よ,ら,り,る,れ,ろ,ゎ,わ,ゐ,ゑ,を,ん,ァ,ア,ィ,イ,ゥ,ウ,ェ,エ,ォ,オ,カ,ガ,キ,ギ,ク,グ,ケ,ゲ,コ,ゴ,サ,ザ,シ,ジ,ス,ズ,セ,ゼ,ソ,ゾ,タ,ダ,チ,ヂ,ッ,ツ,ヅ,テ,デ,ト,ド,ナ,ニ,ヌ,ネ,ノ,ハ,バ,パ,ヒ,ビ,ピ,フ,ブ,プ,ヘ,ベ,ペ,ホ,ボ,ポ,マ,ミ,ム,メ,モ,ャ,ヤ,ュ,ユ,ョ,ヨ,ラ,リ,ル,レ,ロ,ヮ,ワ,ヰ,ヱ,ヲ,ン,ヴ,ヵ,ヶ")},
13 | { name:"xlzm", title:lang.xlzm, content:toArray("Α,Β,Γ,Δ,Ε,Ζ,Η,Θ,Ι,Κ,Λ,Μ,Ν,Ξ,Ο,Π,Ρ,Σ,Τ,Υ,Φ,Χ,Ψ,Ω,α,β,γ,δ,ε,ζ,η,θ,ι,κ,λ,μ,ν,ξ,ο,π,ρ,σ,τ,υ,φ,χ,ψ,ω")},
14 | { name:"ewzm", title:lang.ewzm, content:toArray("А,Б,В,Г,Д,Е,Ё,Ж,З,И,Й,К,Л,М,Н,О,П,Р,С,Т,У,Ф,Х,Ц,Ч,Ш,Щ,Ъ,Ы,Ь,Э,Ю,Я,а,б,в,г,д,е,ё,ж,з,и,й,к,л,м,н,о,п,р,с,т,у,ф,х,ц,ч,ш,щ,ъ,ы,ь,э,ю,я")},
15 | { name:"pyzm", title:lang.pyzm, content:toArray("ā,á,ǎ,à,ē,é,ě,è,ī,í,ǐ,ì,ō,ó,ǒ,ò,ū,ú,ǔ,ù,ǖ,ǘ,ǚ,ǜ,ü")},
16 | { name:"yyyb", title:lang.yyyb, content:toArray("i:,i,e,æ,ʌ,ə:,ə,u:,u,ɔ:,ɔ,a:,ei,ai,ɔi,əu,au,iə,εə,uə,p,t,k,b,d,g,f,s,ʃ,θ,h,v,z,ʒ,ð,tʃ,tr,ts,dʒ,dr,dz,m,n,ŋ,l,r,w,j,")},
17 | { name:"zyzf", title:lang.zyzf, content:toArray("ㄅ,ㄆ,ㄇ,ㄈ,ㄉ,ㄊ,ㄋ,ㄌ,ㄍ,ㄎ,ㄏ,ㄐ,ㄑ,ㄒ,ㄓ,ㄔ,ㄕ,ㄖ,ㄗ,ㄘ,ㄙ,ㄚ,ㄛ,ㄜ,ㄝ,ㄞ,ㄟ,ㄠ,ㄡ,ㄢ,ㄣ,ㄤ,ㄥ,ㄦ,ㄧ,ㄨ")}
18 | ];
19 | (function createTab(content) {
20 | for (var i = 0, ci; ci = content[i++];) {
21 | var span = document.createElement("span");
22 | span.setAttribute("tabSrc", ci.name);
23 | span.innerHTML = ci.title;
24 | if (i == 1)span.className = "focus";
25 | domUtils.on(span, "click", function () {
26 | var tmps = $G("tabHeads").children;
27 | for (var k = 0, sk; sk = tmps[k++];) {
28 | sk.className = "";
29 | }
30 | tmps = $G("tabBodys").children;
31 | for (var k = 0, sk; sk = tmps[k++];) {
32 | sk.style.display = "none";
33 | }
34 | this.className = "focus";
35 | $G(this.getAttribute("tabSrc")).style.display = "";
36 | });
37 | $G("tabHeads").appendChild(span);
38 | domUtils.insertAfter(span, document.createTextNode("\n"));
39 | var div = document.createElement("div");
40 | div.id = ci.name;
41 | div.style.display = (i == 1) ? "" : "none";
42 | var cons = ci.content;
43 | for (var j = 0, con; con = cons[j++];) {
44 | var charSpan = document.createElement("span");
45 | charSpan.innerHTML = con;
46 | domUtils.on(charSpan, "click", function () {
47 | editor.execCommand("insertHTML", this.innerHTML);
48 | dialog.close();
49 | });
50 | div.appendChild(charSpan);
51 | }
52 | $G("tabBodys").appendChild(div);
53 | }
54 | })(charsContent);
55 | function toArray(str) {
56 | return str.split(",");
57 | }
58 |
--------------------------------------------------------------------------------
/static/ueditor/dialogs/table/dragicon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/table/dragicon.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/table/edittable.css:
--------------------------------------------------------------------------------
1 | body{
2 | overflow: hidden;
3 | width: 540px;
4 | }
5 | .wrapper {
6 | margin: 10px auto 0;
7 | font-size: 12px;
8 | overflow: hidden;
9 | width: 520px;
10 | height: 315px;
11 | }
12 |
13 | .clear {
14 | clear: both;
15 | }
16 |
17 | .wrapper .left {
18 | float: left;
19 | margin-left: 10px;;
20 | }
21 |
22 | .wrapper .right {
23 | float: right;
24 | border-left: 2px dotted #EDEDED;
25 | padding-left: 15px;
26 | }
27 |
28 | .section {
29 | margin-bottom: 15px;
30 | width: 240px;
31 | overflow: hidden;
32 | }
33 |
34 | .section h3 {
35 | font-weight: bold;
36 | padding: 5px 0;
37 | margin-bottom: 10px;
38 | border-bottom: 1px solid #EDEDED;
39 | font-size: 12px;
40 | }
41 |
42 | .section ul {
43 | list-style: none;
44 | overflow: hidden;
45 | clear: both;
46 |
47 | }
48 |
49 | .section li {
50 | float: left;
51 | width: 120px;;
52 | }
53 |
54 | .section .tone {
55 | width: 80px;;
56 | }
57 |
58 | .section .preview {
59 | width: 220px;
60 | }
61 |
62 | .section .preview table {
63 | text-align: center;
64 | vertical-align: middle;
65 | color: #666;
66 | }
67 |
68 | .section .preview caption {
69 | font-weight: bold;
70 | }
71 |
72 | .section .preview td {
73 | border-width: 1px;
74 | border-style: solid;
75 | height: 22px;
76 | }
77 |
78 | .section .preview th {
79 | border-style: solid;
80 | border-color: #DDD;
81 | border-width: 2px 1px 1px 1px;
82 | height: 22px;
83 | background-color: #F7F7F7;
84 | }
--------------------------------------------------------------------------------
/static/ueditor/dialogs/table/edittable.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
62 |
63 |
64 |
--------------------------------------------------------------------------------
/static/ueditor/dialogs/table/edittd.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
60 |
61 |
--------------------------------------------------------------------------------
/static/ueditor/dialogs/table/edittip.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | 表格删除提示
5 |
6 |
17 |
18 |
19 |
27 |
32 |
33 |
--------------------------------------------------------------------------------
/static/ueditor/dialogs/template/images/bg.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/template/images/bg.gif
--------------------------------------------------------------------------------
/static/ueditor/dialogs/template/images/pre0.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/template/images/pre0.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/template/images/pre1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/template/images/pre1.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/template/images/pre2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/template/images/pre2.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/template/images/pre3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/template/images/pre3.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/template/images/pre4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/template/images/pre4.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/template/template.css:
--------------------------------------------------------------------------------
1 | .wrap{ padding: 5px;font-size: 14px;}
2 | .left{width:425px;float: left;}
3 | .right{width:160px;border: 1px solid #ccc;float: right;padding: 5px;margin-right: 5px;}
4 | .right .pre{height: 332px;overflow-y: auto;}
5 | .right .preitem{border: white 1px solid;margin: 5px 0;padding: 2px 0;}
6 | .right .preitem:hover{background-color: lemonChiffon;cursor: pointer;border: #ccc 1px solid;}
7 | .right .preitem img{display: block;margin: 0 auto;width:100px;}
8 | .clear{clear: both;}
9 | .top{height:26px;line-height: 26px;padding: 5px;}
10 | .bottom{height:320px;width:100%;margin: 0 auto;}
11 | .transparent{ background: url("images/bg.gif") repeat;}
12 | .bottom table tr td{border:1px dashed #ccc;}
13 | #colorPicker{width: 17px;height: 17px;border: 1px solid #CCC;display: inline-block;border-radius: 3px;box-shadow: 2px 2px 5px #D3D6DA;}
14 | .border_style1{padding:2px;border: 1px solid #ccc;border-radius: 5px;box-shadow:2px 2px 5px #d3d6da;}
15 | p{margin: 5px 0}
16 | table{clear:both;margin-bottom:10px;border-collapse:collapse;word-break:break-all;}
17 | li{clear:both}
18 | ol{padding-left:40px; }
--------------------------------------------------------------------------------
/static/ueditor/dialogs/template/template.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/static/ueditor/dialogs/template/template.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Created with JetBrains PhpStorm.
3 | * User: xuheng
4 | * Date: 12-8-8
5 | * Time: 下午2:09
6 | * To change this template use File | Settings | File Templates.
7 | */
8 | (function () {
9 | var me = editor,
10 | preview = $G( "preview" ),
11 | preitem = $G( "preitem" ),
12 | tmps = templates,
13 | currentTmp;
14 | var initPre = function () {
15 | var str = "";
16 | for ( var i = 0, tmp; tmp = tmps[i++]; ) {
17 | str += '
';
18 | }
19 | preitem.innerHTML = str;
20 | };
21 | var pre = function ( n ) {
22 | var tmp = tmps[n - 1];
23 | currentTmp = tmp;
24 | clearItem();
25 | domUtils.setStyles( preitem.childNodes[n - 1], {
26 | "background-color":"lemonChiffon",
27 | "border":"#ccc 1px solid"
28 | } );
29 | preview.innerHTML = tmp.preHtml ? tmp.preHtml : "";
30 | };
31 | var clearItem = function () {
32 | var items = preitem.children;
33 | for ( var i = 0, item; item = items[i++]; ) {
34 | domUtils.setStyles( item, {
35 | "background-color":"",
36 | "border":"white 1px solid"
37 | } );
38 | }
39 | };
40 | dialog.onok = function () {
41 | if ( !$G( "issave" ).checked ){
42 | me.execCommand( "cleardoc" );
43 | }
44 | var obj = {
45 | html:currentTmp && currentTmp.html
46 | };
47 | me.execCommand( "template", obj );
48 | };
49 | initPre();
50 | window.pre = pre;
51 | pre(2)
52 |
53 | })();
--------------------------------------------------------------------------------
/static/ueditor/dialogs/video/images/bg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/video/images/bg.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/video/images/center_focus.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/video/images/center_focus.jpg
--------------------------------------------------------------------------------
/static/ueditor/dialogs/video/images/file-icons.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/video/images/file-icons.gif
--------------------------------------------------------------------------------
/static/ueditor/dialogs/video/images/file-icons.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/video/images/file-icons.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/video/images/icons.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/video/images/icons.gif
--------------------------------------------------------------------------------
/static/ueditor/dialogs/video/images/icons.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/video/images/icons.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/video/images/image.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/video/images/image.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/video/images/left_focus.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/video/images/left_focus.jpg
--------------------------------------------------------------------------------
/static/ueditor/dialogs/video/images/none_focus.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/video/images/none_focus.jpg
--------------------------------------------------------------------------------
/static/ueditor/dialogs/video/images/progress.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/video/images/progress.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/video/images/right_focus.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/video/images/right_focus.jpg
--------------------------------------------------------------------------------
/static/ueditor/dialogs/video/images/success.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/video/images/success.gif
--------------------------------------------------------------------------------
/static/ueditor/dialogs/video/images/success.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/video/images/success.png
--------------------------------------------------------------------------------
/static/ueditor/dialogs/webapp/webapp.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
12 |
13 |
14 |
17 |
52 |
53 |
--------------------------------------------------------------------------------
/static/ueditor/dialogs/wordimage/fClipboard_ueditor.swf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/wordimage/fClipboard_ueditor.swf
--------------------------------------------------------------------------------
/static/ueditor/dialogs/wordimage/imageUploader.swf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/dialogs/wordimage/imageUploader.swf
--------------------------------------------------------------------------------
/static/ueditor/lang/en/images/addimage.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/lang/en/images/addimage.png
--------------------------------------------------------------------------------
/static/ueditor/lang/en/images/alldeletebtnhoverskin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/lang/en/images/alldeletebtnhoverskin.png
--------------------------------------------------------------------------------
/static/ueditor/lang/en/images/alldeletebtnupskin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/lang/en/images/alldeletebtnupskin.png
--------------------------------------------------------------------------------
/static/ueditor/lang/en/images/background.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/lang/en/images/background.png
--------------------------------------------------------------------------------
/static/ueditor/lang/en/images/button.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/lang/en/images/button.png
--------------------------------------------------------------------------------
/static/ueditor/lang/en/images/copy.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/lang/en/images/copy.png
--------------------------------------------------------------------------------
/static/ueditor/lang/en/images/deletedisable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/lang/en/images/deletedisable.png
--------------------------------------------------------------------------------
/static/ueditor/lang/en/images/deleteenable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/lang/en/images/deleteenable.png
--------------------------------------------------------------------------------
/static/ueditor/lang/en/images/listbackground.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/lang/en/images/listbackground.png
--------------------------------------------------------------------------------
/static/ueditor/lang/en/images/localimage.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/lang/en/images/localimage.png
--------------------------------------------------------------------------------
/static/ueditor/lang/en/images/music.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/lang/en/images/music.png
--------------------------------------------------------------------------------
/static/ueditor/lang/en/images/rotateleftdisable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/lang/en/images/rotateleftdisable.png
--------------------------------------------------------------------------------
/static/ueditor/lang/en/images/rotateleftenable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/lang/en/images/rotateleftenable.png
--------------------------------------------------------------------------------
/static/ueditor/lang/en/images/rotaterightdisable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/lang/en/images/rotaterightdisable.png
--------------------------------------------------------------------------------
/static/ueditor/lang/en/images/rotaterightenable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/lang/en/images/rotaterightenable.png
--------------------------------------------------------------------------------
/static/ueditor/lang/en/images/upload.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/lang/en/images/upload.png
--------------------------------------------------------------------------------
/static/ueditor/lang/zh-cn/images/copy.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/lang/zh-cn/images/copy.png
--------------------------------------------------------------------------------
/static/ueditor/lang/zh-cn/images/localimage.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/lang/zh-cn/images/localimage.png
--------------------------------------------------------------------------------
/static/ueditor/lang/zh-cn/images/music.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/lang/zh-cn/images/music.png
--------------------------------------------------------------------------------
/static/ueditor/lang/zh-cn/images/upload.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/lang/zh-cn/images/upload.png
--------------------------------------------------------------------------------
/static/ueditor/php/action_crawler.php:
--------------------------------------------------------------------------------
1 | $CONFIG['catcherPathFormat'],
14 | "maxSize" => $CONFIG['catcherMaxSize'],
15 | "allowFiles" => $CONFIG['catcherAllowFiles'],
16 | "oriName" => "remote.png"
17 | );
18 | $fieldName = $CONFIG['catcherFieldName'];
19 |
20 | /* 抓取远程图片 */
21 | $list = array();
22 | if (isset($_POST[$fieldName])) {
23 | $source = $_POST[$fieldName];
24 | } else {
25 | $source = $_GET[$fieldName];
26 | }
27 | foreach ($source as $imgUrl) {
28 | $item = new Uploader($imgUrl, $config, "remote");
29 | $info = $item->getFileInfo();
30 | array_push($list, array(
31 | "state" => $info["state"],
32 | "url" => $info["url"],
33 | "size" => $info["size"],
34 | "title" => htmlspecialchars($info["title"]),
35 | "original" => htmlspecialchars($info["original"]),
36 | "source" => htmlspecialchars($imgUrl)
37 | ));
38 | }
39 |
40 | /* 返回抓取数据 */
41 | return json_encode(array(
42 | 'state'=> count($list) ? 'SUCCESS':'ERROR',
43 | 'list'=> $list
44 | ));
--------------------------------------------------------------------------------
/static/ueditor/php/action_list.php:
--------------------------------------------------------------------------------
1 | "no match file",
38 | "list" => array(),
39 | "start" => $start,
40 | "total" => count($files)
41 | ));
42 | }
43 |
44 | /* 获取指定范围的列表 */
45 | $len = count($files);
46 | for ($i = min($end, $len) - 1, $list = array(); $i < $len && $i >= 0 && $i >= $start; $i--){
47 | $list[] = $files[$i];
48 | }
49 | //倒序
50 | //for ($i = $end, $list = array(); $i < $len && $i < $end; $i++){
51 | // $list[] = $files[$i];
52 | //}
53 |
54 | /* 返回数据 */
55 | $result = json_encode(array(
56 | "state" => "SUCCESS",
57 | "list" => $list,
58 | "start" => $start,
59 | "total" => count($files)
60 | ));
61 |
62 | return $result;
63 |
64 |
65 | /**
66 | * 遍历获取目录下的指定类型的文件
67 | * @param $path
68 | * @param array $files
69 | * @return array
70 | */
71 | function getfiles($path, $allowFiles, &$files = array())
72 | {
73 | if (!is_dir($path)) return null;
74 | if(substr($path, strlen($path) - 1) != '/') $path .= '/';
75 | $handle = opendir($path);
76 | while (false !== ($file = readdir($handle))) {
77 | if ($file != '.' && $file != '..') {
78 | $path2 = $path . $file;
79 | if (is_dir($path2)) {
80 | getfiles($path2, $allowFiles, $files);
81 | } else {
82 | if (preg_match("/\.(".$allowFiles.")$/i", $file)) {
83 | $files[] = array(
84 | 'url'=> substr($path2, strlen($_SERVER['DOCUMENT_ROOT'])),
85 | 'mtime'=> filemtime($path2)
86 | );
87 | }
88 | }
89 | }
90 | }
91 | return $files;
92 | }
--------------------------------------------------------------------------------
/static/ueditor/php/action_upload.php:
--------------------------------------------------------------------------------
1 | $CONFIG['imagePathFormat'],
16 | "maxSize" => $CONFIG['imageMaxSize'],
17 | "allowFiles" => $CONFIG['imageAllowFiles']
18 | );
19 | $fieldName = $CONFIG['imageFieldName'];
20 | break;
21 | case 'uploadscrawl':
22 | $config = array(
23 | "pathFormat" => $CONFIG['scrawlPathFormat'],
24 | "maxSize" => $CONFIG['scrawlMaxSize'],
25 | "allowFiles" => $CONFIG['scrawlAllowFiles'],
26 | "oriName" => "scrawl.png"
27 | );
28 | $fieldName = $CONFIG['scrawlFieldName'];
29 | $base64 = "base64";
30 | break;
31 | case 'uploadvideo':
32 | $config = array(
33 | "pathFormat" => $CONFIG['videoPathFormat'],
34 | "maxSize" => $CONFIG['videoMaxSize'],
35 | "allowFiles" => $CONFIG['videoAllowFiles']
36 | );
37 | $fieldName = $CONFIG['videoFieldName'];
38 | break;
39 | case 'uploadfile':
40 | default:
41 | $config = array(
42 | "pathFormat" => $CONFIG['filePathFormat'],
43 | "maxSize" => $CONFIG['fileMaxSize'],
44 | "allowFiles" => $CONFIG['fileAllowFiles']
45 | );
46 | $fieldName = $CONFIG['fileFieldName'];
47 | break;
48 | }
49 |
50 | /* 生成上传实例对象并完成上传 */
51 | $up = new Uploader($fieldName, $config, $base64);
52 |
53 | /**
54 | * 得到上传文件所对应的各个参数,数组结构
55 | * array(
56 | * "state" => "", //上传状态,上传成功时必须返回"SUCCESS"
57 | * "url" => "", //返回的地址
58 | * "title" => "", //新文件名
59 | * "original" => "", //原始文件名
60 | * "type" => "" //文件类型
61 | * "size" => "", //文件大小
62 | * )
63 | */
64 |
65 | /* 返回数据 */
66 | return json_encode($up->getFileInfo());
67 |
--------------------------------------------------------------------------------
/static/ueditor/php/controller.php:
--------------------------------------------------------------------------------
1 | '请求地址出错'
44 | ));
45 | break;
46 | }
47 |
48 | /* 输出结果 */
49 | if (isset($_GET["callback"])) {
50 | if (preg_match("/^[\w_]+$/", $_GET["callback"])) {
51 | echo htmlspecialchars($_GET["callback"]) . '(' . $result . ')';
52 | } else {
53 | echo json_encode(array(
54 | 'state'=> 'callback参数不合法'
55 | ));
56 | }
57 | } else {
58 | echo $result;
59 | }
--------------------------------------------------------------------------------
/static/ueditor/themes/default/dialogbase.css:
--------------------------------------------------------------------------------
1 | /*弹出对话框页面样式组件
2 | */
3 |
4 | /*reset
5 | */
6 | html, body, div, span, applet, object, iframe,
7 | h1, h2, h3, h4, h5, h6, p, blockquote, pre,
8 | a, abbr, acronym, address, big, cite, code,
9 | del, dfn, em, font, img, ins, kbd, q, s, samp,
10 | small, strike, strong, sub, sup, tt, var,
11 | b, u, i, center,
12 | dl, dt, dd, ol, ul, li,
13 | fieldset, form, label, legend,
14 | table, caption, tbody, tfoot, thead, tr, th, td {
15 | margin: 0;
16 | padding: 0;
17 | outline: 0;
18 | font-size: 100%;
19 | }
20 |
21 | body {
22 | line-height: 1;
23 | }
24 |
25 | ol, ul {
26 | list-style: none;
27 | }
28 |
29 | blockquote, q {
30 | quotes: none;
31 | }
32 |
33 | ins {
34 | text-decoration: none;
35 | }
36 |
37 | del {
38 | text-decoration: line-through;
39 | }
40 |
41 | table {
42 | border-collapse: collapse;
43 | border-spacing: 0;
44 | }
45 |
46 | /*module
47 | */
48 | body {
49 | background-color: #fff;
50 | font: 12px/1.5 sans-serif, "宋体", "Arial Narrow", HELVETICA;
51 | color: #646464;
52 | }
53 |
54 | /*tab*/
55 | .tabhead {
56 | position: relative;
57 | z-index: 10;
58 | }
59 |
60 | .tabhead span {
61 | display: inline-block;
62 | padding: 0 5px;
63 | height: 30px;
64 | border: 1px solid #ccc;
65 | background: url("images/dialog-title-bg.png") repeat-x;
66 | text-align: center;
67 | line-height: 30px;
68 | cursor: pointer;
69 | *margin-right: 5px;
70 | }
71 |
72 | .tabhead span.focus {
73 | height: 31px;
74 | border-bottom: none;
75 | background: #fff;
76 | }
77 |
78 | .tabbody {
79 | position: relative;
80 | top: -1px;
81 | margin: 0 auto;
82 | border: 1px solid #ccc;
83 | }
84 |
85 | /*button*/
86 | a.button {
87 | display: block;
88 | text-align: center;
89 | line-height: 24px;
90 | text-decoration: none;
91 | height: 24px;
92 | width: 95px;
93 | border: 0;
94 | color: #838383;
95 | background: url(../../themes/default/images/icons-all.gif) no-repeat;
96 | }
97 |
98 | a.button:hover {
99 | background-position: 0 -30px;
100 | }
--------------------------------------------------------------------------------
/static/ueditor/themes/default/images/anchor.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/themes/default/images/anchor.gif
--------------------------------------------------------------------------------
/static/ueditor/themes/default/images/arrow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/themes/default/images/arrow.png
--------------------------------------------------------------------------------
/static/ueditor/themes/default/images/arrow_down.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/themes/default/images/arrow_down.png
--------------------------------------------------------------------------------
/static/ueditor/themes/default/images/arrow_up.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/themes/default/images/arrow_up.png
--------------------------------------------------------------------------------
/static/ueditor/themes/default/images/button-bg.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/themes/default/images/button-bg.gif
--------------------------------------------------------------------------------
/static/ueditor/themes/default/images/cancelbutton.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/themes/default/images/cancelbutton.gif
--------------------------------------------------------------------------------
/static/ueditor/themes/default/images/charts.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/themes/default/images/charts.png
--------------------------------------------------------------------------------
/static/ueditor/themes/default/images/cursor_h.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/themes/default/images/cursor_h.gif
--------------------------------------------------------------------------------
/static/ueditor/themes/default/images/cursor_h.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/themes/default/images/cursor_h.png
--------------------------------------------------------------------------------
/static/ueditor/themes/default/images/cursor_v.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/themes/default/images/cursor_v.gif
--------------------------------------------------------------------------------
/static/ueditor/themes/default/images/cursor_v.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/themes/default/images/cursor_v.png
--------------------------------------------------------------------------------
/static/ueditor/themes/default/images/dialog-title-bg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/themes/default/images/dialog-title-bg.png
--------------------------------------------------------------------------------
/static/ueditor/themes/default/images/filescan.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/themes/default/images/filescan.png
--------------------------------------------------------------------------------
/static/ueditor/themes/default/images/highlighted.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/themes/default/images/highlighted.gif
--------------------------------------------------------------------------------
/static/ueditor/themes/default/images/icons-all.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/themes/default/images/icons-all.gif
--------------------------------------------------------------------------------
/static/ueditor/themes/default/images/icons.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/themes/default/images/icons.gif
--------------------------------------------------------------------------------
/static/ueditor/themes/default/images/icons.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/themes/default/images/icons.png
--------------------------------------------------------------------------------
/static/ueditor/themes/default/images/loaderror.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/themes/default/images/loaderror.png
--------------------------------------------------------------------------------
/static/ueditor/themes/default/images/loading.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/themes/default/images/loading.gif
--------------------------------------------------------------------------------
/static/ueditor/themes/default/images/lock.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/themes/default/images/lock.gif
--------------------------------------------------------------------------------
/static/ueditor/themes/default/images/neweditor-tab-bg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/themes/default/images/neweditor-tab-bg.png
--------------------------------------------------------------------------------
/static/ueditor/themes/default/images/pagebreak.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/themes/default/images/pagebreak.gif
--------------------------------------------------------------------------------
/static/ueditor/themes/default/images/scale.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/themes/default/images/scale.png
--------------------------------------------------------------------------------
/static/ueditor/themes/default/images/sortable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/themes/default/images/sortable.png
--------------------------------------------------------------------------------
/static/ueditor/themes/default/images/spacer.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/themes/default/images/spacer.gif
--------------------------------------------------------------------------------
/static/ueditor/themes/default/images/sparator_v.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/themes/default/images/sparator_v.png
--------------------------------------------------------------------------------
/static/ueditor/themes/default/images/table-cell-align.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/themes/default/images/table-cell-align.png
--------------------------------------------------------------------------------
/static/ueditor/themes/default/images/tangram-colorpicker.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/themes/default/images/tangram-colorpicker.png
--------------------------------------------------------------------------------
/static/ueditor/themes/default/images/toolbar_bg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/themes/default/images/toolbar_bg.png
--------------------------------------------------------------------------------
/static/ueditor/themes/default/images/unhighlighted.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/themes/default/images/unhighlighted.gif
--------------------------------------------------------------------------------
/static/ueditor/themes/default/images/upload.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/themes/default/images/upload.png
--------------------------------------------------------------------------------
/static/ueditor/themes/default/images/videologo.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/themes/default/images/videologo.gif
--------------------------------------------------------------------------------
/static/ueditor/themes/default/images/word.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/themes/default/images/word.gif
--------------------------------------------------------------------------------
/static/ueditor/themes/default/images/wordpaste.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/themes/default/images/wordpaste.png
--------------------------------------------------------------------------------
/static/ueditor/themes/iframe.css:
--------------------------------------------------------------------------------
1 | /*可以在这里添加你自己的css*/
2 |
--------------------------------------------------------------------------------
/static/ueditor/third-party/codemirror/codemirror.css:
--------------------------------------------------------------------------------
1 | .CodeMirror {
2 | line-height: 1em;
3 | font-family: monospace;
4 | }
5 |
6 | .CodeMirror-scroll {
7 | overflow: auto;
8 | height: 300px;
9 | /* This is needed to prevent an IE[67] bug where the scrolled content
10 | is visible outside of the scrolling box. */
11 | position: relative;
12 | }
13 |
14 | .CodeMirror-gutter {
15 | position: absolute; left: 0; top: 0;
16 | z-index: 10;
17 | background-color: #f7f7f7;
18 | border-right: 1px solid #eee;
19 | min-width: 2em;
20 | height: 100%;
21 | }
22 | .CodeMirror-gutter-text {
23 | color: #aaa;
24 | text-align: right;
25 | padding: .4em .2em .4em .4em;
26 | white-space: pre !important;
27 | }
28 | .CodeMirror-lines {
29 | padding: .4em;
30 | }
31 |
32 | .CodeMirror pre {
33 | -moz-border-radius: 0;
34 | -webkit-border-radius: 0;
35 | -o-border-radius: 0;
36 | border-radius: 0;
37 | border-width: 0; margin: 0; padding: 0; background: transparent;
38 | font-family: inherit;
39 | font-size: inherit;
40 | padding: 0; margin: 0;
41 | white-space: pre;
42 | word-wrap: normal;
43 | }
44 |
45 | .CodeMirror-wrap pre {
46 | word-wrap: break-word;
47 | white-space: pre-wrap;
48 | }
49 | .CodeMirror-wrap .CodeMirror-scroll {
50 | overflow-x: hidden;
51 | }
52 |
53 | .CodeMirror textarea {
54 | outline: none !important;
55 | }
56 |
57 | .CodeMirror pre.CodeMirror-cursor {
58 | z-index: 10;
59 | position: absolute;
60 | visibility: hidden;
61 | border-left: 1px solid black;
62 | }
63 | .CodeMirror-focused pre.CodeMirror-cursor {
64 | visibility: visible;
65 | }
66 |
67 | span.CodeMirror-selected { background: #d9d9d9; }
68 | .CodeMirror-focused span.CodeMirror-selected { background: #d2dcf8; }
69 |
70 | .CodeMirror-searching {background: #ffa;}
71 |
72 | /* Default theme */
73 |
74 | .cm-s-default span.cm-keyword {color: #708;}
75 | .cm-s-default span.cm-atom {color: #219;}
76 | .cm-s-default span.cm-number {color: #164;}
77 | .cm-s-default span.cm-def {color: #00f;}
78 | .cm-s-default span.cm-variable {color: black;}
79 | .cm-s-default span.cm-variable-2 {color: #05a;}
80 | .cm-s-default span.cm-variable-3 {color: #085;}
81 | .cm-s-default span.cm-property {color: black;}
82 | .cm-s-default span.cm-operator {color: black;}
83 | .cm-s-default span.cm-comment {color: #a50;}
84 | .cm-s-default span.cm-string {color: #a11;}
85 | .cm-s-default span.cm-string-2 {color: #f50;}
86 | .cm-s-default span.cm-meta {color: #555;}
87 | .cm-s-default span.cm-error {color: #f00;}
88 | .cm-s-default span.cm-qualifier {color: #555;}
89 | .cm-s-default span.cm-builtin {color: #30a;}
90 | .cm-s-default span.cm-bracket {color: #cc7;}
91 | .cm-s-default span.cm-tag {color: #170;}
92 | .cm-s-default span.cm-attribute {color: #00c;}
93 | .cm-s-default span.cm-header {color: #a0a;}
94 | .cm-s-default span.cm-quote {color: #090;}
95 | .cm-s-default span.cm-hr {color: #999;}
96 | .cm-s-default span.cm-link {color: #00c;}
97 |
98 | span.cm-header, span.cm-strong {font-weight: bold;}
99 | span.cm-em {font-style: italic;}
100 | span.cm-emstrong {font-style: italic; font-weight: bold;}
101 | span.cm-link {text-decoration: underline;}
102 |
103 | div.CodeMirror span.CodeMirror-matchingbracket {color: #0f0;}
104 | div.CodeMirror span.CodeMirror-nonmatchingbracket {color: #f22;}
105 |
--------------------------------------------------------------------------------
/static/ueditor/third-party/highcharts/adapters/mootools-adapter.js:
--------------------------------------------------------------------------------
1 | /*
2 | Highcharts JS v3.0.6 (2013-10-04)
3 | MooTools adapter
4 |
5 | (c) 2010-2013 Torstein Hønsi
6 |
7 | License: www.highcharts.com/license
8 | */
9 | (function(){var e=window,h=document,f=e.MooTools.version.substring(0,3),i=f==="1.2"||f==="1.1",j=i||f==="1.3",g=e.$extend||function(){return Object.append.apply(Object,arguments)};e.HighchartsAdapter={init:function(a){var b=Fx.prototype,c=b.start,d=Fx.Morph.prototype,e=d.compute;b.start=function(b,d){var e=this.element;if(b.d)this.paths=a.init(e,e.d,this.toD);c.apply(this,arguments);return this};d.compute=function(b,c,d){var f=this.paths;if(f)this.element.attr("d",a.step(f[0],f[1],d,this.toD));else return e.apply(this,
10 | arguments)}},adapterRun:function(a,b){if(b==="width"||b==="height")return parseInt($(a).getStyle(b),10)},getScript:function(a,b){var c=h.getElementsByTagName("head")[0],d=h.createElement("script");d.type="text/javascript";d.src=a;d.onload=b;c.appendChild(d)},animate:function(a,b,c){var d=a.attr,f=c&&c.complete;if(d&&!a.setStyle)a.getStyle=a.attr,a.setStyle=function(){var a=arguments;this.attr.call(this,a[0],a[1][0])},a.$family=function(){return!0};e.HighchartsAdapter.stop(a);c=new Fx.Morph(d?a:$(a),
11 | g({transition:Fx.Transitions.Quad.easeInOut},c));if(d)c.element=a;if(b.d)c.toD=b.d;f&&c.addEvent("complete",f);c.start(b);a.fx=c},each:function(a,b){return i?$each(a,b):Array.each(a,b)},map:function(a,b){return a.map(b)},grep:function(a,b){return a.filter(b)},inArray:function(a,b,c){return b?b.indexOf(a,c):-1},offset:function(a){a=a.getPosition();return{left:a.x,top:a.y}},extendWithEvents:function(a){a.addEvent||(a.nodeName?$(a):g(a,new Events))},addEvent:function(a,b,c){typeof b==="string"&&(b===
12 | "unload"&&(b="beforeunload"),e.HighchartsAdapter.extendWithEvents(a),a.addEvent(b,c))},removeEvent:function(a,b,c){typeof a!=="string"&&a.addEvent&&(b?(b==="unload"&&(b="beforeunload"),c?a.removeEvent(b,c):a.removeEvents&&a.removeEvents(b)):a.removeEvents())},fireEvent:function(a,b,c,d){b={type:b,target:a};b=j?new Event(b):new DOMEvent(b);b=g(b,c);if(!b.target&&b.event)b.target=b.event.target;b.preventDefault=function(){d=null};a.fireEvent&&a.fireEvent(b.type,b);d&&d(b)},washMouseEvent:function(a){if(a.page)a.pageX=
13 | a.page.x,a.pageY=a.page.y;return a},stop:function(a){a.fx&&a.fx.cancel()}}})();
14 |
--------------------------------------------------------------------------------
/static/ueditor/third-party/highcharts/adapters/prototype-adapter.js:
--------------------------------------------------------------------------------
1 | /*
2 | Highcharts JS v3.0.6 (2013-10-04)
3 | Prototype adapter
4 |
5 | @author Michael Nelson, Torstein Hønsi.
6 |
7 | Feel free to use and modify this script.
8 | Highcharts license: www.highcharts.com/license.
9 | */
10 | var HighchartsAdapter=function(){var f=typeof Effect!=="undefined";return{init:function(a){if(f)Effect.HighchartsTransition=Class.create(Effect.Base,{initialize:function(b,c,d,g){var e;this.element=b;this.key=c;e=b.attr?b.attr(c):$(b).getStyle(c);if(c==="d")this.paths=a.init(b,b.d,d),this.toD=d,e=0,d=1;this.start(Object.extend(g||{},{from:e,to:d,attribute:c}))},setup:function(){HighchartsAdapter._extend(this.element);if(!this.element._highchart_animation)this.element._highchart_animation={};this.element._highchart_animation[this.key]=
11 | this},update:function(b){var c=this.paths,d=this.element;c&&(b=a.step(c[0],c[1],b,this.toD));d.attr?d.element&&d.attr(this.options.attribute,b):(c={},c[this.options.attribute]=b,$(d).setStyle(c))},finish:function(){this.element&&this.element._highchart_animation&&delete this.element._highchart_animation[this.key]}})},adapterRun:function(a,b){return parseInt($(a).getStyle(b),10)},getScript:function(a,b){var c=$$("head")[0];c&&c.appendChild((new Element("script",{type:"text/javascript",src:a})).observe("load",
12 | b))},addNS:function(a){var b=/^(?:click|mouse(?:down|up|over|move|out))$/;return/^(?:load|unload|abort|error|select|change|submit|reset|focus|blur|resize|scroll)$/.test(a)||b.test(a)?a:"h:"+a},addEvent:function(a,b,c){a.addEventListener||a.attachEvent?Event.observe($(a),HighchartsAdapter.addNS(b),c):(HighchartsAdapter._extend(a),a._highcharts_observe(b,c))},animate:function(a,b,c){var d,c=c||{};c.delay=0;c.duration=(c.duration||500)/1E3;c.afterFinish=c.complete;if(f)for(d in b)new Effect.HighchartsTransition($(a),
13 | d,b[d],c);else{if(a.attr)for(d in b)a.attr(d,b[d]);c.complete&&c.complete()}a.attr||$(a).setStyle(b)},stop:function(a){var b;if(a._highcharts_extended&&a._highchart_animation)for(b in a._highchart_animation)a._highchart_animation[b].cancel()},each:function(a,b){$A(a).each(b)},inArray:function(a,b,c){return b?b.indexOf(a,c):-1},offset:function(a){return $(a).cumulativeOffset()},fireEvent:function(a,b,c,d){a.fire?a.fire(HighchartsAdapter.addNS(b),c):a._highcharts_extended&&(c=c||{},a._highcharts_fire(b,
14 | c));c&&c.defaultPrevented&&(d=null);d&&d(c)},removeEvent:function(a,b,c){$(a).stopObserving&&(b&&(b=HighchartsAdapter.addNS(b)),$(a).stopObserving(b,c));window===a?Event.stopObserving(a,b,c):(HighchartsAdapter._extend(a),a._highcharts_stop_observing(b,c))},washMouseEvent:function(a){return a},grep:function(a,b){return a.findAll(b)},map:function(a,b){return a.map(b)},_extend:function(a){a._highcharts_extended||Object.extend(a,{_highchart_events:{},_highchart_animation:null,_highcharts_extended:!0,
15 | _highcharts_observe:function(b,a){this._highchart_events[b]=[this._highchart_events[b],a].compact().flatten()},_highcharts_stop_observing:function(b,a){b?a?this._highchart_events[b]=[this._highchart_events[b]].compact().flatten().without(a):delete this._highchart_events[b]:this._highchart_events={}},_highcharts_fire:function(a,c){var d=this;(this._highchart_events[a]||[]).each(function(a){if(!c.stopped)c.preventDefault=function(){c.defaultPrevented=!0},c.target=d,a.bind(this)(c)===!1&&c.preventDefault()}.bind(this))}})}}}();
16 |
--------------------------------------------------------------------------------
/static/ueditor/third-party/highcharts/modules/annotations.js:
--------------------------------------------------------------------------------
1 | (function(i,C){function m(a){return typeof a==="number"}function n(a){return a!==D&&a!==null}var D,p,r,s=i.Chart,t=i.extend,z=i.each;r=["path","rect","circle"];p={top:0,left:0,center:0.5,middle:0.5,bottom:1,right:1};var u=C.inArray,A=i.merge,B=function(){this.init.apply(this,arguments)};B.prototype={init:function(a,d){var c=d.shape&&d.shape.type;this.chart=a;var b,f;f={xAxis:0,yAxis:0,title:{style:{},text:"",x:0,y:0},shape:{params:{stroke:"#000000",fill:"transparent",strokeWidth:2}}};b={circle:{params:{x:0,
2 | y:0}}};if(b[c])f.shape=A(f.shape,b[c]);this.options=A({},f,d)},render:function(a){var d=this.chart,c=this.chart.renderer,b=this.group,f=this.title,e=this.shape,h=this.options,i=h.title,l=h.shape;if(!b)b=this.group=c.g();if(!e&&l&&u(l.type,r)!==-1)e=this.shape=c[h.shape.type](l.params),e.add(b);if(!f&&i)f=this.title=c.label(i),f.add(b);b.add(d.annotations.group);this.linkObjects();a!==!1&&this.redraw()},redraw:function(){var a=this.options,d=this.chart,c=this.group,b=this.title,f=this.shape,e=this.linkedObject,
3 | h=d.xAxis[a.xAxis],v=d.yAxis[a.yAxis],l=a.width,w=a.height,x=p[a.anchorY],y=p[a.anchorX],j,o,g,q;if(e)j=e instanceof i.Point?"point":e instanceof i.Series?"series":null,j==="point"?(a.xValue=e.x,a.yValue=e.y,o=e.series):j==="series"&&(o=e),c.visibility!==o.group.visibility&&c.attr({visibility:o.group.visibility});e=n(a.xValue)?h.toPixels(a.xValue+h.minPointOffset)-h.minPixelPadding:a.x;j=n(a.yValue)?v.toPixels(a.yValue):a.y;if(!isNaN(e)&&!isNaN(j)&&m(e)&&m(j)){b&&(b.attr(a.title),b.css(a.title.style));
4 | if(f){b=t({},a.shape.params);if(a.units==="values"){for(g in b)u(g,["width","x"])>-1?b[g]=h.translate(b[g]):u(g,["height","y"])>-1&&(b[g]=v.translate(b[g]));b.width&&(b.width-=h.toPixels(0)-h.left);b.x&&(b.x+=h.minPixelPadding);if(a.shape.type==="path"){g=b.d;o=e;for(var r=j,s=g.length,k=0;k-1&&d.splice(c,1);z(["title","shape","group"],function(b){a[b]&&(a[b].destroy(),a[b]=null)});a.group=a.title=a.shape=a.chart=a.options=null},update:function(a,d){t(this.options,a);this.linkObjects();this.render(d)},
6 | linkObjects:function(){var a=this.chart,d=this.linkedObject,c=d&&(d.id||d.options.id),b=this.options.linkedTo;if(n(b)){if(!n(d)||b!==c)this.linkedObject=a.get(b)}else this.linkedObject=null}};t(s.prototype,{annotations:{add:function(a,d){var c=this.allItems,b=this.chart,f,e;Object.prototype.toString.call(a)==="[object Array]"||(a=[a]);for(e=a.length;e--;)f=new B(b,a[e]),c.push(f),f.render(d)},redraw:function(){z(this.allItems,function(a){a.redraw()})}}});s.prototype.callbacks.push(function(a){var d=
7 | a.options.annotations,c;c=a.renderer.g("annotations");c.attr({zIndex:7});c.add();a.annotations.allItems=[];a.annotations.chart=a;a.annotations.group=c;Object.prototype.toString.call(d)==="[object Array]"&&d.length>0&&a.annotations.add(a.options.annotations);i.addEvent(a,"redraw",function(){a.annotations.redraw()})})})(Highcharts,HighchartsAdapter);
8 |
--------------------------------------------------------------------------------
/static/ueditor/third-party/highcharts/modules/data.js:
--------------------------------------------------------------------------------
1 | /*
2 | Data plugin for Highcharts
3 |
4 | (c) 2012-2013 Torstein Hønsi
5 | Last revision 2013-06-07
6 |
7 | License: www.highcharts.com/license
8 | */
9 | (function(h){var k=h.each,m=function(b,a){this.init(b,a)};h.extend(m.prototype,{init:function(b,a){this.options=b;this.chartOptions=a;this.columns=b.columns||this.rowsToColumns(b.rows)||[];this.columns.length?this.dataFound():(this.parseCSV(),this.parseTable(),this.parseGoogleSpreadsheet())},getColumnDistribution:function(){var b=this.chartOptions,a=b&&b.chart&&b.chart.type,c=[];k(b&&b.series||[],function(b){c.push((h.seriesTypes[b.type||a||"line"].prototype.pointArrayMap||[0]).length)});this.valueCount=
10 | {global:(h.seriesTypes[a||"line"].prototype.pointArrayMap||[0]).length,individual:c}},dataFound:function(){this.parseTypes();this.findHeaderRow();this.parsed();this.complete()},parseCSV:function(){var b=this,a=this.options,c=a.csv,d=this.columns,f=a.startRow||0,i=a.endRow||Number.MAX_VALUE,j=a.startColumn||0,e=a.endColumn||Number.MAX_VALUE,g=0;c&&(c=c.replace(/\r\n/g,"\n").replace(/\r/g,"\n").split(a.lineDelimiter||"\n"),k(c,function(c,h){var n=b.trim(c),p=n.indexOf("#")===0;h>=f&&h<=i&&!p&&n!==""&&
11 | (n=c.split(a.itemDelimiter||","),k(n,function(b,a){a>=j&&a<=e&&(d[a-j]||(d[a-j]=[]),d[a-j][g]=b)}),g+=1)}),this.dataFound())},parseTable:function(){var b=this.options,a=b.table,c=this.columns,d=b.startRow||0,f=b.endRow||Number.MAX_VALUE,i=b.startColumn||0,j=b.endColumn||Number.MAX_VALUE,e;a&&(typeof a==="string"&&(a=document.getElementById(a)),k(a.getElementsByTagName("tr"),function(a,b){e=0;b>=d&&b<=f&&k(a.childNodes,function(a){if((a.tagName==="TD"||a.tagName==="TH")&&e>=i&&e<=j)c[e]||(c[e]=[]),
12 | c[e][b-d]=a.innerHTML,e+=1})}),this.dataFound())},parseGoogleSpreadsheet:function(){var b=this,a=this.options,c=a.googleSpreadsheetKey,d=this.columns,f=a.startRow||0,i=a.endRow||Number.MAX_VALUE,j=a.startColumn||0,e=a.endColumn||Number.MAX_VALUE,g,h;c&&jQuery.getJSON("https://spreadsheets.google.com/feeds/cells/"+c+"/"+(a.googleSpreadsheetWorksheet||"od6")+"/public/values?alt=json-in-script&callback=?",function(a){var a=a.feed.entry,c,k=a.length,m=0,o=0,l;for(l=0;l=j&&l<=e)d[l-j]=[],d[l-j].length=Math.min(o,i-f);for(l=0;l=j&&h<=e&&g>=f&&g<=i)d[h-j][g-f]=c.content.$t;b.dataFound()})},findHeaderRow:function(){k(this.columns,function(){});this.headerRow=0},trim:function(b){return typeof b==="string"?b.replace(/^\s+|\s+$/g,""):b},parseTypes:function(){for(var b=this.columns,a=b.length,c,d,f,i;a--;)for(c=b[a].length;c--;)d=b[a][c],f=parseFloat(d),i=this.trim(d),
14 | i==f?(b[a][c]=f,f>31536E6?b[a].isDatetime=!0:b[a].isNumeric=!0):(d=this.parseDate(d),a===0&&typeof d==="number"&&!isNaN(d)?(b[a][c]=d,b[a].isDatetime=!0):b[a][c]=i===""?null:i)},dateFormats:{"YYYY-mm-dd":{regex:"^([0-9]{4})-([0-9]{2})-([0-9]{2})$",parser:function(b){return Date.UTC(+b[1],b[2]-1,+b[3])}}},parseDate:function(b){var a=this.options.parseDate,c,d,f;a&&(c=a(b));if(typeof b==="string")for(d in this.dateFormats)a=this.dateFormats[d],(f=b.match(a.regex))&&(c=a.parser(f));return c},rowsToColumns:function(b){var a,
15 | c,d,f,i;if(b){i=[];c=b.length;for(a=0;a1&&(a=b.shift(),this.headerRow===0&&a.shift(),a.isDatetime?c="datetime":a.isNumeric||(c="category"));for(e=0;e1&&j[g].push(b[e+1][g]!==void 0?b[e+1][g]:null),f>2&&j[g].push(b[e+2][g]!==void 0?b[e+2][g]:null),f>3&&j[g].push(b[e+3][g]!==void 0?b[e+3][g]:null),f>4&&j[g].push(b[e+4][g]!==void 0?b[e+4][g]:null);i[k]={name:b[e].name,data:j};e+=f}d.complete({xAxis:{type:c},series:i})}}});h.Data=m;h.data=function(b,a){return new m(b,a)};h.wrap(h.Chart.prototype,
17 | "init",function(b,a,c){var d=this;a&&a.data?h.data(h.extend(a.data,{complete:function(f){a.series&&k(a.series,function(b,c){a.series[c]=h.merge(b,f.series[c])});a=h.merge(f,a);b.call(d,a,c)}}),a):b.call(d,a,c)})})(Highcharts);
18 |
--------------------------------------------------------------------------------
/static/ueditor/third-party/highcharts/modules/funnel.js:
--------------------------------------------------------------------------------
1 | /*
2 |
3 | Highcharts funnel module, Beta
4 |
5 | (c) 2010-2012 Torstein Hønsi
6 |
7 | License: www.highcharts.com/license
8 | */
9 | (function(d){var u=d.getOptions().plotOptions,p=d.seriesTypes,D=d.merge,z=function(){},A=d.each;u.funnel=D(u.pie,{center:["50%","50%"],width:"90%",neckWidth:"30%",height:"100%",neckHeight:"25%",dataLabels:{connectorWidth:1,connectorColor:"#606060"},size:!0,states:{select:{color:"#C0C0C0",borderColor:"#000000",shadow:!1}}});p.funnel=d.extendClass(p.pie,{type:"funnel",animate:z,translate:function(){var a=function(k,a){return/%$/.test(k)?a*parseInt(k,10)/100:parseInt(k,10)},g=0,e=this.chart,f=e.plotWidth,
10 | e=e.plotHeight,h=0,c=this.options,C=c.center,b=a(C[0],f),d=a(C[0],e),p=a(c.width,f),i,q,j=a(c.height,e),r=a(c.neckWidth,f),s=a(c.neckHeight,e),v=j-s,a=this.data,w,x,u=c.dataLabels.position==="left"?1:0,y,m,B,n,l,t,o;this.getWidthAt=q=function(k){return k>j-s||j===s?r:r+(p-r)*((j-s-k)/(j-s))};this.getX=function(k,a){return b+(a?-1:1)*(q(k)/2+c.dataLabels.distance)};this.center=[b,d,j];this.centerX=b;A(a,function(a){g+=a.y});A(a,function(a){o=null;x=g?a.y/g:0;m=d-j/2+h*j;l=m+x*j;i=q(m);y=b-i/2;B=y+
11 | i;i=q(l);n=b-i/2;t=n+i;m>v?(y=n=b-r/2,B=t=b+r/2):l>v&&(o=l,i=q(v),n=b-i/2,t=n+i,l=v);w=["M",y,m,"L",B,m,t,l];o&&w.push(t,o,n,o);w.push(n,l,"Z");a.shapeType="path";a.shapeArgs={d:w};a.percentage=x*100;a.plotX=b;a.plotY=(m+(o||l))/2;a.tooltipPos=[b,a.plotY];a.slice=z;a.half=u;h+=x});this.setTooltipPoints()},drawPoints:function(){var a=this,g=a.options,e=a.chart.renderer;A(a.data,function(f){var h=f.graphic,c=f.shapeArgs;h?h.animate(c):f.graphic=e.path(c).attr({fill:f.color,stroke:g.borderColor,"stroke-width":g.borderWidth}).add(a.group)})},
12 | sortByAngle:z,drawDataLabels:function(){var a=this.data,g=this.options.dataLabels.distance,e,f,h,c=a.length,d,b;for(this.center[2]-=2*g;c--;)h=a[c],f=(e=h.half)?1:-1,b=h.plotY,d=this.getX(b,e),h.labelPos=[0,b,d+(g-5)*f,b,d+g*f,b,e?"right":"left",0];p.pie.prototype.drawDataLabels.call(this)}})})(Highcharts);
13 |
--------------------------------------------------------------------------------
/static/ueditor/third-party/highcharts/modules/heatmap.js:
--------------------------------------------------------------------------------
1 | (function(b){var k=b.seriesTypes,l=b.each;k.heatmap=b.extendClass(k.map,{colorKey:"z",useMapGeometry:!1,pointArrayMap:["y","z"],translate:function(){var c=this,b=c.options,i=Number.MAX_VALUE,j=Number.MIN_VALUE;c.generatePoints();l(c.data,function(a){var e=a.x,f=a.y,d=a.z,g=(b.colsize||1)/2,h=(b.rowsize||1)/2;a.path=["M",e-g,f-h,"L",e+g,f-h,"L",e+g,f+h,"L",e-g,f+h,"Z"];a.shapeType="path";a.shapeArgs={d:c.translatePath(a.path)};typeof d==="number"&&(d>j?j=d:d dataMax) {
39 | dataMax = value;
40 | } else if (value < dataMin) {
41 | dataMin = value;
42 | }
43 | }
44 | });
45 |
46 | series.translateColors(dataMin, dataMax);
47 | },
48 |
49 | getBox: function () {}
50 |
51 | });
52 |
53 | }(Highcharts));
54 |
--------------------------------------------------------------------------------
/static/ueditor/third-party/highcharts/modules/no-data-to-display.js:
--------------------------------------------------------------------------------
1 | /*
2 | Highcharts JS v3.0.6 (2013-10-04)
3 | Plugin for displaying a message when there is no data visible in chart.
4 |
5 | (c) 2010-2013 Highsoft AS
6 | Author: Øystein Moseng
7 |
8 | License: www.highcharts.com/license
9 | */
10 | (function(c){function f(){return!!this.points.length}function g(){this.hasData()?this.hideNoData():this.showNoData()}var d=c.seriesTypes,e=c.Chart.prototype,h=c.getOptions(),i=c.extend;i(h.lang,{noData:"No data to display"});h.noData={position:{x:0,y:0,align:"center",verticalAlign:"middle"},attr:{},style:{fontWeight:"bold",fontSize:"12px",color:"#60606a"}};d.pie.prototype.hasData=f;if(d.gauge)d.gauge.prototype.hasData=f;if(d.waterfall)d.waterfall.prototype.hasData=f;c.Series.prototype.hasData=function(){return this.dataMax!==
11 | void 0&&this.dataMin!==void 0};e.showNoData=function(a){var b=this.options,a=a||b.lang.noData,b=b.noData;if(!this.noDataLabel)this.noDataLabel=this.renderer.label(a,0,0,null,null,null,null,null,"no-data").attr(b.attr).css(b.style).add(),this.noDataLabel.align(i(this.noDataLabel.getBBox(),b.position),!1,"plotBox")};e.hideNoData=function(){if(this.noDataLabel)this.noDataLabel=this.noDataLabel.destroy()};e.hasData=function(){for(var a=this.series,b=a.length;b--;)if(a[b].hasData()&&!a[b].options.isInternal)return!0;
12 | return!1};e.callbacks.push(function(a){c.addEvent(a,"load",g);c.addEvent(a,"redraw",g)})})(Highcharts);
13 |
--------------------------------------------------------------------------------
/static/ueditor/third-party/highcharts/modules/no-data-to-display.src.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @license Highcharts JS v3.0.6 (2013-10-04)
3 | * Plugin for displaying a message when there is no data visible in chart.
4 | *
5 | * (c) 2010-2013 Highsoft AS
6 | * Author: Øystein Moseng
7 | *
8 | * License: www.highcharts.com/license
9 | */
10 |
11 | (function (H) { // docs
12 |
13 | var seriesTypes = H.seriesTypes,
14 | chartPrototype = H.Chart.prototype,
15 | defaultOptions = H.getOptions(),
16 | extend = H.extend;
17 |
18 | // Add language option
19 | extend(defaultOptions.lang, {
20 | noData: 'No data to display'
21 | });
22 |
23 | // Add default display options for message
24 | defaultOptions.noData = {
25 | position: {
26 | x: 0,
27 | y: 0,
28 | align: 'center',
29 | verticalAlign: 'middle'
30 | },
31 | attr: {
32 | },
33 | style: {
34 | fontWeight: 'bold',
35 | fontSize: '12px',
36 | color: '#60606a'
37 | }
38 | };
39 |
40 | /**
41 | * Define hasData functions for series. These return true if there are data points on this series within the plot area
42 | */
43 | function hasDataPie() {
44 | return !!this.points.length; /* != 0 */
45 | }
46 |
47 | seriesTypes.pie.prototype.hasData = hasDataPie;
48 |
49 | if (seriesTypes.gauge) {
50 | seriesTypes.gauge.prototype.hasData = hasDataPie;
51 | }
52 |
53 | if (seriesTypes.waterfall) {
54 | seriesTypes.waterfall.prototype.hasData = hasDataPie;
55 | }
56 |
57 | H.Series.prototype.hasData = function () {
58 | return this.dataMax !== undefined && this.dataMin !== undefined;
59 | };
60 |
61 | /**
62 | * Display a no-data message.
63 | *
64 | * @param {String} str An optional message to show in place of the default one
65 | */
66 | chartPrototype.showNoData = function (str) {
67 | var chart = this,
68 | options = chart.options,
69 | text = str || options.lang.noData,
70 | noDataOptions = options.noData;
71 |
72 | if (!chart.noDataLabel) {
73 | chart.noDataLabel = chart.renderer.label(text, 0, 0, null, null, null, null, null, 'no-data')
74 | .attr(noDataOptions.attr)
75 | .css(noDataOptions.style)
76 | .add();
77 | chart.noDataLabel.align(extend(chart.noDataLabel.getBBox(), noDataOptions.position), false, 'plotBox');
78 | }
79 | };
80 |
81 | /**
82 | * Hide no-data message
83 | */
84 | chartPrototype.hideNoData = function () {
85 | var chart = this;
86 | if (chart.noDataLabel) {
87 | chart.noDataLabel = chart.noDataLabel.destroy();
88 | }
89 | };
90 |
91 | /**
92 | * Returns true if there are data points within the plot area now
93 | */
94 | chartPrototype.hasData = function () {
95 | var chart = this,
96 | series = chart.series,
97 | i = series.length;
98 |
99 | while (i--) {
100 | if (series[i].hasData() && !series[i].options.isInternal) {
101 | return true;
102 | }
103 | }
104 |
105 | return false;
106 | };
107 |
108 | /**
109 | * Show no-data message if there is no data in sight. Otherwise, hide it.
110 | */
111 | function handleNoData() {
112 | var chart = this;
113 | if (chart.hasData()) {
114 | chart.hideNoData();
115 | } else {
116 | chart.showNoData();
117 | }
118 | }
119 |
120 | /**
121 | * Add event listener to handle automatic display of no-data message
122 | */
123 | chartPrototype.callbacks.push(function (chart) {
124 | H.addEvent(chart, 'load', handleNoData);
125 | H.addEvent(chart, 'redraw', handleNoData);
126 | });
127 |
128 | }(Highcharts));
129 |
--------------------------------------------------------------------------------
/static/ueditor/third-party/highcharts/themes/grid.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Grid theme for Highcharts JS
3 | * @author Torstein Hønsi
4 | */
5 |
6 | Highcharts.theme = {
7 | colors: ['#058DC7', '#50B432', '#ED561B', '#DDDF00', '#24CBE5', '#64E572', '#FF9655', '#FFF263', '#6AF9C4'],
8 | chart: {
9 | backgroundColor: {
10 | linearGradient: { x1: 0, y1: 0, x2: 1, y2: 1 },
11 | stops: [
12 | [0, 'rgb(255, 255, 255)'],
13 | [1, 'rgb(240, 240, 255)']
14 | ]
15 | },
16 | borderWidth: 2,
17 | plotBackgroundColor: 'rgba(255, 255, 255, .9)',
18 | plotShadow: true,
19 | plotBorderWidth: 1
20 | },
21 | title: {
22 | style: {
23 | color: '#000',
24 | font: 'bold 16px "Trebuchet MS", Verdana, sans-serif'
25 | }
26 | },
27 | subtitle: {
28 | style: {
29 | color: '#666666',
30 | font: 'bold 12px "Trebuchet MS", Verdana, sans-serif'
31 | }
32 | },
33 | xAxis: {
34 | gridLineWidth: 1,
35 | lineColor: '#000',
36 | tickColor: '#000',
37 | labels: {
38 | style: {
39 | color: '#000',
40 | font: '11px Trebuchet MS, Verdana, sans-serif'
41 | }
42 | },
43 | title: {
44 | style: {
45 | color: '#333',
46 | fontWeight: 'bold',
47 | fontSize: '12px',
48 | fontFamily: 'Trebuchet MS, Verdana, sans-serif'
49 |
50 | }
51 | }
52 | },
53 | yAxis: {
54 | minorTickInterval: 'auto',
55 | lineColor: '#000',
56 | lineWidth: 1,
57 | tickWidth: 1,
58 | tickColor: '#000',
59 | labels: {
60 | style: {
61 | color: '#000',
62 | font: '11px Trebuchet MS, Verdana, sans-serif'
63 | }
64 | },
65 | title: {
66 | style: {
67 | color: '#333',
68 | fontWeight: 'bold',
69 | fontSize: '12px',
70 | fontFamily: 'Trebuchet MS, Verdana, sans-serif'
71 | }
72 | }
73 | },
74 | legend: {
75 | itemStyle: {
76 | font: '9pt Trebuchet MS, Verdana, sans-serif',
77 | color: 'black'
78 |
79 | },
80 | itemHoverStyle: {
81 | color: '#039'
82 | },
83 | itemHiddenStyle: {
84 | color: 'gray'
85 | }
86 | },
87 | labels: {
88 | style: {
89 | color: '#99b'
90 | }
91 | },
92 |
93 | navigation: {
94 | buttonOptions: {
95 | theme: {
96 | stroke: '#CCCCCC'
97 | }
98 | }
99 | }
100 | };
101 |
102 | // Apply the theme
103 | var highchartsOptions = Highcharts.setOptions(Highcharts.theme);
104 |
--------------------------------------------------------------------------------
/static/ueditor/third-party/highcharts/themes/skies.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Skies theme for Highcharts JS
3 | * @author Torstein Hønsi
4 | */
5 |
6 | Highcharts.theme = {
7 | colors: ["#514F78", "#42A07B", "#9B5E4A", "#72727F", "#1F949A", "#82914E", "#86777F", "#42A07B"],
8 | chart: {
9 | className: 'skies',
10 | borderWidth: 0,
11 | plotShadow: true,
12 | plotBackgroundImage: 'http://www.highcharts.com/demo/gfx/skies.jpg',
13 | plotBackgroundColor: {
14 | linearGradient: [0, 0, 250, 500],
15 | stops: [
16 | [0, 'rgba(255, 255, 255, 1)'],
17 | [1, 'rgba(255, 255, 255, 0)']
18 | ]
19 | },
20 | plotBorderWidth: 1
21 | },
22 | title: {
23 | style: {
24 | color: '#3E576F',
25 | font: '16px Lucida Grande, Lucida Sans Unicode, Verdana, Arial, Helvetica, sans-serif'
26 | }
27 | },
28 | subtitle: {
29 | style: {
30 | color: '#6D869F',
31 | font: '12px Lucida Grande, Lucida Sans Unicode, Verdana, Arial, Helvetica, sans-serif'
32 | }
33 | },
34 | xAxis: {
35 | gridLineWidth: 0,
36 | lineColor: '#C0D0E0',
37 | tickColor: '#C0D0E0',
38 | labels: {
39 | style: {
40 | color: '#666',
41 | fontWeight: 'bold'
42 | }
43 | },
44 | title: {
45 | style: {
46 | color: '#666',
47 | font: '12px Lucida Grande, Lucida Sans Unicode, Verdana, Arial, Helvetica, sans-serif'
48 | }
49 | }
50 | },
51 | yAxis: {
52 | alternateGridColor: 'rgba(255, 255, 255, .5)',
53 | lineColor: '#C0D0E0',
54 | tickColor: '#C0D0E0',
55 | tickWidth: 1,
56 | labels: {
57 | style: {
58 | color: '#666',
59 | fontWeight: 'bold'
60 | }
61 | },
62 | title: {
63 | style: {
64 | color: '#666',
65 | font: '12px Lucida Grande, Lucida Sans Unicode, Verdana, Arial, Helvetica, sans-serif'
66 | }
67 | }
68 | },
69 | legend: {
70 | itemStyle: {
71 | font: '9pt Trebuchet MS, Verdana, sans-serif',
72 | color: '#3E576F'
73 | },
74 | itemHoverStyle: {
75 | color: 'black'
76 | },
77 | itemHiddenStyle: {
78 | color: 'silver'
79 | }
80 | },
81 | labels: {
82 | style: {
83 | color: '#3E576F'
84 | }
85 | }
86 | };
87 |
88 | // Apply the theme
89 | var highchartsOptions = Highcharts.setOptions(Highcharts.theme);
90 |
--------------------------------------------------------------------------------
/static/ueditor/third-party/snapscreen/UEditorSnapscreen.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/third-party/snapscreen/UEditorSnapscreen.exe
--------------------------------------------------------------------------------
/static/ueditor/third-party/video-js/font/vjs.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/third-party/video-js/font/vjs.eot
--------------------------------------------------------------------------------
/static/ueditor/third-party/video-js/font/vjs.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/third-party/video-js/font/vjs.ttf
--------------------------------------------------------------------------------
/static/ueditor/third-party/video-js/font/vjs.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/third-party/video-js/font/vjs.woff
--------------------------------------------------------------------------------
/static/ueditor/third-party/video-js/video-js.swf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/third-party/video-js/video-js.swf
--------------------------------------------------------------------------------
/static/ueditor/third-party/webuploader/Uploader.swf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/third-party/webuploader/Uploader.swf
--------------------------------------------------------------------------------
/static/ueditor/third-party/webuploader/webuploader.css:
--------------------------------------------------------------------------------
1 | .webuploader-container {
2 | position: relative;
3 | }
4 | .webuploader-element-invisible {
5 | position: absolute !important;
6 | clip: rect(1px 1px 1px 1px); /* IE6, IE7 */
7 | clip: rect(1px,1px,1px,1px);
8 | }
9 | .webuploader-pick {
10 | position: relative;
11 | display: inline-block;
12 | cursor: pointer;
13 | background: #00b7ee;
14 | padding: 10px 15px;
15 | color: #fff;
16 | text-align: center;
17 | border-radius: 3px;
18 | overflow: hidden;
19 | }
20 | .webuploader-pick-hover {
21 | background: #00a2d4;
22 | }
23 |
24 | .webuploader-pick-disable {
25 | opacity: 0.6;
26 | pointer-events:none;
27 | }
28 |
29 |
--------------------------------------------------------------------------------
/static/ueditor/third-party/zeroclipboard/ZeroClipboard.swf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kfw001/admin-auth/16bc04929acf56c0558f8c14924e826d70161528/static/ueditor/third-party/zeroclipboard/ZeroClipboard.swf
--------------------------------------------------------------------------------