Commit graph

47 commits

Author SHA1 Message Date
fe7b5de427 Replace many uses of forEach with for-of. 2020-09-03 14:18:05 -07:00
8dafe8c4f4 Synchronize Etiquette common.css and YCDL common.css. 2020-09-03 11:50:16 -07:00
bff4a12fcb Add various comments, docstrings, and console.log. 2020-09-03 11:46:26 -07:00
6b037e1120 Move several /batch functions into api.js. 2020-08-30 19:18:06 -07:00
8ae1086727 Remove var holder which is already on the global scope. 2020-08-29 18:58:19 -07:00
7c4229f1fa Use dot notation instead of subscript for response. 2020-06-28 17:54:16 -07:00
a56b5274c9 Read spinner button function from onclick instead of data-onclick.
I think my original reason for doing this was to prevent the button
from being operational until after the spinner initialization has
completed, so you don't get any weird half-functional spinner buttons.
However, in practice I'm finding that I constantly forget about this
and it adds tedium to creating spinner buttons.
Will review if any actual problems come up.
2020-06-17 14:04:27 -07:00
634f6f5188 Fix metadata spinner not closing when 0 items on clipboard. 2020-05-28 19:02:07 -07:00
d273adbf27 Move new #right:before to common.css. 2019-09-11 01:12:04 -07:00
4d235c427c Create #right:before on narrow screens to give a solid background. 2019-09-10 19:38:58 -07:00
14500080c8 Redo clipboard.html css to auto grid instead of specifying each. 2019-08-26 15:15:02 -07:00
5a1e4474a9 Remove unnecessary specifying #left grid-area: left. 2019-08-26 15:03:14 -07:00
d209445bd0 Remove unnecessary specifying #header grid-area: header. 2019-08-26 15:02:53 -07:00
d5c99b407d Set margin:0 for the inputs next to the buttons
Otherwise they've got odd spacing, and we have row-gaps anyway.
2019-08-25 17:36:05 -07:00
79ed0ee186 Various CSS for panels and margins. 2019-08-14 13:49:08 -07:00
b683413be0 Try different themes with the ?theme query. 2019-08-14 13:43:35 -07:00
802c12937b Replace bespoke spinner with new button_with_spinner. 2019-06-15 16:04:06 -07:00
26bcafcbb5 Add style for button:disabled instead of switching classes. 2019-06-15 13:26:39 -07:00
65605253bf Add spacers between these sections of code. 2019-04-27 16:55:47 -07:00
4ddf578d63 Add spinner text to clipboard refresh metadata button.
Also replace usage of own in_progress variable with simply
disabling the button.
2019-04-27 16:55:26 -07:00
707fdcc637 Add album cards and improve album pages.
- album card has placeholder for future thumbnail.
- replaced nested tree hierarchy lists with separate boxes.
- list/grid view also applies to the root listing.
- added a sticky right panel for all the tools. not pretty yet.
- mechanism for adding sticky panel changed. instead of applying
  it to the #right, you apply it to #content_body so that its
  grid layout can be updated properly.
2018-11-12 22:15:59 -08:00
dcfa7a862d Variety of html, css, jinja tweaks. 2018-11-04 18:36:17 -08:00
98d5374d17 Add CSS class sticky_side_right. 2018-11-04 18:32:55 -08:00
588bf59b88 Variety of html, css, jinja tweaks.
- common.css, removed html and body margins so that using
  full height #content_body will not create a scrollbar.
  Simplifies the "fill remaining space" construct I use a lot.
  Added more css variables, I'm thinking about future theming.
- photo_card.css, slightly heightened to improve name clipping.
- clipboard.html, added a small screen mode.
- login.html, centered the boxes and fixed message area being
  too small due to a previous change.
