Wie bekomme ich die Geburtstage in den mycalendar?

Probleme bei der regulären Arbeiten mit phpBB, Fragen zu Vorgehensweisen oder Funktionsweise sowie sonstige Fragen zu phpBB im Allgemeinen.
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.1, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Antworten
Benutzeravatar
JumpinJack
Mitglied
Beiträge: 953
Registriert: 27.05.2002 10:37
Wohnort: Ariendorf
Kontaktdaten:

Wie bekomme ich die Geburtstage in den mycalendar?

Beitrag von JumpinJack »

Also ich hab da schon nen Script in petto. Leider gibt der nur einen Link "Geburtstag" aus und dieser Link ist fehlerhaft. Wenn ich über diesen mit der Mouse fahre sagt der IE unten links ein gelbes Dreieck und das auf der Seite fehler aufgetreten sind.

Der Code:

Code: Alles auswählen

            // For the Birthday Mod 
            $query = "select username, DATE_FORMAT(FROM_DAYS(TO_DAYS(NOW())-TO_DAYS(date_add(\"1970-01-01\", interval(user_birthday) day))), '%Y')+1 as birthday 
                      from ".USERS_TABLE." u 
                      where month(date_add(\"1970-01-01\", interval(user_birthday) day)) = '".$monthView['month']."' and 
                            dayofmonth(date_add(\"1970-01-01\", interval(user_birthday) day)) = '$day';"; 

            if (!$result = $db->sql_query($query)) { 
                message_die(GENERAL_ERROR, 'Error querying dates for calendar.'); 
            } 

            while ($topic = $db->sql_fetchrow($result)) { 
                $topic_text = "Birthday"; 
                $username = $topic['username']; 
                $birthday = $topic['birthday']; 

                $template->assign_block_vars('date_row.date_cell.switch_date_cells.date_event', array( 
                     'U_EVENT' => "$first_date<a href=\"#\" onMouseOver=\"createTitle(this, '<b>Birthday:</b> $username<br>Congratulations on your <b>$birthday</b> birthday.', event.pageX, event.pageY);\" onMouseOut=\"destroyTitle();\" class=\"gensmall\">$topic_text</a>") 
                ); 
            }
Wenn mir hier einer helfen kann wo der Fehler is?!
Der code wird vor dem...

Code: Alles auswählen

            // Increment the day
            $day++;
...in der mycalendar.php eingefügt.
Und wenn natürlich einer nen besseren Weg weiß oder wie ich "Geburtstag Username" da rein bekomme wäre ich auch sehr dankbar.

Egal wie. Please help.
Liebe Grüße
JumpinJack
Benutzeravatar
Henne
Ehemaliges Teammitglied
Beiträge: 4520
Registriert: 04.01.2002 01:00
Wohnort: Lage (Lippe)
Kontaktdaten:

Beitrag von Henne »

Wahrscheinlich ne neuere Version vo der myCalendar Mod. Da hat sich der JavaScript Code geändert.
Tausche mal das hier:

Code: Alles auswählen

'U_EVENT' => "$first_date<a href=\"#\" onMouseOver=\"createTitle(this, '<b>Birthday:</b> $username<br>Congratulations on your <b>$birthday</b> birthday.', event.pageX, event.pageY);\" onMouseOut=\"destroyTitle();\" class=\"gensmall\">$topic_text</a>")
gegen das hier:

Code: Alles auswählen

'U_EVENT' => "$first_date<a href=\"$profillink\" onmouseover=\"domTT_activate(event, 'content', '<b>Geburtstag:</b> $username<br />Herzlichen Glückwunsch zum <b>$birthday.</b> Geburtstag.');\" class=\"gensmall\">$topic_text</a>")
aus.


EDIT:
Hier mal mein ganzer Part. Ich hab $profillink auch noch definiert usw.

Code: Alles auswählen

// For the Birthday Mod
		$query = "select user_id, username, DATE_FORMAT(FROM_DAYS(TO_DAYS(NOW())-TO_DAYS(date_add(\"1970-01-01\", interval(user_birthday) day))), '%Y')+1 as birthday
		          from ".USERS_TABLE." u
		          WHERE month(date_add(\"1970-01-01\", interval(user_birthday) day)) = '".$monthView['month']."'
		          AND dayofmonth(date_add(\"1970-01-01\", interval(user_birthday) day)) = '$day'
		          AND user_birthday < '999999';";

		            if (!$result = $db->sql_query($query)) {
		                message_die(GENERAL_ERROR, 'Error querying dates for calendar.');
		            }

		            while ($topic = $db->sql_fetchrow($result)) {
		           	$user_id = $topic['user_id'];
		           	$username = $topic['username'];
		                $topic_text = $username ."'s&nbsp;Geburtstag";
                		$profillink = append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=$user_id");
		                $birthday = $topic['birthday'];

		                if ($today['day']>$day)
		                $birthday = $birthday + ($monthView['year']-$today['year'])-1;
		                else
		                $birthday = $birthday + ($monthView['year']-$today['year']);

		                $template->assign_block_vars('date_row.date_cell.switch_date_cells.date_event', array(
		                    // 'U_EVENT' => "$first_date<a href=\"#\" onMouseOver=\"domTT_activate(this, '<b>Geburtstag:</b> $username<br>Herzlichen Glückwunsch zum <b>$birthday</b> Geburtstag.', event.pageX, event.pageY);\" onMouseOut=\"destroyTitle();\" class=\"gensmall\">$topic_text</a>")

		                    'U_EVENT' => "$first_date<a href=\"$profillink\" onmouseover=\"domTT_activate(event, 'content', '<b>Geburtstag:</b> $username<br />Herzlichen Glückwunsch zum <b>$birthday.</b> Geburtstag.');\" class=\"gensmall\">$topic_text</a>")
		                );
		}
		// Birthday Mod END 
Benutzeravatar
JumpinJack
Mitglied
Beiträge: 953
Registriert: 27.05.2002 10:37
Wohnort: Ariendorf
Kontaktdaten:

Beitrag von JumpinJack »

Also das hat sauber gepast. Also klappt jetzt prima. Vielen dank.

Kannst du mir noch sagen wie ich die Geburtatage in den Mini_cal bekomme. Da is jedenfalls schon was in der mini_cal´_body.tpl vorgesehen:

Code: Alles auswählen

  <!-- BEGIN switch_mini_cal_birthdays -->
  <tr><td class="row2" align="left"><span class="gensmall">{L_WHOSBIRTHDAY_TODAY}</span></td></tr>
  <tr><td class="row2" align="left"><span class="gensmall">{L_WHOSBIRTHDAY_WEEK}</span></td></tr>
  <!-- END switch_mini_cal_birthdays -->
Aber bei mir erschient da leider nix.
Liebe Grüße
JumpinJack
Benutzeravatar
Henne
Ehemaliges Teammitglied
Beiträge: 4520
Registriert: 04.01.2002 01:00
Wohnort: Lage (Lippe)
Kontaktdaten:

Beitrag von Henne »

Weiß nicht.
Schon probiert den Part, der eigentlich in die index.php kommt in die mini_cal.php einzubauen?
Dann müsste er die Variablen doch eigentlich haben.
Benutzeravatar
JumpinJack
Mitglied
Beiträge: 953
Registriert: 27.05.2002 10:37
Wohnort: Ariendorf
Kontaktdaten:

Beitrag von JumpinJack »

Muss ich nicht eher den part der in die mycalendar.php kommt in die des mini-cal einbinden?
Liebe Grüße
JumpinJack
Benutzeravatar
Henne
Ehemaliges Teammitglied
Beiträge: 4520
Registriert: 04.01.2002 01:00
Wohnort: Lage (Lippe)
Kontaktdaten:

Beitrag von Henne »

Denke nicht, da du ja nen Text angezeigt bekommst.
Das ist dann so wie mit den nächsten Terminen.
Antworten

Zurück zu „phpBB 2.0: Administration, Benutzung und Betrieb“