Commit 1a7d9ab1 authored by Rafael Monnerat's avatar Rafael Monnerat

slapos_pdm: Allow get Software Release lists from validated Products

   This allow the internal API, generate upgrade decisions for non public softwares
parent 83510d52
...@@ -26,7 +26,7 @@ else: ...@@ -26,7 +26,7 @@ else:
product_list = portal.portal_catalog( product_list = portal.portal_catalog(
portal_type='Software Product', portal_type='Software Product',
reference=software_product_reference, reference=software_product_reference,
validation_state='published', validation_state=['published', 'validated'],
limit=2) limit=2)
if not product_list: if not product_list:
...@@ -39,11 +39,16 @@ software_release_list = product_list[0].getAggregateRelatedValueList() ...@@ -39,11 +39,16 @@ software_release_list = product_list[0].getAggregateRelatedValueList()
def sortkey(software_release): def sortkey(software_release):
publication_date = software_release.getEffectiveDate() publication_date = software_release.getEffectiveDate()
delta = 0
if software_release.getValidationState() == "archived":
# Decrease 80 years, to be sure it goes last but still on the list
delta = 365*80
if publication_date: if publication_date:
if (publication_date - DateTime()) > 0: if (publication_date - DateTime()) > 0:
return DateTime('1900/05/02') # Decrease 100 years, to be sure it goes at the end of the queue
return publication_date delta = 365*100
return software_release.getCreationDate() return publication_date - delta
return software_release.getCreationDate() - delta
software_release_list = sorted( software_release_list = sorted(
software_release_list, software_release_list,
...@@ -52,5 +57,4 @@ software_release_list = sorted( ...@@ -52,5 +57,4 @@ software_release_list = sorted(
return [software_release for software_release in software_release_list return [software_release for software_release in software_release_list
if software_release.getValidationState() in if software_release.getValidationState() in
["published", "published_alive"] ["published", "published_alive", "archived"]]
]
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment