b5274fefb9 
								
							 
						 
						
							
							
								
								Add caching.py to enable browser caching of files.  
							
							
							
						 
						
							2018-03-18 21:42:31 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								ea7401b4f2 
								
							 
						 
						
							
							
								
								Fix common.send_file to use pathclass.  
							
							
							
						 
						
							2018-03-18 21:40:32 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								0de755f138 
								
							 
						 
						
							
							
								
								Let the SessionManager use a cacheclass instead of plain dict.  
							
							
							
						 
						
							2018-03-18 21:23:48 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								84599b44f7 
								
							 
						 
						
							
							
								
								Store author for bookmark creation.  
							
							
							
						 
						
							2018-03-18 15:59:58 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								dffde094e8 
								
							 
						 
						
							
							
								
								Give Albums and Tags an author_id column.  
							
							... 
							
							
							
							Keeping V11 because I hadn't published previous commits yet. 
							
						 
						
							2018-03-18 15:28:26 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								ffe0be21f5 
								
							 
						 
						
							
							
								
								Fix Photo thumbnail paths to be relative to the PDB's thumb dir.  
							
							... 
							
							
							
							Previously they were relative to the directory from which the client
was launched, meaning it usually started with ./_etiquette.
Now it should be more portable and less tight. 
							
						 
						
							2018-03-13 02:50:54 -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 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								f34164bf85 
								
							 
						 
						
							
							
								
								Add search feature has_thumbnails.  
							
							... 
							
							
							
							Search needs a complete refactor.
But until then, let's keep adding to it! 
							
						 
						
							2018-02-24 23:06:25 -08:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								4e98fcf137 
								
							 
						 
						
							
							
								
								Oops, add the session to /clipboard.  
							
							
							
						 
						
							2018-02-24 19:18:15 -08:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								0228fbebfd 
								
							 
						 
						
							
							
								
								Move the random hex generator to helpers.  
							
							
							
						 
						
							2018-02-24 18:54:59 -08:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								5add26d8fb 
								
							 
						 
						
							
							
								
								Add endpoint /batch/photos/refresh_metadata.  
							
							
							
						 
						
							2018-02-24 12:52:36 -08:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								5a1d259780 
								
							 
						 
						
							
							
								
								Add /clipboard UI for mass-tagging.  
							
							
							
						 
						
							2018-02-22 15:23:57 -08:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								761ae5c30c 
								
							 
						 
						
							
							
								
								Add endpoints /batch/photos/add_tag and /remove_tag.  
							
							
							
						 
						
							2018-02-20 17:23:51 -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 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								606a66cbf9 
								
							 
						 
						
							
							
								
								Remove Photo.filepath and real_filepath in favor of real_path.  
							
							
							
						 
						
							2018-02-17 15:19:36 -08:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								59cd922a53 
								
							 
						 
						
							
							
								
								Remove unnecessary methods=GET.  
							
							
							
						 
						
							2018-02-17 14:59:02 -08:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								2f9b51b636 
								
							 
						 
						
							
							
								
								Rename Photo.tags -> get_tags.  
							
							
							
						 
						
							2018-02-16 23:07:21 -08:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								3c4f69f647 
								
							 
						 
						
							
							
								
								Specify name= on calls to PDB.get_tag.  
							
							... 
							
							
							
							Sometimes it's easy to forget whether its the name or ID,
and I like the consistency of specifying. 
							
						 
						
							2018-02-16 22:25:56 -08:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								6f4530c88c 
								
							 
						 
						
							
							
								
								Let SessionManager.get require Request object; Check IP addr.  
							
							... 
							
							
							
							So far there is no use case in which get needs to be called with
something other than a Request, and I don't think there will be.
So let's make that part of the design and we can also take the
opportunity to check IP. 
							
						 
						
							2018-02-03 02:10:07 -08:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								c6a396c658 
								
							 
						 
						
							
							
								
								Move ef/endpoints/common.py to ef/common.py  
							
							... 
							
							
							
							Decided it doesn't belong with the endpoints files. 
							
						 
						
							2018-02-03 01:43:41 -08:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								b39f2e3f7b 
								
							 
						 
						
							
							
								
								Create basic_endpoints file. Don't put them in __init__.  
							
							
							
						 
						
							2018-02-03 01:34:07 -08:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								cf59f96813 
								
							 
						 
						
							
							
								
								Perform serverside expiration of sessions on get attempt.  
							
							... 
							
							
							
							Also remove unnecessary conversion to int. 
							
						 
						
							2018-01-19 21:59:50 -08:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								7352d1e141 
								
							 
						 
						
							
							
								
								If the user has a token we don't recognize, give them a new one.  
							
							
							
						 
						
							2018-01-15 20:04:47 -08:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								55e1281774 
								
							 
						 
						
							
							
								
								Improve technique for finding cookie set by function.  
							
							... 
							
							
							
							Instead of iterating through all the outgoing headers. 
							
						 
						
							2018-01-15 18:56:41 -08:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								be0fca729f 
								
							 
						 
						
							
							
								
								Create sessions for anons as well, instead of just logged in.  
							
							... 
							
							
							
							It makes sense that anon sessions are still sessions. So @give_token
