backport 3.5 branch
authorSylvain Thénault <sylvain.thenault@logilab.fr>
Thu, 27 Aug 2009 13:02:45 +0200
changeset 3035 2e4a381ea5b7
parent 3024 bfaf056f1029 (current diff)
parent 3034 b03c63008c61 (diff)
child 3072 6fb42c53f6df
backport 3.5 branch
cwvreg.py
web/views/ibreadcrumbs.py
web/views/tabs.py
--- a/.hgtags	Wed Aug 26 15:00:46 2009 +0200
+++ b/.hgtags	Thu Aug 27 13:02:45 2009 +0200
@@ -58,3 +58,5 @@
 a3828745e2cf0c4bf1cab6f5397c524ba0510df6 cubicweb-debian-version-3.4.3-1
 2aee4ea585cdba159bc9490741db3fcd25dcaaca cubicweb-version-3.4.4
 e244a0fd7d719c25f4267470342ff8334b2dc8b3 cubicweb-debian-version-3.4.4-1
+3a65f9b3367c7297dc540a53f84e6507cb309892 cubicweb-version-3.4.5
+7fd294cbf6ff3cf34475cc50e972f650a34ae6e8 cubicweb-debian-version-3.4.5-1
--- a/cwvreg.py	Wed Aug 26 15:00:46 2009 +0200
+++ b/cwvreg.py	Thu Aug 27 13:02:45 2009 +0200
@@ -150,9 +150,9 @@
             objects = self['Any']
             assert len(objects) == 1, objects
             cls = objects[0]
-        if cls.__id__ == etype:
-            cls.__initialize__(self.schema)
-            return cls
+        # make a copy event if cls.__id__ == etype, else we may have pb for
+        # client application using multiple connections to different
+        # repositories (eg shingouz)
         cls = dump_class(cls, etype)
         cls.__id__ = etype
         cls.__initialize__(self.schema)
--- a/debian/changelog	Wed Aug 26 15:00:46 2009 +0200
+++ b/debian/changelog	Thu Aug 27 13:02:45 2009 +0200
@@ -1,3 +1,9 @@
+cubicweb (3.4.5-1) unstable; urgency=low
+
+  * new upstream release
+
+ -- Sylvain Thénault <sylvain.thenault@logilab.fr>  Wed, 26 Aug 2009 15:01:42 +0200
+
 cubicweb (3.4.4-1) unstable; urgency=low
 
   * new upstream release
--- a/devtools/dataimport.py	Wed Aug 26 15:00:46 2009 +0200
+++ b/devtools/dataimport.py	Thu Aug 27 13:02:45 2009 +0200
@@ -36,14 +36,9 @@
 
   GENERATORS.append( (gen_users, CHK) )
 
-  # progress callback
-  def tell(msg):
-      print msg
-
   # create controller
   ctl = CWImportController(RQLObjectStore())
   ctl.askerror = True
-  ctl._tell = tell
   ctl.generators = GENERATORS
   ctl.store._checkpoint = checkpoint
   ctl.store._rql = rql
@@ -75,6 +70,9 @@
     for row in reader:
         yield dict(zip(header, row))
 
+def tell(msg):
+    print msg
+
 # base sanitizing functions #####
 
 def capitalize_if_unicase(txt):
@@ -219,6 +217,7 @@
         self.data = {}
         self.errors = None
         self.askerror = False
+        self._tell = tell
 
     def check(self, type, key, value):
         self._checks.setdefault(type, {}).setdefault(key, []).append(value)
--- a/i18n/en.po	Wed Aug 26 15:00:46 2009 +0200
+++ b/i18n/en.po	Thu Aug 27 13:02:45 2009 +0200
@@ -1658,6 +1658,9 @@
 msgid "edit bookmarks"
 msgstr ""
 
+msgid "edit canceled"
+msgstr ""
+
 msgid "edit the index page"
 msgstr ""
 
@@ -1937,12 +1940,6 @@
 msgid "how to format time in the ui (\"man strftime\" for format description)"
 msgstr ""
 
-msgid "html class of the component"
-msgstr ""
-
-msgid "htmlclass"
-msgstr ""
-
 msgid "i18n_login_popup"
 msgstr "login"
 
@@ -2405,6 +2402,9 @@
 msgid "possible views"
 msgstr ""
 
+msgid "powered by CubicWeb"
+msgstr ""
+
 msgid "preferences"
 msgstr ""
 
@@ -3072,48 +3072,3 @@
 
 msgid "you should probably delete that property"
 msgstr ""
