2010-03-01 16:55:09 -08:00
from main . models import Arch , Donor , MirrorUrl , News
2010-03-01 17:04:41 -08:00
from main . models import Package , Repo
2010-02-04 18:44:46 -08:00
from . import utils
from django . contrib . auth . models import User
2009-10-30 11:56:21 -07:00
from django . db . models import Q
from django . shortcuts import render_to_response
2009-10-30 13:32:25 -07:00
from django . template import RequestContext
2009-10-30 11:56:21 -07:00
from django . views . generic import list_detail
2009-10-30 13:32:25 -07:00
2009-10-30 11:56:21 -07:00
def index ( request ) :
2010-02-04 18:44:46 -08:00
pkgs = utils . get_recent_updates ( )
2009-10-30 13:32:25 -07:00
context = {
2009-10-31 09:12:03 -07:00
' news_updates ' : News . objects . order_by ( ' -postdate ' , ' -id ' ) [ : 10 ] ,
2010-02-04 18:44:46 -08:00
' pkg_updates ' : pkgs ,
2009-10-30 13:32:25 -07:00
}
2009-10-30 14:08:37 -07:00
return render_to_response ( ' public/index.html ' , context ,
context_instance = RequestContext ( request ) )
2010-01-31 20:55:49 -08:00
def userlist ( request , type = ' Developers ' ) :
users = User . objects . order_by ( ' username ' )
if type == ' Developers ' :
2010-03-06 07:20:35 -08:00
users = users . filter ( is_active = True , groups__name = " Developers " )
2010-01-31 20:55:49 -08:00
msg = " This is a list of the current Arch Linux Developers. They maintain the [core] and [extra] package repositories in addition to doing any other developer duties. "
elif type == ' Trusted Users ' :
2010-03-06 07:20:35 -08:00
users = users . filter ( is_active = True , groups__name = " Trusted Users " )
2010-01-31 20:55:49 -08:00
msg = " Here are all your friendly Arch Linux Trusted Users who are in charge of the [community] repository. "
elif type == ' Fellows ' :
users = users . filter ( is_active = False )
msg = " Below you can find a list of ex-developers (aka project fellows). These folks helped make Arch what it is today. Thanks! "
2009-10-30 11:56:21 -07:00
2010-01-31 20:55:49 -08:00
context = {
' user_type ' : type ,
' description ' : msg ,
' users ' : users ,
}
return render_to_response ( ' public/userlist.html ' , context ,
context_instance = RequestContext ( request ) )
2009-10-30 11:56:21 -07:00
def donate ( request ) :
2009-10-30 14:08:37 -07:00
context = {
2010-03-03 21:52:11 -08:00
' donors ' : Donor . objects . order_by ( ' name ' ) ,
2009-10-30 14:08:37 -07:00
}
return render_to_response ( ' public/donate.html ' , context ,
context_instance = RequestContext ( request ) )
2009-10-30 11:56:21 -07:00
def download ( request ) :
qset = MirrorUrl . objects . filter (
Q ( protocol__protocol__iexact = ' HTTP ' ) | Q ( protocol__protocol__iexact = ' FTP ' ) ,
mirror__public = True , mirror__active = True , mirror__isos = True
)
return list_detail . object_list ( request ,
2010-05-16 12:02:09 -07:00
qset . order_by ( ' mirror__country ' , ' mirror__name ' , ' protocol ' ) ,
2009-10-30 11:56:21 -07:00
template_name = " public/download.html " ,
2010-05-26 07:58:43 -07:00
template_object_name = " mirror_url " )
2009-10-30 11:56:21 -07:00
2010-02-02 20:36:41 -08:00
def feeds ( request ) :
context = {
' arches ' : Arch . objects . all ( ) ,
' repos ' : Repo . objects . all ( ) ,
}
2010-08-27 07:41:28 -07:00
return render_to_response ( ' public/feeds.html ' , context ,
context_instance = RequestContext ( request ) )
2010-02-02 20:36:41 -08:00
2009-10-30 11:56:21 -07:00
# vim: set ts=4 sw=4 et: