bug #157 - allow deleted group to be revived, but warn of side effects
This commit is contained in:
parent
da05ef2ae4
commit
5899c9f406
1 changed files with 19 additions and 1 deletions
|
@ -6,8 +6,26 @@ function group_add($uid,$name) {
|
|||
$ret = false;
|
||||
if(x($uid) && x($name)) {
|
||||
$r = group_byname($uid,$name); // check for dups
|
||||
if($r !== false)
|
||||
if($r !== false) {
|
||||
|
||||
// This could be a problem.
|
||||
// Let's assume we've just created a group which we once deleted
|
||||
// all the old members are gone, but the group remains so we don't break any security
|
||||
// access lists. What we're doing here is reviving the dead group, but old content which
|
||||
// was restricted to this group may now be seen by the new group members.
|
||||
|
||||
$z = q("SELECT * FROM `group` WHERE `id` = %d LIMIT 1",
|
||||
intval($r)
|
||||
);
|
||||
if(count($z) && $z[0]['deleted']) {
|
||||
$r = q("UPDATE `group` SET `deleted` = 0 WHERE `uid` = %d AND `name` = '%s' LIMIT 1",
|
||||
intval($uid),
|
||||
dbesc($name)
|
||||
);
|
||||
notice( t('A deleted group with this name was revived. Existing item permissions <strong>may</strong> apply to this group and any future members. If this is not what you intended, please create another group with a different name.') . EOL);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
$r = q("INSERT INTO `group` ( `uid`, `name` )
|
||||
VALUES( %d, '%s' ) ",
|
||||
intval($uid),
|
||||
|
|
Loading…
Reference in a new issue