X-Git-Url: https://scm.cri.ensmp.fr/git/Plinn.git/blobdiff_plain/3c4367d8e03450e9a73e61f4247145d2b6c86a33..959d888c17d1403d2eeecc19bc4b5e2c8d1debf6:/skins/generic/sort_folder_contents.py diff --git a/skins/generic/sort_folder_contents.py b/skins/generic/sort_folder_contents.py deleted file mode 100644 index e789941..0000000 --- a/skins/generic/sort_folder_contents.py +++ /dev/null @@ -1,26 +0,0 @@ -##parameters=objects, sorted_field, sorted_dir - -if not objects : return [] - -mtool = context.portal_membership -wftool = context.portal_workflow - -functions = {'title' : lambda ob : ob.title_or_id().lower() , - 'date' : lambda ob : ob.modified() , - 'submitTime' : lambda ob : wftool.getInfoFor(ob, 'time'), - 'actor' : lambda ob : mtool.getMemberFullNameById(wftool.getInfoFor(ob, 'actor')), - 'Creator' : lambda ob : mtool.getMemberFullNameById(ob.Creator()), - 'review_state' : lambda ob : wftool.getInfoFor(ob, 'review_state', ''), - } - - -sort_func = functions.get(sorted_field, None) -if sort_func is None : - if hasattr(objects[0], sorted_field): - sort_func = callable(getattr(objects[0], sorted_field)) and (lambda ob : getattr(ob, sorted_field)()) or (lambda ob : getattr(ob, sorted_field)) - else : - return objects - - -objects.sort(sorted_dir == 'down' and (lambda a,b: cmp(sort_func(b), sort_func(a))) or (lambda a,b: cmp(sort_func(a), sort_func(b)))) -return objects