Translators, take note. This inroduces a new language variable in acp/groups.php


git-svn-id: file:///svn/phpbb/trunk@7449 89ea8834-ac86-4346-8a33-228a782c2dd0
This commit is contained in:
Henry Sudhof 2007-05-02 14:09:44 +00:00
parent cb645227f7
commit 475c73f4a8
2 changed files with 49 additions and 1 deletions

View file

@ -1932,6 +1932,12 @@ function group_create(&$group_id, $type, $name, $desc, $group_attributes, $allow
$error[] = (!utf8_strlen($name)) ? $user->lang['GROUP_ERR_USERNAME'] : $user->lang['GROUP_ERR_USER_LONG']; $error[] = (!utf8_strlen($name)) ? $user->lang['GROUP_ERR_USERNAME'] : $user->lang['GROUP_ERR_USER_LONG'];
} }
$err = group_validate_groupname($group_id, $name);
if (!empty($err))
{
$error[] = $user->lang[$err];
}
if (!in_array($type, array(GROUP_OPEN, GROUP_CLOSED, GROUP_HIDDEN, GROUP_SPECIAL, GROUP_FREE))) if (!in_array($type, array(GROUP_OPEN, GROUP_CLOSED, GROUP_HIDDEN, GROUP_SPECIAL, GROUP_FREE)))
{ {
$error[] = $user->lang['GROUP_ERR_TYPE']; $error[] = $user->lang['GROUP_ERR_TYPE'];
@ -2462,6 +2468,47 @@ function group_user_attributes($action, $group_id, $user_id_ary = false, $userna
return true; return true;
} }
/**
* A small version of validate_username to check for a group name's existence. To be called directly,
*/
function group_validate_groupname($group_id, $groupname)
{
global $config, $db;
$groupname = utf8_clean_string($groupname);
if (!empty($group_id))
{
$sql = 'SELECT group_name
FROM ' . GROUPS_TABLE . '
WHERE group_id = ' . (int)$group_id;
$result = $db->sql_query($sql);
$row = $db->sql_fetchrow($result);
$db->sql_freeresult($result);
$allowed_groupname = utf8_clean_string($row['group_name']);
if ($allowed_groupname == $groupname)
{
return false;
}
}
$sql = 'SELECT group_name
FROM ' . GROUPS_TABLE . "
WHERE LOWER(group_name) = '" . $db->sql_escape(utf8_strtolower($groupname)) . "'";
$result = $db->sql_query($sql);
$row = $db->sql_fetchrow($result);
$db->sql_freeresult($result);
if ($row)
{
return 'GROUP_NAME_TAKEN';
}
}
/** /**
* Set users default group * Set users default group
* *

View file

@ -75,6 +75,7 @@ $lang = array_merge($lang, array(
'GROUP_MODS_DEMOTED' => 'Group leaders demoted successfully.', 'GROUP_MODS_DEMOTED' => 'Group leaders demoted successfully.',
'GROUP_MODS_PROMOTED' => 'Group members promoted successfully.', 'GROUP_MODS_PROMOTED' => 'Group members promoted successfully.',
'GROUP_NAME' => 'Group name', 'GROUP_NAME' => 'Group name',
'GROUP_NAME_TAKEN' => 'The group name you entered is already in use, please select an alternative.',
'GROUP_OPEN' => 'Open', 'GROUP_OPEN' => 'Open',
'GROUP_PENDING' => 'Pending members', 'GROUP_PENDING' => 'Pending members',
'GROUP_PROMOTE' => 'Promote to group leader', 'GROUP_PROMOTE' => 'Promote to group leader',