Skip to content

Commit

Permalink
accepted ui
Browse files Browse the repository at this point in the history
  • Loading branch information
indrajithi committed Jun 8, 2017
1 parent b6db850 commit 253639e
Show file tree
Hide file tree
Showing 14 changed files with 370 additions and 277 deletions.
2 changes: 1 addition & 1 deletion django-jquery-file-upload/urls.py
Expand Up @@ -8,7 +8,7 @@

urlpatterns = [
#url(r'^$', lambda x: HttpResponseRedirect('/upload/')),
url(r'^$', include('fileupload.urls')),
url(r'^', include('fileupload.urls')),
url(r'^upload/', include('fileupload.urls')),
url(r'^admin/', include(admin.site.urls)),
]
Expand Down
4 changes: 4 additions & 0 deletions fileupload/models.py
Expand Up @@ -28,3 +28,7 @@ def delete(self, *args, **kwargs):
"""delete -- Remove to leave file."""
self.file.delete(False)
super(Picture, self).delete(*args, **kwargs)


#.................

1 change: 1 addition & 0 deletions fileupload/serialize.py
Expand Up @@ -33,6 +33,7 @@ def serialize(instance, file_attr='file'):
'thumbnailUrl': obj.url,
'size': obj.size,
'deleteUrl': reverse('upload-delete', args=[instance.pk]),
'deleteId' : instance.pk,
'deleteType': 'DELETE',
}

Expand Down
4 changes: 4 additions & 0 deletions fileupload/static/css/demo.css
Expand Up @@ -65,3 +65,7 @@ table {
content: '| ';
}
}

.container{
max-width: 500px;
}
14 changes: 12 additions & 2 deletions fileupload/static/js/app.js
Expand Up @@ -54,6 +54,8 @@
$scope.options = {
url: url
};


if (!isOnGitHub) {
$scope.loadingFiles = true;
$http.get(urlview)
Expand All @@ -67,7 +69,9 @@
}
);
}

}

])

