[ABD] Simple Calendar

In diesem Forum können Mod-Autoren ihre Mods vorstellen, die sich noch im Entwicklungsstatus befinden. Der Einbau in Foren im produktiven Betrieb wird nicht empfohlen.
Forumsregeln
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
BB-BF-BM
Mitglied
Beiträge: 2179
Registriert: 28.10.2005 16:38
Wohnort: Essen

[HOWTO] In Terminübersicht Kategorienamen weglassen

Beitrag von BB-BF-BM »

Ziel:
  • In der Terminübersicht soll bei allen Terminen statt
    [Kategoriename] Terminname
    nur noch
    Terminname
    stehen.

Voraussetzungen:
  • Verwendeter Style: prosilver

Durchführung:
  • Öffne die Datei styles/prosilver/template/calendar.html
  • Finde folgenden Code:

    Code: Alles auswählen

    		<!-- BEGIN events -->
    		<dd class="event_name"><a href="{col.days.events.EVENT_URL}" style="color: #{col.days.events.CAT_COLOUR};">[{col.days.events.CAT_NAME}] {col.days.events.EVENT_NAME}</a></dd>
    		<!-- END events -->
  • Ersetze ihn mit folgendem Code:

    Code: Alles auswählen

    		<!-- BEGIN events -->
    		<dd class="event_name"><a href="{col.days.events.EVENT_URL}" style="color: #{col.days.events.CAT_COLOUR};">{col.days.events.EVENT_NAME}</a></dd>
    		<!-- END events -->
  • Finde folgenden Code:

    Code: Alles auswählen

    		<!-- BEGIN events -->
    		<dd class="event"><dl>
    			<dd class="event_name"><a href="{col.days.events.EVENT_URL}" style="color: #{col.days.events.CAT_COLOUR};">[{col.days.events.CAT_NAME}] {col.days.events.EVENT_NAME}</a></dd>
    			<!-- IF col.days.events.AUTHOR_ID != 1 -->
    			<dd class="author"><a href="{col.days.events.AUTHOR_URL}" style="color: #{col.days.events.AUTHOR_COLOUR};">{col.days.events.AUTHOR}</a></dd>
    			<!-- ELSE -->
    			<dd class="author">{L_GUEST}</dd>
    			<!-- ENDIF -->
    			<dd class="desc">{col.days.events.EVENT_DESC}</dd>
    		</dl></dd>
    		<!-- END events -->
  • Ersetze ihn mit folgendem Code:

    Code: Alles auswählen

    		<!-- BEGIN events -->
    		<dd class="event"><dl>
    			<dd class="event_name"><a href="{col.days.events.EVENT_URL}" style="color: #{col.days.events.CAT_COLOUR};">{col.days.events.EVENT_NAME}</a></dd>
    			<!-- IF col.days.events.AUTHOR_ID != 1 -->
    			<dd class="author"><a href="{col.days.events.AUTHOR_URL}" style="color: #{col.days.events.AUTHOR_COLOUR};">{col.days.events.AUTHOR}</a></dd>
    			<!-- ELSE -->
    			<dd class="author">{L_GUEST}</dd>
    			<!-- ENDIF -->
    			<dd class="desc">{col.days.events.EVENT_DESC}</dd>
    		</dl></dd>
    		<!-- END events -->
  • Finde folgenden Code:

    Code: Alles auswählen

    	<!-- BEGIN events -->
    	<li class="event"><dl>
    		<dd class="event_name"><a href="{col.events.EVENT_URL}" style="color: #{col.events.CAT_COLOUR};">[{col.events.CAT_NAME}] {col.events.EVENT_NAME}</a></dd>
    		<!-- IF col.events.AUTHOR_ID != 1 -->
    		<dd class="author"><a href="{col.events.AUTHOR_URL}" style="color: #{col.events.AUTHOR_COLOUR};">{col.events.AUTHOR}</a></dd>
    		<!-- ELSE -->
    		<dd class="author">{L_GUEST}</dd>
    		<!-- ENDIF -->
    		<dd class="desc">{col.events.EVENT_DESC}</dd>
    	</dl></li>
    	<!-- BEGINELSE -->
    	<li class="no_days">{L_NO_EVENTS_MATCH}</li>
    	<!-- END events -->
  • Ersetze ihn mit folgendem Code:

    Code: Alles auswählen

    	<!-- BEGIN events -->
    	<li class="event"><dl>
    		<dd class="event_name"><a href="{col.events.EVENT_URL}" style="color: #{col.events.CAT_COLOUR};">{col.events.EVENT_NAME}</a></dd>
    		<!-- IF col.events.AUTHOR_ID != 1 -->
    		<dd class="author"><a href="{col.events.AUTHOR_URL}" style="color: #{col.events.AUTHOR_COLOUR};">{col.events.AUTHOR}</a></dd>
    		<!-- ELSE -->
    		<dd class="author">{L_GUEST}</dd>
    		<!-- ENDIF -->
    		<dd class="desc">{col.events.EVENT_DESC}</dd>
    	</dl></li>
    	<!-- BEGINELSE -->
    	<li class="no_days">{L_NO_EVENTS_MATCH}</li>
    	<!-- END events -->
