From 332344cff07e9fc89bfcde3717888128cf1edd5e Mon Sep 17 00:00:00 2001
From: Jacek Kowalski <Jacek@jacekk.info>
Date: Fri, 24 Aug 2012 11:26:28 +0000
Subject: [PATCH] 1. Przeportowanie modułu version (wersja) do nowej wersji API. 2. Przeportowanie modułu czesc do nowej wersji API. 3. Zmiana kolejności ładowania modułu legacy (zmiana numeru).

---
 /dev/null                     |  119 -------------------
 modules/00_wersja/init.php    |   34 +++++
 modules/10_czesc/init.php     |   86 ++++++++++++++
 modules/00_wersja/handler.php |    9 +
 modules/40_legacy/handler.php |    0 
 modules/10_czesc/handler.php  |   61 ++++++++++
 modules/40_legacy/init.php    |    0 
 7 files changed, 190 insertions(+), 119 deletions(-)

diff --git a/modules/00_version.php b/modules/00_version.php
deleted file mode 100644
index bc31ef7..0000000
--- a/modules/00_version.php
+++ /dev/null
@@ -1,32 +0,0 @@
-<?php
-class version implements module {
-	static function register_cmd() {
-		return array(
-			'version' => 'cmd_version',
-			'wersja' => 'cmd_version',
-			'wersia' => 'cmd_version',
-			'v' => 'cmd_version',
-		);
-	}
-	
-	static function cmd_version($name, $args) {
-		GGapi::putImage('./data/version/jacekk.png');
-		GGapi::putRichText("\n".'Bot Gadu-Gadu', TRUE, FALSE, FALSE, 255, 108, 0);
-		GGapi::putRichText(' wersja '.main::VERSION."\n".'http://jacekk.info/botgg');
-	}
-	
-	static function help($cmd = NULL) {
-		if($cmd === NULL) {
-			GGapi::putRichText('wersja', TRUE);
-			GGapi::putRichText("\n".'   Wersja bota'."\n");
-		}
-		else
-		{
-			GGapi::putRichText('wersja', TRUE);
-			GGapi::putRichText(' (alias: ');
-			GGapi::putRichText('v', TRUE);
-			GGapi::putRichText(')'."\n".'   Zwraca wersję bota');
-		}
-	}
-}
-?>
\ No newline at end of file
diff --git a/modules/00_wersja/handler.php b/modules/00_wersja/handler.php
new file mode 100644
index 0000000..c60a349
--- /dev/null
+++ b/modules/00_wersja/handler.php
@@ -0,0 +1,9 @@
+<?php
+class bot_wersja_module implements BotModule {
+	function handle($msg, $params) {
+		return new BotMsg('<img src="./data/version/jacekk.png" /><br />'."\n"
+			. '<span color="#F70">Bot Gadu-Gadu</span> wersja '.main::VERSION.'<br />'."\n"
+			. 'http://jacekk.info/botgg');
+	}
+}
+?>
\ No newline at end of file
diff --git a/modules/00_wersja/init.php b/modules/00_wersja/init.php
new file mode 100644
index 0000000..2c8010c
--- /dev/null
+++ b/modules/00_wersja/init.php
@@ -0,0 +1,34 @@
+<?php
+class bot_wersja_init implements BotModuleInit {
+	function register() {
+		$handler = array(
+			array(
+				'file' => 'handler.php',
+				'class' => 'bot_wersja_module',
+				'method' => 'handle',
+			)
+		);
+		
+		return array(
+			'version' => $handler,
+			'wersja' => $handler,
+			'wersia' => $handler,
+			'v' => $handler,
+		);
+	}
+	
+	function help($params = NULL) {
+		if($params === NULL) {
+			return new BotMsg('<b>wersja</b><br />'."\n"
+				. '   Wersja bota.<br />'."\n");
+		}
+		else
+		{
+			return new BotMsg('<b>wersja</b> (aliasy: <b>v, version</b>)<br />'."\n"
+				. '   Zwraca wersję bota.');
+		}
+	}
+}
+
+return 'bot_wersja_init';
+?>
\ No newline at end of file
diff --git a/modules/10_czesc.php b/modules/10_czesc.php
deleted file mode 100644
index 62a4378..0000000
--- a/modules/10_czesc.php
+++ /dev/null
@@ -1,119 +0,0 @@
-<?php
-class czesc implements module {
-	static function register_cmd() {
-		return array(
-			'czesc' => 'cmd_czesc',
-			'witaj' => 'cmd_czesc',
-			'witam' => 'cmd_czesc',
-			'siema' => 'cmd_czesc',
-			'hej' => 'cmd_czesc',
-			'heeej' => 'cmd_czesc',
-			'elo' => 'cmd_czesc',
-			'haj' => 'cmd_czesc',
-			'test' => 'cmd_czesc',
-			'good' => 'cmd_hello',
-			'hello' => 'cmd_hello',
-			'hi' => 'cmd_hello',
-			'sex' => 'cmd_zachcianki',
-			'fiut' => 'cmd_zachcianki',
-			'chuj' => 'cmd_zachcianki',
-			'huj' => 'cmd_zachcianki',
-			'seks' => 'cmd_zachcianki',
-			'seksu' => 'cmd_zachcianki',
-			'porno' => 'cmd_zachcianki',
-			'ssij' => 'cmd_zachcianki',
-			'obciagniesz' => 'cmd_zachcianki',
-			'wal' => 'cmd_zachcianki',
-			'kocham' => 'cmd_kocham',
-			'lubie' => 'cmd_kocham',
-			'lol' => 'cmd_odp',
-			'do' => 'cmd_odp',
-			'dzieki' => 'cmd_kocham',
-			'dziekuje' => 'cmd_kocham',
-		);
-	}
-	
-	static function help($cmd=NULL) {
-		if($cmd === NULL) {
-			GGapi::putRichText('czesc', TRUE);
-			GGapi::putRichText("\n".'   Odpowiada na przywitanie'."\n\n");
-		}
-		else
-		{
-			GGapi::putRichText('czesc', TRUE);
-			GGapi::putRichText(' (alias: ');
-			GGapi::putRichText('witam, witaj', TRUE);
-			GGapi::putRichText(')'."\n".'   Bot przedstawia się i odpowiada na przywitanie');
-		}
-	}
-	
-	static function cmd_odp($cmd, $arg) {
-		$txt = array(
-			'lol' => array(
-				'Co w tym takiego śmiesznego? :P',
-				'Nie widzę w tym nic, co mogłoby sprawić, że tarzasz się po podłodze ;)',
-				'LOL'
-			),
-			'do' => array(
-				'Do... Du łot?!',
-			),
-		);
-		
-		funcs::antiFlood($_GET['numer']);
-		
-		if(is_array($txt[$cmd])) {
-			GGapi::putText($txt[$cmd][array_rand($txt[$cmd])]);
-		}
-		else
-		{
-			GGapi::putText($txt[$cmd]);
-		}
-	}
-	
-	static function cmd_zachcianki($name, $arg) {
-		funcs::antiFlood($_GET['numer']);
-		$txt = array('Eh... Czego się tym ludziom zachciewa...', 'Znajdź sobie kogoś', 'CO?!');
-		GGapi::putText($txt[array_rand($txt)]);
-	}
-	
-	static function cmd_kocham($name, $arg) {
-		$dozwolone = array('cie', 'ci', 'cie przyjacielu', 'cie kolego', 'ci bocie', 'cie bocie', 'cie :)', 'przyjacielu', 'kolego', 'bocie', '.', ':)', ':d', ':D');
-		if(!in_array(funcs::utfToAscii(trim($arg)), $dozwolone) && !empty($arg)) {
-			GGapi::putText('Funkcja nie przyjmuje epitetów!');
-			return;
-		}
-		
-		GGapi::putText('Miło mi!');
-	}
-	
-	static function cmd_czesc($name, $arg) {
-		$dozwolone = array('przyjacielu', 'kolego', 'bocie', ':)', '.', ':d', ':D');
-		if(!in_array(funcs::utfToAscii(trim($arg)), $dozwolone) && !empty($arg)) {
-			GGapi::putText('Funkcja ');
-			GGapi::putRichText('czesc', TRUE);
-			GGapi::putRichText(' nie przyjmuje epitetów!');
-			return;
-		}
-		
-		GGapi::putText('Witam,'."\n".'Jestem prostym botem Gadu-Gadu, który poda Ci kursy walut (wpisz: ');
-		GGapi::putRichText('kursy', TRUE);
-		GGapi::putRichText('), sprawdzi dane słowo w słowniku ortograficznym (wpisz: ');
-		GGapi::putRichText('ort ', TRUE);
-		GGapi::putRichText('słowo', TRUE, TRUE);
-		GGapi::putRichText(') lub przywita się (tak jak teraz)!'."\n\n".'Informacje o wszystkich dostępnych poleceniach otrzymasz po wpisaniu ');
-		GGapi::putRichText('help', TRUE);
-	}
-	
-	static function cmd_hello($name, $arg) {
-		$dozwolone = array('friend', 'buddy', 'bot', 'evening', 'afternoon', 'morning', '.', ':)', ':d', ':D');
-		if(!in_array(funcs::utfToAscii(trim($arg)), $dozwolone) && !empty($arg)) {
-			GGapi::putText('Function ');
-			GGapi::putRichText('hello', TRUE);
-			GGapi::putRichText(' does not have any arguments!');
-			return;
-		}
-		
-		GGapi::putText('Hello!'."\n\n".'I\'m simple bot for Gadu-Gadu communicator, which will give you exchange rates (send: kursy), check word in polish dictionary (send: ort word) or say hello (just like now)!'."\n\n".'Write help to me to get informations about all available commands');
-	}
-}
-?>
\ No newline at end of file
diff --git a/modules/10_czesc/handler.php b/modules/10_czesc/handler.php
new file mode 100644
index 0000000..331dba0
--- /dev/null
+++ b/modules/10_czesc/handler.php
@@ -0,0 +1,61 @@
+<?php
+class bot_wersja_module implements BotModule {
+	function czesc($msg, $params) {
+		$arg = funcs::utfToAscii($msg->args);
+		
+		$dozwolone = array('przyjacielu', 'kolego', 'bocie', ':)', '.', ':d', ':D');
+		if(!in_array($arg, $dozwolone) && !empty($arg)) {
+			return new BotMsg('Funkcja <b>czesc</b> nie przyjmuje argument�w!');
+		}
+		
+		return new BotMsg('<p>Witam!</p>'."\n"
+			. '<p>Jestem prostym botem Gadu-Gadu, kt�ry poda Ci kursy walut (wpisz: <b>kursy</b>), sprawdzi dane s�owo w s�owniku ortograficznym (wpisz: <b>ort s�owo</b>) lub przywita si� (tak jak teraz)!</p>'."\n"
+			. '<p>Informacje o wszystkich dost�pnych poleceniach otrzymasz po wys�aniu do mnie s�owa <b>pomoc</b>.</p>');
+	}
+	
+	function hello($msg, $params) {
+		$arg = funcs::utfToAscii($msg->args);
+		
+		$dozwolone = array('friend', 'buddy', 'bot', 'evening', 'afternoon', 'morning', '.', ':)', ':d', ':D');
+		if(!in_array($arg, $dozwolone) && !empty($arg)) {
+			return new BotMsg('Function <b>hello</b> does not have any arguments!');
+		}
+		
+		return new BotMsg('<p>Hello!</p>'."\n"
+			. '<p>I am simple bot for Gadu-Gadu communicator, which will give you exchange rates (send: <b>kursy</b>), check word in polish dictionary (send: <b>ort word</b>) or say hello (just like now)!</p>'."\n"
+			. '<p>Write <b>help</b> to me to get information about all available commands.</p>');
+	}
+	
+	function zachcianki($msg, $params) {
+		$txt = array('Ech... Czego si� tym ludziom zachciewa...', 'Znajd� sobie kogo�.', 'CO?!');
+		return new BotMsg($txt[array_rand($txt)]);
+	}
+	
+	function kocham($msg, $params) {
+		$arg = funcs::utfToAscii($msg->args);
+		
+		$dozwolone = array('cie', 'ci', 'cie przyjacielu', 'cie kolego', 'ci bocie', 'cie bocie', 'cie :)', 'przyjacielu', 'kolego', 'bocie', '.', ':)', ':d', ':D');
+		if(!in_array($arg, $dozwolone) && !empty($arg)) {
+			return new BotMsg('Funkcja <b>kocham</b> nie przyjmuje epitet�w!');
+		}
+		
+		return new BotMsg('Mi�o mi!');
+	}
+	
+	function odp($msg, $params) {
+		$txt = array(
+			'lol' => array(
+				'Co w tym takiego �miesznego? :P',
+				'Nie widz� w tym nic, co mog�oby sprawi�, �e tarzasz si� po pod�odze ;)',
+				'LOL'
+			),
+			'do' => array(
+				'Do... Du �ot?!',
+			),
+		);
+		
+		$cmd = $msg->command;
+		return new BotMsg($txt[$cmd][array_rand($txt[$cmd])]);
+	}
+}
+?>
\ No newline at end of file
diff --git a/modules/10_czesc/init.php b/modules/10_czesc/init.php
new file mode 100644
index 0000000..fdb793c
--- /dev/null
+++ b/modules/10_czesc/init.php
@@ -0,0 +1,86 @@
+<?php
+class bot_czesc_init implements BotModuleInit {
+	function register() {
+		$handler_czesc = array(
+			array(
+				'file' => 'handler.php',
+				'class' => 'bot_czesc_module',
+				'method' => 'czesc',
+			)
+		);
+		$handler_hello = array(
+			array(
+				'file' => 'handler.php',
+				'class' => 'bot_czesc_module',
+				'method' => 'hello',
+			)
+		);
+		$handler_zachcianki = array(
+			array(
+				'file' => 'handler.php',
+				'class' => 'bot_czesc_module',
+				'method' => 'zachcianki',
+			)
+		);
+		$handler_kocham = array(
+			array(
+				'file' => 'handler.php',
+				'class' => 'bot_czesc_module',
+				'method' => 'kocham',
+			)
+		);
+		$handler_odp = array(
+			array(
+				'file' => 'handler.php',
+				'class' => 'bot_czesc_module',
+				'method' => 'odp',
+			)
+		);
+		
+		return array(
+			'czesc' => $handler_czesc,
+			'witaj' => $handler_czesc,
+			'witam' => $handler_czesc,
+			'siema' => $handler_czesc,
+			'hej' => $handler_czesc,
+			'heeej' => $handler_czesc,
+			'elo' => $handler_czesc,
+			'haj' => $handler_czesc,
+			'test' => $handler_czesc,
+			'good' => $handler_hello,
+			'hello' => $handler_hello,
+			'hi' => $handler_hello,
+			'sex' => $handler_zachcianki,
+			'fiut' => $handler_zachcianki,
+			'chuj' => $handler_zachcianki,
+			'huj' => $handler_zachcianki,
+			'seks' => $handler_zachcianki,
+			'seksu' => $handler_zachcianki,
+			'porno' => $handler_zachcianki,
+			'ssij' => $handler_zachcianki,
+			'obciagniesz' => $handler_zachcianki,
+			'wal' => $handler_zachcianki,
+			'kocham' => $handler_kocham,
+			'lubie' => $handler_kocham,
+			'dzieki' => $handler_kocham,
+			'dziekuje' => $handler_kocham,
+			'lol' => $handler_odp,
+			'do' => $handler_odp,
+		);
+	}
+	
+	function help($params = NULL) {
+		if($params === NULL) {
+			return new BotMsg('<b>czesc</b><br />'."\n"
+				. '   Odpowiada na przywitanie.<br />'."\n");
+		}
+		else
+		{
+			return new BotMsg('<b>czesc</b> (aliasy: <b>witam, witaj, hej</b>)<br />'."\n"
+				. '   Bot przedstawia się i odpowiada na przywitanie.');
+		}
+	}
+}
+
+return 'bot_czesc_init';
+?>
\ No newline at end of file
diff --git a/modules/00_legacy/handler.php b/modules/40_legacy/handler.php
similarity index 100%
rename from modules/00_legacy/handler.php
rename to modules/40_legacy/handler.php
diff --git a/modules/00_legacy/init.php b/modules/40_legacy/init.php
similarity index 100%
rename from modules/00_legacy/init.php
rename to modules/40_legacy/init.php

--
Gitblit v1.9.1