I've started to study the code and play with it, and then of course, other obligations took the priority. But I'll have more time during the summer. It seems like that the extending of the web interface would be pretty easy, but the real problem is that the current notebook infrastructure doesn't suit our needs. The first change would be to enable the possibility that (sage) users have their own sage_notebook directory. This is not a big problem, and I already made a (more or less) working code for that. But in order to do that I had to change the behavior of some core classes in notebook. The tricky part is security. If I understood correctly, the code from the worksheets is executed via yet another sage instance by the use of pseudo-terminal. I wasn't able to pin-point the exact spot in the code where this is happening. It looks like this is done with the function _send() from sage class, but I could not find where is this function defined. Then there is evaluate() from cell.py, which is also a mystery for me. I think the easiest solution would be to decorate the function which executes the code from the worksheets with a function that would check the rights of the user to execute the code. The default function would do nothing, and if, for example, one wants to use sage on a server with sage users being the regular users of that server, that function would check wether the user has the rights to execute the code. I'm not sure what is the best way to do that. This should be done in such a way to be easily configurable to enable the use of sage server in various settings. Any suggestions?
Ivica On 11 lip, 04:13, "William Stein" <[EMAIL PROTECTED]> wrote: > On Wed, May 28, 2008 at 8:25 PM, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote: > > > OK. > > Source code seems reasonably readable. > > I'll start playing with the code, and see where I'll end up. > > Have you guys got anywhere? As was mentioned before, starting > small is often a very good idea. > > William > > > > > > > > > On 29 svi, 03:10, "Timothy Clemans" <[EMAIL PROTECTED]> wrote: > >> Hi, > > >> Thanks for showing your interest in working on the Notebook. I'm one > >> of the Notebook developers. > > >> I did some work on some an administrator portal over a week ago > >> however I forgot about it, and it was deleted today when I was > >> cleaning up my home directory. I had implemented an administration > >> page with a frontend to banning individual users from logging in. > > >> I don't plan on writing new code until after the work I've already > >> done on some other Notebook stuff has been merged into Sage, > >> seehttp://groups.google.com/group/sage-devel/browse_thread/thread/624262.... > >> You could get started on Notebook development by reviewing one of > >> those. E-mail Michael Abshoff at [EMAIL PROTECTED] for a > >> TRAC account so you can add and contribute to tickets. > > >> We have a tutorial on doing general development > >> athttp://sagemath.org/doc/html/prog/index.html. The Notebook source code > >> is in sage/server/notebook, > >> seehttp://www.sagemath.org/hg/sage-main/file/6a6766d05f3b/sage/server/no.... > > >> I recommend working on implementing your administration ideas as small > >> projects. For example the user settings page in the Notebook now was > >> originally just a change password page and then a more general page > >> was created out of it, seehttp://trac.sagemath.org/sage_trac/ticket/3213. > >> Then on top of that > >> there is a patch up that implements better styling for that page and > >> also a change auto-save interval control. > > >> Timothy > > >> On Wed, May 28, 2008 at 5:22 PM, [EMAIL PROTECTED] <[EMAIL PROTECTED]> > >> wrote: > > >> > Hi, > >> > I would like to incorporate Sage in a web-application which, among > >> > other things, enables remote editing and executing of programs in > >> > various programming languages and mathematical/engineering tools, > >> > written by the group of researchers from our university. > >> > Specifically, we would like to extend the capabilities of notebook so > >> > that we can add/delete users and their data programatically while the > >> > Sage web server is running. Perhaps it would be also interesting to > >> > include user management in the Setting part of the notebook web > >> > interface? > >> > I have some experience in Python, but none in Twisted framework. Could > >> > you give me some hints where to look in Sage source? Do you already > >> > have some plans in this direction? > > >> > Thanks for a great application. > > >> > Ivica Nakic > >> > Assistant Professor of Mathematics > >> > University of Zagreb > >> > Croatia > > -- > William Stein > Associate Professor of Mathematics > University of Washingtonhttp://wstein.org --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://www.sagemath.org -~----------~----~----~----~------~----~------~--~---