[commits] r102 - in selinux-site/trunk: . selinux.ircmessenger selinux.ircmessenger/selinux selinux.ircmessenger/selinux/ircmessenger

tim at mail.se.linux.org tim at mail.se.linux.org
Sat Aug 18 01:11:36 CEST 2007


Author: tim
Date: 2007-08-18 01:11:35 +0200 (Sat, 18 Aug 2007)
New Revision: 102

Added:
   selinux-site/trunk/selinux.ircmessenger/
   selinux-site/trunk/selinux.ircmessenger/README.txt
   selinux-site/trunk/selinux.ircmessenger/selinux/
   selinux-site/trunk/selinux.ircmessenger/selinux/__init__.py
   selinux-site/trunk/selinux.ircmessenger/selinux/ircmessenger/
   selinux-site/trunk/selinux.ircmessenger/selinux/ircmessenger/__init__.py
   selinux-site/trunk/selinux.ircmessenger/selinux/ircmessenger/configure.zcml
   selinux-site/trunk/selinux.ircmessenger/selinux/ircmessenger/notifications.py
   selinux-site/trunk/selinux.ircmessenger/setup.py
Log:
Refactored out the irc code from selinux.theme to its own package.


Added: selinux-site/trunk/selinux.ircmessenger/README.txt
===================================================================
--- selinux-site/trunk/selinux.ircmessenger/README.txt	2007-08-17 22:55:36 UTC (rev 101)
+++ selinux-site/trunk/selinux.ircmessenger/README.txt	2007-08-17 23:11:35 UTC (rev 102)
@@ -0,0 +1,3 @@
+This package provides a web <-> irc gateway. Using events the website
+can get updates to the IRC. Also, potentially stuff can be added to
+the website by issueing commands to an IRC bot.

Added: selinux-site/trunk/selinux.ircmessenger/selinux/__init__.py
===================================================================
--- selinux-site/trunk/selinux.ircmessenger/selinux/__init__.py	2007-08-17 22:55:36 UTC (rev 101)
+++ selinux-site/trunk/selinux.ircmessenger/selinux/__init__.py	2007-08-17 23:11:35 UTC (rev 102)
@@ -0,0 +1,5 @@
+try:
+    __import__('pkg_resources').declare_namespace(__name__)
+except ImportError:
+    from pkgutil import extend_path
+    __path__ = extend_path(__path__, __name__)

Added: selinux-site/trunk/selinux.ircmessenger/selinux/ircmessenger/__init__.py
===================================================================

Added: selinux-site/trunk/selinux.ircmessenger/selinux/ircmessenger/configure.zcml
===================================================================
--- selinux-site/trunk/selinux.ircmessenger/selinux/ircmessenger/configure.zcml	2007-08-17 22:55:36 UTC (rev 101)
+++ selinux-site/trunk/selinux.ircmessenger/selinux/ircmessenger/configure.zcml	2007-08-17 23:11:35 UTC (rev 102)
@@ -0,0 +1,16 @@
+<configure
+    xmlns="http://namespaces.zope.org/zope">
+
+  <subscriber
+      for="Products.CMFCore.interfaces.IContentish
+           zope.app.container.interfaces.IObjectAddedEvent"
+      handler=".notifications.irc_object_added"
+      />
+
+  <subscriber
+      for="Products.CMFCore.interfaces.IContentish
+           Products.CMFCore.interfaces.IActionSucceededEvent"
+      handler=".notifications.irc_object_published"
+      />
+
+</configure>

Added: selinux-site/trunk/selinux.ircmessenger/selinux/ircmessenger/notifications.py
===================================================================
--- selinux-site/trunk/selinux.ircmessenger/selinux/ircmessenger/notifications.py	2007-08-17 22:55:36 UTC (rev 101)
+++ selinux-site/trunk/selinux.ircmessenger/selinux/ircmessenger/notifications.py	2007-08-17 23:11:35 UTC (rev 102)
@@ -0,0 +1,23 @@
+from xmlrpclib import Server
+from Products.CMFCore.utils import getToolByName
+from zope.i18n import translate
+from Products.CMFPlone.i18nl10n import utranslate
+
+def irc_object_added(obj, event):
+    workflow = getToolByName(obj, 'portal_workflow')
+    state = workflow.getInfoFor(obj, 'review_state', None)
+
+    # when an object is created it's first added to a temporary folder
+    # that shouldn't trigger irc notification
+    if state == 'published' and obj.aq_parent.portal_type != 'TempFolder':
+        server = Server('http://localhost:7080')
+        obj_type = utranslate('plone', obj.portal_type,
+                         target_language='sv', context=obj)
+        msg = "%s (%s), %s" % (obj.Title(), obj_type, obj.absolute_url())
+        try:
+            server.say('webb', msg)
+        except:
+            pass
+
+def irc_object_published(obj, event):
+    irc_object_added(obj, event)

Added: selinux-site/trunk/selinux.ircmessenger/setup.py
===================================================================
--- selinux-site/trunk/selinux.ircmessenger/setup.py	2007-08-17 22:55:36 UTC (rev 101)
+++ selinux-site/trunk/selinux.ircmessenger/setup.py	2007-08-17 23:11:35 UTC (rev 102)
@@ -0,0 +1,35 @@
+from setuptools import setup, find_packages
+import sys, os
+
+version = '0.1'
+
+setup(name='selinux.ircmessenger',
+      version=version,
+      description="SeLinux Web to IRC gateway and back",
+      long_description="""\
+""",
+      # Get more strings from http://www.python.org/pypi?%3Aaction=list_classifiers
+      classifiers=[
+        "Framework :: Plone",
+        "Framework :: Zope2",
+        "License :: OSI Approved :: GNU General Public License (GPL)",
+        "Programming Language :: Python",
+        "Topic :: Software Development :: Libraries :: Python Modules",
+        ],
+      keywords='',
+      author='Tim Terlegard',
+      author_email='tim at se.linux.org',
+      url='http://svn.se.linux.org/svn/selinux.ircmessenger',
+      license='GPL',
+      packages=find_packages(exclude=['ez_setup']),
+      namespace_packages=['selinux'],
+      include_package_data=True,
+      zip_safe=False,
+      download_url='http://code.google.com/p/plone/downloads/list',
+      install_requires=[
+        'setuptools',
+      ],
+      entry_points="""
+      # -*- Entry points: -*-
+      """,
+      )




More information about the commits mailing list