Prerendering time zone aware layouts for rich web apps

US9602574B1 · US · B1

Patent metadata
FieldValue
Publication numberUS-9602574-B1
Application numberUS-201414191091-A
CountryUS
Kind codeB1
Filing dateFeb 26, 2014
Priority dateFeb 26, 2014
Publication dateMar 21, 2017
Grant dateMar 21, 2017

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Provided are methods and systems for rendering and displaying an initial layout of a web application (e.g., calendar application), where the layout includes data specific to a time zone determined to be applicable to a user. Server-side rendering of the initial layout is utilized without compromising the correctness of the initial layout if the server-side heuristics fail. The methods and systems are designed such that it is not necessary to “know,” “fingerprint,” or “reverse engineer” the browser's local time zone in order to validate the time data to be displayed with the user's time-bound information (e.g., calendar data) in the web application. Furthermore, meaningful time data can be displayed to the user without the full web application having to execute in the browser.

First claim

Opening claim text (preview).

The invention claimed is: 1. A computer-implemented method comprising: receiving, at a server, a request for a web application from a client, wherein the web application displays time-bound information; estimating, at the server, a time zone applicable to the client based on weighted data associated with a user of the client; rendering, at the server, initial layout data in HTML for the web application including the time-bound information based on the estimated time zone; and sending the rendered layout data to the client, wherein the client determines whether or not the estimated time zone matches an actual time zone applicable to the client and based on determining that the estimated time zone matches an actual time zone applicable to the client uses the rendered layout data to display an initial view of the web application to the user, wherein the initial view of the web application includes time zone-dependent data specific to the user. 2. The method of claim 1 , further comprising: determining a time period covered by time-bound information of the user included in the rendered layout; identifying time zone offset changes applicable to the time period covered by the time-bound information in the estimated time zone; and sending information about the identified time zone offsets with the rendered layout data to the client. 3. The method of claim 1 , further comprising: responsive to receiving the request for the web application, determining that additional data is needed to estimate a time zone applicable to the client; and sending to the client rendered layout data containing a limited view of the web application. 4. The method of claim 3 , wherein the limited view of the web application includes data other than time zone-dependent data specific to the user. 5. The method of claim 3 , further comprising: receiving at the server an additional request for the web application from the client, wherein the additional request includes an indication of a time zone applicable to the user; rendering layout data for the web application based on the indicated time zone applicable to the user; and sending the rendered layout data to the client. 6. The method of claim 5 , wherein the indication of a time zone applicable to the user is based on scripts executed at the client. 7. The method of claim 1 , further comprising: receiving, at the server, with the request for the web application, data associated with the user; and assigning weights to the received data associated with the user based on a measure of utility of the data in estimating a time zone applicable to the client. 8. The method of claim 1 , wherein estimating the time zone applicable to the client includes: generating candidate time zones applicable to the client based on the weighted data associated with the user; and selecting a candidate time zone with the highest probability based on the weighted data as the estimated time zone applicable to the client. 9. The method of claim 1 , wherein the data associated with the user includes an IP address of a device associated with the request for the web application received from the client. 10. The method of claim 1 , wherein the data associated with the user includes at least one of the following: an IP address of a device associated with the request for the web application received from the client, one or more cookies containing data indicating a time zone preference for the user, one or more cookies containing data about previous requests for the web application received from the user, and data about language and/or locale preferences of the user indicated by HTTP headers of the request received from the client. 11. The method of claim 1 , wherein the web application is a calendar application. 12. A system comprising: one or more processors; and a non-transitory computer-readable medium coupled to said one or more processors having instructions stored thereon that, when executed by said one or more processors, cause said one or more processors to perform operations comprising: receiving, at a server, a request for a web application from a client, wherein the web application displays time-bound information; estimating, at the server, a time zone applicable to the client based on weighted data associated with a user of the client; rendering, at the server, initial layout data in HTML for the web application including the time-bound information based on the estimated time zone; and sending the rendered layout data to the client, wherein the client determines whether or not the estimated time zone matches an actual time zone applicable to the client and based on determining that the estimated time zone matches an actual time zone applicable to the client uses the rendered layout data to display an initial view of the web application to the user, wherein the initial view of the web application includes time zone-dependent data specific to the user. 13. The system of claim 12 , wherein the one or more processors are caused to perform further operations comprising: determining a time period covered by time-bound information of the user included in the rendered layout; identifying time zone offset changes applicable to the time period covered by the time-bound information in the estimated time zone; and sending information about the identified time zone offsets with the rendered layout data to the client. 14. The system of claim 12 , wherein the one or more processors are caused to perform further operations comprising: responsive to receiving the request for the web application, determining that additional data is needed to estimate a time zone applicable to the client; and sending to the client rendered layout data containing a limited view of the web application, wherein the limited view of the web application includes data other than time zone-dependent data specific to the user. 15. The system of claim 14 , wherein the one or more processors are caused to perform further operations comprising: receiving an additional request for the web application from the client, wherein the additional request includes an indication of a time zone applicable to the user; rendering layout data for the web application based on the indicated time zone applicable to the user; and sending the rendered layout data to the client. 16. The system of claim 12 , wherein the one or more processors are caused to perform further operations comprising: receiving, with the request for the web application, data associated with the user; and assigning weights to the received data associated with the user based on a measure of utility of the data in estimating a time zone applicable to the client. 17. The system of claim 12 , wherein the one or more processors are caused to perform further operations comprising: generating candidate time zones applicable to the client based on the weighted data associated with the user; and selecting a candidate time zone with the highest probability based on the weighted data as the estimated time zone applicable to the client. 18. The system of claim 12 , wherein the data associated with the user includes at least one of the following: an IP address of a device associated with the request for the web application received from the client, one or more cookies containing data indicating a time zone preference for the user, one or more cookies containing data about previous requests for the web application received from the user, and data about language and/or locale preferences of the user indicated by HTT

Assignees

Inventors

Classifications

  • H04L67/02Primary

    based on web technology, e.g. hypertext transfer protocol [HTTP] · CPC title

  • Time management, e.g. calendars, reminders, meetings or time accounting · CPC title

  • Execution arrangements for user interfaces · CPC title

  • of access to content, e.g. by caching · CPC title

  • specially adapted for the location of the user terminal · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9602574B1 cover?
Provided are methods and systems for rendering and displaying an initial layout of a web application (e.g., calendar application), where the layout includes data specific to a time zone determined to be applicable to a user. Server-side rendering of the initial layout is utilized without compromising the correctness of the initial layout if the server-side heuristics fail. The methods and syste…
Who is the assignee on this patent?
Google Inc
What technology area does this patent fall under?
Primary CPC classification H04L67/02. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Mar 21 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).