anchor.diff:  //
   // Modifications:
   //
  +// 2006 Nov 08: Added Read Only Role
   // 2004 Feb 11: remove the extra 'limit' parameter in the base URL.
   // 2003 Sep 04: Added a check to allow for deleted node alarms to display.
   // 2003 Feb 07: Fixed URLEncoder issues.
  
positive.code:               </p>           
              <% } %>
  
      <form action="alarm/acknowledge" method="POST" name="acknowledge_form">
        <input type="hidden" name="redirectParms" value="<%=request.getQueryString()%>" />
        <input type="hidden" name="action" value="<%=action%>" />
        <%=org.opennms.web.Util.makeHiddenTags(request)%>
  			<jsp:include page="/includes/key.jsp" flush="false" />
        <table>
  				<thead>
  					<tr>
  						<% if ( parms.ackType == AlarmFactory.AcknowledgeType.UNACKNOWLEDGED ) { %>
  							<th width="1%">Ack</th>
  							<% } else { %>
  								<th width="1%">UnAck</th>
  								<% } %>
  								<th width="1%"> <%=this.makeSortLink( parms, AlarmFactory.SortStyle.ID,        AlarmFactory.SortStyle.REVERSE_ID,        "id",        "ID" )%></th>
  								<th width="10%"><%=this.makeSortLink( parms, AlarmFactory.SortStyle.SEVERITY,  AlarmFactory.SortStyle.REVERSE_SEVERITY,  "severity",  "Severity"  )%></th>
  								<th width="22%"><%=this.makeSortLink( parms, AlarmFactory.SortStyle.NODE,      AlarmFactory.SortStyle.REVERSE_NODE,      "node",      "Node"      )%></th>
  
negative.code:       </table>
  			<hr />
  			 <p><%=alarms.length%> alarms &nbsp;
        <% if( !(request.isUserInRole( Authentication.READONLY_ROLE ))) { %>
          <% if( parms.ackType == AlarmFactory.AcknowledgeType.UNACKNOWLEDGED ) { %>
            <input TYPE="reset" />
            <input TYPE="button" VALUE="Select All" onClick="checkAllCheckboxes()"/>
  