wie ist der Birthday MOD von TerraFrost?

Support zum phpBB2 und zu MODs anderer Autoren.

Moderator: Supporter

Beitragvon Christian_N » 16. Aug 2006 21:23

Hallo,
der Titel sagt schon einiges, da Niels seine Seite eingestellt hat und wir nicht genau wissen wie weit er seine MODs noch aktuallisiert, hab ich durch zufall ein Birthday MOD von jemanden gefunden der sich TerraFrost nennt.

Jetzt ist allerdings die frage, kennt jemand den MOD schon und wie ist der, des geht jetzt mehr an die Leute die etwas mehr erfahrung haben, kann man schon in der Installationsanleitung schwachstelle, sicherheitslücke etc. die man bemenkel könnte feststelle, die man mit dem einbau, einbauen würde?

Den würd ihn mal versuche rein zu bauen eigentlich in der hoffnung das der mehr aktuell gehaltet wird, den brauch schon ein Birthday MOD, aber allerdings einen der auch wirklich aktuell gehalten wird, also der umgehend gefixt wird falls sicherheitslücken bekannt werden die ausgenutzt werden könnte etc.

P.S. der besagte MOD gibt es hier: http://www.phpbbhacks.com/download/6698

Schonmal danke für die Antworten.

Gruß Chris

Zugefügt nach 7 Minute(n):

Nachtrag: Oder kann mir jemand sagen wie sicher der MOD von Niels momentan ist?
Den wie ich sehen kann, tut der von TerraFrost kein popUP öffnen mit die Glückwunsch Nachricht an des Geburtstag kind.
Chantals - Fanpage :: http://www.chantals-fanpage.de
Benutzeravatar
Christian_N
User
 
Beiträge: 524
Registriert: 31. Mai 2005 00:17
Wohnort: Deutschland

Beitragvon AmigaLink » 19. Aug 2006 08:57

Den MOD von TerraFrost kenne ich nicht.
Aber dem von Niels kannst du eigentlich vertrauen. :)
Die deutsche Sprache ist Freeware, du kannst sie benutzen, ohne dafür zu bezahlen. Sie ist aber nicht Open Source, also darfst du sie nicht verändern, wie es dir gerade passt.
Benutzeravatar
AmigaLink
Administrator
 
Beiträge: 3987
Registriert: 11. Aug 2004 01:06
Wohnort: NRW

Beitragvon oxpus » 19. Aug 2006 10:05

Bei der Version von Niels, die ja die erste für das phpBB überhaupt ist, würde ich keine Bedenken haben. Die ist ausgereift und lange erfolgreich getestet.
Kein Support ausserhalb der Foren!
No support outside the forums!
Benutzeravatar
oxpus
Partner
 
Beiträge: 610
Registriert: 14. Okt 2004 11:55
Wohnort: Bad Wildungen (halt so'n kleines Kurkaff)

Beitragvon Christian_N » 19. Aug 2006 12:22

Danke euch.
Also hab mir mal die von Terraforst etwas angeschaut, einiges hat die schon drin was die von Niels nicht kann, z.B.
1. Kann man einstellen das falls des Geburstag eingegeben wurde nicht mehr geändert werden kann.

2. Dann ist es möglich auch nur den Tag und Monat anzugeben und des Jahr frei lassen, falls jemand nicht gerade sein Alter preis geben möchtet.

Aber dafür wird bei Niels gratuliert, was bei den von TerraFrost nicht ist, den von Niels fand ich bisher immer ganz gut, vllt. kann man ja mal schauen wie der von TerraFrost arbeitet mit die 2 funktionen um daraus Add-ONs für den von Niels zu basteln.

Wobei des 2. wohl etwas schweriger sein wird, da dort sicher viel geändert werden müsste.

Naja nutz ich erstmal den von Niels weiter sicher kann man da es auch irgendwie realisieren so das man die bearbeitung des Geburtstags sperren kann falls schon eingetragen ist, des 2. ist auch net so wichtig, da man die angabe ja freiwillig lassen kann.
Chantals - Fanpage :: http://www.chantals-fanpage.de
Benutzeravatar
Christian_N
User
 
Beiträge: 524
Registriert: 31. Mai 2005 00:17
Wohnort: Deutschland

Beitragvon oxpus » 19. Aug 2006 12:32

Das Sperren des Geburtstages erreicht man, in dem beim Profil im $mode == 'editprofile' das Geburtsdatum nur angezeigt und per input type=hidden übergeben wird.
Dann kann der User es nicht ändern, es wird aber dennoch korrekt wieder in die Userdaten geschrieben.
Wäre aber dann übel, wenn sich der User vertippt hätte.
Dann wäre der Admin gefragt, die Angaben im ACP zu korrigieren (da würde ich es auch nicht sperren).

Für mich daher auch eine eher überflüssge Funktion ;)
Kein Support ausserhalb der Foren!
No support outside the forums!
Benutzeravatar
oxpus
Partner
 
