If you say this...

> If Chuck Norris did web development, he would use web2py.

how can I say no?

Massimo

On Jan 4, 3:35 pm, "mr.freeze" <[email protected]> wrote:
> I would like to propose a patch to add a modules section to the admin
> app.  It would have create, upload, edit and delete.  It would add a
> generic set of import statements to a newly created file.
>
> Also I would like to change the admin upload behavior to use the
> filename from the upload if a 'rename' value isn't provided.  The
> patch would look something like this:
>
> Index: applications/admin/controllers/default.py
> ===================================================================
> --- applications/admin/controllers/default.py   (revision 618)
> +++ applications/admin/controllers/default.py   (working copy)
> @@ -430,10 +430,12 @@
>          if items: extend[c]=items[0][1]
>          items=regex_include.findall(data)
>          include[c]=[i[1] for i in items]
> +    modules=listdir(apath('%s/modules/' % app), '.*\.py$')
> +    modules.sort()
>      statics=listdir(apath('%s/static/' % app),'[^\.#].*')
>      statics.sort()
>      languages=listdir(apath('%s/languages/' % app), '[\w-]*\.py')
> -    return dict
> (app=app,models=models,defines=defines,controllers=controllers,functions=functions,views=views,extend=extend,include=include,statics=statics,languages=languages)
> +    return dict
> (app=app,models=models,defines=defines,controllers=controllers,functions=functions,views=views,modules=modules,extend=extend,include=include,statics=statics,languages=languages)
>
>  def create_file():
> @@ -461,6 +463,12 @@
>              if len(filename)==5: raise SyntaxError
>              text="{{extend 'layout.html'}}\n<h1>%s</h1>\n{{=BEAUTIFY
> (response._vars)}}" % \
>                   T('This is the %(filename)s template',dict
> (filename=filename))
> +        elif path[-9:]=='/modules/':
> +            if not filename[-3:]=='.py': filename+='.py'
> +            if len(filename)==3: raise SyntaxError
> +            text="from gluon.storage import Storage\nfrom gluon.html
> import *\nfrom gluon.http import *\n"
> +            text+="from gluon.validators import *\nfrom gluon.sqlhtml
> import *\nfrom gluon.contrib.markdown import WIKI\n"
> +            text+="try: from gluon.contrib.gql import SQLTable
> \nexcept ImportError: from gluon.sql import SQLTable\nimport
> traceback"
>          elif path[-8:]=='/static/':
>              text=""
>          else:
> @@ -480,7 +488,8 @@
>      """ admin controller function """
>      try:
>          path=apath(request.vars.location)
> -        filename=re.sub('[^\w\./]+','_',request.vars.filename)
> +        if request.vars.filename: filename=re.sub('[^\w\./]
> +','_',request.vars.filename)
> +        else: filename=os.path.split(request.vars.file.filename)[-1]
>          if path[-8:]=='/models/' and not filename[-3:]=='.py':
> filename+='.py'
>          if path[-13:]=='/controllers/' and not filename[-3:]=='.py':
> filename+='.py'
>          if path[-7:]=='/views/' and not filename[-5:]=='.html':
> filename+='.html'
> Index: applications/admin/views/default/design.html
> ===================================================================
> --- applications/admin/views/default/design.html        (revision 618)
> +++ applications/admin/views/default/design.html        (working copy)
> @@ -30,6 +30,7 @@
>  [ <a href="#models">models</a>
>  | <a href="#controllers">controllers</a>
>  | <a href="#views">views</a>
> +| <a href="#modules">modules</a>
>  | <a href="#languages">languages</a>
>  | <a href="#static">static</a> ]</div>
>  <br/>
> @@ -85,6 +86,22 @@
>  </ul>
>  </div>
>
> +<h2 id="modules" onclick="collapse('modules_inner');">Modules</h2>
> +<div id="modules_inner"><i>additional code for your application</i>
> +<br/><br/>
> +{{if not modules:}}
> +There are no modules
> +{{pass}}
> +<ul>
> +{{for m in modules:}}<li>{{=peekfile('modules',m)}}
> +[ {{=editfile('modules',m)}} |
> +<a href="/{{=request.application}}/default/delete/{{=app}}/modules/
> {{=m}}?sender={{=request.function}}/{{=app}}">delete</a> ]
> +</li>{{pass}}
> +<li>{{=file_create_form('%s/modules/' % app)}}</li>
> +<li>{{=file_upload_form('%s/modules/' % app)}}</li>
> +</ul>
> +</div>
> +
>  <h2 id="languages" onclick="collapse('languages_inner');">Languages</
> h2>
>  <div id="languages_inner"><i>translation strings for the application</
> i>
>  <br/><br/>
>
> If Chuck Norris did web development, he would use web2py.
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"web2py Web Framework" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/web2py?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to