X-Git-Url: https://scm.cri.ensmp.fr/git/Plinn.git/blobdiff_plain/3c4367d8e03450e9a73e61f4247145d2b6c86a33..959d888c17d1403d2eeecc19bc4b5e2c8d1debf6:/Products/Plinn/skins/custom_control/addtoFavorites.py diff --git a/Products/Plinn/skins/custom_control/addtoFavorites.py b/Products/Plinn/skins/custom_control/addtoFavorites.py new file mode 100644 index 0000000..03d5a86 --- /dev/null +++ b/Products/Plinn/skins/custom_control/addtoFavorites.py @@ -0,0 +1,23 @@ +## Script (Python) "addtoFavorites" +##title=Add item to favourites +##parameters=ajax='' + +#TODO : translate messages +#from Products.PlacelessTranslationService.MessageID import MessageIDFactory +#_ = MessageIDFactory('plinn') +_ = lambda x : lambda : x + +portal = context.portal_url.getPortalObject() +ttool = portal.portal_types +homeFolder = portal.portal_membership.getHomeFolder() + +if not hasattr(homeFolder, 'Favorites'): + ttool.constructContent( 'Huge Plinn Folder', homeFolder, 'Favorites', title=str(_('Favorites')) ) + +targetFolder = getattr( homeFolder, 'Favorites' ) +new_id='fav_' + str(int( context.ZopeTime())) +myPath=context.portal_url.getRelativeUrl(context) +targetFolder.invokeFactory( 'Favorite', id=new_id, title=context.TitleOrId(), remote_url=myPath) + +context.setStatus(True, 'Favorite added.') +context.setRedirect(context, 'object/view', ajax=ajax)