app/assets/javascripts/faalis/dashboard/modules/fields/image.js in faalis-1.0.0.alpha0 vs app/assets/javascripts/faalis/dashboard/modules/fields/image.js in faalis-1.0.0.alpha1

- old
+ new

@@ -2,114 +2,55 @@ /* * <image-field></image-field> */ -Image_.directive('imageField',["gettext",function(gettext){ - function link(scope, element, attrs,ngModelController){ - scope.element_id = "id_" + scope.field; - scope.msg_element_id = "id_" + scope.field + "_msg"; - - function updateModel(event){ - if(event.target && event.target.files){ - var file = event.target.files[0]; - var reader = new FileReader(); - reader.onload = function(e){ - scope.image = e.target.result; - }; - reader.readAsDataURL(file); - } - } - - element.on('change',updateModel) - - } +Image_.directive('imageField', ['$parse', function ($parse) { return { - templateUrl: template("fields/image/image"), - //getting deprecated - //replace: true, - restrict: "E", - require: '?ngModel', // get a hold of NgModelController - //transclude: true, + restrict: 'A', + link: function(scope, element, attrs) { + var model = $parse(attrs.imageField); + var modelSetter = model.assign; - link: link + element.bind('change', function(){ + scope.$apply(function(){ + modelSetter(scope, element[0].files[0]); + }); + }); + } }; - }]); - - - -/*------------- -var Image_ = angular.module("DatetimeField", ['flow']); - -/* - * <image-field></image-field> -*/ -/*--------- -Image_.directive('imageField',["gettext", function(gettext){ - function link(scope, element, attrs){ - var ltr = is_ltr(); - scope.element_id = "id_" + scope.field; - scope.msg_element_id = "id_" + scope.field + "_msg"; - - scope.fileChanged = function(){ - console.log("funckrun"); - //if (scope.internal_model){ - scope.$watch("model", function(newv, oldv, $scope) { - - f = document.getElementById(scope.element_id).files[0], - r = new FileReader(); - r.onloadend = function(e){ - console.log("dsfdsffdsfdsfsD"); - scope.data = e.target.result; - //image: 'data:image/png;base64,'+btoa($scope.image.data), - }; - r.readAsBinaryString(f); - }, true); - }; - // Watch event changes - - // TODO: maybe we should pass locals to $eval - /* if (scope.on_change !== undefined) { - scope.$parent.$eval(scope.on_change); - } - scope.debug_ = scope.model; - if (scope.internal_model){ - f = document.getElementById(scope.element_id).files[0], - r = new FileReader(); - r.onloadend = function(e){ - var data = e.target.result; - } - r.readAsBinaryString(f); - } - */ -/*------------------ - - - } - return { - templateUrl: template("fields/image/image"), - replace: true, - restrict: "E", - transclude: true, - scope: { - - cssClasses: '=cssClass', - // A call back to pass to field ng-change directive - on_change: "@onChange", - // fieldname - field: "=fieldName", - required: "=", - // Actual Angularjs ng-model - model: '=', - // image source - src: '=', - - data: '=' - - }, - link: link - }; - -}]); -*/ +//Image_.directive('imageField',["gettext",function(gettext){ +// function link(scope, element, attrs,ngModelController){ +// scope.element_id = "id_" + scope.field; +// scope.msg_element_id = "id_" + scope.field + "_msg"; +// +// function updateModel(event){ +// if(event.target && event.target.files){ +// var file = event.target.files[0]; +// var reader = new FileReader(); +// reader.onload = function(e){ +// //scope.image = e.target.result; +// var URL = window.URL || window.webkitURL; +// +// scope.image = URL.createObjectURL(event.target.files); +// }; +// reader.readAsDataURL(file); +// } +// } +// +// element.on('change',updateModel) +// +// } +// return { +// templateUrl: template("fields/image/image"), +// //getting deprecated +// //replace: true, +// restrict: "E", +// require: '?ngModel', // get a hold of NgModelController +// //transclude: true, +// +// link: link +// }; +// +//}]);