Re: CFIdea: how to implement
Thats one of those snippets of code which although I have no need for it at the moment I just have to keep - at some point in the future I just know it's going to save me a couple of days headscratching. Thanks! On 8/22/06, Ben Nadel [EMAIL PROTECTED] wrote: I say go really really simple. At the bottom of the article page include some javascript like this: script type=text/javascript setTimeout( // Function to get called after 60 seconds. function(){ var imgRequest = new Image(); imgRequest.src = reward_user.cfm?id=#...#article_id=#...#key=#Hash( SESSION.CFID SESSION.CFTOKEN id article_id )# }, // Run after 60 seconds 60 * 1000 ); /script This would, after 60 seconds, create an image and then try to set it's source to a CFM page. This would in essence call that CFM page. The image would break (or you could return a gif based on CFContent). The reward_user.cfm page would reward the user based on the user id (id), the article id (article_id) and a key (the HASH value). The HASH value is meant to help stop anyone else from guessing a reward URL. Then on the reward_user.cfm page, you would want to make sure you never credited someone twice I suppose. ... Ben Nadel www.bennadel.com -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Sent: Monday, August 21, 2006 11:03 PM To: CF-Talk Subject: CFIdea: how to implement I have a CFidea and I wanted to seek advice on the best way to implement it. I'm concerned that this idea will be taxing on my shared web hosting server. After buildinig sites for employors and contracts, I've finally built a site for myself. My site is a news and downloadable magazine (which I sell for $9.95/yr) THE IDEA On my site(s), I posts related stories from within my industry. I want to reward my readers and build loyalty. I want to reward my readers for each story they read with X point(s). As long as they stay on the page for more than 10-15 (?) seconds they will be rewarded. I want to track this to avoid users from just clicking through stories to get points. Once they accumulate x number of points, they will receive one of the four issues for free. If they collect enough points, they can get an entire year for free and earn additional issues beyond their first year or give their points to friends or co-workers. When visitors reads stories from my site, my google ads are displayed which makes me money. I also want to convey to potential advertisers that our we reward our reader base. No other news site within this industry does this. THE CODE The reader signs up by providing only their e-mail address and confirm their e-mail address through an automated reply from my site with a confirmation link they must click on. As an option if they want to earn reward points, I ask them to sign in with just their e-mail address to initiate and track their points, then get the current time with #CreateODBCDateTime(now())# and store it as a session variable. When they click and go to another page on the site, even if it's not a story, capture the #CreateODBCDateTime(now())# again and compare the times and update their profile with X point(s) if the time difference meets my x seconds per page criteria. If someone just rapidly clicks from story to story to accumalate points, the points will not be counted. If they like the site and decide to become a loyal reader, then they will receive these additonal benefits and be rewarded for their loyalty. Thoughts on the coding approach? Thanks in advance. D- ~| Introducing the Fusion Authority Quarterly Update. 80 pages of hard-hitting, up-to-date ColdFusion information by your peers, delivered to your door four times a year. http://www.fusionauthority.com/quarterly Archive: http://www.houseoffusion.com/groups/CF-Talk/message.cfm/messageid:250694 Subscription: http://www.houseoffusion.com/groups/CF-Talk/subscribe.cfm Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4
Re: CFIdea: how to implement
What about if someone reads an artice, and then navigates to a different site? If they are not hitting another page of yours, then the points tracking wont work. You might want to concider and AJAX solution for this. On 8/22/06, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: I have a CFidea and I wanted to seek advice on the best way to implement it. I'm concerned that this idea will be taxing on my shared web hosting server. After buildinig sites for employors and contracts, I've finally built a site for myself. My site is a news and downloadable magazine (which I sell for $9.95/yr) THE IDEA On my site(s), I posts related stories from within my industry. I want to reward my readers and build loyalty. I want to reward my readers for each story they read with X point(s). As long as they stay on the page for more than 10-15 (?) seconds they will be rewarded. I want to track this to avoid users from just clicking through stories to get points. Once they accumulate x number of points, they will receive one of the four issues for free. If they collect enough points, they can get an entire year for free and earn additional issues beyond their first year or give their points to friends or co-workers. When visitors reads stories from my site, my google ads are displayed which makes me money. I also want to convey to potential advertisers that our we reward our reader base. No other news site within this industry does this. THE CODE The reader signs up by providing only their e-mail address and confirm their e-mail address through an automated reply from my site with a confirmation link they must click on. As an option if they want to earn reward points, I ask them to sign in with just their e-mail address to initiate and track their points, then get the current time with #CreateODBCDateTime(now())# and store it as a session variable. When they click and go to another page on the site, even if it's not a story, capture the #CreateODBCDateTime(now())# again and compare the times and update their profile with X point(s) if the time difference meets my x seconds per page criteria. If someone just rapidly clicks from story to story to accumalate points, the points will not be counted. If they like the site and decide to become a loyal reader, then they will receive these additonal benefits and be rewarded for their loyalty. Thoughts on the coding approach? Thanks in advance. D- ~| Introducing the Fusion Authority Quarterly Update. 80 pages of hard-hitting, up-to-date ColdFusion information by your peers, delivered to your door four times a year. http://www.fusionauthority.com/quarterly Archive: http://www.houseoffusion.com/groups/CF-Talk/message.cfm/messageid:250558 Subscription: http://www.houseoffusion.com/groups/CF-Talk/subscribe.cfm Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4
RE: CFIdea: how to implement
Thank Rob :) ... Ben Nadel www.bennadel.com -Original Message- From: Robert Feyerherm [mailto:[EMAIL PROTECTED] Sent: Tuesday, August 22, 2006 8:38 AM To: CF-Talk Subject: RE: CFIdea: how to implement I think Ben's idea is great. I also think it might be cool if when you did return that page you returned a gif or jpeg graphic that was like a smiley face and some text that said, X Points Awarded or something like that. -Robert -Original Message- From: Ben Nadel [mailto:[EMAIL PROTECTED] Sent: Tuesday, August 22, 2006 7:31 AM To: CF-Talk Subject: RE: CFIdea: how to implement I say go really really simple. At the bottom of the article page include some javascript like this: script type=text/javascript setTimeout( // Function to get called after 60 seconds. function(){ var imgRequest = new Image(); imgRequest.src = reward_user.cfm?id=#...#article_id=#...#key=#Hash( SESSION.CFID SESSION.CFTOKEN id article_id )# }, // Run after 60 seconds 60 * 1000 ); /script This would, after 60 seconds, create an image and then try to set it's source to a CFM page. This would in essence call that CFM page. The image would break (or you could return a gif based on CFContent). The reward_user.cfm page would reward the user based on the user id (id), the article id (article_id) and a key (the HASH value). The HASH value is meant to help stop anyone else from guessing a reward URL. Then on the reward_user.cfm page, you would want to make sure you never credited someone twice I suppose. . Ben Nadel www.bennadel.com -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Sent: Monday, August 21, 2006 11:03 PM To: CF-Talk Subject: CFIdea: how to implement I have a CFidea and I wanted to seek advice on the best way to implement it. I'm concerned that this idea will be taxing on my shared web hosting server. After buildinig sites for employors and contracts, I've finally built a site for myself. My site is a news and downloadable magazine (which I sell for $9.95/yr) THE IDEA On my site(s), I posts related stories from within my industry. I want to reward my readers and build loyalty. I want to reward my readers for each story they read with X point(s). As long as they stay on the page for more than 10-15 (?) seconds they will be rewarded. I want to track this to avoid users from just clicking through stories to get points. Once they accumulate x number of points, they will receive one of the four issues for free. If they collect enough points, they can get an entire year for free and earn additional issues beyond their first year or give their points to friends or co-workers. When visitors reads stories from my site, my google ads are displayed which makes me money. I also want to convey to potential advertisers that our we reward our reader base. No other news site within this industry does this. THE CODE The reader signs up by providing only their e-mail address and confirm their e-mail address through an automated reply from my site with a confirmation link they must click on. As an option if they want to earn reward points, I ask them to sign in with just their e-mail address to initiate and track their points, then get the current time with #CreateODBCDateTime(now())# and store it as a session variable. When they click and go to another page on the site, even if it's not a story, capture the #CreateODBCDateTime(now())# again and compare the times and update their profile with X point(s) if the time difference meets my x seconds per page criteria. If someone just rapidly clicks from story to story to accumalate points, the points will not be counted. If they like the site and decide to become a loyal reader, then they will receive these additonal benefits and be rewarded for their loyalty. Thoughts on the coding approach? Thanks in advance. D- ~| Introducing the Fusion Authority Quarterly Update. 80 pages of hard-hitting, up-to-date ColdFusion information by your peers, delivered to your door four times a year. http://www.fusionauthority.com/quarterly Archive: http://www.houseoffusion.com/groups/CF-Talk/message.cfm/messageid:250589 Subscription: http://www.houseoffusion.com/groups/CF-Talk/subscribe.cfm Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=11502.10531.4
RE: CFIdea: how to implement
I think some of the responses you've already received have been good, but I keep thinking of ways this system could be easily tricked. I think you'd have to get into some complex captcha code, not the image stuff, but the stuff I've read about that tracks mouse/keyboard movement to make sure a human is viewing your page. This would stop bots from tricking your tracking systems (simple browser automators would break it), and it would also stop the problems you already mentioned. However, I have no idea of such code already exists online or not, and even these captcha techniques could be tricked with enough effort. That said, you are going to stop the 'casual surfer' who is not a hacker/geek destructo prankster type with the simple methods mentioned here. Slightly off topic, I realize that you've got an original sounding idea here, but I'm having trouble seeing how advertisers would find this valuable. The only thing they care about is their ads on your pages. --- This transmission may contain information that is privileged, confidential and/or exempt from disclosure under applicable law. If you are not the intended recipient, you are hereby notified that any disclosure, copying, distribution, or use of the information contained herein (including any reliance thereon) is STRICTLY PROHIBITED. If you received this transmission in error, please immediately contact the sender and destroy the material in its entirety, whether in electronic or hard copy format. Thank you. A1. ~| Introducing the Fusion Authority Quarterly Update. 80 pages of hard-hitting, up-to-date ColdFusion information by your peers, delivered to your door four times a year. http://www.fusionauthority.com/quarterly Archive: http://www.houseoffusion.com/groups/CF-Talk/message.cfm/messageid:250677 Subscription: http://www.houseoffusion.com/groups/CF-Talk/subscribe.cfm Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4
Re: CFIdea: how to implement
I had to reply and say a special thank you to Mr. Ben Nadel. I tried your script and included a simple cfmail to test it's functionality and it worked awesome! This is exactly what I was looking for. Thank you for sharing. D- I say go really really simple. At the bottom of the article page include some javascript like this: script type=text/javascript setTimeout( // Function to get called after 60 seconds. function(){ var imgRequest = new Image(); imgRequest.src = reward_user.cfm?id=#...#article_id=#...#key=#Hash( SESSION.CFID SESSION.CFTOKEN id article_id )# }, // Run after 60 seconds 60 * 1000 ); /script This would, after 60 seconds, create an image and then try to set it's source to a CFM page. This would in essence call that CFM page. The image would break (or you could return a gif based on CFContent). The reward_user.cfm page would reward the user based on the user id (id), the article id (article_id) and a key (the HASH value). The HASH value is meant to help stop anyone else from guessing a reward URL. Then on the reward_user.cfm page, you would want to make sure you never credited someone twice I suppose. .. Ben Nadel www.bennadel.com ~| Introducing the Fusion Authority Quarterly Update. 80 pages of hard-hitting, up-to-date ColdFusion information by your peers, delivered to your door four times a year. http://www.fusionauthority.com/quarterly Archive: http://www.houseoffusion.com/groups/CF-Talk/message.cfm/messageid:250689 Subscription: http://www.houseoffusion.com/groups/CF-Talk/subscribe.cfm Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4
Re: CFIdea: how to implement
Just as an aside, #CreateODBCDateTime(now())# is redundant - now() is already a datetime object that can be used in date/time comparison functions. On 8/22/06, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: As an option if they want to earn reward points, I ask them to sign in with just their e-mail address to initiate and track their points, then get the current time with #CreateODBCDateTime(now())# and store it as a session variable. -- CFAJAX docs and other useful articles: http://www.bifrost.com.au/blog/ ~| Introducing the Fusion Authority Quarterly Update. 80 pages of hard-hitting, up-to-date ColdFusion information by your peers, delivered to your door four times a year. http://www.fusionauthority.com/quarterly Archive: http://www.houseoffusion.com/groups/CF-Talk/message.cfm/messageid:250557 Subscription: http://www.houseoffusion.com/groups/CF-Talk/subscribe.cfm Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4