-
-#~ msgid "Card"
-#~ msgstr "Card"
-
-#~ msgid "Card_plural"
-#~ msgstr "Cards"
-
-#~ msgid "New Card"
-#~ msgstr "New card"
-
-#~ msgid "This Card"
-#~ msgstr "This card"
-
-#~ msgid "add a Card"
-#~ msgstr "add a card"
-
-#~ msgid "components_applmessages"
-#~ msgstr "application messages"
-
-#~ msgid "components_applmessages_description"
-#~ msgstr "display the application messages"
-
-#~ msgid "content_format"
-#~ msgstr "content format"
-
-#~ msgid "hide meta-data"
-#~ msgstr "hide meta entities and relations"
-
-#~ msgid "meta"
-#~ msgstr "meta relation"
-
-#~ msgid "planned_delivery"
-#~ msgstr "planned delivery"
-
-#~ msgid "remove this Card"
-#~ msgstr "remove this card"
-
-#~ msgid "show meta-data"
-#~ msgstr "show the complete schema"
-
-#~ msgid "view_manage"
-#~ msgstr "site management"
-
-#~ msgid "wikiid"
-#~ msgstr "wiki identifier"
--- a/i18n/es.po	Wed Aug 26 15:00:46 2009 +0200
+++ b/i18n/es.po	Thu Aug 27 13:02:45 2009 +0200
@@ -1720,6 +1720,9 @@
 msgid "edit bookmarks"
 msgstr "Editar favoritos"
 
+msgid "edit canceled"
+msgstr ""
+
 msgid "edit the index page"
 msgstr "Modificar la página de inicio"
 
@@ -2010,12 +2013,6 @@
 "Como formatear la hora en la interface (\"man strftime\" por la descripción "
 "del formato)"
 
-msgid "html class of the component"
-msgstr "Clase HTML de este componente"
-
-msgid "htmlclass"
-msgstr "Clase html"
-
 msgid "i18n_login_popup"
 msgstr "Identificarse"
 
@@ -2495,6 +2492,9 @@
 msgid "possible views"
 msgstr "Vistas posibles"
 
+msgid "powered by CubicWeb"
+msgstr ""
+
 msgid "preferences"
 msgstr "Preferencias"
 
@@ -3183,236 +3183,3 @@
 
 msgid "you should probably delete that property"
 msgstr "deberia probablamente suprimir esta propriedad"
