Reorganizing files before splitting out API
This commit is contained in:
parent
da1d7178a7
commit
23157e2e8d
20 changed files with 91 additions and 97 deletions
|
@ -21,7 +21,7 @@ COPY server/Cargo.toml server/Cargo.lock ./
|
||||||
RUN mkdir -p ./src/bin \
|
RUN mkdir -p ./src/bin \
|
||||||
&& echo 'fn main() { println!("Dummy") }' > ./src/bin/main.rs
|
&& echo 'fn main() { println!("Dummy") }' > ./src/bin/main.rs
|
||||||
RUN cargo build --release --bin lemmy
|
RUN cargo build --release --bin lemmy
|
||||||
RUN rm -r ./target/release/.fingerprint/server-*
|
RUN rm -r ./target/release/.fingerprint/lemmy_server-*
|
||||||
|
|
||||||
# copy your source tree
|
# copy your source tree
|
||||||
# RUN rm -rf ./src/
|
# RUN rm -rf ./src/
|
||||||
|
|
48
server/Cargo.lock
generated
48
server/Cargo.lock
generated
|
@ -752,6 +752,30 @@ name = "lazycell"
|
||||||
version = "1.2.1"
|
version = "1.2.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "lemmy_server"
|
||||||
|
version = "0.0.1"
|
||||||
|
dependencies = [
|
||||||
|
"activitypub 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
|
"actix 0.7.9 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
|
"actix-web 0.7.18 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
|
"bcrypt 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
|
"chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
|
"diesel 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
|
"diesel_migrations 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
|
"dotenv 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
|
"env_logger 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
|
"failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
|
"jsonwebtoken 5.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
|
"lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
|
"rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
|
"regex 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
|
"serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
|
"serde_json 1.0.38 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
|
"strum 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
|
"strum_macros 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "libc"
|
name = "libc"
|
||||||
version = "0.2.49"
|
version = "0.2.49"
|
||||||
|
@ -1344,30 +1368,6 @@ dependencies = [
|
||||||
"url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
"url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
|
||||||
name = "server"
|
|
||||||
version = "0.0.1"
|
|
||||||
dependencies = [
|
|
||||||
"activitypub 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
||||||
"actix 0.7.9 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
||||||
"actix-web 0.7.18 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
||||||
"bcrypt 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
||||||
"chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
||||||
"diesel 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
||||||
"diesel_migrations 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
||||||
"dotenv 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
||||||
"env_logger 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
||||||
"failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
||||||
"jsonwebtoken 5.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
||||||
"lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
||||||
"rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
||||||
"regex 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
||||||
"serde 1.0.88 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
||||||
"serde_json 1.0.38 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
||||||
"strum 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
||||||
"strum_macros 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
|
||||||
]
|
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "sha1"
|
name = "sha1"
|
||||||
version = "0.6.0"
|
version = "0.6.0"
|
||||||
|
|
|
@ -1,12 +1,7 @@
|
||||||
[package]
|
[package]
|
||||||
name = "server"
|
name = "lemmy_server"
|
||||||
version = "0.0.1"
|
version = "0.0.1"
|
||||||
authors = ["Dessalines <happydooby@gmail.com>"]
|
authors = ["Dessalines <happydooby@gmail.com>"]
|
||||||
autobins = false
|
|
||||||
|
|
||||||
[[bin]]
|
|
||||||
name = "lemmy"
|
|
||||||
path = "src/bin/main.rs"
|
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
diesel = { version = "1.4.2", features = ["postgres","chrono"] }
|
diesel = { version = "1.4.2", features = ["postgres","chrono"] }
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
extern crate activitypub;
|
extern crate activitypub;
|
||||||
use self::activitypub::{context, actor::Person};
|
use self::activitypub::{context, actor::Person};
|
||||||
use actions::user::User_;
|
use db::user::User_;
|
||||||
|
|
||||||
impl User_ {
|
impl User_ {
|
||||||
pub fn person(&self) -> Person {
|
pub fn person(&self) -> Person {
|
||||||
|
|
|
@ -4,7 +4,7 @@ use diesel::*;
|
||||||
use diesel::result::Error;
|
use diesel::result::Error;
|
||||||
use serde::{Deserialize, Serialize};
|
use serde::{Deserialize, Serialize};
|
||||||
use {Crud, Likeable, Saveable};
|
use {Crud, Likeable, Saveable};
|
||||||
use actions::post::Post;
|
use super::post::Post;
|
||||||
|
|
||||||
// WITH RECURSIVE MyTree AS (
|
// WITH RECURSIVE MyTree AS (
|
||||||
// SELECT * FROM comment WHERE parent_id IS NULL
|
// SELECT * FROM comment WHERE parent_id IS NULL
|
||||||
|
@ -160,9 +160,9 @@ impl Saveable <CommentSavedForm> for CommentSaved {
|
||||||
mod tests {
|
mod tests {
|
||||||
use establish_connection;
|
use establish_connection;
|
||||||
use super::*;
|
use super::*;
|
||||||
use actions::post::*;
|
use super::super::post::*;
|
||||||
use actions::community::*;
|
use super::super::community::*;
|
||||||
use actions::user::*;
|
use super::super::user::*;
|
||||||
use Crud;
|
use Crud;
|
||||||
#[test]
|
#[test]
|
||||||
fn test_crud() {
|
fn test_crud() {
|
|
@ -68,7 +68,7 @@ impl CommentView {
|
||||||
page: Option<i64>,
|
page: Option<i64>,
|
||||||
limit: Option<i64>,
|
limit: Option<i64>,
|
||||||
) -> Result<Vec<Self>, Error> {
|
) -> Result<Vec<Self>, Error> {
|
||||||
use actions::comment_view::comment_view::dsl::*;
|
use super::comment_view::comment_view::dsl::*;
|
||||||
|
|
||||||
let (limit, offset) = limit_and_offset(page, limit);
|
let (limit, offset) = limit_and_offset(page, limit);
|
||||||
|
|
||||||
|
@ -125,7 +125,7 @@ impl CommentView {
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn read(conn: &PgConnection, from_comment_id: i32, my_user_id: Option<i32>) -> Result<Self, Error> {
|
pub fn read(conn: &PgConnection, from_comment_id: i32, my_user_id: Option<i32>) -> Result<Self, Error> {
|
||||||
use actions::comment_view::comment_view::dsl::*;
|
use super::comment_view::comment_view::dsl::*;
|
||||||
|
|
||||||
let mut query = comment_view.into_boxed();
|
let mut query = comment_view.into_boxed();
|
||||||
|
|
||||||
|
@ -206,7 +206,7 @@ impl ReplyView {
|
||||||
page: Option<i64>,
|
page: Option<i64>,
|
||||||
limit: Option<i64>,
|
limit: Option<i64>,
|
||||||
) -> Result<Vec<Self>, Error> {
|
) -> Result<Vec<Self>, Error> {
|
||||||
use actions::comment_view::reply_view::dsl::*;
|
use super::comment_view::reply_view::dsl::*;
|
||||||
|
|
||||||
let (limit, offset) = limit_and_offset(page, limit);
|
let (limit, offset) = limit_and_offset(page, limit);
|
||||||
|
|
||||||
|
@ -251,10 +251,10 @@ impl ReplyView {
|
||||||
mod tests {
|
mod tests {
|
||||||
use establish_connection;
|
use establish_connection;
|
||||||
use super::*;
|
use super::*;
|
||||||
use actions::post::*;
|
use super::super::post::*;
|
||||||
use actions::community::*;
|
use super::super::community::*;
|
||||||
use actions::user::*;
|
use super::super::user::*;
|
||||||
use actions::comment::*;
|
use super::super::comment::*;
|
||||||
use {Crud,Likeable};
|
use {Crud,Likeable};
|
||||||
#[test]
|
#[test]
|
||||||
fn test_crud() {
|
fn test_crud() {
|
|
@ -221,7 +221,7 @@ impl Crud<SiteForm> for Site {
|
||||||
mod tests {
|
mod tests {
|
||||||
use establish_connection;
|
use establish_connection;
|
||||||
use super::*;
|
use super::*;
|
||||||
use actions::user::*;
|
use super::super::user::*;
|
||||||
use Crud;
|
use Crud;
|
||||||
#[test]
|
#[test]
|
||||||
fn test_crud() {
|
fn test_crud() {
|
|
@ -100,7 +100,7 @@ pub struct CommunityView {
|
||||||
|
|
||||||
impl CommunityView {
|
impl CommunityView {
|
||||||
pub fn read(conn: &PgConnection, from_community_id: i32, from_user_id: Option<i32>) -> Result<Self, Error> {
|
pub fn read(conn: &PgConnection, from_community_id: i32, from_user_id: Option<i32>) -> Result<Self, Error> {
|
||||||
use actions::community_view::community_view::dsl::*;
|
use super::community_view::community_view::dsl::*;
|
||||||
|
|
||||||
let mut query = community_view.into_boxed();
|
let mut query = community_view.into_boxed();
|
||||||
|
|
||||||
|
@ -122,7 +122,7 @@ impl CommunityView {
|
||||||
page: Option<i64>,
|
page: Option<i64>,
|
||||||
limit: Option<i64>,
|
limit: Option<i64>,
|
||||||
) -> Result<Vec<Self>, Error> {
|
) -> Result<Vec<Self>, Error> {
|
||||||
use actions::community_view::community_view::dsl::*;
|
use super::community_view::community_view::dsl::*;
|
||||||
let mut query = community_view.into_boxed();
|
let mut query = community_view.into_boxed();
|
||||||
|
|
||||||
let (limit, offset) = limit_and_offset(page, limit);
|
let (limit, offset) = limit_and_offset(page, limit);
|
||||||
|
@ -163,12 +163,12 @@ pub struct CommunityModeratorView {
|
||||||
|
|
||||||
impl CommunityModeratorView {
|
impl CommunityModeratorView {
|
||||||
pub fn for_community(conn: &PgConnection, from_community_id: i32) -> Result<Vec<Self>, Error> {
|
pub fn for_community(conn: &PgConnection, from_community_id: i32) -> Result<Vec<Self>, Error> {
|
||||||
use actions::community_view::community_moderator_view::dsl::*;
|
use super::community_view::community_moderator_view::dsl::*;
|
||||||
community_moderator_view.filter(community_id.eq(from_community_id)).load::<Self>(conn)
|
community_moderator_view.filter(community_id.eq(from_community_id)).load::<Self>(conn)
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn for_user(conn: &PgConnection, from_user_id: i32) -> Result<Vec<Self>, Error> {
|
pub fn for_user(conn: &PgConnection, from_user_id: i32) -> Result<Vec<Self>, Error> {
|
||||||
use actions::community_view::community_moderator_view::dsl::*;
|
use super::community_view::community_moderator_view::dsl::*;
|
||||||
community_moderator_view.filter(user_id.eq(from_user_id)).load::<Self>(conn)
|
community_moderator_view.filter(user_id.eq(from_user_id)).load::<Self>(conn)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -186,12 +186,12 @@ pub struct CommunityFollowerView {
|
||||||
|
|
||||||
impl CommunityFollowerView {
|
impl CommunityFollowerView {
|
||||||
pub fn for_community(conn: &PgConnection, from_community_id: i32) -> Result<Vec<Self>, Error> {
|
pub fn for_community(conn: &PgConnection, from_community_id: i32) -> Result<Vec<Self>, Error> {
|
||||||
use actions::community_view::community_follower_view::dsl::*;
|
use super::community_view::community_follower_view::dsl::*;
|
||||||
community_follower_view.filter(community_id.eq(from_community_id)).load::<Self>(conn)
|
community_follower_view.filter(community_id.eq(from_community_id)).load::<Self>(conn)
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn for_user(conn: &PgConnection, from_user_id: i32) -> Result<Vec<Self>, Error> {
|
pub fn for_user(conn: &PgConnection, from_user_id: i32) -> Result<Vec<Self>, Error> {
|
||||||
use actions::community_view::community_follower_view::dsl::*;
|
use super::community_view::community_follower_view::dsl::*;
|
||||||
community_follower_view.filter(user_id.eq(from_user_id)).load::<Self>(conn)
|
community_follower_view.filter(user_id.eq(from_user_id)).load::<Self>(conn)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -210,17 +210,17 @@ pub struct CommunityUserBanView {
|
||||||
|
|
||||||
impl CommunityUserBanView {
|
impl CommunityUserBanView {
|
||||||
pub fn for_community(conn: &PgConnection, from_community_id: i32) -> Result<Vec<Self>, Error> {
|
pub fn for_community(conn: &PgConnection, from_community_id: i32) -> Result<Vec<Self>, Error> {
|
||||||
use actions::community_view::community_user_ban_view::dsl::*;
|
use super::community_view::community_user_ban_view::dsl::*;
|
||||||
community_user_ban_view.filter(community_id.eq(from_community_id)).load::<Self>(conn)
|
community_user_ban_view.filter(community_id.eq(from_community_id)).load::<Self>(conn)
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn for_user(conn: &PgConnection, from_user_id: i32) -> Result<Vec<Self>, Error> {
|
pub fn for_user(conn: &PgConnection, from_user_id: i32) -> Result<Vec<Self>, Error> {
|
||||||
use actions::community_view::community_user_ban_view::dsl::*;
|
use super::community_view::community_user_ban_view::dsl::*;
|
||||||
community_user_ban_view.filter(user_id.eq(from_user_id)).load::<Self>(conn)
|
community_user_ban_view.filter(user_id.eq(from_user_id)).load::<Self>(conn)
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn get(conn: &PgConnection, from_user_id: i32, from_community_id: i32) -> Result<Self, Error> {
|
pub fn get(conn: &PgConnection, from_user_id: i32, from_community_id: i32) -> Result<Self, Error> {
|
||||||
use actions::community_view::community_user_ban_view::dsl::*;
|
use super::community_view::community_user_ban_view::dsl::*;
|
||||||
community_user_ban_view
|
community_user_ban_view
|
||||||
.filter(user_id.eq(from_user_id))
|
.filter(user_id.eq(from_user_id))
|
||||||
.filter(community_id.eq(from_community_id))
|
.filter(community_id.eq(from_community_id))
|
||||||
|
@ -246,7 +246,7 @@ pub struct SiteView {
|
||||||
|
|
||||||
impl SiteView {
|
impl SiteView {
|
||||||
pub fn read(conn: &PgConnection) -> Result<Self, Error> {
|
pub fn read(conn: &PgConnection) -> Result<Self, Error> {
|
||||||
use actions::community_view::site_view::dsl::*;
|
use super::community_view::site_view::dsl::*;
|
||||||
site_view.first::<Self>(conn)
|
site_view.first::<Self>(conn)
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -400,10 +400,10 @@ impl Crud<ModAddForm> for ModAdd {
|
||||||
mod tests {
|
mod tests {
|
||||||
use establish_connection;
|
use establish_connection;
|
||||||
use super::*;
|
use super::*;
|
||||||
use actions::user::*;
|
use super::super::user::*;
|
||||||
use actions::post::*;
|
use super::super::post::*;
|
||||||
use actions::community::*;
|
use super::super::community::*;
|
||||||
use actions::comment::*;
|
use super::super::comment::*;
|
||||||
// use Crud;
|
// use Crud;
|
||||||
#[test]
|
#[test]
|
||||||
fn test_crud() {
|
fn test_crud() {
|
|
@ -41,7 +41,7 @@ impl ModRemovePostView {
|
||||||
page: Option<i64>,
|
page: Option<i64>,
|
||||||
limit: Option<i64>,
|
limit: Option<i64>,
|
||||||
) -> Result<Vec<Self>, Error> {
|
) -> Result<Vec<Self>, Error> {
|
||||||
use actions::moderator_views::mod_remove_post_view::dsl::*;
|
use super::moderator_views::mod_remove_post_view::dsl::*;
|
||||||
let mut query = mod_remove_post_view.into_boxed();
|
let mut query = mod_remove_post_view.into_boxed();
|
||||||
|
|
||||||
let (limit, offset) = limit_and_offset(page, limit);
|
let (limit, offset) = limit_and_offset(page, limit);
|
||||||
|
@ -94,7 +94,7 @@ impl ModLockPostView {
|
||||||
page: Option<i64>,
|
page: Option<i64>,
|
||||||
limit: Option<i64>,
|
limit: Option<i64>,
|
||||||
) -> Result<Vec<Self>, Error> {
|
) -> Result<Vec<Self>, Error> {
|
||||||
use actions::moderator_views::mod_lock_post_view::dsl::*;
|
use super::moderator_views::mod_lock_post_view::dsl::*;
|
||||||
let mut query = mod_lock_post_view.into_boxed();
|
let mut query = mod_lock_post_view.into_boxed();
|
||||||
|
|
||||||
let (limit, offset) = limit_and_offset(page, limit);
|
let (limit, offset) = limit_and_offset(page, limit);
|
||||||
|
@ -156,7 +156,7 @@ impl ModRemoveCommentView {
|
||||||
page: Option<i64>,
|
page: Option<i64>,
|
||||||
limit: Option<i64>,
|
limit: Option<i64>,
|
||||||
) -> Result<Vec<Self>, Error> {
|
) -> Result<Vec<Self>, Error> {
|
||||||
use actions::moderator_views::mod_remove_comment_view::dsl::*;
|
use super::moderator_views::mod_remove_comment_view::dsl::*;
|
||||||
let mut query = mod_remove_comment_view.into_boxed();
|
let mut query = mod_remove_comment_view.into_boxed();
|
||||||
|
|
||||||
let (limit, offset) = limit_and_offset(page, limit);
|
let (limit, offset) = limit_and_offset(page, limit);
|
||||||
|
@ -207,7 +207,7 @@ impl ModRemoveCommunityView {
|
||||||
page: Option<i64>,
|
page: Option<i64>,
|
||||||
limit: Option<i64>,
|
limit: Option<i64>,
|
||||||
) -> Result<Vec<Self>, Error> {
|
) -> Result<Vec<Self>, Error> {
|
||||||
use actions::moderator_views::mod_remove_community_view::dsl::*;
|
use super::moderator_views::mod_remove_community_view::dsl::*;
|
||||||
let mut query = mod_remove_community_view.into_boxed();
|
let mut query = mod_remove_community_view.into_boxed();
|
||||||
|
|
||||||
let (limit, offset) = limit_and_offset(page, limit);
|
let (limit, offset) = limit_and_offset(page, limit);
|
||||||
|
@ -260,7 +260,7 @@ impl ModBanFromCommunityView {
|
||||||
page: Option<i64>,
|
page: Option<i64>,
|
||||||
limit: Option<i64>,
|
limit: Option<i64>,
|
||||||
) -> Result<Vec<Self>, Error> {
|
) -> Result<Vec<Self>, Error> {
|
||||||
use actions::moderator_views::mod_ban_from_community_view::dsl::*;
|
use super::moderator_views::mod_ban_from_community_view::dsl::*;
|
||||||
let mut query = mod_ban_from_community_view.into_boxed();
|
let mut query = mod_ban_from_community_view.into_boxed();
|
||||||
|
|
||||||
let (limit, offset) = limit_and_offset(page, limit);
|
let (limit, offset) = limit_and_offset(page, limit);
|
||||||
|
@ -311,7 +311,7 @@ impl ModBanView {
|
||||||
page: Option<i64>,
|
page: Option<i64>,
|
||||||
limit: Option<i64>,
|
limit: Option<i64>,
|
||||||
) -> Result<Vec<Self>, Error> {
|
) -> Result<Vec<Self>, Error> {
|
||||||
use actions::moderator_views::mod_ban_view::dsl::*;
|
use super::moderator_views::mod_ban_view::dsl::*;
|
||||||
let mut query = mod_ban_view.into_boxed();
|
let mut query = mod_ban_view.into_boxed();
|
||||||
|
|
||||||
let (limit, offset) = limit_and_offset(page, limit);
|
let (limit, offset) = limit_and_offset(page, limit);
|
||||||
|
@ -359,7 +359,7 @@ impl ModAddCommunityView {
|
||||||
page: Option<i64>,
|
page: Option<i64>,
|
||||||
limit: Option<i64>,
|
limit: Option<i64>,
|
||||||
) -> Result<Vec<Self>, Error> {
|
) -> Result<Vec<Self>, Error> {
|
||||||
use actions::moderator_views::mod_add_community_view::dsl::*;
|
use super::moderator_views::mod_add_community_view::dsl::*;
|
||||||
let mut query = mod_add_community_view.into_boxed();
|
let mut query = mod_add_community_view.into_boxed();
|
||||||
|
|
||||||
let (limit, offset) = limit_and_offset(page, limit);
|
let (limit, offset) = limit_and_offset(page, limit);
|
||||||
|
@ -406,7 +406,7 @@ impl ModAddView {
|
||||||
page: Option<i64>,
|
page: Option<i64>,
|
||||||
limit: Option<i64>,
|
limit: Option<i64>,
|
||||||
) -> Result<Vec<Self>, Error> {
|
) -> Result<Vec<Self>, Error> {
|
||||||
use actions::moderator_views::mod_add_view::dsl::*;
|
use super::moderator_views::mod_add_view::dsl::*;
|
||||||
let mut query = mod_add_view.into_boxed();
|
let mut query = mod_add_view.into_boxed();
|
||||||
|
|
||||||
let (limit, offset) = limit_and_offset(page, limit);
|
let (limit, offset) = limit_and_offset(page, limit);
|
|
@ -173,10 +173,10 @@ impl Readable <PostReadForm> for PostRead {
|
||||||
#[cfg(test)]
|
#[cfg(test)]
|
||||||
mod tests {
|
mod tests {
|
||||||
use establish_connection;
|
use establish_connection;
|
||||||
use super::*;
|
|
||||||
use Crud;
|
use Crud;
|
||||||
use actions::community::*;
|
use super::*;
|
||||||
use actions::user::*;
|
use super::super::community::*;
|
||||||
|
use super::super::user::*;
|
||||||
#[test]
|
#[test]
|
||||||
fn test_crud() {
|
fn test_crud() {
|
||||||
let conn = establish_connection();
|
let conn = establish_connection();
|
|
@ -85,7 +85,7 @@ impl PostView {
|
||||||
page: Option<i64>,
|
page: Option<i64>,
|
||||||
limit: Option<i64>,
|
limit: Option<i64>,
|
||||||
) -> Result<Vec<Self>, Error> {
|
) -> Result<Vec<Self>, Error> {
|
||||||
use actions::post_view::post_view::dsl::*;
|
use super::post_view::post_view::dsl::*;
|
||||||
|
|
||||||
let (limit, offset) = limit_and_offset(page, limit);
|
let (limit, offset) = limit_and_offset(page, limit);
|
||||||
|
|
||||||
|
@ -158,7 +158,7 @@ impl PostView {
|
||||||
|
|
||||||
pub fn read(conn: &PgConnection, from_post_id: i32, my_user_id: Option<i32>) -> Result<Self, Error> {
|
pub fn read(conn: &PgConnection, from_post_id: i32, my_user_id: Option<i32>) -> Result<Self, Error> {
|
||||||
|
|
||||||
use actions::post_view::post_view::dsl::*;
|
use super::post_view::post_view::dsl::*;
|
||||||
use diesel::prelude::*;
|
use diesel::prelude::*;
|
||||||
|
|
||||||
let mut query = post_view.into_boxed();
|
let mut query = post_view.into_boxed();
|
||||||
|
@ -181,9 +181,9 @@ impl PostView {
|
||||||
mod tests {
|
mod tests {
|
||||||
use {establish_connection, Crud, Likeable};
|
use {establish_connection, Crud, Likeable};
|
||||||
use super::*;
|
use super::*;
|
||||||
use actions::community::*;
|
use super::super::community::*;
|
||||||
use actions::user::*;
|
use super::super::user::*;
|
||||||
use actions::post::*;
|
use super::super::post::*;
|
||||||
#[test]
|
#[test]
|
||||||
fn test_crud() {
|
fn test_crud() {
|
||||||
let conn = establish_connection();
|
let conn = establish_connection();
|
|
@ -35,20 +35,20 @@ pub struct UserView {
|
||||||
|
|
||||||
impl UserView {
|
impl UserView {
|
||||||
pub fn read(conn: &PgConnection, from_user_id: i32) -> Result<Self, Error> {
|
pub fn read(conn: &PgConnection, from_user_id: i32) -> Result<Self, Error> {
|
||||||
use actions::user_view::user_view::dsl::*;
|
use super::user_view::user_view::dsl::*;
|
||||||
|
|
||||||
user_view.find(from_user_id)
|
user_view.find(from_user_id)
|
||||||
.first::<Self>(conn)
|
.first::<Self>(conn)
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn admins(conn: &PgConnection) -> Result<Vec<Self>, Error> {
|
pub fn admins(conn: &PgConnection) -> Result<Vec<Self>, Error> {
|
||||||
use actions::user_view::user_view::dsl::*;
|
use super::user_view::user_view::dsl::*;
|
||||||
user_view.filter(admin.eq(true))
|
user_view.filter(admin.eq(true))
|
||||||
.load::<Self>(conn)
|
.load::<Self>(conn)
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn banned(conn: &PgConnection) -> Result<Vec<Self>, Error> {
|
pub fn banned(conn: &PgConnection) -> Result<Vec<Self>, Error> {
|
||||||
use actions::user_view::user_view::dsl::*;
|
use super::user_view::user_view::dsl::*;
|
||||||
user_view.filter(banned.eq(true))
|
user_view.filter(banned.eq(true))
|
||||||
.load::<Self>(conn)
|
.load::<Self>(conn)
|
||||||
}
|
}
|
|
@ -17,8 +17,8 @@ pub extern crate regex;
|
||||||
|
|
||||||
pub mod schema;
|
pub mod schema;
|
||||||
pub mod apub;
|
pub mod apub;
|
||||||
pub mod actions;
|
pub mod db;
|
||||||
pub mod websocket_server;
|
pub mod websocket;
|
||||||
|
|
||||||
use diesel::*;
|
use diesel::*;
|
||||||
use diesel::pg::PgConnection;
|
use diesel::pg::PgConnection;
|
||||||
|
|
|
@ -1,14 +1,13 @@
|
||||||
extern crate server;
|
extern crate lemmy_server;
|
||||||
#[macro_use] extern crate diesel_migrations;
|
#[macro_use] extern crate diesel_migrations;
|
||||||
|
|
||||||
use std::time::{Instant, Duration};
|
use std::time::{Instant, Duration};
|
||||||
use std::env;
|
use std::env;
|
||||||
use server::actix::*;
|
use lemmy_server::actix::*;
|
||||||
use server::actix_web::server::HttpServer;
|
use lemmy_server::actix_web::server::HttpServer;
|
||||||
use server::actix_web::{ws, App, Error, HttpRequest, HttpResponse, fs::NamedFile, fs};
|
use lemmy_server::actix_web::{ws, App, Error, HttpRequest, HttpResponse, fs::NamedFile, fs};
|
||||||
|
use lemmy_server::websocket::server::*;
|
||||||
use server::websocket_server::server::*;
|
use lemmy_server::establish_connection;
|
||||||
use server::establish_connection;
|
|
||||||
|
|
||||||
embed_migrations!();
|
embed_migrations!();
|
||||||
|
|
|
@ -14,17 +14,17 @@ use failure::Error;
|
||||||
use std::time::{SystemTime};
|
use std::time::{SystemTime};
|
||||||
|
|
||||||
use {Crud, Joinable, Likeable, Followable, Bannable, Saveable, establish_connection, naive_now, naive_from_unix, SortType, SearchType, has_slurs, remove_slurs, Settings};
|
use {Crud, Joinable, Likeable, Followable, Bannable, Saveable, establish_connection, naive_now, naive_from_unix, SortType, SearchType, has_slurs, remove_slurs, Settings};
|
||||||
use actions::community::*;
|
use db::community::*;
|
||||||
use actions::user::*;
|
use db::user::*;
|
||||||
use actions::post::*;
|
use db::post::*;
|
||||||
use actions::comment::*;
|
use db::comment::*;
|
||||||
use actions::post_view::*;
|
use db::post_view::*;
|
||||||
use actions::comment_view::*;
|
use db::comment_view::*;
|
||||||
use actions::category::*;
|
use db::category::*;
|
||||||
use actions::community_view::*;
|
use db::community_view::*;
|
||||||
use actions::user_view::*;
|
use db::user_view::*;
|
||||||
use actions::moderator_views::*;
|
use db::moderator_views::*;
|
||||||
use actions::moderator::*;
|
use db::moderator::*;
|
||||||
|
|
||||||
const RATE_LIMIT_MESSAGES: i32 = 30;
|
const RATE_LIMIT_MESSAGES: i32 = 30;
|
||||||
const RATE_LIMIT_PER_SECOND: i32 = 60;
|
const RATE_LIMIT_PER_SECOND: i32 = 60;
|
Reference in a new issue