根据用户组重定向页面

时间:2013-01-24 10:22:08

标签: redirect sharepoint-2010

我知道,当我点击我的SharePoint网站上的图标时,它会将人们重定向到与其用户组链接的页面。问题是我不知道该怎么做。我找到了一个这样做的Web应用程序,但它似乎不想工作。

任何其他解决方案,如果代码可以请您提供代码示例,以便我知道该怎么做:)谢谢

  

更新

<style type="text/css"> .redirect {     TEXT-ALIGN: center;
 PADDING-BOTTOM: 100px; PADDING-LEFT: 300px; PADDING-RIGHT: 300px;
 FONT-WEIGHT: 900; PADDING-TOP: 100px }</style><script
 type="text/javascript">

 var
URL="URL HERE",timer=0,current="none",popup="",msg="",img="";
if (popup) alert(popup); 
var d=new
 Date(),a=document.getElementById("aspnetForm"),b=document.getElementsByTagName("body")[0],c=document.createElement("div"),i=document.createElement("img"),t=document.createElement("div");
a.style.display=current;c.className="redirect";i.src=img;c.appendChild(i);c.appendChild(t);b.insertBefore(c,a);
 function wait(){var tleft=Math.round(timer-(new
Date())/1000+d/1000);if (tleft>0) {t.innerHTML="<p>"+msg+"</p><p>Wait
for "+tleft+" second(s) or <a href='"+URL+"'>click here</a> to be
redirected.</p>";setTimeout("wait()",1000);}else
{t.innerHTML="<p>Redirecting</p>";window.location.href=URL;}}
wait();</script>

以上代码在内容编辑器webpart中工作,因为它将所有用户重定向到页面,但有没有办法可以使用此代码来说明if(user.group =“Spain”)然后重定向?

1 个答案:

答案 0 :(得分:0)

实现这一目标的小例子

public bool IsUserInGroup(SPWeb web, SPUser user, string groupName)
{
    try
    {
        SPGroup group = web.Groups[groupName];    
        return IsUserInGroup(user, group);
    }   
    catch
    {
        return false;
    }

}

public bool IsUserInGroup(SPUser user, SPGroup group)
{
    return user.Groups.Cast<SPGroup>().Any(g => g.ID == group.ID);
}

//Redirect for example:
SPUser user = web.CurrentUser;
bool isInGroup = IsUserInGroup(web, user, "My Custom group");
if(isInGroup)
{
    Response.Redirect("some url");
}

希望它会有所帮助