//
// 2013/11/05 Created
// Don't reinvent the whell and use existing code:
// https://github.com/tejastank/openerp-php-connector
include_once("openerp.class.php");
// Define your OpenERP environment
$openerp_url = "http://openerp.server:80/xmlrpc/";
$openerp_db = "xxxxxx";
$openerp_user = "xxxxxx";
$openerp_pass = "xxxxxx";
$max_entries = 32;
// Sanitize GET parameter (only letters & numbers allowed)
if (!isset($_GET['search'])) {
exit;
}
$search = preg_replace('/[^-a-zA-Z0-9_]/', '', $_GET['search']);
$rpc = new OpenERP();
if (!($rpc->login($openerp_user, $openerp_pass, $openerp_db, $openerp_url))) {
exit;
}
// Search for contacts
$partner_ids = $rpc->search('res.partner', 'name', 'ilike', $search, 'string');
// Read
$fields = array( 'name','phone', 'mobile');
$partners = $rpc->read($partner_ids, $fields, "res.partner");
if (count($partners) <= 0) {
echo "
OpenERP Directory
No contact found!
";
}
elseif (count($partners) >= $max_entries) {
echo "
OpenERP Directory
Too many contacts, refine!
";
}
else {
echo "
OpenERP Directory
Select your contact
";
foreach ($partners as $p){
if (strlen($p['phone']) > 0 || strlen($p['mobile']) > 0) {
echo "\n";
echo "" . $p['name'] . "\n";
if (strlen($p['phone']) > 0) {
echo "" . $p['phone'] . "\n";
}
if (strlen($p['mobile']) > 0) {
echo "" . $p['mobile'] . "\n";
}
echo "\n";
}
}
echo "\n";
}
?>