{ "info": { "author": "Dorneles Tremea", "author_email": "dorneles@tremea.com", "bugtrack_url": null, "classifiers": [ "Framework :: Plone", "Programming Language :: Python", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "Upload Reference Widget\n=======================\n\n The Upload Reference Widget aims to be the primary mechanism for uploading a\n file when creating a content item that uses the file. Instead of embedding\n the file into the content item, this widget uploads the file as a separate\n item and automatically populates a reference in the content item. Now Plone\n can reuse image and file assets in a more user-friendly way.\n\n\nThe problem\n-----------\n\n One of the biggest issues we have seen re-using file assets in the Plone\n CMS is that once a file is uploaded as an attribute of content; you can not\n easily reuse it. Take this scenerio for instance:\n\n - You create a 'News Item' in '/news/foo.html' and upload an image,\n 'logo.jpg', that shows a picture of a corporate logo. To address this\n image you must goto a URL like, 'http://host/news/foo.html/logo.jpg'.\n\n - Two weeks later you create another 'News Item' in '/news/bar.html' and\n you dont want to re-upload the corporate logo. You simply want to reuse\n the existing corporate logo. Where do you find it?\n\n - We could browse content and goto '/news/foo.html' and inside the\n 'News Item' see the 'logo.jpg'. While this is possible. It is not\n probable that someone has created a container where images are being\n uploaded. Specifically the default Plone 'News Item' implementation\n does not work this way.\n\n\nThe suggested solution\n----------------------\n\n Create a new 'UploadReferenceWidget'. What this will do is be an alternative\n widget that can work in-place of a ReferenceWidget; and should retain all\n the functionality of a Reference Field/Widget. But enable someone to upload\n a 'File'. The policy on the Field/Widget could dictate that the file gets put\n into a certain folder. Take this scenerio for instance:\n\n - We know that all content in 'http://host/corporate/news' is commercial\n news.\n\n - When user is creating a 'News Item' and uploads 'logo2.jpg' into the\n Upload Reference Widget called 'image' that we will ask the policy\n Where does this image, 'logo2.jpg' go? The policy could put it in\n /images/logos.\n\n - The policy would have to do everything. The Widget wouldn't help\n anything. The file would be put into the '/images/logos' folder and\n then in the 'News Item' image attribute would be the reference id to\n the '/images/logos/logo2.jpg'.\n\n\nImplementation details\n----------------------\n\n The new widget has two main features:\n\n - Upload a new file: create a new object and make a reference to it\n\n - Select an existing object: make a reference to it\n\n When uploading a new file, the widget checks for the mimetype and create\n an instance of the appropriate content-type: File or Image. This content\n is created in the 'startup_directory' property defined in the widget.\n\n\nExample usage\n-------------\n\n Take a look in the 'demo.py' file for a simple example usage of this widget.\n\n The browse and select functionality is provided by\n 'archetypes.referencebrowserwidget', which means you can use any of its\n current features.\n\n Check the \"complete reference of available\n options\":http://tinyurl.com/referencebrowserwidget-options online.\n\n It contains the list of default property values and explains its meanings.\n\n\n\nChangelog\n=========\n\n0.2.1 (2010-09-22)\n------------------\n\n- Added MANIFEST.in file.\n [WouterVH]\n\n- Fixed i18n-domain in pot-file.\n [WouterVH]\n\n- Add Dutch translation.\n [WouterVH]\n\n- Added locales.\n [toutpt]\n\n- Added French translation.\n [toutpt]\n\n- Fixed registerType. It needs a package name since Archetypes 1.3.2.\n [toutpt]\n\n\n0.2 (2009-03-22)\n----------------\n\n- Added our skin layer to all skins paths.\n [deo]\n\n- Fixed dependency registration on both metadata.xml and configure.zcml.\n [deo]\n\n\n0.1-alpha (Unreleased)\n----------------------\n\n- Log that fact that a monkey patch is being applied.\n [runyaga]\n\n- Eggified to archetypes.uploadreferencewidget and changed to use\n archetypes.referencebrowserwidget instead of Products.ATReferenceBrowserWidget\n [swampmonkey]\n\nChangelog for UploadReferenceWidget\n===================================\n\n1.1 (26-11-2007)\n----------------\n\n- Fixed a persistence bug in the TestCase who was causing tests to behave in\n different ways depending on how they were run or on the Plone version. [deo]\n\n- Fixed the usage of 'startup_directory' in the demo.py code. [deo]\n\n- Made sure the widget honors the \"use the current object\" as the 'startup_directory'\n when its value is \"\". [deo]\n\n- Fixed the \"can't save the object\" problem when the widget's field is marked as\n required. [deo]\n\n\n1.0.1 (16-11-2007)\n------------------\n\n- Reformulated the MonkeyPatch code to make it more robust and also to patch the\n right *class*. [deo]\n\n- Amended a test to work on all Plone versions. [deo]\n\n\n1.0 (14-112007)\n---------------\n- Fixed the text formatting of README.txt to use the StructuredText markup. [deo]\n\n- Fixed to not upload files when the form validation fails. [deo]\n\n- Added a MonkeyPatch for Archetypes BaseObject._processForm method, so we don't\n require the entire world to upgrade Archetypes to unreleased versions. [deo]\n\n\n\n0.5 (30-10 2007)\n----------------\n\n- Fixed to use the reference_edit macro from ATReferenceBrowserWidget\n (present in 1.7.2 and 2.0.1 versions), when available. This removes the double\n title/description field text. [deo]\n\n- Added a multi-upload feature. You can now upload more than one file at a time\n when the widget support multiple values. [deo]\n\n- Fixed a bug where the directory path wasn't being removed from the filename,\n when uploading from Internet Explorer to a Zope server running in OS different\n from Windows. [deo]\n\n- Improved the 'startup_directory' handling: if the path doesn't exists, the files\n are uploaded inside the instance itself (in case of a folderish object), or\n its parent. [deo]\n\n\n0.2 (10-09-2007)\n----------------\n\n- Improved the content of the README.txt file. Added info about tests and example\n usage. [deo]\n\n- Renamed, simplified and added a second field, non multiValued, to our demo\n schema. [deo]\n\n- Fixed the upload to also works when the field is not multiValued. [deo]\n\n\n0.1 (24-08-2007)\n----------------\n- Initial version. [deo]", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://svn.plone.org/svn/archetypes/MoreFieldsAndWidgets/archetypes.uploadreferencewidget", "keywords": "Relation Widget", "license": "LGPL", "maintainer": null, "maintainer_email": null, "name": "archetypes.uploadreferencewidget", "package_url": "https://pypi.org/project/archetypes.uploadreferencewidget/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/archetypes.uploadreferencewidget/", "project_urls": { "Download": "UNKNOWN", "Homepage": "http://svn.plone.org/svn/archetypes/MoreFieldsAndWidgets/archetypes.uploadreferencewidget" }, "release_url": "https://pypi.org/project/archetypes.uploadreferencewidget/0.2.1/", "requires_dist": null, "requires_python": null, "summary": "A widget for Archetypes with support for both uploading and referencing content.", "version": "0.2.1" }, "last_serial": 786391, "releases": { "0.2": [ { "comment_text": "", "digests": { "md5": "c2c19e138007b900a46bec60aabcb927", "sha256": "1f622419bf36e32d8ffc989b55cab3445802ab115d2c115cb64478992ef4b442" }, "downloads": -1, "filename": "archetypes.uploadreferencewidget-0.2.tar.gz", "has_sig": false, "md5_digest": "c2c19e138007b900a46bec60aabcb927", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 482462, "upload_time": "2009-03-23T02:18:08", "url": "https://files.pythonhosted.org/packages/8e/af/d22152a0ebef318e23883870866035092dac9e6c9d167914e611eb84814f/archetypes.uploadreferencewidget-0.2.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "902d491dff689b3cc71a65fbf12c996f", "sha256": "69225b73dc820d37ec085534a6f5137cd81b43914cec5a1cba0187338a714902" }, "downloads": -1, "filename": "archetypes.uploadreferencewidget-0.2.1.tar.gz", "has_sig": false, "md5_digest": "902d491dff689b3cc71a65fbf12c996f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 485751, "upload_time": "2010-09-22T11:12:03", "url": "https://files.pythonhosted.org/packages/8d/dc/ebabe562a286636837ec1af7d555c45ca6947dc89f7d5556c8973debcbdf/archetypes.uploadreferencewidget-0.2.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "902d491dff689b3cc71a65fbf12c996f", "sha256": "69225b73dc820d37ec085534a6f5137cd81b43914cec5a1cba0187338a714902" }, "downloads": -1, "filename": "archetypes.uploadreferencewidget-0.2.1.tar.gz", "has_sig": false, "md5_digest": "902d491dff689b3cc71a65fbf12c996f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 485751, "upload_time": "2010-09-22T11:12:03", "url": "https://files.pythonhosted.org/packages/8d/dc/ebabe562a286636837ec1af7d555c45ca6947dc89f7d5556c8973debcbdf/archetypes.uploadreferencewidget-0.2.1.tar.gz" } ] }