NutPort 1.0.2 mit phpBB 2.0.18??

Du hast Probleme beim Einbau oder bei der Benutzung eines Mods? In diesem Forum bist du richtig.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.0, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Antworten
JazzP
Mitglied
Beiträge: 47
Registriert: 30.11.2002 22:07
Wohnort: Steinenbronn

NutPort 1.0.2 mit phpBB 2.0.18??

Beitrag von JazzP »

Hallo ich wollte nun mal mein altes Board 2.0.6 updaten, doch jetzt hab ich folgendes Prob. Wenn ich die aktuelle 2.0.18 neuinstalliere und jetzt das NutPort einfüge dann zeigt er mir im AdminPanel nicht mehr die Meneinträge auf der Linken seite an. ich denke es liegt an der datei: admin_portal.php die im Verzeichnis /admin/ liegt. Wenn ich diese testweise rausscheisse zeigt es mir das Panel wieder an aber ich kann halt das Form nicht administrieren. Vl kann einer mir helfen. Hier der Code.

Code: Alles auswählen

<?php
/***************************************************************************
 *                            admin_portal.php
 *                            -------------------
 *   begin                : Sunday 2nd November 2003
 *   copyright            : (C) 2003 Robert Laverick
 *   email                : robert@scabserver.com
 *
 *
 ***************************************************************************/

/***************************************************************************
 *
 *   This program is free software; you can redistribute it and/or modify
 *   it under the terms of the GNU General Public License as published by
 *   the Free Software Foundation; either version 2 of the License, or
 *   (at your option) any later version.
 *
 ***************************************************************************/

define('IN_PHPBB', 1);

if( !empty($setmodules) )
{
	$filename = basename(__FILE__);
	$module['Forums']['Portal'] = $filename;

	return;
}

//
// Load default header
//
$no_page_header = TRUE;
$phpbb_root_path = './../';
require($phpbb_root_path . 'extension.inc');
require('./pagestart.' . $phpEx);
include($phpbb_root_path . 'includes/functions_post.'.$phpEx);
include($phpbb_root_path . 'includes/bbcode.'.$phpEx);

//
// function to test if nutport is installed
//

function is_installed()
{
	global $board_config;

	if(isset($board_config['nutport_installed']))
	{
		return true;
	}
	else
	{
		return false;
	}
}

function do_install()
{
	global $db;

	if(!defined('PORTAL_TABLE'))
	{
		message_die(GENERAL_ERROR, "You need to complete the modifications to the php files before install can proceed (constants.php)", "", __LINE__, __FILE__);
	}

	$sql = 'CREATE TABLE IF NOT EXISTS ' . PORTAL_TABLE . ' (
		portal_id mediumint(8) NOT NULL auto_increment,
		portal_order mediumint(8) NOT NULL default \'0\',
		portal_title varchar(60) NOT NULL default \'\',
		portal_description text,
		portal_bbcode_id varchar(10) NOT NULL default \'\',
		portal_use_url tinyint(1) default NULL,
		portal_forum smallint(5) NOT NULL default \'0\',
		portal_url varchar(250) NOT NULL default \'\',
		portal_list_limit mediumint(8) NOT NULL default \'0\',
		portal_ascending tinyint(1) default NULL,
		portal_nodate tinyint(1) default NULL,
		portal_button_name varchar(100) NOT NULL default \'\',
		portal_button_image varchar(100) NOT NULL default \'\',
		portal_navbar tinyint(1) default NULL,
		portal_login tinyint(1) default NULL,
		portal_online tinyint(1) default NULL,
		portal_latest text default NULL,
		portal_poll smallint(5) default NULL,
		PRIMARY KEY  (portal_id)
		)';

	if( !$result = $db->sql_query($sql) )
	{
		message_die(GENERAL_ERROR, "Couldn't create NutPort tables", "", __LINE__, __FILE__, $sql);
	}

	$sql = "SELECT MIN(forum_id) as Min_Forum FROM " . FORUMS_TABLE;

	if( !$result = $db->sql_query($sql) )
	{
		message_die(GENERAL_ERROR, "Getting Minimum Forum ID", "", __LINE__, __FILE__, $sql);
	}
	$defaults = $db->sql_fetchrow($result);

	$sql = "SELECT forum_id FROM " . FORUMS_TABLE . " WHERE auth_read = 0";

	if( !$result = $db->sql_query($sql) )
	{
	   message_die(GENERAL_ERROR, "Couldn't populate NutPort tables", "", __LINE__, __FILE__, $sql);
	}

	$default_latest_forums = array();
	while ($forum = $db->sql_fetchrow($result))
	{
		$default_latest_forums[] = intval($forum['forum_id']);
	}

	$sql = 'INSERT INTO `' . PORTAL_TABLE . '` (`portal_id`, `portal_order`, `portal_title`, `portal_description`,
		`portal_bbcode_id`, `portal_use_url`, `portal_forum`, `portal_url`, `portal_list_limit`, `portal_ascending`,
		`portal_nodate`, `portal_button_name`, `portal_button_image`, `portal_navbar`, `portal_login`, `portal_online`,
		`portal_latest`, `portal_poll`)
	VALUES (\'1\', \'1\', \'My Nutport\', \'Example page created by NutPort Install, You can change this text via the admin page\', \'0\', NULL, \'' . $defaults['Min_Forum'] . '\', \'\',
		\'5\', \'1\', NULL, \'My Page\', \'\', \'1\', \'1\', \'1\', \'' . implode($default_latest_forums, ',') . '\', \'0\');';

	if( !$result = $db->sql_query($sql) )
	{
	   message_die(GENERAL_ERROR, "Couldn't populate NutPort tables", "", __LINE__, __FILE__, $sql);
	}

	$sql = 'INSERT INTO ' . CONFIG_TABLE . ' (config_name, config_value) VALUES (\'nutport_installed\',\'1\')';

	if( !$result = $db->sql_query($sql) )
	{
	   message_die(GENERAL_ERROR, "Couldn't complete NutPort install", "", __LINE__, __FILE__, $sql);
	}

	$uid = 1234567;
	$message = 'NutPort Install is now complete. <br /><br />Click <a href="' . append_sid('../portal.php') . '" target="_top">'.
		'Here</a> to view your portal page<br /><br />Click <a href="' . append_sid('portal_admin.php') . '">Here</a> to go to portal Administration'.
		'<br /><br />Click <a href="http://www.scabserver.com/php">Here</a> to check for Nutport information and update at d-Ark Developments';

	message_die(GENERAL_MESSAGE, bbencode_second_pass($message, $uid), "", __FILE__, __LINE__);
}

