Solved

Add an alert banner to a SharePoint site

Posted on 2011-09-12
10
1,085 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
  • 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
 
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
Backup Your Microsoft Windows Server®

Backup all your Microsoft Windows Server – on-premises, in remote locations, in private and hybrid clouds. Your entire Windows Server will be backed up in one easy step with patented, block-level disk imaging. We achieve RTOs (recovery time objectives) as low as 15 seconds.

 
LVL 9

Accepted Solution

by:
Tehzar earned 500 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

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

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

I have just recently built a new SharePoint 2007 farm on a complete Windows 2008 R2 server platform and part of my standard build procedure is to implement a warm up routine, usually in the form of a script that is scheduled every morning to launch …
I recently came across an issue with a MOSS 2007 deployment where access into some sub-sites were denied, even for the MOSS farm administrators. A bit of background to the setup of this MOSS farm; this was a three server setup, consisting of a fr…
This is a video that shows how the OnPage alerts system integrates into ConnectWise, how a trigger is set, how a page is sent via the trigger, and how the SENT, DELIVERED, READ & REPLIED receipts get entered into the internal tab of the ConnectWise …
With Secure Portal Encryption, the recipient is sent a link to their email address directing them to the email laundry delivery page. From there, the recipient will be required to enter a user name and password to enter the page. Once the recipient …

932 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

Need Help in Real-Time?

Connect with top rated Experts

17 Experts available now in Live!

Get 1:1 Help Now