tildetown / tildetown-admin Goto Github PK
View Code? Open in Web Editor NEWThis project forked from vilmibm/tildetown-admin
administrative web app for tilde.town
This project forked from vilmibm/tildetown-admin
administrative web app for tilde.town
it's often helpful to check if someone's homepage has been modified. a method should be added to the Townie model that does something like:
/etc/skel/public_html/index.html
/home/{username}/public_html/index.html
We assume for certain tasks right now that every user has an email on their account; for older users this isn't true.
This is going to be messy and challenging and involve manual intervention, but a new script in scripts/
should be added to aid in the process.
the main usecase for helpdesk tickets is to get new pubkeys.....but the max length on the description field is too low to actually fit them.
make it 5k characters.
add note in settings about twitter creds
add an action to the action dropdown (see the "mark townie as reviewed" action in the townie admin app) like "change queue" that moves a ticket to the "next" state; ie from "to triage" to "waiting to hear" to "nothing to do" and finally back to "to triage".
also while in there, make issue status the top field on the admin page for a help ticket.
the only thing the old flask app is still running to support is the /random
url linked from the ascii art on the homepage.
this url should pick a random Townie who has updated their index.html from the default (see #19) and redirect to their home page.
i straight up copied js-keygen (legally, and with attribution :p) into this project. i'd like it to be cleaned up.
GeneratePair
When a user is created, we should link them to some kind of "new user guidebook" or something on the wiki in the email we send to them.
NB: this handbook does not yet exist.
Right now there is only unreviewed
and approved
. We get a number of signups that we don't want to accept and they just kind of sit there or get fully deleted.
Rejected signups should not take over a username, just serve as a record of admin decision making.
Whenever a bulk review of new users is done, there are 2 posts: one noting the individual user, and one bulk message.
this is caused by post_single_user_social
being ran in on_townie_pre_save
and then the bulk_review
function running post_users_to_social
Is there a way to tell on_townie_pre_save
to not run the posting function if we do bulk add?
it could be seeded with something like "~soandso joined tilde.town on ". we could also take a bio when they sign up and then put it in here.
currently people can sign up for an account with an email we already have on file. this is a bug and is currently caught manually. fail form validation for non-unique emails.
It's nice to be able to flag when you are going to handle or are handling a ticket.
We need to be able to capture notes on users to share among admins; this is especially helpful for tracking why a given signup was rejected.
ssh-rsa <pubkey text> <user@host>
makes its way just fine, but adding ecdsa-sha2-nistp256
pubkeys renders the content with ecdsa-sha2-nistp256 ecdsa-sha2-nistp256 <pubkey text> <user@host>
.
by far the most common help desk issue is "help i need a new key." there isn't a good way to solve for this without some manual intervention, but we should take a similar approach as we do to signups:
Requests are marked as "unverified" until the email address is verified; at that point, an admin can approve and process the request.
Right now we mis-format ecdsa keys. We should either improve out handling of such keys or move to strictly supporting ssh-rsa only for initial keys (people can add whatever on their own still).
A very common admin issue is renames.
historically because of admin ignorance this has been labor intensive: make new user, archive old user's stuff, move stuff, tell user...
i just realized this though:
usermod -l new_username -m -d /new/home/dir old_username
This ticket covers
it'd be nice to add celery (backed by redis) to this and have some kind of scheduled jobs control panel.
We need to be able to share notes with each other about helpdesk tickets so we don't step on each others' toes.
The Ticket
admin UI should allow sending an email to the address on the ticket.
This issue also includes support for picking a message template to fill the textarea in with; most tickets are "help i need this key added" and being able to two-click send an email with a templated message would make clearing out the help queue much easier.
All this requires is serving the standard tilde.town favicon when /favicon.ico
is requested. I would do it, but I don't know the first thing about Django.
the user approval/creation code can fail at a number of points, leaving things in a funny state.
the user creation code should only notify social/user if the account was successfully created, the keyfile successfully created, and the user model successfully marked as accepted
. any other state should be caught and captured as a system ticket.
some of the versions of libraries we currently use don't work on python 3.7. this is okay on the town atm since we use python 3.6, but will need to be fixed eventually.
the changes:
Mastodon.py to 1.2.2
tweepy to 3.7.0
after updating, test that our social posts still work when adding new users.
PSAs currently go out on wall/bbj/irc and often get missed. Admins should be able to email all local users with a script so that PSAs are more tangible.
Should live in scripts/
This covers various areas of the app that require testing. It also covers a sane mocking approach to unix stuff and email.
Renaming a user in the admin will rename their account; however, it will kick them off the server. If they don't know to use their new username then they'll think they can't log in at all. After successfully renaming a user account, send an email to the affected user.
This issue covers:
I'm not really sure yet how this should work or how it should be exposed. it's possible that we just want to wrap chsh and chfn with something and not involve the django admin at all.
We should be able to create helpdesk tickets from IRC or elsewhere on the system. This card covers adding a REST API to ttadmin with at least a helpdesk ticket creation endpoint to start.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.