Commit Graph
100 Commits
Author SHA1 Message Date
Aaron 2a740d8cef Constrain boundary movement to image canvas. 2020-12-30 13:05:22 +01:00
Aaron 5e0d4df2f7 Allow moving/dragging the crop boundary.
Currently unconstrained.
2020-12-30 13:05:22 +01:00
Aaron e84c4f2b43 Constrain crop selection to image dimensions. 2020-12-30 13:05:22 +01:00
Aaron 893d31af52 Proper dragging of the crop bounding rectangle/area. 2020-12-30 13:05:22 +01:00
Aaron 5895f4faa6 Rewrite CropEditor.positionBoundary 2020-12-30 13:05:22 +01:00
Aaron 8e7a09f3f3 Initial version of crop boundary dragging. 2020-12-30 13:05:22 +01:00
Aaron 837c92db44 CropEditor: split setDefaultCrop from setInputValues and rename. 2020-12-30 13:05:22 +01:00
Aaron c392105814 Refactor crop editor DOM functions. 2020-12-30 13:05:22 +01:00
Aaron 9d95df81fe WIP: finally implement drag events. 2020-12-30 13:05:22 +01:00
Aaron d4cc72304e Use flexbox for crop editor box sizing. 2020-12-30 13:05:21 +01:00
Aaron 2c68b6a798 Improve crop editor styling. 2020-12-30 13:05:21 +01:00
Aaron fd84e1c9f8 Refactor crop editor into a proper class. 2020-12-30 13:05:21 +01:00
Aaron bd1ca8d18c Use $_SESSION['current_export'] to prevent simultaneous exports. 2020-03-11 18:57:31 +01:00
Aaron c7d3b9c3d1 Disable output buffering so we can enjoy more than ~62MB of photos. 2020-03-11 12:32:44 +01:00
Aaron 5a51778a6a Clean up tar process handling; make stdout non-blocking. 2020-03-11 12:32:44 +01:00
Aaron 2bb29d7224 Minor optimisation to Download::getChildAlbumIds. 2020-03-11 12:32:44 +01:00
Aaron 1b7e83e11e Let tar change working directory to assets directory.
This prevents edge cases where files are not found, while ensuring
the archive does not contain the system directory hierarchy.
2020-03-11 12:32:34 +01:00
Aaron 354e54a0af Limit album/tag downloading on a user basis.
This removes the limit of downloading albums only; tags are fine, too.

Now using UserFacingException for certain exceptions, as these are
displayed to the user.

Removing the inheritance of HTMLController, as we intend to output binary
data only.
2020-03-11 11:55:17 +01:00
Aaron 17859b70e9 Fix tag suggestions. 2020-02-25 13:31:30 +01:00
Aaron 6a7defcdc9 Allow going back to photo directly from Edit Asset screen. 2020-02-25 13:31:12 +01:00
Aaron f193b614b7 Port basic asset management page from Kabuki. 2020-02-25 13:31:12 +01:00
Aaron 12ea378b02 Photo uploader: reduce client memory usage.
To create inline thumbnails locally, the previous version of the photo uploader
used base64 representations of the local files to be uploaded. While this is
effective, it is a little wasteful. When uploading several photos at once, this
could even lead to the page becoming less responsive.

