{ "info": { "author": "Nando Florestan", "author_email": "nandoflorestan@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Environment :: Web Environment", "Framework :: Pyramid", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.2", "Programming Language :: Python :: 3.3", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "deform_bootstrap_extra\n~~~~~~~~~~~~~~~~~~~~~~\n\nExtra features for deform_bootstrap\n\nThis package:\n\n* constitutes another layer on top of the great package *deform_boostrap*,\n which skins Deform with Twitter's \"bootstrap\" library:\n http://pypi.python.org/pypi/deform_bootstrap\n* contains special widgets and functions for Deform.\n\nOur bootstrap-compatible templates\n==================================\n\nOur alterations to the templates are in the \"templates\" subdirectory.\n\nHere are the changes we've made:\n\n* checkbox.pt: Allows you to pass a *text* argument to a Boolean schema, and\n the text appears on the right of the checkbox.\n* form.pt: Squashes a bug where buttons would be rendered disabled.\n* mapping_item: Show error messages *below* help text.\n* password.pt: Supports *maxlength* and *placeholder* and\n automatically sets *required*.\n* textarea.pt: Supports *maxlength* and *placeholder* and\n automatically sets *required*.\n* textinput.pt: Supports *maxlength* and *placeholder* and\n automatically sets *required*. Also supports any HTML5 input type --\n for instance, when instantiating a ``TextInputWidget``,\n you can set ``type='email'``.\n\nAll this has been tested against deform_bootstrap 0.2.8.\n\nCSS file\n========\n\nTake a look on static/deform_bootstrap_extra.css -- it has a few improvements\non bootstrap's CSS so it works better with deform. The file has comments.\n\nOur new widgets\n===============\n\n* widgets.TagsWidget: Sets up a beautiful jQuery-Tags-Input which in\n turn comes from http://xoxco.com/projects/code/tagsinput/\n\nAbstract base view\n==================\n\nIf you use the *Pyramid* web framework, here is a great little abstract base\nclass for views that use deform: `BaseDeformView. Check it out!\n`_\n\nHelper functions\n================\n\nbutton()\n--------\n\nUse this function in a Pyramid app to easily generate a Deform button with\ntranslated title and optionally a bootstrap icon.\n\n from deform_bootstrap_extra.pyramid import button\n\nlengthen()\n----------\n\nForms containing all inputs with the same size are extremely boring to\nlook at. When the widths of the inputs vary, not only the user gets a\nbetter idea of how much to type in them, but the screen looks much more\ninteresting and easier to scan visually.\n\nThe ``lengthen()`` function calculates input width based on the\nmaxlength (which can optionally be inferred from a SQLAlchemy model property).\nExample usage::\n\n from deform_bootstrap_extra.helpers import lengthen\n import colander as c\n\n class ContactSchema(CSRFSchema):\n name = c.SchemaNode(c.Str(), title=_(\"Name\"), missing=None,\n **lengthen(Contact.name)) # this is a model property\n\nfrom_now_on()\n-------------\n\nThis Colander validator only accepts a time in the future. Example::\n\n from deform_bootstrap_extra.schema import from_now_on\n import colander as c\n\n class PromotionSchema(CSRFSchema):\n scheduled = c.SchemaNode(c.DateTime(default_tzinfo=None),\n missing=c.null, title=_(\"Schedule\"), validator=from_now_on)\n (...)\n\n sch = PromotionSchema().bind(request=self.request, now=datetime.utcnow())\n\nTrilean\n-------\n\nA schema type that can represent true, false and null. Example::\n\n from deform_bootstrap_extra.schema import Trilean\n import colander as c\n import deform.widget as w\n\n class ContactSchema(CSRFSchema):\n (...)\n male = c.SchemaNode(Trilean(), title=_(\"Sex\"), missing=None,\n widget=w.SelectWidget(values=[\n (c.null, _(\"- Choose -\")),\n ('false', _(\"Female\")),\n ('true', _(\"Male\")),\n ]))\n\n\nInstallation\n============\n\nOur preferred way of enabling the whole stack is this:\n\n.. code-block:: python\n\n # DO NOT include('deform_bootstrap')\n config.include('deform_bootstrap_extra')\n\nThis sets deform up for i18n (configuring a translator function and pointing\ncolander and deform locale directories) and gives its template loader the\ncorrect directory hierarchy, so it will search for templates first in\ndeform_bootstrap_extra, then in deform_bootstrap, finally in deform.\n\nContribute\n==========\n\nYou can help development at\nhttps://github.com/nandoflorestan/deform_bootstrap_extra", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/nandoflorestan/deform_bootstrap_extra", "keywords": "twitter bootstrap deform styles css web forms form", "license": "BSD", "maintainer": null, "maintainer_email": null, "name": "deform_bootstrap_extra", "package_url": "https://pypi.org/project/deform_bootstrap_extra/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/deform_bootstrap_extra/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/nandoflorestan/deform_bootstrap_extra" }, "release_url": "https://pypi.org/project/deform_bootstrap_extra/0.2.8/", "requires_dist": null, "requires_python": null, "summary": "A complement to deform_bootstrap, which offers Twitter Bootstrap compatible widgets, templates and styles for the deform form library.", "version": "0.2.8" }, "last_serial": 788887, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "6dbb6db9445788bc3fa3add6555674a7", "sha256": "0323e1f1ab46e714419961e53fdf6879b7d734bcaedf7ecf0f211c239cd55bb9" }, "downloads": -1, "filename": "deform_bootstrap_extra-0.1.tar.gz", "has_sig": false, "md5_digest": "6dbb6db9445788bc3fa3add6555674a7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17765, "upload_time": "2013-02-14T19:28:54", "url": "https://files.pythonhosted.org/packages/b9/60/876cc51916f5b377d113032fa3f851fe7f0b4d102aec9a0ddf29fd5e72ce/deform_bootstrap_extra-0.1.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "5096f8ddc045afe7df4a3ca2ce88a850", "sha256": "07e03faa2b433412c8938851cdbdfa90cfeb9a00be51d71f0db9637c98ca653e" }, "downloads": -1, "filename": "deform_bootstrap_extra-0.1.1.tar.gz", "has_sig": false, "md5_digest": "5096f8ddc045afe7df4a3ca2ce88a850", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20788, "upload_time": "2013-02-17T14:57:43", "url": "https://files.pythonhosted.org/packages/64/90/29f62ae29f5d108d30b9ca59774e651fcfeb6267f4b76e4b56235f8f8e9a/deform_bootstrap_extra-0.1.1.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "af9ea319d70cf379acb06df7213234d8", "sha256": "8e762a1cb8e97c91161f8ab07d3dac2b9a603800139fefcade9138203840a3c6" }, "downloads": -1, "filename": "deform_bootstrap_extra-0.2.tar.gz", "has_sig": false, "md5_digest": "af9ea319d70cf379acb06df7213234d8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21233, "upload_time": "2013-02-20T13:52:44", "url": "https://files.pythonhosted.org/packages/2b/01/3d97a2a594035b09304073ae302ac0c3c81383442c38a73a80522f1f2d71/deform_bootstrap_extra-0.2.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "0d8bb46714cd15e1654f2142cf13e5a4", "sha256": "d253db73a89b9d9b68ee6665462dedccd4c9efec3950f3408eb1773b8761b79e" }, "downloads": -1, "filename": "deform_bootstrap_extra-0.2.1.tar.gz", "has_sig": false, "md5_digest": "0d8bb46714cd15e1654f2142cf13e5a4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22753, "upload_time": "2013-03-04T23:52:13", "url": "https://files.pythonhosted.org/packages/bf/ea/4eaa5a1efb76908a5f1daaa528a9c6ca26a543ac7043f3b6531a4e0c9227/deform_bootstrap_extra-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "ed074d81ad013c387f091548a2392c97", "sha256": "4a9ca246713b40deb31b7c4f90dbd1848b9e258ed729121ce63ba396b5b85b8b" }, "downloads": -1, "filename": "deform_bootstrap_extra-0.2.2.tar.gz", "has_sig": false, "md5_digest": "ed074d81ad013c387f091548a2392c97", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25146, "upload_time": "2013-03-17T22:13:38", "url": "https://files.pythonhosted.org/packages/35/4d/9e160a842112a89ad9bd9259059ead3ee67200f061fd211cc172a36de4a9/deform_bootstrap_extra-0.2.2.tar.gz" } ], "0.2.8": [ { "comment_text": "", "digests": { "md5": "0c97dafd2f8335f41041aff121354d67", "sha256": "18ad9227d18b70da602351c3abdc8fa50bd044774185d53394bbda2abacd8b84" }, "downloads": -1, "filename": "deform_bootstrap_extra-0.2.8.tar.gz", "has_sig": false, "md5_digest": "0c97dafd2f8335f41041aff121354d67", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 27937, "upload_time": "2013-06-27T02:15:01", "url": "https://files.pythonhosted.org/packages/71/3c/1524284b1c3225ecde985874b6fe988dab27614341fd4b09d44750e46251/deform_bootstrap_extra-0.2.8.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "0c97dafd2f8335f41041aff121354d67", "sha256": "18ad9227d18b70da602351c3abdc8fa50bd044774185d53394bbda2abacd8b84" }, "downloads": -1, "filename": "deform_bootstrap_extra-0.2.8.tar.gz", "has_sig": false, "md5_digest": "0c97dafd2f8335f41041aff121354d67", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 27937, "upload_time": "2013-06-27T02:15:01", "url": "https://files.pythonhosted.org/packages/71/3c/1524284b1c3225ecde985874b6fe988dab27614341fd4b09d44750e46251/deform_bootstrap_extra-0.2.8.tar.gz" } ] }