Перейти к контенту

"Где находится пользователь"


Рекомендуемые сообщения

Как бы прикрутить к своему скрипту идентификацию в форуме - что бы в профиле пользователя, в списке "Кто в онлайне" и тд отображалось что-то разумное, а не "Просмотр главной страницы Форума" ?
Ссылка на комментарий
Поделиться на других сайтах

а более четко?

 

а то я могу вам предложить поменять "Просмотр главной страницы Форума" на "Просмотр форума"...

Ссылка на комментарий
Поделиться на других сайтах

У каждого пользователя есть информация, в какой теме или подфоруме он находится.

Например смотрим "статистика форума", "Полный список по: последним действиям"

Гость Просмотр темы: Обьемный звук (Surround Sound)

Гость Просмотр главной страницы Форума

и т.д.

Если посетитель зашел на самописную страницу, то местонахождение показывается некорректно - или "главная страница", или вообще никак.

Вот хотелось бы подключиться к этой "системе обнаружения". Некоторые моде, например "Forum tree" это умеют делать.

Ссылка на комментарий
Поделиться на других сайтах

ну так в начале прописать в поле location - таблица ibf_sessions, местоположение (а именно часть урла)

 

потом в online.php при разборе этого поля поставить условия на ваши урлы.

Ссылка на комментарий
Поделиться на других сайтах

  • 2 месяца спустя...
ну так в начале прописать в поле location - таблица ibf_sessions, местоположение (а именно часть урла)

 

потом в online.php при разборе этого поля поставить условия на ваши урлы.

А на примере можно продемонстрировать

Ссылка на комментарий
Поделиться на других сайтах

  • 1 месяц спустя...

немного вклинил

смотрим на урл скажем act=calendar

прописываем в фале lang_online.php

$lang['WHERE_calendar'] = "Просмотр календаря";

...

но вот если есть папка http://www.domen.ru/forum/chat

как сделать в списке "Где находится пользователь"

чтоб было "В чате"

или если пользователь находится http://www.domen.ru/kino.php

чтоб было "В кинообзоре"

Ссылка на комментарий
Поделиться на других сайтах

  • 2 месяца спустя...
czech, я думаю он хочет сделать как в IPB2, чтобы в профиле пользователя показывался его статус и если он онлайн то где находится..
Ссылка на комментарий
Поделиться на других сайтах

  • 2 года спустя...
Ну вот если на самопальных страничках находится - это понятно. А если портальная система ИПБ? И грузится у меня она как главная, при просмотре- кто на форуме, показывает Просмотр главной страницы Форума, а хотелось бы что бы просмотр главной страницы Портала или Сайта но такого нет. Есть выход из-этой ситуации?
Ссылка на комментарий
Поделиться на других сайтах

  • 2 недели спустя...
а урл какой при вызове портала?

Урл портала может быть трех видов и выглядят они все так.

 

http://unrealtech.ru/

http://unrealtech.ru/index.php?

http://unrealtech.ru/index.php?act=home

Ссылка на комментарий
Поделиться на других сайтах

$lang['WHERE_home']

 

это на последнюю ссылку, а на первые две зависит от того как там у вас это всё устроено, как index.php внутри описан.

Ссылка на комментарий
Поделиться на других сайтах

Извините за длинный пост, но я пожалуй выложу Индекс.пхп

Собственно вот так все и описано.

За ранее спасибо, если вы поможете в этом деле.

<?php
#apd_set_pprof_trace();

/*
+--------------------------------------------------------------------------
|   Invision Power Board
|   ========================================
|   by Matthew Mecham
|   (c) 2001 - 2005 Invision Power Services
|   http://www.invisionpower.com
|   ========================================
|   Web: http://www.invisionboard.com
|   Email: matt@invisionpower.com
+---------------------------------------------------------------------------
|   INVISION POWER BOARD IS NOT FREE SOFTWARE!
|   http://www.invisionboard.com/?license
+---------------------------------------------------------------------------
|   > $Date: 2008-10-02 11:12:17 -0400 (Thu, 02 Oct 2008) $
|   > $Revision: 2569 $
|   > $Author: matt $
+---------------------------------------------------------------------------
|
|   > Wrapper script
|   > Script written by Matt Mecham
|   > Date started: 14th February 2002
|	> Date updated: IPB 2.1.0: Tue 12 July 2005
|
+--------------------------------------------------------------------------
*/

