]> git.phdru.name Git - m_librarian.git/blobdiff - scripts/ml-import.py
Docs: Update TODO
[m_librarian.git] / scripts / ml-import.py
index 56ff8a670df980b3ad09b6c0dd72646c8bfcf91d..431a6d2d55d2b0158a6daa13bbe50695d7180e31 100755 (executable)
@@ -13,7 +13,7 @@ if ttyProgressBar:
     from m_librarian.pbar import ml_ttyProgressBar
 
 if __name__ == '__main__':
-    parser = argparse.ArgumentParser(description='Import')
+    parser = argparse.ArgumentParser(description='Import INPX files')
     parser.add_argument('-C', '--config', help='configuration file')
     parser.add_argument('-D', '--database', help='database URI')
     parser.add_argument('-P', '--no-pbar', action='store_true',
@@ -26,9 +26,17 @@ if __name__ == '__main__':
 
     open_db(args.database)
     init_db()
-    import_glst()
+
+    count_old, count_new = import_glst()
+    if count_old:
+        print("Imported %d genres (ignored %d existing)" % (
+            count_new, count_old))
+    else:
+        print("Imported %d genres" % count_new)
+
+    use_pbar = ttyProgressBar and not args.no_pbar and sys.stdout.isatty()
     for inpx in args.inpx:
-        if ttyProgressBar and not args.no_pbar:
+        if use_pbar:
             if len(inpx) > 25:
                 pbar_fname = inpx[:22] + '...'
             else:
@@ -37,6 +45,14 @@ if __name__ == '__main__':
             sys.stdout.flush()
             pbar = ml_ttyProgressBar()
             import_inpx(inpx, pbar_cb=pbar)
+            print("Ok")
         else:
             import_inpx(inpx)
-    update_counters()
+    if use_pbar:
+        print("Updating counters", end=': ')
+        sys.stdout.flush()
+        pbar = ml_ttyProgressBar()
+        update_counters(pbar_cb=pbar)
+        print("Ok")
+    else:
+        update_counters()