mirror of
https://github.com/matrix-construct/construct
synced 2024-09-26 18:38:52 +02:00
ircd:Ⓜ️:room::power: Support defaulting level for the room creator.
This commit is contained in:
parent
8733e16ca4
commit
61016b479b
2 changed files with 18 additions and 2 deletions
|
@ -410,6 +410,7 @@ struct ircd::m::room::power
|
||||||
using closure = std::function<void (const string_view &, const int64_t &)>;
|
using closure = std::function<void (const string_view &, const int64_t &)>;
|
||||||
using closure_bool = std::function<bool (const string_view &, const int64_t &)>;
|
using closure_bool = std::function<bool (const string_view &, const int64_t &)>;
|
||||||
|
|
||||||
|
static const int64_t default_creator_level;
|
||||||
static const int64_t default_power_level;
|
static const int64_t default_power_level;
|
||||||
static const int64_t default_event_level;
|
static const int64_t default_event_level;
|
||||||
static const int64_t default_user_level;
|
static const int64_t default_user_level;
|
||||||
|
|
|
@ -1958,6 +1958,12 @@ const
|
||||||
// room::power
|
// room::power
|
||||||
//
|
//
|
||||||
|
|
||||||
|
decltype(ircd::m::room::power::default_creator_level)
|
||||||
|
ircd::m::room::power::default_creator_level
|
||||||
|
{
|
||||||
|
100
|
||||||
|
};
|
||||||
|
|
||||||
decltype(ircd::m::room::power::default_power_level)
|
decltype(ircd::m::room::power::default_power_level)
|
||||||
ircd::m::room::power::default_power_level
|
ircd::m::room::power::default_power_level
|
||||||
{
|
{
|
||||||
|
@ -2006,7 +2012,7 @@ const try
|
||||||
default_user_level
|
default_user_level
|
||||||
};
|
};
|
||||||
|
|
||||||
view([&user_id, &ret]
|
const auto closure{[&user_id, &ret]
|
||||||
(const json::object &content)
|
(const json::object &content)
|
||||||
{
|
{
|
||||||
const json::object &users
|
const json::object &users
|
||||||
|
@ -2015,7 +2021,16 @@ const try
|
||||||
};
|
};
|
||||||
|
|
||||||
ret = users.at<int64_t>(user_id);
|
ret = users.at<int64_t>(user_id);
|
||||||
});
|
}};
|
||||||
|
|
||||||
|
const bool has_power_levels_event
|
||||||
|
{
|
||||||
|
view(closure)
|
||||||
|
};
|
||||||
|
|
||||||
|
if(!has_power_levels_event)
|
||||||
|
if(creator(room, user_id))
|
||||||
|
ret = default_creator_level;
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue