Hallo Welt

Content Management System für proggen.org
Antworten
Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8858
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Hallo Welt

Beitrag von Xin » Do Jul 28, 2011 6:36 pm

Ich bin mal von meiner Couch runtergekommen und habe mit STRG-Shift+B gespielt und mal den Header und Footer von proggen.org als Textdatei auf die Platte geschrieben.

Aus den Textdateien müssen noch Klassen werden, die sind also alles andere als generiert. Zunächst wird es wohl Klassen geben, die proggen.org-Header und Footer bauen.
Hier wird dann auch endlich dani93s Embrace-Klasse Verwendung finden ;-D

Dazu gibt es die Datei "start" mit folgendem Inhalt:

Code: Alles auswählen

xin@trinity:/data/home/xin/workspace/gsys/trunk/apps/cms$ cat data/start
====== proggen ======

proggen.org HTTP-Service \\

====== Test-Wiki

Styles: \\
**bold**, __underline__, //kursiv//, ''monospace'' \\
\\

Links: \\
[[http://www.proggen.org|www.proggen.org]] \\

Code: \\
<console>                                                                                                                                                                   
#include <stdio.h>                                                                                                                                                          
                                                                                                                                                                            
int main( void )                                                                                                                                                            
{                                                                                                                                                                           
  printf( "Hello World\n" );                                                                                                                                                
                                                                                                                                                                            
  return 0;                                                                                                                                                                 
}                                                                                                                                                                           
</console>
Grundsätzlich sieht das ähnlich aus wie in Dokuwiki, lediglich die Headlines müssen nicht mit 2 Blöcken aus Gleichheitszeichen bestückt werden, ein Zeilenwechsel reicht auch. Umrandet man eine Überschrift mit 2 Blöcken aus Gleichheitszeichen, so kann man danach weiterschreiben.

Das ist alles noch sehr am Anfang. Aber es antwortet wenigstens schon:
pt.jpg
Editieren kann man auch noch nichts. Ich kann allerdings Formulare auslesen - es gibt halt nur noch nichts, was ein Formular auf die Platte schreibt. Es gibt noch keine Benutzerverwaltung oder Rechteverwaltung. Aber es ist zumindest kein Hirngespinst mehr. :-)
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8858
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: Hallo Welt

Beitrag von Xin » Sa Okt 01, 2011 3:14 pm

Schonmal wieder ein Problem weniger.

Meine Website bis 2004 funktioniert schonmal auf dem Progtall-Webserver. :-)
Die funktionierte größenteils noch ohne PHP.

Das bedeutet, dass Dateien erfolgreich übertragen werden können und zwar inkl. der Kennung (Mimetype). Damit werden Grafikformate, wie auch das favicon übertragen.
Damit sind die Grundfunktionen des Servers eigentlich da.
111001_screenshot.png
Jetzt geht es langsam darum, das eigentliche CMS zu schreiben. :-)
Aber ein paar Kleinigkeiten gibt's ja dafür schon. :-)


PS:
Ich wunderte mich gerade etwas über den vorherigen Screenshot, denn da ist ja auch Grafik im Spiel, was zu dem Zeitpunkt gar nicht funktionieren konnte. Ich habe den Header einfach als Include hinzugefügt. Die Grafiken wurden da wohl von proggen.org geladen. Das Fav-Icon funktionierte jedenfalls da noch nicht. ^^
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

Benutzeravatar
Dirty Oerti
Beiträge: 2229
Registriert: Di Jul 08, 2008 5:05 pm
Wohnort: Thurndorf / Würzburg

Re: Hallo Welt

Beitrag von Dirty Oerti » Sa Okt 08, 2011 11:33 am

Meine Antwort kommt zwar etwas spät, aber trotzdem: Das gefällt mir so! :)

Damit ist der Webserveranteil fertig, so wie ich das verstehe? Wie bindest du das CMS nun an? Wird das im Prinzip 1 Server mit dem CMS integriert oder hast du das CMS extra?
Bei Fragen einfach an daniel[ät]proggen[Punkt]org
Ich helfe gerne! :)
----------
Wenn du ein Licht am Ende des Tunnels siehst, freu dich nicht zu früh! Es könnte ein Zug sein, der auf dich zukommt!
----
It said: "Install Win95 or better ..." So I installed Linux.

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8858
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: Hallo Welt

Beitrag von Xin » Sa Okt 08, 2011 12:56 pm

Dirty Oerti hat geschrieben:Meine Antwort kommt zwar etwas spät, aber trotzdem: Das gefällt mir so! :)

Damit ist der Webserveranteil fertig, so wie ich das verstehe? Wie bindest du das CMS nun an? Wird das im Prinzip 1 Server mit dem CMS integriert oder hast du das CMS extra?
Nun, da entstehen derzeit sogenannte "Renderer". Einer ist schon fertig, der "FileTransmitter". Er kopiert eine Datei auf den Stream, zum Beispiel eine ".html"-Datei, oder eine ".png". Der Unterschied ist eigentlich nur, dass die Antwort einen anderen Mime-Type verpasst bekommt.

