home · contact · privacy
Fix ledger.py bug.
[misc] / ledger.py
index 87d219efa9fc30c37b6e0a25165a445c5edce9f3..3071df69d7f0b0f0595fc1c1db61f85234a188f4 100755 (executable)
--- a/ledger.py
+++ b/ledger.py
@@ -354,11 +354,9 @@ class LedgerDB(PlomDB):
 
     def insert_at_date(self, lines, date):
         start_at = len(self.real_lines)
-        print("DEBUG triggered insert_at_date", date, start_at)
         for b in self.bookings:
-            if b.date_string == date:
+            if b.date_string >= date:
                 start_at = b.start_line 
-                print("DEBUG setting start_at to", start_at)
                 break
             elif b.date_string > date:
                 break
@@ -610,7 +608,7 @@ class LedgerDB(PlomDB):
             start = end = 0
         desc = head_comment = ''
         if len(bookings) == 0:
-            for i in range(1, 3):
+            for i in range(1, 8):
                 booking_lines += [{'i': i, 'acc': '', 'amt': '', 'curr': '€', 'comment': ''}]
             date=today
         else:
@@ -737,6 +735,7 @@ class LedgerHandler(PlomHandler):
             parsed_url = urlparse(self.path)
             length = int(self.headers['content-length'])
             postvars = parse_qs(self.rfile.read(length).decode(), keep_blank_values=1)
+            print("DEBUG", postvars['start'], postvars['end'])
             start = int(postvars['start'][0])
             end = int(postvars['end'][0])
             db = LedgerDB(prefix)
@@ -775,10 +774,11 @@ class LedgerHandler(PlomHandler):
             # otherwise just re-build editing form
             else:
                 if prefix + '/add_structured' == parsed_url.path: 
-                    edit_content = db.add_structured(db, start, end, temp_lines=lines, add_empty_line=add_empty_line)
+                    edit_content = db.add_structured(start, end, temp_lines=lines, add_empty_line=add_empty_line)
                 else:
-                    edit_content = db.add_free(db, start, end)
-                self.send_HTML(edit_content)
+                    edit_content = db.add_free(start, end)
+                header = jinja2.Template(html_head).render(prefix=prefix)
+                self.send_HTML(header + edit_content)
         except PlomException as e:
             self.fail_400(e)
 
@@ -815,7 +815,7 @@ class LedgerHandler(PlomHandler):
             else:
                 page = db.ledger_as_html()
             header = jinja2.Template(html_head).render(prefix=prefix)
-            self.send_HTML(header+ page)
+            self.send_HTML(header + page)
         except PlomException as e:
             self.fail_400(e)