Beiträge: 610
Registriert: 14. Okt 2004 11:55
Wohnort: Bad Wildungen (halt so'n kleines Kurkaff)

Beitragvon Christian_N » 19. Aug 2006 13:23

Ja klar im ACP werd ich es sowieso nicht sperren, aber deins möglichkeit is auch nicht so des wie es bei TerraFrost ist, da wird es von vorne rein im editprofile gesperrt, auch wenns leer ist, bei TerraFrost wirds erst gesperrt sobald es ausgefüllt ist.

Spricht wenn jem. bei der Anmeldung es nicht angab kann er es später im Profil auch nicht nachträglich tun, bei deine methode, bei TerraFrost ist es aber möglich später im Profil noch nachzuholen, erst danach wird gesperrt.
Es wird also geprüft ob die felder ausgefüllt sind wenn ja sperren wenn nein nicht sperren.

Und dieses kann dann im ACP eingestellt werden ob er es sperren soll oder nicht sperren soll.

Aber des ist erstmal nicht so wichtig...

Wichtiger ist jedenfalls mal was anders was mir gerade bei einbau von Niels auffiel, nähmlich fiel mir da u.a. auf das in der admin_users.php folgendes gemacht werden soll
Code: Alles auswählen
#
#-----[ FIND ]------------------------------------------------
#
//
// Update entry in DB
         
#
#-----[ BEFORE, ADD ]-----------------------------------------
#

// Start add - Birthday MOD
// find the birthday values, reflected by the $lang['Submit_date_format']
      if ($b_day || $b_md || $b_year) //if a birthday is submited, then validate it
      {
         $user_age=(date('md')>=$b_md.(($b_day <= 9) ? '0':'').$b_day) ? date('Y') - $b_year : date('Y') - $b_year - 1 ;
         // Check date, maximum / minimum user age
         if (!checkdate($b_md,$b_day,$b_year))
         {
            $error = TRUE;
            if( isset($error_msg) )$error_msg .= "<br />";
            $error_msg .= $lang['Wrong_birthday_format'];
         } else
         if ($user_age>$board_config['max_user_age'])
         {
            $error = TRUE;
            if( isset($error_msg) )$error_msg .= "<br />";
            $error_msg .= sprintf($lang['Birthday_to_high'],$board_config['max_user_age']);
         } else
         if ($user_age<$board_config['min_user_age'])
         {
            $error = TRUE;
            if( isset($error_msg) )$error_msg .= "<br />";
            $error_msg .= sprintf($lang['Birthday_to_low'],$board_config['min_user_age']);
         } else
         {
            $birthday = ($error) ? $birthday : mkrealdate($b_day,$b_md,$b_year);
         }
      } else $birthday = ($error) ? '' : 999999;
// End add - Birthday MOD


wäre es nicht so besser?
#
#-----[ FIND ]------------------------------------------------
#
//
// Update entry in DB

#
#-----[ BEFORE, ADD ]-----------------------------------------
#

// Start add - Birthday MOD
// find the birthday values, reflected by the $lang['Submit_date_format']
if ($b_day || $b_md || $b_year) //if a birthday is submited, then validate it
{
$user_age=(date('md')>=$b_md.(($b_day <= 9) ? '0':'').$b_day) ? date('Y') - $b_year : date('Y') - $b_year - 1 ;
// Check date, maximum / minimum user age
if (!checkdate($b_md,$b_day,$b_year))
{
$error = TRUE;
if( isset($error_msg) )$error_msg .= "<br />";
$error_msg .= $lang['Wrong_birthday_format'];
}
else if ($user_age>$board_config['max_user_age'])
{
$error = TRUE;
if( isset($error_msg) )$error_msg .= "<br />";
$error_msg .= sprintf($lang['Birthday_to_high'],$board_config['max_user_age']);
}
else if ($user_age<$board_config['min_user_age'])
{
$error = TRUE;
if( isset($error_msg) )$error_msg .= "<br />";
$error_msg .= sprintf($lang['Birthday_to_low'],$board_config['min_user_age']);
}
else
{
$birthday = ($error) ? $birthday : mkrealdate($b_day,$b_md,$b_year);
}
}
else
{
$birthday = ($error) ? '' : 999999;
}
// End add - Birthday MOD
als am ende bei der letzte else noch die { öffnen und dann wieder schließen } - vorgehoben hab ich die mal mit rot, die ich hinzugefügt habe...
Weiss ja nicht ob man es irgendwie als Bug bezeichen kann, weil bisher es nie ein fehler gab, aber ich kenn es nur mit den klammer so -
Code: Alles auswählen
If (blabla)
{
// code blabla
}
else
{
// code blabla
}

Und finde sieht auch besser aus als ohne die klammern. :)