/**
* Main executable wrapper.
*
* Set-up and load module to run
*
* @package	InvisionPowerBoard
* @author   Matt Mecham
* @version	2.1
*/

/**
* Script type
*
*/
define( 'IPB_THIS_SCRIPT', 'public' );
define( 'IPB_LOAD_SQL'   , 'queries' );

require_once( './init.php' );

//===========================================================================
// MAIN PROGRAM
//===========================================================================

$INFO = array();

//--------------------------------
// Load our classes
//--------------------------------

require_once ROOT_PATH   . "sources/ipsclass.php";
require_once ROOT_PATH   . "sources/classes/class_display.php";
require_once ROOT_PATH   . "sources/classes/class_session.php";
require_once ROOT_PATH   . "sources/classes/class_forums.php";
require_once KERNEL_PATH . "class_converge.php";

if ( file_exists( ROOT_PATH   . "conf_global.php" ) )
{
require_once ROOT_PATH   . "conf_global.php";

// And the LOCALE Begin! 
if ( $INFO['mysql_codepage'] ) {

	switch ($INFO['mysql_codepage']) {
		case 'koi8r': 
			if ( substr(PHP_OS, 0, 3) == 'WIN' )
			{
				setlocale(LC_ALL, 'Russian_Russia.20866');
			} else {
				setlocale(LC_ALL, 'ru_RU.KOI8R');
			}
		break;
		default:
			if ( substr(PHP_OS, 0, 3) == 'WIN' )
			{
				setlocale(LC_ALL, 'Russian_Russia.1251');
			} else {
				setlocale(LC_ALL, 'ru_RU.CP1251');
			}				
	}		
}	
}

# Are we installed?
if( ! $INFO['sql_user'] )
{
$host = $_SERVER['HTTP_HOST'] ? $_SERVER['HTTP_HOST'] : @getenv('HTTP_HOST');
$self = $_SERVER['PHP_SELF'] ? $_SERVER['PHP_SELF'] : @getenv('PHP_SELF');
@header("Location: http://".$host.rtrim(dirname($self), '/\\')."/install/index.php" );
}

# Initiate super-class
$ipsclass	   = new ipsclass();
$ipsclass->vars = $INFO;

//--------------------------------
// The clocks a' tickin'
//--------------------------------

$Debug = new Debug;
$Debug->startTimer();

//--------------------------------
// Load the DB driver and such
//--------------------------------

$ipsclass->init_db_connection();

//--------------------------------
// Set debug mode
//--------------------------------

$ipsclass->DB->set_debug_mode( ( IPS_SQL_DEBUG_MODE ) ? ( isset($_GET['debug']) ? intval($_GET['debug']) : 0 ) : 0 );

//--------------------------------
// INIT other classes
//--------------------------------

$ipsclass->print			=  new display();
$ipsclass->print->ipsclass  =& $ipsclass;

$ipsclass->sess			 =  new session();
$ipsclass->sess->ipsclass   =& $ipsclass;

$ipsclass->forums		   =  new forum_functions();
$ipsclass->forums->ipsclass =& $ipsclass;

//--------------------------------
//  Set up our vars
//--------------------------------

$ipsclass->parse_incoming();

//--------------------------------
//  Set converge
//--------------------------------

$ipsclass->converge = new class_converge( $ipsclass->DB );

//===========================================================================
// Generate choice array
//===========================================================================