Zuletzt geändert von BB-BF-BM am 29.09.2007 10:14, insgesamt 1-mal geändert.
silke1977

Beitrag von silke1977 »

Jaaaaaaaaaaaaaaaaaaaaaaaa, es funktioniert :-)
Soll ich die geänderten Dateien hier zur Verfügung stellen ? natürlich muss dann jeder seine ForenID's reinsetzen.

War doch ne allgemeine Änderung oder ?
BB-BF-BM
Mitglied
Beiträge: 2179
Registriert: 28.10.2005 16:38
Wohnort: Essen

[HOWTO] Geburtstage aus Foren im Kalender anzeigen

Beitrag von BB-BF-BM »

Ziel:
  • Geburtstage werden aus Foren herausgelesen und als Termine im Kalender angezeigt.

Voraussetzungen:
  • Jeder Beitrag muss als Titel den Terminnamen enthalten, also das, was in der Übersicht angezeigt wird, wenn "Nur Namen anzeigen" aktiviert ist.
  • Als Beitragstext müssen die letzten 10 Zeichen das Geburtsdatum im Format
    dd.mm.YYYY
    darstellen.
  • In den Foren mit Geburtstagen sollten keine anderen Beiträge zu finden sein.
  • Es muss im ACP eine Kategorie für phpBB-interne Geburtstage ausgewählt sein (in der Kategorie werden die Geburtstage erscheinen)

Durchführung:
  • Öffne die Datei calendar/functions.php
  • Finde folgenden Code

    Code: Alles auswählen

    		$events = array();
    		$events = array_merge($events, get_events_from_db());
    		$events = array_merge($events, get_birthdays_as_events());
    		return $events;
  • Ersetze den Code mit folgendem:

    Code: Alles auswählen

    		$events = array();
    		$events = array_merge($events, get_events_from_db());
    		$events = array_merge($events, get_birthdays_as_events());
    		$events = array_merge($events, get_private_birthdays_as_events());
    		return $events;
  • Finde folgenden Code:
  • Füge davor ein:

    Code: Alles auswählen

    function get_private_birthdays_as_events()
    {
    	$events = array();
    	$forum_ids = '0';
    	
    	$sql = 'SELECT post_id, post_subject, post_text, bbcode_uid, bbcode_bitfield, enable_bbcode, enable_smilies, enable_magic_url
    		FROM ' . POSTS_TABLE . '
    		WHERE forum_id IN ('.$forum_ids.')';
    	$result = $GLOBALS['db']->sql_query($sql);
    	while ($row = $GLOBALS['db']->sql_fetchrow($result))
    	{
    		$flags = ($row['enable_bbcode'] ? 1 : 0) + ($row['enable_smilies'] ? 2 : 0) + ($row['enable_magic_url'] ? 4 : 0);
    		$desc_clean = generate_text_for_display($row['post_text'], $row['bbcode_uid'], $row['bbcode_bitfield'], $flags);
    		$bday = explode('.', substr(strip_tags($desc_clean), -10));
    		$bday = array((int)$bday[0], (int)$bday[1], (int)$bday[2]);
    		$cond = array(
    			'start'	=>	(string) gmmktime(0, 0, 0, $bday[1], $bday[0], $bday[2]),
    			'end'	=>	'',
    			'week_of_month'	=>	'',
    			'week_of_month_begin'	=>	'',
    			'week_of_year'	=>	'',
    			'week_of_year_begin'	=>	'',
    			'w'	=>	'',
    			'd'	=>	(string) $bday[0],
    			'm'	=>	(string) $bday[1],
    			'Y'	=>	'',
    			'anti'	=>	0,
    			'priority'	=>	1
    		);
    		
    		$desc_edit = decode_message($row['post_text']);
    		$events[] = array(
    			'event_url'		=>	append_sid("{$GLOBALS['phpbb_root_path']}viewtopic.{$GLOBALS['phpEx']}", 'p='.$row['post_id']).'#'.$row['post_id'],
    			'event_name'	=>	sprintf($GLOBALS['user']->lang['_BIRTHDAY_OF'], $row['post_subject']),
    			'event_desc_edit'	=>	$desc_edit,
    			'event_desc_clean'	=>	$desc_clean,
    			'author'		=>	ANONYMOUS,
    			'cat_id'		=>	CAL_BIRTHDAY_CAT,
    			'conditions'	=>	array($cond),
    		);
    	}
    	
    	$GLOBALS['db']->sql_freeresult($result);
    	return $events;
    }
  • Finde die Foren-IDs heraus, deren Beiträge die Geburtstage enthalten!
    Sie stehen in den URLs der Foren (viewforum.php?f={ID})
  • Ersetze im zuletzt eingefügten Code in der Zeile

    Code: Alles auswählen

    	$forum_ids = '0';
    die 0 mit den Foren-IDs, mit Kommas getrennt.
    Bsp.: Die Foren-IDs sind 7, 9 und 10:

    Code: Alles auswählen

    	$forum_ids = '7,9,10';
