]> git.parisson.com Git - teleforma.git/commitdiff
Merge branch 'feature/webclass' into tc202-dev
authorGuillaume Pellerin <guillaume.pellerin@ircam.fr>
Mon, 21 Jan 2019 17:52:02 +0000 (18:52 +0100)
committerGuillaume Pellerin <guillaume.pellerin@ircam.fr>
Mon, 21 Jan 2019 17:52:02 +0000 (18:52 +0100)
1  2 
teleforma/admin.py
teleforma/templates/teleforma/course_media.html
teleforma/templatetags/teleforma_tags.py
teleforma/views/core.py

Simple merge
index d8a53bff53d354d9c1c8ee673ac46947e7357120,8acbf2adb87e41ab42946c35a9ecf06f403ff16b..9f7711077671f773f992706e061e99652c83a039
@@@ -791,38 -793,30 +792,38 @@@ class ProfessorListView(View)
          return [p.to_json_dict() for p in professors]
  
      def pull(request, host=None):
 -        if host:
 -            url = 'http://' + host + '/json/'
 -        else:
 -            url = 'http://' + settings.TELECASTER_MASTER_SERVER + '/json/'
 -        s = ServiceProxy(url)
 -
 -        remote_list = s.teleforma.get_professor_list()
 -        for professor_dict in remote_list['result']:
 -            user, c = User.objects.get_or_create(username=professor_dict['username'])
 -            user.first_name = professor_dict['first_name']
 -            user.last_name = professor_dict['last_name']
 -            user.email = professor_dict['email']
 -            user.save()
 +        from teleforma.models import Organization, Department
 +        departments = Department.objects.all()
 +        professors_old = Professor.objects.all()
 +        professors_new = []
  
 -            professor, c = Professor.objects.get_or_create(user=user)
 -            for course_code in professor_dict['courses']:
 -                course = Course.objects.filter(code=course_code)
 -                if course:
 -                    if not course[0] in professor.courses.all():
 -                        professor.courses.add(course[0])
 -            professor.save()
 +        for department in departments:
 +            url = 'https://' + department.domain + '/json/'
 +            s = ServiceProxy(url)
 +            remote_list = s.teleforma.get_professor_list()
 +            for professor_dict in remote_list['result']:
 +                user, c = User.objects.get_or_create(username=professor_dict['username'])
 +                user.first_name = professor_dict['first_name']
 +                user.last_name = professor_dict['last_name']
 +                user.email = professor_dict['email']
 +                user.save()
 +
 +                professor, c = Professor.objects.get_or_create(user=user)
 +                for course_code in professor_dict['courses']:
 +                    course = Course.objects.filter(code=course_code)
 +                    if course:
 +                        if not course[0] in professor.courses.all():
 +                            professor.courses.add(course[0])
 +                professor.save()
 +                professors_new.append(professor)
 +                #print professor
 +
 +        for professor in professors_old:
 +            if not professor in professors_new:
 +                professor.delete()
  
  
- class WebClassGroupView(View):
+ class ClassGroupView(View):
  
      @jsonrpc_method('teleforma.get_class_group_list')
      def get_class_group_list(request):