├── 404.html ├── 500.html ├── LICENSE ├── README.md ├── agile_board.html ├── article.html ├── badges_labels.html ├── basic_gallery.html ├── blog.html ├── blueimp.html ├── buttons.html ├── calendar.html ├── carousel.html ├── chat_view.html ├── clients.html ├── code_editor.html ├── contacts.html ├── css ├── animate.css ├── bootstrap-rtl.css ├── bootstrap.min.css ├── demo │ └── webuploader-demo.css ├── font-awesome.css ├── font-awesome.min.css ├── jquery.contextMenu.min.css ├── login.css ├── patterns │ ├── header-profile-skin-1.png │ ├── header-profile-skin-3.png │ ├── header-profile.png │ └── shattered.png ├── plugins │ ├── awesome-bootstrap-checkbox │ │ └── awesome-bootstrap-checkbox.css │ ├── blueimp │ │ ├── css │ │ │ ├── blueimp-gallery-indicator.css │ │ │ ├── blueimp-gallery-video.css │ │ │ ├── blueimp-gallery.css │ │ │ ├── blueimp-gallery.min.css │ │ │ └── demo.css │ │ └── img │ │ │ ├── error.png │ │ │ ├── error.svg │ │ │ ├── loading.gif │ │ │ ├── play-pause.png │ │ │ ├── play-pause.svg │ │ │ ├── video-play.png │ │ │ └── video-play.svg │ ├── bootstrap-table │ │ └── bootstrap-table.min.css │ ├── chosen │ │ ├── chosen-sprite.png │ │ ├── chosen-sprite@2x.png │ │ └── chosen.css │ ├── clockpicker │ │ └── clockpicker.css │ ├── codemirror │ │ ├── ambiance.css │ │ └── codemirror.css │ ├── colorpicker │ │ ├── css │ │ │ └── bootstrap-colorpicker.min.css │ │ └── img │ │ │ └── bootstrap-colorpicker │ │ │ ├── alpha-horizontal.png │ │ │ ├── alpha.png │ │ │ ├── hue-horizontal.png │ │ │ ├── hue.png │ │ │ └── saturation.png │ ├── cropper │ │ └── cropper.min.css │ ├── dataTables │ │ └── dataTables.bootstrap.css │ ├── datapicker │ │ └── datepicker3.css │ ├── dropzone │ │ ├── basic.css │ │ └── dropzone.css │ ├── duallistbox │ │ └── bootstrap-duallistbox.css │ ├── footable │ │ ├── fonts │ │ │ ├── footable.eot │ │ │ ├── footable.svg │ │ │ ├── footable.ttf │ │ │ └── footable.woff │ │ └── footable.core.css │ ├── fullcalendar │ │ ├── fullcalendar.css │ │ └── fullcalendar.print.css │ ├── iCheck │ │ ├── custom.css │ │ ├── green.png │ │ └── green@2x.png │ ├── images │ │ ├── sort_asc.png │ │ ├── sort_desc.png │ │ ├── sprite-skin-flat.png │ │ ├── spritemap.png │ │ └── spritemap@2x.png │ ├── ionRangeSlider │ │ ├── ion.rangeSlider.css │ │ └── ion.rangeSlider.skinFlat.css │ ├── jQueryUI │ │ ├── images │ │ │ ├── ui-bg_flat_0_aaaaaa_40x100.png │ │ │ ├── ui-bg_flat_75_ffffff_40x100.png │ │ │ ├── ui-icons_222222_256x240.png │ │ │ ├── ui-icons_454545_256x240.png │ │ │ └── ui-icons_888888_256x240.png │ │ └── jquery-ui-1.10.4.custom.min.css │ ├── jasny │ │ └── jasny-bootstrap.min.css │ ├── jqgrid │ │ └── ui.jqgrid.css │ ├── jsTree │ │ ├── 32px.png │ │ ├── style.min.css │ │ └── throbber.gif │ ├── markdown │ │ └── bootstrap-markdown.min.css │ ├── morris │ │ └── morris-0.4.3.min.css │ ├── multiselect │ │ └── bootstrap-multiselect.css │ ├── nouslider │ │ └── jquery.nouislider.css │ ├── plyr │ │ ├── plyr.css │ │ └── sprite.svg │ ├── simditor │ │ └── simditor.css │ ├── steps │ │ └── jquery.steps.css │ ├── summernote │ │ ├── font │ │ │ ├── summernote.eot │ │ │ ├── summernote.ttf │ │ │ └── summernote.woff │ │ ├── summernote-bs3.css │ │ └── summernote.css │ ├── sweetalert │ │ └── sweetalert.css │ ├── switchery │ │ └── switchery.css │ ├── toastr │ │ └── toastr.min.css │ ├── treeview │ │ └── bootstrap-treeview.css │ └── webuploader │ │ └── webuploader.css └── style.css ├── css_animation.html ├── diff.html ├── docs ├── img │ ├── index_4.png │ ├── page.png │ ├── preview.png │ └── rtl_support.png ├── index.html └── js │ ├── prettify.css │ └── prettify.js ├── draggable_panels.html ├── empty_page.html ├── faq.html ├── favicon.ico ├── file_manager.html ├── fontawesome.html ├── fonts ├── FontAwesome.otf ├── fontawesome-webfont.eot ├── fontawesome-webfont.svg ├── fontawesome-webfont.ttf ├── fontawesome-webfont.woff ├── fontawesome-webfont.woff2 ├── glyphicons-halflings-regular.eot ├── glyphicons-halflings-regular.svg ├── glyphicons-halflings-regular.ttf ├── glyphicons-halflings-regular.woff └── glyphicons-halflings-regular.woff2 ├── form_advanced.html ├── form_avatar.html ├── form_basic.html ├── form_builder.html ├── form_editors.html ├── form_file_upload.html ├── form_markdown.html ├── form_simditor.html ├── form_validate.html ├── form_webuploader.html ├── form_wizard.html ├── forum_main.html ├── glyphicons.html ├── graph_echarts.html ├── graph_flot.html ├── graph_metrics.html ├── graph_morris.html ├── graph_peity.html ├── graph_rickshaw.html ├── graph_sparkline.html ├── grid_options.html ├── iconfont.html ├── ie.html ├── img ├── a1.jpg ├── a2.jpg ├── a3.jpg ├── a4.jpg ├── a5.jpg ├── a6.jpg ├── a7.jpg ├── a8.jpg ├── a9.jpg ├── bg.png ├── browser.png ├── browser.psd ├── donate-qrcode.png ├── iconfont-logo.png ├── icons.png ├── index.jpg ├── index_4.jpg ├── loading-upload.gif ├── locked.png ├── login-background.jpg ├── p1.jpg ├── p2.jpg ├── p3.jpg ├── p_big1.jpg ├── p_big2.jpg ├── p_big3.jpg ├── profile.jpg ├── profile_big.jpg ├── profile_small.jpg ├── progress.png ├── qr_code.png ├── sprite-skin-flat.png ├── success.png ├── user.png ├── webuploader.png └── wenku_logo.png ├── index.html ├── index_v1.html ├── index_v2.html ├── index_v3.html ├── index_v4.html ├── index_v5.html ├── invoice.html ├── invoice_print.html ├── js ├── bootstrap.min.js ├── contabs.js ├── content.js ├── demo │ ├── bootstrap-table-demo.js │ ├── bootstrap_table_test.json │ ├── bootstrap_table_test2.json │ ├── echarts-demo.js │ ├── flot-demo.js │ ├── form-advanced-demo.js │ ├── form-validate-demo.js │ ├── layer-demo.js │ ├── morris-demo.js │ ├── peity-demo.js │ ├── photos.json │ ├── rickshaw-demo.js │ ├── sparkline-demo.js │ ├── table_base.json │ ├── treeview-demo.js │ └── webuploader-demo.js ├── hplus.js ├── jquery-ui-1.10.4.min.js ├── jquery-ui.custom.min.js ├── jquery.min.js ├── jquery.min.map ├── jquery.pjax.min.js ├── plugins │ ├── beautifyhtml │ │ └── beautifyhtml.js │ ├── blueimp │ │ └── jquery.blueimp-gallery.min.js │ ├── bootstrap-table │ │ ├── bootstrap-table-mobile.min.js │ │ ├── bootstrap-table.min.js │ │ └── locale │ │ │ ├── bootstrap-table-zh-CN.js │ │ │ └── bootstrap-table-zh-CN.min.js │ ├── chartJs │ │ └── Chart.min.js │ ├── chosen │ │ └── chosen.jquery.js │ ├── clockpicker │ │ └── clockpicker.js │ ├── codemirror │ │ ├── codemirror.js │ │ └── mode │ │ │ ├── apl │ │ │ ├── apl.js │ │ │ └── index.html │ │ │ ├── asterisk │ │ │ ├── asterisk.js │ │ │ └── index.html │ │ │ ├── clike │ │ │ ├── clike.js │ │ │ ├── index.html │ │ │ └── scala.html │ │ │ ├── clojure │ │ │ ├── clojure.js │ │ │ └── index.html │ │ │ ├── cobol │ │ │ ├── cobol.js │ │ │ └── index.html │ │ │ ├── coffeescript │ │ │ ├── coffeescript.js │ │ │ └── index.html │ │ │ ├── commonlisp │ │ │ ├── commonlisp.js │ │ │ └── index.html │ │ │ ├── css │ │ │ ├── css.js │ │ │ ├── index.html │ │ │ ├── less.html │ │ │ ├── less_test.js │ │ │ ├── scss.html │ │ │ ├── scss_test.js │ │ │ └── test.js │ │ │ ├── cypher │ │ │ ├── cypher.js │ │ │ └── index.html │ │ │ ├── d │ │ │ ├── d.js │ │ │ └── index.html │ │ │ ├── dart │ │ │ ├── dart.js │ │ │ └── index.html │ │ │ ├── diff │ │ │ ├── diff.js │ │ │ └── index.html │ │ │ ├── django │ │ │ ├── django.js │ │ │ └── index.html │ │ │ ├── dockerfile │ │ │ ├── dockerfile.js │ │ │ └── index.html │ │ │ ├── dtd │ │ │ ├── dtd.js │ │ │ └── index.html │ │ │ ├── dylan │ │ │ ├── dylan.js │ │ │ └── index.html │ │ │ ├── ebnf │ │ │ ├── ebnf.js │ │ │ └── index.html │ │ │ ├── ecl │ │ │ ├── ecl.js │ │ │ └── index.html │ │ │ ├── eiffel │ │ │ ├── eiffel.js │ │ │ └── index.html │ │ │ ├── erlang │ │ │ ├── erlang.js │ │ │ └── index.html │ │ │ ├── fortran │ │ │ ├── fortran.js │ │ │ └── index.html │ │ │ ├── gas │ │ │ ├── gas.js │ │ │ └── index.html │ │ │ ├── gfm │ │ │ ├── gfm.js │ │ │ ├── index.html │ │ │ └── test.js │ │ │ ├── gherkin │ │ │ ├── gherkin.js │ │ │ └── index.html │ │ │ ├── go │ │ │ ├── go.js │ │ │ └── index.html │ │ │ ├── groovy │ │ │ ├── groovy.js │ │ │ └── index.html │ │ │ ├── haml │ │ │ ├── haml.js │ │ │ ├── index.html │ │ │ └── test.js │ │ │ ├── haskell │ │ │ ├── haskell.js │ │ │ └── index.html │ │ │ ├── haxe │ │ │ ├── haxe.js │ │ │ └── index.html │ │ │ ├── htmlembedded │ │ │ ├── htmlembedded.js │ │ │ └── index.html │ │ │ ├── htmlmixed │ │ │ ├── htmlmixed.js │ │ │ └── index.html │ │ │ ├── http │ │ │ ├── http.js │ │ │ └── index.html │ │ │ ├── idl │ │ │ ├── idl.js │ │ │ └── index.html │ │ │ ├── index.html │ │ │ ├── jade │ │ │ ├── index.html │ │ │ └── jade.js │ │ │ ├── javascript │ │ │ ├── index.html │ │ │ ├── javascript.js │ │ │ ├── json-ld.html │ │ │ ├── test.js │ │ │ └── typescript.html │ │ │ ├── jinja2 │ │ │ ├── index.html │ │ │ └── jinja2.js │ │ │ ├── julia │ │ │ ├── index.html │ │ │ └── julia.js │ │ │ ├── kotlin │ │ │ ├── index.html │ │ │ └── kotlin.js │ │ │ ├── livescript │ │ │ ├── index.html │ │ │ └── livescript.js │ │ │ ├── lua │ │ │ ├── index.html │ │ │ └── lua.js │ │ │ ├── markdown │ │ │ ├── index.html │ │ │ ├── markdown.js │ │ │ └── test.js │ │ │ ├── meta.js │ │ │ ├── mirc │ │ │ ├── index.html │ │ │ └── mirc.js │ │ │ ├── mllike │ │ │ ├── index.html │ │ │ └── mllike.js │ │ │ ├── modelica │ │ │ ├── index.html │ │ │ └── modelica.js │ │ │ ├── nginx │ │ │ ├── index.html │ │ │ └── nginx.js │ │ │ ├── ntriples │ │ │ ├── index.html │ │ │ └── ntriples.js │ │ │ ├── octave │ │ │ ├── index.html │ │ │ └── octave.js │ │ │ ├── pascal │ │ │ ├── index.html │ │ │ └── pascal.js │ │ │ ├── pegjs │ │ │ ├── index.html │ │ │ └── pegjs.js │ │ │ ├── perl │ │ │ ├── index.html │ │ │ └── perl.js │ │ │ ├── php │ │ │ ├── index.html │ │ │ ├── php.js │ │ │ └── test.js │ │ │ ├── pig │ │ │ ├── index.html │ │ │ └── pig.js │ │ │ ├── properties │ │ │ ├── index.html │ │ │ └── properties.js │ │ │ ├── puppet │ │ │ ├── index.html │ │ │ └── puppet.js │ │ │ ├── python │ │ │ ├── index.html │ │ │ └── python.js │ │ │ ├── q │ │ │ ├── index.html │ │ │ └── q.js │ │ │ ├── r │ │ │ ├── index.html │ │ │ └── r.js │ │ │ ├── rpm │ │ │ ├── changes │ │ │ │ └── index.html │ │ │ ├── index.html │ │ │ └── rpm.js │ │ │ ├── rst │ │ │ ├── index.html │ │ │ └── rst.js │ │ │ ├── ruby │ │ │ ├── index.html │ │ │ ├── ruby.js │ │ │ └── test.js │ │ │ ├── rust │ │ │ ├── index.html │ │ │ └── rust.js │ │ │ ├── sass │ │ │ ├── index.html │ │ │ └── sass.js │ │ │ ├── scheme │ │ │ ├── index.html │ │ │ └── scheme.js │ │ │ ├── shell │ │ │ ├── index.html │ │ │ ├── shell.js │ │ │ └── test.js │ │ │ ├── sieve │ │ │ ├── index.html │ │ │ └── sieve.js │ │ │ ├── slim │ │ │ ├── index.html │ │ │ ├── slim.js │ │ │ └── test.js │ │ │ ├── smalltalk │ │ │ ├── index.html │ │ │ └── smalltalk.js │ │ │ ├── smarty │ │ │ ├── index.html │ │ │ └── smarty.js │ │ │ ├── smartymixed │ │ │ ├── index.html │ │ │ └── smartymixed.js │ │ │ ├── solr │ │ │ ├── index.html │ │ │ └── solr.js │ │ │ ├── soy │ │ │ ├── index.html │ │ │ └── soy.js │ │ │ ├── sparql │ │ │ ├── index.html │ │ │ └── sparql.js │ │ │ ├── spreadsheet │ │ │ ├── index.html │ │ │ └── spreadsheet.js │ │ │ ├── sql │ │ │ ├── index.html │ │ │ └── sql.js │ │ │ ├── stex │ │ │ ├── index.html │ │ │ ├── stex.js │ │ │ └── test.js │ │ │ ├── tcl │ │ │ ├── index.html │ │ │ └── tcl.js │ │ │ ├── textile │ │ │ ├── index.html │ │ │ ├── test.js │ │ │ └── textile.js │ │ │ ├── tiddlywiki │ │ │ ├── index.html │ │ │ ├── tiddlywiki.css │ │ │ └── tiddlywiki.js │ │ │ ├── tiki │ │ │ ├── index.html │ │ │ ├── tiki.css │ │ │ └── tiki.js │ │ │ ├── toml │ │ │ ├── index.html │ │ │ └── toml.js │ │ │ ├── tornado │ │ │ ├── index.html │ │ │ └── tornado.js │ │ │ ├── turtle │ │ │ ├── index.html │ │ │ └── turtle.js │ │ │ ├── vb │ │ │ ├── index.html │ │ │ └── vb.js │ │ │ ├── vbscript │ │ │ ├── index.html │ │ │ └── vbscript.js │ │ │ ├── velocity │ │ │ ├── index.html │ │ │ └── velocity.js │ │ │ ├── verilog │ │ │ ├── index.html │ │ │ ├── test.js │ │ │ └── verilog.js │ │ │ ├── xml │ │ │ ├── index.html │ │ │ ├── test.js │ │ │ └── xml.js │ │ │ ├── xquery │ │ │ ├── index.html │ │ │ ├── test.js │ │ │ └── xquery.js │ │ │ ├── yaml │ │ │ ├── index.html │ │ │ └── yaml.js │ │ │ └── z80 │ │ │ ├── index.html │ │ │ └── z80.js │ ├── colorpicker │ │ └── bootstrap-colorpicker.min.js │ ├── contextMenu │ │ └── jquery.contextMenu.min.js │ ├── cropper │ │ └── cropper.min.js │ ├── dataTables │ │ ├── dataTables.bootstrap.js │ │ └── jquery.dataTables.js │ ├── datapicker │ │ └── bootstrap-datepicker.js │ ├── diff_match_patch │ │ └── diff_match_patch.js │ ├── dropzone │ │ └── dropzone.js │ ├── duallistbox │ │ └── jquery.bootstrap-duallistbox.js │ ├── easypiechart │ │ └── jquery.easypiechart.js │ ├── echarts │ │ └── echarts-all.js │ ├── fancybox │ │ ├── blank.gif │ │ ├── fancybox_loading.gif │ │ ├── fancybox_loading@2x.gif │ │ ├── fancybox_overlay.png │ │ ├── fancybox_sprite.png │ │ ├── fancybox_sprite@2x.png │ │ ├── jquery.fancybox.css │ │ └── jquery.fancybox.js │ ├── flot │ │ ├── curvedLines.js │ │ ├── jquery.flot.js │ │ ├── jquery.flot.pie.js │ │ ├── jquery.flot.resize.js │ │ ├── jquery.flot.spline.js │ │ ├── jquery.flot.symbol.js │ │ └── jquery.flot.tooltip.min.js │ ├── footable │ │ └── footable.all.min.js │ ├── fullcalendar │ │ ├── fullcalendar.min.js │ │ └── moment.min.js │ ├── gritter │ │ ├── images │ │ │ ├── gritter-light.png │ │ │ ├── gritter.png │ │ │ └── ie-spacer.gif │ │ ├── jquery.gritter.css │ │ └── jquery.gritter.min.js │ ├── iCheck │ │ └── icheck.min.js │ ├── ionRangeSlider │ │ ├── ion.rangeSlider.min.js │ │ └── jasny │ │ │ └── jasny-bootstrap.min.js │ ├── jasny │ │ └── jasny-bootstrap.min.js │ ├── jeditable │ │ └── jquery.jeditable.js │ ├── jqgrid │ │ ├── i18n │ │ │ └── grid.locale-cn.js │ │ └── jquery.jqGrid.min.js │ ├── jquery-ui │ │ └── jquery-ui.min.js │ ├── jsKnob │ │ └── jquery.knob.js │ ├── jsTree │ │ ├── jstree.js │ │ └── jstree.min.js │ ├── jvectormap │ │ ├── jquery-jvectormap-1.2.2.min.js │ │ └── jquery-jvectormap-world-mill-en.js │ ├── layer │ │ ├── extend │ │ │ └── layer.ext.js │ │ ├── laydate │ │ │ ├── laydate.js │ │ │ ├── need │ │ │ │ └── laydate.css │ │ │ └── skins │ │ │ │ └── default │ │ │ │ ├── icon.png │ │ │ │ └── laydate.css │ │ ├── layer.min.js │ │ ├── layim │ │ │ ├── data │ │ │ │ ├── chatlog.json │ │ │ │ ├── friend.json │ │ │ │ ├── group.json │ │ │ │ └── groups.json │ │ │ ├── layim.css │ │ │ ├── layim.js │ │ │ └── loading.gif │ │ └── skin │ │ │ ├── default │ │ │ ├── icon-ext.png │ │ │ ├── icon.png │ │ │ ├── icon_ext.png │ │ │ ├── loading-0.gif │ │ │ ├── loading-1.gif │ │ │ ├── loading-2.gif │ │ │ ├── textbg.png │ │ │ ├── xubox_ico0.png │ │ │ ├── xubox_loading0.gif │ │ │ ├── xubox_loading1.gif │ │ │ ├── xubox_loading2.gif │ │ │ ├── xubox_loading3.gif │ │ │ └── xubox_title0.png │ │ │ ├── layer.css │ │ │ ├── layer.ext.css │ │ │ └── moon │ │ │ ├── default.png │ │ │ └── style.css │ ├── markdown │ │ ├── bootstrap-markdown.js │ │ ├── bootstrap-markdown.zh.js │ │ ├── markdown.js │ │ └── to-markdown.js │ ├── metisMenu │ │ └── jquery.metisMenu.js │ ├── morris │ │ ├── morris.js │ │ └── raphael-2.1.0.min.js │ ├── multiselect │ │ └── bootstrap-multiselect.js │ ├── nestable │ │ └── jquery.nestable.js │ ├── nouslider │ │ └── jquery.nouislider.min.js │ ├── pace │ │ └── pace.min.js │ ├── peity │ │ └── jquery.peity.min.js │ ├── plyr │ │ └── plyr.js │ ├── preetyTextDiff │ │ └── jquery.pretty-text-diff.min.js │ ├── prettyfile │ │ └── bootstrap-prettyfile.js │ ├── rickshaw │ │ ├── rickshaw.min.js │ │ └── vendor │ │ │ └── d3.v3.js │ ├── simditor │ │ ├── hotkeys.js │ │ ├── hotkeys.min.js │ │ ├── jquery.min.js │ │ ├── module.js │ │ ├── module.min.js │ │ ├── simditor.js │ │ ├── simditor.min.js │ │ ├── uploader.js │ │ └── uploader.min.js │ ├── slimscroll │ │ └── jquery.slimscroll.min.js │ ├── sparkline │ │ └── jquery.sparkline.min.js │ ├── staps │ │ └── jquery.steps.min.js │ ├── suggest │ │ ├── bootstrap-suggest.min.js │ │ └── data.json │ ├── summernote │ │ ├── summernote-zh-CN.js │ │ ├── summernote.js │ │ └── summernote.min.js │ ├── sweetalert │ │ └── sweetalert.min.js │ ├── switchery │ │ └── switchery.js │ ├── toastr │ │ └── toastr.min.js │ ├── treeview │ │ └── bootstrap-treeview.js │ ├── validate │ │ ├── additional-methods.min.js │ │ ├── jquery.validate.min.js │ │ └── messages_zh.min.js │ └── webuploader │ │ ├── README.md │ │ ├── Uploader.swf │ │ ├── webuploader.css │ │ ├── webuploader.custom.js │ │ ├── webuploader.custom.min.js │ │ ├── webuploader.fis.js │ │ ├── webuploader.flashonly.js │ │ ├── webuploader.flashonly.min.js │ │ ├── webuploader.html5only.js │ │ ├── webuploader.html5only.min.js │ │ ├── webuploader.js │ │ ├── webuploader.min.js │ │ ├── webuploader.noimage.js │ │ ├── webuploader.noimage.min.js │ │ ├── webuploader.nolog.js │ │ ├── webuploader.nolog.min.js │ │ ├── webuploader.withoutimage.js │ │ └── webuploader.withoutimage.min.js └── welcome.js ├── jstree.html ├── layer.html ├── layerdate.html ├── layouts.html ├── lockscreen.html ├── login-1.html ├── login.html ├── login_v2-1.html ├── login_v2.html ├── mail_compose.html ├── mail_detail.html ├── mailbox.html ├── modal_window.html ├── nestable_list.html ├── notifications.html ├── pin_board.html ├── plugins └── fullavatareditor │ ├── asp.net │ ├── c# │ │ ├── Upload.aspx │ │ ├── Upload.aspx.cs │ │ └── bin │ │ │ └── Newtonsoft.Json.dll │ └── vb │ │ ├── Upload.aspx │ │ ├── Upload.aspx.vb │ │ └── bin │ │ └── Newtonsoft.Json.dll │ ├── asp │ ├── Upload.asp │ └── Upload.asp.cls │ ├── crossdomain.xml │ ├── expressInstall.swf │ ├── fullAvatarEditor.swf │ ├── jsp │ ├── WEB-INF │ │ └── lib │ │ │ ├── commons-fileupload-1.3.jar │ │ │ └── fastjson-1.1.9.jar │ └── upload.jsp │ ├── php │ └── upload.php │ ├── scripts │ ├── fullAvatarEditor.js │ ├── jQuery.Cookie.js │ ├── jQuery.Drag.js │ ├── jQuery.Resize.js │ ├── jQuery.dialog.js │ ├── swfobject.js │ └── test.js │ └── simpleDemo.html ├── plyr.html ├── profile.html ├── project_detail.html ├── projects.html ├── register.html ├── search_results.html ├── social_feed.html ├── spinners.html ├── suggest.html ├── sweetalert.html ├── table_basic.html ├── table_bootstrap.html ├── table_data_tables.html ├── table_foo_table.html ├── table_jqgrid.html ├── tabs_panels.html ├── teams_board.html ├── timeline.html ├── timeline_v2.html ├── toastr_notifications.html ├── tree_view.html ├── typography.html ├── webim.html └── widgets.html /404.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | H+ 后台主题UI框架 - 404 页面 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 |

