{ "info": { "author": "Yaroslav Klyuyev", "author_email": "imposeren@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Web Environment", "Framework :: Django", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Operating System :: OS Independent", "Programming Language :: Python", "Topic :: Internet :: WWW/HTTP", "Topic :: Internet :: WWW/HTTP :: Dynamic Content", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "========================\nDjango Happenings Update\n========================\n\n|travis| |coverage| |version|\n\nAn event calendar app for Django forked from https://github.com/wreckage/django-happenings\nto support newer Django versions.\n\nAll or most of the following text is from parent repository...\n\nFeatures:\n\n* Repeating and non-repeating events\n* Events that start and end on different days\n* Support for cancelled events\n* Upcoming events and current happenings lists\n* AJAX support\n* Default CSS & Javascript to help you get started\n\nComing soon:\n\n* better integration of categories and tags\n* more views, including an agenda view\n* support for users\n* ++ more\n\n\nNote about upgrading from previous versions: Upgrading your version of the app\nis a good idea, but be aware that some updates to the app involve changes\nto models, which may cause problems with your database. For this reason\nI've included south migrations to help make upgrading easier. But you\nshould always be cautious and make sure to backup your database before\nupgrading. To see a list of changes made for each version view the CHANGELOG.\n\nDependencies\n------------\n\nRequired:\n\n* Django 1.8+\n* Python 2.7+, 3+\n* pytz\n\nOptional:\n\n* jQuery\n* Twitter Bootstrap 3.0.0+ (w/ tooltip plugin)\n\njQuery is used for AJAX and the 'Today' button on the calendar.\n\nTWBS is used to create popovers when an event is clicked on the calendar.\n\n.. warning::\n\n django-happenings now use Django migrations by default. South users have to adjust their settings:\n\n .. code-block:: python\n\n \tSOUTH_MIGRATION_MODULES = {\n \t 'taggit': 'taggit.south_migrations',\n \t 'happenings': 'happenings.south_migrations',\n \t}\n\nQuick Install\n-------------\n\n1. Install with ``pip``::\n\n $ pip install django-happenings\n\n2. Add ``happenings`` to ``INSTALLED_APPS``:\n\n .. code-block:: python\n\n \t INSTALLED_APPS = (\n \t ...\n \t 'happenings',\n \t )\n\n3. Include the ``django-happenings`` URLconf in urls.py:\n\n .. code-block:: python\n\n url(r'^calendar/', include('happenings.urls', namespace='calendar'))\n\n If your are going to use different namespace then please set ``CALENDAR_URLS_NAMESPACE`` in settings\n\n4. Make sure your ``TIME_ZONE`` is set correctly in settings.py.\n\n5. Run ``python manage.py migrate`` to create the models (replace ``migrate`` with\n ``syncdb happenings`` if using older Django without South). If you're running MySQL, be sure that\n your database is properly configured to use time zones.\n\n6. Run the development server and go to ``127.0.0.1:8000/admin/`` to create and manage events.\n\n7. Check out the calendar at ``127.0.0.1:8000/calendar/``.\n\nCustomizing\n-------------\n\nThe quickest way to begin customizing the app is to override the\n``middle.html`` template by creating your own version in\n/happenings/middle.html (replace with wherever\nyou keep your templates) and add the line ``{% extends 'base.html' %}``\n(replace base.html with your base template). For a greater degree of customization,\nyou can copy and paste into your project all of the templates included in the app, and\nchange them to fit your needs.\n\nBe sure to include the packaged css & javascript into your base template if you\nwant to use them. Loading the default style into your template would\nlook something like (assuming staticfiles has been loaded)::\n\n \n\nAnd the default javascript something like::\n\n \n\nTemplate Tags\n-------------\n\nTemplate tags are available by loading ``happenings_tags`` into your template::\n\n {% load happenings_tags %}\n\nThis gives access to three template tags:\n``show_calendar``, ``upcoming_events``, and ``current_happenings``.\n\nUse ``show_calendar`` like this::\n\n
\n {% show_calendar request %}\n
\n\nto display a calendar like the one in ``/calendar/``, or like this::\n\n
\n {% show_calendar request mini=True %}\n
\n\nto display a mini calendar. The ``
`` shown allows you to use the styles\nincluded with the app, but you can omit or change them if you want to use\nyour own style. Note also that, because the request object needs to be\nincluded in the tag, you must include \"django.core.context_processors.request\"\nin TEMPLATE_CONTEXT_PROCESSORS in your settings.py.\n\nIf you are using custom templates for calendar and want to access all variables\nfrom current template context then you can call ``show_calendar`` tag with\n``inherit_context=True`` argument::\n\n
\n {% show_calendar request inherit_context=True %}\n
\n\nInclude ``upcoming_events`` in your template like this::\n\n {% upcoming_events %}\n\nto display a list of the next 5 (or less) upcoming events within the next 90 days.\nIf you'd like to show events that occur outside of 90 days, or show more events in the\nlist, use the ``finish`` and ``num`` options::\n\n {% upcoming_events finish=365 num=8 %}\n\nInclude ``current_happenings`` in your template like this::\n\n {% current_happenings %}\n\nto display a list of events that are happening now.\n\nLocale\n-----------------\n\nThere are no translations from English yet, but if you'd like to display the calendar\nand the event list in a different language, you can use ``CALENDAR_LOCALE``. The upcoming\nevents list won't be translated, though. For that you'll need to specify your ``LANGUAGE_CODE``\nin the Django settings. Also note that to use ``CALENDAR_LOCALE`` you'll need to have the correct\nlocale pack installed for your system. Example of changing the language to German::\n\n CALENDAR_LOCALE = 'de_DE.utf8'\n\nExample of changing to U.S. English::\n\n CALENDAR_LOCALE = 'en_US.utf8'\n\nBy default, the system's locale is used, so setting ``CALENDAR_LOCALE`` also ensures that you're\nusing the locale you want.\n\nOptional Settings\n-----------------\n\nYou can specify different settings for the app in your settings.py file.\n\nUse ``CALENDAR_URLS_NAMESPACE`` if you included ``happenings.urls`` with namespace other than ``'calendar'``\n\nUse ``CALENDAR_COLORS`` to add a custom color to the drop down in the admin when\ncreating an event. Example of setting the custom color 'fuchsia'::\n\n CALENDAR_COLORS = [('ff00ff', 'fuchsia')]\n\nUse ``CALENDAR_START_DAY`` to change the day on which the calendar starts. Example\nof starting the calendar on Sunday (instead of the default of Monday)::\n\n CALENDAR_START_DAY = 6\n\nDefault `time format `_ is \"TIME_FORMAT\" (user locale dependend if ``USE_L10N`` is used or default django format if not used). This can be changed with next setting::\n\n\tCALENDAR_TIME_FORMAT = 'H:i'\n\t## or\n\t# CALENDAR_HOUR_FORMAT = 'g:iA' # 12 hour format with AM/PM\n\nIn titles of events minutes may be stripped from time when there are 0 minutes. This depends on i18 settings and your CALENDAR_TIME_FORMAT settings. You may set some specific value with next setting::\n\n\tCALENDAR_HOUR_FORMAT = 'H'\n\t## or\n\t# CALENDAR_HOUR_FORMAT = 'gA' # 12 hour format with AM/PM\n\n\t## or if you do not want minutes to be stripped\n\t# CALENDAR_HOUR_FORMAT = 'H:i'\n\nSet ``CALENDAR_PASS_VIEW_CONTEXT_TO_DISPLAY_METHOD = True`` to pass context of calendar view to method\nthat renders calendar. Effectively this does not cause any changes to calendar rendering, but this\nmay be useful if you create your own calendar views.\n\n\nUpgrading from 0.2.X to 0.3.X\n-----------------------------\n\nStarting from 0.3.1 calendar rendering uses django templates to generate calendar\ncells (``templates/happenings/partials/calendar/*.html```).\nIf you haven't customized anything and used default settings then everything will\nstill work out of the box.\n\nIf you have sublcassed ``EventCalendar`` or ``MiniEventCalendar`` calendar then you have 2 options:\n\n* subclass ``LegacyEventCalendar`` or ``LegacyMiniEventCalendar``. You should also set ``CALENDAR_LEGACY_TIME_FORMAT`` in settings.\n* copy ``templates/happenings/partials/calendar/*.html``` templates to your project ``templates``\n directory and customize them\n\nIf you are using custom ``CALENDAR_TIME_FORMAT`` setting then you also have 2 options:\n\n* Just remove this setting and use default setting of django ``TIME_FORMAT``.\n* change it from python strftime notation to `Django (PHP) notation `_. Specifying ``CALENDAR_HOUR_FORMAT`` is also a good idea:\n\n .. code-block:: python\n\n\t # CALENDAR_TIME_FORMAT = '%H:%M' # pre 0.3.1 version\n\t CALENDAR_TIME_FORMAT = 'H:i'\n\t CALENDAR_HOUR_FORMAT = 'H'\n\nIf you used ``event.l_start_date()``/``event.l_end_date()``/``event.start_end_diff()`` in your code:\n\n* They are now cached_properties: use them without brackets or use ``get_FOO()`` (example: ``get_l_start_date()``)\n\nEvent details template (``tempaltes/happenings/event_detail.html``) now uses ``\"SHORT_DATE_FORMAT\"`` instead of ``\"D F d, Y\"`` format. To use old format either change SHORT_DATE_FORMAT in settings or copy templates and change them as you like.\n\n\nUrl to day details view (``EventDayView``) is now build using ``reverse``. This may have broken rendering for projects which included ``happenings.urls`` in their urlconf with namespace other than ``\"calendar\"``. In such case you have to set ``CALENDAR_URLS_NAMESPACE`` in settings to namespace that you use (empty string is allowed for those who do not use namespace).\n\nStarting from 0.3.3 django happenings does not use ``locale.setlocale`` and fully utilizes\n``i18n`` features if django. To set default calendar language you should set ``LANGUAGE_CODE``\nin settings. If you have enabled language switching for your site then calendar \nwill switch languages too. If you are not using legacy calendars then\n``CALENDAR_LOCALE`` settings is not required anymore. \n\nNote that only month names and weekday names are translated for all languages supported by django.\nSome django-happenings specific strings are only available in English (like \"When/Description\" in\nevent details). You can generate your own translations (pull requests are welcome) or you may copy\nand change templates.\n\n\nTests\n-------------\n\n``Tox`` is used for testing.\n\n``$ pip install tox``\n\n``$ tox -e py27-django18``\n\nMore To Come!\n-------------\n\n.. |travis| image:: https://travis-ci.com/imposeren/django-happenings.svg?branch=master\n :alt: Build Status - master branch\n :target: https://travis-ci.com/imposeren/django-happenings\n.. |coverage| image:: https://coveralls.io/repos/github/imposeren/django-happenings/badge.svg?branch=master\n :alt: Coverage Status\n :target: https://coveralls.io/github/imposeren/django-happenings?branch=master\n.. |version| image:: https://badge.fury.io/gh/imposeren%2Fdjango-happenings.svg\n :alt: Pypi Version\n :target: https://badge.fury.io/gh/imposeren%2Fdjango-happenings\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/imposeren/django-happenings", "keywords": "", "license": "BSD License", "maintainer": "", "maintainer_email": "", "name": "django-happenings-update", "package_url": "https://pypi.org/project/django-happenings-update/", "platform": "", "project_url": "https://pypi.org/project/django-happenings-update/", "project_urls": { "Homepage": "https://github.com/imposeren/django-happenings" }, "release_url": "https://pypi.org/project/django-happenings-update/0.4.4/", "requires_dist": [ "django (>=1.11)", "pytz", "six (<2.0,>=1.9)" ], "requires_python": "", "summary": "A simple event calendar app for Django.", "version": "0.4.4" }, "last_serial": 3966509, "releases": { "0.4.1": [ { "comment_text": "", "digests": { "md5": "1238057ea2a191ce5357e3e3ef8d467e", "sha256": "f3cf7b0fc4889ede6763549c11d87fd95f3e6ff0bace55c655288fe964d82bc3" }, "downloads": -1, "filename": "django_happenings_update-0.4.1-py2-none-any.whl", "has_sig": false, "md5_digest": "1238057ea2a191ce5357e3e3ef8d467e", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 55293, "upload_time": "2018-05-26T17:36:16", "url": "https://files.pythonhosted.org/packages/a9/e1/7ebb29fbcd24c82a18df23ab76b1cba892ed2ecddd56396f7fd147635d43/django_happenings_update-0.4.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8b65e363677470c0c120a460b97a4a89", "sha256": "50f07b7b65fc9be3d2c1c0d1abcc96bad87898eecba6e16bd06ef2efdf5c9a92" }, "downloads": -1, "filename": "django_happenings_update-0.4.1-py3-none-any.whl", "has_sig": false, "md5_digest": "8b65e363677470c0c120a460b97a4a89", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 55294, "upload_time": "2018-05-26T17:33:48", "url": "https://files.pythonhosted.org/packages/36/63/b35923e42d1baf167b80a49e568108fed0774f7cfed10381453e771ce192/django_happenings_update-0.4.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "85f7ebf72005b2b5a1b639d386808461", "sha256": "95d8afd909e2d57780eccf0a72ba6c19f445eb7793d39211a802a1de59e7108b" }, "downloads": -1, "filename": "django-happenings-update-0.4.1.tar.gz", "has_sig": false, "md5_digest": "85f7ebf72005b2b5a1b639d386808461", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 43020, "upload_time": "2018-05-26T17:33:50", "url": "https://files.pythonhosted.org/packages/b6/1e/889c268b5c2cd80baa34aea3aa6d8907725f23412af73758d207571aeb19/django-happenings-update-0.4.1.tar.gz" } ], "0.4.4": [ { "comment_text": "", "digests": { "md5": "718fec3268419878c48bb7f632868c6f", "sha256": "dcac0f6d7e966dd49d9951103c1b5432588a375dc3e65dc4a8a40e0b5b8c79cc" }, "downloads": -1, "filename": "django_happenings_update-0.4.4-py2-none-any.whl", "has_sig": false, "md5_digest": "718fec3268419878c48bb7f632868c6f", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 50218, "upload_time": "2018-06-16T00:31:13", "url": "https://files.pythonhosted.org/packages/82/b8/ae5083b2d38c969a1e5de34ab39a285a92422a50eb661a123a233f379c9e/django_happenings_update-0.4.4-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "699f179281a44dc6ea0194dce733b3d7", "sha256": "36f228d5c22fb5fbbbf51a9631d8ebb5a6a1da0e51f14cd0482726176a4042f3" }, "downloads": -1, "filename": "django_happenings_update-0.4.4-py3-none-any.whl", "has_sig": false, "md5_digest": "699f179281a44dc6ea0194dce733b3d7", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 55540, "upload_time": "2018-06-16T00:31:15", "url": "https://files.pythonhosted.org/packages/59/55/a9780ee05ca439628184c1af74c7b2a844a3a343d212e1bbd2b4829718b9/django_happenings_update-0.4.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1627f43e746e91917195b73dc4ac13ca", "sha256": "e5716cf0fb1736b63389faf430a0b0fdc3665be230f399ecbbccf7cd81e4bbfe" }, "downloads": -1, "filename": "django-happenings-update-0.4.4.tar.gz", "has_sig": false, "md5_digest": "1627f43e746e91917195b73dc4ac13ca", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 43402, "upload_time": "2018-06-16T00:31:16", "url": "https://files.pythonhosted.org/packages/b6/8d/3914f06dd9e29af099033d9cd7d994226695fddb7093029a02675ea91270/django-happenings-update-0.4.4.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "718fec3268419878c48bb7f632868c6f", "sha256": "dcac0f6d7e966dd49d9951103c1b5432588a375dc3e65dc4a8a40e0b5b8c79cc" }, "downloads": -1, "filename": "django_happenings_update-0.4.4-py2-none-any.whl", "has_sig": false, "md5_digest": "718fec3268419878c48bb7f632868c6f", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 50218, "upload_time": "2018-06-16T00:31:13", "url": "https://files.pythonhosted.org/packages/82/b8/ae5083b2d38c969a1e5de34ab39a285a92422a50eb661a123a233f379c9e/django_happenings_update-0.4.4-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "699f179281a44dc6ea0194dce733b3d7", "sha256": "36f228d5c22fb5fbbbf51a9631d8ebb5a6a1da0e51f14cd0482726176a4042f3" }, "downloads": -1, "filename": "django_happenings_update-0.4.4-py3-none-any.whl", "has_sig": false, "md5_digest": "699f179281a44dc6ea0194dce733b3d7", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 55540, "upload_time": "2018-06-16T00:31:15", "url": "https://files.pythonhosted.org/packages/59/55/a9780ee05ca439628184c1af74c7b2a844a3a343d212e1bbd2b4829718b9/django_happenings_update-0.4.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1627f43e746e91917195b73dc4ac13ca", "sha256": "e5716cf0fb1736b63389faf430a0b0fdc3665be230f399ecbbccf7cd81e4bbfe" }, "downloads": -1, "filename": "django-happenings-update-0.4.4.tar.gz", "has_sig": false, "md5_digest": "1627f43e746e91917195b73dc4ac13ca", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 43402, "upload_time": "2018-06-16T00:31:16", "url": "https://files.pythonhosted.org/packages/b6/8d/3914f06dd9e29af099033d9cd7d994226695fddb7093029a02675ea91270/django-happenings-update-0.4.4.tar.gz" } ] }