bernd commited on 2011-12-21 16:51:53
Zeige 3 geänderte Dateien mit 25 Einfügungen und 4 Löschungen.
git-svn-id: https://svn.schokokeks.org/repos/tools/webinterface/trunk@2095 87cf0b9e-d624-0410-a070-f6ee81989793
| ... | ... |
@@ -11,6 +11,15 @@ $users = list_users(); |
| 11 | 11 |
$action = ''; |
| 12 | 12 |
$form = ''; |
| 13 | 13 |
|
| 14 |
+html_header("<script type=\"text/javascript\">
|
|
| 15 |
+ function showDescription( ) {
|
|
| 16 |
+ var do_it = (document.getElementById('gitweb').checked == false);
|
|
| 17 |
+ var inputfield = document.getElementById('description');
|
|
| 18 |
+ inputfield.disabled = do_it; |
|
| 19 |
+ } |
|
| 20 |
+</script> |
|
| 21 |
+"); |
|
| 22 |
+ |
|
| 14 | 23 |
if (isset($_GET['repo']) && isset($repos[$_GET['repo']])) {
|
| 15 | 24 |
$action = 'editrepo'; |
| 16 | 25 |
title("Zugriff auf GIT-Repository ändern");
|
| ... | ... |
@@ -43,8 +52,9 @@ foreach ($users as $user) {
|
| 43 | 52 |
} |
| 44 | 53 |
$checked = (isset($_GET['repo']) && isset($repos[$_GET['repo']]) && isset($repos[$_GET['repo']]['users']['gitweb']) && $repos[$_GET['repo']]['users']['gitweb'] == 'R') ? ' checked="checked"' : ''; |
| 45 | 54 |
$description = (isset($_GET['repo']) && isset($repos[$_GET['repo']])) ? $repos[$_GET['repo']]['description'] : ''; |
| 46 |
-$form .= '<p><input type="checkbox" name="gitweb" id="gitweb" value="r"'.$checked.' /> <label for="gitweb">Öffentlicher Lesezugriff via gitweb</label><br /> |
|
| 47 |
-<label for="description">Beschreibung des Repository:</label> <input type="text" name="description" id="description" value="'.$description.'" /></p>'; |
|
| 55 |
+$disabled = $checked ? '' : ' disabled="disabled"'; |
|
| 56 |
+$form .= '<p><input type="checkbox" name="gitweb" id="gitweb" value="r"'.$checked.' onclick="showDescription()" /> <label for="gitweb">Öffentlicher Lesezugriff via gitweb</label><br /> |
|
| 57 |
+<label for="description">Beschreibung des Repository:</label> <input type="text" name="description" id="description" value="'.$description.'"'.$disabled.' /></p>'; |
|
| 48 | 58 |
$form .= '</td></tr></table>'; |
| 49 | 59 |
$form .= '<p><input type="submit" value="Speichern" /></p>'; |
| 50 | 60 |
|
| ... | ... |
@@ -21,8 +21,17 @@ if (count($repos) == 0) {
|
| 21 | 21 |
foreach ($repos as $repo => $settings) {
|
| 22 | 22 |
$description = $settings['description'] ? '<br /><em>"'.$settings['description'].'"</em>' : ''; |
| 23 | 23 |
$url = get_git_url($repo); |
| 24 |
- output("<div><p><strong>{$repo}</strong> ".internal_link('edit', icon_edit('Zugriffsrechte bearbeiten'), 'repo='.$repo)." ".internal_link('delete', icon_delete('Repository löschen'), 'repo='.$repo)."{$description}<br />{$url}</p><ul>");
|
|
| 24 |
+ $public = isset($settings['users']['gitweb']) && $settings['users']['gitweb'] == 'R'; |
|
| 25 |
+ $public_string = ''; |
|
| 26 |
+ if ($public) {
|
|
| 27 |
+ $public_url = 'http://git.schokokeks.org/'.$repo.'.git'; |
|
| 28 |
+ $public_string = '(Öffentlich abrufbar über <a href="'.$public_url.'">'.$public_url.'</a>)'; |
|
| 29 |
+ } |
|
| 30 |
+ output("<div><p><strong>{$repo}</strong> ".internal_link('edit', icon_edit('Zugriffsrechte bearbeiten'), 'repo='.$repo)." ".internal_link('delete', icon_delete('Repository löschen'), 'repo='.$repo)."{$description}<br />{$url} {$public_string}</p><ul>");
|
|
| 25 | 31 |
foreach ($settings['users'] as $user => $rights) {
|
| 32 |
+ if ($user == 'gitweb') {
|
|
| 33 |
+ continue; |
|
| 34 |
+ } |
|
| 26 | 35 |
$grant = ''; |
| 27 | 36 |
switch ($rights) {
|
| 28 | 37 |
case 'R': $grant = 'Lesezugriff'; |
| ... | ... |
@@ -45,8 +45,10 @@ if ($_GET['action'] == 'newuser') {
|
| 45 | 45 |
} |
| 46 | 46 |
if ($_POST['gitweb'] == 'r') {
|
| 47 | 47 |
$permissions['gitweb'] = 'R'; |
| 48 |
- } |
|
| 49 | 48 |
$description = $_POST['description']; |
| 49 |
+ } else {
|
|
| 50 |
+ $description = NULL; |
|
| 51 |
+ } |
|
| 50 | 52 |
save_repo($_POST['repo'], $permissions, $description); |
| 51 | 53 |
if (! $debugmode) |
| 52 | 54 |
header('Location: git');
|
| 53 | 55 |