commit | author | age
|
57117d
|
1 |
<?php |
6b36e7
|
2 |
@date_default_timezone_set('Europe/Warsaw'); |
JK |
3 |
|
57117d
|
4 |
class bot_data_module implements BotModule { |
JK |
5 |
static $dni = array( |
|
6 |
'niedziela', |
afa613
|
7 |
'poniedziałek', |
57117d
|
8 |
'wtorek', |
afa613
|
9 |
'środa', |
57117d
|
10 |
'czwartek', |
afa613
|
11 |
'piątek', |
57117d
|
12 |
'sobota', |
JK |
13 |
); |
|
14 |
static $miesiace = array( |
|
15 |
1 => 'stycznia', |
|
16 |
'lutego', |
|
17 |
'marca', |
|
18 |
'kwietnia', |
|
19 |
'maja', |
|
20 |
'czerwca', |
|
21 |
'lipca', |
|
22 |
'sierpnia', |
afa613
|
23 |
'września', |
JK |
24 |
'października', |
57117d
|
25 |
'listopada', |
JK |
26 |
'grudnia', |
|
27 |
); |
|
28 |
|
|
29 |
function data($msg, $params) { |
|
30 |
$arg = funcs::utfToAscii($msg->args); |
|
31 |
|
|
32 |
if(empty($arg)) { |
|
33 |
$data = time(); |
6b36e7
|
34 |
} else { |
57117d
|
35 |
$data = calendar::parse_date($arg); |
JK |
36 |
if(!$data) { |
afa613
|
37 |
return new BotMsg('Podana data nie została rozpoznana<br />'."\n" |
57117d
|
38 |
. '<br />'."\n" |
afa613
|
39 |
. '<u>Przykłady:</u><br />'."\n" |
57117d
|
40 |
. 'data<br />'."\n" |
JK |
41 |
. 'data pojutrze<br />'."\n" |
|
42 |
. 'data 1.01.2009'); |
|
43 |
} |
|
44 |
} |
|
45 |
|
|
46 |
if(date('d.m.Y') == date('d.m.Y', $data)) { |
afa613
|
47 |
$txt = 'Dziś jest '; |
6b36e7
|
48 |
} else { |
afa613
|
49 |
$txt = 'Wybrany dzień to '; |
57117d
|
50 |
} |
JK |
51 |
|
|
52 |
include('./data/data/data.php'); |
|
53 |
|
6b36e7
|
54 |
$txt .= self::$dni[date('w', $data)].', '.date('j', $data).' ' |
1020bf
|
55 |
. self::$miesiace[date('n', $data)].' '.date('Y', $data).' r., ' |
6b36e7
|
56 |
. (date('z', $data)+1).' dzień roku.<br />'."\n" |
57117d
|
57 |
. '<br />'."\n"; |
JK |
58 |
|
|
59 |
$msg->session->setClass('pogoda'); |
|
60 |
if(!isset($msg->session->geo)) { |
|
61 |
$geo = array('lon' => '52.25', 'lat' => '21.0'); |
6b36e7
|
62 |
} else { |
57117d
|
63 |
$geo = $msg->session->geo; |
JK |
64 |
} |
|
65 |
|
|
66 |
$txt .= 'Imieniny: '.$imieniny[date('n', $data)][date('j', $data)].'<br />'."\n" |
afa613
|
67 |
. 'Wschód Słońca: '.date_sunrise($data, SUNFUNCS_RET_STRING, $geo['lat'], $geo['lon'], 90.58, 1+date('I')).'<br />'."\n" |
JK |
68 |
. 'Zachód Słońca: '.date_sunset($data, SUNFUNCS_RET_STRING, $geo['lat'], $geo['lon'], 90.58, 1+date('I')); |
57117d
|
69 |
|
JK |
70 |
return new BotMsg($txt); |
|
71 |
} |
|
72 |
|
|
73 |
function imieniny($msg, $params) { |
9c93cf
|
74 |
$arg = funcs::utfToAscii($msg->args); |
57117d
|
75 |
|
JK |
76 |
if(empty($arg)) { |
|
77 |
return new BotMsg('Nie podano imienia!<br />'."\n" |
|
78 |
. '<br />'."\n" |
afa613
|
79 |
. '<u>Przykłady:</u><br />'."\n" |
57117d
|
80 |
. 'imieniny Adama<br />'."\n" |
JK |
81 |
. 'imieniny Ewy'); |
|
82 |
} |
|
83 |
|
|
84 |
include('./data/data/imieniny.php'); |
|
85 |
|
|
86 |
if(!isset($imiona[$arg])) { |
afa613
|
87 |
return new BotMsg('Nie znaleziono imienia w bazie. Pamiętaj, by podać imię w dopełniaczu liczby pojedynczej!<br />'."\n" |
57117d
|
88 |
. '<br />'."\n" |
afa613
|
89 |
. '<u>Przykłady:</u><br />'."\n" |
57117d
|
90 |
. 'imieniny Adama<br />'."\n" |
JK |
91 |
. 'imieniny Ewy'); |
|
92 |
} |
|
93 |
|
6b36e7
|
94 |
$txt = array(); |
JK |
95 |
|
57117d
|
96 |
foreach($imiona[$arg] as $dzien) { |
JK |
97 |
$dzien = explode('.', $dzien); |
|
98 |
|
|
99 |
$txt[] = $dzien[0].' '.self::$miesiace[$dzien[1]]; |
|
100 |
} |
|
101 |
|
afa613
|
102 |
return new BotMsg('Imieniny '.ucfirst($arg).' są '.implode(', ', $txt)); |
57117d
|
103 |
} |
JK |
104 |
} |
|
105 |
?> |