mirror of
https://github.com/haiwen/seafile-server.git
synced 2025-09-11 20:29:04 +00:00
Add rpc repo_has_been_shared().
This commit is contained in:
@@ -502,6 +502,11 @@ static void start_rpc_service (CcnetClient *client, int cloud_mode)
|
||||
"seafile_get_shared_groups_for_subdir",
|
||||
searpc_signature_objlist__string_string_string());
|
||||
|
||||
searpc_server_register_function ("seafserv-threaded-rpcserver",
|
||||
seafile_repo_has_been_shared,
|
||||
"repo_has_been_shared",
|
||||
searpc_signature_int__string_int());
|
||||
|
||||
/* branch and commit */
|
||||
searpc_server_register_function ("seafserv-threaded-rpcserver",
|
||||
seafile_branch_gets,
|
||||
|
@@ -758,3 +758,29 @@ seaf_share_manager_unshare_group_subdir (SeafShareManager* mgr,
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
gboolean
|
||||
seaf_share_manager_repo_has_been_shared (SeafShareManager* mgr,
|
||||
const char *repo_id,
|
||||
gboolean including_groups)
|
||||
{
|
||||
gboolean exists;
|
||||
gboolean db_err = FALSE;
|
||||
char *sql;
|
||||
|
||||
sql = "SELECT 1 FROM SharedRepo WHERE repo_id=?";
|
||||
exists = seaf_db_statement_exists (mgr->seaf->db, sql, &db_err,
|
||||
1, "string", repo_id);
|
||||
if (db_err) {
|
||||
seaf_warning ("DB error when check repo exist in SharedRepo and RepoGroup.\n");
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
if (!exists && including_groups) {
|
||||
sql = "SELECT 1 FROM RepoGroup WHERE repo_id=?";
|
||||
exists = seaf_db_statement_exists (mgr->seaf->db, sql, &db_err,
|
||||
1, "string", repo_id);
|
||||
}
|
||||
|
||||
return exists;
|
||||
}
|
||||
|
@@ -102,5 +102,9 @@ seaf_share_manager_unshare_group_subdir (SeafShareManager* mgr,
|
||||
const char *owner,
|
||||
int group_id);
|
||||
|
||||
gboolean
|
||||
seaf_share_manager_repo_has_been_shared (SeafShareManager* mgr,
|
||||
const char *repo_id,
|
||||
gboolean including_groups);
|
||||
#endif /* SHARE_MGR_H */
|
||||
|
||||
|
Reference in New Issue
Block a user