// function to generate a combo box style list
// returns as string
// by Robert Laverick
// robert@scabserver.com

function get_list($mode, $id, $select)
{
	global $db;

	switch($mode)
	{
		case 'pages':
			$table = PORTAL_TABLE;
			$idfield = 'portal_id';
			$namefield = 'portal_title';
			break;

		case 'forums':
			$table = FORUMS_TABLE;
			$idfield = 'forum_id';
			$namefield = 'forum_name';
			break;

		default:
			message_die(GENERAL_ERROR, "Wrong mode for generating select list", "", __LINE__, __FILE__);
			break;
	}

	$sql = "SELECT *
		FROM $table";
	if( $select == 0 )
	{
		$sql .= " WHERE $idfield <> $id";
	}

	if( !$result = $db->sql_query($sql) )
	{
		message_die(GENERAL_ERROR, "Couldn't get list of $mode", "", __LINE__, __FILE__, $sql);
	}

	$list = "";

	while( $row = $db->sql_fetchrow($result) )
	{
		$s = "";
		if ($row[$idfield] == $id)
		{
			$s = " selected=\"selected\"";
		}
		$list .= "<option value=\"$row[$idfield]\"$s>" . $row[$namefield] . "</option>\n";
	}
	return($list);
}

// function to generate a check box group
// returns as string
// by Robert Laverick
// robert@scabserver.com

function get_grp($mode, $id, $select, $name)
{
	global $db;

	switch($mode)
	{
		case 'pages':
			$table = PORTAL_TABLE;
			$idfield = 'portal_id';
			$namefield = 'portal_title';
			break;

		case 'forums':
			$table = FORUMS_TABLE;
			$idfield = 'forum_id';
			$namefield = 'forum_name';
			break;

		default:
			message_die(GENERAL_ERROR, "Wrong mode for generating select list", "", __LINE__, __FILE__);
			break;
	}

	$sql = "SELECT *
		FROM $table";
	if( $select == 0 && count($id) > 0)
	{
		$sql .= " WHERE not $idfield in (" . implode($id, ", ") . ")";
	}

	if( !$result = $db->sql_query($sql) )
	{
		message_die(GENERAL_ERROR, "Couldn't get list of $mode", "", __LINE__, __FILE__, $sql);
	}

	$list = "";

	while( $row = $db->sql_fetchrow($result) )
	{
		$s = "";
		if (in_array($row[$idfield], $id))
		{
			$s = " checked=\"checked\"";
		}
		$list .= "<label><input type=\"checkbox\" name=\"" . $name . "[]\" value=\"" . $row[$idfield] . "\"$s /> " . $row[$namefield] . "</label>\n";
	}
	return($list);
}

//function

//// NOTE: This function is straight from includes/functions_post.php, I just changes the path to the smiley images
//
// Fill smiley templates (or just the variables) with smileys
// Either in a window or inline
//
function generate_smilies2($mode, $page_id)
{
	global $db, $board_config, $template, $lang, $images, $theme, $phpEx, $phpbb_root_path;
	global $user_ip, $session_length, $starttime;
	global $userdata;

	$inline_columns = 4;
	$inline_rows = 5;
	$window_columns = 8;

	if ( $mode == 'window' )
	{
		$userdata = session_pagestart($user_ip, $page_id);
		init_userprefs($userdata);

		$gen_simple_header = TRUE;

		$page_title = $lang['Review_topic'] . " - $topic_title";
		include($phpbb_root_path . 'includes/page_header.'.$phpEx);

		$template->set_filenames(array(
			'smiliesbody' => 'posting_smilies.tpl')
		);
	}

	$sql = "SELECT emoticon, code, smile_url  
		FROM " . SMILIES_TABLE . "
		ORDER BY smilies_id";
	if ( $result = $db->sql_query($sql) )
	{
		$num_smilies = 0;
		$rowset = array();
		while ( $row = $db->sql_fetchrow($result) )
		{
			if ( empty($rowset[$row['smile_url']]) )
			{
				$rowset[$row['smile_url']]['code'] = str_replace('\\', '\\\\', str_replace("'", "\\'", $row['code']));
				$rowset[$row['smile_url']]['emoticon'] = $row['emoticon'];
				$num_smilies++;
			}
		}

		if ( $num_smilies )
		{
			$smilies_count = ( $mode == 'inline' ) ? min(19, $num_smilies) : $num_smilies;
			$smilies_split_row = ( $mode == 'inline' ) ? $inline_columns - 1 : $window_columns - 1;

			$s_colspan = 0;
			$row = 0;
			$col = 0;

			while ( list($smile_url, $data) = @each($rowset) )
			{
				if ( !$col )
				{
					$template->assign_block_vars('smilies_row', array());
				}

				$template->assign_block_vars('smilies_row.smilies_col', array(
					'SMILEY_CODE' => $data['code'],

// NUTTZY - changed the path to the smilely images
//					'SMILEY_IMG' => $board_config['smilies_path'] . '/' . $smile_url,
					'SMILEY_IMG' => '../' . $board_config['smilies_path'] . '/' . $smile_url,

					'SMILEY_DESC' => $data['emoticon'])
				);

				$s_colspan = max($s_colspan, $col + 1);

				if ( $col == $smilies_split_row )
				{
					if ( $mode == 'inline' && $row == $inline_rows - 1 )
					{
						break;
					}
					$col = 0;
					$row++;
				}
				else
				{
					$col++;
				}
			}

			if ( $mode == 'inline' && $num_smilies > $inline_rows * $inline_columns )
			{
				$template->assign_block_vars('switch_smilies_extra', array());

				$template->assign_vars(array(
					'L_MORE_SMILIES' => $lang['More_emoticons'],
//					'U_MORE_SMILIES' => append_sid("../posting.$phpEx?mode=smilies"))
					'U_MORE_SMILIES' => append_sid("admin_portal.$phpEx?mode=smilies"))
				);
			}

			$template->assign_vars(array(
				'L_EMOTICONS' => $lang['Emoticons'],
				'L_CLOSE_WINDOW' => $lang['Close_window'],
				'S_SMILIES_COLSPAN' => $s_colspan)
			);
		}
	}

	if ( $mode == 'window' )
	{
		$template->pparse('smiliesbody');

		include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
	}
}

