Implementation of Online Application Forms with OpenPetra: Difference between revisions

From OpenPetra Wiki
Jump to navigation Jump to search
Line 14: Line 14:
  nant generateWebform -D:file=Samples/SimpleForm
  nant generateWebform -D:file=Samples/SimpleForm


start the webserver, using xsp2 from Mono:
start the webserver, using xsp2 from Mono (make sure you got installed Mono on your Windows machine, and the path to Mono is set in the OpenPetra.build.config file):
  nant startWebServer
  nant startWebServer



Revision as of 08:44, 21 December 2010

Current situation

  • At the moment, we use ext.js for the forms.
  • All forms are generated based on yaml files, very similar to our generation of Winforms.
  • The main template file is in csharp\ICT\PetraTools\Templates\ExtJs\submitForm.js

Commands to use

generate all webforms in openpetraorg/webserver/OpenPetraOrg.ext

nant generateWebforms

generate all webforms in openpetraorg/webserver/OpenPetraOrg.ext/Samples/SimpleForm

nant generateWebform -D:file=Samples/SimpleForm

start the webserver, using xsp2 from Mono (make sure you got installed Mono on your Windows machine, and the path to Mono is set in the OpenPetra.build.config file):

nant startWebServer

Visit the demo and samples page:

http://localhost:8081

Existing demo applications and forms

  • Simple form: very simple, to understand the yaml file etc
  • Multi Country and Language: depending on the country-id parameter, a different form is loaded and also in a different language.

TODO: Controls to be implemented and tested

  • Date time picker for birthday, limiting to certain years (custom validation)
  • Multi Language form that displays a different HTML text inside an iframe
  • File upload with server side validation of image dimensions and file size (extra web service for that?)
  • Navigation between several pages, with final submission button

Server-side functionality

  • main project is in \csharp\ICT\Petra\Server\app\WebService
  • TODO: store the data in the OpenPetra database
  • TODO: possibly: allow user to come back and modify his own data
  • TODO: generate PDF, send Email