summaryrefslogtreecommitdiff
path: root/animism-align/frontend
diff options
context:
space:
mode:
Diffstat (limited to 'animism-align/frontend')
-rw-r--r--animism-align/frontend/common/uploadImage.component.js2
-rw-r--r--animism-align/frontend/util/index.js15
-rw-r--r--animism-align/frontend/views/align/align.util.js1
-rw-r--r--animism-align/frontend/views/media/components/media.formImage.js4
-rw-r--r--animism-align/frontend/views/media/containers/media.index.js2
-rw-r--r--animism-align/frontend/views/media/media.css8
-rw-r--r--animism-align/frontend/views/media/media.reducer.js2
7 files changed, 29 insertions, 5 deletions
diff --git a/animism-align/frontend/common/uploadImage.component.js b/animism-align/frontend/common/uploadImage.component.js
index 3ae41c8..f712d6c 100644
--- a/animism-align/frontend/common/uploadImage.component.js
+++ b/animism-align/frontend/common/uploadImage.component.js
@@ -63,7 +63,7 @@ export default class UploadImageComponent extends Component {
type="file"
accept="image/*"
onChange={this.upload.bind(this)}
- required
+ required={this.props.required}
/>
<div className='dragCurtain'>
<div className='dragLabel'>Drop image here</div>
diff --git a/animism-align/frontend/util/index.js b/animism-align/frontend/util/index.js
index 37369f0..3567429 100644
--- a/animism-align/frontend/util/index.js
+++ b/animism-align/frontend/util/index.js
@@ -299,12 +299,20 @@ export const orderByFn = (s='name asc') => {
case 'priority':
mapFn = a => [parseInt(a.priority) || parseInt(a.id) || 1000, a]
sortFn = numericSort[direction]
+ break
case 'title':
mapFn = a => [a.title || "", a]
sortFn = stringSort[direction]
+ break
case 'author':
- mapFn = a => [a.author || "", a]
+ mapFn = a => {
+ let author = (a.author || "").split(' and ')[0].split(' ')
+ author.unshift(author.pop())
+ author = author.join(' ')
+ return [author, a]
+ }
sortFn = stringSort[direction]
+ break
case 'name':
default:
mapFn = a => [a.name || "", a]
@@ -313,7 +321,10 @@ export const orderByFn = (s='name asc') => {
}
return { mapFn, sortFn }
}
-export const getOrderedIds = (objects, sort, prepend=[]) => {
+export const getOrderedIds = (objects, sort, prepend) => {
+ if (!prepend) {
+ prepend = []
+ }
const { mapFn, sortFn } = orderByFn(sort)
return prepend.concat(objects.map(mapFn).sort(sortFn).map(a => a[1].id))
}
diff --git a/animism-align/frontend/views/align/align.util.js b/animism-align/frontend/views/align/align.util.js
index c99ff3b..37d4181 100644
--- a/animism-align/frontend/views/align/align.util.js
+++ b/animism-align/frontend/views/align/align.util.js
@@ -61,4 +61,5 @@ export const cutFirstSentence = text => {
export const thumbnailURL = data => {
if (data.type === 'video') return data.settings.video.thumbnail_url
+ if (data.type === 'image') return data.settings.thumbnail.url
}
diff --git a/animism-align/frontend/views/media/components/media.formImage.js b/animism-align/frontend/views/media/components/media.formImage.js
index 23fd7e7..abd0f94 100644
--- a/animism-align/frontend/views/media/components/media.formImage.js
+++ b/animism-align/frontend/views/media/components/media.formImage.js
@@ -90,6 +90,10 @@ export default class MediaImageForm extends Component {
.then(() => {
return this.uploadTaggedSize(image, tag, fn)
})
+ .catch(() => {
+ console.log('error deleting the image')
+ return this.uploadTaggedSize(image, tag, fn)
+ })
}
return this.uploadTaggedSize(image, tag, fn)
}
diff --git a/animism-align/frontend/views/media/containers/media.index.js b/animism-align/frontend/views/media/containers/media.index.js
index 19ef4c5..bff781e 100644
--- a/animism-align/frontend/views/media/containers/media.index.js
+++ b/animism-align/frontend/views/media/containers/media.index.js
@@ -28,7 +28,7 @@ class MediaIndex extends Component {
fetch(load_more) {
const { options, index } = this.props.media
const { order: index_order } = index
- const [ sort, order ] = options.sort.split('-')
+ const [ sort, order ] = options.sort.split(' ')
actions.media.index({
sort, order, limit: 5000, // offset: load_more ? index_order.length : 0,
}, load_more)
diff --git a/animism-align/frontend/views/media/media.css b/animism-align/frontend/views/media/media.css
index e6e6f5d..701cf44 100644
--- a/animism-align/frontend/views/media/media.css
+++ b/animism-align/frontend/views/media/media.css
@@ -4,6 +4,14 @@
overflow: scroll;
}
+.results .cell {
+ margin-bottom: 1rem;
+ margin-right: 1rem;
+}
+.media .results .meta > div {
+ max-width: 100%;
+}
+
/* new / edit media forms */
.formContainer {
diff --git a/animism-align/frontend/views/media/media.reducer.js b/animism-align/frontend/views/media/media.reducer.js
index 6a04b9a..cb9b91d 100644
--- a/animism-align/frontend/views/media/media.reducer.js
+++ b/animism-align/frontend/views/media/media.reducer.js
@@ -5,7 +5,7 @@ import { crudState, crudReducer } from '../../api/crud.reducer'
const initialState = crudState('media', {
options: {
- sort: 'author-asc',
+ sort: 'author asc',
thumbnailSize: getDefault('upload.thumbnailSize', 'small'),
}
})