Version 2.2.2
This commit is contained in:
1 parent
22f1b963ee
commit
a3bb603c96
858 files changed
+479463
-188140
No files matched your search
@@ -1,15 +1,24 @@
|
||||
<?php
|
||||
/*
|
||||
+---------------------------------------------------------------------------
|
||||
| Invision Power Board
|
||||
+--------------------------------------------------------------------------
|
||||
| Invision Power Board 2.2.2
|
||||
| ========================================
|
||||
| by Matthew Mecham
|
||||
| (c) 2006 Invision Power Services
|
||||
| (c) 2001 - 2006 Invision Power Services
|
||||
| http://www.invisionpower.com
|
||||
| ========================================
|
||||
| Web: http://www.invisionboard.com
|
||||
| http://www.ibresource.ru/products/invisionpowerboard/
|
||||
| Time: Monday 05th of March 2007 10:10:55 PM
|
||||
| Release: e3790216629e5a2aaf37070b32237f06
|
||||
| Licence Info: http://www.invisionboard.com/?license
|
||||
| http://www.ibresource.ru/license
|
||||
+---------------------------------------------------------------------------
|
||||
| INVISION POWER BOARD IS NOT FREE SOFTWARE!
|
||||
| http://www.invisionboard.com
|
||||
| INVISION POWER BOARD IS NOT FREE / OPEN SOURCE!
|
||||
+---------------------------------------------------------------------------
|
||||
| INVISION POWER BOARD ÍÅ ßÂËßÅÒÑß ÁÅÑÏËÀÒÍÛÌ ÏÐÎÃÐÀÌÌÍÛÌ ÎÁÅÑÏÅ×ÅÍÈÅÌ!
|
||||
| Ïðàâà íà ÏÎ ïðèíàäëåæàò Invision Power Services
|
||||
| Ïðàâà íà ïåðåâîä IBResource (http://www.ibresource.ru)
|
||||
+---------------------------------------------------------------------------
|
||||
| > $Id$
|
||||
| > $Revision: 102 $
|
||||
@@ -78,7 +87,7 @@ class Converge_Server
|
||||
}
|
||||
|
||||
/**
|
||||
* Converge_Server::on_member_delete()
|
||||
* Converge_Server::onMemberDelete()
|
||||
*
|
||||
* Deletes the member.
|
||||
* Keep in mind that the member may not be in the local DB
|
||||
@@ -94,15 +103,17 @@ class Converge_Server
|
||||
* @param string $multiple_email_addresses Comma delimited list of email addresses
|
||||
* @return xml
|
||||
**/
|
||||
function on_member_delete( $auth_key, $product_id, $multiple_email_addresses='' )
|
||||
function onMemberDelete( $auth_key, $product_id, $multiple_email_addresses='' )
|
||||
{
|
||||
//-----------------------------------------
|
||||
// INIT
|
||||
//-----------------------------------------
|
||||
|
||||
$return = 'FAILED';
|
||||
$emails = explode( ",", $multiple_email_addresses );
|
||||
$emails = explode( ",", $this->ipsclass->DB->add_slashes( $this->ipsclass->parse_clean_value( $multiple_email_addresses ) ) );
|
||||
$member_ids = array();
|
||||
$auth_key = $this->ipsclass->txt_md5_clean( $auth_key );
|
||||
$product_id = intval( $product_id );
|
||||
|
||||
//-----------------------------------------
|
||||
// Authenticate
|
||||
@@ -158,7 +169,7 @@ class Converge_Server
|
||||
}
|
||||
|
||||
/**
|
||||
* Converge_Server::on_password_change()
|
||||
* Converge_Server::onPasswordChange()
|
||||
*
|
||||
* handles new password change
|
||||
*
|
||||
@@ -173,13 +184,17 @@ class Converge_Server
|
||||
* @param string $md5_once_password Plain text password hashed by MD5
|
||||
* @return xml
|
||||
**/
|
||||
function on_password_change( $auth_key, $product_id, $email_address, $md5_once_password )
|
||||
function onPasswordChange( $auth_key, $product_id, $email_address, $md5_once_password )
|
||||
{
|
||||
//-----------------------------------------
|
||||
// INIT
|
||||
//-----------------------------------------
|
||||
|
||||
$return = 'FAILED';
|
||||
$auth_key = $this->ipsclass->txt_md5_clean( $auth_key );
|
||||
$product_id = intval( $product_id );
|
||||
$email_address = $this->ipsclass->parse_clean_value( $email_address );
|
||||
$md5_once_password = $this->ipsclass->txt_md5_clean( $md5_once_password );
|
||||
$return = 'FAILED';
|
||||
|
||||
//-----------------------------------------
|
||||
// Authenticate
|
||||
@@ -199,7 +214,7 @@ class Converge_Server
|
||||
'converge_pass_salt' => str_replace( '\\', "\\\\", $salt )
|
||||
);
|
||||
|
||||
$this->ipsclass->DB->do_update( 'members_converge', $converge, "converge_email='" . $email_address . "'" );
|
||||
$this->ipsclass->DB->do_update( 'members_converge', $converge, "converge_email='" . $this->ipsclass->DB->add_slashes( $email_address ) . "'" );
|
||||
|
||||
$return = 'SUCCESS';
|
||||
|
||||
@@ -210,7 +225,7 @@ class Converge_Server
|
||||
}
|
||||
|
||||
/**
|
||||
* Converge_Server::on_email_change()
|
||||
* Converge_Server::onEmailChange()
|
||||
*
|
||||
* Updates the local app's DB
|
||||
*
|
||||
@@ -225,13 +240,17 @@ class Converge_Server
|
||||
* @param string $new_email_address NEW email address to change
|
||||
* @return xml
|
||||
**/
|
||||
function on_email_change( $auth_key, $product_id, $old_email_address, $new_email_address )
|
||||
function onEmailChange( $auth_key, $product_id, $old_email_address, $new_email_address )
|
||||
{
|
||||
//-----------------------------------------
|
||||
// INIT
|
||||
//-----------------------------------------
|
||||
|
||||
$return = 'FAILED';
|
||||
$auth_key = $this->ipsclass->txt_md5_clean( $auth_key );
|
||||
$product_id = intval( $product_id );
|
||||
$old_email_address = $this->ipsclass->parse_clean_value( $old_email_address );
|
||||
$new_email_address = $this->ipsclass->parse_clean_value( $new_email_address );
|
||||
$return = 'FAILED';
|
||||
|
||||
//-----------------------------------------
|
||||
// Get member
|
||||
@@ -239,7 +258,7 @@ class Converge_Server
|
||||
|
||||
$member = $this->ipsclass->DB->build_and_exec_query( array( 'select' => '*',
|
||||
'from' => 'members',
|
||||
'where' => "email='".$old_email_address."'" ) );
|
||||
'where' => "email='" . $this->ipsclass->DB->add_slashes( $old_email_address ) . "'" ) );
|
||||
|
||||
//-----------------------------------------
|
||||
// Authenticate
|
||||
@@ -249,9 +268,9 @@ class Converge_Server
|
||||
{
|
||||
if ( $old_email_address AND $new_email_address )
|
||||
{
|
||||
$this->ipsclass->DB->do_update( 'members_converge', array( 'converge_email' => $new_email_address ), "converge_email='" . $old_email_address . "'" );
|
||||
$this->ipsclass->DB->do_update( 'members_converge', array( 'converge_email' => $new_email_address ), "converge_email='" . $this->ipsclass->DB->add_slashes( $old_email_address ) . "'" );
|
||||
|
||||
$this->ipsclass->DB->do_update( 'members' , array( 'email' => $new_email_address ), "email='" . $old_email_address . "'" );
|
||||
$this->ipsclass->DB->do_update( 'members' , array( 'email' => $new_email_address ), "email='" . $this->ipsclass->DB->add_slashes( $old_email_address ) . "'" );
|
||||
|
||||
//-----------------------------------------
|
||||
// Update member's username?
|
||||
@@ -275,7 +294,7 @@ class Converge_Server
|
||||
|
||||
|
||||
/**
|
||||
* Converge_Server::import_members()
|
||||
* Converge_Server::importMembers()
|
||||
*
|
||||
* Returns a batch of members to import
|
||||
* Important!
|
||||
@@ -294,8 +313,17 @@ class Converge_Server
|
||||
* @param int $limit_b SQL limit b
|
||||
* @return xml
|
||||
**/
|
||||
function import_members( $auth_key, $product_id, $limit_a, $limit_b )
|
||||
function importMembers( $auth_key, $product_id, $limit_a, $limit_b )
|
||||
{
|
||||
//-----------------------------------------
|
||||
// INIT
|
||||
//-----------------------------------------
|
||||
|
||||
$auth_key = $this->ipsclass->txt_md5_clean( $auth_key );
|
||||
$product_id = intval( $product_id );
|
||||
$limit_a = intval( $limit_a );
|
||||
$limit_b = intval( $limit_b );
|
||||
|
||||
//-----------------------------------------
|
||||
// Authenticate
|
||||
//-----------------------------------------
|
||||
@@ -313,10 +341,19 @@ class Converge_Server
|
||||
// Get Data
|
||||
//-----------------------------------------
|
||||
|
||||
$this->ipsclass->DB->build_query( array( 'select' => '*',
|
||||
'from' => 'members_converge',
|
||||
'order' => 'converge_id ASC',
|
||||
'limit' => array( $limit_a, $limit_b ) ) );
|
||||
$this->ipsclass->DB->build_query( array( 'select' => 'c.*',
|
||||
'from' => array( 'members_converge' => 'c' ),
|
||||
'order' => 'c.converge_id ASC',
|
||||
'limit' => array( $limit_a, $limit_b ),
|
||||
'add_join' => array(
|
||||
array(
|
||||
'type' => 'left',
|
||||
'select' => 'm.ip_address',
|
||||
'where' => 'm.email=c.converge_email',
|
||||
'from' => array( 'members' => 'm' ),
|
||||
)
|
||||
)
|
||||
) );
|
||||
|
||||
$this->ipsclass->DB->exec_query();
|
||||
|
||||
@@ -326,6 +363,7 @@ class Converge_Server
|
||||
$members[ $row['converge_id'] ] = array( 'email_address' => $row['converge_email'],
|
||||
'pass_salt' => $row['converge_pass_salt'],
|
||||
'password' => $row['converge_pass_hash'],
|
||||
'ip_address' => $row['ip_address'],
|
||||
'join_date' => $row['converge_joined'] );
|
||||
}
|
||||
|
||||
@@ -344,7 +382,7 @@ class Converge_Server
|
||||
}
|
||||
|
||||
/**
|
||||
* Converge_Server::get_members_info()
|
||||
* Converge_Server::getMembersInfo()
|
||||
*
|
||||
* IP.Converge uses this to gather how many users the local application has,
|
||||
* and the last ID entered into the local application’s member table.
|
||||
@@ -357,8 +395,15 @@ class Converge_Server
|
||||
* @param int $product_id Product ID
|
||||
* @return xml
|
||||
**/
|
||||
function get_members_info( $auth_key, $product_id )
|
||||
function getMembersInfo( $auth_key, $product_id )
|
||||
{
|
||||
//-----------------------------------------
|
||||
// INIT
|
||||
//-----------------------------------------
|
||||
|
||||
$auth_key = $this->ipsclass->txt_md5_clean( $auth_key );
|
||||
$product_id = intval( $product_id );
|
||||
|
||||
//-----------------------------------------
|
||||
// Authenticate
|
||||
//-----------------------------------------
|
||||
@@ -383,7 +428,7 @@ class Converge_Server
|
||||
}
|
||||
|
||||
/**
|
||||
* Converge_Server::converge_log_out()
|
||||
* Converge_Server::convergeLogOut()
|
||||
*
|
||||
* Logs in the member out of local application
|
||||
*
|
||||
@@ -397,13 +442,16 @@ class Converge_Server
|
||||
* @param string $email_address Email address of user logged in
|
||||
* @return xml
|
||||
**/
|
||||
function converge_log_out( $auth_key, $product_id, $email_address='' )
|
||||
function convergeLogOut( $auth_key, $product_id, $email_address='' )
|
||||
{
|
||||
//-----------------------------------------
|
||||
// INIT
|
||||
//-----------------------------------------
|
||||
|
||||
$update = array();
|
||||
$auth_key = $this->ipsclass->txt_md5_clean( $auth_key );
|
||||
$product_id = intval( $product_id );
|
||||
$email_address = $this->ipsclass->parse_clean_value( $email_address );
|
||||
$update = array();
|
||||
|
||||
//-----------------------------------------
|
||||
// Authenticate
|
||||
@@ -417,7 +465,7 @@ class Converge_Server
|
||||
|
||||
$member = $this->ipsclass->DB->build_and_exec_query( array( 'select' => '*',
|
||||
'from' => 'members',
|
||||
'where' => "email='".$email_address."'" ) );
|
||||
'where' => "email='" . $this->ipsclass->DB->add_slashes( $email_address ) . "'" ) );
|
||||
|
||||
//-----------------------------------------
|
||||
// If we've got a member, delete their session
|
||||
@@ -471,7 +519,7 @@ class Converge_Server
|
||||
}
|
||||
|
||||
/**
|
||||
* Converge_Server::converge_log_in()
|
||||
* Converge_Server::convergeLogIn()
|
||||
*
|
||||
* Logs in the member to the local application
|
||||
*
|
||||
@@ -497,13 +545,21 @@ class Converge_Server
|
||||
* @param string $dst_autocorrect The member's DST autocorrect settings
|
||||
* @return xml
|
||||
**/
|
||||
function converge_log_in( $auth_key, $product_id, $email_address='', $md5_once_password='', $ip_address='', $unix_join_date='', $timezone=0, $dst_autocorrect=0 )
|
||||
function convergeLogIn( $auth_key, $product_id, $email_address='', $md5_once_password='', $ip_address='', $unix_join_date='', $timezone=0, $dst_autocorrect=0 )
|
||||
{
|
||||
//-----------------------------------------
|
||||
// INIT
|
||||
//-----------------------------------------
|
||||
|
||||
$return = 'FAILED';
|
||||
$auth_key = $this->ipsclass->txt_md5_clean( $auth_key );
|
||||
$product_id = intval( $product_id );
|
||||
$email_address = $this->ipsclass->parse_clean_value( $email_address );
|
||||
$md5_once_password = $this->ipsclass->txt_md5_clean( $md5_once_password );
|
||||
$ip_address = $this->ipsclass->parse_clean_value( $ip_address );
|
||||
$unix_join_date = intval( $unix_join_date );
|
||||
$timezone = intval( $timezone );
|
||||
$dst_autocorrect = intval( $dst_autocorrect );
|
||||
$return = 'FAILED';
|
||||
|
||||
//-----------------------------------------
|
||||
// Authenticate
|
||||
@@ -517,7 +573,9 @@ class Converge_Server
|
||||
|
||||
$this->ipsclass->member = $this->ipsclass->DB->build_and_exec_query( array( 'select' => '*',
|
||||
'from' => 'members',
|
||||
'where' => "email='".$email_address."'" ) );
|
||||
'where' => "email='" . $this->ipsclass->DB->add_slashes( $email_address ) . "'" ) );
|
||||
|
||||
#$this->class_api_server->xmlrpc->_add_debug( "Found $email_address - ".$this->ipsclass->member['id'] );
|
||||
|
||||
//-----------------------------------------
|
||||
// No such user? Create one!
|
||||
@@ -568,9 +626,9 @@ class Converge_Server
|
||||
|
||||
$this->class_api_server->api_send_reply( array( 'complete' => 1,
|
||||
'response' => $return,
|
||||
'session_id' => $session->session_id,
|
||||
'member_id' => $session->member['id'],
|
||||
'log_in_key' => $session->member['member_login_key'] ) );
|
||||
'session_id' => $session['_session_id'],
|
||||
'member_id' => $session['id'],
|
||||
'log_in_key' => $session['member_login_key'] ) );
|
||||
exit();
|
||||
}
|
||||
}
|
||||
@@ -656,7 +714,7 @@ class Converge_Server
|
||||
|
||||
$member = $this->ipsclass->DB->build_and_exec_query( array( 'select' => '*',
|
||||
'from' => 'members',
|
||||
'where' => "email='".$email_address."'" ) );
|
||||
'where' => "email='" . $this->ipsclass->DB->add_slashes( $email_address ) . "'" ) );
|
||||
|
||||
if ( $member['id'] )
|
||||
{
|
||||
|
||||
Reference in new issue
Block a user