Changeset 8676


Ignore:
Timestamp:
Sep 7, 2010, 9:24:07 PM (15 years ago)
Author:
matthew von rocketstein
Message:

added unicode patch; fixing relative paths; disabling GET args

File:
1 edited

Legend:

Unmodified
Added
Removed
  • editfilesplugin/0.11/edit_file/edit_file.py

    r8510 r8676  
    66from trac.web.chrome import ITemplateProvider
    77from trac.admin.api import IAdminPanelProvider
     8from trac.util.text import to_unicode
    89
    910CUT_OFF = 10
     
    3839        index=int(index)
    3940
    40         edit_file = files[index]
     41        edit_file = files[index].strip()
    4142
    42         # check whether file exists and is writable
     43        # check whether file exists and is writable.
     44        # or, on failure, try a path somewhere relative to the location of trac.ini
    4345        if not os.access(edit_file, os.W_OK|os.R_OK):
    44             file_arg=('file' in req.args)
    45             if file_arg:
    46                 edit_file = req.args['file']
    47                 if not os.access(edit_file, os.W_OK|os.R_OK):
    48                     err = "In GET request, can't access edit_file parameter: " + str(edit_file)
     46                conf_file_dir = os.path.split(self.config.filename)[0]
     47                instance_root  = os.path.split(conf_file_dir)[0]
     48                relative_edit_file = os.path.join(instance_root.strip(),edit_file)
     49                if not os.access(relative_edit_file, os.W_OK|os.R_OK):
     50                    err = "Can't access edit_file parameter@'" + str([edit_file,relative_edit_file])+"'.  (Tried using absolute and relative paths.)"
    4951                    raise TracError(err)
    50             else:
    51                 err = "Can't access edit_file parameter: " + str(edit_file)
    52                 raise TracError(err)
     52                else:
     53                    edit_file = relative_edit_file
    5354
    54         #print '\n'*4,,cat,page,path_info
    5555        # evaluate forms
    5656        if req.method == 'POST':
     
    7878
    7979        return 'edit_file.html', {'edit_file':edit_file,
    80                                  'file_data':current}
     80                                 'file_data':to_unicode(current)}
    8181
    8282
     
    9292        """
    9393        return []
    94 
Note: See TracChangeset for help on using the changeset viewer.