Browse Source

added another state check

Signed-off-by: Stephan Richter <s.richter@srsoftware.de>
feature/document
Stephan Richter 4 months ago
parent
commit
b52ace49db
  1. 4
      documents/src/main/java/de/srsoftware/umbrella/documents/DocumentApi.java
  2. 8
      frontend/src/routes/document/Add.svelte

4
documents/src/main/java/de/srsoftware/umbrella/documents/DocumentApi.java

@ -72,11 +72,11 @@ public class DocumentApi extends BaseHandler {
private boolean deleteDocument(HttpExchange ex, long docId, UmbrellaUser user) throws IOException, UmbrellaException { private boolean deleteDocument(HttpExchange ex, long docId, UmbrellaUser user) throws IOException, UmbrellaException {
var doc = db.loadDoc(docId); var doc = db.loadDoc(docId);
var companyId = doc.companyId(); var companyId = doc.companyId();
var company = companies.get(companyId);
var members = companies.getMembers(companyId); var members = companies.getMembers(companyId);
var isMember = false; var isMember = false;
for (var member : members) isMember |= user.equals(member); for (var member : members) isMember |= user.equals(member);
if (!isMember) return sendContent(ex,HTTP_FORBIDDEN,"You are mot a member of company "+doc.companyId()); if (!isMember) throw new UmbrellaException(HTTP_FORBIDDEN,"You are mot a member of company {0}",doc.companyId());
if (doc.state() != NEW) throw new UmbrellaException(HTTP_BAD_REQUEST,"This document has already been sent");
return sendContent(ex,db.deleteDoc(docId)); return sendContent(ex,db.deleteDoc(docId));
} }

8
frontend/src/routes/document/Add.svelte

@ -6,7 +6,7 @@
let router = useTinyRouter(); let router = useTinyRouter();
let company = $state(null); let company = $state(null);
let error = null; let error = $state(null);
let docType = $state(null); let docType = $state(null);
let document = $state({ let document = $state({
type : +router.query.document_type, type : +router.query.document_type,
@ -93,12 +93,12 @@
</style> </style>
<fieldset> <fieldset>
{#if docType}
<legend>{t('document.add_new',docType)}</legend>
{/if}
{#if error} {#if error}
<span class="error">{error}</span> <span class="error">{error}</span>
{/if} {/if}
{#if docType}
<legend>{t('document.add_new',docType)}</legend>
{/if}
{#if company} {#if company}
Company: {company.name} Company: {company.name}
<fieldset> <fieldset>

Loading…
Cancel
Save