Systems and methods for incremental loading of collaboratively generated presentations
AssigneeGoogle Inc.
InventorsSteven Joseph Saviano, Igor Kopylov
Life of this patent
Estimating the term…
Abstract
Systems and methods for incrementally communicating a document to a client computer are disclosed herein. Time consistent views of the document are maintained throughout the incremental downloading through use of a cryptographically secured permissions token identifying a version of the document the user is permitted to access.
Claims23
A method of incrementally serving an online collaborative editable document having a plurality of versions, to a client computer comprising:
- receiving at a server a first request from a user at a client computer to view a first portion of an online collaboratively editable document, having a plurality of versions;
- transmitting by the server to the user the first portion of a first version of the online collaborative editable document over an electronic network in response to the first request;
- receiving at the server a second request from the user to receive a second portion of the document, wherein the second request indicates a version of the online collaborative editable document from which the user seeks the second portion of the online collaborative editable document, and provides a cryptographic value for verifying the user is authorized to receive the requested second portion of the online collaborative editable document from which the user is authorized to obtain additional portions beyond the first portion;
- determining by the server whether the user is authorized to receive the second portion from the version of the online collaborative editable document indicated by the second request;
- in response to determining that the client computer is not authorized to receive the second portion of the online collaborative editable document from the version of the online collaborative editable document indicated by the second request, outputting, by the server, an error message;
- and
- in response to determining that the user is authorized to receive the second portion of the online collaborative editable document from the version of the online collaborative editable document indicated by the second request, transmitting, by the server, the second portion of the document version indicated by the second request to the client computer;
- wherein subsequent to the server transmitting the first portion of the first version of the document to the user and prior to the server receiving the second request,
- receiving by the server edits to the first version of the document from a second user;
- preserving, by the server, an unedited version of the document for future access by the user;
- and
- storing, by the server, the edits to the first version,
- wherein the second portion of the version of the document is transmitted from the preserved, unedited version of the document, thereby serving the online collaborative editable document having the plurality of versions.
A method of incrementally loading an online collaborative editable document having a plurality of versions, comprising:
- transmitting by a user at a client computer to a server a first request requesting access to a first portion of the online collaborative edited document;
- receiving at the first client computer the first portion of a first version of an online collaboratively editable document, having a plurality of versions;
- transmitting by the user at the client computer a second request to the server requesting access to a second portion of a second version of the online collaborative editable document from which the user seeks the second portion of the online collaborative editable document, and receiving at the client computer from the server in response to the first request a cryptographic value from which the server is capable of determining at least one version of the document that the user is authorized to access, and wherein the second request includes the cryptographic value;
- in response to the second request requesting access to a version of the of the online collaborative editable document to which the user has authorization to access, receiving from the server the second portion of the second version of the document;
- and
- in response to the second request requesting access to a version of the online collaborative edited document to which the user lacks authorization to access, receiving an error message from the server;
- wherein subsequent to the server transmitting the first portion of the first version of the document to the user and prior to the server receiving the second request,
- receiving by the server edits to the first version of the document from a second user;
- preserving, by the server, an unedited version of the document for future access by the user;
- and
- storing, by the server, the edits to the first version,
- wherein the second portion of the version of the document is transmitted from the preserved, unedited version of the document, thereby serving the online collaborative editable document having the plurality of versions.
A system for incrementally communicating an online collaborative editable document to a client computer comprising:
- a processor,
- a memory storing computer executable instructions, which when executed by the processor cause the processor to:
- receive a first request from a user at a client computer to view a first portion of the online collaborative editable document, having a plurality of versions;
- transmit to the user the first portion of a first version of the online collaborative editable document over an electronic network in response to the first request;
- receive a second request from the user to receive a second portion of the document, wherein the second request indicates a version of the online collaborative editable document from which the user seeks the second portion of the online collaborative editable document, and provides a cryptographic value for verifying the user is authorized to receive the requested second portion of the online collaborative editable document from which the user is authorized to obtain additional portions beyond the first portion;
- determine whether the user is authorized to receive the second portion from the version of the online collaborative editable document indicated by the second request;
- wherein the memory stores computer executable instructions, which upon execution by the processor, cause the processor to, in response to determining that the client computer is not authorized to receive the second portion of the document from the document version indicated by the second request, output an error message;
- and
- in response to determining that the user is authorized to receive the second portion of the online collaborative editable document from the version of the online collaborative editable document indicated by the second request, transmitting the second portion of the document version indicated by the second request to the client computer;
- wherein subsequent to the server transmitting the first portion of the first version of the document to the user and prior to the server receiving the second request, receiving by the server edits to the first version of the document from a second user;
- preserving, by the processor, an unedited version of the document for future access by the user;
- and
- storing, by the processor, the edits to the first version,
- wherein the second portion of the version of the document is transmitted from the preserved, unedited version of the document, thereby serving the online collaborative editable document having the plurality of versions.
A system for incrementally loading an online collaborative editable document comprising:
- a processor;
- a memory storing computer executable instructions, which when executed by the processor cause the processor to:
- transmit to a server a first request requesting access for a user to a first portion of the online collaborative edited document;
- receive the first portion of a first version of an online collaboratively editable document, having a plurality of versions;
- transmit a second request to the server requesting access to a second portion of a second version of the online collaborative editable document for the user from which the user seeks the second portion of the online collaborative editable document, and wherein the memory stores computer executable instructions, which upon execution by the processor, cause the processor to receive from the server in response to the first request a cryptographic value from which the server is capable of determining at least one version of the document that the user is authorized to access, and wherein the second request includes the cryptographic value;
- in response to the second request requesting access to a version of the online collaborative editable document to which the user has authorization to access, receiving from the server the second portion of the second version of the document;
- and
- in response to the second request requesting access to a version of the online collaborative edited document to which the user lacks authorization to access, receiving an error message from the server;
- wherein subsequent to the server transmitting the first portion of the first version of the document to the user and prior to the server receiving the second request,
- receiving by the server edits to the first version of the document from a second user;
- preserving, by the server, an unedited version of the document for future access by the user;
- and
- storing, by the server, the edits to the first version,
- wherein the second portion of the version of the document is transmitted from the preserved, unedited version of the document, thereby serving the online collaborative editable document having the plurality of versions.
Dependencies are inferred from the claim text.