summaryrefslogtreecommitdiff
path: root/public/views.py
AgeCommit message (Collapse)Author
2013-12-14Fix some caching issues on the front pageDan McGee
The return value from get_recent_updates() was too big for memcached due to all the attached objects, so the cache never actually worked. This sucks, because we ended up doing all the work in this function and most of the time we didn't use it because template fragment caching kicked in. Remove the cache_function decorator from this method, and instead implement delayed calling of the function so we don't compute values we aren't going to use. Template fragment caching will help us in most cases. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-09-30Proper support for revoked signaturesDan McGee
The 'valid' column wasn't quite right. Add a new 'revoked' column that works similar to the one we have on keys and use it instead, properly parsing the output from `gpg` signature data and looking for the magic prefix string. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-06-01Ensure only active mirror URLs are listedDan McGee
This fixes things up on the download page as well as the individual mirror details page. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-04-16Various minor code cleanups and fixesrelease_2013-04-16Dan McGee
Most of these were suggested by PyCharm, and include everything from little syntax issues and other bad smells to dead or bad code. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-01-19Don't redefine mirror_url function every callDan McGee
If we pull this out and define it at the top level once, we save the interpreter a fair amount of work. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-01-18Don't pull and sort mirror URLs unless we have toDan McGee
On the download page, the explicit sorted() call was forcing evaluation of the Django queryset, even if we never actually needed the results because the template fragment was cached. Wrap it all in a callable function which looks the same to the template, but saves us the cost of evaluation every single page view. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-01-14Drop country column from mirror tableDan McGee
We now always look for this information at the URL level, not the mirror level. This simplifies quite a bit of code in and around the mirror views. Signed-off-by: Dan McGee <dan@archlinux.org>
2013-01-13Use content_type and not mimetype on HttpResponse()Dan McGee
Bug #16519 in Django deprecates mimetype, so update our code accordingly. Signed-off-by: Dan McGee <dan@archlinux.org>
2012-12-27Fix master key signing total countsDan McGee
Commit 4c69911982 had an inadvertent side effect here; we need to explicitly disable ordering for the annotate() to work correctly. Signed-off-by: Dan McGee <dan@archlinux.org>
2012-11-20Add Release model to relengDan McGee
This should prevent the need for monthly template updates from Pierre and Thomas; best to just let them enter the data themselves and have it show up on the website. Signed-off-by: Dan McGee <dan@archlinux.org>
2012-11-16Use Python 2.7 dictionary comprehension syntaxDan McGee
Rather than the old idiom of dict((k, v) for <> in <>). Signed-off-by: Dan McGee <dan@archlinux.org>
2012-11-13Move JSON keys view to public/ appDan McGee
This seems like a more appropriate place, and now the visualization is done here anyway so we should move the data backing it. Signed-off-by: Dan McGee <dan@archlinux.org>
2012-09-25Only show staging feeds to logged-in usersDan McGee
This doesn't prevent unauthenticated users from accessing the feeds, but it should reduce clutter and confusion on the feeds index page for users unlikely to need these feeds. Signed-off-by: Dan McGee <dan@archlinux.org>
2012-09-25Add structured data to developer listing pagesDan McGee
Signed-off-by: Dan McGee <dan@archlinux.org>
2012-07-31PGP key handling updatesDan McGee
* Import signatures for all known keys, not just active developers * Ensure we are only showing and accounting for active developers on the master keys page * Add a new table showing signatures between developers Signed-off-by: Dan McGee <dan@archlinux.org>
2012-07-31Update several bits and pieces for staging packagesDan McGee
This will prevent [staging] packages from cluttering normal user's view on the website, but allow us to still import everything from this repository for developer use. Signed-off-by: Dan McGee <dan@archlinux.org>
2012-07-24Replace deprecated direct_to_template() with render() shortcutDan McGee
Now that Django actually provides a concise way to use a RequestContext object without instantiating it, we can use that rather than the old function-based generic view that worked well to do the same. Additionally, these function-based generic views will be gone in Django 1.5, so might as well make the move now. Signed-off-by: Dan McGee <dan@archlinux.org>
2012-04-25Finish django countries implementationDan McGee
* Add a migration to drop the old countries field. * Update all templates/views/utility methods to point at the new country field and dereference it as necessary. * Add the flags images to a few views where it makes sense. * Cleanup the download page layout quite a bit. * Bump the mirror status JSON version to 3; add country_code attribute. Signed-off-by: Dan McGee <dan@archlinux.org>
2012-04-25Rename mirror country fields to country_old in prep for normalizationDan McGee
We're going to move to using ISO 2 character codes via django countries, so start by moving the old data out of the way first. Signed-off-by: Dan McGee <dan@archlinux.org>
2012-03-29Add developer status table to master keys pageDan McGee
This shows the cross-product of each master key with each developer key so you can see who has been signed, where signatures are missing, etc. Signed-off-by: Dan McGee <dan@archlinux.org>
2012-03-21Add number of keys signed to master keys pageDan McGee
This really just makes me look bad, but an interesting fact none the less for people to look at. Signed-off-by: Dan McGee <dan@archlinux.org>
2012-03-09Ensure users only show up once on the Fellows pageDan McGee
If a user was in both Developer and TU groups, they would show up twice. Signed-off-by: Dan McGee <dan@archlinux.org>
2012-01-03Add a few cache headers and minor feed caching back inDan McGee
Now that we aren't using the middleware, add cache headers on our primary pages so we can prevent some repeat traffic, and cache all feeds for five minutes. Signed-off-by: Dan McGee <dan@archlinux.org>
2011-12-11PyLint suggested cleanupsDan McGee
Signed-off-by: Dan McGee <dan@archlinux.org>
2011-12-05download: add a link to the new netboot environmentThomas Bächler
Signed-off-by: Dan McGee <dan@archlinux.org>
2011-11-30Master keys: reduce query count, add default orderingrelease_2011-11-30Dan McGee
Signed-off-by: Dan McGee <dan@archlinux.org>
2011-11-30Add master key overview pageDan McGee
And a bunch of text that may suck, but is better than nothing. Signed-off-by: Dan McGee <dan@archlinux.org>
2011-11-21Better support for non-latin full namesrelease_2011-11-21Dan McGee
Add a 'latin_name' field to the user profile so we can better support those developers with names in non-Latin scripts, and yet still show a Latin name as necessary on the developer profile page. This field only shows up if populated. Also, use consistent sorting everywhere- rather than using username, always use first_name and last_name fields. Signed-off-by: Dan McGee <dan@archlinux.org>
2011-10-11Pylint suggested and other cleanupsDan McGee
Signed-off-by: Dan McGee <dan@archlinux.org>
2011-08-19download: add link to the ISO snapshotsThomas Bächler
Dan: use relative links if possible, use releng link from settings, fix HTML closing tags. Signed-off-by: Dan McGee <dan@archlinux.org>
2011-08-16News frontpage layout changesOlivier Keun
Signed-off-by: Dan McGee <dan@archlinux.org>
2011-02-27Slight refactor of user list viewsDan McGee
Signed-off-by: Dan McGee <dan@archlinux.org>
2011-02-27Screen Fellows based on group membership as wellDan McGee
Signed-off-by: Dan McGee <dan@archlinux.org>
2010-10-04Make user profile a OneToOneFieldrelease_2010-10-05Dan McGee
We had this set up as a unique ForeignKey before, which adds some indirection due to the RelatedManager object being there. By making it a OneToOneField, we can get the profile object directly, enforce uniqueness, and also use it in select_related() calls to make our profiles page a bit more efficient. Signed-off-by: Dan McGee <dan@archlinux.org>
2010-10-04Switch another query to use is_downloadDan McGee
Signed-off-by: Dan McGee <dan@archlinux.org>
2010-10-04Add some select_related() magicDan McGee
Made obvious when poking around with the Django debug toolbar. Signed-off-by: Dan McGee <dan@archlinux.org>
2010-10-01Allow donors to be invisiblerelease_2010-10-01Dan McGee
Signed-off-by: Dan McGee <dan@archlinux.org>
2010-09-08Move news model to an appropriate placeDan McGee
Never would have guessed it should actually be in news/models.py. Signed-off-by: Dan McGee <dan@archlinux.org>
2010-09-06Move mirror models out of main appDan McGee
South actually makes this relatively painless if you get everything right, so might as well start getting these out of the legacy main application to eventually eliminate models being separate from their views. Signed-off-by: Dan McGee <dan@archlinux.org>
2010-09-03Use direct_to_template in public viewsDan McGee
Saves the hassle of needing to wrap everything in RequestContext() manually. Signed-off-by: Dan McGee <dan@archlinux.org>
2010-08-28PyLint suggested cleanupsDan McGee
We had a bunch of extra imports, non-conventional variable names, spacing issues, etc. that were relatively low-hanging fruit to clean up. Fix them and make the code a bit cleaner in the process. Signed-off-by: Dan McGee <dan@archlinux.org>
2010-08-27Add missing RequestContext in feeds viewDan McGee
Signed-off-by: Dan McGee <dan@archlinux.org>
2010-05-26Highlight 'Packages' in navbar when browsing packagesrelease_2010-05-26Dan McGee
Get this working by doing some class business with CSS in order to highlight the correct tab. I had to add some stuff to a variety of pages but it should be working correctly now. Addresses FS#19591. Signed-off-by: Dan McGee <dan@archlinux.org>
2010-05-17Make group membership use Django groupsDan McGee
Rather than our home-baked roles field, which is free text so we really shouldn't be checking against anyway. It also prevents people from being both a developer and a TU. Signed-off-by: Dan McGee <dan@archlinux.org>
2010-05-17Donor page rework for list formattingDan McGee
Instead of doing slicing and ugly table-based layout, move to a CSS-based organization of the donor list. Shoot for 4 columns but should degrade gracefully to fewer, and will look just fine with no CSS at all (one big tall list). Signed-off-by: Dan McGee <dan@archlinux.org>
2010-05-16Ensure protocol order is stable on download pageDan McGee
Sometimes http was first, other times ftp was first. Add an order by clause to ensure it is the same for all mirrors. Signed-off-by: Dan McGee <dan@archlinux.org>
2010-04-18Remove Arch-Based ProjectsDan McGee
Add a link to the wiki instead. Also remove ExternalProject model and associated dealings. Signed-off-by: Dan McGee <dan@archlinux.org>
2010-04-18Remove International CommunitiesDan McGee
Add link to wiki instead. Also remove AltForum model and associated dealings. Signed-off-by: Dan McGee <dan@archlinux.org>
2010-02-10Remove archweb prefix from all importsDan McGee
Unnecessary, and lets us standardize on not using it everywhere. Signed-off-by: Dan McGee <dan@archlinux.org>
2010-02-05Make recent updates group multiple architecturesDan McGee
It isn't the most elegant operation in the world, but attempt to only show one line per package, grouping by architecture if multiple were updated in the same go. This makes the recent packages view a bit more useful as a heads up view. Implements FS#17304. Signed-off-by: Dan McGee <dan@archlinux.org>