├── .gitattributes ├── .gitignore ├── asset ├── __init__.py ├── commands.py ├── discover │ ├── __init__.py │ ├── sys │ │ └── __init__.py │ └── web │ │ └── __init__.py ├── models.py ├── templates │ └── asset │ │ └── sys_asset.html └── views.py ├── auth ├── __init__.py ├── commands.py ├── decorators.py ├── hooks.py ├── models.py ├── templates │ └── auth │ │ ├── login.html │ │ └── user.html └── views.py ├── dashboard ├── __init__.py ├── templates │ └── dashboard │ │ └── index.html └── views.py ├── docs ├── deploy.md ├── readme.md ├── 整体架构.png ├── 设计.vsdx └── 配置图片 │ ├── 新建插件1-ssh弱口令.jpg │ ├── 新建插件2-http_header-check.jpg │ ├── 新建插件3-http_status-check.jpg │ ├── 新建插件4-http_response-check.jpg │ └── 新建配置1-__PASSWORD__.jpg ├── logs └── readme.md ├── readme.md ├── requirements.all.txt ├── requirements.txt ├── run.cmd ├── run.sh ├── schedule ├── __init__.py ├── commands.py ├── dispatcher │ ├── __init__.py │ └── manager.py ├── executor │ ├── __init__.py │ ├── base.py │ ├── manager.py │ ├── sys_asset_discover │ │ ├── __init__.py │ │ └── plugin_nmap.py │ └── sys_vul_check │ │ ├── __init__.py │ │ ├── plugin_http_request.py │ │ ├── plugin_socket_request.py │ │ └── plugin_ssh_weak_password.py ├── models.py ├── processor │ ├── __init__.py │ ├── base.py │ ├── manager.py │ └── vul.py ├── templates │ └── schedule │ │ └── executor.html └── views.py ├── shadow ├── __init__.py ├── commands.py ├── config.py ├── exceptions.py ├── models.py ├── response.py ├── static │ ├── css │ │ ├── animate.css │ │ ├── bootstrap.css │ │ ├── bootstrap.css.map │ │ ├── bootstrap.min.css │ │ ├── patterns │ │ │ ├── congruent_pentagon.png │ │ │ ├── header-profile-skin-1.png │ │ │ ├── header-profile-skin-2.png │ │ │ ├── header-profile-skin-3.png │ │ │ ├── header-profile.png │ │ │ ├── otis_redding.png │ │ │ ├── shattered.png │ │ │ └── triangular.png │ │ ├── plugins │ │ │ ├── awesome-bootstrap-checkbox │ │ │ │ ├── ._awesome-bootstrap-checkbox.css │ │ │ │ └── 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-rtl │ │ │ │ ├── bootstrap-rtl.css │ │ │ │ ├── bootstrap-rtl.css.map │ │ │ │ └── bootstrap-rtl.min.css │ │ │ ├── chartist │ │ │ │ └── chartist.min.css │ │ │ ├── chosen │ │ │ │ ├── chosen-sprite.png │ │ │ │ ├── chosen-sprite@2x.png │ │ │ │ └── chosen.css │ │ │ ├── clockpicker │ │ │ │ ├── ._clockpicker.css │ │ │ │ └── clockpicker.css │ │ │ ├── codemirror │ │ │ │ ├── ambiance.css │ │ │ │ └── codemirror.css │ │ │ ├── colorpicker │ │ │ │ └── bootstrap-colorpicker.min.css │ │ │ ├── cropper │ │ │ │ └── cropper.min.css │ │ │ ├── dataTables │ │ │ │ ├── dataTables.bootstrap.css │ │ │ │ ├── dataTables.responsive.css │ │ │ │ └── dataTables.tableTools.min.css │ │ │ ├── datapicker │ │ │ │ └── datepicker3.css │ │ │ ├── daterangepicker │ │ │ │ ├── ._daterangepicker-bs3.css │ │ │ │ └── daterangepicker-bs3.css │ │ │ ├── dropzone │ │ │ │ ├── basic.css │ │ │ │ └── dropzone.css │ │ │ ├── footable │ │ │ │ ├── ._fonts │ │ │ │ ├── ._footable.core.css │ │ │ │ ├── fonts │ │ │ │ │ ├── ._footable.eot │ │ │ │ │ ├── ._footable.svg │ │ │ │ │ ├── ._footable.ttf │ │ │ │ │ ├── ._footable.woff │ │ │ │ │ ├── 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 │ │ │ │ ├── bootstrap-colorpicker │ │ │ │ │ ├── alpha-horizontal.png │ │ │ │ │ ├── alpha.png │ │ │ │ │ ├── hue-horizontal.png │ │ │ │ │ ├── hue.png │ │ │ │ │ └── saturation.png │ │ │ │ ├── sort.png │ │ │ │ ├── sort_asc.png │ │ │ │ ├── sort_desc.png │ │ │ │ ├── sprite-skin-flat.png │ │ │ │ ├── sprite-skin-flat2.png │ │ │ │ ├── sprite-skin-nice.png │ │ │ │ ├── sprite-skin-simple.png │ │ │ │ ├── spritemap.png │ │ │ │ └── spritemap@2x.png │ │ │ ├── ionRangeSlider │ │ │ │ ├── ion.rangeSlider.css │ │ │ │ ├── ion.rangeSlider.skinFlat.css │ │ │ │ ├── ion.rangeSlider.skinNice.css │ │ │ │ └── ion.rangeSlider.skinSimple.css │ │ │ ├── jQueryUI │ │ │ │ ├── images │ │ │ │ │ ├── animated-overlay.gif │ │ │ │ │ ├── ui-bg_flat_0_aaaaaa_40x100.png │ │ │ │ │ ├── ui-bg_flat_75_ffffff_40x100.png │ │ │ │ │ ├── ui-bg_glass_55_fbf9ee_1x400.png │ │ │ │ │ ├── ui-bg_glass_65_ffffff_1x400.png │ │ │ │ │ ├── ui-bg_glass_75_dadada_1x400.png │ │ │ │ │ ├── ui-bg_glass_75_e6e6e6_1x400.png │ │ │ │ │ ├── ui-bg_glass_95_fef1ec_1x400.png │ │ │ │ │ ├── ui-bg_highlight-soft_75_cccccc_1x100.png │ │ │ │ │ ├── ui-icons_222222_256x240.png │ │ │ │ │ ├── ui-icons_2e83ff_256x240.png │ │ │ │ │ ├── ui-icons_454545_256x240.png │ │ │ │ │ ├── ui-icons_888888_256x240.png │ │ │ │ │ └── ui-icons_cd0a0a_256x240.png │ │ │ │ └── jquery-ui-1.10.4.custom.min.css │ │ │ ├── jasny │ │ │ │ └── jasny-bootstrap.min.css │ │ │ ├── jqGrid │ │ │ │ └── ui.jqgrid.css │ │ │ ├── jsTree │ │ │ │ ├── 32px.png │ │ │ │ ├── 39px.png │ │ │ │ ├── 40px.png │ │ │ │ ├── style.css │ │ │ │ ├── style.min.css │ │ │ │ └── throbber.gif │ │ │ ├── morris │ │ │ │ └── morris-0.4.3.min.css │ │ │ ├── nouslider │ │ │ │ └── jquery.nouislider.css │ │ │ ├── social-buttons │ │ │ │ └── social-buttons.css │ │ │ ├── steps │ │ │ │ └── jquery.steps.css │ │ │ ├── summernote │ │ │ │ ├── summernote-bs3.css │ │ │ │ └── summernote.css │ │ │ ├── sweetalert │ │ │ │ ├── ._sweetalert.css │ │ │ │ └── sweetalert.css │ │ │ ├── switchery │ │ │ │ └── switchery.css │ │ │ └── toastr │ │ │ │ └── toastr.min.css │ │ ├── style.css │ │ └── style.min.css │ ├── font-awesome │ │ ├── css │ │ │ ├── font-awesome.css │ │ │ └── font-awesome.min.css │ │ ├── fonts │ │ │ ├── FontAwesome.otf │ │ │ ├── fontawesome-webfont.eot │ │ │ ├── fontawesome-webfont.svg │ │ │ ├── fontawesome-webfont.ttf │ │ │ ├── fontawesome-webfont.woff │ │ │ └── fontawesome-webfont.woff2 │ │ ├── less │ │ │ ├── animated.less │ │ │ ├── bordered-pulled.less │ │ │ ├── core.less │ │ │ ├── fixed-width.less │ │ │ ├── font-awesome.less │ │ │ ├── icons.less │ │ │ ├── larger.less │ │ │ ├── list.less │ │ │ ├── mixins.less │ │ │ ├── path.less │ │ │ ├── rotated-flipped.less │ │ │ ├── stacked.less │ │ │ └── variables.less │ │ └── scss │ │ │ ├── _animated.scss │ │ │ ├── _bordered-pulled.scss │ │ │ ├── _core.scss │ │ │ ├── _fixed-width.scss │ │ │ ├── _icons.scss │ │ │ ├── _larger.scss │ │ │ ├── _list.scss │ │ │ ├── _mixins.scss │ │ │ ├── _path.scss │ │ │ ├── _rotated-flipped.scss │ │ │ ├── _stacked.scss │ │ │ ├── _variables.scss │ │ │ └── font-awesome.scss │ ├── fonts │ │ ├── glyphicons-halflings-regular.eot │ │ ├── glyphicons-halflings-regular.svg │ │ ├── glyphicons-halflings-regular.ttf │ │ ├── glyphicons-halflings-regular.woff │ │ └── glyphicons-halflings-regular.woff2 │ ├── img │ │ ├── ._headphones.jpg │ │ ├── ._meteor_logo.png │ │ ├── a1.jpg │ │ ├── a2.jpg │ │ ├── a3.jpg │ │ ├── a4.jpg │ │ ├── a5.jpg │ │ ├── a6.jpg │ │ ├── a7.jpg │ │ ├── a8.jpg │ │ ├── angular_logo.png │ │ ├── dashbard4_1.jpg │ │ ├── dashbard4_2.jpg │ │ ├── email_1.jpg │ │ ├── email_2.jpg │ │ ├── email_3.jpg │ │ ├── full_height.jpg │ │ ├── gallery │ │ │ ├── 1.jpg │ │ │ ├── 10.jpg │ │ │ ├── 10s.jpg │ │ │ ├── 11.jpg │ │ │ ├── 11s.jpg │ │ │ ├── 12.jpg │ │ │ ├── 12s.jpg │ │ │ ├── 1s.jpg │ │ │ ├── 2.jpg │ │ │ ├── 2s.jpg │ │ │ ├── 3.jpg │ │ │ ├── 3s.jpg │ │ │ ├── 4.jpg │ │ │ ├── 4s.jpg │ │ │ ├── 5.jpg │ │ │ ├── 5s.jpg │ │ │ ├── 6.jpg │ │ │ ├── 6s.jpg │ │ │ ├── 7.jpg │ │ │ ├── 7s.jpg │ │ │ ├── 8.jpg │ │ │ ├── 8s.jpg │ │ │ ├── 9.jpg │ │ │ └── 9s.jpg │ │ ├── headphones.jpg │ │ ├── html_logo.png │ │ ├── landing │ │ │ ├── avatar1.jpg │ │ │ ├── avatar2.jpg │ │ │ ├── avatar3.jpg │ │ │ ├── avatar4.jpg │ │ │ ├── avatar5.jpg │ │ │ ├── avatar6.jpg │ │ │ ├── avatar7.jpg │ │ │ ├── avatar8.jpg │ │ │ ├── avatar9.jpg │ │ │ ├── avatar_all.png │ │ │ ├── dashboard.png │ │ │ ├── header_one.jpg │ │ │ ├── header_two.jpg │ │ │ ├── iphone.jpg │ │ │ ├── laptop.png │ │ │ ├── perspective.png │ │ │ ├── shattered.png │ │ │ └── word_map.png │ │ ├── logo.png │ │ ├── meteor_logo.png │ │ ├── mvc_logo.png │ │ ├── off_canvas.jpg │ │ ├── p1.jpg │ │ ├── p2.jpg │ │ ├── p3.jpg │ │ ├── p4.jpg │ │ ├── p5.jpg │ │ ├── p6.jpg │ │ ├── p7.jpg │ │ ├── p8.jpg │ │ ├── p_big1.jpg │ │ ├── p_big2.jpg │ │ ├── p_big3.jpg │ │ ├── profile.jpg │ │ ├── profile_big.jpg │ │ ├── profile_small.jpg │ │ ├── rails_logo.png │ │ └── zender_logo.png │ ├── js │ │ ├── bootstrap.js │ │ ├── bootstrap.min.js │ │ ├── demo │ │ │ ├── chartjs-demo.js │ │ │ ├── dashboard-demo.js │ │ │ ├── flot-demo.js │ │ │ ├── flot-demo2.js │ │ │ ├── morris-demo.js │ │ │ ├── peity-demo.js │ │ │ ├── rickshaw-demo.js │ │ │ └── sparkline-demo.js │ │ ├── inspinia.js │ │ ├── jquery-2.1.1.js │ │ ├── jquery-ui-1.10.4.min.js │ │ ├── jquery-ui.custom.min.js │ │ ├── plugins │ │ │ ├── blueimp │ │ │ │ └── jquery.blueimp-gallery.min.js │ │ │ ├── chartJs │ │ │ │ └── Chart.min.js │ │ │ ├── chartist │ │ │ │ ├── ._chartist.min.js │ │ │ │ ├── ._chartist.min.js.map │ │ │ │ ├── chartist.min.js │ │ │ │ └── chartist.min.js.map │ │ │ ├── chosen │ │ │ │ └── chosen.jquery.js │ │ │ ├── clockpicker │ │ │ │ ├── ._clockpicker.js │ │ │ │ └── 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 │ │ │ │ │ ├── diff │ │ │ │ │ ├── diff.js │ │ │ │ │ └── index.html │ │ │ │ │ ├── django │ │ │ │ │ ├── django.js │ │ │ │ │ └── index.html │ │ │ │ │ ├── dtd │ │ │ │ │ ├── dtd.js │ │ │ │ │ └── index.html │ │ │ │ │ ├── dylan │ │ │ │ │ ├── dylan.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 │ │ │ │ │ ├── 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 │ │ │ │ │ ├── sparql │ │ │ │ │ ├── index.html │ │ │ │ │ └── sparql.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 │ │ │ ├── cropper │ │ │ │ └── cropper.min.js │ │ │ ├── dataTables │ │ │ │ ├── dataTables.bootstrap.js │ │ │ │ ├── dataTables.responsive.js │ │ │ │ ├── dataTables.tableTools.min.js │ │ │ │ ├── jquery.dataTables.js │ │ │ │ └── swf │ │ │ │ │ ├── copy_csv_xls.swf │ │ │ │ │ └── copy_csv_xls_pdf.swf │ │ │ ├── datapicker │ │ │ │ └── bootstrap-datepicker.js │ │ │ ├── daterangepicker │ │ │ │ ├── ._daterangepicker.js │ │ │ │ └── daterangepicker.js │ │ │ ├── diff_match_patch │ │ │ │ ├── COPYING │ │ │ │ ├── README.txt │ │ │ │ └── javascript │ │ │ │ │ └── diff_match_patch.js │ │ │ ├── dropzone │ │ │ │ └── dropzone.js │ │ │ ├── easypiechart │ │ │ │ ├── easypiechart.js │ │ │ │ └── jquery.easypiechart.js │ │ │ ├── flot │ │ │ │ ├── curvedLines.js │ │ │ │ ├── excanvas.min.js │ │ │ │ ├── jquery.flot.js │ │ │ │ ├── jquery.flot.pie.js │ │ │ │ ├── jquery.flot.resize.js │ │ │ │ ├── jquery.flot.spline.js │ │ │ │ ├── jquery.flot.symbol.js │ │ │ │ ├── jquery.flot.time.js │ │ │ │ └── jquery.flot.tooltip.min.js │ │ │ ├── footable │ │ │ │ ├── ._footable.all.min.js │ │ │ │ └── footable.all.min.js │ │ │ ├── fullcalendar │ │ │ │ ├── ._moment.min.js │ │ │ │ ├── fullcalendar.min.js │ │ │ │ └── moment.min.js │ │ │ ├── gritter │ │ │ │ ├── images │ │ │ │ │ ├── gritter-light.png │ │ │ │ │ ├── gritter-long.png │ │ │ │ │ ├── gritter.png │ │ │ │ │ └── ie-spacer.gif │ │ │ │ ├── jquery.gritter.css │ │ │ │ └── jquery.gritter.min.js │ │ │ ├── iCheck │ │ │ │ └── icheck.min.js │ │ │ ├── idle-timer │ │ │ │ └── idle-timer.min.js │ │ │ ├── ionRangeSlider │ │ │ │ └── ion.rangeSlider.min.js │ │ │ ├── jasny │ │ │ │ └── jasny-bootstrap.min.js │ │ │ ├── jeditable │ │ │ │ └── jquery.jeditable.js │ │ │ ├── jqGrid │ │ │ │ ├── i18n │ │ │ │ │ ├── grid.locale-ar.js │ │ │ │ │ ├── grid.locale-bg.js │ │ │ │ │ ├── grid.locale-bg1251.js │ │ │ │ │ ├── grid.locale-cat.js │ │ │ │ │ ├── grid.locale-cn.js │ │ │ │ │ ├── grid.locale-cs.js │ │ │ │ │ ├── grid.locale-da.js │ │ │ │ │ ├── grid.locale-de.js │ │ │ │ │ ├── grid.locale-dk.js │ │ │ │ │ ├── grid.locale-el.js │ │ │ │ │ ├── grid.locale-en.js │ │ │ │ │ ├── grid.locale-es.js │ │ │ │ │ ├── grid.locale-fa.js │ │ │ │ │ ├── grid.locale-fi.js │ │ │ │ │ ├── grid.locale-fr.js │ │ │ │ │ ├── grid.locale-gl.js │ │ │ │ │ ├── grid.locale-he.js │ │ │ │ │ ├── grid.locale-hr.js │ │ │ │ │ ├── grid.locale-hr1250.js │ │ │ │ │ ├── grid.locale-hu.js │ │ │ │ │ ├── grid.locale-id.js │ │ │ │ │ ├── grid.locale-is.js │ │ │ │ │ ├── grid.locale-it.js │ │ │ │ │ ├── grid.locale-ja.js │ │ │ │ │ ├── grid.locale-kr.js │ │ │ │ │ ├── grid.locale-lt.js │ │ │ │ │ ├── grid.locale-mne.js │ │ │ │ │ ├── grid.locale-nl.js │ │ │ │ │ ├── grid.locale-no.js │ │ │ │ │ ├── grid.locale-pl.js │ │ │ │ │ ├── grid.locale-pt-br.js │ │ │ │ │ ├── grid.locale-pt.js │ │ │ │ │ ├── grid.locale-ro.js │ │ │ │ │ ├── grid.locale-ru.js │ │ │ │ │ ├── grid.locale-sk.js │ │ │ │ │ ├── grid.locale-sr-latin.js │ │ │ │ │ ├── grid.locale-sr.js │ │ │ │ │ ├── grid.locale-sv.js │ │ │ │ │ ├── grid.locale-th.js │ │ │ │ │ ├── grid.locale-tr.js │ │ │ │ │ ├── grid.locale-tw.js │ │ │ │ │ ├── grid.locale-ua.js │ │ │ │ │ └── grid.locale-vi.js │ │ │ │ └── jquery.jqGrid.min.js │ │ │ ├── jquery-ui │ │ │ │ ├── i18n │ │ │ │ │ ├── jquery-ui-i18n.min.js │ │ │ │ │ ├── jquery.ui.datepicker-af.min.js │ │ │ │ │ ├── jquery.ui.datepicker-ar-DZ.min.js │ │ │ │ │ ├── jquery.ui.datepicker-ar.min.js │ │ │ │ │ ├── jquery.ui.datepicker-az.min.js │ │ │ │ │ ├── jquery.ui.datepicker-be.min.js │ │ │ │ │ ├── jquery.ui.datepicker-bg.min.js │ │ │ │ │ ├── jquery.ui.datepicker-bs.min.js │ │ │ │ │ ├── jquery.ui.datepicker-ca.min.js │ │ │ │ │ ├── jquery.ui.datepicker-cs.min.js │ │ │ │ │ ├── jquery.ui.datepicker-cy-GB.min.js │ │ │ │ │ ├── jquery.ui.datepicker-da.min.js │ │ │ │ │ ├── jquery.ui.datepicker-de.min.js │ │ │ │ │ ├── jquery.ui.datepicker-el.min.js │ │ │ │ │ ├── jquery.ui.datepicker-en-AU.min.js │ │ │ │ │ ├── jquery.ui.datepicker-en-GB.min.js │ │ │ │ │ ├── jquery.ui.datepicker-en-NZ.min.js │ │ │ │ │ ├── jquery.ui.datepicker-eo.min.js │ │ │ │ │ ├── jquery.ui.datepicker-es.min.js │ │ │ │ │ ├── jquery.ui.datepicker-et.min.js │ │ │ │ │ ├── jquery.ui.datepicker-eu.min.js │ │ │ │ │ ├── jquery.ui.datepicker-fa.min.js │ │ │ │ │ ├── jquery.ui.datepicker-fi.min.js │ │ │ │ │ ├── jquery.ui.datepicker-fo.min.js │ │ │ │ │ ├── jquery.ui.datepicker-fr-CA.min.js │ │ │ │ │ ├── jquery.ui.datepicker-fr-CH.min.js │ │ │ │ │ ├── jquery.ui.datepicker-fr.min.js │ │ │ │ │ ├── jquery.ui.datepicker-gl.min.js │ │ │ │ │ ├── jquery.ui.datepicker-he.min.js │ │ │ │ │ ├── jquery.ui.datepicker-hi.min.js │ │ │ │ │ ├── jquery.ui.datepicker-hr.min.js │ │ │ │ │ ├── jquery.ui.datepicker-hu.min.js │ │ │ │ │ ├── jquery.ui.datepicker-hy.min.js │ │ │ │ │ ├── jquery.ui.datepicker-id.min.js │ │ │ │ │ ├── jquery.ui.datepicker-is.min.js │ │ │ │ │ ├── jquery.ui.datepicker-it.min.js │ │ │ │ │ ├── jquery.ui.datepicker-ja.min.js │ │ │ │ │ ├── jquery.ui.datepicker-ka.min.js │ │ │ │ │ ├── jquery.ui.datepicker-kk.min.js │ │ │ │ │ ├── jquery.ui.datepicker-km.min.js │ │ │ │ │ ├── jquery.ui.datepicker-ko.min.js │ │ │ │ │ ├── jquery.ui.datepicker-ky.min.js │ │ │ │ │ ├── jquery.ui.datepicker-lb.min.js │ │ │ │ │ ├── jquery.ui.datepicker-lt.min.js │ │ │ │ │ ├── jquery.ui.datepicker-lv.min.js │ │ │ │ │ ├── jquery.ui.datepicker-mk.min.js │ │ │ │ │ ├── jquery.ui.datepicker-ml.min.js │ │ │ │ │ ├── jquery.ui.datepicker-ms.min.js │ │ │ │ │ ├── jquery.ui.datepicker-nb.min.js │ │ │ │ │ ├── jquery.ui.datepicker-nl-BE.min.js │ │ │ │ │ ├── jquery.ui.datepicker-nl.min.js │ │ │ │ │ ├── jquery.ui.datepicker-nn.min.js │ │ │ │ │ ├── jquery.ui.datepicker-no.min.js │ │ │ │ │ ├── jquery.ui.datepicker-pl.min.js │ │ │ │ │ ├── jquery.ui.datepicker-pt-BR.min.js │ │ │ │ │ ├── jquery.ui.datepicker-pt.min.js │ │ │ │ │ ├── jquery.ui.datepicker-rm.min.js │ │ │ │ │ ├── jquery.ui.datepicker-ro.min.js │ │ │ │ │ ├── jquery.ui.datepicker-ru.min.js │ │ │ │ │ ├── jquery.ui.datepicker-sk.min.js │ │ │ │ │ ├── jquery.ui.datepicker-sl.min.js │ │ │ │ │ ├── jquery.ui.datepicker-sq.min.js │ │ │ │ │ ├── jquery.ui.datepicker-sr-SR.min.js │ │ │ │ │ ├── jquery.ui.datepicker-sr.min.js │ │ │ │ │ ├── jquery.ui.datepicker-sv.min.js │ │ │ │ │ ├── jquery.ui.datepicker-ta.min.js │ │ │ │ │ ├── jquery.ui.datepicker-th.min.js │ │ │ │ │ ├── jquery.ui.datepicker-tj.min.js │ │ │ │ │ ├── jquery.ui.datepicker-tr.min.js │ │ │ │ │ ├── jquery.ui.datepicker-uk.min.js │ │ │ │ │ ├── jquery.ui.datepicker-vi.min.js │ │ │ │ │ ├── jquery.ui.datepicker-zh-CN.min.js │ │ │ │ │ ├── jquery.ui.datepicker-zh-HK.min.js │ │ │ │ │ └── jquery.ui.datepicker-zh-TW.min.js │ │ │ │ ├── images │ │ │ │ │ ├── animated-overlay.gif │ │ │ │ │ ├── ui-bg_flat_0_aaaaaa_40x100.png │ │ │ │ │ ├── ui-bg_flat_75_ffffff_40x100.png │ │ │ │ │ ├── ui-bg_glass_55_fbf9ee_1x400.png │ │ │ │ │ ├── ui-bg_glass_65_ffffff_1x400.png │ │ │ │ │ ├── ui-bg_glass_75_dadada_1x400.png │ │ │ │ │ ├── ui-bg_glass_75_e6e6e6_1x400.png │ │ │ │ │ ├── ui-bg_glass_95_fef1ec_1x400.png │ │ │ │ │ ├── ui-bg_highlight-soft_75_cccccc_1x100.png │ │ │ │ │ ├── ui-icons_222222_256x240.png │ │ │ │ │ ├── ui-icons_2e83ff_256x240.png │ │ │ │ │ ├── ui-icons_454545_256x240.png │ │ │ │ │ ├── ui-icons_888888_256x240.png │ │ │ │ │ └── ui-icons_cd0a0a_256x240.png │ │ │ │ ├── jquery-ui.css │ │ │ │ ├── jquery-ui.js │ │ │ │ ├── jquery-ui.min.css │ │ │ │ └── jquery-ui.min.js │ │ │ ├── jsKnob │ │ │ │ └── jquery.knob.js │ │ │ ├── jsTree │ │ │ │ └── jstree.min.js │ │ │ ├── justified-gallery │ │ │ │ ├── README.md │ │ │ │ ├── jquery.justifiedgallery.css │ │ │ │ ├── jquery.justifiedgallery.js │ │ │ │ ├── jquery.justifiedgallery.min.css │ │ │ │ ├── jquery.justifiedgallery.min.js │ │ │ │ └── loading.gif │ │ │ ├── jvectormap │ │ │ │ ├── ._jquery-jvectormap-2.0.2.min.js │ │ │ │ ├── jquery-jvectormap-2.0.2.css │ │ │ │ ├── jquery-jvectormap-2.0.2.min.js │ │ │ │ └── jquery-jvectormap-world-mill-en.js │ │ │ ├── metisMenu │ │ │ │ └── jquery.metisMenu.js │ │ │ ├── morris │ │ │ │ ├── morris.js │ │ │ │ └── raphael-2.1.0.min.js │ │ │ ├── nestable │ │ │ │ └── jquery.nestable.js │ │ │ ├── nouslider │ │ │ │ └── jquery.nouislider.min.js │ │ │ ├── pace │ │ │ │ └── pace.min.js │ │ │ ├── peity │ │ │ │ └── jquery.peity.min.js │ │ │ ├── preetyTextDiff │ │ │ │ └── jquery.pretty-text-diff.min.js │ │ │ ├── rickshaw │ │ │ │ ├── rickshaw.min.js │ │ │ │ └── vendor │ │ │ │ │ └── d3.v3.js │ │ │ ├── slimscroll │ │ │ │ ├── jquery.slimscroll.js │ │ │ │ └── jquery.slimscroll.min.js │ │ │ ├── sparkline │ │ │ │ └── jquery.sparkline.min.js │ │ │ ├── staps │ │ │ │ └── jquery.steps.min.js │ │ │ ├── summernote │ │ │ │ └── summernote.min.js │ │ │ ├── sweetalert │ │ │ │ ├── ._sweetalert.min.js │ │ │ │ └── sweetalert.min.js │ │ │ ├── switchery │ │ │ │ └── switchery.js │ │ │ ├── tinycon │ │ │ │ └── tinycon.min.js │ │ │ ├── toastr │ │ │ │ └── toastr.min.js │ │ │ ├── validate │ │ │ │ └── jquery.validate.min.js │ │ │ ├── video │ │ │ │ └── responsible-video.js │ │ │ └── wow │ │ │ │ └── wow.min.js │ │ ├── requests.js │ │ └── validators.js │ ├── json │ │ └── datatable.zh_CN.json │ └── vendor │ │ └── echarts │ │ └── echarts.min.js ├── templates │ ├── base.html │ └── layout.html ├── validators.py └── views.py ├── utils ├── __init__.py ├── iputils.py ├── rediscli.py └── timezone.py └── vul ├── __init__.py ├── commands.py ├── models.py ├── templates └── vul │ ├── plugin_config.html │ ├── sys_vul.html │ ├── sys_vul_job.html │ └── sys_vul_plugin.html └── views.py /.gitattributes: -------------------------------------------------------------------------------- 1 | *.js linguist-language=Python 2 | *.css linguist-language=Python 3 | *.html linguist-language=Python -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | venv/* 2 | *.pyc -------------------------------------------------------------------------------- /asset/__init__.py: -------------------------------------------------------------------------------- 1 | #encoding: utf-8 2 | 3 | from flask import Blueprint 4 | 5 | 6 | bp = Blueprint('asset', __name__, url_prefix='/asset', static_folder='static', template_folder='templates') 7 | 8 | from . import views 9 | from . import models 10 | from . import commands -------------------------------------------------------------------------------- /asset/commands.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/asset/commands.py -------------------------------------------------------------------------------- /asset/discover/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/asset/discover/__init__.py -------------------------------------------------------------------------------- /asset/discover/sys/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/asset/discover/sys/__init__.py -------------------------------------------------------------------------------- /asset/discover/web/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/asset/discover/web/__init__.py -------------------------------------------------------------------------------- /asset/views.py: -------------------------------------------------------------------------------- 1 | #encoding: utf-8 2 | 3 | from flask import render_template 4 | from auth.decorators import login_required 5 | 6 | from shadow.response import json 7 | 8 | from . import bp 9 | from .models import SysAsset 10 | 11 | @bp.route('/') 12 | @bp.route('/sys_asset/') 13 | @login_required 14 | def sys_asset(): 15 | return render_template('asset/sys_asset.html', assets=SysAsset.all()) 16 | 17 | 18 | @bp.route('/sys_asset/list/') 19 | @login_required 20 | def list_sys_asset(): 21 | assets=[asset.as_dict() for asset in SysAsset.all()] 22 | return json(assets) 23 | 24 | 25 | @bp.route('/sys_asset/delete/') 26 | @login_required 27 | def delete_sys_asset(): 28 | SysAsset.delete_by_key(request.form.get('id', 0)) 29 | return json() -------------------------------------------------------------------------------- /auth/__init__.py: -------------------------------------------------------------------------------- 1 | #encoding: utf-8 2 | 3 | from flask import Blueprint 4 | 5 | bp = Blueprint('auth', __name__, url_prefix='/auth', static_folder='static', template_folder='templates') 6 | 7 | from . import views 8 | from . import models 9 | 10 | from . import hooks 11 | 12 | from . import commands -------------------------------------------------------------------------------- /auth/commands.py: -------------------------------------------------------------------------------- 1 | #encoding: utf-8 2 | 3 | import traceback 4 | 5 | import click 6 | 7 | from flask.cli import AppGroup 8 | 9 | from shadow import app 10 | 11 | 12 | from .models import User 13 | 14 | cli = AppGroup('auth') 15 | 16 | 17 | @cli.command('create-user') 18 | @click.option('--name', type=str, prompt=True, help='name') 19 | @click.option('--email', type=str, prompt=True, help='email') 20 | @click.option('--is_super', type=bool, is_flag=True, help='is super man') 21 | @click.option('--password', type=str, prompt=True, hide_input=True, confirmation_prompt=True, help="password") 22 | def create_user(name, email, is_super, password): 23 | try: 24 | user, has_error, errors = User.create(name=name, email=email, is_super=is_super, password=password) 25 | if has_error: 26 | click.echo('fail create user:') 27 | for key, error in errors.items(): 28 | click.echo(error.msg) 29 | else: 30 | click.echo("success create user") 31 | except BaseException as e: 32 | click.echo("fail create user, reason:{0}".format(e)) 33 | app.logger.exception(e) 34 | app.logger.error(traceback.format_exc()) 35 | 36 | app.cli.add_command(cli) 37 | -------------------------------------------------------------------------------- /auth/decorators.py: -------------------------------------------------------------------------------- 1 | #encoding: utf-8 2 | 3 | from functools import wraps 4 | 5 | from flask import request, g, redirect, url_for 6 | 7 | from shadow import response 8 | 9 | def login_required(func): 10 | 11 | @wraps(func) 12 | def wrapper(*args, **kwargs): 13 | if g.user is None: 14 | return response.json(response.STATUS_UNAUTHENTICATE) if request.is_xhr else redirect(url_for('auth.login', next=request.path)) 15 | 16 | rt = func(*args, **kwargs) 17 | return rt 18 | 19 | return wrapper 20 | 21 | -------------------------------------------------------------------------------- /auth/hooks.py: -------------------------------------------------------------------------------- 1 | #encoding: utf-8 2 | 3 | from flask import session, g 4 | 5 | from . import bp 6 | 7 | from .models import User 8 | 9 | 10 | @bp.before_app_request 11 | def load_user(): 12 | g.user = None 13 | if session.get('user'): 14 | g.user = User.get_by_key(session.get('user')) -------------------------------------------------------------------------------- /auth/views.py: -------------------------------------------------------------------------------- 1 | #encoding: utf-8 2 | 3 | from flask import session, request, render_template, url_for, redirect, g 4 | 5 | from shadow import response 6 | 7 | from . import bp 8 | 9 | from .decorators import login_required 10 | 11 | from .models import Role, User 12 | 13 | 14 | @bp.route('/', methods=['GET', 'POST']) 15 | @bp.route('/login/', methods=['POST']) 16 | def login(next=None): 17 | if g.user: 18 | return response.json(result={'next' : request.args.get('next') or '/'}) if request.is_xhr else redirect('/') 19 | 20 | name, password, errors = '', '', {} 21 | if request.method == 'POST': 22 | name = request.form.get('name', '') 23 | password = request.form.get('password', '') 24 | user = User.authenticate(name, password) 25 | if user: 26 | session['user'] = user.id 27 | return response.json(result={'next' : request.args.get('next') or '/'}) 28 | else: 29 | errors['user'] = '用户名或密码错误' 30 | return response.json(errors=errors) 31 | return render_template('auth/login.html', name=name, password=password, errors=errors) 32 | 33 | 34 | @bp.route('/logout/') 35 | def logout(): 36 | session.clear() 37 | return redirect(url_for('auth.login')) 38 | 39 | 40 | @bp.route('/users/') 41 | @login_required 42 | def users(): 43 | return render_template('auth/user.html', users=User.all()) 44 | -------------------------------------------------------------------------------- /dashboard/__init__.py: -------------------------------------------------------------------------------- 1 | #encoding: utf-8 2 | 3 | from flask import Blueprint 4 | 5 | bp = Blueprint('dashboard', __name__, url_prefix='/dashboard', static_folder='static', template_folder='templates') 6 | 7 | from . import views -------------------------------------------------------------------------------- /dashboard/views.py: -------------------------------------------------------------------------------- 1 | #encoding: utf-8 2 | 3 | from flask import render_template 4 | 5 | from shadow.response import json 6 | 7 | from . import bp 8 | 9 | from auth.decorators import login_required 10 | 11 | from asset.models import SysAsset, Application 12 | from vul.models import AssetSysVul 13 | from schedule.models import Executor 14 | 15 | 16 | 17 | @bp.route('/') 18 | @login_required 19 | def index(): 20 | #最新发现资产数量/总资产数量/存在漏洞的主机数量 21 | #最新发现端口数量/总端口数量 22 | #最新发现漏洞数量/总漏洞数量 23 | #端口统计 24 | #漏洞发现主机统计 25 | #主机发现漏洞统计 26 | 27 | stats = {} 28 | stats['asset'] = SysAsset.stats() 29 | stats['app'] = Application.stats() 30 | stats['vul'] = AssetSysVul.stats() 31 | stats['executor'] = Executor.stats() 32 | stats['stats_port'] = Application.stats_port() 33 | stats['stats_host_vul'] = AssetSysVul.stats_host_vul() 34 | stats['stats_vul_host'] = AssetSysVul.stats_vul_host() 35 | return render_template('dashboard/index.html', stats=stats) 36 | 37 | 38 | 39 | @bp.route('/stats/') 40 | @login_required 41 | def stats(): 42 | #最新发现资产数量/总资产数量/存在漏洞的主机数量 43 | #最新发现端口数量/总端口数量 44 | #最新发现漏洞数量/总漏洞数量 45 | #端口统计 46 | #漏洞发现主机统计 47 | #主机发现漏洞统计 48 | stats = {} 49 | stats['asset'] = SysAsset.stats() 50 | stats['app'] = Application.stats() 51 | stats['vul'] = AssetSysVul.stats() 52 | stats['executor'] = Executor.stats() 53 | stats['stats_port'] = Application.stats_port() 54 | stats['stats_host_vul'] = AssetSysVul.stats_host_vul() 55 | stats['stats_vul_host'] = AssetSysVul.stats_vul_host() 56 | return json(stats) -------------------------------------------------------------------------------- /docs/整体架构.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/docs/整体架构.png -------------------------------------------------------------------------------- /docs/设计.vsdx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/docs/设计.vsdx -------------------------------------------------------------------------------- /docs/配置图片/新建插件1-ssh弱口令.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/docs/配置图片/新建插件1-ssh弱口令.jpg -------------------------------------------------------------------------------- /docs/配置图片/新建插件2-http_header-check.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/docs/配置图片/新建插件2-http_header-check.jpg -------------------------------------------------------------------------------- /docs/配置图片/新建插件3-http_status-check.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/docs/配置图片/新建插件3-http_status-check.jpg -------------------------------------------------------------------------------- /docs/配置图片/新建插件4-http_response-check.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/docs/配置图片/新建插件4-http_response-check.jpg -------------------------------------------------------------------------------- /docs/配置图片/新建配置1-__PASSWORD__.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/docs/配置图片/新建配置1-__PASSWORD__.jpg -------------------------------------------------------------------------------- /logs/readme.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/logs/readme.md -------------------------------------------------------------------------------- /requirements.all.txt: -------------------------------------------------------------------------------- 1 | asn1crypto==0.24.0 2 | backcall==0.1.0 3 | bcrypt==3.1.4 4 | certifi==2018.4.16 5 | cffi==1.11.5 6 | chardet==3.0.4 7 | click==6.7 8 | colorama==0.3.9 9 | cryptography==2.2.2 10 | decorator==4.3.0 11 | Flask==1.0.2 12 | Flask-SQLAlchemy==2.3.2 13 | idna==2.6 14 | ipython==6.4.0 15 | ipython-genutils==0.2.0 16 | itsdangerous==0.24 17 | jedi==0.12.0 18 | Jinja2==2.10 19 | MarkupSafe==1.0 20 | netaddr==0.7.19 21 | paramiko==2.4.1 22 | parso==0.2.1 23 | pickleshare==0.7.4 24 | prompt-toolkit==1.0.15 25 | psycopg2==2.7.4 26 | pyasn1==0.4.3 27 | pycparser==2.18 28 | Pygments==2.2.0 29 | PyNaCl==1.2.1 30 | python-nmap==0.6.1 31 | redis==2.10.6 32 | requests==2.18.4 33 | simplegeneric==0.8.1 34 | six==1.11.0 35 | SQLAlchemy==1.2.8 36 | traitlets==4.3.2 37 | urllib3==1.22 38 | wcwidth==0.1.7 39 | Werkzeug==0.14.1 40 | -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- 1 | Flask==1.0.2 2 | Flask-SQLAlchemy==2.3.2 3 | ipython==6.4.0 4 | netaddr==0.7.19 5 | paramiko==2.4.1 6 | psycopg2==2.7.4 7 | python-nmap==0.6.1 8 | redis==2.10.6 9 | requests==2.18.4 -------------------------------------------------------------------------------- /run.cmd: -------------------------------------------------------------------------------- 1 | @echo off 2 | 3 | set FLASK_APP=shadow 4 | 5 | ::production or development 6 | set FLASK_ENV=development 7 | 8 | flask %* -------------------------------------------------------------------------------- /run.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | export FLASK_APP=shadow 4 | 5 | #production or development 6 | export FLASK_ENV=development 7 | 8 | flask $@ -------------------------------------------------------------------------------- /schedule/__init__.py: -------------------------------------------------------------------------------- 1 | #encoding: utf-8 2 | 3 | from flask import Blueprint 4 | 5 | bp = Blueprint('schedule', __name__, url_prefix='/schedule', static_folder='static', template_folder='templates') 6 | 7 | from . import views 8 | from . import models 9 | from . import commands -------------------------------------------------------------------------------- /schedule/dispatcher/__init__.py: -------------------------------------------------------------------------------- 1 | #encoding: utf-8 2 | 3 | from .manager import preprocess, dispatch, result -------------------------------------------------------------------------------- /schedule/executor/__init__.py: -------------------------------------------------------------------------------- 1 | #encoding: utf-8 2 | 3 | from .manager import heartbeat, handle -------------------------------------------------------------------------------- /schedule/executor/sys_asset_discover/__init__.py: -------------------------------------------------------------------------------- 1 | #encoding: utf-8 2 | 3 | from ..base import BaseExecutor 4 | import logging 5 | 6 | logger = logging.getLogger(__name__) 7 | 8 | class Executor(BaseExecutor): 9 | pass -------------------------------------------------------------------------------- /schedule/executor/sys_asset_discover/plugin_nmap.py: -------------------------------------------------------------------------------- 1 | #encoding: utf-8 2 | import time 3 | import logging 4 | 5 | import netaddr 6 | import nmap 7 | 8 | logger = logging.getLogger(__name__) 9 | 10 | 11 | def run(job_params, plugin_info, plugin_config, *args, **kwargs): 12 | hosts = job_params.get('ip', []) 13 | ports = job_params.get('port', '0-1024') 14 | hosts = [' '.join(netaddr.iprange_to_globs(*x)) for x in hosts] 15 | 16 | nm = nmap.PortScanner() 17 | logger.debug(nm.scan(hosts=' '.join(hosts), ports=ports, arguments='-sV -O')) 18 | for host in nm.all_hosts(): 19 | host_info = nm[host] 20 | os_info = '' 21 | try: 22 | os_info = host_info['osmatch'][0]['name'] 23 | except BaseException as e: 24 | pass 25 | 26 | apps = [] 27 | for protocol in host_info.all_protocols(): 28 | for port_num, port_info in host_info[protocol].items(): 29 | port = port_info.copy() 30 | port['protocol'] = protocol 31 | port['port'] = port_num 32 | apps.append(port) 33 | 34 | 35 | yield host, { 36 | 'ip' : host, 37 | 'name' : host_info.hostname(), 38 | 'apps' : apps, 39 | 'os' : os_info, 40 | 'mac' : host_info.get('addresses').get('mac', ''), 41 | } -------------------------------------------------------------------------------- /schedule/executor/sys_vul_check/plugin_socket_request.py: -------------------------------------------------------------------------------- 1 | #encoding: utf-8 2 | 3 | import socket 4 | import logging 5 | import traceback 6 | 7 | TYPE = 'socket_request' 8 | 9 | DEFAULT_TIMEOUT = 5 10 | DEFAULT_PORT = 80 11 | DEFAULT_TEXT = 'shadow' 12 | DEFAULT_SIZE = 1024 13 | 14 | logger = logging.getLogger(__name__) 15 | 16 | def run(job_params, plugin_info, plugin_config, *args, **kwargs): 17 | ip = job_params.get('ip', '') 18 | 19 | flag, payloads = check(ip, plugin_config) 20 | 21 | if flag: 22 | yield ip, { 23 | ident : { 24 | 'payloads' : payloads 25 | } 26 | } 27 | 28 | yield ip, None 29 | 30 | 31 | def check(ip, plugin_config): 32 | timeout = int(plugin_config.get('timeout', DEFAULT_TIMEOUT)) 33 | port = int(plugin_config.get('port', DEFAULT_PORT)) 34 | request = str(plugin_config.get('request', DEFAULT_REQUEST)).encode() 35 | size = int(plugin_config.get('size', DEFAULT_SIZE)) 36 | flag = str(plugin_config.get('flag', '')).lower() 37 | 38 | try: 39 | socket.setdefaulttimeout(timeout) 40 | client = socket.socket(socket.AF_INET, socket.SOCK_STREAM) 41 | client.connect((ip, port)) 42 | client.send(text) 43 | response = client.recv(size) 44 | response = response.decode().lower() 45 | 46 | pos = response.find(flag) 47 | if pos != -1: 48 | length = len(text) 49 | start = pos - 20 50 | end = pos + len(value) + 20 51 | start = 0 if start < 0 else start 52 | end = length if end > length else end 53 | 54 | return True, {'response' : response[start, end]} 55 | except BaseException as e: 56 | logger.exception(e) 57 | logger.error(e) 58 | 59 | return False, None 60 | -------------------------------------------------------------------------------- /schedule/executor/sys_vul_check/plugin_ssh_weak_password.py: -------------------------------------------------------------------------------- 1 | #encoding: utf-8 2 | import logging 3 | import traceback 4 | import paramiko 5 | 6 | TYPE = 'script' 7 | IDENT = 'ssh_weak_password' 8 | NAME = 'SSH弱口令' 9 | LEVEL = 10 10 | REMARK = 'SSH弱口令' 11 | 12 | DEFAULT_PORTS = [22] 13 | DEFAULT_USERNAMES = [] 14 | DEFAULT_PASSWORDS = [] 15 | 16 | logger = logging.getLogger(__name__) 17 | 18 | def run(job_params, plugin_info, plugin_config, *args, **kwargs): 19 | ident = plugin_info.ident 20 | ip = job_params.get('ip', '') 21 | 22 | ports = plugin_config.get('ports', DEFAULT_PORTS) 23 | usernames = plugin_config.get('usernames', DEFAULT_USERNAMES) 24 | passwords = plugin_config.get('passwords', DEFAULT_PASSWORDS) 25 | 26 | flag, payloads = check(ip, ports, usernames, passwords) 27 | 28 | if flag: 29 | yield ip, { 30 | ident : { 31 | 'payloads' : payloads 32 | } 33 | } 34 | 35 | yield ip, None 36 | 37 | 38 | def check(ip, ports, usernames, passwords): 39 | ssh = paramiko.SSHClient() 40 | ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) 41 | 42 | try: 43 | for port in ports: 44 | for username in usernames: 45 | for password in passwords: 46 | ssh.connect(ip, port, username, password) 47 | return True, {'username' : username, 'password' : password} 48 | except BaseException as e: 49 | logger.debug(e) 50 | logger.debug(traceback.format_exc()) 51 | finally: 52 | ssh.close() 53 | 54 | return False, None -------------------------------------------------------------------------------- /schedule/processor/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/schedule/processor/__init__.py -------------------------------------------------------------------------------- /schedule/processor/base.py: -------------------------------------------------------------------------------- 1 | #encoding: utf-8 2 | 3 | import logging 4 | from functools import reduce 5 | 6 | from shadow import redis 7 | 8 | logger = logging.getLogger(__name__) 9 | 10 | class Processor(object): 11 | 12 | def preprocess(self, job): 13 | raise BaseException('override method preprocess') 14 | 15 | def result(self, sub_job, type, result): 16 | raise BaseException('override method result') 17 | 18 | def get_job_queue_keys(self, job): 19 | return {} 20 | 21 | def progress(self, job): 22 | keys = self.get_job_queue_keys(job) 23 | flags = [] 24 | rates = [] 25 | totals = [] 26 | ones = [] 27 | for name, key in keys.items(): 28 | total = redis.zcard(key) 29 | one = redis.zcount(key, 1, 1) 30 | totals.append(total) 31 | ones.append(one) 32 | flags.append(False if total == 0 else one == total) 33 | rates.append(0 if total == 0 else (one / total)) 34 | 35 | 36 | rates_nozero = list(filter(lambda x: x > 0.001 , rates)) 37 | if rates_nozero: 38 | job.doing(int(1 - rates.count(0)/len(rates)) * reduce(lambda x, y: x * y, rates_nozero) * 100) 39 | 40 | if all(flags) or (totals[0] == ones[0] and totals[1] == 0): 41 | logger.info('job finish: %s', job) 42 | job.finish() -------------------------------------------------------------------------------- /schedule/processor/manager.py: -------------------------------------------------------------------------------- 1 | #encoding: utf-8 2 | 3 | import logging 4 | import traceback 5 | 6 | from ..models import JobType 7 | from .vul import SysVulScanProcessor 8 | 9 | 10 | 11 | class Manager(object): 12 | 13 | def __init__(self, *args, **kwargs): 14 | self.processors = { 15 | JobType.SYS_VULSCAN : SysVulScanProcessor() 16 | } 17 | 18 | def get(self, type): 19 | return self.processors.get(type, None) -------------------------------------------------------------------------------- /schedule/views.py: -------------------------------------------------------------------------------- 1 | #encoding: utf-8 2 | 3 | import time 4 | 5 | from flask import request, render_template 6 | 7 | from shadow.response import json 8 | from . import bp 9 | from .models import Executor 10 | from auth.decorators import login_required 11 | 12 | @bp.route('/register/', methods=['POST']) 13 | def register(): 14 | ident = request.json.get('ident', '') 15 | hostname = request.json.get('hostname', '') 16 | pid = request.json.get('pid', '') 17 | type = request.json.get('type', '') 18 | total = request.json.get('total', 0) 19 | busy = request.json.get('busy', 0) 20 | idle = request.json.get('idle', 0) 21 | 22 | Executor.create(ident=ident, hostname=hostname, pid=pid, type=type, total=total, busy=busy, idle=idle) 23 | return json(result={'time' : time.time()}) 24 | 25 | @bp.route('/executors/') 26 | @login_required 27 | def executors(): 28 | return render_template('schedule/executor.html', executors=Executor.all(False)) 29 | 30 | @bp.route('/executors/', methods=['POST']) 31 | @login_required 32 | def delete_executor(): 33 | Executor.delete_by_key(request.form.get('id', 0)) 34 | return json() -------------------------------------------------------------------------------- /shadow/__init__.py: -------------------------------------------------------------------------------- 1 | #encoding: utf-8 2 | import logging 3 | 4 | 5 | from flask import Flask 6 | from flask_sqlalchemy import SQLAlchemy 7 | 8 | from .config import AppConfig, REDIS_KEYS, DEFAULT_CONCURRENT 9 | 10 | app = Flask(__name__) 11 | 12 | app.config.from_object(AppConfig) 13 | 14 | 15 | logging.basicConfig( 16 | level=logging.DEBUG if app.config.get('DEBUG', 0) else logging.INFO, 17 | format='%(asctime)s %(name)s %(levelname)s:%(message)s', 18 | datefmt='%Y-%m-%d %H:%M:%S' 19 | ) 20 | 21 | db = SQLAlchemy(app) 22 | 23 | from utils.rediscli import RedisCli 24 | 25 | 26 | redis = RedisCli(app) 27 | 28 | from . import views 29 | from . import commands 30 | 31 | import auth 32 | import dashboard 33 | import schedule 34 | import asset 35 | import vul 36 | 37 | app.register_blueprint(auth.bp) 38 | app.register_blueprint(dashboard.bp) 39 | app.register_blueprint(schedule.bp) 40 | app.register_blueprint(asset.bp) 41 | app.register_blueprint(vul.bp) -------------------------------------------------------------------------------- /shadow/commands.py: -------------------------------------------------------------------------------- 1 | #encoding: utf-8 2 | 3 | import click 4 | 5 | from flask.cli import AppGroup 6 | 7 | from . import app 8 | from . import db 9 | 10 | cli = AppGroup('shadow') 11 | 12 | @cli.command('init-db') 13 | def init_db(): 14 | db.create_all() 15 | click.echo('success init db') 16 | 17 | 18 | app.cli.add_command(cli) -------------------------------------------------------------------------------- /shadow/config.py: -------------------------------------------------------------------------------- 1 | #encoding: utf-8 2 | 3 | REDIS_KEYS = { 4 | 'JOB_PREPROCESS' : 'shadow:job:preprocess', 5 | 'JOB_CONTENT' : 'shadow:job:content:{id}', 6 | 'JOB_DOING' : 'shadow:job:doing', 7 | 'JOB_QUEUE' : 'shadow:job:{type}:{id}', 8 | 'JOB_EXECUTOR' : 'shadow:job:executor:{type}:{ident}', 9 | 'JOB_EXECUTOR_RUNNING' : 'shadow:job:executor:running', 10 | 'JOB_RESULT' : 'shadow:job:result', 11 | 'PLUGIN_SYS_VUL' : 'shadow:plugin:sys_vul:{ident}', 12 | 'PLUGIN_CONFIG' : 'shadow:plugin:config:{ident}', 13 | } 14 | 15 | DEFAULT_CONCURRENT = 3 16 | 17 | class AppConfig(object): 18 | SECRET_KEY = b'\x98\t\x11t\x97\x9d4.+\xe5Z\xb39\xe8/\xd2\xfc\xf3\xa1\xe2\xeb\xc4\xdbr,E\x06|\xec\xb9\x05d' 19 | 20 | #SQLALCHEMY_DATABASE_URI = 'mysql://{user}:{password}@{host}:{port}/shadow?charset=utf8'.format(user='root', password='password', host='localhost', port=3306) 21 | SQLALCHEMY_DATABASE_URI = 'postgresql://{user}:{password}@{host}:{port}/shadow'.format(user='silence', password='password', host='localhost', port=5432) 22 | SQLALCHEMY_TRACK_MODIFICATIONS = False 23 | 24 | REDIS = { 25 | 'host' : 'localhost', 26 | 'port' : 6379, 27 | 'db' : 0, 28 | 'password' : '', 29 | 'decode_responses' : True, 30 | #'password' : 'password', 31 | } -------------------------------------------------------------------------------- /shadow/exceptions.py: -------------------------------------------------------------------------------- 1 | #encoding: utf-8 2 | 3 | 4 | class ShadowException(Exception): 5 | 6 | 7 | def __init__(self, msg, code=None, *args, **kwargs): 8 | super(ShadowException, self).__init__(*args, **kwargs) 9 | self.msg = msg 10 | self.code = code 11 | 12 | 13 | -------------------------------------------------------------------------------- /shadow/models.py: -------------------------------------------------------------------------------- 1 | #encoding: utf-8 2 | 3 | import json 4 | 5 | from datetime import datetime 6 | 7 | class AsDictMixin(object): 8 | def as_dict(self): 9 | result = {} 10 | for key, value in self.__dict__.items(): 11 | if value is None or isinstance(value, (int, float, bool)): 12 | result[key] = value 13 | elif isinstance(value, datetime): 14 | result[key] = value.strftime('%Y-%m-%d %H:%M:%S') 15 | elif isinstance(value, (list, tuple, dict)): 16 | result[key] = value 17 | elif isinstance(value, str): 18 | try: 19 | result[key] = json.loads(value) 20 | except BaseException as e: 21 | result[key] = value 22 | 23 | return result 24 | 25 | def as_dict_string(self): 26 | result = {} 27 | for key, value in self.__dict__.items(): 28 | if value is None or isinstance(value, (int, float, bool, str)): 29 | result[key] = value 30 | elif isinstance(value, datetime): 31 | result[key] = value.strftime('%Y-%m-%d %H:%M:%S') 32 | elif isinstance(value, (list, tuple, dict)): 33 | result[key] = json.dumps(value) 34 | elif isinstance(value, bytes): 35 | result[key] = value.decode() 36 | 37 | return result 38 | 39 | def __str__(self): 40 | return json.dumps(self.as_dict()) 41 | -------------------------------------------------------------------------------- /shadow/response.py: -------------------------------------------------------------------------------- 1 | #encoding: utf-8 2 | 3 | from flask import jsonify 4 | 5 | STATUS_OK = 200 6 | STATUS_PARAMS_ERROR = 400 7 | STATUS_UNAUTHENTICATE = 403 8 | STATUS_SERVER_ERROR = 500 9 | 10 | def json(result=None, code=None, errors=None): 11 | result = result or {} 12 | errors = errors or {} 13 | code = code or (STATUS_PARAMS_ERROR if errors else STATUS_OK) 14 | return jsonify({'code' : code, 'result' : result, 'errors' : errors}) -------------------------------------------------------------------------------- /shadow/static/css/patterns/congruent_pentagon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/patterns/congruent_pentagon.png -------------------------------------------------------------------------------- /shadow/static/css/patterns/header-profile-skin-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/patterns/header-profile-skin-1.png -------------------------------------------------------------------------------- /shadow/static/css/patterns/header-profile-skin-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/patterns/header-profile-skin-2.png -------------------------------------------------------------------------------- /shadow/static/css/patterns/header-profile-skin-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/patterns/header-profile-skin-3.png -------------------------------------------------------------------------------- /shadow/static/css/patterns/header-profile.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/patterns/header-profile.png -------------------------------------------------------------------------------- /shadow/static/css/patterns/otis_redding.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/patterns/otis_redding.png -------------------------------------------------------------------------------- /shadow/static/css/patterns/shattered.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/patterns/shattered.png -------------------------------------------------------------------------------- /shadow/static/css/patterns/triangular.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/patterns/triangular.png -------------------------------------------------------------------------------- /shadow/static/css/plugins/awesome-bootstrap-checkbox/._awesome-bootstrap-checkbox.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/awesome-bootstrap-checkbox/._awesome-bootstrap-checkbox.css -------------------------------------------------------------------------------- /shadow/static/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 | -------------------------------------------------------------------------------- /shadow/static/css/plugins/blueimp/img/error.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/blueimp/img/error.png -------------------------------------------------------------------------------- /shadow/static/css/plugins/blueimp/img/error.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /shadow/static/css/plugins/blueimp/img/loading.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/blueimp/img/loading.gif -------------------------------------------------------------------------------- /shadow/static/css/plugins/blueimp/img/play-pause.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/blueimp/img/play-pause.png -------------------------------------------------------------------------------- /shadow/static/css/plugins/blueimp/img/play-pause.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /shadow/static/css/plugins/blueimp/img/video-play.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/blueimp/img/video-play.png -------------------------------------------------------------------------------- /shadow/static/css/plugins/blueimp/img/video-play.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /shadow/static/css/plugins/chosen/chosen-sprite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/chosen/chosen-sprite.png -------------------------------------------------------------------------------- /shadow/static/css/plugins/chosen/chosen-sprite@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/chosen/chosen-sprite@2x.png -------------------------------------------------------------------------------- /shadow/static/css/plugins/clockpicker/._clockpicker.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/clockpicker/._clockpicker.css -------------------------------------------------------------------------------- /shadow/static/css/plugins/daterangepicker/._daterangepicker-bs3.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/daterangepicker/._daterangepicker-bs3.css -------------------------------------------------------------------------------- /shadow/static/css/plugins/footable/._fonts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/footable/._fonts -------------------------------------------------------------------------------- /shadow/static/css/plugins/footable/._footable.core.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/footable/._footable.core.css -------------------------------------------------------------------------------- /shadow/static/css/plugins/footable/fonts/._footable.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/footable/fonts/._footable.eot -------------------------------------------------------------------------------- /shadow/static/css/plugins/footable/fonts/._footable.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/footable/fonts/._footable.svg -------------------------------------------------------------------------------- /shadow/static/css/plugins/footable/fonts/._footable.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/footable/fonts/._footable.ttf -------------------------------------------------------------------------------- /shadow/static/css/plugins/footable/fonts/._footable.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/footable/fonts/._footable.woff -------------------------------------------------------------------------------- /shadow/static/css/plugins/footable/fonts/footable.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/footable/fonts/footable.eot -------------------------------------------------------------------------------- /shadow/static/css/plugins/footable/fonts/footable.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/footable/fonts/footable.ttf -------------------------------------------------------------------------------- /shadow/static/css/plugins/footable/fonts/footable.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/footable/fonts/footable.woff -------------------------------------------------------------------------------- /shadow/static/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 | } -------------------------------------------------------------------------------- /shadow/static/css/plugins/iCheck/green.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/iCheck/green.png -------------------------------------------------------------------------------- /shadow/static/css/plugins/iCheck/green@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/iCheck/green@2x.png -------------------------------------------------------------------------------- /shadow/static/css/plugins/images/bootstrap-colorpicker/alpha-horizontal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/images/bootstrap-colorpicker/alpha-horizontal.png -------------------------------------------------------------------------------- /shadow/static/css/plugins/images/bootstrap-colorpicker/alpha.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/images/bootstrap-colorpicker/alpha.png -------------------------------------------------------------------------------- /shadow/static/css/plugins/images/bootstrap-colorpicker/hue-horizontal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/images/bootstrap-colorpicker/hue-horizontal.png -------------------------------------------------------------------------------- /shadow/static/css/plugins/images/bootstrap-colorpicker/hue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/images/bootstrap-colorpicker/hue.png -------------------------------------------------------------------------------- /shadow/static/css/plugins/images/bootstrap-colorpicker/saturation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/images/bootstrap-colorpicker/saturation.png -------------------------------------------------------------------------------- /shadow/static/css/plugins/images/sort.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/images/sort.png -------------------------------------------------------------------------------- /shadow/static/css/plugins/images/sort_asc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/images/sort_asc.png -------------------------------------------------------------------------------- /shadow/static/css/plugins/images/sort_desc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/images/sort_desc.png -------------------------------------------------------------------------------- /shadow/static/css/plugins/images/sprite-skin-flat.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/images/sprite-skin-flat.png -------------------------------------------------------------------------------- /shadow/static/css/plugins/images/sprite-skin-flat2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/images/sprite-skin-flat2.png -------------------------------------------------------------------------------- /shadow/static/css/plugins/images/sprite-skin-nice.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/images/sprite-skin-nice.png -------------------------------------------------------------------------------- /shadow/static/css/plugins/images/sprite-skin-simple.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/images/sprite-skin-simple.png -------------------------------------------------------------------------------- /shadow/static/css/plugins/images/spritemap.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/images/spritemap.png -------------------------------------------------------------------------------- /shadow/static/css/plugins/images/spritemap@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/images/spritemap@2x.png -------------------------------------------------------------------------------- /shadow/static/css/plugins/jQueryUI/images/animated-overlay.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/jQueryUI/images/animated-overlay.gif -------------------------------------------------------------------------------- /shadow/static/css/plugins/jQueryUI/images/ui-bg_flat_0_aaaaaa_40x100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/jQueryUI/images/ui-bg_flat_0_aaaaaa_40x100.png -------------------------------------------------------------------------------- /shadow/static/css/plugins/jQueryUI/images/ui-bg_flat_75_ffffff_40x100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/jQueryUI/images/ui-bg_flat_75_ffffff_40x100.png -------------------------------------------------------------------------------- /shadow/static/css/plugins/jQueryUI/images/ui-bg_glass_55_fbf9ee_1x400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/jQueryUI/images/ui-bg_glass_55_fbf9ee_1x400.png -------------------------------------------------------------------------------- /shadow/static/css/plugins/jQueryUI/images/ui-bg_glass_65_ffffff_1x400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/jQueryUI/images/ui-bg_glass_65_ffffff_1x400.png -------------------------------------------------------------------------------- /shadow/static/css/plugins/jQueryUI/images/ui-bg_glass_75_dadada_1x400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/jQueryUI/images/ui-bg_glass_75_dadada_1x400.png -------------------------------------------------------------------------------- /shadow/static/css/plugins/jQueryUI/images/ui-bg_glass_75_e6e6e6_1x400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/jQueryUI/images/ui-bg_glass_75_e6e6e6_1x400.png -------------------------------------------------------------------------------- /shadow/static/css/plugins/jQueryUI/images/ui-bg_glass_95_fef1ec_1x400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/jQueryUI/images/ui-bg_glass_95_fef1ec_1x400.png -------------------------------------------------------------------------------- /shadow/static/css/plugins/jQueryUI/images/ui-bg_highlight-soft_75_cccccc_1x100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/jQueryUI/images/ui-bg_highlight-soft_75_cccccc_1x100.png -------------------------------------------------------------------------------- /shadow/static/css/plugins/jQueryUI/images/ui-icons_222222_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/jQueryUI/images/ui-icons_222222_256x240.png -------------------------------------------------------------------------------- /shadow/static/css/plugins/jQueryUI/images/ui-icons_2e83ff_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/jQueryUI/images/ui-icons_2e83ff_256x240.png -------------------------------------------------------------------------------- /shadow/static/css/plugins/jQueryUI/images/ui-icons_454545_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/jQueryUI/images/ui-icons_454545_256x240.png -------------------------------------------------------------------------------- /shadow/static/css/plugins/jQueryUI/images/ui-icons_888888_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/jQueryUI/images/ui-icons_888888_256x240.png -------------------------------------------------------------------------------- /shadow/static/css/plugins/jQueryUI/images/ui-icons_cd0a0a_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/jQueryUI/images/ui-icons_cd0a0a_256x240.png -------------------------------------------------------------------------------- /shadow/static/css/plugins/jsTree/32px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/jsTree/32px.png -------------------------------------------------------------------------------- /shadow/static/css/plugins/jsTree/39px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/jsTree/39px.png -------------------------------------------------------------------------------- /shadow/static/css/plugins/jsTree/40px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/jsTree/40px.png -------------------------------------------------------------------------------- /shadow/static/css/plugins/jsTree/throbber.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/jsTree/throbber.gif -------------------------------------------------------------------------------- /shadow/static/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;} -------------------------------------------------------------------------------- /shadow/static/css/plugins/sweetalert/._sweetalert.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/css/plugins/sweetalert/._sweetalert.css -------------------------------------------------------------------------------- /shadow/static/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 | } -------------------------------------------------------------------------------- /shadow/static/font-awesome/fonts/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/font-awesome/fonts/FontAwesome.otf -------------------------------------------------------------------------------- /shadow/static/font-awesome/fonts/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/font-awesome/fonts/fontawesome-webfont.eot -------------------------------------------------------------------------------- /shadow/static/font-awesome/fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/font-awesome/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /shadow/static/font-awesome/fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/font-awesome/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /shadow/static/font-awesome/fonts/fontawesome-webfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/font-awesome/fonts/fontawesome-webfont.woff2 -------------------------------------------------------------------------------- /shadow/static/font-awesome/less/animated.less: -------------------------------------------------------------------------------- 1 | // Animated Icons 2 | // -------------------------- 3 | 4 | .@{fa-css-prefix}-spin { 5 | -webkit-animation: fa-spin 2s infinite linear; 6 | animation: fa-spin 2s infinite linear; 7 | } 8 | 9 | .@{fa-css-prefix}-pulse { 10 | -webkit-animation: fa-spin 1s infinite steps(8); 11 | animation: fa-spin 1s infinite steps(8); 12 | } 13 | 14 | @-webkit-keyframes fa-spin { 15 | 0% { 16 | -webkit-transform: rotate(0deg); 17 | transform: rotate(0deg); 18 | } 19 | 100% { 20 | -webkit-transform: rotate(359deg); 21 | transform: rotate(359deg); 22 | } 23 | } 24 | 25 | @keyframes fa-spin { 26 | 0% { 27 | -webkit-transform: rotate(0deg); 28 | transform: rotate(0deg); 29 | } 30 | 100% { 31 | -webkit-transform: rotate(359deg); 32 | transform: rotate(359deg); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /shadow/static/font-awesome/less/bordered-pulled.less: -------------------------------------------------------------------------------- 1 | // Bordered & Pulled 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-border { 5 | padding: .2em .25em .15em; 6 | border: solid .08em @fa-border-color; 7 | border-radius: .1em; 8 | } 9 | 10 | .pull-right { float: right; } 11 | .pull-left { float: left; } 12 | 13 | .@{fa-css-prefix} { 14 | &.pull-left { margin-right: .3em; } 15 | &.pull-right { margin-left: .3em; } 16 | } 17 | -------------------------------------------------------------------------------- /shadow/static/font-awesome/less/core.less: -------------------------------------------------------------------------------- 1 | // Base Class Definition 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix} { 5 | display: inline-block; 6 | font: normal normal normal @fa-font-size-base/1 FontAwesome; // shortening font declaration 7 | font-size: inherit; // can't have font-size inherit on line above, so need to override 8 | text-rendering: auto; // optimizelegibility throws things off #1094 9 | -webkit-font-smoothing: antialiased; 10 | -moz-osx-font-smoothing: grayscale; 11 | transform: translate(0, 0); // ensures no half-pixel rendering in firefox 12 | 13 | } 14 | -------------------------------------------------------------------------------- /shadow/static/font-awesome/less/fixed-width.less: -------------------------------------------------------------------------------- 1 | // Fixed Width Icons 2 | // ------------------------- 3 | .@{fa-css-prefix}-fw { 4 | width: (18em / 14); 5 | text-align: center; 6 | } 7 | -------------------------------------------------------------------------------- /shadow/static/font-awesome/less/font-awesome.less: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome 4.3.0 by @davegandy - http://fontawesome.io - @fontawesome 3 | * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) 4 | */ 5 | 6 | @import "variables.less"; 7 | @import "mixins.less"; 8 | @import "path.less"; 9 | @import "core.less"; 10 | @import "larger.less"; 11 | @import "fixed-width.less"; 12 | @import "list.less"; 13 | @import "bordered-pulled.less"; 14 | @import "animated.less"; 15 | @import "rotated-flipped.less"; 16 | @import "stacked.less"; 17 | @import "icons.less"; 18 | -------------------------------------------------------------------------------- /shadow/static/font-awesome/less/larger.less: -------------------------------------------------------------------------------- 1 | // Icon Sizes 2 | // ------------------------- 3 | 4 | /* makes the font 33% larger relative to the icon container */ 5 | .@{fa-css-prefix}-lg { 6 | font-size: (4em / 3); 7 | line-height: (3em / 4); 8 | vertical-align: -15%; 9 | } 10 | .@{fa-css-prefix}-2x { font-size: 2em; } 11 | .@{fa-css-prefix}-3x { font-size: 3em; } 12 | .@{fa-css-prefix}-4x { font-size: 4em; } 13 | .@{fa-css-prefix}-5x { font-size: 5em; } 14 | -------------------------------------------------------------------------------- /shadow/static/font-awesome/less/list.less: -------------------------------------------------------------------------------- 1 | // List Icons 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-ul { 5 | padding-left: 0; 6 | margin-left: @fa-li-width; 7 | list-style-type: none; 8 | > li { position: relative; } 9 | } 10 | .@{fa-css-prefix}-li { 11 | position: absolute; 12 | left: -@fa-li-width; 13 | width: @fa-li-width; 14 | top: (2em / 14); 15 | text-align: center; 16 | &.@{fa-css-prefix}-lg { 17 | left: (-@fa-li-width + (4em / 14)); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /shadow/static/font-awesome/less/mixins.less: -------------------------------------------------------------------------------- 1 | // Mixins 2 | // -------------------------- 3 | 4 | .fa-icon() { 5 | display: inline-block; 6 | font: normal normal normal @fa-font-size-base/1 FontAwesome; // shortening font declaration 7 | font-size: inherit; // can't have font-size inherit on line above, so need to override 8 | text-rendering: auto; // optimizelegibility throws things off #1094 9 | -webkit-font-smoothing: antialiased; 10 | -moz-osx-font-smoothing: grayscale; 11 | transform: translate(0, 0); // ensures no half-pixel rendering in firefox 12 | 13 | } 14 | 15 | .fa-icon-rotate(@degrees, @rotation) { 16 | filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=@rotation); 17 | -webkit-transform: rotate(@degrees); 18 | -ms-transform: rotate(@degrees); 19 | transform: rotate(@degrees); 20 | } 21 | 22 | .fa-icon-flip(@horiz, @vert, @rotation) { 23 | filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=@rotation, mirror=1); 24 | -webkit-transform: scale(@horiz, @vert); 25 | -ms-transform: scale(@horiz, @vert); 26 | transform: scale(@horiz, @vert); 27 | } 28 | -------------------------------------------------------------------------------- /shadow/static/font-awesome/less/path.less: -------------------------------------------------------------------------------- 1 | /* FONT PATH 2 | * -------------------------- */ 3 | 4 | @font-face { 5 | font-family: 'FontAwesome'; 6 | src: url('@{fa-font-path}/fontawesome-webfont.eot?v=@{fa-version}'); 7 | src: url('@{fa-font-path}/fontawesome-webfont.eot?#iefix&v=@{fa-version}') format('embedded-opentype'), 8 | url('@{fa-font-path}/fontawesome-webfont.woff2?v=@{fa-version}') format('woff2'), 9 | url('@{fa-font-path}/fontawesome-webfont.woff?v=@{fa-version}') format('woff'), 10 | url('@{fa-font-path}/fontawesome-webfont.ttf?v=@{fa-version}') format('truetype'), 11 | url('@{fa-font-path}/fontawesome-webfont.svg?v=@{fa-version}#fontawesomeregular') format('svg'); 12 | // src: url('@{fa-font-path}/FontAwesome.otf') format('opentype'); // used when developing fonts 13 | font-weight: normal; 14 | font-style: normal; 15 | } 16 | -------------------------------------------------------------------------------- /shadow/static/font-awesome/less/rotated-flipped.less: -------------------------------------------------------------------------------- 1 | // Rotated & Flipped Icons 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-rotate-90 { .fa-icon-rotate(90deg, 1); } 5 | .@{fa-css-prefix}-rotate-180 { .fa-icon-rotate(180deg, 2); } 6 | .@{fa-css-prefix}-rotate-270 { .fa-icon-rotate(270deg, 3); } 7 | 8 | .@{fa-css-prefix}-flip-horizontal { .fa-icon-flip(-1, 1, 0); } 9 | .@{fa-css-prefix}-flip-vertical { .fa-icon-flip(1, -1, 2); } 10 | 11 | // Hook for IE8-9 12 | // ------------------------- 13 | 14 | :root .@{fa-css-prefix}-rotate-90, 15 | :root .@{fa-css-prefix}-rotate-180, 16 | :root .@{fa-css-prefix}-rotate-270, 17 | :root .@{fa-css-prefix}-flip-horizontal, 18 | :root .@{fa-css-prefix}-flip-vertical { 19 | filter: none; 20 | } 21 | -------------------------------------------------------------------------------- /shadow/static/font-awesome/less/stacked.less: -------------------------------------------------------------------------------- 1 | // Stacked Icons 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-stack { 5 | position: relative; 6 | display: inline-block; 7 | width: 2em; 8 | height: 2em; 9 | line-height: 2em; 10 | vertical-align: middle; 11 | } 12 | .@{fa-css-prefix}-stack-1x, .@{fa-css-prefix}-stack-2x { 13 | position: absolute; 14 | left: 0; 15 | width: 100%; 16 | text-align: center; 17 | } 18 | .@{fa-css-prefix}-stack-1x { line-height: inherit; } 19 | .@{fa-css-prefix}-stack-2x { font-size: 2em; } 20 | .@{fa-css-prefix}-inverse { color: @fa-inverse; } 21 | -------------------------------------------------------------------------------- /shadow/static/font-awesome/scss/_animated.scss: -------------------------------------------------------------------------------- 1 | // Spinning Icons 2 | // -------------------------- 3 | 4 | .#{$fa-css-prefix}-spin { 5 | -webkit-animation: fa-spin 2s infinite linear; 6 | animation: fa-spin 2s infinite linear; 7 | } 8 | 9 | .#{$fa-css-prefix}-pulse { 10 | -webkit-animation: fa-spin 1s infinite steps(8); 11 | animation: fa-spin 1s infinite steps(8); 12 | } 13 | 14 | @-webkit-keyframes fa-spin { 15 | 0% { 16 | -webkit-transform: rotate(0deg); 17 | transform: rotate(0deg); 18 | } 19 | 100% { 20 | -webkit-transform: rotate(359deg); 21 | transform: rotate(359deg); 22 | } 23 | } 24 | 25 | @keyframes fa-spin { 26 | 0% { 27 | -webkit-transform: rotate(0deg); 28 | transform: rotate(0deg); 29 | } 30 | 100% { 31 | -webkit-transform: rotate(359deg); 32 | transform: rotate(359deg); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /shadow/static/font-awesome/scss/_bordered-pulled.scss: -------------------------------------------------------------------------------- 1 | // Bordered & Pulled 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-border { 5 | padding: .2em .25em .15em; 6 | border: solid .08em $fa-border-color; 7 | border-radius: .1em; 8 | } 9 | 10 | .pull-right { float: right; } 11 | .pull-left { float: left; } 12 | 13 | .#{$fa-css-prefix} { 14 | &.pull-left { margin-right: .3em; } 15 | &.pull-right { margin-left: .3em; } 16 | } 17 | -------------------------------------------------------------------------------- /shadow/static/font-awesome/scss/_core.scss: -------------------------------------------------------------------------------- 1 | // Base Class Definition 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix} { 5 | display: inline-block; 6 | font: normal normal normal #{$fa-font-size-base}/1 FontAwesome; // shortening font declaration 7 | font-size: inherit; // can't have font-size inherit on line above, so need to override 8 | text-rendering: auto; // optimizelegibility throws things off #1094 9 | -webkit-font-smoothing: antialiased; 10 | -moz-osx-font-smoothing: grayscale; 11 | transform: translate(0, 0); // ensures no half-pixel rendering in firefox 12 | 13 | } 14 | -------------------------------------------------------------------------------- /shadow/static/font-awesome/scss/_fixed-width.scss: -------------------------------------------------------------------------------- 1 | // Fixed Width Icons 2 | // ------------------------- 3 | .#{$fa-css-prefix}-fw { 4 | width: (18em / 14); 5 | text-align: center; 6 | } 7 | -------------------------------------------------------------------------------- /shadow/static/font-awesome/scss/_larger.scss: -------------------------------------------------------------------------------- 1 | // Icon Sizes 2 | // ------------------------- 3 | 4 | /* makes the font 33% larger relative to the icon container */ 5 | .#{$fa-css-prefix}-lg { 6 | font-size: (4em / 3); 7 | line-height: (3em / 4); 8 | vertical-align: -15%; 9 | } 10 | .#{$fa-css-prefix}-2x { font-size: 2em; } 11 | .#{$fa-css-prefix}-3x { font-size: 3em; } 12 | .#{$fa-css-prefix}-4x { font-size: 4em; } 13 | .#{$fa-css-prefix}-5x { font-size: 5em; } 14 | -------------------------------------------------------------------------------- /shadow/static/font-awesome/scss/_list.scss: -------------------------------------------------------------------------------- 1 | // List Icons 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-ul { 5 | padding-left: 0; 6 | margin-left: $fa-li-width; 7 | list-style-type: none; 8 | > li { position: relative; } 9 | } 10 | .#{$fa-css-prefix}-li { 11 | position: absolute; 12 | left: -$fa-li-width; 13 | width: $fa-li-width; 14 | top: (2em / 14); 15 | text-align: center; 16 | &.#{$fa-css-prefix}-lg { 17 | left: -$fa-li-width + (4em / 14); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /shadow/static/font-awesome/scss/_mixins.scss: -------------------------------------------------------------------------------- 1 | // Mixins 2 | // -------------------------- 3 | 4 | @mixin fa-icon() { 5 | display: inline-block; 6 | font: normal normal normal #{$fa-font-size-base}/1 FontAwesome; // shortening font declaration 7 | font-size: inherit; // can't have font-size inherit on line above, so need to override 8 | text-rendering: auto; // optimizelegibility throws things off #1094 9 | -webkit-font-smoothing: antialiased; 10 | -moz-osx-font-smoothing: grayscale; 11 | transform: translate(0, 0); // ensures no half-pixel rendering in firefox 12 | 13 | } 14 | 15 | @mixin fa-icon-rotate($degrees, $rotation) { 16 | filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=#{$rotation}); 17 | -webkit-transform: rotate($degrees); 18 | -ms-transform: rotate($degrees); 19 | transform: rotate($degrees); 20 | } 21 | 22 | @mixin fa-icon-flip($horiz, $vert, $rotation) { 23 | filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=#{$rotation}); 24 | -webkit-transform: scale($horiz, $vert); 25 | -ms-transform: scale($horiz, $vert); 26 | transform: scale($horiz, $vert); 27 | } 28 | -------------------------------------------------------------------------------- /shadow/static/font-awesome/scss/_path.scss: -------------------------------------------------------------------------------- 1 | /* FONT PATH 2 | * -------------------------- */ 3 | 4 | @font-face { 5 | font-family: 'FontAwesome'; 6 | src: url('#{$fa-font-path}/fontawesome-webfont.eot?v=#{$fa-version}'); 7 | src: url('#{$fa-font-path}/fontawesome-webfont.eot?#iefix&v=#{$fa-version}') format('embedded-opentype'), 8 | url('#{$fa-font-path}/fontawesome-webfont.woff2?v=#{$fa-version}') format('woff2'), 9 | url('#{$fa-font-path}/fontawesome-webfont.woff?v=#{$fa-version}') format('woff'), 10 | url('#{$fa-font-path}/fontawesome-webfont.ttf?v=#{$fa-version}') format('truetype'), 11 | url('#{$fa-font-path}/fontawesome-webfont.svg?v=#{$fa-version}#fontawesomeregular') format('svg'); 12 | // src: url('#{$fa-font-path}/FontAwesome.otf') format('opentype'); // used when developing fonts 13 | font-weight: normal; 14 | font-style: normal; 15 | } 16 | -------------------------------------------------------------------------------- /shadow/static/font-awesome/scss/_rotated-flipped.scss: -------------------------------------------------------------------------------- 1 | // Rotated & Flipped Icons 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-rotate-90 { @include fa-icon-rotate(90deg, 1); } 5 | .#{$fa-css-prefix}-rotate-180 { @include fa-icon-rotate(180deg, 2); } 6 | .#{$fa-css-prefix}-rotate-270 { @include fa-icon-rotate(270deg, 3); } 7 | 8 | .#{$fa-css-prefix}-flip-horizontal { @include fa-icon-flip(-1, 1, 0); } 9 | .#{$fa-css-prefix}-flip-vertical { @include fa-icon-flip(1, -1, 2); } 10 | 11 | // Hook for IE8-9 12 | // ------------------------- 13 | 14 | :root .#{$fa-css-prefix}-rotate-90, 15 | :root .#{$fa-css-prefix}-rotate-180, 16 | :root .#{$fa-css-prefix}-rotate-270, 17 | :root .#{$fa-css-prefix}-flip-horizontal, 18 | :root .#{$fa-css-prefix}-flip-vertical { 19 | filter: none; 20 | } 21 | -------------------------------------------------------------------------------- /shadow/static/font-awesome/scss/_stacked.scss: -------------------------------------------------------------------------------- 1 | // Stacked Icons 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-stack { 5 | position: relative; 6 | display: inline-block; 7 | width: 2em; 8 | height: 2em; 9 | line-height: 2em; 10 | vertical-align: middle; 11 | } 12 | .#{$fa-css-prefix}-stack-1x, .#{$fa-css-prefix}-stack-2x { 13 | position: absolute; 14 | left: 0; 15 | width: 100%; 16 | text-align: center; 17 | } 18 | .#{$fa-css-prefix}-stack-1x { line-height: inherit; } 19 | .#{$fa-css-prefix}-stack-2x { font-size: 2em; } 20 | .#{$fa-css-prefix}-inverse { color: $fa-inverse; } 21 | -------------------------------------------------------------------------------- /shadow/static/font-awesome/scss/font-awesome.scss: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome 4.3.0 by @davegandy - http://fontawesome.io - @fontawesome 3 | * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) 4 | */ 5 | 6 | @import "variables"; 7 | @import "mixins"; 8 | @import "path"; 9 | @import "core"; 10 | @import "larger"; 11 | @import "fixed-width"; 12 | @import "list"; 13 | @import "bordered-pulled"; 14 | @import "animated"; 15 | @import "rotated-flipped"; 16 | @import "stacked"; 17 | @import "icons"; 18 | -------------------------------------------------------------------------------- /shadow/static/fonts/glyphicons-halflings-regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/fonts/glyphicons-halflings-regular.eot -------------------------------------------------------------------------------- /shadow/static/fonts/glyphicons-halflings-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/fonts/glyphicons-halflings-regular.ttf -------------------------------------------------------------------------------- /shadow/static/fonts/glyphicons-halflings-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/fonts/glyphicons-halflings-regular.woff -------------------------------------------------------------------------------- /shadow/static/fonts/glyphicons-halflings-regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/fonts/glyphicons-halflings-regular.woff2 -------------------------------------------------------------------------------- /shadow/static/img/._headphones.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/._headphones.jpg -------------------------------------------------------------------------------- /shadow/static/img/._meteor_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/._meteor_logo.png -------------------------------------------------------------------------------- /shadow/static/img/a1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/a1.jpg -------------------------------------------------------------------------------- /shadow/static/img/a2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/a2.jpg -------------------------------------------------------------------------------- /shadow/static/img/a3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/a3.jpg -------------------------------------------------------------------------------- /shadow/static/img/a4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/a4.jpg -------------------------------------------------------------------------------- /shadow/static/img/a5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/a5.jpg -------------------------------------------------------------------------------- /shadow/static/img/a6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/a6.jpg -------------------------------------------------------------------------------- /shadow/static/img/a7.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/a7.jpg -------------------------------------------------------------------------------- /shadow/static/img/a8.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/a8.jpg -------------------------------------------------------------------------------- /shadow/static/img/angular_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/angular_logo.png -------------------------------------------------------------------------------- /shadow/static/img/dashbard4_1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/dashbard4_1.jpg -------------------------------------------------------------------------------- /shadow/static/img/dashbard4_2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/dashbard4_2.jpg -------------------------------------------------------------------------------- /shadow/static/img/email_1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/email_1.jpg -------------------------------------------------------------------------------- /shadow/static/img/email_2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/email_2.jpg -------------------------------------------------------------------------------- /shadow/static/img/email_3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/email_3.jpg -------------------------------------------------------------------------------- /shadow/static/img/full_height.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/full_height.jpg -------------------------------------------------------------------------------- /shadow/static/img/gallery/1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/gallery/1.jpg -------------------------------------------------------------------------------- /shadow/static/img/gallery/10.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/gallery/10.jpg -------------------------------------------------------------------------------- /shadow/static/img/gallery/10s.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/gallery/10s.jpg -------------------------------------------------------------------------------- /shadow/static/img/gallery/11.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/gallery/11.jpg -------------------------------------------------------------------------------- /shadow/static/img/gallery/11s.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/gallery/11s.jpg -------------------------------------------------------------------------------- /shadow/static/img/gallery/12.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/gallery/12.jpg -------------------------------------------------------------------------------- /shadow/static/img/gallery/12s.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/gallery/12s.jpg -------------------------------------------------------------------------------- /shadow/static/img/gallery/1s.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/gallery/1s.jpg -------------------------------------------------------------------------------- /shadow/static/img/gallery/2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/gallery/2.jpg -------------------------------------------------------------------------------- /shadow/static/img/gallery/2s.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/gallery/2s.jpg -------------------------------------------------------------------------------- /shadow/static/img/gallery/3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/gallery/3.jpg -------------------------------------------------------------------------------- /shadow/static/img/gallery/3s.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/gallery/3s.jpg -------------------------------------------------------------------------------- /shadow/static/img/gallery/4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/gallery/4.jpg -------------------------------------------------------------------------------- /shadow/static/img/gallery/4s.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/gallery/4s.jpg -------------------------------------------------------------------------------- /shadow/static/img/gallery/5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/gallery/5.jpg -------------------------------------------------------------------------------- /shadow/static/img/gallery/5s.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/gallery/5s.jpg -------------------------------------------------------------------------------- /shadow/static/img/gallery/6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/gallery/6.jpg -------------------------------------------------------------------------------- /shadow/static/img/gallery/6s.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/gallery/6s.jpg -------------------------------------------------------------------------------- /shadow/static/img/gallery/7.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/gallery/7.jpg -------------------------------------------------------------------------------- /shadow/static/img/gallery/7s.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/gallery/7s.jpg -------------------------------------------------------------------------------- /shadow/static/img/gallery/8.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/gallery/8.jpg -------------------------------------------------------------------------------- /shadow/static/img/gallery/8s.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/gallery/8s.jpg -------------------------------------------------------------------------------- /shadow/static/img/gallery/9.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/gallery/9.jpg -------------------------------------------------------------------------------- /shadow/static/img/gallery/9s.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/gallery/9s.jpg -------------------------------------------------------------------------------- /shadow/static/img/headphones.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/headphones.jpg -------------------------------------------------------------------------------- /shadow/static/img/html_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/html_logo.png -------------------------------------------------------------------------------- /shadow/static/img/landing/avatar1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/landing/avatar1.jpg -------------------------------------------------------------------------------- /shadow/static/img/landing/avatar2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/landing/avatar2.jpg -------------------------------------------------------------------------------- /shadow/static/img/landing/avatar3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/landing/avatar3.jpg -------------------------------------------------------------------------------- /shadow/static/img/landing/avatar4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/landing/avatar4.jpg -------------------------------------------------------------------------------- /shadow/static/img/landing/avatar5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/landing/avatar5.jpg -------------------------------------------------------------------------------- /shadow/static/img/landing/avatar6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/landing/avatar6.jpg -------------------------------------------------------------------------------- /shadow/static/img/landing/avatar7.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/landing/avatar7.jpg -------------------------------------------------------------------------------- /shadow/static/img/landing/avatar8.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/landing/avatar8.jpg -------------------------------------------------------------------------------- /shadow/static/img/landing/avatar9.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/landing/avatar9.jpg -------------------------------------------------------------------------------- /shadow/static/img/landing/avatar_all.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/landing/avatar_all.png -------------------------------------------------------------------------------- /shadow/static/img/landing/dashboard.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/landing/dashboard.png -------------------------------------------------------------------------------- /shadow/static/img/landing/header_one.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/landing/header_one.jpg -------------------------------------------------------------------------------- /shadow/static/img/landing/header_two.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/landing/header_two.jpg -------------------------------------------------------------------------------- /shadow/static/img/landing/iphone.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/landing/iphone.jpg -------------------------------------------------------------------------------- /shadow/static/img/landing/laptop.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/landing/laptop.png -------------------------------------------------------------------------------- /shadow/static/img/landing/perspective.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/landing/perspective.png -------------------------------------------------------------------------------- /shadow/static/img/landing/shattered.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/landing/shattered.png -------------------------------------------------------------------------------- /shadow/static/img/landing/word_map.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/landing/word_map.png -------------------------------------------------------------------------------- /shadow/static/img/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/logo.png -------------------------------------------------------------------------------- /shadow/static/img/meteor_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/meteor_logo.png -------------------------------------------------------------------------------- /shadow/static/img/mvc_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/mvc_logo.png -------------------------------------------------------------------------------- /shadow/static/img/off_canvas.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/off_canvas.jpg -------------------------------------------------------------------------------- /shadow/static/img/p1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/p1.jpg -------------------------------------------------------------------------------- /shadow/static/img/p2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/p2.jpg -------------------------------------------------------------------------------- /shadow/static/img/p3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/p3.jpg -------------------------------------------------------------------------------- /shadow/static/img/p4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/p4.jpg -------------------------------------------------------------------------------- /shadow/static/img/p5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/p5.jpg -------------------------------------------------------------------------------- /shadow/static/img/p6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/p6.jpg -------------------------------------------------------------------------------- /shadow/static/img/p7.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/p7.jpg -------------------------------------------------------------------------------- /shadow/static/img/p8.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/p8.jpg -------------------------------------------------------------------------------- /shadow/static/img/p_big1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/p_big1.jpg -------------------------------------------------------------------------------- /shadow/static/img/p_big2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/p_big2.jpg -------------------------------------------------------------------------------- /shadow/static/img/p_big3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/p_big3.jpg -------------------------------------------------------------------------------- /shadow/static/img/profile.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/profile.jpg -------------------------------------------------------------------------------- /shadow/static/img/profile_big.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/profile_big.jpg -------------------------------------------------------------------------------- /shadow/static/img/profile_small.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/profile_small.jpg -------------------------------------------------------------------------------- /shadow/static/img/rails_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/rails_logo.png -------------------------------------------------------------------------------- /shadow/static/img/zender_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/img/zender_logo.png -------------------------------------------------------------------------------- /shadow/static/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 | -------------------------------------------------------------------------------- /shadow/static/js/plugins/chartist/._chartist.min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/js/plugins/chartist/._chartist.min.js -------------------------------------------------------------------------------- /shadow/static/js/plugins/chartist/._chartist.min.js.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/js/plugins/chartist/._chartist.min.js.map -------------------------------------------------------------------------------- /shadow/static/js/plugins/clockpicker/._clockpicker.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/js/plugins/clockpicker/._clockpicker.js -------------------------------------------------------------------------------- /shadow/static/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 | -------------------------------------------------------------------------------- /shadow/static/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 | -------------------------------------------------------------------------------- /shadow/static/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 | -------------------------------------------------------------------------------- /shadow/static/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 | -------------------------------------------------------------------------------- /shadow/static/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 | -------------------------------------------------------------------------------- /shadow/static/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 | -------------------------------------------------------------------------------- /shadow/static/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 | -------------------------------------------------------------------------------- /shadow/static/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 | -------------------------------------------------------------------------------- /shadow/static/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 | -------------------------------------------------------------------------------- /shadow/static/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 | -------------------------------------------------------------------------------- /shadow/static/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 | -------------------------------------------------------------------------------- /shadow/static/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 | -------------------------------------------------------------------------------- /shadow/static/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 | -------------------------------------------------------------------------------- /shadow/static/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 | -------------------------------------------------------------------------------- /shadow/static/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 |
44 | 50 | 51 |

