<%@ include file="/portal/include/include_java.jsp" %>
<script type="text/javascript">importStyleSheetWithSkin('/personalization/css/personalization.css');</script>
<fmt:setBundle basename="text.jsp.personalization.groupdetail"/>
<meta name="navMenu" content="peopleNav" />
<meta name="navButton" content="people" />

<c:set var="process" scope="page" value="${process_details}"/>
<c:set var="canSeeMembers" value="${groupaction_13 == true}" />
<c:set var="canEditMembers" value="${groupaction_6 == true}" />
<c:set var="canAddMembers" value="${groupaction_5 == true}" />
<c:set var="canSeeRules" value="${groupaction_14 == true}" />
<c:set var="canSeeAttributes" value="${groupaction_12 == true}" />
<c:set var="canEditAttributes" value="${groupaction_4 == true}" />
<b:define id="gstid" name='groupdetail' property='gstid'/>
<b:define id="gid" name='groupdetail' property='gid'/>
<c:set var="showHeader" value="${param.$e != 'detailPane'}" />
<c:set var="targetContainer"><c:choose><c:when test="${showHeader}">environmentContent</c:when>
<c:otherwise>detailPane</c:otherwise></c:choose></c:set>

<c:if test="${showHeader}">
  <div class="asiPortalPageHeader"><h1>
    <p:img page="/portal/img/groups.gif" altKey="GroupDetail" /><c:out value="${groupdetail.gn}"/>
  </h1></div>
