xaizek / rocketgit (License: AGPLv3+) (since 2018-12-09)
Light and fast Git hosting solution suitable to serve both as a hub or as a personal code storage with its tickets, pull requests, API and much more.
Commit c16729a6930e8168b4c3fdf897319987d33b5ba7

Rights and CSS fixes
Author: Catalin(ux) M. BOIE
Author date (UTC): 2015-12-13 19:25
Committer name: Catalin(ux) M. BOIE
Committer date (UTC): 2015-12-13 19:26
Parent(s): 02032d2670f977cf4e40b2a1561527e0832a4ffa
Signing key:
Tree: cf56aeae3e286c5996bf69bd9f0f836ed24e14dd
File Lines added Lines deleted
TODO 7 0
inc/bug.inc.php 14 14
inc/repo.inc.php 41 8
inc/user.inc.php 4 0
inc/user/repo/bug/main.php 13 0
inc/user/repo/bug/show/add_note.php 14 1
inc/user/repo/bug/show/show.php 6 1
root/themes/default/main.css 20 4
root/themes/default/repo/bug/bug_add_edit.html 0 2
root/themes/default/repo/bug/deny_edit.html 1 1
root/themes/default/repo/bug/list_note/between.html 0 2
root/themes/default/repo/bug/list_note/line.html 6 4
root/themes/default/repo/bug/main.html 2 0
root/themes/default/repo/bug/note/deny_add.html 3 0
root/themes/default/repo/bug/show.html 19 19
root/themes/default/repo/lock_ok.html 3 0
root/themes/default/repo/stats/stats.html 5 0
root/themes/default/user/home.html 1 1
root/themes/default/user/repo/menu.html 8 0
File TODO changed (mode: 100644) (index 128bec9..4de79e0)
1 1 == Where I stopped last time == == Where I stopped last time ==
2 [ ] Fix notes css
2 3
3 4 == BEFORE NEXT RELEASE == == BEFORE NEXT RELEASE ==
5 [ ] get rid of beteen.html (because of css)
6 [ ] get rid of the div between notes.
7 [ ] make sure where we use gmdate to add ' UTC'
8 [ ] rights: "Add bug" should be inserted with prio 30001,
9 so user can forbit adding bugs?
10 [ ] bug: allow private bugs (think about security reports)
4 11 [ ] 'creation' => 'itime_nice' [ ] 'creation' => 'itime_nice'
5 12 [ ] When a push is done, schedule a disk size rebuild. [ ] When a push is done, schedule a disk size rebuild.
6 13 And remove this operation from cron. And remove this operation from cron.
File inc/bug.inc.php changed (mode: 100644) (index b6d12a1..b441f02)
... ... function rg_bug_note_add($db, $repo_id, $bug_id, $login_uid, $data)
978 978
979 979 $ret = FALSE; $ret = FALSE;
980 980 while (1) { while (1) {
981 // TODO: test if user is allowed to add a note
982
983 981 $itime = time(); $itime = time();
984 982 $ip = isset($_SERVER['REMOTE_ADDR']) ? $_SERVER['REMOTE_ADDR'] : "?"; $ip = isset($_SERVER['REMOTE_ADDR']) ? $_SERVER['REMOTE_ADDR'] : "?";
985 983
 
... ... function rg_bug_note_add($db, $repo_id, $bug_id, $login_uid, $data)
1014 1012 break; break;
1015 1013 } }
1016 1014
1015 $who_added_text = '?';
1017 1016 $_ui = rg_user_info($db, $login_uid, "", ""); $_ui = rg_user_info($db, $login_uid, "", "");
1018 if ($_ui['exists'] != 1) {
1019 rg_bug_set_error("cannot lookup user"
1020 . " (" . rg_user_error() . ")");
1021 break;
1022 }
1017 if ($_ui['exists'] == 1)
1018 $who_added_text = $_ui['username'];
1023 1019
1024 1020 $event = array("category" => 4000, "prio" => 200, $event = array("category" => 4000, "prio" => 200,
1025 1021 'bug' => array( 'bug' => array(
 
... ... function rg_bug_note_add($db, $repo_id, $bug_id, $login_uid, $data)
1032 1028 'note' => array( 'note' => array(
1033 1029 'body' => $data['note'], 'body' => $data['note'],
1034 1030 'who_added' => $login_uid, 'who_added' => $login_uid,
1035 'who_added_text' => $_ui['username']));
1031 'who_added_text' => $who_added_text));
1036 1032 $r = rg_event_add($db, $event); $r = rg_event_add($db, $event);
1037 1033 if ($r !== TRUE) { if ($r !== TRUE) {
1038 1034 rg_bug_set_error("cannot add event" rg_bug_set_error("cannot add event"
 
... ... function rg_bug_note_list($db, $repo_id, $bug_id, $offset)
1067 1063 $sql = "SELECT * FROM bug_notes" $sql = "SELECT * FROM bug_notes"
1068 1064 . " WHERE repo_id = @@repo_id@@" . " WHERE repo_id = @@repo_id@@"
1069 1065 . " AND bug_id = @@bug_id@@" . " AND bug_id = @@bug_id@@"
1070 . " ORDER BY itime"
1066 . " ORDER BY itime DESC"
1071 1067 . " OFFSET $offset"; . " OFFSET $offset";
1072 1068 $res = rg_sql_query_params($db, $sql, $params); $res = rg_sql_query_params($db, $sql, $params);
1073 1069 if ($res === FALSE) { if ($res === FALSE) {
 
... ... function rg_bug_note_list($db, $repo_id, $bug_id, $offset)
1077 1073
1078 1074 $ret = array(); $ret = array();
1079 1075 while (($row = rg_sql_fetch_array($res))) { while (($row = rg_sql_fetch_array($res))) {
1080 $row['creation'] = gmdate("Y-m-d H:i", $row['itime']);
1076 $row['note_creation'] = gmdate("Y-m-d H:i", $row['itime']) . ' UTC';
1081 1077
1082 1078 $_ui = rg_user_info($db, $row['uid'], "", ""); $_ui = rg_user_info($db, $row['uid'], "", "");
1083 if ($_ui['exists'] == 1)
1084 $row['owner'] = $_ui['username'];
1085 else
1086 $row['owner'] = "?";
1079 if ($_ui['exists'] == 1) {
1080 $row['note_owner'] = $_ui['username'];
1081 $row['HTML:note_gravatar'] = $_ui['HTML:gravatar'];
1082 } else {
1083 $row['note_owner'] = "?";
1084 $row['HTML:note_gravatar'] = '';
1085 }
1087 1086
1088 1087 $row['HTML:note_nlbr'] = nl2br(rg_xss_safe($row['note'])); $row['HTML:note_nlbr'] = nl2br(rg_xss_safe($row['note']));
1089 1088
 
... ... function rg_bug_edit_high_level($db, &$rg)
1336 1335
1337 1336 $ret .= rg_template("repo/bug/bug_add_edit.html", $rg, TRUE /* xss */); $ret .= rg_template("repo/bug/bug_add_edit.html", $rg, TRUE /* xss */);
1338 1337 } }
1338 rg_log('ZZZ bug_edit_hints=' . $rg['HTML:bug_edit_hints']);
1339 1339
1340 1340 rg_log_exit(); rg_log_exit();
1341 1341 return $ret; return $ret;
File inc/repo.inc.php changed (mode: 100644) (index 0003a71..4a84433)
... ... function rg_repo_rights_inject($db, $obj_id, $type, $owner, $uid)
114 114 if (strcmp($type, "repo") == 0) { if (strcmp($type, "repo") == 0) {
115 115 $a['uid'] = 0; $a['uid'] = 0;
116 116 $a['rights'] = "AaB"; // access repo + access bug tracker + add bugs $a['rights'] = "AaB"; // access repo + access bug tracker + add bugs
117 $a['rights'] = "Aa"; // access repo + access bug tracker + add bugs
117 118 $a['description'] = 'Autogenerated (repo is public)'; $a['description'] = 'Autogenerated (repo is public)';
118 119 $ret[] = $a; $ret[] = $a;
119 120 } else if (strcmp($type, "repo_refs") == 0) { } else if (strcmp($type, "repo_refs") == 0) {
 
... ... function rg_repo_lock_high_level($db, &$rg)
1801 1802 $ret = ""; $ret = "";
1802 1803
1803 1804 $errmsg = array(); $errmsg = array();
1805 $show_form = TRUE;
1804 1806 while (1) { while (1) {
1805 1807 $x = array(); $x = array();
1806 1808 $x['obj_id'] = $rg['ri']['repo_id']; $x['obj_id'] = $rg['ri']['repo_id'];
 
... ... function rg_repo_lock_high_level($db, &$rg)
1814 1816 if (rg_rights_allow($db, $x) !== TRUE) { if (rg_rights_allow($db, $x) !== TRUE) {
1815 1817 $ret .= rg_template("user/repo/deny_lock.html", $ret .= rg_template("user/repo/deny_lock.html",
1816 1818 $rg, TRUE /*xss*/); $rg, TRUE /*xss*/);
1819 $show_form = FALSE;
1817 1820 break; break;
1818 1821 } }
1819 1822
 
... ... function rg_repo_lock_high_level($db, &$rg)
1863 1866 break; break;
1864 1867 } }
1865 1868
1866 $rg['HTML:errmsg'] = rg_template_errmsg($errmsg);
1867 $rg['rg_form_token'] = rg_token_get($db, $rg, 'repo_lock_hl');
1868 $hints = array();
1869 $hints[]['HTML:hint'] = rg_template("hints/repo/lock_repo.html",
1870 $rg, TRUE /*xss*/);
1871 $rg['HTML:repo_lock_hints'] = rg_template_table("hints/list",
1872 $hints, $rg);
1873 $ret .= rg_template("repo/lock.html", $rg, TRUE /*xss*/);
1869 if ($show_form) {
1870 $rg['HTML:errmsg'] = rg_template_errmsg($errmsg);
1871
1872 $hints = array();
1873 $hints[]['HTML:hint'] = rg_template("hints/repo/lock_repo.html",
1874 $rg, TRUE /*xss*/);
1875 $rg['HTML:repo_lock_hints'] = rg_template_table("hints/list",
1876 $hints, $rg);
1877
1878 $rg['rg_form_token'] = rg_token_get($db, $rg, 'repo_lock_hl');
1879 $ret .= rg_template("repo/lock.html", $rg, TRUE /*xss*/);
1880 }
1874 1881
1875 1882 rg_log_exit(); rg_log_exit();
1876 1883 return $ret; return $ret;
 
... ... function rg_repo_admin($db, &$rg, $paras)
1887 1894
1888 1895 $_op = empty($paras) ? "edit" : array_shift($paras); $_op = empty($paras) ? "edit" : array_shift($paras);
1889 1896
1897 $rg['allow_edit_repo'] = 0;
1898 $rg['allow_lock_repo'] = 0;
1899 $rg['allow_grant_rights'] = 0;
1900 $rg['allow_delete_repo'] = 0;
1901 $x = array();
1902 $x['obj_id'] = $rg['ri']['repo_id'];
1903 $x['type'] = 'repo';
1904 $x['owner'] = $rg['ri']['uid'];
1905 $x['uid'] = $rg['login_ui']['uid'];
1906 $x['username'] = $rg['login_ui']['username'];
1907 $x['ip'] = $rg['ip'];
1908 $x['misc'] = '';
1909
1910 $x['needed_rights'] = 'E';
1911 if (rg_rights_allow($db, $x) === TRUE)
1912 $rg['allow_edit_repo'] = 1;
1913 $x['needed_rights'] = 'K';
1914 if (rg_rights_allow($db, $x) === TRUE)
1915 $rg['allow_lock_repo'] = 1;
1916 $x['needed_rights'] = 'G';
1917 if (rg_rights_allow($db, $x) === TRUE)
1918 $rg['allow_grant_rights'] = 1;
1919 $x['needed_rights'] = 'D';
1920 if (rg_rights_allow($db, $x) === TRUE)
1921 $rg['allow_delete_repo'] = 1;
1922
1890 1923 $rg['menu']['repo'][$_op] = 1; $rg['menu']['repo'][$_op] = 1;
1891 1924 $ret .= rg_template("user/repo/menu.html", $rg, TRUE /* xss */); $ret .= rg_template("user/repo/menu.html", $rg, TRUE /* xss */);
1892 1925
File inc/user.inc.php changed (mode: 100644) (index 7311e3d..35380d3)
... ... function rg_user_cosmetic(&$row)
125 125 { {
126 126 if (isset($row['itime'])) if (isset($row['itime']))
127 127 $row['itime_nice'] = gmdate('Y-m-d', $row['itime']); $row['itime_nice'] = gmdate('Y-m-d', $row['itime']);
128
129 $row['HTML:gravatar'] = '<img class="gravatar" src="https://www.gravatar.com/avatar/'
130 . $row['email_md5']
131 . '?s=64&amp;r=g" alt="avatar" width="64" height="64" />';
128 132 } }
129 133
130 134 /* /*
File inc/user/repo/bug/main.php changed (mode: 100644) (index cde045a..62ad7fd)
... ... $rg['can_save'] = $rg['login_ui']['uid'] > 0 ? 1 : 0;
8 8 $_op = empty($paras) ? "list" : array_shift($paras); $_op = empty($paras) ? "list" : array_shift($paras);
9 9 $rg['menu']['sub2'][$_op] = 1; $rg['menu']['sub2'][$_op] = 1;
10 10
11 $rg['allow_bug_add'] = 0;
12 $x = array();
13 $x['obj_id'] = $rg['ri']['repo_id'];
14 $x['type'] = 'repo';
15 $x['owner'] = $rg['ri']['uid'];
16 $x['uid'] = $rg['login_ui']['uid'];
17 $x['username'] = $rg['login_ui']['username'];
18 $x['ip'] = $rg['ip'];
19 $x['misc'] = '';
20 $x['needed_rights'] = 'B';
21 if (rg_rights_allow($db, $x) === TRUE)
22 $rg['allow_bug_add'] = 1;
23
11 24 switch ($_op) { switch ($_op) {
12 25 case 'search': case 'search':
13 26 include($INC . "/user/repo/bug/search/search.php"); include($INC . "/user/repo/bug/search/search.php");
File inc/user/repo/bug/show/add_note.php changed (mode: 100644) (index ef7b38f..cbf8aa6)
... ... $note_add_doit = rg_var_uint("note_add_doit");
6 6 $note = ""; $note = "";
7 7
8 8 $note_errmsg = array(); $note_errmsg = array();
9
10 9 while (1) { while (1) {
11 10 if ($note_add_doit != 1) if ($note_add_doit != 1)
12 11 break; break;
 
... ... while (1) {
28 27 break; break;
29 28 } }
30 29
30 $x = array();
31 $x['obj_id'] = $rg['ri']['repo_id'];
32 $x['type'] = 'repo';
33 $x['owner'] = $rg['ri']['uid'];
34 $x['uid'] = $rg['login_ui']['uid'];
35 $x['username'] = $rg['login_ui']['username'];
36 $x['needed_rights'] = 'B';
37 $x['ip'] = $rg['ip'];
38 $x['misc'] = '';
39 if (rg_rights_allow($db, $x) !== TRUE) {
40 $note_errmsg[] = rg_template("repo/bug/note/deny_add.html", $rg, TRUE /*xss*/);
41 break;
42 }
43
31 44 // add note // add note
32 45 $_d = array(); $_d = array();
33 46 $_d['note'] = $note; $_d['note'] = $note;
File inc/user/repo/bug/show/show.php changed (mode: 100644) (index 3c24355..eedff28)
... ... $_bug_show = '';
7 7
8 8 $rg['HTML:bug_edit'] = ''; $rg['HTML:bug_edit'] = '';
9 9 $rg['HTML:button_error'] = ''; $rg['HTML:button_error'] = '';
10 $rg['HTML:bug_edit_hints'] = '';
10 11
11 12 $ibug = rg_bug_info($db, $rg['ri']['repo_id'], $rg['bug']['bug_id']); $ibug = rg_bug_info($db, $rg['ri']['repo_id'], $rg['bug']['bug_id']);
12 13 if ($ibug === FALSE) if ($ibug === FALSE)
 
... ... if (!empty($close_reopen_error))
106 107
107 108
108 109 // 'add_note' must be unconditionally included because we must insert the form // 'add_note' must be unconditionally included because we must insert the form
109 include($INC . "/user/repo/bug/show/add_note.php");
110 if ($rg['allow_bug_add'] == 1) {
111 include($INC . "/user/repo/bug/show/add_note.php");
112 } else {
113 $rg['HTML:note_add'] = '';
114 }
110 115
111 116 // load notes // load notes
112 117 $notes = rg_bug_note_list($db, $rg['ri']['repo_id'], $notes = rg_bug_note_list($db, $rg['ri']['repo_id'],
File root/themes/default/main.css changed (mode: 100644) (index 67d1f1d..9d98cdb)
... ... form input[type="submit"] {
75 75 form fieldset { margin-top: 5pt; padding: 3pt; } form fieldset { margin-top: 5pt; padding: 3pt; }
76 76
77 77 .form_inline { .form_inline {
78 display: inline-block;
78 display: inline-flex;
79 79 } }
80 80 .form_inline form { margin-top: 0 } .form_inline form { margin-top: 0 }
81 81 .form_inline form input[type="submit"] { .form_inline form input[type="submit"] {
 
... ... legend { padding: 0px 2pt; }
188 188 #main { #main {
189 189 width: 80%; width: 80%;
190 190 margin-top: 12pt; margin-top: 12pt;
191 margin-bottom: 12pt;
191 192 margin-left: auto; margin-left: auto;
192 193 margin-right: auto; margin-right: auto;
193 194 line-height: 120%; line-height: 120%;
 
... ... legend { padding: 0px 2pt; }
431 432 } }
432 433
433 434 .bug_title { .bug_title {
434 font-size: 12pt;
435 font-size: 13pt;
435 436 font-weight: bold; font-weight: bold;
436 437 } }
437 438
 
... ... legend { padding: 0px 2pt; }
444 445 border: 1px solid #cccccc; border: 1px solid #cccccc;
445 446 padding: 3px; padding: 3px;
446 447 background-color: #DDDDDD; background-color: #DDDDDD;
448 display: flex;
449 justify-content: left;
450 align-content: center;
451 align-items: initial;
447 452 } }
448 453 .note_body { .note_body {
449 padding: 3px;
454 padding: 4px;
455 margin-left: 3px;
450 456 background-color: #EEEEEE; background-color: #EEEEEE;
451 margin-top: 3px;
457 width: 100%;
452 458 } }
453 459
454 460 .mess { .mess {
 
... ... legend { padding: 0px 2pt; }
528 534 .page_description { .page_description {
529 535 margin: 5pt 0pt; margin: 5pt 0pt;
530 536 } }
537
538 .repo_stats {
539 margin-top: 5px;
540 padding: 5px;
541 background-color: #ddd;
542 }
543
544 .gravatar {
545 display: inline;
546 }
File root/themes/default/repo/bug/bug_add_edit.html changed (mode: 100644) (index dd8943a..3b2ba9c)
38 38
39 39 </form> </form>
40 40 </div> </div>
41
42 @@bug_edit_hints@@
File root/themes/default/repo/bug/deny_edit.html changed (mode: 100644) (index fe31d74..ca3df97)
1 1 <div class="mess error"> <div class="mess error">
2 You are not allowed to edit this bug.
2 You are not allowed to add/edit a bug.
3 3 </div> </div>
File root/themes/default/repo/bug/list_note/between.html deleted (index cc35a8a..0000000)
1 <div style="height: 5px;">
2 </div>
File root/themes/default/repo/bug/list_note/line.html changed (mode: 100644) (index 33985fd..8d41a53)
1 1 <div class="note"> <div class="note">
2 <b>@@owner@@</b> - @@creation@@
3 <div class="note_body">
4 @@note_nlbr@@
5 </div>
2 @@note_gravatar@@
3
4 <div class="note_body">
5 <b>@@note_owner@@</b> - @@note_creation@@<br />
6 @@note_nlbr@@
7 </div>
6 8 </div> </div>
File root/themes/default/repo/bug/main.html changed (mode: 100644) (index 1804d0a..8fc001f)
1 1 <div class="menu menu3"> <div class="menu menu3">
2 2 <ul> <ul>
3 3 <li@@if(@@menu::sub2::list@@ == 1){{ class="selected"}}><a href="@@url_repo@@/bug">List</a></li> <li@@if(@@menu::sub2::list@@ == 1){{ class="selected"}}><a href="@@url_repo@@/bug">List</a></li>
4 @@if(@@allow_bug_add@@ == 1){{
4 5 <li@@if(@@menu::sub2::add@@ == 1){{ class="selected"}}><a href="@@url_repo@@/bug/add">Add</a></li> <li@@if(@@menu::sub2::add@@ == 1){{ class="selected"}}><a href="@@url_repo@@/bug/add">Add</a></li>
6 }}
5 7 <li@@if(@@menu::sub2::search@@ == 1){{ class="selected"}}><a href="@@url_repo@@/bug/search">Search</a></li> <li@@if(@@menu::sub2::search@@ == 1){{ class="selected"}}><a href="@@url_repo@@/bug/search">Search</a></li>
6 8 </ul> </ul>
7 9 </div> </div>
File root/themes/default/repo/bug/note/deny_add.html added (mode: 100644) (index 0000000..de4846c)
1 <div class="mess error">
2 You are not allowed to add a note.
3 </div>
File root/themes/default/repo/bug/show.html changed (mode: 100644) (index 0cce16f..d78de81)
1 1 <div class="bug"> <div class="bug">
2 <!-- some buttons: watch/unwatch/etc. -->
3 <div class="horizontal_buttons">
4 <table summary="bug buttons">
5 <tbody>
6 <tr>
7 <td>@@edit_form@@</td>
8 <td>@@watch_form@@</td>
9 <td>@@close_form@@</td>
10 <td>@@del_form@@</td>
11 </tr>
12 </tbody>
13 </table>
14 </div>
15 @@button_error@@
16
17 @@bug_edit@@
18
19 2 <div class="bug_description"> <div class="bug_description">
20 <div class="bug_title">#@@bug::bug_id@@ - @@bug::title@@</div>
3 <div class="bug_title">
4 #@@bug::bug_id@@ - @@bug::title@@
5
6 <!-- some buttons: watch/unwatch/etc. -->
7 <div class="form_inline">
8 @@if(@@allow_bug_add@@ == 1){{
9 @@edit_form@@
10 @@close_form@@
11 @@del_form@@
12 }}
13 @@watch_form@@ @@watch_error@@
14 @@button_error@@
15 </div>
16 </div>
21 17 State: @@bug::state_text@@<br /> State: @@bug::state_text@@<br />
22 18 Insertion date (UTC): @@bug::creation@@<br /> Insertion date (UTC): @@bug::creation@@<br />
23 19 Last update (UTC): @@bug::updated@@<br /> Last update (UTC): @@bug::updated@@<br />
 
25 21 Assigned to: <b>@@if("@@bug::assigned_to@@" == ""){{-}}{{@@bug::assigned_to@@}}</b><br /> Assigned to: <b>@@if("@@bug::assigned_to@@" == ""){{-}}{{@@bug::assigned_to@@}}</b><br />
26 22 @@if(@@bug::deleted@@ != 0){{ @@if(@@bug::deleted@@ != 0){{
27 23 <font color="red">Deleted by: @@bug::deleted_who_name@@ (@@bug::deleted_text@@ UTC)</font><br /> <font color="red">Deleted by: @@bug::deleted_who_name@@ (@@bug::deleted_text@@ UTC)</font><br />
28 }}{{}}
24 }}
29 25 </div> </div>
30 26
27 @@bug_edit@@
28
31 29 <div class="bug_body"> <div class="bug_body">
32 30 @@bug::body_nlbr@@ @@bug::body_nlbr@@
33 31 </div> </div>
 
38 36
39 37 @@note_add@@ @@note_add@@
40 38 </div> </div>
39
40 @@bug_edit_hints@@
File root/themes/default/repo/lock_ok.html added (mode: 100644) (index 0000000..5439077)
1 <div class="mess ok">
2 Repository has been successfully locked. You must not forget to unlock it.
3 </div>
File root/themes/default/repo/stats/stats.html changed (mode: 100644) (index c89d41f..d24c0a8)
1 <div class="repo_stats">
2 <b>Repository statistics</b><br />
3 <br />
4
1 5 Added on this site on <b>@@ri::itime_nice@@</b>.<br /> Added on this site on <b>@@ri::itime_nice@@</b>.<br />
2 6 Disk space used: <b>@@ri::disk_used_mb@@ MiB</b>.<br /> Disk space used: <b>@@ri::disk_used_mb@@ MiB</b>.<br />
3 7 Bugs reported: <b>@@ri::last_bug_id@@</b>.<br /> Bugs reported: <b>@@ri::last_bug_id@@</b>.<br />
 
... ... Number of lines deleted: <b>@@ri::stats::lines_del@@</b>.<br />
12 16
13 17 @@ri::authors@@ @@ri::authors@@
14 18 }} }}
19 </div>
File root/themes/default/user/home.html changed (mode: 100644) (index 09f5174..3182e3c)
1 1 <div class="main_title"> <div class="main_title">
2 <img src="https://www.gravatar.com/avatar/@@page_ui::email_md5@@?s=64&amp;r=g" alt="avatar" width="64" height="64" />
2 @@page_ui::gravatar@@
3 3 Home page of user @@page_ui::username@@ (#@@page_ui::uid@@, Home page of user @@page_ui::username@@ (#@@page_ui::uid@@,
4 4 since @@page_ui::itime_nice@@) since @@page_ui::itime_nice@@)
5 5 <div style="display: inline-block">@@watch_form@@ @@watch_error@@</div> <div style="display: inline-block">@@watch_form@@ @@watch_error@@</div>
File root/themes/default/user/repo/menu.html changed (mode: 100644) (index b344642..ed0edb3)
1 1 <div class="menu menu3"> <div class="menu menu3">
2 2 <ul> <ul>
3 @@if(@@allow_edit_repo@@ == 1){{
3 4 <li@@if(@@menu::repo::edit@@ == 1){{ class="selected"}}><a href="@@url_repo@@/admin/edit">Edit</a></li> <li@@if(@@menu::repo::edit@@ == 1){{ class="selected"}}><a href="@@url_repo@@/admin/edit">Edit</a></li>
5 }}
6 @@if(@@allow_grant_rights@@ == 1){{
4 7 <li@@if(@@menu::repo::repo_rights@@ == 1){{ class="selected"}}><a href="@@url_repo@@/admin/repo_rights">Repo rights</a></li> <li@@if(@@menu::repo::repo_rights@@ == 1){{ class="selected"}}><a href="@@url_repo@@/admin/repo_rights">Repo rights</a></li>
5 8 <li@@if(@@menu::repo::refs_rights@@ == 1){{ class="selected"}}><a href="@@url_repo@@/admin/refs_rights">Refs rights</a></li> <li@@if(@@menu::repo::refs_rights@@ == 1){{ class="selected"}}><a href="@@url_repo@@/admin/refs_rights">Refs rights</a></li>
6 9 <li@@if(@@menu::repo::path_rights@@ == 1){{ class="selected"}}><a href="@@url_repo@@/admin/path_rights">Path rights</a></li> <li@@if(@@menu::repo::path_rights@@ == 1){{ class="selected"}}><a href="@@url_repo@@/admin/path_rights">Path rights</a></li>
10 }}
11 @@if(@@allow_delete_repo@@ == 1){{
7 12 <li@@if(@@menu::repo::delete@@ == 1){{ class="selected"}}><a href="@@url_repo@@/admin/delete">Delete</a></li> <li@@if(@@menu::repo::delete@@ == 1){{ class="selected"}}><a href="@@url_repo@@/admin/delete">Delete</a></li>
13 }}
14 @@if(@@allow_lock_repo@@ == 1){{
8 15 <li@@if(@@menu::repo::lock@@ == 1){{ class="selected"}}><a href="@@url_repo@@/admin/lock">Lock</a></li> <li@@if(@@menu::repo::lock@@ == 1){{ class="selected"}}><a href="@@url_repo@@/admin/lock">Lock</a></li>
16 }}
9 17 </ul> </ul>
10 18 </div> </div>
Hints

Before first commit, do not forget to setup your git environment:
git config --global user.name "your_name_here"
git config --global user.email "your@email_here"

Clone this repository using HTTP(S):
git clone https://code.reversed.top/user/xaizek/rocketgit

Clone this repository using ssh (do not forget to upload a key first):
git clone ssh://rocketgit@code.reversed.top/user/xaizek/rocketgit

You are allowed to anonymously push to this repository.
This means that your pushed commits will automatically be transformed into a pull request:
... clone the repository ...
... make some changes and some commits ...
git push origin master