[Cdd-commits] r810 - in cdd/trunk/webtools: . templates

CDD Subversion Commit noreply at alioth.debian.org
Mon Jun 16 07:09:13 UTC 2008


Author: tille
Date: Mon Jun 16 07:09:13 2008
New Revision: 810

Modified:
   cdd/trunk/webtools/cddtasktools.py
   cdd/trunk/webtools/tasks.py
   cdd/trunk/webtools/templates/tasks.xhtml
Log:
Some Unicode error checks, verbatim output of preformatted strings is broken - seeking for a possibility to tell genshi to regard all inserted strings properly formatted.


Modified: cdd/trunk/webtools/cddtasktools.py
==============================================================================
--- cdd/trunk/webtools/cddtasktools.py	(original)
+++ cdd/trunk/webtools/cddtasktools.py	Mon Jun 16 07:09:13 2008
@@ -434,9 +434,15 @@
                                 try:
                                     dep.pkgShortDesc = Markup(self.available.packages[component][dep.pkg].pkgShortDesc)
                                 except UnicodeDecodeError:
-                                    print self.available.packages[component][dep.pkg].pkgShortDesc
-                                    dep.pkgShortDesc = self.available.packages[component][dep.pkg].pkgShortDesc
-                                dep.pkgLongDesc  = self.available.packages[component][dep.pkg].pkgLongDesc
+                                    print >> stderr, "Can not Markup %s because of unicode error" % self.available.packages[component][dep.pkg].pkgShortDesc
+                                    dep.pkgShortDesc = "DEBUG: Short description of %s has Unicode problems" % \
+                                			dep.pkg # self.available.packages[component][dep.pkg].pkgShortDesc
+                                try:
+                            	    dep.pkgLongDesc  = unicode(self.available.packages[component][dep.pkg].pkgLongDesc)
+                                except UnicodeDecodeError:
+                                    print >> stderr, "Problem rendering %s because of unicode error" % self.available.packages[component][dep.pkg].pkgLongDesc
+                                    dep.pkgLongDesc = "DEBUG: Long description of %s has Unicode problems" % \
+                                			dep.pkg # self.available.packages[component][dep.pkg].pkgLongDesc
                                 dep.homepage     = self.available.packages[component][dep.pkg].homepage
                                 dep.version      = self.available.packages[component][dep.pkg].version
                                 dep.responsible  = self.available.packages[component][dep.pkg].responsible

Modified: cdd/trunk/webtools/tasks.py
==============================================================================
--- cdd/trunk/webtools/tasks.py	(original)
+++ cdd/trunk/webtools/tasks.py	Mon Jun 16 07:09:13 2008
@@ -4,7 +4,8 @@
 import apt_pkg
 import apt_inst
 
-from os import path
+from sys import stderr, exit
+import os
 import gettext
 
 from genshi.template import TemplateLoader
@@ -21,9 +22,9 @@
 task_details = cdeps.GetTaskDescDict()
 
 # Define directories used
-current_dir = path.dirname(__file__)
-locale_dir = path.join(current_dir, 'locale')
-template_dir = path.join(current_dir, 'templates')
+current_dir  = os.path.dirname(__file__)
+locale_dir   = os.path.join(current_dir, 'locale')
+template_dir = os.path.join(current_dir, 'templates')
 
 # Initialize i18n
 domain = 'cdd-webtools'
@@ -52,6 +53,13 @@
               'debian-science' : HTMLBASE+"/cdd/htdocs/science/tasks/",
             }
 
+if not os.access(OUTPUTDIR[CDD], os.W_OK):
+	try:
+		os.mkdir(OUTPUTDIR[CDD])
+	except:
+    		print >>stderr, "Unable to create output dir " + OUTPUTDIR[CDD]
+	        exit(-1)
+
 for lang in languages:
 	l10nstring[lang].install()
 	_ = l10nstring[lang].ugettext
@@ -74,12 +82,6 @@
 		data['dependencies'] = cdeps.tasks[task].dependencies.keys()
 		data['projects']     = cdeps.tasks[task].dependencies
 
-		# print data['dependencies'] # ['unofficial', 'prospective', 'official', 'unknown']
-		# print data['dependencies']['official'] # TypeError: list indices must be integers
-		# print data['projects'] # {'unofficial': [<cddtasktools.DependantPackage instance at 0xa7e8a4c>, <cddtasktools.DependantPackage instance at 0xa7ed4cc>,
-		# print data['projects']['official'][0]['Homepage'] # AttributeError: DependantPackage instance has no attribute '__getitem__'
-		print data['projects']['official'][0].homepage
-
 		outputfile = OUTPUTDIR[CDD] + '/' + task + '_' + lang + '.html'
 		try:
 			os.unlink(outputfile)
@@ -90,8 +92,4 @@
 		f = open(outputfile, "w")
 		print >> f, template.generate(**data).render('xhtml')
 
-#		template = loader.load('tasks.xhtml')
-#		for type in ('official', 'unofficial', 'prospective'):
-#			data['typename'] = typenames['type']
-
 		f.close()

Modified: cdd/trunk/webtools/templates/tasks.xhtml
==============================================================================
--- cdd/trunk/webtools/templates/tasks.xhtml	(original)
+++ cdd/trunk/webtools/templates/tasks.xhtml	Mon Jun 16 07:09:13 2008
@@ -63,7 +63,18 @@
 	     <a href="$project.homepage}">${project.homepage}</a>
 	     <div py:if="project.responsible != None">${maintainer}: ${project.responsible}</div>
 	   </td>
-	 </tr>
+           <td class="project-license">
+             <em py:if="project.version != None">${version}: ${project.version}</em>
+             <em>${license}: ${project.license}</em><br/>
+                 <span py:if="project.filename != None">
+                        <a href="${project.pkgURL}">Official Debian package</a> - <a href="${project.pkgURL}/${project.filename}"><img src="deb-icon.png"/></a>
+                 </span>
+           </td>
+         </tr>
+         <tr>
+           <td colspan="2" class="project-description">project.pkgLongDesc
+           </td>
+         </tr>
        </tbody>
      </table>
    </py:for>



More information about the Cdd-commits mailing list