/[formed]/trunk/ChangeLog
ViewVC logotype

Diff of /trunk/ChangeLog

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

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

Legend:
Removed from v.49  
changed lines
  Added in v.426

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26