/[formed]/trunk/ChangeLog
ViewVC logotype

Diff of /trunk/ChangeLog

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

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

Legend:
Removed from v.66  
changed lines
  Added in v.442

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26