/**
  * Get values for the HTML prefilling from the session if we happen to be
  * returning from a failed purchase.
  *
  * @return array values for the HTML prefilling
  */
 public function getValuesFromSession()
 {
     if (isset($_SESSION['klarna_data'])) {
         self::$prefillData = $_SESSION['klarna_data'];
         unset($_SESSION['klarna_data']);
     }
     $fields = array('first_name', 'last_name', 'street', 'city', 'zipcode', 'phone_number', 'company_name', 'reference', 'pno', 'house_extension', 'house_number', 'gender', 'birth_year', 'birth_month', 'birth_day');
     $array = array();
     // split the pno to date of birth
     if (array_key_exists('pno', self::$prefillData)) {
         $dob = self::$prefillData['pno'];
         self::$prefillData['birth_year'] = substr($dob, 4, 4);
         self::$prefillData['birth_month'] = substr($dob, 2, 2);
         self::$prefillData['birth_day'] = substr($dob, 0, 2);
     }
     foreach ($fields as $field) {
         if (array_key_exists($field, self::$prefillData) && self::$prefillData[$field] !== "" && self::$prefillData[$field] !== null) {
             $array[$field] = KiTT_String::encode(self::$prefillData[$field], null, 'UTF-8');
             if ($field === 'gender') {
                 $array['gender'] = KiTT_String::encode(intval(self::$prefillData['gender']), null, 'UTF-8');
             }
         }
     }
     return $array;
 }