mirror of
https://github.com/phpbb/phpbb.git
synced 2025-02-22 02:50:00 +01:00
274 lines
11 KiB
PHP
274 lines
11 KiB
PHP
<?php
|
|
// -------------------------------------------------------------
|
|
//
|
|
// $Id$
|
|
//
|
|
// FILENAME : admin_jabber.php
|
|
// STARTED : Sat Feb 13, 2001
|
|
// COPYRIGHT : © 2001, 2003 phpBB Group
|
|
// WWW : http://www.phpbb.com/
|
|
// LICENCE : GPL vs2.0 [ see /docs/COPYING ]
|
|
//
|
|
// -------------------------------------------------------------
|
|
|
|
// TODO
|
|
// Check/enter/update transport info
|
|
|
|
if (!empty($setmodules))
|
|
{
|
|
if (!$auth->acl_get('a_server'))
|
|
{
|
|
return;
|
|
}
|
|
|
|
$module['GENERAL']['IM'] = basename(__FILE__) . $SID;
|
|
|
|
return;
|
|
}
|
|
|
|
define('IN_PHPBB', 1);
|
|
// Include files
|
|
$phpbb_root_path = '../';
|
|
$phpEx = substr(strrchr(__FILE__, '.'), 1);
|
|
require('pagestart.' . $phpEx);
|
|
include($phpbb_root_path . 'includes/functions_jabber.'.$phpEx);
|
|
|
|
// Do we have general permissions?
|
|
if (!$auth->acl_get('a_server'))
|
|
{
|
|
trigger_error($user->lang['NO_ADMIN']);
|
|
}
|
|
|
|
// Grab some basic parameters
|
|
$submit = (isset($_POST['submit'])) ? true : false;
|
|
|
|
$jab_enable = request_var('jab_enable', $config['jab_enable']);
|
|
$jab_host = request_var('jab_host', $config['jab_host']);
|
|
$jab_port = request_var('jab_port', $config['jab_port']);
|
|
$jab_username = request_var('jab_username', $config['jab_username']);
|
|
$jab_password = request_var('jab_password', $config['jab_password']);
|
|
$jab_resource = request_var('jab_resource', $config['jab_resource']);
|
|
|
|
$jabber = new jabber();
|
|
$error = array();
|
|
|
|
// Setup the basis vars for jabber connection
|
|
$jabber->server = $jab_host;
|
|
$jabber->port = ($jab_port) ? $jab_port : 5222;
|
|
$jabber->username = $jab_username;
|
|
$jabber->password = $jab_password;
|
|
$jabber->resource = $jab_resource;
|
|
|
|
// Are changing (or initialising) a new host or username? If so run some checks and
|
|
// try to create account if it doesn't exist
|
|
if ($jab_enable)
|
|
{
|
|
if ($jab_host != $config['jab_host'] || $jab_username != $config['jab_username'])
|
|
{
|
|
if (!$jabber->Connect())
|
|
{
|
|
trigger_error('Could not connect to Jabber server', E_USER_ERROR);
|
|
}
|
|
|
|
// First we'll try to authorise using this account, if that fails we'll
|
|
// try to create it.
|
|
if (!($result = $jabber->SendAuth()))
|
|
{
|
|
if (($result = $jabber->AccountRegistration($config['board_email'], $config['sitename'])) <> 2)
|
|
{
|
|
|
|
$error[] = ($result == 1) ? $user->lang['ERR_JAB_USERNAME'] : sprintf($user->lang['ERR_JAB_REGISTER'], $result);
|
|
}
|
|
else
|
|
{
|
|
$message = $user->lang['JAB_REGISTERED'];
|
|
$log = 'JAB_REGISTER';
|
|
}
|
|
}
|
|
else
|
|
{
|
|
$message = $user->lang['JAB_CHANGED'];
|
|
$log = 'JAB_CHANGED';
|
|
}
|
|
|
|
sleep(1);
|
|
$jabber->Disconnect();
|
|
}
|
|
else if ($jab_password != $config['jab_password'])
|
|
{
|
|
if (!$jabber->Connect())
|
|
{
|
|
trigger_error('Could not connect to Jabber server', E_USER_ERROR);
|
|
}
|
|
|
|
if (!$jabber->SendAuth())
|
|
{
|
|
trigger_error('Could not authorise on Jabber server', E_USER_ERROR);
|
|
}
|
|
$jabber->SendPresence(NULL, NULL, 'online');
|
|
|
|
if (($result = $jabber->ChangePassword($jab_password)) <> 2)
|
|
{
|
|
$error[] = ($result == 1) ? $user->lang['ERR_JAB_PASSCHG'] : sprintf($user->lang['ERR_JAB_PASSFAIL'], $result);
|
|
}
|
|
else
|
|
{
|
|
$message = $user->lang['JAB_PASS_CHANGED'];
|
|
$log = 'JAB_PASSCHG';
|
|
}
|
|
|
|
sleep(1);
|
|
$jabber->Disconnect();
|
|
}
|
|
}
|
|
|
|
// Pull relevant config data
|
|
$sql = 'SELECT *
|
|
FROM ' . CONFIG_TABLE . "
|
|
WHERE config_name LIKE 'jab_%'";
|
|
$result = $db->sql_query($sql);
|
|
|
|
while ($row = $db->sql_fetchrow($result))
|
|
{
|
|
$config_name = $row['config_name'];
|
|
$config_value = $row['config_value'];
|
|
|
|
$default_config[$config_name] = $config_value;
|
|
$new[$config_name] = (isset($_POST[$config_name])) ? request_var($config_name, '') : $default_config[$config_name];
|
|
|
|
if ($submit && !sizeof($error))
|
|
{
|
|
set_config($config_name, $new[$config_name]);
|
|
}
|
|
}
|
|
|
|
if ($submit && !sizeof($error))
|
|
{
|
|
add_log('admin', 'LOG_' . $log);
|
|
trigger_error($message);
|
|
}
|
|
|
|
|
|
|
|
// Output the page
|
|
adm_page_header($user->lang['IM']);
|
|
|
|
$jab_enable_yes = ($new['jab_enable']) ? 'checked="checked"' : '';
|
|
$jab_enable_no = (!$new['jab_enable']) ? 'checked="checked"' : '';
|
|
$jab_aim_enable_yes = ($new['jab_aim_enable']) ? 'checked="checked"' : '';
|
|
$jab_aim_enable_no = (!$new['jab_aim_enable']) ? 'checked="checked"' : '';
|
|
$jab_icq_enable_yes = ($new['jab_icq_enable']) ? 'checked="checked"' : '';
|
|
$jab_icq_enable_no = (!$new['jab_icq_enable']) ? 'checked="checked"' : '';
|
|
$jab_msn_enable_yes = ($new['jab_msn_enable']) ? 'checked="checked"' : '';
|
|
$jab_msn_enable_no = (!$new['jab_msn_enable']) ? 'checked="checked"' : '';
|
|
$jab_yim_enable_yes = ($new['jab_yim_enable']) ? 'checked="checked"' : '';
|
|
$jab_yim_enable_no = (!$new['jab_yim_enable']) ? 'checked="checked"' : '';
|
|
|
|
?>
|
|
<h1><?php echo $user->lang['IM']; ?></h1>
|
|
|
|
<p><?php echo $user->lang['IM_EXPLAIN']; ?></p>
|
|
|
|
<form method="post" action="<?php echo "admin_jabber.$phpEx$SID"; ?>"><table class="bg" width="95%" cellspacing="1" cellpadding="4" border="0" align="center">
|
|
<tr>
|
|
<th colspan="2"><?php echo $user->lang['IM']; ?></th>
|
|
</tr>
|
|
<?php
|
|
|
|
if (sizeof($error))
|
|
{
|
|
|
|
?>
|
|
<tr>
|
|
<td class="row3" colspan="2" align="center"><span style="color:red"><?php echo implode('<br />', $error); ?></td>
|
|
</tr>
|
|
<?php
|
|
|
|
}
|
|
|
|
?>
|
|
<tr>
|
|
<td class="row1" width="40%"><b><?php echo $user->lang['JAB_ENABLE']; ?>: </b><br /><span class="gensmall"><?php echo $user->lang['JAB_ENABLE_EXPLAIN']; ?></span></td>
|
|
<td class="row2"><input type="radio" name="jab_enable" value="1"<?php echo $jab_enable_yes; ?> /><?php echo $user->lang['ENABLED']; ?> <input type="radio" name="jab_enable" value="0"<?php echo $jab_enable_no; ?> /><?php echo $user->lang['DISABLED']; ?></td>
|
|
</tr>
|
|
<tr>
|
|
<td class="row1" width="40%"><b><?php echo $user->lang['JAB_SERVER']; ?>: </b><br /><span class="gensmall"><?php echo sprintf($user->lang['JAB_SERVER_EXPLAIN'], '<a href="http://www.jabber.org/user/publicservers.php" target="_blank">', '</a>'); ?></span></td>
|
|
<td class="row2"><input class="post" type="text" name="jab_host" value="<?php echo $new['jab_host']; ?>" /></td>
|
|
</tr>
|
|
<tr>
|
|
<td class="row1" width="40%"><b><?php echo $user->lang['JAB_PORT']; ?>: </b><br /><span class="gensmall"><?php echo $user->lang['JAB_PORT_EXPLAIN']; ?></span></td>
|
|
<td class="row2"><input class="post" type="text" name="jab_port" value="<?php echo $new['jab_port']; ?>" /></td>
|
|
</tr>
|
|
<tr>
|
|
<td class="row1"><b><?php echo $user->lang['JAB_USERNAME']; ?>: </b><br /><span class="gensmall"><?php echo $user->lang['JAB_USERNAME_EXPLAIN']; ?></span></td>
|
|
<td class="row2"><input class="post" type="text" name="jab_username" value="<?php echo $new['jab_username']; ?>" /></td>
|
|
</tr>
|
|
<tr>
|
|
<td class="row1"><b><?php echo $user->lang['JAB_PASSWORD']; ?>: </b></td>
|
|
<td class="row2"><input class="post" type="text" name="jab_password" value="<?php echo $new['jab_password']; ?>" /></td>
|
|
</tr>
|
|
<tr>
|
|
<td class="row1"><b><?php echo $user->lang['JAB_RESOURCE']; ?>: </b><br /><span class="gensmall"><?php echo $user->lang['JAB_RESOURCE_EXPLAIN']; ?></span></td>
|
|
<td class="row2"><input class="post" type="text" name="jab_resource" value="<?php echo $new['jab_resource']; ?>" /></td>
|
|
</tr>
|
|
<tr>
|
|
<th colspan="2"><?php echo $user->lang['JAB_TRANSPORTS']; ?></th>
|
|
</tr>
|
|
<tr>
|
|
<td class="row1" width="40%"><b><?php echo $user->lang['JAB_AIM_ENABLE']; ?>: </b></span></td>
|
|
<td class="row2"><input type="radio" name="jab_aim_enable" value="1"<?php echo $jab_aim_enable_yes; ?> /><?php echo $user->lang['ENABLED']; ?> <input type="radio" name="jab_aim_enable" value="0"<?php echo $jab_aim_enable_no; ?> /><?php echo $user->lang['DISABLED']; ?></td>
|
|
</tr>
|
|
<tr>
|
|
<td class="row1"><b><?php echo $user->lang['AIM_USERNAME']; ?>: </b><br /><span class="gensmall"><?php echo sprintf($user->lang['AIM_USERNAME_EXPLAIN'], '<a href="http://my.screenname.aol.com/_cqr/homePg/hpController/controller.psp?siteId=snshomepage" target="_blank">', '</a>'); ?></span></td>
|
|
<td class="row2"><input class="post" type="text" name="jab_aim_user" value="<?php echo $new['jab_aim_user']; ?>" /></td>
|
|
</tr>
|
|
<tr>
|
|
<td class="row1"><b><?php echo $user->lang['AIM_PASSWORD']; ?>: </b></td>
|
|
<td class="row2"><input class="post" type="text" name="jab_aim_pass" value="<?php echo $new['jab_aim_pass']; ?>" /></td>
|
|
</tr>
|
|
<tr>
|
|
<td class="row1" width="40%"><b><?php echo $user->lang['JAB_ICQ_ENABLE']; ?>: </b></span></td>
|
|
<td class="row2"><input type="radio" name="jab_icq_enable" value="1"<?php echo $jab_icq_enable_yes; ?> /><?php echo $user->lang['ENABLED']; ?> <input type="radio" name="jab_icq_enable" value="0"<?php echo $jab_icq_enable_no; ?> /><?php echo $user->lang['DISABLED']; ?></td>
|
|
</tr>
|
|
<tr>
|
|
<td class="row1"><b><?php echo $user->lang['ICQ_USERNAME']; ?>: </b><br /><span class="gensmall"><?php echo sprintf($user->lang['ICQ_USERNAME_EXPLAIN'], '<a href="http://go.icq.com/register/" target="_blank">', '</a>'); ?></span></td>
|
|
<td class="row2"><input class="post" type="text" name="jab_icq_user" value="<?php echo $new['jab_icq_user']; ?>" /></td>
|
|
</tr>
|
|
<tr>
|
|
<td class="row1"><b><?php echo $user->lang['ICQ_PASSWORD']; ?>: </b></td>
|
|
<td class="row2"><input class="post" type="text" name="jab_icq_pass" value="<?php echo $new['jab_icq_pass']; ?>" /></td>
|
|
</tr>
|
|
<tr>
|
|
<td class="row1" width="40%"><b><?php echo $user->lang['JAB_MSN_ENABLE']; ?>: </b></span></td>
|
|
<td class="row2"><input type="radio" name="jab_msn_enable" value="1"<?php echo $jab_msn_enable_yes; ?> /><?php echo $user->lang['ENABLED']; ?> <input type="radio" name="jab_msn_enable" value="0"<?php echo $jab_msn_enable_no; ?> /><?php echo $user->lang['DISABLED']; ?></td>
|
|
</tr>
|
|
<tr>
|
|
<td class="row1"><b><?php echo $user->lang['MSN_USERNAME']; ?>: </b><br /><span class="gensmall"><?php echo sprintf($user->lang['MSN_USERNAME_EXPLAIN'], '<a href="http://www.passport.net/Consumer/default.asp?lc=1033" target="_blank">', '</a>'); ?></span></td>
|
|
<td class="row2"><input class="post" type="text" name="jab_msn_user" value="<?php echo $new['jab_msn_user']; ?>" /></td>
|
|
</tr>
|
|
<tr>
|
|
<td class="row1"><b><?php echo $user->lang['MSN_PASSWORD']; ?>: </b></td>
|
|
<td class="row2"><input class="post" type="text" name="jab_msn_pass" value="<?php echo $new['jab_msn_pass']; ?>" /></td>
|
|
</tr>
|
|
<tr>
|
|
<td class="row1" width="40%"><b><?php echo $user->lang['JAB_YIM_ENABLE']; ?>: </b></span></td>
|
|
<td class="row2"><input type="radio" name="jab_yim_enable" value="1"<?php echo $jab_yim_enable_yes; ?> /><?php echo $user->lang['ENABLED']; ?> <input type="radio" name="jab_yim_enable" value="0"<?php echo $jab_yim_enable_no; ?> /><?php echo $user->lang['DISABLED']; ?></td>
|
|
</tr>
|
|
<tr>
|
|
<td class="row1"><b><?php echo $user->lang['YIM_USERNAME']; ?>: </b><br /><span class="gensmall"><?php echo sprintf($user->lang['YIM_USERNAME_EXPLAIN'], '<a href="http://edit.yahoo.com/config/eval_register?.src=pg&.done=http://messenger.yahoo.com" target="_blank">', '</a>'); ?></span></td>
|
|
<td class="row2"><input class="post" type="text" name="jab_yim_user" value="<?php echo $new['jab_yim_user']; ?>" /></td>
|
|
</tr>
|
|
<tr>
|
|
<td class="row1"><b><?php echo $user->lang['YIM_PASSWORD']; ?>: </b></td>
|
|
<td class="row2"><input class="post" type="text" name="jab_yim_pass" value="<?php echo $new['jab_yim_pass']; ?>" /></td>
|
|
</tr>
|
|
<tr>
|
|
<td class="cat" colspan="2" align="center"><input class="btnmain" type="submit" name="submit" value="<?php echo $user->lang['SUBMIT']; ?>" /> <input class="btnlite" type="reset" value="<?php echo $user->lang['RESET']; ?>" /></td>
|
|
</tr>
|
|
</table></form>
|
|
|
|
<?php
|
|
|
|
adm_page_footer();
|
|
|
|
?>
|