|
13.04.2011, 01:01 | #1 | |||||||||||
Neuling
Registriert seit: 12.04.2011
Beitr?ge: 27
Abgegebene Danke: 1
Erhielt 10 Danke für 1 Beitrag
Downloads: 4
Uploads: 0 Nachrichten: 0 Renommee-Modifikator:
0 |
jazzrul
Hallo Gemeinde,
habe vor ca 18 Monaten die Pflege eines, auf der gotthummer-source basierenden, Trackers mit geschlossener Gemeinschaft übernommen. Seitdem hunderte von Änderungen gemacht. SQL-Optimierungen, Schleifen-Laufzeiten verbessert, neues AJAX Upload-Formular, AJAX für Shout- u. Teambox, Shoutcast-Anzeige, TS3, etc. Welche Codebasis ist die hier aktuell "gültige"? Damit ich Patches erstellen kann, mit denen die Community hier etwas anfangen kann und eine Diskussionsgrundlage definiert ist. Ich würde gerne mit einer Community zusammenarbeiten, statt alleine vor mich hin zu wuseln. Bin zufällig heute über dieses Board gestolpert. Die Source, die ich damals übernahm war leider schon von 2 - 3 Leuten vor mir "bearbeitet" worden, weshalb ich nicht sagen kann, welche Teile hier überhaupt anerkannt, bzw. einigermaßen allgemeingültig sind. Bin für jede Anregung bezüglich der weiteren Vorgehensweise dankbar. Gruß jazzrul |
|||||||||||
13.04.2011, 06:51 | #2 |
Administrator
Registriert seit: 07.03.2008
Ort: 3. Bit Links hinter dem Kernel
Alter: 49
Beitr?ge: 9.639
Abgegebene Danke: 1.121
Erhielt 4.499 Danke für 458 Beiträge
Downloads: 18
Uploads: 9 Nachrichten: 2258 Renommee-Modifikator:
10 |
Also ich würde empfehlen, als Basis die Default-NV von Gartenzwerg zu nutzen.
Wenn die Sachen "sauber" sind, passen sie ohne Probleme in ca. 90% der Sourcen
__________________
Fragen gehören ins Forum - und NICHT in mein Postfach ! Ich erteile KEINEN Privatunterricht über e-mail und PN ! Hackliste Br. NV nach Threadstarter u. Aktualität <--+--> Liste Hacks Bereich NV Alphabethisch |
13.04.2011, 10:06 | #3 | |||||||||||
König
Registriert seit: 14.02.2011
Ort: Graz
Alter: 39
Beitr?ge: 1.495
Abgegebene Danke: 82
Erhielt 200 Danke für 37 Beiträge
Downloads: 11
Uploads: 0 Nachrichten: 6230 Renommee-Modifikator:
3168 |
Der beste Patch meiner Meinung nach für den NV ist, das Teil zu löschen und selbst von Zeile 1 aufwärts einen zu schreiben!
__________________
|
|||||||||||
13.04.2011, 15:02 | #4 | |||||||||||
Erfahrener Benutzer
Registriert seit: 10.11.2008
Ort: im backbone
Beitr?ge: 131
Abgegebene Danke: 19
Erhielt 0 Danke für 0 Beiträge
Downloads: 3
Uploads: 0 Nachrichten: 6 Renommee-Modifikator:
150 |
Kann ich Stifler nur zustimmen. Die NV ist so alt und schlecht geschrieben, da lohnt sich keine Arbeit für.
__________________
________________________ MfG bastelfreak |
|||||||||||
13.04.2011, 17:33 | #5 | |||||||||||
Neuling
Registriert seit: 12.04.2011
Beitr?ge: 27
Abgegebene Danke: 1
Erhielt 10 Danke für 1 Beitrag
Themenstarter
Downloads: 4
Uploads: 0 Nachrichten: 0 Renommee-Modifikator:
0 |
natürlich kann man das alles, aus heutiger Sicht gesehen, als suboptimal bezeichnen. Nun gab es vor 2-3 Jahren nicht sooo viele Alternativen, die signifikant besser gewesen wären. Also betrachten wir doch einfach die Tatsachen der vorhanbdenen Source, sparen uns die Arbeit, bei 0 anzufangen, nehmen die funktionierenden Teile und verbessern die nicht ganz so tollen Stücke. Dass dies teilweise auch ein neudesign erfordert, ist mir klar und wurde von mir an der ein oder anderen Stelle schon gemacht.
Leider lässt sich die ursprüngliche Intension der Autoren nicht mehr an jeder Stelle nachvollziehen, so dass ich stellenweise erhebliche Verständnisprobleme habe, was da eigentlich wirklich passiert. (Ein Beispiel ist die Art und Weise, wie in der announce.php der Status "connectable" ermittelt wird) Hinzu kommt, dass mir in der praktischen PHP-Programmierung einige Grundlagen nicht wirklich geläufig sind und ich da nur Vermutungen habe (z.B. register Functions, oder scope von Variablen), was mir das logische Nachvollziehen der gewünschten Funktion erschwert. Ich komme aus der C++ / Perl Ecke und zu dem mir anvertrauten Quellcode, wie die Jungfrau zum Kind. Aber ich bin diese Verpflichtung eingegangen und will sie auch erfüllen. Ich sehe ein großes Potential in der Source-Entwicklung durch eine Community, in der man sich gegenseitig geistig befruchten kann und damit einen synergie-effekt erreicht. Danke Cerberus für Deine Empfehlung. Die anderen: Äußerungen ala " alles Dreck und neu schreiben" sind nicht wirklich konstruktiv, ohne das Aufzeigen von Alternativen. Wobei ich tatsächlich fast jede Datei bisher anfassen musste, um grobe Fehler rauszuholen. Wenn jemand einen Tip für ein vollständiges Grundgerüst hat, das mindestens die gleiche Funktionalität bietet, bin ich dem durchaus aufgeschlossen. Gruß jazzrul Ge?ndert von jazzrul (13.04.2011 um 17:37 Uhr) |
|||||||||||
13.04.2011, 17:42 | #6 | |||||||||||
Erfahrener Benutzer
Registriert seit: 10.08.2009
Beitr?ge: 477
Abgegebene Danke: 104
Erhielt 71 Danke für 11 Beiträge
Downloads: 22
Uploads: 0 Nachrichten: 3476 Renommee-Modifikator:
1548 |
als grundgerüst kann ich dir standart TBDev empfehlen auf der eigentlich auch die NV Source basiert.
Die source is wesentlich sauberer gecodet und bietet die selbe funktionalität wie die NV nur schneller gruß aggro |
|||||||||||
13.04.2011, 19:00 | #7 | |||||||||||
Neuling
Registriert seit: 12.04.2011
Beitr?ge: 27
Abgegebene Danke: 1
Erhielt 10 Danke für 1 Beitrag
Themenstarter
Downloads: 4
Uploads: 0 Nachrichten: 0 Renommee-Modifikator:
0 |
bolzen: du meinst TBDev.net ?
Stifler: mit Design meine ich bestimmt nicht das Aussehen der Oberfläche , ich rede von dem Kram, den ich in Schriftform in meinem Editor bewundern darf, dem Code-Design (den Begriff gibt es tatsächlich). Zu meinem Beispiel: es wird in der announce.php eine Variable $connectable verwendet, deren definition und initialisierung ich nirgens finden kann. Evtl. ist PHP da was besonderes, aber in allen mir geläufigen Programmiersprachen muss ich den Wert einer Variablen erst irgendwo definieren, bevor ich sie verwenden kann, bzw, verlässlich das Vorhandensein eines bestimmten Wertes prüfen kann (in diesem Fall 'yes' oder 'no', da das mit dem "yes/no - enum" der DB korrelliert.) Meine ganz konkrete Frage ist also: Wo wird $connectable mit dem aktuellen realwert initialisiert? Und kann dies auch ausserhalb der betreffenden PHP-Datei geschehen? (Da hätten wir eine der erwähnten Wissenslücken meinerseits, bezüglich Variablenscope). Auf jeden Fall schonmal Danke für die Beteiligung und Hilfe. |
|||||||||||
13.04.2011, 18:06 | #8 | |||||||||||
König
Registriert seit: 14.02.2011
Ort: Graz
Alter: 39
Beitr?ge: 1.495
Abgegebene Danke: 82
Erhielt 200 Danke für 37 Beiträge
Downloads: 11
Uploads: 0 Nachrichten: 6230 Renommee-Modifikator:
3168 |
Was heißt hier neudesign?
Mit der grafischen Oberfläche hat das ganze überhaupt nichts zu tun. Die Sourcecode Struktur ist einfach unübersichtlich und die zusätzlichen "Hacks" tun ihr übriges dazu. connectable: Da wird mit dem fsockopen Befehl eine Socketverbindung (eine Art Ping) zum user (IP+Port) aufgebaut! Ist der Port offen (Pong) ist er connectable, kann keine Verbindung aufgebaut werden ist er Unerreichbar! Auf die gleiche Weise kann man auch überprüfen ob eine Website erreichbar ist!
__________________
|
|||||||||||
13.04.2011, 19:05 | #9 | |||||||||||
König
Registriert seit: 14.02.2011
Ort: Graz
Alter: 39
Beitr?ge: 1.495
Abgegebene Danke: 82
Erhielt 200 Danke für 37 Beiträge
Downloads: 11
Uploads: 0 Nachrichten: 6230 Renommee-Modifikator:
3168 |
Such mal nach einer $sock!
normalerweise PHP-Code:
__________________
|
|||||||||||
13.04.2011, 19:14 | #10 | |||||||||||
Neuling
Registriert seit: 12.04.2011
Beitr?ge: 27
Abgegebene Danke: 1
Erhielt 10 Danke für 1 Beitrag
Themenstarter
Downloads: 4
Uploads: 0 Nachrichten: 0 Renommee-Modifikator:
0 |
Danke Stifler.
Da hat wohl einer meiner Vorgänger Mist gebaut und vor dem setzen von $connectable = 'no'; ein if($connectable == 'no') eingebaut. Ich werde wohl nicht umhinkommen den ganzen Tracker von unten her neu aufzubauen, ohne dass die User das merken (seufz). Bis jetzt ging halt irgendwie, aber es wird immer schwieriger, bei Ungereimtheiten die wahre Ursache zu entdecken. Da dies hier eigentlich der Thread zum Vorstellen der Person ist, werde ich weitere Kommunikation zu diesem spezifischen Thema in einem dazu eingerichteten Zweig dieses Forums äussrn. Welcher Kanal passt da eurer Meinung am besten? |
|||||||||||
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, G?ste: 1) | |
|
|