Files
speckle-server/packages/server/modules/core/services/generic.js
T
2021-05-11 20:23:42 +03:00

51 lines
1.2 KiB
JavaScript

'use strict'
const appRoot = require( 'app-root-path' )
const knex = require( `${appRoot}/db/knex` )
const Roles = ( ) => knex( 'user_roles' )
const Scopes = ( ) => knex( 'scopes' )
const Info = ( ) => knex( 'server_config' )
module.exports = {
async getServerInfo( ) {
let serverInfo = await Info( ).select( '*' ).first( )
serverInfo.version = process.env.SPECKLE_SERVER_VERSION || 'dev'
return serverInfo
},
async getAllScopes( ) {
return await Scopes( ).select( '*' )
},
async getPublicScopes() {
return await Scopes( ).select( '*' ).where( { public: true } )
},
async getAllRoles( ) {
return await Roles( ).select( '*' )
},
async getPublicRoles() {
return await Roles( ).select( '*' ).where( { public: true } )
},
async updateServerInfo( { name, company, description, adminContact, termsOfService, inviteOnly } ) {
let serverInfo = await Info( ).select( '*' ).first( )
if ( !serverInfo )
return await Info( ).insert( { name, company, description, adminContact, termsOfService, inviteOnly, completed: true } )
else
return await Info( ).where( { id: 0 } ).update( { name, company, description, adminContact, termsOfService, inviteOnly, completed: true } )
}
}