Seite 1 von 2

Admin bereich

Verfasst: 27.07.2007 00:40
von fragz
Grüße!

Unzwar habe ich mir gerade nen script gebastelt das einige Infos aus der DB holt. Das würde ich gerne im ACP zwichen
# Board-Funktionalitäten
# Avatare

verlinken oder neben dem Button System.

Ich versuche nun schon einige Stunden in den Datein vom Admin Panel durchzublicken aber leider ohne erfolg.

Habt ihr da nicht evt ne anleitung in deutsch oder nen snippet?

Währe echt Dankbar

MFG
Fragz

Verfasst: 27.07.2007 09:23
von SinTao
Ich muss gestehend as ich von sowas keine Ahnung habe, aber vllt wäre der richtige Weg wenn du dir ein eigenes Modul erstellst für das ACP. Eine Dokumentation dazu findest du hier:

Link

Vllt hilft es dir ja weiter. :)

In diesem Sinne,

SinTao

Verfasst: 27.07.2007 10:47
von Kevinq
ich versuche schon seit 2 tagen erfolglos eine eigene Seite ins acp einzubauen, erstmal eine funktionslose, die ich danach als Basis für anderes nutzen kann, ich habe mittlerweile 2 quellen ausprobiert, und schritt für schritt alles so gemacht wie dort beschrieben, meine erste quelle war http://startrekguide.com/forum/mods/ind ... =50&t=2361

das Ergebnis war, das zwar ein neues Modul zum installieren bereit stand, als ich es aber installiert hatte, bekam ich immer folgende Fehlermeldung
Parse error: syntax error, unexpected ')' in D:\Programme\xampp\htdocs\sv\forum\includes\functions_module.php(333) : eval()'d code on line 1
und das neue Modul wurde nicht in dem Menü angezeigt, in dem ich es hinzugefügt habe, und auch sonst nirgends -> lässt sich nicht verwenden

alles andere lief wie üblich.

dann habe ich die "Anleitung" von phpbb.com verwendet, Ergebnis hier, es taucht überhaupt nicht zum installieren auf.

ich bin ratlos.

hiermal die aktuellen Dateien.

includes/acp/info/acp_news.php

Code: Alles auswählen

<?php
/**
*
* @package acp news
*
*/

/**
* @package module_install
*/
class acp_news
{
	function module()
	{
	return array(
		'filename'	=> 'acp_news',
		'title'		=> 'News',
		'version'	=> '1.0.0',
		'modes'		=> array(
			'add'		=> array('title' => 'News Hinzufügen', 'auth' => 'acl_a_news', 'cat' => array('ACP_NEWS')),
			'edit'		=> array('title' => 'News Bearbeiten', 'auth' => 'acl_a_news', 'cat' => array('ACP_NEWS')),
			),
		);

	}

	function install()
	{
	}

	function uninstall()
	{
	}

}
?>
includes/acp/acp_news.php

Code: Alles auswählen

<?php
/**
*
* @package acp_news
*
*/

/**
* @package acp
*/
class acp_news
{
	var $u_action;

