Subversion Repositories ALCASAR

Rev

Rev 2501 | Details | Compare with Previous | Last modification | View Log

Rev Author Line No. Line
509 richard 1
<?php
2
require('../lib/sql/attrmap.php');
3
if (is_file("../lib/sql/drivers/$config[sql_type]/functions.php"))
4
        include_once("../lib/sql/drivers/$config[sql_type]/functions.php");
5
else{
6
        echo "<b>Could not include SQL library</b><br>\n";
7
        exit();
8
}
1805 clement.si 9
if ($config['sql_use_operators'] == 'true'){
509 richard 10
        $op = ',op';
11
        $use_op = 1;
12
}else{
13
        $op = "";
14
        $use_op = 0;
15
}
16
$group_exists = 'no';
1805 clement.si 17
$link = da_sql_pconnect($config);
509 richard 18
if ($link){
1805 clement.si 19
        if (!isset($login) || $login == ''){
509 richard 20
                unset($existing_groups);
21
 
1805 clement.si 22
                $res = da_sql_query($link,$config,
509 richard 23
                "SELECT COUNT(*) as counter,groupname FROM $config[sql_usergroup_table]
24
                GROUP BY groupname;");
25
                if ($res){
1805 clement.si 26
                        while(($row = da_sql_fetch_array($res,$config))){
27
                                $name = $row['groupname'];
28
                                $existing_groups["$name"] = $row['counter'];
509 richard 29
                        }
30
                        if (isset($existing_groups))
31
                                ksort($existing_groups);
32
                }
33
                else
34
                        echo "<b>Database query failed: " . da_sql_error($link,$config) . "</b><br>\n";
35
        }
36
        else{
37
                unset($item_vals);
38
                unset($tmp);
39
                unset($group_members);
40
                unset($existing_groups);
41
 
1805 clement.si 42
                $res = da_sql_query($link,$config,
509 richard 43
                "SELECT attribute,value $op FROM $config[sql_groupcheck_table] WHERE groupname = '$login';");
44
                if ($res){
1805 clement.si 45
                        if (da_sql_num_rows($res,$config))
509 richard 46
                                $group_exists = 'yes';
1805 clement.si 47
                        while(($row = da_sql_fetch_array($res,$config))){
48
                                $attr = $row['attribute'];
49
                                $val = $row['value'];
50
                                if(!isset($tmp["$attr"]['count'])) $tmp["$attr"]['count'] = 0;
509 richard 51
                                if ($use_op){
1805 clement.si 52
                                        $oper = $row['op'];
53
                                        $tmp["$attr"]['operator'][]="$oper";
509 richard 54
                                }
55
                                $tmp["$attr"][]="$val";
1805 clement.si 56
                                $tmp["$attr"]['count']++;
509 richard 57
                        }
1805 clement.si 58
                        $res = da_sql_query($link,$config,
509 richard 59
                        "SELECT attribute,value $op FROM $config[sql_groupreply_table] WHERE groupname = '$login';");
60
                        if ($res){
1805 clement.si 61
                                if (da_sql_num_rows($res,$config))
509 richard 62
                                        $group_exists = 'yes';
1805 clement.si 63
                                while(($row = da_sql_fetch_array($res,$config))){
64
                                        $attr = $row['attribute'];
65
                                        $val = $row['value'];
66
                                        if(!isset($tmp["$attr"]['count'])) $tmp["$attr"]['count'] = 0;
509 richard 67
                                        /*Ajout en vue de l'impression des données (thank's to Geoffroy MUSITELLI)*/
68
                                        if($attr == "Session-Timeout") $sto_imp = $val;
69
                                        /*Fin Ajout*/
70
                                        if ($use_op){
1805 clement.si 71
                                                $oper = $row['op'];
72
                                                $tmp["$attr"]['operator'][]="$oper";
509 richard 73
                                        }
74
                                        $tmp["$attr"][] = "$val";
1805 clement.si 75
                                        $tmp["$attr"]['count']++;
509 richard 76
                                }
77
                        }
78
                        else
79
                                echo "<b>Database query failed partially: " . da_sql_error($link,$config) . "</b><br>\n";
1805 clement.si 80
                        $res = da_sql_query($link,$config,
509 richard 81
                        "SELECT username FROM $config[sql_usergroup_table] WHERE groupname = '$login' ORDER BY username;");
82
                        if ($res){
1805 clement.si 83
                                if (da_sql_num_rows($res,$config))
509 richard 84
                                        $group_exists = 'yes';
1805 clement.si 85
                                while(($row = da_sql_fetch_array($res,$config))){
86
                                        $member = $row['username'];
509 richard 87
                                        $group_members[] = "$member";
88
                                }
89
                        }
90
                        else
91
                                echo "<b>Database query failed partially: " . da_sql_error($link,$config) . "</b><br>\n";
92
                        if (isset($tmp)){
93
                                foreach(array_keys($tmp) as $val){
2333 tom.houday 94
                                        unset($key);
509 richard 95
                                        if ($val == '')
96
                                                continue;
2501 tom.houday 97
                                        if ((isset($rev_attrmap["$val"])) && (!empty($rev_attrmap["$val"]))) {
98
                                                $key = $rev_attrmap["$val"];
99
                                        } else {
509 richard 100
                                                $key = $val;
101
                                                $attrmap["$key"] = $val;
102
                                                $attr_type["$key"] = 'replyItem';
103
                                                $rev_attrmap["$val"] = $key;
104
                                        }
105
                                        $item_vals["$key"] = $tmp[$val];
1805 clement.si 106
                                        $item_vals["$key"]['count'] = $tmp[$val]['count'];
509 richard 107
                                        if ($use_op)
1805 clement.si 108
                                                $item_vals["$key"]['operator'] = $tmp[$val]['operator'];
509 richard 109
                                }
110
                        }
111
                }
112
                else
113
                        echo "<b>Database query failed: " . da_sql_error($link,$config) . "</b><br>\n";
114
        }
115
}
116
else
117
        echo "<b>Could not connect to SQL database</b><br>\n";
118
?>