$choice = array(
			 "idx"		=> array( "boards"			 , 'boards'	   , array('chatting','birthdays', 'calendar') ),
			 "sc"		 => array( "boards"			 , 'boards'	   , array('chatting','birthdays', 'calendar') ),
			 "sf"		 => array( "forums"			 , 'forums'	   , array('announcements', 'multimod') ),
			 "sr"		 => array( "forums"			 , 'forums'	   , array() ),
			 "st"		 => array( "topics"			 , 'topics'	   , array('badwords','emoticons','attachtypes','bbcode', 'multimod','ranks','profilefields' ) ),
			 "announce"   => array( "announcements"	  , 'announcements', array('ranks' ) ),
			 "login"	  => array( "login"			  , 'login'		, array() ),
			 "post"	   => array( "post"			   , 'post'		 , array('attachtypes','badwords','bbcode','emoticons','ranks' ) ),
			 "reg"		=> array( "register"		   , 'register'	 , array('profilefields') ),

/*/ -- Thanks (by AVol) - Begin -- /*/
			 "thanks"	 => array( "thanks"			 , 'thanks'	   , array() ),
			 /*/ -- Thanks (by AVol) -  End  -- /*/

			 "online"	 => array( "online"			 , 'online'	   , array() ),
			 "members"	=> array( "memberlist"		 , 'memberlist'   , array('ranks','profilefields' ) ),
			 "help"	   => array( "help"			   , 'help'		 , array() ),
			 "search"	 => array( "search"			 , 'search'	   , array('badwords','attachtypes','multimod','ranks' ) ),
			 "mod"		=> array( "moderate"		   , 'moderate'	 , array('attachtypes','multimod','bbcode','emoticons','badwords' ) ),
			 "print"	  => array( "misc/print_page"	, 'printpage'	, array('attachtypes','multimod','ranks' ) ),
			 "forward"	=> array( "misc/forward_page"  , 'forwardpage'  , array() ),
			 "mail"	   => array( "misc/contact_member", 'contactmember', array() ),
			 "report"	 => array( "misc/contact_member", 'contactmember', array() ),
			 "chat"	   => array( "misc/contact_member", 'contactmember', array() ),
			 'boardrules' => array( "misc/contact_member", 'contactmember', array() ),
			 "msg"		=> array( "messenger"		  , 'messenger'	, array('ranks','profilefields','attachtypes','badwords','bbcode','emoticons' ) ),
			 "usercp"	 => array( "usercp"			 , 'usercp'	   , array( 'attachtypes', 'badwords', 'bbcode', 'emoticons', 'profilefields' ) ),
			 "profile"	=> array( "profile"			, 'profile'	  , array('ranks','profilefields','badwords','bbcode','emoticons' ) ),
			 "track"	  => array( "misc/tracker"	   , 'tracker'	  , array() ),
			 "stats"	  => array( "misc/stats"		 , 'stats'		, array() ),
			 "attach"	 => array( "attach"			 , 'attach'	   , array('attachtypes' ) ),
			 'legends'	=> array( 'misc/legends'	   , 'legends'	  , array('badwords','bbcode','emoticons' ) ),
			 'calendar'   => array( "calendar"		   , 'calendar'	 , array('attachtypes','bbcode', 'ranks', 'multimod', 'emoticons', 'badwords', 'calendars', 'profilefields' ) ),
			 'buddy'	  => array( "browsebuddy"		, 'assistant'	, array() ),
			 'mmod'	   => array( "misc/multi_moderate", 'mmod'		 , array('multimod' ) ),
			 'warn'	   => array( "misc/warn"		  , 'warn'		 , array('badwords','bbcode'  ,'emoticons'  ) ),
			 'home'	   => array( 'portal'			 , 'portal'	   , array('portal','attachtypes','multimod','ranks','profilefields' ) ),
			 'module'	 => array( 'modules'			, 'modules'	  , array() ),
			 'task'	   => array( 'taskloader'		 , 'taskloader'   , array() ),
			 'findpost'   => array( 'findpost'		   , 'findpost'	 , array() ),
			 "xmlout"	 => array( "xmlout"			 , 'xmlout'	   , array('attachtypes','multimod','bbcode','ranks','profilefields','emoticons','badwords' ) ),
			 'paysubs'	=> array( 'paysubscriptions'   , 'paysubscriptions' , array() ),
			 'rssout'	 => array( 'rssout'			 , 'rssout'	   , array() ),
			 'captcha'	=> array( 'captcha'			, 'captcha'	, array() ),
			 'component'  => array( 'component'		  , 'component'	, array() ),


'rep'		=> array( 'reputation'		 , 'reputation'   , array() ),




		   );

