Your IP : 172.28.240.42


Current Path : /var/www/html/clients/rebirth.e-nk.ru/sources/acp_loaders/
Upload File :
Current File : /var/www/html/clients/rebirth.e-nk.ru/sources/acp_loaders/acp_components.php

<?php

/*
+---------------------------------------------------------------------------
|   Invision Power Board
|   ========================================
|   by Matthew Mecham
|   (c) 2004 Invision Power Services
|   Nullified by Terabyte
|   ========================================
+---------------------------------------------------------------------------
|   INVISION POWER BOARD IS NOT FREE SOFTWARE!
|   
+---------------------------------------------------------------------------
|
|   > CP "MYCP" PAGE CLASS
|   > Script written by Matt Mecham
|   > Date started: Wed. 18th August 2004
|
+---------------------------------------------------------------------------
*/

if ( ! defined( 'IN_ACP' ) )
{
	print "<h1>Incorrect access</h1>You cannot access this file directly. If you have recently upgraded, make sure you upgraded 'admin.php'.";
	exit();
}


class acp_components
{
	# Globals
	var $ipsclass;
	
	/*-------------------------------------------------------------------------*/
	// CONSTRUCTOR
	/*-------------------------------------------------------------------------*/
	
	function acp_components()
	{
	}
	
	/*-------------------------------------------------------------------------*/
	// AUTO RUN
	/*-------------------------------------------------------------------------*/
	
	function auto_run()
	{
		$this->ipsclass->html_title = "IPB: Components";
		
		//--------------------------------
		// Get info from DB (Special case)
		//--------------------------------
		
		$this->ipsclass->DB->simple_construct( array( 'select' => '*', 'from' => 'components', 'order' => 'com_position ASC' ) );
		$this->ipsclass->DB->simple_exec();
		
		$this->ipsclass->menu_components = array();
		$another_choice  = array();
		$first_choice    = "";
		$menu_data       = array();
		
		while ( $r = $this->ipsclass->DB->fetch_row() )
		{
			if ( $r['com_section'] AND $r['com_filename'] )
			{
				$another_choice[ $r['com_section'] ] = str_replace( ".php", "", $r['com_filename'] );
				
				if ( ! $first_choice && $r['com_section'] != 'copyright' )
				{
					$first_choice = $r['com_section'];
				}
				
				//--------------------------------
				// Set the default...
				//--------------------------------
				
				$this->ipsclass->menu_components[] = $r;
				
				//--------------------------------
				// Grab menu data
				//--------------------------------
				
				$menu_data[ $r['com_section'] ] = unserialize( $r['com_menu_data'] );
			}
		}
		
		//-----------------------------------------
		// Get default action
		//-----------------------------------------
		
		if ( ! isset( $another_choice[ $this->ipsclass->input['act'] ] ) )
		{
			 $this->ipsclass->input['act'] = $first_choice;
		}
		
		//-----------------------------------------
		// Still got nothing?
		//-----------------------------------------
		
		if ( ! $this->ipsclass->input['act'] )
		{
			 $this->ipsclass->input['act'] = 'default';
			 $another_choice['default']    = 'default';
		}
		
		
		$this->ipsclass->form_code    = 'section=components&amp;act=' . $this->ipsclass->input['act'];
		$this->ipsclass->form_code_js = 'section=components&act='     . $this->ipsclass->input['act'];
		$this->ipsclass->section_code = 'components';
		
		//-----------------------------------------
		// Quick perm check
		//-----------------------------------------
		
		$this->ipsclass->admin->cp_permission_check( $this->ipsclass->section_code.'|' );
		$this->ipsclass->admin->cp_permission_check( $this->ipsclass->section_code.'|'.$this->ipsclass->input['act'] );
		
		//-----------------------------------------
		// Got a code?
		//-----------------------------------------
		
		if ( $this->ipsclass->input['code'] )
		{
			$this->ipsclass->input['code'] = $this->ipsclass->txt_alphanumerical_clean( $this->ipsclass->input['code'] );
			
			if ( is_array( $menu_data[ $this->ipsclass->input['act'] ] ) and count( $menu_data[ $this->ipsclass->input['act'] ] ) )
			{
				foreach( $menu_data[ $this->ipsclass->input['act'] ] as $menu_array )
				{
					if ( preg_match( "/code={$this->ipsclass->input['code']}(&|$)/i", $menu_array['menu_url'] ) )
					{
						$this->ipsclass->admin->cp_permission_check( $this->ipsclass->section_code.'|'.$this->ipsclass->input['act'].':'.$menu_array['menu_permbit'] );
						break;
					}
				}
			}
		}
		
		//-----------------------------------------
		// Require and run (again)
		//-----------------------------------------
		
		require_once( ROOT_PATH.'sources/components_acp/'.$another_choice[ $this->ipsclass->input['act'] ].'.php' );
		$constructor          = 'ad_'.$another_choice[ $this->ipsclass->input['act'] ];
		$runmeagain           = new $constructor;
		$runmeagain->ipsclass =& $this->ipsclass;
		$runmeagain->auto_run();
	}
	
	
	
	
	
}


?>