US20160180436A1 - Method and system for identifying and displaying shopping deals - Google Patents
Method and system for identifying and displaying shopping deals Download PDFInfo
- Publication number
- US20160180436A1 US20160180436A1 US15/058,495 US201615058495A US2016180436A1 US 20160180436 A1 US20160180436 A1 US 20160180436A1 US 201615058495 A US201615058495 A US 201615058495A US 2016180436 A1 US2016180436 A1 US 2016180436A1
- Authority
- US
- United States
- Prior art keywords
- additional content
- user
- web page
- deal
- virtual layer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
- 238000000034 method Methods 0.000 title claims description 19
- 230000009471 action Effects 0.000 claims description 11
- 238000001914 filtration Methods 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims 7
- 230000000007 visual effect Effects 0.000 claims 6
- 238000013459 approach Methods 0.000 abstract description 28
- 230000000694 effects Effects 0.000 abstract description 11
- 239000000047 product Substances 0.000 description 19
- 238000004891 communication Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000012552 review Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 238000013515 script Methods 0.000 description 3
- 230000004931 aggregating effect Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000004570 mortar (masonry) Substances 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 210000003813 thumb Anatomy 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 1
- 238000007596 consolidation process Methods 0.000 description 1
- 235000014510 cooky Nutrition 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 239000002360 explosive Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000000135 prohibitive effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0623—Item investigation
- G06Q30/0625—Directed, with specific intent or strategy
- G06Q30/0629—Directed, with specific intent or strategy for generating comparisons
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/33—User authentication using certificates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6227—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0207—Discounts or incentives, e.g. coupons or rebates
- G06Q30/0222—During e-commerce, i.e. online transactions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0641—Shopping interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2141—Access rights, e.g. capability lists, access control lists, access tables, access matrices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2145—Inheriting rights or properties, e.g., propagation of permissions or restrictions within a hierarchy
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2147—Locking files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
- G06F9/44526—Plug-ins; Add-ons
Definitions
- the present invention generally relates to techniques for identifying and displaying shopping deals on the World Wide Web.
- coupon codes that can be used by consumers at the merchant's e-commerce web site.
- the electronic coupon code allows the buyer to save money when making a purchase at the shopping site.
- the coupon codes are typically entered into the appropriate fields of a merchant shopping site during the check-out process. By entering the coupon code, certain discounts or offers are then processed by the merchant site.
- coupon codes There is great interest in such coupon codes by normal consumers on the internet.
- the problem is that consumers want to use these coupon codes, but they often do not know if they exist or how to find them.
- the conventional approach to identifying the existence of such coupon codes is for the consumers to navigate to a specialized coupon search site, and to perform a search at that specialized coupon search site to identify the existence of available coupon codes.
- the problem is that many internet consumers often do not know about these coupon search sites.
- even the consumers that know about these coupon search sites must take the time and effort to search these sites.
- many consumers may not know upfront what they want to buy in a given shopping session, and hence may not recognize and/or know upfront what to search for at the coupon site.
- an improved approach for implementing searching of shopping deals and coupons on the internet The user's internet activity is checked to identify deals that may be of interest to that user. In some embodiments, this check of the user's internet activity is from identifying the URL of the web page being viewed by the user or by searching the web page for information relating to possible deals.
- a virtual layer is used to provide web page components to implement the deals display to perform the searching and deal display activities. By using the virtual layer approach of embodiments of the present invention, this allows the shopping deals to be placed on and overlaid with the web page from any host web page.
- FIG. 1A illustrates an example browser window for presenting information from a shopping web site.
- FIG. 1B illustrates the example browser window of FIG. 1A in which identified shopping deals are also displayed in conjunction with the shopping web site according to an embodiment of the invention.
- FIG. 2 illustrates an example architecture for implementing searching and display of shopping deals according to an embodiment of the invention.
- FIG. 3 illustrates a flowchart of an approach for searching and display of shopping deals according to an embodiment of the invention.
- FIG. 4 illustrates a flowchart of an approach for searching for shopping deals at a server according to an embodiment of the invention.
- FIG. 5 illustrates a flowchart of an approach for using virtual layer software to perform search and display of shopping deals according to an embodiment of the invention.
- FIG. 6 provides an illustrative example of a shopping deals display according to an embodiment of the invention.
- FIG. 7 illustrates a flowchart of an approach for automatically populating a shopping web site with a coupon code according to an embodiment of the invention.
- FIG. 8 depicts a computerized system on which embodiments of the invention may be implemented.
- the user's internet activity is checked to identify deals that may be of interest to that user.
- this check of the user's internet activity is from identifying the URL of the web page being viewed by the user or by searching the web page for information relating to possible deals.
- a virtual layer is used to provide web page components to implement the deals display to perform the searching and deal display activities.
- FIG. 1A illustrates an example of a web browser 102 that has been used by a consumer to navigate to a shopping web site (illustratively presented as “www.shopping_site.com” in the URL section 110 of the browser 102 ).
- a list of products and/or prices is displayed to the user. This display of products and/or prices may be displayed in response to a search performed by user. The products and/or prices may also be displayed automatically by the user navigating to certain pages within the domain of the shopping site.
- These items of shopping information are native to the host web page and are presented to the user based upon some sort of selection criteria by the owner or operator of the shopping site.
- shopping deals may be presented to the user which relate in some way to the web page or contents of the web page being displayed to the user.
- These shopping deals may be displayed to the user even if the deal information being displayed is not native to the host web page currently being provided by the shopping site.
- FIG. 1B shows an example of a the web browser 102 where the displayed web page 112 now includes and has been overlaid with an additional display area 120 for shopping deal information.
- the deals display area 120 is in the form of a drop down menu structure having one or more deals that are displayed.
- Section 122 of deals display 120 provides detailed information for a specific deal, which in this case includes an indication of a coupon code 126 that is applicable to provide a discount to purchases at the shopping site currently being displayed in the browser window 108 .
- the deals display 120 can be shown to the user even if the host web page 112 does not natively include that information or if the web site operator or owner is not the same entity as the provider of the deals display area 120 .
- the deals display area 120 can be displayed within browser window 108 to display any suitable type of deals information, e.g., coupon information and coupon codes for products being sold through web site 112 .
- This deals display are 120 can be provided whether or not the host web site natively provides functionality to display this information.
- virtual layer software is used to allow third party content (e.g., the deals display area 120 displaying deals and coupon information) to be displayed in conjunction with the host web page from the primary shopping site.
- the advantage of this approach is that the deals display area 120 that is implemented using virtual layers can be displayed and overlaid onto the web page for any primary shopping site. This is in sharp contrast to conventional approaches that require the user to separately visit a specialized coupon web site and perform a directed search for deals/coupons that pertain to the shopping site.
- a virtual layer plug-in is installed within web browser 102 to permit third party content to be displayed onto a primary site web page.
- the virtual layer plug-in is an application running on the client device that enables virtual editing of the appearance or functionality of an existing World Wide Web page by making the modifications on a virtual layer that is superimposed onto the web page.
- the virtual layer essentially allows a foreign entity or a user to include or enhance content that is utilized or displayed onto a web page, even if the web page itself does not natively provide such functionality to allow a third party to add or enhance content on the web page.
- the virtual layer plug-in can be used to instantiate “extensions” onto the web page, including any scripts or other programs that may need to be executed on the web page to allow searching of secondary sites and display of additional search results within the browser window 108 .
- the virtual layer plug-in may be used to instantiate a javascript program to identify search terms on the primary shopping site and to send the search term for searching at a remote server to identify deals/coupons for display.
- the virtual layer plug-in may also be used to instantiate a Flash-based program to display image or video based search results from the secondary sites.
- the virtual layer extension can be configured to check section 110 of the browser 102 to identify the URL of the shopping site 112 , and provide that identified URL as a search term to a deals database at a remote server.
- the server will send any identified deal information for that URL back to the browser 102 to be displayed within deals display area 120 .
- the deals display area 120 may be implemented to display the deals/coupons in any suitable display format or display type.
- FIG. 2 shows an architecture of a system 200 for identifying and displaying shopping deals according to some embodiments of the invention.
- System 200 may include one or more users at one or more user stations 204 at client 206 that access a web browser 202 to perform internet shopping.
- the users at user station 102 correspond to any individual, organization, or other entity that uses system 200 for performing some type of shopping or buying on the internet.
- the user stations 204 could be implemented using any suitable wired or wireless platform.
- user station 204 may be implemented as desktop computer, laptop computer, wireless computing pad, cellular phone, or a web terminal.
- the user station 204 interacts with a server 216 to identify and display deals to the user within the web browser 202 .
- the server 216 is a network-accessible site that facilitates access to a database 214 containing a listing of available shopping deals pertaining to web sites accessed by a user at the user station 204 .
- a search engine 212 at the server 216 will access the database 214 to search for any shopping deals that pertain or are relevant to the user's internet activity.
- the information within the deals database 214 may be provided from any suitable source.
- the information within deals database 214 could be obtained from an external deal consolidator 220 , where the deal consolidator 220 is a specialized service or web site that identifies and tracks different shopping deals for a variety of different vendors, merchants, products, domains, and/or web sites.
- the deal consolidator 220 may maintain a deals listings database 218 to track the consolidated shopping deals. As needed or on an incremental basis, some or all of the data within the deals listing database 218 at the deals consolidator 220 may be transferred to the deals database 214 that is maintained by the server 216 .
- the operator of server 216 may also natively generate or provide the information within the deals database 214 .
- the operator of server 216 may perform his/her consolidation of shopping deals as input to the deals database 214 , rather than seeking this information from an external deals consolidator 220 .
- the operator of server 216 may obtain deals information from the deals consolidator 220 , but supplement this information with its own natively generated shopping deals data.
- the server 216 could collect user feedback about the deals and add that information to the deals database 214 in combination with data about those deals from deal consolidator 220 .
- One practical reason for the server 216 to collect this type of feedback information from users is so that the feedback can be used by the search engine 212 to filter or sort the deals data from database 214 before sending that data for display to the web browser 202 .
- FIG. 3 shows a flowchart of actions taken at the user station to display the shopping deals information to the user.
- the user performs some sort of internet-related activity that may pertain to a shopping deal.
- the user may use a web browser to navigate to a shopping site web page, where the web page includes or relates to a shopping deal that is being tracked by a deals database.
- the web page comprises a page provided by a merchant at an internet shopping site, where the web page identifies products that are being sold by the merchant.
- the web page does not need to be generated by a dedicated shopping site run by a merchant to fall within the scope of some embodiments of the invention.
- the web page within the scope of embodiments of the invention can simply relate to any web page that corresponds to a deal being tracked by the deals database.
- a non-limiting example is a product review web site where the site only provides product reviews but which specifically does not sell any of the reviewed products.
- the user may be very interested in knowing about product deals or coupons for the products being reviewed at that site, even if the user needs to navigate to another site (e.g., a merchant-run shopping site) to actually make use of the deal or coupon.
- search criteria for deals/coupons are identified.
- the search criteria can be any criteria or search term that is used to search for shopping deals appropriate to the activity of the user.
- the search criteria are based upon the URL of the web page that is currently being viewed by the user. In this approach, the URL section of the web browser would be accessed to identify the current URL of the web page.
- the identified search criteria are based upon the contents of the page being viewed by the user.
- One approach for implementing this approach is to scrape the web page to identify key words that may be associated with specific products, merchants, deals, and/or coupons.
- Yet another possible embodiment is to allow the user to provide a search term, e.g., by typing the search term within a menu bar for the deals display.
- the search criteria are sent to the server to perform a search of the available deals.
- displayable deal information is received from the server.
- that deal information is then displayed to the user.
- the deal information is displayed in a drop down menu structure as shown in FIG. 1B , where the deals display portion is overlaid over the host web page, e.g., a host web page that does not natively display this shopping deals information.
- FIG. 4 shows a flowchart of actions taken at the server to identify shopping deals to be displayed at the user station.
- the search criteria are received at the server from the user station.
- the search criteria can be any criteria or search term that is used to search for deals appropriate to the activity of the user.
- a search is performed within the deals database using the received search criteria.
- the search can be a search for specific words or keys within the deals database.
- associations may be created for the data within the deals database, so that a search can be performed using information that is associated with a deal.
- the deals within the deals database can be associated with: (a) a deals description; (b) coupon code; (c) expiration date; (d) URL/domain/merchant; (e) deal provider; (f) deal ratings or reviews; and/or (g) deal amounts or discount values.
- the received search criteria would be matched against these associations to identify the set of deals that should be displayed to the user.
- the received search term is the current URL of the web page that is being viewed by the user.
- One or more shopping deals in the deals database may be associated with that URL or the domain associated with that URL. If so, then those deals associated with the URL from the received search criteria would be identified from the deals database.
- a typical use case scenario would be if the URL pertains to the domain of a specific merchant, and in which the associative searching would result in shopping deals corresponding to that specific merchant being identified and displayed to the user.
- the received search term may be the product name, product type, or vendor product identifier numbers. There may be shopping deals within the deals database that are associated with these types of search terms, and which would be identified using those associations.
- a use case scenario may be if the user is browsing at a shopping site for new mobile telephones, and the associative searching for a given product type (e.g., “mobile telephone”) would result in shopping deals from vendors that sell mobile telephones or mobile services.
- sorting and/or filtering of those deals may occur at 404 .
- Any suitable type of sorting can be performed at 404 , and the sorting may be performed using any suitable sorting or ordering criteria.
- the deals can be sorted by the most recent deal, the greatest discount, and/or by the feedback ratings of customers.
- the displayed deals can be sorted based upon the deals that provide the greatest profit to the operator of the deals server, e.g., by identifying deals which provide the largest commission payment or percentage from the merchant to the server operator upon a purchase by the consumer.
- Filtering of the deals can also be performed using any suitable filtering criteria, e.g., filtering by deal expiration/upload date, discount levels/amounts, and/or by minimum feedback ratings.
- the deal information is sent to the user station to be displayed in the web browser.
- the deal information may be displayed within the user's web browser on a virtual layer over the host web page, where a virtual layer plug-in is installed at the user station to implement the virtual layers.
- a virtual layer server is used to provide the initial configurations for the virtual layer plug-in that allows the third party deals to be displayed at the client.
- the virtual layer software is configured to be superimposed onto web sites within the client's web browser, where the virtual layer include “extensions” that provide additional functionality or content to the built-in capabilities of a given web page.
- the approach begins with configuration for the extensions to perform deal display at the client.
- An identification is made of the parameters and settings for the virtual layer software that need to be configured to allow for deal display on web sites.
- the different web sites may have fields and sections that need sot be scraped to identify search terms for searching of the deals. Therefore, the specific configurations that need to be implemented for the different web sites or domains are identified and built into the virtual layer software.
- the virtual layer plug-in extension is configured and/or modified as appropriate to implement the abilities discussed above.
- the virtual layer software is made available to be downloaded by users to the client computers to allow the searching and display of shopping deals. Thereafter, at 506 , the deal information is processed and displayed on a native web page using the virtual layer software.
- YLML Yontoo Layer Markup Language
- HTML which is a document markup language that is sometimes used as an application markup language simply because it is widely supported and the industry norm
- YLML is a true application markup language that is different from HTML in that it has executable nodes and does not follow the same DOM structure that HTML does.
- YLML is also different from other XML languages in that it does not use code-behind. YLML does not require a separate file with logic source code, nor does it have imbedded logic using external languages.
- YLML has native executable logic tags that eliminate the requirement for other languages to be imbedded into tags or used for code-behind.
- YOM An object model that works in conjunction with YLML is also employed, which is referred to herein as a YOM or Yontoo Object Model.
- a DOM can use only the information that exists in the document it is referencing to create a set of objects that are used to access the data within the HTML.
- the YOM on the other hand, is a single template that has an established structure that enables access to any information, data or content accessible through a computer system, including, but not restricted to the World Wide Web, databases, data stores, a client's computer or other content sources.
- the YOM's established structure enables it to access specific content that exists on the World Wide Web, a database, a data store or any other location connected to a networked computer system without requiring content beyond the scope of exactly what is needed to be loaded.
- This enables the YOM to create objects within the model using a JIT (just in time) method, as opposed to creating the entirety of the model when the incoming file is parsed as is the case with the use of a DOM.
- YOM YOM
- DOM DOM
- the extensions for performing deal display are implemented using a combination of the YLML, the YOM and the virtual layer system to additional content and functionality to an existing web page.
- the extensions may be implemented using any suitable programming and/or scripting language.
- a Flash-based approach maybe utilized to display the search results from deal search site.
- non-flash-based approaches may also be used to display the search results as well.
- the method for configuring a virtual layer includes aggregating objects corresponding to the plurality of layer extensions and corresponding to the URL using a layer markup language.
- the step of aggregating the objects is executed through a layer definition server unit adaptable to the layer markup language may also include a plurality of built-in logical tags for avoiding a need of writing scripts for enabling objects for executing events.
- the method for configuring an editable virtual layer in an internet browsing environment further includes loading a pre-rendered layer markup language module, returning the layer markup language to the virtual layer software sub-unit including a plurality of layer extensions present on the URL and having the virtual layer software sub-unit executing initialization routines in the layer markup language.
- the rendering functionality within the virtual layer plug-in recognizes that it needs to add the drop down deal results window to the host web page, which is implemented in some embodiments by using Javascript to augment the DOM/YOM of the existing host web page.
- the correct location on the host web page is identified using the markup language items (XML or YLML) that was downloaded as part of the extension data, and used to inject the Javascript/Flash player at the appropriate location on the host web page.
- the layer definition server may maintain a mapping structure to track the specific extensions to load for a given user and/or application.
- the user may be associated with different applications that use the virtual layer plug-in, and the mappings identify which specific application extensions should be injected for that specific user. When appropriate identified, the extensions would be installed onto the virtual layer of the web page for the user.
- FIG. 6 shows an example of a deals display structure 600 according to some embodiments of the invention.
- Deal display structure 600 in this embodiment is formed as a drop down menu that displays one or more shopping deals within its display area.
- the shopping deal(s) are displayed in a deal display section 610 that includes information about a displayed shopping deal.
- the displayed information may include information about the amount or type of discounts provided by the shopping deal in question.
- the displayed information also includes the display of a coupon code 620 that is used to obtain the stated shopping discount.
- a control/interface element may be provided to allow user selection to display additional shopping deals.
- button 612 is provided if the deal display section 610 is insufficient in size to display all of the shopping deals, and in which clicking of this button 612 by a user will cause additional deals to be displayed in the deal display section 610 of deals display structure 600 .
- the deals display structure 600 in some embodiments may include a search interface 602 to user users to perform directed searches of the deals database.
- Search interface 602 includes a field which allows the user to insert a search term. This search term can be sent to the server to perform the search of the deals database, with search results returned back to the client to be displayed in the deal display section 610 .
- Controls 606 and 608 provide one example of an approach that can be taken to allow users to rank or rate deals.
- 606 is a “thumbs up” button that allows the user to rate the deal with a positive score
- 608 is a “thumbs down” button that allows the user to provide a negative rating for the deal.
- These feedback ratings are sent to the server and consolidated with ratings from other users.
- One possible reason to obtain these ratings is to use the feedback ratings to rank or sort the deals that are displayed to users.
- the feedback ratings from multiple users for a particular deal can be used in a collective manner to obtain overall feedback ratings for the shopping deals.
- the feedback ratings for a particular user can be used to build a profile of the types of shopping deals that would be of interest to that particular user. While the feedback interfaces 606 and 608 of FIG. 6 are relatively simplistic in nature, it is clear that the scope of some embodiments of the invention may of encompass more complicated and granular rating and scoring interfaces that allows for detailed levels of review or scoring to be provided by users.
- Coupon code 620 may be implemented as a clickable control interface that facilitates usage of the coupon code value for user purchases. According to a first embodiment, user selection of the interface element 620 results in the coupon code value being copied to a cache or memory area, so that the user can then “paste” that value into the appropriate field of a check-out web page of a shopping site so that the coupon code can be applied to obtain the designated discount.
- user selection of the interface element 620 causes the coupon code to be auto-populated into the appropriate fields of the check-out page of the shopping site.
- FIG. 7 shows a flowchart of actions that may be taken in this type of embodiment.
- the user selects the displayed deal, e.g., by clicking upon the coupon code 620 for that shopping deal.
- the browser will navigate to the appropriate URL associated with that shopping deal.
- the interface element can be associated with a particular URL for purchasing a product or for applying the discount.
- the check-out page of the shopping site can be associated with the shopping deal, so that selection or clicking of the coupon code causes navigation to the check-out page of the web site.
- one or more values are auto-populated with appropriate values.
- a coupon or discount portion of the check-out page can be automatically populated or injected with the coupon code.
- Other values may also be filled in at this point.
- the coupon code is associated with a specific product, product identifier, or price value, then that value can be used to auto-populate the appropriate fields in the check-out page.
- auto-population of the check-put page fields One way is perform the preliminary action of researching the different fields and positions of the check-out page for merchant web sites, and to configure the virtual layer software to insert the coupon codes and/or other values into those pre-recognized fields.
- Another possible approach is to scrape the shopping site page to search for recognized field identifiers, and to insert the code values are necessary into the recognized fields.
- One approach is to detect coupon code inputs on pages after coupon selection, and to then auto-inject these codes into the appropriate fields on the shopping site page.
- Some embodiments may be implemented to display deals according to certain additional user-specific criteria.
- the displayed deal could be based on the user's current location, e.g., which is identified by the user's IP address or by a location specified by the user.
- the displayed deal can be a “daily” deal, which lists current, up-to-date deals that are recent and/or relatively “hot” or recommended by other users.
- any or all of the deals may be printed by the user, according to some embodiments of the invention.
- the user controls the printing of the deal, e.g., to create/print a physical coupon that can be used in a brick-and-mortar store that is associated with the deal.
- the printable coupon can be identified using any suitable approach, e.g., as described above with respect to URL, searching, and/or based on location.
- comparisons may be performed between different ones of the identified deals. For example, comparisons may be performed between multiple deals based on price, discount level, location, and/or best match. As before, the deals to be compared may be identified using any suitable approach, e.g., as described above with respect to URL, searching, and/or based on location.
- one or more links may be added or associated with the coupon/deal code inputs, which directs the user to a deals site in a new tab/window. This direction of the user to a new tab/window may be performed with the search already made.
- selection of the link may cause a display of the user coupon/deal codes on the page, which may serve to increase the chance of a user selecting a coupon, e.g., if the deals menu is currently minimized.
- user selection of a coupon/deal from the deals menu causes a redirection to occur through a deal provider site, e.g., a redirection through the deal provider site to the user's previous site or to another shopping site.
- This action sets a cookie indicative of the redirection.
- Such tracking of redirections by users may be useful for many purposes. For example, there may be a financial arrangement to pay the provider of the deals menu for coupons/deals usage by users, and this type of tracking is useful for identifying the quantity of such users that take advantage of the coupons/deals. If the compensation is on a per-user basis, then this tracking information can be used to determine the amount of compensation to be paid by the deal provider for the users that have been directed to the coupons/deals.
- FIG. 8 is a block diagram of an illustrative computing system 1400 suitable for implementing an embodiment of the deals display of the present invention.
- Computer system 1400 includes a bus 1406 or other communication mechanism for communicating information, which interconnects subsystems and devices, such as processor 1407 , system memory 1408 (e.g., RAM), static storage device 1409 (e.g., ROM), disk drive 1410 (e.g., magnetic or optical), communication interface 1414 (e.g., modem or Ethernet card), display 1411 (e.g., CRT or LCD), input device 1412 (e.g., keyboard), and cursor control.
- processor 1407 e.g., system memory 1408 (e.g., RAM), static storage device 1409 (e.g., ROM), disk drive 1410 (e.g., magnetic or optical), communication interface 1414 (e.g., modem or Ethernet card), display 1411 (e.g., CRT or LCD), input device 1412 (e.g., keyboard), and cursor
- computer system 1400 performs specific operations by processor 1407 executing one or more sequences of one or more instructions contained in system memory 1408 .
- Such instructions may be read into system memory 1408 from another computer readable/usable medium, such as static storage device 1409 or disk drive 1410 .
- static storage device 1409 or disk drive 1410 may be used in place of or in combination with software instructions to implement the invention.
- hard-wired circuitry may be used in place of or in combination with software instructions to implement the invention.
- embodiments of the invention are not limited to any specific combination of hardware circuitry and/or software.
- the term “logic” shall mean any combination of software or hardware that is used to implement all or part of the invention.
- Non-volatile media includes, for example, optical or magnetic disks, such as disk drive 1410 .
- Volatile media includes dynamic memory, such as system memory 1408 .
- Computer readable media includes, for example, floppy disk, flexible disk, hard disk, magnetic tape, any other magnetic medium, CD-ROM, any other optical medium, punch cards, paper tape, any other physical medium with patterns of holes, RAM, PROM, EPROM, FLASH-EPROM, any other memory chip or cartridge, or any other medium from which a computer can read.
- execution of the sequences of instructions to practice the invention is performed by a single computer system 1400 .
- two or more computer systems 1400 coupled by communication link 1415 may perform the sequence of instructions required to practice the invention in coordination with one another.
- Computer system 1400 may transmit and receive messages, data, and instructions, including program, i.e., application code, through communication link 1415 and communication interface 1414 .
- Received program code may be executed by processor 1407 as it is received, and/or stored in disk drive 1410 , or other non-volatile storage for later execution.
- Computer system 1400 may communicate through a data interface 1433 to a database 1432 on an external storage device 1431 .
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Development Economics (AREA)
- Strategic Management (AREA)
- Marketing (AREA)
- Economics (AREA)
- General Business, Economics & Management (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Game Theory and Decision Science (AREA)
- Entrepreneurship & Innovation (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Information Transfer Between Computers (AREA)
Abstract
A virtual layer is used to provide web page components to implement the deals display to perform the searching and deal display activities. By using the virtual layer approach of embodiments of the present invention, this allows the shopping deals to be placed on and overlaid with the web page from any host web page.
Description
- The present application is a continuation of U.S. application Ser. No. 13/109,879, filed on May 17, 2011, which are hereby incorporated by reference in its entirety. The present application is related to U.S. patent application Ser. No. 12/455,797, filed on Jun. 4, 2009, which are hereby incorporated by reference in its entirety.
- The present invention generally relates to techniques for identifying and displaying shopping deals on the World Wide Web.
- In recent years, there has been an explosive growth of the internet as a forum for e-commerce by consumers. Many consumers now routinely shop and buy items at various merchant web sites on the internet. In fact, there are so many different shopping sites on the internet that it has become very difficult for a typical consumer to identify the best shopping sites and deals that are available and are of interest to that consumer.
- To stimulate shopper interest, many merchants have created and distributed coupon codes that can be used by consumers at the merchant's e-commerce web site. Like normal coupons used by traditional buyers at a brick-and-mortar store, the electronic coupon code allows the buyer to save money when making a purchase at the shopping site. To use the coupon code, the coupon codes are typically entered into the appropriate fields of a merchant shopping site during the check-out process. By entering the coupon code, certain discounts or offers are then processed by the merchant site.
- There is great interest in such coupon codes by normal consumers on the internet. The problem is that consumers want to use these coupon codes, but they often do not know if they exist or how to find them. The conventional approach to identifying the existence of such coupon codes is for the consumers to navigate to a specialized coupon search site, and to perform a search at that specialized coupon search site to identify the existence of available coupon codes. The problem is that many internet consumers often do not know about these coupon search sites. In addition, even the consumers that know about these coupon search sites must take the time and effort to search these sites. Moreover, many consumers may not know upfront what they want to buy in a given shopping session, and hence may not recognize and/or know upfront what to search for at the coupon site.
- Therefore, there is a need for an improved approach to perform searching and display of internet shopping deals and coupons to consumers.
- According to some embodiments of the invention, disclosed is an improved approach for implementing searching of shopping deals and coupons on the internet. The user's internet activity is checked to identify deals that may be of interest to that user. In some embodiments, this check of the user's internet activity is from identifying the URL of the web page being viewed by the user or by searching the web page for information relating to possible deals. A virtual layer is used to provide web page components to implement the deals display to perform the searching and deal display activities. By using the virtual layer approach of embodiments of the present invention, this allows the shopping deals to be placed on and overlaid with the web page from any host web page.
- Further details of aspects, objects, and advantages of the invention are described below in the detailed description, drawings, and claims. Both the foregoing general description and the following detailed description are exemplary and explanatory, and are not intended to be limiting as to the scope of the invention.
-
FIG. 1A illustrates an example browser window for presenting information from a shopping web site. -
FIG. 1B illustrates the example browser window ofFIG. 1A in which identified shopping deals are also displayed in conjunction with the shopping web site according to an embodiment of the invention. -
FIG. 2 illustrates an example architecture for implementing searching and display of shopping deals according to an embodiment of the invention. -
FIG. 3 illustrates a flowchart of an approach for searching and display of shopping deals according to an embodiment of the invention. -
FIG. 4 illustrates a flowchart of an approach for searching for shopping deals at a server according to an embodiment of the invention. -
FIG. 5 illustrates a flowchart of an approach for using virtual layer software to perform search and display of shopping deals according to an embodiment of the invention. -
FIG. 6 provides an illustrative example of a shopping deals display according to an embodiment of the invention. -
FIG. 7 illustrates a flowchart of an approach for automatically populating a shopping web site with a coupon code according to an embodiment of the invention. -
FIG. 8 depicts a computerized system on which embodiments of the invention may be implemented. - Disclosed is an improved approach for implementing searching of shopping deals and coupons on the internet. The user's internet activity is checked to identify deals that may be of interest to that user. In some embodiments, this check of the user's internet activity is from identifying the URL of the web page being viewed by the user or by searching the web page for information relating to possible deals. A virtual layer is used to provide web page components to implement the deals display to perform the searching and deal display activities. By using the virtual layer approach of embodiments of the present invention, this allows the shopping deals to be placed on and overlaid with the web page from any host web page.
-
FIG. 1A illustrates an example of aweb browser 102 that has been used by a consumer to navigate to a shopping web site (illustratively presented as “www.shopping_site.com” in theURL section 110 of the browser 102). As is typical of many internet shopping sites, a list of products and/or prices is displayed to the user. This display of products and/or prices may be displayed in response to a search performed by user. The products and/or prices may also be displayed automatically by the user navigating to certain pages within the domain of the shopping site. These items of shopping information are native to the host web page and are presented to the user based upon some sort of selection criteria by the owner or operator of the shopping site. - According to some embodiments of the invention, shopping deals, discount information, sales information, and/or coupon information (hereinafter collectively referred to as “deals”) may be presented to the user which relate in some way to the web page or contents of the web page being displayed to the user. These shopping deals may be displayed to the user even if the deal information being displayed is not native to the host web page currently being provided by the shopping site.
-
FIG. 1B shows an example of a theweb browser 102 where the displayedweb page 112 now includes and has been overlaid with anadditional display area 120 for shopping deal information. In this example, thedeals display area 120 is in the form of a drop down menu structure having one or more deals that are displayed.Section 122 ofdeals display 120 provides detailed information for a specific deal, which in this case includes an indication of acoupon code 126 that is applicable to provide a discount to purchases at the shopping site currently being displayed in thebrowser window 108. - The
deals display 120 can be shown to the user even if thehost web page 112 does not natively include that information or if the web site operator or owner is not the same entity as the provider of thedeals display area 120. Thedeals display area 120 can be displayed withinbrowser window 108 to display any suitable type of deals information, e.g., coupon information and coupon codes for products being sold throughweb site 112. This deals display are 120 can be provided whether or not the host web site natively provides functionality to display this information. As described in more detail below, virtual layer software is used to allow third party content (e.g., thedeals display area 120 displaying deals and coupon information) to be displayed in conjunction with the host web page from the primary shopping site. - The advantage of this approach is that the
deals display area 120 that is implemented using virtual layers can be displayed and overlaid onto the web page for any primary shopping site. This is in sharp contrast to conventional approaches that require the user to separately visit a specialized coupon web site and perform a directed search for deals/coupons that pertain to the shopping site. - To allow such
deal display areas 120 to be displayed onto a primary shopping site according to some embodiments of the invention, a virtual layer plug-in is installed withinweb browser 102 to permit third party content to be displayed onto a primary site web page. The virtual layer plug-in is an application running on the client device that enables virtual editing of the appearance or functionality of an existing World Wide Web page by making the modifications on a virtual layer that is superimposed onto the web page. The virtual layer essentially allows a foreign entity or a user to include or enhance content that is utilized or displayed onto a web page, even if the web page itself does not natively provide such functionality to allow a third party to add or enhance content on the web page. - As described in more detail below, the virtual layer plug-in can be used to instantiate “extensions” onto the web page, including any scripts or other programs that may need to be executed on the web page to allow searching of secondary sites and display of additional search results within the
browser window 108. For example, the virtual layer plug-in may be used to instantiate a javascript program to identify search terms on the primary shopping site and to send the search term for searching at a remote server to identify deals/coupons for display. The virtual layer plug-in may also be used to instantiate a Flash-based program to display image or video based search results from the secondary sites. - To illustrate, assume that the user has navigated to a shopping site having the URL “www.shopping_site.com”. The virtual layer extension can be configured to check
section 110 of thebrowser 102 to identify the URL of theshopping site 112, and provide that identified URL as a search term to a deals database at a remote server. The server will send any identified deal information for that URL back to thebrowser 102 to be displayed within deals displayarea 120. The deals displayarea 120 may be implemented to display the deals/coupons in any suitable display format or display type. -
FIG. 2 shows an architecture of asystem 200 for identifying and displaying shopping deals according to some embodiments of the invention.System 200 may include one or more users at one ormore user stations 204 atclient 206 that access aweb browser 202 to perform internet shopping. The users atuser station 102 correspond to any individual, organization, or other entity that usessystem 200 for performing some type of shopping or buying on the internet. Theuser stations 204 could be implemented using any suitable wired or wireless platform. For example,user station 204 may be implemented as desktop computer, laptop computer, wireless computing pad, cellular phone, or a web terminal. - The
user station 204 interacts with aserver 216 to identify and display deals to the user within theweb browser 202. Theserver 216 is a network-accessible site that facilitates access to adatabase 214 containing a listing of available shopping deals pertaining to web sites accessed by a user at theuser station 204. Asearch engine 212 at theserver 216 will access thedatabase 214 to search for any shopping deals that pertain or are relevant to the user's internet activity. - The information within the
deals database 214 may be provided from any suitable source. For example, the information withindeals database 214 could be obtained from anexternal deal consolidator 220, where thedeal consolidator 220 is a specialized service or web site that identifies and tracks different shopping deals for a variety of different vendors, merchants, products, domains, and/or web sites. The deal consolidator 220 may maintain adeals listings database 218 to track the consolidated shopping deals. As needed or on an incremental basis, some or all of the data within thedeals listing database 218 at the deals consolidator 220 may be transferred to thedeals database 214 that is maintained by theserver 216. - The operator of
server 216 may also natively generate or provide the information within thedeals database 214. For example, the operator ofserver 216 may perform his/her consolidation of shopping deals as input to thedeals database 214, rather than seeking this information from an external deals consolidator 220. Alternatively, the operator ofserver 216 may obtain deals information from the deals consolidator 220, but supplement this information with its own natively generated shopping deals data. For example, theserver 216 could collect user feedback about the deals and add that information to thedeals database 214 in combination with data about those deals fromdeal consolidator 220. One practical reason for theserver 216 to collect this type of feedback information from users is so that the feedback can be used by thesearch engine 212 to filter or sort the deals data fromdatabase 214 before sending that data for display to theweb browser 202. -
FIG. 3 shows a flowchart of actions taken at the user station to display the shopping deals information to the user. At 300, the user performs some sort of internet-related activity that may pertain to a shopping deal. For example, the user may use a web browser to navigate to a shopping site web page, where the web page includes or relates to a shopping deal that is being tracked by a deals database. In some contemplated use scenarios, the web page comprises a page provided by a merchant at an internet shopping site, where the web page identifies products that are being sold by the merchant. However, it is noted that the web page does not need to be generated by a dedicated shopping site run by a merchant to fall within the scope of some embodiments of the invention. Instead, the web page within the scope of embodiments of the invention can simply relate to any web page that corresponds to a deal being tracked by the deals database. A non-limiting example is a product review web site where the site only provides product reviews but which specifically does not sell any of the reviewed products. In this situation, the user may be very interested in knowing about product deals or coupons for the products being reviewed at that site, even if the user needs to navigate to another site (e.g., a merchant-run shopping site) to actually make use of the deal or coupon. - At 302, search criteria for deals/coupons are identified. The search criteria can be any criteria or search term that is used to search for shopping deals appropriate to the activity of the user. According to some embodiments, the search criteria are based upon the URL of the web page that is currently being viewed by the user. In this approach, the URL section of the web browser would be accessed to identify the current URL of the web page. In an alternate embodiment, the identified search criteria are based upon the contents of the page being viewed by the user. One approach for implementing this approach is to scrape the web page to identify key words that may be associated with specific products, merchants, deals, and/or coupons. Yet another possible embodiment is to allow the user to provide a search term, e.g., by typing the search term within a menu bar for the deals display.
- At 304, the search criteria are sent to the server to perform a search of the available deals. Assuming that there are displayable search results, then at 306, displayable deal information is received from the server. At 308, that deal information is then displayed to the user. In some embodiments, the deal information is displayed in a drop down menu structure as shown in
FIG. 1B , where the deals display portion is overlaid over the host web page, e.g., a host web page that does not natively display this shopping deals information. -
FIG. 4 shows a flowchart of actions taken at the server to identify shopping deals to be displayed at the user station. At 400, the search criteria are received at the server from the user station. As noted above, the search criteria can be any criteria or search term that is used to search for deals appropriate to the activity of the user. - At 402, a search is performed within the deals database using the received search criteria. In the simple case, the search can be a search for specific words or keys within the deals database. Alternatively, associations may be created for the data within the deals database, so that a search can be performed using information that is associated with a deal. According to some embodiments, the deals within the deals database can be associated with: (a) a deals description; (b) coupon code; (c) expiration date; (d) URL/domain/merchant; (e) deal provider; (f) deal ratings or reviews; and/or (g) deal amounts or discount values. The received search criteria would be matched against these associations to identify the set of deals that should be displayed to the user.
- For example, assume that the received search term is the current URL of the web page that is being viewed by the user. One or more shopping deals in the deals database may be associated with that URL or the domain associated with that URL. If so, then those deals associated with the URL from the received search criteria would be identified from the deals database. A typical use case scenario would be if the URL pertains to the domain of a specific merchant, and in which the associative searching would result in shopping deals corresponding to that specific merchant being identified and displayed to the user. As another example, the received search term may be the product name, product type, or vendor product identifier numbers. There may be shopping deals within the deals database that are associated with these types of search terms, and which would be identified using those associations. A use case scenario may be if the user is browsing at a shopping site for new mobile telephones, and the associative searching for a given product type (e.g., “mobile telephone”) would result in shopping deals from vendors that sell mobile telephones or mobile services.
- It is possible that multiple deals are identified based upon the received search criteria. If so, then sorting and/or filtering of those deals may occur at 404. Any suitable type of sorting can be performed at 404, and the sorting may be performed using any suitable sorting or ordering criteria. For example, the deals can be sorted by the most recent deal, the greatest discount, and/or by the feedback ratings of customers. In addition, the displayed deals can be sorted based upon the deals that provide the greatest profit to the operator of the deals server, e.g., by identifying deals which provide the largest commission payment or percentage from the merchant to the server operator upon a purchase by the consumer. Filtering of the deals can also be performed using any suitable filtering criteria, e.g., filtering by deal expiration/upload date, discount levels/amounts, and/or by minimum feedback ratings.
- At 406, the deal information is sent to the user station to be displayed in the web browser. In some embodiments, the deal information may be displayed within the user's web browser on a virtual layer over the host web page, where a virtual layer plug-in is installed at the user station to implement the virtual layers. A virtual layer server is used to provide the initial configurations for the virtual layer plug-in that allows the third party deals to be displayed at the client. The virtual layer software is configured to be superimposed onto web sites within the client's web browser, where the virtual layer include “extensions” that provide additional functionality or content to the built-in capabilities of a given web page.
- As shown in
FIG. 5 , at 502, the approach begins with configuration for the extensions to perform deal display at the client. An identification is made of the parameters and settings for the virtual layer software that need to be configured to allow for deal display on web sites. For example, the different web sites may have fields and sections that need sot be scraped to identify search terms for searching of the deals. Therefore, the specific configurations that need to be implemented for the different web sites or domains are identified and built into the virtual layer software. The virtual layer plug-in extension is configured and/or modified as appropriate to implement the abilities discussed above. At 504, the virtual layer software is made available to be downloaded by users to the client computers to allow the searching and display of shopping deals. Thereafter, at 506, the deal information is processed and displayed on a native web page using the virtual layer software. - One approach for implementing the virtual layer is by using an enhanced XML schema (referred to herein as YLML or “Yontoo Layer Markup Language”), which contains executable programming tags, referenceable data tags, renderable UI tags and the like. Unlike HTML, which is a document markup language that is sometimes used as an application markup language simply because it is widely supported and the industry norm, YLML is a true application markup language that is different from HTML in that it has executable nodes and does not follow the same DOM structure that HTML does. YLML is also different from other XML languages in that it does not use code-behind. YLML does not require a separate file with logic source code, nor does it have imbedded logic using external languages. While other dynamic versions of XML require the use of code-behind or require the addition of external languages such as JavaScript and VBScript to be imbedded into script tags, YLML has native executable logic tags that eliminate the requirement for other languages to be imbedded into tags or used for code-behind.
- An object model that works in conjunction with YLML is also employed, which is referred to herein as a YOM or Yontoo Object Model. A DOM can use only the information that exists in the document it is referencing to create a set of objects that are used to access the data within the HTML. The YOM on the other hand, is a single template that has an established structure that enables access to any information, data or content accessible through a computer system, including, but not restricted to the World Wide Web, databases, data stores, a client's computer or other content sources. This implies that unlike a DOM, which only creates objects for tags for content that exists in whole within the HTML document that it references, the YOM's established structure enables it to access specific content that exists on the World Wide Web, a database, a data store or any other location connected to a networked computer system without requiring content beyond the scope of exactly what is needed to be loaded. This enables the YOM to create objects within the model using a JIT (just in time) method, as opposed to creating the entirety of the model when the incoming file is parsed as is the case with the use of a DOM. One advantage of using the YOM over the DOM is that it gives access to a much broader range of content, including the World Wide Web, databases, data stores, a client's computer or other sources of content, according to an example of the present invention. For a DOM to provide this access, it would need to first load the entirety of the content that exists within these sources which is performance prohibitive.
- The extensions for performing deal display are implemented using a combination of the YLML, the YOM and the virtual layer system to additional content and functionality to an existing web page. The extensions may be implemented using any suitable programming and/or scripting language. For example, a Flash-based approach maybe utilized to display the search results from deal search site. Of course, non-flash-based approaches may also be used to display the search results as well. According to some embodiments, the method for configuring a virtual layer includes aggregating objects corresponding to the plurality of layer extensions and corresponding to the URL using a layer markup language. The step of aggregating the objects is executed through a layer definition server unit adaptable to the layer markup language may also include a plurality of built-in logical tags for avoiding a need of writing scripts for enabling objects for executing events. The method for configuring an editable virtual layer in an internet browsing environment further includes loading a pre-rendered layer markup language module, returning the layer markup language to the virtual layer software sub-unit including a plurality of layer extensions present on the URL and having the virtual layer software sub-unit executing initialization routines in the layer markup language.
- The rendering functionality within the virtual layer plug-in recognizes that it needs to add the drop down deal results window to the host web page, which is implemented in some embodiments by using Javascript to augment the DOM/YOM of the existing host web page. The correct location on the host web page is identified using the markup language items (XML or YLML) that was downloaded as part of the extension data, and used to inject the Javascript/Flash player at the appropriate location on the host web page.
- The layer definition server may maintain a mapping structure to track the specific extensions to load for a given user and/or application. For example, the user may be associated with different applications that use the virtual layer plug-in, and the mappings identify which specific application extensions should be injected for that specific user. When appropriate identified, the extensions would be installed onto the virtual layer of the web page for the user.
- Further details regarding an exemplary approach for implementing extension lists, virtual layer plug-ins, and virtual layers are described in co-pending U.S. Ser. No. 12/455,797, entitled “SYSTEM, METHOD AND APPARATUS FOR CREATING AND USING A VIRTUAL LAYER WITHIN A WEB BROWSING ENVIRONMENT”, filed on Jun. 8, 2009, which is hereby incorporated by reference in its entirety.
-
FIG. 6 shows an example of adeals display structure 600 according to some embodiments of the invention.Deal display structure 600 in this embodiment is formed as a drop down menu that displays one or more shopping deals within its display area. The shopping deal(s) are displayed in adeal display section 610 that includes information about a displayed shopping deal. For example, the displayed information may include information about the amount or type of discounts provided by the shopping deal in question. The displayed information also includes the display of acoupon code 620 that is used to obtain the stated shopping discount. - If the
deal display section 610 does not have sufficient space to list all of the available shopping deals, then a control/interface element may be provided to allow user selection to display additional shopping deals. In the example ofFIG. 6 ,button 612 is provided if thedeal display section 610 is insufficient in size to display all of the shopping deals, and in which clicking of thisbutton 612 by a user will cause additional deals to be displayed in thedeal display section 610 of deals displaystructure 600. - The deals display
structure 600 in some embodiments may include asearch interface 602 to user users to perform directed searches of the deals database.Search interface 602 includes a field which allows the user to insert a search term. This search term can be sent to the server to perform the search of the deals database, with search results returned back to the client to be displayed in thedeal display section 610. - In some embodiments, users are permitted to provide feedback or rankings for the displayed shopping deals.
Controls FIG. 6 are relatively simplistic in nature, it is clear that the scope of some embodiments of the invention may of encompass more complicated and granular rating and scoring interfaces that allows for detailed levels of review or scoring to be provided by users. -
Coupon code 620 may be implemented as a clickable control interface that facilitates usage of the coupon code value for user purchases. According to a first embodiment, user selection of theinterface element 620 results in the coupon code value being copied to a cache or memory area, so that the user can then “paste” that value into the appropriate field of a check-out web page of a shopping site so that the coupon code can be applied to obtain the designated discount. - In an alternate embodiment, user selection of the
interface element 620 causes the coupon code to be auto-populated into the appropriate fields of the check-out page of the shopping site.FIG. 7 shows a flowchart of actions that may be taken in this type of embodiment. At 702, the user selects the displayed deal, e.g., by clicking upon thecoupon code 620 for that shopping deal. - At 704, the browser will navigate to the appropriate URL associated with that shopping deal. To accomplish this, the interface element can be associated with a particular URL for purchasing a product or for applying the discount. For example, the check-out page of the shopping site can be associated with the shopping deal, so that selection or clicking of the coupon code causes navigation to the check-out page of the web site.
- At 706, one or more values are auto-populated with appropriate values. For example, a coupon or discount portion of the check-out page can be automatically populated or injected with the coupon code. Other values may also be filled in at this point. For example, if the coupon code is associated with a specific product, product identifier, or price value, then that value can be used to auto-populate the appropriate fields in the check-out page. There are several possible ways to provide for auto-population of the check-put page fields. One way is perform the preliminary action of researching the different fields and positions of the check-out page for merchant web sites, and to configure the virtual layer software to insert the coupon codes and/or other values into those pre-recognized fields. Another possible approach is to scrape the shopping site page to search for recognized field identifiers, and to insert the code values are necessary into the recognized fields. One approach is to detect coupon code inputs on pages after coupon selection, and to then auto-inject these codes into the appropriate fields on the shopping site page.
- Some embodiments may be implemented to display deals according to certain additional user-specific criteria. For example, the displayed deal could be based on the user's current location, e.g., which is identified by the user's IP address or by a location specified by the user. The displayed deal can be a “daily” deal, which lists current, up-to-date deals that are recent and/or relatively “hot” or recommended by other users.
- Any or all of the deals may be printed by the user, according to some embodiments of the invention. In this approach, rather than being applied to a check-out page, the user controls the printing of the deal, e.g., to create/print a physical coupon that can be used in a brick-and-mortar store that is associated with the deal. The printable coupon can be identified using any suitable approach, e.g., as described above with respect to URL, searching, and/or based on location.
- In addition, comparisons may be performed between different ones of the identified deals. For example, comparisons may be performed between multiple deals based on price, discount level, location, and/or best match. As before, the deals to be compared may be identified using any suitable approach, e.g., as described above with respect to URL, searching, and/or based on location.
- In yet another embodiment, one or more links (e.g., a “Get a Coupon” link) may be added or associated with the coupon/deal code inputs, which directs the user to a deals site in a new tab/window. This direction of the user to a new tab/window may be performed with the search already made. Alternatively, selection of the link may cause a display of the user coupon/deal codes on the page, which may serve to increase the chance of a user selecting a coupon, e.g., if the deals menu is currently minimized.
- In some embodiments of the invention, user selection of a coupon/deal from the deals menu causes a redirection to occur through a deal provider site, e.g., a redirection through the deal provider site to the user's previous site or to another shopping site. This action sets a cookie indicative of the redirection. Such tracking of redirections by users may be useful for many purposes. For example, there may be a financial arrangement to pay the provider of the deals menu for coupons/deals usage by users, and this type of tracking is useful for identifying the quantity of such users that take advantage of the coupons/deals. If the compensation is on a per-user basis, then this tracking information can be used to determine the amount of compensation to be paid by the deal provider for the users that have been directed to the coupons/deals.
- Therefore, what has been described is an improved approach to perform searching and display of shopping deals on the internet. The shopping deals can be displayed over any host web page, even web pages that do not natively provide for this capability.
-
FIG. 8 is a block diagram of anillustrative computing system 1400 suitable for implementing an embodiment of the deals display of the present invention.Computer system 1400 includes a bus 1406 or other communication mechanism for communicating information, which interconnects subsystems and devices, such as processor 1407, system memory 1408 (e.g., RAM), static storage device 1409 (e.g., ROM), disk drive 1410 (e.g., magnetic or optical), communication interface 1414 (e.g., modem or Ethernet card), display 1411 (e.g., CRT or LCD), input device 1412 (e.g., keyboard), and cursor control. - According to one embodiment of the invention,
computer system 1400 performs specific operations by processor 1407 executing one or more sequences of one or more instructions contained in system memory 1408. Such instructions may be read into system memory 1408 from another computer readable/usable medium, such as static storage device 1409 or disk drive 1410. In alternative embodiments, hard-wired circuitry may be used in place of or in combination with software instructions to implement the invention. Thus, embodiments of the invention are not limited to any specific combination of hardware circuitry and/or software. In one embodiment, the term “logic” shall mean any combination of software or hardware that is used to implement all or part of the invention. - The term “computer readable medium” or “computer usable medium” as used herein refers to any medium that participates in providing instructions to processor 1407 for execution. Such a medium may take many forms, including but not limited to, non-volatile media and volatile media. Non-volatile media includes, for example, optical or magnetic disks, such as disk drive 1410. Volatile media includes dynamic memory, such as system memory 1408.
- Common forms of computer readable media includes, for example, floppy disk, flexible disk, hard disk, magnetic tape, any other magnetic medium, CD-ROM, any other optical medium, punch cards, paper tape, any other physical medium with patterns of holes, RAM, PROM, EPROM, FLASH-EPROM, any other memory chip or cartridge, or any other medium from which a computer can read.
- In an embodiment of the invention, execution of the sequences of instructions to practice the invention is performed by a
single computer system 1400. According to other embodiments of the invention, two ormore computer systems 1400 coupled by communication link 1415 (e.g., LAN, PTSN, or wireless network) may perform the sequence of instructions required to practice the invention in coordination with one another. -
Computer system 1400 may transmit and receive messages, data, and instructions, including program, i.e., application code, through communication link 1415 and communication interface 1414. Received program code may be executed by processor 1407 as it is received, and/or stored in disk drive 1410, or other non-volatile storage for later execution.Computer system 1400 may communicate through a data interface 1433 to a database 1432 on an external storage device 1431. - In the foregoing specification, the invention has been described with reference to specific embodiments thereof. It will, however, be evident that various modifications and changes may be made thereto without departing from the broader spirit and scope of the invention. For example, the above-described process flows are described with reference to a particular ordering of process actions. However, the ordering of many of the described process actions may be changed without affecting the scope or operation of the invention. The specification and drawings are, accordingly, to be regarded in an illustrative rather than restrictive sense.
Claims (20)
1. A computer implemented method for identifying additional content corresponding to search criteria received from a user using a virtual layer plug-in to display additional content in a virtual layer overlaid over a host web page, comprising:
receiving search criteria at a remote server, the search criteria corresponding to internet usage information associated with internet usage by a user at the virtual layer plug-in;
identifying additional content relevant to the internet usage information received from the virtual layer plug-in, wherein the internet usage information pertains to a host web page that is displayed in a web browser to the user, and wherein the additional content is identified using the search criteria, and the search criteria is based on at least the contents of the host web page that is displayed in a web browser to the user and the additional content is received from the remote server using the search criteria; and
sending the additional content to a client computer to display at least some of the additional content with the host web page using a virtual layer overlaid over the host web page displayed in the web browser to the user, at least some of the additional content being superimposed over the host web page in the same display window using the virtual layer overlaid over the host web page displayed in the web browser to the user and the additional content being displayed in a drop down menu structure, wherein the additional content comprises at least shopping deal information, the additional content is processed by the virtual layer plug-in to generate a visual representation, and the visual representation is clickable to cause an action to be taken corresponding to the additional content, and wherein the host web page does not natively provide functionality to enable a third party to overlay the additional content using the virtual layer.
2. The method of claim 1 in which an extension is instantiated on the virtual layer with a corresponding user interface element in the drop down menu structure that enables a user to enter search criteria.
3. The method of claim 1 in which the additional content comprises a coupon deal and the coupon deal includes a coupon code that is displayed to the user and the coupon code is auto-populated to a field in host web page by the virtual layer plug-in.
4. The method of claim 1 in which an interface element is provided in the virtual layer to obtain user feedback for the shopping deal and the interface element is provided in the drop down menu structure, and wherein the user feedback from multiple users are collected and stored in a deals database to obtain overall user feedback ratings for the shopping deal.
5. The method of claim 1 in which the additional content is identified using search criteria related to a URL associated with the host web page or extracted from the host web page to search a deals database.
6. The method of claim 1 in which the additional content corresponds to a search association within a deals database, wherein the search association relates to a deal description, coupon code, expiration date, URL, domain, merchant, deal provider, ratings, deal amount, or discount values.
7. The method of claim 1 in which multiple shopping deals are sorted or filtered for display, and wherein the user can specify filtering criteria comprising at least one of a deal expiration date, a deal upload date, a discount level, a discount amount, or feedback ratings.
8. A computer program product embodied on a non-transitory computer usable medium, the non-transitory computer usable medium having stored thereon a sequence of instructions which, when executed by a processor causes the processor to execute a method for identifying additional content corresponding to search criteria received from a user using a virtual layer plug-in to display additional content in a virtual layer overlaid over a host web page, the method comprising:
receiving search criteria at a remote server, the search criteria corresponding to internet usage information associated with internet usage by a user at the virtual layer plug-in;
identifying additional content relevant to the internet usage information received from the virtual layer plug-in, wherein the internet usage information pertains to a host web page that is displayed in a web browser to the user, and wherein the additional content is identified using the search criteria, and the search criteria is based on at least the contents of the host web page that is displayed in a web browser to the user and the additional content is received from the remote server using the search criteria; and
sending the additional content to a client computer to display at least some of the additional content with the host web page using a virtual layer overlaid over the host web page displayed in the web browser to the user, at least some of the additional content being superimposed over the host web page in the same display window using the virtual layer overlaid over the host web page displayed in the web browser to the user and the additional content being displayed in a drop down menu structure, wherein the additional content comprises at least shopping deal information, the additional content is processed by the virtual layer plug-in to generate a visual representation, and the visual representation is clickable to cause an action to be taken corresponding to the additional content, and wherein the host web page does not natively provide functionality to enable a third party to overlay the additional content using the virtual layer.
9. The computer program product of claim 8 in which an extension is instantiated on the virtual layer with a corresponding user interface element in the drop down menu structure that enables a user to enter search criteria.
10. The computer program product of claim 8 in which the additional content comprises a coupon deal and the coupon deal includes a coupon code that is displayed to the user and the coupon code is auto-populated to a field in host web page by the virtual layer plug-in.
11. The computer program product of claim 8 in which an interface element is provided in the virtual layer to obtain user feedback for the shopping deal and the interface element is provided in the drop down menu structure, and wherein the user feedback from multiple users are collected and stored in a deals database to obtain overall user feedback ratings for the shopping deal.
12. The computer program product of claim 8 in which the additional content is identified using search criteria related to a URL associated with the host web page or extracted from the host web page to search a deals database.
13. The computer program product of claim 8 in which the additional content corresponds to a search association within a deals database, wherein the search association relates to a deal description, coupon code, expiration date, URL, domain, merchant, deal provider, ratings, deal amount, or discount values.
14. The computer program product of claim 8 in which multiple shopping deals are sorted or filtered for display, and wherein the user can specify filtering criteria comprising at least one of deal expiration date, deal upload date, discount levels, discount amounts, or minimum feedback ratings.
15. A system for identifying additional content corresponding to search criteria received from a user using a virtual layer plug-in to display additional content in a virtual layer overlaid over a host web page, comprising:
a memory for storing data and instructions; and
a processor that executes the instructions to enable actions, including:
receiving search criteria at a remote server, the search criteria corresponding to internet usage information associated with internet usage by a user at the virtual layer plug-in;
identifying additional content relevant to the internet usage information received from the virtual layer plug-in, wherein the internet usage information pertains to a host web page that is displayed in a web browser to the user, and wherein the additional content is identified using the search criteria, and the search criteria is based on at least the contents of the host web page that is displayed in a web browser to the user and the additional content is received from the remote server using the search criteria; and
sending the additional content to a client computer to display at least some of the additional content with the host web page using a virtual layer overlaid over the host web page displayed in the web browser to the user, at least some of the additional content being superimposed over the host web page in the same display window using the virtual layer overlaid over the host web page displayed in the web browser to the user and the additional content being displayed in a drop down menu structure, wherein the additional content comprises at least shopping deal information, the additional content is processed by the virtual layer plug-in to generate a visual representation, and the visual representation is clickable to cause an action to be taken corresponding to the additional content, and wherein the host web page does not natively provide functionality to enable a third party to overlay the additional content using the virtual layer.
16. The system of claim 15 , wherein an extension is instantiated on the virtual layer with a corresponding user interface element in the drop down menu structure that enables a user to enter search criteria.
17. The system of claim 15 in which the additional content comprises a coupon deal and the coupon deal includes a coupon code that is displayed to the user and the coupon code is auto-populated to a field in host web page by the virtual layer plug-in.
18. The system of claim 15 , wherein an interface element is provided in the virtual layer to obtain user feedback for the shopping deal and the interface element is provided in the drop down menu structure, and wherein the user feedback from multiple users are collected and stored in a deals database to obtain overall user feedback ratings for the shopping deal.
19. The system of claim 15 , in which the additional content is identified using search criteria related to a URL associated with the host web page or extracted from the host web page to search a deals database.
20. The system of claim 15 in which the additional content corresponds to a search association within a deals database, wherein the search association relates to a deal description, coupon code, expiration date, URL, domain, merchant, deal provider, ratings, deal amount, or discount values.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/058,495 US20160180436A1 (en) | 2009-06-08 | 2016-03-02 | Method and system for identifying and displaying shopping deals |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/455,797 US20100313252A1 (en) | 2009-06-08 | 2009-06-08 | System, method and apparatus for creating and using a virtual layer within a web browsing environment |
US201113109879A | 2011-05-17 | 2011-05-17 | |
US15/058,495 US20160180436A1 (en) | 2009-06-08 | 2016-03-02 | Method and system for identifying and displaying shopping deals |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US201113109879A Continuation | 2009-06-08 | 2011-05-17 |
Publications (1)
Publication Number | Publication Date |
---|---|
US20160180436A1 true US20160180436A1 (en) | 2016-06-23 |
Family
ID=43301719
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/455,797 Abandoned US20100313252A1 (en) | 2009-06-08 | 2009-06-08 | System, method and apparatus for creating and using a virtual layer within a web browsing environment |
US12/960,340 Expired - Fee Related US9201672B1 (en) | 2009-06-08 | 2010-12-03 | Method and system for aggregation of search results |
US15/058,495 Abandoned US20160180436A1 (en) | 2009-06-08 | 2016-03-02 | Method and system for identifying and displaying shopping deals |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/455,797 Abandoned US20100313252A1 (en) | 2009-06-08 | 2009-06-08 | System, method and apparatus for creating and using a virtual layer within a web browsing environment |
US12/960,340 Expired - Fee Related US9201672B1 (en) | 2009-06-08 | 2010-12-03 | Method and system for aggregation of search results |
Country Status (1)
Country | Link |
---|---|
US (3) | US20100313252A1 (en) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10304074B2 (en) | 2012-06-11 | 2019-05-28 | Retailmenot, Inc. | Devices, methods, and computer-readable media for redemption header for merchant offers |
US10475071B2 (en) * | 2012-10-22 | 2019-11-12 | Marc Alan Mezzacca | System and method of automated delivery of relevance-checked benefit-conveying codes during online transaction |
US10614476B2 (en) | 2012-11-08 | 2020-04-07 | Honey Science Llc | Systems and methods for interfacing with a website to modify content |
US10839453B1 (en) * | 2019-11-26 | 2020-11-17 | Capital One Services, Llc | Systems and methods for identifying location-based information associated with a product on a web page |
US11288694B2 (en) * | 2013-11-08 | 2022-03-29 | Retailmenot, Inc. | Providing single-use offers |
US11354655B2 (en) * | 2020-04-29 | 2022-06-07 | Capital One Services, Llc | Enhancing merchant databases using crowdsourced browser data |
US11409829B2 (en) * | 2020-12-21 | 2022-08-09 | Capital One Services, Llc | Methods and systems for redirecting a user from a third party website to a provider website |
US20230117634A1 (en) * | 2019-08-26 | 2023-04-20 | Paypal, Inc. | Systems And Methods For Dynamically Modifying Content Of A Website |
US11941653B2 (en) * | 2019-04-17 | 2024-03-26 | Capital One Services, Llc | Methods and systems for testing and applying codes to electronic shopping carts |
Families Citing this family (49)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2764493C (en) | 2009-06-04 | 2018-07-10 | Joshua Feuerstein | Method and system for electronic advertising |
US20100313252A1 (en) | 2009-06-08 | 2010-12-09 | Erie Trouw | System, method and apparatus for creating and using a virtual layer within a web browsing environment |
US8582801B2 (en) | 2010-02-08 | 2013-11-12 | Google Inc. | Assisting the authoring of posts to an asymmetric social network |
US8825759B1 (en) | 2010-02-08 | 2014-09-02 | Google Inc. | Recommending posts to non-subscribing users |
US9729352B1 (en) | 2010-02-08 | 2017-08-08 | Google Inc. | Assisting participation in a social network |
US9418388B1 (en) * | 2010-09-08 | 2016-08-16 | Imdb.Com, Inc. | Techniques for displaying third party content |
US8453218B2 (en) | 2010-11-19 | 2013-05-28 | Reputation.com | System and methods for facilitating secure communications on a website |
US8527597B2 (en) | 2010-12-07 | 2013-09-03 | Google Inc. | Determining message prominence |
US8504910B2 (en) * | 2011-01-07 | 2013-08-06 | Facebook, Inc. | Mapping a third-party web page to an object in a social networking system |
US9058391B2 (en) | 2011-03-14 | 2015-06-16 | Slangwho, Inc. | System and method for transmitting a feed related to a first user to a second user |
US9213972B2 (en) | 2011-08-30 | 2015-12-15 | Gregory DORSO | Systems and methods for fast mobile payment |
US8826399B2 (en) | 2011-12-06 | 2014-09-02 | Gregory DORSO | Systems and methods for fast authentication with a mobile device |
US8886651B1 (en) | 2011-12-22 | 2014-11-11 | Reputation.Com, Inc. | Thematic clustering |
US10636041B1 (en) | 2012-03-05 | 2020-04-28 | Reputation.Com, Inc. | Enterprise reputation evaluation |
US9697490B1 (en) | 2012-03-05 | 2017-07-04 | Reputation.Com, Inc. | Industry review benchmarking |
US9031927B2 (en) | 2012-04-13 | 2015-05-12 | Ebay Inc. | Method and system to provide video-based search results |
JP2013242847A (en) * | 2012-04-26 | 2013-12-05 | Mitsubishi Electric Corp | Image processing terminal and image processing method |
US9563325B2 (en) * | 2012-06-08 | 2017-02-07 | International Business Machines Corporation | Selective update of a page having a pegged area |
US11093984B1 (en) | 2012-06-29 | 2021-08-17 | Reputation.Com, Inc. | Determining themes |
US9361651B2 (en) | 2012-10-04 | 2016-06-07 | International Business Machines Corporation | Displaying quantitative trending of pegged data from cache |
US9922327B2 (en) | 2012-11-01 | 2018-03-20 | Ebates Inc. | System, method, and computer program for providing a multi-merchant electronic shopping cart for a shopping service |
US9342490B1 (en) * | 2012-11-20 | 2016-05-17 | Amazon Technologies, Inc. | Browser-based notification overlays |
US8744866B1 (en) | 2012-12-21 | 2014-06-03 | Reputation.Com, Inc. | Reputation report with recommendation |
US8805699B1 (en) | 2012-12-21 | 2014-08-12 | Reputation.Com, Inc. | Reputation report with score |
US8925099B1 (en) | 2013-03-14 | 2014-12-30 | Reputation.Com, Inc. | Privacy scoring |
US20140324486A1 (en) * | 2013-04-24 | 2014-10-30 | Hipmunk, Inc. | Travel option presentation |
US9900367B2 (en) | 2013-05-13 | 2018-02-20 | Appsense Us Llc | Context transfer from web page to application |
US9167052B2 (en) * | 2013-05-13 | 2015-10-20 | Appsense Limited | Apparatus, systems, and methods for providing policy in network-based applications |
US9912720B2 (en) | 2013-05-13 | 2018-03-06 | Appsense Us Llc | Context aware browser policy |
US10291615B2 (en) * | 2013-05-13 | 2019-05-14 | Ivanti Us Llc | Web event framework |
US20150134372A1 (en) * | 2013-11-13 | 2015-05-14 | Amadeus S.A.S. | Integration of online self-booking tool and third party system search results |
CA2922432A1 (en) * | 2013-11-13 | 2015-05-21 | Amadeus S.A.S. | Integration of online self-booking tool and third party system search results |
US9456021B2 (en) | 2014-01-21 | 2016-09-27 | International Business Machines Corporation | Loading pegged page objects based on predefined preferences |
US9785309B2 (en) * | 2014-05-08 | 2017-10-10 | Socialtopias, Llc | Method and apparatus for providing a layered webpage |
US9639263B2 (en) | 2014-08-05 | 2017-05-02 | Weebly, Inc. | Native overlay for rapid editing of web content |
US10139998B2 (en) | 2014-10-08 | 2018-11-27 | Weebly, Inc. | User interface for editing web content |
US20170004123A1 (en) * | 2015-06-30 | 2017-01-05 | International Business Machines Corporation | Interactive gui review tool system and method |
US10503742B2 (en) * | 2015-10-27 | 2019-12-10 | Blackberry Limited | Electronic device and method of searching data records |
US20180018304A1 (en) * | 2016-07-14 | 2018-01-18 | Intent Media, Inc. | Graphical user interface and system for viewing landing page content |
KR102285249B1 (en) | 2016-10-13 | 2021-08-05 | 라쿠텐 그루프 가부시키가이샤 | A system, method and computer program for providing a wishlist user interface within a web browser that alerts a user to changes in multi-factor-based prices. |
US10740781B2 (en) | 2017-10-31 | 2020-08-11 | Ebates Performance Marketing, Inc. | System, method, and computer program for providing notification of a cashback reward from a shopping portal using online screen and email analysis |
JP7180111B2 (en) * | 2018-04-27 | 2022-11-30 | 富士フイルムビジネスイノベーション株式会社 | Display editing device and program |
US11436292B2 (en) | 2018-08-23 | 2022-09-06 | Newsplug, Inc. | Geographic location based feed |
US11609963B2 (en) * | 2018-10-24 | 2023-03-21 | Citrix Systems, Inc. | Dynamically change user interfaces for web applications and associated methods |
US10866708B2 (en) | 2018-12-10 | 2020-12-15 | Square, Inc. | Using combined ecommerce and brick-and-mortar data to produce intelligent recommendations for web page operation |
US10853434B2 (en) | 2019-03-11 | 2020-12-01 | Vladimir Prelovac | User interface for presenting search results |
US11568468B2 (en) | 2019-08-08 | 2023-01-31 | Rakuten Group, Inc. | System, method, and computer program for providing similar product recommendations for non-merchant publishers based on publisher preferences |
US11770437B1 (en) * | 2021-08-30 | 2023-09-26 | Amazon Technologies, Inc. | Techniques for integrating server-side and client-side rendered content |
US11991137B2 (en) * | 2022-04-27 | 2024-05-21 | Salesforce, Inc. | Notification timing in a group-based communication system |
Family Cites Families (98)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5310349A (en) * | 1992-04-30 | 1994-05-10 | Jostens Learning Corporation | Instructional management system |
GB9516762D0 (en) * | 1995-08-16 | 1995-10-18 | Phelan Sean P | Computer system for identifying local resources |
US5826025A (en) * | 1995-09-08 | 1998-10-20 | Sun Microsystems, Inc. | System for annotation overlay proxy configured to retrieve associated overlays associated with a document request from annotation directory created from list of overlay groups |
JP3441306B2 (en) | 1995-09-12 | 2003-09-02 | 株式会社東芝 | Client device, message transmission method, server device, page processing method, and relay server device |
US5848397A (en) | 1996-04-19 | 1998-12-08 | Juno Online Services, L.P. | Method and apparatus for scheduling the presentation of messages to computer users |
US5995756A (en) | 1997-02-14 | 1999-11-30 | Inprise Corporation | System for internet-based delivery of computer applications |
US5903728A (en) * | 1997-05-05 | 1999-05-11 | Microsoft Corporation | Plug-in control including an independent plug-in process |
US6230171B1 (en) * | 1998-08-29 | 2001-05-08 | International Business Machines Corporation | Markup system for shared HTML documents |
US6360205B1 (en) * | 1998-10-30 | 2002-03-19 | Trip.Com, Inc. | Obtaining and utilizing commercial information |
US6297819B1 (en) * | 1998-11-16 | 2001-10-02 | Essential Surfing Gear, Inc. | Parallel web sites |
AU4676800A (en) * | 1999-04-26 | 2000-11-10 | Dodots, Inc. | Apparatus and method for delivering internet content |
US7096426B1 (en) * | 1999-05-07 | 2006-08-22 | Catherine Lin-Hendel | Clustered presentation of objects with group and individual identity in, and virtual layered composition of, electronically recorded, computer presented media |
US7243082B1 (en) * | 1999-06-30 | 2007-07-10 | Kyklos Entertainment S.R.L. | Method and apparatus for generating a sale offer to selected individuals over electronic network systems |
US20080319918A1 (en) * | 1999-06-30 | 2008-12-25 | Kyklos Entertainment S.R.I. | Methods and systems for generating product offers over electronic network systems |
US7222303B2 (en) * | 1999-07-15 | 2007-05-22 | Hotbar.Com, Inc. | System and method for the dynamic improvement of internet browser navigability |
US20060265476A1 (en) * | 1999-10-21 | 2006-11-23 | Sean Barger | Automated media delivery system |
US20020010757A1 (en) * | 1999-12-03 | 2002-01-24 | Joel Granik | Method and apparatus for replacement of on-line advertisements |
US6859909B1 (en) * | 2000-03-07 | 2005-02-22 | Microsoft Corporation | System and method for annotating web-based documents |
EP1182599A1 (en) | 2000-07-26 | 2002-02-27 | Transmedia Network, Inc. | System and method for providing consumer rewards |
US20060122917A1 (en) * | 2000-08-14 | 2006-06-08 | Urbanpixel Inc | Real-time collaborative commerce in a multiple browser environment |
US7478089B2 (en) | 2003-10-29 | 2009-01-13 | Kontera Technologies, Inc. | System and method for real-time web page context analysis for the real-time insertion of textual markup objects and dynamic content |
US20040125130A1 (en) * | 2001-02-26 | 2004-07-01 | Andrea Flamini | Techniques for embedding custom user interface controls inside internet content |
US20030014406A1 (en) * | 2001-06-07 | 2003-01-16 | Urbanpixel Inc. | Intelligent browser windows in a multi-browser environment |
AU2002345337A1 (en) * | 2001-07-09 | 2003-01-29 | Ad4Ever Inc. | Method and system for allowing cross-communication between first and second areas of a primary web page |
WO2003014867A2 (en) * | 2001-08-03 | 2003-02-20 | John Allen Ananian | Personalized interactive digital catalog profiling |
US20040060008A1 (en) * | 2002-01-18 | 2004-03-25 | John Marshall | Displaying statistical data for a web page by dynamically modifying the document object model in the HTML rendering engine |
US7716199B2 (en) * | 2005-08-10 | 2010-05-11 | Google Inc. | Aggregating context data for programmable search engines |
US7360160B2 (en) * | 2002-06-20 | 2008-04-15 | At&T Intellectual Property, Inc. | System and method for providing substitute content in place of blocked content |
US7051040B2 (en) * | 2002-07-23 | 2006-05-23 | Lightsurf Technologies, Inc. | Imaging system providing dynamic viewport layering |
US20040019653A1 (en) | 2002-07-26 | 2004-01-29 | Philippe Debaty | Context-aware client system |
US7945846B2 (en) * | 2002-09-06 | 2011-05-17 | Oracle International Corporation | Application-specific personalization for data display |
US7069497B1 (en) | 2002-09-10 | 2006-06-27 | Oracle International Corp. | System and method for applying a partial page change |
GB2395640B (en) * | 2002-11-22 | 2006-06-07 | Westerngeco Seismic Holdings | Implementing a network infrastructure in a seismic acquisition system |
CA2414378A1 (en) * | 2002-12-09 | 2004-06-09 | Corel Corporation | System and method for controlling user interface features of a web application |
US20060149618A1 (en) * | 2003-02-19 | 2006-07-06 | Michael Balin | System for providing private offers to customers of web sites |
US7493614B2 (en) * | 2003-03-31 | 2009-02-17 | Microsoft Corporation | System architecture and related methods for dynamically adding software components to extend functionality of system processes |
US20040201615A1 (en) * | 2003-04-10 | 2004-10-14 | International Business Machines Corporation | Eliminating extraneous displayable data from documents and e-mail received from the world wide web and like networks |
US7364086B2 (en) * | 2003-06-16 | 2008-04-29 | Ewinwin, Inc. | Dynamic discount card tied to price curves and group discounts |
US20050080675A1 (en) | 2003-10-09 | 2005-04-14 | Long Range Systems, Inc. | System and method for automated dynamic wait listing |
US20050197893A1 (en) * | 2004-02-24 | 2005-09-08 | Michael Landau | Coupon, price-comparison, and product-review information toolbar for use with a network browser or system/application interface |
US7584435B2 (en) * | 2004-03-03 | 2009-09-01 | Omniture, Inc. | Web usage overlays for third-party web plug-in content |
BRPI0401465A (en) * | 2004-04-20 | 2006-02-21 | Embria Informatica Ltda | system for managing interactions between users and software applications in a web environment |
US7533144B2 (en) | 2004-05-14 | 2009-05-12 | Hisham Kassab | Method of providing a web page with additional content inserted in an intermediate network entity (INE) platform |
US20060026059A1 (en) | 2004-07-30 | 2006-02-02 | Grosz Aryk E | Advertising method for digitally rented movies |
US7271815B2 (en) * | 2004-10-21 | 2007-09-18 | International Business Machines Corporation | System, method and program to generate a blinking image |
US7831319B2 (en) | 2005-01-07 | 2010-11-09 | Gm Global Technology Operations, Inc. | Sensor based anticipatory lighting of controls |
US20060293959A1 (en) * | 2005-06-16 | 2006-12-28 | Zixxo Inc. | Method and system for adding coupon information to network-based content |
US20080005064A1 (en) | 2005-06-28 | 2008-01-03 | Yahoo! Inc. | Apparatus and method for content annotation and conditional annotation retrieval in a search context |
US7529744B1 (en) * | 2005-06-30 | 2009-05-05 | Symantec Corporation | Search interface server and storage management |
AU2006280934B2 (en) * | 2005-08-19 | 2012-06-28 | Google Llc | Software architecture for displaying information content from plug-in modules in a user interface |
US8989718B2 (en) | 2005-09-14 | 2015-03-24 | Millennial Media, Inc. | Idle screen advertising |
US20070078705A1 (en) * | 2005-09-30 | 2007-04-05 | Timothy Abels | Virtualizing portals for electronic commerce |
US7698685B2 (en) * | 2005-10-12 | 2010-04-13 | Microsoft Corporation | Discovery, qualification, and activation of software add-in components |
US8050976B2 (en) * | 2005-11-15 | 2011-11-01 | Stb Enterprises, Llc | System for on-line merchant price setting |
US7895604B2 (en) | 2005-11-17 | 2011-02-22 | Opera Software Asa | Method and device for event communication between documents |
US20070146812A1 (en) | 2005-12-02 | 2007-06-28 | Lawton Scott S | Reader editable advertising |
US8196205B2 (en) | 2006-01-23 | 2012-06-05 | University Of Washington Through Its Center For Commercialization | Detection of spyware threats within virtual machine |
US8156178B2 (en) | 2006-06-23 | 2012-04-10 | Rohit Chandra | Method and system for enhancing a home page |
WO2008021863A2 (en) | 2006-08-08 | 2008-02-21 | Wayport, Inc. | Automated acquisition and maintenance of web-servable content via enhanced '404: not found' handler |
US20090300528A1 (en) * | 2006-09-29 | 2009-12-03 | Stambaugh Thomas M | Browser event tracking for distributed web-based processing, spatial organization and display of information |
US7805406B2 (en) | 2006-10-27 | 2010-09-28 | Xystar Technologies, Inc. | Cross-population of virtual communities |
US8234392B2 (en) * | 2006-11-17 | 2012-07-31 | Apple Inc. | Methods and apparatuses for providing a hardware accelerated web engine |
GB0623912D0 (en) * | 2006-11-30 | 2007-01-10 | Bayne Duncan J | Improved electronic form software and brower programming methods |
US8140506B2 (en) | 2006-11-30 | 2012-03-20 | Red Hat, Inc. | File sharing based on social network |
US9842097B2 (en) * | 2007-01-30 | 2017-12-12 | Oracle International Corporation | Browser extension for web form fill |
WO2008100938A2 (en) * | 2007-02-13 | 2008-08-21 | Fortiusone, Inc. | A method and system for integrating a social network and data repository to enable map creation |
US7930286B2 (en) * | 2007-02-16 | 2011-04-19 | Yahoo! Inc. | Federated searches implemented across multiple search engines |
KR100873351B1 (en) * | 2007-02-27 | 2008-12-10 | 엔에이치엔(주) | advertisement system using mash-up map and method thereof |
US8583592B2 (en) * | 2007-03-30 | 2013-11-12 | Innography, Inc. | System and methods of searching data sources |
US8260687B2 (en) * | 2007-04-16 | 2012-09-04 | Ebay Inc. | Distributed commerce application-widget |
WO2008154042A1 (en) * | 2007-06-13 | 2008-12-18 | R-Web, Inc. | System and method for the generation, storage and navigation of contextually anchored links |
US8176431B1 (en) * | 2007-07-30 | 2012-05-08 | Sprint Communications Company L.P. | Overlay menus for web interaction |
US8667415B2 (en) | 2007-08-06 | 2014-03-04 | Apple Inc. | Web widgets |
AU2008286192B2 (en) * | 2007-08-06 | 2014-04-10 | Mls Technologies Pty Ltd | Method and/or system for searching network content |
US20090144264A1 (en) * | 2007-12-04 | 2009-06-04 | Vik Singh | Third-party information overlay on search results |
US20090235149A1 (en) | 2008-03-17 | 2009-09-17 | Robert Frohwein | Method and Apparatus to Operate Different Widgets From a Single Widget Controller |
US8341529B1 (en) | 2008-03-28 | 2012-12-25 | Amazon Technologies, Inc. | Dynamically modifying displayed information |
US20090265607A1 (en) * | 2008-04-17 | 2009-10-22 | Razoss Ltd. | Method, system and computer readable product for management, personalization and sharing of web content |
US8291475B2 (en) | 2008-04-30 | 2012-10-16 | Microsoft Corporation | Secure cross-domain communication for web mashups |
US8103743B2 (en) | 2008-06-18 | 2012-01-24 | Disney Enterprises, Inc. | Method and system for enabling client-side initiated delivery of dynamic secondary content |
US20100094755A1 (en) | 2008-10-09 | 2010-04-15 | Nelnet Business Solutions, Inc. | Providing payment data tokens for online transactions utilizing hosted inline frames |
US8321401B2 (en) | 2008-10-17 | 2012-11-27 | Echostar Advanced Technologies L.L.C. | User interface with available multimedia content from multiple multimedia websites |
US8788949B2 (en) | 2008-10-28 | 2014-07-22 | Google Inc. | Provisioning instant communications for a community of users |
US9064023B2 (en) * | 2008-12-29 | 2015-06-23 | Avaya Inc. | Providing web content in the context of a virtual environment |
US8706590B2 (en) | 2009-01-26 | 2014-04-22 | Bank Of America Corporation | Providing value exchange in connection with financial institution recommendations and offers |
US20100223126A1 (en) * | 2009-03-02 | 2010-09-02 | Tung Kevin W | Advertising system and method |
US20110071911A1 (en) * | 2009-03-02 | 2011-03-24 | Tung Kevin W | Advertising system and method |
JP5735480B2 (en) | 2009-03-20 | 2015-06-17 | アド−バンテージ ネットワークス,インコーポレイテッド | Method and system for searching, selecting and displaying content |
US9459936B2 (en) | 2009-05-01 | 2016-10-04 | Kaazing Corporation | Enterprise client-server system and methods of providing web application support through distributed emulation of websocket communications |
US20100313252A1 (en) | 2009-06-08 | 2010-12-09 | Erie Trouw | System, method and apparatus for creating and using a virtual layer within a web browsing environment |
US8396813B2 (en) | 2009-09-22 | 2013-03-12 | Xerox Corporation | Knowledge-based method for using social networking site content in variable data applications |
US9361631B2 (en) * | 2010-01-06 | 2016-06-07 | Ghostery, Inc. | Managing and monitoring digital advertising |
US8494901B2 (en) * | 2010-02-17 | 2013-07-23 | Ebay Inc. | Methods and systems for multi-merchant couponing |
US8832099B2 (en) | 2010-03-09 | 2014-09-09 | Yahoo! Inc. | User specific feed recommendations |
US8984409B2 (en) | 2010-03-12 | 2015-03-17 | Salesforce.Com, Inc. | Service cloud console |
US9224164B2 (en) * | 2010-03-24 | 2015-12-29 | Skimbit Ltd | Data processing system and method for providing a hyperlink to a lowest priced offering of a current item |
US20110307354A1 (en) | 2010-06-09 | 2011-12-15 | Bilgehan Erman | Method and apparatus for recommending applications to mobile users |
US10282744B2 (en) * | 2010-10-29 | 2019-05-07 | Excalibur Ip, Llc | Consumer group buying through online ads |
-
2009
- 2009-06-08 US US12/455,797 patent/US20100313252A1/en not_active Abandoned
-
2010
- 2010-12-03 US US12/960,340 patent/US9201672B1/en not_active Expired - Fee Related
-
2016
- 2016-03-02 US US15/058,495 patent/US20160180436A1/en not_active Abandoned
Cited By (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10304074B2 (en) | 2012-06-11 | 2019-05-28 | Retailmenot, Inc. | Devices, methods, and computer-readable media for redemption header for merchant offers |
US10586244B2 (en) * | 2012-06-11 | 2020-03-10 | Retailmenot, Inc. | Devices, methods, and computer-readable media for redemption header for merchant offers |
US10586243B2 (en) | 2012-06-11 | 2020-03-10 | Retailmenot, Inc. | Devices, methods, and computer-readable media for redemption header for merchant offers |
US10475071B2 (en) * | 2012-10-22 | 2019-11-12 | Marc Alan Mezzacca | System and method of automated delivery of relevance-checked benefit-conveying codes during online transaction |
US11625742B2 (en) | 2012-11-08 | 2023-04-11 | Paypal, Inc. | Systems and methods for interfacing with a website to modify content |
US10614476B2 (en) | 2012-11-08 | 2020-04-07 | Honey Science Llc | Systems and methods for interfacing with a website to modify content |
US10685368B1 (en) | 2012-11-08 | 2020-06-16 | Honey Science Llc | Systems and methods for interfacing with a website to modify content |
US10719843B2 (en) | 2012-11-08 | 2020-07-21 | Honey Science Llc | Systems and methods for interfacing with a website to modify content |
US10726437B2 (en) | 2012-11-08 | 2020-07-28 | Honey Science Llc | Systems and methods for interfacing with a website to modify content |
US11893595B2 (en) | 2012-11-08 | 2024-02-06 | Paypal, Inc. | Systems and methods for interfacing with a website to modify content |
US10679233B2 (en) | 2012-11-08 | 2020-06-09 | Honey Science Llc | Systems and methods for interfacing with a website to modify content |
US11288694B2 (en) * | 2013-11-08 | 2022-03-29 | Retailmenot, Inc. | Providing single-use offers |
US11941653B2 (en) * | 2019-04-17 | 2024-03-26 | Capital One Services, Llc | Methods and systems for testing and applying codes to electronic shopping carts |
US11961103B2 (en) * | 2019-08-26 | 2024-04-16 | Paypal, Inc. | Systems and methods for dynamically modifying content of a website |
US20230117634A1 (en) * | 2019-08-26 | 2023-04-20 | Paypal, Inc. | Systems And Methods For Dynamically Modifying Content Of A Website |
US10839453B1 (en) * | 2019-11-26 | 2020-11-17 | Capital One Services, Llc | Systems and methods for identifying location-based information associated with a product on a web page |
US12106361B2 (en) | 2019-11-26 | 2024-10-01 | Capital One Services, Llc | Systems and methods for identifying location-based information associated with a product on a web page |
US11354730B2 (en) | 2019-11-26 | 2022-06-07 | Capital One Services, Llc | Systems and methods for identifying location-based information associated with a product on a web page |
US20220292493A1 (en) * | 2020-04-29 | 2022-09-15 | Capital One Services, Llc | Enhancing Merchant Databases Using Crowdsourced Browser Data |
US11354655B2 (en) * | 2020-04-29 | 2022-06-07 | Capital One Services, Llc | Enhancing merchant databases using crowdsourced browser data |
US12002036B2 (en) * | 2020-04-29 | 2024-06-04 | Capital One Services, Llc | Enhancing merchant databases using crowdsourced browser data |
US11409829B2 (en) * | 2020-12-21 | 2022-08-09 | Capital One Services, Llc | Methods and systems for redirecting a user from a third party website to a provider website |
US11797633B2 (en) | 2020-12-21 | 2023-10-24 | Capital One Services, Llc | Methods and systems for redirecting a user from a third party website to a provider website |
Also Published As
Publication number | Publication date |
---|---|
US20100313252A1 (en) | 2010-12-09 |
US9201672B1 (en) | 2015-12-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20160180436A1 (en) | Method and system for identifying and displaying shopping deals | |
US10402883B2 (en) | System and method for community aided research and shopping | |
US9117232B2 (en) | Browser-based retrieval and display of content associated with a link that matches a link signature | |
US7975020B1 (en) | Dynamic updating of rendered web pages with supplemental content | |
US20160321737A1 (en) | Systems and methods for providing content provider-driven shopping | |
US20100281364A1 (en) | Apparatuses, Methods and Systems For Portable Universal Profile | |
US8473361B2 (en) | Method and system for assisting users during online | |
US20100293221A1 (en) | Apparatuses, Methods And Systems For Integrated, Information-Engineered And Self-Improving Advertising, E-Commerce And Online Customer Interactions | |
US9330200B2 (en) | System and method for presenting input suggestions in input fields of a specific type in web pages by replacing the input field with a combo box | |
WO2009137449A2 (en) | Network-based distribution of application products | |
WO2010036481A2 (en) | User interface for internet advertisement | |
US11430000B1 (en) | Online system with browser executable | |
CN114078042A (en) | Concurrent browsing interface with user attribute based recommendations | |
US9076169B2 (en) | Digital delivery system and method | |
US20230259692A1 (en) | Systems and methods for computer generation of a modifiable product description | |
US20190392018A1 (en) | Displaying Data Using Enhanced Functionality | |
US20030130897A1 (en) | System and method for automatic addition to online shopping carts | |
US20070276720A1 (en) | Indexing of a focused data set through a comparison technique method and apparatus | |
AU2022429520A1 (en) | Extracting webpage features using coded data packages for page heuristics | |
KR102234663B1 (en) | System and method for providing goods information related event | |
CN101268461A (en) | Method for transmitting information from an information server to a client | |
US20100257018A1 (en) | Enhanced search marketing | |
WO2000041520A2 (en) | System and method for computer-implemented consolidated mall shopping | |
US11551261B2 (en) | Methods and apparatus for electronically determining item advertisement recommendations | |
Nguyen | Building a software ecosystem for a start-up retail business |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |