| <?php | 
| class bot_ort_module implements BotModule { | 
|     function handle($msg, $params) { | 
|         $args = trim($msg->args); | 
|          | 
|         if(empty($args)) { | 
|             return new BotMsg('Funkcja <b>ort</b> wymaga argumentu.<br />' | 
|                     . '<br />'."\n" | 
|                     . '<u>Przykłady:</u><br />'."\n" | 
|                     . 'ort grzegżółka<br />'."\n" | 
|                     . 'ort warsawa'); | 
|         } | 
|          | 
|         $args = strtr($args, array("\r\n" => ' ', "\r" => ' ', "\n" => ' ')); | 
|          | 
|         $proc = proc_open('aspell --lang=pl --encoding=utf-8 --ignore-case=true pipe', array(array('pipe', 'r'), array('pipe', 'w'), array('file', '/dev/null', 'w')), $pipe); | 
|          | 
|         fwrite($pipe[0], $args."\n"); | 
|         fclose($pipe[0]); | 
|          | 
|         do { | 
|             usleep(1); | 
|             $status = proc_get_status($proc); | 
|         } while($status['running']); | 
|          | 
|         fgets($pipe[1], 1024); | 
|         $spell = fgets($pipe[1], 4096); | 
|         fclose($pipe[1]); | 
|          | 
|         proc_close($proc); | 
|          | 
|         if(empty($spell)) { | 
|             return new BotMsg('Błąd podczas sprawdzania słowa w słowniku. Przepraszamy.'); | 
|         } | 
|         elseif(substr($spell, 0, 1)=='*') { | 
|             return new BotMsg('<span style="color:#060;">Pisownia poprawna.</span>'); | 
|         } | 
|         elseif(substr($spell, 0, 1)=='#') { | 
|             return new BotMsg('Brak propozycji poprawnej pisowni.'); | 
|         } | 
|         else | 
|         { | 
|             $spell = explode(': ', $spell, 2); | 
|             $spell = explode(',', $spell[1]); | 
|              | 
|             $txt = '<p>Prawdopobnie chodziło ci o:</p>'."\n" | 
|                 . '<ul>'."\n"; | 
|              | 
|             foreach($spell as $val) { | 
|                 $txt .= '<li>'.htmlspecialchars(trim($val)).'</li>'."\n"; | 
|             } | 
|             $txt .= '</ul>'; | 
|              | 
|             return new BotMsg($txt); | 
|         } | 
|     } | 
| } | 
| ?> |