{ "info": { "author": "Jens Klein, Robert Niedereiter", "author_email": "dev@bluedynamics.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Web Environment", "Framework :: Zope2", "License :: OSI Approved :: GNU General Public License (GPL)", "Operating System :: OS Independent", "Programming Language :: Python", "Topic :: Internet :: WWW/HTTP :: Dynamic Content" ], "description": "==========================================================\nConvinience for Datetime handling in combination with Zope\n==========================================================\n\n``bda.calendar.base`` contains functions adressing programmers all-day tasks\nnot (or only partly) covered by pythons datetime or zopes DateTime.\n\nMajor part of these function is timezone aware. Also ist easy to deal with \ntimezones. An TimezoneFactory can be provided in the specific application\nto i.e. be aware of the users timezone (i.e. in case of webapps).\n\n\ncalculators\n-----------\n\nCWof(date)\n the calendar week number of a date.\n \nfirstDayOfCW(year, cw, tzinfo=None)\n first day of a numbered calendar week\n \ndaysOfWeek(year, cw, tzinfo=None)\n yields 7 datetimes of the given calendar week\n \nnumberOfDaysInYear(dt)\n calculate number of day of the year of the given datetime year\n \nnumberOfDaysInMonth(dt) \n calculates number of days of the given datetimes month \n\ndaysOfMonth \n yields all days as datetimes of the given month\n \nhoursOfDay(year, month, day, tzinfo=None)\n yields all hours of a day as datetimes \n \nisSameDay(first, second) \n detects if two dates are the same day. bool.\n \n\nconverter\n---------\n\ndt2DT(dt)\n Convert Python's datetime to Zope's DateTime. Acts timezone-aware.\n \nDT2dt(DT)\n Convert Zope's DateTime to Pythons's datetime. Acts timezone-neutral, \n outcome is on UTC.\n \ndt2UTCString(dt)\n build a '-' separated string from the datetime timetuple as UTC.\n \ndtFromUTCString(utcstr)\n build datetime from timetuple UTC string.\n \ndt2epochday(dt)\n Number of days since epoch. \n timezone gets a problem here, we need to normalize all to GMT to make it \n recognize the same day even if it a different timezone:\n i.e. 2008-05-01T00:00:00+02:00 (CEST) \n\n\ninspector\n---------\n\nAll functions are using the timezoneAdjuster (see below). therefore a context is \npassed\n \ndtYear(dt, context=None):\n year of datetime.\n \ndtMonth(dt, context=None)\n month of datetime.\n\ndtDay(dt, context=None)\n day of datetime.\n\ndtHour(dt, context=None)\n hour of datetime.\n\ndtMinute(dt, context=None)\n minute of datetime.\n \ndtWeekday(dt, context=None)\n Weekday of datetime.\n \npyDt\n Detect wether dt is instance of datetime object.\n\n \nrecurring\n---------\n\nSimple recurring features. for more sophisticated recurring feature refer to\ndateutils.rrule\n\nrecueDays(start, until, recuemode, offset)\n Generates list of recue days. \n\n\ntimezone\n--------\n\nDealing with timezones is always pain. With these common features it get less \npain. Using ZCA where registering a common ``TimezoneFactory`` using the computers \nsystem timezone. It is used by the ``timezoneAdjuster``. If you register a more \nspecific TimezoneFactory following its simple interface - its just a callable -\n, you can implement user configurated multi-timezone aware applications.\nThis is all based on pytz, because pytz just works.\n\nServerTimezoneFactory(context)\n The timezone of the server (current computer). You never need to use this \n directly.\n\ntimezoneAdjuster(context, dt)\n New datetime with given timezone. Given datetime cant be naive!\n \ntzawarenow()\n timezone aware ``now`` datetime using utc timezone. if you need \n the current timezone adjust it.\n\n\nCredits, License\n================\n\n * Copyright 2008-2010, BlueDynamics Alliance, Austria\n \n * Conception and Coding\n * Jens Klein \n * Robert Niederreiter \n \n * under the GNU General Public License 2.0\n\n\nHistory\n=======\n\n1.2.2\n-----\n\n- conditional ZCML for pyramid and zope.\n [rnix, 2011-11-16]", "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/collective/bda.calendar.base", "keywords": "Calendaring", "license": "General Public Licence", "maintainer": null, "maintainer_email": null, "name": "bda.calendar.base", "package_url": "https://pypi.org/project/bda.calendar.base/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/bda.calendar.base/", "project_urls": { "Download": "UNKNOWN", "Homepage": "http://svn.plone.org/svn/collective/bda.calendar.base" }, "release_url": "https://pypi.org/project/bda.calendar.base/1.2.2/", "requires_dist": null, "requires_python": null, "summary": "Base common calendaring features: Convinience or not coverd yet.", "version": "1.2.2" }, "last_serial": 786754, "releases": { "1.1": [ { "comment_text": "", "digests": { "md5": "f15006094f57ca2dab9fdc1699fd1553", "sha256": "4e803b465ef0b33d514d42bd47f03812a6a5d6a7b4022f1043053d9c204944c4" }, "downloads": -1, "filename": "bda.calendar.base-1.1.tar.gz", "has_sig": false, "md5_digest": "f15006094f57ca2dab9fdc1699fd1553", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4755, "upload_time": "2009-03-05T13:10:22", "url": "https://files.pythonhosted.org/packages/31/89/145369565260e2d8c1eee5ebb275cf886fadf010f617bd21e162f7b976cd/bda.calendar.base-1.1.tar.gz" } ], "1.2": [ { "comment_text": "", "digests": { "md5": "6fb5f01fc7ae42c71a904ba46c82fe91", "sha256": "d455311e4e277d0fe6825a8d21bdb347fc4d694415e2a31278a0d9720e1b9e25" }, "downloads": -1, "filename": "bda.calendar.base-1.2.tar.gz", "has_sig": false, "md5_digest": "6fb5f01fc7ae42c71a904ba46c82fe91", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7599, "upload_time": "2010-03-09T13:10:45", "url": "https://files.pythonhosted.org/packages/4c/d0/43d30b23754a4e22fa5136e08d40cf9628ba4105ef777018f99a92824416/bda.calendar.base-1.2.tar.gz" } ], "1.2.1": [ { "comment_text": "", "digests": { "md5": "955b7f901ef096fca1f23fca04701ba0", "sha256": "8aca5080e7a82b311af1efd6eab2b6d11da6315f10ceb13e4a3f64759019d7df" }, "downloads": -1, "filename": "bda.calendar.base-1.2.1.tar.gz", "has_sig": false, "md5_digest": "955b7f901ef096fca1f23fca04701ba0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7626, "upload_time": "2010-03-09T13:47:32", "url": "https://files.pythonhosted.org/packages/1c/03/4749f2faecff86c2a70943702b0a3c6f7a757e17330e91d984c7da16b351/bda.calendar.base-1.2.1.tar.gz" } ], "1.2.2": [ { "comment_text": "", "digests": { "md5": "3b2c1d639b6bac4824b2ae5b2cb82e8f", "sha256": "f3a16876c340da4423375624e7476055ba1d59e09a1350d4c48907bd968f4858" }, "downloads": -1, "filename": "bda.calendar.base-1.2.2.tar.gz", "has_sig": false, "md5_digest": "3b2c1d639b6bac4824b2ae5b2cb82e8f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6561, "upload_time": "2011-11-19T14:01:36", "url": "https://files.pythonhosted.org/packages/4b/77/7b83914b4c1d90da71cee1d05dc9420285880a7d4cd5245bf70259bca393/bda.calendar.base-1.2.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "3b2c1d639b6bac4824b2ae5b2cb82e8f", "sha256": "f3a16876c340da4423375624e7476055ba1d59e09a1350d4c48907bd968f4858" }, "downloads": -1, "filename": "bda.calendar.base-1.2.2.tar.gz", "has_sig": false, "md5_digest": "3b2c1d639b6bac4824b2ae5b2cb82e8f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6561, "upload_time": "2011-11-19T14:01:36", "url": "https://files.pythonhosted.org/packages/4b/77/7b83914b4c1d90da71cee1d05dc9420285880a7d4cd5245bf70259bca393/bda.calendar.base-1.2.2.tar.gz" } ] }