AN INSTRUMENTAL EXPERIMENTAL

Files

PHP View: Tarot.php
<?php
/* Synchronicita je u C. G. Junga zmysluplná koincidencia alebo obdobný vzťah medzi podobnými alebo rovnakými snami, 
myšlienkami atď., ktoré sa vyskytujú súčasne na rôznych miestach.
Synchronistické fenomény sa vyskytujú napríklad vtedy, keď vnútorné udalosti (sny, vízie, predtuchy) 
majú príslušnú obdobu vo vonkajšej realite - vnútorný obraz alebo predtucha sa ukázali ako pravdivé.
*/
define('VERSION''2.0');

if(
$_POST['action_x'] and $_POST['action_y']){
    
    
$Position = (integer)($_POST['action_x'] * $_POST['action_y']);
    
    switch(
$_POST['dependencies']){
        case
'position':
            
$Seed $Position;
            break;
        case
'time':
            
$Seed=time();/* (int)time(void) Returns the current time measured in the number of seconds since the Unix Epoch (January 1 1970 00:00:00 GMT). */
            
break;
        case
'microtime':
            
//$Seed=microtime();
            //$Seed=microtime(true);
            
$Seed=(microtime(true) * 10000);
            
//$Seed=((double) microtime() * 1000000);
            //$Seed=((float) microtime() * 1000000);
            
break;
        default:
            
$Seed=((double) microtime() * 1000000) * $Position;
            break;
    }
    
    
$Count = (integer)$_POST['count'];
    
    
define('MIN'0);
    
define('MAX'77);
    
    require_once(
__DIR__.'/../classes/class.csv.php');
    
$Csv=new Csv();
    
$Csv->WorkingDirectory 'storage/';
    
$Csv->CsvFile trim(strip_tags($_POST['pack']));
    
$Csv->View Csv::OUTPUT_DATA_ROW;
    
$Csv->Msg[] = 'Seed: '.$Seed;
    
    switch(
$_POST['algorithm']){
        
        case
'rand':
            
srand($Seed);
            
$Csv->DataRow rand(MINMAX);
            break;
            
        case
'mt_rand':
            
mt_srand($Seed);
            
$Csv->DataRow mt_rand(MINMAX);
            break;
            
        case
'array_rand':
            
$Array range(MINMAX);
            
            if(
$Count 1){
                
shuffle($Array);
                
$Array array_flip($Array);
                
                
$Csv->View Csv::OUTPUT_DATA_ROWS;
                
$Csv->DataRows array_rand($Array$Count);
            }else{
                
$Csv->DataRow array_rand($Array);
            }
            break;
            
        case
'shuffle_array_rand':
            
$Array range(MINMAX);
            
shuffle($Array);
            
$Array array_flip($Array);
            
            if(
$Count 1){
                
$Csv->View Csv::OUTPUT_DATA_ROWS;
                
$Csv->DataRows array_rand($Array$Count);
            }else{
                
$Csv->DataRow array_rand($Array);
            }
            break;
            
        case
'shuffle_array':
            
$Array range(MINMAX);
            
shuffle($Array);
            
            if(
$Count 1){
                
$Csv->View Csv::OUTPUT_DATA_ROWS;
                
$Csv->DataRows array_slice($Array0$Count); 
            }else{
                
$Csv->DataRow array_shift($Array);
            }
            break;
    }
    
    unset(
$Count$Seed);
    
    
$Csv->Render();
    
//print $Csv->PrintVariable($Array, 'PRINTR');
    //print $Csv->PrintVariable($Csv->DataRow, 'PRINTR');
    //print $Csv->PrintVariable($Csv->DataRows, 'PRINTR');
    
    
unset($Array);
    
} else {
    
$Dependencies = array(
        
'Position' => 'position',
        
'Time' => 'time',
        
'&micro;Time' => 'microtime',
        
'Default' => 'default',
        );
        
    
$Packs = array(
        
'Rider Waite Tarot' => 'RiderWaiteTarot.csv',
        
'Bosch Tarot' => 'BoschTarot.csv',
        
'Mythic Tarot' => 'MythicTarot.csv',
        
'Crowley Thoth Tarot' => 'CrowleyThothTarot.csv',
        );
        
    
$Algorithms = array(
        
'Random' => 'rand',
        
'Mersenne Twister Random' => 'mt_rand',
        
'Array Random' => 'array_rand',
        
'Shuffle Array' => 'shuffle_array',
        
'Shuffle Array Random' => 'shuffle_array_rand',
        );
        
    
/*** Počet vystupov pre array_rand a shuffle_array_rand a shuffle_array */
    
$Count = array(
        
'1 Karta' => 1,
        
'2 Karty' => 2,
        
'3 Karty' => 3,
        
'4 Karty' => 4,
        
'5 Kariet' => 5,
        
'6 Kariet' => 6,
        
'7 Kariet' => 7,
        
'8 Kariet' => 8,
        
'9 Kariet' => 9,
        
'10 Kariet' => 10,
        
'11 Kariet' => 11,
        
'12 Kariet' => 12,
        
'13 Kariet' => 13,
        
'14 Kariet' => 14,
        
'15 Kariet' => 15,
        
'16 Kariet' => 16,
        
'17 Kariet' => 17,
        
'18 Kariet' => 18,
        
'19 Kariet' => 19,
        
'20 Kariet' => 20,
        );
    
    require_once(
__DIR__.'/../classes/class.html.form.next.php');
    
    
$List HTML::Li(HTML::A('http://sk.wikipedia.org/wiki/Synchronicita''Z Wikipédie''_blank''Synchronicita - Wikipédia'), '');
    
$List.= HTML::Li(HTML::A('?Q=RiderWaiteTarot''Rider Waite Tarot''_self''Rider Waite Tarot'), '');
    
$List.= HTML::Li(HTML::A('?Q=InterpretationMaps''Výkladové mapy''_blank''Interpretation Maps'), '');
    
$List.= HTML::Li(HTML::A('?Q=TarotColors''Farby tarotu''_self''Tarot Colors'), '');
    
$List.= HTML::Li(HTML::A('?Q=TarotCourteousCards''Dvorné karty tarotu''_self''Tarot Courteous Cards'), '');
    
$List.= HTML::Li(HTML::A('?Q=Principles''Princípy''_self''Princípy'), '');
    
$List.= HTML::Li(HTML::A('http://spimajim.nazory.eu/vyznam-karet''Význam karet''_blank''...stránky nejen o tarotu'), '');
    
$List.= HTML::Li(HTML::A('http://spimajim.nazory.eu/zpusoby-vykladu''Způsoby výkladu''_blank''...stránky nejen o tarotu'), '');
    
$List.= HTML::Li(HTML::A('http://spimajim.nazory.eu/''Úvod''_blank''...stránky nejen o tarotu'), '');
    
    
$Table[1]['label'] = 'Properties';// algorithm
    
$Table[1]['input'] = HTMLForm::InputSelect('pack'$Packs'Rider Waite Tarot',NULL,TRUE,' title="Pack"').
                        
HTMLForm::InputSelect('algorithm'$Algorithms'Random',NULL,TRUE,' title="Algorithm"').
                        
HTMLForm::InputSelect('dependencies'$Dependencies'Position',NULL,TRUE,' title="Polohová (X,Y súradnice z horizontu udalostí) a časová (Unix timestamp) závislosť funguje len z algoritmami &quot;Random&quot; a &quot;Mersenne Twister Random&quot;"').
                        
HTMLForm::InputSelect('count'$Count,1,NULL,TRUE,' title="Viackartové výklady fungujú len z algoritmami &quot;Array Random&quot; a &quot;Shuffle Array&quot; a &quot;Shuffle Array Random&quot;."');
    unset(
$Packs$Algorithms$Count);
    
    
$Table[2]['label'] = 'Event Horizon';
    
$Table[2]['input'] = HTMLForm::InputImage('action''EventHorizon''styles/images/eventhorizon.png''alt="Event Horizon"');

    
$Dump HTML::H(2'Tarot');
    
$Dump.= HTMLForm::CompactForm(HTML::Table($Table),'?'.strip_tags($_SERVER["QUERY_STRING"]),'post','multipart/form-data','tarot','_self');
    unset(
$Table);
    
    print 
HTML::Div(HTML::Ul($List),' class="aside"');
    unset(
$List);
    
    print 
HTML::Div($Dump,' class="article"');
    unset(
$Dump);
}

?>