├── app ├── static │ ├── css │ │ ├── css │ │ │ ├── mixins │ │ │ │ └── _text-hide.css │ │ │ └── bootstrap-reboot.css │ │ ├── Flaticon.woff │ │ ├── Flaticon.woff2 │ │ ├── ajax-loader.gif │ │ ├── owl.theme.default.min.css │ │ ├── flaticon.css │ │ ├── jquery.timepicker.css │ │ ├── _flaticon.scss │ │ ├── owl.carousel.min.css │ │ ├── content.css │ │ └── bootstrap │ │ │ └── bootstrap-reboot.css │ ├── images │ │ ├── 404.jpg │ │ ├── bg_1.jpg │ │ └── favicon.png │ ├── scss │ │ └── bootstrap │ │ │ ├── utilities │ │ │ ├── _clearfix.scss │ │ │ ├── _screenreaders.scss │ │ │ ├── _visibility.scss │ │ │ ├── _shadows.scss │ │ │ ├── _sizing.scss │ │ │ ├── _float.scss │ │ │ ├── _align.scss │ │ │ ├── _background.scss │ │ │ ├── _position.scss │ │ │ ├── _embed.scss │ │ │ ├── _display.scss │ │ │ ├── _spacing.scss │ │ │ ├── _text.scss │ │ │ ├── _borders.scss │ │ │ └── _flex.scss │ │ │ ├── _media.scss │ │ │ ├── mixins │ │ │ ├── _box-shadow.scss │ │ │ ├── _clearfix.scss │ │ │ ├── _size.scss │ │ │ ├── _visibility.scss │ │ │ ├── _lists.scss │ │ │ ├── _text-truncate.scss │ │ │ ├── _resize.scss │ │ │ ├── _float.scss │ │ │ ├── _badge.scss │ │ │ ├── _alert.scss │ │ │ ├── _nav-divider.scss │ │ │ ├── _text-emphasis.scss │ │ │ ├── _transition.scss │ │ │ ├── _text-hide.scss │ │ │ ├── _list-group.scss │ │ │ ├── _pagination.scss │ │ │ ├── _background-variant.scss │ │ │ ├── _reset-text.scss │ │ │ ├── _table-row.scss │ │ │ ├── _border-radius.scss │ │ │ ├── _screen-reader.scss │ │ │ ├── _hover.scss │ │ │ ├── _image.scss │ │ │ ├── _caret.scss │ │ │ ├── _grid.scss │ │ │ ├── _grid-framework.scss │ │ │ ├── _gradients.scss │ │ │ ├── _buttons.scss │ │ │ ├── _forms.scss │ │ │ └── _breakpoints.scss │ │ │ ├── _transitions.scss │ │ │ ├── _jumbotron.scss │ │ │ ├── bootstrap-reboot.scss │ │ │ ├── _utilities.scss │ │ │ ├── _root.scss │ │ │ ├── bootstrap-grid.scss │ │ │ ├── _close.scss │ │ │ ├── _progress.scss │ │ │ ├── bootstrap.scss │ │ │ ├── _mixins.scss │ │ │ ├── _badge.scss │ │ │ ├── _grid.scss │ │ │ ├── _code.scss │ │ │ ├── _images.scss │ │ │ ├── _alert.scss │ │ │ ├── _breadcrumb.scss │ │ │ ├── _pagination.scss │ │ │ ├── _nav.scss │ │ │ ├── _type.scss │ │ │ ├── _functions.scss │ │ │ ├── _tooltip.scss │ │ │ ├── _print.scss │ │ │ ├── _list-group.scss │ │ │ ├── _buttons.scss │ │ │ ├── _tables.scss │ │ │ ├── _dropdown.scss │ │ │ ├── _button-group.scss │ │ │ ├── _popover.scss │ │ │ ├── _modal.scss │ │ │ ├── _input-group.scss │ │ │ ├── _carousel.scss │ │ │ ├── _card.scss │ │ │ └── _navbar.scss │ ├── fonts │ │ ├── icomoon │ │ │ ├── icomoon.eot │ │ │ ├── icomoon.ttf │ │ │ └── icomoon.woff │ │ ├── flaticon │ │ │ ├── font │ │ │ │ ├── Flaticon.eot │ │ │ │ ├── Flaticon.ttf │ │ │ │ ├── Flaticon.woff │ │ │ │ ├── Flaticon.woff2 │ │ │ │ ├── flaticon.css │ │ │ │ └── _flaticon.scss │ │ │ └── license │ │ │ │ └── license.pdf │ │ ├── ionicons │ │ │ └── fonts │ │ │ │ ├── ionicons.eot │ │ │ │ ├── ionicons.ttf │ │ │ │ ├── ionicons.woff │ │ │ │ └── ionicons.woff2 │ │ └── open-iconic │ │ │ ├── open-iconic.eot │ │ │ ├── open-iconic.otf │ │ │ ├── open-iconic.ttf │ │ │ └── open-iconic.woff │ └── js │ │ ├── jquery.animateNumber.min.js │ │ ├── google-map.js │ │ ├── search.js │ │ └── jquery.waypoints.min.js ├── templates │ ├── 404.html │ ├── reset.html │ └── layout.html ├── src │ └── config.json ├── requirements.txt ├── forms.py ├── app.py └── model.py ├── src ├── pypass.png └── screen.png ├── Dockerfile ├── .gitignore ├── LICENSE └── README.md /app/static/css/css/mixins/_text-hide.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/pypass.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZioGuillo/PYPASS/HEAD/src/pypass.png -------------------------------------------------------------------------------- /src/screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZioGuillo/PYPASS/HEAD/src/screen.png -------------------------------------------------------------------------------- /app/static/images/404.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZioGuillo/PYPASS/HEAD/app/static/images/404.jpg -------------------------------------------------------------------------------- /app/static/scss/bootstrap/utilities/_clearfix.scss: -------------------------------------------------------------------------------- 1 | .clearfix { 2 | @include clearfix(); 3 | } 4 | -------------------------------------------------------------------------------- /app/static/css/Flaticon.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZioGuillo/PYPASS/HEAD/app/static/css/Flaticon.woff -------------------------------------------------------------------------------- /app/static/images/bg_1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZioGuillo/PYPASS/HEAD/app/static/images/bg_1.jpg -------------------------------------------------------------------------------- /app/static/css/Flaticon.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZioGuillo/PYPASS/HEAD/app/static/css/Flaticon.woff2 -------------------------------------------------------------------------------- /app/static/css/ajax-loader.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZioGuillo/PYPASS/HEAD/app/static/css/ajax-loader.gif -------------------------------------------------------------------------------- /app/static/images/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZioGuillo/PYPASS/HEAD/app/static/images/favicon.png -------------------------------------------------------------------------------- /app/static/fonts/icomoon/icomoon.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZioGuillo/PYPASS/HEAD/app/static/fonts/icomoon/icomoon.eot -------------------------------------------------------------------------------- /app/static/fonts/icomoon/icomoon.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZioGuillo/PYPASS/HEAD/app/static/fonts/icomoon/icomoon.ttf -------------------------------------------------------------------------------- /app/static/fonts/icomoon/icomoon.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZioGuillo/PYPASS/HEAD/app/static/fonts/icomoon/icomoon.woff -------------------------------------------------------------------------------- /app/static/fonts/flaticon/font/Flaticon.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZioGuillo/PYPASS/HEAD/app/static/fonts/flaticon/font/Flaticon.eot -------------------------------------------------------------------------------- /app/static/fonts/flaticon/font/Flaticon.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZioGuillo/PYPASS/HEAD/app/static/fonts/flaticon/font/Flaticon.ttf -------------------------------------------------------------------------------- /app/static/fonts/flaticon/font/Flaticon.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZioGuillo/PYPASS/HEAD/app/static/fonts/flaticon/font/Flaticon.woff -------------------------------------------------------------------------------- /app/static/fonts/flaticon/font/Flaticon.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZioGuillo/PYPASS/HEAD/app/static/fonts/flaticon/font/Flaticon.woff2 -------------------------------------------------------------------------------- /app/static/fonts/flaticon/license/license.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZioGuillo/PYPASS/HEAD/app/static/fonts/flaticon/license/license.pdf -------------------------------------------------------------------------------- /app/static/fonts/ionicons/fonts/ionicons.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZioGuillo/PYPASS/HEAD/app/static/fonts/ionicons/fonts/ionicons.eot -------------------------------------------------------------------------------- /app/static/fonts/ionicons/fonts/ionicons.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZioGuillo/PYPASS/HEAD/app/static/fonts/ionicons/fonts/ionicons.ttf -------------------------------------------------------------------------------- /app/static/fonts/ionicons/fonts/ionicons.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZioGuillo/PYPASS/HEAD/app/static/fonts/ionicons/fonts/ionicons.woff -------------------------------------------------------------------------------- /app/static/fonts/open-iconic/open-iconic.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZioGuillo/PYPASS/HEAD/app/static/fonts/open-iconic/open-iconic.eot -------------------------------------------------------------------------------- /app/static/fonts/open-iconic/open-iconic.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZioGuillo/PYPASS/HEAD/app/static/fonts/open-iconic/open-iconic.otf -------------------------------------------------------------------------------- /app/static/fonts/open-iconic/open-iconic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZioGuillo/PYPASS/HEAD/app/static/fonts/open-iconic/open-iconic.ttf -------------------------------------------------------------------------------- /app/static/fonts/open-iconic/open-iconic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZioGuillo/PYPASS/HEAD/app/static/fonts/open-iconic/open-iconic.woff -------------------------------------------------------------------------------- /app/static/fonts/ionicons/fonts/ionicons.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZioGuillo/PYPASS/HEAD/app/static/fonts/ionicons/fonts/ionicons.woff2 -------------------------------------------------------------------------------- /app/static/scss/bootstrap/_media.scss: -------------------------------------------------------------------------------- 1 | .media { 2 | display: flex; 3 | align-items: flex-start; 4 | } 5 | 6 | .media-body { 7 | flex: 1; 8 | } 9 | -------------------------------------------------------------------------------- /app/static/scss/bootstrap/mixins/_box-shadow.scss: -------------------------------------------------------------------------------- 1 | @mixin box-shadow($shadow...) { 2 | @if $enable-shadows { 3 | box-shadow: $shadow; 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /app/static/scss/bootstrap/mixins/_clearfix.scss: -------------------------------------------------------------------------------- 1 | @mixin clearfix() { 2 | &::after { 3 | display: block; 4 | clear: both; 5 | content: ""; 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /app/static/scss/bootstrap/mixins/_size.scss: -------------------------------------------------------------------------------- 1 | // Sizing shortcuts 2 | 3 | @mixin size($width, $height: $width) { 4 | width: $width; 5 | height: $height; 6 | } 7 | -------------------------------------------------------------------------------- /app/static/scss/bootstrap/mixins/_visibility.scss: -------------------------------------------------------------------------------- 1 | // stylelint-disable declaration-no-important 2 | 3 | // Visibility 4 | 5 | @mixin invisible($visibility) { 6 | visibility: $visibility !important; 7 | } 8 | -------------------------------------------------------------------------------- /app/static/scss/bootstrap/utilities/_screenreaders.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Screenreaders 3 | // 4 | 5 | .sr-only { 6 | @include sr-only(); 7 | } 8 | 9 | .sr-only-focusable { 10 | @include sr-only-focusable(); 11 | } 12 | -------------------------------------------------------------------------------- /app/static/scss/bootstrap/utilities/_visibility.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Visibility utilities 3 | // 4 | 5 | .visible { 6 | @include invisible(visible); 7 | } 8 | 9 | .invisible { 10 | @include invisible(hidden); 11 | } 12 | -------------------------------------------------------------------------------- /app/static/scss/bootstrap/mixins/_lists.scss: -------------------------------------------------------------------------------- 1 | // Lists 2 | 3 | // Unstyled keeps list items block level, just removes default browser padding and list-style 4 | @mixin list-unstyled { 5 | padding-left: 0; 6 | list-style: none; 7 | } 8 | -------------------------------------------------------------------------------- /app/static/scss/bootstrap/mixins/_text-truncate.scss: -------------------------------------------------------------------------------- 1 | // Text truncate 2 | // Requires inline-block or block for proper styling 3 | 4 | @mixin text-truncate() { 5 | overflow: hidden; 6 | text-overflow: ellipsis; 7 | white-space: nowrap; 8 | } 9 | -------------------------------------------------------------------------------- /app/static/scss/bootstrap/mixins/_resize.scss: -------------------------------------------------------------------------------- 1 | // Resize anything 2 | 3 | @mixin resizable($direction) { 4 | overflow: auto; // Per CSS3 UI, `resize` only applies when `overflow` isn't `visible` 5 | resize: $direction; // Options: horizontal, vertical, both 6 | } 7 | -------------------------------------------------------------------------------- /app/static/scss/bootstrap/mixins/_float.scss: -------------------------------------------------------------------------------- 1 | // stylelint-disable declaration-no-important 2 | 3 | @mixin float-left { 4 | float: left !important; 5 | } 6 | @mixin float-right { 7 | float: right !important; 8 | } 9 | @mixin float-none { 10 | float: none !important; 11 | } 12 | -------------------------------------------------------------------------------- /app/static/scss/bootstrap/utilities/_shadows.scss: -------------------------------------------------------------------------------- 1 | // stylelint-disable declaration-no-important 2 | 3 | .shadow-sm { box-shadow: $box-shadow-sm !important; } 4 | .shadow { box-shadow: $box-shadow !important; } 5 | .shadow-lg { box-shadow: $box-shadow-lg !important; } 6 | .shadow-none { box-shadow: none !important; } 7 | -------------------------------------------------------------------------------- /app/static/scss/bootstrap/mixins/_badge.scss: -------------------------------------------------------------------------------- 1 | @mixin badge-variant($bg) { 2 | color: color-yiq($bg); 3 | background-color: $bg; 4 | 5 | &[href] { 6 | @include hover-focus { 7 | color: color-yiq($bg); 8 | text-decoration: none; 9 | background-color: darken($bg, 10%); 10 | } 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /app/static/scss/bootstrap/mixins/_alert.scss: -------------------------------------------------------------------------------- 1 | @mixin alert-variant($background, $border, $color) { 2 | color: $color; 3 | @include gradient-bg($background); 4 | border-color: $border; 5 | 6 | hr { 7 | border-top-color: darken($border, 5%); 8 | } 9 | 10 | .alert-link { 11 | color: darken($color, 10%); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /app/static/scss/bootstrap/mixins/_nav-divider.scss: -------------------------------------------------------------------------------- 1 | // Horizontal dividers 2 | // 3 | // Dividers (basically an hr) within dropdowns and nav lists 4 | 5 | @mixin nav-divider($color: $nav-divider-color, $margin-y: $nav-divider-margin-y) { 6 | height: 0; 7 | margin: $margin-y 0; 8 | overflow: hidden; 9 | border-top: 1px solid $color; 10 | } 11 | -------------------------------------------------------------------------------- /app/static/scss/bootstrap/mixins/_text-emphasis.scss: -------------------------------------------------------------------------------- 1 | // stylelint-disable declaration-no-important 2 | 3 | // Typography 4 | 5 | @mixin text-emphasis-variant($parent, $color) { 6 | #{$parent} { 7 | color: $color !important; 8 | } 9 | a#{$parent} { 10 | @include hover-focus { 11 | color: darken($color, 10%) !important; 12 | } 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /app/static/scss/bootstrap/mixins/_transition.scss: -------------------------------------------------------------------------------- 1 | @mixin transition($transition...) { 2 | @if $enable-transitions { 3 | @if length($transition) == 0 { 4 | transition: $transition-base; 5 | } @else { 6 | transition: $transition; 7 | } 8 | } 9 | 10 | @media screen and (prefers-reduced-motion: reduce) { 11 | transition: none; 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /app/static/scss/bootstrap/utilities/_sizing.scss: -------------------------------------------------------------------------------- 1 | // stylelint-disable declaration-no-important 2 | 3 | // Width and height 4 | 5 | @each $prop, $abbrev in (width: w, height: h) { 6 | @each $size, $length in $sizes { 7 | .#{$abbrev}-#{$size} { #{$prop}: $length !important; } 8 | } 9 | } 10 | 11 | .mw-100 { max-width: 100% !important; } 12 | .mh-100 { max-height: 100% !important; } 13 | -------------------------------------------------------------------------------- /app/static/scss/bootstrap/utilities/_float.scss: -------------------------------------------------------------------------------- 1 | @each $breakpoint in map-keys($grid-breakpoints) { 2 | @include media-breakpoint-up($breakpoint) { 3 | $infix: breakpoint-infix($breakpoint, $grid-breakpoints); 4 | 5 | .float#{$infix}-left { @include float-left; } 6 | .float#{$infix}-right { @include float-right; } 7 | .float#{$infix}-none { @include float-none; } 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /app/static/scss/bootstrap/mixins/_text-hide.scss: -------------------------------------------------------------------------------- 1 | // CSS image replacement 2 | @mixin text-hide() { 3 | // stylelint-disable-next-line font-family-no-missing-generic-family-keyword 4 | font: 0/0 a; 5 | color: transparent; 6 | text-shadow: none; 7 | background-color: transparent; 8 | border: 0; 9 | 10 | @warn "The `text-hide()` mixin has been deprecated as of v4.1.0. It will be removed entirely in v5."; 11 | } 12 | -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- 1 | FROM ubuntu:latest 2 | MAINTAINER PABLO CISNEROS "pcisnerp@gmail.com" 3 | RUN apt-get update \ 4 | && apt-get install -y python3-pip python3-dev libsasl2-dev python-dev libldap2-dev libssl-dev libsnmp-dev apt-utils iputils-ping \ 5 | && cd /usr/local/bin \ 6 | && ln -s /usr/bin/python3 python \ 7 | && pip3 install --upgrade pip 8 | 9 | COPY ./app /app 10 | 11 | WORKDIR /app 12 | 13 | RUN pip install -r requirements.txt 14 | -------------------------------------------------------------------------------- /app/static/scss/bootstrap/_transitions.scss: -------------------------------------------------------------------------------- 1 | // stylelint-disable selector-no-qualifying-type 2 | 3 | .fade { 4 | @include transition($transition-fade); 5 | 6 | &:not(.show) { 7 | opacity: 0; 8 | } 9 | } 10 | 11 | .collapse { 12 | &:not(.show) { 13 | display: none; 14 | } 15 | } 16 | 17 | .collapsing { 18 | position: relative; 19 | height: 0; 20 | overflow: hidden; 21 | @include transition($transition-collapse); 22 | } 23 | -------------------------------------------------------------------------------- /app/templates/404.html: -------------------------------------------------------------------------------- 1 | {% extends "layout.html" %} 2 | {% block header %} 3 |
"Everything’s impossible until somebody does it.” but now... there is an ERROR
9 |' + item.content.substring(0, 150) + '...