Nelze vybrat více než 25 témat Téma musí začínat písmenem nebo číslem, může obsahovat pomlčky („-“) a může být dlouhé až 35 znaků.

upload.controller.js 1.7KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. angular.module('app')
  2. .controller('UploadController', ['$scope', '$state', '$mdDialog', 'EffectsBusiness',
  3. function($scope, $state, $mdDialog, EffectsBusiness) {
  4. $scope.image = null;
  5. $scope.input = angular.element(angular.element("#filePicker")[0]);
  6. $scope.input.on("change", function (e) {
  7. var reader = new FileReader();
  8. var f = e.target.files[0];
  9. reader.readAsBinaryString(f);
  10. reader.onload = (function(file) {
  11. return function(e) {
  12. $scope.$apply(function() {
  13. $scope.fileLoaded(e.target.result, file);
  14. });
  15. };
  16. })(f);
  17. });
  18. $scope.fileLoaded = function(content, file)
  19. {
  20. $scope.image = {
  21. content: content,
  22. name: file.name
  23. };
  24. };
  25. $scope.pickFile = function()
  26. {
  27. $scope.input.click();
  28. };
  29. $scope.applyEffect = function(effect, data)
  30. {
  31. EffectsBusiness.apply({
  32. effect: effect,
  33. image: $scope.image.content,
  34. data: data
  35. }).then(function(data)
  36. {
  37. $scope.image.content = data.image;
  38. }, function (error)
  39. {
  40. console.log(error);
  41. });
  42. };
  43. $scope.test = function()
  44. {
  45. $scope.applyEffect("BlackAndWhite", null);
  46. };
  47. }]);