Zugefügt nach 6 Minute(n):

Auch ein schritt danach steht
Code: Alles auswählen
#
#-----[ IN-LINE AFTER, ADD ]----------------------------------
#
, user_birthday='$birthday', user_next_birthday_greeting=$next_birthday_greeting
aber wenn man die anschaut von den andere, wie $allowviewprofile etc. wäre vllt. es so besser
Code: Alles auswählen
, user_birthday = $birthday, user_next_birthday_greeting = $next_birthday_greeting
um es einheitlich zu haben.
Oder haben die einfache ausrufzeichen ' ' bei $birthday hier eine besondere bedeutung?
Chantals - Fanpage :: http://www.chantals-fanpage.de
Benutzeravatar
Christian_N
User
 
Beiträge: 524
Registriert: 31. Mai 2005 00:17
Wohnort: Deutschland

Beitragvon oxpus » 19. Aug 2006 13:33

Aber kein 2. else nach einem ersten!
Und mit Klammern ist immer besser.
Kein Support ausserhalb der Foren!
No support outside the forums!
Benutzeravatar
oxpus
Partner
 
Beiträge: 610
Registriert: 14. Okt 2004 11:55
Wohnort: Bad Wildungen (halt so'n kleines Kurkaff)

Beitragvon Christian_N » 19. Aug 2006 13:39

Das hat schon seine rechtigkeit so um es besser zu verteudliche mach ich es mal in code block
Code: Alles auswählen
if ($b_day || $b_md || $b_year) //if a birthday is submited, then validate it
      {
         $user_age=(date('md')>=$b_md.(($b_day <= 9) ? '0':'').$b_day) ? date('Y') - $b_year : date('Y') - $b_year - 1 ;
         // Check date, maximum / minimum user age
         if (!checkdate($b_md,$b_day,$b_year))
         {
            $error = TRUE;
            if( isset($error_msg) )$error_msg .= "<br />";
            $error_msg .= $lang['Wrong_birthday_format'];
         }
         else if ($user_age>$board_config['max_user_age'])
         {
            $error = TRUE;
            if( isset($error_msg) )$error_msg .= "<br />";
            $error_msg .= sprintf($lang['Birthday_to_high'],$board_config['max_user_age']);
         }
         else if ($user_age<$board_config['min_user_age'])
         {
            $error = TRUE;
            if( isset($error_msg) )$error_msg .= "<br />";
            $error_msg .= sprintf($lang['Birthday_to_low'],$board_config['min_user_age']);
         }
         else
         {
            $birthday = ($error) ? $birthday : mkrealdate($b_day,$b_md,$b_year);
         }
      }
      else
      {
      $birthday = ($error) ? '' : 999999;
      }
des else am ende betriff ja des if am anfang und des else davor also vorletzte betriff des if vom anfang des 2.

so ist es ja auch eigentlich vom Niels selbst gemacht, hab ja nur im prinzip die Klammer hinzugefügt.
Weils schöner aussieht und übersichtlicher aussieht - weshalb es immer besser ist weiss ich zwar nicht *gg*

So und was sag man zu den Nachtrag, hatte die einfache gänzefüssen ' ' was zu bedeuten bei $birthday den in dem ganze zeile kann man ansonste nirgends solche sehn.
Chantals - Fanpage :: http://www.chantals-fanpage.de
Benutzeravatar
Christian_N
User
 
Beiträge: 524
Registriert: 31. Mai 2005 00:17
Wohnort: Deutschland

Beitragvon oxpus » 19. Aug 2006 14:00

Okay, so ist das else schon korrekt.
Die einfachen '' sind auch richtig, da man ohne einen Geburtstag auch nichts eintragen kann.
Also muss hier alles leer sein.
Kein Support ausserhalb der Foren!
No support outside the forums!
Benutzeravatar
oxpus
Partner
 
Beiträge: 610
Registriert: 14. Okt 2004 11:55
Wohnort: Bad Wildungen (halt so'n kleines Kurkaff)

Beitragvon Christian_N » 19. Aug 2006 14:03

Oki danke, dann mach ich aber es so jedenfalls:
Code: Alles auswählen
, user_birthday = '$birthday', user_next_birthday_greeting = $next_birthday_greeting
damit es net so zusamme geklatscht aussieht, also statt so wie in der anleitung steht:
Code: Alles auswählen
, user_birthday='$birthday', user_next_birthday_greeting=$next_birthday_greeting


Jetzt muss ich aber los zur arbeit, mal schaun heute abend was ich da noch so finden wird, ob da noch mehr klammer ggf. fehlen etc.
Chantals - Fanpage :: http://www.chantals-fanpage.de
Benutzeravatar
Christian_N
User
 
Beiträge: 524
Registriert: 31. Mai 2005 00:17
Wohnort: Deutschland


Zurück zu phpBB2 Support



Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 5 Gäste