src/strip.vala
[app.mailtrimmer] / src / strip.vala
index ec041cd..0bfe477 100644 (file)
@@ -370,7 +370,7 @@ public class Strip : GLib.Object {
        
        // initialize it with known data..
        // that should wipe out dupes.
-       var matches = this.execute("SELECT count(id) as nid FROM Attachment WHERE id = %d".printf(
+       var matches = this.execute("SELECT id   FROM Attachment WHERE id = %d".printf(
                        int.parse(sid)));  
 
                 
@@ -445,7 +445,7 @@ public class Strip : GLib.Object {
         var file_path  = attachment.get_header("X-strip-path");
         var fn =  StripApplication.opt_target_path + "/" + file_path;
         var chksum = this.md5_file(fn);
-               var mime_filename = attachment.get_header("X-strip-content-type");
+               var mime_type = attachment.get_header("X-strip-content-type");
 
                var fileinfo = File.new_for_path(fn)
                                        .query_info(GLib.FileAttribute.STANDARD_SIZE+","+GLib.FileAttribute.TIME_MODIFIED
@@ -455,32 +455,73 @@ public class Strip : GLib.Object {
                
 
       
-               this.query("""
-                        INSERT INTO Attachments
-                               (id, msgid, checksum, filesize)
-                               values
-                               ( 
-                            %d,   '%s', '%s',  '%s', %d
-                            ) 
-                            
+               this.execute("""
+                      
+                      
+                               INSERT INTO Attachment  (  
+                                       id, 
+                                       
+                                   msgid ,
+                                   queue_id ,
+                                   mime_filename ,
+                                   mime_type,
+                                    
+                                   stored_filename ,
+                                   mime_charset ,
+                                   mime_cdisp ,
+                                   mime_is_cover ,
+                                   
+                                   mime_is_multi ,
+                                   mime_is_mail,
+                                   mime_size ,
+                                   filesize,
+                                   
+                                   checksum,
+                                   created
+
+                               ) VALUES (
+                                       %d,  -- id
+                                       
+                                   '%s' , -- msgid
+                                   0,
+                                   '%s'  , -- filename
+                                   '%s',  -- mimetype
+                                   
+                                   '%s', -- stored file anme
+                                   '', -- charset
+                                   'attachment',
+                                   0,
+                                   0,
+                                   0,
+                                   %d, -- size
+                                   %d, -- size
+                                   
+                                   '%s', -- checkum
+                                       '%s' -- created:
+                               )
+                      
+                      
                      """.printf(
                                id,
                                      this.mysql_escape(this.active_message_exim_id),
+                                     this.mysql_escape(filename),
+                                 this.mysql_escape(mime_type),
+                                 this.mysql_escape(file_path),
+                                       file_size,
+                                     file_size,
                                      this.mysql_escape(chksum),
-                                 this.mysql_escape(mime_filename),                       
-                                     file_size
+                                       this.created_date
                         ));
-                        
+             // this is done to fix the queue_id or maillog_id ??
                 this.query("""
                  SELECT attachment_update(
                       %d, -- in_id INT(11),
-                      '%s', -- in_mime_type varchar(255),
+                                               '', -- mime type
                       '%s', -- in_created DATETIME,
                       '%s' -- in_mailfort_sig varchar(64)
                  )
              """.printf(
-                               id,
-                       "", // this will be ignored..
+                               id, 
                                this.created_date,
                                this.mysql_escape(this.active_message_x_mailfort_sig)