f3fdded07d
Edit.json: preload annotation users
...
The expensive part of fetching an edit is JSONifying the clips'
annotations. Profiling showed that the main cost was Annotation.json(),
and within that:
File: /srv/pandora/pandora/annotation/models.py
Function: json at line 216
Line # Hits Time Per Hit % Time Line Contents
==============================================================
216 def json(self, layer=False, keys=None, user=None):
217 632 827 1.3 0.1 j = {
218 632 1048170 1658.5 89.6 'user': self.user.username,
219 }
Obviously this join just moves some of the cost further out, but it
brings my micro-benchmark down from 1.3s to 0.3s.
2015-08-02 16:02:47 +02:00
ab5a20d3a2
Treat findEdits({}) like findEdits({query: {}}) ( fixes #2820 )
2015-07-22 21:37:55 +02:00
4c0652e683
errorlogsDialog: fix searching text ( fixes #2819 )
2015-07-22 21:37:04 +02:00
d3c18a5859
editAnnotation: explicitly refuse to change layer, fixes #2818
2015-07-14 10:48:05 +02:00
1ef7101761
annotations: fix 'unkown' typo
2015-07-14 10:47:00 +02:00
j
5e6b054896
extend cookie age if its still used
2015-06-30 20:02:09 +02:00
j
d3c3378267
add default video ratio for audio files
2015-06-29 09:10:12 +01:00
j
9208e09dd2
sync config documentation
2015-06-26 07:27:56 +00:00
j
1a2f051bdd
fix documentation update
2015-06-26 07:27:13 +00:00
e55e503654
Pass entity type to autocompleteEntities, not layer id ( fixes #2810 )
...
If (for example) you have a type of entities, "participants", and a
second annotation layer for them, like this:
{
"id": "participantsdiscussed",
"title": "Participants discussed",
"type": "entity",
"entity": "participants"
}
then we should be passing key="participants" to autocompleteEntities
(since that is the type of entity), not key="participantsdiscussed"
(which is not a type of entities and raises an error).
2015-06-24 16:42:38 +02:00
j
9758b7d312
fail if entity is unknown
2015-06-24 16:41:49 +02:00
j
ce701d38d0
space
2015-06-24 16:41:11 +02:00
j
adb831ce70
dont turn data into string, fixes #2797
2015-05-28 13:10:39 +02:00
j
5cc23093ef
keys might be undefined
2015-05-25 12:51:11 +00:00
j
e063cc7020
use empty string if value is undefined or null, fixes #2790
2015-05-23 18:02:24 +02:00
j
4705e33ef1
only enable menu entries if user has permission to edit/upload
2015-05-23 13:10:25 +02:00
j
5da83f6f6d
don't return empty string for undefined values, handle in context browser
2015-05-23 15:11:18 +05:30
j
0504eaf227
audio files should not have aspect ratio
2015-05-23 15:10:24 +05:30
j
9191a9c196
extension should be lowercase
2015-05-23 11:06:22 +02:00
j
27e9bc62fb
typo
2015-05-23 14:25:58 +05:30
j
23398c4307
get resolution from videos while uploading and dont return sort value
2015-05-23 14:22:44 +05:30
j
7359a24d78
keep video height if its < profile height
2015-05-22 19:01:05 +05:30
j
509fa6fd0c
use sys.argv[0]
2015-05-22 12:00:35 +02:00
j
d4a7ec0e0c
now that we have js tracebacks, also open dialog for js errors, fixes #2756
2015-05-20 11:47:04 +01:00
0e4c49729b
window.onerror: log stack to server if available
...
Firefox >= 31 and Chrome >= ~August 2013 pass the Error object as the
5th parameter to window.onerror.
https://developer.mozilla.org/en-US/docs/Web/API/GlobalEventHandlers/onerror
https://code.google.com/p/chromium/issues/detail?id=147127
2015-05-20 12:44:31 +02:00
8b0459592c
logError: log HTTP_USER_AGENT
...
include user agent in error text
2015-05-20 12:38:49 +02:00
3ad9d4821b
Fix findEntities( ... name == x ... ), fixes #2769
2015-05-20 12:30:31 +02:00
fe7f961ff6
Entity: fix name_find when alternativeNames is non-empty
...
Previously, given:
name = "foo"
alternativeNames = ("bar", "baz")
then:
name_find = '||foobar||baz||'
2015-05-20 12:16:32 +02:00
b7a83554ab
Fix references to findDocument[s] in docstrings
2015-05-20 12:14:21 +02:00
j
4deb4daad3
typo in length check, fix cancel button before stating upload
2015-05-19 23:10:30 +02:00
j
f11772b8db
fix annotations without public_id after initializing sequence
2015-05-20 01:04:42 +05:30
j
ef56f4aec4
track annotation id in table to avoid IntegrityErrors while adding multiple annotations to one item, fixes #2780
2015-05-20 00:43:33 +05:30
j
34f2cfe290
avoid updating item if another annotation was added or edited since dispatching the update_item event
2015-05-20 00:20:50 +05:30
j
380185efd4
more places where year might not exist, fixes #2778
2015-05-19 17:47:20 +05:30
j
09c3c4b959
also fallback to date in context browser, fixes #2777
2015-05-19 14:47:47 +05:30
j
47a3a24a7d
ignore messages that can not be serialized
2015-05-19 02:39:26 +05:30
j
af86445b2e
use username not user
2015-05-18 23:01:19 +02:00
j
1da7135e38
use ui.videoSubtitles for enableSubtitles
2015-05-18 11:51:11 +02:00
j
dd234d9c65
only enabale subtitles is enabled in ui settings
2015-05-18 11:43:30 +02:00
j
9cc4225b86
tune nginx settings
2015-05-18 11:43:14 +02:00
j
8439d56339
use Ox.sort
2015-05-15 13:45:04 +02:00
j
0a03240033
vm build cleanup
2015-05-15 13:42:32 +02:00
j
6dd9522cc5
never include empty layers
2015-05-13 21:59:17 +02:00
j
562a506d68
include user in change event
2015-05-08 08:39:31 +02:00
f9ba4d1bf1
findChangeLog: don't crash if sort is unspecified
...
This would crash:
api.findChangeLogs(keys=[])
because there's no 'name' key for changelog entries. Instead, default to
chronological order, newest first.
2015-05-06 19:00:44 +02:00
j
ff3864b347
nicer logging
2015-05-06 19:00:02 +02:00
j
be41fe9dbe
formating
2015-05-05 13:34:34 +02:00
j
cf10d98d50
check if alternative title has countries
2015-05-04 10:55:47 +02:00
j
80fd7c027e
create user if it does not exist
2015-05-04 10:55:13 +02:00
j
956464b128
support using a username other than pandora
2015-05-02 12:09:53 +02:00