404

27 |

页面未找到!

28 | 29 |
30 | 抱歉,页面好像去火星了~ 31 |
32 |
33 | 34 |
35 | 36 |
37 |
38 |
39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | -------------------------------------------------------------------------------- /500.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | H+ 后台主题UI框架 - 500错误 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 |

500

27 |

服务器内部错误

28 | 29 |
30 | 服务器好像出错了... 31 |
您可以返回主页看看 32 |
主页 33 |
34 |
35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2020 hplus 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # H+ 后台主题 UI 框架 2 | 3 | > Hplus(又名 H+) 原是一款商业 UI 框架,属于国内早期做中后台 UI 框架的产品,[若依开源](http://ruoyi.vip/)购买该软件的全部权益(包括但不限于软件的著作权、商标权、专利权等),采用 MIT 协议面向社区永久开源,免费商用。 4 | 5 | ## 说明 6 | 7 | H+是一个完全响应式,基于 Bootstrap3.3.7 最新版本开发的扁平化主题,她采用了主流的左右两栏式布局,使用了 Html5+CSS3 等现代技术,她提供了诸多的强大的可以重新组合的 UI 组件,并集成了最新的 jQuery 版本(v2.1.4),当然,也集成了很多功能强大,用途广泛的 jQuery 插件,她可以用于所有的 Web 应用程序,如网站管理后台,网站会员中心,CMS,CRM,OA 等等,当然,您也可以对她进行深度定制,以做出更强系统。 8 | 9 | ## 文档 10 | 11 | 见本项目下的 [docs 文件夹](https://hplus_admin.gitee.io/hplus/docs)。 12 | 13 | ## 官网 14 | 15 | - 若依开源 [http://ruoyi.vip](http://ruoyi.vip/) 16 | 17 | - 配套后台管理系统 [https://gitee.com/y_project/RuoYi](https://gitee.com/y_project/RuoYi) 18 | -------------------------------------------------------------------------------- /css/login.css: -------------------------------------------------------------------------------- 1 | html{height: 100%;} 2 | body.signin { 3 | background: #18c8f6; 4 | height: auto; 5 | background:url("../img/login-background.jpg") no-repeat center fixed; 6 | -webkit-background-size: cover; 7 | -moz-background-size: cover; 8 | -o-background-size: cover; 9 | background-size: cover; 10 | color: rgba(255,255,255,.95); 11 | } 12 | 13 | .signinpanel { 14 | width: 750px; 15 | margin: 10% auto 0 auto; 16 | } 17 | 18 | .signinpanel .logopanel { 19 | float: none; 20 | width: auto; 21 | padding: 0; 22 | background: none; 23 | } 24 | 25 | .signinpanel .signin-info ul { 26 | list-style: none; 27 | padding: 0; 28 | margin: 20px 0; 29 | } 30 | 31 | .signinpanel .form-control { 32 | display: block; 33 | margin-top: 15px; 34 | } 35 | 36 | .signinpanel .uname { 37 | background: #fff url(../img/user.png) no-repeat 95% center;color:#333; 38 | } 39 | 40 | .signinpanel .pword { 41 | background: #fff url(../img/locked.png) no-repeat 95% center;color:#333; 42 | } 43 | 44 | .signinpanel .btn { 45 | margin-top: 15px; 46 | } 47 | 48 | .signinpanel form { 49 | background: rgba(255, 255, 255, 0.2); 50 | border: 1px solid rgba(255,255,255,.3); 51 | -moz-box-shadow: 0 3px 0 rgba(12, 12, 12, 0.03); 52 | -webkit-box-shadow: 0 3px 0 rgba(12, 12, 12, 0.03); 53 | box-shadow: 0 3px 0 rgba(12, 12, 12, 0.03); 54 | -moz-border-radius: 3px; 55 | -webkit-border-radius: 3px; 56 | border-radius: 3px; 57 | padding: 30px; 58 | } 59 | 60 | .signup-footer{border-top: solid 1px rgba(255,255,255,.3);margin:20px 0;padding-top: 15px;} 61 | 62 | @media screen and (max-width: 768px) { 63 | .signinpanel, 64 | .signuppanel { 65 | margin: 0 auto; 66 | width: 420px!important; 67 | padding: 20px; 68 | } 69 | .signinpanel form { 70 | margin-top: 20px; 71 | } 72 | .signup-footer { 73 | margin-bottom: 10px; 74 | } 75 | .signuppanel .form-control { 76 | margin-bottom: 10px; 77 | } 78 | .signup-footer .pull-left, 79 | .signup-footer .pull-right { 80 | float: none !important; 81 | text-align: center; 82 | } 83 | .signinpanel .signin-info ul { 84 | display: none; 85 | } 86 | } 87 | @media screen and (max-width: 320px) { 88 | .signinpanel, 89 | .signuppanel { 90 | margin:0 20px; 91 | width:auto; 92 | } 93 | } 94 | -------------------------------------------------------------------------------- /css/patterns/header-profile-skin-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/css/patterns/header-profile-skin-1.png -------------------------------------------------------------------------------- /css/patterns/header-profile-skin-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/css/patterns/header-profile-skin-3.png -------------------------------------------------------------------------------- /css/patterns/header-profile.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/css/patterns/header-profile.png -------------------------------------------------------------------------------- /css/patterns/shattered.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/css/patterns/shattered.png -------------------------------------------------------------------------------- /css/plugins/blueimp/css/blueimp-gallery-indicator.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8"; 2 | /* 3 | * blueimp Gallery Indicator CSS 1.1.0 4 | * https://github.com/blueimp/Gallery 5 | * 6 | * Copyright 2013, Sebastian Tschan 7 | * https://blueimp.net 8 | * 9 | * Licensed under the MIT license: 10 | * http://www.opensource.org/licenses/MIT 11 | */ 12 | 13 | .blueimp-gallery > .indicator { 14 | position: absolute; 15 | top: auto; 16 | right: 15px; 17 | bottom: 15px; 18 | left: 15px; 19 | margin: 0 40px; 20 | padding: 0; 21 | list-style: none; 22 | text-align: center; 23 | line-height: 10px; 24 | display: none; 25 | } 26 | .blueimp-gallery > .indicator > li { 27 | display: inline-block; 28 | width: 9px; 29 | height: 9px; 30 | margin: 6px 3px 0 3px; 31 | -webkit-box-sizing: content-box; 32 | -moz-box-sizing: content-box; 33 | box-sizing: content-box; 34 | border: 1px solid transparent; 35 | background: #ccc; 36 | background: rgba(255, 255, 255, 0.25) center no-repeat; 37 | border-radius: 5px; 38 | box-shadow: 0 0 2px #000; 39 | opacity: 0.5; 40 | cursor: pointer; 41 | } 42 | .blueimp-gallery > .indicator > li:hover, 43 | .blueimp-gallery > .indicator > .active { 44 | background-color: #fff; 45 | border-color: #fff; 46 | opacity: 1; 47 | } 48 | .blueimp-gallery-controls > .indicator { 49 | display: block; 50 | /* Fix z-index issues (controls behind slide element) on Android: */ 51 | -webkit-transform: translateZ(0); 52 | -moz-transform: translateZ(0); 53 | -ms-transform: translateZ(0); 54 | -o-transform: translateZ(0); 55 | transform: translateZ(0); 56 | } 57 | .blueimp-gallery-single > .indicator { 58 | display: none; 59 | } 60 | .blueimp-gallery > .indicator { 61 | -webkit-user-select: none; 62 | -khtml-user-select: none; 63 | -moz-user-select: none; 64 | -ms-user-select: none; 65 | user-select: none; 66 | } 67 | 68 | /* IE7 fixes */ 69 | *+html .blueimp-gallery > .indicator > li { 70 | display: inline; 71 | } 72 | -------------------------------------------------------------------------------- /css/plugins/blueimp/css/blueimp-gallery-video.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8"; 2 | /* 3 | * blueimp Gallery Video Factory CSS 1.3.0 4 | * https://github.com/blueimp/Gallery 5 | * 6 | * Copyright 2013, Sebastian Tschan 7 | * https://blueimp.net 8 | * 9 | * Licensed under the MIT license: 10 | * http://www.opensource.org/licenses/MIT 11 | */ 12 | 13 | .blueimp-gallery > .slides > .slide > .video-content > img { 14 | position: absolute; 15 | top: 0; 16 | right: 0; 17 | bottom: 0; 18 | left: 0; 19 | margin: auto; 20 | width: auto; 21 | height: auto; 22 | max-width: 100%; 23 | max-height: 100%; 24 | /* Prevent artifacts in Mozilla Firefox: */ 25 | -moz-backface-visibility: hidden; 26 | } 27 | .blueimp-gallery > .slides > .slide > .video-content > video { 28 | position: absolute; 29 | top: 0; 30 | left: 0; 31 | width: 100%; 32 | height: 100%; 33 | } 34 | .blueimp-gallery > .slides > .slide > .video-content > iframe { 35 | position: absolute; 36 | top: 100%; 37 | left: 0; 38 | width: 100%; 39 | height: 100%; 40 | border: none; 41 | } 42 | .blueimp-gallery > .slides > .slide > .video-playing > iframe { 43 | top: 0; 44 | } 45 | .blueimp-gallery > .slides > .slide > .video-content > a { 46 | position: absolute; 47 | top: 50%; 48 | right: 0; 49 | left: 0; 50 | margin: -64px auto 0; 51 | width: 128px; 52 | height: 128px; 53 | background: url(../img/video-play.png) center no-repeat; 54 | opacity: 0.8; 55 | cursor: pointer; 56 | } 57 | .blueimp-gallery > .slides > .slide > .video-content > a:hover { 58 | opacity: 1; 59 | } 60 | .blueimp-gallery > .slides > .slide > .video-playing > a, 61 | .blueimp-gallery > .slides > .slide > .video-playing > img { 62 | display: none; 63 | } 64 | .blueimp-gallery > .slides > .slide > .video-content > video { 65 | display: none; 66 | } 67 | .blueimp-gallery > .slides > .slide > .video-playing > video { 68 | display: block; 69 | } 70 | .blueimp-gallery > .slides > .slide > .video-loading > a { 71 | background: url(../img/loading.gif) center no-repeat; 72 | background-size: 64px 64px; 73 | } 74 | 75 | /* Replace PNGs with SVGs for capable browsers (excluding IE<9) */ 76 | body:last-child .blueimp-gallery > .slides > .slide > .video-content:not(.video-loading) > a { 77 | background-image: url(../img/video-play.svg); 78 | } 79 | 80 | /* IE7 fixes */ 81 | *+html .blueimp-gallery > .slides > .slide > .video-content { 82 | height: 100%; 83 | } 84 | *+html .blueimp-gallery > .slides > .slide > .video-content > a { 85 | left: 50%; 86 | margin-left: -64px; 87 | } 88 | -------------------------------------------------------------------------------- /css/plugins/blueimp/css/demo.css: -------------------------------------------------------------------------------- 1 | /* 2 | * blueimp Gallery Demo CSS 2.0.0 3 | * https://github.com/blueimp/Gallery 4 | * 5 | * Copyright 2013, Sebastian Tschan 6 | * https://blueimp.net 7 | * 8 | * Licensed under the MIT license: 9 | * http://www.opensource.org/licenses/MIT 10 | */ 11 | 12 | body { 13 | max-width: 750px; 14 | margin: 0 auto; 15 | padding: 1em; 16 | font-family: 'Lucida Grande', 'Lucida Sans Unicode', Arial, sans-serif; 17 | font-size: 1em; 18 | line-height: 1.4em; 19 | background: #222; 20 | color: #fff; 21 | -webkit-text-size-adjust: 100%; 22 | -ms-text-size-adjust: 100%; 23 | } 24 | a { 25 | color: orange; 26 | text-decoration: none; 27 | } 28 | img { 29 | border: 0; 30 | vertical-align: middle; 31 | } 32 | h1 { 33 | line-height: 1em; 34 | } 35 | h2, 36 | .links { 37 | text-align: center; 38 | } 39 | 40 | @media (min-width: 481px) { 41 | .navigation { 42 | list-style: none; 43 | padding: 0; 44 | } 45 | .navigation li { 46 | display: inline-block; 47 | } 48 | .navigation li:not(:first-child):before { 49 | content: '| '; 50 | } 51 | } 52 | -------------------------------------------------------------------------------- /css/plugins/blueimp/img/error.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/css/plugins/blueimp/img/error.png -------------------------------------------------------------------------------- /css/plugins/blueimp/img/error.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /css/plugins/blueimp/img/loading.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/css/plugins/blueimp/img/loading.gif -------------------------------------------------------------------------------- /css/plugins/blueimp/img/play-pause.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/css/plugins/blueimp/img/play-pause.png -------------------------------------------------------------------------------- /css/plugins/blueimp/img/play-pause.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /css/plugins/blueimp/img/video-play.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/css/plugins/blueimp/img/video-play.png -------------------------------------------------------------------------------- /css/plugins/blueimp/img/video-play.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /css/plugins/chosen/chosen-sprite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/css/plugins/chosen/chosen-sprite.png -------------------------------------------------------------------------------- /css/plugins/chosen/chosen-sprite@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/css/plugins/chosen/chosen-sprite@2x.png -------------------------------------------------------------------------------- /css/plugins/colorpicker/img/bootstrap-colorpicker/alpha-horizontal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/css/plugins/colorpicker/img/bootstrap-colorpicker/alpha-horizontal.png -------------------------------------------------------------------------------- /css/plugins/colorpicker/img/bootstrap-colorpicker/alpha.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/css/plugins/colorpicker/img/bootstrap-colorpicker/alpha.png -------------------------------------------------------------------------------- /css/plugins/colorpicker/img/bootstrap-colorpicker/hue-horizontal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/css/plugins/colorpicker/img/bootstrap-colorpicker/hue-horizontal.png -------------------------------------------------------------------------------- /css/plugins/colorpicker/img/bootstrap-colorpicker/hue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/css/plugins/colorpicker/img/bootstrap-colorpicker/hue.png -------------------------------------------------------------------------------- /css/plugins/colorpicker/img/bootstrap-colorpicker/saturation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/css/plugins/colorpicker/img/bootstrap-colorpicker/saturation.png -------------------------------------------------------------------------------- /css/plugins/duallistbox/bootstrap-duallistbox.css: -------------------------------------------------------------------------------- 1 | .bootstrap-duallistbox-container .buttons { 2 | width:calc(100% + 1px); 3 | margin-bottom: -6px; 4 | box-sizing: border-box; 5 | } 6 | 7 | .bootstrap-duallistbox-container label { 8 | display: block; 9 | } 10 | 11 | .bootstrap-duallistbox-container .info { 12 | display: inline-block; 13 | margin-bottom: 5px; 14 | } 15 | 16 | .bootstrap-duallistbox-container .clear1, 17 | .bootstrap-duallistbox-container .clear2 { 18 | display: none; 19 | font-size: 10px; 20 | } 21 | 22 | .bootstrap-duallistbox-container .box1.filtered .clear1, 23 | .bootstrap-duallistbox-container .box2.filtered .clear2 { 24 | display: inline-block; 25 | } 26 | 27 | .bootstrap-duallistbox-container .move, 28 | .bootstrap-duallistbox-container .remove { 29 | width: 50%;box-sizing: border-box; 30 | } 31 | 32 | .bootstrap-duallistbox-container .btn-group .btn { 33 | border-bottom-left-radius: 0; 34 | border-bottom-right-radius: 0; 35 | } 36 | .bootstrap-duallistbox-container select { 37 | border-top-left-radius: 0; 38 | border-top-right-radius: 0; 39 | } 40 | 41 | .bootstrap-duallistbox-container .moveall, 42 | .bootstrap-duallistbox-container .removeall { 43 | width: 50%;box-sizing: border-box; 44 | } 45 | 46 | .bootstrap-duallistbox-container.bs2compatible .btn-group > .btn + .btn { 47 | margin-left: 0; 48 | } 49 | 50 | .bootstrap-duallistbox-container select { 51 | height: 300px; 52 | box-sizing: border-box; 53 | } 54 | .bootstrap-duallistbox-container select:focus{ 55 | border-color: #e5e6e7!important; 56 | } 57 | 58 | .bootstrap-duallistbox-container .filter { 59 | display: inline-block; 60 | width: 100%; 61 | height: 31px;margin-bottom:-1px; 62 | -webkit-box-sizing: border-box; 63 | -moz-box-sizing: border-box; 64 | } 65 | 66 | .bootstrap-duallistbox-container .filter.placeholder { 67 | color: #aaa; 68 | } 69 | 70 | .bootstrap-duallistbox-container.moveonselect .move, 71 | .bootstrap-duallistbox-container.moveonselect .remove { 72 | display:none; 73 | } 74 | 75 | .bootstrap-duallistbox-container.moveonselect .moveall, 76 | .bootstrap-duallistbox-container.moveonselect .removeall { 77 | width: 100%; 78 | } 79 | -------------------------------------------------------------------------------- /css/plugins/footable/fonts/footable.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/css/plugins/footable/fonts/footable.eot -------------------------------------------------------------------------------- /css/plugins/footable/fonts/footable.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/css/plugins/footable/fonts/footable.ttf -------------------------------------------------------------------------------- /css/plugins/footable/fonts/footable.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/css/plugins/footable/fonts/footable.woff -------------------------------------------------------------------------------- /css/plugins/fullcalendar/fullcalendar.print.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * FullCalendar v1.6.4 Print Stylesheet 3 | * Docs & License: http://arshaw.com/fullcalendar/ 4 | * (c) 2013 Adam Shaw 5 | */ 6 | 7 | /* 8 | * Include this stylesheet on your page to get a more printer-friendly calendar. 9 | * When including this stylesheet, use the media='print' attribute of the tag. 10 | * Make sure to include this stylesheet IN ADDITION to the regular fullcalendar.css. 11 | */ 12 | 13 | 14 | /* Events 15 | -----------------------------------------------------*/ 16 | 17 | .fc-event { 18 | background: #fff !important; 19 | color: #000 !important; 20 | } 21 | 22 | /* for vertical events */ 23 | 24 | .fc-event-bg { 25 | display: none !important; 26 | } 27 | 28 | .fc-event .ui-resizable-handle { 29 | display: none !important; 30 | } 31 | 32 | 33 | -------------------------------------------------------------------------------- /css/plugins/iCheck/custom.css: -------------------------------------------------------------------------------- 1 | /* iCheck plugin Square skin, green 2 | ----------------------------------- */ 3 | .icheckbox_square-green, 4 | .iradio_square-green { 5 | display: inline-block; 6 | *display: inline; 7 | vertical-align: middle; 8 | margin: 0; 9 | padding: 0; 10 | width: 22px; 11 | height: 22px; 12 | background: url(green.png) no-repeat; 13 | border: none; 14 | cursor: pointer; 15 | } 16 | 17 | .icheckbox_square-green { 18 | background-position: 0 0; 19 | } 20 | .icheckbox_square-green.hover { 21 | background-position: -24px 0; 22 | } 23 | .icheckbox_square-green.checked { 24 | background-position: -48px 0; 25 | } 26 | .icheckbox_square-green.disabled { 27 | background-position: -72px 0; 28 | cursor: default; 29 | } 30 | .icheckbox_square-green.checked.disabled { 31 | background-position: -96px 0; 32 | } 33 | 34 | .iradio_square-green { 35 | background-position: -120px 0; 36 | } 37 | .iradio_square-green.hover { 38 | background-position: -144px 0; 39 | } 40 | .iradio_square-green.checked { 41 | background-position: -168px 0; 42 | } 43 | .iradio_square-green.disabled { 44 | background-position: -192px 0; 45 | cursor: default; 46 | } 47 | .iradio_square-green.checked.disabled { 48 | background-position: -216px 0; 49 | } 50 | 51 | /* HiDPI support */ 52 | @media (-o-min-device-pixel-ratio: 5/4), (-webkit-min-device-pixel-ratio: 1.25), (min-resolution: 120dpi) { 53 | .icheckbox_square-green, 54 | .iradio_square-green { 55 | background-image: url(green@2x.png); 56 | -webkit-background-size: 240px 24px; 57 | background-size: 240px 24px; 58 | } 59 | } 60 | -------------------------------------------------------------------------------- /css/plugins/iCheck/green.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/css/plugins/iCheck/green.png -------------------------------------------------------------------------------- /css/plugins/iCheck/green@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/css/plugins/iCheck/green@2x.png -------------------------------------------------------------------------------- /css/plugins/images/sort_asc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/css/plugins/images/sort_asc.png -------------------------------------------------------------------------------- /css/plugins/images/sort_desc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/css/plugins/images/sort_desc.png -------------------------------------------------------------------------------- /css/plugins/images/sprite-skin-flat.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/css/plugins/images/sprite-skin-flat.png -------------------------------------------------------------------------------- /css/plugins/images/spritemap.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/css/plugins/images/spritemap.png -------------------------------------------------------------------------------- /css/plugins/images/spritemap@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/css/plugins/images/spritemap@2x.png -------------------------------------------------------------------------------- /css/plugins/ionRangeSlider/ion.rangeSlider.skinFlat.css: -------------------------------------------------------------------------------- 1 | /* Ion.RangeSlider, Flat UI Skin 2 | // css version 1.8.5 3 | // by Denis Ineshin | ionden.com 4 | // ===================================================================================================================*/ 5 | 6 | /* ===================================================================================================================== 7 | // Skin details */ 8 | 9 | .irs-line-mid, 10 | .irs-line-left, 11 | .irs-line-right, 12 | .irs-diapason, 13 | .irs-slider { 14 | background: url(../images/sprite-skin-flat.png) repeat-x; 15 | } 16 | 17 | .irs { 18 | height: 40px; 19 | } 20 | .irs-with-grid { 21 | height: 60px; 22 | } 23 | .irs-line { 24 | height: 12px; top: 25px; 25 | } 26 | .irs-line-left { 27 | height: 12px; 28 | background-position: 0 -30px; 29 | } 30 | .irs-line-mid { 31 | height: 12px; 32 | background-position: 0 0; 33 | } 34 | .irs-line-right { 35 | height: 12px; 36 | background-position: 100% -30px; 37 | } 38 | 39 | .irs-diapason { 40 | height: 12px; top: 25px; 41 | background-position: 0 -60px; 42 | } 43 | 44 | .irs-slider { 45 | width: 16px; height: 18px; 46 | top: 22px; 47 | background-position: 0 -90px; 48 | } 49 | #irs-active-slider, .irs-slider:hover { 50 | background-position: 0 -120px; 51 | } 52 | 53 | .irs-min, .irs-max { 54 | color: #999; 55 | font-size: 10px; line-height: 1.333; 56 | text-shadow: none; 57 | top: 0; padding: 1px 3px; 58 | background: #e1e4e9; 59 | border-radius: 4px; 60 | } 61 | 62 | .irs-from, .irs-to, .irs-single { 63 | color: #fff; 64 | font-size: 10px; line-height: 1.333; 65 | text-shadow: none; 66 | padding: 1px 5px; 67 | background: #ed5565; 68 | border-radius: 4px; 69 | } 70 | .irs-from:after, .irs-to:after, .irs-single:after { 71 | position: absolute; display: block; content: ""; 72 | bottom: -6px; left: 50%; 73 | width: 0; height: 0; 74 | margin-left: -3px; 75 | overflow: hidden; 76 | border: 3px solid transparent; 77 | border-top-color: #ed5565; 78 | } 79 | 80 | 81 | .irs-grid-pol { 82 | background: #e1e4e9; 83 | } 84 | .irs-grid-text { 85 | color: #999; 86 | } 87 | 88 | .irs-disabled { 89 | } 90 | -------------------------------------------------------------------------------- /css/plugins/jQueryUI/images/ui-bg_flat_0_aaaaaa_40x100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/css/plugins/jQueryUI/images/ui-bg_flat_0_aaaaaa_40x100.png -------------------------------------------------------------------------------- /css/plugins/jQueryUI/images/ui-bg_flat_75_ffffff_40x100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/css/plugins/jQueryUI/images/ui-bg_flat_75_ffffff_40x100.png -------------------------------------------------------------------------------- /css/plugins/jQueryUI/images/ui-icons_222222_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/css/plugins/jQueryUI/images/ui-icons_222222_256x240.png -------------------------------------------------------------------------------- /css/plugins/jQueryUI/images/ui-icons_454545_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/css/plugins/jQueryUI/images/ui-icons_454545_256x240.png -------------------------------------------------------------------------------- /css/plugins/jQueryUI/images/ui-icons_888888_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/css/plugins/jQueryUI/images/ui-icons_888888_256x240.png -------------------------------------------------------------------------------- /css/plugins/jsTree/32px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/css/plugins/jsTree/32px.png -------------------------------------------------------------------------------- /css/plugins/jsTree/throbber.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/css/plugins/jsTree/throbber.gif -------------------------------------------------------------------------------- /css/plugins/morris/morris-0.4.3.min.css: -------------------------------------------------------------------------------- 1 | .morris-hover{position:absolute;z-index:1000;}.morris-hover.morris-default-style{border-radius:10px;padding:6px;color:#666;background:rgba(255, 255, 255, 0.8);border:solid 2px rgba(230, 230, 230, 0.8);font-family:sans-serif;font-size:12px;text-align:center;}.morris-hover.morris-default-style .morris-hover-row-label{font-weight:bold;margin:0.25em 0;} 2 | .morris-hover.morris-default-style .morris-hover-point{white-space:nowrap;margin:0.1em 0;} 3 | -------------------------------------------------------------------------------- /css/plugins/multiselect/bootstrap-multiselect.css: -------------------------------------------------------------------------------- 1 | .multiselect-container{position:absolute;list-style-type:none;margin:0;padding:0}.multiselect-container .input-group{margin:5px}.multiselect-container>li{padding:0}.multiselect-container>li>a.multiselect-all label{font-weight:700}.multiselect-container>li.multiselect-group label{margin:0;padding:3px 20px 3px 20px;height:100%;font-weight:700}.multiselect-container>li.multiselect-group-clickable label{cursor:pointer}.multiselect-container>li>a{padding:0}.multiselect-container>li>a>label{margin:0;height:100%;cursor:pointer;font-weight:400;padding:3px 20px 3px 40px}.multiselect-container>li>a>label.radio,.multiselect-container>li>a>label.checkbox{margin:0}.multiselect-container>li>a>label>input[type=checkbox]{margin-bottom:5px}.btn-group>.btn-group:nth-child(2)>.multiselect.btn{border-top-left-radius:4px;border-bottom-left-radius:4px}.form-inline .multiselect-container label.checkbox,.form-inline .multiselect-container label.radio{padding:3px 20px 3px 40px}.form-inline .multiselect-container li a label.checkbox input[type=checkbox],.form-inline .multiselect-container li a label.radio input[type=radio]{margin-left:-20px;margin-right:0} 2 | -------------------------------------------------------------------------------- /css/plugins/summernote/font/summernote.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/css/plugins/summernote/font/summernote.eot -------------------------------------------------------------------------------- /css/plugins/summernote/font/summernote.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/css/plugins/summernote/font/summernote.ttf -------------------------------------------------------------------------------- /css/plugins/summernote/font/summernote.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/css/plugins/summernote/font/summernote.woff -------------------------------------------------------------------------------- /css/plugins/switchery/switchery.css: -------------------------------------------------------------------------------- 1 | /* 2 | * 3 | * Main stylesheet for Switchery. 4 | * http://abpetkov.github.io/switchery/ 5 | * 6 | */ 7 | 8 | .switchery { 9 | background-color: #fff; 10 | border: 1px solid #dfdfdf; 11 | border-radius: 20px; 12 | cursor: pointer; 13 | display: inline-block; 14 | height: 30px; 15 | position: relative; 16 | vertical-align: middle; 17 | width: 50px; 18 | 19 | -webkit-box-sizing: content-box; 20 | -moz-box-sizing: content-box; 21 | box-sizing: content-box; 22 | } 23 | 24 | .switchery > small { 25 | background: #fff; 26 | border-radius: 100%; 27 | box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4); 28 | height: 30px; 29 | position: absolute; 30 | top: 0; 31 | width: 30px; 32 | } 33 | -------------------------------------------------------------------------------- /css/plugins/treeview/bootstrap-treeview.css: -------------------------------------------------------------------------------- 1 | /* ========================================================= 2 | * bootstrap-treeview.css v1.0.0 3 | * ========================================================= 4 | * Copyright 2013 Jonathan Miles 5 | * Project URL : http://www.jondmiles.com/bootstrap-treeview 6 | * 7 | * Licensed under the Apache License, Version 2.0 (the "License"); 8 | * you may not use this file except in compliance with the License. 9 | * You may obtain a copy of the License at 10 | * 11 | * http://www.apache.org/licenses/LICENSE-2.0 12 | * 13 | * Unless required by applicable law or agreed to in writing, software 14 | * distributed under the License is distributed on an "AS IS" BASIS, 15 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | * See the License for the specific language governing permissions and 17 | * limitations under the License. 18 | * ========================================================= */ 19 | 20 | .list-group-item { 21 | cursor: pointer; 22 | } 23 | 24 | /*.list-group-item:hover { 25 | background-color: #f5f5f5; 26 | }*/ 27 | 28 | span.indent { 29 | margin-left: 10px; 30 | margin-right: 10px; 31 | } 32 | 33 | span.icon { 34 | margin-right: 5px; 35 | } 36 | -------------------------------------------------------------------------------- /css/plugins/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 | -------------------------------------------------------------------------------- /docs/img/index_4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/docs/img/index_4.png -------------------------------------------------------------------------------- /docs/img/page.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/docs/img/page.png -------------------------------------------------------------------------------- /docs/img/preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/docs/img/preview.png -------------------------------------------------------------------------------- /docs/img/rtl_support.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/docs/img/rtl_support.png -------------------------------------------------------------------------------- /docs/js/prettify.css: -------------------------------------------------------------------------------- 1 | .com { color: #93a1a1; } 2 | .lit { color: #195f91; } 3 | .pun, .opn, .clo { color: #93a1a1; } 4 | .fun { color: #dc322f; } 5 | .str, .atv { color: #D14; } 6 | .kwd, .linenums .tag { color: #1e347b; } 7 | .typ, .atn, .dec, .var { color: teal; } 8 | .pln { color: #48484c; } 9 | 10 | .prettyprint { 11 | padding: 8px; 12 | background-color: #f7f7f9; 13 | border: 1px solid #e1e1e8; 14 | } 15 | .prettyprint.linenums { 16 | -webkit-box-shadow: inset 40px 0 0 #fbfbfc, inset 41px 0 0 #ececf0; 17 | -moz-box-shadow: inset 40px 0 0 #fbfbfc, inset 41px 0 0 #ececf0; 18 | box-shadow: inset 40px 0 0 #fbfbfc, inset 41px 0 0 #ececf0; 19 | } 20 | 21 | /* Specify class=linenums on a pre to get line numbering */ 22 | ol.linenums { 23 | margin: 0 0 0 33px; /* IE indents via margin-left */ 24 | } 25 | ol.linenums li { 26 | padding-left: 12px; 27 | color: #bebec5; 28 | line-height: 18px; 29 | text-shadow: 0 1px 0 #fff; 30 | } 31 | -------------------------------------------------------------------------------- /empty_page.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | H+ 后台主题UI框架 - 空白页 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 |
25 |

