sheercms
Version:
Sheer Cliff CMS is a simple and powerful content management system (CMS) for Node JS.
45 lines (39 loc) • 1.56 kB
JavaScript
app.directive('iconSelector', function ($parse, $modal, DialogService) {
return {
restrict: 'E',
scope: {
value: "="
},
template: '\
<div class="icon-selector-field">\
<img ng-src="{{value}}" />\
<div class="input-group">\
<input type="text" class="form-control" value="{{value}}" />\
<span class="input-group-btn">\
<button class="btn btn-default" type="button" ng-click="open()" title="Browse icons"><i class="fa fa-ellipsis-h"></i></button>\
<button class="btn btn-default" type="button" ng-click="clear()" ng-disabled="value == null" title="Clear this field value"><i class="fa fa-times"></i></button>\
</span>\
</div>\
</div>\
',
link: function(scope, element, attrs) {
scope.open = function() {
var options = {
title: "Icon Selector",
value: scope.value,
onSuccess: function(url) {
if (url) {
scope.value = url;
}
}
};
DialogService.openIconSelector(options);
};
scope.clear = function() {
if (confirm('Are you sure you want to clear this field value?')) {
scope.value = "";
}
}
}
};
});