//===========================================================================
//  Short tags...
//===========================================================================

$ipsclass->input['act'] = isset($ipsclass->input['act']) ? $ipsclass->input['act'] : ( IPB_MAKE_PORTAL_HOMEPAGE ? 'home' : 'idx' );

if( is_array($ipsclass->input['act']) )
{
$ipsclass->input['act'] = ( IPB_MAKE_PORTAL_HOMEPAGE ) ? 'home' : 'idx';
}

//---------------------------------------------------
// Check to make sure the array key exits..
//---------------------------------------------------

if ( ! isset($choice[ strtolower($ipsclass->input['act']) ][0]) )
{
$ipsclass->input['act'] = ( IPB_MAKE_PORTAL_HOMEPAGE ) ? 'home' : 'idx';
}

$ipsclass->input['_low_act'] = strtolower( $ipsclass->input['act'] );

if ( isset($ipsclass->input['showforum']) && $ipsclass->input['showforum'] != "" )
{
$ipsclass->input['act'] = "sf";
$ipsclass->input['f']   = intval($ipsclass->input['showforum']);
}
else if ( isset($ipsclass->input['showtopic']) && $ipsclass->input['showtopic'] != "")
{
$ipsclass->input['act'] = "st";
$ipsclass->input['t']   = intval($ipsclass->input['showtopic']);

//---------------------------------------------------
// Grab and cache the topic now as we need the 'f' attr for
// the skins...
//---------------------------------------------------

$ipsclass->DB->simple_construct( array( 'select' => '*',
										'from'   => 'topics',
										'where'  => "tid=".$ipsclass->input['t'],
							  )	  );

$ipsclass->DB->simple_exec();

$ipsclass->topic_cache = $ipsclass->DB->fetch_row();
$ipsclass->input['f']  = $ipsclass->topic_cache['forum_id'];
}
else if ( isset($ipsclass->input['showuser']) && $ipsclass->input['showuser'] != "")
{
$ipsclass->input['act'] = "profile";
$ipsclass->input['MID'] = intval($ipsclass->input['showuser']);
}
else if ( isset($ipsclass->input['automodule']) && $ipsclass->input['automodule'] != "" )
{
$ipsclass->input['act']	= 'module';
$ipsclass->input['module'] = $ipsclass->input['automodule'];
}
else if ( isset($ipsclass->input['autocom']) && $ipsclass->input['autocom'] != "" )
{
$ipsclass->input['act']	= 'component';
$ipsclass->input['module'] = $ipsclass->input['autocom'];
}
else
{
$ipsclass->input['act'] = ( ! isset($ipsclass->input['act']) || $ipsclass->input['act'] == '' ) ? "idx" : $ipsclass->input['act'];
}

if ( !isset($ipsclass->input['_low_act']) OR !$ipsclass->input['_low_act'] OR $ipsclass->input['_low_act'] == 'idx' OR $ipsclass->input['_low_act'] == 'home' )
{
$ipsclass->input['_low_act'] = strtolower($ipsclass->input['act']);
}

//--------------------------------
// Start off the cache array
//--------------------------------

$ipsclass->cache_array = array_merge( $choice[ $ipsclass->input['_low_act'] ][2], array('skin_remap', 'rss_calendar', 'rss_export', 'components', 'banfilters', 'settings', 'group_cache', 'systemvars', 'skin_id_cache', 'forum_cache', 'moderators', 'stats', 'languages') );

