/[formed]/trunk/ChangeLog
ViewVC logotype

Diff of /trunk/ChangeLog

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 101 by torsten, Mon Aug 27 17:47:57 2007 UTC revision 403 by torsten, Mon Oct 4 16:19:17 2010 UTC
# Line 1  Line 1 
1  2007-08-27 Torsten Irlaender <[email protected]>  2010-10-04  Torsten Irländer <[email protected]>
2    
3            * formed/formed/model/data.py (RuleLeaf.__init__): Added new attribute
4            "tag" for rule-leafs
5    
6    2010-09-30  Torsten Irländer <[email protected]>
7    
8            * formed/formed/plugins/export/rules_sh.py
9            (ExportRulesAsSH.doExport): Filter out duplicted rules.
10    
11    2010-09-20  Frank Koormann   <[email protected]>
12    
13            * formed/formed/plugins/export/latex.py (RecursiveExporter):
14            Add "required"-field information to output and include
15            choice list contents.
16    
17    2010-09-16  Bernhard Herzog  <[email protected]>
18    
19            Avoid database deadlocks that can happen when database clients try
20            to work with the same case using two separate database
21            connections.  See mpuls/issue1145 for details.
22    
23            * formed/formed/plugins/export/rg_sql.py (SQL_TEMPLATE): Split the
24            computation of the new json structure description into the new
25            database function compute_case_structure
26            (TRIGGER_TMPL): Change the trigger functions to immediately update
27            the cached json structure description instead of just setting the
28            modified flag.  This avoids the lazy recomputation that makes what
29            seems like a read-only access (calling get_case_structure) into a
30            writing access (updates of the cache).  The writes lock the row in
31            the case_structure table which prevent other connections from
32            accessing the same case.  As part of this, the delete triggers are
33            now AFTER triggers because the repeat groups instance must have
34            been removed when the structure is recomputed.
35            (SUBSELECT_TMPL): Since the delete trigger is now an after
36            trigger, we need to change the way the master id is computed.  We
37            cannot join with the repeatgroup table in question because the row
38            has already been deleted.  However, we can use the master_id
39            column of the OLD row to select the row of the parent table.
40            (create_triggers): Avoid the inner joins with the current repeat
41            group for the above mentioned reasons.  In the very common case of
42            repeat groups which are direct children of the master_tbl, we can
43            compare the master_tbl.id directly with the row's master_id.
44    
45    2010-09-14 Roland Geider <[email protected]>
46    
47            * formed/formed/plugins/export/xsd.py: issue1131: update XSD for new
48              formedtree structure
49    
50    2010-09-01 Roland Geider <[email protected]>
51    
52            * formed/formed/plugins/modify/rules.py: issue1050: mandatory fields
53              appearing double.
54              The problem was that the way the formEditor handled fields with
55              manually created rules changed. Instead of ignoring fields (very
56              early behaviour) or always generating them (early behaviour), now the
57              formED will only ignore fields with rules which name starts with
58              'required-rule-manual'. This is helpful when the rules for mandatory
59              fields are more complex (e.g. mother's name is only required if
60              mother is known).
61    
62    2010-08-10  Torsten Irländer <[email protected]>
63    
64            * contrib/diff_formed.py: New helperscript to diff to given
65              formedtrees
66    
67    2010-08-09      Roland Geider <[email protected]>
68    
69            * formed/model/exprtree.py: fixed typo
70    
71    2010-08-04  Bernhard Herzog  <[email protected]>
72    
73            * formed/po/de_DE.po: Update translations
74    
75    2010-08-04  Bernhard Herzog  <[email protected]>
76    
77            * formed/po/formed.pot: Regenerated.
78    
79            * formed/po/de_DE.po: Update.
80    
81    2010-08-04  Bernhard Herzog  <[email protected]>
82    
83            * formed/po/Makefile: Use correct filename of the pot-file in the
84            usage message
85    
86    2010-08-04  Bernhard Herzog  <[email protected]>
87    
88            * formed/po/Makefile (LIST_POTFILES): Sort the file names to make
89            the order of entries in the .pot-file more predictable.
90    
91    2010-08-04  Bernhard Herzog  <[email protected]>
92    
93            * formed/formed/model/nodecomponents.py (RootNode.__init__)
94            (RootNode.getVersion, RootNode.setVersion): Add attribute
95            "version" and accessor methods.
96    
97            * formed/formed/main.py (MainFrame.OnSetDocumentVersion): New. Let
98            the user set the document version.
99            (MainFrame._createMenuBar): Add menu item for OnSetDocumentVersion
100    
101    2010-08-02  Bernhard Herzog  <[email protected]>
102    
103            * formed/formed.py, formed/formed/io/document.py,
104            formed/formed/io/factories.py, formed/formed/io/parser.py,
105            formed/formed/model/data.py, formed/formed/model/event.py,
106            formed/formed/model/expr.py, formed/formed/model/exprtree.py,
107            formed/formed/model/memory.py, formed/formed/model/misc.py,
108            formed/formed/model/nodecomponents.py,
109            formed/formed/model/persistent.py: Fix coding declaration to be
110            acceptable to both python and Emacs.
111    
112    2010-07-29  Torsten Irländer <[email protected]>
113    
114            * formed/formed/model/data.py: Added "invisible" attribute to
115            BoolLeafs. This can be used to hide options in choicelists. so the
116            user can not select the value in the user interface. But the db will
117            have this option so is ist still present in the db an can be used
118            * formed/formed/model/exprtree.py: Added "days" function.
119    
120    2010-07-26      Roland Geider <[email protected]>
121    
122            * formed/formed/model/nodecomponents.py,
123              formed/formed/plugins/modify/rules.py: generated date rules take
124              into consideration repeat groups
125    
126    2010-07-21  Torsten Irländer <[email protected]>
127    
128            Issue870
129    
130            * formed/formed/plugins/modify/rules.py (descriptions): Do not collect
131            all headers to the referenced fields. Only list labels of the error
132            fields, which should be distinct enough.
133    
134            Issue851
135    
136            * formed/formed/model/data.py
137              formed/formed/plugins/export/new_sql.py
138              formed/formed/plugins/web/view_renderer.py
139              formed/formed/io/document.py
140              formed/formed/config.py: Added Float-Field to Formed
141    
142    2010-06-11  Bernhard Herzog  <[email protected]>
143    
144            * formed/formed/plugins/export/rg_sql.py
145            (CREATE_DELETE_MASTER_TMPL): In create_master_tbl, call
146            create_master_ds to create the master tbl entry.  This way we can
147            add SQL code that's specific to an MPuls instance to
148            create_master_ds and still have create_master_tbl use that new
149            code.  This is useful for e.g. the JMD-Struktur part.
150    
151    2010-06-02      Roland Geider <[email protected]>
152    
153            * formed/formed/plugins/modify/rules.py: make the names of generated
154              date-sequence-rules unique
155    
156    2010-06-02      Roland Geider <[email protected]>
157    
158            * formed/plugins/export/xls.py: updated regular expression
159    
160    2010-05-17      Frank Koormann <[email protected]>
161    
162            * formed/formed/plugins/export/latex.py: Improved section labeling.
163    
164            * formed/formed/plugins/export/xls.py:
165              Export references (ie where are the lists used).
166    
167    2010-04-30  Torsten Irländer <[email protected]>
168    
169            * formed/formed/plugins/modify/rules.py (VariableType.substitute): Do
170            not generate "%"-rules for required fields in repeat-groups.
171    
172    2010-04-28      Roland Geider <[email protected]>
173    
174            * formed/plugins/export/xls.py: Radiogroups are exported
175            * formed/plugins/export/xsd.py: WASKA formedtree.xml validates XSD
176              JMD formedtree.xml validates XSD
177    
178    2010-04-08  Torsten Irländer <[email protected]>
179    
180            * formed/formed/plugins/modify/rules.py
181            (GenerateRequiredRules.generateDateSequenceRules): Add error mark to
182            rules. Generete each rule twice to be able to render errors at both
183            datefields.
184    
185    2010-04-07  Torsten Irländer <[email protected]>
186    
187            * formed/formed/plugins/export/rg_sql.py: Added "Revision"-Tag.
188    
189    2010-04-06  Torsten Irländer <[email protected]>
190    
191            * formed/formed/io/document.py (_toXML): Added comment with
192            "$Revision"-tag. This tag will/can then be substituted by the VCS.
193            * formed/formed/plugins/export/new_sql.py
194            (ExportAsSQLFilter.doExport): Added comment with
195            "$Revision"-tag. This tag will/can then be substituted by the VCS.
196            * formed/formed/model/exprtree.py: Added years operator.
197    
198    2010-03-30      Roland Geider <[email protected]>
199    
200            * formed/formed/plugins/export/latex.py: Added filter
201    
202    2010-03-25      Roland Geider <[email protected]>
203    
204            * formed/formed/plugins/export/xsd.py: Generate valid XML
205    
206    2010-02-11      Frank Koormann <[email protected]>
207    
208            * formed/formed/plugins/export/xls.py: Allow groups in choices.
209    
210    2009-12-02      Torsten Irländer <[email protected]>
211    
212            * formed/formed/plugins/export/typemap.py: do not ignore conditional
213              nodes on traversal.
214    
215    2009-11-17      Sascha L. Teichmann <[email protected]>
216    
217            * formed/formed/model/exprtree.py: Recognize '%' vars
218              in compilation. Does not eval it!
219    
220            * formed/formed/plugins/modify/rules.py: Generate '%' vars
221              for variables in repeat groups.
222    
223    2009-11-13      Sascha L. Teichmann <[email protected]>
224    
225            * formed/formed/plugins/export/typemap.py: Fixed to work
226            with new repeat group nodes.
227    
228    2009-10-28      Sascha L. Teichmann <[email protected]>
229    
230            * formed/formed/plugins/export/xsd.py,
231            formed/formed/plugins/export/sql.py,
232            formed/formed/plugins/export/new_sql.py: Allow groups in choices.
233    
234    2009-10-07      Frank Koormann <[email protected]>
235    
236            * formed/formed/plugins/export/latex.py:
237            Adjusted textprocessing to escape tex-active characters.
238    
239    2009-10-07      Sascha L. Teichmann <[email protected]>
240    
241            * formed/formed/plugins/export/html.py, formed/formed/plugins/export/latex.py,
242            formed/formed/plugins/export/html2.py: Adjusted to cope with
243            "semi-complete" implementation of logbook tree structure.
244    
245    2009-06-18      Torsten Irländer <[email protected]>
246    
247            * formed/formed/plugins/export/new_sql.py,
248              formed/formed/plugins/export/rg_sql.py: Fixed some sql errors, and
249              added permissions.
250    
251    2009-06-18      Torsten Irländer <[email protected]>
252    
253            * formed/formed/plugins/export/new_sql.py: Commented out generation of
254            page_views, as they do not work with rgroups.
255    
256    2009-06-17      Torsten Irländer <[email protected]>
257    
258            * formed/formed/plugins/export/new_sql.py: Fixed anonymize function
259            and rolenames.
260    
261    2009-06-17      Sascha L. Teichmann <[email protected]>
262    
263            * formed/formed/plugins/export/new_sql.py: s/-/_/ in relation names.
264    
265    2009-05-26      Sascha L. Teichmann <[email protected]>
266    
267            * formed/formed/plugins/names/filter.py: small optimization.
268    
269    2009-05-26      Sascha L. Teichmann <[email protected]>
270    
271            * formed/formed/plugins/names/filter.py: Repaired unique filter for
272              nodecomponent names.
273    
274    2009-05-06      Sascha L. Teichmann <[email protected]>
275    
276            * formed/formed/plugins/export/rg_sql.py: Only create depending
277              repeat groups if no uuid is given. If a uuid is given then
278              the creation is triggered by an xml import.
279    
280    2009-04-28      Sascha L. Teichmann <[email protected]>
281    
282            * formed/formed/plugins/export/new_sql.py: New SQL schema generator to
283              replace the old one. The new one faciliates the new RepeatNode instead
284              of the Group.isRepeat() method to tell if something is to be repeated.
285    
286            * formed/formed/config.py: Use new SQL schema generator plug-in by default.
287              The old one is deactivated.
288    
289            * formed/formed/plugins/export/rg_sql.py: Fix 'rg_' naming of repeat groups.
290    
291    2009-04-28      Sascha L. Teichmann <[email protected]>
292    
293            * formed/formed/plugins/export/rg_sql.py: Added delete functions.
294              TODO: Adjust execution rights.
295    
296    2009-04-27      Sascha L. Teichmann <[email protected]>
297    
298            * formed/formed/plugins/export/rg_sql.py: Fixed $$$$ -> $$ template problems.
299              Add functions to create dataset.
300    
301    2009-04-24      Sascha L. Teichmann <[email protected]>
302    
303            * formed/formed/plugins/export/rg_sql.py: new plug-in to generate
304              tree structure functions in database.
305    
306            * formed/formed/config.py: load plug-in.
307    
308    2009-04-16      Sascha L. Teichmann <[email protected]>
309    
310            * formed/formed/model/data.py: Added 'digest' attribute to
311              RepeatNode. Removed needless methods
312    
313    2009-04-16      Sascha L. Teichmann <[email protected]>
314    
315            * formed/formed/model/exprtree.py: make 'equal' and 'not equal'
316              more readable with '=' and '<>'.
317    
318    2009-04-02      Sascha L. Teichmann <[email protected]>
319    
320            * formed/formed/plugins/export/sql.py: call anonymization
321              of uuid on anonymization of case.
322    
323    2009-03-31      Sascha L. Teichmann <[email protected]>
324    
325            * formed/formed/plugins/export/sql.py: Set uuid_id to NULL in
326              case_anonymize().
327    
328    2009-03-31      Sascha L. Teichmann <[email protected]>
329    
330            * formed/formed/model/exprtree.py: Add some code to pretty print
331              the trees infix.
332    
333            * formed/formed/plugins/export/rules.py: New. Exporter for human
334              readable rules.
335    
336            * formed/formed/plugins/export/html.py: Fixed HTML generation.
337    
338            * formed/formed/config.py: Added new new Rule export plug-in.
339    
340    2009-03-31      Sascha L. Teichmann <[email protected]>
341    
342            * formed/formed/model/exprtree.py: Fixes from server. Raise
343              exceptions if there is less or more than one element on stack
344              after compilation of expression.
345    
346    2009-03-20      Sascha L. Teichmann <[email protected]>
347    
348            * formed/formed/model/data.py: Removed debug output
349    
350            * formed/formed/plugins/modify/rules.py: Fixed error message.
351              Generate past and future rules.
352    
353    2009-03-16      Sascha L. Teichmann <[email protected]>
354    
355            * formed/formed/model/exprtree.py: Forget to call today with context.
356    
357    2009-03-16      Sascha L. Teichmann <[email protected]>
358    
359            * formed/formed/io/document.py: Fixed syntax typo.
360    
361    2009-03-16      Sascha L. Teichmann <[email protected]>
362    
363            * formed/formed/model/data.py: ConditionalNode inherits from Node directly.
364    
365    2009-03-16      Sascha L. Teichmann <[email protected]>
366    
367            * formed/formed/model/data.py: Added ConditionalNode
368    
369            * formed/formed/io/document.py: Make ConditionalNode loadable.
370    
371    2009-03-13      Sascha L. Teichmann <[email protected]>
372    
373            * formed/formed/plugins/modify/rules.py: Make the error descriptions
374              in date sequence rules more precise.
375    
376    2009-03-13      Sascha L. Teichmann <[email protected]>
377    
378            * formed/formed/plugins/modify/rules.py: generate date sequence rules.
379    
380    2009-03-13      Sascha L. Teichmann <[email protected]>
381    
382            * formed/formed/model/exprtree.py: New tree based expression engine.
383    
384            * formed/formed/model/__init__.py, formed/formed/model/data.py:
385              Adjusted imports.
386    
387    2009-03-12      Torsten Irländer <[email protected]>
388    2009-06-17      Sascha L. Teichmann <[email protected]>
389    
390            * formed/formed/plugins/export/new_sql.py: s/-/_/ in relation names.
391    
392    2009-05-26      Sascha L. Teichmann <[email protected]>
393    
394            * formed/formed/plugins/names/filter.py: small optimization.
395    
396    2009-05-26      Sascha L. Teichmann <[email protected]>
397    
398            * formed/formed/plugins/names/filter.py: Repaired unique filter for
399              nodecomponent names.
400    
401    2009-05-06      Sascha L. Teichmann <[email protected]>
402    
403            * formed/formed/plugins/export/rg_sql.py: Only create depending
404              repeat groups if no uuid is given. If a uuid is given then
405              the creation is triggered by an xml import.
406    
407    2009-04-28      Sascha L. Teichmann <[email protected]>
408    
409            * formed/formed/plugins/export/new_sql.py: New SQL schema generator to
410              replace the old one. The new one faciliates the new RepeatNode instead
411              of the Group.isRepeat() method to tell if something is to be repeated.
412    
413            * formed/formed/config.py: Use new SQL schema generator plug-in by default.
414              The old one is deactivated.
415    
416            * formed/formed/plugins/export/rg_sql.py: Fix 'rg_' naming of repeat groups.
417    
418    2009-04-28      Sascha L. Teichmann <[email protected]>
419    
420            * formed/formed/plugins/export/rg_sql.py: Added delete functions.
421              TODO: Adjust execution rights.
422    
423    2009-04-27      Sascha L. Teichmann <[email protected]>
424    
425            * formed/formed/plugins/export/rg_sql.py: Fixed $$$$ -> $$ template problems.
426              Add functions to create dataset.
427    
428    2009-04-24      Sascha L. Teichmann <[email protected]>
429    
430            * formed/formed/plugins/export/rg_sql.py: new plug-in to generate
431              tree structure functions in database.
432    
433            * formed/formed/config.py: load plug-in.
434    
435    2009-04-16      Sascha L. Teichmann <[email protected]>
436    
437            * formed/formed/model/data.py: Added 'digest' attribute to
438              RepeatNode. Removed needless methods
439    
440    2009-04-16      Sascha L. Teichmann <[email protected]>
441    
442            * formed/formed/model/exprtree.py: make 'equal' and 'not equal'
443              more readable with '=' and '<>'.
444    
445    2009-04-02      Sascha L. Teichmann <[email protected]>
446    
447            * formed/formed/plugins/export/sql.py: call anonymization
448              of uuid on anonymization of case.
449    
450    2009-03-31      Sascha L. Teichmann <[email protected]>
451    
452            * formed/formed/plugins/export/sql.py: Set uuid_id to NULL in
453              case_anonymize().
454    
455    2009-03-31      Sascha L. Teichmann <[email protected]>
456    
457            * formed/formed/model/exprtree.py: Add some code to pretty print
458              the trees infix.
459    
460            * formed/formed/plugins/export/rules.py: New. Exporter for human
461              readable rules.
462    
463            * formed/formed/plugins/export/html.py: Fixed HTML generation.
464    
465            * formed/formed/config.py: Added new new Rule export plug-in.
466    
467    2009-03-31      Sascha L. Teichmann <[email protected]>
468    
469            * formed/formed/model/exprtree.py: Fixes from server. Raise
470              exceptions if there is less or more than one element on stack
471              after compilation of expression.
472    
473    2009-03-20      Sascha L. Teichmann <[email protected]>
474    
475            * formed/formed/model/data.py: Removed debug output
476    
477            * formed/formed/plugins/modify/rules.py: Fixed error message.
478              Generate past and future rules.
479    
480    2009-03-16      Sascha L. Teichmann <[email protected]>
481    
482            * formed/formed/model/exprtree.py: Forget to call today with context.
483    
484    2009-03-16      Sascha L. Teichmann <[email protected]>
485    
486            * formed/formed/io/document.py: Fixed syntax typo.
487    
488    2009-03-16      Sascha L. Teichmann <[email protected]>
489    
490            * formed/formed/model/data.py: ConditionalNode inherits from Node directly.
491    
492    2009-03-16      Sascha L. Teichmann <[email protected]>
493    
494            * formed/formed/model/data.py: Added ConditionalNode
495    
496            * formed/formed/io/document.py: Make ConditionalNode loadable.
497    
498    2009-03-13      Sascha L. Teichmann <[email protected]>
499    
500            * formed/formed/plugins/modify/rules.py: Make the error descriptions
501              in date sequence rules more precise.
502    
503    2009-03-13      Sascha L. Teichmann <[email protected]>
504    
505            * formed/formed/plugins/modify/rules.py: generate date sequence rules.
506    
507    2009-03-13      Sascha L. Teichmann <[email protected]>
508    
509            * formed/formed/model/exprtree.py: New tree based expression engine.
510    
511            * formed/formed/model/__init__.py, formed/formed/model/data.py:
512              Adjusted imports.
513    
514    2009-03-12      Torsten Irländer <[email protected]>
515    2009-06-17      Sascha L. Teichmann <[email protected]>
516    
517            * formed/formed/plugins/export/new_sql.py: s/-/_/ in relation names.
518    
519    2009-05-26      Sascha L. Teichmann <[email protected]>
520    
521            * formed/formed/plugins/names/filter.py: small optimization.
522    
523    2009-05-26      Sascha L. Teichmann <[email protected]>
524    
525            * formed/formed/plugins/names/filter.py: Repaired unique filter for
526              nodecomponent names.
527    
528    2009-05-06      Sascha L. Teichmann <[email protected]>
529    
530            * formed/formed/plugins/export/rg_sql.py: Only create depending
531              repeat groups if no uuid is given. If a uuid is given then
532              the creation is triggered by an xml import.
533    
534    2009-04-28      Sascha L. Teichmann <[email protected]>
535    
536            * formed/formed/plugins/export/new_sql.py: New SQL schema generator to
537              replace the old one. The new one faciliates the new RepeatNode instead
538              of the Group.isRepeat() method to tell if something is to be repeated.
539    
540            * formed/formed/config.py: Use new SQL schema generator plug-in by default.
541              The old one is deactivated.
542    
543            * formed/formed/plugins/export/rg_sql.py: Fix 'rg_' naming of repeat groups.
544    
545    2009-04-28      Sascha L. Teichmann <[email protected]>
546    
547            * formed/formed/plugins/export/rg_sql.py: Added delete functions.
548              TODO: Adjust execution rights.
549    
550    2009-04-27      Sascha L. Teichmann <[email protected]>
551    
552            * formed/formed/plugins/export/rg_sql.py: Fixed $$$$ -> $$ template problems.
553              Add functions to create dataset.
554    
555    2009-04-24      Sascha L. Teichmann <[email protected]>
556    
557            * formed/formed/plugins/export/rg_sql.py: new plug-in to generate
558              tree structure functions in database.
559    
560            * formed/formed/config.py: load plug-in.
561    
562    2009-04-16      Sascha L. Teichmann <[email protected]>
563    
564            * formed/formed/model/data.py: Added 'digest' attribute to
565              RepeatNode. Removed needless methods
566    
567    2009-04-16      Sascha L. Teichmann <[email protected]>
568    
569            * formed/formed/model/exprtree.py: make 'equal' and 'not equal'
570              more readable with '=' and '<>'.
571    
572    2009-04-02      Sascha L. Teichmann <[email protected]>
573    
574            * formed/formed/plugins/export/sql.py: call anonymization
575              of uuid on anonymization of case.
576    
577    2009-03-31      Sascha L. Teichmann <[email protected]>
578    
579            * formed/formed/plugins/export/sql.py: Set uuid_id to NULL in
580              case_anonymize().
581    
582    2009-03-31      Sascha L. Teichmann <[email protected]>
583    
584            * formed/formed/model/exprtree.py: Add some code to pretty print
585              the trees infix.
586    
587            * formed/formed/plugins/export/rules.py: New. Exporter for human
588              readable rules.
589    
590            * formed/formed/plugins/export/html.py: Fixed HTML generation.
591    
592            * formed/formed/config.py: Added new new Rule export plug-in.
593    
594    2009-03-31      Sascha L. Teichmann <[email protected]>
595    
596            * formed/formed/model/exprtree.py: Fixes from server. Raise
597              exceptions if there is less or more than one element on stack
598              after compilation of expression.
599    
600    2009-03-20      Sascha L. Teichmann <[email protected]>
601    
602            * formed/formed/model/data.py: Removed debug output
603    
604            * formed/formed/plugins/modify/rules.py: Fixed error message.
605              Generate past and future rules.
606    
607    2009-03-16      Sascha L. Teichmann <[email protected]>
608    
609            * formed/formed/model/exprtree.py: Forget to call today with context.
610    
611    2009-03-16      Sascha L. Teichmann <[email protected]>
612    
613            * formed/formed/io/document.py: Fixed syntax typo.
614    
615    2009-03-16      Sascha L. Teichmann <[email protected]>
616    
617            * formed/formed/model/data.py: ConditionalNode inherits from Node directly.
618    
619    2009-03-16      Sascha L. Teichmann <[email protected]>
620    
621            * formed/formed/model/data.py: Added ConditionalNode
622    
623            * formed/formed/io/document.py: Make ConditionalNode loadable.
624    
625    2009-03-13      Sascha L. Teichmann <[email protected]>
626    
627            * formed/formed/plugins/modify/rules.py: Make the error descriptions
628              in date sequence rules more precise.
629    
630    2009-03-13      Sascha L. Teichmann <[email protected]>
631    
632            * formed/formed/plugins/modify/rules.py: generate date sequence rules.
633    
634    2009-03-13      Sascha L. Teichmann <[email protected]>
635    
636            * formed/formed/model/exprtree.py: New tree based expression engine.
637    
638            * formed/formed/model/__init__.py, formed/formed/model/data.py:
639              Adjusted imports.
640    
641    2009-03-12      Torsten Irländer <[email protected]>
642    
643            Introduced new order attribute for date fields
644    
645            * formed/formed/model/data.py: Order fields can be used to define to
646            ordering of datefields withing the document. Needed for automatic
647            generation of consistency rules.
648    
649    2009-02-09      Sascha L. Teichmann <[email protected]>
650    
651            * formed/formed/model/data.py: Allow pages to be 'invisible'.
652    
653    2009-02-09      Sascha L. Teichmann <[email protected]>
654    
655            * formed/formed/plugins/export/sql.py: Fixed problem with
656              description reference tables of radio groups.
657    
658    2009-02-09      Sascha L. Teichmann <[email protected]>
659    
660            * formed/formed/plugins/export/sql.py: replace '-' in names
661              by '_'.
662              
663    2009-02-09      Sascha L. Teichmann <[email protected]>
664    
665            * formed/formed/plugins/export/sql.py: to figure ou which
666              tables are equal the insert statememnts are lower cased
667              and sorted before they are compared. This reduces the number
668              of generated referfence tables.
669    
670    2009-02-09      Sascha L. Teichmann <[email protected]>
671    
672            Repair SQL schema creation for radio groups.
673    
674            * formed/formed/plugins/export/sql.py: radio groups are handled
675              like choices now.
676    
677    2009-02-09      Sascha L. Teichmann <[email protected]>
678    
679            Make it startable again.
680    
681            * formed/formed/plugins/export/xls.py: Import pyExcelerator only
682              when plug-in is called.
683    
684            * formed/formed/model/nodecomponents.py: Event routing was messed up.
685              Rewired root node with document.
686    
687            * formed/formed/plugins/web/help.py: Removed old xml.ext import.
688              XXX: This breaks creating help by now!
689    
690            * formed/formed/io/parser.py: Replace old deprecated base class
691              by new one.
692    
693            * formed/formed/main.py: Do not crash if locale cannot be set.
694    
695            * formed/formed/ui/controls.py: Use document.getCase() instead
696              of document.case to prevent uninitialized dereferences.
697    
698    2009-01-22      Torsten Irländer <[email protected]>
699    
700            Implemented new XML-Format for formed xml files.
701    
702            * formed/formed/model/nodecomponents.py,
703              formed/formed/io/document.py,
704              formed/formed/main.py,
705              formed/formed/ui/controls.py: Introduced new "case" and "logbook"
706              node. Under case is the definition of the formular. logbook will
707              hold the defintion of logboog entrys. For now only the part under
708              "case" can be modified.  
709    
710    2009-01-21      Torsten Irländer <[email protected]>
711    
712            Changed way how XSD-Scheme is generated
713    
714            * formed/formed/plugins/export/xsd.py: Enhanced xsd schema to support
715              logbookentrys. The scheme definiton is now hardcoded in the
716              exporter as it will rarely change. It logbookpart will not be
717              generated from the formedtree anymore.
718    
719    2009-01-20      Torsten Irländer <[email protected]>
720    
721            Support Logbook entrys in xsd schema export
722    
723            * formed/formed/model/data.py: Repeatnode are now handeld as
724              repeatgroups in xsd-export
725            * formed/formed/plugins/export/xsd.py: Enhanced xsd schema to support
726              logbookentrys. The scheme will now validate against an xmlfile from
727              the offlineclient.
728    
729    2009-01-09      Torsten Irländer <[email protected]>
730    
731            Added new repeat node
732    
733            * formed/formed/model/data.py,
734              formed/formed/io/document.py: Added repeatnode to the formedtree.
735              TODO: Remove repeatgroup handling from the groupnode.
736    
737    2009-01-08      Torsten Irländer <[email protected]>
738    
739            Add isset operator to autogenerated rules.
740    
741            * formed/formed/plugins/modify/rules.py: Add issed operator to standard
742              autogenerated rules.
743    
744    2008-12-17      Frank Koormann <[email protected]>
745    
746            * formed/formed/plugins/export/latex.py: Export form as set of
747            latex tables to be included into a master document. The export
748            generates section marks to structure the form and placeholders for
749            help texts to be merged in by a post processing step.
750    
751    2008-12-04      Sascha L. Teichmann <[email protected]>
752    
753            * formed/formed/model/expr.py: Added 'today' which pushes the current date
754              on the stack.
755    
756    2008-12-03      Sascha L. Teichmann <[email protected]>
757    
758            * formed/formed/plugins/web/controllers.py: compute changeset more correctly in
759              storage of fields.
760    
761            * formed/formed/plugins/export/xsd.py: Added unknown int -999999 to integer
762              fields as an accepted value. Generate schema for radio groups too.
763    
764    2008-12-01      Torsten Irländer <[email protected]>
765    
766            Added autmatic generation of required rules
767    
768            * formed/formed/model/data.py,
769              formed/formed/model/expr.py,
770              formed/formed/plugins/modify/rules.py: Default rules for required
771              fields can now be generated.
772    
773    2008-11-28      Sascha L. Teichmann <[email protected]>
774    
775            * formed/formed/model/data.py, formed/formed/model/nodecomponents.py:
776              Ported WidgetCollector from Offline client.
777    
778            * formed/formed/plugins/modify/__init__.py, formed/formed/plugins/modify,
779              formed/formed/plugins/modify/rules.py: Stub for required rules generator.
780    
781            * formed/formed/config.py: Bind new filter to FormEd
782    
783    2008-11-27      Torsten Irländer <[email protected]>
784    
785            * formed/formed/model/data.py: Added new attribute mark for rules
786    
787    2008-11-10      Torsten Irländer <[email protected]>
788    
789            Implemented radio-matrix elements. radio elelement having the same
790            options can now be rendered in table form.
791    
792            * formed/formed/model/data.py,
793              formed/formed/io/document.py: Added new radio-matrix element to the
794              model and gui
795            * formed/formed/plugins/web/view_renderer.py: Write html-renderer for
796              the radio-matrix element.
797    
798    2008-11.03      Torsten Irländer <[email protected]>
799    
800            * formed/formed/model/data.py: Fixed import error
801    
802    2008-10-29      Sascha L. Teichmann <[email protected]>
803    
804            Relative paths in external choices are now possible. Relative paths are
805            relative to path of the master document.
806    
807            * formed/model/data.py: external choice are now storing the path to the
808              master document.
809    
810            * formed/formed/io/document.py: Pass context to SAX builder.
811    
812            * formed/formed/io/factories.py: For new created nodes look if there
813              is a method 'setLoadContext' and call it.
814    
815    2008-09-04      Sascha L. Teichmann <[email protected]>
816    
817            * doc/beschreibung.txt: New. Initial description of FormEd (german).
818    
819    2008-08-22      Sascha L. Teichmann <[email protected]>
820    
821            * formed/formed/model/nodecomponents.py: Added attribute 'flags'.
822    
823    2008-08-21      Sascha L. Teichmann <[email protected]>
824    
825            * formed/formed/io/document.py: Indent tree while saving
826            * formed/formed/main.py: removed needless print
827    
828    2008-08-15      Sascha L. Teichmann <[email protected]>
829    
830            * LICENSE: New GPLv3
831            * */*.py, *.sh: Added reference to LICENSE
832    
833    2008-08-15      Sascha L. Teichmann <[email protected]>
834    
835            * tools: removed because there a no tools any more.
836    
837    2008-08-15      Sascha L. Teichmann <[email protected]>
838    
839            * tools/formed: moved one level up because its the only
840              part of this project now.
841    
842    2008-08-15      Sascha L. Teichmann <[email protected]>
843    
844            * tools/anonym/*: Removed as it belongs to mpuls WASKA
845    
846    2008-08-15      Sascha L. Teichmann <[email protected]>
847    
848            * pdf2xfa/*: removed. It belongs to mpuls
849    
850    2008-08-13 L. Teichmann <[email protected]>
851    
852            i18n of the plug-ins:
853            * tools/formed/formed/plugins/export/diff.py,
854              tools/formed/formed/plugins/export/data.py,
855              tools/formed/formed/plugins/export/old_sql.py,
856              tools/formed/formed/plugins/export/latex.py,
857              tools/formed/formed/plugins/export/xsd.py,
858              tools/formed/formed/plugins/export/sql.py,
859              tools/formed/formed/plugins/export/typemap.py,
860              tools/formed/formed/plugins/export/html.py,
861              tools/formed/formed/plugins/export/mode.py,
862              tools/formed/formed/plugins/export/html2.py,
863              tools/formed/formed/plugins/export/xls.py,
864              tools/formed/formed/plugins/names/filter.py,
865              tools/formed/formed/plugins/plugin.py,
866              tools/formed/formed/plugins/web/help.py,
867              tools/formed/formed/plugins/web/form_renderer.py,
868              tools/formed/formed/plugins/web/plugin.py,
869              tools/formed/formed/plugins/web/error_renderer.py,
870              tools/formed/formed/plugins/web/view_renderer.py,
871              tools/formed/formed/plugins/web/semantic.py,
872              tools/formed/formed/plugins/web/cache.py,
873              tools/formed/formed/plugins/web/server.py,
874              tools/formed/formed/plugins/web/controllers.py,
875              tools/formed/formed/plugins/web/renderer.py,
876              tools/formed/formed/plugins/ui/controls.py,
877              tools/formed/formed/config.py: _("")s the stuff
878              tools/formed/po/formed.pot, tools/formed/po/de_DE.po:
879              extracted and translated.
880    
881    2008-08-08      Sascha L. Teichmann <[email protected]>
882    
883            First version of FormEd i18n. After checkout go to tools/formed/po/ and
884            say 'make mo'. Afterwards you can start FormEd as usual.
885    
886            * tools/formed/resources: New. Place to places ressources like *.mo files
887            * tools/formed/formed/main.py, tools/formed/formed/ui/controls.py: Add _("")s
888              
889            * tools/formed/po,
890              tools/formed/po/Makefile,
891              tools/formed/po/formed.pot,
892              tools/formed/po/de_DE.po: i18n stuff.
893    
894    2008-08-08      Sascha L. Teichmann <[email protected]>
895    
896            * tools/anonym/xmlexport.py: Only export cases which are not
897              'schwebend geloescht'.
898    
899    2008-07-23      Sascha L. Teichmann <[email protected]>
900    
901            Fixed issue472
902    
903            * tools/anonym/xmlimport.py: Regenerate dicts from current form ed tree.
904    
905    2008-07-17      Sascha L. Teichmann <[email protected]>
906    
907            * tools/anonym/xmlimport.py: removed marking of invalid cases
908            * tools/anonym/cron.importAnonXml.sh: re-inserted here.
909    
910    2008-07.07      Torsten Irländer <[email protected]>
911    
912            * tools/formed/formed/plugins/export/latex.py
913              tools/formed/formed/config.py: Added new LaTex Export. Beware this
914              is even more ugly the HTML Export.
915            * tools/formed/formed/plugins/export/html.py: Added information on
916              anonymisation to the html export.
917    
918    2008-07-07      Sascha L. Teichmann <[email protected]>
919    
920            * tools/anonym/xmlimport.py: Mark cases if they are inconsistent.
921    
922    2008-07-07      Sascha L. Teichmann <[email protected]>
923    
924            * tools/anonym/xmlimport.py: Updated to schema 1.5. (Which is incompatible to 1.4)
925    
926    2008-07-07      Sascha L. Teichmann <[email protected]>  
927            
928            * tools/formed/formed/plugins/export/html.py: Added additional column
929            to the html export with information how each field will get
930            anonymized.
931    
932    2008-07-07      Sascha L. Teichmann <[email protected]>  
933    
934            * tools/anonym/xmlimport.py: sync with productive version.
935    
936    2008-06-10      Torsten Irländer <[email protected]>
937    
938            * tools/formed/formed/plugins/export/sql.py: grant admin permission to
939              call anonymize function
940    
941    2008-05-21      Sascha L. Teichmann <[email protected]>  
942    
943            * tools/formed/formed/plugins/export/xsd.py: Brought encoding
944              back to UTF-8.
945    
946    2008-05-21      Frank Koormann <[email protected]>
947    
948            * tools/formed/formed/plugins/export/xls.py: New, export key value
949            tables as excel workbook with one sheet per table.
950    
951            * tools/formed/formed/config.py: ExportKeyValueTableAsXLS added.
952    
953    2008-05-21      Frank Koormann <[email protected]>
954    
955            * tools/formed/formed/plugins/export/xsd.py
956            (SchemaCreator._createChoice): Fix use of choices name.
957    
958    2008-04-29      Sascha L. Teichmann <[email protected]>
959    
960            * tools/formed/formed/plugins/export/xsd.py: Use substitution group
961              to allow arbitrary order of repeat groups.
962    
963    2008-04-29      Sascha L. Teichmann <[email protected]>
964    
965            * tools/formed/formed/plugins/export/xsd.py: Removed a needless
966              character.
967    
968    2008-04-29      Sascha L. Teichmann <[email protected]>
969    
970            * tools/formed/formed/plugins/export/xsd.py: Added annotations
971              to fields.
972    
973    2008-04-29      Sascha L. Teichmann <[email protected]>
974    
975            * tools/formed/formed/plugins/export/xsd.py: Added for
976              choice fields.
977    
978    2008-04-29      Sascha L. Teichmann <[email protected]>
979    
980            * tools/formed/formed/plugins/export/xsd.py: Added support for
981              boolean fields based on enumerations.
982    
983    2008-04-28      Sascha L. Teichmann <[email protected]>
984    
985            * tools/formed/formed/plugins/export/xsd.py: Added support for
986              date, text and textarea fields.
987    
988    2008-04-28      Sascha L. Teichmann <[email protected]>
989    
990            * tools/formed/formed/plugins/export/xsd.py: Added support for
991              repeat groups and integer fields.
992    
993    2008-04-28      Sascha L. Teichmann <[email protected]>
994    
995            * tools/formed/formed/plugins/export/xsd.py: New. plug-in for
996              exporting as XML schema. not ready, yet.
997    
998            * tools/formed/formed/config.py: Use new plug-in.
999    
1000            * tools/formed/formed/plugins/export/sql.py: Fixed wrong GUI text.
1001    
1002    2008-04-17      Torsten Irländer <[email protected]>
1003    
1004            * tools/formed/formed/plugins/export/sql.py: Changed WHERE clause in
1005            for the views because of the new group permissions.
1006    
1007    2008-04-09      Sascha L. Teichmann <[email protected]>
1008    
1009            * tools/anonym/cron.deleteOldAnonymized.sh: New. cron job to delete
1010              old anonymized cases.
1011    
1012    2008-04-01      Sascha L. Teichmann <[email protected]>
1013    
1014            * tools/anonym/xmlexport.py: Removed "WHERE einverstaendniserklaerung = 1"
1015              from clause to select datasets.
1016              Replace ']]>' in CDATA sections with correct splitted replacement.
1017    
1018    2008-03-12      Sascha L. Teichmann <[email protected]>
1019            
1020            * tools/anonym/cron.importAnonXml.sh: Added absolut path to  xmlimport
1021              script.
1022    
1023            * tools/anonym/xmlimport.py: commented out database port from
1024              connectionstring.
1025    
1026    2008-03-12      Sascha L. Teichmann <[email protected]>
1027    
1028            * tools/formed/formed/plugins/export/sql.py: Fixed bug in generation
1029              of anonymization of repeat groups (wrong id was given).
1030    
1031    2008-03-11      Sascha L. Teichmann <[email protected]>
1032    
1033            * tools/formed/formed/plugins/export/sql.py: Generate no update
1034              statements for relations which have no anonym functions applied.
1035    
1036    2008-03-11      Sascha L. Teichmann <[email protected]>
1037    
1038            * tools/formed/formed/plugins/export/sql.py: Added a newline after
1039              'COMMIT;' in the last line.
1040    
1041    2008-03-11      Sascha L. Teichmann <[email protected]>
1042    
1043            * tools/formed/formed/plugins/export/sql.py: Fixed syntax of
1044              generated anonymize_case() function.
1045              
1046    2008-03-11      Sascha L. Teichmann <[email protected]>
1047    
1048            * tools/formed/formed/plugins/export/sql.py: Added code to
1049              generate a plpgsql function anonymize_case() that anonymized
1050              a given case and all of its depending repeat groups.
1051    
1052    2008-03-06      Sascha L. Teichmann <[email protected]>
1053    
1054            * tools/anonym/xmlimport.py: remove print of insert statement.
1055    
1056            * tools/formed/formed/plugins/export/sql.py: Print generation date in ISO.
1057    
1058    2008-03-03      Torsten Irländer <[email protected]>
1059    
1060            * anonym/cron.sendAnonXml.sh,
1061              anonym/getDbList.sh: Modified script to be used directly in the
1062              production environment (Copied running scripts from production
1063              server)
1064    
1065            * cron.importAnonXml.sh: Added deleting of ols cases. Modified script
1066              to be used in a production environment (Cpoied running script from
1067              production server)
1068    
1069            * tools/anonym/xmlexport.py: Added "WHERE" clause to SQL-Statement to
1070              ensure that only valid cases get exported
1071    
1072    2008-02-27      Sascha L. Teichmann <[email protected]>
1073    
1074            * tools/anonym/xmlimport.py: Fixed bug in date converter.
1075    
1076    2008-02-27      Sascha L. Teichmann <[email protected]>
1077    
1078            * tools/anonym/xmlimport.py: Simpilied version
1079    
1080    2008-02-27      Sascha L. Teichmann <[email protected]>
1081    
1082            * tools/anonym/cron.importAnonXml.sh: Add sudo call for
1083              xmlimport.py and parameters.
1084    
1085            * tools/anonym/xmlimport.py: Various bug fixes. Not working yet. :-/
1086    
1087            * tools/anonym/xmlexport.py: Use python interpreter without env
1088              because of sudo context.
1089    
1090    2008-02-26      Sascha L. Teichmann <[email protected]>
1091    
1092            * tools/anonym/xmlimport.py: added support for getopt. add
1093              support to force in fkz in import of case.
1094    
1095    2008-02-26      Sascha L. Teichmann <[email protected]>
1096    
1097            * tools/anonym/xmlimport.py: Implemented logic to create/update cases.
1098    
1099            * tools/anonym/html.awk: produces valid HTML.
1100    
1101    2008-02-25      Sascha L. Teichmann <[email protected]>
1102    
1103            * tools/anonym/joincsv.py: Fix a logic bug.
1104    
1105    2008-02-25      Torsten Irlaender <[email protected]>
1106    
1107            * tools/anonym/cron.importAnonXml.sh: Added shellscript for importing
1108              exportted cases. It will read all files from a directory and import
1109              the files into the DB. After that the script will cleanup the
1110              directory.
1111    
1112    2008-02-25      Torsten Irländer <[email protected]>
1113            
1114            * tools/anonym/cron.sendAnonXml.sh,
1115              tools/anonym/xmlexport.py,
1116              tools/anonym/getDbList.sh: Added shell-scripts for exporting cases
1117    
1118    2008-02-25      Sascha L. Teichmann <[email protected]>
1119    
1120            * tools/anonym/joincsv.py: Fixed typo which generated wrong number of cols.
1121    
1122    2008-02-25      Sascha L. Teichmann <[email protected]>
1123    
1124            * tools/anonym/joincsv.py: New. Joins CSV files.
1125    
1126            * tools/anonym/html.awk: New. Converts CSV to HTML
1127    
1128    2008-02-25      Sascha L. Teichmann <[email protected]>
1129    
1130            * tools/anonym/xmlimport.py: New. Added generation of
1131              update statements.
1132    
1133    2008-02-25      Sascha L. Teichmann <[email protected]>
1134    
1135            * tools/anonym/xmlimport.py: New. Base for importing
1136              XML from cron.
1137    
1138    2008-02-24      Sascha L. Teichmann <[email protected]>
1139    
1140            * tools/formed/formed/plugins/export/html2.py: New. plug-in
1141              for a simplified HTML output
1142    
1143            * tools/formed/formed/plugins/export/typemap.py: New. plug-in
1144              for dump schema as python dictionary.
1145    
1146            * tools/formed/formed/config.py: Enable new plug-ins. Out comment
1147              old stored procedure and view generators.
1148    
1149    2008-02-19      Sascha L. Teichmann <[email protected]>
1150    
1151            * tools/anonym/xmlexport.py: New. Export all cases in database
1152              as XML.
1153    
1154    2008-02-18      Sascha L. Teichmann <[email protected]>
1155    
1156            * tools/anonym/anoymncsv.py: separate field with '\t' now.
1157              all '\t's are replaced by '   ' before. '\r\n' are removed too.
1158    
1159    2008-02-15      Sascha L. Teichmann <[email protected]>
1160    
1161            * tools/anonym/anoymncsv.py: simple script to fetch anonymous
1162              data from database.
1163    
1164    2008-02-14      Sascha L. Teichmann <[email protected]>
1165    
1166            * tools/formed/formed/plugins/export/sql.py: Exchanged name
1167              erase_value with suppress_value/suppress_value2.
1168    
1169    2008-02-13      Sascha L. Teichmann <[email protected]>
1170    
1171            * tools/formed/formed/plugins/export/sql.py: output id, master_id
1172              substitute 'erase_value' with NULL value.
1173    
1174    2008-02-13      Sascha L. Teichmann <[email protected]>
1175    
1176            * tools/formed/formed/plugins/export/sql.py: output id, master_id
1177              and uuid_id in anonymiziation views too.
1178    
1179    2008-02-13      Sascha L. Teichmann <[email protected]>
1180    
1181            * tools/formed/formed/plugins/export/sql.py: Added generation
1182              of anonymiziation views for master table views and repeat group
1183              views.
1184    
1185    2008-02-13      Sascha L. Teichmann <[email protected]>
1186    
1187            * tools/formed/formed/model/nodecomponents.py: Added attribute
1188              "function"
1189    
1190            * tools/formed/formed/io/document.py: Save attributes in
1191              alphabetical order.
1192    
1193    2008-02-02      Sascha L. Teichmann <[email protected]>
1194    
1195            * tools/formed/formed/plugins/export/sql.py: Added update rule
1196              for master table and repeat groups views. Granted update right
1197              to :cm_ka_group.
1198    
1199    2008-02-01      Sascha L. Teichmann <[email protected]>
1200    
1201            * tools/formed/formed/plugins/export/sql.py: Added a column 'uuid_id'
1202              for master table and repeat groups. Also added unique constraints
1203              to these columns.
1204    
1205    2007-12-10      Sascha L. Teichmann <[email protected]>
1206    
1207            * pdf2xfa/src/de/intevation/pdfimport/ClientHandler.java: Added a system
1208              property 'root.element' to specify the name of the XML root.
1209    
1210            * pdf2xfa/startup/pdf2xfa.sh, pdf2xfa/README.TXT: Adjusted.
1211    
1212    2007-11-22      Sascha L. Teichmann <[email protected]>
1213    
1214            * pdf2xfa/startup, */pdf2xfa.sh, */pdf2xfa.init: boot scripts
1215              for GNU/Linux (tested Debian 'Etch' 4.0) by Sascha Wilde.
1216    
1217            * pdf2xfa/README.TXT: Add a remark to new boot scripts.
1218    
1219    2007-11-21      Sascha L. Teichmann <[email protected]>
1220    
1221            * pdf2xfa/src/de/intevation/pdfimport/Log.java: New.
1222              Sends logging to file.
1223    
1224            * pdf2xfa/src/de/intevation/pdfimport/Server.java,
1225              pdf2xfa/src/de/intevation/pdfimport/ClientHandler.java: Adjusted
1226              to use new logging.
1227    
1228            * pdf2xfa/README.TXT: Added remark how to use logging.
1229    
1230    2007-11-16      Frank Koormann <[email protected]>
1231    
1232            * tools/formed/formed/plugins/export/sql.py (createSchema):
1233            Append only column "bearbeiter_id", standins are modelled by a
1234            separate table.
1235    
1236    2007-11-16      Sascha L. Teichmann <[email protected]>
1237    
1238            * tools/formed/formed/model/data.py,
1239              tools/formed/formed/plugins/web/view_renderer.py:
1240              Added an invisible flag for info fields.
1241    
1242    2007-11-07      Sascha L. Teichmann <[email protected]>
1243    
1244            * tools/formed/formed/model/nodecomponents.py: Fixed a few small bugs
1245              (calling a wrong method).
1246    
1247    2007-11-07      Sascha L. Teichmann <[email protected]>
1248    
1249            * tools/formed/formed/model/nodecomponents.py: Added a field
1250              'alternative' to all node components. This might be of help to
1251              match PDF imports where the descriptions do not match.
1252    
1253    2007-10-23      Frank Koormann <[email protected]>
1254    
1255            * tools/formed/formed/plugins/export/sql.py: New WHERE-Clause for views
1256    
1257    2007-10-23      Frank Koormann <[email protected]>
1258    
1259            * tools/formed/formed/plugins/export/sql.py: Set default
1260            value (-1) for choices and bools.
1261    
1262    2007-10-21      Frank Koormann <[email protected]>
1263    
1264            * tools/formed/formed/plugins/export/sql.py: Grant statements for
1265            descriptive tables added.
1266            (Table.getName): new
1267    
1268    2007-10-21      Frank Koormann <[email protected]>
1269    
1270            * tools/formed/formed/plugins/export/sql.py: "CREATE OR REPLACE"
1271            statements for views and roles to make updates easier.
1272            Add "admin_ka" membership as third option to VIEW_WHERE_CLAUSE.
1273    
1274    2007-10-19      Frank Koormann <[email protected]>
1275    
1276            * tools/formed/formed/plugins/export/sql.py: Added GRANT statements
1277            for views. The statements are prepared for variable substitution
1278            when executing the SQL-scripts by psql.
1279    
1280    2007-10-18      Sascha L. Teichmann <[email protected]>
1281    
1282            * pdf2xfa/src/de/intevation/pdfimport/ClientHandler.java: Fixed:
1283              End of result XML was truncated because of an unflushed buffer.
1284    
1285    2007-10-17      Sascha L. Teichmann <[email protected]>
1286    
1287            * pdf2xfa/bin/build-jar.sh: New. Build production jar file.
1288    
1289            * pdf2xfa/README.TXT: Adjusted how to build production jar file
1290              and how to use it.
1291    
1292            * pdf2xfa/etc, pdf2xfa/etc/manifest.txt: New. Defines main class
1293              and iText dependency.
1294    
1295    2007-10-16      Sascha L. Teichmann <[email protected]>
1296    
1297            * tools/formed/formed/plugins/export/sql.py: Model 'Ja, Nein, Keine Angabe'
1298              are not modeled as BOOLEANs any more. That simpifies the conversion
1299              process web vs. db.
1300    
1301    2007-10-07      Sascha L. Teichmann <[email protected]>
1302    
1303            * tools/formed/formed/plugins/export/sql.py: Added the remaining
1304              UPDATE rules.
1305    
1306    2007-10-07      Sascha L. Teichmann <[email protected]>
1307    
1308            * tools/formed/formed/plugins/export/sql.py: Added UPDATE rules for some
1309              views. TODO: Test'em and implement the rest.
1310    
1311    2007-10-07      Sascha L. Teichmann <[email protected]>
1312    
1313            * tools/formed/formed/plugins/export/sql.py: Bug fix. DELETE and INSERT
1314              rules referenced none existing views.
1315    
1316    2007-10-07      Sascha L. Teichmann <[email protected]>
1317    
1318            * tools/formed/formed/plugins/export/sql.py: Added DELETE and INSERT
1319              rules for views. TODO: add UPDATE rules.
1320    
1321    2007-10-07      Sascha L. Teichmann <[email protected]>
1322    
1323            * tools/formed/formed/plugins/export/old_sql.py: New. Contains
1324              the legacy SQL export filters.
1325    
1326            * tools/formed/formed/plugins/export/sql.py: Factored out the
1327              legacy SQL export filters to old_sql.
1328    
1329            * tools/formed/formed/config.py: Adjusted to fetch legacy
1330              filters from old_sql.
1331    
1332    2007-10-06      Sascha L. Teichmann <[email protected]>
1333    
1334            * pdf2xfa/**: Initial import of the PDF to XFA server.
1335    
1336    2007-10-06      Sascha L. Teichmann <[email protected]>
1337    
1338            * tools/formed/formed/plugins/export/sql.py: Fixed bug
1339              that made choices of three elements to booleans if
1340              they have other meanings than 'Ja', 'Nein', 'keine Angabe'.
1341    
1342    2007-10-05      Sascha L. Teichmann <[email protected]>
1343    
1344            * tools/formed/formed/plugins/export/sql.py: Select ids of
1345              underlaying tables in views too.
1346    
1347    2007-10-04      Sascha L. Teichmann <[email protected]>
1348    
1349            * tools/formed/formed/plugins/export/sql.py: Create schema inside transaction.
1350              Various bug fixes.
1351    
1352    2007-10-04      Sascha L. Teichmann <[email protected]>
1353    
1354            * tools/formed/formed/model/data.py: Added GroupNode.allWidgets()
1355              to extract fields from embedded repeat groups.
1356    
1357            * tools/formed/formed/plugins/export/sql.py: The SQL exporter exports
1358              views per page too. Result not tested yet.
1359    
1360    2007-10-01      Sascha L. Teichmann <[email protected]>
1361    
1362            * tools/formed/formed/plugins/web/view_renderer.py: Ignore
1363              in-page repeat groups while rendering pages.
1364    
1365    2007-10-01      Sascha L. Teichmann <[email protected]>
1366    
1367            * tools/formed/formed/model/nodecomponents.py: Added visitor
1368              traversals for document trees.
1369    
1370            * tools/formed/formed/model/data.py: Rewrote the
1371              Page.allWidgets() method to use new visitor for
1372              tree traversal.
1373    
1374    2007-09-27      Torsten Irlaender <[email protected]>
1375    
1376            * tools/formed/formed/plugins/names/filter.py: Pages are now included
1377              in the rename by formular name  algorithm
1378    
1379    2007-09-26      Sascha L. Teichmann <[email protected]>
1380    
1381            * tools/formed/formed/model/data.py: Removed old {next|prev}Page()
1382              TODO: rewrite Page.allWidgets().
1383    
1384            * tools/formed/formed/model/nodecomponents.py: Added a method
1385              Node.firstLevel(criterion) to walk a defined line in the tree.
1386    
1387            * tools/formed/formed/plugins/export/sql.py: Extract data suitable to
1388              build views and respective joins.
1389    
1390    2007-09-26      Sascha L. Teichmann <[email protected]>
1391    
1392            * tools/formed/formed/plugins/web/plugin.py: add 'web.tidy:' flag to
1393              FORMED environment variable. If set to true tidylib is used to
1394              filter HTML content to be W3C valid. To use this feature install
1395              uTidylib.
1396    
1397            * tools/formed/formed/plugins/web/server.py: Check if MIME type is
1398              text/html and filters content through tidy if requested.
1399    
1400    2007-09-25      Torsten Irlaender <[email protected]>
1401    
1402            * tools/formed/formed/plugins/web/view_renderer.py: Small fix and
1403              cleanup of the form generation code.
1404    
1405    2007-09-21      Sascha L. Teichmann <[email protected]>
1406    
1407            * tools/formed/formed/plugins/export/sql.py: Added generation time
1408              and DROP TABLE statements to schema export.
1409    
1410    2007-09-20      Sascha L. Teichmann <[email protected]>
1411    
1412            * tools/formed/formed/plugins/export/sql.py: The tables are generated
1413              in correct topolocial order now.
1414    
1415    2007-09-20      Sascha L. Teichmann <[email protected]>
1416    
1417            * tools/formed/formed/plugins/export/mode.py: New. Filter to export
1418              a document with items that are in given mode.
1419    
1420            * tools/formed/formed/model/nodecomponents.py: Added methods to clone
1421              trees depending on selected modes.
1422    
1423            * tools/formed/formed/model/data.py, tools/formed/formed/model/expr.py:
1424              Fixed clone issue with RuleNodes.
1425    
1426            * tools/formed/formed/config.py: Use new plug-in.
1427    
1428    2007-09-17      Sascha L. Teichmann <[email protected]>
1429    
1430            * tools/formed/formed/plugins/web/view_renderer.py: Make the
1431              view renderer a real view renderer. It takes a list of
1432              items now and not only a single page.
1433    
1434            * tools/formed/formed/plugins/web/renderer.py: Feed a list
1435              of items to the view renderer.
1436    
1437    2007-09-17      Torsten Irlaender <[email protected]>
1438    
1439            * tools/formed/formed/plugins/web/view_renderer.py:
1440              Small tweaks in rendering bools.
1441              RadioNodes (with all its children) can now be placed in a container.
1442              The radiobools will not get a surrounding <div> anymore.
1443              I am not sure if the new way results in the wanted behaivor, but the
1444              rendering results are much better now :)
1445              Maybe we need a similar approach for checkboxes?
1446              Rendering groups is still broken in some way.
1447    
1448    2007-09-17      Sascha L. Teichmann <[email protected]>
1449    
1450            * tools/formed/formed/plugins/web/view_renderer.py: Fixed
1451              a few bugs: Do not render empty containers, do not
1452              generate misplaced <br class="newline"> in choices.
1453              Add a nameless container to catch the items that are
1454              nor explicitly assigned to a target. Removed FormData.
1455    
1456            * tools/formed/formed/plugins/web/renderer.py: Removed
1457              a needless import
1458    
1459    2007-09-17      Sascha L. Teichmann <[email protected]>
1460    
1461            * tools/formed/formed/plugins/web/view_renderer.py: Implemented
1462              usage of 'containers' and 'target' attributes.
1463    
1464            * tools/formed/formed/plugins/web/controllers.py: Modified import.
1465    
1466            * tools/formed/formed/plugins/web/renderer.py: Use
1467              new ViewRenderer.
1468    
1469    2007-09-17      Sascha L. Teichmann <[email protected]>
1470    
1471            * tools/formed/formed/model/nodecomponents.py: Added attributes
1472              'target' to NodeComponent and 'containers' to Node.
1473    
1474            * tools/formed/formed/plugins/web/view_renderer.py: New. Aimed
1475              to be a replacement for form_renderer. Not ready yet!
1476    
1477            * ChangeLog: Fixed some indention glitches.
1478    
1479    2007-09-13      Torsten Irlaender <[email protected]>
1480    
1481            * tools/formed/formed/plugins/names/filter.py: Fixed bug in the
1482              renaming algorithm.
1483    
1484    2007-09-12      Torsten Irlaender <[email protected]>
1485    
1486            * tools/formed/formed/plugins/web/form_renderer.py: Renamed header
1487              from formular navigation to "Fallakte Inhalt"
1488    
1489    2007-09-12      Torsten Irlaender <[email protected]>
1490    
1491            * tools/formed/formed/plugins/ui/controls.py: Fixed bug that bad
1492              values (dates)  were not pretty printed.
1493    
1494            * tools/formed/formed/plugins/web/form_renderer.py: Added errormsg to
1495              label rendering for choicelists.
1496    
1497    2007-09-12      Torsten Irlaender <[email protected]>
1498    
1499            * tools/formed/formed/plugins/ui/controls.py: Fixed bug that
1500              choicelist did not get selected when the value is set to "0"
1501    
1502    2007-09-12      Torsten Irlaender <[email protected]>
1503    
1504            * tools/formed/formed/plugins/web/form_renderer.py: Added
1505              "getPrintableData" method, for the formdata Class which will return
1506              the description rather than the value of element in the ID. This is
1507              need for displaying the choises in a right way.
1508            
1509            * tools/formed/formed/plugins/web/renderer.py: Changed string
1510              "Fallnummer" into "Kundennummer" in the templates. Added
1511              Kundennummer to the dataset digest output. Bound in the new
1512              "getPrintableData" call for the digest.
1513    
1514    2007-10-11      Sascha L. Teichmann <[email protected]>
1515    
1516            * tools/formed/formed/plugins/export/data.py: The import/export
1517              of data is now implemented with filters (the most consequent
1518              way in terms of design of FormEd). The support of the 'persistent'
1519              FORMED env-variable support has been removed.
1520    
1521            * tools/formed/formed/plugins/ui/controls.py: Added a flag to the
1522              filter file dialog to double as import dialog.
1523    
1524            * tools/formed/formed/main.py: Removed the the FORMED-var support
1525              for persistence.
1526            
1527            * tools/formed/formed/config.py: Add the two new filters to the filters
1528              list.
1529    
1530    2007-10-11      Sascha L. Teichmann <[email protected]>
1531    
1532            * tools/formed/formed/model/memory.py: Uses XML as persistence format now.
1533              Removed pickle/unpickle stuff.
1534    
1535            * tools/formed/formed/main.py: Uses the new XML persistence.
1536    
1537            * tools/formed/formed/plugins/web/semantic.py: Fixed: choices were
1538              not converted to int indices.
1539    
1540    2007-09-11      Sascha L. Teichmann <[email protected]>
1541    
1542            * tools/formed/formed/model/memory.py: Making MemoryDataStore persistent
1543              with pickle/unpickle.
1544    
1545            * tools/formed/formed/main.py: Added a env FORMED parameter 'persistent'.
1546              Set to a file name it is tried to unpickle a MemoryDataStore from
1547              that file. When exiting the program this file is used to store the
1548              current MemoryDataStore state. The storing only works if you exit
1549              the program through the Menu File->Exit.
1550              usage: FORMED=persistent:test.db ./formed.sh
1551    
1552    2007-09-11      Torsten Irlaender <[email protected]>
1553    
1554            * tools/formed/formed/plugins/web/renderer.py: Changed Name of the
1555              application on the welcome page from "Formed" to "WASKA"
1556    
1557    2007-09-11      Torsten Irlaender <[email protected]>
1558    
1559            * tools/formed/formed/plugins/web/plugin.py,
1560            * tools/formed/formed/plugins/web/controllers.py,
1561            * tools/formed/formed/plugins/web/renderer.py: Added InfoPageHandler.
1562              The infopage provides information on all project participants.
1563    
1564    2007-09-11      Sascha L. Teichmann <[email protected]>
1565    
1566            * tools/formed/formed/plugins/web/controllers.py: Fix unicode conversion
1567              issues with error messages (once again).
1568    
1569    2007-09-11      Torsten Irlaender <[email protected]>
1570    
1571            * tools/formed/formed/plugins/web/form_renderer.py,
1572            * tools/formed/formed/plugins/web/renderer.py: Added alt tag for
1573              icons in error and confirmation dialogs.
1574    
1575    2007-09-11      Sascha L. Teichmann <[email protected]>
1576    
1577            * tools/formed/formed/plugins/web/form_renderer.py: Fixed label
1578              generation for ints, texts and textareas. Fixed h depths of infos.
1579    
1580    2007-09-11      Sascha L. Teichmann <[email protected]>
1581    
1582            * tools/formed/formed/plugins/web/form_renderer.py: Removed
1583              debug output for help.
1584    
1585            * tools/formed/formed/plugins/web/semantic.py: Added forgotten
1586              check for bools.
1587    
1588            * tools/formed/formed/plugins/web/controllers.py:  Added correct
1589              HTML output of data for bools.
1590    
1591    2007-09-11      Torsten Irlaender <[email protected]>
1592    
1593            * tools/formed/formed/plugins/web/form_renderer.py: Changed size of
1594              textfields for int values. Changed Label for submitbuttons to
1595              "Speichern"
1596    
1597            * tools/formed/formed/plugins/web/plugin.py,
1598              tools/formed/formed/plugins/web/controllers.py: Added new
1599              NotImplementedHandler to show up a dummysite for not implemented
1600              functions.
1601    
1602            * tools/formed/formed/plugins/web/renderer.py: Added
1603              NotImplementedRenderer. Various small fixes. Mostly renaming the
1604              labels of some context menus. Error messages are now generated
1605              dynamically depending on num errors. Formular navigation has now
1606              colored indication for errors.
1607    
1608    2007-09-11      Torsten Irlaender <[email protected]>
1609    
1610            * tools/formed/formed/plugins/web/renderer.py: Implemented "LookAhead"
1611              algorithm for the formular navigation to get rid of the problem
1612              that some of the items within the navigation are not linked.  Now
1613              structural group elements are linked with the next page found in the
1614              formular structure.
1615    
1616    2007-09-10      Torsten Irlaender <[email protected]>
1617            * tools/formed/formed/plugins/web/form_renderer.py: Changed order of
1618              div and formtag.
1619    
1620            * tools/formed/formed/plugins/web/controllers.py: Added DataSet action
1621              menu in the conformation dialog when creating a new dataset.
1622    
1623            * tools/formed/formed/plugins/web/renderer.py: Fixed error when
1624              rendering the default welcome page. Changed rendering of the
1625              overview and the digest table of the datasets. Added icon for
1626              confirmation dialog, moved the icon in the <h1> tags.  
1627    
1628    2007-09-10      Torsten Irlaender <[email protected]>
1629    
1630            * tools/formed/formed/plugins/web/form_renderer.py: Some html
1631              generation cleanup. Added error icons to formelements
1632    
1633            * tools/formed/formed/plugins/web/controllers.py: Fixed initialisation
1634              of ErrorStatus. Fixed generated of the help tags in the formular
1635    
1636            * tools/formed/formed/plugins/web/renderer.py: Added error icon for
1637              pageerrors. An "!" now indicates errors on pages in the formular
1638              navigation. Added new <div> "content" around confirmation dialogss.
1639              Links in confimation dialogs are now rendered as buttons. Removed
1640              old obsolete OverviewRenderer.
1641    
1642    2007-09-10      Sascha L. Teichmann <[email protected]>
1643    
1644            * tools/formed/formed/plugins/web/renderer.py: Highlight selected
1645              page in page navigation.
1646    
1647    2007-09-10      Torsten Irlaender <[email protected]>
1648    
1649            * tools/formed/formed/plugins/web/controllers.py: Fixed issues on
1650              displaying formdata when changing datasets. Loading the right
1651              formdata was not handled in a correct way. Hope it is all fixed now.
1652              Left some commented code because not all sideeffects of the changes
1653              are tested yet.
1654    
1655            * tools/formed/formed/plugins/web/renderer.py: DataSetDigestRenderer
1656              now uses the correct data out of the formdata.
1657    
1658    2007-09-10      Sascha L. Teichmann <[email protected]>
1659    
1660            * tools/formed/formed/plugins/web/controllers.py: Pretty
1661              print format data (dates e.g)
1662    
1663    2007-09-10      Sascha L. Teichmann <[email protected]>
1664    
1665            * tools/formed/formed/plugins/web/controllers.py: Modified
1666              ErrorStats a bit to avoid mysterious extra error on page.
1667              No clue why this works.
1668    
1669    2007-09-10      Sascha L. Teichmann <[email protected]>
1670    
1671            * tools/formed/formed/plugins/web/form_renderer.py: Fixed value
1672              problem with radio groups, too.
1673    
1674    2007-09-10      Torsten Irlaender <[email protected]>
1675            * tools/formed/formed/plugins/web/controllers.py: Sessions are now
1676              really removed when deleting a dataset.
1677            
1678    2007-09-10      Torsten Irlaender <[email protected]>
1679    
1680            * tools/formed/formed/plugins/web/controllers.py: Added new Class
1681              ErrorStats which provides Information on remaining errors per page.
1682    
1683            * tools/formed/formed/plugins/web/renderers.py: Finished movement of
1684              the renderer methods from controllers.py to renderers.py.
1685    
1686            * tools/formed/formed/plugins/web/plugin.py: Removed render_session
1687              handlers
1688    
1689    2007-09-10      Sascha L. Teichmann <[email protected]>
1690    
1691            * tools/formed/formed/plugins/web/form_renderer.py: values for
1692              choices are generated from the document tree now. This brings
1693              the state storage of select boxes in HTML to live.
1694    
1695    2007-09-09      Sascha L. Teichmann <[email protected]>
1696    
1697            * tools/formed/formed/plugins/web/semantic.py: Fixed problems with
1698              range checking of integers.
1699    
1700            * tools/formed/formed/plugins/web/controllers.py: Added class
1701              ErrorItem to track errors. They are stored in the session.
1702    
1703    2007-09-09      Sascha L. Teichmann <[email protected]>
1704    
1705            * tools/formed/formed/model/nodecomponents.py: Fixed returning
1706              wrong index in Document.indexOfcomponentByClassAndName.
1707    
1708            * tools/formed/formed/plugins/web/form_renderer.py: 'error' was
1709              written 'errot' in renderer for textareas.
1710    
1711            * tools/formed/formed/plugins/web/controllers.py: Some clean-ups.
1712    
1713    2007-09-09      Sascha L. Teichmann <[email protected]>
1714    
1715            * tools/formed/formed/plugins/web/help.py: Added a 'hasHelp'
1716              method. Could be cheaper for some implementations of help.
1717    
1718            * tools/formed/formed/plugins/web/form_renderer.py: Modified
1719              FormData to have distinct getData(), getHelp() and getError()
1720              methods. Various bug fixes.
1721    
1722            * tools/formed/formed/plugins/web/controllers.py: Implements the
1723              new FormData (trivial by now).
1724    
1725            * tools/formed/formed/plugins/web/renderer.py: New FormData and
1726              some bug fixes.
1727    
1728    2007-09-09      Sascha L. Teichmann <[email protected]>
1729    
1730            * tools/formed/formed/model/memory.py,
1731              tools/formed/formed/model/persistent.py: Add a getValue() method
1732              to dataset abstraction. This is a bit of a workaround to bring
1733              global access across pages for rule checking to work.
1734    
1735            * tools/formed/formed/model/data.py: Fixed: When setting a new expression
1736              the compiled version was not stored in the RuleLeaf.
1737    
1738            * tools/formed/formed/model/expr.py: shlex lexer does not like unicode.
1739              convert the expression string to ascii for compilation.
1740    
1741            * tools/formed/formed/plugins/web/semantic.py: Remove the 'box' because
1742              valid data is stored to the dataset immediately now. Fixed a bug
1743              with integer handler.
1744    
1745            * tools/formed/formed/plugins/web/controllers.py: Removed the semantic 'box'
1746              stuff. When a submit is done extract the rules from the tree document
1747              that are effected by the modified variables and check them.
1748    
1749            * tools/formed/formed/plugins/web/renderer.py: Fixed exception handling
1750              when dealing with templates.
1751    
1752    2007-09-07      Torsten Irlaender <[email protected]>
1753            * tools/formed/formed/plugins/web/controllers.py,
1754              tools/formed/formed/plugins/web/renderer.py: Moved more render
1755              functions into renderer.py. New render classes are:
1756              DataSetDigestRenderer, DataSetNavigationRenderer,
1757              DataSetFormularRenderer, ConfirmationDialogRenderer
1758    
1759              Note: The new methods are only called from selected handlers. Other
1760              handlers call the renderes in the old way.
1761    
1762    2007-09-07      Torsten Irlaender <[email protected]>
1763            * tools/formed/formed/plugins/web/form_renderer.py: Renamed
1764              renderer.py to form_renderer.py. This file will contain formular
1765              specfic render methods in the future.
1766            * tools/formed/formed/plugins/web/renderer.py: Added new renderer.py
1767              which will contain general render methods.
1768            * tools/formed/formed/plugins/web/controllers.py: Began to move all
1769              rendering into renderer.py or form_renderer.py. This file will only
1770              contain teh handlers in the future.
1771    
1772    2007-09-07      Torsten Irlaender <[email protected]>
1773            * tools/formed/formed/plugins/web/renderer.py,
1774              tools/formed/formed/plugins/web/controller.py:
1775              Renderes now get an instance of the formdata object to provide
1776              access the data needed to render various infoboxes etc. Handler
1777              instanciate the formdata.
1778            
1779    2007-09-06      Torsten Irlaender <[email protected]>
1780            * tools/formed/formed/plugins/web/renderer.py: Mainly tried to get the
1781              getFormData interface to work. Added two small semantic fixes, but
1782              did not manage to get it up. Need to exime this a little bit more
1783            * tools/formed/formed/plugins/web/controllers.py: Put <div> tags
1784              around the menus on the right side to be able to assign different
1785              styles. Added dataset actions while editing a dataset.
1786            
1787    2007-09-05      Torsten Irlaender <[email protected]>
1788            * tools/formed/formed/model/memory.py: Fixed deleting datasets by
1789              removing unwanted del method
1790            * tools/formed/formed/plugins/web/controllers.py: Implemented
1791              confiration dialogs for create, delete, and select aof datasets. Started to use
1792              templates as well for larger information units like the dataset summary.
1793            
1794    2007-09-05      Sascha L. Teichmann <[email protected]>
1795    
1796            * tools/formed/formed/model/nodecomponents.py: Added a
1797              method to document to find index of page.
1798    
1799            * tools/formed/formed/plugins/web/semantic.py: Added getValue()
1800              to fetch data from semantic box.
1801    
1802            * tools/formed/formed/plugins/web/controllers.py: Added new
1803              FormData implementation to support DB and semantic box.
1804    
1805    2007-09-05      Sascha L. Teichmann <[email protected]>
1806    
1807            * tools/formed/formed/plugins/web/renderer.py: escaped
1808              error message.
1809    
1810            * tools/formed/formed/plugins/web/controllers.py: Don't fetch
1811              dataset from backend each time a page is up to edit.
1812    
1813    2007-09-05      Sascha L. Teichmann <[email protected]>
1814    
1815            * tools/formed/formed/plugins/web/renderer.py: SimplePageRenderer
1816              returns "Page not found" if given page is None.
1817    
1818            * tools/formed/formed/plugins/web/controllers.py: Added checks
1819              to avoid crashing when ask for a non-existent page.
1820    
1821    2007-09-05      Sascha L. Teichmann <[email protected]>
1822    
1823            * tools/formed/formed/plugins/web/controllers.py: Some clean-ups.
1824    
1825    2007-09-05      Sascha L. Teichmann <[email protected]>
1826    
1827            * tools/formed/formed/plugins/web/plugin.py: Remove request handlers
1828              and renderers.
1829    
1830            * tools/formed/formed/plugins/web/controllers.py: New. Contains handlers
1831              and renderers now. TODO: Move renderers to renderer.py
1832    
1833    2007-09-05      Torsten Irlaender <[email protected]>
1834    
1835            * tools/formed/formed/plugins/web/www/main.tmpl: Adopted web template
1836              and bound in the the new added functions to create, edit, delete and
1837              show formdata.
1838            
1839    2007-09-05      Sascha L. Teichmann <[email protected]>
1840    
1841            * tools/formed/formed/model/memory.py: Removed bisect and use a
1842              simple linear scan for dataset lookup now.
1843    
1844            * tools/formed/formed/plugins/web/plugin.py: Fixed various issues
1845              of different sizes.
1846    
1847    2007-09-05      Torsten Irlaender <[email protected]>
1848    
1849            * tools/formed/formed/plugins/web/memory.py: Fixed getDataSetById
1850              fuction
1851              
1852            * tools/formed/formed/plugins/web/persistent.py: Added store() method
1853              to the DataSet interface
1854    
1855            * tools/formed/formed/plugins/web/renderer.py: Added handlers and
1856              renderes for create, update, delete and show actions on formular data.
1857    
1858    2007-09-04      Sascha L. Teichmann <[email protected]>
1859    
1860            * tools/formed/formed/plugins/web/server.py: The mapping
1861              to methods is now driven by regualar expressions and
1862              a dictionary. Response objects are now able to send
1863              error codes.
1864    
1865            * tools/formed/formed/plugins/web/renderer.py: Fixed an issue
1866              when help in Formdata is None. Moved text for help into
1867              a top level '''...''' variable.
1868    
1869            * tools/formed/test-data/simple.xml: Added test for help.
1870    
1871            * tools/formed/formed/plugins/web/help.py: extra None check.
1872    
1873            * tools/formed/formed/plugins/web/plugin.py: Uses the new
1874              table driven mapping of reguest handling. TODO: split the
1875              WebPlugIn.pageHandler() method further to smaller handlers.
1876              Smaller clean ups and better exception handling.
1877    
1878            * tools/formed/formed/plugins/web/cache.py: Report OSErrors
1879              and do not catch them.
1880    
1881    2007-09-04      Torsten Irlaender <[email protected]>
1882    
1883            * tools/formed/formed/plugins/web/renderer.py,
1884            * tools/formed/formed/plugins/web/plugin.py: Added Interface to
1885              the HelpProvider and inserted help icons to the html output.
1886              Added decorator for Formelemnts, so textfields, choices etc. are now
1887              within a <div> tag.
1888              Modified the error messages.
1889    
1890    2007-09-04      Sascha L. Teichmann <[email protected]>
1891    
1892            * tools/formed/formed/plugins/web/cache.py: New. Implements
1893              the server-side caching more clean. Fixes a bug with
1894              serving static content.
1895    
1896            * tools/formed/formed/plugins/web/plugin.py: Use the new cache.
1897    
1898    2007-09-04      Sascha L. Teichmann <[email protected]>
1899    
1900            * tools/formed/formed/plugins/web/plugin.py: Set MIME type
1901              to "application/xhtml+xml" when serving help texts.
1902    
1903    2007-09-03      Sascha L. Teichmann <[email protected]>
1904    
1905            * tools/formed/formed/plugins/export/diff.py: New. Exports
1906              pairwise differences between all modes.
1907    
1908            * tools/formed/formed/config.py: Use new export filter.
1909    
1910    2007-09-03      Sascha L. Teichmann <[email protected]>
1911    
1912            * tools/formed/formed/plugins/web/help.py: New. Parses an
1913              XHTML document for id'ed divs and builds a help lookup.
1914    
1915            * tools/formed/formed/plugins/web/www/help.tmpl: Template for
1916              the help content frame.
1917    
1918            * tools/formed/formed/plugins/web/www/help.xhtml: Some simple
1919              help text index.
1920    
1921            * tools/formed/formed/plugins/web/plugin.py: Serves the help
1922              texts now.
1923    
1924    2007-09-03      Torsten Irlaender <[email protected]>
1925    
1926            * tools/formed/formed/plugins/web/plugin.py: Only visible group
1927              elements will be rendered in the formular navigation.
1928              Formular pages in the navigation now have their own css-style
1929              attributes.
1930    
1931    2007-09-03      Torsten Irlaender <[email protected]>
1932    
1933            * tools/formed/formed/plugins/web/www/main.tmpl: Added div area for page
1934              errors in template
1935            * tools/formed/formed/plugins/web/plugin.py: Fixed undefined
1936              pageerrors variable
1937    
1938    2007-09-03      Frank Koormann <[email protected]>
1939    
1940            * tools/formed/formed/plugins/export/html.py
1941            (RecursiveExporter): Added annotation to export
1942            (fillRow()): Renamed old fillNine to this more generic name.
1943            
1944    
1945    2007-09-03      Sascha L. Teichmann <[email protected]>
1946    
1947            * tools/formed/formed/plugins/web/renderer.py: Using the decorator
1948              from model.misc now.
1949    
1950    2007-09-03      Sascha L. Teichmann <[email protected]>
1951    
1952            * tools/formed/formed/model/nodecomponents.py: Added an
1953              'annotation' attribute to node components. This is to
1954              enable FormEd document authors to add comments to groups
1955              and fields.
1956    
1957    2007-09-03      Frank Koormann <[email protected]>
1958    
1959            * tools/formed/formed/model/nodecomponents.py
1960            (NodeComponent.getParent): New method to get node components parent.
1961    
1962            * tools/formed/formed/plugins/export/html.py: Export Choice option
1963            as simple list instead of collection of bools.
1964    
1965    2007-09-02      Sascha L. Teichmann <[email protected]>
1966    
1967            * tools/formed/formed/model/persistent.py: Interfaces to abstract
1968              from persistent storage details.
1969    
1970            * tools/formed/formed/model/memory.py: In core implementation
1971              of the persistent interfaces.
1972    
1973            * tools/formed/formed/main.py: Holds a memory data store now.
1974    
1975    2007-09-02      Sascha L. Teichmann <[email protected]>
1976    
1977            * tools/formed/formed/plugins/export/sql.py,
1978              tools/formed/formed/plugins/export/html.py: Fixed constructor chains
1979              for FileDialogFilter sub classes.
1980    
1981    2007-09-02      Sascha L. Teichmann <[email protected]>
1982    
1983            * tools/formed/formed/model/misc.py: Checking the mode in recursive
1984              tree traversals is a common task. To ease this a decorator function
1985              checkMode in union with sub classing ModeChecker can be used.
1986              To make it work simply subclass from ModeChecker and add the decorator
1987              to the methods that need mode tracking. Before you start the recursion
1988              call self.prepareDescent().
1989    
1990            * tools/formed/formed/plugins/export/html.py: Uses the new decorator scheme
1991              now which replace the old. TODO: Make the web renderer use the new scheme
1992              too.
1993    
1994    2007-09-02      Sascha L. Teichmann <[email protected]>
1995    
1996            * tools/formed/formed/plugins/export/sql.py: Removed needless import.
1997    
1998            * tools/formed/formed/plugins/export/html.py: HTML table exporter
1999              uses new FileDialogFilter base class too.
2000    
2001    2007-09-02      Sascha L. Teichmann <[email protected]>
2002    
2003            * tools/formed/formed/plugins/ui/*: New. All file exporters
2004              need a file dialog. Till now each of them pulled up its
2005              own. This was silly code replication. Now there is an abstract
2006              base class 'FileDialogFilter' which implements the common
2007              behavior. The file exporters should subclass it.
2008    
2009            * tools/formed/formed/plugins/export/sql.py: Subclass the SQL
2010              exporters from the new base class. TODO: Subclass the HTML
2011              exporter too.
2012    
2013    2007-08-31      Sascha L. Teichmann <[email protected]>
2014    
2015            * tools/formed/formed/plugins/export/html.py: Make mode check
2016              work (again).
2017    
2018    2007-08-31      Torsten Irlaender <[email protected]>
2019    
2020            * tools/formed/formed/plugins/export/html.py: Rendering of the HTML
2021              exprt works now in a recursive way. This change was needed because
2022              the structure of the formedtree has changed to be able to render
2023              full hirachically document stuctures. (nested lists)
2024              TODO: Fix modechecking
2025    
2026    2007-08-31      Torsten Irlaender <[email protected]>
2027    
2028            * tools/formed/formed/plugins/web/plugin.py: Navigation rendering works
2029              now in recursive way. This change was needed because the structure
2030              of the formedtree has changed to be able to render full hirachically
2031              document stuctures. (nested lists)
2032    
2033    2007-08-31      Sascha L. Teichmann <[email protected]>
2034    
2035            * tools/formed/formed/model/nodecomponents.py: use discard()
2036              instead of remove on sets.
2037    
2038            * tools/formed/formed/plugins/export/sql.py: Added an
2039              exporter for table views.
2040    
2041            * tools/formed/formed/config.py: Added the new exporter
2042              to the list of export filters.
2043    
2044    2007-08-30      Sascha L. Teichmann <[email protected]>
2045    
2046            * tools/formed/formed/model/data.py: Fixed a bug in
2047              Page.allWidgets()
2048    
2049            * tools/formed/formed/plugins/export/sql.py: Added an exporter
2050              for stored procudeures.
2051    
2052            * tools/formed/formed/config.py: Add the new SP exporter.
2053    
2054    2007-08-29      Torsten Irlaender <[email protected]>
2055    
2056            * tools/formed/formed/plugins/web/plugin.py,
2057              tools/formed/formed/plugins/web/error_renderer.py: Added interface
2058              to get the errors for a whole page in te formular. These errors can
2059              now be displayed on the top of the formular.
2060    
2061    2007-08-29      Torsten Irlaender <[email protected]>
2062    
2063            * tools/formed/formed/plugins/web/renderer.py: Finished implementation
2064              of the getFromData interface and prepared the rederer for generating
2065              nice error messages
2066    
2067    2007-08-28      Frank Koormann <[email protected]>
2068    
2069            * tools/formed/formed/plugins/export/sql.py
2070            (SchemaCreator.createSchema, SchemaCreator._createGroup):
2071            Fixed typo in created DDS (PRIMRAY -> PRIMARY)
2072    
2073    2007-08-28      Torsten Irlaender <[email protected]>
2074    
2075            * tools/formed/formed/plugins/export/sql.py: Added small helper
2076              function to generated valid quotes within the sql statements
2077    
2078    2007-08-29      Sascha L. Teichmann <[email protected]>
2079    
2080            * tools/formed/formed/plugins/export/sql.py: Added foreign keys
2081              for repeat tables.
2082              
2083    2007-08-29      Sascha L. Teichmann <[email protected]>
2084    
2085            * tools/formed/formed/plugins/export/sql.py: When generating
2086              an extra table check in a table of same content exists. In
2087              this case reference the existing table.
2088    
2089    2007-08-29      Sascha L. Teichmann <[email protected]>
2090    
2091            * tools/formed/formed/plugins/export/sql.py: Rewritten to produce
2092              _real_ SQL and respect repeat groups.
2093    
2094            * tools/formed/formed/model/data.py: Fixed bug with Group.isRepeat()
2095    
2096            * tools/formed/formed/plugins/web/renderer.py: Use "".join([])
2097              instead of expensive += string concat in some places.
2098    
2099    2007-08-29      Sascha L. Teichmann <[email protected]>
2100    
2101            * tools/formed/formed/model/data.py: Renamed GroupNode.getRepeat()
2102              to .isRepeat and return a bool. Fixed a bug in Page.allWidgets().
2103    
2104    2007-08-28      Torsten Irlaender <[email protected]>
2105    
2106            * tools/formed/plugins/web/renderer.py: Added Formdata interface.
2107            * tools/formed/model/data.py: Implements Formadata interface to
2108              textfields. Fieldset generated depends now on the "invisible"
2109              attribute of the groupnode. Field-label generation slightly changed.
2110              Added error indication to textfields
2111    
2112    2007-08-28      Sascha L. Teichmann <[email protected]>
2113    
2114            * tools/formed/formed/model/data.py,
2115              tools/formed/formed/io/document.py: Removed support
2116              of logical groups.
2117    
2118    2007-08-28      Sascha L. Teichmann <[email protected]>
2119    
2120            * tools/formed/formed/io/document.py: Avoid saving empty
2121              attributes.
2122    
2123            * tools/formed/test-data/simple.xml: Applied.
2124    
2125    2007-08-28      Sascha L. Teichmann <[email protected]>
2126    
2127            * tools/formed/formed/model/data.py: Added 'repeat' and
2128              'invisible' attributes to group. TODO: remove logical group.
2129    
2130    2007-08-27      Torsten Irlaender <[email protected]>
2131    
2132          * tools/formed/plugins/web/plugin.py,          * tools/formed/plugins/web/plugin.py,
2133            tools/formed/plugins/web/renderer.py: Started to  include stylesheet            tools/formed/plugins/web/renderer.py: Started to  include stylesheet
2134            depending tags in the html generation.            depending tags in the html generation.
2135    
2136  207-08-27 Sascha L. Teichmann <[email protected]>  2007-08-27      Sascha L. Teichmann <[email protected]>
2137    
2138          * tools/formed/formed/model/data.py,          * tools/formed/formed/model/data.py,
2139            tools/formed/formed/io/document.py: Added a logical group.            tools/formed/formed/io/document.py: Added a logical group.
2140                  It has an attribute 'repeat' to indicate that it might            It has an attribute 'repeat' to indicate that it might
2141                  be worthy an external table in DB schema.            be worthy an external table in DB schema.
2142    
2143  2007-08-27 Sascha L. Teichmann <[email protected]>  2007-08-27      Sascha L. Teichmann <[email protected]>
2144    
2145          * tools/formed/formed/plugins/web/plugin.py: Support          * tools/formed/formed/plugins/web/plugin.py: Support
2146            serving of static content.            serving of static content.
# Line 19  Line 2148 
2148          * tools/formed/formed/plugins/web/server.py: Removed          * tools/formed/formed/plugins/web/server.py: Removed
2149            old send code.            old send code.
2150    
2151  2007-08-27 Sascha L. Teichmann <[email protected]>  2007-08-27      Sascha L. Teichmann <[email protected]>
2152    
2153          * tools/formed/formed/plugins/web/plugin.py: Use new          * tools/formed/formed/plugins/web/plugin.py: Use new
2154            Response object. Fix typo.            Response object. Fix typo.
# Line 27  Line 2156 
2156          * tools/formed/formed/plugins/web/server.py: support          * tools/formed/formed/plugins/web/server.py: support
2157            response object to serve different MIME types.            response object to serve different MIME types.
2158    
2159  2007-08-27 Sascha L. Teichmann <[email protected]>  2007-08-27      Sascha L. Teichmann <[email protected]>
2160    
2161          * tools/formed/formed/plugins/web/plugin.py: Add web.path          * tools/formed/formed/plugins/web/plugin.py: Add web.path
2162            to FORMED environment  variable to specify the            to FORMED environment  variable to specify the
2163                  root of the static content.            root of the static content.
2164    
2165  2007-08-26 Sascha L. Teichmann <[email protected]>  2007-08-26      Sascha L. Teichmann <[email protected]>
2166    
2167          * tools/formed/formed/model/data.py,          * tools/formed/formed/model/data.py,
2168            tools/formed/formed/model/nodecomponents.py: Fixed mode issues.            tools/formed/formed/model/nodecomponents.py: Fixed mode issues.
2169    
2170          * tools/formed/formed/plugins/web/www,          * tools/formed/formed/plugins/web/www,
2171            tools/formed/formed/plugins/web/www/main.tmpl: New. Contains            tools/formed/formed/plugins/web/www/main.tmpl: New. Contains
2172                  a template for the HTML output.            a template for the HTML output.
2173    
2174          * tools/formed/formed/plugins/web/plugin.py: Fixes several smaller          * tools/formed/formed/plugins/web/plugin.py: Fixes several smaller
2175            mode issues. Introduces CSS support. Simplified the action            mode issues. Introduces CSS support. Simplified the action
2176                  handling.            handling.
2177    
2178          * tools/formed/formed/plugins/web/renderer.py: Removed the          * tools/formed/formed/plugins/web/renderer.py: Removed the
2179            nagivation code.            nagivation code.
2180    
2181          * tools/formed/formed/plugins/web/server.py: Added missing import.          * tools/formed/formed/plugins/web/server.py: Added missing import.
2182    
2183  2007-08-26 Sascha L. Teichmann <[email protected]>  2007-08-26      Sascha L. Teichmann <[email protected]>
2184    
2185          * tools/formed/formed/model/data.py: Added missing broadcast          * tools/formed/formed/model/data.py: Added missing broadcast
2186            parameter to setAttribute() of RuleLeaf.            parameter to setAttribute() of RuleLeaf.
# Line 65  Line 2194 
2194          * tools/formed/formed/plugins/web/server.py: New. Contains          * tools/formed/formed/plugins/web/server.py: New. Contains
2195            the HTTP server code now.            the HTTP server code now.
2196    
2197  2007-08-26 Sascha L. Teichmann <[email protected]>  2007-08-26      Sascha L. Teichmann <[email protected]>
2198    
2199          * tools/formed/test-data/simple.xml: Modified to contain a rule.          * tools/formed/test-data/simple.xml: Modified to contain a rule.
2200    
2201          * tools/formed/formed/model/expr.py: Added. A simple RPN          * tools/formed/formed/model/expr.py: Added. A simple RPN
2202            expression evaluator. To avoid the problem of eval()ing            expression evaluator. To avoid the problem of eval()ing
2203                  arbitrary python expressions I've decided to use a very            arbitrary python expressions I've decided to use a very
2204                  basic and limited stack machine to support rule checking.            basic and limited stack machine to support rule checking.
2205    
2206          * tools/formed/formed/model/data.py: Added a RuleLeaf.          * tools/formed/formed/model/data.py: Added a RuleLeaf.
2207    
# Line 80  Line 2209 
2209    
2210          * tools/formed/formed/model/nodecomponents.py: Add a method          * tools/formed/formed/model/nodecomponents.py: Add a method
2211            to find all items of a given type in document for a given            to find all items of a given type in document for a given
2212                  mode. Usefull to find all rules in the tree.            mode. Usefull to find all rules in the tree.
2213    
2214          * tools/formed/formed/ui/controls.py: Added a listener mechanism          * tools/formed/formed/ui/controls.py: Added a listener mechanism
2215            to attribute table to report exceptions when setting a value            to attribute table to report exceptions when setting a value
2216                  from GUI. Useful to report compilation errors when setting            from GUI. Useful to report compilation errors when setting
2217                  expr of rule leafs.            expr of rule leafs.
2218    
2219          * tools/formed/formed/main.py: Added a method to track exceptions          * tools/formed/formed/main.py: Added a method to track exceptions
2220            from the attribute table and pop up dialogs if they occur.            from the attribute table and pop up dialogs if they occur.
2221                  Added a counter of rule modifications in tree. Useful if you            Added a counter of rule modifications in tree. Useful if you
2222                  want build cached data structures like rule sets and you want            want build cached data structures like rule sets and you want
2223                  to know if they are still valid.            to know if they are still valid.
2224    
2225  2007-08-24 Torsten Irlaender <[email protected]>  2007-08-24      Torsten Irlaender <[email protected]>
2226    
2227          * tools/formed/formed/plugins/export/sql.py: Fixed CHECK-constraint          * tools/formed/formed/plugins/export/sql.py: Fixed CHECK-constraint
2228            for checkbox values. (Syntax error).            for checkbox values. (Syntax error).
# Line 101  Line 2230 
2230          * tools/formed/formed/plugins/names/filter.py: Fixes in formularname          * tools/formed/formed/plugins/names/filter.py: Fixes in formularname
2231            generation              generation  
2232    
2233  2007-08-24 Torsten Irlaender <[email protected]>  2007-08-24      Torsten Irlaender <[email protected]>
2234    
2235          * tools/formed/formed/plugins/names/filter.py: Separated Class for          * tools/formed/formed/plugins/names/filter.py: Separated Class for
2236            making the formularnames more database friendly. Added some more            making the formularnames more database friendly. Added some more
# Line 109  Line 2238 
2238          * tools/formed/formed/plugins/export/sql.py: Make use of the fresh          * tools/formed/formed/plugins/export/sql.py: Make use of the fresh
2239            separated class, and some fixes in sql generation.            separated class, and some fixes in sql generation.
2240    
2241  2007-08-24 Sascha L. Teichmann <[email protected]>  2007-08-24      Sascha L. Teichmann <[email protected]>
2242    
2243          * tools/formed/formed/plugins/export/html.py: Print lengths          * tools/formed/formed/plugins/export/html.py: Print lengths
2244            of external choice list.            of external choice list.
2245    
2246  2007-08-24 Sascha L. Teichmann <[email protected]>  2007-08-24      Sascha L. Teichmann <[email protected]>
2247    
2248          * tools/formed/formed/main.py: Little workaround for          * tools/formed/formed/main.py: Little workaround for
2249            mode selection if someone adds an removes a mode.            mode selection if someone adds an removes a mode.
2250    
2251  2007-08-24 Sascha L. Teichmann <[email protected]>  2007-08-24      Sascha L. Teichmann <[email protected]>
2252    
2253          * tools/formed/test-data/simple.xml: Better test case for          * tools/formed/test-data/simple.xml: Better test case for
2254            mode depended leaf items.            mode depended leaf items.
# Line 129  Line 2258 
2258    
2259          * tools/formed/formed/plugins/export/html.py: Use effective          * tools/formed/formed/plugins/export/html.py: Use effective
2260            mode. TODO: the 'all' modus return false results sometimes.            mode. TODO: the 'all' modus return false results sometimes.
2261                  Cause: The modes are only cumulated over time. Removal is            Cause: The modes are only cumulated over time. Removal is
2262                  not done.            not done.
2263    
2264  2007-08-24 Sascha L. Teichmann <[email protected]>  2007-08-24      Sascha L. Teichmann <[email protected]>
2265    
2266          * tools/formed/formed/plugins/export/html.py: Dump the items          * tools/formed/formed/plugins/export/html.py: Dump the items
2267            of radio groups and choices too.            of radio groups and choices too.
2268    
2269  2007-08-24 Torsten Irlaender <[email protected]>  2007-08-24      Torsten Irlaender <[email protected]>
2270    
2271          * tools/formed/formed/plugins/names/filter.py: Modified the renaming          * tools/formed/formed/plugins/names/filter.py: Modified the renaming
2272            by formular names to make the naming more database friendly.            by formular names to make the naming more database friendly.
2273            Now only alphanumeric and underscore chars is allowed.            Now only alphanumeric and underscore chars is allowed.
2274    
2275  2007-08-24 Sascha L. Teichmann <[email protected]>  2007-08-24      Sascha L. Teichmann <[email protected]>
2276    
2277          * tools/formed/formed/plugins/export/html.py: Tweaked          * tools/formed/formed/plugins/export/html.py: Tweaked
2278            HTML table exporter a bit to be on par with the XSLT            HTML table exporter a bit to be on par with the XSLT
2279                  script. TODO: Dump items in radio and choice groups.            script. TODO: Dump items in radio and choice groups.
2280    
2281  2007-08-23 Sascha L. Teichmann <[email protected]>  2007-08-23      Sascha L. Teichmann <[email protected]>
2282    
2283          * tools/formed/formed/plugins/names/filter.py: Removed          * tools/formed/formed/plugins/names/filter.py: Removed
2284            HTML and SQL exporters.            HTML and SQL exporters.
# Line 158  Line 2287 
2287            tools/formed/formed/plugins/export/__init__.py,            tools/formed/formed/plugins/export/__init__.py,
2288            tools/formed/formed/plugins/export/sql.py,            tools/formed/formed/plugins/export/sql.py,
2289            tools/formed/formed/plugins/export/html.py: New: Contain            tools/formed/formed/plugins/export/html.py: New: Contain
2290                  the HTML and the SQL exporters now.            the HTML and the SQL exporters now.
2291    
2292          * tools/formed/formed/config.py: Use exporters from different          * tools/formed/formed/config.py: Use exporters from different
2293            package now.            package now.
2294    
2295  2007-08-23 Torsten Irlaender <[email protected]>  2007-08-23      Torsten Irlaender <[email protected]>
2296    
2297          * tools/formed/formed/plugins/names/filter.py: Added an          * tools/formed/formed/plugins/names/filter.py: Added an
2298            pseudo SQL export filters. TODO: Move HTML and SQL filter            pseudo SQL export filters. TODO: Move HTML and SQL filter
# Line 172  Line 2301 
2301    
2302          * tools/formed/formed/config.py: Install the new SQL filter.          * tools/formed/formed/config.py: Install the new SQL filter.
2303    
2304  2007-08-23 Sascha L. Teichmann <[email protected]>  2007-08-23      Sascha L. Teichmann <[email protected]>
2305    
2306          * tools/formed/formed/model/nodecomponents.py: Added a depth()          * tools/formed/formed/model/nodecomponents.py: Added a depth()
2307            method to determine the depth of particular tree item.            method to determine the depth of particular tree item.
# Line 182  Line 2311 
2311    
2312          * tools/formed/formed/config.py: Install the new HTML filter.          * tools/formed/formed/config.py: Install the new HTML filter.
2313    
2314  2007-08-23 Torsten Irlaender <[email protected]>  2007-08-23      Torsten Irlaender <[email protected]>
2315    
2316          * contrib/extract-xfa-fields_and_options.xsl: Added small xsl script          * contrib/extract-xfa-fields_and_options.xsl: Added small xsl script
2317            to extract fields and options in the XFA Data in teh PDF. This            to extract fields and options in the XFA Data in teh PDF. This
2318            script might me handy to indicate changes between the different            script might me handy to indicate changes between the different
2319            formular versions.            formular versions.
2320                    
2321  2007-08-23 Sascha L. Teichmann <[email protected]>  2007-08-23      Sascha L. Teichmann <[email protected]>
2322    
2323          * tools/formed/formed/main.py: Add an 'all' mode to          * tools/formed/formed/main.py: Add an 'all' mode to
2324            select all modes. ;-)            select all modes. ;-)
2325    
2326  2007-08-22 Sascha L. Teichmann <[email protected]>  2007-08-22      Sascha L. Teichmann <[email protected]>
2327    
2328          * tools/formed/test-data/simple.xml,          * tools/formed/test-data/simple.xml,
2329            tools/formed/formed/model/data.py,            tools/formed/formed/model/data.py,
# Line 204  Line 2333 
2333            tools/formed/formed/main.py: Removed support for switch nodes.            tools/formed/formed/main.py: Removed support for switch nodes.
2334            BEWARE: This breaks compatibility with older documents!            BEWARE: This breaks compatibility with older documents!
2335    
2336  2007-08-22 Sascha L. Teichmann <[email protected]>  2007-08-22      Sascha L. Teichmann <[email protected]>
2337    
2338          * tools/formed/formed/plugins/web/plugin.py: Uses the          * tools/formed/formed/plugins/web/plugin.py: Uses the
2339            getSelectedMode() from main now.            getSelectedMode() from main now.
# Line 215  Line 2344 
2344          * tools/formed/formed/config.py: removed selected mode from          * tools/formed/formed/config.py: removed selected mode from
2345            env configuration.            env configuration.
2346    
2347  2007-08-22 Sascha L. Teichmann <[email protected]>  2007-08-22      Sascha L. Teichmann <[email protected]>
2348    
2349          * tools/formed/formed/ui/controls.py: Attributes in GUI attribute          * tools/formed/formed/ui/controls.py: Attributes in GUI attribute
2350            table are now alphabetically sorted.            table are now alphabetically sorted.
2351    
2352  2007-08-22 Sascha L. Teichmann <[email protected]>  2007-08-22      Sascha L. Teichmann <[email protected]>
2353    
2354          * tools/formed/formed/model/nodecomponents.py: Added code to          * tools/formed/formed/model/nodecomponents.py: Added code to
2355            establish the new 'modes' recursively.            establish the new 'modes' recursively.
# Line 236  Line 2365 
2365    
2366          * tools/formed/formed/main.py: Adjusted to new infrastructure.          * tools/formed/formed/main.py: Adjusted to new infrastructure.
2367    
2368  2007-08-22 Sascha L. Teichmann <[email protected]>  2007-08-22      Sascha L. Teichmann <[email protected]>
2369    
2370          * tools/formed/formed/model/nodecomponents.py: Added an          * tools/formed/formed/model/nodecomponents.py: Added an
2371            attribute 'modes' to NodeComponents.            attribute 'modes' to NodeComponents.
2372    
2373  2007-08-22 Sascha L. Teichmann <[email protected]>  2007-08-22      Sascha L. Teichmann <[email protected]>
2374    
2375          * tools/formed/formed/model/data.py: Small cosmetic cleanups          * tools/formed/formed/model/data.py: Small cosmetic cleanups
2376    
2377  2007-08-21 Sascha L. Teichmann <[email protected]>  2007-08-21      Sascha L. Teichmann <[email protected]>
2378    
2379          * tools/formed/formed/plugins/web/renderer.py: Another fix          * tools/formed/formed/plugins/web/renderer.py: Another fix
2380            for the hidden field. Argh!            for the hidden field. Argh!
2381    
2382  2007-08-21 Sascha L. Teichmann <[email protected]>  2007-08-21      Sascha L. Teichmann <[email protected]>
2383    
2384          * tools/formed/formed/plugins/web/renderer.py: Fixed double          * tools/formed/formed/plugins/web/renderer.py: Fixed double
2385            generation of hidden page field.            generation of hidden page field.
2386    
2387  2007-08-21 Sascha L. Teichmann <[email protected]>  2007-08-21      Sascha L. Teichmann <[email protected]>
2388    
2389          * tools/formed/formed/plugins/web/semantic.py: Added semantic          * tools/formed/formed/plugins/web/semantic.py: Added semantic
2390            checks for radio groups.            checks for radio groups.
2391    
2392  2007-08-21 Sascha L. Teichmann <[email protected]>  2007-08-21      Sascha L. Teichmann <[email protected]>
2393    
2394          * tools/formed/formed/plugins/web/semantic.py: Added semantic          * tools/formed/formed/plugins/web/semantic.py: Added semantic
2395            checks for choices.            checks for choices.
# Line 275  Line 2404 
2404          * contrib/convert-formedtree2html.xsl:          * contrib/convert-formedtree2html.xsl:
2405          Replace technical types with readable descriptions          Replace technical types with readable descriptions
2406    
2407  2007-08-21 Sascha L. Teichmann <[email protected]>  2007-08-21      Sascha L. Teichmann <[email protected]>
2408    
2409          * tools/formed/formed/plugins/web/plugin.py: Fix a few smaller          * tools/formed/formed/plugins/web/plugin.py: Fix a few smaller
2410            issues. 'action' looks for all widgets on a page now, goes            issues. 'action' looks for all widgets on a page now, goes
2411                  through all passed parameters, tries to match them with the            through all passed parameters, tries to match them with the
2412                  widgets of the page and put them into the semantic box.            widgets of the page and put them into the semantic box.
2413                  Afterwards a list of untouched page parameters are left            Afterwards a list of untouched page parameters are left
2414                  which will be deleted from the semantic box.            which will be deleted from the semantic box.
2415    
2416          * tools/formed/formed/plugins/web/semantic.py: Simplified.          * tools/formed/formed/plugins/web/semantic.py: Simplified.
2417            The NodeComponent is passed as an argument now.            The NodeComponent is passed as an argument now.
# Line 290  Line 2419 
2419          * tools/formed/formed/plugins/web/renderer.py: Generate a          * tools/formed/formed/plugins/web/renderer.py: Generate a
2420            hidden field to store the name of the page.            hidden field to store the name of the page.
2421    
2422  2007-08-21 Sascha L. Teichmann <[email protected]>  2007-08-21      Sascha L. Teichmann <[email protected]>
2423    
2424          * tools/formed/formed/plugins/web/plugin.py: Fixed an encoding          * tools/formed/formed/plugins/web/plugin.py: Fixed an encoding
2425            issue with incoming UTF-8 data.            issue with incoming UTF-8 data.
2426    
2427  2007-08-21 Sascha L. Teichmann <[email protected]>  2007-08-21      Sascha L. Teichmann <[email protected]>
2428    
2429          * tools/formed/test-data/simple.xml: Improve test for widgets          * tools/formed/test-data/simple.xml: Improve test for widgets
2430            in switches.            in switches.
2431    
2432          * tools/formed/formed/model/data.py: Added a method to find all          * tools/formed/formed/model/data.py: Added a method to find all
2433            widgets in a given page. Fixed a bug when walking in switch            widgets in a given page. Fixed a bug when walking in switch
2434                  with a given mode.            with a given mode.
2435    
2436          * tools/formed/formed/plugins/web/plugin.py: Simple test for          * tools/formed/formed/plugins/web/plugin.py: Simple test for
2437            listing all widgets in page.            listing all widgets in page.
2438    
2439  2007-08-21 Torsten Irlaender <[email protected]>  2007-08-21      Torsten Irlaender <[email protected]>
2440    
2441          * tools/formed/formed/plugins/names/filter.py: Fixed file-encoding to          * tools/formed/formed/plugins/names/filter.py: Fixed file-encoding to
2442            latin-1            latin-1
2443    
2444  2007-08-21 Sascha L. Teichmann <[email protected]>  2007-08-21      Sascha L. Teichmann <[email protected]>
2445    
2446          * tools/formed/formed/model/data.py: Added mode parameter to          * tools/formed/formed/model/data.py: Added mode parameter to
2447            walk.            walk.
2448                              
2449          * tools/formed/formed/model/nodecomponents.py: SwitchNode overwrites          * tools/formed/formed/model/nodecomponents.py: SwitchNode overwrites
2450            walk() with usage of the new mode parameter. Added a method to            walk() with usage of the new mode parameter. Added a method to
2451                  give children in a given mode.            give children in a given mode.
2452    
2453          * tools/formed/formed/plugins/web/renderer.py: Simplified to use          * tools/formed/formed/plugins/web/renderer.py: Simplified to use
2454            new Switch.childrenInMode() method.            new Switch.childrenInMode() method.
2455    
2456  2007-08-21 Sascha L. Teichmann <[email protected]>  2007-08-21      Sascha L. Teichmann <[email protected]>
2457    
2458          * tools/formed/formed/plugins/web/semantic.py: Add checks for          * tools/formed/formed/plugins/web/semantic.py: Add checks for
2459            texts and text areas.            texts and text areas.
# Line 332  Line 2461 
2461          * tools/formed/formed/plugins/web/renderer.py: Set accept-charset          * tools/formed/formed/plugins/web/renderer.py: Set accept-charset
2462            to UTF-8 in generated form.            to UTF-8 in generated form.
2463    
2464  2007-08-20 Sascha L. Teichmann <[email protected]>  2007-08-20      Sascha L. Teichmann <[email protected]>
2465    
2466          * tools/formed/formed/plugins/web/semantic.py: Added semantic          * tools/formed/formed/plugins/web/semantic.py: Added semantic
2467            tests for dates.            tests for dates.
2468    
2469  2007-08-20 Sascha L. Teichmann <[email protected]>          2007-08-20      Sascha L. Teichmann <[email protected]>  
2470    
2471          * tools/formed/test-data/simple.xml: Tweak a bit for integer          * tools/formed/test-data/simple.xml: Tweak a bit for integer
2472            range test.            range test.
# Line 351  Line 2480 
2480          * tools/formed/formed/plugins/web/plugin.py: Use semantic          * tools/formed/formed/plugins/web/plugin.py: Use semantic
2481            check.            check.
2482    
2483  2007-08-20      Torsten Irlaender <[email protected]>  2007-08-20      Torsten Irlaender <[email protected]>
2484    
2485          * tools/formed/formed/plugins/web/renderer.py: Fixed Syntax in          * tools/formed/formed/plugins/web/renderer.py: Fixed Syntax in
2486            selection-field generation (Removed quote)            selection-field generation (Removed quote)
# Line 364  Line 2493 
2493            renderer. This submit parameters are stored in the            renderer. This submit parameters are stored in the
2494            session now. This will ease testing the constraint            session now. This will ease testing the constraint
2495            tests which need to be written soon.            tests which need to be written soon.
2496                              
2497            BEWARE: The session management is _not_ made for production!            BEWARE: The session management is _not_ made for production!
2498            Denial of service attacks are too easy, and the            Denial of service attacks are too easy, and the
2499            cryptographical strength of the session id is doubtful.            cryptographical strength of the session id is doubtful.
# Line 382  Line 2511 
2511            and can be hooked automatically into the new 'Filters'            and can be hooked automatically into the new 'Filters'
2512            sub menu under 'Extra'. They got called when the user            sub menu under 'Extra'. They got called when the user
2513            selects their respective menu item.            selects their respective menu item.
2514                              
2515          * tools/formed/formed/config.py: Contains the list of          * tools/formed/formed/config.py: Contains the list of
2516            installed filters.            installed filters.
2517    
# Line 443  Line 2572 
2572    
2573          * tools/formed/formed/main.py: Swaped order of          * tools/formed/formed/main.py: Swaped order of
2574            'Make names unique' and 'Selected mode...' in Extra            'Make names unique' and 'Selected mode...' in Extra
2575                  menu and put a separator between them.            menu and put a separator between them.
2576    
2577  2007-08-15      Sascha L. Teichmann <[email protected]>  2007-08-15      Sascha L. Teichmann <[email protected]>
2578    
# Line 452  Line 2581 
2581    
2582          * tools/formed/formed/plugins/plugin.py: Simplified          * tools/formed/formed/plugins/plugin.py: Simplified
2583            the plug-in interface. Only the reference to the            the plug-in interface. Only the reference to the
2584                  global configuration is passed at setup time.            global configuration is passed at setup time.
2585    
2586          * tools/formed/formed/plugins/web/plugin.py: Adjusted          * tools/formed/formed/plugins/web/plugin.py: Adjusted
2587            to new plug-in setup. The traveral mode is now taken            to new plug-in setup. The traveral mode is now taken
2588                  from the global configuration each time a rendering            from the global configuration each time a rendering
2589                  is triggered. The FORMED parameter is now named            is triggered. The FORMED parameter is now named
2590                  'doc.mode' instead of 'web.mode'. The parameter            'doc.mode' instead of 'web.mode'. The parameter
2591                  is not needed any more because it can be configured            is not needed any more because it can be configured
2592                  at runtime.            at runtime.
2593    
2594          * tools/formed/formed/main.py: Adjusted to new plugin          * tools/formed/formed/main.py: Adjusted to new plugin
2595            setup. Added a new menu item Extra->Select Mode...            setup. Added a new menu item Extra->Select Mode...
2596                  to select the traversal mode. It is stored in the            to select the traversal mode. It is stored in the
2597                  global config.            global config.
2598    
2599          * tools/formed/formed/config.py: Simplified. Only uses          * tools/formed/formed/config.py: Simplified. Only uses
2600            one env dictionary to store global configuration parameters.            one env dictionary to store global configuration parameters.
# Line 477  Line 2606 
2606    
2607          * tools/formed/formed/plugins/web/plugin.py,          * tools/formed/formed/plugins/web/plugin.py,
2608            tools/formed/formed/plugins/web/renderer.py: Added parameter            tools/formed/formed/plugins/web/renderer.py: Added parameter
2609                  print out in web plugin.            print out in web plugin.
2610    
2611  2007-08-15      Torsten Irlaender <[email protected]>  2007-08-15      Torsten Irlaender <[email protected]>
2612    
# Line 495  Line 2624 
2624    
2625          * tools/formed/formed/plugins/web/plugin.py,          * tools/formed/formed/plugins/web/plugin.py,
2626            tools/formed/formed/config.py: Added a 'web.mode' parameter            tools/formed/formed/config.py: Added a 'web.mode' parameter
2627                  to FORMED environment variable.            to FORMED environment variable.
2628                  e.g. 'FORMED=web.mode:modeX' sets the mode 'modeX'.            e.g. 'FORMED=web.mode:modeX' sets the mode 'modeX'.
2629                  Defaults to 'default'.            Defaults to 'default'.
2630    
2631          * tools/formed/test-data/simple.xml: Added test for switch.          * tools/formed/test-data/simple.xml: Added test for switch.
2632    
# Line 511  Line 2640 
2640          * tools/formed/formed/io/document.py,          * tools/formed/formed/io/document.py,
2641            tools/formed/formed/model/data.py,            tools/formed/formed/model/data.py,
2642            tools/formed/formed/model/nodecomponents.py: Added an item            tools/formed/formed/model/nodecomponents.py: Added an item
2643                  to model external item lists.            to model external item lists.
2644    
2645          * tools/formed/formed/plugins/web/renderer.py: Render new item          * tools/formed/formed/plugins/web/renderer.py: Render new item
2646            list.            list.
# Line 528  Line 2657 
2657    
2658          * contrib/extract-xfa-items.sh: New. Can be used to extract longer          * contrib/extract-xfa-items.sh: New. Can be used to extract longer
2659            choice item lists for a given field from XFA files. e.g. with            choice item lists for a given field from XFA files. e.g. with
2660                  './contrib/extract-xfa-items.sh Muttersprache alles.xml'            './contrib/extract-xfa-items.sh Muttersprache alles.xml'
2661    
2662  2007-08-12      Sascha L. Teichmann <[email protected]>  2007-08-12      Sascha L. Teichmann <[email protected]>
2663    
2664          * tools/formed/formed/model/data.py,          * tools/formed/formed/model/data.py,
2665            tools/formed/formed/plugins/web/renderer.py,            tools/formed/formed/plugins/web/renderer.py,
2666                  tools/formed/formed/io/document.py: Changed the structure            tools/formed/formed/io/document.py: Changed the structure
2667                  of choice constructs. The idea to hold the different items            of choice constructs. The idea to hold the different items
2668                  of a particular choice in a semicolon separated list was bad.            of a particular choice in a semicolon separated list was bad.
2669                  Now choices are groups and  the option items are modelled as            Now choices are groups and  the option items are modelled as
2670                  embedded bools. (mainly Torsten Irländer's idea).            embedded bools. (mainly Torsten Irländer's idea).
2671    
2672                  WARNING: this makes old document files containing choices incompatible!!!            WARNING: this makes old document files containing choices incompatible!!!
2673                  Use the following XSLT to reestablish compatibility.            Use the following XSLT to reestablish compatibility.
2674                              
2675          * contrib/itemize-choices.xsl: New converts old to new structure.          * contrib/itemize-choices.xsl: New converts old to new structure.
2676            Needs exslt.org's string extensions (which xsltproc includes)            Needs exslt.org's string extensions (which xsltproc includes)
2677    
# Line 560  Line 2689 
2689    
2690          * tools/formed/formed/model/nodecomponents.py: Added code to clone parts          * tools/formed/formed/model/nodecomponents.py: Added code to clone parts
2691            of the tree.            of the tree.
2692                              
2693          * tools/formed/formed/ui/controls.py: Added a getSelected method.          * tools/formed/formed/ui/controls.py: Added a getSelected method.
2694    
2695          * tools/formed/formed/model/misc.py: Fixed a programming bug.          * tools/formed/formed/model/misc.py: Fixed a programming bug.
# Line 583  Line 2712 
2712    
2713          * tools/formed/formed/model/nodecomponents.py: Added walk generator over all          * tools/formed/formed/model/nodecomponents.py: Added walk generator over all
2714            items in the document tree. Added a method to eliminated duplicated names            items in the document tree. Added a method to eliminated duplicated names
2715                  in document tree.            in document tree.
2716    
2717          * tools/formed/formed/model/misc.py: Added update mechanism for id generator          * tools/formed/formed/model/misc.py: Added update mechanism for id generator
2718            after names collisions are eliminated.            after names collisions are eliminated.
# Line 595  Line 2724 
2724    
2725          * tools/formed/formed/model/data.py,          * tools/formed/formed/model/data.py,
2726            tools/formed/formed/plugins/web/renderer.py: Removed support            tools/formed/formed/plugins/web/renderer.py: Removed support
2727                  for 'text' attributes in bool items. They were never really            for 'text' attributes in bool items. They were never really
2728                  used and the 'description' attributes fulfill the same            used and the 'description' attributes fulfill the same
2729                  purpose.            purpose.
2730    
2731          * contrib/remove-bool-text.xsl: Transform to remove the          * contrib/remove-bool-text.xsl: Transform to remove the
2732            'text' attributes from bool items. Apply with:            'text' attributes from bool items. Apply with:
2733                  'xsltproc contrib/remove-bool-text.xsl old.xml > new.xml'            'xsltproc contrib/remove-bool-text.xsl old.xml > new.xml'
2734    
2735          * tools/formed/test-data/simple.xml: Removed 'text' attributes          * tools/formed/test-data/simple.xml: Removed 'text' attributes
2736            from bool items.            from bool items.
# Line 620  Line 2749 
2749    
2750          * contrib/convert-choices.xsl: Added to convert document files          * contrib/convert-choices.xsl: Added to convert document files
2751            which use the choice 'option' attribute to usage of 'value'.            which use the choice 'option' attribute to usage of 'value'.
2752                  Apply with e.g. 'xsltproc convert-choices.xsl old.xml > new.xml'            Apply with e.g. 'xsltproc convert-choices.xsl old.xml > new.xml'
2753    
2754  2007-08-10      Sascha L. Teichmann <[email protected]>  2007-08-10      Sascha L. Teichmann <[email protected]>
2755    
# Line 657  Line 2786 
2786    
2787          * tools/formed/formed/plugins/web/plugin.py: To determine          * tools/formed/formed/plugins/web/plugin.py: To determine
2788            the port look at FORMED dictionary first. Key is 'web.port'.            the port look at FORMED dictionary first. Key is 'web.port'.
2789                  e.g. FORMED='web.port:8888'            e.g. FORMED='web.port:8888'
2790    
2791          * tools/formed/formed/main.py: Call the plugin setup with          * tools/formed/formed/main.py: Call the plugin setup with
2792            the reference to the config.            the reference to the config.
# Line 737  Line 2866 
2866    
2867          * tools/formed/formed/model/data.py,          * tools/formed/formed/model/data.py,
2868            tools/formed/formed/model/nodecomponents.py: Added new            tools/formed/formed/model/nodecomponents.py: Added new
2869                  attributes.            attributes.
2870    
2871          * tools/formed/formed/plugins/web/plugin.py: Added rendering          * tools/formed/formed/plugins/web/plugin.py: Added rendering
2872            for checkboxes and radio buttons.            for checkboxes and radio buttons.
# Line 766  Line 2895 
2895    
2896          * tools/formed/formed/plugins/web/plugin.py: Added a first          * tools/formed/formed/plugins/web/plugin.py: Added a first
2897            version of a recursive HTML renderer based on the document            version of a recursive HTML renderer based on the document
2898                  tree.            tree.
2899    
2900  2007-08-08      Sascha L. Teichmann <[email protected]>  2007-08-08      Sascha L. Teichmann <[email protected]>
2901    
# Line 795  Line 2924 
2924    
2925          * tools/formed/formed/main.py: Added event route document ->          * tools/formed/formed/main.py: Added event route document ->
2926            attribute table to get informed when selected item is delete            attribute table to get informed when selected item is delete
2927                  or an attribute is changed from the outside.            or an attribute is changed from the outside.
2928    
2929          * tools/formed/formed/ui/controls.py: Fixed. In older versions of          * tools/formed/formed/ui/controls.py: Fixed. In older versions of
2930            wxPython 2.6.x ListCtrl.InsertStringItem takes 2 instead            wxPython 2.6.x ListCtrl.InsertStringItem takes 2 instead
2931                  of 3 argument. Uses icons+tooltips for tree navigation now.            of 3 argument. Uses icons+tooltips for tree navigation now.
2932    
2933  2007-08-07      Sascha L. Teichmann <[email protected]>  2007-08-07      Sascha L. Teichmann <[email protected]>
2934    
# Line 847  Line 2976 
2976    
2977          * tools/formed/formed/ui/controls.py: Establish sort order          * tools/formed/formed/ui/controls.py: Establish sort order
2978            by indices of children in parent instead of alphanum.            by indices of children in parent instead of alphanum.
2979                  Code to move items up and down the document tree.            Code to move items up and down the document tree.
2980    
2981          * tools/formed/formed/io/document.py: Added missing imports.          * tools/formed/formed/io/document.py: Added missing imports.
2982    
# Line 860  Line 2989 
2989    
2990          * tools/formed/formed/main.py,          * tools/formed/formed/main.py,
2991            tools/formed/formed/ui/controls.py: Added control to            tools/formed/formed/ui/controls.py: Added control to
2992                  move items around in tree. Has no effect by now.            move items around in tree. Has no effect by now.
2993    
2994  2007-08-05      Sascha L. Teichmann <[email protected]>  2007-08-05      Sascha L. Teichmann <[email protected]>
2995    
# Line 876  Line 3005 
3005    
3006          * tools/formed/*: initial check-in of the Formular Editor.          * tools/formed/*: initial check-in of the Formular Editor.
3007            Not working yet. Only can load, view and store formular XML files.            Not working yet. Only can load, view and store formular XML files.
3008                  Start it with 'tools/formed/formed.sh'.            Start it with 'tools/formed/formed.sh'.

Legend:
Removed from v.101  
changed lines
  Added in v.403

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26