/[formed]/trunk/ChangeLog
ViewVC logotype

Diff of /trunk/ChangeLog

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

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

Legend:
Removed from v.73  
changed lines
  Added in v.430

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26