</c:if>
<div class="asiToolbar"/>
    <asi:link href="/personalization/grouppage.do?groupid=${gid}" title='Homepage'><p:img page="/components/toolbar/img/new.gif" altKey="Homepage" />&nbsp;<fmt:message key="Homepage"/></asi:link>    
    <l:present name="groupdetail" property="gstid">
      <l:equal name="groupdetail" property="gstid" value="2"><!--public-->
        <l:present name="groupdetail" property="gmpid">
          <l:equal name="groupdetail" property="gmpid" value="1"><!--exclusive-->
            <l:present name="ismemofgroup">
              <c:if test="${ismemofgroup == false}">
                <a onclick="joinExclusive(); return false;" href="#" title='<fmt:message key="RequestToJoinThisGro"/>'><p:img page="/components/toolbar/img/assign.gif" altKey="JoinThisGroup" />&nbsp;<fmt:message key="Join"/></a>
              </c:if>
            </l:present>
          </l:equal>
        </l:present>
      </l:equal>
    </l:present>
    <l:present name="groupdetail" property="gstid">
      <l:equal name="groupdetail" property="gstid" value="2"><!--public-->
        <l:present name="groupdetail" property="gmpid">
          <l:equal name="groupdetail" property="gmpid" value="0"><!--auto-->
            <l:present name="ismemofgroup"><%/*<l:present name="ismemofgroupbyrule">*/%>
              <l:equal name="ismemofgroup" value="false">
                <a onclick="join(); return false" href="#"  title='<fmt:message key="MakeYourselfAMemberO"/>'><p:img page="/components/toolbar/img/assign.gif" altKey="JoinThisGroup" />&nbsp;<fmt:message key="Join"/></a>
              </l:equal>
              <l:equal name="ismemofgroup" value="true"><%/*<l:equal name="ismemofgroupbyrule" value="false">*/%>  
                <c:set var="confirmAdd">
                  asi.confirm('<fmt:message key="IfYouWereAddedToThis"/>',remove)
                </c:set>
                <asi:link href="#" onclick="${confirmAdd}" title="CancelYourMembership"><p:img page="/components/toolbar/img/delete_toolbar.gif" altKey="RemoveMyMembership" />&nbsp;<fmt:message key="RemoveMyMembership"/></asi:link>
              </l:equal><%/*</l:equal>*/%>
            </l:present><%/*</l:present>*/%>
          </l:equal>
        </l:present>
      </l:equal>
    </l:present>
    <l:present name="groupaction_12">
      <l:equal name="groupaction_12" value="true">
    <l:present name="groupaction_4">
      <l:equal name="groupaction_4" value="true"> <%// Can edit attributes %>
        <c:if test="${!empty groupdetail.gatt}">
          <asi:link href="/personalization/groupattributes.do?gid=${gid}" title="SeeAndDefineBitsOfIn" containerId="${targetContainer}"><p:img page="/components/toolbar/img/edit.gif" altKey="VieweditAttributes" />&nbsp;<fmt:message key="Attributes"/></asi:link>
        </c:if>
      </l:equal>
      <l:equal name="groupaction_4" value="false"> <%// Cannot edit attributes %>
        <c:if test="${!empty groupdetail.gatt}">
          <asi:link href="/personalization/viewgroupattributes.do?gid=${gid}" title="SeeBitsOfInformation" containerId="${targetContainer}"><p:img page="/components/toolbar/img/preview.gif" altKey="ViewAttributes"/>&nbsp;<fmt:message key="ViewAttributes"/></asi:link>
        </c:if>
      </l:equal>
    </l:present>
      </l:equal>
    </l:present>
    <l:present name="groupdetail" property="gmpid">
      <l:notEqual name="groupdetail" property="gmpid" value="2">
        <l:present name="groupaction_5">
          <l:equal name="groupaction_5" value="true">  
            <asi:link href="#" onclick="groupdetailPicker.changePickerType('people'); groupdetailPicker.pick(); return false;" title="SendNotificationsToU"><p:img page="/components/toolbar/img/invite.gif" altKey="InvitePeople" />&nbsp;<fmt:message key="InvitePeople"/></asi:link>
          </l:equal>
        </l:present>
      </l:notEqual>
    </l:present>
    <l:present name="groupaction_0">
      <l:present name="issysgroup">
        <l:equal name="issysgroup" value="false">
          <l:equal name="groupaction_0" value="true">
            <c:set var="AreYouSureYouWantToD"><fmt:message key="AreYouSureYouWantToD"/></c:set>
            <asi:link href="#" onclick="asi.confirm('${AreYouSureYouWantToD}',deleteGroup)" title="DeleteThisGroup"><p:img page="/components/toolbar/img/delete_toolbar.gif" altKey="DeleteThisGroup" />&nbsp;<fmt:message key="Delete"/></asi:link>
          </l:equal>
        </l:equal>
      </l:present>
    </l:present>
    
    <span id="toolbarFavoritesLinks">
      <a action="add" href="#" title="<c:out value="${AddToFavorites}"/>"><p:img page="/components/toolbar/img/add.gif" altKey="AddToFavorites" />&nbsp;<fmt:message key="AddToFavorites"/></a>
      <a action="remove" href="#" title="<c:out value="${RemoveFromFavorites}"/>"><p:img page="/components/toolbar/img/delete_toolbar.gif" altKey="RemoveFromFavorites" />&nbsp;<fmt:message key="RemoveFromFavorites"/></a>
    </span>
  </div>

  <div id="detailPageFull">
    <div class="itemHeader">
      <div class="header"><p:img page="/components/toolbar/img/group.gif" /><c:out value="${groupdetail.gn}" /></div>
      <div class="metadata unlabeled">
        <fmt:message key="MetadataTxt">
          <fmt:param><asi:link href="/personalization/grouptypedetail.do?gtn=${groupdetail.gtn}&gtid=${groupdetail.gtid}" containerId="${targetContainer}"><b:write name="groupdetail" property="gtn"/></asi:link></fmt:param>
          <fmt:param><asi:link href="#" onclick="doUserDetail('${groupdetail.gcn}');"> <c:out value="${groupdetail.gcn}" /></asi:link></fmt:param>
          <fmt:param><asi:formatDate value="${groupdetail.tsc}" dateStyle="short" /></fmt:param>
        </fmt:message>
        <br />
        <strong><fmt:message key="Description"/> </strong>
        <asi:truncate length="35"><c:out value="${groupdetail.gdesc}"/></asi:truncate><br />
        <c:if test="${groupaction_13}">
          <strong><fmt:message key="Members"/> </strong>
          <fmt:message key="UsersAndGroups">
            <fmt:param><c:out value="${mufa}"/></fmt:param>
            <fmt:param><c:out value="${mgfa}"/></fmt:param>
          </fmt:message>
        </c:if>
      </div>
    </div>

    <ul class="asiFlatTabs" id="groupDetailTabs"><% /* Tabs */ %>
      <c:if test="${canSeeMembers}">
        <li id="groupMembersTab" onclick="asi.selectTab(this,'groupMembers')"><a onclick="return false;" ><fmt:message key="Members"/></a></li>
        <li id="groupAdminsTab" onclick="asi.selectTab(this,'groupAdmins')"><a onclick="return false;"><fmt:message key="Administrators"/></a></li>
      </c:if>
      <li id="groupPropertiesTab" onclick="asi.selectTab(this,'groupProperties')"><a onclick="return false;" ><fmt:message key="Properties"/></a></li>
      <c:if test="${canSeeRules}">
        <li id="groupRulesTab" onclick='asi.selectTab(this,"groupRules"); window.groupDetail.backgroundPageAddRule();'><a  onclick="return false;" ><fmt:message key="Rules"/></a></li>
      </c:if>
    </ul><% /* End tabs */ %>
    <div><%/* Tab container */%>
      <c:if test="${canSeeMembers}">
        <div id="groupMembers">
          <c:choose>
          <c:when test="${canEditMembers}" ><c:import url="/personalization/getgroupmembers.do?e=1&gid=${gid}" charEncoding="UTF-8" /></c:when>
          <c:otherwise><c:import url="/personalization/getgroupmembers.do?gid=${gid}" charEncoding="UTF-8" /></c:otherwise>
          </c:choose>
        </div>
        <div id="groupAdmins">
          <c:choose>
          <c:when test="${canEditMembers}" ><c:import url="/personalization/removegroupadminsprepare.do?e=1&gid=${gid}" charEncoding="UTF-8" /></c:when>
          <c:otherwise><c:import url="/personalization/removegroupadminsprepare.do?gid=${gid}" charEncoding="UTF-8" /></c:otherwise>
          </c:choose>
        </div>
      </c:if>
      <div id="groupProperties" class="groupDetailTabContent">
        <%@ include file="/personalization/details/groupProperties.jsp" %>
      </div> 
      <c:if test="${canSeeRules}">
        <div id="groupRules" class="groupDetailTabContent"></div>
      </c:if>
    </div><% /* End tab container */ %>
  </div>
