original_string: function get_userinfo($username) {
      // reads user information from shibboleth attributes and return it in array()
          global $CFG;
  
          // Check whether we have got all the essential attributes
          if ( empty($_SERVER[$this->config->user_attribute]) ) {
              print_error( 'shib_not_all_attributes_error', 'auth_shibboleth' , '', "'".$this->config->user_attribute."' ('".$_SERVER[$this->config->user_attribute]."'), '".$this->config->field_map_firstname."' ('".$_SERVER[$this->config->field_map_firstname]."'), '".$this->config->field_map_lastname."' ('".$_SERVER[$this->config->field_map_lastname]."') and '".$this->config->field_map_email."' ('".$_SERVER[$this->config->field_map_email]."')");
          }
  
          $attrmap = $this->get_attributes();
  
          $result = array();
          $search_attribs = array();
  
          foreach ($attrmap as $key=>$value) {
              // Check if attribute is present
              if (!isset($_SERVER[$value])){
                  $result[$key] = '';
                  continue;
              }
  
              // Make usename lowercase
              if ($key == 'username'){
                  $result[$key] = strtolower($this->get_first_string($_SERVER[$value]));
              } else {
                  $result[$key] = $this->get_first_string($_SERVER[$value]);
              }
          }
  
           // Provide an API to modify the information to fit the Moodle internal
          // data representation
          if (
                $this->config->convert_data
                && $this->config->convert_data != ''
                && is_readable($this->config->convert_data)
              ) {
  
              // Include a custom file outside the Moodle dir to
              // modify the variable $moodleattributes
              include($this->config->convert_data);
          }
  
          return $result;
      }
code: function get_userinfo($username) {
      // reads user information from shibboleth attributes and return it in array()
          global $CFG;
  
          // Check whether we have got all the essential attributes
          if ( empty($_SERVER[$this->config->user_attribute]) ) {
              print_error( 'shib_not_all_attributes_error', 'auth_shibboleth' , '', "'".$this->config->user_attribute."' ('".$_SERVER[$this->config->user_attribute]."'), '".$this->config->field_map_firstname."' ('".$_SERVER[$this->config->field_map_firstname]."'), '".$this->config->field_map_lastname."' ('".$_SERVER[$this->config->field_map_lastname]."') and '".$this->config->field_map_email."' ('".$_SERVER[$this->config->field_map_email]."')");
          }
  
          $attrmap = $this->get_attributes();
  
          $result = array();
          $search_attribs = array();
  
          foreach ($attrmap as $key=>$value) {
              // Check if attribute is present
              if (!isset($_SERVER[$value])){
                  $result[$key] = '';
                  continue;
              }
  
              // Make usename lowercase
              if ($key == 'username'){
                  $result[$key] = strtolower($this->get_first_string($_SERVER[$value]));
              } else {
                  $result[$key] = $this->get_first_string($_SERVER[$value]);
              }
          }
  
           // Provide an API to modify the information to fit the Moodle internal
          // data representation
          if (
                $this->config->convert_data
                && $this->config->convert_data != ''
                && is_readable($this->config->convert_data)
              ) {
  
              // Include a custom file outside the Moodle dir to
              // modify the variable $moodleattributes
              include($this->config->convert_data);
          }
  
          return $result;
      }
code_tokens: function get_userinfo ( $ username ) { // reads user information from shibboleth attributes and return it in array() global $ CFG ; // Check whether we have got all the essential attributes if ( empty ( $ _SERVER [ $ this -> config -> user_attribute ] ) ) { print_error ( 'shib_not_all_attributes_error' , 'auth_shibboleth' , '' , "'" . $ this -> config -> user_attribute . "' ('" . $ _SERVER [ $ this -> config -> user_attribute ] . "'), '" . $ this -> config -> field_map_firstname . "' ('" . $ _SERVER [ $ this -> config -> field_map_firstname ] . "'), '" . $ this -> config -> field_map_lastname . "' ('" . $ _SERVER [ $ this -> config -> field_map_lastname ] . "') and '" . $ this -> config -> field_map_email . "' ('" . $ _SERVER [ $ this -> config -> field_map_email ] . "')" ) ; } $ attrmap = $ this -> get_attributes ( ) ; $ result = array ( ) ; $ search_attribs = array ( ) ; foreach ( $ attrmap as $ key => $ value ) { // Check if attribute is present if ( ! isset ( $ _SERVER [ $ value ] ) ) { $ result [ $ key ] = '' ; continue ; } // Make usename lowercase if ( $ key == 'username' ) { $ result [ $ key ] = strtolower ( $ this -> get_first_string ( $ _SERVER [ $ value ] ) ) ; } else { $ result [ $ key ] = $ this -> get_first_string ( $ _SERVER [ $ value ] ) ; } } // Provide an API to modify the information to fit the Moodle internal // data representation if ( $ this -> config -> convert_data && $ this -> config -> convert_data != '' && is_readable ( $ this -> config -> convert_data ) ) { // Include a custom file outside the Moodle dir to // modify the variable $moodleattributes include ( $ this -> config -> convert_data ) ; } return $ result ; }
docstring: Returns the user information for 'external' users. In this case the
  attributes provided by Shibboleth
  
  @return array $result Associative array of user data
docstring_tokens: Returns the user information for external users . In this case the attributes provided by Shibboleth