标题

26 | 34 |
35 |
36 |
37 | 活动区域 38 |
39 |
40 |
41 | 42 |
43 |
44 |
45 |
46 |

这里是页面内容

47 | 48 |
49 | 您可以在这里添加栅格,参考首页及其他页面完成不同的布局 50 |
打开主页 51 |
52 |
53 |
54 |
55 |
56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | -------------------------------------------------------------------------------- /favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/favicon.ico -------------------------------------------------------------------------------- /fonts/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/fonts/FontAwesome.otf -------------------------------------------------------------------------------- /fonts/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/fonts/fontawesome-webfont.eot -------------------------------------------------------------------------------- /fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /fonts/fontawesome-webfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/fonts/fontawesome-webfont.woff2 -------------------------------------------------------------------------------- /fonts/glyphicons-halflings-regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/fonts/glyphicons-halflings-regular.eot -------------------------------------------------------------------------------- /fonts/glyphicons-halflings-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/fonts/glyphicons-halflings-regular.ttf -------------------------------------------------------------------------------- /fonts/glyphicons-halflings-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/fonts/glyphicons-halflings-regular.woff -------------------------------------------------------------------------------- /fonts/glyphicons-halflings-regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/fonts/glyphicons-halflings-regular.woff2 -------------------------------------------------------------------------------- /ie.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | H+已不再支持老旧的IE 7 | 8 | 9 | 10 | 11 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /img/a1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/img/a1.jpg -------------------------------------------------------------------------------- /img/a2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/img/a2.jpg -------------------------------------------------------------------------------- /img/a3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/img/a3.jpg -------------------------------------------------------------------------------- /img/a4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/img/a4.jpg -------------------------------------------------------------------------------- /img/a5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/img/a5.jpg -------------------------------------------------------------------------------- /img/a6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/img/a6.jpg -------------------------------------------------------------------------------- /img/a7.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/img/a7.jpg -------------------------------------------------------------------------------- /img/a8.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/img/a8.jpg -------------------------------------------------------------------------------- /img/a9.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/img/a9.jpg -------------------------------------------------------------------------------- /img/bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/img/bg.png -------------------------------------------------------------------------------- /img/browser.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/img/browser.png -------------------------------------------------------------------------------- /img/browser.psd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/img/browser.psd -------------------------------------------------------------------------------- /img/donate-qrcode.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/img/donate-qrcode.png -------------------------------------------------------------------------------- /img/iconfont-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/img/iconfont-logo.png -------------------------------------------------------------------------------- /img/icons.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/img/icons.png -------------------------------------------------------------------------------- /img/index.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/img/index.jpg -------------------------------------------------------------------------------- /img/index_4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/img/index_4.jpg -------------------------------------------------------------------------------- /img/loading-upload.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/img/loading-upload.gif -------------------------------------------------------------------------------- /img/locked.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/img/locked.png -------------------------------------------------------------------------------- /img/login-background.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/img/login-background.jpg -------------------------------------------------------------------------------- /img/p1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/img/p1.jpg -------------------------------------------------------------------------------- /img/p2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/img/p2.jpg -------------------------------------------------------------------------------- /img/p3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/img/p3.jpg -------------------------------------------------------------------------------- /img/p_big1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/img/p_big1.jpg -------------------------------------------------------------------------------- /img/p_big2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/img/p_big2.jpg -------------------------------------------------------------------------------- /img/p_big3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/img/p_big3.jpg -------------------------------------------------------------------------------- /img/profile.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/img/profile.jpg -------------------------------------------------------------------------------- /img/profile_big.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/img/profile_big.jpg -------------------------------------------------------------------------------- /img/profile_small.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/img/profile_small.jpg -------------------------------------------------------------------------------- /img/progress.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/img/progress.png -------------------------------------------------------------------------------- /img/qr_code.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/img/qr_code.png -------------------------------------------------------------------------------- /img/sprite-skin-flat.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/img/sprite-skin-flat.png -------------------------------------------------------------------------------- /img/success.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/img/success.png -------------------------------------------------------------------------------- /img/user.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/img/user.png -------------------------------------------------------------------------------- /img/webuploader.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/img/webuploader.png -------------------------------------------------------------------------------- /img/wenku_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/img/wenku_logo.png -------------------------------------------------------------------------------- /js/content.js: -------------------------------------------------------------------------------- 1 | var $parentNode = window.parent.document; 2 | 3 | function $childNode(name) { 4 | return window.frames[name] 5 | } 6 | 7 | // tooltips 8 | $('.tooltip-demo').tooltip({ 9 | selector: "[data-toggle=tooltip]", 10 | container: "body" 11 | }); 12 | 13 | // 使用animation.css修改Bootstrap Modal 14 | $('.modal').appendTo("body"); 15 | 16 | $("[data-toggle=popover]").popover(); 17 | 18 | //折叠ibox 19 | $('.collapse-link').click(function () { 20 | var ibox = $(this).closest('div.ibox'); 21 | var button = $(this).find('i'); 22 | var content = ibox.find('div.ibox-content'); 23 | content.slideToggle(200); 24 | button.toggleClass('fa-chevron-up').toggleClass('fa-chevron-down'); 25 | ibox.toggleClass('').toggleClass('border-bottom'); 26 | setTimeout(function () { 27 | ibox.resize(); 28 | ibox.find('[id^=map-]').resize(); 29 | }, 50); 30 | }); 31 | 32 | //关闭ibox 33 | $('.close-link').click(function () { 34 | var content = $(this).closest('div.ibox'); 35 | content.remove(); 36 | }); 37 | 38 | //判断当前页面是否在iframe中 39 | if (top == this) { 40 | var gohome = '
'; 41 | $('body').append(gohome); 42 | } 43 | 44 | //animation.css 45 | function animationHover(element, animation) { 46 | element = $(element); 47 | element.hover( 48 | function () { 49 | element.addClass('animated ' + animation); 50 | }, 51 | function () { 52 | //动画完成之前移除class 53 | window.setTimeout(function () { 54 | element.removeClass('animated ' + animation); 55 | }, 2000); 56 | }); 57 | } 58 | 59 | //拖动面板 60 | function WinMove() { 61 | var element = "[class*=col]"; 62 | var handle = ".ibox-title"; 63 | var connect = "[class*=col]"; 64 | $(element).sortable({ 65 | handle: handle, 66 | connectWith: connect, 67 | tolerance: 'pointer', 68 | forcePlaceholderSize: true, 69 | opacity: 0.8, 70 | }) 71 | .disableSelection(); 72 | }; 73 | -------------------------------------------------------------------------------- /js/demo/bootstrap_table_test2.json: -------------------------------------------------------------------------------- 1 | 2 | [ 3 | { 4 | "name": "asSelect", 5 | "star": 777, 6 | "license": "MIT", 7 | "description": "A jQuery plugin to select multiple elements with checkboxes and radio:)", 8 | "url": "https://github.com/amazingSurger/jquery-asSelect" 9 | }, 10 | { 11 | "name": "Bootstrap Table", 12 | "star": 778, 13 | "license": "MIT & XXX", 14 | "description": "Bootstrap table displays data in a tabular format and offers rich support to radio, checkbox, sort, pagination and so on. ", 15 | "url": "https://github.com/wenzhixin/bootstrap-table" 16 | }, 17 | { 18 | "name": "asDatepicker", 19 | "star": 779, 20 | "license": "MIT", 21 | "description": "A jQuery datepicker plugin for best .", 22 | "url": "https://github.com/amazingSurger/jquery-asDatepicker" 23 | }, 24 | { 25 | "name": "asColorpicker", 26 | "star": 780, 27 | "license": "MIT", 28 | "description": "A jQuery colorpicker for best .", 29 | "url": "https://github.com/amazingSurger/jquery-asColorpicker" 30 | } 31 | ] 32 | -------------------------------------------------------------------------------- /js/demo/peity-demo.js: -------------------------------------------------------------------------------- 1 | $(function() { 2 | $("span.pie").peity("pie", { 3 | fill: ['#1ab394', '#d7d7d7', '#ffffff'] 4 | }) 5 | 6 | $(".line").peity("line",{ 7 | fill: '#1ab394', 8 | stroke:'#169c81', 9 | }) 10 | 11 | $(".bar").peity("bar", { 12 | fill: ["#1ab394", "#d7d7d7"] 13 | }) 14 | 15 | $(".bar_dashboard").peity("bar", { 16 | fill: ["#1ab394", "#d7d7d7"], 17 | width:100 18 | }) 19 | 20 | var updatingChart = $(".updating-chart").peity("line", { fill: '#1ab394',stroke:'#169c81', width: 64 }) 21 | 22 | setInterval(function() { 23 | var random = Math.round(Math.random() * 10) 24 | var values = updatingChart.text().split(",") 25 | values.shift() 26 | values.push(random) 27 | 28 | updatingChart 29 | .text(values.join(",")) 30 | .change() 31 | }, 1000); 32 | 33 | }); 34 | -------------------------------------------------------------------------------- /js/demo/photos.json: -------------------------------------------------------------------------------- 1 | { 2 | "status": 1, 3 | "msg": "", 4 | "title": "JSON请求的相册", 5 | "id": 8, 6 | "start": 0, 7 | "data": [ 8 | { 9 | "name": "越来越喜欢观察微小的事物", 10 | "pid": 109, 11 | "src": "http://f8.topitme.com/8/99/b0/1100251118d0cb0998l.jpg", 12 | "thumb": "http://f8.topitme.com/8/99/b0/1100251118d0cb0998l.jpg", 13 | "area": [ 14 | 510, 15 | 287 16 | ] 17 | }, 18 | { 19 | "name": "决定,意味着对与错的并存", 20 | "pid": 110, 21 | "src": "http://t.williamgates.net/image-9A50_54058FA3.jpg", 22 | "thumb": "http://t.williamgates.net/image-9A50_54058FA3.jpg", 23 | "area": [ 24 | 690, 25 | 431 26 | ] 27 | }, 28 | { 29 | "name": "给人姐姐般温暖的的邻家女孩", 30 | "pid": 111, 31 | "src": "http://t.williamgates.net/image-E9BF_54058FA3.jpg", 32 | "thumb": "http://t.williamgates.net/image-E9BF_54058FA3.jpg", 33 | "area": [ 34 | 690, 35 | 431 36 | ] 37 | } 38 | ] 39 | } 40 | -------------------------------------------------------------------------------- /js/demo/sparkline-demo.js: -------------------------------------------------------------------------------- 1 | $(function () { 2 | $("#sparkline1").sparkline([34, 43, 43, 35, 44, 32, 44, 52, 25], { 3 | type: 'line', 4 | lineColor: '#17997f', 5 | fillColor: '#1ab394', 6 | }); 7 | $("#sparkline2").sparkline([5, 6, 7, 2, 0, -4, -2, 4], { 8 | type: 'bar', 9 | barColor: '#1ab394', 10 | negBarColor: '#c6c6c6'}); 11 | 12 | $("#sparkline3").sparkline([1, 1, 2], { 13 | type: 'pie', 14 | sliceColors: ['#1ab394', '#b3b3b3', '#e4f0fb']}); 15 | 16 | $("#sparkline4").sparkline([34, 43, 43, 35, 44, 32, 15, 22, 46, 33, 86, 54, 73, 53, 12, 53, 23, 65, 23, 63, 53, 42, 34, 56, 76, 15, 54, 23, 44], { 17 | type: 'line', 18 | lineColor: '#17997f', 19 | fillColor: '#ffffff', 20 | }); 21 | 22 | $("#sparkline5").sparkline([1, 1, 0, 1, -1, -1, 1, -1, 0, 0, 1, 1], { 23 | type: 'tristate', 24 | posBarColor: '#1ab394', 25 | negBarColor: '#bfbfbf'}); 26 | 27 | 28 | $("#sparkline6").sparkline([4, 6, 7, 7, 4, 3, 2, 1, 4, 4, 5, 6, 3, 4, 5, 8, 7, 6, 9, 3, 2, 4, 1, 5, 6, 4, 3, 7, ], { 29 | type: 'discrete', 30 | lineColor: '#1ab394'}); 31 | 32 | $("#sparkline7").sparkline([52, 12, 44], { 33 | type: 'pie', 34 | height: '150px', 35 | sliceColors: ['#1ab394', '#b3b3b3', '#e4f0fb']}); 36 | 37 | $("#sparkline8").sparkline([5, 6, 7, 2, 0, 4, 2, 4, 5, 7, 2, 4, 12, 14, 4, 2, 14, 12, 7], { 38 | type: 'bar', 39 | barWidth: 8, 40 | height: '150px', 41 | barColor: '#1ab394', 42 | negBarColor: '#c6c6c6'}); 43 | 44 | $("#sparkline9").sparkline([34, 43, 43, 35, 44, 32, 15, 22, 46, 33, 86, 54, 73, 53, 12, 53, 23, 65, 23, 63, 53, 42, 34, 56, 76, 15, 54, 23, 44], { 45 | type: 'line', 46 | lineWidth: 1, 47 | height: '150px', 48 | lineColor: '#17997f', 49 | fillColor: '#ffffff', 50 | }); 51 | }); 52 | -------------------------------------------------------------------------------- /js/demo/table_base.json: -------------------------------------------------------------------------------- 1 | [{ 2 | "Tid": "1", 3 | "First": "奔波儿灞", 4 | "sex": "男", 5 | "Score": "50" 6 | }, { 7 | "Tid": "2", 8 | "First": "灞波儿奔", 9 | "sex": "男", 10 | "Score": "94" 11 | }, { 12 | "Tid": "3", 13 | "First": "作家崔成浩", 14 | "sex": "男", 15 | "Score": "80" 16 | }, { 17 | "Tid": "4", 18 | "First": "韩寒", 19 | "sex": "男", 20 | "Score": "67" 21 | }, { 22 | "Tid": "5", 23 | "First": "郭敬明", 24 | "sex": "男", 25 | "Score": "100" 26 | }, { 27 | "Tid": "6", 28 | "First": "马云", 29 | "sex": "男", 30 | "Score": "77" 31 | }, { 32 | "Tid": "7", 33 | "First": "范爷", 34 | "sex": "女", 35 | "Score": "87" 36 | }] 37 | -------------------------------------------------------------------------------- /js/plugins/bootstrap-table/bootstrap-table-mobile.min.js: -------------------------------------------------------------------------------- 1 | /* 2 | * bootstrap-table - v1.11.0 - 2016-07-02 3 | * https://github.com/wenzhixin/bootstrap-table 4 | * Copyright (c) 2016 zhixin wen 5 | * Licensed MIT License 6 | */ 7 | !function(a){"use strict";var b=function(b,c){b.options.columnsHidden.length>0&&a.each(b.columns,function(d,e){-1!==b.options.columnsHidden.indexOf(e.field)&&e.visible!==c&&b.toggleColumn(a.fn.bootstrapTable.utils.getFieldIndex(b.columns,e.field),c,!0)})},c=function(a){(a.options.height||a.options.showFooter)&&setTimeout(function(){a.resetView.call(a)},1)},d=function(a,b,d){a.options.minHeight?b<=a.options.minWidth&&d<=a.options.minHeight?e(a):b>a.options.minWidth&&d>a.options.minHeight&&f(a):b<=a.options.minWidth?e(a):b>a.options.minWidth&&f(a),c(a)},e=function(a){g(a,!1),b(a,!1)},f=function(a){g(a,!0),b(a,!0)},g=function(a,b){a.options.cardView=b,a.toggleView()},h=function(a,b){var c;return function(){var d=this,e=arguments,f=function(){c=null,a.apply(d,e)};clearTimeout(c),c=setTimeout(f,b)}};a.extend(a.fn.bootstrapTable.defaults,{mobileResponsive:!1,minWidth:562,minHeight:void 0,heightThreshold:100,checkOnInit:!0,columnsHidden:[]});var i=a.fn.bootstrapTable.Constructor,j=i.prototype.init;i.prototype.init=function(){if(j.apply(this,Array.prototype.slice.apply(arguments)),this.options.mobileResponsive&&this.options.minWidth){this.options.minWidth<100&&this.options.resizable&&(console.log("The minWidth when the resizable extension is active should be greater or equal than 100"),this.options.minWidth=100);var b=this,c={width:a(window).width(),height:a(window).height()};if(a(window).on("resize orientationchange",h(function(){var e=a(this).height(),f=a(this).width();(Math.abs(c.height-e)>b.options.heightThreshold||c.width!=f)&&(d(b,f,e),c={width:f,height:e})},200)),this.options.checkOnInit){var e=a(window).height(),f=a(window).width();d(this,f,e),c={width:f,height:e}}}}}(jQuery); -------------------------------------------------------------------------------- /js/plugins/bootstrap-table/locale/bootstrap-table-zh-CN.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Bootstrap Table Chinese translation 3 | * Author: Zhixin Wen 4 | */ 5 | (function ($) { 6 | 'use strict'; 7 | 8 | $.fn.bootstrapTable.locales['zh-CN'] = { 9 | formatLoadingMessage: function () { 10 | return '正在努力地加载数据中,请稍候……'; 11 | }, 12 | formatRecordsPerPage: function (pageNumber) { 13 | return '每页显示 ' + pageNumber + ' 条记录'; 14 | }, 15 | formatShowingRows: function (pageFrom, pageTo, totalRows) { 16 | return '显示第 ' + pageFrom + ' 到第 ' + pageTo + ' 条记录,总共 ' + totalRows + ' 条记录'; 17 | }, 18 | formatSearch: function () { 19 | return '搜索'; 20 | }, 21 | formatNoMatches: function () { 22 | return '没有找到匹配的记录'; 23 | }, 24 | formatPaginationSwitch: function () { 25 | return '隐藏/显示分页'; 26 | }, 27 | formatRefresh: function () { 28 | return '刷新'; 29 | }, 30 | formatToggle: function () { 31 | return '切换'; 32 | }, 33 | formatColumns: function () { 34 | return '列'; 35 | }, 36 | formatExport: function () { 37 | return '导出数据'; 38 | }, 39 | formatClearFilters: function () { 40 | return '清空过滤'; 41 | } 42 | }; 43 | 44 | $.extend($.fn.bootstrapTable.defaults, $.fn.bootstrapTable.locales['zh-CN']); 45 | 46 | })(jQuery); -------------------------------------------------------------------------------- /js/plugins/bootstrap-table/locale/bootstrap-table-zh-CN.min.js: -------------------------------------------------------------------------------- 1 | /* 2 | * bootstrap-table - v1.11.0 - 2016-07-02 3 | * https://github.com/wenzhixin/bootstrap-table 4 | * Copyright (c) 2016 zhixin wen 5 | * Licensed MIT License 6 | */ 7 | !function(a){"use strict";a.fn.bootstrapTable.locales["zh-CN"]={formatLoadingMessage:function(){return"正在努力地加载数据中,请稍候……"},formatRecordsPerPage:function(a){return"每页显示 "+a+" 条记录"},formatShowingRows:function(a,b,c){return"显示第 "+a+" 到第 "+b+" 条记录,总共 "+c+" 条记录"},formatSearch:function(){return"搜索"},formatNoMatches:function(){return"没有找到匹配的记录"},formatPaginationSwitch:function(){return"隐藏/显示分页"},formatRefresh:function(){return"刷新"},formatToggle:function(){return"切换"},formatColumns:function(){return"列"},formatExport:function(){return"导出数据"},formatClearFilters:function(){return"清空过滤"}},a.extend(a.fn.bootstrapTable.defaults,a.fn.bootstrapTable.locales["zh-CN"])}(jQuery); -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/apl/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: APL mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 14 | 27 | 28 |
29 |

