0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-11-16 06:51:08 +01:00
construct/modules/client/user/user.h

86 lines
2.5 KiB
C++

// Matrix Construct
//
// Copyright (C) Matrix Construct Developers, Authors & Contributors
// Copyright (C) 2016-2018 Jason Volk <jason@zemos.net>
//
// Permission to use, copy, modify, and/or distribute this software for any
// purpose with or without fee is hereby granted, provided that the above
// copyright notice and this permission notice is present in all copies. The
// full license for this software is available in the LICENSE file.
extern ircd::resource user_resource;
///////////////////////////////////////////////////////////////////////////////
//
// filter.cc
//
extern "C" bool
filter_get(std::nothrow_t,
const ircd::m::user &,
const ircd::string_view &filter_id,
const ircd::m::user::filter_closure &);
extern "C" ircd::m::event::id::buf
filter_set(const ircd::m::user &,
const ircd::json::object &filter,
const ircd::mutable_buffer &idbuf);
ircd::resource::response
get__filter(ircd::client &,
const ircd::resource::request &,
const ircd::m::user::id &);
ircd::resource::response
post__filter(ircd::client &,
const ircd::resource::request::object<const ircd::m::filter> &,
const ircd::m::user::id &);
///////////////////////////////////////////////////////////////////////////////
//
// account_data.cc
//
ircd::resource::response
put__account_data(ircd::client &client,
const ircd::resource::request &request,
const ircd::m::user &user);
ircd::resource::response
get__account_data(ircd::client &client,
const ircd::resource::request &request,
const ircd::m::user &user);
///////////////////////////////////////////////////////////////////////////////
//
// openid.cc
//
ircd::resource::response
post__openid(ircd::client &client,
const ircd::resource::request &request,
const ircd::m::user::id &user_id);
///////////////////////////////////////////////////////////////////////////////
//
// rooms.cc
//
ircd::resource::response
get__rooms(ircd::client &client,
const ircd::resource::request &request,
const ircd::m::user::id &user_id);
ircd::resource::response
put__rooms(ircd::client &client,
const ircd::resource::request &request,
const ircd::m::user::id &user_id);
///////////////////////////////////////////////////////////////////////////////
//
// create.cc
//
extern "C" ircd::m::user
user_create(const ircd::m::user::id &,
const ircd::json::members &);