will ensure that every request has a session. Logged in conditionals
move from 'if session' to 'if session.user'. 
							
						 
						
							2018-01-15 18:41:21 -08:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								8a1f2c65f9 
								
							 
						 
						
							
							
								
								Tighten the types for _normalize_token; include werkzeug wrappers.  
							
							
							
						 
						
							2018-01-15 18:39:40 -08:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								ec4b5b014b 
								
							 
						 
						
							
							
								
								Oops, fix missing return statement.  
							
							... 
							
							
							
							That would cause problems. 
							
						 
						
							2018-01-13 16:14:01 -08:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								57f007d595 
								
							 
						 
						
							
							
								
								Don't use from etiquette import.  
							
							
							
						 
						
							2018-01-13 16:12:52 -08:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								d84fc037fe 
								
							 
						 
						
							
							
								
								Use urandom instead of uuid for session id.  
							
							
							
						 
						
							2018-01-13 15:49:14 -08:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								c049b97bc6 
								
							 
						 
						
							
							
								
								Replace etiquette_flask.py with endpoints package.  
							
							... 
							
							
							
							Split the object types' endpoints into separate files and group
them better. Should be much easier to navigate and expand. 
							
						 
						
							2018-01-11 19:40:56 -08:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								fe88cdc413 
								
							 
						 
						
							
							
								
								Add decorator catch_etiquette_exception.  
							
							... 
							
							
							
							To reduce the number of 500 errors and provide 400 instead. 
							
						 
						
							2018-01-09 21:21:15 -08:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								3d8aeec484 
								
							 
						 
						
							
							
								
								Add API endpoints for add/remove photo from album.  
							
							
							
						 
						
							2017-12-16 14:19:00 -08:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								f59f94cae9 
								
							 
						 
						
							
							
								
								Fix required_fields looking at wrong jsonify file.  
							
							
							
						 
						
							2017-12-16 12:25:01 -08:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								0d0354f4da 
								
							 
						 
						
							
							
								
								Rename normalize_filepath to remove_path_badchars.  
							
							... 
							
							
							
							Because the function does not do any resolving or converting
to an absolute path, I feel the name 'normalize' is inaccurate
and could be misleading when read. This is more clear. 
							
						 
						
							2017-12-07 21:15:10 -08:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								bb5fa816d8 
								
							 
						 
						
							
							
								
								Cleanup: Rename GroupableMixin.add to add_child for clarity.  
							
							... 
							
							
							
							Especially since for albums it might sound like you're adding a photo. 
							
						 
						
							2017-11-11 22:41:26 -08:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								3f69a2c240 
								
							 
						 
						
							
							
								
								Cleanup: Replace "objectid" with "object_id" in the Python portions.  
							
							
							
						 
						
							2017-11-11 22:38:51 -08:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								4836efcf23 
								
							 
						 
						
							
							
								
								HTTP redirect /tag/synonym to /tag/master.  
							
							
							
						 
						
							2017-09-18 14:16:33 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								f4ee7ddd9e 
								
							 
						 
						
							
							
								
								Include werkzeug Response type in typecheck.  
							
							
							
						 
						
							2017-09-18 14:10:25 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								4fc203634c 
								
							 
						 
						
							
							
								
								Add new config "enable_login".  
							
							
							
						 
						
							2017-07-20 23:25:23 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								9f45f0851a 
								
							 
						 
						
							
							
								
								Allow renaming the tag via /tag/x/edit.  
							
							
							
						 
						
							2017-07-16 17:28:44 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								22c0163f5b 
								
							 
						 
						
							
							
								
								Add /bookmark/id/edit and /bookmark/id.json endpoints.  
							
							
							
						 
						
							2017-07-13 23:02:57 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								533970f248 
								
							 
						 
						
							
							
								
								Add more stuff to the to-do list.  
							
							
							
						 
						
							2017-07-09 15:48:47 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								a2906db06a 
								
							 
						 
						
							
							
								
								Let /refresh_metadata try to generate a thumbnail.  
							
							
							
						 
						
							2017-07-09 15:45:10 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								57355cb032 
								
							 
						 
						
							
							
								
								Add /userid/id redirect to /user/name  
							
							
							
						 
						
							2017-06-19 17:03:07 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								e58c50c94f 
								
							 
						 
						
							
							
								
								Return 400 instead of 500 for /albums/create_album errors.  
							
							
							
						 
						
							2017-06-16 02:24:57 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								1b9f7608b1 
								
							 
						 
						
							
							
								
								Send more jsonified exceptions instead of just 500.  
							
							
							
						 
						
							2017-06-14 22:48:50 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								d208a254a9 
								
							 
						 
						
							
							
								
								Add /tag/abcd/edit endpoint, no interface yet.  
							
							
							
						 
						
							2017-06-14 12:31:39 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								fa176fdfb8 
								
							 
						 
						
							
							
								
								Redirect /tags/abcde to /tag/abcde  
							
							
							
						 
						
							2017-06-14 12:31:17 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								6cb13c7835 
								
							 
						 
						
							
							
								
								Order endpoints by URL instead of by name.  
							
							... 
							
							
							
							That way, gets and posts of same type can be together. 
							
						 
						
							2017-06-12 20:59:01 -07:00