* Add support for groups in SQL. Added several new files and modified a few more.
[freeradius.git] / dialup_admin / lib / sql / user_info.php3
1 <?php
2 require('../lib/sql/attrmap.php3');
3 if (is_file("../lib/sql/drivers/$config[sql_type]/functions.php3"))
4         include_once("../lib/sql/drivers/$config[sql_type]/functions.php3");
5 else{
6         echo "<b>Could not include SQL library</b><br>\n";
7         exit();
8 }
9 if ($config[sql_use_operators] == 'true'){
10         $op = ',op';
11         $use_op = 1;
12 }else{
13         $op = "";
14         $use_op = 0;
15 }
16 $user_exists = 'no';
17 unset($item_vals);
18 unset($tmp);
19 $link = @da_sql_pconnect($config);
20 if ($link){
21         $res = @da_sql_query($link,$config,
22         "SELECT Attribute,Value $op FROM $config[sql_check_table] WHERE UserName = '$login';");
23         if ($res){
24                 if (@da_sql_num_rows($res,$config))
25                         $user_exists = 'yes';
26                 while(($row = @da_sql_fetch_array($res,$config))){
27                         $attr = $row[Attribute];
28                         $val = $row[Value];
29                         if ($use_op){
30                                 $oper = $row[op];
31                                 $tmp["$attr"][operator][]="$oper";
32                         }
33                         $tmp["$attr"][]="$val";
34                         $tmp["$attr"][count]++;
35                 }
36                 $res = @da_sql_query($link,$config,
37                 "SELECT Attribute,Value $op FROM $config[sql_reply_table] WHERE UserName = '$login';");
38                 if ($res){
39                         if (@da_sql_num_rows($res,$config))
40                                 $user_exists = 'yes';
41                         while(($row = @da_sql_fetch_array($res,$config))){
42                                 $attr = $row[Attribute];
43                                 $val = $row[Value];
44                                 if ($use_op){
45                                         $oper = $row[op];
46                                         $tmp["$attr"][operator][]="$oper";
47                                 }
48                                 $tmp["$attr"][] = "$val";
49                                 $tmp["$attr"][count]++;
50                         }
51                         if ($config[sql_use_user_info_table] == 'true'){
52                                 $res = @da_sql_query($link,$config,
53                                 "SELECT * FROM $config[sql_user_info_table] WHERE UserName = '$login';");
54                                 if ($res){
55                                         if (@da_sql_num_rows($res,$config))
56                                                 $user_exists = 'yes';
57                                         if (($row = @da_sql_fetch_array($res,$config))){        
58                                                 $cn = ($row[Name]) ? $row[Name] : '-';
59                                                 $telephonenumber = ($row[WorkPhone]) ? $row[WorkPhone] : '-';
60                                                 $homephone = ($row[HomePhone]) ? $row[HomePhone] : '-';
61                                                 $ou = ($row[Department]) ? $row[Department] : '-';
62                                                 $mail = ($row[Mail]) ? $row[Mail] : '-';
63                                                 $mobile = ($row[Mobile]) ? $row[Mobile] : '-';
64                                         }
65                                 }                       
66                         }
67                 }
68                 else
69                         echo "<b>Database query failed partially</b><br>\n";
70                 foreach($attrmap as $key => $val){
71                         if (isset($tmp[$val])){
72                                 $item_vals["$key"] = $tmp[$val];
73                                 $item_vals["$key"][count] = $tmp[$val][count];
74                                 if ($use_op)
75                                         $item_vals["$key"][operator] = $tmp[$val][operator];
76
77                         }
78                 }
79
80         }
81         else
82                 echo "<b>Database query failed</b><br>\n";      
83 }
84 else
85         echo "<b>Could not connect to database</b><br>\n";
86 ?>