/[formed]/trunk/ChangeLog
ViewVC logotype

Diff of /trunk/ChangeLog

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

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

Legend:
Removed from v.52  
changed lines
  Added in v.419

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26