[Pcsclite-cvs-commit] r3388 - /website/matrix.py
rousseau at users.alioth.debian.org
rousseau at users.alioth.debian.org
Thu Mar 26 15:22:43 UTC 2009
Author: rousseau
Date: Thu Mar 26 15:22:43 2009
New Revision: 3388
URL: http://svn.debian.org/wsvn/pcsclite/?sc=1&rev=3388
Log:
create a generic generate_page()
Modified:
website/matrix.py
Modified: website/matrix.py
URL: http://svn.debian.org/wsvn/pcsclite/website/matrix.py?rev=3388&op=diff
==============================================================================
--- website/matrix.py (original)
+++ website/matrix.py Thu Mar 26 15:22:43 2009
@@ -103,6 +103,46 @@
d.setdefault(readers[r]['iManufacturer'], []).append(r)
return d
+def generate_page(section, readers):
+ # sort the readers by manufacturers
+ manufacturer_readers = get_by_manufacturer(readers)
+ manufacturers = list(manufacturer_readers)
+ manufacturers.sort(key=str.lower)
+
+ template = templayer.HTMLTemplate(section + ".template")
+ file_writer = template.start_file(file=file(section + ".html", "w"))
+ main_layer = file_writer.open(date=time.asctime())
+
+ # for each manufacturer
+ for m in manufacturers:
+ main_layer.write_layer('manufacturer', manufacturer=m)
+
+ # for each reader
+ for r in sorted(manufacturer_readers[m]):
+ note_layer = main_layer.open_layer('reader',
+ manufacturer = m,
+ product = readers[r]['iProduct'],
+ idVendor = readers[r]['idVendor'],
+ idProduct = readers[r]['idProduct'],
+ image = "img/" + readers[r].get('image', "no_image.png"))
+
+ url = readers[r].get('url', "")
+ if url:
+ note_layer.write_layer('url',
+ url = url,
+ manufacturer = m,
+ product = readers[r]['iProduct'])
+
+ features = readers[r].get('features', "")
+ if features:
+ note_layer.write_layer('features', features = features)
+
+ note = readers[r].get('note', "").split('\n')
+ for n in note:
+ note_layer.write_layer('note', contents = n)
+
+ file_writer.close()
+
if __name__ == "__main__":
path = "../trunk/Drivers/ccid/readers/"
@@ -114,44 +154,4 @@
#pp.pprint(reader_list)
check_list(path, reader_list)
- # sort the readers by manufacturers
- manufacturer_readers = get_by_manufacturer(supported_readers)
- manufacturers = list(manufacturer_readers)
- manufacturers.sort(key=str.lower)
-
- r = "Gemalto_PDT.txt"
- #pp.pprint(supported_readers[r])
- for k in supported_readers[r].keys():
- #print k, ":", supported_readers[r][k]
- pass
-
- template = templayer.HTMLTemplate("supported.template")
- file_writer = template.start_file(file=file("supported.html", "w"))
- main_layer = file_writer.open(date=time.asctime())
-
- # for each manufacturer
- for m in manufacturers:
- main_layer.write_layer('manufacturer', manufacturer=m)
-
- # for each reader
- for r in sorted(manufacturer_readers[m]):
- url = supported_readers[r].get('url', "")
- note = supported_readers[r].get('note', "").split('\n')
- note_layer = main_layer.open_layer('reader',
- manufacturer = m,
- product = supported_readers[r]['iProduct'],
- idVendor = supported_readers[r]['idVendor'],
- idProduct = supported_readers[r]['idProduct'],
- image = "img/" + supported_readers[r].get('image',
- "no_image.png"))
- if (url):
- note_layer.write_layer('url',
- url = url,
- manufacturer = m,
- product = supported_readers[r]['iProduct'])
- features = supported_readers[r].get('features', "")
- if features:
- note_layer.write_layer('features', features = features)
- for n in note:
- note_layer.write_layer('note', contents = n)
- file_writer.close()
+ generate_page("supported", supported_readers)
More information about the Pcsclite-cvs-commit
mailing list