├── migrations ├── .gitkeep ├── 2018-04-09-135738_create_groups │ ├── down.sql │ └── up.sql ├── 2018-04-09-135835_create_users │ ├── down.sql │ └── up.sql ├── 2018-04-09-140606_create_peers │ ├── down.sql │ └── up.sql ├── 2018-04-09-140244_create_torrents │ ├── down.sql │ └── up.sql ├── 2018-04-23-164613_create_transfers │ ├── down.sql │ └── up.sql ├── 2018-05-03-120715_create_messages │ ├── down.sql │ └── up.sql ├── 2018-04-09-135642_create_categories │ ├── down.sql │ └── up.sql ├── 2018-04-17-121101_create_torrent_nfos │ ├── down.sql │ └── up.sql ├── 2018-04-18-191602_create_torrent_list │ ├── down.sql │ └── up.sql ├── 2018-04-09-230549_create_acl_user_rules │ ├── down.sql │ └── up.sql ├── 2018-04-16-202936_create_torrent_files │ ├── down.sql │ └── up.sql ├── 2018-04-23-164650_create_user_transfer │ ├── down.sql │ └── up.sql ├── 2018-04-26-182812_create_chat_messages │ ├── down.sql │ └── up.sql ├── 2018-04-30-090640_create_torrent_images │ ├── down.sql │ └── up.sql ├── 2018-05-03-232652_create_static_content │ ├── down.sql │ └── up.sql ├── 2018-05-08-150335_create_user_profiles │ ├── down.sql │ └── up.sql ├── 2018-04-09-140018_create_user_properties │ ├── down.sql │ └── up.sql ├── 2018-05-03-114210_create_message_folders │ ├── down.sql │ └── up.sql ├── 2018-05-13-092226_create_torrent_comments │ ├── down.sql │ └── up.sql ├── 2018-04-16-202932_create_torrent_meta_files │ ├── down.sql │ └── up.sql ├── 2018-04-23-211719_create_completed_torrents │ ├── down.sql │ └── up.sql ├── 2018-04-30-095301_update_torrent_defaults │ ├── down.sql │ └── up.sql ├── 2018-04-09-202959_create_acl_group_rules │ ├── down.sql │ └── up.sql ├── 2018-04-29-150223_add_last_active_to_users │ ├── down.sql │ └── up.sql ├── 00000000000000_diesel_initial_setup │ ├── down.sql │ └── up.sql └── 2018-05-14-132001_add_comments_to_torrent_list │ ├── down.sql │ └── up.sql ├── webroot ├── aimg │ └── .gitkeep ├── timg │ └── .gitkeep └── static │ ├── js │ └── bootstrap.min.js │ ├── img │ └── 6NfmQ.jpg │ ├── webfonts │ ├── fa-brands-400.eot │ ├── fa-brands-400.ttf │ ├── fa-brands-400.woff │ ├── fa-regular-400.eot │ ├── fa-regular-400.ttf │ ├── fa-solid-900.eot │ ├── fa-solid-900.ttf │ ├── fa-solid-900.woff │ ├── fa-solid-900.woff2 │ ├── fa-brands-400.woff2 │ ├── fa-regular-400.woff │ └── fa-regular-400.woff2 │ └── css │ ├── fa-brands.min.css │ ├── fa-solid.min.css │ ├── fa-regular.min.css │ ├── fa-brands.css │ └── fa-regular.css ├── rustfmt.toml ├── .gitmodules ├── .gitignore ├── templates ├── index │ ├── public.html │ ├── authenticated.html │ └── shoutbox.html ├── signup │ ├── confirm_fail.html │ ├── confirm_complete.html │ ├── signup_complete.html │ └── signup.html ├── error │ ├── 5xx.html │ └── 4xx.html ├── torrent │ ├── failed.html │ ├── denied.html │ ├── success.html │ ├── delete.html │ ├── edit.html │ ├── new.html │ └── list.html ├── static_content │ ├── edit_failed.html │ ├── view.html │ └── edit.html ├── user │ └── settings_failed.html ├── layouts │ ├── base_public.html │ └── layout.html ├── login │ └── login.html └── message │ ├── show.html │ └── new.html ├── src ├── util │ ├── user.rs │ ├── rand.rs │ ├── password.rs │ └── mod.rs ├── models │ ├── mod.rs │ ├── group.rs │ ├── category.rs │ ├── static_content.rs │ ├── peer.rs │ └── chat.rs ├── handlers │ ├── mod.rs │ ├── static_content.rs │ └── chat.rs ├── api │ ├── user.rs │ ├── mod.rs │ └── chat.rs ├── cleanup.rs ├── db.rs ├── error.rs ├── app │ ├── index.rs │ ├── login.rs │ ├── message.rs │ ├── signup.rs │ └── static_content.rs ├── settings.rs ├── state.rs ├── tracker │ └── scrape.rs └── template │ └── mod.rs ├── doc └── sql │ ├── groups.sql │ └── categories.sql ├── Cargo.toml ├── config └── ripalt.toml.example ├── README.md ├── CHANGELOG.md └── assets └── scss └── main.scss /migrations/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /webroot/aimg/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /webroot/timg/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /rustfmt.toml: -------------------------------------------------------------------------------- 1 | max_width = 120 -------------------------------------------------------------------------------- /migrations/2018-04-09-135738_create_groups/down.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE public.groups; -------------------------------------------------------------------------------- /migrations/2018-04-09-135835_create_users/down.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE public.users; -------------------------------------------------------------------------------- /migrations/2018-04-09-140606_create_peers/down.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE public.peers; -------------------------------------------------------------------------------- /webroot/static/js/bootstrap.min.js: -------------------------------------------------------------------------------- 1 | ../../../bootstrap/dist/js/bootstrap.min.js -------------------------------------------------------------------------------- /migrations/2018-04-09-140244_create_torrents/down.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE public.torrents; -------------------------------------------------------------------------------- /migrations/2018-04-23-164613_create_transfers/down.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE public.transfers; -------------------------------------------------------------------------------- /migrations/2018-05-03-120715_create_messages/down.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE public.messages; -------------------------------------------------------------------------------- /migrations/2018-04-09-135642_create_categories/down.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE public.categories; -------------------------------------------------------------------------------- /migrations/2018-04-17-121101_create_torrent_nfos/down.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE public.torrent_nfos; -------------------------------------------------------------------------------- /migrations/2018-04-18-191602_create_torrent_list/down.sql: -------------------------------------------------------------------------------- 1 | DROP VIEW public.torrent_list; -------------------------------------------------------------------------------- /migrations/2018-04-09-230549_create_acl_user_rules/down.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE public.acl_user_rules; -------------------------------------------------------------------------------- /migrations/2018-04-16-202936_create_torrent_files/down.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE public.torrent_files; -------------------------------------------------------------------------------- /migrations/2018-04-23-164650_create_user_transfer/down.sql: -------------------------------------------------------------------------------- 1 | DROP VIEW public.user_transfer; -------------------------------------------------------------------------------- /migrations/2018-04-26-182812_create_chat_messages/down.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE public.chat_messages; -------------------------------------------------------------------------------- /migrations/2018-04-30-090640_create_torrent_images/down.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE public.torrent_images; -------------------------------------------------------------------------------- /migrations/2018-05-03-232652_create_static_content/down.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE public.static_content; -------------------------------------------------------------------------------- /migrations/2018-05-08-150335_create_user_profiles/down.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE public.user_profiles; -------------------------------------------------------------------------------- /migrations/2018-04-09-140018_create_user_properties/down.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE public.user_properties; -------------------------------------------------------------------------------- /migrations/2018-05-03-114210_create_message_folders/down.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE public.message_folders; -------------------------------------------------------------------------------- /migrations/2018-05-13-092226_create_torrent_comments/down.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE public.torrent_comments; -------------------------------------------------------------------------------- /migrations/2018-04-16-202932_create_torrent_meta_files/down.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE public.torrent_meta_files; -------------------------------------------------------------------------------- /migrations/2018-04-23-211719_create_completed_torrents/down.sql: -------------------------------------------------------------------------------- 1 | DROP VIEW public.completed_torrents; -------------------------------------------------------------------------------- /migrations/2018-04-30-095301_update_torrent_defaults/down.sql: -------------------------------------------------------------------------------- 1 | -- This file should undo anything in `up.sql` -------------------------------------------------------------------------------- /webroot/static/img/6NfmQ.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuchsi/ripalt/HEAD/webroot/static/img/6NfmQ.jpg -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- 1 | [submodule "bootstrap"] 2 | path = bootstrap 3 | url = https://github.com/twbs/bootstrap.git 4 | branch = v4-dev 5 | -------------------------------------------------------------------------------- /migrations/2018-04-09-202959_create_acl_group_rules/down.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE public.acl_group_rules; 2 | DROP TYPE public.acl_permission; -------------------------------------------------------------------------------- /webroot/static/webfonts/fa-brands-400.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuchsi/ripalt/HEAD/webroot/static/webfonts/fa-brands-400.eot -------------------------------------------------------------------------------- /webroot/static/webfonts/fa-brands-400.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuchsi/ripalt/HEAD/webroot/static/webfonts/fa-brands-400.ttf -------------------------------------------------------------------------------- /webroot/static/webfonts/fa-brands-400.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuchsi/ripalt/HEAD/webroot/static/webfonts/fa-brands-400.woff -------------------------------------------------------------------------------- /webroot/static/webfonts/fa-regular-400.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuchsi/ripalt/HEAD/webroot/static/webfonts/fa-regular-400.eot -------------------------------------------------------------------------------- /webroot/static/webfonts/fa-regular-400.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuchsi/ripalt/HEAD/webroot/static/webfonts/fa-regular-400.ttf -------------------------------------------------------------------------------- /webroot/static/webfonts/fa-solid-900.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuchsi/ripalt/HEAD/webroot/static/webfonts/fa-solid-900.eot -------------------------------------------------------------------------------- /webroot/static/webfonts/fa-solid-900.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuchsi/ripalt/HEAD/webroot/static/webfonts/fa-solid-900.ttf -------------------------------------------------------------------------------- /webroot/static/webfonts/fa-solid-900.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuchsi/ripalt/HEAD/webroot/static/webfonts/fa-solid-900.woff -------------------------------------------------------------------------------- /webroot/static/webfonts/fa-solid-900.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuchsi/ripalt/HEAD/webroot/static/webfonts/fa-solid-900.woff2 -------------------------------------------------------------------------------- /webroot/static/webfonts/fa-brands-400.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuchsi/ripalt/HEAD/webroot/static/webfonts/fa-brands-400.woff2 -------------------------------------------------------------------------------- /webroot/static/webfonts/fa-regular-400.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuchsi/ripalt/HEAD/webroot/static/webfonts/fa-regular-400.woff -------------------------------------------------------------------------------- /webroot/static/webfonts/fa-regular-400.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuchsi/ripalt/HEAD/webroot/static/webfonts/fa-regular-400.woff2 -------------------------------------------------------------------------------- /migrations/2018-04-29-150223_add_last_active_to_users/down.sql: -------------------------------------------------------------------------------- 1 | DROP INDEX public.users_last_active_key; 2 | ALTER TABLE public.users 3 | DROP COLUMN last_active; -------------------------------------------------------------------------------- /migrations/2018-04-16-202932_create_torrent_meta_files/up.sql: -------------------------------------------------------------------------------- 1 | CREATE TABLE public.torrent_meta_files 2 | ( 3 | id uuid NOT NULL, 4 | data bytea NOT NULL, 5 | CONSTRAINT torrent_meta_files_pkey PRIMARY KEY (id) 6 | ) 7 | TABLESPACE pg_default; -------------------------------------------------------------------------------- /migrations/2018-04-30-095301_update_torrent_defaults/up.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE public.torrents 2 | ALTER COLUMN visible SET DEFAULT false, 3 | ALTER COLUMN completed SET DEFAULT 0, 4 | ALTER COLUMN last_action SET DEFAULT NULL, 5 | ALTER COLUMN last_seeder SET DEFAULT NULL; -------------------------------------------------------------------------------- /migrations/2018-04-29-150223_add_last_active_to_users/up.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE public.users 2 | ADD COLUMN last_active timestamp with time zone; 3 | 4 | CREATE INDEX users_last_active_key 5 | ON public.users USING btree 6 | (last_active ASC NULLS LAST) 7 | TABLESPACE pg_default; -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | 2 | # Generated by Cargo 3 | # will have compiled files and executables 4 | /target/ 5 | **/*.rs.bk 6 | 7 | # Rust Plugin for IntelliJ 8 | *.iml 9 | 10 | # Dotenv files 11 | .env 12 | 13 | config/ripalt.toml 14 | webroot/static/css/main.css 15 | webroot/static/css/main.css.map 16 | webroot/timg/* 17 | webroot/aimg/* -------------------------------------------------------------------------------- /templates/index/public.html: -------------------------------------------------------------------------------- 1 | {% extends "layouts/base_public.html" %} 2 | {% block content %} 3 |
{{error}}
12 |You have successfully confirmed your account
12 | Goto the main page 13 |
{{error}}
7 | {{uri}}
11 |
12 | {{headers}}
14 | {{error}}
12 | Go back 13 |{{error}}
12 | Go back 13 |{{message}}
12 | Go back 13 |{{message}}
12 | Continue 13 |{{uri}}
12 |
13 | {{headers}}
15 | {{error}}
12 | Go back 13 |You have successfully signed up for ripalt
12 | {% if confirm_id %} 13 |14 | Please click here to confirm your 15 | account. 16 |
17 | {% else %} 18 |You should soon receive an email with the confirmation link.
19 | {% endif %} 20 |26 | {% for gid in active_users.group_order | reverse %} 27 | {% set group = active_users.groups | get(key=gid) %} 28 | {{ group.name }}{% if not loop.last %},{% endif %} 29 | {% endfor %} 30 |
31 |32 | {% for gid in active_users.group_order | reverse %} 33 | {% set group = active_users.groups | get(key=gid) %} 34 | {% if active_users.user_list is containing(gid) %} 35 | {% for user in active_users.user_list | get(key=gid) | sort(key="user.1") %} 36 | {{user.1}} 37 | {% endfor %} 38 | {% endif %} 39 | {% endfor %} 40 |
41 |{{error}}
10 | {% endif %} 11 | 36 |{{error}}
10 | {% endif %} 11 | 70 |{{error}}
9 | {% endif %} 10 | 76 || Typ | 43 |Name | 44 |Added | 45 |Last Action | 46 |Last Seeder | 47 |Comments | 48 |Files | 49 |Size | 50 |Completed | 51 |Seeder | 52 |Leecher | 53 |Uploader | 54 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| {{torrent.category_name}} | 60 |{{torrent.name}} | 61 |{{torrent.created_at | format_date(timezone=timezone)}} | 62 |{{torrent.last_action | format_date(timezone=timezone)}} | 63 |{{torrent.last_seeder | format_date(timezone=timezone)}} | 64 |{{torrent.comments}} | 65 |{{torrent.files}} | 66 |{{torrent.size | data_size}} | 67 |{{torrent.completed}} | 68 |{{torrent.seeder}} | 69 |{{torrent.leecher}} | 70 |{{torrent.user_name}} | 71 |