silke1977

Beitrag von silke1977 »

Das funktioniert Spitzenmäßig :-)

Ich möchte DIr nochmal herzlich danken :P
Erdinger
Mitglied
Beiträge: 88
Registriert: 23.07.2004 22:17
Kontaktdaten:

Beitrag von Erdinger »

ich hab das soweit nach anweisung installiert und bekomm beim aufruf von http://www.meine web/phpBB4/install_calendar.php folgende fehlermeldung Warning:
Cannot modify header information - headers already sent by (output started at /var/www/web/html/phpBB4/language/de/common.php:1634) in /var/www/web89/html/phpBB4/includes/functions.php on line 4217

Warning: Cannot modify header information - headers already sent by (output started at /var/www/web89/html/phpBB4/language/de/common.php:1634) in /var/www/web##/html/phpBB4/includes/functions.php on line 4219

Warning: Cannot modify header information - headers already sent by (output started at /var/www/web##/html/phpBB4/language/de/common.php:1634) in /var/www/web##/html/phpBB4/includes/functions.php on line 4220

Warning: Cannot modify header information - headers already sent by (output started at /var/www/web##/html/phpBB4/language/de/common.php:1634) in /var/www/web##/html/phpBB4/includes/functions.php on line 4221
was hab ich falsch gemacht.
BB-BF-BM
Mitglied
Beiträge: 2179
Registriert: 28.10.2005 16:38
Wohnort: Essen

Beitrag von BB-BF-BM »

Hast du bereits eine andere Modifikation eingebaut?

und kannst du andere Seiten fehlerfrei aufrufen?

der Fehler müsste in der Datei phpBB4/language/de/common.php in der Zeile 1634 liegen; dort wird etwas ausgegeben, was nicht gewollt ist. Diese Zeile existiert bei mir nicht, deswegen kann ich dir hier nicht helfen.

Du könntest die genannte Datei verlinken, falls du den Fehler selbst nicht findest (KB:datei)
Erdinger
Mitglied
Beiträge: 88
Registriert: 23.07.2004 22:17
Kontaktdaten:

Beitrag von Erdinger »

ja ich hab noch den who_was_here mod drinnen.
die datei hab ich http://www.bigbike-forum.com/phpBB4/lan ... common.txt hier verlinkt. (ich hoffe das war richtig so.)
gruß Erdinger
BB-BF-BM
Mitglied
Beiträge: 2179
Registriert: 28.10.2005 16:38
Wohnort: Essen

Beitrag von BB-BF-BM »

Warum ist bei dir zwischen jeder Zeile eine Leerzeile?

Die Lösung: hinter dem am Ende der Datei ist noch eine Leerzeile.
Wenn du die löschst, müsste es eigentlich funktionieren..
Erdinger
Mitglied
Beiträge: 88
Registriert: 23.07.2004 22:17
Kontaktdaten:

Beitrag von Erdinger »

jetzt kommt nur noch eine fehlermeldung und sonst nix mehr.
bei aufruf der install_calendar.php http://www.bigbike-forum.com/phpBB4/ins ... lendar.txt
Fatal error: Call to a member function on a non-object in /var/www/web##/html/phpBB4/install_calendar.php on line 10
beim auruf vom forum kommt
Fatal error: Call to a member function on a non-object in /var/www/web##/html/phpBB4/index.php on line 21 http://www.bigbike-forum.com/phpBB4/index.txt
beim aufruf vom portal kommt
Fatal error: Call to a member function on a non-object in /var/www/web##/html/phpBB4/bb3portal.php on line 24
http://www.bigbike-forum.com/phpBB4/bb3portal.txt

hmmpf
Andre R.
Mitglied
Beiträge: 58
Registriert: 05.01.2006 13:11
Wohnort: Crailsheim
Kontaktdaten:

Beitrag von Andre R. »

Da is der Wurm drin! Die Installation hat einen Fehler und erzeugt einen bestimmten Default-Wert nicht, der dann wiederum dazu führt, dass man sich nicht mehr im Forum registrieren kann. Der Wert fehlt btw. in USERS.
gez.

Andre R.
Antworten

Zurück zu „[3.0.x] Mods in Entwicklung“