{ "info": { "author": "Simon Pamies", "author_email": "s.pamies@banality.de", "bugtrack_url": null, "classifiers": [ "Framework :: Plone", "Programming Language :: Python", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "Introduction\n------------\n\nThis package provides functionality to ease skinning of plone.\nIt is built around the idea that you shouldn't have to adapt much plone\ntemplates but instead take any layout you want and put it on top of Plone.\n\nThat means that all editing is done using Plone skin but for anonymous users\n(or users not having the correct permission) another skin is shown. This works\nbased on rules described below. No url switching or iframe magic needed.\n\nIt resembles *collective.skinny* but instead of imposing customized templates\nfor each and every content type this package tries to reuse already\nexisting views and templates. You also won't need a special server\nconfiguration to redirect to ++skin++ or such. With some coding it is also\npossible to use this for community sites because people *can* log in and\neither (if permission is set) they see the well-known Plone interface or the public skin.\nAlso there is no need to hack around to prevent plone templates from\n``leaking`` because you *want* to display all plone related templates as is.\n\nFull Example provided here: http://pypi.python.org/pypi/anthill.exampletheme\n\nInstallation\n------------\n\n- Include anthill.skinner in your buildout.cfg\n- Make sure to also include z3c.autoinclude\n- Rerun buildout\n- Restart your Zope instance\n- Go to portal_quickinstaller and install anthill.skinner\n- ATT: Make sure to restart Zope - this is because of a handler only being\n evaluated on startup\n- There should be a new link \"Show Preview\" on the bottom\n\nCreation of a theme (simple way)\n--------------------------------\n\n- Create a new folder custom_public in portal_skins\n- Include this folder in portal_skins/manage_propertiesForm in publicview\n- Customize anthill_skinner_templates/main_template to custom_public\n- Put images and CSS also to this folder\n- For a more elaborate example look at anthill.exampletheme\n\nDependencies\n------------\n\n- z3c.autoinclude\n- anthill.tal.macrorenderer\n\nTested with\n-----------\n\n- Plone 4.x (for Plone 3.x use version <0.7)\n\nPros\n----\n\n - No need to understand the complex plone template logic\n - No need to write a new handbook for editors - take any recent plone book\n because the edit skin stays the same\n - Less work when updating to a new Plone version because you didn't touch\n much of the templates\n - Almost no limitations for your theme/design that could be imposed by the\n fact that you need to include all the edit functionality (tabs, ...) into\n your theme\n - By not having to fiddle with Plone inner logic/templates that much you save\n much time\n\nCons\n----\n\n - Editors have no in-place editing - although you can change to the edit view\n on every context there's one more click needed\n - Including plone portlets into your theme is a little more complex\n\nSimilar packages\n----------------\n\n - collective.skinny\n - collective.editskinswitcher\n\nRules\n-----\n\nInstead of having url based rules this package uses simple rules suitable for\nmost deployments. If you don't like these rules then you can easily overwrite\nthem.\n\nRules to show public skin are as follows (order matters):\n\n - User is anonymous\n - User is authenticated but has not the correct permission (anthill: View CMS)\n - User is authenticated, has the correct permission but activated preview\n - There is a request variable named anthill.skinner.preview\n\nAll rules can be found in ``browser/handling#mustDisplayPublicSkin.``\n \nOverwrite rules\n---------------\n\nYou can overwrite these rules by defining an adapter. Please keep in mind that if\nyou overwrite rules then you need to overwrite all rules!\n\nconfigure.zcml::\n\n \n\npublicview.py::\n\n class RuleMaker:\n implements(IRuleOverwrite)\n\n def __init__(self, context):\n self.context = context\n\n def mustDisplayPublicView(self, context, request):\n return True\n\nHow to create your own skin\n---------------------------\n\nIn order to create your own skin first take a look at the very simple example\nincluded in this package. It shows you how to define your menu and how content\nwill be displayed.\n\nPlease be aware of the fact that it is intended to not load any of the css or\njavascript coming with Plone.\n\nYou can then create your own theme based on anthill.skinner by simply using the\nsame skin and layer for your resources. Use ``anthill.skinner.interfaces.IPublicSkinLayer`` \nas the layer and ``publicview`` as the skin name you're putting your stuff into.\n\nThanks\n------\n\n- Developers of collective.skinny\n- Plone community\n- banality design & communication for funding this (all anthill.* packages)\n\nThis package is part of the anthill.* ecosystem that powers many websites all\naround the world - all being built on top of this package (originally for\nPlone 2.x).\n\n\nChangelog\n=========\n\n0.8 (2010-11-30)\n----------------\n\n* Added possibility to select language for menu items\n [spamsch]\n\n* Plone 4 compatibility\n [spamsch]\n\n0.6 (2009-11-27)\n----------------\n\n* Many more fixes to utility methods\n [spamsch]\n\n* Fixed renderer to use context for macro rendering \n [spamsch]\n\n* Fixed navtree to always use folderish context\n [spamsch]\n\n* Now taking review state into account for display\n [spamsch]\n\n* Added method to check if context is portal root \n [spamsch]\n\n* Fixed severe bug in user auth where skinner would never\n switch into cms mode even if user has authenticated\n [spamsch]\n\n0.5 - 2009-10-28\n----------------\n\n* Fixed severe bug in main_template always showing error [spamsch]\n\n0.4 - 2009-08-14\n----------------\n\n* Fixed skinner to be only active where installed using portal_quickinstaller [spamsch]\n\n0.3 - 2009-08-09\n----------------\n\n* Fixed z3c.autoinclude inclusion in configure.zcml [spamsch]\n\n0.2 - 2009-08-08\n----------------\n\n* Added menu generator for public views to ease menu separation and usage [spamsch]\n\n* Fixed preview activation and deactivation link to use the current context\n and stick to the folder [spamsch]\n\n0.1 - 2009-06-08\n----------------\n\n* Initial release", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://www.banality.de", "keywords": "skinning theming plone zope", "license": "GPL", "maintainer": null, "maintainer_email": null, "name": "anthill.skinner", "package_url": "https://pypi.org/project/anthill.skinner/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/anthill.skinner/", "project_urls": { "Download": "UNKNOWN", "Homepage": "http://www.banality.de" }, "release_url": "https://pypi.org/project/anthill.skinner/0.8/", "requires_dist": null, "requires_python": null, "summary": "Skinning for plone made easy", "version": "0.8" }, "last_serial": 786299, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "8fa1a86a7bfdf15c8a8dd08b2bf7d9f7", "sha256": "df26eacfb28ecc778faa882d83c69daef52fafd16ca316261291ba216e34137e" }, "downloads": -1, "filename": "anthill.skinner-0.1.tar.gz", "has_sig": false, "md5_digest": "8fa1a86a7bfdf15c8a8dd08b2bf7d9f7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13750, "upload_time": "2009-08-09T12:50:09", "url": "https://files.pythonhosted.org/packages/7d/0e/7719c58530ff69c9741aa00eacb393b3b2189d149cc49dd83bad0c83b6e9/anthill.skinner-0.1.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "e7bf6a6bdb1741fefd9b7053e0afac9f", "sha256": "91798d95f7b689477509bcfbeef4098e656a631d8029e0e90d1f288351a284bb" }, "downloads": -1, "filename": "anthill.skinner-0.2.tar.gz", "has_sig": false, "md5_digest": "e7bf6a6bdb1741fefd9b7053e0afac9f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13611, "upload_time": "2009-08-09T11:19:42", "url": "https://files.pythonhosted.org/packages/ac/74/16915f0cefaf5030c70fd0bfda891b1867523f63aa9c57b53bc25f22d7c6/anthill.skinner-0.2.tar.gz" } ], "0.3": [ { "comment_text": "", "digests": { "md5": "306987d84e44cb1369e797f23ede1d6a", "sha256": "b12f59ed84dd3a0d029dc4f76ea7399759e9ed1b6b09d2105a6bc8fb442f44c9" }, "downloads": -1, "filename": "anthill.skinner-0.3.tar.gz", "has_sig": false, "md5_digest": "306987d84e44cb1369e797f23ede1d6a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13747, "upload_time": "2009-08-09T15:45:14", "url": "https://files.pythonhosted.org/packages/5f/49/c6e53274019f904707cd2e8521488551b9daf5f59770cb7cb973056cb945/anthill.skinner-0.3.tar.gz" } ], "0.4": [ { "comment_text": "", "digests": { "md5": "4e8d83482707e24a5b276aadfb268e4f", "sha256": "bf3417dbb9287fd58f9fc2169e04052a3e89c92578b0166d1a2d78bcf4edaf64" }, "downloads": -1, "filename": "anthill.skinner-0.4.tar.gz", "has_sig": false, "md5_digest": "4e8d83482707e24a5b276aadfb268e4f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14073, "upload_time": "2009-08-14T12:16:24", "url": "https://files.pythonhosted.org/packages/32/44/aba544630f36393100740beb09f9676119437118a22b2506e7a5ed338d73/anthill.skinner-0.4.tar.gz" } ], "0.5": [ { "comment_text": "", "digests": { "md5": "7373f1d878dc44f33d8d8da774749e38", "sha256": "c740f9c404f232be95a4fbc031d2d46506c3830f92826f57d099e02d442f0d17" }, "downloads": -1, "filename": "anthill.skinner-0.5.tar.gz", "has_sig": false, "md5_digest": "7373f1d878dc44f33d8d8da774749e38", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19373, "upload_time": "2009-10-28T19:09:03", "url": "https://files.pythonhosted.org/packages/c0/15/431c83445d94f757a06a19ffc3165ab42ba6a92c4768a0dc8ab6d3843e43/anthill.skinner-0.5.tar.gz" } ], "0.6": [ { "comment_text": "", "digests": { "md5": "5c8df09996c23edae7489f369d94198f", "sha256": "8d4d973ae1ab7b870fd17f3c0861f31414018fe496dffef7b815ffc20ab58a0a" }, "downloads": -1, "filename": "anthill.skinner-0.6.tar.gz", "has_sig": false, "md5_digest": "5c8df09996c23edae7489f369d94198f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 23043, "upload_time": "2009-11-27T13:32:05", "url": "https://files.pythonhosted.org/packages/91/a9/4cba0ad8e332325ef706ca96bcc793f1d992a86a0008d87688d67927b21d/anthill.skinner-0.6.tar.gz" } ], "0.8": [ { "comment_text": "", "digests": { "md5": "00a7118e2b8223d0f04fd3af8d0cb793", "sha256": "989160c8d84bf4b7d2d0224aa4f5920b7cf11c768643007f46fd05c22e874803" }, "downloads": -1, "filename": "anthill.skinner-0.8.tar.gz", "has_sig": false, "md5_digest": "00a7118e2b8223d0f04fd3af8d0cb793", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 142411, "upload_time": "2010-12-01T10:55:01", "url": "https://files.pythonhosted.org/packages/b4/83/7e0961e109219e993c9394e1a04a24c0c82e8f92f0b3017968d6a9f68fa4/anthill.skinner-0.8.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "00a7118e2b8223d0f04fd3af8d0cb793", "sha256": "989160c8d84bf4b7d2d0224aa4f5920b7cf11c768643007f46fd05c22e874803" }, "downloads": -1, "filename": "anthill.skinner-0.8.tar.gz", "has_sig": false, "md5_digest": "00a7118e2b8223d0f04fd3af8d0cb793", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 142411, "upload_time": "2010-12-01T10:55:01", "url": "https://files.pythonhosted.org/packages/b4/83/7e0961e109219e993c9394e1a04a24c0c82e8f92f0b3017968d6a9f68fa4/anthill.skinner-0.8.tar.gz" } ] }