source: WAeUP_SRP/trunk/WAeUPTool.py @ 1082

Last change on this file since 1082 was 828, checked in by joachim, 18 years ago

reenabled waeup_tool,
reserve accommodation fixed

  • Property svn:keywords set to Id
File size: 2.9 KB
RevLine 
[197]1#-*- mode: python; mode: fold -*-
2# (C) Copyright 2005 The WAeUP group  <http://www.waeup.org>
3# Author: Joachim Schmitz (js@aixtraware.de)
4#
5# This program is free software; you can redistribute it and/or modify
6# it under the terms of the GNU General Public License version 2 as published
7# by the Free Software Foundation.
8#
9# This program is distributed in the hope that it will be useful,
10# but WITHOUT ANY WARRANTY; without even the implied warranty of
11# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12# GNU General Public License for more details.
13#
14# You should have received a copy of the GNU General Public License
15# along with this program; if not, write to the Free Software
16# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
17# 02111-1307, USA.
18#
19# $Id: WAeUPTool.py 828 2006-11-10 15:26:31Z joachim $
20"""The WAeUPTool.
[828]21
22$Id: WAeUPTool.py 828 2006-11-10 15:26:31Z joachim $
[197]23"""
24
25from AccessControl import ClassSecurityInfo
[828]26from Acquisition import aq_inner
27from Acquisition import aq_parent
28from Globals import DTMLFile
29from Globals import InitializeClass
30from OFS.SimpleItem import SimpleItem
[197]31
[828]32from Products.CMFCore.ActionProviderBase import ActionProviderBase
33from Products.CMFCore.permissions import View
34from Products.ZCatalog.ZCatalog import ZCatalog
35from Products.CMFCore.permissions import ModifyPortalContent
[197]36from Products.CMFCore.utils import UniqueObject
37
[828]38class WAeUPTool(UniqueObject, SimpleItem, ActionProviderBase):
[197]39    """WAeUP tool"""
40
[828]41    id = 'waeup_tool'
[197]42    meta_type = 'WAeUP Tool'
[828]43    _actions = ()
[197]44
45    security = ClassSecurityInfo()
[828]46    security.declareObjectProtected(View)
[197]47
[828]48    manage_options = ( ActionProviderBase.manage_options
49                     + SimpleItem.manage_options
50                     )
51
52##    security.declarePublic('getHallTitle')
53##    def getHallTitle(self,hall):
54##        """get the Hall Title"""
55##        res = ZCatalog.searchResults(self.portal_catalog,portal_type="AccoHall",id=hall)
56##        if res and len(res) == 1:
57##            return res[0].Title
58##        return hall
59
60    security.declarePublic('getAccommodationInfo')
61    def getAccommodationInfo(self,bed):
62        """return Accommodation Info"""
63        info = {}
64        hall,block,room,letter = bed.split('_')
65        res = ZCatalog.searchResults(self.portal_catalog,portal_type="AccoHall",id=hall)
66        if res and len(res) == 1:
67            hall_brain = res[0]
68            hall_doc = hall_brain.getObject().getContent()
69        else:
70            return info
71        info['hall_title'] = hall_brain.Title
72        info['maintenance_code'] = hall_doc.maintenance_code
73        res = ZCatalog.searchResults(self.portal_catalog,portal_type="ScratchCardBatch")
74        batch_doc = None
75        for brain in res:
76            if brain.id.startswith(info['maintenance_code']):
77                batch_doc = brain.getObject().getContent()
78                break
79        if batch_doc is None:
80            info['maintenance_fee'] = None
81        else:
82            info['maintenance_fee'] = batch_doc.cost
83        return info
84
85InitializeClass(WAeUPTool)
Note: See TracBrowser for help on using the repository browser.