summaryrefslogtreecommitdiff
path: root/main/models.py
AgeCommit message (Collapse)Author
2011-06-15Remove unused flagged() manager methodDan McGee
Signed-off-by: Dan McGee <dan@archlinux.org>
2011-06-15Refactor common select_related into manager methodDan McGee
For a Package object query, we almost always did .select_related('arch', 'repo). Refactor this into the manager as a 'normal()' method so we can avoid sprinkling the same logic everywhere. Signed-off-by: Dan McGee <dan@archlinux.org>
2011-06-15PositiveBigIntegerField: set get_internal_type() correctlyDan McGee
This is a key for Django to return the DB type that matches this value. Since we are basically just ripping off a BigIntegerField, we can use the database types for it. This makes my prior checked in migrations actually work on MySQL. Signed-off-by: Dan McGee <dan@archlinux.org>
2011-06-14Mark several package columns as non-NULLDan McGee
These have been around for a long time now so they don't need to be NULL-able anymore. We can also add a custom field type for our numbers to at least get a check constraint at the Django level. Signed-off-by: Dan McGee <dan@archlinux.org>
2011-06-02Add a PGP key field on the dev profileDan McGee
Signed-off-by: Dan McGee <dan@archlinux.org>
2011-05-09Ensure required by works for arch-agnostic packagesDan McGee
We weren't showing required by entries for arch-specific packages that depended on arch-agnostic ones. Make the check a bit less specific for arch-agnostic packages similar to what we do for dependencies. Fixes FS#24184. Signed-off-by: Dan McGee <dan@archlinux.org>
2011-04-18Reimplement links code as template tagsDan McGee
These were starting to get a bit too much inside the model itself, and they don't really belong there as they are view layer concerns anyway. Signed-off-by: Dan McGee <dan@archlinux.org>
2011-04-18Add a "Report a Bug" linkDan McGee
We need Flyspray category data to make this more useful, and we can prefill the Subject and Category fields (along with putting it on the right project). Implements FS#23751. Signed-off-by: Dan McGee <dan@archlinux.org>
2011-04-07Utilize Django 1.3 'on_delete' feature on several foreign keysDan McGee
The most important one here is PROTECT to keep people from making bone-headed plays and deleting an Arch or Repo and every package along with it. We can use this in a few other places, as well as some carefully placed SET_NULL indicators. Note that nothing here pushes deletion responsibilities down to the database, although that will probably happen in a future commit. Signed-off-by: Dan McGee <dan@archlinux.org>
2011-04-07Consolidate caching black magicDan McGee
Get the stuff used to retrieve and refresh the latest date values all in the same place, and make it a bit more beautiful by refactoring it all into a common set of methods. Signed-off-by: Dan McGee <dan@archlinux.org>
2011-04-07Use UTC datetime objects everywhereDan McGee
Rather than the twisted mix of local times and UTC times we currently have. Signed-off-by: Dan McGee <dan@archlinux.org>
2011-03-22Fix potential logic bug in requiredby filteringDan McGee
Signed-off-by: Dan McGee <dan@archlinux.org>
2011-03-22Add 'staging' field to Repo modelDan McGee
First steps towards implementing FS#23298. Signed-off-by: Dan McGee <dan@archlinux.org>
2011-03-22Add index to todo list date addedDan McGee
Signed-off-by: Dan McGee <dan@archlinux.org>
2011-03-15Check in actual models update for DateTime migrationDan McGee
Signed-off-by: Dan McGee <dan@archlinux.org>
2011-03-13Show epoch in package version if != 0Dan McGee
Add a full_version property method to our package object that does the version formatting, and switch all templates displaying package versions over to this new method. Signed-off-by: Dan McGee <dan@archlinux.org>
2011-03-13Add package epoch supportDan McGee
This comes with pacman 3.5, replacing the old "force" PKGBUILD option. We parse it and store it for now, but don't display it anywhere just yet. Also update a few queries relying on version differences in any of the multiple parts. Signed-off-by: Dan McGee <dan@archlinux.org>
2011-02-22Use new split package file fields everywhereDan McGee
Signed-off-by: Dan McGee <dan@archlinux.org>
2011-02-22Add new file and directory parts to package filesDan McGee
Signed-off-by: Dan McGee <dan@archlinux.org>
2011-02-19Unify calls to applicable_arches()Dan McGee
Invoke the function everywhere it is used rather than passing a callable. Signed-off-by: Dan McGee <dan@archlinux.org>
2011-02-16Allow for optional info in required by displayDan McGee
We need to make our root object the PackageDepend rather than the Package to get at this, so do a slight refactor on get_requiredby(). Signed-off-by: Dan McGee <dan@archlinux.org>
2011-02-16Read in optional deps and show in web interfaceDan McGee
Signed-off-by: Dan McGee <dan@archlinux.org>
2011-02-15Move license to a related modelDan McGee
This allows us to store multiple licenses per package in a more elegant fashion, and will later allow us to search and filter on this information. Signed-off-by: Dan McGee <dan@archlinux.org>
2011-02-15Allow optional deps in depends modelDan McGee
Signed-off-by: Dan McGee <dan@archlinux.org>
2011-02-15Clean up Package related objects codeDan McGee
Main change is just to move groups from the default packagegroup_set location to a related_name of groups. Also refer to the Package class directly rather than by text string if we have it available. Signed-off-by: Dan McGee <dan@archlinux.org>
2011-01-08Use common timezones onlyDan McGee
No need to show historical and deprecated zone names. Signed-off-by: Dan McGee <dan@archlinux.org>
2011-01-08Merge branch 'dev-timezones'Dan McGee
2011-01-08Remove automatic ID column definitionsDan McGee
Signed-off-by: Dan McGee <dan@archlinux.org>
2011-01-08Add time zone field to developer profileDan McGee
This will be used by the developer world clock page soon to come. Default everyone to "UTC" for now. Signed-off-by: Dan McGee <dan@archlinux.org>
2010-12-14Get rid of all references to repos.archlinux.orgThomas Bächler
The packages/community repositories can now be viewed via cgit. Point links to cgit instead of websvn, as websvn is buggy and nobody wants to maintain it. This allows us to get rid of websvn entirely. Signed-off-by: Dan McGee <dan@archlinux.org>
2010-12-07Slim down required by listingsDan McGee
If we have testing/non-testing packages in this list, and we are looking at a package that is in both testing and non-testing, we can show only the packages that correspond with the relevant repo. I'm not sure any explanation will make this easier to understand, but the end result is we don't show a bunch of duplicates where we used to. Signed-off-by: Dan McGee <dan@archlinux.org>
2010-12-07Save DB query when filtering dependencies for testingDan McGee
Signed-off-by: Dan McGee <dan@archlinux.org>
2010-12-07Move some common package code to a functionDan McGee
We do this determination of 'applicable arches' a few times, so move it to a method on the package object and also clean things up so items aren't duplicated in the list. Signed-off-by: Dan McGee <dan@archlinux.org>
2010-11-27Add less-than methods for Repo and ArchDan McGee
These are the methods guaranteed to be used by the python sort functions; define them so we can simplify sorting code elsewhere as needed. Signed-off-by: Dan McGee <dan@archlinux.org>
2010-10-19Unify hyphenation of out-of-date textDan McGee
Signed-off-by: Dan McGee <dan@archlinux.org>
2010-10-13Connect post_save signals where they will always be triggeredDan McGee
We need to do this in the models.py files, otherwise the post_save signal might not be connected right away on launch of the application. Move them over there, add a dispatch_uid so it only gets hooked up once, and do some other function moving around so we don't have circular imports. Signed-off-by: Dan McGee <dan@archlinux.org>
2010-10-05Adding changing of user profile detailsAngel Velasquez
The idea of this patch is allow to the developers who have an account, to change their data without asking some admin to do it for them. Dan: put private email address field back as it is used for a different purpose; add some help text and field names as appropriate. Signed-off-by: Angel Velasquez <angvp@archlinux.org> 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-04Todo list minor fixes and comments for laterDan McGee
When we show the edit todo list page, use a sorted list retrieved straight from the database instead of a unordered set() we create at the application level. Also add some comments for potential later improvements on transaction boundaries and async emailing. 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-22Update BBS and bugs links to use HTTPSDan McGee
Since we only do HTTPS now on these services, no point in sending someone through a useless redirect. Signed-off-by: Dan McGee <dan@archlinux.org>
2010-09-16Remove some leftover print statementsDan McGee
Signed-off-by: Dan McGee <dan@archlinux.org>
2010-09-08Use arch.agnostic flag everywhereDan McGee
Signed-off-by: Dan McGee <dan@archlinux.org>
2010-09-08Add metadata to Arch tableDan McGee
Add a column flagging whether this architecture is agnostic (e.g. 'any') or not. This will remove the hardcoded name checks we have all over the place and replace it with a boolean. 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-06Remove unnecessary commentsDan McGee
Signed-off-by: Dan McGee <dan@archlinux.org>
2010-09-03Add ability to get versions of a package elsewhereDan McGee
E.g. if we are looking at one version for a particular architecture, I want to see all versions for all architectures in all repositories. 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-25Use new repository fields in link generation coderelease_2010-08-25Dan McGee
We can rip out a lot of the code for SVN and bugs links now that this data is pulled off the model instead. Signed-off-by: Dan McGee <dan@archlinux.org>