This allows a user to delete all traces of themselves from a project.
Namely:
- clear fields of user record: email_addr, authenticator,
name, country, postal_code
Note: record is not deleted
- clear the domain_name and last_ip_addr fields of hosts
Note: records are not deleted
- quit team
- delete private messages sent and received
- delete forum posts, subscriptions, and forum prefs
- delete profile and associated images
- server: compile fix
svn path=/trunk/boinc/; revision=23006
and team names are represented.
In particular, edit_user_info_action.php was using
htmlentities() on names; this led to double-encoding.
The new rules:
1) no HTML tags allowed in either one.
This is enforced silently, using strip_tags()
2) names are stored in the DB exactly as entered.
They may contain chars like & and >.
They may contain non-ASCII characters
(use UTF-8 if you want them displayed correctly).
None of these are not escaped.
3) When the names are put in XML
(e.g. in scheduler reply or db_dump output)
they are XML-escaped.
This escapes <, &, and non-ASCII chars
4) The client leaves them in this form,
and writes them that way in GUI RPCs
and init_data.xml files.
5) The parsing of GUI RPC replies and init_data.xml files
XML-unescapes them.
svn path=/trunk/boinc/; revision=20647
for showing how GPU instances are being reserved
- scheduler: add "sse3" plan class example
- web: add option (NO_TEAMS constant) for suppressing teams
svn path=/trunk/boinc/; revision=18658
Add the following to html/project/project.inc:
$banned_email_domains = array(
"foo.bar",
"blah"
);
Email addresses ending with any of those strings will be disallowed.
- Web RPCs: have am_set_info.php do the same checking for
email addresses (invalid, banned) as the other web code
svn path=/trunk/boinc/; revision=18352
- Added translation awareness to view_profile.php
- Added translation awareness to show_user.php
- Added cacheability to the community_links() by splitting it into a function for getting the cacheable object "get_community_links_object()" and another for displaying it "community_links()"
- Added the community_links cacheable object to the cache in show_user.php
- Changed view_profile.php from being full-page cached to using data caching. Only the community_links object is cached as that is the only one containing heavy queries. All other queries are simple and will be cached at the SQL query cache level.
svn path=/trunk/boinc/; revision=16749
There are two aspects:
1) undoing magic quotes (if it's being used).
This must be done for all GET and POST string inputs.
It is now done automatically by get_str() and post_str().
The places that refer to $_GET and $_POST directly
must do it themselves using undo_magic_quotes().
2) Escaping user-supplied strings before using them in DB queries.
This is done by process_user_text()
(which should be renamed db_escape_string()).
The new principle:
call process_user_text() in the function that does the DB query
(not at any higher level).
svn path=/trunk/boinc/; revision=15389
If present, don't show anything related to computing.
Use this for Bossa/Bolt projects, and the BOINC message boards.
svn path=/trunk/boinc/; revision=15228
It didn't work on a host's first scheduler RPC
(when it passes an auth but no host ID).
How do we look up user in this case?
The weak auth is not stored explicitly in the DB.
Solution: include the user ID in the weak auth.
(this invalidates existing weak auths)
svn path=/trunk/boinc/; revision=14546
This is for debugging apps (currently works only in Unix).
What it does: when running an app,
the client does everything except actually fork/exec the app,
i.e. it sets up the slot dir, creates shared mem segment etc.
It then continues as if the app were actually running,
and you can then manually run your app under a debugger
in the slot directory.
Note: the client won't notice the termination of your app.
- API, Unix: in situations where the timer thread wants to exit
(e.g. it notices a missing heartbeat).
don't directly call boinc_exit(),
since this touches data structures that the worker thread
may be using concurrently.
Instead, set a flag telling the worker thread to call boinc_exit()
(which it will do from its signal handler)
This is an attempt to fix problems reported by Bernd;
I haven't tested it.
- scheduler: add config flag for uploading usage data
- web: show account key and weak account key on user page
- added some code for multithread support (not finished)
api/
boinc_api.C
svn path=/trunk/boinc/; revision=14542
now have community info in a 2nd column on the right.
This accomplishes two things:
1) it puts community info in more places;
2) it provides a reasonable way to format long lists of friends;
they just continue down the right column.
svn path=/trunk/boinc/; revision=14452
Users can choose whether to get 1 email per notification,
a daily "digest" email, or no email.
(All notifications are shown on the Account page).
Currently used for:
- Friend requests and confirmations
- Posts to subscribed threads
- Private messages
NOTE: To implement the "daily digest" feature, projects must add
a periodic task for html/ops/notify.php to config.xml
- web: have project_footer() generate links for
Account Page and Message Boards as well as Home
NOTE: projects that want this change
will have to modify their own project.inc.
svn path=/trunk/boinc/; revision=14447
rename General Prefs to Computing Prefs;
rename Forum Prefs to Community Prefs
add Prefs link if user doesn't have email PM notification
- remove forum low/high rating theshold stuff.
Message rating was a failed experiment.
svn path=/trunk/boinc/; revision=14300
URL_BASE is assumed to end with a /.
If you put another /, you end up with // in URLs.
This leads to a situation where you can have
one cookie for // and another for / - bad.
If this causes problems for any projects,
they should edit their project.inc accordingly
svn path=/trunk/boinc/; revision=14254
Team founder and admins have moderator power.
Anyone can view a team message board,
but only team members can write to it.
Users cannot be banished from team message boards
(due to database limitations).
svn path=/trunk/boinc/; revision=14218
- DB: added parent_type to forum
- user web: BoincUser uses caching by default
- client: fixed small memory leak in statistics parsing
svn path=/trunk/boinc/; revision=14130