Version 2.3.6

This commit is contained in:
Neo committed 2025-12-19 00:26:08 -08:00
1 parent a3bb603c96
commit 19b38c7c74
764 files changed
+143731 -118164

No files matched your search

+77 -18
View File
@@ -1,24 +1,15 @@
<?php
/*
+--------------------------------------------------------------------------
| Invision Power Board 2.2.2
+---------------------------------------------------------------------------
| Invision Power Board
| ========================================
| by Matthew Mecham
| (c) 2001 - 2006 Invision Power Services
| (c) 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 / OPEN SOURCE!
+---------------------------------------------------------------------------
| INVISION POWER BOARD ÍÅ ßÂËßÅÒÑß ÁÅÑÏËÀÒÍÛÌ ÏÐÎÃÐÀÌÌÍÛÌ ÎÁÅÑÏÅ×ÅÍÈÅÌ!
| Ïðàâà íà ÏÎ ïðèíàäëåæàò Invision Power Services
| Ïðàâà íà ïåðåâîä IBResource (http://www.ibresource.ru)
| INVISION POWER BOARD IS NOT FREE SOFTWARE!
| http://www.invisionboard.com
+---------------------------------------------------------------------------
| > $Id$
| > $Revision: 102 $
@@ -86,6 +77,56 @@ class Converge_Server
}
}
/**
* Converge_Server::requestData()
*
* Returns extra data from this application
*
* EACH BATCH MUST BE ORDERED BY ID ASC (low to high)
*
* @param string $auth_key Authentication Key
* @param int $product_id Product ID
* @param int $limit_a SQL limit a
* @param int $limit_b SQL limit b
* @return xml
**/
function requestData( $auth_key, $product_id, $email_address, $getdata_key )
{
//-----------------------------------------
// INIT
//-----------------------------------------
$auth_key = $this->ipsclass->txt_md5_clean( $auth_key );
$product_id = intval( $product_id );
$email_address = $this->ipsclass->parse_clean_value( $email_address );
$getdata_key = $this->ipsclass->parse_clean_value( $getdata_key );
//-----------------------------------------
// Authenticate
//-----------------------------------------
if ( $this->__authenticate( $auth_key, $product_id ) !== FALSE )
{
//-----------------------------------------
// Grab local extension file
//-----------------------------------------
require_once( ROOT_PATH . 'converge_local/apis/local_extension.php' );
$extension = new local_extension( $this->ipsclass );
if ( is_callable( array( $extension, $getdata_key ) ) )
{
$data = @call_user_func( array( $extension, $getdata_key), $email_address );
}
$return = array( 'data' => base64_encode( serialize( $data ) ) );
# return complex data
$this->class_api_server->api_send_reply( $return );
exit();
}
}
/**
* Converge_Server::onMemberDelete()
*
@@ -280,7 +321,7 @@ class Converge_Server
if ( $member['email'] == $old_email_address )
{
$this->ipsclass->DB->do_update( 'members', array( 'username' => $new_email_address ), "id='" . $member['id'] . "'" );
$this->ipsclass->DB->do_update( 'members', array( 'name' => $new_email_address ), "id='" . $member['id'] . "'" );
}
$return = 'SUCCESS';
@@ -341,6 +382,8 @@ class Converge_Server
// Get Data
//-----------------------------------------
/* - This causes all sorts of mass hysteria and mysql madness - no index gets properly used and server will crash
Let's just not send the IP for now. We can worry about this later if it's needed, but converge doesn't use it.
$this->ipsclass->DB->build_query( array( 'select' => 'c.*',
'from' => array( 'members_converge' => 'c' ),
'order' => 'c.converge_id ASC',
@@ -353,6 +396,12 @@ class Converge_Server
'from' => array( 'members' => 'm' ),
)
)
) );*/
$this->ipsclass->DB->build_query( array( 'select' => '*',
'from' => 'members_converge',
'order' => 'converge_id ASC',
'limit' => array( $limit_a, $limit_b ),
) );
$this->ipsclass->DB->exec_query();
@@ -545,7 +594,7 @@ class Converge_Server
* @param string $dst_autocorrect The member's DST autocorrect settings
* @return xml
**/
function convergeLogIn( $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, $extra_data='' )
{
//-----------------------------------------
// INIT
@@ -559,6 +608,7 @@ class Converge_Server
$unix_join_date = intval( $unix_join_date );
$timezone = intval( $timezone );
$dst_autocorrect = intval( $dst_autocorrect );
$extra_data = $this->ipsclass->parse_clean_value( $extra_data );
$return = 'FAILED';
//-----------------------------------------
@@ -567,6 +617,15 @@ class Converge_Server
if ( $this->__authenticate( $auth_key, $product_id ) !== FALSE )
{
//-----------------------------------------
// Extra data?
//-----------------------------------------
if ( $exta_data )
{
$external_data = unserialize( base64_decode( $extra_data ) );
}
//-----------------------------------------
// Get member
//-----------------------------------------
@@ -575,8 +634,6 @@ class Converge_Server
'from' => 'members',
'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!
// FAIL SAFE
@@ -739,6 +796,8 @@ class Converge_Server
//-----------------------------------------
// Create member
//-----------------------------------------
$login_core->tmp_display = 'cvg_' . rand();
$member = $login_core->_create_local_member( $email_address, $md5_once_password, $email_address, $unix_join_date, $ip_address );