Example #1
0
def new_notebook(request):
    """Create a new Notebook.
    Set notebook default type, and start instance.
    """
    engine_type_id = request.GET.get("engine_type", "")
    nb = notebook_models.Notebook(owner=request.user)
    nb.save()
    engine_type = backend_models.EngineType.objects.get(id=engine_type_id)
    access_id = rpc.allocateEngine(engine_type.backend.address, engine_type.name)
    default_engine = backend_models.NotebookBackendRecord(notebook=nb, engine_type=engine_type, access_id=access_id)
    default_engine.save()
    redirect = "/notebook/%s" % nb.guid
    return HttpResponseRedirect(redirect)
Example #2
0
def new_notebook(request):
    """Create a new Notebook.
    Set notebook default type, and start instance.
    """
    engine_type_id = request.GET.get("engine_type", "")
    nb = notebook_models.Notebook(owner=request.user)
    nb.save()
    engine_type = backend_models.EngineType.objects.get(id=engine_type_id)
    access_id = rpc.allocateEngine(engine_type.backend.address,
                                   engine_type.name)
    default_engine = backend_models.NotebookBackendRecord(
        notebook=nb, engine_type=engine_type, access_id=access_id)
    default_engine.save()
    redirect = "/notebook/%s" % nb.guid
    return HttpResponseRedirect(redirect)
Example #3
0
def rpc_Notebooks_addNotebook(request, engine_guid, folder_guid, title='untitled'):
    """Add new notebook with the given title to the folder. """
    try:
        folder = Folder.objects.get(owner=request.user, guid=folder_guid)
    except Folder.DoesNotExist:
        return { 'ok': False, 'reason': 'does-not-exist' }

    notebook = Notebook(owner=request.user, folder=folder, title=title)
    notebook.save()

    ### XXX: this has to be improved
    engine = _backend.EngineType.objects.get(id=engine_guid)
    access = allocateEngine(engine.backend.address, engine.name)

    backend = _backend.NotebookBackendRecord(notebook=notebook, engine_type=engine, access_id=access)
    backend.save()
    ################################

    return { 'ok': True, 'guid': notebook.guid }