mirror of
https://github.com/ChronosX88/psyced.git
synced 2024-12-05 00:22:19 +00:00
marking local _children storage as _INTERNAL
This commit is contained in:
parent
1cc3dc1dc8
commit
fb3748221d
@ -74,8 +74,8 @@ varargs array(mixed) entries(int limit, int offset, int reverse, int parent, int
|
|||||||
if (vars["_parent"] != parent) continue;
|
if (vars["_parent"] != parent) continue;
|
||||||
if (o++ < offset) continue;
|
if (o++ < offset) continue;
|
||||||
children = ({});
|
children = ({});
|
||||||
if (member(vars, "_children")) {
|
if (member(vars, "_INTERNAL_children")) {
|
||||||
foreach (int c : vars["_children"]) {
|
foreach (int c : vars["_INTERNAL_children"]) {
|
||||||
if (child = logPick(c)) {
|
if (child = logPick(c)) {
|
||||||
children += ({ child + ({ entries(0, 0, reverse, c) }) });
|
children += ({ child + ({ entries(0, 0, reverse, c) }) });
|
||||||
}
|
}
|
||||||
@ -104,15 +104,21 @@ varargs int addEntry(mixed source, mapping vars, string _data, string _mc) {
|
|||||||
vars["_id"] = logSize();
|
vars["_id"] = logSize();
|
||||||
vars["_action"] ||= v("addaction");
|
vars["_action"] ||= v("addaction");
|
||||||
// this should only be set after a reply
|
// this should only be set after a reply
|
||||||
m_delete(vars, "_children");
|
m_delete(vars, "_INTERNAL_children");
|
||||||
|
|
||||||
if (vars["_parent"]) {
|
if (vars["_parent"]) {
|
||||||
array(mixed) parent;
|
array(mixed) parent;
|
||||||
vars["_parent"] = to_int(vars["_parent"]);
|
vars["_parent"] = to_int(vars["_parent"]);
|
||||||
unless (parent = logPick(vars["_parent"])) return 0;
|
unless (parent = logPick(vars["_parent"])) return 0;
|
||||||
PT((">>> parent: %O\n", parent))
|
PT((">>> parent: %O\n", parent))
|
||||||
unless (parent[LOG_VARS]["_children"]) parent[LOG_VARS]["_children"] = ({ });
|
|
||||||
parent[LOG_VARS]["_children"] += ({ vars["_id"] });
|
// the children array is generated *in* the state of a
|
||||||
|
// previously sent message. this modification must never be
|
||||||
|
// transmitted in a history replay or suchlike, that's why
|
||||||
|
// it has to be tagged _INTERNAL.
|
||||||
|
//
|
||||||
|
unless (parent[LOG_VARS]["_INTERNAL_children"]) parent[LOG_VARS]["_INTERNAL_children"] = ({ });
|
||||||
|
parent[LOG_VARS]["_INTERNAL_children"] += ({ vars["_id"] });
|
||||||
|
|
||||||
mc += "_reply";
|
mc += "_reply";
|
||||||
data = member(parent[LOG_VARS], "_title") ?
|
data = member(parent[LOG_VARS], "_title") ?
|
||||||
@ -147,7 +153,7 @@ int editEntry(mixed source, mapping vars, string data) {
|
|||||||
|
|
||||||
if (strlen(data)) entry[LOG_DATA] = data;
|
if (strlen(data)) entry[LOG_DATA] = data;
|
||||||
foreach (string key : vars)
|
foreach (string key : vars)
|
||||||
if (key != "_children") entry[LOG_VARS][key] = vars[key];
|
if (key != "_INTERNAL_children") entry[LOG_VARS][key] = vars[key];
|
||||||
|
|
||||||
save();
|
save();
|
||||||
castmsg(source, entry[LOG_MC] + "_edit", entry[LOG_DATA], vars + ([ "_action": v("editaction") ]));
|
castmsg(source, entry[LOG_MC] + "_edit", entry[LOG_DATA], vars + ([ "_action": v("editaction") ]));
|
||||||
|
Loading…
Reference in New Issue
Block a user