function generate_help($mode, $page_id)
{
	global $db, $board_config, $template, $lang, $images, $theme, $phpEx, $phpbb_root_path;
	global $user_ip, $session_length, $starttime;
	global $userdata;

	$userdata = session_pagestart($user_ip, $page_id);
	init_userprefs($userdata);

	$gen_simple_header = TRUE;

	$page_title = $lang['Review_topic'] . " - $topic_title";
	include($phpbb_root_path . 'includes/page_header.'.$phpEx);

	$template->set_filenames(array(
		'helpbody' => 'admin/portal_help.tpl')
	);

	$template->assign_vars(array(
		'L_PORTAL_HELP' => $lang['Portal_Help'])
	);

	

	$i = 0 ;
	$params = array(
		$lang['Page_Name']	=> $lang['Page_Name_Help'],
		$lang['Description_body'] => $lang['Description_body_Help'],
		$lang['Portal_Destination']	=> $lang['Portal_Destination_Help'],
		$lang['List_Limit']	=> $lang['List_Limit_Help'],
		$lang['Posts_Order']	=> $lang['Posts_Order_Help'],
		$lang['Display_Date']	=> $lang['Display_Date_Help'],
		$lang['Button_Name']	=> $lang['Button_Name_Help'],
		$lang['Button_Image']	=> $lang['Button_Image_Help'],
		$lang['Show_Navbar']	=> $lang['Show_Navbar_Help'],
		$lang['Show_Login']	=> $lang['Show_Login_Help'],
		$lang['Show_Online']	=> $lang['Show_Online_Help'],
		$lang['Show_Latest']	=> $lang['Show_Latest_Help'],
		$lang['Show_Poll']	=> $lang['Show_Poll_Help']
	);

	$i = 0;
	foreach( $params as $question => $answer )
	{
		$row_class = ( !($i % 2) ) ? $theme['td_class1'] : $theme['td_class2'];

		$template->assign_block_vars('help_row', array(
			'ROW_CLASS' => $row_class,
			'HELP_QUESTION' => $question,
			'HELP_ANSWER' => $answer )
		);

		$i++ ;
	}

	$template->pparse('helpbody');

	include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
}

function renumber_order()
{
	global $db;

	$table = PORTAL_TABLE;
	$idfield = 'portal_id';
	$orderfield = 'portal_order';

	$sql = "SELECT * FROM $table";
	$sql .= " ORDER BY $orderfield ASC";

	if( !$result = $db->sql_query($sql) )
	{
		message_die(GENERAL_ERROR, "Couldn't get list of Categories", "", __LINE__, __FILE__, $sql);
	}

	$i = 10;
	$inc = 10;

	while( $row = $db->sql_fetchrow($result) )
	{
		$sql = "UPDATE $table
			SET $orderfield = $i
			WHERE $idfield = " . $row[$idfield];
		if( !$db->sql_query($sql) )
		{
			message_die(GENERAL_ERROR, "Couldn't update order fields", "", __LINE__, __FILE__, $sql);
		}
		$i += $inc;
	}

}

//
// Start program proper
//

if(isset($HTTP_GET_VARS['mode']) || isset($HTTP_POST_VARS['mode']))
{
	$mode = (isset($HTTP_POST_VARS['mode'])) ? $HTTP_POST_VARS['mode'] : $HTTP_GET_VARS['mode'];
}
else
{
	$mode = '';
}


