From 145fb221d2e0db377469ef8d0a29d549d7becfbd Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Thu, 10 Sep 2009 19:53:09 -0600 Subject: [PATCH] Implement #3444 (More Information on Metadata page) --- resources/images/star.png | Bin 0 -> 1737 bytes src/calibre/ebooks/oeb/transforms/jacket.py | 21 +++++++++++++++++++- 2 files changed, 20 insertions(+), 1 deletion(-) create mode 100644 resources/images/star.png diff --git a/resources/images/star.png b/resources/images/star.png new file mode 100644 index 0000000000000000000000000000000000000000..6eb1fb890f14077dba504f54c8f9affd15561496 GIT binary patch literal 1737 zcmV;)1~&PLP)t z7>(5NVKFgS788t#CY#1cx0oz5YE(>AGQ$==I3aON3EK#>;M~B3lM3TdXiI4+J-p|` zb9kTUx&6>(iTC$k?%yG~V4E0-BoS#qBqfL;NJNmxC}JQI*~!U>oS^^QGaSD09LMD@ z+w(Skh;+#g>g5H}@>iN=f_ACWB|?`7%S345o)AM0L=mY&BsD4+a*~K3rXV^yB_i`A z|N9cpo!ZZZbKmEh`)htE!ZJjfjw05`k`aZ7j_kIOoe^X-ib!0YF4H!Xz$k*%2Kpe# z3do~I3$RT)#KzdLTdKfKH$T1!#Z{Xp~S& z1hWKn_n|q2L=7r7%x+Rr1q?=%b)%2HlT}8ZdYW-O?01fke)KLsYI;rneh4aQ2!|j9 zK={AYP-3Q(6j#Aw2V~AdcJmPlo`)C^XA2F}^X%;E#-N=j?dUDtgf{}7V7*G*XP;SN z#2jOnCG0aqozX>IG(@3`LN|bVz(tAEuuT=dJ1Rmm#w$w(f|;{?BihXBwQHF|2NbOS z3{(HP&LiyN*%z%+WFGS1~$<v z?O~4kT%NdJ!3oObatlx?;3jL_Pn*medYa`lF|hq{vV5L#96HNa$d zKu41rks4U2rH!-}5>5SNnIS?B)!D~2?vS`WNn0X{qrd(W7OsB8=311VmH|Q>dJPSW z7>im3aB=altAbzg(ZnNaIYgr_mgxf)34{z)icXaody$1Rx6$Xy+*yM73ic*MUxQ_4?V>7 zal#t53NSMTyiA7dm7A0&rn&jdqx|u$7nmB^f1q7mL#%_)@H;5*J+T2iN%pwt5>~TO-Hg zzZdLI(D~K7H+S#h$4xMMew44#N~#iJnQPFfTy%=~NfY&6pQN1vrS5NlT=3~1llOyE{j^ZZuTH=bhMGClPO%l zq>P5Rg6|=OI~}dd|~x28>Uj-GFCMB*81E zh39wFsFP|~Lr|vtf=$x(seg${6M8kaG`p0r4DO(@1GtGc zydLlR->9H7(b~?r*2j3Ctz6%(title)s

%(jacket)s

%(series)s
+
%(rating)s
%(tags)s
@@ -54,6 +56,23 @@ class Jacket(object): img.getparent().remove(img) return + def get_rating(self, rating): + ans = '' + if rating is None: + return + try: + num = float(rating)/2 + except: + return ans + num = max(0, num) + num = min(num, 5) + if num < 1: + return ans + id, href = self.oeb.manifest.generate('star', 'star.png') + self.oeb.manifest.add(id, href, 'image/png', data=I('star.png', data=True)) + ans = 'Rating: ' + ''.join(repeat('star'%href, num)) + return ans + def insert_metadata(self, mi): self.log('Inserting metadata into book...') comments = mi.comments @@ -87,7 +106,7 @@ class Jacket(object): html = self.JACKET_TEMPLATE%dict(xmlns=XPNSMAP['h'], title=escape(title), comments=escape(comments), jacket=escape(_('Book Jacket')), series=series, - tags=tags) + tags=tags, rating=self.get_rating(mi.rating)) id, href = self.oeb.manifest.generate('jacket', 'jacket.xhtml') root = etree.fromstring(html) item = self.oeb.manifest.add(id, href, guess_type(href)[0], data=root)