| 1 |
<?php |
<?php |
| 2 |
// $Id: randomizer.module,v 1.1 2006/05/31 19:35:55 deekayen Exp $ |
// $Id:$ |
| 3 |
|
|
| 4 |
/** |
/** |
| 5 |
* @file |
* @file |
| 110 |
* @return string |
* @return string |
| 111 |
*/ |
*/ |
| 112 |
function randomizer_page() { |
function randomizer_page() { |
| 113 |
$edit = $_POST['edit']; |
if(isset($_POST['edit'])) { |
| 114 |
if(isset($edit)) { |
$edit = $_POST['edit']; |
| 115 |
if (!is_numeric($edit['randomizer_sets'])) { |
if (!is_numeric($edit['randomizer_sets'])) { |
| 116 |
$error = true; |
$error = true; |
| 117 |
form_set_error('randomizer_sets', t('The entered sets of numbers must be numeric.')); |
form_set_error('randomizer_sets', t('The entered sets of numbers must be numeric.')); |
| 167 |
|
|
| 168 |
for ($i=0; $i<$edit['randomizer_sets']; $i++) { |
for ($i=0; $i<$edit['randomizer_sets']; $i++) { |
| 169 |
$list = array(); |
$list = array(); |
| 170 |
if ($edit['randomizer_unique']) { |
for ($j=0; $j < $edit['randomizer_per_set']; ) { |
| 171 |
$diff = $edit['randomizer_range_to'] - $edit['randomizer_range_from']; |
$number = mt_rand($edit['randomizer_range_from'], $edit['randomizer_range_to']); |
| 172 |
if($diff < $edit['randomizer_per_set']) { // user asked for more numbers in the set then was available in the range |
if (!$edit['randomizer_unique'] || ($edit['randomizer_unique'] && !in_array($number, $list))) { |
| 173 |
$edit['randomizer_per_set'] = $diff + 1; |
$list[] = $number; |
| 174 |
} |
$j++; |
|
unset($diff); |
|
|
|
|
|
$numbers = range($edit['randomizer_range_from'], $edit['randomizer_range_to']); |
|
|
for ($j=0; $j < $edit['randomizer_per_set']; $j++) { |
|
|
shuffle($numbers); |
|
|
foreach ($numbers as $key => $number) { |
|
|
$list[] = $number; |
|
|
unset($numbers[$key]); |
|
|
break; |
|
|
} |
|
|
} |
|
|
} |
|
|
else { |
|
|
for($j=0; $j < $edit['randomizer_per_set']; $j++) { |
|
|
$list[] = mt_rand($edit['randomizer_range_from'], $edit['randomizer_range_to']); |
|
| 175 |
} |
} |
| 176 |
} |
} |
| 177 |
if ($edit['randomizer_sort'] == '1') { |
if ($edit['randomizer_sort'] == '1') { |