| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135 | /*! * UEditor * version: ueditor * build: Wed Dec 26 2018 17:24:52 GMT+0800 (CST) */;(function () {  ;(function () {    UE = window.UE || {}    var isIE = !!window.ActiveXObject    //定义utils工具    var utils = {      removeLastbs: function (url) {        return url.replace(/\/$/, '')      },      extend: function (t, s) {        var a = arguments,          notCover = this.isBoolean(a[a.length - 1]) ? a[a.length - 1] : false,          len = this.isBoolean(a[a.length - 1]) ? a.length - 1 : a.length        for (var i = 1; i < len; i++) {          var x = a[i]          for (var k in x) {            if (!notCover || !t.hasOwnProperty(k)) {              t[k] = x[k]            }          }        }        return t      },      isIE: isIE,      cssRule: isIE        ? function (key, style, doc) {            var indexList, index            doc = doc || document            if (doc.indexList) {              indexList = doc.indexList            } else {              indexList = doc.indexList = {}            }            var sheetStyle            if (!indexList[key]) {              if (style === undefined) {                return ''              }              sheetStyle = doc.createStyleSheet('', (index = doc.styleSheets.length))              indexList[key] = index            } else {              sheetStyle = doc.styleSheets[indexList[key]]            }            if (style === undefined) {              return sheetStyle.cssText            }            sheetStyle.cssText = sheetStyle.cssText + '\n' + (style || '')          }        : function (key, style, doc) {            doc = doc || document            var head = doc.getElementsByTagName('head')[0],              node            if (!(node = doc.getElementById(key))) {              if (style === undefined) {                return ''              }              node = doc.createElement('style')              node.id = key              head.appendChild(node)            }            if (style === undefined) {              return node.innerHTML            }            if (style !== '') {              node.innerHTML = node.innerHTML + '\n' + style            } else {              head.removeChild(node)            }          },      domReady: function (onready) {        var doc = window.document        if (doc.readyState === 'complete') {          onready()        } else {          if (isIE) {            ;(function () {              if (doc.isReady) return              try {                doc.documentElement.doScroll('left')              } catch (error) {                setTimeout(arguments.callee, 0)                return              }              onready()            })()            window.attachEvent('onload', function () {              onready()            })          } else {            doc.addEventListener(              'DOMContentLoaded',              function () {                doc.removeEventListener('DOMContentLoaded', arguments.callee, false)                onready()              },              false            )            window.addEventListener(              'load',              function () {                onready()              },              false            )          }        }      },      each: function (obj, iterator, context) {        if (obj == null) return        if (obj.length === +obj.length) {          for (var i = 0, l = obj.length; i < l; i++) {            if (iterator.call(context, obj[i], i, obj) === false) return false          }        } else {          for (var key in obj) {            if (obj.hasOwnProperty(key)) {              if (iterator.call(context, obj[key], key, obj) === false) return false            }          }        }      },      inArray: function (arr, item) {        var index = -1        this.each(arr, function (v, i) {          if (v === item) {            index = i            return false          }        })        return index      },      pushItem: function (arr, item) {        if (this.inArray(arr, item) == -1) {          arr.push(item)        }      },      trim: function (str) {        return str.replace(/(^[ \t\n\r]+)|([ \t\n\r]+$)/g, '')      },      indexOf: function (array, item, start) {        var index = -1        start = this.isNumber(start) ? start : 0        this.each(array, function (v, i) {          if (i >= start && v === item) {            index = i            return false          }        })        return index      },      hasClass: function (element, className) {        className = className          .replace(/(^[ ]+)|([ ]+$)/g, '')          .replace(/[ ]{2,}/g, ' ')          .split(' ')        for (var i = 0, ci, cls = element.className; (ci = className[i++]); ) {          if (!new RegExp('\\b' + ci + '\\b', 'i').test(cls)) {            return false          }        }        return i - 1 == className.length      },      addClass: function (elm, classNames) {        if (!elm) return        classNames = this.trim(classNames)          .replace(/[ ]{2,}/g, ' ')          .split(' ')        for (var i = 0, ci, cls = elm.className; (ci = classNames[i++]); ) {          if (!new RegExp('\\b' + ci + '\\b').test(cls)) {            cls += ' ' + ci          }        }        elm.className = utils.trim(cls)      },      removeClass: function (elm, classNames) {        classNames = this.isArray(classNames)          ? classNames          : this.trim(classNames)              .replace(/[ ]{2,}/g, ' ')              .split(' ')        for (var i = 0, ci, cls = elm.className; (ci = classNames[i++]); ) {          cls = cls.replace(new RegExp('\\b' + ci + '\\b'), '')        }        cls = this.trim(cls).replace(/[ ]{2,}/g, ' ')        elm.className = cls        !cls && elm.removeAttribute('className')      },      on: function (element, type, handler) {        var types = this.isArray(type) ? type : type.split(/\s+/),          k = types.length        if (k)          while (k--) {            type = types[k]            if (element.addEventListener) {              element.addEventListener(type, handler, false)            } else {              if (!handler._d) {                handler._d = {                  els: []                }              }              var key = type + handler.toString(),                index = utils.indexOf(handler._d.els, element)              if (!handler._d[key] || index == -1) {                if (index == -1) {                  handler._d.els.push(element)                }                if (!handler._d[key]) {                  handler._d[key] = function (evt) {                    return handler.call(evt.srcElement, evt || window.event)                  }                }                element.attachEvent('on' + type, handler._d[key])              }            }          }        element = null      },      off: function (element, type, handler) {        var types = this.isArray(type) ? type : type.split(/\s+/),          k = types.length        if (k)          while (k--) {            type = types[k]            if (element && element.removeEventListener) {              element.removeEventListener(type, handler, false)            } else {              var key = type + handler.toString()              try {                element.detachEvent('on' + type, handler._d ? handler._d[key] : handler)              } catch (e) {}              if (handler._d && handler._d[key]) {                var index = utils.indexOf(handler._d.els, element)                if (index != -1) {                  handler._d.els.splice(index, 1)                }                handler._d.els.length == 0 && delete handler._d[key]              }            }          }      },      loadFile: (function () {        var tmpList = []        function getItem(doc, obj) {          try {            for (var i = 0, ci; (ci = tmpList[i++]); ) {              if (ci.doc === doc && ci.url == (obj.src || obj.href)) {                return ci              }            }          } catch (e) {            return null          }        }        return function (doc, obj, fn) {          var item = getItem(doc, obj)          if (item) {            if (item.ready) {              fn && fn()            } else {              item.funs.push(fn)            }            return          }          tmpList.push({            doc: doc,            url: obj.src || obj.href,            funs: [fn]          })          if (!doc.body) {            var html = []            for (var p in obj) {              if (p == 'tag') continue              html.push(p + '="' + obj[p] + '"')            }            doc.write('<' + obj.tag + ' ' + html.join(' ') + ' ></' + obj.tag + '>')            return          }          if (obj.id && doc.getElementById(obj.id)) {            return          }          var element = doc.createElement(obj.tag)          delete obj.tag          for (var p in obj) {            element.setAttribute(p, obj[p])          }          element.onload = element.onreadystatechange = function () {            if (!this.readyState || /loaded|complete/.test(this.readyState)) {              item = getItem(doc, obj)              if (item.funs.length > 0) {                item.ready = 1                for (var fi; (fi = item.funs.pop()); ) {                  fi()                }              }              element.onload = element.onreadystatechange = null            }          }          element.onerror = function () {            throw Error('The load ' + (obj.href || obj.src) + ' fails,check the url')          }          doc.getElementsByTagName('head')[0].appendChild(element)        }      })()    }    utils.each(      ['String', 'Function', 'Array', 'Number', 'RegExp', 'Object', 'Boolean'],      function (v) {        utils['is' + v] = function (obj) {          return Object.prototype.toString.apply(obj) == '[object ' + v + ']'        }      }    )    var parselist = {}    UE.parse = {      register: function (parseName, fn) {        parselist[parseName] = fn      },      load: function (opt) {        utils.each(parselist, function (v) {          v.call(opt, utils)        })      }    }    uParse = function (selector, opt) {      utils.domReady(function () {        var contents        if (document.querySelectorAll) {          contents = document.querySelectorAll(selector)        } else {          if (/^#/.test(selector)) {            contents = [document.getElementById(selector.replace(/^#/, ''))]          } else if (/^\./.test(selector)) {            var contents = []            utils.each(document.getElementsByTagName('*'), function (node) {              if (                node.className &&                new RegExp('\\b' + selector.replace(/^\./, '') + '\\b', 'i').test(node.className)              ) {                contents.push(node)              }            })          } else {            contents = document.getElementsByTagName(selector)          }        }        utils.each(contents, function (v) {          UE.parse.load(utils.extend({ root: v, selector: selector }, opt))        })      })    }  })()  UE.parse.register('insertcode', function (utils) {    var pres = this.root.getElementsByTagName('pre')    if (pres.length) {      if (typeof XRegExp == 'undefined') {        var jsurl, cssurl        if (this.rootPath !== undefined) {          jsurl = utils.removeLastbs(this.rootPath) + '/third-party/SyntaxHighlighter/shCore.js'          cssurl =            utils.removeLastbs(this.rootPath) + '/third-party/SyntaxHighlighter/shCoreDefault.css'        } else {          jsurl = this.highlightJsUrl          cssurl = this.highlightCssUrl        }        utils.loadFile(document, {          id: 'syntaxhighlighter_css',          tag: 'link',          rel: 'stylesheet',          type: 'text/css',          href: cssurl        })        utils.loadFile(          document,          {            id: 'syntaxhighlighter_js',            src: jsurl,            tag: 'script',            type: 'text/javascript',            defer: 'defer'          },          function () {            utils.each(pres, function (pi) {              if (pi && /brush/i.test(pi.className)) {                SyntaxHighlighter.highlight(pi)              }            })          }        )      } else {        utils.each(pres, function (pi) {          if (pi && /brush/i.test(pi.className)) {            SyntaxHighlighter.highlight(pi)          }        })      }    }  })  UE.parse.register('table', function (utils) {    var me = this,      root = this.root,      tables = root.getElementsByTagName('table')    if (tables.length) {      var selector = this.selector      //追加默认的表格样式      utils.cssRule(        'table',        selector +          ' table.noBorderTable td,' +          selector +          ' table.noBorderTable th,' +          selector +          ' table.noBorderTable caption{border:1px dashed #ddd !important}' +          selector +          ' table.sortEnabled tr.firstRow th,' +          selector +          ' table.sortEnabled tr.firstRow td{padding-right:20px; background-repeat: no-repeat;' +          'background-position: center right; background-image:url(' +          this.rootPath +          'themes/default/images/sortable.png);}' +          selector +          ' table.sortEnabled tr.firstRow th:hover,' +          selector +          ' table.sortEnabled tr.firstRow td:hover{background-color: #EEE;}' +          selector +          ' table{margin-bottom:10px;border-collapse:collapse;display:table;}' +          selector +          ' td,' +          selector +          ' th{ background:white; padding: 5px 10px;border: 1px solid #DDD;}' +          selector +          ' caption{border:1px dashed #DDD;border-bottom:0;padding:3px;text-align:center;}' +          selector +          ' th{border-top:1px solid #BBB;background:#F7F7F7;}' +          selector +          ' table tr.firstRow th{border-top:2px solid #BBB;background:#F7F7F7;}' +          selector +          ' tr.ue-table-interlace-color-single td{ background: #fcfcfc; }' +          selector +          ' tr.ue-table-interlace-color-double td{ background: #f7faff; }' +          selector +          ' td p{margin:0;padding:0;}',        document      )      //填充空的单元格      utils.each('td th caption'.split(' '), function (tag) {        var cells = root.getElementsByTagName(tag)        cells.length &&          utils.each(cells, function (node) {            if (!node.firstChild) {              node.innerHTML = ' '            }          })      })      //表格可排序      var tables = root.getElementsByTagName('table')      utils.each(tables, function (table) {        if (/\bsortEnabled\b/.test(table.className)) {          utils.on(table, 'click', function (e) {            var target = e.target || e.srcElement,              cell = findParentByTagName(target, ['td', 'th'])            var table = findParentByTagName(target, 'table'),              colIndex = utils.indexOf(table.rows[0].cells, cell),              sortType = table.getAttribute('data-sort-type')            if (colIndex != -1) {              sortTable(table, colIndex, me.tableSortCompareFn || sortType)              updateTable(table)            }          })        }      })      //按照标签名查找父节点      function findParentByTagName(target, tagNames) {        var i,          current = target        tagNames = utils.isArray(tagNames) ? tagNames : [tagNames]        while (current) {          for (i = 0; i < tagNames.length; i++) {            if (current.tagName == tagNames[i].toUpperCase()) return current          }          current = current.parentNode        }        return null      }      //表格排序      function sortTable(table, sortByCellIndex, compareFn) {        var rows = table.rows,          trArray = [],          flag = rows[0].cells[0].tagName === 'TH',          lastRowIndex = 0        for (var i = 0, len = rows.length; i < len; i++) {          trArray[i] = rows[i]        }        var Fn = {          reversecurrent: function (td1, td2) {            return 1          },          orderbyasc: function (td1, td2) {            var value1 = td1.innerText || td1.textContent,              value2 = td2.innerText || td2.textContent            return value1.localeCompare(value2)          },          reversebyasc: function (td1, td2) {            var value1 = td1.innerHTML,              value2 = td2.innerHTML            return value2.localeCompare(value1)          },          orderbynum: function (td1, td2) {            var value1 = td1[utils.isIE ? 'innerText' : 'textContent'].match(/\d+/),              value2 = td2[utils.isIE ? 'innerText' : 'textContent'].match(/\d+/)            if (value1) value1 = +value1[0]            if (value2) value2 = +value2[0]            return (value1 || 0) - (value2 || 0)          },          reversebynum: function (td1, td2) {            var value1 = td1[utils.isIE ? 'innerText' : 'textContent'].match(/\d+/),              value2 = td2[utils.isIE ? 'innerText' : 'textContent'].match(/\d+/)            if (value1) value1 = +value1[0]            if (value2) value2 = +value2[0]            return (value2 || 0) - (value1 || 0)          }        }        //对表格设置排序的标记data-sort-type        table.setAttribute(          'data-sort-type',          compareFn && typeof compareFn === 'string' && Fn[compareFn] ? compareFn : ''        )        //th不参与排序        flag && trArray.splice(0, 1)        trArray = sort(trArray, function (tr1, tr2) {          var result          if (compareFn && typeof compareFn === 'function') {            result = compareFn.call(this, tr1.cells[sortByCellIndex], tr2.cells[sortByCellIndex])          } else if (compareFn && typeof compareFn === 'number') {            result = 1          } else if (compareFn && typeof compareFn === 'string' && Fn[compareFn]) {            result = Fn[compareFn].call(              this,              tr1.cells[sortByCellIndex],              tr2.cells[sortByCellIndex]            )          } else {            result = Fn['orderbyasc'].call(              this,              tr1.cells[sortByCellIndex],              tr2.cells[sortByCellIndex]            )          }          return result        })        var fragment = table.ownerDocument.createDocumentFragment()        for (var j = 0, len = trArray.length; j < len; j++) {          fragment.appendChild(trArray[j])        }        var tbody = table.getElementsByTagName('tbody')[0]        if (!lastRowIndex) {          tbody.appendChild(fragment)        } else {          tbody.insertBefore(            fragment,            rows[lastRowIndex - range.endRowIndex + range.beginRowIndex - 1]          )        }      }      //冒泡排序      function sort(array, compareFn) {        compareFn =          compareFn ||          function (item1, item2) {            return item1.localeCompare(item2)          }        for (var i = 0, len = array.length; i < len; i++) {          for (var j = i, length = array.length; j < length; j++) {            if (compareFn(array[i], array[j]) > 0) {              var t = array[i]              array[i] = array[j]              array[j] = t            }          }        }        return array      }      //更新表格      function updateTable(table) {        //给第一行设置firstRow的样式名称,在排序图标的样式上使用到        if (!utils.hasClass(table.rows[0], 'firstRow')) {          for (var i = 1; i < table.rows.length; i++) {            utils.removeClass(table.rows[i], 'firstRow')          }          utils.addClass(table.rows[0], 'firstRow')        }      }    }  })  UE.parse.register('charts', function (utils) {    utils.cssRule(      'chartsContainerHeight',      '.edui-chart-container { height:' + (this.chartContainerHeight || 300) + 'px}'    )    var resourceRoot = this.rootPath,      containers = this.root,      sources = null    //不存在指定的根路径, 则直接退出    if (!resourceRoot) {      return    }    if ((sources = parseSources())) {      loadResources()    }    function parseSources() {      if (!containers) {        return null      }      return extractChartData(containers)    }    /**     * 提取数据     */    function extractChartData(rootNode) {      var data = [],        tables = rootNode.getElementsByTagName('table')      for (var i = 0, tableNode; (tableNode = tables[i]); i++) {        if (tableNode.getAttribute('data-chart') !== null) {          data.push(formatData(tableNode))        }      }      return data.length ? data : null    }    function formatData(tableNode) {      var meta = tableNode.getAttribute('data-chart'),        metaConfig = {},        data = []      //提取table数据      for (var i = 0, row; (row = tableNode.rows[i]); i++) {        var rowData = []        for (var j = 0, cell; (cell = row.cells[j]); j++) {          var value = cell.innerText || cell.textContent || ''          rowData.push(cell.tagName == 'TH' ? value : value | 0)        }        data.push(rowData)      }      //解析元信息      meta = meta.split(';')      for (var i = 0, metaData; (metaData = meta[i]); i++) {        metaData = metaData.split(':')        metaConfig[metaData[0]] = metaData[1]      }      return {        table: tableNode,        meta: metaConfig,        data: data      }    }    //加载资源    function loadResources() {      loadJQuery()    }    function loadJQuery() {      //不存在jquery, 则加载jquery      if (!window.jQuery) {        utils.loadFile(          document,          {            src: resourceRoot + '/third-party/jquery-1.10.2.min.js',            tag: 'script',            type: 'text/javascript',            defer: 'defer'          },          function () {            loadHighcharts()          }        )      } else {        loadHighcharts()      }    }    function loadHighcharts() {      //不存在Highcharts, 则加载Highcharts      if (!window.Highcharts) {        utils.loadFile(          document,          {            src: resourceRoot + '/third-party/highcharts/highcharts.js',            tag: 'script',            type: 'text/javascript',            defer: 'defer'          },          function () {            loadTypeConfig()          }        )      } else {        loadTypeConfig()      }    }    //加载图表差异化配置文件    function loadTypeConfig() {      utils.loadFile(        document,        {          src: resourceRoot + '/dialogs/charts/chart.config.js',          tag: 'script',          type: 'text/javascript',          defer: 'defer'        },        function () {          render()        }      )    }    //渲染图表    function render() {      var config = null,        chartConfig = null,        container = null      for (var i = 0, len = sources.length; i < len; i++) {        config = sources[i]        chartConfig = analysisConfig(config)        container = createContainer(config.table)        renderChart(container, typeConfig[config.meta.chartType], chartConfig)      }    }    /**     * 渲染图表     * @param container 图表容器节点对象     * @param typeConfig 图表类型配置     * @param config 图表通用配置     * */    function renderChart(container, typeConfig, config) {      $(container).highcharts(        $.extend({}, typeConfig, {          credits: {            enabled: false          },          exporting: {            enabled: false          },          title: {            text: config.title,            x: -20 //center          },          subtitle: {            text: config.subTitle,            x: -20          },          xAxis: {            title: {              text: config.xTitle            },            categories: config.categories          },          yAxis: {            title: {              text: config.yTitle            },            plotLines: [              {                value: 0,                width: 1,                color: '#808080'              }            ]          },          tooltip: {            enabled: true,            valueSuffix: config.suffix          },          legend: {            layout: 'vertical',            align: 'right',            verticalAlign: 'middle',            borderWidth: 1          },          series: config.series        })      )    }    /**     * 创建图表的容器     * 新创建的容器会替换掉对应的table对象     * */    function createContainer(tableNode) {      var container = document.createElement('div')      container.className = 'edui-chart-container'      tableNode.parentNode.replaceChild(container, tableNode)      return container    }    //根据config解析出正确的类别和图表数据信息    function analysisConfig(config) {      var series = [],        //数据类别        categories = [],        result = [],        data = config.data,        meta = config.meta      //数据对齐方式为相反的方式, 需要反转数据      if (meta.dataFormat != '1') {        for (var i = 0, len = data.length; i < len; i++) {          for (var j = 0, jlen = data[i].length; j < jlen; j++) {            if (!result[j]) {              result[j] = []            }            result[j][i] = data[i][j]          }        }        data = result      }      result = {}      //普通图表      if (meta.chartType != typeConfig.length - 1) {        categories = data[0].slice(1)        for (var i = 1, curData; (curData = data[i]); i++) {          series.push({            name: curData[0],            data: curData.slice(1)          })        }        result.series = series        result.categories = categories        result.title = meta.title        result.subTitle = meta.subTitle        result.xTitle = meta.xTitle        result.yTitle = meta.yTitle        result.suffix = meta.suffix      } else {        var curData = []        for (var i = 1, len = data[0].length; i < len; i++) {          curData.push([data[0][i], data[1][i] | 0])        }        //饼图        series[0] = {          type: 'pie',          name: meta.tip,          data: curData        }        result.series = series        result.title = meta.title        result.suffix = meta.suffix      }      return result    }  })  UE.parse.register('background', function (utils) {    var me = this,      root = me.root,      p = root.getElementsByTagName('p'),      styles    for (var i = 0, ci; (ci = p[i++]); ) {      styles = ci.getAttribute('data-background')      if (styles) {        ci.parentNode.removeChild(ci)      }    }    //追加默认的表格样式    styles && utils.cssRule('ueditor_background', me.selector + '{' + styles + '}', document)  })  UE.parse.register('list', function (utils) {    var customCss = [],      customStyle = {        cn: 'cn-1-',        cn1: 'cn-2-',        cn2: 'cn-3-',        num: 'num-1-',        num1: 'num-2-',        num2: 'num-3-',        dash: 'dash',        dot: 'dot'      }    utils.extend(this, {      liiconpath: 'http://bs.baidu.com/listicon/',      listDefaultPaddingLeft: '20'    })    var root = this.root,      ols = root.getElementsByTagName('ol'),      uls = root.getElementsByTagName('ul'),      selector = this.selector    if (ols.length) {      applyStyle.call(this, ols)    }    if (uls.length) {      applyStyle.call(this, uls)    }    if (ols.length || uls.length) {      customCss.push(selector + ' .list-paddingleft-1{padding-left:0}')      customCss.push(        selector + ' .list-paddingleft-2{padding-left:' + this.listDefaultPaddingLeft + 'px}'      )      customCss.push(        selector + ' .list-paddingleft-3{padding-left:' + this.listDefaultPaddingLeft * 2 + 'px}'      )      utils.cssRule(        'list',        selector +          ' ol,' +          selector +          ' ul{margin:0;padding:0;}li{clear:both;}' +          customCss.join('\n'),        document      )    }    function applyStyle(nodes) {      var T = this      utils.each(nodes, function (list) {        if (list.className && /custom_/i.test(list.className)) {          var listStyle = list.className.match(/custom_(\w+)/)[1]          if (listStyle == 'dash' || listStyle == 'dot') {            utils.pushItem(              customCss,              selector +                ' li.list-' +                customStyle[listStyle] +                '{background-image:url(' +                T.liiconpath +                customStyle[listStyle] +                '.gif)}'            )            utils.pushItem(              customCss,              selector +                ' ul.custom_' +                listStyle +                '{list-style:none;} ' +                selector +                ' ul.custom_' +                listStyle +                ' li{background-position:0 3px;background-repeat:no-repeat}'            )          } else {            var index = 1            utils.each(list.childNodes, function (li) {              if (li.tagName == 'LI') {                utils.pushItem(                  customCss,                  selector +                    ' li.list-' +                    customStyle[listStyle] +                    index +                    '{background-image:url(' +                    T.liiconpath +                    'list-' +                    customStyle[listStyle] +                    index +                    '.gif)}'                )                index++              }            })            utils.pushItem(              customCss,              selector +                ' ol.custom_' +                listStyle +                '{list-style:none;}' +                selector +                ' ol.custom_' +                listStyle +                ' li{background-position:0 3px;background-repeat:no-repeat}'            )          }          switch (listStyle) {            case 'cn':              utils.pushItem(                customCss,                selector + ' li.list-' + listStyle + '-paddingleft-1{padding-left:25px}'              )              utils.pushItem(                customCss,                selector + ' li.list-' + listStyle + '-paddingleft-2{padding-left:40px}'              )              utils.pushItem(                customCss,                selector + ' li.list-' + listStyle + '-paddingleft-3{padding-left:55px}'              )              break            case 'cn1':              utils.pushItem(                customCss,                selector + ' li.list-' + listStyle + '-paddingleft-1{padding-left:30px}'              )              utils.pushItem(                customCss,                selector + ' li.list-' + listStyle + '-paddingleft-2{padding-left:40px}'              )              utils.pushItem(                customCss,                selector + ' li.list-' + listStyle + '-paddingleft-3{padding-left:55px}'              )              break            case 'cn2':              utils.pushItem(                customCss,                selector + ' li.list-' + listStyle + '-paddingleft-1{padding-left:40px}'              )              utils.pushItem(                customCss,                selector + ' li.list-' + listStyle + '-paddingleft-2{padding-left:55px}'              )              utils.pushItem(                customCss,                selector + ' li.list-' + listStyle + '-paddingleft-3{padding-left:68px}'              )              break            case 'num':            case 'num1':              utils.pushItem(                customCss,                selector + ' li.list-' + listStyle + '-paddingleft-1{padding-left:25px}'              )              break            case 'num2':              utils.pushItem(                customCss,                selector + ' li.list-' + listStyle + '-paddingleft-1{padding-left:35px}'              )              utils.pushItem(                customCss,                selector + ' li.list-' + listStyle + '-paddingleft-2{padding-left:40px}'              )              break            case 'dash':              utils.pushItem(                customCss,                selector + ' li.list-' + listStyle + '-paddingleft{padding-left:35px}'              )              break            case 'dot':              utils.pushItem(                customCss,                selector + ' li.list-' + listStyle + '-paddingleft{padding-left:20px}'              )          }        }      })    }  })  UE.parse.register('vedio', function (utils) {    var video = this.root.getElementsByTagName('video'),      audio = this.root.getElementsByTagName('audio')    document.createElement('video')    document.createElement('audio')    if (video.length || audio.length) {      var sourcePath = utils.removeLastbs(this.rootPath),        jsurl = sourcePath + '/third-party/video-js/video.js',        cssurl = sourcePath + '/third-party/video-js/video-js.min.css',        swfUrl = sourcePath + '/third-party/video-js/video-js.swf'      if (window.videojs) {        videojs.autoSetup()      } else {        utils.loadFile(document, {          id: 'video_css',          tag: 'link',          rel: 'stylesheet',          type: 'text/css',          href: cssurl        })        utils.loadFile(          document,          {            id: 'video_js',            src: jsurl,            tag: 'script',            type: 'text/javascript'          },          function () {            videojs.options.flash.swf = swfUrl            videojs.autoSetup()          }        )      }    }  })})()
 |