-
-#~ msgid "%s constraint failed"
-#~ msgstr "La contrainte %s n'est pas satisfaite"
-
-#~ msgid "%s constraint failed for value %r"
-#~ msgstr "contrainte %s n'est pas respectÈe par valeur %r"
-
-#~ msgid "%s, or without time: %s"
-#~ msgstr "%s, ou bien sans prÈciser d'heure: %s"
-
-#~ msgid "Card"
-#~ msgstr "Ficha"
-
-#~ msgid "Card_plural"
-#~ msgstr "Fichas"
-
-#~ msgid "Email body: "
-#~ msgstr "Contenido del correo electrónico : "
-
-#~ msgid "From: "
-#~ msgstr "De : "
-
-#~ msgid "Loading"
-#~ msgstr "chargement"
-
-#~ msgid "New Card"
-#~ msgstr "Agregar Ficha"
-
-#~ msgid "Problem occured"
-#~ msgstr "Ha ocurrido un error"
-
-#~ msgid "Problem occured while setting new value"
-#~ msgstr "Un problËme est survenu lors de la mise ‡ jour"
-
-#~ msgid "Recipients: "
-#~ msgstr "Destinatarios : "
-
-#~ msgid "Subject: "
-#~ msgstr "Objeto : "
-
-#~ msgid "This Card"
-#~ msgstr "Esta Ficha"
-
-#~ msgid "You are not connected to an application !"
-#~ msgstr "Usted no esta conectado a una aplicación"
-
-#~ msgid ""
-#~ "a card is a textual content used as documentation, reference, procedure "
-#~ "reminder"
-#~ msgstr ""
-#~ "una ficha es un texto utilizado como documentación, referencia, memoria "
-#~ "de algún procedimiento..."
-
-#~ msgid ""
-#~ "a simple cache entity characterized by a name and a validity date. The "
-#~ "target application is responsible for updating timestamp when necessary "
-#~ "to invalidate the cache (typically in hooks). Also, checkout the "
-#~ "AppRsetObject.get_cache() method."
-#~ msgstr ""
-#~ "una entidad cache simple caracterizada por un nombre y una fecha "
-#~ "correcta. El sistema objetivo es responsable de actualizar timestamp "
-#~ "cuand se necesario para invalidar el cache (usualmente en hooks)."
-#~ "Recomendamos revisar el METODO  AppRsetObject.get_cache()."
-
-#~ msgid "add a Card"
-#~ msgstr "Agregar una ficha"
-
-#~ msgid "an abstract for this card"
-#~ msgstr "un resumen para esta ficha"
-
-#~ msgid "and"
-#~ msgstr "et"
-
-#~ msgid "application schema"
-#~ msgstr "Esquema de la aplicación"
-
-#~ msgid "at least one relation %s is required on %s(%s)"
-#~ msgstr "au moins une relation %s est nÈcessaire sur %s(%s)"
-
-#~ msgid "cancel edition"
-#~ msgstr "annuler l'Èdition"
-
-#~ msgid "components_applmessages"
-#~ msgstr "Mensajes de la aplicación"
-
-#~ msgid "components_applmessages_description"
-#~ msgstr "Muestra los mensajes de la aplicación"
-
-#~ msgid "components_rss_feed_url"
-#~ msgstr "RSS FEED URL"
-
-#~ msgid "components_rss_feed_url_description"
-#~ msgstr "El espacio para administrar RSS"
-
-#~ msgid "content"
-#~ msgstr "Contenido"
-
-#~ msgid "content_format"
-#~ msgstr "Formato"
-
-#~ msgid ""
-#~ "default language (look at the i18n directory of the application to see "
-#~ "available languages)"
-#~ msgstr ""
-#~ "langue par dÈfaut (regarder le rÈpertoire i18n de l'application pour voir "
-#~ "les langues disponibles)"
-
-#~ msgid ""
-#~ "define a final relation: link a final relation type from a non final "
-#~ "entity to a final entity type. used to build the application schema"
-#~ msgstr ""
-#~ "Define una relación no final: liga un tipo de relación no final desde una "
-#~ "entidad hacia un tipo de entidad no final. Utilizada para construir el "
-#~ "esquema de la aplicación"
-
-#~ msgid ""
-#~ "define a non final relation: link a non final relation type from a non "
-#~ "final entity to a non final entity type. used to build the application "
-#~ "schema"
-#~ msgstr ""
-#~ "Define una relación 'atributo', utilizada para construir el esquema dela "
-#~ "aplicación"
-
-#~ msgid "define a relation type, used to build the application schema"
-#~ msgstr ""
-#~ "Define un tipo de relación, utilizada para construir el esquema de la "
-#~ "aplicación"
-
-#~ msgid "define an entity type, used to build the application schema"
-#~ msgstr ""
-#~ "Define un tipo de entidad, utilizada para construir el esquema de la "
-#~ "aplicación"
-
-#~ msgid "detailed schema view"
-#~ msgstr "Vista detallada del esquema"
-
-#~ msgid "facets_cwmeta-facet"
-#~ msgstr "faceta \"meta\""
-
-#~ msgid "facets_cwmeta-facet_description"
-#~ msgstr "faceta para las entidades \"meta\""
-
-#~ msgid "filter"
-#~ msgstr "filtrer"
-
-#~ msgid "footer"
-#~ msgstr "pied de page"
-
-#~ msgid "graphical representation of the application'schema"
-#~ msgstr "Representación gráfica del esquema de la aplicación"
-
-#~ msgid "header"
-#~ msgstr "en-tÍte de page"
-
-#~ msgid "hide meta-data"
-#~ msgstr "Esconder los meta-datos"
-
-#~ msgid "iCal"
-#~ msgstr "iCal"
-
-#~ msgid "incorrect value for type \"%s\""
-#~ msgstr "valeur incorrecte pour le type \"%s\""
-
-#~ msgid "inlined view"
-#~ msgstr "Vista incluída (en línea)"
-
-#~ msgid "is it an application entity type or not ?"
-#~ msgstr "Es un Tipo de entidad en la aplicación o no ?"
-
-#~ msgid "is it an application relation type or not ?"
-#~ msgstr "Es una relación aplicativa o no ?"
-
-#~ msgid ""
-#~ "link a transition to one or more rql expression allowing to go through "
-#~ "this transition"
-#~ msgstr ""
-#~ "liga una transición a una o mas expresiones RQL permitiendo que funcione"
-
-#~ msgid "linked"
-#~ msgstr "liÈ"
-
-#~ msgid "loop in %s relation (%s)"
-#~ msgstr "boucle dans la relation %s (%s)"
-
-#~ msgid ""
-#~ "maximum number of related entities to display in in the restriction view"
-#~ msgstr ""
-#~ "nombre maximum d'entitÈs liÈes ‡ afficher dans la vue de restriction"
-
-#~ msgid "meta"
-#~ msgstr "Meta"
-
-#~ msgid "no associated epermissions"
-#~ msgstr "permisos no asociados"
-
-#~ msgid "no possible transition"
-#~ msgstr "transición no posible"
-
-#~ msgid "not specified"
-#~ msgstr "no especificado"
-
-#~ msgid "not the initial state for this entity"
-#~ msgstr "no el estado inicial para esta entidad"
-
-#~ msgid "owned by"
-#~ msgstr "appartient ‡"
-
-#~ msgid "planned_delivery"
-#~ msgstr "entrega planeada"
-
-#~ msgid "remove this Card"
-#~ msgstr "Eliminar esta Ficha"
-
-#~ msgid "see also"
-#~ msgstr "voir aussi"
-
-#~ msgid "show meta-data"
-#~ msgstr "mostrar meta-data"
-
-#~ msgid "status will change from %s to %s"
-#~ msgstr "l'Ètat va passer de %s ‡ %s"
-
-#~ msgid "synopsis"
-#~ msgstr "sinopsis"
-
-#~ msgid "transition is not allowed"
-#~ msgstr "transition no permitida"
-
-#~ msgid "wikiid"
-#~ msgstr "identificador wiki"
-
-#~ msgid "workflow history"
-#~ msgstr "historique du workflow"
--- a/i18n/fr.po	Wed Aug 26 15:00:46 2009 +0200
+++ b/i18n/fr.po	Thu Aug 27 13:02:45 2009 +0200
@@ -595,7 +595,7 @@
 msgstr "Historique des changements d'état"
 
 msgid "You are not connected to an instance !"
