/[formed]/trunk/ChangeLog
ViewVC logotype

Diff of /trunk/ChangeLog

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

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

Legend:
Removed from v.54  
changed lines
  Added in v.441

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26