APL mode

30 |
56 | 57 | 64 | 65 |

Simple mode that tries to handle APL as well as it can.

66 |

It attempts to label functions/operators based upon 67 | monadic/dyadic usage (but this is far from fully fleshed out). 68 | This means there are meaningful classnames so hover states can 69 | have popups etc.

70 | 71 |

MIME types defined: text/apl (APL code)

72 |
73 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/css/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: CSS mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 27 | 28 |
29 |

CSS mode

30 |
65 | 70 | 71 |

MIME types defined: text/css, text/x-scss (demo), text/x-less (demo).

72 | 73 |

Parsing/Highlighting Tests: normal, verbose.

74 | 75 |
76 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/css/less_test.js: -------------------------------------------------------------------------------- 1 | // CodeMirror, copyright (c) by Marijn Haverbeke and others 2 | // Distributed under an MIT license: http://codemirror.net/LICENSE 3 | 4 | (function() { 5 | "use strict"; 6 | 7 | var mode = CodeMirror.getMode({indentUnit: 2}, "text/x-less"); 8 | function MT(name) { test.mode(name, mode, Array.prototype.slice.call(arguments, 1), "less"); } 9 | 10 | MT("variable", 11 | "[variable-2 @base]: [atom #f04615];", 12 | "[qualifier .class] {", 13 | " [property width]: [variable percentage]([number 0.5]); [comment // returns `50%`]", 14 | " [property color]: [variable saturate]([variable-2 @base], [number 5%]);", 15 | "}"); 16 | 17 | MT("amp", 18 | "[qualifier .child], [qualifier .sibling] {", 19 | " [qualifier .parent] [atom &] {", 20 | " [property color]: [keyword black];", 21 | " }", 22 | " [atom &] + [atom &] {", 23 | " [property color]: [keyword red];", 24 | " }", 25 | "}"); 26 | 27 | MT("mixin", 28 | "[qualifier .mixin] ([variable dark]; [variable-2 @color]) {", 29 | " [property color]: [variable darken]([variable-2 @color], [number 10%]);", 30 | "}", 31 | "[qualifier .mixin] ([variable light]; [variable-2 @color]) {", 32 | " [property color]: [variable lighten]([variable-2 @color], [number 10%]);", 33 | "}", 34 | "[qualifier .mixin] ([variable-2 @_]; [variable-2 @color]) {", 35 | " [property display]: [atom block];", 36 | "}", 37 | "[variable-2 @switch]: [variable light];", 38 | "[qualifier .class] {", 39 | " [qualifier .mixin]([variable-2 @switch]; [atom #888]);", 40 | "}"); 41 | 42 | MT("nest", 43 | "[qualifier .one] {", 44 | " [def @media] ([property width]: [number 400px]) {", 45 | " [property font-size]: [number 1.2em];", 46 | " [def @media] [attribute print] [keyword and] [property color] {", 47 | " [property color]: [keyword blue];", 48 | " }", 49 | " }", 50 | "}"); 51 | })(); 52 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/cypher/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: Cypher Mode for CodeMirror 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 17 | 30 | 31 |
32 |

