{ "info": { "author": "Ilan Steemers", "author_email": "koed00@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Web Environment", "Framework :: Django", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Topic :: Internet :: WWW/HTTP", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "Django WhosHere\r\n========================\r\n\r\nA lightweight Django Admin plugin showing who's logged in from where\r\nusing the cache. Supports `Telize `__,\r\n`django-ipware `__,\r\n`user-agents `__ and\r\n`GeoIP `__\r\n\r\nRequirements\r\n------------\r\n\r\n- `Django `__ >= 1.7\r\n- `requests `__\r\n\r\nOptional\r\n^^^^^^^^\r\n\r\n- `user-agents `__ Adds\r\n nicer user agent formatting\r\n- `django-ipware `__ More\r\n robust way of determining a users IP\r\n- `GeoIP `__\r\n For geolocation instead of `Telize `__.\r\n\r\nInstallation\r\n------------\r\n\r\n- Make sure you have Django's\r\n `Cache `__\r\n backend set up.\r\n- Install using pip: ``pip install django-whoshere``\r\n- Add ``django_whoshere`` to ``INSTALLED_APPS`` in settings.py:\r\n\r\n .. code:: python\r\n\r\n INSTALLED_APPS = (\r\n # other apps\r\n 'django_whoshere',\r\n )\r\n\r\n- Add ``django_whoshere.middelware.TrackMiddleware`` to your\r\n ``MIDDLEWARE_CLASSES``. Make sure it comes after your Authentication\r\n middleware.\r\n\r\n.. code:: python\r\n\r\n MIDDLEWARE_CLASSES = (\r\n # other middleware\r\n 'django.contrib.auth.middleware.AuthenticationMiddleware',\r\n 'django.contrib.auth.middleware.SessionAuthenticationMiddleware',\r\n 'django_whoshere.middleware.TrackMiddleware',\r\n # more middleware\r\n )\r\n\r\nOptional\r\n^^^^^^^^\r\n\r\n- Install\r\n `user-agents `__ for\r\n nicer user agent formatting\r\n- Install `django-ipware `__\r\n for a better way to determine real ip addresses.\r\n- Configure\r\n `GeoIP `__\r\n or install\r\n `django-geoip-utils `__\r\n for geo location instead of `Telize `__.\r\n\r\nConfiguration\r\n-------------\r\n\r\nNo configuration is needed but these settings are provided for\r\nconvenience:\r\n\r\n- ``WHOSHERE_TIMEOUT = 300`` Sets the timeout for user activity.\r\n Defaults to 300 seconds.\r\n- ``WHOSHERE_LABEL = 'Active Users'`` Overrides the admin link label.\r\n Defaults to 'Active Users'\r\n- ``WHOSHERE_PREFIX = 'whoshere'`` Prefix used in cache keys. Defaults\r\n to 'whoshere'.\r\n- ``WHOSHERE_TELIZE = True`` You can set this to 'False' to turn off\r\n geolocation lookups with `Telize `__. Is\r\n always off if GeoIp is installed.\r\n\r\nTemplate tags\r\n-------------\r\n\r\nBesides the admin interface, WhosHere's functions are also available as\r\ntemplate tags: \r\n\r\n.. code:: html+django\r\n\r\n {% load whoshere %}\r\n \r\n There are now {% active_user_count %} users logged in.\r\n \r\n {% active_users as users %}\r\n
    \r\n {% for user in users %}\r\n
  • {{ user.username }} ({{ user.email }})
  • \r\n {% endfor %}\r\n
\r\n \r\n

Your IP address is {% your_ip %}

\r\n

Your browser and platform is {% your_agent %}

\r\n

You live in {% your_city %}, {% your_country %}

\r\n\r\n\r\nGeolocation\r\n-----------\r\n\r\nOriginally this plugin started with GeoIP support only, but this means\r\nyou have to install the rather large database that it comes with. Not a\r\nproblem if you already use it for other things, but not a lightweight\r\nsolution if you only use it for WhosHere. As an alternative WhosHere\r\nuses the free `Telize `__ API over HTTPS by\r\ndefault to find the location of your logged in users. This comes with\r\nsome caveats:\r\n\r\n- The `Telize `__ API is\r\n `opensource `__, but you are\r\n sending users IP addresses, albeit anonymously, to a third party.\r\n- Being a free API it can sometimes be unavailable or slow\r\n- Your server needs HTTPS access to a remote location\r\n\r\nYou can turn off Telize lookups with ``WHOSHERE_TELIZE = False`` in\r\nyour ``settings.py`` or by installing and configuring GeoIP.\r\n\r\nNotes\r\n-----\r\n\r\n- Middleware is kept as small as possible and only adds IP and User\r\n Agent to the cache for the current logged in user.\r\n- No database tables are used. Instead WhosHere uses a proxy model of\r\n the User model.\r\n- Proxy models will create migrations but do not affect your database\r\n- Telize lookups are cached for performance\r\n- Using the excellent requests library for better SSL support\r\n\r\nTodo\r\n----\r\n\r\n- Add tests\r\n- Think of other things to add", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/koed00/django-whoshere", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "django-whoshere", "package_url": "https://pypi.org/project/django-whoshere/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/django-whoshere/", "project_urls": { "Homepage": "https://github.com/koed00/django-whoshere" }, "release_url": "https://pypi.org/project/django-whoshere/0.1.6.2/", "requires_dist": null, "requires_python": null, "summary": "Lightweight Django Admin plugin to see who is logged in and active. Supports Telize.com, GeoIp , user-agents and django-ipware.", "version": "0.1.6.2" }, "last_serial": 1615331, "releases": { "0.1.0": [], "0.1.1": [ { "comment_text": "", "digests": { "md5": "d036ebdc92d74cfeac266ca2b6665d4e", "sha256": "6f5236061e70cfb4628d9b51daa64c252134a7a6b18e790b0468f26f01d3c99f" }, "downloads": -1, "filename": "django-whoshere-0.1.1.tar.gz", "has_sig": false, "md5_digest": "d036ebdc92d74cfeac266ca2b6665d4e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5329, "upload_time": "2015-05-11T13:21:15", "url": "https://files.pythonhosted.org/packages/12/b1/fb1b885a7ba90b78ae78eb3b4e6d7e57975d414648007a133781e9d72218/django-whoshere-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "428f940cfe84445d8ba034a87969b90e", "sha256": "63620d10785e28a0f6822615a28667496f9fdb3a63216cdba0bcc0f168060b4f" }, "downloads": -1, "filename": "django-whoshere-0.1.2.tar.gz", "has_sig": false, "md5_digest": "428f940cfe84445d8ba034a87969b90e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5451, "upload_time": "2015-05-11T14:58:58", "url": "https://files.pythonhosted.org/packages/b3/d2/7daa3eb4b2c3e8dc1dadd364c43c950f80fd12ae5f4767f2d9d6cb97f30e/django-whoshere-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "5b6891c7e6f3e4e031357dc857146b40", "sha256": "eb6887ebdd2132ce922dd738c17c97979bde857d6e95e822726172101f6033e1" }, "downloads": -1, "filename": "django-whoshere-0.1.3.tar.gz", "has_sig": false, "md5_digest": "5b6891c7e6f3e4e031357dc857146b40", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6301, "upload_time": "2015-05-12T11:47:49", "url": "https://files.pythonhosted.org/packages/ee/40/397cb4d05af7dc7990a06aebbfe5aa67aeffd5cb789a65261281fc43fdcd/django-whoshere-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "2bfc7d5ad81532f863d9ae8a4e17af64", "sha256": "05f98f142975e49aa82e6fa8cbf224da19154c8798edf76abe185b31ebf6f2df" }, "downloads": -1, "filename": "django-whoshere-0.1.4.tar.gz", "has_sig": false, "md5_digest": "2bfc7d5ad81532f863d9ae8a4e17af64", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6715, "upload_time": "2015-05-13T12:53:43", "url": "https://files.pythonhosted.org/packages/9b/a7/8c44c737ecbafb3f45251302f675d29c0ff9df4f5ead5a4844b361984b4d/django-whoshere-0.1.4.tar.gz" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "fadeb2646c971ede37d02168b925e0bc", "sha256": "3603dfe8a3c9819b12de3c45f20ef86e285db7d9046082490a11f6cb7024d374" }, "downloads": -1, "filename": "django-whoshere-0.1.5.tar.gz", "has_sig": false, "md5_digest": "fadeb2646c971ede37d02168b925e0bc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7544, "upload_time": "2015-05-15T12:03:11", "url": "https://files.pythonhosted.org/packages/07/23/d414971a74e514acdf6781fb124ef92babfa2a359a15e93121d604126ad5/django-whoshere-0.1.5.tar.gz" } ], "0.1.6": [ { "comment_text": "", "digests": { "md5": "ebdcc0a682a0111a75dc4c3aab53b8cc", "sha256": "fe32a70a53b356ec9f22fb5d5faa2c7feef2ef0054bd1b6a0d0636684e93897b" }, "downloads": -1, "filename": "django-whoshere-0.1.6.tar.gz", "has_sig": false, "md5_digest": "ebdcc0a682a0111a75dc4c3aab53b8cc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10396, "upload_time": "2015-05-20T12:15:30", "url": "https://files.pythonhosted.org/packages/da/d3/c89ed6e6ae1fc0fee12098d961e2d057c55cb41fe93bb5763664ca5451a9/django-whoshere-0.1.6.tar.gz" } ], "0.1.6.1": [ { "comment_text": "", "digests": { "md5": "2608c387f43ec198c7e57370364ad404", "sha256": "010a7f387122dd8afd7ffdde833bcbe2c703cdfde8c392845c438164512e3140" }, "downloads": -1, "filename": "django-whoshere-0.1.6.1.tar.gz", "has_sig": false, "md5_digest": "2608c387f43ec198c7e57370364ad404", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8685, "upload_time": "2015-05-22T15:44:37", "url": "https://files.pythonhosted.org/packages/0a/42/dd40cecf608207c948e64239c7776a5a211a87bb96a41de559f8748bc1c1/django-whoshere-0.1.6.1.tar.gz" } ], "0.1.6.2": [ { "comment_text": "", "digests": { "md5": "7803c95542410958e969824142f107e8", "sha256": "9d9587c29ecb9557776455bc2dcae3b5785927d1a045c7986026d876b13fc3fc" }, "downloads": -1, "filename": "django-whoshere-0.1.6.2.tar.gz", "has_sig": false, "md5_digest": "7803c95542410958e969824142f107e8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8716, "upload_time": "2015-06-01T11:29:55", "url": "https://files.pythonhosted.org/packages/97/dc/4d61ce6509ed9ed21aea2b03ce4006b5d711fa689ce9ded4349bc702176e/django-whoshere-0.1.6.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "7803c95542410958e969824142f107e8", "sha256": "9d9587c29ecb9557776455bc2dcae3b5785927d1a045c7986026d876b13fc3fc" }, "downloads": -1, "filename": "django-whoshere-0.1.6.2.tar.gz", "has_sig": false, "md5_digest": "7803c95542410958e969824142f107e8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8716, "upload_time": "2015-06-01T11:29:55", "url": "https://files.pythonhosted.org/packages/97/dc/4d61ce6509ed9ed21aea2b03ce4006b5d711fa689ce9ded4349bc702176e/django-whoshere-0.1.6.2.tar.gz" } ] }