[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

Beitrag von BB-BF-BM »

Hallo!

Vielen Dank für die Fehlermeldung!

Der Fehler lag in einem nicht geänderten Variablennamen.

Da die Funktion jedoch nur den Template-Cache leeren sollte, ist er nicht schwerwiegend. In der nächsten Version wird der Fehler verbessert sein.
Gallardo
Mitglied
Beiträge: 13
Registriert: 27.01.2007 19:50

Beitrag von Gallardo »

hab die datenbank geputzt und den mod neu installiert dan war alles ok.

Hab mal ne frage
ist es angedacht ne 7 Tage vorschau unten in die haupseite zu integrieren?

gallardo
BB-BF-BM
Mitglied
Beiträge: 2179
Registriert: 28.10.2005 16:38
Wohnort: Essen

Beitrag von BB-BF-BM »

vielleicht ebenfalls als AddOn...
Dürfte aber keine große Schwierigkeit sein, wenn man etwas PHP kann und sich mit dem phpBB3-Code etwas auskennt.
Gallardo
Mitglied
Beiträge: 13
Registriert: 27.01.2007 19:50

Beitrag von Gallardo »

Also falls einer lust hat sich da ran zu setzten fände ich klasse.
leider kenne ich mich nicht mit php und dem phpBB3-Code aus.
aber vielleicht kann mal jemand posten und es kann hier in geminesamer arbeit entstehen.

schon mal dake gallardo
NoLeader
Mitglied
Beiträge: 16
Registriert: 25.04.2007 18:26

Beitrag von NoLeader »

An einer 7 Tages-Vorschau hätte ich auch grosses Interesse, wie es früher in PHPBB2 gewesen war... Danke wenn sich da wer daransetzt.

Grüsse

EDIT:
Dass Stand früher mal in der portal.php (PHPBB2) ich weiss nicht ob dies jetzt Inkompatibilitäten zeigt. BB-BF-BM könterst du das Eventuell mal durch gehen? Dankeschöön
Oder falls du keine Zeit hast,hillft es vieleicht jemandem das Addon zu entwickeln (Sorry kenne mich zu wenig aus)
Hier die Codes (wurden auch mal von BB-BF-BM entwickelt)

Code: Alles auswählen

// SIMPLE CALENDAR BEGIN
require($phpbb_root_path.'calendar/functions.'.$phpEx);

$sql = 'SELECT name, value FROM '.CALENDAR_CONFIG_TABLE;
if( !$db->sql_query($sql) )
{
   message_die(GENERAL_ERROR, 'Could not obtain calendar config data', '', __LINE__, __FILE__, $sql);
}
while( $row = $db->sql_fetchrow() )
{
   define('CAL_'.strtoupper($row['name']), $row['value']);
}

$sql = 'SELECT action, user_level, user_ids, group_ids, black_uids FROM '.CALENDAR_AUTH_TABLE.' ORDER BY action ASC';
if( !$db->sql_query($sql) )
{
   message_die(GENERAL_ERROR, 'Could not obtain auth data');
}
while( $row = $db->sql_fetchrow() )
{
   define('CAL_AUTH_'.strtoupper($row['action']), get_auth($row['user_level'], $row['user_ids'], $row['group_ids'], $row['black_uids']));
}

$sql = 'SELECT cat_id, cat_name, read_user_level, read_user_ids, read_group_ids, read_black_uids, edit_user_level, edit_user_ids, edit_group_ids, edit_black_uids FROM '.CALENDAR_CAT_TABLE;
$CATS = array();
if( !$db->sql_query($sql) )
{
   message_die(GENERAL_ERROR, 'Could not obtain auth data');
}
while( $row = $db->sql_fetchrow() )
{
   $CATS[$row['cat_id']] = array(
      'id'   =>   $row['cat_id'],
      'name'   =>   $row['cat_name'],
      'read'   =>   get_auth($row['read_user_level'], $row['read_user_ids'], $row['read_group_ids'], $row['read_black_uids']),
      'edit'   =>   get_auth($row['edit_user_level'], $row['edit_user_ids'], $row['edit_group_ids'], $row['edit_black_uids'])
   );
}

$now = mktime(0, 0, 0, date('n'), date('j'), date('Y'));
$end = mktime(0, 0, 0, date('n'), date('j') + CAL_NEXT_DAYS, date('Y'));
$days = get_days($now, $end);
$events = get_events($days);

$no_events = 1;
while( list($date, $event) = each($events) )
{
   while( list($id, $data) = each($event) )
   {
      $template->assign_block_vars('cal_next_events', array(
         'date'   =>   $date,
         'name'   =>   htmlspecialchars($data['name']),
         'url'   =>   append_sid('calendar.'.$phpEx.'?event='.$data['id'].params('&', 'm', 'y', 'show_events')),
         'desc'   =>   nl2br(htmlspecialchars($data['desc']))
      ));
      $no_events = 0;
   }
}
if( $no_events )
{
   if( CAL_NEXT_DAYS > 1 )
   {
      $template->assign_block_vars('cal_switch_no_next_events', array(
         'msg'   =>   sprintf($lang['CAL_No_Next_Events'], CAL_NEXT_DAYS)
      ));
   }
   elseif( CAL_NEXT_DAYS == 1 )
   {
      $template->assign_block_vars('cal_switch_no_next_events', array(
         'msg'   =>   $lang['CAL_No_Next_Event']
      ));
   }
   else
   {
      $template->assign_block_vars('cal_switch_no_next_events', array(
         'msg'   =>   $lang['CAL_Today_No_Events']
      ));
   }
}
// SIMPLE CALENDAR END
Und das in der poral_body.tpl

Code: Alles auswählen

<!-- ##### SIMPLE CALENDAR START ##### -->
<table width="100%" border="0" cellpadding="1" cellspacing="1" style="border-collapse: collapse" class="forumline">
	<tr>
		<td class="catHead" colspan="2" height="25"><span class="cattitle"><center><b>{NEXT_EVENTS}:</b></center></span></td>
	</tr>
	<!-- BEGIN cal_next_events -->
	<tr>
		<td class="row1 gen" style="padding: 0.7em;"><a href="{cal_next_events.url}"><strong>{cal_next_events.name}</strong></a></td>
	</tr>
	<tr>
		<td class="row1 gen" style="padding: 0.7em;"><em>{cal_next_events.date}</em></td>
	</tr>
	<tr>
		<td class="row1 gensmall" style="padding: 1.5em;">{cal_next_events.desc}</td>
	</tr>
	<!-- END cal_next_events -->
	<!-- BEGIN cal_switch_no_next_events -->
	<tr>
		<td class="row1 gen">{cal_switch_no_next_events.msg}</td>
	</tr>
	<!-- END cal_switch_no_next_events -->
</table>
<br>
<!-- ##### SMIPLE CALENDAR ENDE ##### -->
BB-BF-BM
Mitglied
Beiträge: 2179
Registriert: 28.10.2005 16:38
Wohnort: Essen

Beitrag von BB-BF-BM »

Kein Code vom Simple Calendar fürs phpBB3 wird funktionieren!

Der PHP-CODE ist seit Version 0.5.0 sehr viel kürzer möglich (darauf wurde bei der Entwicklung von mir auch Wert gelegt)

Code: Alles auswählen

// SIMPLE CALENDAR START
include_once($phpbb_root_path . 'calendar/common.' . $phpEx);
define('CAL_NEXT_DAYS', 7);

$i = time();
$end = $i + CAL_NEXT_DAYS * 86400;
while ($i <= $end)
{
	$date = cal_dates::get_date($i);
	$template->assign_block_vars('cal_next_days', array(
		'DATE'	=>	$date->get_format($user->data['cal_date_format']),
		'DMY'	=>	$date->get_dmY()
	));
	if ($event_dates = $date->get_events())
	{
		while (list(, $event_date) = each($event_dates))
		{
			if (!$event_date->get_auth('read'))
			{
				continue;
			}
			$template->assign_block_vars('cal_next_days.event_dates', array(
				'NAME'	=>	$event_date->name,
				'URL'	=>	$event_date->url->build(),
				'AUTHOR_NAME'	=>	$event_date->author->name,
				'AUTHOR_COLOUR'	=>	$event_date->author->colour,
				'AUTHOR_URL'	=>	$event_date->author->url->build(),
				'DESC_DISPLAY'	=>	$event_date->desc_display
			));
		}
	}
	$i += 86400;
}
$template->assign_vars(array(
	'CAL_ACKNOWLEDGEMENT'	=>	CAL_ACKNOWLEDGEMENT
));
// SIMPLE CALENDAR END
Der HTML-Code für prosilver müsste ungefähr so aussehen:

Code: Alles auswählen

<div class="inner bg1 post" id="event_dates"><span class="corners-top"><span></span></span>
<ul>
	<!-- BEGIN cal_next_days -->
	<li><dl>
		<dt>{cal_next_days.DATE}</dt>
		<!-- BEGIN event_dates -->
		<dd><a href="{cal_next_days.event_dates.URL}" style="color: {cal_next_days.event_dates.COLOUR};">{cal_next_days.event_dates.NAME}</a></dd>
		<!-- END event_dates -->
	</dl></li>
	<!-- END cal_next_days -->
</ul>
<span class="corners-bottom"><span></span></span></div>

EDIT: Ich garantiere nicht dafür, dass obiger Code funktioniert; ich habe ihn noch nicht ausprobiert.
schning
Mitglied
Beiträge: 84
Registriert: 26.12.2006 22:49

Beitrag von schning »

Eine wahrscheinlich komisch klingende Frage aber wie verdammt kann ich in den Kalender etwas eintragen und bestimmen wer was eintragen darf :) ??

vielen dank fuer eine Antwort.

mfg schning
Benutzeravatar
Skippy07
Mitglied
Beiträge: 293
Registriert: 03.02.2007 10:03
Wohnort: Vreden

Beitrag von Skippy07 »

Du musst Dir und den anderen Gruppen/Usern die Rechte im ACP unter Gruppenrechte geben.

Gruss
Stefan
schning
Mitglied
Beiträge: 84
Registriert: 26.12.2006 22:49

Beitrag von schning »

ok ich habs tx
schning
Mitglied
Beiträge: 84
Registriert: 26.12.2006 22:49

Beitrag von schning »

Muss doch nochmal nachfragen ich will das gäste und registrierte benutzer alle daten im kalender anschauen können und registrierte benutzer neue daten im kalender posten können bekomme das aber nur hin wenn ich :

"Ist Kalender-Moderator (kann nicht-private Ereignisse sehen) "
auf ja stelle !

hier gaeste und registriete benutzer auf ja stelle da diese ansonsten die kalendereintraege gar nciht sehen ???
aber die loesung ist schelcht das alle kalender mods sind ?!?

was ist zu tun ?
Antworten

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