mirror of
https://github.com/fergalmoran/dss.git
synced 2026-01-02 15:09:58 +00:00
Fixed non-upload of mix image in edit
This commit is contained in:
@@ -51,4 +51,3 @@ class MixResource(BackboneCompatibleResource):
|
||||
bundle.data['liked'] = bundle.obj.is_liked(bundle.request.user)
|
||||
bundle.data['favourited'] = bundle.obj.is_favourited(bundle.request.user)
|
||||
return bundle
|
||||
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
from datetime import datetime
|
||||
from django.db import models
|
||||
from django.db.models import Count
|
||||
from django.forms import save_instance
|
||||
import os
|
||||
from core.utils.file import generate_save_file_name
|
||||
from dss import settings
|
||||
@@ -35,6 +36,10 @@ class Mix(_BaseModel):
|
||||
return self.title
|
||||
|
||||
def save(self, force_insert=False, force_update=False, using=None):
|
||||
#turn away now - horrid hack to strip media root url
|
||||
#from image - will sort when I've figured backbone out better
|
||||
if self.mix_image.name.startswith(settings.MEDIA_URL):
|
||||
self.mix_image.name = self.mix_image.name[len(settings.MEDIA_URL):len(self.mix_image.name)]
|
||||
super(Mix, self).save(force_insert, force_update, using)
|
||||
|
||||
def get_absolute_url(self):
|
||||
|
||||
@@ -130,7 +130,8 @@ window.MixCreateView = Backbone.View.extend({
|
||||
events:{
|
||||
"click #save-changes":"saveChanges",
|
||||
"change input":"changed",
|
||||
"change textarea":"changed"
|
||||
"change textarea":"changed",
|
||||
"change #mix_image":"imageChanged"
|
||||
},
|
||||
checkRedirect:function () {
|
||||
if (this.state == 2) {
|
||||
@@ -143,6 +144,7 @@ window.MixCreateView = Backbone.View.extend({
|
||||
this.render();
|
||||
},
|
||||
render:function () {
|
||||
this.sendImage = false;
|
||||
$(this.el).html(this.template({"item":this.model.toJSON()}));
|
||||
var parent = this;
|
||||
if (this.model.id == undefined) {
|
||||
@@ -192,27 +194,32 @@ window.MixCreateView = Backbone.View.extend({
|
||||
this.model.save(
|
||||
null, {
|
||||
success:function () {
|
||||
$.ajaxFileUpload({
|
||||
url:'ajax/upload_image/' + model.get('id') + '/',
|
||||
secureuri:false,
|
||||
fileElementId:'mix_image',
|
||||
success:function (data, status) {
|
||||
if (typeof(data.error) != 'undefined') {
|
||||
if (data.error != '') {
|
||||
alert(data.error);
|
||||
if (parent.sendImage) {
|
||||
$.ajaxFileUpload({
|
||||
url:'ajax/upload_image/' + model.get('id') + '/',
|
||||
secureuri:false,
|
||||
fileElementId:'mix_image',
|
||||
success:function (data, status) {
|
||||
if (typeof(data.error) != 'undefined') {
|
||||
if (data.error != '') {
|
||||
alert(data.error);
|
||||
} else {
|
||||
alert(data.msg);
|
||||
}
|
||||
} else {
|
||||
alert(data.msg);
|
||||
$('#mix-details', this.el).hide();
|
||||
parent.state++;
|
||||
parent.checkRedirect();
|
||||
}
|
||||
} else {
|
||||
$('#mix-details', this.el).hide();
|
||||
parent.state++;
|
||||
parent.checkRedirect();
|
||||
},
|
||||
error:function (data, status, e) {
|
||||
alert(e);
|
||||
}
|
||||
},
|
||||
error:function (data, status, e) {
|
||||
alert(e);
|
||||
}
|
||||
});
|
||||
});
|
||||
}else{
|
||||
parent.state++;
|
||||
parent.checkRedirect();
|
||||
}
|
||||
},
|
||||
error:function () {
|
||||
com.podnoms.utils.showAlert("Error", "Something went wrong", "alert-info", false);
|
||||
@@ -226,5 +233,8 @@ window.MixCreateView = Backbone.View.extend({
|
||||
var obj = "{\"" + changed.id + "\":\"" + value + "\"}";
|
||||
var objInst = JSON.parse(obj);
|
||||
this.model.set(objInst);
|
||||
},
|
||||
imageChanged:function (evt) {
|
||||
this.sendImage = true;
|
||||
}
|
||||
});
|
||||
Reference in New Issue
Block a user