Corrections travail en groupe
This commit is contained in:
@@ -18,7 +18,13 @@
|
||||
<fmt:param value="5" />
|
||||
</fmt:message>
|
||||
|
||||
<form:form commandName="formConference" name="monForm">
|
||||
<p class="formHelp">
|
||||
<fmt:message key="conference.remainingTokens">
|
||||
<fmt:param value="${currentUser.conferenceCreationTokens}"/>
|
||||
</fmt:message>
|
||||
</p>
|
||||
|
||||
<form:form commandName="formConference">
|
||||
<table class="form">
|
||||
<tbody>
|
||||
<tr>
|
||||
@@ -50,7 +56,7 @@
|
||||
<tfoot>
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td><input type="submit" align="middle" name="_target1"
|
||||
<td><input type="submit" name="_target1"
|
||||
value="Next" /></td>
|
||||
</tr>
|
||||
</tfoot>
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
</fmt:message>
|
||||
|
||||
<p class="formHelp"><fmt:message key="conference.help.step2" /></p>
|
||||
<form:form commandName="formConference" name="monForm">
|
||||
<form:form commandName="formConference">
|
||||
<table class="form">
|
||||
<tbody>
|
||||
<tr>
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
</fmt:message>
|
||||
<p class="formHelp"><fmt:message key="conference.help.step3" /></p>
|
||||
|
||||
<form:form commandName="formConference" name="monForm">
|
||||
<form:form commandName="formConference">
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
<script type='text/javascript' src='./javascripts/prototype.js'></script>
|
||||
|
||||
<script type='text/javascript'>
|
||||
|
||||
//<![CDATA[
|
||||
function init() {
|
||||
fillTable2();
|
||||
fillTable();
|
||||
@@ -157,6 +157,7 @@ var CritereManager = Class.create({
|
||||
}
|
||||
}
|
||||
});
|
||||
//]]>
|
||||
</script>
|
||||
|
||||
</head>
|
||||
@@ -178,7 +179,7 @@ var CritereManager = Class.create({
|
||||
</fmt:message>
|
||||
|
||||
<p class="formHelp"><fmt:message key="conference.help.step4" /></p>
|
||||
<form:form commandName="formConference" name="monForm">
|
||||
<form:form commandName="formConference">
|
||||
<table>
|
||||
<tbody>
|
||||
<tr>
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
<script type='text/javascript' src='./javascripts/scriptaculous.js'></script>
|
||||
|
||||
<script type='text/javascript'>
|
||||
|
||||
//<![CDATA[
|
||||
function init() {
|
||||
dwr.engine.setAsync(false); // a v<>rifier
|
||||
//AddCriteriaJS.initPerson();
|
||||
@@ -86,7 +86,7 @@ function addPerson(eleid) {
|
||||
|
||||
function deletePerson(eleid) {
|
||||
var person = peopleCache2[eleid.substring(11)];
|
||||
if (confirm("Are you sure you want to delete " + person.firstName + " " + person.lastName + "?")) {
|
||||
if (confirm("Are you sure you want to remove " + person.firstName + " " + person.lastName + "?")) {
|
||||
dwr.engine.beginBatch();
|
||||
AddCriteriaJS.deletePerson(person);
|
||||
filterUser(null, dwr.util.getValue("myfilter"));
|
||||
@@ -104,7 +104,7 @@ function filterUser(el, value) {
|
||||
AddCriteriaJS.fillUser(value);
|
||||
setTimeout("fillTable()", 500);
|
||||
}
|
||||
|
||||
//]]>
|
||||
</script>
|
||||
|
||||
</head>
|
||||
@@ -126,7 +126,7 @@ function filterUser(el, value) {
|
||||
|
||||
<p class="formHelp"><fmt:message key="conference.help.step5" /></p>
|
||||
|
||||
<form:form commandName="formConference" name="monForm">
|
||||
<form:form commandName="formConference">
|
||||
<table>
|
||||
<tbody>
|
||||
<tr>
|
||||
@@ -166,7 +166,7 @@ function filterUser(el, value) {
|
||||
<tr id="patternadded" style="display: none;">
|
||||
<td><span id="tablePersonadded">Person</span></td>
|
||||
<td><a id="supprPerson" href="#"
|
||||
onclick="deletePerson(this.id)">Delete</a></td>
|
||||
onclick="deletePerson(this.id)">Remove</a></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<h4>YACOS Administration</h4>
|
||||
<div class="cbb">
|
||||
<h2>Edit users</h2>
|
||||
<label>Filter :<input id="userFilterInput" type="text" name="userFilter"/></label>
|
||||
@@ -22,8 +22,13 @@
|
||||
<div class="dynamicListPlaceholder">
|
||||
Please enter a value in the filter field.
|
||||
</div>
|
||||
<div class="dynamicListItem">
|
||||
|
||||
<div class="dynamicListItem" id="person_item_pattern" style="display:none;height:0px;width:0px;">
|
||||
<div id="person_name" style="display:table-cell;">Name</div>
|
||||
<div style="display:table-cell">
|
||||
<a href="#" id="person_add_token">+</a>
|
||||
<span id="person_num_tokens">Num Tokens</span>
|
||||
<a href="#" id="person_remove_token">-</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
<script type='text/javascript' src='./dwr/util.js'></script>
|
||||
<script type='text/javascript' src='./dwr/interface/DelegateArticlesJS.js'></script>
|
||||
<script type="text/javascript">
|
||||
|
||||
//<![CDATA[
|
||||
var selectedArticleId;
|
||||
var articleId;
|
||||
var pattern;
|
||||
@@ -111,13 +111,13 @@
|
||||
|
||||
function removeRemote() {
|
||||
var itemsToRemove = $('refereesList'+articleId).select('div.selected');
|
||||
var membersId = itemsToRemove.pluck('id');
|
||||
var refereeId = itemsToRemove.pluck('id');
|
||||
//var articleId = $('articleId').value;
|
||||
DelegateArticlesJS.removeMembers(membersId, articleId, remove);
|
||||
DelegateArticlesJS.removeReferee(refereeId, articleId, remove);
|
||||
}
|
||||
|
||||
function remove() {
|
||||
var itemsToRemove = $('membersArticleList'+articleId).select('div.selected');
|
||||
var itemsToRemove = $('refereesArticleList'+articleId).select('div.selected');
|
||||
//suppression dans la premi<6D>re liste
|
||||
itemsToRemove.invoke('remove');
|
||||
|
||||
@@ -135,12 +135,12 @@
|
||||
var itemsToAdd = $('refereesList'+articleId).select('div.selected');
|
||||
var refereeId = itemsToAdd.pluck('id');
|
||||
//var articleId = $('articleId').value;
|
||||
DelegateArticlesJS.addReferee(membersId, articleId, add());
|
||||
DelegateArticlesJS.addReferee(refereeId, articleId, add());
|
||||
|
||||
}
|
||||
|
||||
function add() {
|
||||
var itemsToAdd = $('refereeList'+articleId).select('div.selected');
|
||||
var itemsToAdd = $('refereesList'+articleId).select('div.selected');
|
||||
//suppression dans la premi<6D>re liste
|
||||
itemsToAdd.invoke('remove');
|
||||
|
||||
@@ -159,7 +159,8 @@
|
||||
itemsToRemove.invoke('remove');
|
||||
itemsToRemove = $('refereesList'+artId).select('div.dynamicListItem');
|
||||
itemsToRemove.invoke('remove');
|
||||
}
|
||||
}
|
||||
//]]>
|
||||
</script>
|
||||
|
||||
</head>
|
||||
|
||||
@@ -7,8 +7,9 @@
|
||||
<script type='text/javascript' src='./dwr/engine.js'></script>
|
||||
<script type='text/javascript' src='./dwr/util.js'></script>
|
||||
<script type='text/javascript' src='./dwr/interface/DispatchArticlesJS.js'></script>
|
||||
<script type="text/javascript">
|
||||
|
||||
<script type="text/javascript">
|
||||
// Mandatory for XHTML strict validation
|
||||
//<![CDATA[
|
||||
var selectedArticleId;
|
||||
var articleId;
|
||||
var pattern;
|
||||
@@ -155,7 +156,8 @@
|
||||
itemsToRemove.invoke('remove');
|
||||
itemsToRemove = $('membersList'+artId).select('div.dynamicListItem');
|
||||
itemsToRemove.invoke('remove');
|
||||
}
|
||||
}
|
||||
//]]>
|
||||
</script>
|
||||
|
||||
</head>
|
||||
@@ -196,8 +198,8 @@
|
||||
</div>
|
||||
|
||||
</td><td>
|
||||
<input type="button" id="addButton" value="add>>>" onclick="addRemote()"/><br/>
|
||||
<input type="button" id="removeButton" value="<<<remove" onclick="removeRemote()"/>
|
||||
<input type="button" name="addButton" value="add>>>" onclick="addRemote()"/><br/>
|
||||
<input type="button" name="removeButton" value="<<<remove" onclick="removeRemote()"/>
|
||||
</td><td>
|
||||
<h1><fmt:message key="members.list2"/></h1>
|
||||
<div id="membersArticleList${article.id}" style="border:1px solid black; max-height:150px;overflow:auto;">
|
||||
@@ -207,8 +209,8 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</c:forEach>
|
||||
|
||||
</c:forEach>
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
<script type='text/javascript' src='./javascripts/prototype.js'></script>
|
||||
|
||||
<script type="text/javascript">
|
||||
//<![CDATA[
|
||||
function HideRegistered() {
|
||||
var listElem = $$('.isRegistered');
|
||||
for (var i = 0; i < listElem.length; i++) {
|
||||
@@ -25,6 +26,7 @@
|
||||
listElem[i].style.display = "";
|
||||
}
|
||||
}
|
||||
//]]>
|
||||
</script>
|
||||
|
||||
</head>
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
</td>
|
||||
|
||||
<td>
|
||||
<form action="<c:url value='j_acegi_security_check'/>" method="POST" id="mainformlogin2">
|
||||
<form action="<c:url value='j_acegi_security_check'/>" method="post" id="mainformlogin2">
|
||||
<table class="content_table">
|
||||
<tr>
|
||||
<td width="100" align="left">
|
||||
|
||||
@@ -47,8 +47,14 @@
|
||||
<!-- Connected but no conference chosen -->
|
||||
<h4 class="title"><fmt:message key="connected.noconference.title" /></h4>
|
||||
<div class="warningBox">
|
||||
<fmt:message key="connected.noconference.warning" />
|
||||
<a href="<c:url value="listConference.htm"/>"><fmt:message key="home.link.choose" /></a>
|
||||
<p>
|
||||
<fmt:message key="connected.noconference.warning" />
|
||||
<a href="<c:url value="listConference.htm"/>"><fmt:message key="home.link.choose" /></a>
|
||||
</p>
|
||||
<p>
|
||||
<fmt:message key="connected.noconference.warning.userBoard" />
|
||||
<a href="<c:url value="userBoard.htm"/>"><fmt:message key="home.link.userBoard" /></a>
|
||||
</p>
|
||||
</div>
|
||||
</authz:authorize>
|
||||
<authz:authorize ifAllGranted="ROLE_ANONYMOUS">
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
<script type='text/javascript' src='./javascripts/effects.js'></script>
|
||||
|
||||
<script type="text/javascript">
|
||||
|
||||
//<![CDATA[
|
||||
function showConfAll() {
|
||||
if ($('confList').visible())
|
||||
$('confList').fade();
|
||||
@@ -64,7 +64,7 @@ function showArticleReferee() {
|
||||
else
|
||||
$('articleListReferee').appear();
|
||||
}
|
||||
|
||||
//]]>
|
||||
</script>
|
||||
|
||||
</head>
|
||||
@@ -98,32 +98,21 @@ function showArticleReferee() {
|
||||
</c:if>
|
||||
</div>
|
||||
|
||||
<h3 class="descriptionTitle">Chairman's informations</h3>
|
||||
<div class="textBox">
|
||||
You are Chairman in <b>${numberChairman}</b> conference(s)<br /><br />
|
||||
<a name="listConfAuthor"></a>
|
||||
<h3 class="descriptionTitle">Author's informations</h3>
|
||||
<div class="textBox">
|
||||
You are Author in <b>${numberAuthor}</b> conference(s)<br /><br />
|
||||
|
||||
<c:choose>
|
||||
<c:when test="${numberCreationTokens} != 0">
|
||||
You can create <b>${numberCreationTokens}</b> conference(s). Click
|
||||
<a href="addConference.htm">here</a> to create one now.
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
You can't create a conference at the moment. If you want to create a conference, you should address to the <a href="mailto:admin@yacos.org">administrator</a> of this site.
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
|
||||
<a name="listConfChairman"></a>
|
||||
<c:if test="${not empty listConfForUser}">
|
||||
<br /><br />
|
||||
If you want to see the list of conferences you are registered in, click <a href="#listConfChairman" onclick="showConfChairman();">here</a>.
|
||||
If you want to see the list of conferences you are registered in, click <a href="#listConfAuthor" onclick="showConfAuthor();">here</a>.
|
||||
|
||||
|
||||
<div id="confListChairman" style="display: none;">
|
||||
<div id="confListAuthor" style="display: none;">
|
||||
<table width="100%" align="center">
|
||||
<tbody>
|
||||
<c:forEach items="${listConfForUser}" var="conf">
|
||||
<c:forEach items="${listRole}" var="role">
|
||||
<c:if test="${conf.id == role.conference.id and role.type == 'CHAIRMAN'}">
|
||||
<c:if test="${conf.id == role.conference.id and role.type == 'AUTHOR'}">
|
||||
<tr>
|
||||
<td align="center">${conf.title}</td>
|
||||
<td align="center"><a href="chooseConference.htm?idConf=${conf.id}">Select</a></td>
|
||||
@@ -134,65 +123,25 @@ function showArticleReferee() {
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<br /><br />
|
||||
</c:if>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<a name="listConfPcmember"></a>
|
||||
<h3 class="descriptionTitle">PCMember's informations</h3>
|
||||
<div class="textBox">
|
||||
You are PCMember in <b>${numberPCMember}</b> conference(s)<br /><br />
|
||||
<a name="listArticleAuthor"></a>
|
||||
You have posted <b>${numberArticle}</b> article(s).<br /><br />
|
||||
|
||||
<c:if test="${not empty listConfForUser}">
|
||||
If you want to see the list of conferences you are registered in, click <a href="#listConfPcmember" onclick="showConfPcmember();">here</a>.
|
||||
If you want to see the list of articles you have submitted, click <a href="#listArticleAuthor" onclick="showArticleAll();">here</a>.
|
||||
|
||||
|
||||
<div id="confListPcmember" style="display: none;">
|
||||
<div id="articleList" style="display: none;">
|
||||
<table width="100%" align="center">
|
||||
<tbody>
|
||||
<c:forEach items="${listConfForUser}" var="conf">
|
||||
<c:forEach items="${listRole}" var="role">
|
||||
<c:if test="${conf.id == role.conference.id and role.type == 'PCMEMBER'}">
|
||||
<tr>
|
||||
<td align="center">${conf.title}</td>
|
||||
<td align="center"><a href="chooseConference.htm?idConf=${conf.id}">Select</a></td>
|
||||
</tr>
|
||||
</c:if>
|
||||
</c:forEach>
|
||||
</c:forEach>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<br /><br />
|
||||
</c:if>
|
||||
|
||||
|
||||
<a name="listArticlePcMember"></a>
|
||||
You have <b>${numberArticlePCMember}</b> article(s) in your evaluation list.<br /><br />
|
||||
|
||||
<c:if test="${not empty listArticlePCMember}">
|
||||
If you want to see the list of articles you have in your evaluation list, click <a href="#listArticlePcMember" onclick="showArticlePcMember();">here</a>.
|
||||
|
||||
|
||||
<div id="articleListPcMember" style="display: none;">
|
||||
<table width="100%" align="center">
|
||||
<tbody>
|
||||
<c:forEach var="article" items="${listArticlePCMember}" varStatus="i">
|
||||
<c:forEach var="article" items="${listAllArticle}" varStatus="i">
|
||||
<tr>
|
||||
<td align="center" width="25%">${article.title}</td>
|
||||
<td align="center" width="25%">
|
||||
<c:choose>
|
||||
<c:when test="${not empty article.referee}">
|
||||
Delegated to:<br />
|
||||
<c:forEach var="referee" items="${article.referee}">
|
||||
${referee.firstName} ${referee.lastName}<br/>
|
||||
</c:forEach>
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
<c:if test="${article.state == 'SUBMITED'}">
|
||||
To evaluate
|
||||
Submitted
|
||||
</c:if>
|
||||
<c:if test="${article.state == 'EVALUATED'}">
|
||||
Evaluated
|
||||
@@ -202,10 +151,7 @@ function showArticleReferee() {
|
||||
</c:if>
|
||||
<c:if test="${article.state == 'ACCEPTED'}">
|
||||
Accepted
|
||||
</c:if>
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
|
||||
</c:if>
|
||||
</td>
|
||||
<td align="center" width="25%">
|
||||
<a href="chooseConference.htm?idConf=${article.conference.id}">${article.conference.title}</a>
|
||||
@@ -292,21 +238,21 @@ function showArticleReferee() {
|
||||
</c:if>
|
||||
</div>
|
||||
|
||||
<a name="listConfAuthor"></a>
|
||||
<h3 class="descriptionTitle">Author's informations</h3>
|
||||
<div class="textBox">
|
||||
You are Author in <b>${numberAuthor}</b> conference(s)<br /><br />
|
||||
<a name="listConfPcmember"></a>
|
||||
<h3 class="descriptionTitle">PCMember's informations</h3>
|
||||
<div class="textBox">
|
||||
You are PCMember in <b>${numberPCMember}</b> conference(s)<br /><br />
|
||||
|
||||
<c:if test="${not empty listConfForUser}">
|
||||
If you want to see the list of conferences you are registered in, click <a href="#listConfAuthor" onclick="showConfAuthor();">here</a>.
|
||||
If you want to see the list of conferences you are registered in, click <a href="#listConfPcmember" onclick="showConfPcmember();">here</a>.
|
||||
|
||||
|
||||
<div id="confListAuthor" style="display: none;">
|
||||
<div id="confListPcmember" style="display: none;">
|
||||
<table width="100%" align="center">
|
||||
<tbody>
|
||||
<c:forEach items="${listConfForUser}" var="conf">
|
||||
<c:forEach items="${listRole}" var="role">
|
||||
<c:if test="${conf.id == role.conference.id and role.type == 'AUTHOR'}">
|
||||
<c:if test="${conf.id == role.conference.id and role.type == 'PCMEMBER'}">
|
||||
<tr>
|
||||
<td align="center">${conf.title}</td>
|
||||
<td align="center"><a href="chooseConference.htm?idConf=${conf.id}">Select</a></td>
|
||||
@@ -317,25 +263,34 @@ function showArticleReferee() {
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<br /><br />
|
||||
<br /><br />
|
||||
</c:if>
|
||||
|
||||
<a name="listArticleAuthor"></a>
|
||||
You have posted <b>${numberArticle}</b> article(s).<br /><br />
|
||||
|
||||
<c:if test="${not empty listConfForUser}">
|
||||
If you want to see the list of articles you have submitted, click <a href="#listArticleAuthor" onclick="showArticleAll();">here</a>.
|
||||
<a name="listArticlePcMember"></a>
|
||||
You have <b>${numberArticlePCMember}</b> article(s) in your evaluation list.<br /><br />
|
||||
|
||||
<c:if test="${not empty listArticlePCMember}">
|
||||
If you want to see the list of articles you have in your evaluation list, click <a href="#listArticlePcMember" onclick="showArticlePcMember();">here</a>.
|
||||
|
||||
|
||||
<div id="articleList" style="display: none;">
|
||||
<div id="articleListPcMember" style="display: none;">
|
||||
<table width="100%" align="center">
|
||||
<tbody>
|
||||
<c:forEach var="article" items="${listAllArticle}" varStatus="i">
|
||||
<c:forEach var="article" items="${listArticlePCMember}" varStatus="i">
|
||||
<tr>
|
||||
<td align="center" width="25%">${article.title}</td>
|
||||
<td align="center" width="25%">
|
||||
<c:choose>
|
||||
<c:when test="${not empty article.referee}">
|
||||
Delegated to:<br />
|
||||
<c:forEach var="referee" items="${article.referee}">
|
||||
${referee.firstName} ${referee.lastName}<br/>
|
||||
</c:forEach>
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
<c:if test="${article.state == 'SUBMITED'}">
|
||||
Submitted
|
||||
To evaluate
|
||||
</c:if>
|
||||
<c:if test="${article.state == 'EVALUATED'}">
|
||||
Evaluated
|
||||
@@ -345,7 +300,10 @@ function showArticleReferee() {
|
||||
</c:if>
|
||||
<c:if test="${article.state == 'ACCEPTED'}">
|
||||
Accepted
|
||||
</c:if>
|
||||
</c:if>
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
|
||||
</td>
|
||||
<td align="center" width="25%">
|
||||
<a href="chooseConference.htm?idConf=${article.conference.id}">${article.conference.title}</a>
|
||||
@@ -361,6 +319,48 @@ function showArticleReferee() {
|
||||
|
||||
</c:if>
|
||||
</div>
|
||||
|
||||
|
||||
<h3 class="descriptionTitle">Chairman's informations</h3>
|
||||
<div class="textBox">
|
||||
You are Chairman in <b>${numberChairman}</b> conference(s)<br /><br />
|
||||
|
||||
<c:choose>
|
||||
<c:when test="${numberCreationTokens} != 0">
|
||||
You can create <b>${numberCreationTokens}</b> conference(s). Click
|
||||
<a href="addConference.htm">here</a> to create one now.
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
You can't create a conference at the moment. If you want to create a conference, you should address to the <a href="mailto:admin@yacos.org">administrator</a> of this site.
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
|
||||
<a name="listConfChairman"></a>
|
||||
<c:if test="${not empty listConfForUser}">
|
||||
<br /><br />
|
||||
If you want to see the list of conferences you are registered in, click <a href="#listConfChairman" onclick="showConfChairman();">here</a>.
|
||||
|
||||
|
||||
<div id="confListChairman" style="display: none;">
|
||||
<table width="100%" align="center">
|
||||
<tbody>
|
||||
<c:forEach items="${listConfForUser}" var="conf">
|
||||
<c:forEach items="${listRole}" var="role">
|
||||
<c:if test="${conf.id == role.conference.id and role.type == 'CHAIRMAN'}">
|
||||
<tr>
|
||||
<td align="center">${conf.title}</td>
|
||||
<td align="center"><a href="chooseConference.htm?idConf=${conf.id}">Select</a></td>
|
||||
</tr>
|
||||
</c:if>
|
||||
</c:forEach>
|
||||
</c:forEach>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
</c:if>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user