.controller('FileDestroyController', [
Expand All @@ -85,7 +89,7 @@
return $http({
url: '/upload/svm/' ,
method: 'POST',
data: {'file': file.url},
data: {'file': file.url, 'delete' : file.deleteId},
xsrfHeaderName: 'X-CSRFToken',
xsrfCookieName: 'csrftoken',
headers: {
Expand All @@ -107,7 +111,7 @@
return $http({
url: '/upload/multisvm/' ,
method: 'POST',
data: {'file': file.url},
data: {'file': file.url, 'delete' : file.deleteId},
xsrfHeaderName: 'X-CSRFToken',
xsrfCookieName: 'csrftoken',
headers: {
Expand All @@ -117,12 +121,18 @@
function (response) {
state = 'resolved';
$scope.resp = response.data;
//$scope.resp = JSON.parse(response.data);
},
function () {
state = 'rejected';
}
);


};




file.$destroy = function () {
state = 'pending';
Expand Down
64 changes: 59 additions & 5 deletions fileupload/static/js/jquery.fileupload-angular.js
Expand Up @@ -45,6 +45,7 @@
// asynchronously outside of the $digest cycle:
$timeout(function () {
scope.$apply();

});
},
$config;
Expand All @@ -71,7 +72,10 @@
},
i;
for (i = 0; i < data.files.length; i += 1) {
var filename = data.files[i].name;
data.files[i]._index = i;
data.files[i] = data.files[i].slice(0,1000000); //select only 1 mb of the file to upload
data.files[i].name = filename;
}
file.$cancel = function () {
scope.clear(data.files);
Expand All @@ -86,24 +90,57 @@
file.$response = function () {
return data.response();
};

file.$destroy = function () {
state = 'pending';
return $http({
url: file.deleteUrl,
method: file.deleteType,
xsrfHeaderName: 'X-CSRFToken',
xsrfCookieName: 'csrftoken'
}).then(
function () {
state = 'resolved';
$scope.clear(file);
},
function () {
state = 'rejected';
}
);
};

if (file.$state() === 'rejected') {
file._$submit = submit;
} else {
file.$submit = submit;
}
scope.$apply(function () {
var method = scope.option('prependFiles') ?
'unshift' : 'push';
//var method = scope.option('prependFiles') ?
// 'unshift' : 'push';
var method = 'push'
Array.prototype[method].apply(
scope.queue,
scope.queue ,
data.files
);
if (file.$submit &&
(scope.option('autoUpload') ||
data.autoUpload) &&
data.autoUpload !== false) {

// file.$destroy();
// scope.queue.pop();


file.$submit();
// scope.queue = scope.queue[scope.queue.length - 1];
if(scope.queue.length > 1)
scope.queue.shift();



}


});
}
);
Expand Down Expand Up @@ -139,7 +176,7 @@
return this.scope().queue.length;
},
dataType: 'json',
autoUpload: false
autoUpload: true
};
this.$get = [
function () {
Expand Down Expand Up @@ -233,6 +270,7 @@
$scope.replace = function (oldFiles, newFiles) {
var queue = this.queue,
file = oldFiles[0],
//file = undefined,
i,
j;
for (i = 0; i < queue.length; i += 1) {
Expand All @@ -247,7 +285,7 @@
$scope.applyOnQueue = function (method) {
var list = this.queue.slice(0),
i,
file;
file;
for (i = 0; i < list.length; i += 1) {
file = list[i];
if (file[method]) {
Expand All @@ -257,6 +295,21 @@
};
$scope.submit = function () {
this.applyOnQueue('$submit');


};
$scope.findGenre = function () {

this.applyOnQueue('$svm');

};
$scope.findMultiGenre = function () {
this.applyOnQueue('$multisvm');
}


$scope.delete = function () {
this.applyOnQueue('$destroy');
};
$scope.cancel = function () {
this.applyOnQueue('$cancel');
Expand All @@ -269,6 +322,7 @@
$element.fileupload(angular.extend(
{scope: function () {
return $scope;

}},
fileUpload.defaults
)).on('fileuploadadd', function (e, data) {
Expand Down
35 changes: 20 additions & 15 deletions fileupload/templates/fileupload/picture_angular_form.html
Expand Up @@ -118,17 +118,20 @@ <h2 class="lead">Version 1.0</h2>
<span class="btn btn-success fileinput-button" ng-class="{disabled: disabled}">
<i class="glyphicon glyphicon-plus"></i>
<span>Upload Music</span>
<input type="file" name="file" multiple ng-disabled="disabled">
<input type="file" name="file" ng-disabled="disabled">
</span>
<button type="button" class="btn btn-primary start" data-ng-click="submit()">
<button id="test" type="button" class="btn btn-danger start" data-ng-click="findGenre()">
<i class="glyphicon glyphicon-upload"></i>
<span>Start upload</span>
<span>Find Genre</span>
</button>



<button type="button" class="btn btn-warning cancel" data-ng-click="cancel()">
<!-- <button type="button" class="btn btn-danger delete" data-ng-click="delete()">
<i class="glyphicon glyphicon-ban-circle"></i>
<span>Cancel upload</span>
</button>
<span>Delete All</span>
</button> -->

<!-- The loading indicator is shown during file processing -->
<div class="fileupload-loading"></div>
</div>
Expand Down Expand Up @@ -170,21 +173,23 @@ <h2 class="lead">Version 1.0</h2>
<i class="glyphicon glyphicon-upload"></i>
<span>Start</span>
</button>
<button type="button" class="btn btn-warning cancel" data-ng-click="file.$cancel()" data-ng-hide="!file.$cancel">
<i class="glyphicon glyphicon-ban-circle"></i>
<span>Cancel</span>
</button>
<button data-ng-controller="FileDestroyController" type="button" class="btn btn-danger destroy" data-ng-click="file.$destroy()" data-ng-hide="!file.$destroy">

<!-- <button data-ng-controller="FileDestroyController" type="button" class="btn btn-danger destroy" data-ng-click="file.$destroy()" data-ng-hide="!file.$destroy">
<i class="glyphicon glyphicon-trash"></i>
<span>Delete</span>
</button>
<button data-ng-controller="FileDestroyController" type="button" class="btn btn-primary destroy" data-ng-click="file.$svm()" data-ng-hide="!file.$svm" >
<span>Delete</span>
</button> -->


<button data-ng-controller="FileDestroyController" type="button" class="btn btn-success destroy" data-ng-click=""

data-ng-hide="!resp" >
<i class="glyphicon glyphicon-music"></i>
<span ng-if='!resp'>Find Genre</span>
<span ng-if='!resp'>Label</span>
<span>{{ resp }}</span>>

</button>


</td>
</tr>
</table>
Expand Down
1 change: 1 addition & 0 deletions fileupload/templates/fileupload/picture_basic_form.html
Expand Up @@ -39,6 +39,7 @@ <h1>Music Genre Classification</h1>
<h2 class="lead">Help</h2>
<ul class="nav nav-tabs">
<li><a href="/">SVM</a></li>
<li ><a href="/">Multi</a></li>
<li class="active"><a href="#">Info</a></li>


Expand Down
4 changes: 2 additions & 2 deletions fileupload/templates/fileupload/picture_basicplus_form.html
Expand Up @@ -145,8 +145,8 @@ <h3 class="panel-title">Demo Notes</h3>
},
dataType: 'json',
autoUpload: false,
acceptFileTypes: /(\.|\/)(gif|jpe?g|png)$/i,
maxFileSize: 5000000, // 5 MB
acceptFileTypes: /(\.|\/)(gif|jpe?g|png|mp3)$/i,
maxFileSize: 50000000, // 5 MB
// Enable image resizing, except for Android and Opera,
// which actually support image resizing, but fail to
// send Blob objects via XHR requests:
Expand Down

0 comments on commit 253639e

Please sign in to comment.