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.
<root> / inc / user / settings.php (a61ee8abfce684cb7831a25316527f162fe1d5ea) (1,435B) (mode 100644) [raw]
<?php
rg_log("FILE: /inc/user/settings");

$_settings = '';

if ($rg['login_ui']['uid'] == 0) {
	$_settings .= rg_template('user/login_first.html', $rg, TRUE /*xss*/);
	return;
}

$rg['target_ui'] = $rg['login_ui'];

$errmsg = array();

$_subop = empty($paras) ? "edit_info" : array_shift($paras);

$rg['HTML:menu_level2'] = '';

$rg['url_up'] = $rg['url'];
$rg['url'] .= '/' . rawurlencode($_subop);
switch ($_subop) {
case 'change_pass':
	include($INC . "/user/pass/pass.php");
	$_settings_body = $_pass;
	break;

case 'keys':
	include($INC . "/user/keys/keys.php");
	$_settings_body = $_keys;
	break;

case 'apikeys':
	$_settings_body = rg_ak_high_level($db, $rg, $paras);
	break;

case 'totp':
	$_settings_body = rg_totp_high_level($db, $rg, $paras);
	break;

case 'wh':
	$_settings_body = rg_wh_high_level($db, $rg, $paras);
	break;

case 'workers':
	$_settings_body = rg_worker_high_level($db, $rg, $paras);
	break;

case 'delete_account':
	$_settings_body = rg_user_delete_account_high_level($db, $rg, $paras);
	break;

default:
	$rg['ask_for_pass'] = 0;
	$rg['no_tos'] = 1; // we ask for only for account creation
	$_settings_body = rg_user_edit_high_level($db, $rg);
	break;
}
$rg['url'] = $rg['url_up'];

$rg['set_menu'][$_subop] = 1;
$_settings = rg_template("user/settings/menu.html", $rg, TRUE /* xss */);
$_settings .= '<div class="generic_body">' . "\n";
$_settings .= $_settings_body;
$_settings .= '</div>' . "\n";
?>
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