Skip to content

Commit 0ad85dd

Browse files
committed
Merge branch 'main' into open-source-pro
2 parents 76c402f + 0aaacc0 commit 0ad85dd

File tree

3 files changed

+15
-9
lines changed

3 files changed

+15
-9
lines changed

crates/resolvers/user/src/lib.rs

+2-1
Original file line numberDiff line numberDiff line change
@@ -145,7 +145,8 @@ impl UserMutation {
145145
/// Delete a user. The account deleting the user must be an `Admin`.
146146
async fn delete_user(&self, gql_ctx: &Context<'_>, to_delete_user_id: String) -> Result<bool> {
147147
let service = gql_ctx.data_unchecked::<Arc<UserService>>();
148-
service.delete_user(to_delete_user_id).await
148+
let user_id = self.user_id_from_ctx(gql_ctx).await?;
149+
service.delete_user(user_id, to_delete_user_id).await
149150
}
150151

151152
/// Create a new user for the service. Also set their `lot` as admin if

crates/services/importer/src/trakt.rs

+7-6
Original file line numberDiff line numberDiff line change
@@ -218,7 +218,10 @@ pub async fn import(input: DeployTraktImportInput) -> Result<ImportResult> {
218218
show_episode_number,
219219
..Default::default()
220220
});
221-
if let Some(a) = media.iter_mut().find(|i| i.source_id == d.source_id) {
221+
if let Some(a) = media
222+
.iter_mut()
223+
.find(|i| i.identifier == d.identifier && i.lot == d.lot)
224+
{
222225
a.seen_history.extend(d.seen_history);
223226
} else {
224227
media.push(d)
@@ -235,9 +238,7 @@ pub async fn import(input: DeployTraktImportInput) -> Result<ImportResult> {
235238
})
236239
}
237240

238-
fn process_item(
239-
i: &ListItemResponse,
240-
) -> std::result::Result<ImportOrExportMediaItem, ImportFailedItem> {
241+
fn process_item(i: &ListItemResponse) -> Result<ImportOrExportMediaItem, ImportFailedItem> {
241242
let (source_id, identifier, lot) = if let Some(d) = i.movie.as_ref() {
242243
(d.ids.trakt, d.ids.tmdb, MediaLot::Movie)
243244
} else if let Some(d) = i.show.as_ref() {
@@ -251,10 +252,10 @@ fn process_item(
251252
});
252253
};
253254
match identifier {
254-
Some(i) => Ok(ImportOrExportMediaItem {
255+
Some(identifier) => Ok(ImportOrExportMediaItem {
255256
source_id: source_id.to_string(),
256257
lot,
257-
identifier: i.to_string(),
258+
identifier: identifier.to_string(),
258259
source: MediaSource::Tmdb,
259260
seen_history: vec![],
260261
reviews: vec![],

crates/services/user/src/lib.rs

+6-2
Original file line numberDiff line numberDiff line change
@@ -245,8 +245,12 @@ impl UserService {
245245
Ok(users)
246246
}
247247

248-
pub async fn delete_user(&self, to_delete_user_id: String) -> Result<bool> {
249-
admin_account_guard(&self.db, &to_delete_user_id).await?;
248+
pub async fn delete_user(
249+
&self,
250+
admin_user_id: String,
251+
to_delete_user_id: String,
252+
) -> Result<bool> {
253+
admin_account_guard(&self.db, &admin_user_id).await?;
250254
let maybe_user = User::find_by_id(to_delete_user_id).one(&self.db).await?;
251255
if let Some(u) = maybe_user {
252256
if self

0 commit comments

Comments
 (0)