
    qg_                     D    d dl  d dlmZ  G d dej                        Zy)    )*)cmf_exam_resultc                   X     e Zd Zej                  j
                  dgz   Z fdZd Z xZS )CmfExamResultfinishc                     | j                  dg       t        j                  j                  | j                         t        |   |i |S )Nparent)load_fieldsmodelsCmfCourseProgresscheck_completed_course_progressr	   supersave)selfargskwargs	__class__s      )./modules/learn/models/cmf_exam_result.pyr   zCmfExamResult.save
   s?    ($  @@Mw|T,V,,    c                 P   | j                  g d       | j                  dk(  rt        dd       | j                  dk7  rt        dd       t        j
                  j                  | j                         t        j                  j                  dd	| gd
g      }|D cg c]  }|j                  dk(  s| }}t        |      t        |      z  }|| j                  j                  k\  rd| _        nd| _        | j                          | j                  j                          y c c}w )N)status	exam_typezexam.success_questions_pctr	   pollu~   Функционал опросов в настоящее время находится на стадии разработкиT)abortin_progressu   Можно завершить только экзамен, который находится в процессе прохожденияzparent.parent=r   )filterfieldssuccessdonefailed)r
   r   	cmf_alertr   r   r   r   r	   CmfQuestionResultlistlenexamsuccess_questions_pctr   _lms_update_progress)r   question_resultsqrsuccess_resultsr'   s        r   r   zCmfExamResult.finish   s   XY>>V#  W  _c  d;;-'  `  hl  m  @@M!3388#S$/: 9 

 )9S"BII<R2SS #O 4s;K7L L DII$C$CC DK"DK		((* Ts   D#3D#)	__name__
__module____qualname__r   r   api_methodsr   r   __classcell__)r   s   @r   r   r      s+    !//;;? K-+r   r   N)cmf.includemodules.learn.fieldsr   r    r   r   <module>r4      s     0%+O11 %+r   