diff --git a/.classpath b/.classpath index 607b789..d9955f1 100644 --- a/.classpath +++ b/.classpath @@ -19,7 +19,7 @@ - + diff --git a/.settings/org.eclipse.jdt.core.prefs b/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 0000000..e9186c3 --- /dev/null +++ b/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,4 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.targetPlatform=21 +org.eclipse.jdt.core.compiler.compliance=21 +org.eclipse.jdt.core.compiler.source=21 diff --git a/.settings/org.eclipse.wst.common.component b/.settings/org.eclipse.wst.common.component index 165c5ca..9c1b977 100644 --- a/.settings/org.eclipse.wst.common.component +++ b/.settings/org.eclipse.wst.common.component @@ -1,14 +1,8 @@ - - - - - - - - - - - - - + + + + + + + diff --git a/.settings/org.eclipse.wst.common.project.facet.core.xml b/.settings/org.eclipse.wst.common.project.facet.core.xml index 7859c6b..842a656 100644 --- a/.settings/org.eclipse.wst.common.project.facet.core.xml +++ b/.settings/org.eclipse.wst.common.project.facet.core.xml @@ -3,5 +3,5 @@ - + diff --git a/build.gradle b/build.gradle index 78c809e..e47adf3 100644 --- a/build.gradle +++ b/build.gradle @@ -8,7 +8,7 @@ plugins { } group = 'de.jottyfan.bico' -version = '0.1.5' +version = '0.1.6' description = """BibleClassOrganizer""" @@ -18,8 +18,8 @@ java { } } -sourceCompatibility = 17 -targetCompatibility = 17 +sourceCompatibility = 21 +targetCompatibility = 21 mainClassName = "de.jottyfan.bico.Main" @@ -47,7 +47,7 @@ war { } dependencies { - implementation 'de.jottyfan:bicolib:4' + implementation 'de.jottyfan:bicolib:5' implementation 'org.mnode.ical4j:ical4j:4.0.4' diff --git a/src/main/java/de/jottyfan/bico/Main.java b/src/main/java/de/jottyfan/bico/Main.java index 985e062..a7ebc4b 100644 --- a/src/main/java/de/jottyfan/bico/Main.java +++ b/src/main/java/de/jottyfan/bico/Main.java @@ -1,5 +1,7 @@ package de.jottyfan.bico; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.builder.SpringApplicationBuilder; @@ -13,6 +15,8 @@ import org.springframework.boot.web.servlet.support.SpringBootServletInitializer @SpringBootApplication public class Main extends SpringBootServletInitializer { + public static final Logger LOGGER = LogManager.getLogger(Main.class); + @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { return application.sources(Main.class); diff --git a/src/main/java/de/jottyfan/bico/modules/camp/RegistrationController.java b/src/main/java/de/jottyfan/bico/modules/camp/RegistrationController.java new file mode 100644 index 0000000..09cd1a0 --- /dev/null +++ b/src/main/java/de/jottyfan/bico/modules/camp/RegistrationController.java @@ -0,0 +1,74 @@ +package de.jottyfan.bico.modules.camp; + +import java.security.Principal; +import java.util.ArrayList; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.validation.BindingResult; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.ModelAttribute; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.PostMapping; + +import de.jottyfan.bico.db.camp.enums.EnumSex; +import de.jottyfan.bico.modules.CommonController; +import de.jottyfan.bico.modules.camp.model.RegistrationBean; +import jakarta.validation.Valid; + +/** + * + * @author jotty + * + */ +@Controller +public class RegistrationController extends CommonController { + + @Autowired + private RegistrationService service; + + @GetMapping("/camp/registration") + public String loadForm(Model model, Principal principal) { + model.addAttribute("registrations", service.getRegistrations(principal)); + model.addAttribute("bean", new RegistrationBean()); + model.addAttribute("sexes", EnumSex.values()); + return "/camp/registration"; + } + + @PostMapping("/camp/registration/submit") + public String submitAddForm(@Valid @ModelAttribute("bean") RegistrationBean bean, BindingResult bindingResult, + Model model, Principal principal) { + if (bindingResult.hasErrors()) { + model.addAttribute("registrations", new ArrayList()); // hack to make "Neue Anmeldung" appear + model.addAttribute("sexes", EnumSex.values()); + return "/camp/registration"; + } + service.save(bean, principal); + return "redirect:/camp/registration"; + } + + @GetMapping("/camp/registration/edit/{id}") + public String loadEditForm(@PathVariable("id") Integer id, Model model, Principal principal) { + model.addAttribute("bean", service.getBeanOfPrincipal(id, principal)); + model.addAttribute("sexes", EnumSex.values()); + return "/camp/edit"; + } + + @GetMapping("/camp/registration/delete/{id}") + public String delete(@PathVariable("id") Integer id, Model model, Principal principal) { + service.delete(id, principal); + return "redirect:/camp/registration"; + } + + @PostMapping("/camp/registration/correct") + public String submitEditForm(@Valid @ModelAttribute("bean") RegistrationBean bean, BindingResult bindingResult, + Model model, Principal principal) { + if (bindingResult.hasErrors()) { + model.addAttribute("sexes", EnumSex.values()); + return "/camp/registration"; + } + service.save(bean, principal); + return "redirect:/camp/registration"; + } +} diff --git a/src/main/java/de/jottyfan/bico/modules/camp/RegistrationRepository.java b/src/main/java/de/jottyfan/bico/modules/camp/RegistrationRepository.java new file mode 100644 index 0000000..8a0b3ad --- /dev/null +++ b/src/main/java/de/jottyfan/bico/modules/camp/RegistrationRepository.java @@ -0,0 +1,120 @@ +package de.jottyfan.bico.modules.camp; + +import static de.jottyfan.bico.db.camp.Tables.T_REGISTRATION; + +import java.util.List; + +import org.jooq.DSLContext; +import org.jooq.DeleteConditionStep; +import org.jooq.InsertValuesStep5; +import org.jooq.SelectConditionStep; +import org.jooq.UpdateConditionStep; +import org.jooq.impl.DSL; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Repository; + +import de.jottyfan.bico.Main; +import de.jottyfan.bico.db.camp.enums.EnumCamp; +import de.jottyfan.bico.db.camp.enums.EnumSex; +import de.jottyfan.bico.db.camp.tables.records.TRegistrationRecord; +import de.jottyfan.bico.modules.camp.model.RegistrationBean; +import jakarta.validation.Valid; + +/** + * + * @author jotty + * + */ +@Repository +public class RegistrationRepository { + @Autowired + private DSLContext jooq; + + /** + * save the validated bean + * + * @param bean the bean + * @param registrator the principal name + */ + public void save(@Valid RegistrationBean bean, String registrator) { + jooq.transaction(t -> { + if (bean.getPkRegistration() == null) { + InsertValuesStep5 sql = DSL.using(t) + // @formatter:off + .insertInto(T_REGISTRATION, + T_REGISTRATION.CAMP, + T_REGISTRATION.REGISTRATOR, + T_REGISTRATION.FORENAME, + T_REGISTRATION.SURNAME, + T_REGISTRATION.SEX) + .values(EnumCamp.Gemeindefreizeit_2025, registrator, bean.getForename(), bean.getSurname(), EnumSex.lookupLiteral(bean.getSex())); + // @formatter:on + Main.LOGGER.trace(sql); + sql.execute(); + } else { + UpdateConditionStep sql = DSL.using(t) + // @formatter:off + .update(T_REGISTRATION) + .set(T_REGISTRATION.FORENAME, bean.getForename()) + .set(T_REGISTRATION.SURNAME, bean.getSurname()) + .set(T_REGISTRATION.SEX, EnumSex.lookupLiteral(bean.getSex())) + .set(T_REGISTRATION.REGISTRATOR, registrator) + .where(T_REGISTRATION.PK_REGISTRATION.eq(bean.getPkRegistration())); + // @formatter:on + Main.LOGGER.trace(sql); + sql.execute(); + } + }); + } + + /** + * get all registrations of name + * + * @param name the name + * @return the registrations + */ + public List getRegistrations(String name) { + SelectConditionStep sql = jooq + // @formatter:off + .selectFrom(T_REGISTRATION) + .where(T_REGISTRATION.REGISTRATOR.eq(name)); + // @formatter:on + Main.LOGGER.trace(sql); + return sql.fetchInto(RegistrationBean.class); + } + + /** + * get the registration of id if the creator is the name; null else + * + * @param id the id + * @param name the name + * @return the bean or null + */ + public RegistrationBean getBean(Integer id, String name) { + SelectConditionStep sql = jooq + // @formatter:off + .selectFrom(T_REGISTRATION) + .where(T_REGISTRATION.PK_REGISTRATION.eq(id)) + .and(T_REGISTRATION.REGISTRATOR.eq(name)); + // @formatter:on + Main.LOGGER.trace(sql); + return sql.fetchOneInto(RegistrationBean.class); + } + + /** + * delete the registration if the name is the creator + * + * @param id the id + * @param name the name + */ + public void delete(Integer id, String name) { + DeleteConditionStep sql = jooq + // @formatter:off + .deleteFrom(T_REGISTRATION) + .where(T_REGISTRATION.PK_REGISTRATION.eq(id)) + .and(T_REGISTRATION.REGISTRATOR.eq(name)); + // @formatter:on + Main.LOGGER.trace(sql); + sql.execute(); + } +} diff --git a/src/main/java/de/jottyfan/bico/modules/camp/RegistrationService.java b/src/main/java/de/jottyfan/bico/modules/camp/RegistrationService.java new file mode 100644 index 0000000..d85432b --- /dev/null +++ b/src/main/java/de/jottyfan/bico/modules/camp/RegistrationService.java @@ -0,0 +1,62 @@ +package de.jottyfan.bico.modules.camp; + +import java.security.Principal; +import java.util.List; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import de.jottyfan.bico.modules.camp.model.RegistrationBean; +import jakarta.validation.Valid; + +/** + * + * @author jotty + * + */ +@Service +public class RegistrationService { + + @Autowired + private RegistrationRepository repository; + + /** + * save the bean content + * + * @param bean the bean + */ + public void save(@Valid RegistrationBean bean, Principal principal) { + repository.save(bean, principal.getName()); + } + + /** + * get the registrations of principal + * + * @param principal the principal + * @return the registrations + */ + public List getRegistrations(Principal principal) { + return repository.getRegistrations(principal.getName()); + } + + /** + * get the registration if the principal was the creator + * + * @param id the ID of the registration + * @param principal the principal + * @return the bean or null if not found or allowed + */ + public RegistrationBean getBeanOfPrincipal(Integer id, Principal principal) { + return repository.getBean(id, principal.getName()); + } + + /** + * delete the registration if the principal was the creator + * + * @param id the ID of the registration + * @param principal the principal + */ + public void delete(Integer id, Principal principal) { + repository.delete(id, principal.getName()); + } +} diff --git a/src/main/java/de/jottyfan/bico/modules/camp/model/RegistrationBean.java b/src/main/java/de/jottyfan/bico/modules/camp/model/RegistrationBean.java new file mode 100644 index 0000000..bed3bb0 --- /dev/null +++ b/src/main/java/de/jottyfan/bico/modules/camp/model/RegistrationBean.java @@ -0,0 +1,78 @@ +package de.jottyfan.bico.modules.camp.model; + +import java.io.Serializable; + +import jakarta.validation.constraints.NotBlank; + +/** + * + * @author jotty + * + */ +public class RegistrationBean implements Serializable { + private static final long serialVersionUID = 1L; + + private Integer pkRegistration; + @NotBlank + private String forename; + @NotBlank + private String surname; + @NotBlank + private String sex; + + /** + * @return the forename + */ + public String getForename() { + return forename; + } + + /** + * @param forename the forename to set + */ + public void setForename(String forename) { + this.forename = forename; + } + + /** + * @return the surname + */ + public String getSurname() { + return surname; + } + + /** + * @param surname the surname to set + */ + public void setSurname(String surname) { + this.surname = surname; + } + + /** + * @return the sex + */ + public String getSex() { + return sex; + } + + /** + * @param sex the sex to set + */ + public void setSex(String sex) { + this.sex = sex; + } + + /** + * @return the pkRegistration + */ + public Integer getPkRegistration() { + return pkRegistration; + } + + /** + * @param pkRegistration the pkRegistration to set + */ + public void setPkRegistration(Integer pkRegistration) { + this.pkRegistration = pkRegistration; + } +} diff --git a/src/main/java/de/jottyfan/bico/modules/download/DownloadRepository.java b/src/main/java/de/jottyfan/bico/modules/download/DownloadRepository.java index 7d019a9..dada2a9 100644 --- a/src/main/java/de/jottyfan/bico/modules/download/DownloadRepository.java +++ b/src/main/java/de/jottyfan/bico/modules/download/DownloadRepository.java @@ -1,6 +1,6 @@ package de.jottyfan.bico.modules.download; -import static de.jottyfan.bico.db.Tables.V_CALENDAR; +import static de.jottyfan.bico.db.public_.Tables.V_CALENDAR; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; @@ -9,7 +9,7 @@ import org.jooq.SelectWhereStep; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Repository; -import de.jottyfan.bico.db.tables.records.VCalendarRecord; +import de.jottyfan.bico.db.public_.tables.records.VCalendarRecord; /** * diff --git a/src/main/java/de/jottyfan/bico/modules/ical/IcalController.java b/src/main/java/de/jottyfan/bico/modules/ical/IcalController.java index f776536..00b4ac6 100644 --- a/src/main/java/de/jottyfan/bico/modules/ical/IcalController.java +++ b/src/main/java/de/jottyfan/bico/modules/ical/IcalController.java @@ -20,7 +20,7 @@ public class IcalController extends CommonController{ @GetMapping("/ical") public void getIcalExport(HttpServletResponse response) throws Exception { - response.setHeader("Content-Disposition", "attachment; filename=bico.ical"); + response.setHeader("Content-Disposition", "attachment; filename=bico.ics"); response.setContentType("application/octet-stream"); response.setHeader("Content-Transfer-Encoding", "binary"); response.setHeader("Accept-Ranges", "bytes"); diff --git a/src/main/java/de/jottyfan/bico/modules/ical/IcalRepository.java b/src/main/java/de/jottyfan/bico/modules/ical/IcalRepository.java index b03b13c..f065ce2 100644 --- a/src/main/java/de/jottyfan/bico/modules/ical/IcalRepository.java +++ b/src/main/java/de/jottyfan/bico/modules/ical/IcalRepository.java @@ -1,6 +1,6 @@ package de.jottyfan.bico.modules.ical; -import static de.jottyfan.bico.db.Tables.V_CALENDAR; +import static de.jottyfan.bico.db.public_.Tables.V_CALENDAR; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; @@ -9,7 +9,7 @@ import org.jooq.SelectWhereStep; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Repository; -import de.jottyfan.bico.db.tables.records.VCalendarRecord; +import de.jottyfan.bico.db.public_.tables.records.VCalendarRecord; /** * diff --git a/src/main/java/de/jottyfan/bico/modules/ical/IcalService.java b/src/main/java/de/jottyfan/bico/modules/ical/IcalService.java index a5d5828..507d802 100644 --- a/src/main/java/de/jottyfan/bico/modules/ical/IcalService.java +++ b/src/main/java/de/jottyfan/bico/modules/ical/IcalService.java @@ -8,7 +8,7 @@ import java.time.LocalTime; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import de.jottyfan.bico.db.tables.records.VCalendarRecord; +import de.jottyfan.bico.db.public_.tables.records.VCalendarRecord; import net.fortuna.ical4j.data.CalendarOutputter; import net.fortuna.ical4j.model.Calendar; import net.fortuna.ical4j.model.component.VEvent; diff --git a/src/main/java/de/jottyfan/bico/modules/lesson/LessonController.java b/src/main/java/de/jottyfan/bico/modules/lesson/LessonController.java index 6d9bdd7..e264537 100644 --- a/src/main/java/de/jottyfan/bico/modules/lesson/LessonController.java +++ b/src/main/java/de/jottyfan/bico/modules/lesson/LessonController.java @@ -9,7 +9,7 @@ import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestParam; -import de.jottyfan.bico.db.tables.records.TLessonRecord; +import de.jottyfan.bico.db.public_.tables.records.TLessonRecord; import de.jottyfan.bico.modules.CommonController; /** * diff --git a/src/main/java/de/jottyfan/bico/modules/lesson/LessonRepository.java b/src/main/java/de/jottyfan/bico/modules/lesson/LessonRepository.java index 1e900ff..a39ebee 100644 --- a/src/main/java/de/jottyfan/bico/modules/lesson/LessonRepository.java +++ b/src/main/java/de/jottyfan/bico/modules/lesson/LessonRepository.java @@ -1,8 +1,8 @@ package de.jottyfan.bico.modules.lesson; -import static de.jottyfan.bico.db.Tables.T_LESSON; -import static de.jottyfan.bico.db.Tables.T_PERSON; -import static de.jottyfan.bico.db.Tables.T_SLOT; +import static de.jottyfan.bico.db.public_.Tables.T_LESSON; +import static de.jottyfan.bico.db.public_.Tables.T_PERSON; +import static de.jottyfan.bico.db.public_.Tables.T_SLOT; import java.time.LocalDate; import java.util.List; @@ -19,8 +19,8 @@ import org.jooq.UpdateConditionStep; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Repository; -import de.jottyfan.bico.db.tables.records.TLessonRecord; -import de.jottyfan.bico.db.tables.records.TPersonRecord; +import de.jottyfan.bico.db.public_.tables.records.TLessonRecord; +import de.jottyfan.bico.db.public_.tables.records.TPersonRecord; /** * diff --git a/src/main/java/de/jottyfan/bico/modules/lesson/LessonService.java b/src/main/java/de/jottyfan/bico/modules/lesson/LessonService.java index 96995ad..12fdb43 100644 --- a/src/main/java/de/jottyfan/bico/modules/lesson/LessonService.java +++ b/src/main/java/de/jottyfan/bico/modules/lesson/LessonService.java @@ -6,8 +6,8 @@ import java.util.List; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import de.jottyfan.bico.db.tables.records.TLessonRecord; -import de.jottyfan.bico.db.tables.records.TPersonRecord; +import de.jottyfan.bico.db.public_.tables.records.TLessonRecord; +import de.jottyfan.bico.db.public_.tables.records.TPersonRecord; /** * diff --git a/src/main/java/de/jottyfan/bico/modules/next/NextRepository.java b/src/main/java/de/jottyfan/bico/modules/next/NextRepository.java index 4a08ceb..4ebfe35 100644 --- a/src/main/java/de/jottyfan/bico/modules/next/NextRepository.java +++ b/src/main/java/de/jottyfan/bico/modules/next/NextRepository.java @@ -1,6 +1,6 @@ package de.jottyfan.bico.modules.next; -import static de.jottyfan.bico.db.Tables.V_CALENDAR; +import static de.jottyfan.bico.db.public_.Tables.V_CALENDAR; import java.time.LocalDate; import java.util.ArrayList; @@ -18,9 +18,9 @@ import org.springframework.stereotype.Repository; import de.jottyfan.bico.modules.next.model.NextBean; /** - * + * * @author jotty - * + * */ @Repository public class NextRepository { @@ -31,7 +31,7 @@ public class NextRepository { /** * get the next dates from date on - * + * * @param date the date * @return the next dates as beans in a list; an empty list at least */ diff --git a/src/main/java/de/jottyfan/bico/modules/profile/ProfileRepository.java b/src/main/java/de/jottyfan/bico/modules/profile/ProfileRepository.java index 9dc2174..d30ea7f 100644 --- a/src/main/java/de/jottyfan/bico/modules/profile/ProfileRepository.java +++ b/src/main/java/de/jottyfan/bico/modules/profile/ProfileRepository.java @@ -1,6 +1,6 @@ package de.jottyfan.bico.modules.profile; -import static de.jottyfan.bico.db.Tables.T_PROFILE; +import static de.jottyfan.bico.db.public_.Tables.T_PROFILE; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; @@ -10,7 +10,7 @@ import org.jooq.SelectConditionStep; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Repository; -import de.jottyfan.bico.db.tables.records.TProfileRecord; +import de.jottyfan.bico.db.public_.tables.records.TProfileRecord; import de.jottyfan.bico.modules.profile.model.ProfileBean; /** diff --git a/src/main/java/de/jottyfan/bico/modules/sheet/SheetRepository.java b/src/main/java/de/jottyfan/bico/modules/sheet/SheetRepository.java index d46149a..3ec2d34 100644 --- a/src/main/java/de/jottyfan/bico/modules/sheet/SheetRepository.java +++ b/src/main/java/de/jottyfan/bico/modules/sheet/SheetRepository.java @@ -1,6 +1,6 @@ package de.jottyfan.bico.modules.sheet; -import static de.jottyfan.bico.db.Tables.V_CALENDAR; +import static de.jottyfan.bico.db.public_.Tables.V_CALENDAR; import java.util.List; @@ -11,7 +11,7 @@ import org.jooq.SelectWhereStep; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Repository; -import de.jottyfan.bico.db.tables.records.VCalendarRecord; +import de.jottyfan.bico.db.public_.tables.records.VCalendarRecord; /** * diff --git a/src/main/java/de/jottyfan/bico/modules/sheet/SheetService.java b/src/main/java/de/jottyfan/bico/modules/sheet/SheetService.java index be06ed0..5d25fd1 100644 --- a/src/main/java/de/jottyfan/bico/modules/sheet/SheetService.java +++ b/src/main/java/de/jottyfan/bico/modules/sheet/SheetService.java @@ -5,7 +5,7 @@ import java.util.List; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import de.jottyfan.bico.db.tables.records.VCalendarRecord; +import de.jottyfan.bico.db.public_.tables.records.VCalendarRecord; /** * diff --git a/src/main/java/de/jottyfan/bico/modules/slot/SlotRepository.java b/src/main/java/de/jottyfan/bico/modules/slot/SlotRepository.java index 0daf638..f6c01fd 100644 --- a/src/main/java/de/jottyfan/bico/modules/slot/SlotRepository.java +++ b/src/main/java/de/jottyfan/bico/modules/slot/SlotRepository.java @@ -1,7 +1,7 @@ package de.jottyfan.bico.modules.slot; -import static de.jottyfan.bico.db.Tables.T_LESSON; -import static de.jottyfan.bico.db.Tables.T_SLOT; +import static de.jottyfan.bico.db.public_.Tables.T_LESSON; +import static de.jottyfan.bico.db.public_.Tables.T_SLOT; import java.util.Iterator; @@ -15,8 +15,8 @@ import org.jooq.UpdateConditionStep; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Repository; -import de.jottyfan.bico.db.tables.records.TLessonRecord; -import de.jottyfan.bico.db.tables.records.TSlotRecord; +import de.jottyfan.bico.db.public_.tables.records.TLessonRecord; +import de.jottyfan.bico.db.public_.tables.records.TSlotRecord; import de.jottyfan.bico.modules.slot.model.SlotBean; /** diff --git a/src/main/java/de/jottyfan/bico/modules/subject/SubjectController.java b/src/main/java/de/jottyfan/bico/modules/subject/SubjectController.java index 0049a72..c6aa4d8 100644 --- a/src/main/java/de/jottyfan/bico/modules/subject/SubjectController.java +++ b/src/main/java/de/jottyfan/bico/modules/subject/SubjectController.java @@ -8,7 +8,7 @@ import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.PostMapping; -import de.jottyfan.bico.db.tables.records.TSubjectRecord; +import de.jottyfan.bico.db.public_.tables.records.TSubjectRecord; import de.jottyfan.bico.modules.CommonController; /** diff --git a/src/main/java/de/jottyfan/bico/modules/subject/SubjectRepository.java b/src/main/java/de/jottyfan/bico/modules/subject/SubjectRepository.java index 7aebf16..62c94f4 100644 --- a/src/main/java/de/jottyfan/bico/modules/subject/SubjectRepository.java +++ b/src/main/java/de/jottyfan/bico/modules/subject/SubjectRepository.java @@ -1,9 +1,9 @@ package de.jottyfan.bico.modules.subject; -import static de.jottyfan.bico.db.Tables.T_LESSON_SUBJECT; -import static de.jottyfan.bico.db.Tables.T_SOURCE; -import static de.jottyfan.bico.db.Tables.T_SUBJECT; -import static de.jottyfan.bico.db.Tables.V_LESSON; +import static de.jottyfan.bico.db.public_.Tables.T_LESSON_SUBJECT; +import static de.jottyfan.bico.db.public_.Tables.T_SOURCE; +import static de.jottyfan.bico.db.public_.Tables.T_SUBJECT; +import static de.jottyfan.bico.db.public_.Tables.V_LESSON; import java.util.List; @@ -19,9 +19,9 @@ import org.jooq.UpdateConditionStep; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Repository; -import de.jottyfan.bico.db.tables.records.TSourceRecord; -import de.jottyfan.bico.db.tables.records.TSubjectRecord; -import de.jottyfan.bico.db.tables.records.VLessonRecord; +import de.jottyfan.bico.db.public_.tables.records.TSourceRecord; +import de.jottyfan.bico.db.public_.tables.records.TSubjectRecord; +import de.jottyfan.bico.db.public_.tables.records.VLessonRecord; /** * diff --git a/src/main/java/de/jottyfan/bico/modules/subject/SubjectService.java b/src/main/java/de/jottyfan/bico/modules/subject/SubjectService.java index 6843de6..158f765 100644 --- a/src/main/java/de/jottyfan/bico/modules/subject/SubjectService.java +++ b/src/main/java/de/jottyfan/bico/modules/subject/SubjectService.java @@ -5,9 +5,9 @@ import java.util.List; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import de.jottyfan.bico.db.tables.records.TSourceRecord; -import de.jottyfan.bico.db.tables.records.TSubjectRecord; -import de.jottyfan.bico.db.tables.records.VLessonRecord; +import de.jottyfan.bico.db.public_.tables.records.TSourceRecord; +import de.jottyfan.bico.db.public_.tables.records.TSubjectRecord; +import de.jottyfan.bico.db.public_.tables.records.VLessonRecord; /** * diff --git a/src/main/java/de/jottyfan/bico/modules/subject/model/SubjectBean.java b/src/main/java/de/jottyfan/bico/modules/subject/model/SubjectBean.java index 5aac4e4..4546717 100644 --- a/src/main/java/de/jottyfan/bico/modules/subject/model/SubjectBean.java +++ b/src/main/java/de/jottyfan/bico/modules/subject/model/SubjectBean.java @@ -2,7 +2,7 @@ package de.jottyfan.bico.modules.subject.model; import java.io.Serializable; -import de.jottyfan.bico.db.tables.records.TSubjectRecord; +import de.jottyfan.bico.db.public_.tables.records.TSubjectRecord; /** * diff --git a/src/main/java/de/jottyfan/bico/modules/theme/ThemeController.java b/src/main/java/de/jottyfan/bico/modules/theme/ThemeController.java index 2e2b2bf..35d7771 100644 --- a/src/main/java/de/jottyfan/bico/modules/theme/ThemeController.java +++ b/src/main/java/de/jottyfan/bico/modules/theme/ThemeController.java @@ -8,7 +8,7 @@ import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestParam; -import de.jottyfan.bico.db.tables.records.TLessonRecord; +import de.jottyfan.bico.db.public_.tables.records.TLessonRecord; import de.jottyfan.bico.modules.CommonController; import jakarta.servlet.http.HttpServletRequest; diff --git a/src/main/java/de/jottyfan/bico/modules/theme/ThemeRepository.java b/src/main/java/de/jottyfan/bico/modules/theme/ThemeRepository.java index fdbb6b0..41d4fc9 100644 --- a/src/main/java/de/jottyfan/bico/modules/theme/ThemeRepository.java +++ b/src/main/java/de/jottyfan/bico/modules/theme/ThemeRepository.java @@ -1,10 +1,10 @@ package de.jottyfan.bico.modules.theme; -import static de.jottyfan.bico.db.Tables.T_LESSON; -import static de.jottyfan.bico.db.Tables.T_LESSON_SUBJECT; -import static de.jottyfan.bico.db.Tables.T_SLOT; -import static de.jottyfan.bico.db.Tables.T_SOURCE; -import static de.jottyfan.bico.db.Tables.T_SUBJECT; +import static de.jottyfan.bico.db.public_.Tables.T_LESSON; +import static de.jottyfan.bico.db.public_.Tables.T_LESSON_SUBJECT; +import static de.jottyfan.bico.db.public_.Tables.T_SLOT; +import static de.jottyfan.bico.db.public_.Tables.T_SOURCE; +import static de.jottyfan.bico.db.public_.Tables.T_SUBJECT; import java.time.LocalDate; import java.util.ArrayList; @@ -25,8 +25,8 @@ import org.jooq.impl.DSL; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Repository; -import de.jottyfan.bico.db.tables.records.TLessonRecord; -import de.jottyfan.bico.db.tables.records.TLessonSubjectRecord; +import de.jottyfan.bico.db.public_.tables.records.TLessonRecord; +import de.jottyfan.bico.db.public_.tables.records.TLessonSubjectRecord; import de.jottyfan.bico.modules.theme.model.KeyValueBean; import de.jottyfan.bico.modules.theme.model.ThemeBean; diff --git a/src/main/java/de/jottyfan/bico/modules/theme/ThemeService.java b/src/main/java/de/jottyfan/bico/modules/theme/ThemeService.java index 69f169a..6edf110 100644 --- a/src/main/java/de/jottyfan/bico/modules/theme/ThemeService.java +++ b/src/main/java/de/jottyfan/bico/modules/theme/ThemeService.java @@ -6,7 +6,7 @@ import java.util.List; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import de.jottyfan.bico.db.tables.records.TLessonRecord; +import de.jottyfan.bico.db.public_.tables.records.TLessonRecord; import de.jottyfan.bico.modules.theme.model.KeyValueBean; import de.jottyfan.bico.modules.theme.model.ThemeBean; diff --git a/src/main/resources/templates/camp/edit.html b/src/main/resources/templates/camp/edit.html new file mode 100644 index 0000000..39ff8aa --- /dev/null +++ b/src/main/resources/templates/camp/edit.html @@ -0,0 +1,61 @@ + + + + +
+
+
+
+

Anmeldung zur Gemeindefreizeit 2025 bearbeiten

+
+
+
Sie haben keine Berechtigung, die Anmeldung mit dieser URL zu ändern.
+
+ +
+
Vorname
+
+ +
+
Surname
+
+ +
+
Geschlecht
+
+ +
+
+
+ +   Abbrechen   + + + +
+
+
+
+
+
+ + \ No newline at end of file diff --git a/src/main/resources/templates/camp/registration.html b/src/main/resources/templates/camp/registration.html new file mode 100644 index 0000000..a5477ba --- /dev/null +++ b/src/main/resources/templates/camp/registration.html @@ -0,0 +1,89 @@ + + + + +
+
+
+
+

Anmeldung zur Gemeindefreizeit 2025

+
+
+ + +
+
+
+
+
Vorname
+
+ +
+
Surname
+
+ +
+
Geschlecht
+
+ +
+
+
+ +   Abbrechen  +
+
+
+
+
+ + + + + + + + + + + + + + + +
VornameNachname 
+
+
+
+
+
+ + \ No newline at end of file diff --git a/src/main/resources/templates/template.html b/src/main/resources/templates/template.html index 3ca7cfb..eafdde7 100644 --- a/src/main/resources/templates/template.html +++ b/src/main/resources/templates/template.html @@ -25,14 +25,15 @@