A_tom Posted March 15, 2015 Share Posted March 15, 2015 I need to create disclaimer message which will require the user to click on a button to gain access to a specific web page. Please point me in the general direction of how to do this. Link to comment Share on other sites More sharing options...
Ingolme Posted March 15, 2015 Share Posted March 15, 2015 You can either use Javascript or PHP. If you haven't learned any of them, check the W3Schools tutorials. Link to comment Share on other sites More sharing options...
A_tom Posted March 15, 2015 Author Share Posted March 15, 2015 You can either use Javascript or PHP. If you haven't learned any of them, check the W3Schools tutorials. I am somewhat familiar and when given some example code, I can usually adapt it to my needs. I'm just looking for an example of how to do it.The disclaimer I want people to have to see is about 250 words, so I need something that looks more like a web page than just a simple text box with a button. Link to comment Share on other sites More sharing options...
justsomeguy Posted March 16, 2015 Share Posted March 16, 2015 The question isn't how you want it to look, it's how you want it to act. Do you only want it to appear once for a particular user, or every time? If it appears every time then it's just a regular web page, maybe with a Javascript overlay to show the disclaimer over the actual page content. If you only want it to appear once then you can use cookies to keep track of the last time that computer was shown the disclaimer. Link to comment Share on other sites More sharing options...
A_tom Posted March 16, 2015 Author Share Posted March 16, 2015 The question isn't how you want it to look, it's how you want it to act. Do you only want it to appear once for a particular user, or every time? If it appears every time then it's just a regular web page, maybe with a Javascript overlay to show the disclaimer over the actual page content. If you only want it to appear once then you can use cookies to keep track of the last time that computer was shown the disclaimer. I think the best would be to have the user only have to acknowledge the disclaimer once. I am sure there are examples of this here and other places, but in searching, I have been unable find what I'm looking for. Link to comment Share on other sites More sharing options...
justsomeguy Posted March 16, 2015 Share Posted March 16, 2015 You need to use a cookie then, so you'll want to look up using a cookie to only show a certain thing once for a particular user. Link to comment Share on other sites More sharing options...
A_tom Posted March 17, 2015 Author Share Posted March 17, 2015 (edited) I found this code which would appear to do what I want, except (in my browser, at least) the disclaimer page is blocked by my adblocker. How does one avoid this? The other problem is that the popup blocker can completely defeat the purpose of the cookie code? How does one get around that? <script>function getCookie(NameOfCookie){ if (document.cookie.length > 0) { begin = document.cookie.indexOf(NameOfCookie+"="); if (begin != -1) { begin += NameOfCookie.length+1; end = document.cookie.indexOf(";", begin); if (end == -1) end = document.cookie.length; return unescape(document.cookie.substring(begin, end)); } } return null;}function setCookie(NameOfCookie, value, expiredays) {var ExpireDate = new Date ();ExpireDate.setTime(ExpireDate.getTime() + (360)); document.cookie = NameOfCookie + "=" + escape(value) + ((expiredays == null) ? "" : "; expires=" + ExpireDate.toGMTString());}function delCookie (NameOfCookie) { if (getCookie(NameOfCookie)) { document.cookie = NameOfCookie + "=" + "; expires=Thu, 01-Jan-70 00:00:01 GMT"; }}function DoTheCookieStuff(){ visited=getCookie('visited'); if (visited==null) {setCookie('visited','yes',365)MyWindow=window.open('Disclaimer.html'); }}</script> Edited March 17, 2015 by A_tom Link to comment Share on other sites More sharing options...
justsomeguy Posted March 17, 2015 Share Posted March 17, 2015 Popup blockers exist to block calls to window.open that weren't initiated by something like the user clicking. You won't be able to use that. You could redirect the user, or the more modern way to do it would be to show the disclaimer in something like a lightbox that would just overlay on top of the rest of the page. There are several Javascript lightbox libraries out there to do the heavy lifting for that. Link to comment Share on other sites More sharing options...
A_tom Posted March 19, 2015 Author Share Posted March 19, 2015 I have been experimenting with a lightbox and it works well enough. http://www.siftradingsystems.com/P15C2.html However, I need to turn this off for some period of time some the user is not repeatedly confronted with the disclaimer. For this I would seem to need to use a cookie, but I cannot get the jquery.cookie plugin to do anything. Here is some test code I've been working with. Any reference at all to $.cookie causes nothing to happen. <!doctype html><html><head><meta charset="utf-8"><title>Lightbox 2</title><meta name="description" lang="en" content="testing" /><meta name="author" content="Lokesh Dhakar"><meta name="viewport" content="width=device-width"><link rel="shortcut icon" type="image/ico" href="images/favicon.gif" /> <link rel="stylesheet" href="css/screen.css" type="text/css" media="screen" /><link rel="stylesheet" href="css/lightbox.css" type="text/css" media="screen" /><script src="http://code.jquery.com/jquery-latest.js"></script> <script src="/js/jquery.cookie.js"></script> <script src="/js/lightbox.js"></script><script>if(typeof $.cookie('Cookie1') === 'undefined'){//if (1 == 1){ //no cookie $('document').ready(function(){$('#ele_id').trigger('click');var date = new Date();date.setTime(date.getTime() + (5 * 1 * 1000));$.cookie('Cookie1', 'Kooky'{ expires: date }); });} //} else {// have cookie, do nothing// alert($.cookie('Cookie1'));//}</script></head><body><a id ="ele_id" href="img/Disclaimer.png" rel="lightbox" data-title="Disclaimer"></a><p>This is a test page.</p></body></html> Link to comment Share on other sites More sharing options...
A_tom Posted March 19, 2015 Author Share Posted March 19, 2015 After much frustration, I have finally wandered into something that looks like what I wanted. http://www.siftradingsystems.com/P15C3.html Let me just say that cookies are not a piece of cake... Link to comment Share on other sites More sharing options...
thescientist Posted March 19, 2015 Share Posted March 19, 2015 It looks like you were missing a comma here $.cookie('Cookie1', 'Kooky'{ expires: date }); And I'm not sure why you were checking for typeof, it should just be sufficient to pass the cookie name if ($.cookie('Cookie1')) { //cookie exists} else { //cookie doesn't exist}; here are the docs https://github.com/carhartl/jquery-cookie/tree/v1.4.1 Regarding references to $.cookie not doing anything, where you checking for errors in the console? What happens if you logged $.cookie? Are you sure the file was being loaded correctly? Link to comment Share on other sites More sharing options...
A_tom Posted March 20, 2015 Author Share Posted March 20, 2015 (edited) It looks like you were missing a comma here $.cookie('Cookie1', 'Kooky'{ expires: date }); And I'm not sure why you were checking for typeof, it should just be sufficient to pass the cookie name if ($.cookie('Cookie1')) { //cookie exists} else { //cookie doesn't exist}; here are the docs https://github.com/carhartl/jquery-cookie/tree/v1.4.1 Regarding references to $.cookie not doing anything, where you checking for errors in the console? What happens if you logged $.cookie? Are you sure the file was being loaded correctly? Thanks for your comments. I will try using jquery again and come back if I can't get it to work. Where was the comma supposed to be? Nevermind, I finally got it to work. Here is my test page: http://www.siftradingsystems.com/LightBoxTest.html Edited March 20, 2015 by A_tom Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now