Cypher Mode for CodeMirror

33 |
34 | 40 |
41 |

MIME types defined: 42 | application/x-cypher-query 43 |

44 | 62 | 63 |
64 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/dart/dart.js: -------------------------------------------------------------------------------- 1 | // CodeMirror, copyright (c) by Marijn Haverbeke and others 2 | // Distributed under an MIT license: http://codemirror.net/LICENSE 3 | 4 | (function(mod) { 5 | if (typeof exports == "object" && typeof module == "object") // CommonJS 6 | mod(require("../../lib/codemirror"), require("../clike/clike")); 7 | else if (typeof define == "function" && define.amd) // AMD 8 | define(["../../lib/codemirror", "../clike/clike"], mod); 9 | else // Plain browser env 10 | mod(CodeMirror); 11 | })(function(CodeMirror) { 12 | "use strict"; 13 | 14 | var keywords = ("this super static final const abstract class extends external factory " + 15 | "implements get native operator set typedef with enum throw rethrow " + 16 | "assert break case continue default in return new deferred async await " + 17 | "try catch finally do else for if switch while import library export " + 18 | "part of show hide is").split(" "); 19 | var blockKeywords = "try catch finally do else for if switch while".split(" "); 20 | var atoms = "true false null".split(" "); 21 | var builtins = "void bool num int double dynamic var String".split(" "); 22 | 23 | function set(words) { 24 | var obj = {}; 25 | for (var i = 0; i < words.length; ++i) obj[words[i]] = true; 26 | return obj; 27 | } 28 | 29 | CodeMirror.defineMIME("application/dart", { 30 | name: "clike", 31 | keywords: set(keywords), 32 | multiLineStrings: true, 33 | blockKeywords: set(blockKeywords), 34 | builtin: set(builtins), 35 | atoms: set(atoms), 36 | hooks: { 37 | "@": function(stream) { 38 | stream.eatWhile(/[\w\$_]/); 39 | return "meta"; 40 | } 41 | } 42 | }); 43 | 44 | CodeMirror.registerHelper("hintWords", "application/dart", keywords.concat(atoms).concat(builtins)); 45 | 46 | // This is needed to make loading through meta.js work. 47 | CodeMirror.defineMode("dart", function(conf) { 48 | return CodeMirror.getMode(conf, "application/dart"); 49 | }, "clike"); 50 | }); 51 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/dart/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: Dart mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 24 | 25 |
26 |

Dart mode

27 |
28 | 62 |
63 | 64 | 70 | 71 |
72 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/diff/diff.js: -------------------------------------------------------------------------------- 1 | // CodeMirror, copyright (c) by Marijn Haverbeke and others 2 | // Distributed under an MIT license: http://codemirror.net/LICENSE 3 | 4 | (function(mod) { 5 | if (typeof exports == "object" && typeof module == "object") // CommonJS 6 | mod(require("../../lib/codemirror")); 7 | else if (typeof define == "function" && define.amd) // AMD 8 | define(["../../lib/codemirror"], mod); 9 | else // Plain browser env 10 | mod(CodeMirror); 11 | })(function(CodeMirror) { 12 | "use strict"; 13 | 14 | CodeMirror.defineMode("diff", function() { 15 | 16 | var TOKEN_NAMES = { 17 | '+': 'positive', 18 | '-': 'negative', 19 | '@': 'meta' 20 | }; 21 | 22 | return { 23 | token: function(stream) { 24 | var tw_pos = stream.string.search(/[\t ]+?$/); 25 | 26 | if (!stream.sol() || tw_pos === 0) { 27 | stream.skipToEnd(); 28 | return ("error " + ( 29 | TOKEN_NAMES[stream.string.charAt(0)] || '')).replace(/ $/, ''); 30 | } 31 | 32 | var token_name = TOKEN_NAMES[stream.peek()] || stream.skipToEnd(); 33 | 34 | if (tw_pos === -1) { 35 | stream.skipToEnd(); 36 | } else { 37 | stream.pos = tw_pos; 38 | } 39 | 40 | return token_name; 41 | } 42 | }; 43 | }); 44 | 45 | CodeMirror.defineMIME("text/x-diff", "diff"); 46 | 47 | }); 48 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/django/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: Django template mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 27 | 28 |
29 |

Django template mode

30 |
50 | 51 | 59 | 60 |

Mode for HTML with embedded Django template markup.

61 | 62 |

MIME types defined: text/x-django

63 |
64 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/dockerfile/dockerfile.js: -------------------------------------------------------------------------------- 1 | // CodeMirror, copyright (c) by Marijn Haverbeke and others 2 | // Distributed under an MIT license: http://codemirror.net/LICENSE 3 | 4 | (function(mod) { 5 | if (typeof exports == "object" && typeof module == "object") // CommonJS 6 | mod(require("../../lib/codemirror"), require("../../addon/mode/simple")); 7 | else if (typeof define == "function" && define.amd) // AMD 8 | define(["../../lib/codemirror", "../../addon/mode/simple"], mod); 9 | else // Plain browser env 10 | mod(CodeMirror); 11 | })(function(CodeMirror) { 12 | "use strict"; 13 | 14 | // Collect all Dockerfile directives 15 | var instructions = ["from", "maintainer", "run", "cmd", "expose", "env", 16 | "add", "copy", "entrypoint", "volume", "user", 17 | "workdir", "onbuild"], 18 | instructionRegex = "(" + instructions.join('|') + ")", 19 | instructionOnlyLine = new RegExp(instructionRegex + "\\s*$", "i"), 20 | instructionWithArguments = new RegExp(instructionRegex + "(\\s+)", "i"); 21 | 22 | CodeMirror.defineSimpleMode("dockerfile", { 23 | start: [ 24 | // Block comment: This is a line starting with a comment 25 | { 26 | regex: /#.*$/, 27 | token: "comment" 28 | }, 29 | // Highlight an instruction without any arguments (for convenience) 30 | { 31 | regex: instructionOnlyLine, 32 | token: "variable-2" 33 | }, 34 | // Highlight an instruction followed by arguments 35 | { 36 | regex: instructionWithArguments, 37 | token: ["variable-2", null], 38 | next: "arguments" 39 | }, 40 | { 41 | regex: /./, 42 | token: null 43 | } 44 | ], 45 | arguments: [ 46 | { 47 | // Line comment without instruction arguments is an error 48 | regex: /#.*$/, 49 | token: "error", 50 | next: "start" 51 | }, 52 | { 53 | regex: /[^#]+\\$/, 54 | token: null 55 | }, 56 | { 57 | // Match everything except for the inline comment 58 | regex: /[^#]+/, 59 | token: null, 60 | next: "start" 61 | }, 62 | { 63 | regex: /$/, 64 | token: null, 65 | next: "start" 66 | }, 67 | // Fail safe return to start 68 | { 69 | token: null, 70 | next: "start" 71 | } 72 | ] 73 | }); 74 | 75 | CodeMirror.defineMIME("text/x-dockerfile", "dockerfile"); 76 | }); 77 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/dockerfile/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: Dockerfile mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 25 | 26 |
27 |

