From: Giovanni T. <to...@un...> - 2004-12-30 10:13:17
|
Hi all, I've just started to experiment with PloneMall in a site that intends to sell training courses. In order to define a new item type, subclassing SimpleItem, I've copied the PloneMallDemo product, renamed it and extended it using ArchGenXml and Poseidon Community. In the following I list things I did, problems I found and things I don't understand well, in the hope that - I will get some useful suggestion - the feedback I'm providing could be useful to the developers and other users. 1. In a plain Plone site I've installed all PloneMall products, with portal_quickinstaller, in the same order than PloneMallCustomizationPolicy would have done 2. I've installed my new product, say Medialab, including only one new content type, say CourseItem 3. I found that the categories tab did not show in the view of the Category and CourseItem types; so I inserted by hand stuff in CourseItem.py - code-section module-header and code-section module-footer - in order to register my type as a Categorizeable one (taken from Demo.py of PloneMallDemo) 4. I also removed from the ArchGenXml-generated CourseItem.py an assignment "actions = ()" 5. I created a file Medialab-it.po in Products/Medialab/i18n, with the Italian customization of the Medialab product 6. I created a file PloneMallItem-it.po in Products/PloneMallItem/i18n, with the Italian customization of the PloneMallItem product (plonemallitem domain) 7. I found that the PloneMallItem language customization was effective in mall_browse.pt, but not in mall_browse_macro.pt; so I created a copy of mall_browse_macro.pt in Products/Medialab/skins/Medialab (higher priority); in this copy I added the opening and closing tags of a normal HTML page, in order to include the attribute i18n:domain="plonemallitem" 8. While now the PloneMallItem language customization is effective for static text defined in the page templates, it is not for labels and help messages of AT fields defined in the schemas of the ancestor classes of CourseItem; I cannot understand that, since the AT schema of CourseItem adds some fields to the schema of SimpleItem, which in turn adds some fields to the schema of BaseItem, and all fields of these include i18n_domain='PloneMallItem' in the widget clause; perhaps i18n domain names are case-sensitive? in this case .py files use the wrong spelling 9. For normal users, I wanted to hide the content action "categories" from the view of the Category and CourseItem content types; so, with portal_types, in the action form of each of these types, I changed the Permissions property to "Modify portal content" 10. I found that in the item view the user could not see the extended data I've put in the CourseItem content type; so with portal_types, in the action form of CourseItem I've changed the Action property of the action "View" from "string:$object_url/mall_itemsimple" to "string:$object_url/base_view"; but doing so, I've lost the "Add to cart" link near the item price: how could I recover it? 11. If I understand correctly what categories are and how they relate to items, I would expect that, in the category browse view (mall_browse.pt), after the "Categories" (plural) heading (i18n:translate="browse_title_categories"), there was a list of possible sub-categories, in order to navigate down; instead only the Full description of the category is shown 12. If I associate an item with a category, as noted already by others, when I click on the "more ..." link of an item in the category browse view, the navigation portlet highlights the folder physically containing the item, while the user should not be aware of this; I've seen that somebody proposed smart solutions for this problem, and more generally for managing categorization; but for now I don't need to add more categories to the same item; so I've put each item inside the unique category it belongs to, after having added CourseItem to the "Allowed content types" for Category (portal_types/Category, Property form): could that have some drawbacks? 13. When the cart is empty, I think I should get a message saying that, not a table header without any table body 14. How is that in the PloneMall UML model (PloneMall.zuml) no connection is shown between Category and (Base)Item classes? 15. Are there examples of PloneMall installations, even in test/development stage, that I could access in order to see how a PloneMall site should/could appear to the user? 16. By the way, where could I find an introduction to the use of interfaces in Plone/Archetypes? Thanks in advance, Giovanni Toffoli -- Giovanni Toffoli Link srl Via Udine 30 - 00161 Roma tel. +39 06 44231115, 340 0727780 fax +39 06 44231328 |