MIME types defined: application/x-sparql-query.

52 | 53 |
54 | -------------------------------------------------------------------------------- /shadow/static/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 | -------------------------------------------------------------------------------- /shadow/static/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 | } -------------------------------------------------------------------------------- /shadow/static/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 | -------------------------------------------------------------------------------- /shadow/static/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 | -------------------------------------------------------------------------------- /shadow/static/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 | -------------------------------------------------------------------------------- /shadow/static/js/plugins/dataTables/swf/copy_csv_xls.swf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/js/plugins/dataTables/swf/copy_csv_xls.swf -------------------------------------------------------------------------------- /shadow/static/js/plugins/dataTables/swf/copy_csv_xls_pdf.swf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/js/plugins/dataTables/swf/copy_csv_xls_pdf.swf -------------------------------------------------------------------------------- /shadow/static/js/plugins/daterangepicker/._daterangepicker.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/js/plugins/daterangepicker/._daterangepicker.js -------------------------------------------------------------------------------- /shadow/static/js/plugins/diff_match_patch/README.txt: -------------------------------------------------------------------------------- 1 | Diff, Match and Patch Library 2 | http://code.google.com/p/google-diff-match-patch/ 3 | Neil Fraser 4 | 5 | This library is currently available in seven different ports, all using the same API. 6 | Every version includes a full set of unit tests. 7 | 8 | C++: 9 | * Ported by Mike Slemmer. 10 | * Currently requires the Qt library. 11 | 12 | C#: 13 | * Ported by Matthaeus G. Chajdas. 14 | 15 | Dart: 16 | * The Dart language is still growing and evolving, so this port is only as 17 | stable as the underlying language. 18 | 19 | Java: 20 | * Included is both the source and a Maven package. 21 | 22 | JavaScript: 23 | * diff_match_patch_uncompressed.js is the human-readable version. 24 | Users of node.js should 'require' this uncompressed version since the 25 | compressed version is not guaranteed to work outside of a web browser. 26 | * diff_match_patch.js has been compressed using Google's internal JavaScript compressor. 27 | Non-Google hackers who wish to recompress the source can use: 28 | http://dean.edwards.name/packer/ 29 | 30 | Lua: 31 | * Ported by Duncan Cross. 32 | * Does not support line-mode speedup. 33 | 34 | Objective C: 35 | * Ported by Jan Weiss. 36 | * Includes speed test (this is a separate bundle for other languages). 37 | 38 | Python: 39 | * Two versions, one for Python 2.x, the other for Python 3.x. 40 | * Runs 10x faster under PyPy than CPython. 41 | 42 | Demos: 43 | * Separate demos for Diff, Match and Patch in JavaScript. 44 | -------------------------------------------------------------------------------- /shadow/static/js/plugins/footable/._footable.all.min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/js/plugins/footable/._footable.all.min.js -------------------------------------------------------------------------------- /shadow/static/js/plugins/fullcalendar/._moment.min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/js/plugins/fullcalendar/._moment.min.js -------------------------------------------------------------------------------- /shadow/static/js/plugins/gritter/images/gritter-light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/js/plugins/gritter/images/gritter-light.png -------------------------------------------------------------------------------- /shadow/static/js/plugins/gritter/images/gritter-long.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/js/plugins/gritter/images/gritter-long.png -------------------------------------------------------------------------------- /shadow/static/js/plugins/gritter/images/gritter.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/js/plugins/gritter/images/gritter.png -------------------------------------------------------------------------------- /shadow/static/js/plugins/gritter/images/ie-spacer.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/js/plugins/gritter/images/ie-spacer.gif -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-af.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(t){t.datepicker.regional.af={closeText:"Selekteer",prevText:"Vorige",nextText:"Volgende",currentText:"Vandag",monthNames:["Januarie","Februarie","Maart","April","Mei","Junie","Julie","Augustus","September","Oktober","November","Desember"],monthNamesShort:["Jan","Feb","Mrt","Apr","Mei","Jun","Jul","Aug","Sep","Okt","Nov","Des"],dayNames:["Sondag","Maandag","Dinsdag","Woensdag","Donderdag","Vrydag","Saterdag"],dayNamesShort:["Son","Maa","Din","Woe","Don","Vry","Sat"],dayNamesMin:["So","Ma","Di","Wo","Do","Vr","Sa"],weekHeader:"Wk",dateFormat:"dd/mm/yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},t.datepicker.setDefaults(t.datepicker.regional.af)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-ar-DZ.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(t){t.datepicker.regional["ar-DZ"]={closeText:"إغلاق",prevText:"<السابق",nextText:"التالي>",currentText:"اليوم",monthNames:["جانفي","فيفري","مارس","أفريل","ماي","جوان","جويلية","أوت","سبتمبر","أكتوبر","نوفمبر","ديسمبر"],monthNamesShort:["1","2","3","4","5","6","7","8","9","10","11","12"],dayNames:["الأحد","الاثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],dayNamesShort:["الأحد","الاثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],dayNamesMin:["الأحد","الاثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],weekHeader:"أسبوع",dateFormat:"dd/mm/yy",firstDay:6,isRTL:!0,showMonthAfterYear:!1,yearSuffix:""},t.datepicker.setDefaults(t.datepicker.regional["ar-DZ"])}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-ar.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(t){t.datepicker.regional.ar={closeText:"إغلاق",prevText:"<السابق",nextText:"التالي>",currentText:"اليوم",monthNames:["كانون الثاني","شباط","آذار","نيسان","مايو","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول"],monthNamesShort:["1","2","3","4","5","6","7","8","9","10","11","12"],dayNames:["الأحد","الاثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],dayNamesShort:["الأحد","الاثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],dayNamesMin:["ح","ن","ث","ر","خ","ج","س"],weekHeader:"أسبوع",dateFormat:"dd/mm/yy",firstDay:6,isRTL:!0,showMonthAfterYear:!1,yearSuffix:""},t.datepicker.setDefaults(t.datepicker.regional.ar)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-az.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(t){t.datepicker.regional.az={closeText:"Bağla",prevText:"<Geri",nextText:"İrəli>",currentText:"Bugün",monthNames:["Yanvar","Fevral","Mart","Aprel","May","İyun","İyul","Avqust","Sentyabr","Oktyabr","Noyabr","Dekabr"],monthNamesShort:["Yan","Fev","Mar","Apr","May","İyun","İyul","Avq","Sen","Okt","Noy","Dek"],dayNames:["Bazar","Bazar ertəsi","Çərşənbə axşamı","Çərşənbə","Cümə axşamı","Cümə","Şənbə"],dayNamesShort:["B","Be","Ça","Ç","Ca","C","Ş"],dayNamesMin:["B","B","Ç","С","Ç","C","Ş"],weekHeader:"Hf",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},t.datepicker.setDefaults(t.datepicker.regional.az)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-be.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(t){t.datepicker.regional.be={closeText:"Зачыніць",prevText:"←Папяр.",nextText:"Наст.→",currentText:"Сёньня",monthNames:["Студзень","Люты","Сакавік","Красавік","Травень","Чэрвень","Ліпень","Жнівень","Верасень","Кастрычнік","Лістапад","Сьнежань"],monthNamesShort:["Сту","Лют","Сак","Кра","Тра","Чэр","Ліп","Жні","Вер","Кас","Ліс","Сьн"],dayNames:["нядзеля","панядзелак","аўторак","серада","чацьвер","пятніца","субота"],dayNamesShort:["ндз","пнд","аўт","срд","чцв","птн","сбт"],dayNamesMin:["Нд","Пн","Аў","Ср","Чц","Пт","Сб"],weekHeader:"Тд",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},t.datepicker.setDefaults(t.datepicker.regional.be)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-bg.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(t){t.datepicker.regional.bg={closeText:"затвори",prevText:"<назад",nextText:"напред>",nextBigText:">>",currentText:"днес",monthNames:["Януари","Февруари","Март","Април","Май","Юни","Юли","Август","Септември","Октомври","Ноември","Декември"],monthNamesShort:["Яну","Фев","Мар","Апр","Май","Юни","Юли","Авг","Сеп","Окт","Нов","Дек"],dayNames:["Неделя","Понеделник","Вторник","Сряда","Четвъртък","Петък","Събота"],dayNamesShort:["Нед","Пон","Вто","Сря","Чет","Пет","Съб"],dayNamesMin:["Не","По","Вт","Ср","Че","Пе","Съ"],weekHeader:"Wk",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},t.datepicker.setDefaults(t.datepicker.regional.bg)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-bs.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(t){t.datepicker.regional.bs={closeText:"Zatvori",prevText:"<",nextText:">",currentText:"Danas",monthNames:["Januar","Februar","Mart","April","Maj","Juni","Juli","August","Septembar","Oktobar","Novembar","Decembar"],monthNamesShort:["Jan","Feb","Mar","Apr","Maj","Jun","Jul","Aug","Sep","Okt","Nov","Dec"],dayNames:["Nedelja","Ponedeljak","Utorak","Srijeda","Četvrtak","Petak","Subota"],dayNamesShort:["Ned","Pon","Uto","Sri","Čet","Pet","Sub"],dayNamesMin:["Ne","Po","Ut","Sr","Če","Pe","Su"],weekHeader:"Wk",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},t.datepicker.setDefaults(t.datepicker.regional.bs)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-ca.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(t){t.datepicker.regional.ca={closeText:"Tanca",prevText:"Anterior",nextText:"Següent",currentText:"Avui",monthNames:["gener","febrer","març","abril","maig","juny","juliol","agost","setembre","octubre","novembre","desembre"],monthNamesShort:["gen","feb","març","abr","maig","juny","jul","ag","set","oct","nov","des"],dayNames:["diumenge","dilluns","dimarts","dimecres","dijous","divendres","dissabte"],dayNamesShort:["dg","dl","dt","dc","dj","dv","ds"],dayNamesMin:["dg","dl","dt","dc","dj","dv","ds"],weekHeader:"Set",dateFormat:"dd/mm/yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},t.datepicker.setDefaults(t.datepicker.regional.ca)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-cs.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(t){t.datepicker.regional.cs={closeText:"Zavřít",prevText:"<Dříve",nextText:"Později>",currentText:"Nyní",monthNames:["leden","únor","březen","duben","květen","červen","červenec","srpen","září","říjen","listopad","prosinec"],monthNamesShort:["led","úno","bře","dub","kvě","čer","čvc","srp","zář","říj","lis","pro"],dayNames:["neděle","pondělí","úterý","středa","čtvrtek","pátek","sobota"],dayNamesShort:["ne","po","út","st","čt","pá","so"],dayNamesMin:["ne","po","út","st","čt","pá","so"],weekHeader:"Týd",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},t.datepicker.setDefaults(t.datepicker.regional.cs)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-cy-GB.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(t){t.datepicker.regional["cy-GB"]={closeText:"Done",prevText:"Prev",nextText:"Next",currentText:"Today",monthNames:["Ionawr","Chwefror","Mawrth","Ebrill","Mai","Mehefin","Gorffennaf","Awst","Medi","Hydref","Tachwedd","Rhagfyr"],monthNamesShort:["Ion","Chw","Maw","Ebr","Mai","Meh","Gor","Aws","Med","Hyd","Tac","Rha"],dayNames:["Dydd Sul","Dydd Llun","Dydd Mawrth","Dydd Mercher","Dydd Iau","Dydd Gwener","Dydd Sadwrn"],dayNamesShort:["Sul","Llu","Maw","Mer","Iau","Gwe","Sad"],dayNamesMin:["Su","Ll","Ma","Me","Ia","Gw","Sa"],weekHeader:"Wy",dateFormat:"dd/mm/yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},t.datepicker.setDefaults(t.datepicker.regional["cy-GB"])}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-da.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(t){t.datepicker.regional.da={closeText:"Luk",prevText:"<Forrige",nextText:"Næste>",currentText:"Idag",monthNames:["Januar","Februar","Marts","April","Maj","Juni","Juli","August","September","Oktober","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","Maj","Jun","Jul","Aug","Sep","Okt","Nov","Dec"],dayNames:["Søndag","Mandag","Tirsdag","Onsdag","Torsdag","Fredag","Lørdag"],dayNamesShort:["Søn","Man","Tir","Ons","Tor","Fre","Lør"],dayNamesMin:["Sø","Ma","Ti","On","To","Fr","Lø"],weekHeader:"Uge",dateFormat:"dd-mm-yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},t.datepicker.setDefaults(t.datepicker.regional.da)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-de.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(t){t.datepicker.regional.de={closeText:"Schließen",prevText:"<Zurück",nextText:"Vor>",currentText:"Heute",monthNames:["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"],monthNamesShort:["Jan","Feb","Mär","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"],dayNames:["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],dayNamesShort:["So","Mo","Di","Mi","Do","Fr","Sa"],dayNamesMin:["So","Mo","Di","Mi","Do","Fr","Sa"],weekHeader:"KW",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},t.datepicker.setDefaults(t.datepicker.regional.de)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-el.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(t){t.datepicker.regional.el={closeText:"Κλείσιμο",prevText:"Προηγούμενος",nextText:"Επόμενος",currentText:"Τρέχων Μήνας",monthNames:["Ιανουάριος","Φεβρουάριος","Μάρτιος","Απρίλιος","Μάιος","Ιούνιος","Ιούλιος","Αύγουστος","Σεπτέμβριος","Οκτώβριος","Νοέμβριος","Δεκέμβριος"],monthNamesShort:["Ιαν","Φεβ","Μαρ","Απρ","Μαι","Ιουν","Ιουλ","Αυγ","Σεπ","Οκτ","Νοε","Δεκ"],dayNames:["Κυριακή","Δευτέρα","Τρίτη","Τετάρτη","Πέμπτη","Παρασκευή","Σάββατο"],dayNamesShort:["Κυρ","Δευ","Τρι","Τετ","Πεμ","Παρ","Σαβ"],dayNamesMin:["Κυ","Δε","Τρ","Τε","Πε","Πα","Σα"],weekHeader:"Εβδ",dateFormat:"dd/mm/yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},t.datepicker.setDefaults(t.datepicker.regional.el)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-en-AU.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(t){t.datepicker.regional["en-AU"]={closeText:"Done",prevText:"Prev",nextText:"Next",currentText:"Today",monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],weekHeader:"Wk",dateFormat:"dd/mm/yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},t.datepicker.setDefaults(t.datepicker.regional["en-AU"])}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-en-GB.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(t){t.datepicker.regional["en-GB"]={closeText:"Done",prevText:"Prev",nextText:"Next",currentText:"Today",monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],weekHeader:"Wk",dateFormat:"dd/mm/yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},t.datepicker.setDefaults(t.datepicker.regional["en-GB"])}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-en-NZ.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(t){t.datepicker.regional["en-NZ"]={closeText:"Done",prevText:"Prev",nextText:"Next",currentText:"Today",monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],weekHeader:"Wk",dateFormat:"dd/mm/yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},t.datepicker.setDefaults(t.datepicker.regional["en-NZ"])}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-eo.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(t){t.datepicker.regional.eo={closeText:"Fermi",prevText:"<Anta",nextText:"Sekv>",currentText:"Nuna",monthNames:["Januaro","Februaro","Marto","Aprilo","Majo","Junio","Julio","Aŭgusto","Septembro","Oktobro","Novembro","Decembro"],monthNamesShort:["Jan","Feb","Mar","Apr","Maj","Jun","Jul","Aŭg","Sep","Okt","Nov","Dec"],dayNames:["Dimanĉo","Lundo","Mardo","Merkredo","Ĵaŭdo","Vendredo","Sabato"],dayNamesShort:["Dim","Lun","Mar","Mer","Ĵaŭ","Ven","Sab"],dayNamesMin:["Di","Lu","Ma","Me","Ĵa","Ve","Sa"],weekHeader:"Sb",dateFormat:"dd/mm/yy",firstDay:0,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},t.datepicker.setDefaults(t.datepicker.regional.eo)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-es.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(t){t.datepicker.regional.es={closeText:"Cerrar",prevText:"<Ant",nextText:"Sig>",currentText:"Hoy",monthNames:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],monthNamesShort:["ene","feb","mar","abr","may","jun","jul","ogo","sep","oct","nov","dic"],dayNames:["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],dayNamesShort:["dom","lun","mar","mié","juv","vie","sáb"],dayNamesMin:["D","L","M","X","J","V","S"],weekHeader:"Sm",dateFormat:"dd/mm/yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},t.datepicker.setDefaults(t.datepicker.regional.es)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-et.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(t){t.datepicker.regional.et={closeText:"Sulge",prevText:"Eelnev",nextText:"Järgnev",currentText:"Täna",monthNames:["Jaanuar","Veebruar","Märts","Aprill","Mai","Juuni","Juuli","August","September","Oktoober","November","Detsember"],monthNamesShort:["Jaan","Veebr","Märts","Apr","Mai","Juuni","Juuli","Aug","Sept","Okt","Nov","Dets"],dayNames:["Pühapäev","Esmaspäev","Teisipäev","Kolmapäev","Neljapäev","Reede","Laupäev"],dayNamesShort:["Pühap","Esmasp","Teisip","Kolmap","Neljap","Reede","Laup"],dayNamesMin:["P","E","T","K","N","R","L"],weekHeader:"näd",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},t.datepicker.setDefaults(t.datepicker.regional.et)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-eu.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(t){t.datepicker.regional.eu={closeText:"Egina",prevText:"<Aur",nextText:"Hur>",currentText:"Gaur",monthNames:["urtarrila","otsaila","martxoa","apirila","maiatza","ekaina","uztaila","abuztua","iraila","urria","azaroa","abendua"],monthNamesShort:["urt.","ots.","mar.","api.","mai.","eka.","uzt.","abu.","ira.","urr.","aza.","abe."],dayNames:["igandea","astelehena","asteartea","asteazkena","osteguna","ostirala","larunbata"],dayNamesShort:["ig.","al.","ar.","az.","og.","ol.","lr."],dayNamesMin:["ig","al","ar","az","og","ol","lr"],weekHeader:"As",dateFormat:"yy-mm-dd",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},t.datepicker.setDefaults(t.datepicker.regional.eu)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-fa.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(t){t.datepicker.regional.fa={closeText:"بستن",prevText:"<قبلی",nextText:"بعدی>",currentText:"امروز",monthNames:["فروردين","ارديبهشت","خرداد","تير","مرداد","شهريور","مهر","آبان","آذر","دی","بهمن","اسفند"],monthNamesShort:["1","2","3","4","5","6","7","8","9","10","11","12"],dayNames:["يکشنبه","دوشنبه","سه‌شنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"],dayNamesShort:["ی","د","س","چ","پ","ج","ش"],dayNamesMin:["ی","د","س","چ","پ","ج","ش"],weekHeader:"هف",dateFormat:"yy/mm/dd",firstDay:6,isRTL:!0,showMonthAfterYear:!1,yearSuffix:""},t.datepicker.setDefaults(t.datepicker.regional.fa)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-fi.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(t){t.datepicker.regional.fi={closeText:"Sulje",prevText:"«Edellinen",nextText:"Seuraava»",currentText:"Tänään",monthNames:["Tammikuu","Helmikuu","Maaliskuu","Huhtikuu","Toukokuu","Kesäkuu","Heinäkuu","Elokuu","Syyskuu","Lokakuu","Marraskuu","Joulukuu"],monthNamesShort:["Tammi","Helmi","Maalis","Huhti","Touko","Kesä","Heinä","Elo","Syys","Loka","Marras","Joulu"],dayNamesShort:["Su","Ma","Ti","Ke","To","Pe","La"],dayNames:["Sunnuntai","Maanantai","Tiistai","Keskiviikko","Torstai","Perjantai","Lauantai"],dayNamesMin:["Su","Ma","Ti","Ke","To","Pe","La"],weekHeader:"Vk",dateFormat:"d.m.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},t.datepicker.setDefaults(t.datepicker.regional.fi)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-fo.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(t){t.datepicker.regional.fo={closeText:"Lat aftur",prevText:"<Fyrra",nextText:"Næsta>",currentText:"Í dag",monthNames:["Januar","Februar","Mars","Apríl","Mei","Juni","Juli","August","September","Oktober","November","Desember"],monthNamesShort:["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Aug","Sep","Okt","Nov","Des"],dayNames:["Sunnudagur","Mánadagur","Týsdagur","Mikudagur","Hósdagur","Fríggjadagur","Leyardagur"],dayNamesShort:["Sun","Mán","Týs","Mik","Hós","Frí","Ley"],dayNamesMin:["Su","Má","Tý","Mi","Hó","Fr","Le"],weekHeader:"Vk",dateFormat:"dd-mm-yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},t.datepicker.setDefaults(t.datepicker.regional.fo)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-fr-CA.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(t){t.datepicker.regional["fr-CA"]={closeText:"Fermer",prevText:"Précédent",nextText:"Suivant",currentText:"Aujourd'hui",monthNames:["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre"],monthNamesShort:["janv.","févr.","mars","avril","mai","juin","juil.","août","sept.","oct.","nov.","déc."],dayNames:["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],dayNamesShort:["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],dayNamesMin:["D","L","M","M","J","V","S"],weekHeader:"Sem.",dateFormat:"yy-mm-dd",firstDay:0,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},t.datepicker.setDefaults(t.datepicker.regional["fr-CA"])}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-fr-CH.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(t){t.datepicker.regional["fr-CH"]={closeText:"Fermer",prevText:"<Préc",nextText:"Suiv>",currentText:"Courant",monthNames:["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre"],monthNamesShort:["janv.","févr.","mars","avril","mai","juin","juil.","août","sept.","oct.","nov.","déc."],dayNames:["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],dayNamesShort:["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],dayNamesMin:["D","L","M","M","J","V","S"],weekHeader:"Sm",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},t.datepicker.setDefaults(t.datepicker.regional["fr-CH"])}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-fr.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(t){t.datepicker.regional.fr={closeText:"Fermer",prevText:"Précédent",nextText:"Suivant",currentText:"Aujourd'hui",monthNames:["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre"],monthNamesShort:["janv.","févr.","mars","avril","mai","juin","juil.","août","sept.","oct.","nov.","déc."],dayNames:["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],dayNamesShort:["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],dayNamesMin:["D","L","M","M","J","V","S"],weekHeader:"Sem.",dateFormat:"dd/mm/yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},t.datepicker.setDefaults(t.datepicker.regional.fr)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-gl.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(t){t.datepicker.regional.gl={closeText:"Pechar",prevText:"<Ant",nextText:"Seg>",currentText:"Hoxe",monthNames:["Xaneiro","Febreiro","Marzo","Abril","Maio","Xuño","Xullo","Agosto","Setembro","Outubro","Novembro","Decembro"],monthNamesShort:["Xan","Feb","Mar","Abr","Mai","Xuñ","Xul","Ago","Set","Out","Nov","Dec"],dayNames:["Domingo","Luns","Martes","Mércores","Xoves","Venres","Sábado"],dayNamesShort:["Dom","Lun","Mar","Mér","Xov","Ven","Sáb"],dayNamesMin:["Do","Lu","Ma","Mé","Xo","Ve","Sá"],weekHeader:"Sm",dateFormat:"dd/mm/yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},t.datepicker.setDefaults(t.datepicker.regional.gl)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-he.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(t){t.datepicker.regional.he={closeText:"סגור",prevText:"<הקודם",nextText:"הבא>",currentText:"היום",monthNames:["ינואר","פברואר","מרץ","אפריל","מאי","יוני","יולי","אוגוסט","ספטמבר","אוקטובר","נובמבר","דצמבר"],monthNamesShort:["ינו","פבר","מרץ","אפר","מאי","יוני","יולי","אוג","ספט","אוק","נוב","דצמ"],dayNames:["ראשון","שני","שלישי","רביעי","חמישי","שישי","שבת"],dayNamesShort:["א'","ב'","ג'","ד'","ה'","ו'","שבת"],dayNamesMin:["א'","ב'","ג'","ד'","ה'","ו'","שבת"],weekHeader:"Wk",dateFormat:"dd/mm/yy",firstDay:0,isRTL:!0,showMonthAfterYear:!1,yearSuffix:""},t.datepicker.setDefaults(t.datepicker.regional.he)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-hi.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional.hi={closeText:"बंद",prevText:"पिछला",nextText:"अगला",currentText:"आज",monthNames:["जनवरी ","फरवरी","मार्च","अप्रेल","मई","जून","जूलाई","अगस्त ","सितम्बर","अक्टूबर","नवम्बर","दिसम्बर"],monthNamesShort:["जन","फर","मार्च","अप्रेल","मई","जून","जूलाई","अग","सित","अक्ट","नव","दि"],dayNames:["रविवार","सोमवार","मंगलवार","बुधवार","गुरुवार","शुक्रवार","शनिवार"],dayNamesShort:["रवि","सोम","मंगल","बुध","गुरु","शुक्र","शनि"],dayNamesMin:["रवि","सोम","मंगल","बुध","गुरु","शुक्र","शनि"],weekHeader:"हफ्ता",dateFormat:"dd/mm/yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},e.datepicker.setDefaults(e.datepicker.regional.hi)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-hr.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional.hr={closeText:"Zatvori",prevText:"<",nextText:">",currentText:"Danas",monthNames:["Siječanj","Veljača","Ožujak","Travanj","Svibanj","Lipanj","Srpanj","Kolovoz","Rujan","Listopad","Studeni","Prosinac"],monthNamesShort:["Sij","Velj","Ožu","Tra","Svi","Lip","Srp","Kol","Ruj","Lis","Stu","Pro"],dayNames:["Nedjelja","Ponedjeljak","Utorak","Srijeda","Četvrtak","Petak","Subota"],dayNamesShort:["Ned","Pon","Uto","Sri","Čet","Pet","Sub"],dayNamesMin:["Ne","Po","Ut","Sr","Če","Pe","Su"],weekHeader:"Tje",dateFormat:"dd.mm.yy.",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},e.datepicker.setDefaults(e.datepicker.regional.hr)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-hu.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional.hu={closeText:"bezár",prevText:"vissza",nextText:"előre",currentText:"ma",monthNames:["Január","Február","Március","Április","Május","Június","Július","Augusztus","Szeptember","Október","November","December"],monthNamesShort:["Jan","Feb","Már","Ápr","Máj","Jún","Júl","Aug","Szep","Okt","Nov","Dec"],dayNames:["Vasárnap","Hétfő","Kedd","Szerda","Csütörtök","Péntek","Szombat"],dayNamesShort:["Vas","Hét","Ked","Sze","Csü","Pén","Szo"],dayNamesMin:["V","H","K","Sze","Cs","P","Szo"],weekHeader:"Hét",dateFormat:"yy.mm.dd.",firstDay:1,isRTL:!1,showMonthAfterYear:!0,yearSuffix:""},e.datepicker.setDefaults(e.datepicker.regional.hu)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-hy.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional.hy={closeText:"Փակել",prevText:"<Նախ.",nextText:"Հաջ.>",currentText:"Այսօր",monthNames:["Հունվար","Փետրվար","Մարտ","Ապրիլ","Մայիս","Հունիս","Հուլիս","Օգոստոս","Սեպտեմբեր","Հոկտեմբեր","Նոյեմբեր","Դեկտեմբեր"],monthNamesShort:["Հունվ","Փետր","Մարտ","Ապր","Մայիս","Հունիս","Հուլ","Օգս","Սեպ","Հոկ","Նոյ","Դեկ"],dayNames:["կիրակի","եկուշաբթի","երեքշաբթի","չորեքշաբթի","հինգշաբթի","ուրբաթ","շաբաթ"],dayNamesShort:["կիր","երկ","երք","չրք","հնգ","ուրբ","շբթ"],dayNamesMin:["կիր","երկ","երք","չրք","հնգ","ուրբ","շբթ"],weekHeader:"ՇԲՏ",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},e.datepicker.setDefaults(e.datepicker.regional.hy)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-id.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional.id={closeText:"Tutup",prevText:"<mundur",nextText:"maju>",currentText:"hari ini",monthNames:["Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","Nopember","Desember"],monthNamesShort:["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Agus","Sep","Okt","Nop","Des"],dayNames:["Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu"],dayNamesShort:["Min","Sen","Sel","Rab","kam","Jum","Sab"],dayNamesMin:["Mg","Sn","Sl","Rb","Km","jm","Sb"],weekHeader:"Mg",dateFormat:"dd/mm/yy",firstDay:0,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},e.datepicker.setDefaults(e.datepicker.regional.id)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-is.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional.is={closeText:"Loka",prevText:"< Fyrri",nextText:"Næsti >",currentText:"Í dag",monthNames:["Janúar","Febrúar","Mars","Apríl","Maí","Júní","Júlí","Ágúst","September","Október","Nóvember","Desember"],monthNamesShort:["Jan","Feb","Mar","Apr","Maí","Jún","Júl","Ágú","Sep","Okt","Nóv","Des"],dayNames:["Sunnudagur","Mánudagur","Þriðjudagur","Miðvikudagur","Fimmtudagur","Föstudagur","Laugardagur"],dayNamesShort:["Sun","Mán","Þri","Mið","Fim","Fös","Lau"],dayNamesMin:["Su","Má","Þr","Mi","Fi","Fö","La"],weekHeader:"Vika",dateFormat:"dd.mm.yy",firstDay:0,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},e.datepicker.setDefaults(e.datepicker.regional.is)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-it.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional.it={closeText:"Chiudi",prevText:"<Prec",nextText:"Succ>",currentText:"Oggi",monthNames:["Gennaio","Febbraio","Marzo","Aprile","Maggio","Giugno","Luglio","Agosto","Settembre","Ottobre","Novembre","Dicembre"],monthNamesShort:["Gen","Feb","Mar","Apr","Mag","Giu","Lug","Ago","Set","Ott","Nov","Dic"],dayNames:["Domenica","Lunedì","Martedì","Mercoledì","Giovedì","Venerdì","Sabato"],dayNamesShort:["Dom","Lun","Mar","Mer","Gio","Ven","Sab"],dayNamesMin:["Do","Lu","Ma","Me","Gi","Ve","Sa"],weekHeader:"Sm",dateFormat:"dd/mm/yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},e.datepicker.setDefaults(e.datepicker.regional.it)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-ja.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional.ja={closeText:"閉じる",prevText:"<前",nextText:"次>",currentText:"今日",monthNames:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],monthNamesShort:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],dayNames:["日曜日","月曜日","火曜日","水曜日","木曜日","金曜日","土曜日"],dayNamesShort:["日","月","火","水","木","金","土"],dayNamesMin:["日","月","火","水","木","金","土"],weekHeader:"週",dateFormat:"yy/mm/dd",firstDay:0,isRTL:!1,showMonthAfterYear:!0,yearSuffix:"年"},e.datepicker.setDefaults(e.datepicker.regional.ja)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-ka.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional.ka={closeText:"დახურვა",prevText:"< წინა",nextText:"შემდეგი >",currentText:"დღეს",monthNames:["იანვარი","თებერვალი","მარტი","აპრილი","მაისი","ივნისი","ივლისი","აგვისტო","სექტემბერი","ოქტომბერი","ნოემბერი","დეკემბერი"],monthNamesShort:["იან","თებ","მარ","აპრ","მაი","ივნ","ივლ","აგვ","სექ","ოქტ","ნოე","დეკ"],dayNames:["კვირა","ორშაბათი","სამშაბათი","ოთხშაბათი","ხუთშაბათი","პარასკევი","შაბათი"],dayNamesShort:["კვ","ორშ","სამ","ოთხ","ხუთ","პარ","შაბ"],dayNamesMin:["კვ","ორშ","სამ","ოთხ","ხუთ","პარ","შაბ"],weekHeader:"კვირა",dateFormat:"dd-mm-yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},e.datepicker.setDefaults(e.datepicker.regional.ka)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-kk.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional.kk={closeText:"Жабу",prevText:"<Алдыңғы",nextText:"Келесі>",currentText:"Бүгін",monthNames:["Қаңтар","Ақпан","Наурыз","Сәуір","Мамыр","Маусым","Шілде","Тамыз","Қыркүйек","Қазан","Қараша","Желтоқсан"],monthNamesShort:["Қаң","Ақп","Нау","Сәу","Мам","Мау","Шіл","Там","Қыр","Қаз","Қар","Жел"],dayNames:["Жексенбі","Дүйсенбі","Сейсенбі","Сәрсенбі","Бейсенбі","Жұма","Сенбі"],dayNamesShort:["жкс","дсн","ссн","срс","бсн","жма","снб"],dayNamesMin:["Жк","Дс","Сс","Ср","Бс","Жм","Сн"],weekHeader:"Не",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},e.datepicker.setDefaults(e.datepicker.regional.kk)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-km.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional.km={closeText:"ធ្វើ​រួច",prevText:"មុន",nextText:"បន្ទាប់",currentText:"ថ្ងៃ​នេះ",monthNames:["មករា","កុម្ភៈ","មីនា","មេសា","ឧសភា","មិថុនា","កក្កដា","សីហា","កញ្ញា","តុលា","វិច្ឆិកា","ធ្នូ"],monthNamesShort:["មករា","កុម្ភៈ","មីនា","មេសា","ឧសភា","មិថុនា","កក្កដា","សីហា","កញ្ញា","តុលា","វិច្ឆិកា","ធ្នូ"],dayNames:["អាទិត្យ","ចន្ទ","អង្គារ","ពុធ","ព្រហស្បតិ៍","សុក្រ","សៅរ៍"],dayNamesShort:["អា","ច","អ","ពុ","ព្រហ","សុ","សៅ"],dayNamesMin:["អា","ច","អ","ពុ","ព្រហ","សុ","សៅ"],weekHeader:"សប្ដាហ៍",dateFormat:"dd-mm-yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},e.datepicker.setDefaults(e.datepicker.regional.km)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-ko.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional.ko={closeText:"닫기",prevText:"이전달",nextText:"다음달",currentText:"오늘",monthNames:["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월"],monthNamesShort:["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월"],dayNames:["일요일","월요일","화요일","수요일","목요일","금요일","토요일"],dayNamesShort:["일","월","화","수","목","금","토"],dayNamesMin:["일","월","화","수","목","금","토"],weekHeader:"Wk",dateFormat:"yy-mm-dd",firstDay:0,isRTL:!1,showMonthAfterYear:!0,yearSuffix:"년"},e.datepicker.setDefaults(e.datepicker.regional.ko)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-ky.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional.ky={closeText:"Жабуу",prevText:"<Мур",nextText:"Кий>",currentText:"Бүгүн",monthNames:["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь"],monthNamesShort:["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек"],dayNames:["жекшемби","дүйшөмбү","шейшемби","шаршемби","бейшемби","жума","ишемби"],dayNamesShort:["жек","дүй","шей","шар","бей","жум","ише"],dayNamesMin:["Жк","Дш","Шш","Шр","Бш","Жм","Иш"],weekHeader:"Жум",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},e.datepicker.setDefaults(e.datepicker.regional.ky)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-lb.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional.lb={closeText:"Fäerdeg",prevText:"Zréck",nextText:"Weider",currentText:"Haut",monthNames:["Januar","Februar","Mäerz","Abrëll","Mee","Juni","Juli","August","September","Oktober","November","Dezember"],monthNamesShort:["Jan","Feb","Mäe","Abr","Mee","Jun","Jul","Aug","Sep","Okt","Nov","Dez"],dayNames:["Sonndeg","Méindeg","Dënschdeg","Mëttwoch","Donneschdeg","Freideg","Samschdeg"],dayNamesShort:["Son","Méi","Dën","Mët","Don","Fre","Sam"],dayNamesMin:["So","Mé","Dë","Më","Do","Fr","Sa"],weekHeader:"W",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},e.datepicker.setDefaults(e.datepicker.regional.lb)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-lt.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional.lt={closeText:"Uždaryti",prevText:"<Atgal",nextText:"Pirmyn>",currentText:"Šiandien",monthNames:["Sausis","Vasaris","Kovas","Balandis","Gegužė","Birželis","Liepa","Rugpjūtis","Rugsėjis","Spalis","Lapkritis","Gruodis"],monthNamesShort:["Sau","Vas","Kov","Bal","Geg","Bir","Lie","Rugp","Rugs","Spa","Lap","Gru"],dayNames:["sekmadienis","pirmadienis","antradienis","trečiadienis","ketvirtadienis","penktadienis","šeštadienis"],dayNamesShort:["sek","pir","ant","tre","ket","pen","šeš"],dayNamesMin:["Se","Pr","An","Tr","Ke","Pe","Še"],weekHeader:"SAV",dateFormat:"yy-mm-dd",firstDay:1,isRTL:!1,showMonthAfterYear:!0,yearSuffix:""},e.datepicker.setDefaults(e.datepicker.regional.lt)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-lv.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional.lv={closeText:"Aizvērt",prevText:"Iepr.",nextText:"Nāk.",currentText:"Šodien",monthNames:["Janvāris","Februāris","Marts","Aprīlis","Maijs","Jūnijs","Jūlijs","Augusts","Septembris","Oktobris","Novembris","Decembris"],monthNamesShort:["Jan","Feb","Mar","Apr","Mai","Jūn","Jūl","Aug","Sep","Okt","Nov","Dec"],dayNames:["svētdiena","pirmdiena","otrdiena","trešdiena","ceturtdiena","piektdiena","sestdiena"],dayNamesShort:["svt","prm","otr","tre","ctr","pkt","sst"],dayNamesMin:["Sv","Pr","Ot","Tr","Ct","Pk","Ss"],weekHeader:"Ned.",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},e.datepicker.setDefaults(e.datepicker.regional.lv)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-mk.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional.mk={closeText:"Затвори",prevText:"<",nextText:">",currentText:"Денес",monthNames:["Јануари","Февруари","Март","Април","Мај","Јуни","Јули","Август","Септември","Октомври","Ноември","Декември"],monthNamesShort:["Јан","Фев","Мар","Апр","Мај","Јун","Јул","Авг","Сеп","Окт","Ное","Дек"],dayNames:["Недела","Понеделник","Вторник","Среда","Четврток","Петок","Сабота"],dayNamesShort:["Нед","Пон","Вто","Сре","Чет","Пет","Саб"],dayNamesMin:["Не","По","Вт","Ср","Че","Пе","Са"],weekHeader:"Сед",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},e.datepicker.setDefaults(e.datepicker.regional.mk)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-ml.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional.ml={closeText:"ശരി",prevText:"മുന്നത്തെ",nextText:"അടുത്തത് ",currentText:"ഇന്ന്",monthNames:["ജനുവരി","ഫെബ്രുവരി","മാര്‍ച്ച്","ഏപ്രില്‍","മേയ്","ജൂണ്‍","ജൂലൈ","ആഗസ്റ്റ്","സെപ്റ്റംബര്‍","ഒക്ടോബര്‍","നവംബര്‍","ഡിസംബര്‍"],monthNamesShort:["ജനു","ഫെബ്","മാര്‍","ഏപ്രി","മേയ്","ജൂണ്‍","ജൂലാ","ആഗ","സെപ്","ഒക്ടോ","നവം","ഡിസ"],dayNames:["ഞായര്‍","തിങ്കള്‍","ചൊവ്വ","ബുധന്‍","വ്യാഴം","വെള്ളി","ശനി"],dayNamesShort:["ഞായ","തിങ്ക","ചൊവ്വ","ബുധ","വ്യാഴം","വെള്ളി","ശനി"],dayNamesMin:["ഞാ","തി","ചൊ","ബു","വ്യാ","വെ","ശ"],weekHeader:"ആ",dateFormat:"dd/mm/yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},e.datepicker.setDefaults(e.datepicker.regional.ml)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-ms.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional.ms={closeText:"Tutup",prevText:"<Sebelum",nextText:"Selepas>",currentText:"hari ini",monthNames:["Januari","Februari","Mac","April","Mei","Jun","Julai","Ogos","September","Oktober","November","Disember"],monthNamesShort:["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ogo","Sep","Okt","Nov","Dis"],dayNames:["Ahad","Isnin","Selasa","Rabu","Khamis","Jumaat","Sabtu"],dayNamesShort:["Aha","Isn","Sel","Rab","kha","Jum","Sab"],dayNamesMin:["Ah","Is","Se","Ra","Kh","Ju","Sa"],weekHeader:"Mg",dateFormat:"dd/mm/yy",firstDay:0,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},e.datepicker.setDefaults(e.datepicker.regional.ms)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-nb.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional.nb={closeText:"Lukk",prevText:"«Forrige",nextText:"Neste»",currentText:"I dag",monthNames:["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember"],monthNamesShort:["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des"],dayNamesShort:["søn","man","tir","ons","tor","fre","lør"],dayNames:["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"],dayNamesMin:["sø","ma","ti","on","to","fr","lø"],weekHeader:"Uke",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},e.datepicker.setDefaults(e.datepicker.regional.nb)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-nl-BE.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional["nl-BE"]={closeText:"Sluiten",prevText:"←",nextText:"→",currentText:"Vandaag",monthNames:["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december"],monthNamesShort:["jan","feb","mrt","apr","mei","jun","jul","aug","sep","okt","nov","dec"],dayNames:["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"],dayNamesShort:["zon","maa","din","woe","don","vri","zat"],dayNamesMin:["zo","ma","di","wo","do","vr","za"],weekHeader:"Wk",dateFormat:"dd/mm/yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},e.datepicker.setDefaults(e.datepicker.regional["nl-BE"])}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-nl.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional.nl={closeText:"Sluiten",prevText:"←",nextText:"→",currentText:"Vandaag",monthNames:["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december"],monthNamesShort:["jan","feb","mrt","apr","mei","jun","jul","aug","sep","okt","nov","dec"],dayNames:["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"],dayNamesShort:["zon","maa","din","woe","don","vri","zat"],dayNamesMin:["zo","ma","di","wo","do","vr","za"],weekHeader:"Wk",dateFormat:"dd-mm-yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},e.datepicker.setDefaults(e.datepicker.regional.nl)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-nn.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional.nn={closeText:"Lukk",prevText:"«Førre",nextText:"Neste»",currentText:"I dag",monthNames:["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember"],monthNamesShort:["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des"],dayNamesShort:["sun","mån","tys","ons","tor","fre","lau"],dayNames:["sundag","måndag","tysdag","onsdag","torsdag","fredag","laurdag"],dayNamesMin:["su","må","ty","on","to","fr","la"],weekHeader:"Veke",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},e.datepicker.setDefaults(e.datepicker.regional.nn)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-no.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional.no={closeText:"Lukk",prevText:"«Forrige",nextText:"Neste»",currentText:"I dag",monthNames:["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember"],monthNamesShort:["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des"],dayNamesShort:["søn","man","tir","ons","tor","fre","lør"],dayNames:["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"],dayNamesMin:["sø","ma","ti","on","to","fr","lø"],weekHeader:"Uke",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},e.datepicker.setDefaults(e.datepicker.regional.no)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-pl.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional.pl={closeText:"Zamknij",prevText:"<Poprzedni",nextText:"Następny>",currentText:"Dziś",monthNames:["Styczeń","Luty","Marzec","Kwiecień","Maj","Czerwiec","Lipiec","Sierpień","Wrzesień","Październik","Listopad","Grudzień"],monthNamesShort:["Sty","Lu","Mar","Kw","Maj","Cze","Lip","Sie","Wrz","Pa","Lis","Gru"],dayNames:["Niedziela","Poniedziałek","Wtorek","Środa","Czwartek","Piątek","Sobota"],dayNamesShort:["Nie","Pn","Wt","Śr","Czw","Pt","So"],dayNamesMin:["N","Pn","Wt","Śr","Cz","Pt","So"],weekHeader:"Tydz",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},e.datepicker.setDefaults(e.datepicker.regional.pl)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-pt-BR.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional["pt-BR"]={closeText:"Fechar",prevText:"<Anterior",nextText:"Próximo>",currentText:"Hoje",monthNames:["Janeiro","Fevereiro","Março","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro"],monthNamesShort:["Jan","Fev","Mar","Abr","Mai","Jun","Jul","Ago","Set","Out","Nov","Dez"],dayNames:["Domingo","Segunda-feira","Terça-feira","Quarta-feira","Quinta-feira","Sexta-feira","Sábado"],dayNamesShort:["Dom","Seg","Ter","Qua","Qui","Sex","Sáb"],dayNamesMin:["Dom","Seg","Ter","Qua","Qui","Sex","Sáb"],weekHeader:"Sm",dateFormat:"dd/mm/yy",firstDay:0,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},e.datepicker.setDefaults(e.datepicker.regional["pt-BR"])}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-pt.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional.pt={closeText:"Fechar",prevText:"Anterior",nextText:"Seguinte",currentText:"Hoje",monthNames:["Janeiro","Fevereiro","Março","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro"],monthNamesShort:["Jan","Fev","Mar","Abr","Mai","Jun","Jul","Ago","Set","Out","Nov","Dez"],dayNames:["Domingo","Segunda-feira","Terça-feira","Quarta-feira","Quinta-feira","Sexta-feira","Sábado"],dayNamesShort:["Dom","Seg","Ter","Qua","Qui","Sex","Sáb"],dayNamesMin:["Dom","Seg","Ter","Qua","Qui","Sex","Sáb"],weekHeader:"Sem",dateFormat:"dd/mm/yy",firstDay:0,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},e.datepicker.setDefaults(e.datepicker.regional.pt)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-rm.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional.rm={closeText:"Serrar",prevText:"<Suandant",nextText:"Precedent>",currentText:"Actual",monthNames:["Schaner","Favrer","Mars","Avrigl","Matg","Zercladur","Fanadur","Avust","Settember","October","November","December"],monthNamesShort:["Scha","Fev","Mar","Avr","Matg","Zer","Fan","Avu","Sett","Oct","Nov","Dec"],dayNames:["Dumengia","Glindesdi","Mardi","Mesemna","Gievgia","Venderdi","Sonda"],dayNamesShort:["Dum","Gli","Mar","Mes","Gie","Ven","Som"],dayNamesMin:["Du","Gl","Ma","Me","Gi","Ve","So"],weekHeader:"emna",dateFormat:"dd/mm/yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},e.datepicker.setDefaults(e.datepicker.regional.rm)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-ro.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional.ro={closeText:"Închide",prevText:"« Luna precedentă",nextText:"Luna următoare »",currentText:"Azi",monthNames:["Ianuarie","Februarie","Martie","Aprilie","Mai","Iunie","Iulie","August","Septembrie","Octombrie","Noiembrie","Decembrie"],monthNamesShort:["Ian","Feb","Mar","Apr","Mai","Iun","Iul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Duminică","Luni","Marţi","Miercuri","Joi","Vineri","Sâmbătă"],dayNamesShort:["Dum","Lun","Mar","Mie","Joi","Vin","Sâm"],dayNamesMin:["Du","Lu","Ma","Mi","Jo","Vi","Sâ"],weekHeader:"Săpt",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},e.datepicker.setDefaults(e.datepicker.regional.ro)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-ru.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional.ru={closeText:"Закрыть",prevText:"<Пред",nextText:"След>",currentText:"Сегодня",monthNames:["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь"],monthNamesShort:["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек"],dayNames:["воскресенье","понедельник","вторник","среда","четверг","пятница","суббота"],dayNamesShort:["вск","пнд","втр","срд","чтв","птн","сбт"],dayNamesMin:["Вс","Пн","Вт","Ср","Чт","Пт","Сб"],weekHeader:"Нед",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},e.datepicker.setDefaults(e.datepicker.regional.ru)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-sk.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional.sk={closeText:"Zavrieť",prevText:"<Predchádzajúci",nextText:"Nasledujúci>",currentText:"Dnes",monthNames:["január","február","marec","apríl","máj","jún","júl","august","september","október","november","december"],monthNamesShort:["Jan","Feb","Mar","Apr","Máj","Jún","Júl","Aug","Sep","Okt","Nov","Dec"],dayNames:["nedeľa","pondelok","utorok","streda","štvrtok","piatok","sobota"],dayNamesShort:["Ned","Pon","Uto","Str","Štv","Pia","Sob"],dayNamesMin:["Ne","Po","Ut","St","Št","Pia","So"],weekHeader:"Ty",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},e.datepicker.setDefaults(e.datepicker.regional.sk)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-sl.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional.sl={closeText:"Zapri",prevText:"<Prejšnji",nextText:"Naslednji>",currentText:"Trenutni",monthNames:["Januar","Februar","Marec","April","Maj","Junij","Julij","Avgust","September","Oktober","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","Maj","Jun","Jul","Avg","Sep","Okt","Nov","Dec"],dayNames:["Nedelja","Ponedeljek","Torek","Sreda","Četrtek","Petek","Sobota"],dayNamesShort:["Ned","Pon","Tor","Sre","Čet","Pet","Sob"],dayNamesMin:["Ne","Po","To","Sr","Če","Pe","So"],weekHeader:"Teden",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},e.datepicker.setDefaults(e.datepicker.regional.sl)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-sq.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional.sq={closeText:"mbylle",prevText:"<mbrapa",nextText:"Përpara>",currentText:"sot",monthNames:["Janar","Shkurt","Mars","Prill","Maj","Qershor","Korrik","Gusht","Shtator","Tetor","Nëntor","Dhjetor"],monthNamesShort:["Jan","Shk","Mar","Pri","Maj","Qer","Kor","Gus","Sht","Tet","Nën","Dhj"],dayNames:["E Diel","E Hënë","E Martë","E Mërkurë","E Enjte","E Premte","E Shtune"],dayNamesShort:["Di","Hë","Ma","Më","En","Pr","Sh"],dayNamesMin:["Di","Hë","Ma","Më","En","Pr","Sh"],weekHeader:"Ja",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},e.datepicker.setDefaults(e.datepicker.regional.sq)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-sr-SR.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional["sr-SR"]={closeText:"Zatvori",prevText:"<",nextText:">",currentText:"Danas",monthNames:["Januar","Februar","Mart","April","Maj","Jun","Jul","Avgust","Septembar","Oktobar","Novembar","Decembar"],monthNamesShort:["Jan","Feb","Mar","Apr","Maj","Jun","Jul","Avg","Sep","Okt","Nov","Dec"],dayNames:["Nedelja","Ponedeljak","Utorak","Sreda","Četvrtak","Petak","Subota"],dayNamesShort:["Ned","Pon","Uto","Sre","Čet","Pet","Sub"],dayNamesMin:["Ne","Po","Ut","Sr","Če","Pe","Su"],weekHeader:"Sed",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},e.datepicker.setDefaults(e.datepicker.regional["sr-SR"])}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-sr.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional.sr={closeText:"Затвори",prevText:"<",nextText:">",currentText:"Данас",monthNames:["Јануар","Фебруар","Март","Април","Мај","Јун","Јул","Август","Септембар","Октобар","Новембар","Децембар"],monthNamesShort:["Јан","Феб","Мар","Апр","Мај","Јун","Јул","Авг","Сеп","Окт","Нов","Дец"],dayNames:["Недеља","Понедељак","Уторак","Среда","Четвртак","Петак","Субота"],dayNamesShort:["Нед","Пон","Уто","Сре","Чет","Пет","Суб"],dayNamesMin:["Не","По","Ут","Ср","Че","Пе","Су"],weekHeader:"Сед",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},e.datepicker.setDefaults(e.datepicker.regional.sr)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-sv.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional.sv={closeText:"Stäng",prevText:"«Förra",nextText:"Nästa»",currentText:"Idag",monthNames:["Januari","Februari","Mars","April","Maj","Juni","Juli","Augusti","September","Oktober","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","Maj","Jun","Jul","Aug","Sep","Okt","Nov","Dec"],dayNamesShort:["Sön","Mån","Tis","Ons","Tor","Fre","Lör"],dayNames:["Söndag","Måndag","Tisdag","Onsdag","Torsdag","Fredag","Lördag"],dayNamesMin:["Sö","Må","Ti","On","To","Fr","Lö"],weekHeader:"Ve",dateFormat:"yy-mm-dd",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},e.datepicker.setDefaults(e.datepicker.regional.sv)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-ta.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional.ta={closeText:"மூடு",prevText:"முன்னையது",nextText:"அடுத்தது",currentText:"இன்று",monthNames:["தை","மாசி","பங்குனி","சித்திரை","வைகாசி","ஆனி","ஆடி","ஆவணி","புரட்டாசி","ஐப்பசி","கார்த்திகை","மார்கழி"],monthNamesShort:["தை","மாசி","பங்","சித்","வைகா","ஆனி","ஆடி","ஆவ","புர","ஐப்","கார்","மார்"],dayNames:["ஞாயிற்றுக்கிழமை","திங்கட்கிழமை","செவ்வாய்க்கிழமை","புதன்கிழமை","வியாழக்கிழமை","வெள்ளிக்கிழமை","சனிக்கிழமை"],dayNamesShort:["ஞாயிறு","திங்கள்","செவ்வாய்","புதன்","வியாழன்","வெள்ளி","சனி"],dayNamesMin:["ஞா","தி","செ","பு","வி","வெ","ச"],weekHeader:"Не",dateFormat:"dd/mm/yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},e.datepicker.setDefaults(e.datepicker.regional.ta)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-th.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional.th={closeText:"ปิด",prevText:"« ย้อน",nextText:"ถัดไป »",currentText:"วันนี้",monthNames:["มกราคม","กุมภาพันธ์","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","กรกฎาคม","สิงหาคม","กันยายน","ตุลาคม","พฤศจิกายน","ธันวาคม"],monthNamesShort:["ม.ค.","ก.พ.","มี.ค.","เม.ย.","พ.ค.","มิ.ย.","ก.ค.","ส.ค.","ก.ย.","ต.ค.","พ.ย.","ธ.ค."],dayNames:["อาทิตย์","จันทร์","อังคาร","พุธ","พฤหัสบดี","ศุกร์","เสาร์"],dayNamesShort:["อา.","จ.","อ.","พ.","พฤ.","ศ.","ส."],dayNamesMin:["อา.","จ.","อ.","พ.","พฤ.","ศ.","ส."],weekHeader:"Wk",dateFormat:"dd/mm/yy",firstDay:0,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},e.datepicker.setDefaults(e.datepicker.regional.th)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-tj.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional.tj={closeText:"Идома",prevText:"<Қафо",nextText:"Пеш>",currentText:"Имрӯз",monthNames:["Январ","Феврал","Март","Апрел","Май","Июн","Июл","Август","Сентябр","Октябр","Ноябр","Декабр"],monthNamesShort:["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек"],dayNames:["якшанбе","душанбе","сешанбе","чоршанбе","панҷшанбе","ҷумъа","шанбе"],dayNamesShort:["якш","душ","сеш","чор","пан","ҷум","шан"],dayNamesMin:["Як","Дш","Сш","Чш","Пш","Ҷм","Шн"],weekHeader:"Хф",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},e.datepicker.setDefaults(e.datepicker.regional.tj)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-tr.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional.tr={closeText:"kapat",prevText:"<geri",nextText:"ileri>",currentText:"bugün",monthNames:["Ocak","Şubat","Mart","Nisan","Mayıs","Haziran","Temmuz","Ağustos","Eylül","Ekim","Kasım","Aralık"],monthNamesShort:["Oca","Şub","Mar","Nis","May","Haz","Tem","Ağu","Eyl","Eki","Kas","Ara"],dayNames:["Pazar","Pazartesi","Salı","Çarşamba","Perşembe","Cuma","Cumartesi"],dayNamesShort:["Pz","Pt","Sa","Ça","Pe","Cu","Ct"],dayNamesMin:["Pz","Pt","Sa","Ça","Pe","Cu","Ct"],weekHeader:"Hf",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},e.datepicker.setDefaults(e.datepicker.regional.tr)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-uk.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional.uk={closeText:"Закрити",prevText:"<",nextText:">",currentText:"Сьогодні",monthNames:["Січень","Лютий","Березень","Квітень","Травень","Червень","Липень","Серпень","Вересень","Жовтень","Листопад","Грудень"],monthNamesShort:["Січ","Лют","Бер","Кві","Тра","Чер","Лип","Сер","Вер","Жов","Лис","Гру"],dayNames:["неділя","понеділок","вівторок","середа","четвер","п’ятниця","субота"],dayNamesShort:["нед","пнд","вів","срд","чтв","птн","сбт"],dayNamesMin:["Нд","Пн","Вт","Ср","Чт","Пт","Сб"],weekHeader:"Тиж",dateFormat:"dd/mm/yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},e.datepicker.setDefaults(e.datepicker.regional.uk)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-vi.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional.vi={closeText:"Đóng",prevText:"<Trước",nextText:"Tiếp>",currentText:"Hôm nay",monthNames:["Tháng Một","Tháng Hai","Tháng Ba","Tháng Tư","Tháng Năm","Tháng Sáu","Tháng Bảy","Tháng Tám","Tháng Chín","Tháng Mười","Tháng Mười Một","Tháng Mười Hai"],monthNamesShort:["Tháng 1","Tháng 2","Tháng 3","Tháng 4","Tháng 5","Tháng 6","Tháng 7","Tháng 8","Tháng 9","Tháng 10","Tháng 11","Tháng 12"],dayNames:["Chủ Nhật","Thứ Hai","Thứ Ba","Thứ Tư","Thứ Năm","Thứ Sáu","Thứ Bảy"],dayNamesShort:["CN","T2","T3","T4","T5","T6","T7"],dayNamesMin:["CN","T2","T3","T4","T5","T6","T7"],weekHeader:"Tu",dateFormat:"dd/mm/yy",firstDay:0,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},e.datepicker.setDefaults(e.datepicker.regional.vi)}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-zh-CN.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional["zh-CN"]={closeText:"关闭",prevText:"<上月",nextText:"下月>",currentText:"今天",monthNames:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],monthNamesShort:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],dayNames:["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],dayNamesShort:["周日","周一","周二","周三","周四","周五","周六"],dayNamesMin:["日","一","二","三","四","五","六"],weekHeader:"周",dateFormat:"yy-mm-dd",firstDay:1,isRTL:!1,showMonthAfterYear:!0,yearSuffix:"年"},e.datepicker.setDefaults(e.datepicker.regional["zh-CN"])}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-zh-HK.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional["zh-HK"]={closeText:"關閉",prevText:"<上月",nextText:"下月>",currentText:"今天",monthNames:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],monthNamesShort:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],dayNames:["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],dayNamesShort:["周日","周一","周二","周三","周四","周五","周六"],dayNamesMin:["日","一","二","三","四","五","六"],weekHeader:"周",dateFormat:"dd-mm-yy",firstDay:0,isRTL:!1,showMonthAfterYear:!0,yearSuffix:"年"},e.datepicker.setDefaults(e.datepicker.regional["zh-HK"])}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-zh-TW.min.js: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.10.4 - 2014-01-17 2 | * http://jqueryui.com 3 | * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ 4 | jQuery(function(e){e.datepicker.regional["zh-TW"]={closeText:"關閉",prevText:"<上月",nextText:"下月>",currentText:"今天",monthNames:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],monthNamesShort:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],dayNames:["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],dayNamesShort:["周日","周一","周二","周三","周四","周五","周六"],dayNamesMin:["日","一","二","三","四","五","六"],weekHeader:"周",dateFormat:"yy/mm/dd",firstDay:1,isRTL:!1,showMonthAfterYear:!0,yearSuffix:"年"},e.datepicker.setDefaults(e.datepicker.regional["zh-TW"])}); -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/images/animated-overlay.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/js/plugins/jquery-ui/images/animated-overlay.gif -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/images/ui-bg_flat_0_aaaaaa_40x100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/js/plugins/jquery-ui/images/ui-bg_flat_0_aaaaaa_40x100.png -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/images/ui-bg_flat_75_ffffff_40x100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/js/plugins/jquery-ui/images/ui-bg_flat_75_ffffff_40x100.png -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/images/ui-bg_glass_55_fbf9ee_1x400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/js/plugins/jquery-ui/images/ui-bg_glass_55_fbf9ee_1x400.png -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/images/ui-bg_glass_65_ffffff_1x400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/js/plugins/jquery-ui/images/ui-bg_glass_65_ffffff_1x400.png -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/images/ui-bg_glass_75_dadada_1x400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/js/plugins/jquery-ui/images/ui-bg_glass_75_dadada_1x400.png -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/images/ui-bg_glass_75_e6e6e6_1x400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/js/plugins/jquery-ui/images/ui-bg_glass_75_e6e6e6_1x400.png -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/images/ui-bg_glass_95_fef1ec_1x400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/js/plugins/jquery-ui/images/ui-bg_glass_95_fef1ec_1x400.png -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/images/ui-bg_highlight-soft_75_cccccc_1x100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/js/plugins/jquery-ui/images/ui-bg_highlight-soft_75_cccccc_1x100.png -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/images/ui-icons_222222_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/js/plugins/jquery-ui/images/ui-icons_222222_256x240.png -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/images/ui-icons_2e83ff_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/js/plugins/jquery-ui/images/ui-icons_2e83ff_256x240.png -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/images/ui-icons_454545_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/js/plugins/jquery-ui/images/ui-icons_454545_256x240.png -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/images/ui-icons_888888_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/js/plugins/jquery-ui/images/ui-icons_888888_256x240.png -------------------------------------------------------------------------------- /shadow/static/js/plugins/jquery-ui/images/ui-icons_cd0a0a_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/js/plugins/jquery-ui/images/ui-icons_cd0a0a_256x240.png -------------------------------------------------------------------------------- /shadow/static/js/plugins/justified-gallery/README.md: -------------------------------------------------------------------------------- 1 |
2 | 3 | image 4 | 5 |
6 | 7 | This is a JQuery plugin that allows you to create an high quality justified gallery of images. 8 | 9 | A common problem, for people who create sites, is to create an elegant image gallery that manages 10 | the various sizes of images. Flickr and Google+ manage this situation in an excellent way, 11 | the purpose of this plugin is to give you the power of this solutions, with a new fast algorithm. 12 | 13 | You can read the entire description of this project 14 | in the official project page. 15 | -------------------------------------------------------------------------------- /shadow/static/js/plugins/justified-gallery/jquery.justifiedgallery.min.css: -------------------------------------------------------------------------------- 1 | /* 2 | Justified Gallery 3 | Version: 2.1 4 | Author: Miro Mannino 5 | Author URI: http://miromannino.it 6 | 7 | Copyright 2012 Miro Mannino (miro.mannino@gmail.com) 8 | 9 | This file is part of Justified Gallery. 10 | 11 | This work is licensed under the Creative Commons Attribution 3.0 Unported License. 12 | 13 | To view a copy of this license, visit http://creativecommons.org/licenses/by/3.0/ 14 | or send a letter to Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA. 15 | */ 16 | 17 | html{overflow-y:scroll}.justifiedGallery{width:100%;margin-bottom:10px}.justifiedGallery .jg-image{position:absolute;display:inline-block;vertical-align:top;margin-left:0}.justifiedGallery .jg-image img{border:none;margin:0;padding:0;display:none}.justifiedGallery .jg-image a{text-decoration:none}.justifiedGallery .jg-image-label{white-space:normal;font:normal 12px arial;background:#000;color:#fff;position:absolute;left:0;right:0;padding:5px 5px 10px 8px;text-align:left;opacity:0;filter:alpha(opacity=0)}.justifiedGallery .jg-loading-img{margin:auto;width:50px;height:50px;background:url(../img/loading.gif) no-repeat center center}.justifiedGallery .jg-loading{margin:auto;width:50px;height:50px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.justifiedGallery .jg-row{position:relative;white-space:nowrap;overflow:hidden;margin-bottom:4px}.justifiedGallery .jg-error{font-size:12px;border:1px solid red;background-color:#faa;margin:10px 0;padding:5px 0 5px 5px} -------------------------------------------------------------------------------- /shadow/static/js/plugins/justified-gallery/loading.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/js/plugins/justified-gallery/loading.gif -------------------------------------------------------------------------------- /shadow/static/js/plugins/jvectormap/._jquery-jvectormap-2.0.2.min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/js/plugins/jvectormap/._jquery-jvectormap-2.0.2.min.js -------------------------------------------------------------------------------- /shadow/static/js/plugins/sweetalert/._sweetalert.min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/shadow/static/js/plugins/sweetalert/._sweetalert.min.js -------------------------------------------------------------------------------- /shadow/static/js/plugins/video/responsible-video.js: -------------------------------------------------------------------------------- 1 | $(function() { 2 | var $allVideos = $("iframe[src^='http://player.vimeo.com'], iframe[src^='http://www.youtube.com'], object, embed"), 3 | $fluidEl = $("figure"); 4 | 5 | $allVideos.each(function() { 6 | $(this) 7 | // jQuery .data does not work on object/embed elements 8 | .attr('data-aspectRatio', this.height / this.width) 9 | .removeAttr('height') 10 | .removeAttr('width'); 11 | }); 12 | $(window).resize(function() { 13 | var newWidth = $fluidEl.width(); 14 | $allVideos.each(function() { 15 | var $el = $(this); 16 | $el 17 | .width(newWidth) 18 | .height(newWidth * $el.attr('data-aspectRatio')); 19 | }); 20 | }).resize(); 21 | }); -------------------------------------------------------------------------------- /shadow/static/json/datatable.zh_CN.json: -------------------------------------------------------------------------------- 1 | { 2 | "processing": "处理中...", 3 | "lengthMenu": "显示 _MENU_ 项结果", 4 | "zeroRecords": "没有匹配结果", 5 | "info": "显示第 _START_ 至 _END_ 项结果,共 _TOTAL_ 项", 6 | "infoEmpty": "显示第 0 至 0 项结果,共 0 项", 7 | "infoFiltered": "(由 _MAX_ 项结果过滤)", 8 | "infoPostFix": "", 9 | "search": "搜索:", 10 | "searchPlaceholder": "搜索...", 11 | "url": "", 12 | "emptyTable": "表中数据为空", 13 | "loadingRecords": "载入中...", 14 | "infoThousands": ",", 15 | "paginate": { 16 | "first": "首页", 17 | "previous": "上页", 18 | "next": "下页", 19 | "last": "末页" 20 | }, 21 | "aria": { 22 | "paginate": { 23 | "first": "首页", 24 | "previous": "上页", 25 | "next": "下页", 26 | "last": "末页" 27 | }, 28 | "sortAscending": "以升序排列此列", 29 | "sortDescending": "以降序排列此列" 30 | }, 31 | "thousands": "." 32 | } -------------------------------------------------------------------------------- /shadow/templates/layout.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | 3 | {% block container_left %}{% endblock %} -------------------------------------------------------------------------------- /shadow/views.py: -------------------------------------------------------------------------------- 1 | #encoding: utf-8 2 | 3 | from flask import redirect, url_for 4 | 5 | from . import app 6 | 7 | @app.route('/') 8 | def index(): 9 | return redirect(url_for('dashboard.index')) -------------------------------------------------------------------------------- /utils/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/utils/__init__.py -------------------------------------------------------------------------------- /utils/iputils.py: -------------------------------------------------------------------------------- 1 | #encoding: utf-8 2 | 3 | import netaddr 4 | import math 5 | 6 | class IPUtils(object): 7 | 8 | @staticmethod 9 | def ip_ranges(ip): 10 | nodes = [] 11 | for node in ip.replace(',', ' ').replace(';', ' ').split(): 12 | if node.find('-') != -1: 13 | nodes.append(tuple(map(netaddr.IPAddress, node.split('-')))) 14 | elif node.find('/') != -1: 15 | net = netaddr.IPNetwork(node) 16 | nodes.append([netaddr.IPAddress(net.first), netaddr.IPAddress(net.last)]) 17 | else: 18 | nodes.append([netaddr.IPAddress(node), netaddr.IPAddress(node)]) 19 | return nodes 20 | 21 | @staticmethod 22 | def split_ip_ranges(ip, count=3): 23 | rt = [[] for _ in range(count)] 24 | 25 | for node in IPUtils.ip_ranges(ip): 26 | start, end = int(node[0]), int(node[1]) 27 | step = math.ceil((end - start + 1) / count) 28 | idx = 0 29 | while True: 30 | tmp = start + step 31 | if tmp < end: 32 | rt[idx].append([netaddr.IPAddress(start), netaddr.IPAddress(tmp)]) 33 | start += step + 1 34 | else: 35 | rt[idx].append([netaddr.IPAddress(start), netaddr.IPAddress(end)]) 36 | break 37 | 38 | idx += 1 39 | return list(filter(lambda x: x, rt)) 40 | 41 | 42 | if __name__ == '__main__': 43 | from pprint import pprint 44 | from functools import reduce 45 | ips = ['192.168.1.0/24'] 46 | 47 | for ip in ips: 48 | print(ip + ':') 49 | pprint(IPUtils.split_ip_ranges(ip, 20)) 50 | -------------------------------------------------------------------------------- /utils/rediscli.py: -------------------------------------------------------------------------------- 1 | #encoding: utf-8 2 | 3 | import logging 4 | import traceback 5 | 6 | from redis import StrictRedis 7 | 8 | logger = logging.getLogger(__name__) 9 | 10 | class RedisCli(object): 11 | def __init__(self, app=None): 12 | self.conn = None 13 | self.app = app 14 | 15 | def init_app(self, app): 16 | self.app = app 17 | 18 | def reconnect(self): 19 | try: 20 | if self.app is None: 21 | raise BaseException('flask app not initialize') 22 | self.conn = StrictRedis(**self.app.config.get('REDIS')) 23 | self.ping() 24 | except BaseException as e: 25 | logger.exception(e) 26 | logger.error(traceback.format_exc()) 27 | self.conn = None 28 | 29 | def __getattr__(self, key): 30 | if self.conn is None: 31 | self.reconnect() 32 | 33 | if self.conn: 34 | return getattr(self.conn, key, None) 35 | 36 | return None -------------------------------------------------------------------------------- /utils/timezone.py: -------------------------------------------------------------------------------- 1 | #encoding: utf-8 2 | 3 | from datetime import datetime 4 | 5 | def now(): 6 | return datetime.now() -------------------------------------------------------------------------------- /vul/__init__.py: -------------------------------------------------------------------------------- 1 | #encoding: utf-8 2 | 3 | from flask import Blueprint 4 | 5 | 6 | bp = Blueprint('vul', __name__, url_prefix='/vul', static_folder='static', template_folder='templates') 7 | 8 | from . import views 9 | from . import models 10 | from . import commands -------------------------------------------------------------------------------- /vul/commands.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/imsilence/shadow-vulscan/1c2d098bf728bd1c1e38ba27af4050852b1516ba/vul/commands.py --------------------------------------------------------------------------------