This commit changes the process such that the photos are actually resized on a
canvas, only using the local original as a buffer. Hence, only the resized
photo is retained in memory.
2020-02-08 20:35:26 +01:00
Aaron 62900e7f81 Correct JSON media type. 2019-09-29 15:00:28 +02:00
Aaron c48ba786c1 Refactor leftover old-style arrays into new-style arrays. 2019-09-29 14:47:56 +02:00
Aaron 3694819d13 Refactor out DummyBox objects from EditUser controller. 2019-09-29 14:38:42 +02:00
Aaron d7b68995e8 Fix recounting not working on non-album tags. 2019-09-29 14:20:59 +02:00
Aaron 5df7ea8371 Remove unused 'best color' algorithm.
This code is used to efficiently determine the most saturated colour in an image,
Kabuki uses this as the highlight colour on a page, but this styling has always
been disabled in HashRU Pics. Hence, we can safely remove the code, freeing up
some CPU cycles in the process. ;-)
2019-09-29 14:18:59 +02:00
Aaron 7d3ab166c7 Simplify template logic for photo index. 2019-09-29 14:12:30 +02:00
Aaron ed6054e6b6 Fix buttons appearing when they shouldn't.
This bug went unnoticed because people who aren't logged in can't actually see this page.
2019-09-29 14:05:45 +02:00
Aaron 8ec6c227d5 Remove leftover debug statements. 2019-03-09 13:58:37 +01:00
Aaron 42e5c7fe37 Allow regular users to unlink tags from photos. 2019-03-09 13:48:18 +01:00
Aaron 05c48be785 Link tags after adding them through autosuggest. 2019-03-09 13:22:32 +01:00
Aaron d3cb750874 Default to centre cropping for portrait layout. 2019-03-09 12:50:16 +01:00
Aaron bcbb74a680 Allow setting URL slug through admin panel. 2018-02-22 20:07:06 +01:00
Aaron c6c249787f Pass DIY slug when uploading photos. 2018-02-22 20:02:02 +01:00
Aaron 068d1dad3e Allow capitals in tag slugs. 2018-02-19 11:55:39 +01:00
Aaron f1408ad2ee Allow capitals and slashes in album slugs. 2018-02-19 11:55:39 +01:00
Aaron ee304dd7b9 When generating thumbnails, infer width properly when null is passed. 2018-02-03 20:14:40 +01:00
Aaron 1def1484cb Backport asynchronous thumbnail generation from Kabuki. 2017-12-20 14:51:23 +01:00
Aaron 981b652e25 Fix album title box on mobile. 2017-11-22 11:22:38 +01:00
Aaron cda7f3115c Fix crop editor. 2017-11-09 17:00:36 +01:00
Aaron e439a074a6 Increase tile height for album thumbnails, making them 4:3. 2017-11-09 17:00:36 +01:00
Aaron ee9bdd45c0 Leave out labels on photo index pages.
They were pretty much only displaying filenames, so not adding much.
2017-11-09 17:00:36 +01:00
Aaron 9fe8acc747 Change colour palette into something more befitting #RU. 2017-11-09 17:00:36 +01:00
Aaron 096cea078c Support 'quick create subalbums' style, too. 2017-11-09 17:00:36 +01:00
Aaron 2a25434862 Implement basic tag management. 2017-11-09 17:00:36 +01:00
Aaron 943297900c Implement basic album management. 2017-11-09 17:00:36 +01:00
Aaron 95e289d82d Introduce an overview of all albums for admins. 2017-11-09 17:00:36 +01:00
Aaron 1a15e347f2 Merges from upstream Kabuki. 2017-11-09 17:00:36 +01:00
Aaron 31e1357b47 Show only Person tags in tag management screen. 2017-11-09 17:00:36 +01:00
Aaron 08cc6b1c77 Updated TODO 2017-11-09 17:00:36 +01:00
Aaron 1623a430e5 Sort People tags descending; Albums ascending. 2017-11-09 17:00:35 +01:00
Aaron 9f92ed6d7a JS photo nav: scroll to #photo_frame automatically. 2017-11-09 17:00:35 +01:00
Aaron fc02c9b93a Updated todo. 2017-11-09 17:00:35 +01:00
Aaron 9dfb2649e5 Revert "Properly fix prev/next in set."
This reverts commit 94427a4c5c03b1368356279781bddf6c82527831.
2017-11-09 17:00:35 +01:00
Aaron 9b2cc5caae Properly fix prev/next in set. 2017-11-09 17:00:35 +01:00
Aaron fa5ef75205 Basic styling for (long) tag lists. 2017-11-09 17:00:35 +01:00
Aaron f4bcb1e584 Typo: empty string, not 0. 2017-11-09 17:00:35 +01:00
Aaron 1f7fe35cec Accept tags consisting of only two letters, too. 2017-11-09 17:00:35 +01:00
Aaron 0a55730696 Allow all users to create and link people tags. 2017-11-09 17:00:35 +01:00
Aaron 7f5ce1820d Split preview box creation from preview generation. 2017-11-09 17:00:35 +01:00
Aaron 6c0f6b06e6 Fix IPv4-only remnant. 2017-11-09 17:00:35 +01:00
Aaron b66088319b Reply from @aaronweb.net, not @pics.hashru.nl, for now. 2017-11-09 17:00:35 +01:00
Aaron 2a7b44dfb2 Added favicon. 2017-11-09 17:00:35 +01:00
Aaron a85afff188 Re-enable custom error handler. 2017-11-09 17:00:35 +01:00
Aaron 01bfc66842 Process login_url properly. 2017-11-09 17:00:35 +01:00
Aaron 09a662b4eb Add uploader to photo view. 2017-11-09 17:00:35 +01:00
Aaron 5b7099e0e5 Show tag kind in tag management screen. 2017-11-09 17:00:35 +01:00
Aaron 90ed084783 Compute border colours on album indices, too. 2017-11-09 17:00:35 +01:00
Aaron 1fe2e5057f Don't show album creation button for non-admins. 2017-11-09 17:00:35 +01:00
Aaron 7c19265767 Allow regular users to upload, too. 2017-11-09 17:00:35 +01:00
Aaron 6d07a47132 Only allow authenticated users to view photos. 2017-11-09 17:00:35 +01:00
Aaron aa04c5ee04 Reduce JPEG quality for thumbnails. 2017-11-09 17:00:35 +01:00
Aaron c11c5c2677 Implement navigation for photo pages. 2017-11-09 17:00:35 +01:00
Aaron 67a182671f Upload photos to tag slug subdirectory. 2017-11-09 17:00:35 +01:00
Aaron e7e3a4368a Set tag cover photo automatically on upload. 2017-11-09 17:00:35 +01:00
Aaron 2d77fbdbb7 Add very basic context buttons to album pages. 2017-11-09 17:00:35 +01:00
Aaron ddcc28aff6 Implement upload throttling: one file at a time. 2017-11-09 17:00:35 +01:00
Aaron 790d5fc5d0 Uploading of new photos now fully working. 2017-11-09 17:00:35 +01:00
Aaron 77a9cd5d53 Add mockup progress bars to uploads. 2017-11-09 17:00:35 +01:00
Aaron c13442cac6 Add label next to spinner to indicate what's happening. 2017-11-09 17:00:35 +01:00
Aaron c912c3327e Add spinner; retain preview image order. 2017-11-09 17:00:35 +01:00
Aaron 6aaa21b176 WIP: new photo uploader. 2017-11-09 17:00:35 +01:00
Aaron f96ab144ef WIP: adding tags to photos. 2017-11-09 17:00:35 +01:00
Aaron 3220d361c3 Introducing the AlbumHeaderBox. Removes a hack. 2017-11-09 17:00:35 +01:00
Aaron fdc437b29c Responsive design for photo pages. 2017-11-09 17:00:35 +01:00
Aaron 6f94df04f0 Order albums chronologically ascending. 2017-11-09 17:00:35 +01:00
Aaron 0341f73d09 Allow changing album pages by arrow keys. 2017-11-09 17:00:34 +01:00
Aaron f86a3ce358 Add single photo pages, navigateable by arrow keys and touch gestures. 2017-11-09 17:00:34 +01:00
Aaron e6b0c13354 Fix rotation through exiftool after importing. 2017-11-09 17:00:34 +01:00
Aaron 0d1fce41c8 Glob portraits for small 4x4 tiles as well. 2017-11-09 17:00:34 +01:00
Aaron 5cac86d87f More hashes to get rid of. 2017-11-09 17:00:34 +01:00
Aaron f2ec122234 Recount tag cardinality after importing. 2017-11-09 17:00:34 +01:00
Aaron 2c4277790b Import photo ownership. 2017-11-09 17:00:34 +01:00
Aaron 2f86231e61 Import users, too. 2017-11-09 17:00:34 +01:00
Aaron 7240201a3e PhotoMosaic: allow sets of three portraits. 2017-11-09 17:00:34 +01:00
Aaron df7655e00b Allow jumping to random pages through pagination fillers. 2017-11-09 17:00:34 +01:00
Aaron 29030eade6 Tackle session errors through UserFacingException. 2017-11-09 17:00:34 +01:00
Aaron e1df4678ac More helpful error messages for database errors. 2017-11-09 17:00:34 +01:00
Aaron 02752798a9 Add session verification to error log flushing. 2017-11-09 17:00:34 +01:00