?
Solved

Add an alert banner to a SharePoint site

Posted on 2011-09-12
10
Medium Priority
?
1,287 Views
Last Modified: 2012-05-12
I have a task to add an alert banner to a SharePoint 2007 site that would prompt a user to accept a disclaimer before they are allowed into a site. What would be the best way to accomplish this?
0
Comment
Question by:Tec-Futures
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 5
  • 4
10 Comments
 
LVL 3

Expert Comment

by:dyuburg
ID: 36522625
0
 
LVL 9

Expert Comment

by:Tehzar
ID: 36522763
Hi Lanzowallace,

This solution is based on Content Editor Web part, it wors for both versions of SharePoint:

http://phase2.com/blog/?p=1242
0
 
LVL 1

Author Comment

by:Tec-Futures
ID: 36524184
The phase2 examples does not work. The logic is what I am looking for but the code is buggy and does not work. Were you able to make it work?
0
Efficient way to get backups off site to Azure

This user guide provides instructions on how to deploy and configure both a StoneFly Scale Out NAS Enterprise Cloud Drive virtual machine and Veeam Cloud Connect in the Microsoft Azure Cloud.

 
LVL 9

Expert Comment

by:Tehzar
ID: 36524205
It did work for me, let me find it and i'll post it for you.
0
 
LVL 1

Author Comment

by:Tec-Futures
ID: 36529553
Tehzar ,
Were you able to find your working code?
0
 
LVL 9

Accepted Solution

by:
Tehzar earned 2000 total points
ID: 36529944
Be sure to delete your browser cache and close the browser/reopen it.  

Also, sometimes when you copy paste code in, it reformats the apostrophes into quotes (so be sure to check that)
<script type=”text/javascript” language=”javascript”>

var agreement = GetCookie();

//checks for cookie and displays disclaimer alert if new user

if(agreement==''){

var decision = confirm('DISCLAIMER or Message GOES HERE');

if(decision == true){

//writes a cookie

var expiredays = 365;

var exdate=new Date()

exdate.setDate(exdate.getDate()+expiredays)

document.cookie='cookiename'+ '=' +escape('Agree To Disclaimer')+

((expiredays==null) ? '' : '; expires='+exdate.toGMTString())

}

else{

location.href='/_layouts/SignOut.aspx';

}

}

//gets the Cookie if it exists

function GetCookie(){

if (document.cookie.length>0){

c_name = 'cookiename';

c_start=document.cookie.indexOf(c_name + '=')

if (c_start!=-1)

{

c_start=c_start + c_name.length+1

c_end=document.cookie.indexOf(';',c_start)

if (c_end==-1) c_end=document.cookie.length

return agreement = unescape(document.cookie.substring(c_start,c_end))

}

}

return '';

}

</script>

Open in new window

0
 
LVL 1

Author Comment

by:Tec-Futures
ID: 36545200
Tehzar,
The code you provided works perfectly. The only piece left is how to make the cookie expire after the browser close. The current expiration is set for 365. After reading a few blogs I found a few entries that said leave the expire date blank and it will expire when the browser is closed.

When I tried to mod the code to leave expire date blank it does not create a cookie for the current session. I would like the cookie to exist only for the current session and any pages accessed during that session.  Currently the popup keep repeating every time I leave the homepage and come back within the active session. The cookie should be good for the active session only and re-prompt the user to accept the disclaimer when he or she returns to the page.

Thank you for your response.
0
 
LVL 9

Expert Comment

by:Tehzar
ID: 36545690
try setting the expiration to -1

Please let me know if this works out, if not, I'll rework it tonight.  HTH!

Cheers,

ZaR
0
 
LVL 1

Author Comment

by:Tec-Futures
ID: 36548218
Tehzar:,
No -1 did not work. the cookie is not generated.
0
 
LVL 1

Author Comment

by:Tec-Futures
ID: 36548524
Tehzar,
I just tried removing = 365 and left var expiredays ; and it seems to be working fine. I will post it today and let you know if the code works.
0

Featured Post

Concerto Cloud for Software Providers & ISVs

Can Concerto Cloud Services help you focus on evolving your application offerings, while delivering the best cloud experience to your customers? From DevOps to revenue models and customer support, the answer is yes!

Learn how Concerto can help you.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Note:  There are two main ways to deploy InfoPath forms:  Server-side and directly through the SharePoint site.  Deploying a server-side InfoPath form means the form is approved by the Administrator, thus allowing greater functionality in the form. …
I thought I'd write this up for anyone who has a request to create an anonymous whistle-blower-type submission form created using SharePoint 2010 (this would probably work the same for 2013). It's not 100% fool-proof but it's as close as you can get…
In this brief tutorial Pawel from AdRem Software explains how you can quickly find out which services are running on your network, or what are the IP addresses of servers responsible for each service. Software used is freeware NetCrunch Tools (https…
Do you want to know how to make a graph with Microsoft Access? First, create a query with the data for the chart. Then make a blank form and add a chart control. This video also shows how to change what data is displayed on the graph as well as form…

719 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question