-msgstr "Vous n'êtes pas connecté à une instance !"
+msgstr "Vous n'êtes pas connecté à une instance"
 
 #, python-format
 msgid "You are now connected to %s"
@@ -797,7 +797,7 @@
 msgstr ""
 
 msgid "actions_siteinfo"
-msgstr ""
+msgstr "information sur ce site"
 
 msgid "actions_siteinfo_description"
 msgstr ""
@@ -1599,11 +1599,16 @@
 "define a final relation: link a final relation type from a non final entity "
 "to a final entity type. used to build the instance schema"
 msgstr ""
+"définit une relation non finale: lie un type de relation non finaledepuis "
+"une entité vers un type d'entité non final. Utilisé pour construire le "
+"schéma de l'instance"
 
 msgid ""
 "define a non final relation: link a non final relation type from a non final "
 "entity to a non final entity type. used to build the instance schema"
 msgstr ""
+"définit une relation 'attribut', utilisé pour construire le schéma de "
+"l'instance"
 
 msgid "define a relation type, used to build the instance schema"
 msgstr "définit un type de relation"
@@ -1618,7 +1623,7 @@
 msgstr "définit un type de contrainte de schema"
 
 msgid "define an entity type, used to build the instance schema"
-msgstr ""
+msgstr "définit un type d'entité"
 
 msgid ""
 "defines what's the property is applied for. You must select this first to be "
@@ -1728,6 +1733,9 @@
 msgid "edit bookmarks"
 msgstr "éditer les signets"
 
+msgid "edit canceled"
+msgstr "édition annulée"
+
 msgid "edit the index page"
 msgstr "éditer la page d'accueil"
 
@@ -2018,12 +2026,6 @@
 "comment formater l'heure dans l'interface (\"man strftime\" pour la "
 "description du format)"
 
-msgid "html class of the component"
-msgstr "classe HTML de ce composant"
-
-msgid "htmlclass"
-msgstr "classe html"
-
 msgid "i18n_login_popup"
 msgstr "s'authentifier"
 
@@ -2502,6 +2504,9 @@
 msgid "possible views"
 msgstr "vues possibles"
 
+msgid "powered by CubicWeb"
+msgstr ""
+
 msgid "preferences"
 msgstr "préférences"
 
@@ -3194,224 +3199,3 @@
 
 msgid "you should probably delete that property"
 msgstr "vous devriez probablement supprimer cette propriété"
