A portion of the disclosure of this patent document contains material which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever.
One or more implementations relate generally to data management and, more specifically, to a mechanism for facilitating dynamic and centralized management of content for multiple webpages at social networking sites.
Building webpages within social networking websites (e.g., Facebook®, etc.) is a growing trend, but the conventional techniques for management of such webpages are complex and inefficient as well as lack uniformity.
The subject matter discussed in the background section should not be assumed to be prior art merely as a result of its mention in the background section. Similarly, a problem mentioned in the background section or associated with the subject matter of the background section should not be assumed to have been previously recognized in the prior art. The subject matter in the background section merely represents different approaches.
In the following drawings like reference numbers are used to refer to like elements. Although the following figures depict various examples, one or more implementations are not limited to the examples depicted in the figures.
Methods and systems are provided for facilitating dynamic and centralized management of content for multiple webpages at social networking sites. In one embodiment and by way of example, a method includes receiving a request, at a first computing device, to generate a webpage within a social networking site, generating the webpage at the social networking site, and sharing webpage contents of one or more existing webpages at one or more social networking sites with the newly-generated webpage at the social networking site.
Embodiments are described with reference to an embodiment in which techniques for facilitating management of data are implemented in a system having an application server providing a front end for an on-demand database service capable of supporting multiple tenants, embodiments are not limited to multi-tenant databases nor deployment on application servers. Embodiments may be practiced using other networking and/or database architectures without departing from the scope of the embodiments claimed.
Next, mechanisms and methods for facilitating dynamic and centralized management of content for multiple websites will be described with reference to example embodiments.
Computing device 100 includes an operating system (OS) 106 serving as an interface between any hardware or physical resources of the computing device 100 and a user. Computing device 100 further includes one or more processors 102, memory devices 104, network devices, drivers, or the like, as well as input/output (I/O) sources 108, such as touchscreens, touch panels, touch pads, virtual or regular keyboards, virtual or regular mice, etc. It is to be noted that terms like “node”, “computing node”, “client”, “client device”, “server”, “server device”, “machine”, “host machine”, “device”, “computing device”, “computer”, “computing system”, “multi-tenant on-demand data system”, and the like, may be used interchangeably throughout this document to illustrate various environments that may implement one or more aspects. It is to be further noted that terms like “application”, “software application”, “program”, “software program”, “package”, and “software package” may be used interchangeably throughout this document to illustrate various environments that may implement one or more aspects.
In one embodiment, as will be further described with reference to
It is contemplated that any number and type of components may be added to and/or removed from centralized mechanism 110 to facilitate various embodiments including adding, removing, and/or enhancing certain features. For brevity, clarity, and ease of understanding of the centralized mechanism 110 many of the standard and/or known components, such as those of a computing device, are not shown or discussed here. It is contemplated that embodiments are not limited to any particular technology, topology, system, architecture, and/or standard and are dynamic enough to adopt and adapt to any future changes.
For example, user 222 owns an independent website 238 (such as a company website) that provides information about the company and the products and/or services it offers. Now, let us suppose, user 222 wishes to create a webpage 232 within a social networking site (e.g., Facebook) to, for example, further promote the business. In one embodiment, user 222 may access centralized content management mechanism 110, via a computing device, to generate a webpage 232 within social networking site. Authentication logic 202 authenticates the user 222 and extends authorization to access and use centralized mechanism 110 to generate the webpage 232. Once authenticated and authorized, the user 222 may provide or input the necessary information and/or request linking or mapping with the existing website 238 to generate the new webpage 232. In one embodiment, user 222 may explicitly request the linkage with website 238 and other existing webpages or set up an automatic linkage based on a predetermined criteria (e.g., periodic mapping, continuous mapping, event-based mapping (such as each time a new webpage is generated or an existing one is modified, etc.).
Upon receiving the request and the relevant information, webpage generator 214 facilitates generation of the webpage 232 at the first social network site. Once the webpage 232 is generated, synchronization logic 204 is triggered, upon request or automatically as aforementioned, to establish, via linking module 210, a link between the new webpage 232 and the existing website 238. Once the linkage or mapping is established, some or all of contents between the webpage 232 and the website 238 may be shared and synchronized via sharing module 212. Whether some or all of the contents is shared or synchronized may also be determined and set by the user 222. For example, all contents may be shared and synchronized so both the webpage 232 and the website 238 may provide the same content to the end-users 242.
Now, let us suppose, the user 222 wishes to generate additional webpages 234, 236 at other social network sites (e.g., Google+ and LinkedIn), the user 222 and centralized mechanism 110 may follow the similar processes as described with regard to generating the first webpage 232. For example and in one embodiment, once the new webpages 234, 236 are generated, contents of any two or more of the webpages 234-236 may be shared and/or synchronized and similarly, contents of website 238 may be shared and/or synchronized with one or more of the webpages 234-236.
Facebook user 1 352 may have a fan page 354 associated with tab 1 356 and tab 2 358 mapped with page application 1 372 and page application 2 374, respectively, at runtime server 370. The page applications 372 and 374 are further mapped to page 1 384, 394 and page 2 386, 396, respectively, of user 1 site 382 and user 2 site 392 at centralized mechanism 110. Facebook user 2 362 may have a fan page 364 associated with tab 1 366 and tab 2 368 mapped with page application 1 372 and page application 2 374, respectively, at runtime server 370. The page applications 372 and 374 are further mapped to page 1 384, 394 and page 2 386, 396, respectively, of user 1 site 382 and user 2 site 392 at centralized mechanism 110. This way, when a user accesses a page 354, 364 at Facebook, the centralized and synchronized information is provided via pages 384-386, 394-396 at user sites 382, 392 at centralized mechanism 110 through page applications 372, 374 at runtime server 370.
Method 400 begins at block 405 receiving a request at a first computing device from a user (owner), using a second computing device, to generate a webpage within a social networking site. At block 410, authentication and authorization of the user, the second computing device, the social networking site, etc., is performed. At block 415, a webpage is generated following the authentication/authorization process and in response to the request. At block 420, in one embodiment, the newly-generated webpage is linked or mapped to one or more existing webpages associated with the user at this or other social networking sites and/or further linked or mapped to one or more independent websites associated with or owned by the user. The aforementioned mapping or linking may be performed based on the user's request as set forth in the user request or as predetermined and provided through a user profile or specification.
At block 425, in one embodiment, once the liking or mapping is established, any or all contents of the newly-generated webpage and the existing webpages and/or websites is shared and synchronized. The shared/synchronized content for all webpages and websites associated with the user is then centrally managed. At block 430, the centralized content is maintained via the centralized content management mechanism 110 of
The exemplary computer system 500 includes a processor 502, a main memory 504 (e.g., read-only memory (ROM), flash memory, dynamic random access memory (DRAM) such as synchronous DRAM (SDRAM) or Rambus DRAM (RDRAM), etc., static memory such as flash memory, static random access memory (SRAM), volatile but high-data rate RAM, etc.), and a secondary memory 518 (e.g., a persistent storage device including hard disk drives and persistent multi-tenant data base implementations), which communicate with each other via a bus 530. Main memory 504 includes emitted execution data 524 (e.g., data emitted by a logging framework) and one or more trace preferences 523 which operate in conjunction with processing logic 526 and processor 502 to perform the methodologies discussed herein.
Processor 502 represents one or more general-purpose processing devices such as a microprocessor, central processing unit, or the like. More particularly, the processor 502 may be a complex instruction set computing (CISC) microprocessor, reduced instruction set computing (RISC) microprocessor, very long instruction word (VLIW) microprocessor, processor implementing other instruction sets, or processors implementing a combination of instruction sets. Processor 502 may also be one or more special-purpose processing devices such as an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), a digital signal processor (DSP), network processor, or the like. Processor 502 is configured to execute the processing logic 526 for performing the operations and functionality of centralized mechanism 110 as described with reference to
The computer system 500 may further include a network interface card 508. The computer system 500 also may include a user interface 510 (such as a video display unit, a liquid crystal display (LCD), or a cathode ray tube (CRT)), an alphanumeric input device 512 (e.g., a keyboard), a cursor control device 514 (e.g., a mouse), and a signal generation device 516 (e.g., an integrated speaker). The computer system 500 may further include peripheral device 536 (e.g., wireless or wired communication devices, memory devices, storage devices, audio processing devices, video processing devices, etc. The computer system 500 may further include a Hardware based API logging framework 534 capable of executing incoming requests for services and emitting execution data responsive to the fulfillment of such incoming requests.
The secondary memory 518 may include a machine-readable storage medium (or more specifically a machine-accessible storage medium) 531 on which is stored one or more sets of instructions (e.g., software 522) embodying any one or more of the methodologies or functions of centralized mechanism 110 as described with reference to
Portions of various embodiments may be provided as a computer program product, which may include a computer-readable medium having stored thereon computer program instructions, which may be used to program a computer (or other electronic devices) to perform a process according to the embodiments. The machine-readable medium may include, but is not limited to, floppy diskettes, optical disks, compact disk read-only memory (CD-ROM), and magneto-optical disks, ROM, RAM, erasable programmable read-only memory (EPROM), electrically EPROM (EEPROM), magnet or optical cards, flash memory, or other type of media/machine-readable medium suitable for storing electronic instructions.
The techniques shown in the figures can be implemented using code and data stored and executed on one or more electronic devices (e.g., an end station, a network element). Such electronic devices store and communicate (internally and/or with other electronic devices over a network) code and data using computer-readable media, such as non-transitory computer-readable storage media (e.g., magnetic disks; optical disks; random access memory; read only memory; flash memory devices; phase-change memory) and transitory computer-readable transmission media (e.g., electrical, optical, acoustical or other form of propagated signals—such as carrier waves, infrared signals, digital signals). In addition, such electronic devices typically include a set of one or more processors coupled to one or more other components, such as one or more storage devices (non-transitory machine-readable storage media), user input/output devices (e.g., a keyboard, a touchscreen, and/or a display), and network connections. The coupling of the set of processors and other components is typically through one or more busses and bridges (also termed as bus controllers). Thus, the storage device of a given electronic device typically stores code and/or data for execution on the set of one or more processors of that electronic device. Of course, one or more parts of an embodiment may be implemented using different combinations of software, firmware, and/or hardware.
Any of the above embodiments may be used alone or together with one another in any combination. Embodiments encompassed within this specification may also include embodiments that are only partially mentioned or alluded to or are not mentioned or alluded to at all in this brief summary or in the abstract. Although various embodiments may have been motivated by various deficiencies with the prior art, which may be discussed or alluded to in one or more places in the specification, the embodiments do not necessarily address any of these deficiencies. In other words, different embodiments may address different deficiencies that may be discussed in the specification. Some embodiments may only partially address some deficiencies or just one deficiency that may be discussed in the specification, and some embodiments may not address any of these deficiencies.
This application claims the benefit of U.S. Provisional Patent Application No. 61/546,783, entitled “Systems and Methods for Creating a Website on a Social Network” by Shelby Hubick, filed Oct. 13, 2011 (Attorney Docket No. 8956P092Z), the entire contents of which are incorporated herein by reference and priority is claimed thereof.
Number | Date | Country | |
---|---|---|---|
61546783 | Oct 2011 | US |