diff --git a/backend/windmill-api/src/favorite.rs b/backend/windmill-api/src/favorite.rs
index 7591ee5baf..937401f361 100644
--- a/backend/windmill-api/src/favorite.rs
+++ b/backend/windmill-api/src/favorite.rs
@@ -71,5 +71,5 @@ async fn unstar(
.execute(&db)
.await?;
- Ok(format!("Starred {}", path))
+ Ok(format!("Unstarred {}", path))
}
diff --git a/backend/windmill-api/src/flows.rs b/backend/windmill-api/src/flows.rs
index 1c1f7b8d0f..80f58c533e 100644
--- a/backend/windmill-api/src/flows.rs
+++ b/backend/windmill-api/src/flows.rs
@@ -72,7 +72,7 @@ async fn list_flows(
.left()
.join("favorite")
.on(
- "favorite.favorite_kind = 'flow' AND favorite.path = o.path AND favorite.usr = ?"
+ "favorite.favorite_kind = 'flow' AND favorite.workspace_id = o.workspace_id AND favorite.path = o.path AND favorite.usr = ?"
.bind(&authed.username),
)
.order_desc("favorite.path IS NOT NULL")
@@ -94,8 +94,8 @@ async fn list_flows(
if let Some(cb) = &lq.edited_by {
sqlb.and_where_eq("edited_by", "?".bind(cb));
}
- if let Some(so) = &lq.starred_only {
- sqlb.and_where_eq("starred", "?".bind(so));
+ if lq.starred_only.unwrap_or(false) {
+ sqlb.and_where_is_not_null("favorite.path");
}
let sql = sqlb.sql().map_err(|e| Error::InternalErr(e.to_string()))?;
diff --git a/backend/windmill-api/src/scripts.rs b/backend/windmill-api/src/scripts.rs
index 60f9d86aa9..ec8db07e89 100644
--- a/backend/windmill-api/src/scripts.rs
+++ b/backend/windmill-api/src/scripts.rs
@@ -102,7 +102,7 @@ async fn list_scripts(
.left()
.join("favorite")
.on(
- "favorite.favorite_kind = 'script' AND favorite.path = o.path AND favorite.usr = ?"
+ "favorite.favorite_kind = 'script' AND favorite.workspace_id = o.workspace_id AND favorite.path = o.path AND favorite.usr = ?"
.bind(&authed.username),
)
.order_desc("favorite.path IS NOT NULL")
@@ -146,8 +146,8 @@ async fn list_scripts(
if let Some(k) = &lq.kind {
sqlb.and_where_eq("kind", "?".bind(&k.to_lowercase()));
}
- if let Some(so) = &lq.starred_only {
- sqlb.and_where_eq("starred", "?".bind(so));
+ if lq.starred_only.unwrap_or(false) {
+ sqlb.and_where_is_not_null("favorite.path");
}
let sql = sqlb.sql().map_err(|e| Error::InternalErr(e.to_string()))?;
diff --git a/frontend/src/lib/components/Star.svelte b/frontend/src/lib/components/Star.svelte
index 4c4a9b41ba..5976f7a62d 100644
--- a/frontend/src/lib/components/Star.svelte
+++ b/frontend/src/lib/components/Star.svelte
@@ -1,6 +1,6 @@
@@ -116,7 +140,7 @@
/>
-