author | Rodrigo Campos
<rodrigo@sdfg.com.ar> 2013-08-10 15:07:10 UTC |
committer | Rodrigo Campos
<rodrigo@sdfg.com.ar> 2013-08-13 10:30:14 UTC |
parent | 528281a5cc2069f02234aa74d6dd54d0be1c54a6 |
galala | +33 | -0 |
diff --git a/galala b/galala index 14e0912..29d4466 100755 --- a/galala +++ b/galala @@ -141,6 +141,14 @@ def _add_album(page, shortname, title, text): page.albums.append(a) +def find_album(page, shortname): + """Find the album "shortname" on page "page" (the shortname is unique)""" + for a in page.albums: + if a.shortname == shortname: + return a + + return None + def add_albums(page): while True: shortname = raw_input("Album shortname (empty to skip): ") @@ -157,6 +165,15 @@ def add_albums(page): print +def delete_album(page, shortname): + a = find_album(page, shortname) + if not a: + print "ERROR: invalid album shortname" + return False + + page.albums.remove(a) + return True + HELP = ''' Use one of: @@ -164,9 +181,16 @@ Use one of: galala new_page FILENAME Creates a new page and will ask to optionally add albums to it. The filename given will store the page information in .ini format. + galala add_albums FILENAME Adds albums to the given page. It will ask for the information interactively, and update the page file. + + galala delete_album FILENAME ALBUM_SHORTNAME + This command deletes the album from FILENAME so it will not be included + the next time you generate. But, keep in mind that the files already + created for this album (if any) will still be there. + galala generate FILENAME OUT_PATH Generates static HTML for the page given in FILENAME to OUT_PATH. ''' @@ -192,6 +216,15 @@ if __name__ == '__main__': page = common.page_load(sys.argv[2]) add_albums(page) common.page_save(page, sys.argv[2]) + elif cmd == 'delete_album': + if len(sys.argv) != 4: + print HELP + sys.exit(1) + page = common.page_load(sys.argv[2]) + shortname = sys.argv[3] + success = delete_album(page, shortname) + if success: + common.page_save(page, sys.argv[2]) else: print "ERROR: unknown command" sys.exit(1)