//--------------------------------
// Module? Load INIT class
//--------------------------------

if ( ( $ipsclass->input['act'] == 'module' OR $ipsclass->input['act'] == 'component' ) and $ipsclass->input['module'] )
{
$file = ROOT_PATH.'sources/components_init/'. $ipsclass->txt_alphanumerical_clean( $ipsclass->input['module'] ).'.php';

if ( file_exists( $file ) )
{
	require_once( $file );
	$init_class = new component_init();
	$init_class->ipsclass =& $ipsclass;
	$init_class->run_init();
}
}

//===========================================================================
// Get cache...
//===========================================================================

$ipsclass->init_cache_setup();
$ipsclass->init_load_cache( $ipsclass->cache_array );

//--------------------------------
//  Initialize the FUNC
//--------------------------------

$ipsclass->initiate_ipsclass();

//--------------------------------
//  The rest :D
//--------------------------------

$ipsclass->member	 = $ipsclass->sess->authorise();
$ipsclass->lastclick  = $ipsclass->sess->last_click;
$ipsclass->location   = $ipsclass->sess->location;
$ipsclass->session_id = $ipsclass->sess->session_id; // Used in URLs
$ipsclass->my_session = $ipsclass->sess->session_id; // Used in code

//-----------------------------------------
// Cache md5 check
//-----------------------------------------

$ipsclass->md5_check = $ipsclass->return_md5_check();

//--------------------------------
//  Initialize the forums
//--------------------------------

$ipsclass->forums->strip_invisible = 1;
$ipsclass->forums->forums_init();

//--------------------------------
// Load the skin
//--------------------------------

$ipsclass->load_skin();

$ppu = 0;
$tpu = 0;

if( isset($ipsclass->member['view_prefs']) )
{
list($ppu,$tpu) = explode( "&", $ipsclass->member['view_prefs'] );
}

$ipsclass->vars['display_max_topics'] = ($tpu > 0) ? $tpu : $ipsclass->vars['display_max_topics'];
$ipsclass->vars['display_max_posts']  = ($ppu > 0) ? $ppu : $ipsclass->vars['display_max_posts'];

//===========================================================================
//  Set up the session ID stuff
//===========================================================================

if ( $ipsclass->session_type == 'cookie' )
{
$ipsclass->session_id = "";
$ipsclass->base_url   = $ipsclass->vars['board_url'].'/index.'.$ipsclass->vars['php_ext'].'?';
}
else
{
$ipsclass->base_url = $ipsclass->vars['board_url'].'/index.'.$ipsclass->vars['php_ext'].'?s='.$ipsclass->session_id.'&';
}

$ipsclass->js_base_url = $ipsclass->vars['board_url'].'/index.'.$ipsclass->vars['php_ext'].'?s='.$ipsclass->session_id.'&';

//--------------------------------
//  Set up the forum_read cookie
//--------------------------------

$ipsclass->hdl_forum_read_cookie();

//===========================================================================
//  Set up defaults
//===========================================================================

$ipsclass->skin_id = $ipsclass->skin['_setid'];

$ipsclass->vars['img_url']	   = $ipsclass->vars['ipb_img_url'] ? $ipsclass->vars['ipb_img_url'] . 'style_images/' . $ipsclass->skin['_imagedir'] : 'style_images/' . $ipsclass->skin['_imagedir'];
$ipsclass->vars['AVATARS_URL']   = $ipsclass->vars['ipb_img_url'] ? $ipsclass->vars['ipb_img_url'] . 'style_avatars' : 'style_avatars';
$ipsclass->vars['EMOTICONS_URL'] = $ipsclass->vars['ipb_img_url'] ? $ipsclass->vars['ipb_img_url'] . 'style_emoticons/<#EMO_DIR#>' : 'style_emoticons/<#EMO_DIR#>';
$ipsclass->vars['mime_img']	  = $ipsclass->vars['ipb_img_url'] ? $ipsclass->vars['ipb_img_url'] . 'style_images/<#IMG_DIR#>' : 'style_images/<#IMG_DIR#>';