-
-#~ msgid "%s constraint failed"
-#~ msgstr "La contrainte %s n'est pas satisfaite"
-
-#~ msgid "%s constraint failed for value %r"
-#~ msgstr "contrainte %s n'est pas respectée par valeur %r"
-
-#~ msgid "%s, or without time: %s"
-#~ msgstr "%s, ou bien sans préciser d'heure: %s"
-
-#~ msgid "Card"
-#~ msgstr "Fiche"
-
-#~ msgid "Card_plural"
-#~ msgstr "Fiches"
-
-#~ msgid "Email body: "
-#~ msgstr "Contenu du courriel : "
-
-#~ msgid "From: "
-#~ msgstr "De : "
-
-#~ msgid "Loading"
-#~ msgstr "chargement"
-
-#~ msgid "New Card"
-#~ msgstr "Nouvelle fiche"
-
-#~ msgid "Problem occured"
-#~ msgstr "Une erreur est survenue"
-
-#~ msgid "Problem occured while setting new value"
-#~ msgstr "Un problème est survenu lors de la mise à jour"
-
-#~ msgid "Recipients: "
-#~ msgstr "Destinataires : "
-
-#~ msgid "Subject: "
-#~ msgstr "Sujet : "
-
-#~ msgid "This Card"
-#~ msgstr "Cette fiche"
-
-#~ msgid "You are not connected to an application !"
-#~ msgstr "Vous n'êtes pas connecté à une application"
-
-#~ msgid ""
-#~ "a card is a textual content used as documentation, reference, procedure "
-#~ "reminder"
-#~ msgstr ""
-#~ "une fiche est un texte utilisé comme documentation, référence, rappel de "
-#~ "procédure..."
-
-#~ msgid ""
-#~ "a simple cache entity characterized by a name and a validity date. The "
-#~ "target application is responsible for updating timestamp when necessary "
-#~ "to invalidate the cache (typically in hooks). Also, checkout the "
-#~ "AppRsetObject.get_cache() method."
-#~ msgstr ""
-#~ "une simple entité de cache, caractérisées par un nom et une date de "
-#~ "validité. L'application est responsable de la mise à jour de la date "
-#~ "quand il est nécessaire d'invalider le cache (typiquement dans les "
-#~ "crochets). Voir aussi la méthode get_cache() sur la classe AppRsetObject."
-
-#~ msgid "actions_addpermission"
-#~ msgstr "ajouter une permission"
-
-#~ msgid "add a Card"
-#~ msgstr "ajouter une fiche"
-
-#~ msgid "an abstract for this card"
-#~ msgstr "un résumé pour cette fiche"
-
-#~ msgid "and"
-#~ msgstr "et"
-
-#~ msgid "application schema"
-#~ msgstr "Schéma de l'application"
-
-#~ msgid "at least one relation %s is required on %s(%s)"
-#~ msgstr "au moins une relation %s est nécessaire sur %s(%s)"
-
-#~ msgid "cancel edition"
-#~ msgstr "annuler l'édition"
-
-#~ msgid "close all"
-#~ msgstr "tout fermer"
-
-#~ msgid "components_applmessages"
-#~ msgstr "messages applicatifs"
-
-#~ msgid "components_applmessages_description"
-#~ msgstr "affiche les messages applicatifs"
-
-#~ msgid "components_rss_feed_url"
-#~ msgstr "syndication rss"
-
-#~ msgid "content"
-#~ msgstr "contenu"
-
-#~ msgid "content_format"
-#~ msgstr "format"
-
-#~ msgid ""
-#~ "default language (look at the i18n directory of the application to see "
-#~ "available languages)"
-#~ msgstr ""
-#~ "langue par défaut (regarder le répertoire i18n de l'application pour voir "
-#~ "les langues disponibles)"
-
-#~ msgid ""
-#~ "define a final relation: link a final relation type from a non final "
-#~ "entity to a final entity type. used to build the application schema"
-#~ msgstr ""
-#~ "définit une relation non finale: lie un type de relation non finaledepuis "
-#~ "une entité vers un type d'entité non final. Utilisé pour construire le "
-#~ "schéma de l'application"
-
-#~ msgid ""
-#~ "define a non final relation: link a non final relation type from a non "
-#~ "final entity to a non final entity type. used to build the application "
-#~ "schema"
-#~ msgstr ""
-#~ "définit une relation 'attribut', utilisé pour construire le schéma de "
-#~ "l'application"
-
-#~ msgid "define a relation type, used to build the application schema"
-#~ msgstr ""
-#~ "définit un type de relation, utilisé pour construire le schéma de "
-#~ "l'application"
-
-#~ msgid "define an entity type, used to build the application schema"
-#~ msgstr ""
-#~ "définit un type d'entité, utilisé pour construire le schéma de "
-#~ "l'application"
-
-#~ msgid "detailed schema view"
-#~ msgstr "vue détaillée du schéma"
-
-#~ msgid "filter"
-#~ msgstr "filtrer"
-
-#~ msgid "footer"
-#~ msgstr "pied de page"
-
-#~ msgid "graphical representation of the application'schema"
-#~ msgstr "représentation graphique du schéma de l'application"
-
-#~ msgid "header"
-#~ msgstr "en-tête de page"
-
-#~ msgid "hide meta-data"
-#~ msgstr "cacher les entités et relations \"méta\""
-
-#~ msgid "iCal"
-#~ msgstr "iCal"
-
-#~ msgid "incorrect value for type \"%s\""
-#~ msgstr "valeur incorrecte pour le type \"%s\""
-
-#~ msgid "inlined view"
-#~ msgstr "vue embarquée (en ligne)"
-
-#~ msgid "is it an application entity type or not ?"
-#~ msgstr "est-ce une entité applicative ou non ?"
-
-#~ msgid "is it an application relation type or not ?"
-#~ msgstr "est-ce une relation applicative ou non ?"
-
-#~ msgid "linked"
-#~ msgstr "lié"
-
-#~ msgid "loop in %s relation (%s)"
-#~ msgstr "boucle dans la relation %s (%s)"
-
-#~ msgid ""
-#~ "maximum number of related entities to display in in the restriction view"
-#~ msgstr ""
-#~ "nombre maximum d'entités liées à afficher dans la vue de restriction"
-
-#~ msgid "meta"
-#~ msgstr "méta"
-
-#~ msgid "no associated epermissions"
-#~ msgstr "aucune permission spécifique n'est définie"
-
-#~ msgid "no possible transition"
-#~ msgstr "aucune transition possible"
-
-#~ msgid "not specified"
-#~ msgstr "non spécifié"
-
-#~ msgid "owned by"
-#~ msgstr "appartient à"
-
-#~ msgid "planned_delivery"
-#~ msgstr "livraison prévue"
-
-#~ msgid "remove this Card"
-#~ msgstr "supprimer cette fiche"
-
-#~ msgid "see also"
-#~ msgstr "voir aussi"
-
-#~ msgid "show meta-data"
-#~ msgstr "afficher le schéma complet"
-
-#~ msgid "status will change from %s to %s"
-#~ msgstr "l'état va passer de %s à %s"
-
-#~ msgid "synopsis"
-#~ msgstr "synopsis"
-
-#~ msgid "view_manage"
-#~ msgstr "gestion du site"
-
-#~ msgid "wikiid"
-#~ msgstr "identifiant wiki"
-
-#~ msgid "workflow history"
-#~ msgstr "historique du workflow"
--- a/web/views/ibreadcrumbs.py	Wed Aug 26 15:00:46 2009 +0200
+++ b/web/views/ibreadcrumbs.py	Thu Aug 27 13:02:45 2009 +0200
@@ -85,7 +85,7 @@
             self.w(u'<a href="%s">%s</a>' % (self.req.build_url(root.id),
                                              root.dc_type('plural')))
         else:
-            self.wpath_part(root, entity, not path)
+            self.wpath_part(root, contextentity, not path)
 
 
 class BreadCrumbAnyRSetVComponent(BreadCrumbEntityVComponent):
--- a/web/views/tabs.py	Wed Aug 26 15:00:46 2009 +0200
+++ b/web/views/tabs.py	Thu Aug 27 13:02:45 2009 +0200
@@ -130,14 +130,15 @@
         # call the set_tab() JS function *after* each tab is generated
         # because the callback binding needs to be done before
         # XXX make work history: true
-        self.req.add_onload(u'''
+        self.req.add_onload(u"""
   jQuery('#entity-tabs-%(eeid)s > ul').tabs( { selected: %(tabindex)s });
   set_tab('%(vid)s', '%(cookiename)s');
-''' % {'tabindex'   : tabs.index(active_tab),
+""" % {'tabindex'   : tabs.index(active_tab),
        'vid'        : active_tab,
        'eeid'       : (entity and entity.eid or uid),
        'cookiename' : self.cookie_name})
 
+
 class EntityRelationView(EntityView):
     """view displaying entity related stuff.
     Such a view _must_ provide the rtype, target and vid attributes :