]> git.parisson.com Git - teleforma.git/commitdiff
no training for profs, multiple choice for student period, fix document data, admin...
authoryomguy <yomguy@parisson.com>
Thu, 7 Jun 2012 16:12:04 +0000 (18:12 +0200)
committeryomguy <yomguy@parisson.com>
Thu, 7 Jun 2012 16:12:04 +0000 (18:12 +0200)
teleforma/admin.py
teleforma/management/commands/teleforma-import-users-pb.py
teleforma/models.py
teleforma/templates/teleforma/inc/conference_list.html
teleforma/templates/teleforma/inc/media_list.html
teleforma/templates/telemeta/inc/user_list.html
teleforma/views.py

index 6659a0b21b69fc021eb48539d8b74de73906f6bc..591d1d97d372ea4d9a9b3fc6fd2242ea0dc0346b 100644 (file)
@@ -11,9 +11,11 @@ admin.site.unregister(User)
 
 class StudentProfileInline(admin.StackedInline):
     model = Student
+    filter_horizontal = ['period']
 
 class StudentAdmin(admin.ModelAdmin):
     model = Student
+
 class ProfessorProfileInline(admin.StackedInline):
     model = Professor
     filter_horizontal = ['courses']
@@ -35,6 +37,7 @@ class TrainingAdmin(admin.ModelAdmin):
 
 class CourseAdmin(admin.ModelAdmin):
     model = Course
+    ordering = ['number']
 
 class DocumentAdmin(admin.ModelAdmin):
     exclude = ['readers']
index a914da8f21b8530903a764b524234d0955eeaa6b..dc25d3bb9726eb963143f8296e43f307e04f2a4e 100644 (file)
@@ -65,13 +65,14 @@ class Command(BaseCommand):
 
         if created:
             student = Student.objects.filter(user=user)
-            if not student:
-                student = Student(user=user)
-                student.platform_only, student.training = self.get_training(row[3].value)
-                student.period = Period.objects.get(name='Estivale')
-                student.iej = self.get_iej(row[2].value)
-                student.save()
+            if student:
+                student.delete()
+            student = Student(user=user)
+            student.platform_only, student.training = self.get_training(row[3].value)
+            student.iej = self.get_iej(row[2].value)
+            student.save()
 
+            student.period = Period.objects.filter(name='Estivale')
             student.procedure = self.get_courses(row[4].value)
             student.written_speciality = self.get_courses(row[5].value)
             student.oral_speciality = self.get_courses(row[6].value)
index e5bf53fbbb9a9bc389a63c8cdb5ab529112a236c..6de9ea24929d51eda53e62d31952bad5fef39eb8 100755 (executable)
@@ -148,8 +148,6 @@ class Course(Model):
 class Professor(Model):
 
     user            = ForeignKey(User, related_name='professor', verbose_name=_('user'), unique=True)
-    training        = ForeignKey('Training', related_name='professor', verbose_name=_('training'),
-                                 blank=True, null=True, on_delete=models.SET_NULL)
     courses         = ManyToManyField('Course', related_name="professor", verbose_name=_('courses'),
                                         blank=True, null=True)
 
@@ -446,8 +444,8 @@ class Training(Model):
 class Student(Model):
 
     user            = ForeignKey(User, related_name='student', verbose_name=_('user'), unique=True )
-    period          = ForeignKey('Period', related_name='student', verbose_name=_('period'),
-                                  blank=True, null=True, on_delete=models.SET_NULL)
+    period          = ManyToManyField('Period', related_name='student', verbose_name=_('period'),
+                                  blank=True, null=True)
     iej             = ForeignKey('IEJ', related_name='student', verbose_name=_('iej'),
                                  blank=True, null=True, on_delete=models.SET_NULL)
     training        = ForeignKey('Training', related_name='student', verbose_name=_('training'))
index 9d2e0ed2e5a86a10c0e1c31d381421ca1787c465..5c28763da677bbd5f647fb9fab5c3f76e889bf48 100644 (file)
@@ -19,7 +19,7 @@
         {% for conference in course.conference.all|from_course_type:type %}
             <tr {% if not forloop.counter0|divisibleby:"2" %}class="odd"{% endif %}>
             <td><a href="{% url teleforma-conference-detail conference.id %}">{{ conference.session }}</a></td>
-            <td><a href="{% url telemeta-profile-detail conference.professor.user.username %}" target="_blank">{{ conference.professor }}</a></td>
+            <td>{% if conference.professor.user %}<a href="{% url teleforma-profile-detail conference.professor.user.username %}" target="_blank">{{ conference.professor }}</a>{% endif %}</td>
             <td><a href="{% url teleforma-conference-detail conference.id %}">{{ conference.date_begin }}</a></td>
              <td align="center">
                 {% if conference.streaming %}
index f25dcb683a041e289e42a56de45ccaf206d685f3..83c0e8a0865f0164b4d10abedff0e85770f325e7 100644 (file)
@@ -20,7 +20,7 @@
          {% if media.published or user.is_staff %}
             <tr {% if not forloop.counter0|divisibleby:"2" %}class="odd"{% endif %}>
             <td><a href="{% url teleforma-media-detail media.id %}">{{ media.conference.session }}</a></td>
-            <td>{% if media.conference %}<a href="{% url teleforma-profile-detail media.conference.professor.user.username %}" target="_blank">{{ media.conference.professor }}</a>{% endif %}</td>
+            <td>{% if media.conference.professor.user %}<a href="{% url teleforma-profile-detail media.conference.professor.user.username %}" target="_blank">{{ media.conference.professor }}</a>{% endif %}</td>
             <td>{% if media.conference.date_begin %}<a href="{% url teleforma-media-detail media.id %}">{{ media.conference.date_begin }}</a>{% endif %}</td>
             <td>{{ media.item.approx_duration }}</td>
             </tr>
index 5dfcef227ad3dd740befda7963606c371280902c..10a05a8166f4bdc53b9e6dad7ccc28b9fd19cb73 100644 (file)
@@ -19,6 +19,7 @@
    <tr><th>{% trans "Last Name"%}</th>
     <th>{% trans "First Name"%}</th>
     <th>{% trans "IEJ"%}</th>
+    <th>{% trans "Training"%}</th>
     <th>{% trans "Procedure"%}</th>
     <th>{% trans "Oral spe"%}</th>
     <th>{% trans "Written spe"%}</th>
@@ -37,6 +38,7 @@
      {% if user.student.get %}
       {% with user.student.get as student %}
         <td>{{ student.iej.name }}</td>
+        <td>{{ student.training }}</td>
         <td>{{ student.procedure.code }}</td>
         <td>{{ student.oral_speciality.code }}</td>
         <td>{{ student.written_speciality.code }}</td>
index ca7cef33d45994384468b502dcd33e106d4a29a0..2c2ba59e799c830ec23044f38b681475169224b5 100755 (executable)
@@ -56,7 +56,6 @@ def get_courses(user):
                     ]
     elif student:
         student = user.student.get()
-
         courses =      [{'courses': get_course(student.procedure),
                         'types':student.training.procedure.all()},
                         {'courses': get_course(student.written_speciality),
@@ -94,7 +93,7 @@ def get_courses(user):
         course_menu = [{'courses': courses[0]['courses'].order_by('number'),
                         'types': courses[0]['types']},
                       ]
-        print course_menu
+
     else:
         courses = None
     return courses