lang['USER_ADMIN_' . strtoupper($action)]; ?> |
|
|
(string) '',
'aim' => (string) '',
'msn' => (string) '',
'yim' => (string) '',
'jabber' => (string) '',
'website' => (string) '',
'location' => (string) '',
'occupation' => (string) '',
'interests' => (string) '',
'bday_day' => 0,
'bday_month' => 0,
'bday_year' => 0,
);
foreach ($var_ary as $var => $default)
{
$data[$var] = request_var($var, $default);
}
$var_ary = array(
'icq' => array(
array('string', true, 3, 15),
array('match', true, '#^[0-9]+$#i')),
'aim' => array('string', true, 5, 255),
'msn' => array('string', true, 5, 255),
'jabber' => array(
array('string', true, 5, 255),
array('match', true, '#^[a-z0-9\.\-_\+]+?@(.*?\.)*?[a-z0-9\-_]+?\.[a-z]{2,4}(/.*)?$#i')),
'yim' => array('string', true, 5, 255),
'website' => array(
array('string', true, 12, 255),
array('match', true, '#^http[s]?://(.*?\.)*?[a-z0-9\-]+\.[a-z]{2,4}#i')),
'location' => array('string', true, 2, 255),
'occupation' => array('string', true, 2, 500),
'interests' => array('string', true, 2, 500),
'bday_day' => array('num', true, 1, 31),
'bday_month' => array('num', true, 1, 12),
'bday_year' => array('num', true, 1901, gmdate('Y', time())),
);
$error = validate_data($data, $var_ary);
extract($data);
unset($data);
// validate custom profile fields
// $cp->submit_cp_field('profile', $cp_data, $cp_error);
if (!sizeof($error) && !sizeof($cp_error))
{
$sql_ary = array(
'user_icq' => $icq,
'user_aim' => $aim,
'user_msnm' => $msn,
'user_yim' => $yim,
'user_jabber' => $jabber,
'user_website' => $website,
'user_from' => $location,
'user_occ' => $occupation,
'user_interests'=> $interests,
'user_birthday' => sprintf('%2d-%2d-%4d', $bday_day, $bday_month, $bday_year),
);
$sql = 'UPDATE ' . USERS_TABLE . '
SET ' . $db->sql_build_array('UPDATE', $sql_ary) . "
WHERE user_id = $user_id";
$db->sql_query($sql);
/*
// Update Custom Fields
if (sizeof($cp_data))
{
$sql = 'UPDATE ' . PROFILE_DATA_TABLE . '
SET ' . $db->sql_build_array('UPDATE', $cp_data) . "
WHERE user_id = $user_id";
$db->sql_query($sql);
if (!$db->sql_affectedrows())
{
$cp_data['user_id'] = $user_id;
$db->return_on_error = true;
$sql = 'INSERT INTO ' . PROFILE_DATA_TABLE . ' ' . $db->sql_build_array('INSERT', $cp_data);
$db->sql_query();
$db->return_on_error = false;
}
}
*/
trigger_error($user->lang['USER_PROFILE_UPDATED']);
}
}
$colspan = 2;
$cp = new custom_profile();
$cp_data = $cp_error = array();
if (!isset($bday_day))
{
list($bday_day, $bday_month, $bday_year) = explode('-', $user_birthday);
}
$s_birthday_day_options = '';
for ($i = 1; $i < 32; $i++)
{
$selected = ($i == $bday_day) ? ' selected="selected"' : '';
$s_birthday_day_options .= "";
}
$s_birthday_month_options = '';
for ($i = 1; $i < 13; $i++)
{
$selected = ($i == $bday_month) ? ' selected="selected"' : '';
$s_birthday_month_options .= "";
}
$s_birthday_year_options = '';
$now = getdate();
$s_birthday_year_options = '';
for ($i = $now['year'] - 100; $i < $now['year']; $i++)
{
$selected = ($i == $bday_year) ? ' selected="selected"' : '';
$s_birthday_year_options .= "";
}
unset($now);
// Get additional profile fields and assign them to the template block var 'profile_fields'
// $user->get_profile_fields($user->data['user_id']);
// $cp->generate_profile_fields('profile', $user->get_iso_lang_id(), $cp_error);
?>
lang['USER_ADMIN_SIG']; ?> |
lang['UCP_ICQ']; ?>: |
|
lang['UCP_AIM']; ?>: |
|
lang['UCP_MSNM']; ?>: |
|
lang['UCP_YIM']; ?>: |
|
lang['UCP_JABBER']; ?>: |
|
lang['WEBSITE']; ?>: |
|
lang['LOCATION']; ?>: |
|
lang['OCCUPATION']; ?>: |
|
lang['INTERESTS']; ?>: |
|
lang['BIRTHDAY']; ?>: lang['BIRTHDAY_EXPLAIN']; ?> |
lang['DAY']; ?>: lang['MONTH']; ?>: lang['YEAR']; ?>: |
|
(string) $config['default_dateformat'],
'user_lang' => (string) $config['default_lang'],
'user_tz' => (float) $config['board_timezone'],
'user_style' => (int) $config['default_style'],
'user_dst' => (bool) $config['board_dst'],
'user_allow_viewemail' => false,
'user_allow_massemail' => true,
'user_allow_viewonline' => true,
'user_notify_type' => 0,
'user_notify_pm' => true,
'user_allow_pm' => true,
'user_notify' => false,
'sk' => (string) 't',
'sd' => (string) 'd',
'st' => 0,
'popuppm' => false,
'viewimg' => true,
'viewflash' => false,
'viewsmilies' => true,
'viewsigs' => true,
'viewavatars' => true,
'viewcensors' => false,
'bbcode' => true,
'html' => false,
'smile' => true,
'attachsig' => true,
);
foreach ($var_ary as $var => $default)
{
$data[$var] = request_var($var, $default);
}
$var_ary = array(
'user_dateformat' => array('string', false, 3, 15),
'user_lang' => array('match', false, '#^[a-z_]{2,}$#i'),
'user_tz' => array('num', false, -13, 13),
'sk' => array('string', false, 1, 1),
'sd' => array('string', false, 1, 1),
);
$error = validate_data($data, $var_ary);
extract($data);
unset($data);
// Set the popuppm option
$option_ary = array('popuppm', 'viewimg', 'viewflash', 'viewsmilies', 'viewsigs', 'viewavatars', 'viewcensors', 'bbcode', 'html', 'smile', 'attachsig');
foreach ($option_ary as $option)
{
$user_options = $user->optionset($option, $$option, $user_options);
}
if (!sizeof($error))
{
$sql_ary = array(
'user_allow_pm' => $user_allow_pm,
'user_allow_viewemail' => $user_allow_viewemail,
'user_allow_massemail' => $user_allow_massemail,
'user_allow_viewonline' => $user_allow_viewonline,
'user_notify_type' => $user_notify_type,
'user_notify_pm' => $user_notify_pm,
'user_options' => $user_options,
'user_notify' => $user_notify,
'user_dst' => $user_dst,
'user_dateformat' => $user_dateformat,
'user_lang' => $user_lang,
'user_timezone' => $user_tz,
'user_style' => $user_style,
'user_sortby_type' => $sk,
'user_sortby_dir' => $sd,
'user_show_days' => $st,
);
$sql = 'UPDATE ' . USERS_TABLE . '
SET ' . $db->sql_build_array('UPDATE', $sql_ary) . "
WHERE user_id = $user_id";
$db->sql_query($sql);
trigger_error($user->lang['USER_PREFS_UPDATED']);
}
$user_sortby_type = $sk;
$user_sortby_dir = $sd;
$user_show_days = $st;
}
$colspan = 2;
$option_ary = array('user_allow_viewemail', 'user_allow_massemail', 'user_allow_pm', 'user_allow_viewonline', 'user_notify_pm', 'user_dst', 'user_notify');
foreach ($option_ary as $option)
{
${$option . '_yes'} = ($$option) ? ' checked="checked"' : '';
${$option . '_no'} = (!$$option) ? ' checked="checked"' : '';
}
unset($option_ary);
$option_ary = array('popuppm', 'viewimg', 'viewflash', 'viewsmilies', 'viewsigs', 'viewavatars', 'viewcensors', 'bbcode', 'html', 'smile', 'attachsig');
foreach ($option_ary as $option)
{
${$option . '_yes'} = ($user->optionget($option, $user_options)) ? ' checked="checked"' : '';
${$option . '_no'} = (!$user->optionget($option, $user_options)) ? ' checked="checked"' : '';
}
$notify_email = ($user_notify_type == NOTIFY_EMAIL) ? ' checked="checked"' : '';
$notify_im = ($user_notify_type == NOTIFY_IM) ? ' checked="checked"' : '';
$notify_both = ($user_notify_type == NOTIFY_BOTH) ? ' checked="checked"' : '';
// Topic ordering display
$limit_days = array(0 => $user->lang['ALL_TOPICS'], 0 => $user->lang['ALL_TOPICS'], 1 => $user->lang['1_DAY'], 7 => $user->lang['7_DAYS'], 14 => $user->lang['2_WEEKS'], 30 => $user->lang['1_MONTH'], 90 => $user->lang['3_MONTHS'], 180 => $user->lang['6_MONTHS'], 364 => $user->lang['1_YEAR']);
$sort_by_text = array('a' => $user->lang['AUTHOR'], 't' => $user->lang['POST_TIME'], 'r' => $user->lang['REPLIES'], 's' => $user->lang['SUBJECT'], 'v' => $user->lang['VIEWS']);
$sort_by_sql = array('a' => 't.topic_first_poster_name', 't' => 't.topic_last_post_time', 'r' => 't.topic_replies', 's' => 't.topic_title', 'v' => 't.topic_views');
$s_limit_days = $s_sort_key = $s_sort_dir = '';
gen_sort_selects($limit_days, $sort_by_text, $user_show_days, $user_sortby_type, $user_sortby_dir, $s_limit_days, $s_sort_key, $s_sort_dir);
?>
lang['USER_ADMIN_PREFS']; ?> |
lang['VIEW_IMAGES']; ?>: |
/>lang['YES']; ?> />lang['NO']; ?> |
lang['VIEW_FLASH']; ?>: |
/>lang['YES']; ?> />lang['NO']; ?> |
lang['VIEW_SMILIES']; ?>: |
/>lang['YES']; ?> />lang['NO']; ?> |
lang['VIEW_SIGS']; ?>: |
/>lang['YES']; ?> />lang['NO']; ?> |
lang['VIEW_AVATARS']; ?>: |
/>lang['YES']; ?> />lang['NO']; ?> |
lang['DISABLE_CENSORS']; ?>: |
/>lang['YES']; ?> />lang['NO']; ?> |
lang['VIEW_TOPICS_DAYS']; ?>: |
|
lang['VIEW_TOPICS_KEY']; ?>: |
|
lang['VIEW_TOPICS_DIR']; ?>: |
|
lang['USER_POSTING_PREFS']; ?> |
lang['DEFAULT_BBCODE']; ?>: |
/>lang['YES']; ?> />lang['NO']; ?> |
lang['DEFAULT_HTML']; ?>: |
/>lang['YES']; ?> />lang['NO']; ?> |
lang['DEFAULT_SMILE']; ?>: |
/>lang['YES']; ?> />lang['NO']; ?> |
lang['DEFAULT_ADD_SIG']; ?>: |
/>lang['YES']; ?> />lang['NO']; ?> |
lang['DEFAULT_NOTIFY']; ?>: |
/>lang['YES']; ?> />lang['NO']; ?> |
|
lang['SHOW_EMAIL']; ?>: |
/>lang['YES']; ?> />lang['NO']; ?> |
lang['ADMIN_EMAIL']; ?>: |
/>lang['YES']; ?> />lang['NO']; ?> |
lang['ALLOW_PM']; ?>: lang['ALLOW_PM_EXPLAIN']; ?> |
/>lang['YES']; ?> />lang['NO']; ?> |
lang['HIDE_ONLINE']; ?>: |
/>lang['YES']; ?> />lang['NO']; ?> |
lang['NOTIFY_METHOD']; ?>: lang['NOTIFY_METHOD_EXPLAIN']; ?> |
/>lang['NOTIFY_METHOD_EMAIL']; ?> />lang['NOTIFY_METHOD_IM']; ?> />lang['NOTIFY_METHOD_BOTH']; ?> |
lang['NOTIFY_ON_PM']; ?>: |
/>lang['YES']; ?> />lang['NO']; ?> |
lang['POPUP_ON_PM']; ?>: |
/>lang['YES']; ?> />lang['NO']; ?> |
lang['BOARD_LANGUAGE']; ?>: |
|
lang['BOARD_STYLE']; ?>: |
|
lang['BOARD_TIMEZONE']; ?>: |
|
lang['BOARD_DST']; ?>: |
/>lang['YES']; ?> />lang['NO']; ?> |
lang['BOARD_DATE_FORMAT']; ?>: lang['BOARD_DATE_FORMAT_EXPLAIN']; ?> |
|
|
(string) '',
'remotelink' => (string) '',
'width' => (string) '',
'height' => (string) '',
);
foreach ($var_ary as $var => $default)
{
$data[$var] = request_var($var, $default);
}
$var_ary = array(
'uploadurl' => array('string', true, 5, 255),
'remotelink' => array('string', true, 5, 255),
'width' => array('string', true, 1, 3),
'height' => array('string', true, 1, 3),
);
$error = validate_data($data, $var_ary);
if (!sizeof($error))
{
$data['user_id'] = $user_id;
if ((!empty($_FILES['uploadfile']['tmp_name']) || $data['uploadurl']) && $can_upload)
{
list($type, $filename, $width, $height) = avatar_upload($data, $error);
}
else if ($data['remotelink'])
{
list($type, $filename, $width, $height) = avatar_remote($data, $error);
}
else if ($delete)
{
$type = $filename = $width = $height = '';
}
}
if (!sizeof($error))
{
// Do we actually have any data to update?
if (sizeof($data))
{
$sql_ary = array(
'user_avatar' => $filename,
'user_avatar_type' => $type,
'user_avatar_width' => $width,
'user_avatar_height' => $height,
);
$sql = 'UPDATE ' . USERS_TABLE . '
SET ' . $db->sql_build_array('UPDATE', $sql_ary) . "
WHERE user_id = $user_id";
$db->sql_query($sql);
// Delete old avatar if present
if ($user_avatar && $filename != $user_avatar)
{
avatar_delete($user_avatar);
}
}
trigger_error($message);
}
extract($data);
unset($data);
}
$colspan = 2;
$display_gallery = (isset($_POST['displaygallery'])) ? true : false;
$avatar_category = request_var('category', '');
// Generate users avatar
$avatar_img = '';
if ($user_avatar)
{
switch ($user_avatar_type)
{
case AVATAR_UPLOAD:
$avatar_img = $phpbb_root_path . $config['avatar_path'] . '/';
break;
case AVATAR_GALLERY:
$avatar_img = $phpbb_root_path . $config['avatar_gallery_path'] . '/';
break;
}
$avatar_img .= $user_avatar;
$avatar_img = ' ';
}
else
{
$avatar_img = ' ';
}
?>
lang['USER_ADMIN_AVATAR']; ?> |
lang['CURRENT_IMAGE']; ?>: lang['AVATAR_EXPLAIN'], $config['avatar_max_width'], $config['avatar_max_height'], round($config['avatar_filesize'] / 1024)); ?> |
lang['DELETE_AVATAR']; ?> |
lang['UPLOAD_AVATAR_FILE']; ?>: |
|
lang['UPLOAD_AVATAR_URL']; ?>: lang['UPLOAD_AVATAR_URL_EXPLAIN']; ?> |
|
lang['LINK_REMOTE_AVATAR']; ?>: lang['LINK_REMOTE_AVATAR_EXPLAIN']; ?> |
|
lang['LINK_REMOTE_SIZE']; ?>: lang['LINK_REMOTE_SIZE_EXPLAIN']; ?> |
px X px |
lang['AVATAR_GALLERY']; ?>: |
|
lang['AVATAR_GALLERY']; ?> |
lang['AVATAR_CATEGORY']; ?>: lang['AVATAR_PAGE']; ?>: |
|
|
(bool) $config['allow_html'],
'enable_bbcode' => (bool) $config['allow_bbcode'],
'enable_smilies' => (bool) $config['allow_smilies'],
'enable_urls' => true,
'signature' => (string) $user_sig,
);
foreach ($var_ary as $var => $default)
{
$$var = request_var($var, $default);
}
// NOTE: allow_img and allow_flash do not exist in config table
$img_status = ($config['allow_img']) ? true : false;
$flash_status = ($config['allow_flash']) ? true : false;
include($phpbb_root_path . 'includes/message_parser.'.$phpEx);
$message_parser = new parse_message($signature);
// Allowing Quote BBCode
$message_parser->parse($enable_html, $enable_bbcode, $enable_urls, $enable_smilies, $img_status, $flash_status, true);
if ($submit)
{
$sql_ary = array(
'user_sig' => (string) $message_parser->message,
'user_sig_bbcode_uid' => (string) $message_parser->bbcode_uid,
'user_sig_bbcode_bitfield' => (int) $message_parser->bbcode_bitfield
);
$sql = 'UPDATE ' . USERS_TABLE . '
SET ' . $db->sql_build_array('UPDATE', $sql_ary) . "
WHERE user_id = $user_id";
$db->sql_query($sql);
unset($message_parser);
trigger_error($user->lang['PROFILE_UPDATED']);
}
}
$colspan = 2;
include($phpbb_root_path . 'includes/functions_posting.'.$phpEx);
$signature_preview = '';
if ($preview)
{
// Now parse it for displaying
$signature_preview = $message_parser->format_display($enable_html, $enable_bbcode, $enable_urls, $enable_smilies, false);
unset($message_parser);
}
decode_message($user_sig, $user_sig_bbcode_uid);
?>
lang['USER_ADMIN_SIG']; ?> |
lang['SIGNATURE']; ?>: |
|
lang['OPTIONS']; ?>
lang['HTML_IS_ON'] : $user->lang['HTML_IS_OFF']; ?> |
lang['BBCODE_IS_ON'], "", '') : sprintf($user->lang['BBCODE_IS_OFF'], "", ''); ?> |
lang['IMAGES_ARE_ON'] : $user->lang['IMAGES_ARE_OFF']; ?> |
lang['FLASH_IS_ON'] : $user->lang['FLASH_IS_OFF']; ?> |
lang['SMILIES_ARE_ON'] : $user->lang['SMILIES_ARE_OFF']; ?> |
|
|
|
lang['ADMIN_SIGNATURE_PREVIEW']; ?> |
|
lang['CONFIRM'], $user->lang['CONFIRM_OPERATION']);
}
else if (!$cancel)
{
if (!$gid)
{
trigger_error($user->lang['NO_GROUP']);
}
if ($error = group_user_del($gid, $user_id))
{
trigger_error($user->lang[$error]);
}
}
break;
}
// Add user to group?
if ($submit)
{
if (!$gid)
{
trigger_error($user->lang['NO_GROUP']);
}
// Add user/s to group
if ($error = group_user_add($gid, $user_id))
{
trigger_error($user->lang[$error]);
}
}
$colspan = 4;
?>
lang['USER_ADMIN_GROUPS']; ?> |
sql_query($sql);
$i = 0;
$group_data = $id_ary = array();
while ($row = $db->sql_fetchrow($result))
{
$type = ($row['group_type'] == GROUP_SPECIAL) ? 'special' : (($row['user_pending']) ? 'pending' : 'normal');
$group_data[$type][$i]['group_id'] = $row['group_id'];
$group_data[$type][$i]['group_name'] = $row['group_name'];
$group_data[$type][$i]['group_leader'] = ($row['group_leader']) ? 1 : 0;
$id_ary[] = $row['group_id'];
$i++;
}
$db->sql_freeresult($result);
// Select box for other groups
$sql = 'SELECT group_id, group_name, group_type
FROM ' . GROUPS_TABLE . '
WHERE group_id NOT IN (' . implode(', ', $id_ary) . ')
ORDER BY group_type DESC, group_name ASC';
$result = $db->sql_query($sql);
$group_options = '';
while ($row = $db->sql_fetchrow($result))
{
$group_options .= '';
}
$db->sql_freeresult($result);
$current_type = '';
foreach ($group_data as $group_type => $data_ary)
{
if ($current_type != $group_type)
{
?>
lang['USER_GROUP_' . strtoupper($group_type)]; ?> |
">lang['G_' . $data['group_name']] : $data['group_name']; ?> |
">lang['GROUP_DEFAULT']; ?>lang['GROUP_DEFAULT'];
}
?> |
">lang['GROUP_DEMOTE'] : $user->lang['GROUP_PROMOTE']; ?> |
">lang['GROUP_DELETE']; ?> |
lang['USER_GROUP_ADD']; ?>: |
lang['CONFIRM'], $user->lang['CONFIRM_OPERATION']);
}
else if (!$cancel)
{
$sql = 'SELECT real_filename
FROM ' . ATTACHMENTS_TABLE . '
WHERE attach_id IN (' . implode(', ', $marked) . ')';
$result = $db->sql_query($sql);
$log_attachments = array();
while ($row = $db->sql_fetchrow($result))
{
$log_attachments[] = $row['real_filename'];
}
$db->sql_freeresult($result);
delete_attachments('attach', $marked);
$log = (sizeof($delete_ids) == 1) ? 'ATTACHMENT_DELETED' : 'ATTACHMENTS_DELETED';
$meesage = (sizeof($delete_ids) == 1) ? $user->lang['ATTACHMENT_DELETED'] : $user->lang['ATTACHMENTS_DELETED'];
add_log('admin', $log, implode(', ', $log_attachments));
trigger_error($message);
}
}
$colspan = 6;
$uri = "admin_users.$phpEx$SID&mode=$mode&action=$action&u=$user_id";
$sk_text = array('a' => $user->lang['SORT_FILENAME'], 'b' => $user->lang['SORT_COMMENT'], 'c' => $user->lang['SORT_EXTENSION'], 'd' => $user->lang['SORT_SIZE'], 'e' => $user->lang['SORT_DOWNLOADS'], 'f' => $user->lang['SORT_POST_TIME'], 'g' => $user->lang['SORT_TOPIC_TITLE']);
$sk_sql = array('a' => 'a.real_filename', 'b' => 'a.comment', 'c' => 'a.extension', 'd' => 'a.filesize', 'e' => 'a.download_count', 'f' => 'a.filetime', 'g' => 't.topic_title');
$sd_text = array('a' => $user->lang['ASCENDING'], 'd' => $user->lang['DESCENDING']);
$s_sort_key = '';
foreach ($sk_text as $key => $value)
{
$selected = ($sk == $key) ? ' selected="selected"' : '';
$s_sort_key .= '';
}
$s_sort_dir = '';
foreach ($sd_text as $key => $value)
{
$selected = ($sd == $key) ? ' selected="selected"' : '';
$s_sort_dir .= '';
}
$order_by = $sk_sql[$sk] . ' ' . (($sd == 'a') ? 'ASC' : 'DESC');
$sql = 'SELECT COUNT(*) as num_attachments
FROM ' . ATTACHMENTS_TABLE . "
WHERE poster_id = $user_id";
$result = $db->sql_query_limit($sql, 1);
$num_attachments = $db->sql_fetchfield('num_attachments', 0, $result);
$db->sql_freeresult($result);
$sql = 'SELECT a.*, t.topic_title
FROM ' . ATTACHMENTS_TABLE . ' a, ' . TOPICS_TABLE . " t
WHERE a.topic_id = t.topic_id
AND a.poster_id = $user_id
ORDER BY $order_by";
$result = $db->sql_query_limit($sql, $config['posts_per_page'], $start);
$row_count = 0;
if ($row = $db->sql_fetchrow($result))
{
$class = 'row2';
?>
# |
">lang['FILENAME']; ?> |
">lang['POST_TIME']; ?> |
">lang['FILESIZE']; ?> |
">lang['DOWNLOADS']; ?> |
lang['DELETE']; ?> |
|
" target="_blank"> lang['TOPIC']; ?>: |
format_date($row['filetime'], $user->lang['DATE_FORMAT']); ?> |
= 1048576) ? (round($row['filesize'] / 1048576 * 100) / 100) . ' ' . $user->lang['MB'] : (($row['filesize'] >= 1024) ? (round($row['filesize'] / 1024 * 100) / 100) . ' ' . $user->lang['KB'] : $row['filesize'] . ' ' . $user->lang['BYTES']); ?> |
|
|
sql_fetchrow($result));
}
$db->sql_freeresult($result);
$pagination = generate_pagination("$uri&sk=$sk&sd=$sd", $num_attachments, $config['topics_per_page'], $start);
?>
|
|