match licenses
noted that rights for gitenberg ebooks was not getting set properlypull/1/head
parent
d7324cd1db
commit
f110e02297
|
@ -898,7 +898,7 @@ def load_from_yaml(yaml_url, test_mode=False):
|
|||
url=git_download_from_yaml_url(yaml_url,metadata._version,edition_name=book_name_prefix,
|
||||
format_= ebook_format),
|
||||
provider='Github',
|
||||
rights = metadata.rights if metadata.rights in cc.LICENSE_LIST_ALL else None,
|
||||
rights = cc.match_license(metadata.rights),
|
||||
format = ebook_format,
|
||||
edition = edition,
|
||||
# version = metadata._version
|
||||
|
|
18
core/cc.py
18
core/cc.py
|
@ -36,13 +36,14 @@ GRANTS = tuple([(item[0],item[3]) for item in INFO_ALL])
|
|||
|
||||
LICENSE_LIST = [item[0] for item in INFO_CC]
|
||||
LICENSE_LIST_ALL = [item[0] for item in INFO_ALL]
|
||||
LICENSE_NAMES_ALL = [item[2] for item in INFO_ALL]
|
||||
LICENSE_URLS_ALL = [item[3] for item in INFO_ALL]
|
||||
FACET_LIST = [item[1] for item in INFO_ALL]
|
||||
|
||||
RIGHTS_ALIAS = {
|
||||
"Public domain in the USA.":"PD-US",
|
||||
}
|
||||
|
||||
|
||||
class CCLicense():
|
||||
@staticmethod
|
||||
def url(license):
|
||||
|
@ -146,3 +147,18 @@ def license_value(facet):
|
|||
return LICENSE_LIST_ALL[FACET_LIST.index(facet)]
|
||||
else:
|
||||
return ''
|
||||
|
||||
def match_license(license_string):
|
||||
if license_string in LICENSE_LIST_ALL:
|
||||
return license_string
|
||||
try:
|
||||
l = LICENSE_NAMES_ALL.index(license_string)
|
||||
return INFO_ALL[l][0]
|
||||
except ValueError:
|
||||
pass
|
||||
try:
|
||||
l = LICENSE_URLS_ALL.index(license_string)
|
||||
return INFO_ALL[l][0]
|
||||
except ValueError:
|
||||
pass
|
||||
return RIGHTS_ALIAS.get(license_string, None)
|
||||
|
|
Loading…
Reference in New Issue