Commit Graph

247 Commits (a227474a2b001f1c0eaac90beee623e6212d1c37)

Author SHA1 Message Date
voussoir a227474a2b
Add explanation to common.css --wide --narrow. 2021-05-19 23:43:08 -07:00
voussoir 95a6d7bb92
Let the logout button match the link color. 2021-05-19 00:07:19 -07:00
voussoir 59654a89e6
Add new bookmarks to page without refreshing.
This is the first card to get a javascript version, so I'm testing
the waters with the low-stakes bookmarks.
2021-05-02 18:37:28 -07:00
voussoir 89205ac24a
Add interface for copying tags from other photos. 2021-04-29 13:12:37 -07:00
voussoir 400c255aea
Add "Show in folder" button to photos, albums. 2021-02-25 18:57:41 -08:00
voussoir b5e8363374
Add preliminary photo drag-drop code. 2021-01-25 13:47:47 -08:00
voussoir 6c2da7a6f0
Move album drag-drop functions to cards.js. 2021-01-25 13:46:24 -08:00
voussoir b0f8414c11
Add photo_card.photo_card_tools infra for contextual tools.
I'm not satisfied with the appearance of the toolbutton just yet,
but we can revise that later.
2021-01-21 15:37:30 -08:00
voussoir 34b6ccd285
Rearrange some photo card css. 2021-01-20 19:07:38 -08:00
voussoir d6f155afbd
Add /album/remove_thumbnail_photo endpoint. 2021-01-20 19:07:37 -08:00
voussoir da8dff6f85
Add /album/set_thumbnail_photo endpoint. 2021-01-20 19:07:37 -08:00
voussoir 5e7b90cbe4
Combine all card templates into cards.html. 2021-01-20 18:26:42 -08:00
voussoir b96f0cfc96
Put toolbox hide logic into album_card_tools, not remove button. 2021-01-20 18:26:42 -08:00
voussoir 95b95bc7be
Add thumbnail_photo to Album. 2021-01-20 18:26:36 -08:00
voussoir fd6375613a Add album's author and date to the page. 2021-01-09 10:50:52 -08:00
voussoir 20a3828dbf Move .tag_card to cards.css. 2021-01-08 14:16:59 -08:00
voussoir 7f9c7085f0 Rename tag_object -> tag_card. 2021-01-08 13:57:27 -08:00
voussoir 7373730f90 Add bookmark_card.html, move bookmark_card css to cards.css. 2021-01-08 13:41:49 -08:00
voussoir fabbbaf17f Rename photo_cards.css -> cards.css. All types welcome. 2021-01-08 13:40:34 -08:00
voussoir 7527b3678f Fix reference to response.json_ok -> response.meta.json_ok. 2021-01-08 13:38:30 -08:00
voussoir ea5a02f8b6 Use update_dynamic_elements for user name, clipboard count. 2021-01-07 20:18:07 -08:00
voussoir 02ed3dff92 Add function update_dynamic_elements. 2021-01-07 19:30:10 -08:00
voussoir 47db917090 Improve text color declaration to inherit from html. 2021-01-07 19:24:17 -08:00
voussoir dd54eabd93 Add api endpoint /tag/tagname/add_synonym. 2021-01-05 14:02:08 -08:00
voussoir cc2199d59a Let sticky_bottom scroll for very small screens. 2021-01-05 01:25:50 -08:00
voussoir 29774f2524 Add the clipboard checkbox on pageload, not in server response.
With the recent addition of search_embed iframes on other pages, we
had photo cards appearing but the photo_clipboard module was not
imported thus the checkboxes did nothing. I don't want to import
photo_clipboard onto every single page, I'd rather they click through
to the full search UI. Otherwise every single page will have the tray
and often not a good enough reason for it.
So, since the functionality of the checkbox is completely reliant on
the photo_clipboard.js module anyway, there's no reason not to have it
generated by that module.
2021-01-05 01:24:03 -08:00
voussoir 7c62c064cb Rename photo_card_selector_checkbox photo_clipboard_selector_checkbox. 2021-01-04 23:31:41 -08:00
voussoir 58a0a246c8 Add comment regarding sticky_bottom background and :before pseudo. 2021-01-02 23:53:14 -08:00
voussoir 087238bfad Remove z-index from selected photo overlay. It's not necessary. 2021-01-02 23:52:46 -08:00
voussoir 0c3ee6f2d2 Add search_embed for bringing search iframes to other pages. 2021-01-02 13:49:43 -08:00
voussoir 732c054075 Replace height with min-height, fixes squashed bottom margin. 2021-01-02 11:35:46 -08:00
voussoir e303b934f7 Add UI for editing user's display name. 2021-01-01 19:46:31 -08:00
voussoir 84a5e2b4e1 Significant updates to editor.js. 2021-01-01 19:46:06 -08:00
voussoir 89195d3449 Add comment about response catching strictness levels. 2021-01-01 19:08:36 -08:00
voussoir 8f9b4142a6 Improve UI performance of selecting / deselecting photo cards.
Move save_clipboard into a 0-timeout. Check checkboxes immediately
instead of relying on apply_check_all / update_pagestate to make a
redundant loop through everything.
2020-12-26 13:21:06 -08:00
voussoir 0a31dad196 Rewrite these default callbacks as alertresponse. 2020-11-06 22:34:01 -08:00
voussoir bf9223bf67 Move response.completed into the meta. 2020-11-06 22:27:41 -08:00
voussoir 68b27fced2 Add refresh_or_alert so errors aren't missed. 2020-11-06 21:42:28 -08:00
voussoir 843e8d6743 Oops, put photos_holder rule in etiquette.css, not common. 2020-11-04 17:35:54 -08:00
voussoir 7770f7640a Add class photos_holder which is centers photos in narrow mode.
In narrow mode, it's very possible to wind up with only 1 photo per row,
and it looks silly when they are left-justified. Centered looks a little
more natural to me in this case.
2020-11-04 17:11:48 -08:00
voussoir 44952b4b05 Add some docstrings to the request code. 2020-11-03 00:03:48 -08:00
voussoir 938f8239c7 Rearrange common.js and add headers. 2020-10-17 17:32:19 -07:00
voussoir 7715e10b12 Trade padding for bigger font on remove_tag_button.
Primarily affects the "unlink" / "delete" buttons on /tags.
Without the padding we can get an extra pt of font size, and these
buttons are somewhat of a readability struggle.
2020-10-17 17:28:32 -07:00
voussoir adddba6c97 Simplify this bindable def by reversing the if/def nest.
Instead of defining the function with an internal if that will always
pick the same path, let's use that if to instead define a
straightforward function that just does what we want.
2020-10-13 10:53:56 -07:00
voussoir 86c09aedc1 Add album_autocomplete.js, so "Add child" box can autocomplete.
This makes putting albums together a little easier, though datalist
performance still leaves a lot to be desired.
2020-10-03 18:37:08 -07:00
voussoir 4e3e2fea12 Avoid creating emptystring promptclass. 2020-10-03 18:32:21 -07:00
voussoir 5d802ba9f9 Let response status be 0 even if request didn't complete.
Since meta.status would be undefined for an incomplete request,
I would have to check response.completed && response.meta.status,
which is too much burden. Let's set the status immediately, and
if a callback wants to do further diving we'll use completed then.
2020-10-02 19:43:36 -07:00
voussoir d15d5f9856 Set tabbed_container data-active-tab-id on tab change. 2020-10-02 16:53:00 -07:00
voussoir ea60190e7d Revert most of failed experiment but keep the good parts.
- tag_autocomplete.tags and .synonyms are separate vars, not in tagset.
- tag_autocomplete.tags is now a Set object for faster resolve().
- get_all_tags moved to api.js.
- server provides "updated" timestamp with the all_tags list.
2020-09-29 16:54:00 -07:00
voussoir 7e58c95f15 Mostly failed experiment: tag_autocomplete indexeddb.
The current system has bad performance when you've got 100,000+ tags.
I discovered that when the server returns 304, the browser gives the
ajax a 200 with the full response, and it's not clear to me if js can
know it got a 304. So, the tag set is being fully re-parsed from the
response on every page load. I was thinking that I should store that in
IndexedDB to avoid the parsing step, but... since the JSON.parse is
done by my common.get before it hits this function, it's meaningless.
Not to mention I still have to rebuild the datalist on every page since
of course that state isn't shared between tabs. Not worth the DB stuff.
We'll see what happens next.
2020-09-29 16:52:20 -07:00