//--------------------------------
//  Set up our language choice
//--------------------------------

if ( !isset($ipsclass->vars['default_language']) OR $ipsclass->vars['default_language'] == "")
{
$ipsclass->vars['default_language'] = 'ru';
}

//--------------------------------
// Did we choose a language?
//--------------------------------

if ( (isset($ipsclass->input['setlanguage']) AND $ipsclass->input['setlanguage']) AND (isset($ipsclass->input['langid']) AND $ipsclass->input['langid']) AND $ipsclass->member['id'] )
{
if ( is_array( $ipsclass->cache['languages'] ) and count( $ipsclass->cache['languages'] ) )
{
	foreach( $ipsclass->cache['languages'] as $data )
	{
		if ( $data['ldir'] == $ipsclass->input['langid'] )
		{
			$ipsclass->DB->do_update( 'members', array( 'language' => $data['ldir'] ), 'id='.$ipsclass->member['id'] );
			$ipsclass->member['language'] = $data['ldir'];
		}
	}
}
}

$ipsclass->member['udata_avatar'] = $ipsclass->get_avatar( $ipsclass->member['avatar_location'], 1, $ipsclass->member['avatar_size'], $ipsclass->member['avatar_type'], 1 );	
$ipsclass->load_language('lang_global');

//$ipsclass->vars['board_name']

//-------------------------------
// Get avatar and name
//-------------------------------
$ipsclass->member['disable_this_row'] = 1;



$av = $ipsclass->get_avatar_for_head($ipsclass->member['id']);

$ipsclass->member['loginizer'] = null;
if($ipsclass->member['id'] > 0)
{
$ipsclass->member['loginizer'] .= 'Здравствуй: <a href="index.php?showuser='.$ipsclass->member['id'].'" style="color:#eebb13;">'.$av['member_display_name'].'</a>  <a href="'.$ipsclass->base_url.'act=Login&CODE=03&k='.$ipsclass->md5_check.'" title="exit" style="font-size: 90%; color:#eebb13;"><img src="/made_on/menu/logout.png" border="0" alt="Выход" /></a>';	
$ipsclass->member['avatizer'] = '<div style="padding:0;margin:0;border:1px solid #000;">'.$av['avatar'].'</div>';
}
else
{
$ipsclass->member['loginizer'] = '';

$ipsclass->member['avatizer'] = '<br /><br /><i><h1 style="font-size: 15px; color: #eebb13; font-weigth: normal">Аэрография для всех</h1></i><br /><br />
				<i>(<a href="index.php?act=login" style="font-size: 90%; color:#eebb13;">Вход</a> | <a href="index.php?act=reg" style="font-size: 90%; color:#eebb13;">Зарегистрироваться</a>)</i>
				';

}
/*else
{
//guest?
$ipsclass->member['loginizer'] .= 'Hello, <b>'.$av['member_display_name'].'</b>  ';
$ipsclass->member['loginizer'] .= '( <a href="index.php?act=Login&CODE=00" style="color:#ccc;">Log In</a> | <a href="index.php?act=Reg&CODE=00" style="color:#ccc;">Register</a> )<br />';
} */


//echo '<!-- ';
//print_r($ipsclass->vars);
//echo ' -->';

//--------------------------------
// Legacy mode?
//--------------------------------

if ( LEGACY_MODE )
{
$DB	   =& $ipsclass->DB;
$std	  =& $ipsclass;
$ibforums =& $ipsclass;
$forums   =& $ipsclass->forums;
$print	=& $ipsclass->print;
$sess	 =& $ipsclass->sess;

$ipsclass->load_template('skin_global');
$ipsclass->skin_global = $ipsclass->compiled_templates['skin_global'];
}

