original_string: public static function export_user_data(approved_contextlist $contextlist) {
          foreach ($contextlist->get_contexts() as $context) {
              // Check that the context is a module context.
              if ($context->contextlevel != CONTEXT_MODULE) {
                  continue;
              }
              $user = $contextlist->get_user();
              $assigndata = helper::get_context_data($context, $user);
              helper::export_context_files($context, $user);
  
              writer::with_context($context)->export_data([], $assigndata);
              $assign = new \assign($context, null, null);
  
              // I need to find out if I'm a student or a teacher.
              if ($userids = self::get_graded_users($user->id, $assign)) {
                  // Return teacher info.
                  $currentpath = [get_string('privacy:studentpath', 'mod_assign')];
                  foreach ($userids as $studentuserid) {
                      $studentpath = array_merge($currentpath, [$studentuserid->id]);
                      static::export_submission($assign, $studentuserid, $context, $studentpath, true);
                  }
              }
  
              static::export_overrides($context, $assign, $user);
              static::export_submission($assign, $user, $context, []);
              // Meta data.
              self::store_assign_user_flags($context, $assign, $user->id);
              if ($assign->is_blind_marking()) {
                  $uniqueid = $assign->get_uniqueid_for_user_static($assign->get_instance()->id, $contextlist->get_user()->id);
                  if ($uniqueid) {
                      writer::with_context($context)
                              ->export_metadata([get_string('blindmarking', 'mod_assign')], 'blindmarkingid', $uniqueid,
                                      get_string('privacy:blindmarkingidentifier', 'mod_assign'));
                  }
              }
          }
      }
code: public static function export_user_data(approved_contextlist $contextlist) {
          foreach ($contextlist->get_contexts() as $context) {
              // Check that the context is a module context.
              if ($context->contextlevel != CONTEXT_MODULE) {
                  continue;
              }
              $user = $contextlist->get_user();
              $assigndata = helper::get_context_data($context, $user);
              helper::export_context_files($context, $user);
  
              writer::with_context($context)->export_data([], $assigndata);
              $assign = new \assign($context, null, null);
  
              // I need to find out if I'm a student or a teacher.
              if ($userids = self::get_graded_users($user->id, $assign)) {
                  // Return teacher info.
                  $currentpath = [get_string('privacy:studentpath', 'mod_assign')];
                  foreach ($userids as $studentuserid) {
                      $studentpath = array_merge($currentpath, [$studentuserid->id]);
                      static::export_submission($assign, $studentuserid, $context, $studentpath, true);
                  }
              }
  
              static::export_overrides($context, $assign, $user);
              static::export_submission($assign, $user, $context, []);
              // Meta data.
              self::store_assign_user_flags($context, $assign, $user->id);
              if ($assign->is_blind_marking()) {
                  $uniqueid = $assign->get_uniqueid_for_user_static($assign->get_instance()->id, $contextlist->get_user()->id);
                  if ($uniqueid) {
                      writer::with_context($context)
                              ->export_metadata([get_string('blindmarking', 'mod_assign')], 'blindmarkingid', $uniqueid,
                                      get_string('privacy:blindmarkingidentifier', 'mod_assign'));
                  }
              }
          }
      }
code_tokens: public static function export_user_data ( approved_contextlist $ contextlist ) { foreach ( $ contextlist -> get_contexts ( ) as $ context ) { // Check that the context is a module context. if ( $ context -> contextlevel != CONTEXT_MODULE ) { continue ; } $ user = $ contextlist -> get_user ( ) ; $ assigndata = helper :: get_context_data ( $ context , $ user ) ; helper :: export_context_files ( $ context , $ user ) ; writer :: with_context ( $ context ) -> export_data ( [ ] , $ assigndata ) ; $ assign = new \ assign ( $ context , null , null ) ; // I need to find out if I'm a student or a teacher. if ( $ userids = self :: get_graded_users ( $ user -> id , $ assign ) ) { // Return teacher info. $ currentpath = [ get_string ( 'privacy:studentpath' , 'mod_assign' ) ] ; foreach ( $ userids as $ studentuserid ) { $ studentpath = array_merge ( $ currentpath , [ $ studentuserid -> id ] ) ; static :: export_submission ( $ assign , $ studentuserid , $ context , $ studentpath , true ) ; } } static :: export_overrides ( $ context , $ assign , $ user ) ; static :: export_submission ( $ assign , $ user , $ context , [ ] ) ; // Meta data. self :: store_assign_user_flags ( $ context , $ assign , $ user -> id ) ; if ( $ assign -> is_blind_marking ( ) ) { $ uniqueid = $ assign -> get_uniqueid_for_user_static ( $ assign -> get_instance ( ) -> id , $ contextlist -> get_user ( ) -> id ) ; if ( $ uniqueid ) { writer :: with_context ( $ context ) -> export_metadata ( [ get_string ( 'blindmarking' , 'mod_assign' ) ] , 'blindmarkingid' , $ uniqueid , get_string ( 'privacy:blindmarkingidentifier' , 'mod_assign' ) ) ; } } } }
docstring: Write out the user data filtered by contexts.
  
  @param approved_contextlist $contextlist contexts that we are writing data out from.
docstring_tokens: Write out the user data filtered by contexts .