cmsMain
eforia startet die Prozedur cmsMain. Diese ist wie folgt definiert:

procedure cmsMain(nLfdWEB:INTEGER;cSpacer,cSes,cURL,cParam:STRING):STRING

Parameter:
  nLfdWEB = Autonummer des aktuellen Datensatzes von cms_web
  cSpacer = Der Platzhalter, der ersetzt werden muss
  cSes        = Aktuelle Session
  cURL        = Aktuelle URL
  cParam   = Optionale Parameter

Rückgabe:
  Session = Die Session nach Abarbeitung des Moduls

Dadurch ist es dem Modul möglich, die aktuelle Session zu ändern. Z.B. wenn das Programm über andere Wege eine User An- oder Abmeldung vornehmen muss. Normalerweise wird die in cSes übergebene Session unverändert zurück gegeben.

cSpacer: Der Platzhalter in Ramtext, den das Programm ersetzen muss. Es macht also quasi seine Ausgaben an diese Stelle.

cSes: Über die übergebene Session können z.B. die Rechte des aktuellen Users ermittelt werden.

cURL: Die URL, die zum Aufruf der aktuellen Seite und damit auch des Moduls führte. Damit kann das Modul einen Link auf sich selbst setzen und auch evtl. weitere Parameter unterbringen. Dazu ist unten ein Beispiel.

cParam: Beim einbinden in eine Seite kann ein Parameterstring angegeben werden. Dieser wird hier übergeben. Ein Modul kann so in verschiedene Seiten integriert werden und dort verschiedene Aufgaben übernehmen. Denkbar ist z.B. ein Modul, dass eine
Datenbanktabelle darstellt. Als Parameter wird der Name übergeben.


Beispiele:
Das klassische "Hallo-Welt" würde so aussehen:

procedure cmsMain(nLfdWEB:INTEGER;cSpacer,cSes,cURL,cParam:STRING):STRING
  Subst(cSpacer,'Hallo Welt')
  Return cSes
endproc


Will ein Programm einen Link auf sich selbst erzeugen, benutzt es cURL:

procedure cmsMain(nLfdWEB:INTEGER;cSpacer,cSes,cURL,cParam:STRING):STRING
  Subst(cSpacer,'Wir haben jetzt '+TimeStr(now)+' Uhr<br>'+cSpacer)
  Subst(cSpacer,'<a href="'+cURL+'">aktualisieren</a>')
  Return cSes
endproc


An cURL können auch eigene Parameter angehängt werden:

procedure cmsMain(nLfdWEB:INTEGER;cSpacer,cSes,cURL,cParam:STRING):STRING
  var cOpt : STRING
  cOpt:=GetQueryString('opt')
  if cOpt=''
    Subst(cSpacer,'Bitte wählen Sie:<br>'+cSpacer)
  else
    Subst(cSpacer,'Sie haben '+cOpt+' gewählt<br>'+cSpacer)
  end
  if Scan('?',cURL)=0 then cURL:=cURL+'?' end
  Subst(cSpacer,'<a href="'+cURL+'&opt=a">a</a> '+cSpacer)
  Subst(cSpacer,'<a href="'+cURL+'&opt=b">b</a> '+cSpacer)
  Subst(cSpacer,'<a href="'+cURL+'&opt=c">c</a> '+cSpacer)
  Subst(cSpacer,'')
  Return cSes
endproc


 

eforia® web manager Dokumentation
Stand V 3.01 / 20.12.2010
© Horst Klier
http://www.klier.net
Impressum