Skip to content

Commit e2ad1d7

Browse files
committed
General fixes and test page
1 parent f90c9d9 commit e2ad1d7

File tree

3 files changed

+64
-2
lines changed

3 files changed

+64
-2
lines changed

app/azureBlobUpload.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@ angular.module('azureBlobStorage').factory('azureBlobUpload', [
108108
return deferred.promise;
109109
}
110110

111-
var uri = state.blobUri + '&comp=block&blockid=' + block.getBlockId();
111+
var uri = state.blobUri + '&comp=block&blockid=' + block.blockIdBase64;
112112
var requestData = block.data;
113113

114114
if (requestData === null) {
@@ -336,7 +336,7 @@ angular.module('azureBlobStorage').factory('azureBlobUpload', [
336336

337337
var requestBody = '<?xml version="1.0" encoding="utf-8"?><BlockList>';
338338
state.blocks.forEach(function(block) {
339-
requestBody += '<Latest>' + block.getBlockId() + '</Latest>';
339+
requestBody += '<Latest>' + block.blockIdBase64 + '</Latest>';
340340
});
341341
requestBody += '</BlockList>';
342342

app/ngFileSelect.js

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
angular.module('azureBlobStorage').directive('ngFileSelect', [ '$parse', '$http', '$timeout', function($parse, $http, $timeout) {
2+
return function(scope, elem, attr) {
3+
var fn = $parse(attr.ngFileSelect);
4+
elem.bind('change', function(evt) {
5+
var files = [], fileList, i;
6+
fileList = evt.target.files;
7+
if (fileList !== null) {
8+
for (i = 0; i < fileList.length; i++) {
9+
files.push(fileList.item(i));
10+
}
11+
}
12+
$timeout(function() {
13+
fn(scope, {
14+
$files : files,
15+
$event: evt
16+
});
17+
});
18+
});
19+
elem.bind('click', function(){
20+
this.value = null;
21+
});
22+
};
23+
} ]);

index.html

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
<!DOCTYPE html>
2+
<html>
3+
<head>
4+
<meta charset="utf-8" />
5+
<title>Angular Azure Blob</title>
6+
</head>
7+
8+
<body ng-app="azureBlobStorage">
9+
<div ng-controller="DemoController" class="container">
10+
<form>
11+
<input type="file" ng-file-select="selectFile($files)" />
12+
</form>
13+
</div>
14+
15+
<script type="text/javascript" src="libs/angular/angular.min.js"></script>
16+
<script type="text/javascript" src="libs/underscore/underscore-min.js"></script>
17+
<script type="text/javascript" src="libs/cryptojslib/rollups/md5.js"></script>
18+
<script type="text/javascript" src="libs/cryptojslib/components/lib-typedarrays-min.js"></script>
19+
<script type="text/javascript" src="dist/angular-azure-blob.js"></script>
20+
21+
<script type="text/javascript">
22+
angular.module('azureBlobStorage').controller('DemoController', [
23+
'$scope', 'azureBlobUpload', function ($scope, azureBlobUpload) {
24+
$scope.selectFile = function (files) {
25+
debugger;
26+
azureBlobUpload.upload({
27+
blobUri: 'xxx',
28+
file: files[0],
29+
process: function cb(){},
30+
complete: function cb() {},
31+
error: function cb() {},
32+
blockSize: 1024, // optional
33+
calculateFileMd5: false // optional, false by default
34+
});
35+
};
36+
}]);
37+
</script>
38+
</body>
39+
</html>

0 commit comments

Comments
 (0)