<c:if test="${!showHeader}"></div></c:if>

<script type="text/javascript">
  var groupName = '<asi:out value="${groupdetail.gn}" encoding="js"/>';
  <c:if test="${showHeader}">
    Navigation.setBreadcrumb(StringSecurityUtils.unencodeHtml(window.currentNavCategory), groupName);
  </c:if>

  var tabName = 'groupMembersTab';<% /* default tab */ %>
    <c:if test="${!empty param.tab}">tabName = '<asi:out value="${param.tab}" encoding="js"/>';</c:if><% /* overriding tab parameter */ %>
    <c:if test="${!empty tab}">tabName = '<asi:out value="${tab}" encoding="js"/>';</c:if><% /* overriding tab parameter */ %>
  var tab = getObject(tabName);
  if (tab) {
    tab.onclick();
  } else {
    getNodeElements(getObject('groupPropertiesTab').childNodes)[0].onclick();  <% /* failover (tab is not visible due to permissions) */ %>
  }

  var groupdetailPicker = new Picker3('groupdetailPicker');
  groupdetailPicker.onpickCallback = function () {
    var URL = "/personalization/inviteusers.bg?$replace=false";
    if (this.pickerType == 'groups') {
      URL = "/personalization/invitegroups.bg?$replace=false";
    }
    var pickedItems = this.getDescriptorsArray();
    for (var i = 0; i < pickedItems.length; i++) {
      URL += '&stringMultibox='+pickedItems[i].id;
    }
    backgroundPage(URL);
  }

  window.groupDetail = {
    //If the c:out tag is inside of and HTML tag it will render the " or ' as the value being returned from the escaped string &34
    //If it is inside an Script it will render the &34
    backgroundPageAddRule : function() {
      backgroundPage("/personalization/addrule.do?$e=groupRules&reapply=" + '<asi:out value="${param.reapply}" encoding="js"/>');
    },
    toggleFavorite : function(){
      var setAsFavorite = this.getAttribute("action") === "add";
      var id = '<asi:out value="${gid}" encoding="js"/>';
      var type = TYPE_GROUP;
      AEUtils.toggleFavorite(setAsFavorite, id, type);
      if (setAsFavorite) {
        var message = '<fmt:message key="HasBeenAddedToYourF"/>'.supplant(groupName);
      } else {
         message = '<fmt:message key="HasBeenRemovedFromYourF"/>'.supplant(groupName);
      }
      setTimeout(function(){STATUS.message(message);},100);

      $("[@isFavorite]").each(function(){
        if (this.getAttribute("descriptorId") == id && this.getAttribute("descriptorType") == type){
          var onOrOff = this.getAttribute("isFavorite") === "off" ? "on" : "off";
          this.setAttribute("isFavorite",onOrOff);
          this.setAttribute("src", rewriteURL("framework/img/star_{0}.gif".supplant(onOrOff)));
        }
      });
    },
    toggleFavoriteLink : function(evt, id, type){
      if (id == '<asi:out value="${gid}"  encoding="js"/>' && type == TYPE_GROUP) {
        $("#toolbarFavoritesLinks > a").toggle();
      }
    }
  };

  $("#toolbarFavoritesLinks > a").click(window.groupDetail.toggleFavorite);
  $("#mainContent").bind(Events.toggleFavorite, window.groupDetail.toggleFavoriteLink);

  $("#toolbarFavoritesLinks [@action='remove']").hide();
  <c:if test="${isFavorite == true}">
    window.groupDetail.toggleFavoriteLink(null, '<asi:out value="${gid}" encoding="js"/>', TYPE_GROUP);
  </c:if>
</script>
