mirror of
https://github.com/superseriousbusiness/gotosocial.git
synced 2025-10-29 21:42:26 -05:00
[feature] Allow users to set custom css for their profiles + threads (#808)
* add custom css account property + db func to fetch * allow account to get/set custom css * serve custom css for an account * go fmt * use monospace for customcss, add link * add custom css to account cache * fix broken field * add custom css docs to user guide * add `accounts-allow-custom-css` config flag * add allow custom css to /api/v1/instance response * only show/set custom css if allowed to do so * only set/serve custom account css if enabled * update swagger docs * chain promise * make bool a bit clearer * use cache for GetAccountCustomCSSByUsername
This commit is contained in:
parent
268f252e0d
commit
b42469e4e0
40 changed files with 458 additions and 39 deletions
|
|
@ -33,26 +33,40 @@ require("./style.css");
|
|||
|
||||
function UserPanel({oauth}) {
|
||||
const [account, setAccount] = React.useState({});
|
||||
const [allowCustomCSS, setAllowCustomCSS] = React.useState(false);
|
||||
const [errorMsg, setError] = React.useState("");
|
||||
const [statusMsg, setStatus] = React.useState("Fetching user info");
|
||||
|
||||
React.useEffect(() => {
|
||||
|
||||
}, [oauth, setAllowCustomCSS, setError, setStatus]);
|
||||
|
||||
React.useEffect(() => {
|
||||
Promise.try(() => {
|
||||
return oauth.apiRequest("/api/v1/accounts/verify_credentials", "GET");
|
||||
return oauth.apiRequest("/api/v1/instance", "GET");
|
||||
}).then((json) => {
|
||||
setAccount(json);
|
||||
setAllowCustomCSS(json.configuration.accounts.allow_custom_css);
|
||||
Promise.try(() => {
|
||||
return oauth.apiRequest("/api/v1/accounts/verify_credentials", "GET");
|
||||
}).then((json) => {
|
||||
setAccount(json);
|
||||
}).catch((e) => {
|
||||
setError(e.message);
|
||||
setStatus("");
|
||||
});
|
||||
}).catch((e) => {
|
||||
setError(e.message);
|
||||
setStatus("");
|
||||
});
|
||||
}, [oauth, setAccount, setError, setStatus]);
|
||||
|
||||
}, [oauth, setAllowCustomCSS, setAccount, setError, setStatus]);
|
||||
|
||||
return (
|
||||
<React.Fragment>
|
||||
<div>
|
||||
<button className="logout" onClick={oauth.logout}>Log out of settings panel</button>
|
||||
</div>
|
||||
<Basic oauth={oauth} account={account}/>
|
||||
<Basic oauth={oauth} account={account} allowCustomCSS={allowCustomCSS}/>
|
||||
<Posts oauth={oauth} account={account}/>
|
||||
<Security oauth={oauth}/>
|
||||
</React.Fragment>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue