Aaron Friel
4aa3f21544
Switch h3 to strong, aesthetic change to banner
2017-01-29 16:53:50 -06:00
Aaron Friel
52fa345836
Add category status banner for WIP/stub categories
2017-01-29 16:39:05 -06:00
Artyom
ee0610b396
Add “Guide.” to all modules
...
Nowadays lots of libraries don't use hierarchical modules so let's avoid
clashes with them.
2017-01-27 03:18:18 +03:00
Artyom
20ae435ffc
Remove unused (so far) admin-css widget
2016-08-17 23:18:53 +03:00
Artyom
c72815c436
Big switch to Mustache (only half-done)
...
* Render some elements of some pages with Mustache
* Switch to Stack
* Add a bit of tests
* Turn the project into a library
2016-08-17 11:18:57 +03:00
Artyom
dd4468c772
Add Derive* extensions to default extensions
2016-07-30 17:36:20 +03:00
Artyom
b8af96eb06
Get rid of “-- General” in imports
2016-07-30 17:35:00 +03:00
Artyom
752864fc30
Switch to Megaparsec 5
2016-07-27 16:31:55 +03:00
Artyom
dd6b38f742
Focus on text fields when editing
2016-07-27 15:34:29 +03:00
Artyom
2401666946
Allow Escape to cancel editing
2016-07-27 15:05:53 +03:00
Artyom
adc73b6fd2
Fix 'cached'
2016-07-25 20:12:08 +03:00
Artyom
699b07687a
Get rid of MonadRandom
2016-07-25 19:47:49 +03:00
Artyom
e810f1997d
Migrate to newer versions
2016-07-25 17:55:10 +03:00
Artyom
519211ac2e
Move from cheapskate to cmark
2016-07-24 13:12:17 +03:00
Artyom
8c51a779ec
Allow Command+Enter to edit fields
2016-07-23 02:33:51 +03:00
Artyom
da7d4a75cb
Allow Ctrl+Enter in small edit fields
2016-07-21 22:24:06 +03:00
Artyom
a0fb2bb3c2
Allow Ctrl+Enter to save multiline fields
2016-07-21 22:15:33 +03:00
Artyom
60beb00905
Rename 'empty' to 'wasEmpty'
2016-07-21 21:00:46 +03:00
Artyom
83951b0083
Add a “press Enter” hint to edit fields
...
See #93
2016-07-21 20:46:16 +03:00
Artyom
aaa56aabee
Add default extensions
2016-07-21 18:57:14 +03:00
Artyom
364f792175
Empty the cache at start
2016-07-21 16:26:08 +03:00
Artyom
194f0063be
Add a subtitle to the header
2016-07-10 23:34:13 +03:00
Artyom
1a0222c2d2
Link to items/categories in admin interface
2016-07-06 23:50:02 +03:00
Artyom
1521a3e64c
Bump microlens dependency
2016-07-03 23:07:09 +03:00
Artyom
3249076608
Merging for category notes
2016-06-20 15:00:00 +03:00
Artyom
c2dcaa81a8
Merging for item descriptions
2016-06-20 14:18:00 +03:00
Artyom
55258979b8
Merging for ecosystem fields
2016-06-20 13:13:09 +03:00
Artyom
8f4d2dd417
Merging for item notes
2016-06-19 19:20:28 +03:00
Artyom
ccb8693a97
Implement merging for traits
2016-06-19 00:52:19 +03:00
Artyom
57afee3b64
Use ilist and text-all
2016-06-12 22:35:13 +03:00
Artyom
4b363d035d
Use exhaustive patterns in isVacuousEdit
2016-06-12 15:31:34 +03:00
Artyom
0a924595ea
More dots
2016-05-27 17:19:29 +03:00
Artyom
18f6be8b0c
Remove “.min” from JS file names
...
Reason: data-files in .cabal doesn't think that *.js
includes *.min.js. That's pretty annoying.
2016-05-27 17:15:51 +03:00
Artyom
412d3611c8
Nicer listing of edits
2016-05-25 23:57:12 +03:00
Artyom
e1a6245afc
Allow hiding ecosystem/pros/cons
2016-05-22 14:43:46 +03:00
Artyom
417485ab50
Only create a checkpoint when there were changes
2016-05-21 16:52:23 +03:00
Artyom
b123a7df07
Create checkpoints once in 6h, not once in 1h
2016-05-21 15:44:31 +03:00
Artyom
a6292ef064
Say how many different IPs there are
2016-05-14 01:33:14 +03:00
Artyom
5d7332bf51
Make trait-controls more mobile-friendly
2016-05-14 01:27:02 +03:00
Artyom
5a53f37541
Add pencil buttons to pros/cons
2016-05-13 02:02:16 +03:00
Artyom
e7b0c3ddb2
Get rid of non-monospace editing
...
It was actually pretty annoying
2016-05-11 04:13:13 +03:00
Artyom
d5b6a72a35
Don't use “shortcut icon”
2016-05-11 01:53:38 +03:00
Artyom
095cb507b7
Add a favicon
2016-05-10 23:44:20 +03:00
Artyom
fdaba16282
Change titles
2016-05-10 03:45:20 +03:00
Artyom
896d39ff89
Fix buggy paths in feeds
2016-05-10 03:31:39 +03:00
Artyom
7e128292d3
Remove the temporary ActionDetails migration
2016-05-08 16:35:38 +03:00
Artyom
dccfb36456
Nicer stats, only external referers
2016-05-08 16:29:07 +03:00
Artyom
38f234ca84
Add a “mostly done” status
...
Fixes #52
2016-05-07 15:38:44 +03:00
Artyom
864cfd838a
Fix slug function
...
Fixes #54
2016-05-06 23:03:21 +03:00
Artyom
5928849ab9
Remove some TODOs
2016-05-06 01:04:20 +03:00
Artyom
1d08039cf2
Relicense under CC 4.0
...
And allow attribution without names (since names are unknown).
2016-05-05 23:11:08 +03:00
Artyom
a439dffcf6
Add category statuses
...
Fixes #38
2016-05-05 16:50:10 +03:00
Artyom
66e8a42ac5
Calculate visits correctly
2016-05-05 02:53:41 +03:00
Artyom
bf10fa4036
Add support for Google site verification
2016-05-04 21:18:18 +03:00
Artyom
38560dd012
Implement our own tracking
2016-05-04 21:03:23 +03:00
Artyom
607c4bd8fd
Minor
2016-05-03 03:30:29 +03:00
Artyom
d778b55fbe
Make the footer nicer
2016-05-03 03:27:30 +03:00
Artyom
92d8c53776
Remove help
2016-05-02 21:44:50 +03:00
Artyom
2c6046b08f
Link to Markdown everywhere
2016-05-02 21:27:49 +03:00
Artyom
393b4a1b19
Move license info to the footer
2016-05-02 18:37:13 +03:00
Artyom
53e1a465e3
Prerender pages
...
Fixes #26
2016-05-02 17:54:34 +03:00
Artyom
71d58fc436
Remove the link nonsense
...
Fixes #34
2016-05-02 16:54:35 +03:00
Artyom
cad27df2c4
Use BS instead of Builder for rendered Markdown
...
I'm not sure that forcing a Builder has any effect, so it might end up
recomputing stuff more often than we want.
2016-05-02 16:43:41 +03:00
Artyom
6a6bc254cb
Link to the note
2016-05-02 01:45:04 +03:00
Artyom
db57156b1b
Category groups
2016-05-01 23:17:55 +03:00
Artyom
f560f461d2
Add caching
...
Fixes #21
2016-05-01 16:28:10 +03:00
Artyom
a3c7f896c5
Fix headers
2016-04-24 23:53:00 +03:00
Artyom
7729115472
Add padding to the whole thing
2016-04-23 19:30:43 +03:00
Artyom
de1bf14d67
Arrange pros/cons one below the other on mobile
2016-04-23 18:12:10 +03:00
Artyom
93da2d0444
Add a note about dynamic interfaces
...
Fixes #27
2016-04-22 16:59:50 +03:00
Artyom
60d3cd2615
Make item descriptions a section as well
2016-04-22 16:39:22 +03:00
Artyom
d7e4334d2e
Make the “edit ecosystem” icon a toggle
2016-04-22 16:22:46 +03:00
Artyom
7f8275b248
Add a link to notes
...
Fixes #19
2016-04-22 16:18:58 +03:00
Artyom
e279786b55
When deleting categories, redirect to main page
2016-04-22 01:26:45 +03:00
Artyom
dc2fc3d8e0
Remove outdated TODOs
2016-04-22 01:22:51 +03:00
Artyom
f8cee78ac0
Linkable sections in item notes
...
Fixes #19
2016-04-22 01:06:02 +03:00
Artyom
d8ddc2305a
Don't hide TOC when notes are expanded
...
Fixes #31
2016-04-21 19:40:00 +03:00
Artyom
77cdb3c1ef
Make headers-in-notes smaller
...
Fixes #33
2016-04-21 19:28:35 +03:00
Artyom
6483e2fb8e
Compare case-insensitively when adding a category
2016-04-21 18:28:03 +03:00
Artyom
9c82a6dbab
Add CSS for category lists
2016-04-21 18:19:38 +03:00
Artyom
62ccc5c04e
Only show lists of categories
...
Fixes #8
2016-04-21 18:10:58 +03:00
Artyom
ba8e36574e
Add search to category pages
2016-04-21 17:01:54 +03:00
Artyom
91da7809d8
Use MonadRandom instead of MonadIO in some places
2016-04-21 16:49:01 +03:00
Artyom
8f5dfe5e9a
When a new group is created, add it to other items
...
Fixes #32
2016-04-20 23:16:05 +03:00
Artyom
ecc18fe0db
Expand notes when linked directly to item
2016-04-20 21:24:04 +03:00
Artyom
d43aa8137f
Expand notes when linked directly to them
...
See #19
2016-04-20 01:59:29 +03:00
Artyom
5efa203e21
Fix events in Firefox
2016-04-19 23:09:39 +03:00
Artyom
41230596bf
Create some <textarea>s dynamically
...
Makes it quite a bit faster on Firefox (see #24 )
2016-04-19 20:03:54 +03:00
Artyom
e0ff916eea
Add an AJAX request indicator
...
Fixes #18
2016-04-16 23:06:59 +03:00
Artyom
1e1e8b43eb
Add more colors for groups
...
Fixes #17
2016-04-16 21:47:38 +03:00
Artyom
63301eb330
Allow raw HTML in inline Markdown because why not
2016-04-16 02:08:31 +03:00
Artyom
43bb1f3a6f
Show table of contents for notes
2016-04-16 02:02:43 +03:00
Artyom
0379f53938
[admin] Button to create a checkpoint
2016-04-16 00:06:34 +03:00
Artyom
044964bbf5
Make the search page link to the main page
2016-04-15 23:44:55 +03:00
Artyom
2882957b6a
Move some TODOs on Github
2016-04-15 23:42:29 +03:00
Artyom
a467d49823
Add a template for category notes
2016-04-15 16:15:02 +03:00
Artyom
35b6a469f6
Undo/accept for blocks of edits
2016-04-15 14:19:36 +03:00
Artyom
7925807c02
Add some styling to the admin page
2016-04-14 01:56:13 +03:00
Artyom
a025db8d9b
Group edits by IP
2016-04-13 18:38:35 +03:00
Artyom
a029f06ea1
Don't duplicate trait content
2016-04-11 23:31:30 +03:00
Artyom
f0d67cbb75
Use deriveSafeCopySimple as workaround for a bug
...
See https://github.com/acid-state/safecopy/issues/41
2016-04-11 16:05:45 +03:00
Artyom
252e73c8c2
Use fadeOutAndRemove
2016-04-10 23:44:55 +03:00
Artyom
8013ebbfb1
Add Show instances to all types
2016-04-09 23:34:24 +03:00
Artyom
b29b3b2c7f
Migrate Uids too
2016-04-09 18:54:34 +03:00
Artyom
8bf99b069b
Only show 2 sets of buttons when there are notes
2016-04-09 16:54:32 +03:00
Artyom
7ad80160f8
Use safer Uids
2016-04-09 11:13:26 +03:00
Artyom
f78434f2d1
Use Markdown CSS on the admin page as well
2016-04-09 03:36:38 +03:00
Artyom
e9e79ef095
Get rid of a common “get Uid and compare” pattern
2016-04-09 03:30:04 +03:00
Artyom
e04517b374
Silly bug
2016-04-08 23:43:43 +03:00
Artyom
2aaeb4711b
Throw an error when the IP couldn't be parsed
2016-04-08 23:40:09 +03:00
Artyom
f8c5f5c6b7
Parse the X-Forwarded-For request header
...
guide.aelve.com currently runs behind Apache (as reverse proxy), which
means that all client addresses seem to be 127.0.0.0. This fixes that.
2016-04-08 23:28:54 +03:00
Artyom
b9af03f55e
Switch to the IP type from iproute
...
It gives us a Read instance by default!
2016-04-08 23:11:13 +03:00
Artyom
710af0ea2c
Minor
2016-04-08 18:39:22 +03:00
Artyom
5c64b2f36b
[Travis] Test loading the official database
2016-04-08 18:33:33 +03:00
Artyom
60bbc6d71f
Allow undoing edits
2016-04-08 18:05:52 +03:00
Artyom
5e7ce95f43
Show edits better on the admin page
2016-04-07 22:14:08 +03:00
Artyom
6f3853c944
Don't use categoryByItem, it leads to errors
...
E.g. when you're doing something like
let category = categoryByItem item
and then you delete the item – the “category” lens silently stops
working as well, because lenses aren't exactly pointers.
2016-04-07 18:35:04 +03:00
Artyom
358c8c769f
Add error messages for *ById lenses
2016-04-07 18:07:04 +03:00
Artyom
5827fb5b1a
Add category deletion
2016-04-07 18:03:48 +03:00
Artyom
1138781926
Add TH functions to make migrations less painful
2016-04-07 18:03:38 +03:00
Artyom
0d63865b7f
Only delete/etc things after the request finishes
2016-04-06 02:04:22 +03:00
Artyom
025491beba
Include scripts locally
...
This should actually be faster because then the browser wouldn't have to
additionally resolve CDNJS (and also now the site can be tested without
internet connection).
2016-04-06 01:51:50 +03:00
Artyom
4e0169bf4d
Minor
2016-04-06 01:36:55 +03:00
Artyom
1de64e1a6e
Keep track of edits
2016-04-03 23:57:01 +03:00
Artyom
c408b8b08d
Add a note about acid-state
2016-03-28 23:52:51 +03:00
Artyom
e4555d0da3
Write a note about show/hide
2016-03-27 02:34:29 +03:00
Artyom
ee6ba3e6d6
Don't do anything if the item itself doesn't exist
2016-03-25 00:26:10 +03:00
Artyom
3d46a83c02
Fix stupid bug (forgot to delete lines)
2016-03-25 00:25:21 +03:00
Artyom
59c8640d69
Remove character counting
...
It was useless really.
2016-03-24 22:20:25 +03:00
Artyom
58914a822b
Add fields for deleted pros and cons
2016-03-24 21:16:14 +03:00
Artyom
b8d64fde61
Delete old ItemKind migration
2016-03-24 21:11:56 +03:00
Artyom
0b0e88044d
Add a field for deleted items
2016-03-24 20:55:17 +03:00
Artyom
f3a88fd695
Add a field for deleted categories
2016-03-24 20:32:42 +03:00
Artyom
29646d580e
Allow setting text editor to monospace
2016-03-24 03:02:09 +03:00
Artyom
96eea1265d
Use wrapPage everywhere + sticky footer
2016-03-23 18:53:34 +03:00
Artyom
99150cae13
Catch Javascript errors
2016-03-23 12:22:14 +03:00
Artyom
652e28e585
Add an admin page (no content yet)
2016-03-23 01:54:59 +03:00
Artyom
93b3398c3b
Update config after reading it
2016-03-22 23:09:05 +03:00
Artyom
e8f6d26d9f
Minor
2016-03-22 22:39:04 +03:00
Artyom
e48d13d2a8
Add captions to images
2016-03-22 20:20:34 +03:00
Artyom
df3c55e823
Add feed icons
2016-03-22 20:19:05 +03:00
Artyom
72ad74a431
Use config instead of environment variables
2016-03-22 01:17:53 +03:00
Artyom
9b778967a4
Minor
2016-03-21 02:12:03 +03:00
Artyom
d8fe43b2c7
Blink when things are removed/moved
2016-03-20 16:41:32 +03:00
Artyom
406ae18116
Remove some TODOs
2016-03-20 15:44:33 +03:00
Artyom
e21e58aede
Add help to category pages
2016-03-20 14:11:42 +03:00
Artyom
8d68933137
Add another “hide help” link
2016-03-20 14:08:26 +03:00
Artyom
aa6efe9d9a
Add the “unwritten rules” page
2016-03-20 13:50:23 +03:00
Artyom
7cb7a79660
Add anchor links to items
2016-03-20 13:30:10 +03:00
Artyom
c81fa12305
Add a link to the main page on category pages
2016-03-20 03:15:55 +03:00
Artyom
eb0e13b94e
Move everything to the “/haskell” subpath
2016-03-20 02:36:16 +03:00
Artyom
7d2f3594b6
Add feeds for items in categories
2016-03-19 21:36:21 +03:00
Artyom
f01c360b83
Move Lucid/Spock integration into another package
2016-03-19 18:29:58 +03:00
Artyom
8e294895ac
Reverse the order in the title
2016-03-19 14:34:53 +03:00
Artyom
53025ef9ad
Set a 1MB limit on requests
2016-03-19 14:34:53 +03:00
Artyom
5cff313a2e
Fix ugliness in Chrome
...
Now there's different ugliness!
Ref. #9
2016-03-19 03:55:31 +03:00
Artyom
e1e74d23e4
Add a method to set global state
2016-03-19 02:52:44 +03:00
Artyom
c8b177b127
Add pages for categories
2016-03-19 02:40:00 +03:00
Artyom
7400bfa819
Generate alphanumeric Uids
2016-03-19 00:08:08 +03:00
Artyom
c268d91927
Don't generate small Uids
2016-03-18 23:45:18 +03:00
Artyom
95d710eaee
Record creation time of items/categories
2016-03-18 21:32:33 +03:00
Artyom
96a4d59b29
Add “hk” as a synonym for “hackage”
2016-03-17 18:05:38 +03:00
Artyom
caa2af17f8
Allow Markdown blocks in the ecosystem field
2016-03-17 15:29:45 +03:00
Artyom
de88d2686c
Put ecosystem before notes
2016-03-17 14:58:44 +03:00
Artyom
6f6a161abc
Don't say “write something here” for ecosystem
2016-03-17 14:52:32 +03:00
Artyom
f116663b29
Recolor items in a less ugly way
2016-03-17 03:35:56 +03:00
Artyom
9b38dc68c0
Rename the thing
2016-03-17 03:22:46 +03:00
Artyom
def6c4db0a
Change the style of pros/cons a bit
2016-03-17 03:02:51 +03:00
Artyom
43c3214d54
Add an “ecosystem” field
2016-03-17 03:02:11 +03:00
Artyom
f1cdd51536
Move the donations page to a file in static/
2016-03-17 01:02:56 +03:00
Artyom
84454d2666
Add an environment variable to enable tracking
2016-03-16 23:47:59 +03:00
Artyom
efbd7716bb
Don't use the tracking image at all
2016-03-16 15:52:58 +03:00
Artyom
5bee1ad9e8
HTML validity fix: don't use thisNode inside <ul>
2016-03-16 15:46:29 +03:00
Artyom
46c02b7ef2
Fix text length counting
2016-03-16 02:56:09 +03:00
Artyom
74be29738e
Prerender Markdown
...
Makes page rendering about twice as fast
2016-03-16 02:17:08 +03:00
Artyom
ad95f9d94c
Get rid of sample state
2016-03-16 02:10:58 +03:00
Artyom
63c707fc5b
Minor
2016-03-16 00:59:00 +03:00
Artyom
61be3b5a2e
Minor
2016-03-16 00:14:22 +03:00
Artyom
2504b6c969
Switch the order of “edit notes” and “hide notes”
2016-03-15 15:41:09 +03:00
Artyom
9a1dfec816
Split rendering into its own module
2016-03-15 15:35:35 +03:00
Artyom
6c94fc5231
Move blazeToHtml into another package
2016-03-15 14:20:06 +03:00
Artyom
993e33d154
Move JQuerySelector into JS.hs
2016-03-15 13:10:47 +03:00
Artyom
46ace5f57a
Kill the EKG server thread upon exit
2016-03-15 13:03:05 +03:00
Artyom
401329d851
Write about Markdown in help
2016-03-15 03:29:18 +03:00
Artyom
da90a3f270
Add highlighting for the “repl” class
...
As well as fix the overflow thing that was adding extra space at the top
of every code block.
2016-03-15 03:11:46 +03:00
Artyom
32c3083eb9
Get rid of a renundant (now) dependency
2016-03-15 02:50:45 +03:00
Artyom
7b588e7c6e
Move highlighting into a separate library
2016-03-15 02:48:30 +03:00
Artyom
1392ecd785
Add code highlighting
2016-03-15 00:09:39 +03:00
Artyom
0a2788059c
Only collect stats every minute
2016-03-14 23:30:06 +03:00
Artyom
ddb4182603
Write about the status page
2016-03-14 22:13:57 +03:00
Artyom
4d579832a3
Add monitoring
2016-03-14 21:51:34 +03:00
Artyom
414a3b150b
Allow the name and the Hackage name to differ
2016-03-14 17:09:05 +03:00
Artyom
e9e2a6ed1f
Finally fix the bug Firefox has with saving fields
...
It's not It's All Text!'s fault, it's Firefox's fault – it saves input
values, and in our case it does it wrong sometimes, so you could start
editing details of item A and the “name” field would be from item B.
2016-03-14 16:32:17 +03:00
Artyom
67fbb610c2
Let kind be edited
2016-03-14 16:13:38 +03:00
Artyom
5882205c8e
Create a kind for tools
2016-03-14 13:58:45 +03:00
Artyom
49b522c337
Render links without “(site)” for non-libraries
2016-03-13 20:28:51 +03:00
Artyom
35561aaae8
Guess whether new items are libraries or not
2016-03-13 20:21:50 +03:00
Artyom
63e808155e
Implement search properly (with page-reload)
2016-03-13 02:35:50 +03:00
Artyom
506881e2e1
It's All Text! strikes again
...
Have to use scripts with all textareas to avoid It's All Text! filling
them with outdated data.
2016-03-13 01:29:02 +03:00
Artyom
09957c4c39
Simplify deletion confirmation dialogs
2016-03-12 20:06:24 +03:00