4 PROCESS logic_header.ttk;
6 templates = DBI.tie('reporter.stage2', 'id')
11 tid = CGI.param('id');
12 tmpl = templates.$tid;
17 INCLUDE header.ttk title="Report Templates";
20 IF CGI.param('action') == 'save';
22 ELSIF CGI.param('action') == 'edit';
24 ELSIF CGI.param('action') == 'run';
37 stage1 = CGI.param('stage1');
38 pub = CGI.param('publictemplate') OR 'f';
44 logme([p,CGI.param(p)]);
53 AND (CGI.param("$p1:$p2:$p3") == p4)
54 AND (CGI.param("$p1:$p2").list.grep("^$p3$"))
55 AND (CGI.param("$p1").list.grep("^$p2$"));
57 p_obj.$p1.$p2.$p3.$p4 = CGI.param(p);
60 p_obj.$p1 = CGI.param(p);
65 params = utils.perl2JSON( p_obj );
67 logme([stage1, params, owner, pub]);
69 q = DBI.prepare( stage2_insert );
70 junk = q.execute(stage1, params, owner, pub);
72 FOR new_s2 = DBI.query("SELECT * FROM reporter.stage2_id_seq;");
73 tid = new_s2.last_value;
74 INCLUDE view_stage2 tmpl = templates.$tid;
91 params = utils.JSON2perl( tmpl.params );
93 WRAPPER html/table border=0 width='100%';
95 WRAPPER html/cell colspan=5 align='center';
96 s1_name_xpath = '/reporter/tables/table[@id="' _ params.stage1 _ '"]/label';
98 text=config.findvalue( s1_name_xpath )
99 href="stage1?id=" _ params.stage1;
100 ' :: ' _ params.templatename;
105 INCLUDE html/cell colspan=5 content="Filters:";
108 FOR f_table IN params.filter.keys;
110 table = config.findnodes( "/reporter/tables/table[@id='$f_table']");
113 INCLUDE html/cell colspan=4 align='left' content=table.findvalue( 'label' );
116 FOR f_field IN params.filter.$f_table.keys;
117 logme([f_table,f_field]);
118 FOR f_fam IN params.filter.$f_table.$f_field.keys;
119 logme([f_table,f_field,f_fam]);
120 f_widget = params.filter.$f_table.$f_field.$f_fam;
121 logme([f_table,f_field,f_fam,f_widget]);
124 field = table.findnodes( "fields/field[@name='$f_field']" );
125 fam = config.findnodes( "/reporter/widgets/widget-family[@name='$f_fam']" );
126 widget = fam.findnodes( "widget[@name='$f_widget']" );
128 INCLUDE html/cell colspan=2;
129 INCLUDE html/cell align='right' content=field.findvalue( 'label' );
130 INCLUDE html/cell align='center' content=fam.findvalue( 'label' );
131 INCLUDE html/cell align='left' content=widget.findvalue( 'label' );
138 INCLUDE html/cell colspan=5 content="Available Attributes:";