Dockerfile mode

28 |
61 | 62 | 68 | 69 |

Dockerfile syntax highlighting for CodeMirror. Depends on 70 | the simplemode addon.

71 | 72 |

MIME types defined: text/x-dockerfile

73 |
74 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/ecl/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: ECL mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 24 | 25 |
26 |

ECL mode

27 |
45 | 48 | 49 |

Based on CodeMirror's clike mode. For more information see HPCC Systems web site.

50 |

MIME types defined: text/x-ecl.

51 | 52 |
53 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/erlang/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: Erlang mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 26 | 27 |
28 |

Erlang mode

29 |
65 | 66 | 74 | 75 |

MIME types defined: text/x-erlang.

76 |
77 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/gas/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: Gas mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 24 | 25 |
26 |

Gas mode

27 |
28 | 50 |
51 | 52 | 58 | 59 |

Handles AT&T assembler syntax (more specifically this handles 60 | the GNU Assembler (gas) syntax.) 61 | It takes a single optional configuration parameter: 62 | architecture, which can be one of "ARM", 63 | "ARMv6" or "x86". 64 | Including the parameter adds syntax for the registers and special 65 | directives for the supplied architecture. 66 | 67 |

MIME types defined: text/x-gas

68 |
69 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/gherkin/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: Gherkin mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 24 | 25 |
26 |

Gherkin mode

27 |
42 | 45 | 46 |

MIME types defined: text/x-feature.

47 | 48 |
49 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/go/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: Go mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 26 | 27 |
28 |

Go mode

29 |
72 | 73 | 83 | 84 |

MIME type: text/x-go

85 |
86 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/groovy/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: Groovy mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 25 | 26 |
27 |

Groovy mode

28 |
74 | 75 | 82 | 83 |

MIME types defined: text/x-groovy

84 |
85 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/haml/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: HAML mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 28 | 29 |
30 |

HAML mode

31 |
68 | 74 | 75 |

MIME types defined: text/x-haml.

76 | 77 |

Parsing/Highlighting Tests: normal, verbose.

78 | 79 |
80 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/haskell/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: Haskell mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 26 | 27 |
28 |

Haskell mode

29 |
63 | 64 | 71 | 72 |

MIME types defined: text/x-haskell.

73 |
74 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/htmlembedded/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: Html Embedded Scripts mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 28 | 29 |
30 |

Html Embedded Scripts mode

31 |
43 | 44 | 52 | 53 |

Mode for html embedded scripts like JSP and ASP.NET. Depends on HtmlMixed which in turn depends on 54 | JavaScript, CSS and XML.
Other dependancies include those of the scriping language chosen.

55 | 56 |

MIME types defined: application/x-aspx (ASP.NET), 57 | application/x-ejs (Embedded Javascript), application/x-jsp (JavaServer Pages)

58 |
59 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/http/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: HTTP mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 24 | 25 |
26 |

HTTP mode

27 | 28 | 29 |
39 | 40 | 43 | 44 |

MIME types defined: message/http.

45 |
46 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/idl/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: IDL mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 24 | 25 |
26 |

IDL mode

27 | 28 |
52 | 62 | 63 |

MIME types defined: text/x-idl.

64 |
65 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/javascript/json-ld.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: JSON-LD mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 27 | 28 |
29 |

JSON-LD mode

30 | 31 | 32 |
61 | 62 | 70 | 71 |

This is a specialization of the JavaScript mode.

72 |
73 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/javascript/typescript.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: TypeScript mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 24 | 25 |
26 |

TypeScript mode

27 | 28 | 29 |
51 | 52 | 59 | 60 |

This is a specialization of the JavaScript mode.

61 |
62 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/jinja2/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: Jinja2 mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 24 | 25 |
26 |

Jinja2 mode

27 |
49 | 54 |
55 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/lua/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: Lua mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 26 | 27 |
28 |

Lua mode

29 |
70 | 76 | 77 |

Loosely based on Franciszek 78 | Wawrzak's CodeMirror 79 | 1 mode. One configuration parameter is 80 | supported, specials, to which you can provide an 81 | array of strings to have those identifiers highlighted with 82 | the lua-special style.

83 |

MIME types defined: text/x-lua.

84 | 85 |
86 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/modelica/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: Modelica mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 27 | 28 |
29 |

Modelica mode

30 | 31 |
52 | 53 | 62 | 63 |

Simple mode that tries to handle Modelica as well as it can.

64 | 65 |

MIME types defined: text/x-modelica 66 | (Modlica code).

67 |
68 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/ntriples/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: NTriples mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 15 | 28 | 29 |
30 |

NTriples mode

31 |
32 | 39 |
40 | 41 | 44 |

MIME types defined: text/n-triples.

45 |
46 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/octave/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: Octave mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 24 | 25 |
26 |

Octave mode

27 | 28 |
71 | 81 | 82 |

MIME types defined: text/x-octave.

83 |
84 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/pascal/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: Pascal mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 24 | 25 |
26 |

Pascal mode

27 | 28 | 29 |
52 | 53 | 59 | 60 |

MIME types defined: text/x-pascal.

61 |
62 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/pegjs/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | CodeMirror: PEG.js Mode 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 28 | 29 |
30 |

PEG.js Mode

31 |
56 | 62 |

The PEG.js Mode

63 |

Created by Forbes Lindesay.

64 |
65 | 66 | 67 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/perl/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: Perl mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 24 | 25 |
26 |

Perl mode

27 | 28 | 29 |
67 | 68 | 73 | 74 |

MIME types defined: text/x-perl.

75 |
76 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/php/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: PHP mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 30 | 31 |
32 |

PHP mode

33 |
48 | 49 | 58 | 59 |

Simple HTML/PHP mode based on 60 | the C-like mode. Depends on XML, 61 | JavaScript, CSS, HTMLMixed, and C-like modes.

62 | 63 |

MIME types defined: application/x-httpd-php (HTML with PHP code), text/x-php (plain, non-wrapped PHP code).

64 |
65 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/pig/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: Pig Latin mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 24 | 25 |
26 |

Pig Latin mode

27 |
39 | 40 | 47 | 48 |

49 | Simple mode that handles Pig Latin language. 50 |

51 | 52 |

MIME type defined: text/x-pig 53 | (PIG code) 54 | 55 |

56 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/properties/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: Properties files mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 24 | 25 |
26 |

Properties files mode

27 |
46 | 49 | 50 |

MIME types defined: text/x-properties, 51 | text/x-ini.

52 | 53 |
54 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/properties/properties.js: -------------------------------------------------------------------------------- 1 | // CodeMirror, copyright (c) by Marijn Haverbeke and others 2 | // Distributed under an MIT license: http://codemirror.net/LICENSE 3 | 4 | (function(mod) { 5 | if (typeof exports == "object" && typeof module == "object") // CommonJS 6 | mod(require("../../lib/codemirror")); 7 | else if (typeof define == "function" && define.amd) // AMD 8 | define(["../../lib/codemirror"], mod); 9 | else // Plain browser env 10 | mod(CodeMirror); 11 | })(function(CodeMirror) { 12 | "use strict"; 13 | 14 | CodeMirror.defineMode("properties", function() { 15 | return { 16 | token: function(stream, state) { 17 | var sol = stream.sol() || state.afterSection; 18 | var eol = stream.eol(); 19 | 20 | state.afterSection = false; 21 | 22 | if (sol) { 23 | if (state.nextMultiline) { 24 | state.inMultiline = true; 25 | state.nextMultiline = false; 26 | } else { 27 | state.position = "def"; 28 | } 29 | } 30 | 31 | if (eol && ! state.nextMultiline) { 32 | state.inMultiline = false; 33 | state.position = "def"; 34 | } 35 | 36 | if (sol) { 37 | while(stream.eatSpace()); 38 | } 39 | 40 | var ch = stream.next(); 41 | 42 | if (sol && (ch === "#" || ch === "!" || ch === ";")) { 43 | state.position = "comment"; 44 | stream.skipToEnd(); 45 | return "comment"; 46 | } else if (sol && ch === "[") { 47 | state.afterSection = true; 48 | stream.skipTo("]"); stream.eat("]"); 49 | return "header"; 50 | } else if (ch === "=" || ch === ":") { 51 | state.position = "quote"; 52 | return null; 53 | } else if (ch === "\\" && state.position === "quote") { 54 | if (stream.next() !== "u") { // u = Unicode sequence \u1234 55 | // Multiline value 56 | state.nextMultiline = true; 57 | } 58 | } 59 | 60 | return state.position; 61 | }, 62 | 63 | startState: function() { 64 | return { 65 | position : "def", // Current position, "def", "quote" or "comment" 66 | nextMultiline : false, // Is the next line multiline value 67 | inMultiline : false, // Is the current line a multiline value 68 | afterSection : false // Did we just open a section 69 | }; 70 | } 71 | 72 | }; 73 | }); 74 | 75 | CodeMirror.defineMIME("text/x-properties", "properties"); 76 | CodeMirror.defineMIME("text/x-ini", "properties"); 77 | 78 | }); 79 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/rpm/changes/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: RPM changes mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 26 | 27 |
28 |

RPM changes mode

29 | 30 |
57 | 64 | 65 |

MIME types defined: text/x-rpm-changes.

66 |
67 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/ruby/test.js: -------------------------------------------------------------------------------- 1 | // CodeMirror, copyright (c) by Marijn Haverbeke and others 2 | // Distributed under an MIT license: http://codemirror.net/LICENSE 3 | 4 | (function() { 5 | var mode = CodeMirror.getMode({indentUnit: 2}, "ruby"); 6 | function MT(name) { test.mode(name, mode, Array.prototype.slice.call(arguments, 1)); } 7 | 8 | MT("divide_equal_operator", 9 | "[variable bar] [operator /=] [variable foo]"); 10 | 11 | MT("divide_equal_operator_no_spacing", 12 | "[variable foo][operator /=][number 42]"); 13 | 14 | })(); 15 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/rust/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: Rust mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 24 | 25 |
26 |

Rust mode

27 | 28 | 29 |
52 | 53 | 58 | 59 |

MIME types defined: text/x-rustsrc.

60 |
61 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/sass/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: Sass mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 25 | 26 |
27 |

Sass mode

28 |
58 | 64 | 65 |

MIME types defined: text/x-sass.

66 |
67 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/shell/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: Shell mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 14 | 27 | 28 |
29 |

Shell mode

30 | 31 | 32 | 56 | 57 | 64 | 65 |

MIME types defined: text/x-sh.

66 |
67 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/shell/test.js: -------------------------------------------------------------------------------- 1 | // CodeMirror, copyright (c) by Marijn Haverbeke and others 2 | // Distributed under an MIT license: http://codemirror.net/LICENSE 3 | 4 | (function() { 5 | var mode = CodeMirror.getMode({}, "shell"); 6 | function MT(name) { test.mode(name, mode, Array.prototype.slice.call(arguments, 1)); } 7 | 8 | MT("var", 9 | "text [def $var] text"); 10 | MT("varBraces", 11 | "text[def ${var}]text"); 12 | MT("varVar", 13 | "text [def $a$b] text"); 14 | MT("varBracesVarBraces", 15 | "text[def ${a}${b}]text"); 16 | 17 | MT("singleQuotedVar", 18 | "[string 'text $var text']"); 19 | MT("singleQuotedVarBraces", 20 | "[string 'text ${var} text']"); 21 | 22 | MT("doubleQuotedVar", 23 | '[string "text ][def $var][string text"]'); 24 | MT("doubleQuotedVarBraces", 25 | '[string "text][def ${var}][string text"]'); 26 | MT("doubleQuotedVarPunct", 27 | '[string "text ][def $@][string text"]'); 28 | MT("doubleQuotedVarVar", 29 | '[string "][def $a$b][string "]'); 30 | MT("doubleQuotedVarBracesVarBraces", 31 | '[string "][def ${a}${b}][string "]'); 32 | 33 | MT("notAString", 34 | "text\\'text"); 35 | MT("escapes", 36 | "outside\\'\\\"\\`\\\\[string \"inside\\`\\'\\\"\\\\`\\$notAVar\"]outside\\$\\(notASubShell\\)"); 37 | 38 | MT("subshell", 39 | "[builtin echo] [quote $(whoami)] s log, stardate [quote `date`]."); 40 | MT("doubleQuotedSubshell", 41 | "[builtin echo] [string \"][quote $(whoami)][string 's log, stardate `date`.\"]"); 42 | 43 | MT("hashbang", 44 | "[meta #!/bin/bash]"); 45 | MT("comment", 46 | "text [comment # Blurb]"); 47 | 48 | MT("numbers", 49 | "[number 0] [number 1] [number 2]"); 50 | MT("keywords", 51 | "[keyword while] [atom true]; [keyword do]", 52 | " [builtin sleep] [number 3]", 53 | "[keyword done]"); 54 | MT("options", 55 | "[builtin ls] [attribute -l] [attribute --human-readable]"); 56 | MT("operator", 57 | "[def var][operator =]value"); 58 | })(); 59 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/smalltalk/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: Smalltalk mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 16 | 29 | 30 |
31 |

Smalltalk mode

32 |
55 | 56 | 64 | 65 |

Simple Smalltalk mode.

66 | 67 |

MIME types defined: text/x-stsrc.

68 |
69 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/solr/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: Solr mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 20 | 33 | 34 |
35 |

Solr mode

36 | 37 |
38 | 47 |
48 | 49 | 55 | 56 |

MIME types defined: text/x-solr.

57 |
58 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/soy/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: Soy (Closure Template) mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 29 | 30 |
31 |

Soy (Closure Template) mode

32 |
55 | 56 | 65 | 66 |

A mode for Closure Templates (Soy).

67 |

MIME type defined: text/x-soy.

68 |
69 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/sparql/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: SPARQL mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 25 | 26 |
27 |

SPARQL mode

28 |
52 | 58 | 59 |

MIME types defined: application/sparql-query.

60 | 61 |
62 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/spreadsheet/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: Spreadsheet mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 25 | 26 |
27 |

Spreadsheet mode

28 |
29 | 30 | 37 | 38 |

MIME types defined: text/x-spreadsheet.

39 | 40 |

The Spreadsheet Mode

41 |

Created by Robert Plummer

