diff --git a/docs/changes.rst b/docs/changes.rst index 4f02b9fa7..858c20144 100644 --- a/docs/changes.rst +++ b/docs/changes.rst @@ -4,6 +4,9 @@ Changelog 16.1.3 (unreleased) ------------------- +- CSV download of similar title details. + Ref: scrum-2198 + - Add registry setting `euphorie.notifications__allow_user_settings` to allow users to change their notification settings. The default is set to `True` to allow users to do changes on their own. This can be prevented if internal policies require so by changing this setting to `False`. @@ -17,10 +20,12 @@ Changelog - Do not do linkintegrity checks when removing contents (Fix regression introduced in https://github.com/euphorie/Euphorie/pull/692) [ale-rt] + - Delete guest account after sessions have been transferred Ref: scrum-2155 + 16.1.2 (2024-03-20) ------------------- diff --git a/src/euphorie/content/browser/configure.zcml b/src/euphorie/content/browser/configure.zcml index a9c6bd9f2..9d414e250 100644 --- a/src/euphorie/content/browser/configure.zcml +++ b/src/euphorie/content/browser/configure.zcml @@ -476,6 +476,14 @@ layer="plonetheme.nuplone.skin.interfaces.NuPloneSkin" /> + + idx else "") for sub in solutions) + + def __call__(self): + buffer = StringIO() + writer = csv.writer(buffer) + + self.write_data(self.solutions_by_risk(), writer) + + csv_data = buffer.getvalue() + buffer.close() + response = self.request.RESPONSE + today_iso = datetime.date.today().isoformat() + response.setHeader( + "Content-Disposition", + ( + f"attachment; filename=similar_titles_details_{self.context.Title()}_" + f"{today_iso}.csv" + ), + ) + response.setHeader("Content-Type", "text/csv;charset=utf-8") + return csv_data diff --git a/src/euphorie/content/browser/templates/similar_titles_details.pt b/src/euphorie/content/browser/templates/similar_titles_details.pt index 4eb786d32..cb5c00377 100644 --- a/src/euphorie/content/browser/templates/similar_titles_details.pt +++ b/src/euphorie/content/browser/templates/similar_titles_details.pt @@ -43,6 +43,22 @@ solutions_by_risk view/solutions_by_risk; " > +
+

+ + +

+

${risk/Title}