mirror of
https://github.com/haiwen/seafile-server.git
synced 2025-04-28 11:24:48 +00:00
* merge the api of ccnet into seafile * merge the api of ccnet into seafile * Dont't need to include the header * merge the api of ccnet into seafile * add enable ldap * The unit test dont't need to start ccnet-server * Modify some funcion names and fuse don't need org management * Modify indent
156 lines
5.0 KiB
C
156 lines
5.0 KiB
C
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
|
|
|
|
#ifndef _ORG_MGR_H_
|
|
#define _ORG_MGR_H_
|
|
|
|
typedef struct _SeafileSession SeafileSession;
|
|
typedef struct _CcnetOrgManager CcnetOrgManager;
|
|
typedef struct _CcnetOrgManagerPriv CcnetOrgManagerPriv;
|
|
|
|
struct _CcnetOrgManager
|
|
{
|
|
SeafileSession *session;
|
|
|
|
CcnetOrgManagerPriv *priv;
|
|
};
|
|
|
|
CcnetOrgManager* ccnet_org_manager_new (SeafileSession *session);
|
|
|
|
int
|
|
ccnet_org_manager_prepare (CcnetOrgManager *manager);
|
|
|
|
void
|
|
ccnet_org_manager_start (CcnetOrgManager *manager);
|
|
|
|
int
|
|
ccnet_org_manager_create_org (CcnetOrgManager *mgr,
|
|
const char *org_name,
|
|
const char *url_prefix,
|
|
const char *creator,
|
|
GError **error);
|
|
|
|
int
|
|
ccnet_org_manager_remove_org (CcnetOrgManager *mgr,
|
|
int org_id,
|
|
GError **error);
|
|
|
|
GList *
|
|
ccnet_org_manager_get_all_orgs (CcnetOrgManager *mgr,
|
|
int start,
|
|
int limit);
|
|
|
|
int
|
|
ccnet_org_manager_count_orgs (CcnetOrgManager *mgr);
|
|
|
|
CcnetOrganization *
|
|
ccnet_org_manager_get_org_by_url_prefix (CcnetOrgManager *mgr,
|
|
const char *url_prefix,
|
|
GError **error);
|
|
|
|
CcnetOrganization *
|
|
ccnet_org_manager_get_org_by_id (CcnetOrgManager *mgr,
|
|
int org_id,
|
|
GError **error);
|
|
|
|
int
|
|
ccnet_org_manager_add_org_user (CcnetOrgManager *mgr,
|
|
int org_id,
|
|
const char *email,
|
|
int is_staff,
|
|
GError **error);
|
|
|
|
int
|
|
ccnet_org_manager_remove_org_user (CcnetOrgManager *mgr,
|
|
int org_id,
|
|
const char *email,
|
|
GError **error);
|
|
|
|
GList *
|
|
ccnet_org_manager_get_orgs_by_user (CcnetOrgManager *mgr,
|
|
const char *email,
|
|
GError **error);
|
|
|
|
GList *
|
|
ccnet_org_manager_get_org_emailusers (CcnetOrgManager *mgr,
|
|
const char *url_prefix,
|
|
int start, int limit);
|
|
|
|
int
|
|
ccnet_org_manager_add_org_group (CcnetOrgManager *mgr,
|
|
int org_id,
|
|
int group_id,
|
|
GError **error);
|
|
int
|
|
ccnet_org_manager_remove_org_group (CcnetOrgManager *mgr,
|
|
int org_id,
|
|
int group_id,
|
|
GError **error);
|
|
|
|
int
|
|
ccnet_org_manager_is_org_group (CcnetOrgManager *mgr,
|
|
int group_id,
|
|
GError **error);
|
|
|
|
int
|
|
ccnet_org_manager_get_org_id_by_group (CcnetOrgManager *mgr,
|
|
int group_id,
|
|
GError **error);
|
|
|
|
GList *
|
|
ccnet_org_manager_get_org_group_ids (CcnetOrgManager *mgr,
|
|
int org_id,
|
|
int start,
|
|
int limit);
|
|
|
|
GList *
|
|
ccnet_org_manager_get_org_groups (CcnetOrgManager *mgr,
|
|
int org_id,
|
|
int start,
|
|
int limit);
|
|
|
|
GList *
|
|
ccnet_org_manager_get_org_groups_by_user (CcnetOrgManager *mgr,
|
|
const char *user,
|
|
int org_id);
|
|
|
|
GList *
|
|
ccnet_org_manager_get_org_top_groups (CcnetOrgManager *mgr, int org_id, GError **error);
|
|
|
|
int
|
|
ccnet_org_manager_org_user_exists (CcnetOrgManager *mgr,
|
|
int org_id,
|
|
const char *email,
|
|
GError **error);
|
|
|
|
char *
|
|
ccnet_org_manager_get_url_prefix_by_org_id (CcnetOrgManager *mgr,
|
|
int org_id,
|
|
GError **error);
|
|
|
|
int
|
|
ccnet_org_manager_is_org_staff (CcnetOrgManager *mgr,
|
|
int org_id,
|
|
const char *email,
|
|
GError **error);
|
|
|
|
int
|
|
ccnet_org_manager_set_org_staff (CcnetOrgManager *mgr,
|
|
int org_id,
|
|
const char *email,
|
|
GError **error);
|
|
|
|
int
|
|
ccnet_org_manager_unset_org_staff (CcnetOrgManager *mgr,
|
|
int org_id,
|
|
const char *email,
|
|
GError **error);
|
|
|
|
int
|
|
ccnet_org_manager_set_org_name(CcnetOrgManager *mgr,
|
|
int org_id,
|
|
const char *org_name,
|
|
GError **error);
|
|
|
|
|
|
#endif /* _ORG_MGR_H_ */
|