ILIAS  trunk Revision v11.0_alpha-2662-g519ff7d528f
ILIAS\Glossary\Flashcard\FlashcardShuffleManager Class Reference
+ Collaboration diagram for ILIAS\Glossary\Flashcard\FlashcardShuffleManager:

Public Member Functions

 __construct ()
 
 shuffleEntries (array $box_entries)
 
 shuffleEntriesWithEqualDay (array $box_entries)
 

Protected Member Functions

 shuffle (array $entries)
 

Detailed Description

Author
Thomas Famula famul.nosp@m.a@le.nosp@m.ifos..nosp@m.de

Definition at line 29 of file class.FlashcardShuffleManager.php.

Constructor & Destructor Documentation

◆ __construct()

ILIAS\Glossary\Flashcard\FlashcardShuffleManager::__construct ( )

Definition at line 31 of file class.FlashcardShuffleManager.php.

32  {
33  }

Member Function Documentation

◆ shuffle()

ILIAS\Glossary\Flashcard\FlashcardShuffleManager::shuffle ( array  $entries)
protected

Definition at line 81 of file class.FlashcardShuffleManager.php.

Referenced by ILIAS\Glossary\Flashcard\FlashcardShuffleManager\shuffleEntries(), and ILIAS\Glossary\Flashcard\FlashcardShuffleManager\shuffleEntriesWithEqualDay().

81  : array
82  {
83  shuffle($entries);
84 
85  return $entries;
86  }
+ Here is the caller graph for this function:

◆ shuffleEntries()

ILIAS\Glossary\Flashcard\FlashcardShuffleManager::shuffleEntries ( array  $box_entries)
Parameters
Term[]$box_entries
Returns
Term[]

Definition at line 39 of file class.FlashcardShuffleManager.php.

References ILIAS\Glossary\Flashcard\FlashcardShuffleManager\shuffle().

41  : array {
42  $box_entries = $this->shuffle($box_entries);
43  return $box_entries;
44  }
+ Here is the call graph for this function:

◆ shuffleEntriesWithEqualDay()

ILIAS\Glossary\Flashcard\FlashcardShuffleManager::shuffleEntriesWithEqualDay ( array  $box_entries)
Parameters
Term[]$box_entries
Returns
Term[]

Definition at line 50 of file class.FlashcardShuffleManager.php.

References ILIAS\Glossary\Flashcard\FlashcardShuffleManager\shuffle().

52  : array {
53  $tmp_entries = [];
54  $tmp_day = "";
55  $i = 0;
56  // split entries per day
57  foreach ($box_entries as $entry) {
58  $entry_day = substr($entry->getLastAccess(), 0, 10);
59  if (empty($tmp_day)
60  || $entry_day === $tmp_day
61  ) {
62  $tmp_entries[$i][] = $entry;
63  } else {
64  $tmp_entries[++$i][] = $entry;
65  }
66  $tmp_day = $entry_day;
67  }
68 
69  $entries = [];
70  // shuffle entries with same day
71  foreach ($tmp_entries as $entries_per_day) {
72  $entries_per_day = $this->shuffle($entries_per_day);
73  foreach ($entries_per_day as $entry) {
74  $entries[] = $entry;
75  }
76  }
77 
78  return $entries;
79  }
+ Here is the call graph for this function:

The documentation for this class was generated from the following file: