/[formed]/trunk/ChangeLog
ViewVC logotype

Diff of /trunk/ChangeLog

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

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

Legend:
Removed from v.181  
changed lines
  Added in v.445

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26