def ping_directories_handler(sender, **kwargs): """Ping Directories when an gbobject is saved""" gbobject = kwargs['instance'] if gbobject.is_visible and settings.SAVE_PING_DIRECTORIES: from objectapp.ping import DirectoryPinger for directory in settings.PING_DIRECTORIES: DirectoryPinger(directory, [gbobject])
def setUp(self): params = { 'title': 'My gbobject', 'content': 'My content', 'tags': 'objectapp, test', 'slug': 'my-gbobject' } self.gbobject = Gbobject.objects.create(**params) self.pinger = DirectoryPinger('http://localhost', [self.gbobject], start_now=False)
def ping_directories(self, request, queryset, messages=True): """Ping Directories for selected systems""" for directory in settings.PING_DIRECTORIES: pinger = DirectoryPinger(directory, queryset) pinger.join() if messages: success = 0 for result in pinger.results: if not result.get('flerror', True): success += 1 else: self.message_user( request, '%s : %s' % (directory, result['message'])) if success: self.message_user( request, _('%(directory)s directory succesfully ' \ 'pinged %(success)d systems.') % {'directory': directory, 'success': success})