Remove listing type community. Fixes #2361 (#2377)

* Remove listing type community. Fixes #2361

* Have ListingType::All be the default
This commit is contained in:
Dessalines 2022-07-29 06:57:39 -04:00 committed by GitHub
parent b78826c2c8
commit 3b86e15399
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 25 additions and 50 deletions

View file

@ -44,7 +44,6 @@ pub enum ListingType {
All, All,
Local, Local,
Subscribed, Subscribed,
Community,
} }
#[derive(EnumString, Display, Debug, Serialize, Deserialize, Clone, Copy)] #[derive(EnumString, Display, Debug, Serialize, Deserialize, Clone, Copy)]

View file

@ -1,9 +1,5 @@
use crate::structs::CommentView; use crate::structs::CommentView;
use diesel::{ use diesel::{dsl::*, result::Error, *};
dsl::*,
result::{Error, Error::QueryBuilderError},
*,
};
use lemmy_db_schema::{ use lemmy_db_schema::{
aggregates::structs::CommentAggregates, aggregates::structs::CommentAggregates,
newtypes::{CommentId, CommunityId, DbUrl, PersonId, PostId}, newtypes::{CommentId, CommunityId, DbUrl, PersonId, PostId},
@ -232,7 +228,7 @@ impl<'a> CommentQueryBuilder<'a> {
pub fn create(conn: &'a PgConnection) -> Self { pub fn create(conn: &'a PgConnection) -> Self {
CommentQueryBuilder { CommentQueryBuilder {
conn, conn,
listing_type: None, listing_type: Some(ListingType::All),
sort: None, sort: None,
community_id: None, community_id: None,
community_actor_id: None, community_actor_id: None,
@ -445,10 +441,9 @@ impl<'a> CommentQueryBuilder<'a> {
.or(community_follower::person_id.eq(person_id_join)), .or(community_follower::person_id.eq(person_id_join)),
) )
} }
ListingType::Community => { }
if self.community_actor_id.is_none() && self.community_id.is_none() { };
return Err(QueryBuilderError("No community actor or id given".into()));
} else {
if let Some(community_id) = self.community_id { if let Some(community_id) = self.community_id {
query = query.filter(post::community_id.eq(community_id)); query = query.filter(post::community_id.eq(community_id));
} }
@ -456,10 +451,6 @@ impl<'a> CommentQueryBuilder<'a> {
if let Some(community_actor_id) = self.community_actor_id { if let Some(community_actor_id) = self.community_actor_id {
query = query.filter(community::actor_id.eq(community_actor_id)) query = query.filter(community::actor_id.eq(community_actor_id))
} }
}
}
}
};
if self.saved_only.unwrap_or(false) { if self.saved_only.unwrap_or(false) {
query = query.filter(comment_saved::id.is_not_null()); query = query.filter(comment_saved::id.is_not_null());

View file

@ -1,10 +1,5 @@
use crate::structs::PostView; use crate::structs::PostView;
use diesel::{ use diesel::{dsl::*, pg::Pg, result::Error, *};
dsl::*,
pg::Pg,
result::{Error, Error::QueryBuilderError},
*,
};
use lemmy_db_schema::{ use lemmy_db_schema::{
aggregates::structs::PostAggregates, aggregates::structs::PostAggregates,
newtypes::{CommunityId, DbUrl, PersonId, PostId}, newtypes::{CommunityId, DbUrl, PersonId, PostId},
@ -178,7 +173,7 @@ impl<'a> PostQueryBuilder<'a> {
pub fn create(conn: &'a PgConnection) -> Self { pub fn create(conn: &'a PgConnection) -> Self {
PostQueryBuilder { PostQueryBuilder {
conn, conn,
listing_type: None, listing_type: Some(ListingType::All),
sort: None, sort: None,
creator_id: None, creator_id: None,
community_id: None, community_id: None,
@ -362,10 +357,9 @@ impl<'a> PostQueryBuilder<'a> {
.or(community_follower::person_id.eq(person_id_join)), .or(community_follower::person_id.eq(person_id_join)),
) )
} }
ListingType::Community => { }
if self.community_actor_id.is_none() && self.community_id.is_none() { }
return Err(QueryBuilderError("No community actor or id given".into()));
} else {
if let Some(community_id) = self.community_id { if let Some(community_id) = self.community_id {
query = query query = query
.filter(post::community_id.eq(community_id)) .filter(post::community_id.eq(community_id))
@ -377,10 +371,6 @@ impl<'a> PostQueryBuilder<'a> {
.filter(community::actor_id.eq(community_actor_id)) .filter(community::actor_id.eq(community_actor_id))
.then_order_by(post_aggregates::stickied.desc()); .then_order_by(post_aggregates::stickied.desc());
} }
}
}
}
}
if let Some(url_search) = self.url_search { if let Some(url_search) = self.url_search {
query = query.filter(post::url.eq(url_search)); query = query.filter(post::url.eq(url_search));
@ -517,7 +507,6 @@ mod tests {
}, },
traits::{Blockable, Crud, Likeable}, traits::{Blockable, Crud, Likeable},
utils::establish_unpooled_connection, utils::establish_unpooled_connection,
ListingType,
SortType, SortType,
SubscribedType, SubscribedType,
}; };
@ -621,7 +610,6 @@ mod tests {
}; };
let read_post_listings_with_person = PostQueryBuilder::create(&conn) let read_post_listings_with_person = PostQueryBuilder::create(&conn)
.listing_type(ListingType::Community)
.sort(SortType::New) .sort(SortType::New)
.show_bot_accounts(false) .show_bot_accounts(false)
.community_id(inserted_community.id) .community_id(inserted_community.id)
@ -630,7 +618,6 @@ mod tests {
.unwrap(); .unwrap();
let read_post_listings_no_person = PostQueryBuilder::create(&conn) let read_post_listings_no_person = PostQueryBuilder::create(&conn)
.listing_type(ListingType::Community)
.sort(SortType::New) .sort(SortType::New)
.community_id(inserted_community.id) .community_id(inserted_community.id)
.list() .list()
@ -730,7 +717,6 @@ mod tests {
CommunityBlock::block(&conn, &community_block).unwrap(); CommunityBlock::block(&conn, &community_block).unwrap();
let read_post_listings_with_person_after_block = PostQueryBuilder::create(&conn) let read_post_listings_with_person_after_block = PostQueryBuilder::create(&conn)
.listing_type(ListingType::Community)
.sort(SortType::New) .sort(SortType::New)
.show_bot_accounts(false) .show_bot_accounts(false)
.community_id(inserted_community.id) .community_id(inserted_community.id)

View file

@ -107,7 +107,7 @@ impl<'a> CommunityQueryBuilder<'a> {
CommunityQueryBuilder { CommunityQueryBuilder {
conn, conn,
my_person_id: None, my_person_id: None,
listing_type: None, listing_type: Some(ListingType::All),
sort: None, sort: None,
show_nsfw: None, show_nsfw: None,
search_term: None, search_term: None,

View file

@ -213,7 +213,6 @@ fn get_feed_community(
let community = Community::read_from_name(conn, community_name, false)?; let community = Community::read_from_name(conn, community_name, false)?;
let posts = PostQueryBuilder::create(conn) let posts = PostQueryBuilder::create(conn)
.listing_type(ListingType::Community)
.sort(*sort_type) .sort(*sort_type)
.community_id(community.id) .community_id(community.id)
.limit(RSS_FETCH_LIMIT) .limit(RSS_FETCH_LIMIT)