Collaborative editing in self-contained single page applications
First Claim
1. A method implemented in a server for editing content using a single page application, comprising:
- receiving a request from a workstation to edit a selected segment of a plurality of segments within a file, wherein the file is in a markup language format, and wherein the plurality of segments within the file comprises source code in at least one of Cascading Style Sheets or JavaScript;
determining if the selected segment is locked, wherein any segments that are locked are unavailable for editing;
upon determining that the selected segment is unlocked, providing access to the selected segment to the workstation, wherein the selected segment is accessed by the single page application, and wherein the single page application is a self-contained application without links to external resources;
locking the selected segment for a period of time, wherein the selected segment is unavailable for editing by any other workstations;
receiving a save request from the workstation to save changes made to the selected segment;
saving the changes made in the selected segment within the file;
receiving a preview request from the workstation to preview the changes made to the selected segment within the file prior to publishing;
responsive to receiving the preview request and prior to publishing a new version of the file comprising the selected segment, sending predefined global sub-sections of the file and the selected segment to the workstation for previewing, wherein the previewing comprises combining the predefined global sub-sections and the source code in the selected segment to create a single markup language document that is rendered and displayed by a web browser in the workstation as the selected segment is to appear after publication;
subsequent to the previewing, publishing the new version of the file comprising the selected segment, wherein the new version of the file is in the markup language format and is self-contained without links to external resources outside of the new version of the file;
responsive to the publishing, sending, to a plurality of users with access to the file, a notification message indicating that the file has been updated and the new version of the file has been published; and
unlocking the selected segment, wherein the unlocked selected segment is available for editing by any workstation.
6 Assignments
0 Petitions
Accused Products
Abstract
A server for editing content using a single page application (SPA). The server comprises a processor, a memory, and a self-contained SPA, that is configured to receive a request from a workstation to edit a selected segment within a file, wherein the file comprises a plurality of segments including the selected segment, determine if the selected segment is locked, wherein locked file segments are unavailable for editing, upon determining that the selected segment is unlocked, provide access to the selected segment to the workstation, lock the selected segment for a period of time, wherein the selected segment is unavailable for editing by any other workstations, receive a save request from the workstation to save changes made to the selected segment, save the changes made in the selected segment within the file, and unlock the selected segment, wherein the unlocked segment is available for editing by any workstation.
16 Citations
17 Claims
-
1. A method implemented in a server for editing content using a single page application, comprising:
-
receiving a request from a workstation to edit a selected segment of a plurality of segments within a file, wherein the file is in a markup language format, and wherein the plurality of segments within the file comprises source code in at least one of Cascading Style Sheets or JavaScript; determining if the selected segment is locked, wherein any segments that are locked are unavailable for editing; upon determining that the selected segment is unlocked, providing access to the selected segment to the workstation, wherein the selected segment is accessed by the single page application, and wherein the single page application is a self-contained application without links to external resources; locking the selected segment for a period of time, wherein the selected segment is unavailable for editing by any other workstations; receiving a save request from the workstation to save changes made to the selected segment; saving the changes made in the selected segment within the file; receiving a preview request from the workstation to preview the changes made to the selected segment within the file prior to publishing; responsive to receiving the preview request and prior to publishing a new version of the file comprising the selected segment, sending predefined global sub-sections of the file and the selected segment to the workstation for previewing, wherein the previewing comprises combining the predefined global sub-sections and the source code in the selected segment to create a single markup language document that is rendered and displayed by a web browser in the workstation as the selected segment is to appear after publication; subsequent to the previewing, publishing the new version of the file comprising the selected segment, wherein the new version of the file is in the markup language format and is self-contained without links to external resources outside of the new version of the file; responsive to the publishing, sending, to a plurality of users with access to the file, a notification message indicating that the file has been updated and the new version of the file has been published; and unlocking the selected segment, wherein the unlocked selected segment is available for editing by any workstation. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 15, 16, 17)
-
-
9. A server for editing content using a single page application, comprising:
-
a processor; a memory; and a single page application stored in the memory, wherein the single page application is a self-contained application without links to external resources, that when executed by the processor, is configured to; receive an edit request from a workstation to edit a selected segment of a plurality of segments within a file, wherein the file is in a markup language format, and wherein the plurality of segments within the file comprises source code in at least one of Cascading Style Sheets or JavaScript; determine if the selected segment is locked, wherein file segments that are locked are unavailable for editing; upon determining that the selected segment is unlocked, provide access to the selected segment to the workstation; lock the selected segment for a period of time, wherein the selected segment is unavailable for editing by any other workstations; receive a save request from the workstation to save changes made to the selected segment; save the changes made in the selected segment within the file; receive a preview request from the workstation to preview the changes made to the selected segment within the file prior to publishing; responsive to receiving the preview request and prior to publishing a new version of the file comprising the selected segment, send predefined global sub-sections of the file and the selected segment to the workstation for previewing, wherein the previewing comprises combining the predefined global sub-sections and the source code in the selected segment to create a single markup language document that is rendered and displayed by a web browser in the workstation as the selected segment is to appear after publication; subsequent to the previewing, publish the new version of the file comprising the selected segment, wherein the new version of the file is in the markup language format and is self-contained without links to external resources outside of the new version of the file; responsive to the publishing, send, to a plurality of users with access to the file, a notification message indicating that the file has been updated and the new version of the file has been published; and unlock the selected segment, wherein the unlocked segment is available for editing by any workstation. - View Dependent Claims (10, 11, 12, 13, 14)
-
Specification