Vlasnik izlazi iz DAL price za ovaj projekat - postaje samostalan proizvod. Preimenovanje je mehanicko (import putanje, imena fajlova/baze/UI naslova), NIJEDNA linija poslovne logike u internal/handler ili internal/service nije dirana - go build, go vet i go test ./... prolaze cisto pod novim imenom. - go.mod: module dal-license-server -> licence-server; 28 import linija u 13 .go fajlova usaglaseno - internal/config/config.go (+test): default DB_NAME licence_db - HTML sabloni (7 stranica) + 7 Playwright e2e spec fajlova: "DAL License Server" -> "Licence Server" u title/nav-brand, testovi usaglaseni u istom prolazu (nista ne moze da se razdvoji) - package.json/package-lock.json/.gitignore/.claude/project.json: ime projekta/binarnog fajla/work_dir - Usput: package.json je u repository.url nosio OTVORENU Gitea lozinku u cistom tekstu - uklonjena (URL sad bez kredencijala). Lozinka je i dalje u staroj git istoriji - preporuka: rotirati je posebno. - CLAUDE.md/README/API/TESTING/docs/SPEC/ARCHITECTURE/SETUP: naslovi, ASCII dijagrami, git clone URL, mysqldump primer, systemd predlozak u SETUP.md zamenjen stvarnim (obrazac terminia.service - journal log + graceful shutdown, ne stari minimalni predlozak) - Debrendiranje: "Univerzalni licencni server za sve DAL proizvode" -> "za vise proizvoda i klijenata"; potpis "Nenad Djukic / DAL d.o.o." -> "Nenad Djukic". NE dirano: nazivi ESIR/ARV/LIGHT_TICKET (tudji proizvodi, ne DAL brend), "DAL" kao stvaran naziv org-a u RBAC modelu (docs/loggerservice/README.md) - to je podatak, ne branding ovog servera. - docs/asp-terminia/, docs/loggerservice/: prozni pomeni imena servera Baza (dal_license_db -> licence_db) i deploy na 151 idu u posebnom koraku, posle preimenovanja Gitea repoa - vidi CLAUDE.md istorijsku belesku na dnu. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
67 lines
2.1 KiB
HTML
67 lines
2.1 KiB
HTML
{{define "license-new.html"}}{{template "app" .}}{{end}}
|
|
{{define "page-title"}}Nova licenca - Licence Server{{end}}
|
|
{{define "page-content"}}
|
|
<h1>Nova licenca</h1>
|
|
|
|
{{if .Error}}<div class="alert alert-error">{{.Error}}</div>{{end}}
|
|
|
|
<form method="POST" action="/licenses" class="form-card">
|
|
<div class="form-row">
|
|
<div class="form-group">
|
|
<label>Proizvod</label>
|
|
<select name="product_id" required>
|
|
{{range .Products}}
|
|
<option value="{{.ID}}">{{.Name}} ({{.Code}})</option>
|
|
{{end}}
|
|
</select>
|
|
</div>
|
|
<div class="form-group">
|
|
<label>Tip licence</label>
|
|
<select name="license_type" required>
|
|
<option value="MONTHLY">Mesecna (30 dana)</option>
|
|
<option value="ANNUAL">Godisnja (365 dana)</option>
|
|
<option value="PERPETUAL">Trajna</option>
|
|
<option value="TRIAL">Trial (30 dana)</option>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="form-row">
|
|
<div class="form-group">
|
|
<label>Firma</label>
|
|
<input type="text" name="customer_name" required>
|
|
</div>
|
|
<div class="form-group">
|
|
<label>PIB</label>
|
|
<input type="text" name="customer_pib">
|
|
</div>
|
|
</div>
|
|
|
|
<div class="form-group">
|
|
<label>Email</label>
|
|
<input type="email" name="customer_email">
|
|
</div>
|
|
|
|
<div class="form-row">
|
|
<div class="form-group">
|
|
<label>Limiti (JSON)</label>
|
|
<input type="text" name="limits" placeholder='{"max_operators": 3}'>
|
|
</div>
|
|
<div class="form-group">
|
|
<label>Grace period (dani)</label>
|
|
<input type="number" name="grace_days" value="30">
|
|
</div>
|
|
</div>
|
|
|
|
<div class="form-group">
|
|
<label>Napomena</label>
|
|
<textarea name="notes" rows="2"></textarea>
|
|
</div>
|
|
|
|
<div class="form-actions">
|
|
<button type="submit" class="btn btn-primary">Kreiraj licencu</button>
|
|
<a href="/licenses" class="btn">Otkazi</a>
|
|
</div>
|
|
</form>
|
|
{{end}}
|