//===========================================================================
// DECONSTRUCTOR
//===========================================================================

if ( USE_SHUTDOWN and $ipsclass->input['act'] != 'task' )
{
@chdir( ROOT_PATH );
$ROOT_PATH = getcwd();

register_shutdown_function( array( &$ipsclass, 'my_deconstructor') );
}

//===========================================================================
// Force log in / board offline?
//===========================================================================

if ($ipsclass->input['_low_act']   != 'login'  and
$ipsclass->input['_low_act']   != 'reg'	and
$ipsclass->input['_low_act']   != 'xmlout' and
$ipsclass->input['_low_act']   != 'rssout' and
$ipsclass->input['_low_act']   != 'attach' and
$ipsclass->input['_low_act']   != 'task'   and
$ipsclass->input['_low_act']   != 'paysubs' )
{
//-----------------------------------------
// Do we have a display name?
//-----------------------------------------

if ( ! $ipsclass->member['members_display_name'] AND $ipsclass->member['members_created_remote'] )
{
	$pmember = $ipsclass->DB->build_and_exec_query( array( 'select' => '*', 'from' => 'members_partial', 'where' => "partial_member_id=" . $ipsclass->member['id'] ) );

	if ( $pmember['partial_member_id'] )
	{
		$ipsclass->boink_it( $ipsclass->base_url . 'act=reg&CODE=complete_login&mid='.$ipsclass->member['id'].'&key='.$pmember['partial_date'] );
	}
}

//--------------------------------
//  Do we have permission to view
//  the board?
//--------------------------------

if ( $ipsclass->member['g_view_board'] != 1 )
{ 
	$ipsclass->Error( array( 'LEVEL' => 1, 'MSG' => 'no_view_board') );
}

//--------------------------------
//  Is the board offline?
//--------------------------------

if ($ipsclass->vars['board_offline'] == 1)
{
	if ($ipsclass->member['g_access_offline'] != 1)
	{
		$ipsclass->vars['no_reg'] = 1;
		$ipsclass->board_offline();
	}
}

//--------------------------------
//  Is log in enforced?
//--------------------------------

if ( (! $ipsclass->member['id']) and ($ipsclass->vars['force_login'] == 1) )
{
	require ROOT_PATH."sources/action_public/login.php";
	$runme = new login();
	$runme->ipsclass =& $ipsclass;
	$runme->auto_run();

}

//--------------------------------
// Show PURCHASE screen?
// Not enforced
//--------------------------------

if ( !isset($ipsclass->member['sub_end']) OR !$ipsclass->member['sub_end'] )
{
	//--------------------------------
	// 1: No enforce, chosen from reg
	//--------------------------------

	if ( ! $ipsclass->vars['subsm_enforce'] and (isset($ipsclass->member['subs_pkg_chosen']) AND $ipsclass->member['subs_pkg_chosen']) )
	{
		$ipsclass->input['act']	 = 'paysubs';
		$ipsclass->input['CODE']	= 'paymentmethod';
		$ipsclass->input['sub']	 = $ipsclass->member['subs_pkg_chosen'];
		$ipsclass->input['nocp']	= 1;
		$ipsclass->input['msgtype'] = 'fromreg';
	}

	//--------------------------------
	// Show PURCHASE screen?
	// Enforced
	//--------------------------------

	if ( $ipsclass->vars['subsm_enforce'] and $ipsclass->member['mgroup'] == $ipsclass->vars['subsm_nopkg_group'] )
	{
		$ipsclass->input['act']	 = 'paysubs';
		$ipsclass->input['nocp']	= 1;
		$ipsclass->input['msgtype'] = 'force';

		if ( $ipsclass->member['subs_pkg_chosen'] )
		{
			$ipsclass->input['CODE']	= 'paymentmethod';
			$ipsclass->input['sub']	 = $ipsclass->member['subs_pkg_chosen'];
		}
	}
}
}

