Changeset 605

Show
Ignore:
Timestamp:
01/13/07 21:31:50 (2 years ago)
Author:
alo
Message:

--

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • cherokee-admin/cherokee-admin.py

    r604 r605  
    2020from page_advanced import PageAdvanced 
    2121from page_set import PageSet, PageApply 
    22 from page_unknown import PageUnknown 
     22from page_error import PageError 
    2323 
    2424 
     
    3636EXIT_MODIFIED         = 100 
    3737 
    38 # Global error flag 
    39 
     38# Globals 
     39
     40theme        = None 
     41config       = None 
     42server       = None 
    4043system_error = None 
    4144 
     
    6366            return system_error 
    6467 
    65  
    66 # Globals 
    67 
    68 theme  = Theme() 
    69  
    70 check_configuration_file (DEFAULT_CONFIG_FILE) 
    71  
    72 if not system_error: 
    73     config = cherokeeconf.Config(DEFAULT_CONFIG_FILE) 
    74     server = cherokeeconf.Server(config) 
     68    if not os.access (fullpath, os.R_OK): 
     69            system_error = "Read access to " + fullpath + " is needed" 
     70            return system_error 
     71         
     72    if not os.access (fullpath, os.W_OK): 
     73            system_error = "Write access to " + fullpath + " is needed" 
     74            return system_error 
     75 
     76 
     77def instance_globals(): 
     78    global theme 
     79    global config 
     80    global server 
     81    global system_error 
     82     
     83    system_error = None 
     84 
     85    if not theme: 
     86        theme = Theme() 
     87 
     88    error = check_configuration_file (DEFAULT_CONFIG_FILE) 
     89    if error: return 
     90 
     91    if not config: 
     92        config = cherokeeconf.Config(DEFAULT_CONFIG_FILE) 
     93 
     94    if not server: 
     95        server = cherokeeconf.Server(config) 
    7596 
    7697 
     
    113134        self.output.write('Content-Type: text/html\r\n\r\n') 
    114135 
     136        # Ensure that the globals are in place 
     137        # 
     138        instance_globals() 
     139 
    115140        # System error 
    116141        # 
    117142        if system_error: 
    118             self.critical_error (system_error) 
     143            page = PageError (theme, 'System error', system_error) 
     144            self.output.write(page.render()) 
    119145            return 
    120146         
     
    153179        # 
    154180        else: 
    155             page = PageUnknown (server, theme, uri) 
     181            msg = "<p><b>%s</b> didn't match any known module.</p>" % (uri) 
     182            page = PageError (theme, 'Unknown module', msg) 
    156183 
    157184        self.output.write(page.render()) 
  • cherokee-admin/menu.py

    r572 r605  
    6262        html = HTML 
    6363 
    64         vsrvs = [] 
    65         for vsrv in self._srv.virtual_servers: 
    66             vsrvs.append('{ text: "'+vsrv+'", url: "/vserver/'+vsrv+'" }') 
     64        if not self._srv: 
     65            html = html.replace ("%%vservers_js%%", '') 
     66        else: 
     67            vsrvs = [] 
     68            for vsrv in self._srv.virtual_servers: 
     69                vsrvs.append('{ text: "'+vsrv+'", url: "/vserver/'+vsrv+'" }') 
    6770 
    68         vsrvs_js = reduce (lambda x,y: x+',\n'+y, vsrvs) 
    69         html = html.replace ("%%vservers_js%%", vsrvs_js) 
     71            vsrvs_js = reduce (lambda x,y: x+',\n'+y, vsrvs) 
     72            html = html.replace ("%%vservers_js%%", vsrvs_js) 
    7073 
    7174        return html