Changeset 13400 in project


Ignore:
Timestamp:
02/24/09 03:21:43 (11 years ago)
Author:
Ivan Raikov
Message:

Added option --after-date to form2txt; formular version set to 1.12

Location:
release/3/formular/trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • release/3/formular/trunk/form2txt.scm

    r13317 r13400  
    107107(define (pp-formular-tree/text tree . rest)
    108108  (let-optionals rest ((id-prefix "Form Submission") (id-order #f) (include-fields #f)
    109                        (exclude #f))
     109                       (exclude #f) (after-date #f))
    110110   (let* ((id-list   (list))
    111111          (keys     (tree 'list-keys))
     
    119119                     (match (car lst)
    120120                            (('submission ('date-seconds date-seconds) ('fields fld1 . fields))
    121                              (let* ((width (if (positive? order) order 1))
    122                                     (idnum (inexact->exact (- date-seconds 10e8)))
    123                                     (id    (let loop ((v 0) (id (make-id 1 width id-prefix idnum)))
    124                                              (let ((hv (member id id-list)))
    125                                                (if hv (loop (+ v 1) (make-id (+ 1 v) width id-prefix idnum))
    126                                                    (begin
    127                                                      (set! id-list (cons id id-list))
    128                                                      id))))))
    129                                (if (> (length lst) 1)
    130                                    (print "Multiple submissions by " from-address ": using submission from "
    131                                           (seconds->string date-seconds)))
    132                                (pp-submission/text id from-address date-seconds (cons fld1 fields) include-fields))
     121                             (if (or (not after-date) (> date-seconds after-date))
     122                                 (let* ((width (if (positive? order) order 1))
     123                                        (idnum (inexact->exact (- date-seconds 10e8)))
     124                                        (id    (let loop ((v 0) (id (make-id 1 width id-prefix idnum)))
     125                                                 (let ((hv (member id id-list)))
     126                                                   (if hv (loop (+ v 1) (make-id (+ 1 v) width id-prefix idnum))
     127                                                       (begin
     128                                                         (set! id-list (cons id id-list))
     129                                                         id))))))
     130                                   (if (> (length lst) 1)
     131                                       (print "Multiple submissions by " from-address ": using submission from "
     132                                              (seconds->string date-seconds)))
     133                                   (pp-submission/text id from-address date-seconds (cons fld1 fields) include-fields)))
    133134                             (+ i 1))
    134135                            (else (loop (cdr lst)))))))))
     
    143144(define opt_alist_output  #f)
    144145(define opt_alist_input   #f)
     146(define opt_after_date    #f)
    145147
    146148(define opts
     
    149151                       (string-append "specify a colon-separated list of entries to exclude (default is none )")
    150152                       (set! opt_exclude (map string->symbol (string-split (->string arg) ":"))))
     153    ,(args:make-option (after-date)     (required: "N")   
     154                       (string-append "omit entries before given date (in seconds)")
     155                       (set! opt_after_date (string->number arg)))
    151156    ,(args:make-option (fields)     (required: "FIELD1:FIELD2:...")   
    152157                       (string-append "specify a colon-separated list of fields to process (default is all fields )")
     
    202207                           opt_fields
    203208                           opt_exclude
     209                           opt_after_date
    204210                           )))
    205211
  • release/3/formular/trunk/formular.setup

    r13396 r13400  
    2020
    2121  ; Assoc list with properties for your extension:
    22   '((version 1.11)
     22  '((version 1.12)
    2323    (documentation "formular.html")
    2424    ,@(if has-exports? `((exports "formular.exports")) (list)) ))
     
    3434
    3535  ; Assoc list with properties for the program:
    36   '((version 1.11)))
     36  '((version 1.12)))
    3737
    3838(install-program
     
    4242
    4343  ; Assoc list with properties for the program:
    44   '((version 1.11)))
     44  '((version 1.12)))
    4545
    4646;; From setup-header.scm by Kon Lovett
Note: See TracChangeset for help on using the changeset viewer.