//--------------------------------
//  Get member avatar and write into main member data
//--------------------------------



//===========================================================================
// REQUIRE AND RUN
//===========================================================================				

if ( $ipsclass->input['act'] == 'home' AND $ipsclass->vars['csite_on'] )
{
require ROOT_PATH."sources/action_public/portal.php";
$csite		   =  new portal();
$csite->ipsclass =& $ipsclass;
$csite->auto_run();
}
else if ( $ipsclass->input['act'] == 'module' AND USE_MODULES )
{
require ROOT_PATH."modules/module_loader.php";
$loader		   =  new module_loader();
$loader->ipsclass =& $ipsclass;
$loader->run_loader();
}
else if ( $ipsclass->input['act'] == 'component' )
{
//print_r($ipsclass->input);
//-----------------------------------
// Readed category ?
//-----------------------------------
if($ipsclass->input['autocom'] == 'gallery' && $ipsclass->input['req'] == 'sc' && isset($ipsclass->input['cat']) && $ipsclass->member['id'] > 0)
{
	// get last post in this cat
	$q1 = 'SELECT MAX(last_pic_date) FROM '.SQL_PREFIX.'gallery_albums WHERE `category_id`='.$_GET['cat'];
	$r1 = mysql_query($q1);
	$s1 = mysql_fetch_row($r1);
	$last_post = $s1[0];

	// get views array
	$q = 'SELECT `gallery_views` FROM '.SQL_PREFIX.'members WHERE `id`='.$ipsclass->member['id'];
	$r = mysql_query($q);
	$s = mysql_fetch_row($r);

	if(isset($s[0]) && !empty($s[0]))
	{
		$views = unserialize($s[0]);

		//else sushestvuet predudushaya zapis o prosmotre
		if(array_key_exists($_GET['cat'], $views))
		{
			//esli data otlichaetsya
			if($views[$_GET['cat']]['last_post_in'] != $last_post)
			{
				$views[$_GET['cat']]['last_post_in'] = $last_post;
				$views = serialize($views);
				$q2 = 'UPDATE '.SQL_PREFIX.'members SET `gallery_views`=\''.$views.'\' WHERE `id`='.$ipsclass->member['id'];
				mysql_query($q2);
			}
		}
		else 
		{
			//esli zapisi ne sushestvuet
			$views[$_GET['cat']]['last_post_in'] = $last_post;
				$views = serialize($views);
				$q2 = 'UPDATE '.SQL_PREFIX.'members SET `gallery_views`=\''.$views.'\' WHERE `id`='.$ipsclass->member['id'];
				mysql_query($q2);
		}
	}
	else 
	{
		//esli zapisei net voobshe
		$views = array();
		$views[$_GET['cat']]['last_post_in'] = $last_post;
		$views = serialize($views);
		$q2 = 'UPDATE '.SQL_PREFIX.'members SET `gallery_views`=\''.$views.'\' WHERE `id`='.$ipsclass->member['id'];
		mysql_query($q2);
	}
} //end module read category

$file = ROOT_PATH.'sources/components_public/'. $ipsclass->txt_alphanumerical_clean( $ipsclass->input['module'] ).'.php';

if ( file_exists( $file ) )
{
	require_once( $file );
	$loader		   =  new component_public();
	$loader->ipsclass =& $ipsclass;
	$loader->run_component();
}
else
{
	@header( "Location: ".$ipsclass->base_url );
}
}
else
{	 
// Require and run
$_pre_load = $ipsclass->memory_debug_make_flag();
require( ROOT_PATH."sources/action_public/".$choice[ strtolower($ipsclass->input['act']) ][0].".php" );
$runme = new $choice[ strtolower($ipsclass->input['act']) ][1];
$runme->ipsclass =& $ipsclass;
$ipsclass->memory_debug_add( "CORE: Loaded ".$choice[ strtolower($ipsclass->input['act']) ][0].".php", $_pre_load );
$runme->auto_run();
}





?>

Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.