introduce the saving logic
authormiker <miker@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Fri, 11 May 2007 15:46:43 +0000 (15:46 +0000)
committermiker <miker@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Fri, 11 May 2007 15:46:43 +0000 (15:46 +0000)
git-svn-id: svn://svn.open-ils.org/ILS/trunk@7243 dcc99617-32d9-48b4-a31d-7c20da2025e4

Open-ILS/web/reports/xul/template-config.js

index 66f9e53..11e400b 100644 (file)
@@ -757,7 +757,41 @@ function save_template () {
        for each (var order in rpt_rel_cache.order_by)
                fleshTemplateField( template, rpt_rel_cache[order.relation], 'dis_tab', order.field );
 
-       prompt( 'template', js2JSON( template ) );
+
+       // and the saving throw ...
+       var cgi = new CGI();
+       var session = cgi.param('ses');
+       fetchUser( session );
+
+       var tmpl = new rt();
+       tmpl.name( $('template-name').value );
+       tmpl.description( $('template-description').value );
+       tmpl.owner(USER.id());
+       tmpl.folder(cgi.param('folder'));
+       tmpl.data(js2JSON(template));
+
+       prompt( 'template', js2JSON( tmpl ) );
+
+       if(!confirm('Name : '+tmpl.name() + '\nDescription: ' + tmpl.description()+'\nSave Template?'))
+               return;
+
+       var req = new Request('open-ils.reporter:open-ils.reporter.template.create', session, tmpl);
+       req.request.alertEvent = false;
+       req.callback(
+               function(r) {
+                       var res = r.getResultObject();
+                       if(checkILSEvent(res)) {
+                               alertILSEvent(res);
+                       } else {
+                               if( res && res != '0' ) {
+                                       confirm('Template ' + tmpl.name() + ' was successfully saved.');
+                                       _l('../oils_rpt.xhtml');
+                               }
+                       }
+               }
+       );
+
+       req.send();
 }
 
 function fleshFromPath ( template, rel ) {