#!/usr/bin/env python
# -*- coding: utf-8 -*-

###############################################################################
#  Copyright Kitware Inc.
#
#  Licensed under the Apache License, Version 2.0 ( the "License" );
#  you may not use this file except in compliance with the License.
#  You may obtain a copy of the License at
#
#    http://www.apache.org/licenses/LICENSE-2.0
#
#  Unless required by applicable law or agreed to in writing, software
#  distributed under the License is distributed on an "AS IS" BASIS,
#  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
#  See the License for the specific language governing permissions and
#  limitations under the License.
###############################################################################

from girder.api import access
from girder.api.describe import Description, describeRoute
from girder.api.rest import boundHandler
from girder.constants import SettingDefault

from .constants import PluginSettings


@access.user
@boundHandler()
@describeRoute(
    Description('Get list of item licenses.')
    .param('default', 'Whether to return the default list of item licenses.',
           required=False, dataType='boolean', default=False)
)
def getLicenses(self, params):
    """
    Get list of item licenses.
    """
    licenses = None

    default = self.boolParam('default', params, default=False)
    if default:
        licenses = SettingDefault.defaults[PluginSettings.LICENSES]
    else:
        licenses = self.model('setting').get(PluginSettings.LICENSES)

    return licenses
