source: trunk/Options.php@ 525

Last change on this file since 525 was 525, checked in by chronos, 12 years ago
  • Opraveno: Zobrazení porovnání překladů.
  • Opraveno: Zobrazení stavu dokončení pro všechny překlady.
  • Přidáno: V seznamu překladů přidán sloupec Jazyk.
  • Opraveno: Místa, kde s pevným indexem anglického originálu upravena na nastavitelný.
  • Property svn:executable set to *
File size: 4.7 KB
Line 
1<?php
2include('includes/global.php');
3
4function UserOptionsFrom()
5{
6 global $User, $System;
7
8 $Output = '<form action="Options.php?action=save" method="post">
9 <fieldset><legend>Nastavení uživatele</legend>
10 <table>
11 <tr><td>Email:</td><td><input type="text" name="Email" value="'.$User->Email.'" /></td></tr>
12 <tr><td>Původní heslo:</td><td><input type="password" name="OldPass" /></td></tr>
13 <tr><td>Nové heslo:</td><td><input type="password" name="NewPass" /></td></tr>
14 <tr><td>Nové heslo pro potvrzení: </td><td><input type="password" name="NewPass2" /></td></tr>
15 <tr><td>Normálně budu překládat do: </td><td>'.WriteLanguages($User->Language).'</td></tr>
16 <tr><td>Po uložení překladu přesměrovat: </td><td>';
17 $Output .= '<select name="redirecting">'.
18 '<option value="0">Nikam</option>'.
19 '<option value="1"';
20 if($User->Redirecting == '1') $Output .= ' selected="selected"';
21 $Output .= '>Na nepřeložené</option>';
22 $Output .= '<option value="2"';
23 if($User->Redirecting == '2') $Output .= ' selected="selected"';
24 $Output .= '>Na další překlad</option>';
25 $Output .= '<option value="3"';
26 if($User->Redirecting == '3') $Output .= ' selected="selected"';
27 $Output .= '>Na předchozí překlad</option>';
28 $Output .= '</select>';
29
30 $Output .= '</td></tr>'.
31 '<tr><td>Upřednostněná verze klienta: </td><td>'.ClientVersionSelection($User->PreferredVersion).'</td></tr>'.
32 '<tr><td>Veřejný text profilu:</td><td>'.
33 '<textarea name="info" cols="60" rows="10">'.$User->Info.'</textarea></td></tr>'.
34 '<tr><td colspan="2"><input type="submit" value="Uložit" /></td></tr>'.
35 '</table></fieldset>'.
36 '</form>';
37
38 $Output .= ' <fieldset><legend>Překladatelský tým</legend>';
39 $DbResult = $System->Database->query('SELECT `Id`, `Name` FROM `Team`');
40 $Output .= '<a href="team.php?action=create">Vytvořit tým</a><br />'.
41 '<a href="team.php?action=leave">Opustit tým</a><br />'.
42 '<br /><form action="team.php" method="get">'.
43 '<input type="hidden" name="action" value="gointeam"/>'.
44 '<select name="id">';
45 while($LineTeam = $DbResult->fetch_assoc())
46 {
47 $Output .= '<option value="'.$LineTeam['Id'].'"';
48 if ($LineTeam['Id'] == $User->Team) $Output .= ' selected="selected"';
49 $Output .= '>'.$LineTeam['Name'].'</option>';
50 }
51 $Output .= '</select> <input type="submit" value="Vstoupit" />
52 </form>';
53 $Output .= '</fieldset>';
54 return($Output);
55}
56
57function UserOptionsSave()
58{
59 global $System, $User;
60
61 $Output = '';
62 if(array_key_exists('Email', $_POST))
63 {
64 $Email = $_POST['Email'];
65 $OldPass = $_POST['OldPass'];
66 $NewPass = $_POST['NewPass'];
67 $NewPass2 = $_POST['NewPass2'];
68 $Language = $_POST['Language'];
69 $Redirecting = $_POST['redirecting'];
70 $PreferredVersion = $_POST['ClientVersion'];
71 if($PreferredVersion == '') $PreferredVersion = null;
72 $Info = $_POST['info'];
73
74 // Do user want to change password?
75 if(($OldPass != '') or ($NewPass != '') or ($NewPass2 != ''))
76 {
77 if($NewPass == $NewPass2)
78 {
79 $DbResult = $System->Database->query('SELECT `Pass`, '.$User->CryptPasswordSQL('"'.$OldPass.'"', '`Salt`').' AS `Hash` FROM `User` WHERE `ID`= '.$User->Id);
80 $DbRow = $DbResult->fetch_assoc();
81 if($DbRow['Hash'] == $DbRow['Pass'])
82 {
83 // Update password
84 $Salt = $User->GetPasswordSalt();
85 $System->Database->query('UPDATE `User` SET `Pass` = '.$User->CryptPasswordSQL('"'.$NewPass.'"', '"'.$Salt.'"').', `Salt`="'.$Salt.'" WHERE `ID` = '.$User->Id);
86 $Output .= ShowMessage('Heslo změněno.');
87 } else $Output .= ShowMessage('Staré heslo neodpovídá.', MESSAGE_CRITICAL);
88 } else $Output .= ShowMessage('Hesla se neshodují.', MESSAGE_CRITICAL);
89 }
90 $System->Database->update('User', '`ID` = '.$User->Id, array('Email' => $Email,
91 'Language' => $Language, 'Redirecting' => $Redirecting, 'Info' => $Info,
92 'PreferredVersion' => $PreferredVersion));
93 $Output .= ShowMessage('Úprava nastavení proběhla v pořádku, Email: <b>'.$Email.'</b> Uživatel: <b>'.$User->Name.'</b>');
94 WriteLog('Úprava nastavení!', LOG_TYPE_USER);
95 $User->Load();
96 } else $Output .= ShowMessage('Nezadány údaje.', MESSAGE_CRITICAL);
97 return($Output);
98}
99
100$Output = '';
101if($User->Licence(LICENCE_USER))
102{
103 if(array_key_exists('action', $_GET) and ($_GET['action'] == 'save'))
104 {
105 $Output .= UserOptionsSave();
106 }
107 $Output .= UserOptionsFrom();
108} else $Output .= ShowMessage('Nejste přihlášený.', MESSAGE_CRITICAL);
109ShowPage($Output);
110
111?>
112
Note: See TracBrowser for help on using the repository browser.