In Arbeit zum einen ein "Directory"-Renderer. Apache listet dann das Directory auf, ich möchte zunächst nach speziellen Dateien suchen, die die Seite beschreiben, bzw. was damit gemacht werden soll. Die Meta-Information gibt quasi an, wie dieses Directory gerendert werden soll. Sie könnte zum Beispiel "filetransmit index.html" enthalten, was die index.html verschickt - so wie man das ja auch kennt.
Sie könnte aber auch "wiki start.wiki" enthalten, so dass die Datei "start.wiki" durch den Wiki-Renderer geschickt wird. Ein alternativer Wiki-Renderer könnte ein "libindex"-Renderer sein, der sich alle Unter-Verzeichnisse ansieht und guckt und daraus einen Index für Library-Funktionen erstellt.
Was dem derzeitigem Wiki fehlt, ist ein "forward", eine URL umlenkt oder einfach eine andere vorhandene Seite zeigt (z.B. eine Fehlerseite).

Genauso wird es dann einen "thread"-Renderer geben, der Postings untereinander packt und einen "board"-Renderer, der Threads und Unterbretter zu einer Liste verpackt.
Eine Seite besteht also nicht nur aus Inhalt, sondern auch aus der Frage, wie man den Inhalt darstellt.

Viel interessanter ist zur Zeit allerdings die Versionierung von Texten. Das gibt's noch gar nicht. Deswegen ja auch mein Interesse an "Diff"-Algorithmen. ^^
Es gibt noch keine User- oder Rechteverwaltung. Es bleibt also noch einiges zu tun. :-)

Ein Renderer für dynamische Seiten wird sicherlich auch noch kommen. Ich habe da auch schon eine Idee, welche Sprache ich dafür verwende ^^
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

Benutzeravatar
Kerli
Beiträge: 1456
Registriert: So Jul 06, 2008 10:17 am
Wohnort: Österreich
Kontaktdaten:

Re: Hallo Welt

Beitrag von Kerli » Sa Okt 08, 2011 3:13 pm

Xin hat geschrieben:Viel interessanter ist zur Zeit allerdings die Versionierung von Texten. Das gibt's noch gar nicht. Deswegen ja auch mein Interesse an "Diff"-Algorithmen. ^^
Es gibt noch keine User- oder Rechteverwaltung. Es bleibt also noch einiges zu tun. :-)
Wie wäre es denn mit git? Es ist doch genau für so etwas gedacht. Man kann git auch direkt in C/C++ verwenden, also auch direkt in ein C/C++ Programm linken.
"Make it idiot-proof and someone will invent an even better idiot." (programmers wisdom)

OpenGL Tutorials und vieles mehr rund ums Programmieren: http://www.tomprogs.at

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8858
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: Hallo Welt

Beitrag von Xin » Sa Okt 08, 2011 4:32 pm

Kerli hat geschrieben:Wie wäre es denn mit git? Es ist doch genau für so etwas gedacht. Man kann git auch direkt in C/C++ verwenden, also auch direkt in ein C/C++ Programm linken.
Ich habe auch schon über Subversion nachgedacht.
Bedenken habe ich im Konflikt-Fall. Schließlich kann so ein Repository dann auch von mehreren Seiten gefüttert werden, was schief gehen könnte.

Ich kenne mich mit GIT noch kaum aus. Ich warte ja immernoch auf das GIT-Tutorial. ;-)

Ein nicht unübliches Problem ist, dass ich gerne die Kontrolle über die verwendeten Algorithmen habe, weil ich dann auch die Kontrolle darüber habe, Fehler zu entfernen und dafür muss ich auch nicht in fremden Sourcen debuggen. Das ist hier zwar zweitrangig, aber auch nicht ganz grundlos.

Hast Du Erfahrungen damit GIT aus C++ anzusprechen? Besteht da die Möglichkeit eines Wissenstransfers? Ich bin durchaus interessiert, mir diese Möglichkeit genauer anzusehen.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

Benutzeravatar
Kerli
Beiträge: 1456
Registriert: So Jul 06, 2008 10:17 am
Wohnort: Österreich
Kontaktdaten:

Re: Hallo Welt

Beitrag von Kerli » Sa Okt 08, 2011 5:23 pm

Xin hat geschrieben:Hast Du Erfahrungen damit GIT aus C++ anzusprechen? Besteht da die Möglichkeit eines Wissenstransfers? Ich bin durchaus interessiert, mir diese Möglichkeit genauer anzusehen.
Direkt habe ich es noch nicht verwendet. Ich habe nur etwas an cgit geändert und dabei gesehen, dass git direkt verwendet wird.
"Make it idiot-proof and someone will invent an even better idiot." (programmers wisdom)

OpenGL Tutorials und vieles mehr rund ums Programmieren: http://www.tomprogs.at

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8858
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: Hallo Welt

Beitrag von Xin » Mo Nov 28, 2011 7:26 pm

So, ab heute gibt's auch Kekse. ^^

Cookies implementiert.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

Benutzeravatar
cloidnerux
Moderator
Beiträge: 3123
Registriert: Fr Sep 26, 2008 4:37 pm
Wohnort: Ram (Gibts wirklich)

Re: Hallo Welt

Beitrag von cloidnerux » Mo Nov 28, 2011 7:36 pm

+1
Mist, das geht ja nicht^^
Aber immerhin geht es vorwärts: Weiter so!
Redundanz macht wiederholen unnötig.
quod erat expectandum

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8858
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: Hallo Welt

Beitrag von Xin » Mo Nov 28, 2011 7:44 pm

cloidnerux hat geschrieben:+1
Mist, das geht ja nicht^^
Aber immerhin geht es vorwärts: Weiter so!
Ich spielte eben mit dem Gedanken, wie man sowas implementieren kann, um "Zustimmung" oder "Dank" auszudrücken, ohne gleich ein Posting machen zu müssen.

Da fehlt diesem Forum nämlich durchaus etwas. Genauso, dass man eine Thread als "Gelöst" markieren kann.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

Antworten