ILIAS  trunk Revision v11.0_alpha-3011-gc6b235a2e85
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.

81 : array
82 {
83 shuffle($entries);
84
85 return $entries;
86 }

◆ shuffleEntries()

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

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

41 : array {
42 $box_entries = $this->shuffle($box_entries);
43 return $box_entries;
44 }

◆ shuffleEntriesWithEqualDay()

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

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

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 }

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