/[formed]/trunk/ChangeLog
ViewVC logotype

Diff of /trunk/ChangeLog

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

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

Legend:
Removed from v.120  
changed lines
  Added in v.440

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26