Commit Graph

2837 Commits

Author SHA1 Message Date
Thomas Kluyver
e1cbaf3d3c Fix spelling 2014-11-03 10:18:28 -08:00
Thomas Kluyver
f8ec8d4abe Various minor fixes from review 2014-11-03 10:18:28 -08:00
Thomas Kluyver
ea314a2a86 Rename callback parameters to success/error 2014-11-03 10:18:28 -08:00
Thomas Kluyver
060dd1305c Miscellaneous JS fixes 2014-11-03 10:18:28 -08:00
Thomas Kluyver
c1c591336e Some more event cleanup 2014-11-03 10:18:28 -08:00
Thomas Kluyver
cf828ccf4e Cut out some superfluous events 2014-11-03 10:18:28 -08:00
Thomas Kluyver
c9bd254735 Make contents JS API consistent 2014-11-03 10:18:28 -08:00
Thomas Kluyver
29d88a91a6 Standardise JS checkpointing API, use it for notebooks 2014-11-03 10:18:27 -08:00
Thomas Kluyver
14106cbd66 Move contents API module into services 2014-11-03 10:18:27 -08:00
Thomas Kluyver
a10dea4cd5 Add Contents.api_url convenience function 2014-11-03 10:18:27 -08:00
Thomas Kluyver
9538726b16 Don't do UI stuff in contents API module 2014-11-03 10:18:27 -08:00
Thomas Kluyver
478648bde5 Page URL is /notebooks/..., not contents 2014-11-03 10:18:27 -08:00
Thomas Kluyver
c661c85abd Add missing semicolon 2014-11-03 10:18:27 -08:00
Jeff Hemmelgarn
47a88f0e1d Remove version 2014-11-03 10:18:27 -08:00
Jeff Hemmelgarn
dab99c599f Remove unnecessary backwards compatibility code 2014-11-03 10:18:27 -08:00
Jeff Hemmelgarn
53463898eb Move contentmanager to contents 2014-11-03 10:18:27 -08:00
jhemmelg
5109be2d28 ContentManager function signatures updated 2014-11-03 10:18:04 -08:00
jhemmelg
496fa1901f Initial interface for javascript contentmanagers
contentmanager.js is going to be a js proxy for the current
filenbmanager.py.  This will allow a contentmanager for Google Drive to
be created.
2014-11-03 10:18:04 -08:00
Jeff Hemmelgarn
09e0ff93d8 Fix a few problems with cherry-picked commits
api/notebooks => api/contents
add type to JSON model
fix a few things in notebooklist.js
2014-11-03 10:18:04 -08:00
KesterTong
3994d4d56a Adds configuration options to use Google Drive content manager
Adds the key contentmanager_js_source to webapp_settings that allows for specifying the content manager JavaScript source file.  Also adds a NotebookManager subclass, ClientSideNotebookManager, which does minimal logic.  This class is used when the JavaScript content manager doesn't use the Python notebook manager, but rather implements that logic client side, as is the case for the Google Drive based content manager.

A sample command line that uses the Google Drive content manager, and the ClientSideNotebookManager, is