- search.html, simplified some conditional texts.
2018-10-21 18:46:27 -07:00
0ea9f19592 Import api.js into the rest of the pages.
Now we can do anything from anywhere!
2018-09-23 16:53:49 -07:00
3a9ab2b099 Rename photoclipboard.js -> photo_clipboard.js.
To match the namespace photo_clipboard.
2018-09-23 15:17:31 -07:00
3db5c77c2c Use a CSS var for 10% transparency and drop shadow. 2018-09-22 16:01:34 -07:00
1fcacb81fc Update clipboard.html's button function naming scheme like others.
I have finally found a pattern I like which is
function, function_callback, and function_form
for the backend, callback, and button handler respectively.
2018-08-14 23:24:12 -07:00
bea9f905bd Support downloading .zip of arbitrary photos, clipboard.
Now that creating zips of any photo set is easier, we can
let the user download whatever is on their clipboard.
2018-08-14 23:02:06 -07:00
f047235c48 Reorganize a bunch of javascript handlers.
The javascript is very inconsistent between pages. I'm trying to
start using a consistent pattern where the api call is kept in a
separate function from the ones that buttons and input boxes
talk to.
2018-07-29 01:25:53 -07:00
977b47522d Add autocomplete to /clipboard. 2018-07-22 20:45:16 -07:00
d7b9020585 Add namespacing to photoclipboard.js. 2018-07-22 20:21:00 -07:00
c7cce5a4e5 Add namespacing to common.js. 2018-07-22 20:21:00 -07:00
4c65ccaf68 Big! Liberate Groupables from strict heirarchy. Multiple parents.
I found that the strict heirarchy was not satisfying the situation
where one tag is the intersection of two others, but we can only
pick one as the parent

For example, does red_jacket belong under clothes.red_clothes or
clothes.jackets? A search for "red_clothes AND jackets" might
give us someone wearing red pants and a black jacket, so this
definitely needs to be a separate tag, but picking only one
parent for it is not sufficient. Now, a search for red_clothes
and a search for jackets will both find our red_jacket photo.

The change also applies to Albums because why not, and I'm sure
a similar case can be made.

Unfortunately this means tags no longer have one true qualname.
The concept of qualnames has not been completely phased out but
it's in progress.

This commit is very big because I was not sure for a long time
whether to go through with it, and so much stuff had to change
that I don't want to go back and figure out what could be grouped
together.
2018-07-20 13:09:06 -07:00
5c97086df3 Improve hotkey framework by making own file & register function. 2018-07-14 14:19:13 -07:00
5f6d21fdee Give Photos a searchhidden property.
By default, photos with searchhidden do not appear in the search
results. This allows a small number of representative images from
a large album to appear in the results, while the rest can be
found on the album's page.

The same effect could be achieved with a tag and forbid search,
but tag searching has much higher cost and it would be more difficult
to implement as a default behavior without requiring lots of special
checks whenever listing tags etc.
2018-03-09 17:10:27 -08:00
faacf7b594 Oops, use response["data"]. 2018-02-26 19:06:27 -08:00
5f7266c519 Add button to clear clipboard. 2018-02-24 23:00:28 -08:00
2fceeedbbb Add /clipboard UI for mass refresh metadata. 2018-02-24 13:23:35 -08:00
30c9148092 Move the remaining common css / js to their folders. 2018-02-24 12:51:36 -08:00
e359180467 Move clipboard_tray rules to own file in css folder. 2018-02-24 01:06:27 -08:00
aabcb61a9c Create css folder. Move photo_card rules to own file. 2018-02-24 00:58:43 -08:00
840185072b Move photoclipboard.js to the js folder. 2018-02-24 00:47:44 -08:00
5a1d259780 Add /clipboard UI for mass-tagging. 2018-02-22 15:23:57 -08:00
a9248d8cab Add CSS clipboard_size; and other clip hook improvements.
Any element with class clipboard_size will have its text updated;
Removed the call to on_pageload from save_ because it redundantly
causes a load. Separate those update hooks.
2018-02-20 20:20:20 -08:00
ebe0fcee40 Rename URL /photo_cards -> /batch/photos/photo_card. 2018-02-19 23:44:24 -08:00
91d445a877 Add new page /clipboard, with full photo cards. 2018-02-17 19:12:34 -08:00