anthtrigger
Version:
Trigger events via http service
65 lines (62 loc) • 1.98 kB
JavaScript
(function() {
angular.module('anthTrigger').controller('editScriptController', function($scope, $http, $location, $q, notify, id) {
var convertTags, loadScript, _st;
_st = {};
$scope.status = _st;
$scope.script = {};
_st.data = 'loading';
convertTags = function(data) {
return data != null ? typeof data.map === "function" ? data.map(function(v) {
if (v.text) {
return v.text;
} else {
return {
text: v
};
}
}) : void 0 : void 0;
};
loadScript = function() {
return $http.get('/scripts/find/' + id).success(function(result) {
if (result.success) {
_st.data = 'loaded';
result.script.tags = convertTags(result.script.tags);
return $scope.script = result.script;
} else {
notify("脚本载入失败!");
return _st.data = 'error';
}
});
};
loadScript();
$scope.loadTags = function(query) {
var deferred;
deferred = $q.defer();
$http.get('/scripts/tags?q=' + query).success(function(data) {
return deferred.resolve(data.map(function(v) {
return {
text: v
};
}));
});
return deferred.promise;
};
$scope.save = function() {
var script;
_st.save = 'saving';
script = angular.copy($scope.script);
script.tags = convertTags(script.tags);
notify("正在保存脚本 (" + script.title + ")...");
return $http.post('/scripts/edit/' + id, script).success(function(result) {
_st.save = result.success ? 'done' : 'error';
if (result.success) {
notify("脚本 (" + script.title + ") 保存成功!");
return $location.url('/scripts');
} else {
return notify("脚本 (" + script.title + ") 保存失败!");
}
});
};
});
}).call(this);
//# sourceMappingURL=editScriptController.js.map