ipython notebook --NotebookApp.webapp_settings="{'contentmanager_js_source': 'base/js/drive_contentmanager'}" --NotebookApp.notebook_manager_class="IPython.html.services.notebooks.clientsidenbmanager.ClientSideNotebookManager"
2014-11-03 10:18:04 -08:00
KesterTong
952ac7d0d8 Moves load_notebook to ContentManager and adds new_notebook to Google Drive version 2014-11-03 10:17:12 -08:00
KesterTong
e3ef5d3b70 Moves list_notebooks to ContentManager 2014-11-03 10:17:12 -08:00
KesterTong
dfcf14f26c Uses events for ContentManager.save_notebook
Modifies ContentManager.save_notebook() to use events, so that the Notebook instance can listen for success or failure events.  Also moves some logic out of save_notebook()
2014-11-03 10:17:12 -08:00
KesterTong
04fc61285f Use events for rename_notebook
Triggers events on ContentManager.rename_notebook success and failure.  Also moves some logic out of this method.
2014-11-03 10:17:12 -08:00
KesterTong
75d7e69fc8 Use $.proxy instead of that 2014-11-03 10:17:12 -08:00
KesterTong
9881d17bb1 Remove unused event
This event never seems to get used.
2014-11-03 10:17:12 -08:00
KesterTong
61a911fc0c Fix constructor comments
Add content_manager as a dictionary key to the options param passed in to the NotebookList and Notebook constructors.
2014-11-03 10:17:12 -08:00
KesterTong
0aada3ac5d Remove deleted notebook from notebook list
Uses events to notify the NotebookList when the content manager deletes a notebook, and remove the deleted notebook in response to such an event.
2014-11-03 10:17:12 -08:00
KesterTong
077ba397c1 Removes unnecessary parameter from ContentManager.delete_notebook 2014-11-03 10:17:12 -08:00
Jeff Hemmelgarn
99323b1173 Move saving to contentmanager
Make notebook.save_notebook call contentmanager.save_notebook.
2014-11-03 10:17:12 -08:00
Jeff Hemmelgarn
5b5e194082 Move notebook.rename to contentmanager
Make notebook.rename call contentmanager.rename
2014-11-03 10:17:12 -08:00
Jeff Hemmelgarn
7043aa1b9e switch notebook.delete to use contentmanager
Make notebook.delete call contentmanager.delete_notebook
2014-11-03 10:17:12 -08:00
Jeff Hemmelgarn
728c6f005f Move deleting a notebook to contentmanager.js
Move code to handle deleting a notebook from notebooklist to
contentmanager.
2014-11-03 10:17:12 -08:00
KesterTong
993833d018 Replace other methods with ContentManager.new_notebook
Replaces Notebook.new_notebook and NotebookList.new_notebook with ContentManager.new_notebook
2014-11-03 10:17:11 -08:00
KesterTong
d17ca85f5b Adds dialog on new_notebook failure
This logic doesn't really belong in ContentManager.  It would be better to trigger an event, which is handled somewhere else.  But there's no obvious place to put this event, so creating the error dialog inside the new_notebook method is ok for now.
2014-11-03 10:17:11 -08:00
KesterTong
5717a3eb10 Make ContentManager stateless
Don't store notebook_path in ContentManager, because this sort of state (in addition to notebook_name) can change, and keeping track of this logic doesn't seem to be a part of the file management system.  Instead, this logic can be left to the Notebook instance (and possible other places that manage it).  This makes refactoring easier, and avoids having to replicate this logic in every implementation of ContentManager.
2014-11-03 10:17:11 -08:00
KesterTong
99f2647edd Use IPython style constructor 2014-11-03 10:17:11 -08:00
KesterTong
21a5b5a965 Style and bug fixes 2014-11-03 10:17:11 -08:00
jhemmelg
112a74c566 ContentManager function signatures updated 2014-11-03 10:17:11 -08:00
jhemmelg
d5a84bb8a4 Initial interface for javascript contentmanagers
contentmanager.js is going to be a js proxy for the current
filenbmanager.py.  This will allow a contentmanager for Google Drive to
be created.
2014-11-03 10:17:11 -08:00
Thomas Kluyver
a16a3d0270 Merge pull request #6045 from minrk/nbformat4
nbformat v4
2014-11-03 09:58:33 -08:00
Min RK
196b91e73b Merge pull request #6828 from takluyver/terminal-list
Add terminals tab to the dashboard
2014-11-02 10:46:31 -08:00
Min RK
525f6a7561 fix backward f, nb args for nbformat.write 2014-11-01 16:41:13 -07:00
MinRK
7cf53c998c restore ability to sign v3 notebooks 2014-11-01 16:41:13 -07:00
MinRK
53ef8e1e1e remove unused OuptutArea.rename_keys 2014-11-01 16:41:12 -07:00
MinRK
af735018f3 don't use nbformat.current in IPython.html
use top-level nbformat.read/write, v4 directly for compose
2014-11-01 16:41:11 -07:00
MinRK
ae0b46aa3f address review from takluyver
- various typos
- discuss multi-line strings in nbformat doc
- testing cleanup
- py3compat simplification
- don't use setdefault when composing notebook nodes
- mime-type fix in svg2pdf
2014-11-01 16:41:09 -07:00
MinRK
12f94ae2a2 use from_dict for dict->notebook
not confusing to_notebook_json
2014-11-01 16:41:09 -07:00
MinRK
d979f4bedd better regex replacement for MarkdownCell.set_heading_level
(c/o Matthias)
2014-11-01 16:41:07 -07:00
MinRK
dd95b1ef5f remove heading cells in v4 2014-11-01 16:41:07 -07:00