root/efio/fio_suggest.php

Revision 1, 2.0 kB (checked in by teiko, 1 year ago)

Added current version of efio

Line 
1 <?php
2 define('_VALID_MOS',1);
3 require_once('include/protects.php');
4 require_once('globals.php');
5 require_once('configuration.php');
6 require_once('include/minimambo.php');
7 require_once('include/database.php');
8 require_once('include/JsHttpRequest.php');
9 require_once('autoname.class.php');
10
11 // -------------------------------------------------------------------------
12 $JsHttpRequest =& new JsHttpRequest('utf-8');
13
14 $database  = new database($config_db_host,$config_db_user,$config_db_pass,$config_db_name,'');
15 $tbSNames = new tbAutoName("surnames", "name", $database);
16 $tbNNames = new tbAutoName("names", "name", $database);
17 $tbPNames = new tbAutoName("patronyms", "name", $database);
18
19 // -------------------------------------------------------------------------
20
21 // Параметрами являются name(имя), sname(фамилия), pname(отчество),
22 // которые могут являться массивом имен или одиночными значениями.
23 $task = mosGetParam($_REQUEST,'task','');
24 $name = mosGetParam($_REQUEST,'name','');
25 $sname = mosGetParam($_REQUEST,'sname','');
26 $pname = mosGetParam($_REQUEST,'pname','');
27 if (!is_array($name)) $name = array($name);
28 if (!is_array($sname)) $sname = array($sname);
29 if (!is_array($pname)) $pname = array($pname);
30 // Ограничим возможность передавать в запросе больше трех имен, фамилий и отчеств,
31 // чтобы не нагружать сервер
32 $name = array_slice($name, 0, 3);
33 $sname = array_slice($sname, 0, 3);
34 $pname = array_slice($pname, 0, 3);
35 switch($task) {
36     case 'add':
37     case 'blocked':
38     case 'suggest':
39     foreach ($name as $m)
40         $names[$m] = call_user_func(array($tbNNames, $task), $m);
41     foreach ($sname as $m)
42         $snames[$m] = call_user_func(array($tbSNames, $task), $m);
43     foreach ($pname as $m)
44         $pnames[$m] = call_user_func(array($tbPNames, $task), $m);
45     $_RESULT = array(
46         "names" => $names,
47         "snames" => $snames,
48         "pnames" => $pnames
49     );
50     break;
51 }
52 ?>
Note: See TracBrowser for help on using the browser.