Drei theoretische Fragen
Forumsregeln
Auch wenn hier der Support für phpBB 2 weiterhin aufrecht erhalten bleibt, weisen wir darauf hin, dass das phpBB 2 nicht mehr offiziell unterstützt und weiterentwickelt wird!
Auch wenn hier der Support für phpBB 2 weiterhin aufrecht erhalten bleibt, weisen wir darauf hin, dass das phpBB 2 nicht mehr offiziell unterstützt und weiterentwickelt wird!
- oxpus
- Administrator
- Beiträge: 28735
- Registriert: Mo 27.Jan, 2003 22:13
- Wohnort: Bad Wildungen
- Kontaktdaten:
Keine Angst, ich gebe nicht so schnell auf. Daher hier mal eine komplett überarbeitete Version:
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
[quote="oxpus @ 10/5/2004, 09:20";p="5555"] ich gebe nicht so schnell auf. [/quote]
Echt bewunderswert!
Also mal vielen Dank, das mim Abstand haut nun hin! Aber eines kann ich immer noch nicht verstehen! MIt Netscape wird der Text im Boardmenü ganz normal angezeigt! Mim Msie aber nur teilweise!
Wie kann sowas sein. Wie kann es ünberhaupt sein, dass die beiden Browser die Seite so unterschiedliche ausgeben? (siehe Bilder die ich drangehängt hab)
Also noch mal vielen DAnk Oxpus, ich hoffe das mit dem Text bekommst du auch noch hin. Den Rest schaff ich dann hoffentlich schon alleine (z.b. Links Box ist in der Nevi Box, sollt ja eigentich extra sein)
Aber das mit dem Text versteh ich nicht ganz!
Aja noch was! glaubst du ist es möglich den "yourdomain.com Foren-ÜbersichtSmilies List" text über beiden Spalten anzeigen zu lassen? schaut nämlich sonst ein bissl blöd aus.
Danke du hast mir echt viel geholfen!
Echt bewunderswert!
Also mal vielen Dank, das mim Abstand haut nun hin! Aber eines kann ich immer noch nicht verstehen! MIt Netscape wird der Text im Boardmenü ganz normal angezeigt! Mim Msie aber nur teilweise!
Wie kann sowas sein. Wie kann es ünberhaupt sein, dass die beiden Browser die Seite so unterschiedliche ausgeben? (siehe Bilder die ich drangehängt hab)
Also noch mal vielen DAnk Oxpus, ich hoffe das mit dem Text bekommst du auch noch hin. Den Rest schaff ich dann hoffentlich schon alleine (z.b. Links Box ist in der Nevi Box, sollt ja eigentich extra sein)
Aber das mit dem Text versteh ich nicht ganz!
Aja noch was! glaubst du ist es möglich den "yourdomain.com Foren-ÜbersichtSmilies List" text über beiden Spalten anzeigen zu lassen? schaut nämlich sonst ein bissl blöd aus.
Danke du hast mir echt viel geholfen!
- oxpus
- Administrator
- Beiträge: 28735
- Registriert: Mo 27.Jan, 2003 22:13
- Wohnort: Bad Wildungen
- Kontaktdaten:
Zunächst mal die neue Version. Hatte mich bei der letzten noch nicht genug ausgetobt.
Dann zum Board-Menü: Prüfe mal, ob der Eintrag 'Home' mehrfach in der lang-main.php bei Dir vorkommt und korrigiere das. Der IE ist da schon etwas pingelig.
Dann zum Board-Menü: Prüfe mal, ob der Eintrag 'Home' mehrfach in der lang-main.php bei Dir vorkommt und korrigiere das. Der IE ist da schon etwas pingelig.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
also beim MSIE kommt der Text aufeinmal wenn ich eingeloggt bin (also das hatte ich vorher noch gar nicht überprüft gehabt)
Also ausgeloggt = text fehlt (wie beim Screenshot)
eingeloggt = text ganz normal!
In der land Datei gibt es die Einträge, und das nur jeweils einmal!
und in der page Header wirds auch normal definiert.
Kannst du damit was anfangen?
Also ausgeloggt = text fehlt (wie beim Screenshot)
eingeloggt = text ganz normal!
In der land Datei gibt es die Einträge, und das nur jeweils einmal!
und in der page Header wirds auch normal definiert.
Kannst du damit was anfangen?
Ähm ich hab die Änderungen vom php Menü Manager fürs ezPortal noch nicht gemacht!
Wollte dies nun aber tun.
zuerst dachte ich mir, gut das Menü ist eigentlich im Header, sprich ich füge den Code aus der Beschreibung nicht in der portal.php ein, sondern in der page_header.php
Da bekamm ich gleich mal nen Error. Gut hab ichs wieder rückgängig gemacht!
Und habs dann doch in der portal.php eingebaut.
die Links (also bei mir aus dem Header) in der linken Spalte (nicht die von oben rechts) habe ich druch {BOARD_MENU} ersetzt.
Nun es kam so wie ich es mir gedacht hatte. Und zwar wird das Menü genau so angezeigt wie im normalen Header.
Nun muss ich den Code (welcher laut Anleitung für die portal.php bestimmt ist) doch in der page_header.php einbauen und noch irgendwas includen?
Hat wer eine Idee?
Wollte dies nun aber tun.
zuerst dachte ich mir, gut das Menü ist eigentlich im Header, sprich ich füge den Code aus der Beschreibung nicht in der portal.php ein, sondern in der page_header.php
Da bekamm ich gleich mal nen Error. Gut hab ichs wieder rückgängig gemacht!
Und habs dann doch in der portal.php eingebaut.
die Links (also bei mir aus dem Header) in der linken Spalte (nicht die von oben rechts) habe ich druch {BOARD_MENU} ersetzt.
Nun es kam so wie ich es mir gedacht hatte. Und zwar wird das Menü genau so angezeigt wie im normalen Header.
Nun muss ich den Code (welcher laut Anleitung für die portal.php bestimmt ist) doch in der page_header.php einbauen und noch irgendwas includen?
Hat wer eine Idee?
- oxpus
- Administrator
- Beiträge: 28735
- Registriert: Mo 27.Jan, 2003 22:13
- Wohnort: Bad Wildungen
- Kontaktdaten:
Hast Du den Mod einfach im Portal eingebaut? Oder hast Du das enthaltene Add-On verwendet? Dafür war es nämlich gedacht 
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Code: Alles auswählen
##############################################################
## MOD Title: ADD-ON: phpBB Menu Manager on ezPortal
## MOD Author: OXPUS < webmaster@oxpus.de > (Karsten Ude) http://www.oxpus.de
## MOD Description: Replace the navigation block on ezPortal with a configurable portal menu
## MOD Version: 1.4.3
##
## Installation Level: Easy
## Installation Time: 2-5 Minutes
## Files To Edit: 3
## portal.php
## includes/constants.php
## templates/subSilver/portal_body.tpl
##
## Included Files: 5
## templates/subSilver/board_menu_categories_admin.tpl
## templates/subSilver/board_menu_categories_edit.tpl
## templates/subSilver/board_menu_categories_sort.tpl
## templates/subSilver/board_menu_merge.tpl
## templates/subSilver/board_menu_welcome.tpl
##############################################################
## For Security Purposes, Please Check: http://www.phpbb.com/mods/ for the
## latest version of this MOD. Downloading this MOD from other sites could cause malicious code
## to enter into your phpBB Forum. As such, phpBB will not offer support for MOD's not offered
## in our MOD-Database, located at: http://www.phpbb.com/mods/
##############################################################
## Author Notes:
##
## SQL / Database changes
## ----------------------
## Instead entering the given SQL-Statements, you can upload the file portal_menu_install.php
## to your phpbb root directory and run this with your browser.
## This file will do all nessassary changes in the database for you.
## After using this file, please delete it to avoid errors.
##
##############################################################
## MOD History:
##
## 2004-04-30 - Version 1.4.3
## - Fix deleting link will destroy all user settings for portal navigation
## Fix sorting portal navigation based on user settings incl. the fixed links
## Fix layout on add/remove links
## Add new sorting for setting a link on first/last position (only board menu!)
## For update look into the folder updates
##
## 2004-04-27 - Version 1.4.2
## - Fix missing fields in portal_menu_install.php
## Fix displaying guest links until user have select his own links.
##
## 2004-04-24 - Version 1.4.1
## - Renaming the Add-On to phpBB Menu Manager
## - Fix a bug in portal navigation. For update look into the folder updates
##
## 2004-04-21 - Version 1.4.0
## - Adding mark/unmark all chooseable links
## - Adding reorder links like default sorting
## - Adding choose between category name and line or both in portal as seperator
## For update look into the folder updates
##
## 2004-04-18 - Version 1.3.0
## - Adding LESS_ADMIN and fix links on the portal navigation
## For update completely reinstall this add-on after updating the basic mod to 1.4.0!!!
##
## 2004-04-18 - Version 1.2.0
## - Seperates the settings for the portal navigation
## For update completely reinstall this add-on
##
## 2004-04-15 - Version 1.1.0
## - To update please look to the update description
##
## 2004-04-11 - Version 1.0.0
## - First release
##
##############################################################
## Before Adding This MOD To Your Forum, You Should Back Up All Files Related To This MOD
##############################################################
#
#-----[ SQL ]------------------------------------------
#
CREATE TABLE phpbb_board_menu_cat (
cat_id MEDIUMINT( 8 ) NOT NULL auto_increment,
cat_name VARCHAR( 50 ) NOT NULL ,
cat_sort MEDIUMINT( 8 ) NOT NULL ,
show_cat_name TINYINT( 1 ) DEFAULT '1' NOT NULL ,
show_seperator TINYINT( 1 ) DEFAULT '0' NOT NULL ,
PRIMARY KEY (cat_id)
);
CREATE TABLE phpbb_board_menu_merge (
cat_id MEDIUMINT( 8 ) NOT NULL,
link_id MEDIUMINT( 8 ) NOT NULL
);
ALTER TABLE phpbb_board_links ADD bl_psort MEDIUMINT( 8 ) NOT NULL;
ALTER TABLE phpbb_board_links ADD bl_fix TINYINT( 1 ) DEFAULT '0' NOT NULL;
ALTER TABLE phpbb_users ADD portal_links VARCHAR( 250 ) NOT NULL;
ALTER TABLE phpbb_users ADD portal_sort VARCHAR( 250 ) NOT NULL;
#
#-----[ COPY ]------------------------------------------
#
copy add_on_ezportal/board_menu_manager.php to board_menu_manager.php
copy add_on_ezportal/templates/subSilver/board_menu_categories_admin.tpl to templates/subSilver/board_menu_categories_admin.tpl
copy add_on_ezportal/templates/subSilver/board_menu_categories_edit.tpl to templates/subSilver/board_menu_categories_edit.tpl
copy add_on_ezportal/templates/subSilver/board_menu_categories_sort.tpl to templates/subSilver/board_menu_categories_sort.tpl
copy add_on_ezportal/templates/subSilver/board_menu_links_set.tpl to templates/subSilver/board_menu_links_set.tpl
copy add_on_ezportal/templates/subSilver/board_menu_links_sort.tpl to templates/subSilver/board_menu_links_sort.tpl
copy add_on_ezportal/templates/subSilver/board_menu_merge.tpl to templates/subSilver/board_menu_merge.tpl
copy add_on_ezportal/templates/subSilver/board_menu_welcome.tpl to templates/subSilver/board_menu_welcome.tpl
#
#-----[ OPEN ]------------------------------------------
#
portal.php
#
#-----[ FIND ]------------------------------------------
#
//
// Generate the page
//
#
#-----[ BEFORE, ADD ]------------------------------------------
#
//
// Create the personal board menu
$fixlinks = array();
include_once($phpbb_root_path . 'includes/functions_board_menu.'.$phpEx);
$bl_level_access = get_bllink_access();
$bl_fix = ( $bl_level_access == '' ) ? ' WHERE bl_fix = 1' : ' AND bl_fix = 1';
$sql = "SELECT * FROM " . BOARD_LINKS_TABLE . "
$bl_level_access
$bl_fix
ORDER BY bl_psort DESC";
if ( !$result = $db->sql_query($sql) )
{
message_die(GENERAL_ERROR, 'Could not read portal menu for user', '', __LINE__, __FILE__, $sql);
}
$ubl = '';
$ubs = '';
$i = 1;
$links_check = array();
if ( $userdata['profil_links'] != '' )
{
$link_check = explode(',', $userdata['profile_links']);
}
while ( $row = $db->sql_fetchrow($result) )
{
$fix_link_id = $row['bl_id'];
if ( !in_array($fix_link_id, $links_check) )
{
$ubl .= ( $ubl == '' ) ? ($row['bl_id']) : ',' . ($row['bl_id']);
$ubs .= ( $ubs == '' ) ? (0 - $i) : ',' . (0 - $i);
$i++;
}
}
$sql_cat = "SELECT * FROM " . BOARD_MENU_CAT_TABLE . "
ORDER BY cat_sort";
if ( !$result2 = $db->sql_query($sql_cat) )
{
message_die(GENERAL_ERROR, 'Could not read portal menu for user', '', __LINE__, __FILE__, $sql);
}
$portal_menu_links = '';
while ( $row2 = $db->sql_fetchrow($result2) )
{
$category = $row2['cat_name'];
$catname = $lang[$category];
$cat = $row2['cat_id'];
$show_catname = $row2['show_cat_name'];
$show_seperator = $row2['show_seperator'];
if ( $userdata['session_logged_in'] && $userdata['portal_links'] != '' )
{
$userdata['portal_links'] .= ( $ubl != '' ) ? ','.$ubl : '';
$userdata['portal_sort'] .= ( $ubs != '' ) ? ','.$ubs : '';
$pl_links = array();
$pl_sort = array();
$pl_links = explode(',', $userdata['portal_links']);
$pl_sort = explode(',', $userdata['portal_sort']);
array_multisort($pl_sort, SORT_DESC, $pl_links);
$sql_order = 'ORDER BY';
for ( $i = 0; $i < count($pl_links); $i++ )
{
$sql_order .= ( $sql_order == 'ORDER BY' ) ? ' bl_id = '.$pl_links[$i] : ', bl_id = '.$pl_links[$i];
}
$sql = "SELECT * FROM " . BOARD_LINKS_TABLE . " l, " . BOARD_MENU_MERGE_TABLE . " m
WHERE l.bl_id IN (".$userdata['portal_links'].")
AND l.bl_id = m.link_id
AND m.cat_id = $cat
$sql_order";
if ( !$result = $db->sql_query($sql) )
{
message_die(GENERAL_ERROR, 'Could not read portal menu for user', '', __LINE__, __FILE__, $sql);
}
}
else
{
$sql = "SELECT * FROM " . BOARD_LINKS_TABLE . " l, " . BOARD_MENU_MERGE_TABLE . " m
WHERE l.bl_level = " . ANONYMOUS . "
AND l.bl_id = m.link_id
AND m.cat_id = $cat
ORDER BY l.bl_psort, l.bl_id";
if ( !$result = $db->sql_query($sql) )
{
message_die(GENERAL_ERROR, 'Could not read portal menu for user', '', __LINE__, __FILE__, $sql);
}
}
if ( $count = $db->sql_numrows($result) )
{
$portal_menu_links .= ( $show_seperator == TRUE ) ? '<hr>' : '';
$portal_menu_links .= ( $show_catname == TRUE ) ? '<b>'.$catname.'</b><br />' : '';
$board_config['bl_seperator_content'] = str_replace('SPACE', ' ', $board_config['bl_seperator_content']);
$i = 0;
while ( $row = $db->sql_fetchrow($result) )
{
if (substr($row['bl_link'],0,10) != 'javascript')
{
$phpext = '.'.$phpEx;
$sidext = ( $row['bl_parameter'] != '' ) ? '&sid='.$userdata['session_id'] : '?sid='.$userdata['session_id'];
}
else
{
$phpext = '';
$sidext = '';
}
$portal_menu_links .= ( $board_config['bl_seperator'] == 1 ) ? '<img src="'.$board_config['bl_seperator_content'].'" border="0" /> ' : $board_config['bl_seperator_content'];
$portal_menu_links .= ( $row['bl_img'] != '' ) ? '<img src="'.get_bl_theme().$row['bl_img'].'" border="0" /> ' : '';
$portal_menu_links .= '<a href="'.$row[bl_link].$phpext.(( $row['bl_parameter'] != '') ? '?'.$row['bl_parameter'] : '').$sidext;
$portal_menu_links .= '" class="mainmenu" title="'.$lang[$row['bl_name']].'">'.$lang[$row['bl_name']].'</a>';
$portal_menu_links .= '<br />';
$i++;
}
}
}
$template->assign_vars(array(
'BOARD_MENU' => $portal_menu_links)
);
// Create the personal board menu
//
#
#-----[ OPEN ]------------------------------------------
#
includes/constants.php
#
#-----[ FIND ]------------------------------------------
#
?>
#
#-----[ BEFORE, ADD ]------------------------------------------
#
define('BOARD_MENU_CAT_TABLE', $table_prefix.'board_menu_cat');
define('BOARD_MENU_MERGE_TABLE', $table_prefix.'board_menu_merge');
#
#-----[ OPEN ]------------------------------------------
#
templates/subSilver/portal_body.tpl
#
#-----[ FIND ]------------------------------------------
#
<a href="{U_PORTAL}">{L_HOME}</a><br />
<a href="{U_INDEX}">{L_FORUM}</a><br />
<a href="{U_MEMBERLIST}">{L_MEMBERLIST}</a><br />
<a href="{U_FAQ}">{L_FAQ}</a><br />
<a href="{U_SEARCH}">{L_SEARCH}</a><br />
#
#-----[ REPLACE WITH ]------------------------------------------
#
{BOARD_MENU}
#
#-----[ SAVE/CLOSE ALL FILES ]------------------------------------------
#
# EoM- oxpus
- Administrator
- Beiträge: 28735
- Registriert: Mo 27.Jan, 2003 22:13
- Wohnort: Bad Wildungen
- Kontaktdaten:
Öhm ja, ich vergaß, daß Du ja Dein Portal teilweise in die linke Spalte fest eingebunden hast (overall_header.tpl)...
Baue mal das Add-On in die page_header.php ein und ersetze dabei mit
Dann in der overall_header.tpl und in der portal_body.tpl anstelle der Navigation nicht sondern eintragen.
Wenn das immer noch zu Fehlern führt, dann diese bitte hier posten (die komplette Fehlermeldung) und auch so lassen, damit ich auf Deinem Testboard nachschauen kann...
Baue mal das Add-On in die page_header.php ein und ersetze dabei
Code: Alles auswählen
'BOARD_MENU' => $portal_menu_links) Code: Alles auswählen
'PORTAL_MENU' => $portal_menu_links) Code: Alles auswählen
{BOARD_MENU}Code: Alles auswählen
{PORTAL_MENU}Wenn das immer noch zu Fehlern führt, dann diese bitte hier posten (die komplette Fehlermeldung) und auch so lassen, damit ich auf Deinem Testboard nachschauen kann...
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
hab jetzt wieder mit beiden Browsern getestet! Und es geht wirklich! Nein ich glaubs ja nicht!
Danke Oxpus! Wenn du so weitermachst schick ich dir bald nen Blumenstrauss.
Auf alle fälle nochmals vielen Dank.
SAg ne rein logische Frage: es wäre doch möglich die linke Spalte ausblendbar zu machen oder?
so nach dem Motto
<!-- BEGIN user say yes to portal -->
dann der code von der Spalte
<!-- END user say yes to portal -->
müßte doch irgendwie so gehen oder
ALso in der page_header.php einfügen
nur welchen Wert füge ich da ein?
also zuerst muss ich ja mal eine neue spalte in die phpbb_user einfügen in mySql. Nennen wir sie mal user_portal_config.
Und dann müßte man das ganze noch irgendwie ins prifle.php?mode=editprofile einbauen!
Nur irgendwie fehlen mir da doch noch die php Kenntnisse. Aber der Denkanstoss passt schon mal oder?
Danke Oxpus! Wenn du so weitermachst schick ich dir bald nen Blumenstrauss.
Auf alle fälle nochmals vielen Dank.
SAg ne rein logische Frage: es wäre doch möglich die linke Spalte ausblendbar zu machen oder?
so nach dem Motto
<!-- BEGIN user say yes to portal -->
dann der code von der Spalte
<!-- END user say yes to portal -->
müßte doch irgendwie so gehen oder
ALso in der page_header.php einfügen
Code: Alles auswählen
if ( ($WERT1['WERT2'] == 1) )
{
$template->WERT3('WERT4', array());
}
also zuerst muss ich ja mal eine neue spalte in die phpbb_user einfügen in mySql. Nennen wir sie mal user_portal_config.
Und dann müßte man das ganze noch irgendwie ins prifle.php?mode=editprofile einbauen!
Nur irgendwie fehlen mir da doch noch die php Kenntnisse. Aber der Denkanstoss passt schon mal oder?
- oxpus
- Administrator
- Beiträge: 28735
- Registriert: Mo 27.Jan, 2003 22:13
- Wohnort: Bad Wildungen
- Kontaktdaten:
Öhm ja. Die Vorgehensweise ist korrekt.
Unter Downloads > Allgemein findest Du den Mod "Add X To Profile", mit dem Du u.a. ein Optionfeld (ja/nein) dem User-Profil hinzufügen kannst.
Dem Kind einen Namen gegeben, das Profil erweitert musst Du genau o.g. Code in die page_header.php einfügen, allerdings in dieser Form:
"user_navi_on" ist dabei das neue Profil-Feld, daß Du mit o.g. Mod einbauen kannst. Der Name des Feldes ist aber auch Schall und Rauch...
In der overall_header.tpl müsstest Du dann jedenfalls vor der Navigationsleiste und danach eintragen (u. beim o.g. Beispiel zu bleiben).
Und damit kann der User in seinem Profil erfolgreich einstellen, ob er die Navigation sieht oder nicht.
Unter Downloads > Allgemein findest Du den Mod "Add X To Profile", mit dem Du u.a. ein Optionfeld (ja/nein) dem User-Profil hinzufügen kannst.
Dem Kind einen Namen gegeben, das Profil erweitert musst Du genau o.g. Code in die page_header.php einfügen, allerdings in dieser Form:
Code: Alles auswählen
if ( $userdata['user_navi_on'] == TRUE )
{
$template->assign_block_vars('switch_portal_navigation_on', array());
}In der overall_header.tpl müsstest Du dann jedenfalls vor der Navigationsleiste
Code: Alles auswählen
<!-- BEGIN switch_portal_navigation_on -->Code: Alles auswählen
<!-- END switch_portal_navigation_on -->Und damit kann der User in seinem Profil erfolgreich einstellen, ob er die Navigation sieht oder nicht.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
okay werd ich mal testen!
Also jenen Usern die bei deiner If "schleife(?)" druchfallen bekommen dann natürlich nie die linke Portalspalte angezeigt! Also auch nicht wenn sie aufs Portal klicken!
Wenn ich das ändern will dann füg ich einfach die linke Spalte wieder in die portal_body.tmp ein und dafor und danach füg ich BEGIN portal_on und danach END portal_on ein.
Und in der portal.php geb ich
an.
Stimmt das eh so oder?
Auf alle vielen dank für deine Mühe, jetzt sind mir wieder ein paar Dinge klarer geworden!
Also jenen Usern die bei deiner If "schleife(?)" druchfallen bekommen dann natürlich nie die linke Portalspalte angezeigt! Also auch nicht wenn sie aufs Portal klicken!
Wenn ich das ändern will dann füg ich einfach die linke Spalte wieder in die portal_body.tmp ein und dafor und danach füg ich BEGIN portal_on und danach END portal_on ein.
Und in der portal.php geb ich
Code: Alles auswählen
if ( $userdata['user_navi_on'] == FALSE )
{
$template->assign_block_vars('portal_on', array());
}
Stimmt das eh so oder?
Auf alle vielen dank für deine Mühe, jetzt sind mir wieder ein paar Dinge klarer geworden!
- oxpus
- Administrator
- Beiträge: 28735
- Registriert: Mo 27.Jan, 2003 22:13
- Wohnort: Bad Wildungen
- Kontaktdaten:
Öhm ja. Du musst das im Portal getrennt vom page_header.php unterbringen
Dazu wäre es am einfachsten, wenn Du das Portal als aktiv deklarierst und damit (unabhängig der User-Einstellung) die Navigationsleiste in der overall_header.tpl abschaltest, um diese nicht doppelt zu erhalten. Könnte man so lösen:
und darauf kann man dann die Navigation in der page_header.php grundsätzlich bei der Portalansicht abschalten:
Hast Du es soweit verstanden?
Mit einer einfachen Bedingung wäre es nämlich nicht getan, da es zwei getrennte Scripte sind (portal.php und page_header.php)...
Dazu wäre es am einfachsten, wenn Du das Portal als aktiv deklarierst und damit (unabhängig der User-Einstellung) die Navigationsleiste in der overall_header.tpl abschaltest, um diese nicht doppelt zu erhalten. Könnte man so lösen:
Code: Alles auswählen
#
#-----[ OPEN]-----
#
portal.php
#
#-----[ FIND ]-----
#
define('IN_PHPBB', TRUE);
#
#-----[ AFTER, ADD ]-----
#
define('ON_PORTAL', TRUE);
#
# EoCCode: Alles auswählen
if ( $userdata['user_navi_on'] == TRUE && !defined('ON_PORTAL') )
{
$template->assign_block_vars('switch_portal_navigation_on', array());
}Mit einer einfachen Bedingung wäre es nämlich nicht getan, da es zwei getrennte Scripte sind (portal.php und page_header.php)...
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Noch ne Frage zu dem Mod "Add X To Profile"!
Wie kann ich das einstellen dass nur eine gewisse Gruppe einsicht hat in die eingegeben Daten?
Muss nicht übers Admin Panel geregelt sein, es reicht wenns nach dem Motto
if GROUPID="2"
then
bla bla
Also es würde mir reichen wenn man es in der php Datei einstellen könnte!
Gibts sowas? in dem addXtuprofil.rar hab ich nichts gefunden!
Wie kann ich das einstellen dass nur eine gewisse Gruppe einsicht hat in die eingegeben Daten?
Muss nicht übers Admin Panel geregelt sein, es reicht wenns nach dem Motto
if GROUPID="2"
then
bla bla
Also es würde mir reichen wenn man es in der php Datei einstellen könnte!
Gibts sowas? in dem addXtuprofil.rar hab ich nichts gefunden!
- oxpus
- Administrator
- Beiträge: 28735
- Registriert: Mo 27.Jan, 2003 22:13
- Wohnort: Bad Wildungen
- Kontaktdaten:
Wie meinst Du das jetzt? Das nur eine bestimmte Usergruppe die Navigation ausschalten kann?
Oder wie oder was?
Oder wie oder was?
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
- oxpus
- Administrator
- Beiträge: 28735
- Registriert: Mo 27.Jan, 2003 22:13
- Wohnort: Bad Wildungen
- Kontaktdaten:
Hier mal ein kleiner Crashkurs
Schau in die usercp_register.php, wie da der Username behandelt wird. Suche das ganze Script durch nach $username und Du wirst Stellen finden, die mit $template-> bestimmte Blöcke freischaltet, die in der profile_add_body.tpl den Usernamen nur anzeigen, oder - je nach Board-Einstellung - dem User den Namen ändern lassen.
Und genau so müsste eben ein Feld wie "Telefonnummer" gesperrt/entsperrt werden. Also eine solche Bedingung:
Dazu müsste man vorher die Benutzergruppe für den aktuellen User in das Array "$usergroup[]" packen (SQL hierzu findest Du z.B. in der groupcp.php: Einfach kopieren und versuchen anzupassen) und im ACP ein Feld für die Benutzerberechtigung abspeichern.
Im Template wäre dann
die Klammer für das Feld und somit selbiges sichtbar oder unsichtbar.
So in etwa könnte man das machen.
"$allow_field_phone" würde ich in etwa so aufbauen:
Sprich: Im ACP ein Feld unter Allgemein > Konfiguration anlegen, in dem man die Gruppen-IDs (mit Kommata getrennt) speichert, deren User die Telefonnummer eingeben und ändern dürfen. Der Rest steht in etwa oben.
Schau dazu in admin/admin_board.php und das zugehörende Template-File templates/subSilver/admin/board_config_body.tpl, wie da die Felder definiert sind und kopiere es einfach für das neue Feld. Eine genaue Anleitung dazu gibt ja der Mod "Add X to Profile".
Die Tabelle "..._config"muss dann schliesslich auch angepasst werden:
So, das zum kleinen Crashkurs. Bei Problemen oder Fragen nicht zum Arzt oder Apotheker rennen, sondern hier posten 
Schau in die usercp_register.php, wie da der Username behandelt wird. Suche das ganze Script durch nach $username und Du wirst Stellen finden, die mit $template-> bestimmte Blöcke freischaltet, die in der profile_add_body.tpl den Usernamen nur anzeigen, oder - je nach Board-Einstellung - dem User den Namen ändern lassen.
Und genau so müsste eben ein Feld wie "Telefonnummer" gesperrt/entsperrt werden. Also eine solche Bedingung:
Code: Alles auswählen
if ( in_array($usergroup[$user_id], $allow_field_phone )
{
$template->assign_block_vars('switch_phonenumber_on, array());
}Im Template wäre dann
Code: Alles auswählen
<!-- BEGIN switch_phonenumber_on -->
<!-- END switch_phonenumber_on -->So in etwa könnte man das machen.
"$allow_field_phone" würde ich in etwa so aufbauen:
Code: Alles auswählen
$allow_field_phone = array();
$allow_field_phone = explode(',', $board_config['allow_field_phone']);Schau dazu in admin/admin_board.php und das zugehörende Template-File templates/subSilver/admin/board_config_body.tpl, wie da die Felder definiert sind und kopiere es einfach für das neue Feld. Eine genaue Anleitung dazu gibt ja der Mod "Add X to Profile".
Die Tabelle "..._config"muss dann schliesslich auch angepasst werden:
Code: Alles auswählen
ALTER TABLE phpbb_config ADD COLUMN allow_field_phone VARCHAR(255) DEFAULT '' NOT NULL;Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
[quote="oxpus @ 12/5/2004, 14:46";p="5623"]Öhm ja. Du musst das im Portal getrennt vom page_header.php unterbringen
Dazu wäre es am einfachsten, wenn Du das Portal als aktiv deklarierst und damit (unabhängig der User-Einstellung) die Navigationsleiste in der overall_header.tpl abschaltest, um diese nicht doppelt zu erhalten. Könnte man so lösen:
und darauf kann man dann die Navigation in der page_header.php grundsätzlich bei der Portalansicht abschalten:
Hast Du es soweit verstanden?
Mit einer einfachen Bedingung wäre es nämlich nicht getan, da es zwei getrennte Scripte sind (portal.php und page_header.php)...[/quote]
Also das versteh ich jetzt nicht ganz!
ich dachte ich mach es so dass die leute praktisch dadurch sie sagen ja ich will die linke Spalte immer angezeigt bekommen, sie die Spalte in der portal.tmp ja nicht brauchen! (weil sie ja schon in der overall header ist)
die Leute die diese Spalte jedoch nicht immer wollen, haben dadurch ich die linke spalte aus der portal.tmp gelöscht habe, nie diese Spalte! Also auch nicht in der Portal ansicht!
ICh dachte ich mir, dass ich eben dann diese Spalte dann wieder in der portal.tmp einfüge und davor und danach praktisch hinschreib
wenn User linke spalte nicht immer haben will, dann wird der Code der Spalte angezeigt.
Hat der User die Einstellung user_navi_on auf ja dann soll der Code ignoriert werden!
Ich versteh jetzt nicht ganz was du jetzt meinst!
Dazu wäre es am einfachsten, wenn Du das Portal als aktiv deklarierst und damit (unabhängig der User-Einstellung) die Navigationsleiste in der overall_header.tpl abschaltest, um diese nicht doppelt zu erhalten. Könnte man so lösen:
Code: Alles auswählen
#
#-----[ OPEN]-----
#
portal.php
#
#-----[ FIND ]-----
#
define('IN_PHPBB', TRUE);
#
#-----[ AFTER, ADD ]-----
#
define('ON_PORTAL', TRUE);
#
# EoCCode: Alles auswählen
if ( $userdata['user_navi_on'] == TRUE && !defined('ON_PORTAL') )
{
$template->assign_block_vars('switch_portal_navigation_on', array());
}Mit einer einfachen Bedingung wäre es nämlich nicht getan, da es zwei getrennte Scripte sind (portal.php und page_header.php)...[/quote]
Also das versteh ich jetzt nicht ganz!
ich dachte ich mach es so dass die leute praktisch dadurch sie sagen ja ich will die linke Spalte immer angezeigt bekommen, sie die Spalte in der portal.tmp ja nicht brauchen! (weil sie ja schon in der overall header ist)
die Leute die diese Spalte jedoch nicht immer wollen, haben dadurch ich die linke spalte aus der portal.tmp gelöscht habe, nie diese Spalte! Also auch nicht in der Portal ansicht!
ICh dachte ich mir, dass ich eben dann diese Spalte dann wieder in der portal.tmp einfüge und davor und danach praktisch hinschreib
wenn User linke spalte nicht immer haben will, dann wird der Code der Spalte angezeigt.
Hat der User die Einstellung user_navi_on auf ja dann soll der Code ignoriert werden!
Ich versteh jetzt nicht ganz was du jetzt meinst!
Das ist auch eine möglichkeit, skittles. 
Oxpus geht die sache nur etwas Professioneller an, was allerdings nicht immer der leichtere weg ist!
Nach Oxpus seiner Methode ist die Linke Leiste im Portal immer vorhanden und die Leiste aus dem Header lässt sich vom User ausblenden. Gleichzeitig beldet sie sich aber auch selber aus, wenn das Portal dargestellt wird!
So wie du es jetzt schreibst, sind beide Leisten ausblenbar. Die im Header kann vom User abgeschaltet werden und die im Portal wird ausgeblendet wenn die im Header aktiv ist.
Im Endeffekt kommt das auf's gleiche raus!
Oxpus geht die sache nur etwas Professioneller an, was allerdings nicht immer der leichtere weg ist!
So wie du es jetzt schreibst, sind beide Leisten ausblenbar. Die im Header kann vom User abgeschaltet werden und die im Portal wird ausgeblendet wenn die im Header aktiv ist.
Im Endeffekt kommt das auf's gleiche raus!
[center].: Web Relax .::. Essen mit Freude .::. AmigaLink.de :.
______________________________________
Kein Support per PM, ICQ oder eMail!!![/center]
______________________________________
Kein Support per PM, ICQ oder eMail!!![/center]
Aha! okay!
Also bei Oxpus Variante müßte ich eigentlich dann logischer weise auch nur in einer Template Datei was ändern, wenn ich die linke portalspalte ändern will, oder?
Okay na dann mach ichs mal nach der pro Methode!
Nur ne Frage ich muss nur die beiden Änderungen machen die ich hier zitiert habe?
und Wo füge ich den
Ein? Also an welcher Stelle?
Also bei Oxpus Variante müßte ich eigentlich dann logischer weise auch nur in einer Template Datei was ändern, wenn ich die linke portalspalte ändern will, oder?
Okay na dann mach ichs mal nach der pro Methode!
Nur ne Frage ich muss nur die beiden Änderungen machen die ich hier zitiert habe?
und Wo füge ich den
Code: Alles auswählen
if ( $userdata['user_navi_on'] == TRUE && !defined('ON_PORTAL') )
{
$template->assign_block_vars('switch_portal_navigation_on', array());
}JeppAlso bei Oxpus Variante müßte ich eigentlich dann logischer weise auch nur in einer Template Datei was ändern, wenn ich die linke portalspalte ändern will, oder?
In der includes/page_header.php nach:und Wo füge ich den [...] Ein? Also an welcher Stelle?
Code: Alles auswählen
//
// Parse and show the overall header.
//
$template->set_filenames(array(
'overall_header' => ( empty($gen_simple_header) ) ? 'overall_header.tpl' : 'simple_header.tpl')
);[center].: Web Relax .::. Essen mit Freude .::. AmigaLink.de :.
______________________________________
Kein Support per PM, ICQ oder eMail!!![/center]
______________________________________
Kein Support per PM, ICQ oder eMail!!![/center]
- oxpus
- Administrator
- Beiträge: 28735
- Registriert: Mo 27.Jan, 2003 22:13
- Wohnort: Bad Wildungen
- Kontaktdaten:
Also der Block für die overall_header.tpl kann in der page_header.php überall eingefügt werden, Hauptsache vorweil damit die Seite erstellt wird.
Die Stelle, die AmigaLink nannte ist aber auch möglich und gar nicht mal so verkehrt.
Im Grunde ist die Variante, die ich vorgeschlagen hatte, nein keine Pro-Variante, sondern der einfachste und sauberste Weg, auch wenn sie professionell aussieht:
Man ändert möglichst wenige Dateien, um etwas zu erreichen. Warum also die portal_body.tpl ändern, wenn die betreffende Spalte eh dargestellt werden soll...
So wird halt ein Status gesetzt "define('ON_PORTAL', TRUE);", um an anderer Stelle dieses abfragen zu können. Ich habe das z.B. bei meinem Mod für den Countdown auch prima so gelöst, ohne grosse und aufwendige Wege gehen zu müssen (Status Datenbank oder Datei z.B.).
Halt: Einfach, dafür effektiv.
Nochwas:
Einen guten Mod (nicht auf den Sinn bezogen, sondern auf den Code) habe ich für mich festgemacht, je weniger man umständlich, mehrfach oder im Umfang an den bestehenden Dateien ändern muss. Es gibt schliesslich die Möglichkeit von neuen Files, Funktionen, Konstanten, etc.
Auch dieses Problem hier ist so ein Fall, den ich auch gleich mit einem Installationsaufwand von mehr als 15 Minuten erstellen könnte, was aber letzendlich nur den gleichen Effekt hätte und ggf. sogar in der Ausführung langsamer wäre (Datenbankaktionen, zusätzlcihe Berechnungen, etc.).
Daher der eingeschlagene und damit schlankere Weg.
Das ging aber jetzt auch wieder sehr offtopic und daher höre ich auch schon wieder auf
Code: Alles auswählen
$template->pparse('body');Die Stelle, die AmigaLink nannte ist aber auch möglich und gar nicht mal so verkehrt.
Im Grunde ist die Variante, die ich vorgeschlagen hatte, nein keine Pro-Variante, sondern der einfachste und sauberste Weg, auch wenn sie professionell aussieht:
Man ändert möglichst wenige Dateien, um etwas zu erreichen. Warum also die portal_body.tpl ändern, wenn die betreffende Spalte eh dargestellt werden soll...
So wird halt ein Status gesetzt "define('ON_PORTAL', TRUE);", um an anderer Stelle dieses abfragen zu können. Ich habe das z.B. bei meinem Mod für den Countdown auch prima so gelöst, ohne grosse und aufwendige Wege gehen zu müssen (Status Datenbank oder Datei z.B.).
Halt: Einfach, dafür effektiv.
Nochwas:
Einen guten Mod (nicht auf den Sinn bezogen, sondern auf den Code) habe ich für mich festgemacht, je weniger man umständlich, mehrfach oder im Umfang an den bestehenden Dateien ändern muss. Es gibt schliesslich die Möglichkeit von neuen Files, Funktionen, Konstanten, etc.
Auch dieses Problem hier ist so ein Fall, den ich auch gleich mit einem Installationsaufwand von mehr als 15 Minuten erstellen könnte, was aber letzendlich nur den gleichen Effekt hätte und ggf. sogar in der Ausführung langsamer wäre (Datenbankaktionen, zusätzlcihe Berechnungen, etc.).
Daher der eingeschlagene und damit schlankere Weg.
Das ging aber jetzt auch wieder sehr offtopic und daher höre ich auch schon wieder auf
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Das meinte ich mit Professioneller! Anfänger und ungeübte achten nicht auf sowas.Man ändert möglichst wenige Dateien, um etwas zu erreichen.
[center].: Web Relax .::. Essen mit Freude .::. AmigaLink.de :.
______________________________________
Kein Support per PM, ICQ oder eMail!!![/center]
______________________________________
Kein Support per PM, ICQ oder eMail!!![/center]
