I've applied your patch and it works, at least for i2p...
thanks
regards
woiski

2010/11/15 Nico de Groot <ndegr...@chello.nl>

> I think the offending line is in design.html, see the ticket below.
> (The 'real' line number is 207, because the python code is generated
> by {{=...}}.)
>
> 289.    if '/'.join(file_path).startswith('/'.join(path)):
>
>
> At that point
>
>   path:  ['js', 'ckeditor', 'plugins', 'table']
> and
>   file_path: ['js', 'ckeditor', 'plugins', 'tableresize']
>
> the joins in de code result in
>
>  js/ckeditor/plugins/tableresize
> and
>  js/ckeditor/plugins/table
>
>
> I think line 289 intents to check if the  'path' is a 'path-prefix'
> of  'file_path'. In this case the check resolves to True, but this
> incorrect, because it is NOT a path-prefix causing line 290 to fail.
>
> line 289 should probably be something like:
>
>    if ('/'.join(file_path)+'/').startswith('/'.join(path)+'/') or
> path==[]:
>
> This seems to resolve at least my problem. Please test and confirm.
>
> Nico
> -------------------------------------
> Excerpt from my error-ticket:
>
> <type 'exceptions.IndexError'>(list index out of range)
>
> File C:\web2py\applications\admin\views\default\design.html in
> <module> at line 290
> code
>
> Code listing
> 282. response.write('\n  <ul>\n    ', escape=False)
> 283. path=[]
> 284. for file in statics+['']:
> 285.    items=file.split('/')
> 286.    file_path=items[:-1]
> 287.    filename=items[-1]
> 288.    while path!=file_path:
> 289.    if '/'.join(file_path).startswith('/'.join(path)):
> 290.       path.append(file_path[len(path)])
>
> ------------------------------------------------------------
> On 15 nov, 20:10, Branko Vukelic <bg.bra...@gmail.com> wrote:
> > On Mon, Nov 15, 2010 at 8:59 PM, mdipierro <mdipie...@cs.depaul.edu>
> wrote:
> > > where is the offending line in design.html?
> >
> > I think it's in this block:
> >
> > <h3 id="plugins" onclick="collapse('plugins_inner');" class="component">
> >   {{=T("Plugins")}}
> >   <span class="tooltip">{{=helpicon()}} <span>{{=T("To create a
> > plugin, name a file/folder plugin_[name]")}}</span></span>
> > </h3>
> > <div id="plugins_inner" class="component_contents">
> >   <div class="controls comptools">
> >     {{=button(PLUGINS_APP, T('download plugins'))}}
> >   </div>
> >   <div class="controls">
> >   </div>
> >   {{if plugins:}}
> >   <ul>
> >       {{for plugin in plugins:}}
> >       <li>
> >       {{=A('plugin_%s' % plugin, _class='file', _href=URL('plugin',
> > args=[app, plugin]))}}
> >       </li>
> >       {{pass}}
> >   </ul>
> >   {{else:}}
> >   <p><strong>{{=T('There are no plugins')}}</strong></p>
> >   {{pass}}
> >   <div class="controls formfield">{{=upload_plugin_form(app)}}</div>
> > </div>    <-- line 290
> >
> > --
> > Branko Vukelić
> >
> > bg.bra...@gmail.com
> > stu...@brankovukelic.com
> >
> > Check out my blog:http://www.brankovukelic.com/
> > Check out my portfolio:http://www.flickr.com/photos/foxbunny/
> > Registered Linux user #438078 (http://counter.li.org/)
> > I hang out on identi.ca:http://identi.ca/foxbunny
> >
> > Gimp Brushmakers Guildhttp://bit.ly/gbg-group
>

Reply via email to