/[formed]/trunk/ChangeLog
ViewVC logotype

Diff of /trunk/ChangeLog

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

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

Legend:
Removed from v.74  
changed lines
  Added in v.434

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26