42 |
43 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/tiddlywiki/tiddlywiki.css: -------------------------------------------------------------------------------- 1 | span.cm-underlined { 2 | text-decoration: underline; 3 | } 4 | span.cm-strikethrough { 5 | text-decoration: line-through; 6 | } 7 | span.cm-brace { 8 | color: #170; 9 | font-weight: bold; 10 | } 11 | span.cm-table { 12 | color: blue; 13 | font-weight: bold; 14 | } 15 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/tiki/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: Tiki wiki mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 25 | 26 |
27 |

Tiki wiki mode

28 | 29 | 30 |
87 | 88 | 94 | 95 |
96 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/tiki/tiki.css: -------------------------------------------------------------------------------- 1 | .cm-tw-syntaxerror { 2 | color: #FFF; 3 | background-color: #900; 4 | } 5 | 6 | .cm-tw-deleted { 7 | text-decoration: line-through; 8 | } 9 | 10 | .cm-tw-header5 { 11 | font-weight: bold; 12 | } 13 | .cm-tw-listitem:first-child { /*Added first child to fix duplicate padding when highlighting*/ 14 | padding-left: 10px; 15 | } 16 | 17 | .cm-tw-box { 18 | border-top-width: 0px ! important; 19 | border-style: solid; 20 | border-width: 1px; 21 | border-color: inherit; 22 | } 23 | 24 | .cm-tw-underline { 25 | text-decoration: underline; 26 | } 27 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/toml/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: TOML Mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 24 | 25 |
26 |

TOML Mode

27 |
64 | 70 |

The TOML Mode

71 |

Created by Forbes Lindesay.

72 |

MIME type defined: text/x-toml.

73 |
74 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/tornado/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: Tornado template mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 27 | 28 |
29 |

Tornado template mode

30 |
50 | 51 | 59 | 60 |

Mode for HTML with embedded Tornado template markup.

61 | 62 |

MIME types defined: text/x-tornado

63 |
64 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/turtle/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: Turtle mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 24 | 25 |
26 |

Turtle mode

27 |
41 | 47 | 48 |

MIME types defined: text/turtle.

49 | 50 |
51 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/vbscript/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: VBScript mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 24 | 25 |
26 |

VBScript mode

27 | 28 | 29 |
46 | 47 | 53 | 54 |

MIME types defined: text/vbscript.

55 |
56 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/xml/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: XML mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 24 | 25 |
26 |

XML mode

27 |
39 | 45 |

The XML mode supports two configuration parameters:

46 |
47 |
htmlMode (boolean)
48 |
This switches the mode to parse HTML instead of XML. This 49 | means attributes do not have to be quoted, and some elements 50 | (such as br) do not require a closing tag.
51 |
alignCDATA (boolean)
52 |
Setting this to true will force the opening tag of CDATA 53 | blocks to not be indented.
54 |
55 | 56 |

MIME types defined: application/xml, text/html.

57 |
58 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/xml/test.js: -------------------------------------------------------------------------------- 1 | // CodeMirror, copyright (c) by Marijn Haverbeke and others 2 | // Distributed under an MIT license: http://codemirror.net/LICENSE 3 | 4 | (function() { 5 | var mode = CodeMirror.getMode({indentUnit: 2}, "xml"), mname = "xml"; 6 | function MT(name) { test.mode(name, mode, Array.prototype.slice.call(arguments, 1), mname); } 7 | 8 | MT("matching", 9 | "[tag&bracket <][tag top][tag&bracket >]", 10 | " text", 11 | " [tag&bracket <][tag inner][tag&bracket />]", 12 | "[tag&bracket ]"); 13 | 14 | MT("nonmatching", 15 | "[tag&bracket <][tag top][tag&bracket >]", 16 | " [tag&bracket <][tag inner][tag&bracket />]", 17 | " [tag&bracket ]"); 18 | 19 | MT("doctype", 20 | "[meta ]", 21 | "[tag&bracket <][tag top][tag&bracket />]"); 22 | 23 | MT("cdata", 24 | "[tag&bracket <][tag top][tag&bracket >]", 25 | " [atom ]", 27 | "[tag&bracket ]"); 28 | 29 | // HTML tests 30 | mode = CodeMirror.getMode({indentUnit: 2}, "text/html"); 31 | 32 | MT("selfclose", 33 | "[tag&bracket <][tag html][tag&bracket >]", 34 | " [tag&bracket <][tag link] [attribute rel]=[string stylesheet] [attribute href]=[string \"/foobar\"][tag&bracket >]", 35 | "[tag&bracket ]"); 36 | 37 | MT("list", 38 | "[tag&bracket <][tag ol][tag&bracket >]", 39 | " [tag&bracket <][tag li][tag&bracket >]one", 40 | " [tag&bracket <][tag li][tag&bracket >]two", 41 | "[tag&bracket ]"); 42 | 43 | MT("valueless", 44 | "[tag&bracket <][tag input] [attribute type]=[string checkbox] [attribute checked][tag&bracket />]"); 45 | 46 | MT("pThenArticle", 47 | "[tag&bracket <][tag p][tag&bracket >]", 48 | " foo", 49 | "[tag&bracket <][tag article][tag&bracket >]bar"); 50 | 51 | })(); 52 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/yaml/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: YAML mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 24 | 25 |
26 |

YAML mode

27 |
74 | 77 | 78 |

MIME types defined: text/x-yaml.

79 | 80 |
81 | -------------------------------------------------------------------------------- /js/plugins/codemirror/mode/z80/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CodeMirror: Z80 assembly mode 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 24 | 25 |
26 |

Z80 assembly mode

27 | 28 | 29 |
44 | 45 | 50 | 51 |

MIME type defined: text/x-z80.

52 |
53 | -------------------------------------------------------------------------------- /js/plugins/fancybox/blank.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/js/plugins/fancybox/blank.gif -------------------------------------------------------------------------------- /js/plugins/fancybox/fancybox_loading.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/js/plugins/fancybox/fancybox_loading.gif -------------------------------------------------------------------------------- /js/plugins/fancybox/fancybox_loading@2x.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/js/plugins/fancybox/fancybox_loading@2x.gif -------------------------------------------------------------------------------- /js/plugins/fancybox/fancybox_overlay.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/js/plugins/fancybox/fancybox_overlay.png -------------------------------------------------------------------------------- /js/plugins/fancybox/fancybox_sprite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/js/plugins/fancybox/fancybox_sprite.png -------------------------------------------------------------------------------- /js/plugins/fancybox/fancybox_sprite@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/js/plugins/fancybox/fancybox_sprite@2x.png -------------------------------------------------------------------------------- /js/plugins/gritter/images/gritter-light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/js/plugins/gritter/images/gritter-light.png -------------------------------------------------------------------------------- /js/plugins/gritter/images/gritter.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/js/plugins/gritter/images/gritter.png -------------------------------------------------------------------------------- /js/plugins/gritter/images/ie-spacer.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/js/plugins/gritter/images/ie-spacer.gif -------------------------------------------------------------------------------- /js/plugins/layer/laydate/skins/default/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/js/plugins/layer/laydate/skins/default/icon.png -------------------------------------------------------------------------------- /js/plugins/layer/layim/data/chatlog.json: -------------------------------------------------------------------------------- 1 | { 2 | "status": 1, 3 | "msg": "ok", 4 | "data": [ 5 | { 6 | "id": "100001", 7 | "name": "若依", 8 | "time": "10:23", 9 | "face": "img/a1.jpg" 10 | }, 11 | { 12 | "id": "100002", 13 | "name": "慕容晓晓", 14 | "time": "昨天", 15 | "face": "img/a2.jpg" 16 | }, 17 | { 18 | "id": "1000033", 19 | "name": "乔峰", 20 | "time": "2014-4.22", 21 | "face": "img/a3.jpg" 22 | }, 23 | { 24 | "id": "10000333", 25 | "name": "高圆圆", 26 | "time": "2014-4.21", 27 | "face": "img/a4.jpg" 28 | } 29 | ] 30 | } 31 | -------------------------------------------------------------------------------- /js/plugins/layer/layim/data/group.json: -------------------------------------------------------------------------------- 1 | { 2 | "status": 1, 3 | "msg": "ok", 4 | "data": [ 5 | { 6 | "name": "H+交流群", 7 | "nums": 36, 8 | "id": 1, 9 | "item": [ 10 | { 11 | "id": "101", 12 | "name": "H+ Bug反馈", 13 | "face": "http://tp2.sinaimg.cn/2211874245/180/40050524279/0" 14 | }, 15 | { 16 | "id": "102", 17 | "name": "H+ 技术交流", 18 | "face": "http://tp3.sinaimg.cn/1820711170/180/1286855219/1" 19 | } 20 | ] 21 | }, 22 | { 23 | "name": "Bootstrap", 24 | "nums": 16, 25 | "id": 2, 26 | "item": [ 27 | { 28 | "id": "103", 29 | "name": "Bootstrap中文", 30 | "face": "http://tp2.sinaimg.cn/2211874245/180/40050524279/0" 31 | }, 32 | { 33 | "id": "104", 34 | "name": "Bootstrap资源", 35 | "face": "http://tp3.sinaimg.cn/1820711170/180/1286855219/1" 36 | } 37 | ] 38 | }, 39 | { 40 | "name": "WebApp", 41 | "nums": 106, 42 | "id": 3, 43 | "item": [ 44 | { 45 | "id": "105", 46 | "name": "移动开发", 47 | "face": "http://tp2.sinaimg.cn/2211874245/180/40050524279/0" 48 | }, 49 | { 50 | "id": "106", 51 | "name": "H5前言", 52 | "face": "http://tp3.sinaimg.cn/1820711170/180/1286855219/1" 53 | } 54 | ] 55 | } 56 | ] 57 | } 58 | -------------------------------------------------------------------------------- /js/plugins/layer/layim/data/groups.json: -------------------------------------------------------------------------------- 1 | { 2 | "status": 1, 3 | "msg": "ok", 4 | "data": [ 5 | { 6 | "id": "100001", 7 | "name": "無言的蒁説", 8 | "face": "img/a1.jpg" 9 | }, 10 | { 11 | "id": "100002", 12 | "name": "婷宝奢侈品", 13 | "face": "img/a2.jpg" 14 | }, 15 | { 16 | "id": "100003", 17 | "name": "忆恨思爱", 18 | "face": "img/a3.jpg" 19 | }, 20 | { 21 | "id": "100004", 22 | "name": "天涯奥拓慢", 23 | "face": "img/a4.jpg" 24 | }, 25 | { 26 | "id": "100005", 27 | "name": "雨落无声的天空", 28 | "face": "img/a5.jpg" 29 | }, 30 | { 31 | "id": "100006", 32 | "name": "李越LycorisRadiate", 33 | "face": "img/a6.jpg" 34 | }, 35 | { 36 | "id": "100007", 37 | "name": "冯胖妞张直丑", 38 | "face": "img/a7.jpg" 39 | }, 40 | { 41 | "id": "100008", 42 | "name": "陈龙hmmm", 43 | "face": "img/a8.jpg" 44 | }, 45 | { 46 | "id": "100009", 47 | "name": "别闹哥胆儿小", 48 | "face": "img/a9.jpg" 49 | }, 50 | { 51 | "id": "100010", 52 | "name": "锅锅锅锅萌哒哒 ", 53 | "face": "img/a10.jpg" 54 | } 55 | ] 56 | } 57 | -------------------------------------------------------------------------------- /js/plugins/layer/layim/loading.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/js/plugins/layer/layim/loading.gif -------------------------------------------------------------------------------- /js/plugins/layer/skin/default/icon-ext.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/js/plugins/layer/skin/default/icon-ext.png -------------------------------------------------------------------------------- /js/plugins/layer/skin/default/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/js/plugins/layer/skin/default/icon.png -------------------------------------------------------------------------------- /js/plugins/layer/skin/default/icon_ext.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/js/plugins/layer/skin/default/icon_ext.png -------------------------------------------------------------------------------- /js/plugins/layer/skin/default/loading-0.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/js/plugins/layer/skin/default/loading-0.gif -------------------------------------------------------------------------------- /js/plugins/layer/skin/default/loading-1.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/js/plugins/layer/skin/default/loading-1.gif -------------------------------------------------------------------------------- /js/plugins/layer/skin/default/loading-2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/js/plugins/layer/skin/default/loading-2.gif -------------------------------------------------------------------------------- /js/plugins/layer/skin/default/textbg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/js/plugins/layer/skin/default/textbg.png -------------------------------------------------------------------------------- /js/plugins/layer/skin/default/xubox_ico0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/js/plugins/layer/skin/default/xubox_ico0.png -------------------------------------------------------------------------------- /js/plugins/layer/skin/default/xubox_loading0.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/js/plugins/layer/skin/default/xubox_loading0.gif -------------------------------------------------------------------------------- /js/plugins/layer/skin/default/xubox_loading1.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/js/plugins/layer/skin/default/xubox_loading1.gif -------------------------------------------------------------------------------- /js/plugins/layer/skin/default/xubox_loading2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/js/plugins/layer/skin/default/xubox_loading2.gif -------------------------------------------------------------------------------- /js/plugins/layer/skin/default/xubox_loading3.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/js/plugins/layer/skin/default/xubox_loading3.gif -------------------------------------------------------------------------------- /js/plugins/layer/skin/default/xubox_title0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/js/plugins/layer/skin/default/xubox_title0.png -------------------------------------------------------------------------------- /js/plugins/layer/skin/moon/default.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/js/plugins/layer/skin/moon/default.png -------------------------------------------------------------------------------- /js/plugins/markdown/bootstrap-markdown.zh.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Chinese translation for bootstrap-markdown 3 | * benhaile 4 | */ 5 | (function ($) { 6 | $.fn.markdown.messages.zh = { 7 | 'Bold': "粗体", 8 | 'Italic': "斜体", 9 | 'Heading': "标题", 10 | 'URL/Link': "链接", 11 | 'Image': "图片", 12 | 'List': "列表", 13 | 'Unordered List': "无序列表", 14 | 'Ordered List': "有序列表", 15 | 'Code': "代码", 16 | 'Quote': "引用", 17 | 'Preview': "预览", 18 | 'strong text': "粗体", 19 | 'emphasized text': "强调", 20 | 'heading text': "标题", 21 | 'enter link description here': "输入链接说明", 22 | 'Insert Hyperlink': "URL地址", 23 | 'enter image description here': "输入图片说明", 24 | 'Insert Image Hyperlink': "图片URL地址", 25 | 'enter image title here': "在这里输入图片标题", 26 | 'list text here': "这里是列表文本", 27 | 'code text here': "这里输入代码", 28 | 'quote here': "这里输入引用文本" 29 | 30 | 31 | }; 32 | }(jQuery)); 33 | -------------------------------------------------------------------------------- /js/plugins/prettyfile/bootstrap-prettyfile.js: -------------------------------------------------------------------------------- 1 | /* 2 | * jQuery and Bootsrap3 Plugin prettyFile 3 | * 4 | * version 2.0, Jan 20th, 2014 5 | * by episage, sujin2f 6 | * Git repository : https://github.com/episage/bootstrap-3-pretty-file-upload 7 | */ 8 | ( function( $ ) { 9 | $.fn.extend({ 10 | prettyFile: function( options ) { 11 | var defaults = { 12 | text : "选择文件" 13 | }; 14 | 15 | var options = $.extend(defaults, options); 16 | var plugin = this; 17 | 18 | function make_form( $el, text ) { 19 | $el.wrap('
'); 20 | 21 | $el.hide(); 22 | $el.after( '\ 23 |
\ 24 | \ 25 | \ 26 | \ 27 | \ 28 |
\ 29 | ' ); 30 | 31 | return $el.parent(); 32 | }; 33 | 34 | function bind_change( $wrap, multiple ) { 35 | $wrap.find( 'input[type="file"]' ).change(function () { 36 | // When original file input changes, get its value, show it in the fake input 37 | var files = $( this )[0].files, 38 | info = ''; 39 | 40 | if ( files.length == 0 ) 41 | return false; 42 | 43 | if ( !multiple || files.length == 1 ) { 44 | var path = $( this ).val().split('\\'); 45 | info = path[path.length - 1]; 46 | } else if ( files.length > 1 ) { 47 | // Display number of selected files instead of filenames 48 | info = "已选择了" + files.length + ' 个文件'; 49 | } 50 | 51 | $wrap.find('.input-append input').val( info ); 52 | }); 53 | }; 54 | 55 | function bind_button( $wrap, multiple ) { 56 | $wrap.find( '.input-append' ).click( function( e ) { 57 | e.preventDefault(); 58 | $wrap.find( 'input[type="file"]' ).click(); 59 | }); 60 | }; 61 | 62 | return plugin.each( function() { 63 | $this = $( this ); 64 | 65 | if ( $this ) { 66 | var multiple = $this.attr( 'multiple' ); 67 | 68 | $wrap = make_form( $this, options.text ); 69 | bind_change( $wrap, multiple ); 70 | bind_button( $wrap ); 71 | } 72 | }); 73 | } 74 | }); 75 | }( jQuery )); 76 | 77 | -------------------------------------------------------------------------------- /js/plugins/simditor/module.min.js: -------------------------------------------------------------------------------- 1 | !function(a,b){"function"==typeof define&&define.amd?define("simple-module",["jquery"],function(c){return a.returnExportsGlobal=b(c)}):"object"==typeof exports?module.exports=b(require("jquery")):a.SimpleModule=b(jQuery)}(this,function(a){var b,c=[].slice;return b=function(){function b(b){var c,d,e,f,g,h,i;if(this.opts=a.extend({},this.opts,b),(g=this.constructor)._connectedClasses||(g._connectedClasses=[]),e=function(){var a,b,d,e;for(d=this.constructor._connectedClasses,e=[],a=0,b=d.length;b>a;a++)c=d[a],f=c.pluginName.charAt(0).toLowerCase()+c.pluginName.slice(1),c.prototype._connected&&(c.prototype._module=this),e.push(this[f]=new c);return e}.call(this),this._connected)this.opts=a.extend({},this.opts,this._module.opts);else for(this._init(),h=0,i=e.length;i>h;h++)d=e[h],"function"==typeof d._init&&d._init();this.trigger("initialized")}return b.extend=function(a){var b,c,d;if(null!=a&&"object"==typeof a){for(b in a)c=a[b],"included"!==b&&"extended"!==b&&(this[b]=c);return null!=(d=a.extended)?d.call(this):void 0}},b.include=function(a){var b,c,d;if(null!=a&&"object"==typeof a){for(b in a)c=a[b],"included"!==b&&"extended"!==b&&(this.prototype[b]=c);return null!=(d=a.included)?d.call(this):void 0}},b.connect=function(a){if("function"==typeof a){if(!a.pluginName)throw new Error("Module.connect: cannot connect plugin without pluginName");return a.prototype._connected=!0,this._connectedClasses||(this._connectedClasses=[]),this._connectedClasses.push(a),a.pluginName?this[a.pluginName]=a:void 0}},b.prototype.opts={},b.prototype._init=function(){},b.prototype.on=function(){var b,d;return b=1<=arguments.length?c.call(arguments,0):[],(d=a(this)).on.apply(d,b),this},b.prototype.one=function(){var b,d;return b=1<=arguments.length?c.call(arguments,0):[],(d=a(this)).one.apply(d,b),this},b.prototype.off=function(){var b,d;return b=1<=arguments.length?c.call(arguments,0):[],(d=a(this)).off.apply(d,b),this},b.prototype.trigger=function(){var b,d;return b=1<=arguments.length?c.call(arguments,0):[],(d=a(this)).trigger.apply(d,b),this},b.prototype.triggerHandler=function(){var b,d;return b=1<=arguments.length?c.call(arguments,0):[],(d=a(this)).triggerHandler.apply(d,b)},b.prototype._t=function(){var a,b;return a=1<=arguments.length?c.call(arguments,0):[],(b=this.constructor)._t.apply(b,a)},b._t=function(){var a,b,d,e;return b=arguments[0],a=2<=arguments.length?c.call(arguments,1):[],d=(null!=(e=this.i18n[this.locale])?e[b]:void 0)||"",a.length>0?(d=d.replace(/([^%]|^)%(?:(\d+)\$)?s/g,function(b,c,d){return d?c+a[parseInt(d)-1]:c+a.shift()}),d.replace(/%%s/g,"%s")):d},b.i18n={"zh-CN":{}},b.locale="zh-CN",b}()}); 2 | -------------------------------------------------------------------------------- /js/plugins/suggest/data.json: -------------------------------------------------------------------------------- 1 | { 2 | "message": "", 3 | "value": [ 4 | { 5 | "userName": "淳芸", 6 | "shortAccount": "chunyun", 7 | "userId": 20001 8 | }, { 9 | "userName": "orion-01", 10 | "shortAccount": "chunyun", 11 | "userId": 20000 12 | }, { 13 | "userName": "穆晓晨", 14 | "shortAccount": "chunyun", 15 | "userId": 20002 16 | }, { 17 | "userName": "张欢引", 18 | "shortAccount": "chunyun", 19 | "userId": 20003 20 | }, { 21 | "userName": "吴琼", 22 | "shortAccount": "wuqiong", 23 | "userId": 20004 24 | }, { 25 | "userName": "吴东鹏", 26 | "shortAccount": "wudongpeng", 27 | "userId": 20005 28 | }, { 29 | "userName": "黄少铅", 30 | "shortAccount": "huangshaoqian", 31 | "userId": 20006 32 | }, { 33 | "userName": "胡运燕", 34 | "shortAccount": "yunyan", 35 | "userId": 20007 36 | }, { 37 | "userName": "刘幸", 38 | "shortAccount": "liuxing", 39 | "userId": 20008 40 | }, { 41 | "userName": "陈媛媛", 42 | "shortAccount": "chenyuanyuan", 43 | "userId": 20009 44 | }, { 45 | "userName": "旷东林", 46 | "shortAccount": "chunyun", 47 | "userId": 20010 48 | }, { 49 | "userName": "唐宏禹", 50 | "shortAccount": "chunyun", 51 | "userId": 20011 52 | }, { 53 | "userName": "旷东林", 54 | "shortAccount": "kuangdonglin", 55 | "userId": 20010 56 | }, { 57 | "userName": "唐宏禹", 58 | "shortAccount": "tanghongyu", 59 | "userId": 20011 60 | } 61 | ], 62 | "code": 200, 63 | "redirect": "" 64 | } 65 | -------------------------------------------------------------------------------- /js/plugins/validate/messages_zh.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery Validation Plugin - v1.13.1 - 10/14/2014 2 | * http://jqueryvalidation.org/ 3 | * Copyright (c) 2014 Jörn Zaefferer; Licensed MIT */ 4 | ! function (a) { 5 | "function" == typeof define && define.amd ? define(["jquery", "jquery.validate.min"], a) : a(jQuery) 6 | }(function (a) { 7 | var icon = " "; 8 | a.extend(a.validator.messages, { 9 | required: icon + "必填", 10 | remote: icon + "请修正此栏位", 11 | email: icon + "请输入有效的电子邮件", 12 | url: icon + "请输入有效的网址", 13 | date: icon + "请输入有效的日期", 14 | dateISO: icon + "请输入有效的日期 (YYYY-MM-DD)", 15 | number: icon + "请输入正确的数字", 16 | digits: icon + "只能输入数字", 17 | creditcard: icon + "请输入有效的信用卡号码", 18 | equalTo: icon + "你的输入不相同", 19 | extension: icon + "请输入有效的后缀", 20 | maxlength: a.validator.format(icon + "最多 {0} 个字"), 21 | minlength: a.validator.format(icon + "最少 {0} 个字"), 22 | rangelength: a.validator.format(icon + "请输入长度为 {0} 至 {1} 之间的字串"), 23 | range: a.validator.format(icon + "请输入 {0} 至 {1} 之间的数值"), 24 | max: a.validator.format(icon + "请输入不大于 {0} 的数值"), 25 | min: a.validator.format(icon + "请输入不小于 {0} 的数值") 26 | }) 27 | }); 28 | -------------------------------------------------------------------------------- /js/plugins/webuploader/README.md: -------------------------------------------------------------------------------- 1 | 目录说明 2 | ======================== 3 | 4 | ```bash 5 | ├── Uploader.swf # SWF文件,当使用Flash运行时需要引入。 6 | ├ 7 | ├── webuploader.js # 完全版本。 8 | ├── webuploader.min.js # min版本 9 | ├ 10 | ├── webuploader.flashonly.js # 只有Flash实现的版本。 11 | ├── webuploader.flashonly.min.js # min版本 12 | ├ 13 | ├── webuploader.html5only.js # 只有Html5实现的版本。 14 | ├── webuploader.html5only.min.js # min版本 15 | ├ 16 | ├── webuploader.noimage.js # 去除图片处理的版本,包括HTML5和FLASH. 17 | ├── webuploader.noimage.min.js # min版本 18 | ├ 19 | ├── webuploader.custom.js # 自定义打包方案,请查看 Gruntfile.js,满足移动端使用。 20 | └── webuploader.custom.min.js # min版本 21 | ``` 22 | 23 | ## 示例 24 | 25 | 请把整个 Git 包下载下来放在 php 服务器下,因为默认提供的文件接受是用 php 编写的,打开 examples 页面便能查看示例效果。 -------------------------------------------------------------------------------- /js/plugins/webuploader/Uploader.swf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/js/plugins/webuploader/Uploader.swf -------------------------------------------------------------------------------- /js/plugins/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 | -------------------------------------------------------------------------------- /js/welcome.js: -------------------------------------------------------------------------------- 1 | //欢迎信息 2 | 3 | layer.config({ 4 | extend: ['extend/layer.ext.js', 'skin/moon/style.css'], 5 | skin: 'layer-ext-moon' 6 | }); 7 | 8 | layer.ready(function () { 9 | var html = $('#welcome-template').html(); 10 | $('a.viewlog').click(function () { 11 | logs(); 12 | return false; 13 | }); 14 | 15 | $('#pay-qrcode').click(function () { 16 | var html = $(this).html(); 17 | parent.layer.open({ 18 | title: false, 19 | type: 1, 20 | closeBtn: false, 21 | shadeClose: true, 22 | area: ['600px', 'auto'], 23 | content: html 24 | }); 25 | }); 26 | 27 | function logs() { 28 | parent.layer.open({ 29 | title: '初见倾心,再见动情', 30 | type: 1, 31 | area: ['700px', 'auto'], 32 | content: html, 33 | btn: ['确定', '取消'] 34 | }); 35 | } 36 | 37 | console.log('欢迎使用H+,如果您在使用的过程中有碰到问题,可以参考开发文档,感谢您的支持。'); 38 | }); 39 | -------------------------------------------------------------------------------- /lockscreen.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | H+ 后台主题UI框架 - 登录超时 11 | 12 | 13 | 14 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 |
31 |
32 |
33 |
34 | image 35 |
36 |

Beaut-ruoyi

37 |

您需要再次输入密码

38 |
39 |
40 | 41 |
42 | 43 |
44 |
45 |
46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | -------------------------------------------------------------------------------- /login-1.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | H+ 后台主题UI框架 - 登录 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 22 | 23 | 24 | 25 | 26 | 27 |
28 |
29 |
30 | 31 |

H+

32 | 33 |
34 |

欢迎使用 H+

35 | 36 |
37 |
38 | 39 |
40 |
41 | 42 |
43 |
44 |
45 | 46 | 47 |
48 |
49 | 50 | 51 | 52 |

忘记密码了? | 注册一个新账号 53 |

54 | 55 |
56 |
57 |
58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | -------------------------------------------------------------------------------- /login.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | H+ 后台主题UI框架 - 登录 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 22 | 23 | 24 | 25 | 26 | 27 |
28 |
29 |
30 | 31 |

H+

32 | 33 |
34 |

欢迎使用 H+

35 | 36 |
37 |
38 | 39 |
40 |
41 | 42 |
43 | 44 | 45 | 46 |

忘记密码了? | 注册一个新账号 47 |

48 | 49 |
50 |
51 |
52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | -------------------------------------------------------------------------------- /plugins/fullavatareditor/asp.net/c#/Upload.aspx: -------------------------------------------------------------------------------- 1 | <%@ Page Language="C#" AutoEventWireup="true" CodeFile="upload.aspx.cs" Debug="true" Inherits="Upload" %> 2 | -------------------------------------------------------------------------------- /plugins/fullavatareditor/asp.net/c#/bin/Newtonsoft.Json.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/plugins/fullavatareditor/asp.net/c#/bin/Newtonsoft.Json.dll -------------------------------------------------------------------------------- /plugins/fullavatareditor/asp.net/vb/Upload.aspx: -------------------------------------------------------------------------------- 1 | <%@ Page Language="VB" AutoEventWireup="true" CodeFile="Upload.aspx.vb" Debug="true" Inherits="Upload" %> 2 | -------------------------------------------------------------------------------- /plugins/fullavatareditor/asp.net/vb/bin/Newtonsoft.Json.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/plugins/fullavatareditor/asp.net/vb/bin/Newtonsoft.Json.dll -------------------------------------------------------------------------------- /plugins/fullavatareditor/crossdomain.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /plugins/fullavatareditor/expressInstall.swf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/plugins/fullavatareditor/expressInstall.swf -------------------------------------------------------------------------------- /plugins/fullavatareditor/fullAvatarEditor.swf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/plugins/fullavatareditor/fullAvatarEditor.swf -------------------------------------------------------------------------------- /plugins/fullavatareditor/jsp/WEB-INF/lib/commons-fileupload-1.3.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/plugins/fullavatareditor/jsp/WEB-INF/lib/commons-fileupload-1.3.jar -------------------------------------------------------------------------------- /plugins/fullavatareditor/jsp/WEB-INF/lib/fastjson-1.1.9.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yangzongzhuan/hplus/9e4f964eef1918292bc22bbd0b670f6cfafb039d/plugins/fullavatareditor/jsp/WEB-INF/lib/fastjson-1.1.9.jar -------------------------------------------------------------------------------- /plugins/fullavatareditor/scripts/fullAvatarEditor.js: -------------------------------------------------------------------------------- 1 | function fullAvatarEditor() { 2 | var id = 'fullAvatarEditor' //flash文件的ID 3 | var file = 'plugins/fullavatareditor/fullAvatarEditor.swf'; //flash文件的路径 4 | var version = "10.1.0"; //播放该flash所需的最低版本 5 | var expressInstall = 'expressInstall.swf'; //expressInstall.swf的路径 6 | var width = 600; //flash文件的宽度 7 | var height = 430; //flash文件的高度 8 | var container = id; //装载flash文件的容器(如div)的id 9 | var flashvars = {}; 10 | var callback = function(){}; 11 | var heightChanged = false; 12 | //智能获取参数,字符类型为装载flash文件的容器(如div)的id,第一个数字类型的为高度,第二个为宽度,第一个object类型的为参数对象,如此4个参数的顺序可随意。 13 | for(var i = 0; i < arguments.length; i++) 14 | { 15 | if(typeof arguments[i] == 'string') 16 | { 17 | container = arguments[i]; 18 | } 19 | else if(typeof arguments[i] == 'number') 20 | { 21 | if(heightChanged) 22 | { 23 | width = arguments[i]; 24 | } 25 | else 26 | { 27 | height = arguments[i]; 28 | heightChanged = true; 29 | } 30 | } 31 | else if(typeof arguments[i] == 'function') 32 | { 33 | callback = arguments[i]; 34 | } 35 | else 36 | { 37 | flashvars = arguments[i]; 38 | } 39 | } 40 | var vars = { 41 | id : id 42 | }; 43 | //合并参数 44 | for (var name in flashvars) 45 | { 46 | if(flashvars[name] != null) 47 | { 48 | if(name == 'upload_url' || name == 'src_url') 49 | { 50 | vars[name] = encodeURIComponent(flashvars[name]); 51 | } 52 | else 53 | { 54 | vars[name] = flashvars[name]; 55 | } 56 | } 57 | } 58 | var params = { 59 | menu : 'true', 60 | scale : 'noScale', 61 | allowFullscreen : 'true', 62 | allowScriptAccess : 'always', 63 | wmode : 'transparent' 64 | }; 65 | var attributes = { 66 | id : vars.id, 67 | name: vars.id 68 | }; 69 | var swf = null; 70 | var callbackFn = function (e) { 71 | swf = e.ref; 72 | swf.eventHandler = function(json){ 73 | callback.call(swf, json); 74 | }; 75 | }; 76 | swfobject.embedSWF( 77 | file, 78 | container, 79 | width, 80 | height, 81 | version, 82 | expressInstall, 83 | vars, 84 | params, 85 | attributes, 86 | callbackFn 87 | ); 88 | return swf; 89 | } 90 | -------------------------------------------------------------------------------- /plugins/fullavatareditor/scripts/jQuery.Drag.js: -------------------------------------------------------------------------------- 1 | (function($){ 2 | var O = 'opacity', 3 | C = 'CursorMove', 4 | M = 'mousemove.drag', 5 | U = 'mouseup.drag', 6 | D = 'mousedown.drag', 7 | W = $(window), 8 | A = $(document), 9 | timer = null, 10 | E = function () { 11 | this.w.css(O, 1); 12 | A.unbind(M+' '+U); 13 | }, 14 | G = function (e) { 15 | var m = this, 16 | p = m.w.offset(), 17 | t = p.top, 18 | l = p.left, 19 | r = W.width() - m.w.outerWidth(), 20 | b = W.height() - m.w.outerHeight(), 21 | X = e.pageX, 22 | Y = e.pageY, 23 | x = m.p.left + (X - m.x) - W.scrollLeft(), 24 | y = m.p.top + (Y - m.y) - W.scrollTop(); 25 | //以下逻辑保证在可视范围内移动 26 | if (l <= 0 && X < m.x) 27 | { 28 | x = 0; 29 | m.x = Math.max(X, 0); 30 | m.p.left = 0; 31 | } 32 | if (t <= 0 && Y < m.y) 33 | { 34 | y = 0; 35 | m.y = Math.max(Y, 0); 36 | m.p.top = 0; 37 | } 38 | if (r <= l - A.scrollLeft() && X > m.x) 39 | { 40 | x = r; 41 | m.x = Math.min(X, r); 42 | m.p.left = r; 43 | } 44 | if (b <= t - A.scrollLeft() && Y > m.y) 45 | { 46 | y = b; 47 | m.y = Math.min(Y, b); 48 | m.p.top = b; 49 | } 50 | m.w.css({ left : x, top : y }); 51 | return false; 52 | }, 53 | S = function (e, m) { 54 | e.preventDefault(); 55 | m = this; 56 | m.w.css(O, 0.8); 57 | m.p = m.w.offset(); 58 | m.x = e.pageX; 59 | m.y = e.pageY; 60 | A.bind(M, $.proxy(G, m)).bind(U, $.proxy(E, m)); 61 | }; 62 | $.fn.Drag = function(o){ 63 | return this.each(function () { 64 | var e = $(this), 65 | x = function () { 66 | this.h = o ? (typeof o === 'string' ? $(o, e[0]) : o) : e; 67 | this.w = e; 68 | return this; 69 | }, 70 | X = new x(); 71 | e.data('__h', X.h); 72 | X.h.addClass(C).unbind(D).bind(D, $.proxy(S, X)); 73 | }); 74 | }; 75 | $.fn.unDrag = function () { 76 | return this.each(function(){ 77 | ($(this).data('__h') || $()).removeClass(C).unbind(D); 78 | }); 79 | }; 80 | })($); 81 | -------------------------------------------------------------------------------- /plugins/fullavatareditor/simpleDemo.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Simple demo 6 | 7 | 8 | 9 | 10 |
11 |

富头像上传编辑器演示

12 |
13 |

14 | 本组件需要安装Flash Player后才可使用,请从这里下载安装。 15 |

16 |
17 |

18 |

提示:本演示使用的上传接口类型为ASP,如要测试上传,请在服务器环境中演示,更多演示请看http://www.fullavatareditor.com/demo.html

19 |
20 | 65 | 66 | 67 | --------------------------------------------------------------------------------