Beispiel #1
0
 def test_alpha_columns(self):
     import string
     import random
     class Item:
         def __init__(self, key):
             self.key = key
     items = [ Item(letter) for letter in string.lowercase ]
     random.shuffle(items)
     columns = utils.alpha_columns(items, 'key', itemkey='thing')
     self.assertEquals(3, len(columns))
     self.assertEquals(9, len(columns[0]))
     self.assertEquals(9, len(columns[1]))
     self.assertEquals(8, len(columns[2]))
     self.assertEquals('A', columns[0][0]['first_letter'])
     self.assertEquals('a', columns[0][0]['thing'].key)
     self.assertEquals('J', columns[1][0]['first_letter'])
     self.assertEquals('S', columns[2][0]['first_letter'])
     self.assertEquals('Z', columns[2][7]['first_letter'])
Beispiel #2
0
    def test_alpha_columns(self):
        import string
        import random

        class Item:
            def __init__(self, key):
                self.key = key

        items = [Item(letter) for letter in string.lowercase]
        random.shuffle(items)
        columns = utils.alpha_columns(items, 'key', itemkey='thing')
        self.assertEquals(3, len(columns))
        self.assertEquals(9, len(columns[0]))
        self.assertEquals(9, len(columns[1]))
        self.assertEquals(8, len(columns[2]))
        self.assertEquals('A', columns[0][0]['first_letter'])
        self.assertEquals('a', columns[0][0]['thing'].key)
        self.assertEquals('J', columns[1][0]['first_letter'])
        self.assertEquals('S', columns[2][0]['first_letter'])
        self.assertEquals('Z', columns[2][7]['first_letter'])
Beispiel #3
0
def all_topics(request, project_slug=None):
    o = {}
    if project_slug:
        o['project'] = get_object_or_404(Project, slug=project_slug)
    if 'type' in request.GET:
        o['type'] = request.GET['type']
        o['fragment'] = ''
        template = 'topic-columns.include'
    else:
        o['type'] = 'PER'
        template = 'all-topics.html'
    if project_slug:
        query_set = set([ ta.topic for ta in TopicAssignment.objects.filter(
            creator__userprofile__affiliation=o['project'],
            topic__type=o['type']) ])
    else:
        query_set = Topic.objects.filter(type=o['type'])
    [o['topics_1'], o['topics_2'], o['topics_3']] = utils.alpha_columns(
        query_set, 'slug', itemkey='topic')
    return render_to_response(
        template, o, context_instance=RequestContext(request))