1 | <?php
|
---|
2 |
|
---|
3 | include('includes/global.php');
|
---|
4 |
|
---|
5 | ShowPage();
|
---|
6 |
|
---|
7 | function ShowTeamList()
|
---|
8 | {
|
---|
9 | global $Config, $Database;
|
---|
10 |
|
---|
11 | echo('<h3>Seznam překladatelských týmů</h3>');
|
---|
12 |
|
---|
13 | if(array_key_exists('Page', $_GET)) $_SESSION['Page'] = $_GET['Page'];
|
---|
14 | else if(!array_key_exists('Page', $_SESSION)) $_SESSION['Page'] = 1;
|
---|
15 | if(array_key_exists('Order', $_GET)) $_SESSION['Order'] = $_GET['Order'];
|
---|
16 | else if(!array_key_exists('Order', $_SESSION)) $_SESSION['Order'] = 'numberuser';
|
---|
17 | if(array_key_exists('Desc', $_GET)) $_SESSION['Desc'] = $_GET['Desc'];
|
---|
18 | else if(!array_key_exists('Desc', $_SESSION)) $_SESSION['Desc'] = '';
|
---|
19 | ListPaging('?Page=', 'team', '', $Config['Web']['ItemsPerPage'], $_SESSION['Page']);
|
---|
20 | echo('<table class="BaseTable">');
|
---|
21 |
|
---|
22 | if(array_key_exists('search', $_GET)) $_SESSION['search'] = ' WHERE `name` LIKE "%'.$_GET['search'].'%" OR `description` LIKE "%'.$_GET['search'].'%"';
|
---|
23 |
|
---|
24 | /*
|
---|
25 | if(array_key_exists('team', $_GET))
|
---|
26 | {
|
---|
27 | $_SESSION['team'] = $_GET['team'];
|
---|
28 | if($_GET['team'] == '') $_SESSION['team'] = '';
|
---|
29 | } else if(!array_key_exists('team', $_SESSION)) $_SESSION['team'] = '';
|
---|
30 |
|
---|
31 | if(is_numeric($_SESSION['team'])) $Where = ' WHERE '.$_SESSION['team'];
|
---|
32 | else $Where = '';
|
---|
33 |
|
---|
34 | if(!is_numeric($_SESSION['team'])) echo(' <a href="?Where">Zrušit filtr týmů</a><br />');
|
---|
35 | */
|
---|
36 |
|
---|
37 | $desc = $_SESSION['Desc'];
|
---|
38 | if($desc == '') $desc = 'DESC'; else $desc = '';
|
---|
39 |
|
---|
40 | //ochrana proti špatným údajům v session z jiných tabulek
|
---|
41 | if(($_SESSION['Order'] <> 'name') and ($_SESSION['Order'] <> 'numberuser') and ($_SESSION['Order'] <> 'description'))
|
---|
42 | $_SESSION['Order'] = 'numberuser';
|
---|
43 | /*
|
---|
44 |
|
---|
45 | <th><a href="?Order=NumberTranslate&Desc='.$desc.'" title="Počet přeložených textů">Přeložených</a></th>
|
---|
46 | <th><a href="?Order=XP&Desc='.$desc.'">Úroveň</a></th>
|
---|
47 | */
|
---|
48 | echo('<tr><th><a href="?Order=name&Desc='.$desc.'">Jméno</a></th>'.
|
---|
49 | '<th><a href="?Order=numberuser&Desc='.$desc.'">Počet členů</a></th>');
|
---|
50 | if(Licence(LICENCE_USER)) echo('<th>Uživatelské akce</th>');
|
---|
51 | echo('</tr>');
|
---|
52 |
|
---|
53 | $ID = $Database->SQLCommand('SELECT *, (SELECT COUNT(*) FROM user WHERE user.team = team.ID) AS numberuser FROM team '.$_SESSION['search'].' ORDER BY '.$_SESSION['Order'].' '.$_SESSION['Desc'].' LIMIT '.($_SESSION['Page'] - 1) * $Config['Web']['ItemsPerPage'].','.$Config['Web']['ItemsPerPage']);
|
---|
54 | while($Line = mysql_fetch_assoc($ID))
|
---|
55 | {
|
---|
56 | echo('<tr>'.
|
---|
57 | '<td><a href="?action=team&id='.$Line['ID'].'">'.$Line['name'].'</a></td>'.
|
---|
58 | '<td><a href="userlist.php?team='.$Line['ID'].'" title="Zobrazit členy týmu">'.$Line['numberuser'].'</a></td>');
|
---|
59 | if(Licence(LICENCE_USER)) echo ('<td><a href="?action=gointeam&id='.$Line['ID'].'">Vstoupit do týmu</a></td>');
|
---|
60 | echo('</tr>');
|
---|
61 | }
|
---|
62 | echo('</table>');
|
---|
63 |
|
---|
64 | ListPaging('?Page=', 'team', '', $Config['Web']['ItemsPerPage'], $_SESSION['Page']);
|
---|
65 | if(Licence(LICENCE_USER)) echo('<br /><div style="text-align: center;"><a href="?action=create">Vytvořit překladatelský tým</a></div>');
|
---|
66 | }
|
---|
67 |
|
---|
68 | if(array_key_exists('action', $_GET))
|
---|
69 | {
|
---|
70 | if($_GET['action'] == 'gointeam')
|
---|
71 | {
|
---|
72 | if(Licence(LICENCE_USER))
|
---|
73 | {
|
---|
74 | if(array_key_exists('id', $_GET))
|
---|
75 | {
|
---|
76 | $ID = $Database->SQLCommand('UPDATE user SET team = '.$_GET['id'].' WHERE ID = '.$_SESSION['UserID']);
|
---|
77 | echo('<strong>Vstoupil jsi do týmu</strong><br /><br />');
|
---|
78 | WriteLog('Uživatel vstoupil do týmu '.$_GET['id'], 3);
|
---|
79 |
|
---|
80 | // Delete all teams without users
|
---|
81 | $Database->SQLCommand('DELETE FROM `team` WHERE (SELECT COUNT(*) FROM user WHERE user.team = team.ID) = 0');
|
---|
82 |
|
---|
83 | ShowTeamList();
|
---|
84 | } else echo('Nutno zadat id týmu');
|
---|
85 | } else echo('Nemáte oprávnění');
|
---|
86 | } else
|
---|
87 | if($_GET['action'] == 'finish_create')
|
---|
88 | {
|
---|
89 | if(Licence(LICENCE_USER))
|
---|
90 | {
|
---|
91 | if(array_key_exists('name', $_POST) and array_key_exists('description', $_POST))
|
---|
92 | {
|
---|
93 | $DbResult = $Database->SQLCommand('SELECT COUNT(*) FROM `team` WHERE `name` = "'.trim($_POST['name']).'"');
|
---|
94 | $DbRow = mysql_fetch_row($DbResult);
|
---|
95 | $Count = $DbRow[0];
|
---|
96 | if($Count == 0)
|
---|
97 | {
|
---|
98 | $ID = $Database->SQLCommand('INSERT INTO `team` (`name` ,`description` ) VALUES ( \''.trim($_POST['name']).'\', \''.trim($_POST['description']).'\');');
|
---|
99 | $Database->SQLCommand('UPDATE user SET team = '.mysql_insert_id().' WHERE ID = '.$_SESSION['UserID']);
|
---|
100 | echo('<strong>Překladatelský tým vytvořen</strong><br /><br />');
|
---|
101 | WriteLog('Překladatelský tým vytvořen '.$_POST['name'], 3);
|
---|
102 |
|
---|
103 | // Delete all teams without users
|
---|
104 | $Database->SQLCommand('DELETE FROM `team` WHERE (SELECT COUNT(*) FROM user WHERE user.team = team.ID) = 0');
|
---|
105 | } else echo('Již existuje tým se stejným jménem');
|
---|
106 | } else echo('Chybí údaje formuláře');
|
---|
107 | } else echo('Nemáte oprávnění');
|
---|
108 | ShowTeamList();
|
---|
109 | } else
|
---|
110 | if($_GET['action'] == 'create')
|
---|
111 | {
|
---|
112 | if(Licence(LICENCE_USER))
|
---|
113 | {
|
---|
114 | echo('<form action="?action=finish_create" method="post">'.
|
---|
115 | '<fieldset><legend>Vytvoření nového týmu</legend>'.
|
---|
116 | '<table><tr><td>Jméno:</td><td><input type="text" name="name" /></td></tr>'.
|
---|
117 | '<tr><td>Popis:</td><td><input type="text" name="description" /></td></tr>'.
|
---|
118 | '<tr><td colspan="2"><input type="submit" value="Vytvořit a vstoupit" /></td></tr>'.
|
---|
119 | '</table></fieldset></form>');
|
---|
120 | } else echo('Nemáte oprávnění');
|
---|
121 | } else
|
---|
122 | if($_GET['action'] == 'team') // Zobrazení týmu
|
---|
123 | {
|
---|
124 | if(array_key_exists('id', $_GET))
|
---|
125 | {
|
---|
126 | include('img_level.php');
|
---|
127 | $Columns = '';
|
---|
128 | $Joins = '';
|
---|
129 | foreach($TranslationTree as $Group)
|
---|
130 | if($Group['TablePrefix'] != '')
|
---|
131 | {
|
---|
132 | $Columns .= 'COALESCE(T'.$Group['Id'].'.Count, 0) + ';
|
---|
133 | $Joins .= ' LEFT JOIN (SELECT User, COUNT(User) as Count FROM `'.$Group['TablePrefix'].'` WHERE (Complete = 1) AND (Language <> 0) GROUP BY User) as T'.$Group['Id'].' ON user.ID=T'.$Group['Id'].'.User';
|
---|
134 | }
|
---|
135 |
|
---|
136 | $Line = mysql_fetch_assoc($Database->SQLCommand('SELECT *,(SELECT count(*) FROM user WHERE team = team.ID) as numberuser, (SELECT sum('.substr($Columns, 0, -3).') FROM user '.$Joins.' WHERE team = team.ID) as NumberTranslate FROM team WHERE ID='.$_GET['id']));
|
---|
137 |
|
---|
138 | echo('<strong>Překladatelský tým '.$Line['name'].'</strong><br />'.
|
---|
139 | $Line['description'].'<br /><br />'.
|
---|
140 | '<a href="export/?team='.$_GET['id'].'">Exportovat překlad týmu</a> ');
|
---|
141 | if(Licence(LICENCE_USER)) echo('<a href="?action=gointeam&id='.$Line['ID'].'">Vstoupit do týmu</a><br /><br />');
|
---|
142 | echo('<fieldset><legend>Statistika</legend>'.
|
---|
143 | 'Počet členů týmu: <a href="userlist.php?team='.$Line['ID'].'" title="Zobrazit členy týmu">'.$Line['numberuser'].'</a><br />'.
|
---|
144 | 'Počet přeložených textů týmu: <strong>'.$Line['NumberTranslate'].'</strong><br />'.
|
---|
145 | 'Průměrná úroveň překladatelů v týmu: <img src="tmp/teams/'.$Line['name'].'/level.png" /><br /><br />'.
|
---|
146 | '<strong>Stav dokončení pro tým:</strong><br />');
|
---|
147 | foreach($TranslationTree as $Group)
|
---|
148 | if($Group['TablePrefix'] != '')
|
---|
149 | echo('<div class="state-image"><img alt="'.$Group['TablePrefix'].'" src="img_statistic.php?group='.$Group['Id'].'&team='.$_GET['id'].'" title="statistika překladů '.$Group['Name'].'"/></div>');
|
---|
150 | echo('</fieldset>');
|
---|
151 | } else echo('Musíte zadat id týmu');
|
---|
152 | } else ShowTeamList();
|
---|
153 | } else ShowTeamList();
|
---|
154 |
|
---|
155 | ShowFooter();
|
---|
156 |
|
---|
157 | ?>
|
---|