	function main($id, $mode)
	{
		global $db, $user, $auth, $template;
		global $config, $phpbb_root_path, $phpbb_admin_path, $phpEx;

		$user->add_lang('mods/acp_news');

		// Set up the page
		$this->tpl_name 	= 'acp_news';
		$this->page_title 	= 'News';

		// Set up general vars

        // modes
		if ($mode == 'add')
		{
            $template->assign_vars(array('CONTENT' => 'inhalt'));
		}
		else if ($mode == 'edit')
		{
			$template->assign_vars(array('CONTENT' => 'inhalt'));
		}

		else
		{
			$template->assign_vars(array(('CONTENT' => 'inhalt'));
		}
	}
}

?>
language/de/mods/acp_news.php

Code: Alles auswählen

<?php
/**
* DO NOT CHANGE
*/
if (empty($lang) || !is_array($lang))
{
	$lang = array();
}

// DEVELOPERS PLEASE NOTE
//
// All language files should use UTF-8 as their encoding and the files must not contain a BOM.
//
// Placeholders can now contain order information, e.g. instead of
// 'Page %s of %s' you can (and should) write 'Page %1$s of %2$s', this allows
// translators to re-order the output of data while ensuring it remains correct
//
// You do not need this where single placeholders are used, e.g. 'Message %d' is fine
// equally where a string contains only two placeholders which are used to wrap text
// in a url you again do not need to specify an order e.g., 'Click %sHERE%s' is fine

$lang = array_merge($lang, array(
	'news'			=> 'News',
	'News'	        => 'News',
	'NEWS'	    	=> 'News',
));

?>
adm/style/acp_news.html

Code: Alles auswählen

<!-- INCLUDE overall_header.html -->

{CONTENT}

<!-- INCLUDE overall_footer.html -->

Verfasst: 27.07.2007 11:15
von Dr.Death
Du hast versucht eine neue Berechtigungs Klasse "acl_a_news" einzuführen.

Diese gibt es in der Tabelle phpbb_acl_options aber nicht, also kann sie nicht verglichen ( authentifiziert ) werden.

Du musst schon Dein neues ACP Modul auch in der Tabelle phpbb_acl_options "registrieren/eintragen".

Hier ein Beispielcode aus meinem phpbb3 Formel 1 Mod ( Das Installer File fügt eine neue Berechtigungsklasse hinzu.... hier mal die Änderung für acl_a_news )

Code: Alles auswählen

	//Add new permission set to the module system
	$sql = 'INSERT INTO '.$table_prefix."acl_options VALUES 
		('', 'a_news', 1, 0, 0)
		";
	$result = $db->sql_query($sql);
	$db->sql_freeresult($result);	

Verfasst: 27.07.2007 12:40
von Kevinq
habe eien entsprechende spalte mit den werten per phpmyadmin in die tabelle eingefügt, nun kann ich zwar befugnisse für das modul auswählen, es aber immernoch nicht ins acp hinzufügen.

Verfasst: 27.07.2007 14:03
von fragz
ne für das bischen code was ich habe lohnt sich kein modul! auch wegen

link

So gut ist mein snglish nicht das ich davon was verstehe.
Ist den den nicht mehr möglich nen einfachen Link ins ACP zu bekommen?

Verfasst: 27.07.2007 14:42
von Kevinq
nen einfachne link bekommst du eventuel in die template dateien, aber dann must du in deiner php datei schon selbst auf berechtigungen & co achten, und auch wird wenn du es nicht manuel anpasst das design des acp's nicht vorhanden sein

Verfasst: 27.07.2007 16:18
von fragz
hm najut dann muss ich das wohl mit dem modul machen.
Gibt es dafür ne deutsche anleitung?

Verfasst: 27.07.2007 16:29
von Kevinq
anscheinent nicht, das ist ja auch mein problem, ich habe mich ja schon 2 mal versucht ein modul zu bastelt, beidesmal ist es scheifgegangen.

Verfasst: 02.09.2007 09:26
von nickvergessen
Hab hier mal noch ne kurz Zusammenfassung:
http://olympuswiki.naderman.de/Creating_modules

Mal ne Frage, ich habe folgende Dateien:
acp_links.php

Code: Alles auswählen

<?php
class acp_links
{
	var $u_action;
	var $new_config;
	function main($id, $mode)
	{
		global $db, $user, $auth, $template;
		global $config, $phpbb_root_path, $phpbb_admin_path, $phpEx;
		$user->add_lang('common');
		switch($mode)
		{
			case 'index':
				$this->page_title = 'LINKS';
				$this->tpl_name = 'links_body';
				break;
		}

	}
}
?>
acp_links_info.php

Code: Alles auswählen

<?php
class acp_links_info
{
	function module()
	{
		return array(
			'filename'=> 'acp_links',
			'title'=> 'ACP_LINKS',
			'version'=> '1.2.3',
			'modes'=> array(
				'index'=> array('title' => 'ACP_AUTOMATION'),
			),
		);
	}
}
?>
und trotzdem kann ich das Modul nicht zum ACP hinzufügen.
Hat jemand ne Ahnung?