94e60ac178
crawler: Split out avatar retrieval.
2018-01-07 09:55:00 +10:00
d487d21f47
crawler: Tweak handling of new users.
...
- Only show accounts that have been newly discovered
- Allow us to skip updating of existing accounts
2018-01-07 09:47:40 +10:00
4c5256f570
main.js: Slow down spinner a bit
2018-01-07 09:39:26 +10:00
9faf929293
main.js: Use resized avatars, use PRE for spinner
2018-01-07 09:38:17 +10:00
6347c6e14e
resizer: Keep resized image, not original
2018-01-07 09:29:27 +10:00
5b6b2371ea
resizer: Pass arguments as tuple.
2018-01-07 09:27:43 +10:00
bed8851be2
resizer: Add debug statements.
2018-01-07 09:26:24 +10:00
075e0f8af6
resizer: Fix avatar format reference.
2018-01-07 09:20:30 +10:00
4ec5e4f63d
server: Pass avatar to resizer
2018-01-07 09:19:12 +10:00
06501b722b
resizer: Take avatar object, add debugging
2018-01-07 09:17:18 +10:00
c1cfd4d058
resizer: Pass arguments across threads
2018-01-07 09:10:33 +10:00
2cd07eee3e
server: Call image resizer if given a bounding box.
2018-01-07 09:08:00 +10:00
802db7dcf0
resizer: Add image resizer for avatars.
...
This scales an image to fit within a given bounding box.
2018-01-07 09:06:03 +10:00
5933d7204f
crawler: Add missed insert of user detail
2018-01-07 08:23:29 +10:00
70efd7e254
crawler: Fix log formatting error
2018-01-07 01:13:58 +10:00
c32f34d13a
crawler: Fix bug in regex match handling
2018-01-07 01:12:11 +10:00
9cf081b498
crawler: Avoid re-requesting the same data.
2018-01-07 01:08:56 +10:00
ccb4e943eb
main.js: Don't increment unless load was successful.
2018-01-07 01:05:48 +10:00
1faaec8435
main.js: Add a loading spinner.
2018-01-07 00:49:52 +10:00
5dbba62275
main.js: Handle load failure
2018-01-07 00:36:02 +10:00
5ffcf8965c
main.js: Bugfixes.
...
- Don't load the next page until the previous load finishes.
- Fix formatting of the links
2018-01-07 00:34:13 +10:00
47476b52ad
main.js: Increment page counter with each load.
2018-01-07 00:23:43 +10:00
ecaf40a65d
hadapi: Use a set, not a list for batch reads.
...
So we don't read duplicates.
2018-01-07 00:22:01 +10:00
34f2d050e4
index.html: Pull in newcomers.json via XHR.
2018-01-07 00:21:18 +10:00
39c3845f35
main.js: Initial JavaScript front-end code.
2018-01-07 00:21:02 +10:00
bfb9d3c322
server: Actually return data to be dumped.
2018-01-06 23:27:33 +10:00
24abb2162c
server: Add missed json import
2018-01-06 23:25:44 +10:00
f1322968ab
crawler: fetch_new_users: return None for last page.
...
If we don't know it, just return `None` for now.
2018-01-06 23:23:51 +10:00
7a345835e8
crawler: Handle integer response for links
...
Sometimes you will get a response like this:
```
{"links":0}
```
2018-01-06 23:19:11 +10:00
cd01be534b
crawler: On inspection failure, dump data.
2018-01-06 23:17:48 +10:00
c9ea92d165
hadapi: Don't specify sortby=newest
...
Even when retrieving batch IDs, it cocks up.
2018-01-06 23:12:31 +10:00
e5b2531bb0
hadsh: Fix generation of user ID list
2018-01-06 23:08:15 +10:00
c5374f9753
hadsh: Make get_users a coroutine.
2018-01-06 23:07:00 +10:00
cab4b24b04
hadapi: Fix missed perpage typo
2018-01-06 23:03:27 +10:00
79a5782552
hadapi: Hack around bug in hackaday.io API
...
So it appears that `sortby=newest` is broken for the user list. For the
short term, I can work-around this by screen-scraping
https://hackaday.io/hackers?sort=newest and doing a batch read of the
IDs.
2018-01-06 23:02:07 +10:00
2e9907f81b
crawler, hadapi: Fix typo in per_page.
2018-01-06 21:54:59 +10:00
5a01a9ddbe
server: Require user authentication to see JSON data.
2018-01-06 21:26:47 +10:00
49bd53c5e9
hadapi: Fix typo in _user_query_opts
2018-01-06 21:13:35 +10:00
0a0eb66704
server: Add endpoint for retrieving user data.
2018-01-06 21:12:45 +10:00
ca5a479b8c
crawler: Return number of pages in data set.
2018-01-06 20:59:39 +10:00
e7677be5f9
db.model: Fix primary keys on UserLink
2018-01-06 20:56:07 +10:00
eed76d8b8c
crawler: Fix page count reference
2018-01-06 20:54:58 +10:00
a8e5fbc31e
crawler: Fix syntax errors
2018-01-06 20:53:35 +10:00
cc06bd8a9c
server: Re-implement OAuth2 callback using crawler
2018-01-06 20:51:41 +10:00
b0e4b91566
crawler: Add new site crawler.
2018-01-06 20:50:16 +10:00
4b6b7cf255
db.model: Re-locate misplaced 'location'
2018-01-06 20:43:01 +10:00
73b2f9988b
index.html: Display user's avatar
2018-01-06 19:53:04 +10:00
21ac26b685
server: Add avatar retrieval endpoint
2018-01-06 19:48:55 +10:00
415ee415ae
server: Make subclass for enforcing log-in.
2018-01-06 19:47:42 +10:00
8d5e52b5b0
server: Record current time, user details on login.
2018-01-06 19:38:15 +10:00
a2c781a3cf
index.html: Display user info in template
2018-01-06 19:27:18 +10:00
8d2c7bdb92
server: Pass user info to template
2018-01-06 19:27:01 +10:00
e77da5e032
db.model: Put back-references into User
2018-01-06 19:23:46 +10:00
21e9c5fcf4
db.model: Relate users to their sub-objects.
2018-01-06 19:20:22 +10:00
55beb123d9
server: Redirect user if not logged in.
2018-01-06 19:20:02 +10:00
624b4899b2
server: Store UUID in cookie as string
2018-01-06 19:03:33 +10:00
dd10df913a
db.model: Pass UUIDs as UUIDs not strings.
2018-01-06 19:02:16 +10:00
8adabca637
server: Fix commit of user
2018-01-06 18:57:55 +10:00
5654396ffc
server: Fix reference to database
2018-01-06 18:56:51 +10:00
f2a48694e9
server: Fix reference to HTTP client
2018-01-06 18:55:40 +10:00
f23da7844e
server: Retrieve first avatar from result set.
2018-01-06 18:53:51 +10:00
43904297d6
server: Fix avatar URL look-up
2018-01-06 18:47:02 +10:00
d4837338cc
hadapi: Don't include second query string
2018-01-06 18:45:29 +10:00
05cef594a8
hadapi: Show query arguments before URL encoding
2018-01-06 18:43:45 +10:00
220182733e
hadapi: Trace API calls
2018-01-06 18:42:08 +10:00
b592e9182c
server: Add logging
2018-01-06 18:37:35 +10:00
465a955dcf
hadapi: Fix quote_plus reference
2018-01-06 18:34:24 +10:00
b1164caa90
server: Add --db-uri
2018-01-06 18:32:53 +10:00
ca800e3015
server: Drop unused parameters
2018-01-06 18:27:38 +10:00
4444ae958e
hadapi: Fix copy-paste error
2018-01-06 18:26:13 +10:00
f5ce8e2331
db: Fix missed import
2018-01-06 18:26:06 +10:00
77a8465cb5
Add main entrypoint.
2018-01-06 18:24:54 +10:00
de5d04aea1
Initial index page
2018-01-06 18:23:22 +10:00
7eed4704f1
server: Initial server implementation
2018-01-06 18:19:43 +10:00
129fb8acf0
hadsh: Add missed bracket
2018-01-06 17:56:51 +10:00
4ae4aa701d
hadapi: Expose authentication URI
2018-01-06 17:32:16 +10:00
5265def117
hadapi: Add rate limit handling.
2018-01-06 17:14:49 +10:00
a07a2755be
hadapi: Add beginnings of API wrapper
...
Handles users and projects for now.
2018-01-06 16:07:45 +10:00
5b7197d46c
crawler: Add __init__
2018-01-06 14:13:29 +10:00
39abc22b73
Add top-level __init__
2018-01-06 14:12:03 +10:00
b64aa26f63
db: Add beginnings of core DB logic.
2018-01-06 14:11:39 +10:00
4009de4329
db: Add in beginnings of model.
2018-01-06 13:59:57 +10:00