if(!is_installed() && $mode != 'install')
{
	message_die(GENERAL_MESSAGE, "Would you like to install nutport?<br /><br /><a href=\"" . append_sid("./admin_portal.$phpEx?mode=install") . "\">Yes</a>&nbsp;&nbsp;&nbsp;&nbsp;<a href=\"../index.php\" target=\"_top\">No</a>");
}
else
{

	if(isset($HTTP_GET_VARS['portal']) || isset($HTTP_POST_VARS['portal']))
	{
		$portal_id = intval((isset($HTTP_POST_VARS['portal'])) ? $HTTP_POST_VARS['portal'] : $HTTP_GET_VARS['portal']);
	}
	else
	{
		$portal_id = 0;
	}


	switch($mode)
	{
		case 'install':
			do_install();
		break;

		case 'editportal':
			$mode = 'edit';

			// Generate smilies listing for page output
			generate_smilies2('inline', PAGE_POSTING);

			//
			// Output the authorisation details if an id was
			// specified
			//
			$template->set_filenames(array(
				'body' => 'admin/portal_edit.tpl')
			);

			$sql = "SELECT n.*
				FROM " . PORTAL_TABLE . " n
				WHERE portal_id = $portal_id
				ORDER BY n.portal_order ASC " ;
			if ( !($result = $db->sql_query($sql)) )
			{
				message_die(GENERAL_ERROR, "Couldn't obtain portal list", "", __LINE__, __FILE__, $sql);
			}

			$portal_rows = $db->sql_fetchrowset($result);
			$db->sql_freeresult($result);

					$message = $portal_rows[0]['portal_description'] ;
			if ( $portal_rows[0]['portal_bbcode_id'] != '' )
			{
				$message = preg_replace('/\:(([a-z0-9]:)?)' . $portal_rows[0]['portal_bbcode_id'] . '/s', '', $message);
			}

			$message = str_replace('<', '<', $message);
			$message = str_replace('>', '>', $message);
			$message = str_replace('<br />', "\n", $message);

			$use_url = $portal_rows[0]['portal_use_url'] ;
			$forum_id = $portal_rows[0]['portal_forum'] ;
			$portal_url = str_replace('"', '\"', urldecode($portal_rows[0]['portal_url']));
			$portal_title = $portal_rows[0]['portal_title'] ;
			$list_limit = $portal_rows[0]['portal_list_limit'] ;
			$order_asc = $portal_rows[0]['portal_ascending'] ;
			$display_date = $portal_rows[0]['portal_nodate'] ;
			$button_name = $portal_rows[0]['portal_button_name'] ;
			$button_image = $portal_rows[0]['portal_button_image'] ;
			$show_navbar = $portal_rows[0]['portal_navbar'] ;
			$show_login = $portal_rows[0]['portal_login'] ;
			$show_online = $portal_rows[0]['portal_online'] ;
			$show_latest = explode(',', $portal_rows[0]['portal_latest']) ;
			$show_poll = $portal_rows[0]['portal_poll'] ;

			$template->assign_vars(array(
				'PAGE_NAME' => $portal_title,
				'MESSAGE' => $message,
				'FORUM_SELECT' => $select_list,
				'LIST_LIMIT' => $list_limit,
				'USE_URL' => ( $use_url == 1 ) ? 'checked="checked"' : '',
				'USE_FORUM' => ( $use_url == 0) ? 'checked="checked"' : '',
				'PORTAL_URL' => $portal_url,
				'POSTS_ORDER_ASC' => ( $order_asc ) ? 'checked="checked"' : '',
				'POSTS_ORDER_DSC' => ( !$order_asc ) ? 'checked="checked"' : '',
				'DISPLAY_DATE_YES' => ( !$display_date ) ? 'checked="checked"' : '',
				'DISPLAY_DATE_NO' => ( $display_date ) ? 'checked="checked"' : '',
				'BUTTON_NAME' => $button_name,
				'BUTTON_IMAGE' => $button_image,
				'SHOW_NAVBAR_YES' => ( $show_navbar ) ? 'checked="checked"' : '',
				'SHOW_NAVBAR_NO' => ( !$show_navbar ) ? 'checked="checked"' : '',
				'SHOW_LOGIN_YES' => ( $show_login ) ? 'checked="checked"' : '',
				'SHOW_LOGIN_NO' => ( !$show_login ) ? 'checked="checked"' : '',
				'SHOW_ONLINE_YES' => ( $show_online ) ? 'checked="checked"' : '',
				'SHOW_ONLINE_NO' => ( !$show_online ) ? 'checked="checked"' : '',
				'GRP_LATEST_SELECT' => get_grp('forums',$show_latest, 1, 'latest'),
				'POLL_SELECT' => get_list('forums', $show_poll, 1),
				'FORUM_SELECT' => get_list('forums', $forum_id, 1),
				'L_PORTAL_A' => $lang['Edit_Portal'],
				'L_OPTIONS' => $lang['Options'],
				'L_SUBMIT' => $lang['Submit'],
				'L_YES' => $lang['Yes'],
				'L_NO' => $lang['No'],
				'L_DEST_FORUM' => $lang['Dest_Forum'],
				'L_DEST_URL' => $lang['Dest_URL'],
				'L_ASC' => $lang['Ascending'],
				'L_DSC' => $lang['Desending'],
				'L_OPTION_INFO' => $lang['Options_Info'],
				'A_OPTION_INFO' => append_sid("admin_portal.$phpEx?mode=help"),

				'L_PAGE_NAME' => $lang['Page_Name'],
				'L_DESCRIPTION' => $lang['Description_body'],
				'L_PORTAL_DESTINATION' => $lang['Portal_Destination'],	// NOTE: need to select set one
				'L_LIST_LIMIT' => $lang['List_Limit'],
				'L_POSTS_ORDER' => $lang['Posts_Order'],
				'L_DISPLAY_DATE' => $lang['Display_Date'],
				'L_BUTTON_NAME' => $lang['Button_Name'],
				'L_BUTTON_IMAGE' => $lang['Button_Image'],
				'L_SHOW_NAVBAR' => $lang['Show_Navbar'],
				'L_SHOW_LOGIN' => $lang['Show_Login'],
				'L_SHOW_ONLINE' => $lang['Show_Online'],
				'L_SHOW_LATEST' => $lang['Show_Latest'],
				'L_SHOW_POLL' => $lang['Show_Poll'],
				'L_POLL_NONE' => $lang['No_Poll'],

				'L_BBCODE_B_HELP' => $lang['bbcode_b_help'],
				'L_BBCODE_I_HELP' => $lang['bbcode_i_help'],
				'L_BBCODE_U_HELP' => $lang['bbcode_u_help'],
				'L_BBCODE_Q_HELP' => $lang['bbcode_q_help'],
				'L_BBCODE_C_HELP' => $lang['bbcode_c_help'],
				'L_BBCODE_L_HELP' => $lang['bbcode_l_help'],
				'L_BBCODE_O_HELP' => $lang['bbcode_o_help'],
				'L_BBCODE_P_HELP' => $lang['bbcode_p_help'],
				'L_BBCODE_W_HELP' => $lang['bbcode_w_help'],
				'L_BBCODE_A_HELP' => $lang['bbcode_a_help'],
				'L_BBCODE_S_HELP' => $lang['bbcode_s_help'],
				'L_BBCODE_F_HELP' => $lang['bbcode_f_help'],

				'L_EMPTY_MESSAGE' => $lang['Empty_message'],

				'L_FONT_COLOR' => $lang['Font_color'],
				'L_COLOR_DEFAULT' => $lang['color_default'],
				'L_COLOR_DARK_RED' => $lang['color_dark_red'],
				'L_COLOR_RED' => $lang['color_red'],
				'L_COLOR_ORANGE' => $lang['color_orange'],
				'L_COLOR_BROWN' => $lang['color_brown'],
				'L_COLOR_YELLOW' => $lang['color_yellow'],
				'L_COLOR_GREEN' => $lang['color_green'],
				'L_COLOR_OLIVE' => $lang['color_olive'],
				'L_COLOR_CYAN' => $lang['color_cyan'],
				'L_COLOR_BLUE' => $lang['color_blue'],
				'L_COLOR_DARK_BLUE' => $lang['color_dark_blue'],
				'L_COLOR_INDIGO' => $lang['color_indigo'],
				'L_COLOR_VIOLET' => $lang['color_violet'],
				'L_COLOR_WHITE' => $lang['color_white'],
				'L_COLOR_BLACK' => $lang['color_black'],

				'L_FONT_SIZE' => $lang['Font_size'],
				'L_FONT_TINY' => $lang['font_tiny'],
				'L_FONT_SMALL' => $lang['font_small'],
				'L_FONT_NORMAL' => $lang['font_normal'],
				'L_FONT_LARGE' => $lang['font_large'],
				'L_FONT_HUGE' => $lang['font_huge'],

				'L_BBCODE_CLOSE_TAGS' => $lang['Close_Tags'],
				'L_STYLES_TIP' => $lang['Styles_tip'],

				'S_POST_ACTION' => append_sid("admin_portal.$phpEx"),
				'S_HIDDEN_FORM_FIELDS' => $s_hidden_fields,
				'S_MODE' => 'save_editportal',
				'S_PORTAL_ID' => $portal_id)
			);
			break;
		case 'newportal':
			$mode = 'new';

			// Generate smilies listing for page output
			generate_smilies2('inline', PAGE_POSTING);

			//
			// Output the authorisation details if an id was
			// specified
			//
			$template->set_filenames(array(
				'body' => 'admin/portal_edit.tpl')
			);

			$message = 'Body text for the title to this page' ;
			$use_url = 0 ;
			$forum_id = 999 ;
			$portal_title = (isset($HTTP_POST_VARS['newpagename'])) ? htmlspecialchars($HTTP_POST_VARS['newpagename']) : 'Page Title'  ;
			$list_limit = 5 ;
			$order_asc = true ;
			$display_date = false ;
			$button_name = (isset($HTTP_POST_VARS['newpagename'])) ? htmlspecialchars($HTTP_POST_VARS['newpagename']) : 'New Button' ;
			$button_image = '' ;
			$show_navbar = true ;
			$show_login = true ;
			$show_online = true ;

			$template->assign_vars(array(
				'PAGE_NAME' => $portal_title,
				'MESSAGE' => $message,
				'FORUM_SELECT' => $select_list,
				'LIST_LIMIT' => $list_limit,
				'USE_URL' => ( $use_url == 1 ) ? 'checked="checked"' : '',
				'USE_FORUM' => ( $use_url == 0 ) ? 'checked="checked"' : '',
				'POSTS_ORDER_ASC' => ( $order_asc ) ? 'checked="checked"' : '',
				'POSTS_ORDER_DSC' => ( !$order_asc ) ? 'checked="checked"' : '',
				'DISPLAY_DATE_YES' => ( !$display_date ) ? 'checked="checked"' : '',
				'DISPLAY_DATE_NO' => ( $display_date ) ? 'checked="checked"' : '',
				'BUTTON_NAME' => $button_name,
				'BUTTON_IMAGE' => $button_image,
				'SHOW_NAVBAR_YES' => ( $show_navbar ) ? 'checked="checked"' : '',
				'SHOW_NAVBAR_NO' => ( !$show_navbar ) ? 'checked="checked"' : '',
				'SHOW_LOGIN_YES' => ( $show_login ) ? 'checked="checked"' : '',
				'SHOW_LOGIN_NO' => ( !$show_login ) ? 'checked="checked"' : '',
				'SHOW_ONLINE_YES' => ( $show_online ) ? 'checked="checked"' : '',
				'SHOW_ONLINE_NO' => ( !$show_online ) ? 'checked="checked"' : '',
				'GRP_LATEST_SELECT' => get_grp('forums',array(), 1, 'latest'),
				'POLL_SELECT' => get_list('forums',0,1),
				'FORUM_SELECT' => get_list('forums',1,1),
				'L_PORTAL_A' => $lang['Edit_Portal'],
				'L_OPTIONS' => $lang['Options'],
				'L_SUBMIT' => $lang['Submit'],
				'L_YES' => $lang['Yes'],
				'L_NO' => $lang['No'],
				'L_DEST_FORUM' => $lang['Dest_Forum'],
				'L_DEST_URL' => $lang['Dest_URL'],
				'L_ASC' => $lang['Ascending'],
				'L_DSC' => $lang['Desending'],
				'L_OPTION_INFO' => $lang['Options_Info'],
				'A_OPTION_INFO' => append_sid("admin_portal.$phpEx?mode=help"),

				'L_PAGE_NAME' => $lang['Page_Name'],
				'L_DESCRIPTION' => $lang['Description_body'],
				'L_PORTAL_DESTINATION' => $lang['Portal_Destination'],	// NOTE: need to select set one
				'L_LIST_LIMIT' => $lang['List_Limit'],
				'L_POSTS_ORDER' => $lang['Posts_Order'],
				'L_DISPLAY_DATE' => $lang['Display_Date'],
				'L_BUTTON_NAME' => $lang['Button_Name'],
				'L_BUTTON_IMAGE' => $lang['Button_Image'],
				'L_SHOW_NAVBAR' => $lang['Show_Navbar'],
				'L_SHOW_LOGIN' => $lang['Show_Login'],
				'L_SHOW_ONLINE' => $lang['Show_Online'],
				'L_SHOW_LATEST' => $lang['Show_Latest'],
				'L_SHOW_POLL' => $lang['Show_Poll'],
				'L_POLL_NONE' => $lang['No_Poll'],

				'L_BBCODE_B_HELP' => $lang['bbcode_b_help'],
				'L_BBCODE_I_HELP' => $lang['bbcode_i_help'],
				'L_BBCODE_U_HELP' => $lang['bbcode_u_help'],
				'L_BBCODE_Q_HELP' => $lang['bbcode_q_help'],
				'L_BBCODE_C_HELP' => $lang['bbcode_c_help'],
				'L_BBCODE_L_HELP' => $lang['bbcode_l_help'],
				'L_BBCODE_O_HELP' => $lang['bbcode_o_help'],
				'L_BBCODE_P_HELP' => $lang['bbcode_p_help'],
				'L_BBCODE_W_HELP' => $lang['bbcode_w_help'],
				'L_BBCODE_A_HELP' => $lang['bbcode_a_help'],
				'L_BBCODE_S_HELP' => $lang['bbcode_s_help'],
				'L_BBCODE_F_HELP' => $lang['bbcode_f_help'],

				'L_EMPTY_MESSAGE' => $lang['Empty_message'],

				'L_FONT_COLOR' => $lang['Font_color'],
				'L_COLOR_DEFAULT' => $lang['color_default'],
				'L_COLOR_DARK_RED' => $lang['color_dark_red'],
				'L_COLOR_RED' => $lang['color_red'],
				'L_COLOR_ORANGE' => $lang['color_orange'],
				'L_COLOR_BROWN' => $lang['color_brown'],
				'L_COLOR_YELLOW' => $lang['color_yellow'],
				'L_COLOR_GREEN' => $lang['color_green'],
				'L_COLOR_OLIVE' => $lang['color_olive'],
				'L_COLOR_CYAN' => $lang['color_cyan'],
				'L_COLOR_BLUE' => $lang['color_blue'],
				'L_COLOR_DARK_BLUE' => $lang['color_dark_blue'],
				'L_COLOR_INDIGO' => $lang['color_indigo'],
				'L_COLOR_VIOLET' => $lang['color_violet'],
				'L_COLOR_WHITE' => $lang['color_white'],
				'L_COLOR_BLACK' => $lang['color_black'],

				'L_FONT_SIZE' => $lang['Font_size'],
				'L_FONT_TINY' => $lang['font_tiny'],
				'L_FONT_SMALL' => $lang['font_small'],
				'L_FONT_NORMAL' => $lang['font_normal'],
				'L_FONT_LARGE' => $lang['font_large'],
				'L_FONT_HUGE' => $lang['font_huge'],

				'L_BBCODE_CLOSE_TAGS' => $lang['Close_Tags'],
				'L_STYLES_TIP' => $lang['Styles_tip'],

				'S_POST_ACTION' => append_sid("admin_portal.$phpEx"),
				'S_HIDDEN_FORM_FIELDS' => $s_hidden_fields,
				'S_MODE' => 'save_newportal')
			);

		break;
		case 'save_editportal':
			$mode = 'edit_save';

			$page_title = ( isset($HTTP_POST_VARS['page_title']) ) ? str_replace("\'", "''", $HTTP_POST_VARS['page_title']) : '';
			$use_url = ( isset($HTTP_POST_VARS['use_url']) ) ? ( ($HTTP_POST_VARS['use_url'] == 0) ? 0 : 1 ) : 0;
			$forum_select = ( isset($HTTP_POST_VARS['forum_select']) ) ? intval($HTTP_POST_VARS['forum_select']) : 0;
			$portal_url = ( isset($HTTP_POST_VARS['portal_url']) ) ? str_replace("\'", "''", urlencode($HTTP_POST_VARS['portal_url'])) : '';
			$list_limit = ( isset($HTTP_POST_VARS['list_limit']) ) ? intval($HTTP_POST_VARS['list_limit']) : 0;
			$posts_order = ( isset($HTTP_POST_VARS['posts_order']) ) ? ( ($HTTP_POST_VARS['posts_order']) ? 1 : 0 ) : 0;
			$display_date = ( isset($HTTP_POST_VARS['display_date']) ) ? ( ($HTTP_POST_VARS['display_date']) ? 0 : 1 ) : 1;
			$button_name = ( !empty($HTTP_POST_VARS['button_name']) ) ? str_replace("\'", "''", $HTTP_POST_VARS['button_name']) : '';
			$button_image = ( isset($HTTP_POST_VARS['button_image']) ) ? str_replace("\'", "''", urlencode($HTTP_POST_VARS['button_image'])) : '';
			$show_navbar = ( isset($HTTP_POST_VARS['show_navbar']) ) ? ( ($HTTP_POST_VARS['show_navbar']) ? 1 : 0 ) : 0;
			$show_login = ( isset($HTTP_POST_VARS['show_login']) ) ? ( ($HTTP_POST_VARS['show_login']) ? 1 : 0 ) : 0;
			$show_online = ( isset($HTTP_POST_VARS['show_online']) ) ? ( ($HTTP_POST_VARS['show_online']) ? 1 : 0 ) : 0;
			$show_poll = (isset($HTTP_POST_VARS['show_poll']) ? intval($HTTP_POST_VARS['show_poll']) : 1);

			$show_latest = (isset($HTTP_POST_VARS['latest']) ? $HTTP_POST_VARS['latest'] : array());
			if(!is_array($show_latest))
			{
				$show_latest = array($show_latest);
			}
			foreach($show_latest as $k => $v)
			{
				$show_latest[$k] = intval($v);
			}

			// settings for message and bbcode
			$message = ( !empty($HTTP_POST_VARS['message']) ) ? $HTTP_POST_VARS['message'] : '';
			$bbcode_uid = '';

			// Check message
			if ( !empty($message) )
			{
				$bbcode_uid = make_bbcode_uid();
				$message = prepare_message(trim($message), 1, 1, 1, $bbcode_uid);
				$message = str_replace("\'", "''", $message);
			}

			$sql = "UPDATE " . PORTAL_TABLE . "
				SET     portal_title = '$page_title',
					portal_description = '$message',
					portal_bbcode_id = '$bbcode_uid',
					portal_use_url = $use_url,
					portal_forum = $forum_select,
					portal_url = '$portal_url',
					portal_list_limit = $list_limit,
					portal_ascending = $posts_order,
					portal_nodate = $display_date,
					portal_button_name = '$button_name',
					portal_button_image = '$button_image',
					portal_navbar = $show_navbar,
					portal_login = $show_login,
					portal_online = $show_online,
					portal_latest = '" . implode($show_latest, ',') . "',
					portal_poll = $show_poll
				WHERE   portal_id = $portal_id";

			if ( !$db->sql_query($sql) )
			{
				message_die(GENERAL_ERROR, 'Error in posting', '', __LINE__, __FILE__, $sql);
			}

			$message = $lang['Portal_added'];
			$message .= '<br /><br />' . sprintf($lang['Click_return_portal'],  '<a href="' . append_sid("admin_portal.$phpEx") . '">', "</a>");
			message_die(GENERAL_MESSAGE, $message);
		break;
		case 'save_newportal':
			$mode = 'new_save';

			$page_title = ( isset($HTTP_POST_VARS['page_title']) ) ? str_replace("\'", "''", $HTTP_POST_VARS['page_title']) : '';
			$use_url = ( isset($HTTP_POST_VARS['use_url']) ) ? ( ($HTTP_POST_VARS['use_url'] == 0) ? 0 : 1 ) : 0;
			$forum_select = ( isset($HTTP_POST_VARS['forum_select']) ) ? intval($HTTP_POST_VARS['forum_select']) : 0;
			$portal_url = ( isset($HTTP_POST_VARS['portal_url']) ) ? str_replace("\'", "''", urlencode($HTTP_POST_VARS['portal_url'])) : '';
			$list_limit = ( isset($HTTP_POST_VARS['list_limit']) ) ? intval($HTTP_POST_VARS['list_limit']) : 0;
			$posts_order = ( isset($HTTP_POST_VARS['posts_order']) ) ? ( ($HTTP_POST_VARS['posts_order']) ? 1 : 0 ) : 0;
			$display_date = ( isset($HTTP_POST_VARS['display_date']) ) ? ( ($HTTP_POST_VARS['display_date']) ? 0 : 1 ) : 1;
			$button_name = ( !empty($HTTP_POST_VARS['button_name']) ) ? str_replace("\'", "''", $HTTP_POST_VARS['button_name']) : '';
			$button_image = ( isset($HTTP_POST_VARS['button_image']) ) ? str_replace("\'", "''", urlencode($HTTP_POST_VARS['button_image'])) : '';
			$show_navbar = ( isset($HTTP_POST_VARS['show_navbar']) ) ? ( ($HTTP_POST_VARS['show_navbar']) ? 1 : 0 ) : 0;
			$show_login = ( isset($HTTP_POST_VARS['show_login']) ) ? ( ($HTTP_POST_VARS['show_login']) ? 1 : 0 ) : 0;
			$show_online = ( isset($HTTP_POST_VARS['show_online']) ) ? ( ($HTTP_POST_VARS['show_online']) ? 1 : 0 ) : 0;
			$show_poll = (isset($HTTP_POST_VARS['show_poll']) ? intval($HTTP_POST_VARS['show_poll']) : 1);

			$show_latest = (isset($HTTP_POST_VARS['latest']) ? $HTTP_POST_VARS['latest'] : array());
			if(!is_array($show_latest))
			{
				$show_latest = array($show_latest);
			}
			foreach($show_latest as $k => $v)
			{
				$show_latest[$k] = intval($v);
			}

			// settings for message and bbcode
			$message = ( !empty($HTTP_POST_VARS['message']) ) ? $HTTP_POST_VARS['message'] : '';
			$bbcode_uid = '';

			// Check message
			if ( !empty($message) )
			{
				$bbcode_uid = make_bbcode_uid();
				$message = prepare_message(trim($message), 1, 1, 1, $bbcode_uid);
				$message = str_replace("\'", "''", $message);
			}

			$sql = "SELECT MAX(portal_order) AS max_order
				FROM " . PORTAL_TABLE;
			if( !$result = $db->sql_query($sql) )
			{
				message_die(GENERAL_ERROR, "Couldn't get order number from categories table", "", __LINE__, __FILE__, $sql);
			}
			$row = $db->sql_fetchrow($result);

			$next_order = $row['max_order'] + 10;

	
			$sql = "INSERT INTO " . PORTAL_TABLE . "
				(portal_title, portal_description, portal_bbcode_id, portal_use_url, portal_forum,
				portal_url, portal_list_limit, portal_ascending, portal_nodate, portal_button_name,
				portal_button_image, portal_navbar, portal_login, portal_online, portal_latest,
				portal_poll, portal_order)
			VALUES ('$page_title', '$message', '$bbcode_uid', $use_url, $forum_select, '$portal_url',
				$list_limit, $posts_order, $display_date, '$button_name', '$button_image',
				$show_navbar, $show_login, $show_online, '" . implode($show_latest, ',') . "',
				$show_poll, $next_order)";

			if ( !$db->sql_query($sql) )
			{
				message_die(GENERAL_ERROR, 'Error in posting', '', __LINE__, __FILE__, $sql);
			}

			$message = $lang['Portal_added'];
			$message .= '<br /><br />' . sprintf($lang['Click_return_portal'],  '<a href="' . append_sid("admin_portal.$phpEx") . '">', "</a>");
			message_die(GENERAL_MESSAGE, $message);
		break;
		case 'smilies':
			generate_smilies2('window', PAGE_POSTING);
			exit;
		break;
		case 'help':
			generate_help('window', PAGE_POSTING);
			exit;
		break;
		case 'deleteportal':
			$mode = 'delete';

			$sql = "DELETE FROM " . PORTAL_TABLE . "
				WHERE portal_id = $portal_id";
			if( !$result = $db->sql_query($sql) )
			{
				message_die(GENERAL_ERROR, "Couldn't change portal order", "", __LINE__, __FILE__, $sql);
			}

			renumber_order();
			redirect(append_sid("$site_root/admin/admin_portal.$phpEx", true));
		break;
		case 'moveupportal':
			$mode = 'moveup';

			$sql = "UPDATE " . PORTAL_TABLE . "
				SET portal_order = portal_order - 15
				WHERE portal_id = $portal_id";
			if( !$result = $db->sql_query($sql) )
			{
				message_die(GENERAL_ERROR, "Couldn't change portal order", "", __LINE__, __FILE__, $sql);
			}

			renumber_order();
			redirect(append_sid("$site_root/admin/admin_portal.$phpEx", true));
		break;
		case 'movedownportal':
			$mode = 'movedown';

			$sql = "UPDATE " . PORTAL_TABLE . "
				SET portal_order = portal_order + 15
				WHERE portal_id = $portal_id";
			if( !$result = $db->sql_query($sql) )
			{
				message_die(GENERAL_ERROR, "Couldn't change portal order", "", __LINE__, __FILE__, $sql);
			}

			renumber_order();
			redirect(append_sid("$site_root/admin/admin_portal.$phpEx", true));
		break;
		case 'view':
		default:
			$mode = 'view';

			$sql = "SELECT n.*
				FROM " . PORTAL_TABLE . " n
				ORDER BY n.portal_order ASC ";
			if ( !($result = $db->sql_query($sql)) )
			{
				message_die(GENERAL_ERROR, "Couldn't obtain portal list", "", __LINE__, __FILE__, $sql);
			}

			$portal_rows = $db->sql_fetchrowset($result);
			$db->sql_freeresult($result);

			//
			// Output the selection table if no forum id was
			// specified
			//
			$template->set_filenames(array(
				'body' => 'admin/portal_admin_body.tpl')
			);

			for($i = 0; $i < count($portal_rows); $i++)
			{
				$template->assign_block_vars('portalrow', array(
					'U_VIEWPORTAL' => append_sid("../portal.$phpEx?page=" . $portal_rows[$i]['portal_id']),
					'PORTAL_NAME' => $portal_rows[$i]['portal_title'],
					'U_PORTAL_EDIT' => append_sid("admin_portal.$phpEx?mode=editportal&portal=" . $portal_rows[$i]['portal_id']),
					'U_PORTAL_DELETE' => append_sid("admin_portal.$phpEx?mode=deleteportal&portal=" . $portal_rows[$i]['portal_id']),
					'U_PORTAL_MOVE_UP' => append_sid("admin_portal.$phpEx?mode=moveupportal&portal=" . $portal_rows[$i]['portal_id']),
					'U_PORTAL_MOVE_DOWN' => append_sid("admin_portal.$phpEx?mode=movedownportal&portal=" . $portal_rows[$i]['portal_id'])
				));
			}

			$template->assign_vars(array(
				'L_PORTAL_TITLE' => $lang['Portal_Control'],
				'L_PORTAL_EXPLAIN' => $lang['Portal_explain'],
				'L_PORTAL_SELECT' => $lang['Select_a_Portal'],
				'L_LOOK_UP' => $lang['Look_up_Portal'],

				'L_EDIT' => $lang['Edit'],
				'L_DELETE' => $lang['Delete'],
				'L_MOVE_UP' => $lang['Move_up'],
				'L_MOVE_DOWN' => $lang['Move_down'],
				'L_CREATE_PAGE' => $lang['New_Portal_Page'],

				'S_PORTAL_ACTION' => append_sid("admin_portal.$phpEx"),
				'S_PORTAL_SELECT' => $select_list)
			);

	
			break;
	}

	include('./page_header_admin.'.$phpEx);

	$template->pparse('body');

	include('./page_footer_admin.'.$phpEx);
}
?>
Vielen Dank!!
Antworten

Zurück zu „phpBB 2.0: Mod Support“