Files
IPB/upload/sources/api/api_forums.php
T
2025-12-19 00:24:35 -08:00

140 lines
3.6 KiB
PHP

<?php
/*
+--------------------------------------------------------------------------
| Invision Power Board 2.2.2
| =============================================
| by Matthew Mecham
| (c) 2001 - 2006 Invision Power Services, Inc.
| http://www.invisionpower.com
| =============================================
| Web: http://www.invisionboard.com
| http://www.ibresource.ru/products/invisionpowerboard/
| Time: Monday 05th of March 2007 10:10:54 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)
+---------------------------------------------------------------------------
| > $Date: 2005-10-10 14:08:54 +0100 (Mon, 10 Oct 2005) $
| > $Revision: 23 $
| > $Author: matt $
+---------------------------------------------------------------------------
|
| > API: Languages
| > Module written by Matt Mecham
| > Date started: Wednesday 30th November 2005 (11:40)
|
+--------------------------------------------------------------------------
*/
/**
* API: Ôîðóìîâ
*
* ÏÐÈÌÅÐ ÈÑÏÎËÜÇÎÂÀÍÈß
* <code>
* $api = new api_forums();
* # Îïöèîíàëüíî - åñëè $ipsclass íå ïåðåäàåòñÿ â îáúåêò, îí áóäåò èíèöèàëèçèðîâàí ñàìîñòîÿòåëüíî
* $api->ipsclass =& $this->ipsclass;
* $api->api_init();
* $jump_list = $api->return_forum_jump_option_list( array(1,3,5) );
* </code>
*
* @package InvisionPowerBoard
* @subpackage APIs
* @author Matt Mecham
* @copyright Invision Power Services, Inc.
* @version 2.1
*/
if ( ! defined( 'IPS_API_PATH' ) )
{
/**
* Define classes path
*/
define( 'IPS_API_PATH', dirname(__FILE__) ? dirname(__FILE__) : '.' );
}
if ( ! class_exists( 'api_core' ) )
{
require_once( IPS_API_PATH.'/api_core.php' );
}
/**
* API: Ôîðóìîâ
*
* Êëàññ ïðåäîñòàâëÿåò âñå ìåòîäû API äëÿ ïîëó÷åíèÿ ñïèñêà ôîðóìîâ.
*
* @package InvisionPowerBoard
* @subpackage APIs
* @author Matt Mecham
* @version 2.1
* @since 2.1.0
*/
class api_forums extends api_core
{
/**
* IPS Class Object
*
* @var object
*/
//var $ipsclass;
/*-------------------------------------------------------------------------*/
// Ïîëó÷åíèå ñïèñêà ôîðóìîâ â âèäå ñïèñêà <option></option>
/*-------------------------------------------------------------------------*/
/**
* Âîçâðàùàåò ñïèñîê âñåõ ôîðóìîâ ÁÅÇ òåãà SELECT
* Âíèìàíèå: ìåòîä âîçâðàùàåò ÂÑÅ ôîðóìû áåç ó÷åòà ïðàâ äîñòóïà.
*
* @param array Ìàññèâ ID âûáðàííûõ ôîðóìîâ
* @return string HTML <option> ñïèñîê ôîðóìîâ;
*/
function return_forum_jump_option_list( $selected=array() )
{
//-----------------------------------------
// Get forums...
//-----------------------------------------
$this->ipsclass->forums->forums_init();
$content = $this->ipsclass->forums->forums_forum_jump( 0, 0, 1 );
//-----------------------------------------
// Splice in selected IDs
//-----------------------------------------
if ( is_array( $selected ) and count( $selected ) )
{
foreach( $selected as $id )
{
$content = preg_replace( "#value=([\"'])($id)[\"']#si", "value=\\1\\2\\1 selected='selected'", $content );
}
}
//-----------------------------------------
// Return...
//-----------------------------------------
return $content;
}
}
?>