Commit Graph

88 Commits

Author SHA1 Message Date
77bf2b9dd3 Fix up RSS/Atom feeds 2019-08-19 17:46:44 -07:00
e67df627ce Make it a Go module 2019-06-20 13:36:42 -07:00
e2cfb2d70c Add a -v flag to print version information 2019-06-05 16:28:59 -07:00
7376947e8a Extract Blog Thumbnails for Archive Page 2019-06-05 16:18:38 -07:00
c556f862e5 Add image uploader to the Edit Blog page 2019-05-16 20:12:47 -07:00
2fd5fccc5b Add button to disable ACE Code Editor (for mobile) 2019-05-16 18:46:02 -07:00
86d5367d8e Fix sticky blog posts not ordering correctly 2019-03-15 14:12:38 -07:00
dee7c8eb98 Additional age gate suffixes 2019-01-03 11:36:52 -08:00
87f53c9895 Age Gate: Allow single-page exceptions with ?over18=1 2019-01-01 13:31:01 -08:00
0943ff34b1
Merge pull request #7 from kirsle/questions
Feature: Ask Me Anything
2018-12-24 11:54:50 -08:00
1821ef60d4 Feature: Ask Me Anything
Implements a Tumblr-style "Ask Me Anything" feature to the blog, with a bit of
automation and niceness:

* The route is at `/ask`
* User can leave their name (Anonymous), email address (if they want to be
  notified when you answer) and ask their question.
* The blog owner is notified about the question via email.
* The owner sees recent pending questions on the `/ask` page.
* Answering a question creates a blog entry and (if the asker left their
  email) notifies the asker to check the blog at the permalink-to-be for the
  new post.

Along with this feature, some changes to the blog application in
general:

* Added support for SQL databases in addition to the JsonDB system
  previously in use for blogs, users, comments, etc.
  * Default uses a SQLite DB at $root/.private/database.sqlite
  * The "Ask Me Anything" feature uses SQLite models instead of JSON.
* Restructure the code layout:
  * Rename the /internal/ package path to /src/
  * Begin to consolidate models into /src/models
2018-12-24 11:50:29 -08:00
9b938ccff3 Move package from internal to src 2018-12-23 16:21:50 -08:00
517a2ee86b Questions system WIP 2018-12-23 16:18:04 -08:00
eae499c640 Dummy out Events and Contacts for now, shelved for later 2018-12-15 17:17:36 -08:00
bddae00a1e Merge branch 'master' into events 2018-12-15 16:42:56 -08:00
b31eb284f0 Rebase Dockerfile on golang:1.10 2018-09-18 11:21:11 -07:00
d9a1e6a3c0
Merge pull request #5 from kirsle/docker
Add a Dockerfile
2018-06-07 11:52:29 -07:00
107e5dd963 Add a Dockerfile 2018-06-07 11:51:44 -07:00
5c4f5612f8 Controller docs, RSVP counts, comment integration 2018-05-12 11:48:18 -07:00
a3ba16c9b2 Anonymous contact authentication for events 2018-05-11 21:29:18 -07:00
a166c72cf3 SQLite DB, initial invite flows and UX 2018-05-11 21:28:55 -07:00
f154c55862 Catch spam bots on my contact form 2018-05-01 18:26:50 +00:00
345878fabe Contact creation and invite UI 2018-04-30 17:50:39 -07:00
765e80b64d Initial events UI - Creation, editing, viewing 2018-04-29 12:56:37 -07:00
a1c84fa1e9 Make Session available in the templates 2018-04-27 14:49:21 -07:00
efeb2e934e Fix page count and comment form styling 2018-04-14 09:29:03 -07:00
92887a6472 Keep fragments in the blog index file 2018-04-13 22:08:44 -07:00
95fdc4baff Fix CSRF token generator 2018-04-11 19:53:41 -07:00
aca9734b14 More config settings and age gating 2018-04-11 19:34:37 -07:00
532135094c Bootstrap version bump 2018-04-11 18:59:48 -07:00
b7d1661fcd Various tweaks 2018-04-11 18:59:30 -07:00
709e1f9577 Add tumblr-import script to import Tumblr blogs 2018-04-10 22:36:32 -07:00
3b4bd4e978 Various small nice fixes 2018-04-10 19:07:25 -07:00
7fa422e42f Shuffle around packages, fix rophako-import 2018-02-11 16:24:43 -08:00
f702ad12e0
Merge pull request #4 from kirsle/refactor
Refactor the codebase
2018-02-10 15:50:52 -08:00
d4321b5087 Small bugfixes 2018-02-10 15:16:30 -08:00
c69c14ea09 Controller breakout for blog and comments 2018-02-10 15:07:10 -08:00
eb1880d348 Break out some controllers and move mail to subpackage
Controllers moved into sub-packages:
* Initial setup
* Admin routes
* Auth login/out routes
* Contact
2018-02-10 14:36:21 -08:00
6d3de7da69 Let me use interface{} for template vars
Since most of the `render.Vars{}` fields were hardcoded/not really
editable for the templates, apart from .Data, this struct is now locked
away in the render subpackage.

End http.HandlerFunc's can then make any arbitrary template data
structure they want to, available inside the templates as `.Data`.
2018-02-10 14:05:41 -08:00
eab7dae75b Further simplify template rendering 2018-02-10 13:16:20 -08:00
f0045ae2cf Move Flash and Redirect responses to subpackage 2018-02-10 11:20:27 -08:00
60ccaf7b35 Eviscerate the last of the middleware into sub-packages 2018-02-10 11:14:42 -08:00
e393b1880f Move template rendering into sub-package 2018-02-10 10:08:45 -08:00
aabcf59181 Branch markdown into its own subpackage 2018-02-09 19:01:56 -08:00
3d5147ff4c Shuffle around package directories 2018-02-09 18:46:58 -08:00
3b3295884c Fix blog posts losing their Created time on edit 2018-02-09 18:25:03 -08:00
e8ca2e408a Descriptions in XML feeds 2018-02-01 20:25:41 -08:00
0ca2ebd874 Bring back the RSS/Atom feeds 2018-02-01 20:14:42 -08:00
9f25d38276 Upgrade to Bootstrap 4 Final 2018-02-01 09:34:28 -08:00
4cfc5bbd3d Merge branch 'master' of github.com:kirsle/blog 2018-01-02 19:19:03 +00:00