src/hp/forms.py
author ymh <ymh.work@gmail.com>
Mon, 26 Nov 2012 17:01:05 +0100
changeset 83 07c9aa7de765
parent 65 6289931858a7
child 91 eb2aa2a469e2
permissions -rw-r--r--
update ldt + add search on videos
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
41
b6010b3d6ea8 add proxy, model, and correct embed_player
ymh <ymh.work@gmail.com>
parents:
diff changeset
     1
# -*- coding: utf-8 -*-
b6010b3d6ea8 add proxy, model, and correct embed_player
ymh <ymh.work@gmail.com>
parents:
diff changeset
     2
'''
b6010b3d6ea8 add proxy, model, and correct embed_player
ymh <ymh.work@gmail.com>
parents:
diff changeset
     3
Created on Nov 14, 2012
b6010b3d6ea8 add proxy, model, and correct embed_player
ymh <ymh.work@gmail.com>
parents:
diff changeset
     4
b6010b3d6ea8 add proxy, model, and correct embed_player
ymh <ymh.work@gmail.com>
parents:
diff changeset
     5
@author: ymh
b6010b3d6ea8 add proxy, model, and correct embed_player
ymh <ymh.work@gmail.com>
parents:
diff changeset
     6
'''
b6010b3d6ea8 add proxy, model, and correct embed_player
ymh <ymh.work@gmail.com>
parents:
diff changeset
     7
45
316a0101512e add pagination new ldt version
ymh <ymh.work@gmail.com>
parents: 41
diff changeset
     8
from . import settings
41
b6010b3d6ea8 add proxy, model, and correct embed_player
ymh <ymh.work@gmail.com>
parents:
diff changeset
     9
from .models import VideoKCRel
45
316a0101512e add pagination new ldt version
ymh <ymh.work@gmail.com>
parents: 41
diff changeset
    10
from .utils import get_all_objects
316a0101512e add pagination new ldt version
ymh <ymh.work@gmail.com>
parents: 41
diff changeset
    11
from django import forms
316a0101512e add pagination new ldt version
ymh <ymh.work@gmail.com>
parents: 41
diff changeset
    12
import logging
316a0101512e add pagination new ldt version
ymh <ymh.work@gmail.com>
parents: 41
diff changeset
    13
316a0101512e add pagination new ldt version
ymh <ymh.work@gmail.com>
parents: 41
diff changeset
    14
logger = logging.getLogger(__name__)
41
b6010b3d6ea8 add proxy, model, and correct embed_player
ymh <ymh.work@gmail.com>
parents:
diff changeset
    15
b6010b3d6ea8 add proxy, model, and correct embed_player
ymh <ymh.work@gmail.com>
parents:
diff changeset
    16
class VideoKCRelForm(forms.ModelForm):
b6010b3d6ea8 add proxy, model, and correct embed_player
ymh <ymh.work@gmail.com>
parents:
diff changeset
    17
    
65
6289931858a7 add a project property to override the front project.
ymh <ymh.work@gmail.com>
parents: 45
diff changeset
    18
    iri_id = forms.CharField(max_length=255, widget=forms.widgets.Select())
6289931858a7 add a project property to override the front project.
ymh <ymh.work@gmail.com>
parents: 45
diff changeset
    19
    project_id =  forms.CharField(max_length=255, widget=forms.widgets.Select())
41
b6010b3d6ea8 add proxy, model, and correct embed_player
ymh <ymh.work@gmail.com>
parents:
diff changeset
    20
b6010b3d6ea8 add proxy, model, and correct embed_player
ymh <ymh.work@gmail.com>
parents:
diff changeset
    21
    def __init__(self, *args, **kwargs):
b6010b3d6ea8 add proxy, model, and correct embed_player
ymh <ymh.work@gmail.com>
parents:
diff changeset
    22
        super(VideoKCRelForm, self).__init__(*args, **kwargs)
b6010b3d6ea8 add proxy, model, and correct embed_player
ymh <ymh.work@gmail.com>
parents:
diff changeset
    23
        
83
07c9aa7de765 update ldt + add search on videos
ymh <ymh.work@gmail.com>
parents: 65
diff changeset
    24
        url = settings.LDT_API_URL + "contents/"
07c9aa7de765 update ldt + add search on videos
ymh <ymh.work@gmail.com>
parents: 65
diff changeset
    25
        contents = get_all_objects(url, {'limit':settings.LDT_MAX_FETCH}, 'front_project')
45
316a0101512e add pagination new ldt version
ymh <ymh.work@gmail.com>
parents: 41
diff changeset
    26
        self.fields['iri_id'].widget.choices = [(content['iri_id'], content['title']) for content in contents]
41
b6010b3d6ea8 add proxy, model, and correct embed_player
ymh <ymh.work@gmail.com>
parents:
diff changeset
    27
        
83
07c9aa7de765 update ldt + add search on videos
ymh <ymh.work@gmail.com>
parents: 65
diff changeset
    28
        url = settings.LDT_API_URL + "projects/"
07c9aa7de765 update ldt + add search on videos
ymh <ymh.work@gmail.com>
parents: 65
diff changeset
    29
        projects = get_all_objects(url, {'state': 2, 'limit': settings.LDT_MAX_FETCH}, None)
65
6289931858a7 add a project property to override the front project.
ymh <ymh.work@gmail.com>
parents: 45
diff changeset
    30
        logger.debug("projects " + repr(projects))
6289931858a7 add a project property to override the front project.
ymh <ymh.work@gmail.com>
parents: 45
diff changeset
    31
        values = [(None, "-----")]
6289931858a7 add a project property to override the front project.
ymh <ymh.work@gmail.com>
parents: 45
diff changeset
    32
        values.extend([(project['ldt_id'], project['title']) for project in projects])
6289931858a7 add a project property to override the front project.
ymh <ymh.work@gmail.com>
parents: 45
diff changeset
    33
        
6289931858a7 add a project property to override the front project.
ymh <ymh.work@gmail.com>
parents: 45
diff changeset
    34
        self.fields['project_id'].widget.choices = values
6289931858a7 add a project property to override the front project.
ymh <ymh.work@gmail.com>
parents: 45
diff changeset
    35
6289931858a7 add a project property to override the front project.
ymh <ymh.work@gmail.com>
parents: 45
diff changeset
    36
41
b6010b3d6ea8 add proxy, model, and correct embed_player
ymh <ymh.work@gmail.com>
parents:
diff changeset
    37
    class Meta:
b6010b3d6ea8 add proxy, model, and correct embed_player
ymh <ymh.work@gmail.com>
parents:
diff changeset
    38
        model = VideoKCRel
b6010b3d6ea8 add proxy, model, and correct embed_player
ymh <ymh.work@gmail.com>
parents:
diff changeset
    39