root/trunk/robots/refresh_cacher_user.bot.php

Revision 1, 2.5 KB (checked in by anonymous, 7 years ago)

initial import

Line 
1#!/usr/bin/php
2<?
3include ('../includes/includes.inc.php');
4include ('../includes/config/global.inc.php');
5
6$db =& DB::connect($dsn);
7if (DB::isError($db))
8                error_log($_SERVER['HTTP_HOST'].' | '.__FILE__.' | Connexion SQL impossible : '.$db->getMessage());
9
10$db->setFetchMode(DB_FETCHMODE_ASSOC);
11
12$db->query('TRUNCATE TABLE cache_user');
13
14$users_r = $db->query('SELECT id, login, fname, lname, photo, join_date  FROM user');
15while($user = $users_r->fetchRow())
16{
17    $user_contact = $db->getRow('SELECT country FROM user_contact WHERE id=?', array($user['id']));
18    $user_general = $db->getRow('SELECT gender, relationship_status, here_for, (DATE_FORMAT(CURDATE(), "%Y-%m-%d")-DATE_FORMAT(birthday, "%Y-%m-%d")) as age FROM user_general WHERE id=?', array($user['id']));
19   
20    $friends_id = $db->getCol('SELECT id_friend FROM relation WHERE id=? ORDER BY last_visit DESC', 0, array($user['id']));
21    $communities_id = $db->getCol('SELECT id_comm FROM user_comm WHERE id=?', 0, array($user['id']));
22
23    $karma = $db->getRow('SELECT SUM(fan) as nb_fans, SUM(fun) as fun, SUM(cool) as cool, SUM(sexy) as sexy FROM relation WHERE id_friend=?', array($user['id']));
24   
25    $nb_bookmarks = $db->getOne('SELECT COUNT(link) FROM bookmarks WHERE id=?', array($user['id']));
26    $nb_blogs = $db->getOne('SELECT COUNT(id_blog) FROM blog WHERE id=? AND status=?', array($user['id'], 'online'));
27    $nb_photos = $db->getOne('SELECT COUNT(id_image) FROM album WHERE id=?', array($user['id']));
28
29    $cache_values= array(
30    'id'=>$user['id'],
31    'login'=>$user['login'],
32    'fname'=>$user['fname'],
33    'lname'=>$user['lname'],
34    'age'=>$user_general['age'],
35    'photo'=>$user['photo'],
36    'country'=>$user_contact['country'],
37    'gender'=>$user_general['gender'],
38    'relationship_status'=>$user_general['relationship_status'],
39    'here_for'=>$user_general['here_for'],
40    'nb_friends'=>count($friends_id),
41    'friends_id'=>implode(',',$friends_id),
42    'nb_communities'=>count($communities_id),
43        'communities_id'=>implode(',',$communities_id),
44    'nb_fans'=>$karma['nb_fans'],
45    'fun'=>$karma['fun'],
46    'cool'=>$karma['cool'],
47    'sexy'=>$karma['sexy'],
48    'nb_bookmarks'=>$nb_bookmarks,
49    'nb_blogs'=>$nb_blogs,
50    'nb_photos'=>$nb_photos,
51    'join_date'=>$user['join_date'],
52    'fname_sndex' => $db->getOne('SELECT SOUNDEX(?)', stripslashes($user['fname'])),
53        'lname_sndex' => $db->getOne('SELECT SOUNDEX(?)', stripslashes($user['lname']))
54    );
55
56
57    $result = $db->autoExecute('cache_user', $cache_values);
58    if(DB::isError($result))
59        print $result->getUserInfo();
60
61}
62
63$db->disconnect();
64?>
Note: See TracBrowser for help on using the browser.