Skip to content
Snippets Groups Projects
Commit 6ebaec0b authored by Allen Gilliland's avatar Allen Gilliland
Browse files

remove duplicate implementation of Settings services and consolidate them.

parent 7a7b2f20
No related branches found
No related tags found
No related merge requests found
......@@ -6,7 +6,7 @@ import SettingsEditor from './components/SettingsEditor.react';
import Humanize from "humanize";
var SettingsAdminControllers = angular.module('metabaseadmin.settings.controllers', ['metabaseadmin.settings.services']);
var SettingsAdminControllers = angular.module('metabaseadmin.settings.controllers', ['metabase.services']);
// from common.clj
var TIMEZONES = [
......@@ -36,11 +36,11 @@ var EXTRA_SETTINGS_METADATA = {
"email-from-address": { display_name: "From Address", section: "Email", index: 5, type: "string" },
};
SettingsAdminControllers.controller('SettingsEditor', ['$scope', 'SettingsAdminServices', 'AppState', 'settings', function($scope, SettingsAdminServices, AppState, settings) {
SettingsAdminControllers.controller('SettingsEditor', ['$scope', 'Settings', 'AppState', 'settings', function($scope, Settings, AppState, settings) {
$scope.SettingsEditor = SettingsEditor;
$scope.updateSetting = async function(setting) {
await SettingsAdminServices.put({ key: setting.key }, setting).$promise;
await Settings.put({ key: setting.key }, setting).$promise;
AppState.refreshSiteSettings();
}
......
......@@ -2,7 +2,7 @@
var SettingsAdmin = angular.module('metabaseadmin.settings', [
'metabaseadmin.settings.controllers',
'metabaseadmin.settings.services'
'metabase.services'
]);
SettingsAdmin.config(['$routeProvider', function($routeProvider) {
......@@ -10,8 +10,8 @@ SettingsAdmin.config(['$routeProvider', function($routeProvider) {
template: '<div class="flex flex-column flex-full" mb-react-component="SettingsEditor"></div>',
controller: 'SettingsEditor',
resolve: {
settings: ['SettingsAdminServices', async function(SettingsAdminServices) {
var settings = await SettingsAdminServices.list().$promise
settings: ['Settings', async function(Settings) {
var settings = await Settings.list().$promise
return settings.map(function(setting) {
setting.originalValue = setting.value;
return setting;
......
'use strict';
var SettingsAdminServices = angular.module('metabaseadmin.settings.services', ['ngResource']);
SettingsAdminServices.factory('SettingsAdminServices', ['$resource', function($resource) {
return $resource('/api/setting', {}, {
list: {
url: '/api/setting',
method: 'GET',
isArray: true
},
// POST endpoint handles create + update in this case
put: {
url: '/api/setting/:key',
method: 'PUT',
params: {
key: '@key'
}
},
delete: {
url: '/api/setting/:key',
method: 'DELETE',
params: {
key: '@key'
}
}
});
}]);
'use strict';
var SetupControllers = angular.module('metabase.setup.controllers', ['metabase.metabase.services', 'metabaseadmin.settings.services', 'metabase.setup.services']);
var SetupControllers = angular.module('metabase.setup.controllers', ['metabase.metabase.services', 'metabase.setup.services']);
SetupControllers.controller('SetupInit', ['$scope', '$location', '$routeParams', 'AppState',
function($scope, $location, $routeParams, AppState) {
......@@ -14,8 +14,8 @@ SetupControllers.controller('SetupInit', ['$scope', '$location', '$routeParams',
}
]);
SetupControllers.controller('SetupInfo', ['$scope', '$routeParams', '$location', '$timeout', 'ipCookie', 'User', 'AppState', 'Setup', 'SettingsAdminServices',
function($scope, $routeParams, $location, $timeout, ipCookie, User, AppState, Setup, SettingsAdminServices) {
SetupControllers.controller('SetupInfo', ['$scope', '$routeParams', '$location', '$timeout', 'ipCookie', 'User', 'AppState', 'Setup', 'Settings',
function($scope, $routeParams, $location, $timeout, ipCookie, User, AppState, Setup, Settings) {
$scope.activeStep = "user";
$scope.completedSteps = {
user: false,
......@@ -109,7 +109,7 @@ SetupControllers.controller('SetupInfo', ['$scope', '$routeParams', '$location',
}
function setSiteName() {
return SettingsAdminServices.put({
return Settings.put({
'key': 'site-name',
'value': $scope.newUser.siteName
}).$promise.then(function(success) {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment